Esempio n. 1
0
 def create_widgets(self):
     self.sourceLabel = ttk.Label(self, text="Source Folder:",
             underline=-1 if TkUtil.mac() else 1)
     self.sourceEntry = ttk.Entry(self, width=30,
             textvariable=self.sourceText)
     self.sourceButton = TkUtil.Button(self, text="Source...",
             underline=0, command=lambda *args:
                 self.choose_folder(SOURCE))
     self.helpButton = TkUtil.Button(self, text="Help", underline=0,
             command=self.help)
     self.targetLabel = ttk.Label(self, text="Target Folder:",
             underline=-1 if TkUtil.mac() else 1)
     self.targetEntry = ttk.Entry(self, width=30,
             textvariable=self.targetText)
     self.targetButton = TkUtil.Button(self, text="Target...",
             underline=0, command=lambda *args:
                 self.choose_folder(TARGET))
     self.aboutButton = TkUtil.Button(self, text="About", underline=1,
             command=self.about)
     self.statusLabel = ttk.Label(self, textvariable=self.statusText)
     self.scaleButton = TkUtil.Button(self, text="Scale",
             underline=1, command=self.scale_or_cancel,
             default=tk.ACTIVE, state=tk.DISABLED)
     self.quitButton = TkUtil.Button(self, text="Quit", underline=0,
             command=self.close)
     self.dimensionLabel = ttk.Label(self, text="Max. Dimension:",
             underline=-1 if TkUtil.mac() else 6)
     self.dimensionCombobox = ttk.Combobox(self,
             textvariable=self.dimensionText, state="readonly",
             values=("50", "100", "150", "200", "250", "300", "350",
                     "400", "450", "500"))
     TkUtil.set_combobox_item(self.dimensionCombobox, "400")
Esempio n. 2
0
 def create_widgets(self, master):
     self.frame = ttk.Frame(master)
     self.usernameLabel = ttk.Label(self.frame, text="Username:"******"Password:"******"•")
Esempio n. 3
0
 def create_widgets(self, master):
     self.frame = ttk.Frame(master)
     self.usernameLabel = ttk.Label(self.frame,
                                    text="Username:"******"Password:"******"•")
Esempio n. 4
0
 def create_widgets(self):
     self.sourceLabel = ttk.Label(self,
                                  text="Source Folder:",
                                  underline=-1 if TkUtil.mac() else 1)
     self.sourceEntry = ttk.Entry(self,
                                  width=30,
                                  textvariable=self.sourceText)
     self.sourceButton = TkUtil.Button(
         self,
         text="Source...",
         underline=0,
         command=lambda *args: self.choose_folder(SOURCE))
     self.helpButton = TkUtil.Button(self,
                                     text="Help",
                                     underline=0,
                                     command=self.help)
     self.targetLabel = ttk.Label(self,
                                  text="Target Folder:",
                                  underline=-1 if TkUtil.mac() else 1)
     self.targetEntry = ttk.Entry(self,
                                  width=30,
                                  textvariable=self.targetText)
     self.targetButton = TkUtil.Button(
         self,
         text="Target...",
         underline=0,
         command=lambda *args: self.choose_folder(TARGET))
     self.aboutButton = TkUtil.Button(self,
                                      text="About",
                                      underline=1,
                                      command=self.about)
     self.statusLabel = ttk.Label(self, textvariable=self.statusText)
     self.scaleButton = TkUtil.Button(self,
                                      text="Scale",
                                      underline=1,
                                      command=self.scale_or_cancel,
                                      default=tk.ACTIVE,
                                      state=tk.DISABLED)
     self.quitButton = TkUtil.Button(self,
                                     text="Quit",
                                     underline=0,
                                     command=self.close)
     self.dimensionLabel = ttk.Label(self,
                                     text="Max. Dimension:",
                                     underline=-1 if TkUtil.mac() else 6)
     self.dimensionCombobox = ttk.Combobox(
         self,
         textvariable=self.dimensionText,
         state="readonly",
         values=("50", "100", "150", "200", "250", "300", "350", "400",
                 "450", "500"))
     TkUtil.set_combobox_item(self.dimensionCombobox, "400")
