def __init__(self, c: 'Course', course_widget: 'Course Widget', root_tracker: root_tracker.Root_Tracker): self._c = c self._course_widget = course_widget self._root_tracker = root_tracker self._root = tk.Tk() self._root.minsize(300, 300) utils.init_root_options(self._root) self._root.protocol('WM_DELETE_WINDOW', self.destroy) self._root_tracker.add_root(self._root) utils.init_theme() utils.configure_frame(self._root, colspan=self.COLSPAN) for i in range(5): self._root.rowconfigure(i + 2, weight=1) self._use_points = tk.IntVar(self._root) ttk.Checkbutton(self._root, text='Not Yet Graded', variable=self._use_points, command=self._disable_points_entry).grid(row=4) self._cat_name = utils.create_label(self._root, 'Category: ', 6, 0) self._cat = tk.StringVar(self._root) utils.create_option_menu(self._root, self._cat, [cat for cat in self._c.categories], 6, 1) self._points_entry = None
def create_antialias_menu(self): optMenu = utils.create_option_menu(["None", "Fast", "Best"]) def set_widget(*args): utils.set_selected(optMenu, self.prefs.getint("display","antialias")) def set_prefs(*args): index = utils.get_selected(optMenu) if index != -1: self.prefs.set("display","antialias",str(index)) set_widget() self.prefs.connect('preferences-changed',set_widget) optMenu.connect('changed',set_prefs) return optMenu
def make_enumerated_widget(self, table, i, form, name, part, param, order): label = gtk.Label(self.param_display_name(name, param)) label.set_alignment(1.0, 0.0) table.attach(label, 0, 1, i, i + 1, gtk.EXPAND | gtk.FILL, 0, 0, 0) widget = utils.create_option_menu(param.enum.value) def set_selected_value(*args): try: index = form.params[order] except ValueError, err: print err return utils.set_selected(widget, index)
def create_antialias_menu(self): optMenu = utils.create_option_menu(["None", "Fast", "Best"]) def set_widget(*args): utils.set_selected(optMenu, self.prefs.getint("display", "antialias")) def set_prefs(*args): index = utils.get_selected(optMenu) if index != -1: self.prefs.set("display", "antialias", str(index)) set_widget() self.prefs.connect('preferences-changed', set_widget) optMenu.connect('changed', set_prefs) return optMenu
def make_enumerated_widget( self, table, i, form, name, part, param, order): label = gtk.Label(self.param_display_name(name,param)) label.set_alignment(1.0, 0.0) table.attach(label,0,1,i,i+1,gtk.EXPAND | gtk.FILL,0,0,0) widget = utils.create_option_menu(param.enum.value) def set_selected_value(*args): try: index = form.params[order] except ValueError, err: print err return utils.set_selected(widget, index)
def testOptionMenu(self): om = utils.create_option_menu(["foo", "bar", "Bazniculate Geometry"]) utils.add_menu_item(om, "fishy") utils.set_selected(om, 3) self.assertEqual(3, utils.get_selected(om)) utils.set_menu_from_list(om, ["hello", "world"]) utils.set_selected(om, 1) item1 = utils.get_selected_value(om) self.assertEqual("world", item1) utils.set_selected_value(om, "hello") i = utils.get_selected(om) self.assertEqual(0, i) utils.set_selected_value(om, "world") i = utils.get_selected(om) self.assertEqual(1, i)
def testOptionMenu(self): om = utils.create_option_menu(["foo","bar","Bazniculate Geometry"]) utils.add_menu_item(om,"fishy") utils.set_selected(om,3) self.assertEqual(3, utils.get_selected(om)) utils.set_menu_from_list(om, ["hello","world"]) utils.set_selected(om,1) item1 = utils.get_selected_value(om) self.assertEqual("world",item1) utils.set_selected_value(om,"hello") i = utils.get_selected(om) self.assertEqual(0,i) utils.set_selected_value(om,"world") i = utils.get_selected(om) self.assertEqual(1,i)
def add_formula_function(self,table,i,name,param,form): label = gtk.Label(self.param_display_name(name,param)) label.set_alignment(1.0, 0.0) table.attach(label,0,1,i,i+1,gtk.EXPAND | gtk.FILL,0,0,0) funclist = self.construct_function_menu(param,form) widget = utils.create_option_menu(funclist) formula = form.formula def set_selected_function(): try: selected_func_name = form.get_func_value(name) index = funclist.index(selected_func_name) except ValueError, err: # func.cname not in list #print "bad cname" return utils.set_selected(widget, index)
def create_resolution_menu(self): self.resolutions = [ (320,240), (640,480), (800,600), (1024, 768), (1280, 800), (1280, 960), (1280,1024), (1400, 1050), (1440, 900), (1600,1200), (1680, 1050), (1920, 1200), (2560, 1600)] res_names= [ "%dx%d" % (w,h) for (w,h) in self.resolutions] res_menu = utils.create_option_menu(res_names) def set_selected_resolution(prefs): res = (w,h) = (prefs.getint("display","width"), prefs.getint("display","height")) try: index = self.resolutions.index(res) except ValueError: # not found self.resolutions.append(res) item = "%dx%d" % (w,h) utils.add_menu_item(res_menu, item) index = len(self.resolutions)-1 utils.set_selected(res_menu, index) def set_resolution(*args): index = utils.get_selected(res_menu) if index != -1: (w,h) = self.resolutions[index] preferences.userPrefs.set_size(w,h) self.update_subfracts() set_selected_resolution(preferences.userPrefs) res_menu.connect('changed', set_resolution) preferences.userPrefs.connect('preferences-changed', set_selected_resolution) return res_menu
def add_formula_function(self, table, i, name, param, form): label = gtk.Label(self.param_display_name(name, param)) label.set_alignment(1.0, 0.0) table.attach(label, 0, 1, i, i + 1, gtk.EXPAND | gtk.FILL, 0, 0, 0) funclist = self.construct_function_menu(param, form) widget = utils.create_option_menu(funclist) formula = form.formula def set_selected_function(): try: selected_func_name = form.get_func_value(name) index = funclist.index(selected_func_name) except ValueError, err: # func.cname not in list # print "bad cname" return utils.set_selected(widget, index)
def add_warpmenu(self,tip): self.warpmenu = utils.create_option_menu(["None"]) def update_warp_param(menu, f): param = utils.get_selected_value(menu) if param == "None": param = None f.set_warp_param(param) self.on_formula_change(f) #self.populate_warpmenu(self.f,warpmenu) self.f.connect('formula-changed', self.populate_warpmenu) self.warpmenu.connect("changed", update_warp_param, self.f) self.toolbar.add_widget( self.warpmenu, tip, None)
def __init__(self, main_window, f): dialog.T.__init__(self, _("Upload to Flickr"), main_window, gtk.DIALOG_DESTROY_WITH_PARENT, (gtk.STOCK_CLOSE, gtk.RESPONSE_CLOSE)) self.f = f self.main_window = main_window self.controls = gtk.VBox() self.vbox.pack_start(self.controls) self.slave = None table = gtk.Table(5, 2, False) self.controls.pack_start(table) self.title_entry = gtk.Entry() table.attach(self.title_entry, 1, 2, 0, 1, gtk.EXPAND | gtk.FILL, 0, 2, 2) title_label = gtk.Label(_("Tit_le:")) title_label.set_mnemonic_widget(self.title_entry) title_label.set_use_underline(True) table.attach(title_label, 0, 1, 0, 1, gtk.EXPAND | gtk.FILL, 0, 2, 2) self.tags = gtk.Entry() table.attach(self.tags, 1, 2, 1, 2, gtk.EXPAND | gtk.FILL, 0, 2, 2) tag_label = gtk.Label(_("Ta_gs:")) tag_label.set_mnemonic_widget(self.tags) tag_label.set_use_underline(True) table.attach(tag_label, 0, 1, 1, 2, gtk.EXPAND | gtk.FILL, 0, 2, 2) self.description = gtk.TextView() self.description.set_wrap_mode(gtk.WRAP_WORD) sw = gtk.ScrolledWindow() sw.set_shadow_type(gtk.SHADOW_ETCHED_IN) sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC) sw.add(self.description) table.attach(sw, 1, 2, 2, 3, gtk.EXPAND | gtk.FILL, 0, 2, 2) desc_label = gtk.Label(_("_Description:")) desc_label.set_mnemonic_widget(self.description) desc_label.set_use_underline(True) table.attach(desc_label, 0, 1, 2, 3, gtk.EXPAND | gtk.FILL, 0, 2, 2) self.include_params = gtk.CheckButton( _("_Include parameters in description")) table.attach(self.include_params, 0, 2, 3, 4, gtk.EXPAND | gtk.FILL, 0, 2, 2) self.blog_menu = utils.create_option_menu([_("<None>")]) table.attach(self.blog_menu, 1, 2, 4, 5, gtk.EXPAND | gtk.FILL, 0, 2, 2) self.get_blogs() blog_label = gtk.Label(_("_Blog To:")) blog_label.set_mnemonic_widget(self.blog_menu) blog_label.set_use_underline(True) table.attach(blog_label, 0, 1, 4, 5, gtk.EXPAND | gtk.FILL, 0, 2, 2) self.upload_button = gtk.Button(_("_Upload")) self.upload_button.connect("clicked", self.onUpload) table.attach(self.upload_button, 0, 2, 5, 6, gtk.EXPAND | gtk.FILL, 0, 2, 2) self.cancel_button = gtk.Button(_("_Cancel Upload")) self.cancel_button.connect("clicked", self.onCancelUpload) table.attach(self.cancel_button, 0, 2, 6, 7, gtk.EXPAND | gtk.FILL, 0, 2, 2) self.set_upload_mode(True) self.bar = gtk.ProgressBar() self.vbox.pack_end(self.bar, False, False)
def __init__(self, main_window, f): dialog.T.__init__( self, _("Upload to Flickr"), main_window, gtk.DIALOG_DESTROY_WITH_PARENT, (gtk.STOCK_CLOSE, gtk.RESPONSE_CLOSE)) self.f = f self.main_window = main_window self.controls = gtk.VBox() self.vbox.pack_start(self.controls) self.slave = None table = gtk.Table(5,2,False) self.controls.pack_start(table) self.title_entry = gtk.Entry() table.attach(self.title_entry,1,2,0,1,gtk.EXPAND | gtk.FILL, 0, 2, 2) title_label = gtk.Label(_("Tit_le:")) title_label.set_mnemonic_widget(self.title_entry) title_label.set_use_underline(True) table.attach(title_label,0,1,0,1,gtk.EXPAND | gtk.FILL, 0, 2, 2) self.tags = gtk.Entry() table.attach(self.tags,1,2,1,2,gtk.EXPAND | gtk.FILL, 0, 2, 2) tag_label = gtk.Label(_("Ta_gs:")) tag_label.set_mnemonic_widget(self.tags) tag_label.set_use_underline(True) table.attach(tag_label,0,1,1,2,gtk.EXPAND | gtk.FILL, 0, 2, 2) self.description = gtk.TextView() self.description.set_wrap_mode(gtk.WRAP_WORD) sw = gtk.ScrolledWindow () sw.set_shadow_type (gtk.SHADOW_ETCHED_IN) sw.set_policy (gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC) sw.add(self.description) table.attach(sw,1,2,2,3,gtk.EXPAND | gtk.FILL, 0, 2, 2) desc_label = gtk.Label(_("_Description:")) desc_label.set_mnemonic_widget(self.description) desc_label.set_use_underline(True) table.attach(desc_label,0,1,2,3,gtk.EXPAND | gtk.FILL, 0, 2, 2) self.include_params = gtk.CheckButton( _("_Include parameters in description")) table.attach(self.include_params,0,2,3,4,gtk.EXPAND | gtk.FILL, 0, 2, 2) self.blog_menu = utils.create_option_menu([_("<None>")]) table.attach(self.blog_menu, 1,2,4,5,gtk.EXPAND | gtk.FILL, 0, 2, 2) self.get_blogs() blog_label = gtk.Label(_("_Blog To:")) blog_label.set_mnemonic_widget(self.blog_menu) blog_label.set_use_underline(True) table.attach(blog_label,0,1,4,5,gtk.EXPAND | gtk.FILL, 0, 2, 2) self.upload_button = gtk.Button(_("_Upload")) self.upload_button.connect("clicked", self.onUpload) table.attach(self.upload_button, 0,2,5,6,gtk.EXPAND | gtk.FILL, 0, 2, 2) self.cancel_button = gtk.Button(_("_Cancel Upload")) self.cancel_button.connect("clicked", self.onCancelUpload) table.attach(self.cancel_button, 0,2,6,7,gtk.EXPAND | gtk.FILL, 0, 2, 2) self.set_upload_mode(True) self.bar = gtk.ProgressBar() self.vbox.pack_end(self.bar,False,False)
def create_panes(self): # option menu for choosing Inner/Outer/Fractal self.funcTypeMenu = utils.create_option_menu( [_("Fractal Function"), _("Outer Coloring Function"), _("Inner Coloring Function"), _("Transform Function"), _("Gradient")]) utils.set_selected(self.funcTypeMenu,self.model.current_type) self.funcTypeMenu.set_tooltip_text( _("Which formula of the current fractal to change")) self.funcTypeMenu.connect('changed',self.set_type_cb) # label for the menu hbox = gtk.HBox() label = gtk.Label(_("Function _Type to Modify : ")) label.set_use_underline(True) label.set_mnemonic_widget(self.funcTypeMenu) hbox.pack_start(label, False, False) hbox.pack_start(self.funcTypeMenu,True, True) self.vbox.pack_start(hbox,False, False) # 3 panes: files, formulas, formula contents panes1 = gtk.HPaned() self.vbox.pack_start(panes1, True, True) panes1.set_border_width(5) file_list = self.create_file_list() formula_list = self.create_formula_list() panes2 = gtk.HPaned() # left-hand pane displays file list panes2.add1(file_list) # middle is formula list for that file panes2.add2(formula_list) panes1.add1(panes2) # right-hand pane is details of current formula notebook = gtk.Notebook() # preview label = gtk.Label(_('_Preview')) label.set_use_underline(True) notebook.append_page(self.preview.widget, label) # source (self.sourcetext,sw) = self.create_scrolled_textview( _("The contents of the currently selected formula file")) label = gtk.Label(_('_Source')) label.set_use_underline(True) notebook.append_page(sw, label) # messages (self.msgtext, sw) = self.create_scrolled_textview( _("Any compiler warnings or errors in the current function")) label = gtk.Label(_('_Messages')) label.set_use_underline(True) notebook.append_page(sw, label) panes1.add2(notebook)