Esempio n. 5
0
 def create_edit_menu(self):
     editMenu = tk.Menu(self.menubar)
     shapeMenu = tk.Menu(editMenu)
     editMenu.add_cascade(label=SHAPE,
                          underline=0,
                          menu=shapeMenu,
                          image=self.images[SHAPE],
                          compound=tk.LEFT)
     for name in sorted(Shapes.ShapeForName.keys()):
         shape = Shapes.ShapeForName[name]
         shapeMenu.add_radiobutton(label=shape.name,
                                   underline=shape.underline,
                                   value=shape.name,
                                   variable=self.shapeName,
                                   compound=tk.LEFT,
                                   image=self.images[shape.name])
     if TkUtil.mac():
         self.master.createcommand("::tk::mac::ShowPreferences",
                                   self.preferences)
     else:
         editMenu.add_command(label=PREFERENCES + ELLIPSIS,
                              underline=0,
                              command=self.preferences,
                              image=self.images[PREFERENCES],
                              compound=tk.LEFT)
     editMenu.add_checkbutton(label="Show Toolbar",
                              underline=5,
                              onvalue=True,
                              offvalue=False,
                              variable=self.showToolbar,
                              command=self.toggle_toolbar)
     self.menubar.add_cascade(label="Edit", underline=0, menu=editMenu)
Esempio n. 6
0
 def create_file_menu(self):
     modifier = TkUtil.menu_modifier()
     self.fileMenu = tk.Menu(self.menubar, name="apple")
     self.fileMenu.add_command(label=NEW, underline=0,
             command=self.new, image=self.menuImages[NEW],
             compound=tk.LEFT, accelerator=modifier + "+N")
     self.fileMenu.add_command(label=OPEN + ELLIPSIS, underline=0,
             command=self.open, image=self.menuImages[OPEN],
             compound=tk.LEFT, accelerator=modifier + "+O")
     self.fileMenu.add_cascade(label=OPEN_RECENT,
             underline=5, image=self.menuImages[OPEN],
             compound=tk.LEFT)
     self.fileMenu.add_command(label=SAVE, underline=0,
             command=self.save, image=self.menuImages[SAVE],
             compound=tk.LEFT, accelerator=modifier + "+S")
     self.fileMenu.add_command(label=SAVE_AS + ELLIPSIS, underline=5,
             command=self.save_as, image=self.menuImages[SAVEAS],
             compound=tk.LEFT)
     if TkUtil.mac():
         self.master.createcommand("::tk::mac::ShowPreferences",
                 self.preferences)
         self.master.createcommand("exit", self.close)
     else:
         self.fileMenu.add_separator()
         self.fileMenu.add_command(label=PREFERENCES + ELLIPSIS,
                 underline=0, image=self.menuImages[PREFERENCES],
                 compound=tk.LEFT, command=self.preferences)
         self.fileMenu.add_separator()
         self.fileMenu.add_command(label=QUIT, underline=0,
                 command=self.close, compound=tk.LEFT,
                 image=self.menuImages[QUIT],
                 accelerator=modifier + "+Q")
     self.menubar.add_cascade(label="File", underline=0,
             menu=self.fileMenu)
Esempio n. 7
0
 def create_file_menu(self):
     modifier = TkUtil.menu_modifier()
     self.fileMenu = tk.Menu(self.menubar, name="apple")
     self.fileMenu.add_command(label=NEW, underline=0,
             command=self.new, image=self.menuImages[NEW],
             compound=tk.LEFT, accelerator=modifier + "+N")
     self.fileMenu.add_command(label=OPEN + ELLIPSIS, underline=0,
             command=self.open, image=self.menuImages[OPEN],
             compound=tk.LEFT, accelerator=modifier + "+O")
     self.fileMenu.add_cascade(label=OPEN_RECENT,
             underline=5, image=self.menuImages[OPEN],
             compound=tk.LEFT)
     self.fileMenu.add_command(label=SAVE, underline=0,
             command=self.save, image=self.menuImages[SAVE],
             compound=tk.LEFT, accelerator=modifier + "+S")
     self.fileMenu.add_command(label=SAVE_AS + ELLIPSIS, underline=5,
             command=self.save_as, image=self.menuImages[SAVEAS],
             compound=tk.LEFT)
     if TkUtil.mac():
         self.master.createcommand("::tk::mac::ShowPreferences",
                 self.preferences)
         self.master.createcommand("exit", self.close)
     else:
         self.fileMenu.add_separator()
         self.fileMenu.add_command(label=PREFERENCES + ELLIPSIS,
                 underline=0, image=self.menuImages[PREFERENCES],
                 compound=tk.LEFT, command=self.preferences)
         self.fileMenu.add_separator()
         self.fileMenu.add_command(label=QUIT, underline=0,
                 command=self.close, compound=tk.LEFT,
                 image=self.menuImages[QUIT],
                 accelerator=modifier + "+Q")
     self.menubar.add_cascade(label="File", underline=0,
             menu=self.fileMenu)
Esempio n. 8
0
 def create_file_menu(self):
     modifier = TkUtil.menu_modifier()
     fileMenu = tk.Menu(self.menubar, name="apple")
     fileMenu.add_command(label=NEW,
                          underline=0,
                          command=self.board.new_game,
                          compound=tk.LEFT,
                          image=self.images[NEW],
                          accelerator=modifier + "+N")
     if TkUtil.mac():
         self.master.createcommand("exit", self.close)
         self.master.createcommand("::tk::mac::ShowPreferences",
                                   self.preferences)
     else:
         fileMenu.add_separator()
         fileMenu.add_command(label=PREFERENCES + ELLIPSIS,
                              underline=0,
                              command=self.preferences,
                              image=self.images[PREFERENCES],
                              compound=tk.LEFT)
         fileMenu.add_separator()
         fileMenu.add_command(label="Quit",
                              underline=0,
                              command=self.close,
                              compound=tk.LEFT,
                              image=self.images[CLOSE],
                              accelerator=modifier + "+Q")
     self.menubar.add_cascade(label="File", underline=0, menu=fileMenu)
Esempio n. 9
0
 def body(self, master):
     self.notebook = ttk.Notebook(master)
     self.notebook.enable_traversal()
     self.generalFrame = ttk.Frame(self.notebook)
     self.create_general_widgets(self.generalFrame)
     self.layout_general_widgets(self.generalFrame)
     self.advancedFrame = ttk.Frame(self.notebook)
     self.create_advanced_widgets(self.advancedFrame)
     self.layout_advanced_widgets(self.advancedFrame)
     self.notebook.add(self.generalFrame, text=GENERAL,
             underline=-1 if TkUtil.mac() else 0, padding=PAD)
     self.notebook.add(self.advancedFrame, text=ADVANCED,
             underline=-1 if TkUtil.mac() else 0, padding=PAD)
     self.notebook.pack(fill=tk.BOTH)
     self.create_bindings()
     return self.notebook
Esempio n. 10
0
 def extend(self):
     self.extendButton.state((TkUtil.SELECTED, ))
     self.extendButton.config(text="Unextend",
                              underline=3 if not TkUtil.mac() else -1)
     if not TkUtil.x11():
         self.extendButton.config(image=self.images[UNEXTEND])
     self.title("Find and Replace \u2014 {}".format(APPNAME))
     for widget in self.extensionWidgets:
         widget.grid()
Esempio n. 11
0
 def create_bindings(self):
     if not TkUtil.mac():
         self.bind("<Alt-b>", lambda *args: self.blinkCheckbutton.invoke())
         self.bind("<Alt-f>",
                   lambda *args: self.restoreFontCheckbutton.invoke())
         self.bind("<Alt-s>",
                   lambda *args: self.restoreSessionCheckbutton.invoke())
         self.bind("<Alt-w>",
                   lambda *args: self.restoreWindowCheckbutton.invoke())
Esempio n. 12
0
 def unextend(self):
     self.extendButton.state((TkUtil.NOT_SELECTED, ))
     self.extendButton.config(text="Extend",
                              underline=1 if not TkUtil.mac() else -1)
     if not TkUtil.x11():
         self.extendButton.config(image=self.images[EXTEND])
     self.title("Find \u2014 {}".format(APPNAME))
     for widget in self.extensionWidgets:
         widget.grid_remove()
Esempio n. 13
0
 def unextend(self):
     self.extendButton.state((TkUtil.NOT_SELECTED,))
     self.extendButton.config(text="Extend",
             underline=1 if not TkUtil.mac() else -1)
     if not TkUtil.x11():
         self.extendButton.config(image=self.images[EXTEND])
     self.title("Find \u2014 {}".format(APPNAME))
     for widget in self.extensionWidgets:
         widget.grid_remove()
Esempio n. 14
0
 def extend(self):
     self.extendButton.state((TkUtil.SELECTED,))
     self.extendButton.config(text="Unextend",
             underline=3 if not TkUtil.mac() else -1)
     if not TkUtil.x11():
         self.extendButton.config(image=self.images[UNEXTEND])
     self.title("Find and Replace \u2014 {}".format(APPNAME))
     for widget in self.extensionWidgets:
         widget.grid()
 def create_bindings(self):
     if not TkUtil.mac():
         self.bind("<Alt-b>",
                 lambda *args: self.blinkCheckbutton.invoke())
         self.bind("<Alt-f>",
                 lambda *args: self.restoreFontCheckbutton.invoke())
         self.bind("<Alt-s>",
                 lambda *args: self.restoreSessionCheckbutton.invoke())
         self.bind("<Alt-w>",
                 lambda *args: self.restoreWindowCheckbutton.invoke())
Esempio n. 16
0
 def body(self, master):
     self.notebook = ttk.Notebook(master)
     self.notebook.enable_traversal()
     self.generalFrame = ttk.Frame(self.notebook)
     self.create_general_widgets(self.generalFrame)
     self.layout_general_widgets(self.generalFrame)
     self.advancedFrame = ttk.Frame(self.notebook)
     self.create_advanced_widgets(self.advancedFrame)
     self.layout_advanced_widgets(self.advancedFrame)
     self.notebook.add(self.generalFrame,
                       text=GENERAL,
                       underline=-1 if TkUtil.mac() else 0,
                       padding=PAD)
     self.notebook.add(self.advancedFrame,
                       text=ADVANCED,
                       underline=-1 if TkUtil.mac() else 0,
                       padding=PAD)
     self.notebook.pack(fill=tk.BOTH)
     self.create_bindings()
     return self.notebook
Esempio n. 17
0
 def show(self):
     self.leave()
     self.tip = tk.Toplevel(self.master)
     self.tip.withdraw() # Don't show until we have the geometry
     self.tip.wm_overrideredirect(True) # No window decorations etc.
     if TkUtil.mac():
         self.tip.tk.call("::tk::unsupported::MacWindowStyle",
                 "style", self.tip._w, "help", "none")
     label = ttk.Label(self.tip, text=self.text, padding=1,
             background=self.background, wraplength=480,
             relief=None if TkUtil.mac() else tk.GROOVE,
             font=tkfont.nametofont("TkTooltipFont"))
     label.pack()
     x, y = self.position()
     self.tip.wm_geometry("+{}+{}".format(x, y))
     self.tip.deiconify()
     if self.master.winfo_viewable():
         self.tip.transient(self.master)
     self.tip.update_idletasks()
     self.timerId = self.master.after(self.showTime, self.hide)
Esempio n. 18
0
 def show(self):
     self.leave()
     self.tip = tk.Toplevel(self.master)
     self.tip.withdraw()  # Don't show until we have the geometry
     self.tip.wm_overrideredirect(True)  # No window decorations etc.
     if TkUtil.mac():
         self.tip.tk.call("::tk::unsupported::MacWindowStyle",
                          "style", self.tip._w, "help", "none")
     label = ttk.Label(self.tip, text=self.text, padding=1,
                       background=self.background, wraplength=480,
                       relief=None if TkUtil.mac() else tk.GROOVE,
                       font=tkfont.nametofont("TkTooltipFont"))
     label.pack()
     x, y = self.position()
     self.tip.wm_geometry("+{}+{}".format(x, y))
     self.tip.deiconify()
     if self.master.winfo_viewable():
         self.tip.transient(self.master)
     self.tip.update_idletasks()
     self.timerId = self.master.after(self.showTime, self.hide)
Esempio n. 19
0
 def create_ui(self):
     self.helpLabel = ttk.Label(self, text=_TEXT, background="white")
     self.closeButton = TkUtil.Button(self, text="Close", underline=0)
     self.helpLabel.pack(anchor=tk.N, expand=True, fill=tk.BOTH,
             padx=PAD, pady=PAD)
     self.closeButton.pack(anchor=tk.S)
     self.protocol("WM_DELETE_WINDOW", self.close)
     if not TkUtil.mac():
         self.bind("<Alt-c>", self.close)
     self.bind("<Escape>", self.close)
     self.bind("<Expose>", self.reposition)
Esempio n. 20
0
 def update_ui(self, *args):
     guiState = self.state.value
     if guiState == WORKING:
         text = "Cancel"
         underline = 0 if not TkUtil.mac() else -1
         state = "!" + tk.DISABLED
     elif guiState in {CANCELED, TERMINATING}:
         text = "Canceling..."
         underline = -1
         state = tk.DISABLED
     elif guiState == IDLE:
         text = "Scale"
         underline = 1 if not TkUtil.mac() else -1
         state = ("!" + tk.DISABLED if self.sourceText.get() and
                  self.targetText.get() else tk.DISABLED)
     self.scaleButton.state((state,))
     self.scaleButton.config(text=text, underline=underline)
     state = tk.DISABLED if guiState != IDLE else "!" + tk.DISABLED
     for widget in (self.sourceEntry, self.sourceButton,
             self.targetEntry, self.targetButton):
         widget.state((state,))
     self.master.update() # Make sure the GUI refreshes
Esempio n. 21
0
 def update_ui(self, *args):
     guiState = self.state.value
     if guiState == WORKING:
         text = "Cancel"
         underline = 0 if not TkUtil.mac() else -1
         state = "!" + tk.DISABLED
     elif guiState in {CANCELED, TERMINATING}:
         text = "Canceling..."
         underline = -1
         state = tk.DISABLED
     elif guiState == IDLE:
         text = "Scale"
         underline = 1 if not TkUtil.mac() else -1
         state = ("!" + tk.DISABLED if self.sourceText.get()
                  and self.targetText.get() else tk.DISABLED)
     self.scaleButton.state((state, ))
     self.scaleButton.config(text=text, underline=underline)
     state = tk.DISABLED if guiState != IDLE else "!" + tk.DISABLED
     for widget in (self.sourceEntry, self.sourceButton, self.targetEntry,
                    self.targetButton):
         widget.state((state, ))
     self.master.update()  # Make sure the GUI refreshes
Esempio n. 22
0
 def create_help_menu(self):
     helpMenu = tk.Menu(self.menubar, name="help")
     if TkUtil.mac():
         self.master.createcommand("tkAboutDialog", self.about)
         self.master.createcommand("::tk::mac::ShowHelp", self.help)
     else:
         helpMenu.add_command(label=HELP, underline=0,
                 command=self.help, image=self.images[HELP],
                 compound=tk.LEFT, accelerator="F1")
         helpMenu.add_command(label=ABOUT, underline=0,
                 command=self.about, image=self.images[ABOUT],
                 compound=tk.LEFT)
     self.menubar.add_cascade(label=HELP, underline=0,
             menu=helpMenu)
Esempio n. 23
0
 def create_ui(self):
     self.helpLabel = ttk.Label(self, text=_TEXT, background="white")
     self.closeButton = TkUtil.Button(self, text="Close", underline=0)
     self.helpLabel.pack(anchor=tk.N,
                         expand=True,
                         fill=tk.BOTH,
                         padx=PAD,
                         pady=PAD)
     self.closeButton.pack(anchor=tk.S)
     self.protocol("WM_DELETE_WINDOW", self.close)
     if not TkUtil.mac():
         self.bind("<Alt-c>", self.close)
     self.bind("<Escape>", self.close)
     self.bind("<Expose>", self.reposition)
Esempio n. 24
0
 def on_modified(self, event=None):
     if not hasattr(self, "modifiedLabel"):
         self.editor.edit_modified(False)
         return
     if self.editor.edit_modified():
         text, mac, state = "MOD", True, tk.NORMAL
     else:
         text, mac, state = "", False, tk.DISABLED
     self.modifiedLabel.config(text=text)
     if TkUtil.mac():
         self.master.attributes("-modified", mac)
     self.fileMenu.entryconfigure(SAVE, state=state)
     self.fileMenu.entryconfigure(SAVE_AS + ELLIPSIS, state=state)
     self.saveButton.config(state=state)
     self.editMenu.entryconfigure(UNDO, state=state)
     self.undoButton.config(state=state)
Esempio n. 25
0
 def on_modified(self, event=None):
     if not hasattr(self, "modifiedLabel"):
         self.editor.edit_modified(False)
         return
     if self.editor.edit_modified():
         text, mac, state = "MOD", True, tk.NORMAL
     else:
         text, mac, state = "", False, tk.DISABLED
     self.modifiedLabel.config(text=text)
     if TkUtil.mac():
         self.master.attributes("-modified", mac)
     self.fileMenu.entryconfigure(SAVE, state=state)
     self.fileMenu.entryconfigure(SAVE_AS + ELLIPSIS, state=state)
     self.saveButton.config(state=state)
     self.editMenu.entryconfigure(UNDO, state=state)
     self.undoButton.config(state=state)
Esempio n. 26
0
 def create_bindings(self):
     self.protocol("WM_DELETE_WINDOW", self.close)
     if not TkUtil.mac():
         self.bind("<Alt-c>", self.close)
         self.bind("<Alt-e>", lambda *args: self.replaceEntry.focus())
         self.bind("<Alt-f>", self.find)
         self.bind("<Alt-i>", lambda *args: self.findEntry.focus())
         self.bind("<Alt-r>", self.replace)
         self.bind("<Alt-s>",
                 lambda *args: self.caseSensitiveCheckbutton.invoke())
         self.bind("<Alt-w>",
                 lambda *args: self.wholeWordsCheckbutton.invoke())
         self.bind("<Alt-x>", lambda *args: self.extendButton.invoke())
     self.bind("<Return>", self.find)
     self.bind("<Escape>", self.close)
     self.findEntry.bind("<KeyRelease>", self.update_ui)
     self.replaceEntry.bind("<KeyRelease>", self.update_ui)
Esempio n. 27
0
 def create_file_menu(self):
     # Ctrl is nicer than Control for menus
     modifier = TkUtil.menu_modifier()
     fileMenu = tk.Menu(self.menubar, name="apple")
     fileMenu.add_command(label=NEW, underline=0,
             command=self.board.new_game, compound=tk.LEFT,
             image=self.images[NEW], accelerator=modifier + "+N")
     if TkUtil.mac():
         self.master.createcommand("exit", self.close)
     else:
         fileMenu.add_separator()
         fileMenu.add_command(label="Quit", underline=0,
                 command=self.close, compound=tk.LEFT,
                 image=self.images[CLOSE],
                 accelerator=modifier + "+Q")
     self.menubar.add_cascade(label="File", underline=0,
             menu=fileMenu)
Esempio n. 28
0
 def create_bindings(self):
     self.protocol("WM_DELETE_WINDOW", self.close)
     if not TkUtil.mac():
         self.bind("<Alt-c>", self.close)
         self.bind("<Alt-e>", lambda *args: self.replaceEntry.focus())
         self.bind("<Alt-f>", self.find)
         self.bind("<Alt-i>", lambda *args: self.findEntry.focus())
         self.bind("<Alt-r>", self.replace)
         self.bind("<Alt-s>",
                   lambda *args: self.caseSensitiveCheckbutton.invoke())
         self.bind("<Alt-w>",
                   lambda *args: self.wholeWordsCheckbutton.invoke())
         self.bind("<Alt-x>", lambda *args: self.extendButton.invoke())
     self.bind("<Return>", self.find)
     self.bind("<Escape>", self.close)
     self.findEntry.bind("<KeyRelease>", self.update_ui)
     self.replaceEntry.bind("<KeyRelease>", self.update_ui)
Esempio n. 29
0
 def create_bindings(self):
     if not TkUtil.mac():
         self.master.bind("<Alt-a>", lambda *args: self.targetEntry.focus())
         self.master.bind("<Alt-b>", self.about)
         self.master.bind("<Alt-c>", self.scale_or_cancel)
         self.master.bind("<Alt-h>", self.help)
         self.master.bind("<Alt-i>",
                          lambda *args: self.dimensionCombobox.focus())
         self.master.bind("<Alt-o>", lambda *args: self.sourceEntry.focus())
         self.master.bind("<Alt-q>", self.close)
         self.master.bind("<Alt-s>",
                          lambda *args: self.choose_folder(SOURCE))
         self.master.bind("<Alt-t>",
                          lambda *args: self.choose_folder(TARGET))
         self.master.bind("<F1>", self.help)
     self.sourceEntry.bind("<KeyRelease>", self.update_ui)
     self.targetEntry.bind("<KeyRelease>", self.update_ui)
     self.master.bind("<Return>", self.scale_or_cancel)
Esempio n. 30
0
 def create_bindings(self):
     if not TkUtil.mac():
         self.master.bind("<Alt-a>", lambda *args:
                 self.targetEntry.focus())
         self.master.bind("<Alt-b>", self.about)
         self.master.bind("<Alt-c>", self.scale_or_cancel)
         self.master.bind("<Alt-h>", self.help)
         self.master.bind("<Alt-i>", lambda *args:
                 self.dimensionCombobox.focus())
         self.master.bind("<Alt-o>", lambda *args:
                 self.sourceEntry.focus())
         self.master.bind("<Alt-q>", self.close)
         self.master.bind("<Alt-s>", lambda *args: self.choose_folder(
                 SOURCE))
         self.master.bind("<Alt-t>", lambda *args: self.choose_folder(
                 TARGET))
         self.master.bind("<F1>", self.help)
     self.sourceEntry.bind("<KeyRelease>", self.update_ui)
     self.targetEntry.bind("<KeyRelease>", self.update_ui)
     self.master.bind("<Return>", self.scale_or_cancel)
Esempio n. 31
0
 def set_drag_cursor(self, on=True):
     if on:
         cursor = "sizing"  # Mac OS X can only use built-in Tk cursors
         path = os.path.realpath(os.path.join(os.path.dirname(__file__), "images"))
         if TkUtil.windows():
             cwd = None
             try:
                 cwd = os.getcwd()
                 os.chdir(path)  # Paths don't work on Windows 7
                 self.master.config(cursor="@drag.cur")
             finally:
                 if cwd is not None:
                     os.chdir(cwd)
         elif not TkUtil.mac():
             # Mask made by http://www.kirsle.net/wizards/xbmask.cgi
             cursor = ("@" + os.path.join(path, "drag.xbm"), os.path.join(path, "drag_mask.xbm"), "#DF00FF", "white")
             self.master.config(cursor=cursor)
     else:
         self.master.config(cursor="")
     self.master.update()
Esempio n. 32
0
 def create_file_menu(self):
     modifier = TkUtil.menu_modifier()
     fileMenu = tk.Menu(self.menubar, name="apple")
     fileMenu.add_command(label=NEW, underline=0,
             command=self.board.new_game, compound=tk.LEFT,
             image=self.images[NEW], accelerator=modifier + "+N")
     if TkUtil.mac():
         self.master.createcommand("exit", self.close)
         self.master.createcommand("::tk::mac::ShowPreferences",
                 self.preferences)
     else:
         fileMenu.add_separator()
         fileMenu.add_command(label=PREFERENCES + ELLIPSIS, underline=0,
                 command=self.preferences,
                 image=self.images[PREFERENCES], compound=tk.LEFT)
         fileMenu.add_separator()
         fileMenu.add_command(label="Quit", underline=0,
                 command=self.close, compound=tk.LEFT,
                 image=self.images[CLOSE],
                 accelerator=modifier + "+Q")
     self.menubar.add_cascade(label="File", underline=0,
             menu=fileMenu)
Esempio n. 33
0
 def set_drag_cursor(self, on=True):
     if on:
         cursor = "sizing"  # Mac OS X can only use built-in Tk cursors
         path = os.path.realpath(
             os.path.join(os.path.dirname(__file__), "images"))
         if TkUtil.windows():
             cwd = None
             try:
                 cwd = os.getcwd()
                 os.chdir(path)  # Paths don't work on Windows 7
                 self.master.config(cursor="@drag.cur")
             finally:
                 if cwd is not None:
                     os.chdir(cwd)
         elif not TkUtil.mac():
             # Mask made by http://www.kirsle.net/wizards/xbmask.cgi
             cursor = ("@" + os.path.join(path, "drag.xbm"),
                       os.path.join(path,
                                    "drag_mask.xbm"), "#DF00FF", "white")
             self.master.config(cursor=cursor)
     else:
         self.master.config(cursor="")
     self.master.update()
 def create_edit_menu(self):
     editMenu = tk.Menu(self.menubar)
     shapeMenu = tk.Menu(editMenu)
     editMenu.add_cascade(label=SHAPE, underline=0,
             menu=shapeMenu, image=self.images[SHAPE],
             compound=tk.LEFT)
     for name in sorted(Shapes.ShapeForName.keys()):
         shape = Shapes.ShapeForName[name]
         shapeMenu.add_radiobutton(label=shape.name,
                 underline=shape.underline, value=shape.name,
                 variable=self.shapeName, compound=tk.LEFT,
                 image=self.images[shape.name])
     if TkUtil.mac():
         self.master.createcommand("::tk::mac::ShowPreferences",
                 self.preferences)
     else:
         editMenu.add_command(label=PREFERENCES + ELLIPSIS, underline=0,
                 command=self.preferences,
                 image=self.images[PREFERENCES], compound=tk.LEFT)
     editMenu.add_checkbutton(label="Show Toolbar", underline=5,
             onvalue=True, offvalue=False, variable=self.showToolbar,
             command=self.toggle_toolbar)
     self.menubar.add_cascade(label="Edit", underline=0,
             menu=editMenu)
Esempio n. 35
0
 def create_bindings(self):
     if not TkUtil.mac():
         self.bind("<Alt-l>", lambda *args: self.columnsSpinbox.focus())
         self.bind("<Alt-r>", lambda *args: self.rowsSpinbox.focus())
         self.bind("<Alt-m>", lambda *args: self.maxColorsSpinbox.focus())
Esempio n. 36
0
 def create_bindings(self):
     if not TkUtil.mac():
         self.bind("<Alt-p>", lambda *args: self.passwordEntry.focus())
         self.bind("<Alt-u>", lambda *args: self.usernameEntry.focus())
     self.usernameEntry.bind("<KeyRelease>", self.update_ui)
     self.passwordEntry.bind("<KeyRelease>", self.update_ui)
Esempio n. 37
0
 def create_bindings(self):
     if not TkUtil.mac():
         for letter in "dlmrstz":
             self.bind("<Alt-{}>".format(letter), self.handle_shortcut)
Esempio n. 38
0
 def create_bindings(self):
     if not TkUtil.mac():
         self.bind("<Alt-l>", lambda *args: self.columnsSpinbox.focus())
         self.bind("<Alt-r>", lambda *args: self.rowsSpinbox.focus())
         self.bind("<Alt-m>",
                 lambda *args: self.maxColorsSpinbox.focus())
Esempio n. 39
0
 def create_bindings(self):
     if not TkUtil.mac():
         for letter in "dlmrstz":
             self.bind("<Alt-{}>".format(letter), self.handle_shortcut)
Esempio n. 40
0
 def create_bindings(self):
     if not TkUtil.mac():
         self.bind("<Alt-p>", lambda *args: self.passwordEntry.focus())
         self.bind("<Alt-u>", lambda *args: self.usernameEntry.focus())
     self.usernameEntry.bind("<KeyRelease>", self.update_ui)
     self.passwordEntry.bind("<KeyRelease>", self.update_ui)