Пример #1
0
 def get_main_menu(self, window):  #del menubar
     accel_group = gtk.AccelGroup()
     item_factory = gtk.ItemFactory(gtk.MenuBar, "<main>", accel_group)
     item_factory.create_items(self.menu_items)
     window.add_accel_group(accel_group)
     self.item_factory = item_factory
     return item_factory.get_widget("<main>")
Пример #2
0
    def __create_menu_bar(self):

        # Keyboard shortcuts
        self.shortcuts = gtk.AccelGroup()

        # Create an item factory
        self.item_factory = gtk.ItemFactory(gtk.MenuBar, "<main>", self.shortcuts)

        # Create each items
        self.entries = (
            ( "/_File",         None,         None, 0, "<Branch>" ),
            ( "/File/_Nouveau",     "<control>N", None, 0, None ),
            ( "/File/_Ouvrir",    "<control>O", None, 0, None ),
            ( "/File/_Enregistrer",    "<control>S", None, 0, None ),
            ( "/File/Enregistrer _sous", None,         None, 0, None ),
            ( "/File/sep1",     None,         None, 0, "<Separator>" ),
            ( "/File/Quitter",     "<control>Q", gtk.main_quit, 0, None ),
            ( "/_Settings",      None,         None, 0, "<Branch>" ),
            ( "/Settings/Test",  None,         None, 0, None ),
            ( "/_Help",         None,         None, 0, "<Branch>" ),
            ( "/_Help/A propos",   None,         None, 0, None ),
            )
        self.item_factory.create_items(self.entries)

        # Add the menu bar in the window
        return self.item_factory.get_widget("<main>")
Пример #3
0
    def make_menu(self):
        self.accel_group = gtk.AccelGroup()
        self.item_factory = gtk.ItemFactory(gtk.MenuBar,"<main>",
                                            self.accel_group)

        self.item_factory.create_items([
            ('/File',None,None,0,"<Branch>"),
            ('/File/Open','<control>o',self.load_file,0,None),
            ('/File/Save','<control>s',self.save_file,0,None),
            ('/File/Save As...',None,self.save_as_file,0,None),
            ('/File/Import','<control>i',self.import_file,0,None),
            ('/File/Close','<control>c',self.close,0,None),
            ('/File/Quit','<control>q',self.quit,0,None),

            ('/Edit',None,None,0,"<Branch>"),
            ('/Edit/New Entry','<control>n',self.newentry,0,None),
            ('/Edit/Edit Entry','<control>e',self.editentry,0,None),
            ('/Edit/Mark Cleared','<control>m',self.markcleared,0,None),
            ('/Edit/Void Entry',None,self.voidentry,0,None),
            ('/Edit/Delete Entry',None,self.deleteentry,0,None),
            ('/Edit/Reconcile','<control>r',self.reconcile,0,None),

            ('/Help',None,None,0,"<Branch>"),
            ('/Help/About',None,self.about)
            ])
        self.widget.add_accel_group(self.accel_group)

        self.menubar = self.item_factory.get_widget("<main>")

        #self.menubar.add_entries()
        #self.widget.add_accel_group(self.menubar.accelerator)
        
        self.vbox.pack_start(self.menubar, gtk.FALSE, gtk.FALSE, 0)
        return
Пример #4
0
 def gui_setup(self):
     self.set_default_size(*self.default_size)
     pbox = gtk.VBox(False,0)
     menu_items = (
         ("/File/Import", "<control>I", self.file_import, 0, None),
         ("/File/Export", "<control>E", self.file_export, 0, None),
         ("/File/Save Resource", "<control>S", self.file_save, 0, None),
         ("/File/Revert", None, self.load, 0, None),)
     accel = gtk.AccelGroup()
     ifc = gtk.ItemFactory(gtk.MenuBar, "<main>", accel)
     self.add_accel_group(accel)
     ifc.create_items(menu_items)
     self.menu_bar = ifc.get_widget("<main>")
     pbox.pack_start(self.menu_bar, False, True, 0)
     hbox = gtk.HBox(False,0)
     hbox.pack_start(gtk.Label("Patch Format:"),False,True,0)
     self.patch_format_box = gtk.Entry()
     self.patch_format_box.set_editable(False)
     hbox.pack_start(self.patch_format_box, True,True,0)
     pbox.pack_start(hbox,False)
     pbox.pack_start(gtk.Label("Patch Information"),False,True,0)
     sw = gtk.ScrolledWindow()
     sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
     self.textbox = gtk.TextView()
     self.textbox.set_editable(True)
     sw.add(self.textbox)
     self.textbox.get_buffer().connect("changed",self.changed)
     pbox.pack_start(sw, True,True,5)
     self.add(pbox)
Пример #5
0
    def get_main_menu(self):
        accel_group = gtk.AccelGroup()

        item_factory = gtk.ItemFactory(gtk.MenuBar, "<main>", accel_group)
        item_factory.create_items(self.menu_items)
        self.window.add_accel_group(accel_group)

        return item_factory.get_widget("<main>")
Пример #6
0
def get_menu(window, menu_data):
	global item_factory   #for some reason the item_factory must not be destroyed with the function
	accel_group = gtk.AccelGroup()
	item_factory = gtk.ItemFactory(gtk.MenuBar, "<main>", accel_group)
	print menu_data
	item_factory.create_items(menu_data)
	window.add_accel_group(accel_group)

	return item_factory.get_widget("<main>")
    def __init__(self):
        self.version = "1.2"
        self.socket_count = 0
        gtkpccardwin = gtk.Window(gtk.WINDOW_TOPLEVEL)
        gtkpccardwin.set_wmclass("gtkpccard", "gtk.PCCard")
        self.tips = gtk.Tooltips()
        gtkpccardwin.realize()
        gtkpccardwin.set_title("gtk.PCCard" + " v." + self.version)
        gtkpccardwin.set_position(gtk.WIN_POS_CENTER)
        self.gtkpccardwin = gtkpccardwin
        mainvbox1 = gtk.VBox(0, 1)
        mainvbox1.set_spacing(2)
        mainvbox = gtk.VBox(0, 1)
        mainvbox.set_spacing(2)
        mymenubar = gtk.MenuBar()
        self.mymenubar = mymenubar

        ag = gtk.AccelGroup()
        self.itemf = gtk.ItemFactory(gtk.MenuBar, "<main>", ag)
        self.itemf.create_items((
            # path              key           callback    action#  type
            (_("/ _File"), "<alt>F", None, 0, "<Branch>"),
            (_("/ _File") + "/_" + FILE_RUN, "<control>R", rundlg, 421, ""),
            (_("/ _File") + "/_" +
             _("Check for newer versions of this program..."), "<control>U",
             checkSoftUpdate, 420, ""),
            (_("/ _File/sep4"), None, None, 49, "<Separator>"),
            (_("/ _File/_Quit"), "<control>Q", self.doQuit, 10, ""),
            (_("/_Help"), "<alt>H", None, 16, "<LastBranch>"),
            (_("/Help/_About..."), "F2", self.doAbout, 17, ""),
            (_("/_Help") + "/_" + APP_HELP_STR, "F4", displayHelp, 5011, ""),
            (_("/_Help") + "/_" + CONTRIBUTORS + "...", "F3", show_credits,
             913, ""),
            (_("/_Help") + "/_" + BUG_REPORT_MENU + "...", "F5",
             file_bug_report, 5011, ""),
        ))

        gtkpccardwin.add_accel_group(ag)
        mymenubar = self.itemf.get_widget("<main>")
        mymenubar.show()
        mainvbox1.pack_start(mymenubar, 0, 0, 0)
        mainvbox1.pack_start(mainvbox, 1, 1, 0)

        mainvbox.pack_start(
            getImage(getBaseDir() + "icewmcp.png", "IceWM Control Panel"), 0,
            0, 2)
        mainvbox.pack_start(gtk.Label("gtk.PCCard: " + _("PC Card Manager")),
                            0, 0, 2)
        self.mynotebook = gtk.Notebook()
        self.mynotebook.set_scrollable(1)
        self.addWidgets()
        mainvbox.pack_start(self.mynotebook, 1, 1, 2)
        gtkpccardwin.add(mainvbox1)
        self.gtkpccardwin = gtkpccardwin
        gtkpccardwin.set_default_size(-1, 440)
        gtkpccardwin.connect("destroy", self.doQuit)
        gtkpccardwin.show_all()
Пример #8
0
    def gui_setup(self):
        pbox = gtk.VBox(False, 0)
        self.set_default_size(*self.default_size)
        menu_items = (
            ("/File/Import Text", "<control>I", self.file_import, 0, None),
            ("/File/Export Text", "<control>E", self.file_export, 0, None),
            ("/File/Revert to Saved Source", None, self.load_source, 0, None),
            ("/File/Revert to Disassembly", None, self.load_disassemble, 0,
             None),
            ("/File/Load from TAUCS", None, self.load_taucs, 0, None),
            ("/File/Assemble and Save", "<control>S", self.file_save, 0, None),
            ("/File/Save Source Code", "<shift><control>S",
             self.do_save_source, 0, None),
            ("/Edit/Edit in External Text Editor", "<control>G",
             self.edit_external, 0, None),
            ("/Edit/Purge Source", None, self.purge, 0, None),
            #("/Edit/Check Syntax", "<control>T",
            #     self.edit_syntax, 0, None),

            #("/Edit/Copy", "<control>C", self.edit_copy, 0, None),
            #("/Edit/Paste","<control>V", self.edit_paste, 0, None),
        )
        accel = gtk.AccelGroup()
        ifc = gtk.ItemFactory(gtk.MenuBar, "<main>", accel)
        self.add_accel_group(accel)
        ifc.create_items(menu_items)
        self.menu_bar = ifc.get_widget("<main>")
        pbox.pack_start(self.menu_bar, False, True, 0)

        self.text_buf = gtk.TextBuffer()
        self.text_buf.set_text(" Nothing Loaded ".center(78, ';'))
        self.text_view = gtk.TextView()
        self.text_view.set_buffer(self.text_buf)
        self.text_view.set_wrap_mode(gtk.WRAP_CHAR)
        fontdesc = pango.FontDescription("monospace 10")
        self.text_view.modify_font(fontdesc)
        sw = gtk.ScrolledWindow()
        sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
        sw.add(self.text_view)
        pbox.pack_start(sw, True, True, 0)
        hbox = gtk.HBox(False, 0)
        hbox.pack_start(gtk.Label("Status:"), False, True, 0)
        self.asm_status = gtk.Entry()
        self.asm_status.set_editable(False)
        self.asm_status.set_text("Disassembling binary... ")
        hbox.pack_start(self.asm_status, True, True, 0)
        self.auto_assemble = gtk.ToggleButton("Auto-Assemble")
        self.auto_assemble.set_active(True)
        hbox.pack_start(self.auto_assemble, False, True, 0)
        self.save_source = gtk.ToggleButton("Auto-save Source")
        self.save_source.set_active(True)
        hbox.pack_start(self.save_source, False, True, 0)
        pbox.pack_start(hbox, False, True, 0)
        self.add(pbox)
        self.assembler = None
        self.cycle_check = False
Пример #9
0
    def create_main_menu(self):
        # This is the ItemFactoryEntry structure used to generate new menus.
        # Item 1: The menu path. The letter after the underscore indicates an
        #         accelerator key once the menu is open.
        # Item 2: The accelerator key for the entry
        # Item 3: The callback.
        # Item 4: The callback action.  This changes the parameters with
        #         which the callback is called.  The default is 0.
        # Item 5: The item type, used to define what kind of an item it is.
        #       Here are the possible values:
        #       NULL               -> "<Item>"
        #       ""                 -> "<Item>"
        #       "<Title>"          -> create a title item
        #       "<Item>"           -> create a simple item
        #       "<CheckItem>"      -> create a check item
        #       "<ToggleItem>"     -> create a toggle item
        #       "<RadioItem>"      -> create a radio item
        #       <path>             -> path of a radio item to link against
        #       "<Separator>"      -> create a separator
        #       "<Branch>"         -> create an item to hold sub items (optional)
        #       "<LastBranch>"     -> create a right justified branch 
        __menu_items=(
            ( "/_File",         None,         None, 0, "<Branch>" ),
            ( "/File/_New",     "<control>N", self.file_new, 0, None ),
            ( "/File/_Open",    "<control>O", self.file_open, 0, None ),
            ( "/File/_Save",    "<control>S", self.file_save, 0, None ),
            ( "/File/Save _As", None,         self.file_save_as, 0, None ),
            ( "/File/sep1",     None,         None, 0, "<Separator>" ),
            ( "/File/Quit",     "<control>Q", gtk.main_quit, 0, None ),
            ( "/_Options",      None,         None, 0, "<Branch>" ),
            ( "/Options/Test",  None,         None, 0, None ),
            ( "/_Help",         None,         None, 0, "<LastBranch>" ),
            ( "/_Help/About",   None,         None, 0, None ),
            )
        
        __accel_group = gtk.AccelGroup()

        # This function initializes the item factory.
        # Param 1: The type of menu - can be MenuBar, Menu,
        #          or OptionMenu.
        # Param 2: The path of the menu.
        # Param 3: A reference to an AccelGroup. The item factory sets up
        #          the accelerator table while generating menus.
        self.item_factory = gtk.ItemFactory(gtk.MenuBar, "<main>", __accel_group)

        # This method generates the menu items. Pass to the item factory
        #  the list of menu items
        self.item_factory.create_items(__menu_items)

        # Attach the new accelerator group to the window.
        self.add_accel_group(__accel_group)

        # Finally, return the actual menu bar created by the item factory.
        return self.item_factory.get_widget("<main>")
    def createWindow(self):
        global WMCLASS
        WMCLASS = "icewmcontrolpanelkeyedit"
        global WMNAME
        WMNAME = "IceWMControlPanelKeyEdit"
        wallwin = gtk.Window(gtk.WINDOW_TOPLEVEL)
        if self.NOCLOSE == 1:
            wallwin.set_data("ignore_return", 1)
            wallwin.connect("key-press-event", keyPressClose)
        wallwin.set_wmclass(WMCLASS, WMNAME)
        wallwin.realize()
        wallwin.set_title(_("IceWM CP - Key Editor"))
        wallwin.set_position(gtk.WIN_POS_CENTER)
        self.wallwin = wallwin

        menu_items = (
            (_('/_File'), None, None, 0, '<Branch>'),
            (_('/File/_Open...'), '<control>O', self.openKey, 0, ''),
            (_('/File/_Save'), '<control>S', self.doSave, 0, ''),
            (_('/File/sep2'), None, None, 2, '<Separator>'),
            (_("/_File") + "/_" + FILE_RUN, '<control>R', rundlg, 421, ""),
            (_("/_File") + "/_" +
             _("Check for newer versions of this program..."), '<control>U',
             checkSoftUpdate, 420, ""),
            (_('/File/sep1'), None, None, 1, '<Separator>'),
            (_('/File/_Apply Changes Now...'), '<control>A', self.restart_ice,
             0, ''),
            (_('/File/sep2'), None, None, 2, '<Separator>'),
            (_('/File/_Exit'), '<control>Q', self.doQuit, 0, ''),
            (_('/_Help'), None, None, 0, '<LastBranch>'),
            (_('/Help/_About...'), "F2", self.do_about, 0, ''),
            (_("/_Help") + "/_" + APP_HELP_STR, "F4", displayHelp, 5002, ""),
            (_("/_Help") + "/_" + CONTRIBUTORS + "...", "F3", show_credits,
             913, ""),
            (_("/_Help") + "/_" + BUG_REPORT_MENU + "...", "F5",
             file_bug_report, 5002, ""),
        )

        ag = gtk.AccelGroup()
        self.itemf = gtk.ItemFactory(gtk.MenuBar, '<main>', ag)
        wallwin.add_accel_group(ag)
        self.itemf.create_items(menu_items)
        self.menubar = self.itemf.get_widget('<main>')
        menubox = gtk.HBox(0, 0)
        menubox.pack_start(self.menubar, 1, 1, 0)
        mainvbox1 = gtk.VBox(0, 2)
        mainvbox1.pack_start(menubox, 0, 0, 0)
        mainvbox1.pack_start(self.createPanel(1), 1, 1, 2)
        wallwin.add(mainvbox1)
        wallwin.connect("destroy", self.doQuit)
        wallwin.set_default_size(-1, 440)
        self.appbutt.connect("clicked", self.restart_ice)
        wallwin.show_all()
Пример #11
0
def display_canvas_view(view):
    global item_factory
    view.set_scroll_region(0.0, 0.0, 600.0, 450.0)
    win = gtk.Window()
    win.connect ('destroy', mainquit)
    win.set_title ('DiaCanvas Python example')
    win.set_default_size (400, 400)
    
    vbox = gtk.VBox(homogeneous=gtk.FALSE)
    win.add (vbox)
    vbox.show()

    accelgroup = gtk.AccelGroup()
    win.add_accel_group(accelgroup)

    item_factory = gtk.ItemFactory(gtk.MenuBar, '<main>', accelgroup)
    item_factory.create_items(menu_items, view)

    menubar = item_factory.get_widget('<main>')
    vbox.pack_start(menubar, gtk.FALSE, gtk.FALSE, 0)
    menubar.show()

    table = gtk.Table(2,2, gtk.FALSE)
    table.set_row_spacings (4)
    table.set_col_spacings (4)
    vbox.pack_start (table)
    table.show()

    frame = gtk.Frame()
    frame.set_shadow_type (gtk.SHADOW_IN)
    table.attach (frame, 0, 1, 0, 1,
          gtk.EXPAND | gtk.FILL | gtk.SHRINK,
          gtk.EXPAND | gtk.FILL | gtk.SHRINK)
    frame.show()

#    view.set_usize(600, 450)
    frame.add (view)
    view.show()
    
    sbar = gtk.VScrollbar (view.get_vadjustment())
    table.attach (sbar, 1, 2, 0, 1, gtk.FILL,
          gtk.EXPAND | gtk.FILL | gtk.SHRINK)
    sbar.show()

    sbar = gtk.HScrollbar (view.get_hadjustment())
    table.attach (sbar, 0, 1, 1, 2, gtk.EXPAND | gtk.FILL | gtk.SHRINK,
          gtk.FILL)
    sbar.show()

    win.show()
Пример #12
0
 def main_menu(self, window):
     accel_group = gtk.AccelGroup()
     # Inicializamos la factoría de elementos.
     # Item 1 - El tipo de menú.
     # Item 2 - La ruta al menú.
     # Itme 3 - La factoría de elementos para los aceleradores.
     item_factory = gtk.ItemFactory(gtk.MenuBar, "<main>", accel_group)
     # Generamos los elementos del menú.
     item_factory.create_items(self.menu_items)
     # Añadir el nuevo grupo de aceleradores a la ventana.
     window.add_accel_group(accel_group)
     # Es necesario mantener una referencia a item_factory para evitar su destrucción
     self.item_factory = item_factory
     # Finalmente, se devuelve la barra de menú creada por la factoría de elementos.
     return item_factory.get_widget("<main>")
Пример #13
0
 def _build_menus(self):
     import gtk
     ag = gtk.AccelGroup()
     self._win.add_accel_group(ag)
     itemf = gtk.ItemFactory(gtk.MenuBar, "<main>", ag)
     itemf.create_items([
             ("/File", None, None, 0, "<Branch>"),
             ("/File/_Save", "<Control>S", None, 0, ""),
             ("/File/Save _As", "<Control>A", None, 0, ""),
             ("/File/_Quit", "<Control>Q", self._destroy_win, 0, ""),
             ("/Help", None, None, 0, "<LastBranch>"),
             ("/Help/About", None, None, 0, ""),
             ])
     mb = itemf.get_widget("<main>")
     self._vb.pack_start(mb, 0, 1)
     self._menubar = mb
Пример #14
0
    def __menu(self):
        menu_items = [("/_File", None, None, 0, "<Branch>"),
                      ("/File/_Session Manager", "<control>S", None, 0, None),
                      ("/File/sep1", None, None, 0, "<Separator>"),
                      ("/File/E_xit", "<control>Q", gtk.main_quit, 0, None),
                      ("/_Help", None, None, 0, "<Branch>"),
                      ("/Help/About", None, self.on_about, 0, None)]

        accel_group = gtk.AccelGroup()
        item_factory = gtk.ItemFactory(gtk.MenuBar, "<main>", accel_group)
        item_factory.set_data("view", self)
        item_factory.create_items(menu_items)

        self.add_accel_group(accel_group)

        wid = item_factory.get_widget("<main>")
        wid.show_all()
        return wid
Пример #15
0
    def __init__(self):
        gtk.Window.__init__(self)
        self.connect('delete-event', self.delete_event_cb)
        self.set_size_request(640, 480)
        vbox = gtk.VBox()
        self.add(vbox)

        accelgroup = gtk.AccelGroup()
        self.add_accel_group(accelgroup)

        self.item_factory = gtk.ItemFactory(gtk.MenuBar, '<main>', accelgroup)
        
        menu_items = [
            ('/_File',      None,         None,         0, '<Branch>' ),
            ('/File/_Open', '<control>O', self.file_open_cb, 0, ''),
            ('/File/sep1',  None,         None,         0, '<Separator>'),
            ('/File/_Quit', '<control>Q', self.file_quit_cb, 0, ''),
            ]
        self.item_factory.create_items(menu_items)

        menubar = self.item_factory.get_widget('<main>')
        vbox.pack_start(menubar, expand=False)

        self.player = PlayerWidget(self)
        vbox.pack_start(self.player, expand=True)

        hbox = gtk.HBox()
        vbox.pack_start(hbox, expand=False)

        button = gtk.Button('Play')
        button.connect('clicked', self.play_clicked_cb)
        hbox.pack_start(button, expand=False)
        button.set_size_request(120, -1)
        button.set_border_width(5)
        self.play_button = button
        
        button = gtk.Button('Stop')
        button.connect('clicked', self.stop_clicked_cb)
        hbox.pack_start(button, expand=False)
        button.set_size_request(120, -1)
        button.set_border_width(5)
        self.stop_button = button
Пример #16
0
    def gui_setup(self):
        self.set_default_size(*self.default_size)
        pbox = gtk.VBox(False, 0)
        menu_items = (("/File/Import", "<control>I", self.file_import, 0,
                       None), ("/File/Export RGB", None, self.file_export, 0,
                               None), ("/File/Export Indexed", "<control>E",
                                       self.file_indexed, 0, None),
                      ("/File/Save Resource", "<control>S", self.file_save, 0,
                       None), ("/File/Revert", None, self.revert, 0, None),
                      ("/Edit/Cut", "<control>X", self.edit_cut, 0,
                       None), ("/Edit/Copy", "<control>C", self.edit_copy, 0,
                               None), ("/Edit/Paste", "<control>V",
                                       self.edit_paste, 0, None),
                      ("/Edit/Clear", None, self.edit_clear, 0,
                       None), ("/Edit/Open in External Editor", "<control>G",
                               self.edit_external, 0, None))
        accel = gtk.AccelGroup()
        ifc = gtk.ItemFactory(gtk.MenuBar, "<main>", accel)
        self.add_accel_group(accel)
        ifc.create_items(menu_items)
        self.menu_bar = ifc.get_widget("<main>")
        pbox.pack_start(self.menu_bar, False, True, 0)

        sw = gtk.ScrolledWindow()
        sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
        self.display = gtk.Image()
        sw.add_with_viewport(self.display)
        pbox.pack_start(sw, True, True, 10)

        self.toggle_palette = gtk.ToggleButton("Run Palette Animation")
        pbox.pack_start(self.toggle_palette, False, True, 0)
        self.toggle_palette.connect("toggled", self.palette_toggled)
        self.flags = gtk.Entry()
        self.flags.set_editable(False)
        if self.has_flags:
            hbox = gtk.HBox(False, 0)
            hbox.pack_start(gtk.Label("Flags:"), True, True, 0)
            hbox.pack_start(self.flags, False, True, 0)
            pbox.pack_start(hbox, False, True, 0)

        self.add(pbox)
        self.animation_sid = None
Пример #17
0
	def get_main_menu(self):
		menu_items = (
					( "/_File",         None,         None, 0, "<Branch>" ),
   				( "/File/_New",     "<control>N", self.menuitem_response, 0, None ),
          ( "/File/_Save",    "<control>S", self.menuitem_response, 0, None ),
          ( "/File/Save _As", "<control>A", self.menuitem_response, 0, None ),
          ( "/File/sep1",     None,         None, 0, "<Separator>" ),
          ( "/File/Quit",     "<control>Q", self.destroy, 0, None ),
          ( "/_Options",      None,         None, 0, "<Branch>" ),
          ( "/Options/Test",  None,         None, 0, None ),
          ( "/_Help",         None,         None, 0, "<LastBranch>" ),
          ( "/_Help/About",   None,         self.menuitem_response, 0, None ),
    )
		accel_group = gtk.AccelGroup()
		self.item_factory = gtk.ItemFactory(gtk.MenuBar, "<main>", accel_group)
		# This method generates the menu items. Pass to the item factory
		self.item_factory.create_items(menu_items)
		# Attach the new accelerator group to the window.
		self.window.add_accel_group(accel_group)		
		return self.item_factory.get_widget("<main>")
Пример #18
0
        def AddMenuBar(self):
                self.MenuItems=(
                        ("/File",None,None,0,"<Branch>"),
                        ("/File/Load Case data",None,self.LoadCaseFile,0,None),
                        ("/File/Load Control data",None,self.LoadCtrlFile,0,None),
			("/File/Load QTL data",None,self.LoadQTLFile,0,None),
                        ("/File/sep1",None,None,0,"<Separator>"),
                        ("/File/Exit",None,self.destroy,0,None),
			("/Edit",None,None,0,"<Branch>"),
			("/Edit/Reset",None,self.reset,0,None),
                        ("/Help",None,None,0,"<Branch>"),
                        ("/Help/SHEsisPlus Help",None,None,0,None),
                        ("/Help/About SHEsisPlus",None,self.About,0,None),
                        )
                
                self.AccelGroup=gtk.AccelGroup()
                self.ItemFactory=gtk.ItemFactory(gtk.MenuBar,"<main>",self.AccelGroup)
                self.ItemFactory.create_items(self.MenuItems)
                self.window.add_accel_group(self.AccelGroup)
                self.MenuBar=self.ItemFactory.get_widget("<main>")
		self.vBox.pack_start(self.MenuBar,False,True,0)
                self.MenuBar.show()
Пример #19
0
    def get_main_menu(self, window):
        accel_group = gtk.AccelGroup()

        # This function initializes the item factory.
        # Param 1: The type of menu - can be MenuBar, Menu,
        #          or OptionMenu.
        # Param 2: The path of the menu.
        # Param 3: A reference to an AccelGroup. The item factory sets up
        #          the accelerator table while generating menus.
        item_factory = gtk.ItemFactory(gtk.MenuBar, "<main>", accel_group)

        # This method generates the menu items. Pass to the item factory
        #  the list of menu items
        item_factory.create_items(self.menu_items)

        # Attach the new accelerator group to the window.
        window.add_accel_group(accel_group)

        # need to keep a reference to item_factory to prevent its destruction
        self.item_factory = item_factory
        # Finally, return the actual menu bar created by the item factory.
        return item_factory.get_widget("<main>")
Пример #20
0
 def gui_setup(self):
     self.set_default_size(*self.default_size)
     pbox = gtk.VBox(False,0)
     menu_items = (
         ("/File/Import WAV", "<control>I", self.file_import, 0, None),
         ("/File/Export WAV", "<control>E", self.file_export, 0, None),
         ("/File/Save Resource", "<control>S", self.file_save, 0, None),
         ("/File/Revert", None, self.load, 0, None),)
     accel = gtk.AccelGroup()
     ifc = gtk.ItemFactory(gtk.MenuBar, "<main>", accel)
     self.add_accel_group(accel)
     ifc.create_items(menu_items)
     self.menu_bar = ifc.get_widget("<main>")
     pbox.pack_start(self.menu_bar, False, True, 0)
     hbox = gtk.HBox(False,0)
     hbox.pack_start(gtk.Label("Sampling Rate:"),False,True,0)
     self.sample_rate = gtk.Entry()
     self.sample_rate.set_width_chars(10)
     self.sample_rate.set_editable(False)
     hbox.pack_start(self.sample_rate, True,True,0)
     hbox.pack_start(gtk.Label("Length:"),False,True,0)
     self.duration = gtk.Entry()
     self.duration.set_width_chars(10)
     self.duration.set_editable(False)
     hbox.pack_start(self.duration, True,True,0)
     hbox.pack_start(gtk.Label("Flags:"),False,True,0)
     self.flags = gtk.Entry()
     self.flags.set_width_chars(6)
     self.flags.set_editable(False)
     hbox.pack_start(self.flags, True,True,0)
     pbox.pack_start(hbox,False)
     self.play_button = gtk.Button("Play Sound")
     pbox.pack_start(self.play_button, False, True, 0)
     pbox.pack_start(gtk.Label("Sound Player Command"),False,True,0)
     self.play_command = gtk.Entry()
     self.play_command.set_text(self.redelv.preferences['play_sound_cmd'])
     pbox.pack_start(self.play_command, True,True,5)
     self.add(pbox)
     self.play_button.connect("clicked", self.play_sound)
Пример #21
0
    def get_widgets(self):
        accel_group = gtk.AccelGroup()
        self.window.add_accel_group(accel_group)

        item_factory = gtk.ItemFactory(gtk.MenuBar, '<main>', accel_group)
        item_factory.create_items(self.items)

        menubar = item_factory.get_widget('<main>')

        self.unmounted_widgets = []
        self.need_sel_widgets = []

        for data in menu_data:
            if len(data) >= 5 and self.is_special(data[4]):
                path = data[0].replace('_', '')
                menuitem = item_factory.get_item('<main>%s' % path)

                widget_list = self.get_special_list(data[4])
                widget_list.append(menuitem)

        self.window.item_factory = item_factory

        return menubar, self.need_sel_widgets, self.unmounted_widgets
Пример #22
0
def makeMenuBar(window, ctrl):
    ''' Build the main menu bar '''
    menu_items = (
        # menu path, accelerator key, callback, callback action, item type
        ('/_File', None, None, 0, '<Branch>'),
        ('/File/_New', '<control>N', ctrl.newGame, 0, None),
        ('/File/_Open', '<control>O', ctrl.openGame, 0, None),
        ('/File/_Save', '<control>S', ctrl.saveGame, 0, None),
        ('/File/Save _As', '<control><shift>S', ctrl.saveGame, 1, None),
        ('/File/Quit', '<control>Q', ctrl.exit, 0, None),
        ('/_Edit', None, None, 0, '<Branch>'),
        ('/Edit/_Undo', '<control>Z', ctrl.undo, 0, None),
        ('/Edit/_Redo', '<control>Y', ctrl.redo, 0, None),
        ('/_Play', None, None, 0, '<Branch>'),
        ('/Play/Start _Game', '<control>P', ctrl.startGame, 0, None),
        ('/Play/Start from _Selected', '<control><shift>P', ctrl.startGame, 1,
         None),
        ('/Play/Check for _Errors', '<control>E', ctrl.checkGame, 0, None),
    )
    accel_group = gtk.AccelGroup()
    item_factory = gtk.ItemFactory(gtk.MenuBar, '<main>', accel_group)
    item_factory.create_items(menu_items)
    window.add_accel_group(accel_group)
    return item_factory.get_widget('<main>')
Пример #23
0
 def build_menu(self, window, items):
     accel_group = gtk.AccelGroup()
     item_factory = gtk.ItemFactory(gtk.Menu, "<pydoc>", accel_group)
     item_factory.create_items(items)
     self.item_factory = item_factory
     return item_factory.get_widget("<pydoc>")
Пример #24
0
    def gui_setup(self):
        pbox = gtk.VBox(False,0)
        self.set_default_size(*self.default_size)
        menu_items = (
            ("/File/Import CSV", "<control>I", self.file_import, 0, None),
            ("/File/Export CSV", "<control>E", self.file_export, 0, None),
            ("/File/Save Resource", "<control>S", self.file_save, 0, None),
            ("/File/Revert", None, self.load, 0, None),
            #("/Edit/Cut", "<control>X", self.edit_cut, 0, None),
            #("/Edit/Copy", "<control>C", self.edit_copy, 0, None),
            #("/Edit/Paste","<control>V", self.edit_paste, 0, None),
            ("/Edit/Delete Entry", None, self.edit_delete, 0, None),
            ("/Edit/Insert New Entry", None, self.edit_insert, 0, None),
            ("/Edit/Clear", None, self.edit_clear, 0, None),)
        accel = gtk.AccelGroup()
        ifc = gtk.ItemFactory(gtk.MenuBar, "<main>", accel)
        self.add_accel_group(accel)
        ifc.create_items(menu_items)
        self.menu_bar = ifc.get_widget("<main>")
        pbox.pack_start(self.menu_bar, False, True, 0)

        sw = gtk.ScrolledWindow()
        sw.set_policy(gtk.POLICY_AUTOMATIC,gtk.POLICY_AUTOMATIC)

        self.data_view = gtk.TreeView()
        dc = gtk.TreeViewColumn()
        dc.set_title("Tile Index Cutoff")
        c = gtk.CellRendererText()
        c.set_property('editable',True)
        c.connect('edited', self.editor_callback_cutoff)
        dc.pack_start(c,True)
        dc.add_attribute(c,"text",0)
        self.data_view.append_column(dc)
        
        dc = gtk.TreeViewColumn()
        dc.set_title("Tile Name Code")
        c = gtk.CellRendererText() 
        c.set_property('editable',True)
        c.connect('edited', self.editor_callback_namecode)
        dc.pack_start(c,True)
        dc.add_attribute(c,"text",1)
        self.data_view.append_column(dc)

        dc = gtk.TreeViewColumn()
        dc.set_title("Singular")
        c = gtk.CellRendererText() 
        dc.pack_start(c,True)
        dc.add_attribute(c,"text",2)
        self.data_view.append_column(dc)

        dc = gtk.TreeViewColumn()
        dc.set_title("Plural")
        c = gtk.CellRendererText() 
        dc.pack_start(c,True)
        dc.add_attribute(c,"text",3)
        self.data_view.append_column(dc)


        self.tree_data = gtk.ListStore(str,str,str,str,int)
        self.data_view.set_model(self.tree_data)

        sw.add(self.data_view)
        pbox.pack_start(sw, True, True, 5)
        self.add(pbox)
Пример #25
0
 def __init__(self):
         self.selected_type = ""
         self.session = ""
         self.collab = g_data.get_user()
         self.snap = ""
         
         self.preferences = 0
         self.add_collab = 0
         self.add_session = 0
         
         self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
         self.window.set_title('Session Exchange')
         self.window.set_size_request(400, 200)
         self.window.connect('destroy', lambda win: gtk.main_quit())
         self.window.set_position(gtk.WIN_POS_MOUSE)
         
         accel_group = gtk.AccelGroup()
         self.window.add_accel_group(accel_group)
         
         main_box = gtk.VBox()
         self.window.add(main_box)
         
         menu_items = (
                 ('/_File',            None,         None,             0, '<Branch>'),
                 ('/File/_Add Session...','<control>A', self.add_session_cb, 0, ''),
                 ('/File/Create _Session...', '<control>S', self.create_session_cb, 0, ''),
                 ('/File/sep1',        None,         None,             0, '<Separator>'),
                 ('/File/_Quit',       '<control>Q', gtk.main_quit,     0, '<StockItem>', gtk.STOCK_QUIT),
                 ('/_Edit',            None,         None,             0, '<Branch>' ),
                 ('/Edit/Cu_t',        '<control>X', self.menuitem_cb, 0, '<StockItem>', gtk.STOCK_CUT),
                 ('/Edit/_Copy',       '<control>C', self.menuitem_cb, 0, '<StockItem>', gtk.STOCK_COPY),
                 ('/Edit/_Paste',      '<control>V', self.menuitem_cb, 0, '<StockItem>', gtk.STOCK_PASTE),
                 ('/Edit/_Delete',     None,         self.delete_cb, 0, '<StockItem>', gtk.STOCK_DELETE),
                 ('/Edit/sep1',        None,         None,             0, '<Separator>'),
                 ('/Edit/Add Colla_borator...','<control>B', self.add_collaborator_cb,0,''),
                 ('/Edit/_Fetch Snapshot','<control>F', self.fetch_snapshot_cb,0,''),
                 ('/Edit/sep1',        None,         None,             0, '<Separator>'),
                 ('/Edit/_Preferences...','<control>P', self.preferences_cb, 0, '')
         )
         
         #need to hold a reference to the item_factory or the menubar will disappear.
         self.item_factory = gtk.ItemFactory(gtk.MenuBar, '<main>', accel_group)
         self.item_factory.create_items(menu_items, self.window)
         main_box.pack_start(self.item_factory.get_widget('<main>'), False)
         
         pane1 = gtk.HPaned()
         pane2 = gtk.HPaned()
         pane1.pack2(pane2, True, False)
         
         scroll1 = gtk.ScrolledWindow()
         scroll1.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
         pane1.pack1(scroll1, True, False)
         scroll2 = gtk.ScrolledWindow()
         scroll2.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
         pane2.pack1(scroll2, True, False)
         scroll3 = gtk.ScrolledWindow()
         scroll3.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
         pane2.pack2(scroll3, True, False)
         
         self.session_model = gtk.ListStore(gobject.TYPE_STRING)
         view1 = gtk.TreeView(self.session_model)
         column1 = gtk.TreeViewColumn('Sessions', gtk.CellRendererText(), text=0)
         view1.append_column(column1)
         self.session_selection = view1.get_selection()
         self.session_selection.connect("changed", self.cb_session_selection_changed)
         scroll1.add(view1)
         
         self.update_session_view()
         
         self.collab_model = gtk.ListStore(gobject.TYPE_STRING)
         view2 = gtk.TreeView(self.collab_model)
         column2 = gtk.TreeViewColumn('Collaborators', gtk.CellRendererText(), text=0)
         view2.append_column(column2)
         self.collab_selection = view2.get_selection()
         self.collab_selection.connect("changed", self.cb_collab_selection_changed)
         scroll2.add(view2)
         
         self.snap_model = gtk.ListStore(gobject.TYPE_STRING)
         view3 = gtk.TreeView(self.snap_model)
         column3 = gtk.TreeViewColumn('Snapshots', gtk.CellRendererText(), text=0)
         view3.append_column(column3)
         self.snap_selection = view3.get_selection()
         self.snap_selection.connect("changed", self.cb_snap_selection_changed)
         scroll3.add(view3)
         
         main_box.pack_start(pane1, True, True)
         
         self.status_bar = gtk.Statusbar()
         main_box.pack_start(self.status_bar, False)
         self._status_cid = self.status_bar.get_context_id('display')
         self._status_mid = ''
         
         self.window.show_all()
Пример #26
0
    def __init__(self):
        super(IreUI, self).__init__()
        self.set_size_request(500, 400)
        self.connect("delete-event", self.save_if_necessary)
        self.connect("destroy", gtk.main_quit)
        self.set_title(self.title_format)

        self.set_icon_from_file(self.icon_file)

        accel_group = gtk.AccelGroup()
        self.menu_items = (
            ("/_File", None, None, 0, "<Branch>"),
            ("/File/_New", "<ctl>N", self.new_settings_file, 0, None),
            ("/File/_Open", "<ctl>O", self.open_settings_file, 0, None),
            ("/File/_Save", "<ctl>S", self.save_settings_file, 0, None),
            ("/File/Save _As", None, self.save_as_settings_file, 0, None),
            ("/File/sep1", None, None, 0, "<Separator>"),
            ("/File/Quit", "<ctl>Q", gtk.main_quit, 0, None),
            ("/_Help", None, None, 0, "<Branch>"),
            ("/_Help/About", None, self.about, 0, None),
        )
        self.item_factory = gtk.ItemFactory(gtk.MenuBar, "<main>", accel_group)
        self.item_factory.create_items(self.menu_items)

        self.config_filters = []
        filter = gtk.FileFilter()
        filter.set_name("Config Files (*.conf)")
        filter.add_pattern("*.conf")
        self.config_filters.append(filter)
        filter = gtk.FileFilter()
        filter.set_name("All Files")
        filter.add_pattern("*")
        self.config_filters.append(filter)

        def mark_unsaved(*args):
            self.unsaved_edits = True

        self.rule_model = gtk.ListStore(str,
                                        object)  # (String-rule, Rule object)
        self.rule_model.connect("row_changed", mark_unsaved)
        self.rule_model.connect("row_inserted", mark_unsaved)
        self.watch_model = gtk.ListStore(str,
                                         object)  # (String-watch, Watch dict)
        self.watch_model.connect("row_changed", mark_unsaved)
        self.watch_model.connect("row_inserted", mark_unsaved)

        menu_box = gtk.VBox()
        menu_box.pack_start(self.item_factory.get_widget("<main>"),
                            expand=False)
        border = gtk.HBox()
        menu_box.pack_start(border)
        vbox = gtk.VBox()
        border.pack_start(vbox, padding=5)
        """Creates the "Rules" view, with its associated labels and buttons."""
        rule_label = gtk.Label("Rules:")
        rule_label.set_alignment(0, 0)
        vbox.pack_start(rule_label, expand=False, padding=5)

        rule_box = gtk.HBox()
        vbox.pack_start(rule_box)
        rule_scroll = gtk.ScrolledWindow()
        rule_box.pack_start(rule_scroll)
        rule_view = gtk.TreeView(model=self.rule_model)
        rule_view.set_headers_visible(False)
        rule_view.connect("row-activated", self.edit_rule)
        rule_view.connect("cursor_changed",
                          lambda x: self.rule_remove.set_sensitive(True))
        rule_scroll.add(rule_view)
        cell = gtk.CellRendererText()
        rule_column = gtk.TreeViewColumn('Rules', cell)
        rule_column.add_attribute(cell, 'text', 0)
        rule_view.append_column(rule_column)
        r_small = gtk.VBox()
        rule_add = gtk.Button("+")
        rule_add.connect("clicked", self.create_rule)
        r_small.pack_end(rule_add, expand=False)
        self.rule_remove = gtk.Button("-")
        self.rule_remove.set_sensitive(False)

        def remove_selected_rule(btn):
            dg = gtk.MessageDialog(
                type=gtk.MESSAGE_QUESTION,
                buttons=gtk.BUTTONS_YES_NO,
                message_format="Are you sure you want to remove this rule?")
            resp = dg.run()
            dg.hide()
            if resp == gtk.RESPONSE_YES:
                self.rule_model.remove(
                    self.rule_model.get_iter(rule_view.get_cursor()[0]))
                self.rule_remove.set_sensitive(False)

        self.rule_remove.connect("clicked", remove_selected_rule)
        r_small.pack_end(self.rule_remove, expand=False)
        rule_box.pack_start(r_small, expand=False)
        """Creates the "Watches" view, with its associated labels and buttons."""
        watch_label = gtk.Label("Watches:")
        watch_label.set_alignment(0, 0)
        vbox.pack_start(watch_label, expand=False, padding=5)

        watch_box = gtk.HBox()
        watch_scroll = gtk.ScrolledWindow()
        watch_box.pack_start(watch_scroll)
        watch_view = gtk.TreeView(model=self.watch_model)
        watch_view.set_headers_visible(False)
        watch_view.connect("row-activated", self.edit_watch)
        watch_view.connect("cursor_changed",
                           lambda x: self.watch_remove.set_sensitive(True))
        watch_scroll.add(watch_view)
        cell = gtk.CellRendererText()
        watch_column = gtk.TreeViewColumn('Watches', cell)
        watch_column.add_attribute(cell, 'text', 0)
        watch_view.append_column(watch_column)
        w_small = gtk.VBox()
        watch_add = gtk.Button("+")
        watch_add.connect("clicked", self.create_watch)
        w_small.pack_end(watch_add, expand=False)
        self.watch_remove = gtk.Button("-")
        self.watch_remove.set_sensitive(False)

        def remove_selected_watch(btn):
            dg = gtk.MessageDialog(
                type=gtk.MESSAGE_QUESTION,
                buttons=gtk.BUTTONS_YES_NO,
                message_format="Are you sure you want to remove this watch?")
            resp = dg.run()
            dg.hide()
            if resp == gtk.RESPONSE_YES:
                self.watch_model.remove(
                    self.watch_model.get_iter(watch_view.get_cursor()[0]))
                self.watch_remove.set_sensitive(False)

        self.watch_remove.connect("clicked", remove_selected_watch)
        w_small.pack_end(self.watch_remove, expand=False)
        watch_box.pack_start(w_small, expand=False)
        vbox.pack_start(watch_box)

        bottom_align = gtk.Alignment(0, 0, 0, 0)
        vbox.pack_end(bottom_align)

        self.add(menu_box)
        self.show_all()
    def __init__(self):
        self.version = this_software_version
        cwin = gtk.Window()
        cwin = gtk.Window(gtk.WINDOW_TOPLEVEL)
        cwin.set_wmclass("icewmcp-keyboard", "icewmcp-Keyboard")
        cwin.realize()
        cwin.set_title(_("IceWM CP - Keyboard Settings") + " " + self.version)
        cwin.set_position(gtk.WIN_POS_CENTER)
        self.cwin = cwin

        self.vbox = gtk.VBox(0, 0)

        menu_items = (
            (_('/_File'), None, None, 0, '<Branch>'),
            (_('/_File') + "/_" + _("Open Shortcut Key Configuration") + "...",
             '<control>O', self.openKey, 0, ''),
            (_('/File/_Apply Changes Now...'), "<control>A", restart_ice, 0,
             ''),
            (_('/File/sep1'), None, None, 1, '<Separator>'),
            (_("/_File") + "/_" + FILE_RUN, "<control>R", rundlg, 421, ""),
            (_("/_File") + "/_" +
             _("Check for newer versions of this program..."), "<control>U",
             checkSoftUpdate, 420, ""),
            (_('/File/sep1'), None, None, 1, '<Separator>'),
            (_('/File/_Exit'), '<control>Q', reapplySettings, 0, ''),
            (_('/_Help'), None, None, 0, '<LastBranch>'),
            (_('/Help/_About...'), "F2", self.do_about, 0, ''),
            (_("/_Help") + "/_" + APP_HELP_STR, "F4", displayHelp, 5013, ""),
            (_("/_Help") + "/_" + CONTRIBUTORS + "...", "F3", show_credits,
             913, ""),
            (_("/_Help") + "/_" + BUG_REPORT_MENU + "...", "F5",
             file_bug_report, 5013, ""),
        )

        ag = gtk.AccelGroup()
        self.itemf = gtk.ItemFactory(gtk.MenuBar, '<main>', ag)
        cwin.add_accel_group(ag)
        self.itemf.create_items(menu_items)
        self.menubar = self.itemf.get_widget('<main>')
        vbox1 = gtk.VBox(0, 0)
        vbox = self.vbox
        vbox.set_border_width(4)
        vbox1.pack_start(self.menubar, 0, 0, 0)
        vbox1.pack_start(vbox, 1, 1, 0)
        vbox.pack_start(getImage(getBaseDir() + "icewmcp.png", DIALOG_TITLE),
                        0, 0, 1)
        vbox.pack_start(gtk.Label(_("Keyboard")), 0, 0, 1)
        vbox.set_spacing(2)
        notebook = gtk.Notebook()
        self.notebook = notebook
        notebook.set_tab_pos(gtk.POS_TOP)
        notebook.set_scrollable(gtk.TRUE)
        vbox.pack_start(notebook, 1, 1, 2)
        global KEY_TAB
        keywinta = keywintab()
        KEY_TAB = keywinta
        global BELL_TAB
        BELL_TAB = keysoundtab()
        global SHORT_TAB
        short_tab = keypanel(0)
        SHORT_TAB = short_tab
        global ICE_TAB
        ICE_TAB = icepref.PullTab("Key Bindings")
        icetab = ICE_TAB.get_tab()
        icepan = gtk.VBox(0, 0)
        icepan.set_spacing(3)
        icepan.pack_start(gtk.Label(_("Additional IceWM Shortcut Keys")), 0, 0,
                          3)
        icepan.pack_start(icetab, 1, 1, 0)
        actstr = _('/File/_Apply Changes Now...'
                   )[_('/File/_Apply Changes Now...').rfind("/") +
                     1:len(_('/File/_Apply Changes Now...'))].replace(
                         "_", "").replace(".", "").strip()
        abutt = gtk.Button(" " + actstr + " ")
        abutt.connect("clicked", restart_ice)
        TIPS.set_tip(abutt, actstr)
        ccbutton = gtk.Button(_("Close"))
        TIPS.set_tip(ccbutton, _("Close"))
        ccbutton.connect("clicked", reapplySettings)
        hbox1 = gtk.HBox(1, 0)
        hbox1.set_border_width(3)
        hbox1.set_spacing(5)
        hbox1.pack_start(abutt, 1, 1, 0)
        hbox1.pack_start(ccbutton, 1, 1, 0)
        icepan.pack_start(hbox1, 0, 0, 2)

        notebook.append_page(keywinta.mainvbox, gtk.Label(_("Repetition")))
        notebook.append_page(BELL_TAB.mainvbox, gtk.Label(_("Sound")))
        notebook.append_page(short_tab.createPanel(0),
                             gtk.Label(_("Shortcut Keys")))
        notebook.append_page(icepan, gtk.Label(_("IceWM Keys")))

        short_tab.appbutt.connect("clicked", restart_ice)
        cwin.set_default_size(435, 500)
        cwin.add(vbox1)
        cwin.connect("destroy", reapplySettings)
        global C_WINDOW
        C_WINDOW = cwin
        cwin.show_all()
 def __init__(self) :
     # You may need to edited TIME_ZONE_INFO_FILE and ZONEINFO_DIR values if
     # your timezone information is stored someplace other than
     # /etc/localtime or if your 'zoneinfo' directory cannot be determined
     # (you will see the error).  The value of ZONEINFO_DIR can usually be
     # determined automatically if TIME_ZONE_INFO_FILE is valid on your
     # system, exists, and is a SYMLINK. You may also need to edit
     # TIME_ZONE_DESC_FILE.
         
     # This file usually links to a timezone file on /usr/share/zoneinfo/
     # path
     global TIME_ZONE_INFO_FILE
     TIME_ZONE_INFO_FILE='/etc/localtime'    
     
     # Leave blank for automatic detection
     global ZONEINFO_DIR
     ZONEINFO_DIR='/usr/share/zoneinfo'
     
     # This file holds the 'nice' name for the timezone
     global TIME_ZONE_DESC_FILE
     TIME_ZONE_DESC_FILE='/etc/timezone'   
     
     global CLOCK_VERSION        
     CLOCK_VERSION=this_software_version
     clockwin=gtk.Window(gtk.WINDOW_TOPLEVEL)
     self._root=clockwin
     clockwin.realize()
     clockwin.set_title('PhrozenClock gtk')
     clockwin.set_position(gtk.WIN_POS_CENTER)
     self.clockwin=clockwin
     mynotebook=gtk.Notebook()
     mynotebook.set_border_width(2)
     self.mynotebook=mynotebook
     self.locateZoneinfo()
     global TZ_DICT
     self.loadTimeZones()
     tznames=TZ_DICT.keys()
     tznames.sort()
     global HOUR24
     HOUR24={"00":"12","01":"1","02":"2","03":"3","04":"4","05":"5","06":"6","07":"7","08":"8","09":"9","10":"10","11":"11","12":"12","13":"1","14":"2","15":"3","16":"4","17":"5","18":"6","19":"7","20":"8","21":"9","22":"10","23":"11","24":"12"}
     vbox1=gtk.VBox(0,0)
     self.vbox1=vbox1
     hbox2=gtk.HBox(0,0)
     self.hbox2=hbox2
     mycal=gtk.Calendar()
     mycal.display_options((gtk.CALENDAR_SHOW_HEADING | 
                            gtk.CALENDAR_SHOW_DAY_NAMES))
     self.mycal=mycal
     hbox2.pack_start(mycal,0,0,2)
     mycal.connect("button_press_event",self.stopDayUpdates)
     vbox2=gtk.VBox(1,0)
     self.vbox2=vbox2
     label3=gtk.Label('timeholder')
     self.label3=label3
     vbox2.pack_start(label3,0,0,3)
     hbox3=gtk.HBox(0,4)
     hbox3.set_border_width(6)
     self.hbox3=hbox3
     hourcombo=gtk.Combo()
     hourcombo.set_popdown_strings(['1','2','3','4','5','6','7','8','9','10','11','12'])
     hourcombo.set_size_request(58,-1)
     self.hourcombo=hourcombo
     combo_entry4=hourcombo.entry
     combo_entry4.set_editable(0)
     hourcombo.set_border_width(2)
     self.combo_entry4=combo_entry4
     hbox3.pack_start(hourcombo,0,0,0)
     label4=gtk.Label(':')
     self.label4=label4
     hbox3.pack_start(label4,0,0,0)
     minutecombo=gtk.Combo()
     sixty=['00','01','02','03','04','05','06','07','08','09','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24','25','26','27','28','29','30','31','32','33','34','35','36','37','38','39','40','41','42','43','44','45','46','47','48','49','50','51','52','53','54','55','56','57','58','59']
     minutecombo.set_popdown_strings(sixty)
     minutecombo.set_size_request(58,-1)
     minutecombo.set_border_width(2)
     self.minutecombo=minutecombo
     combo_entry5=minutecombo.entry
     combo_entry5.set_editable(0)
     self.combo_entry5=combo_entry5
     hbox3.pack_start(minutecombo,0,0,0)
     label5=gtk.Label(':')
     self.label5=label5
     hbox3.pack_start(label5,0,0,0)
     secondcombo=gtk.Combo()
     secondcombo.set_popdown_strings(sixty)
     secondcombo.set_size_request(58,-1)
     secondcombo.set_border_width(2)
     self.secondcombo=secondcombo
     combo_entry6=secondcombo.entry
     combo_entry6.set_editable(0)
     self.combo_entry6=combo_entry6
     hbox3.pack_start(secondcombo,0,0,0)
     apcombo=gtk.Combo()
     apcombo.set_popdown_strings(['AM','PM'])
     apcombo.set_border_width(2)
     apcombo.set_size_request(68,-1)
     self.apcombo=apcombo
     combo_entry7=apcombo.entry
     combo_entry7.set_editable(0)
     self.combo_entry7=combo_entry7
     hbox3.pack_start(apcombo,0,0,0)
     combo_entry4.connect("grab_focus",self.stopUpdates)
     combo_entry5.connect("grab_focus",self.stopUpdates)
     combo_entry6.connect("grab_focus",self.stopUpdates)
     combo_entry7.connect("grab_focus",self.stopUpdates)
     vbox2.pack_start(hbox3,0,0,0)
     hbox2.pack_start(vbox2,1,1,0)
     vbox1.pack_start(hbox2,1,1,0)
     hbox1=gtk.HBox(1,4)
     hbox1.set_border_width(9)
     self.hbox1=hbox1
     aboutbutt=gtk.Button(_('About'))
     TIPS.set_tip(aboutbutt,_('About'))
     aboutbutt.connect("clicked",self.doAbout)
     self.aboutbutt=aboutbutt
     hbox1.pack_start(aboutbutt,0,1,0)
     rsetbutt=gtk.Button(_('Reset'))
     TIPS.set_tip(rsetbutt,_('Reset'))
     rsetbutt.connect("clicked",self.doReset)
     self.rsetbutt=rsetbutt
     hbox1.pack_start(rsetbutt,0,1,0)
     okbutt=gtk.Button(_('OK'))
     TIPS.set_tip(okbutt,_('OK'))
     okbutt.connect("clicked",self.applyQuit)
     self.okbutt=okbutt
     hbox1.pack_start(okbutt,0,1,0)
     applybutt=gtk.Button(_('Apply'))
     TIPS.set_tip(applybutt,_('Apply'))
     applybutt.connect("clicked",self.applyDate)
     self.applybutt=applybutt
     hbox1.pack_start(applybutt,0,1,0)
     closebutt=gtk.Button(_('Cancel'))
     TIPS.set_tip(closebutt,_('Cancel'))
     self.closebutt=closebutt
     hbox1.pack_start(closebutt,0,1,0)
     closebutt.connect("clicked",doQuit)
     vbox1.pack_start(hbox1,0,0,0)
     tab1lab=gtk.Label(_('Date & Time'))
     self.tab1lab=tab1lab
     mynotebook.append_page(vbox1,tab1lab)
     vbox3=gtk.VBox(0,0)
     vbox3.set_border_width(4)
     self.vbox3=vbox3
     hbox4=gtk.HBox(0,10)
     self.hbox4=hbox4
     label6=gtk.Label(_('Current Time Zone:'))
     label6.set_alignment(0.0,0.5)
     self.label6=label6
     hbox4.pack_start(label6,0,0,1)
     timezonetext=gtk.Entry()
     timezonetext.set_editable(0)
     self.timezonetext=timezonetext
     hbox4.pack_start(timezonetext,1,1,0)
     vbox3.pack_start(hbox4,1,1,0)
     label7=gtk.Label(_('To change the timezone,select your area from the list below:'))
     label7.set_alignment(0.01,0.5)
     self.label7=label7
     vbox3.pack_start(label7,0,0,0)
     zonebox=gtk.HBox()
     zonebox.set_spacing(12)
     timezonelist=gtk.Combo()
     self.timezonelist=timezonelist
     timezoneentry=timezonelist.entry
     self.timezoneentry=timezoneentry
     timezoneentry.set_editable(0)
     timezonelist.set_popdown_strings(tznames)
     zonebox.pack_start(timezonelist,1,1,0)
     zonebutton=gtk.Button(_("Set Time Zone"))
     TIPS.set_tip(zonebutton,_("Set Time Zone"))
     zonebutton.connect("clicked",self.applyZone)
     self.zonebutton=zonebutton
     zonebox.pack_start(zonebutton,0,0,0)
     vbox3.pack_start(zonebox,0,1,0)
     tab2lab=gtk.Label(_('Time Zone'))
     self.tab2lab=tab2lab
     mynotebook.append_page(vbox3,tab2lab)
     vbox=gtk.VBox(0,0)
     vbox.set_spacing(3)
 
     
     menu_items = (
   (_('/_File'), None, None, 0, '<Branch>'),
   (_("/_File")+"/_"+FILE_RUN,'<control>R', rundlg,421,""),
   (_("/_File")+"/_"+_("Check for newer versions of this program..."), 
    '<control>U', checkSoftUpdate,420,""),
   (_('/File/sep1'), None, None, 1, '<Separator>'),
   (_('/File/_Exit'), '<control>Q', doQuit, 0, ''),
   (_('/_Help'), None, None, 0, '<LastBranch>'),
   (_('/Help/_About...'), "F2", self.doAbout, 0, ''),
   (_("/_Help")+"/_"+APP_HELP_STR, "F4", displayHelp,5010, ""),
   (_("/_Help")+"/_"+CONTRIBUTORS+"...", "F3", show_credits,913, ""),
   (_("/_Help")+"/_"+BUG_REPORT_MENU+"...", "F5", file_bug_report,5010, ""),
                     )
 
     ag = gtk.AccelGroup()
     self.itemf = gtk.ItemFactory(gtk.MenuBar, '<main>', ag)
     clockwin.add_accel_group(ag)
     self.itemf.create_items(menu_items)
     self.menubar = self.itemf.get_widget('<main>')       
     vbox.pack_start(self.menubar,0,0,0)
     vbox.pack_start(mynotebook,1,1,0)
     clockwin.add(vbox)
     self.startUpdates()
     self.startDayUpdates()
     global LAST_DATE
     LAST_DATE=(0,0,0)
     self.showTime()
     self.loadTime(1,1)
     clockwin.show_all()
     clockwin.connect("destroy",doQuit)
     global TZW
     if TZW==1: self.showTZWarning()
     gtk.timeout_add(100,self.showTime)
Пример #29
0
    def __init__(self, buffer=None):
        menu_items = [
            (_("/_File"), None, None, 0, "<Branch>"),
            (_("/File/_New"), "<control>N", self.do_new, 0, None),
            (_("/File/_Open"), "<control>O", self.do_open, 0, None),
            (_("/File/_Save"), "<control>S", self.do_save, 0, None),
            (_("/File/Save _As..."), None, self.do_save_as, 0, None),
            (_("/File/sep1"), None, None, 0, "<Separator>"),
            (_("/File/_Close"), "<control>W", self.do_close, 0, None),
            (_("/File/E_xit"), "<control>Q", self.do_exit, 0, None),
            (_("/_Edit"), None, None, 0, "<Branch>"),
            (_("/Edit/Undo"), "<control>Z", self.do_undo, 0, None),
            (_("/Edit/Redo"), "<control><shift>Z", self.do_redo, 0, None),
            (_("/Edit/sep1"), None, None, 0, "<Separator>"),
            (_("/Edit/Find..."), "<control>F", self.do_search, 0, None),
            (_("/_Settings"), None, None, 0, "<Branch>"),
            (_("/Settings/Wrap _Off"), None, self.do_wrap_changed,
             gtk.WRAP_NONE, "<RadioItem>"),
            (_("/Settings/Wrap _Words"), None, self.do_wrap_changed,
             gtk.WRAP_WORD, _("/Settings/Wrap Off")),
            (_("/Settings/Wrap _Chars"), None, self.do_wrap_changed,
             gtk.WRAP_CHAR, _("/Settings/Wrap Off")),
            (_("/_Run"), None, None, 0, "<Branch>"),
            (_("/Run/_Run script"), "<control>R", self.run_script, False,
             None), (_("/Run/sep1"), None, None, 0, "<Separator>"),
            (_("/Run/Run socket server"), None, self.do_socketserver_changed,
             True, "<ToggleItem>"),
            (_("/Run/Show variables window"), None, self.do_varwindow_changed,
             True, "<ToggleItem>"),
            (_("/Run/Run fullscreen"), None, self.do_fullscreen_changed, True,
             "<ToggleItem>"), (_("/_Help"), None, None, 0, "<Branch>"),
            (_("/Help/_About"), None, self.do_about, 0, None)
        ]

        if not buffer:
            buffer = Buffer()
        gtk.Window.__init__(self)

        TestText.views.push(self)

        buffer.ref()

        if not TestText.colormap:
            TestText.colormap = self.get_colormap()

        self.connect("delete_event", self.delete_event_cb)

        self.accel_group = gtk.AccelGroup()
        self.item_factory = gtk.ItemFactory(gtk.MenuBar, "<main>",
                                            self.accel_group)
        self.item_factory.set_data("view", self)
        self.item_factory.create_items(menu_items)

        self.add_accel_group(self.accel_group)

        hpaned = gtk.HPaned()
        vbox = gtk.VBox(False, 0)
        hpaned.add1(vbox)
        self.add(hpaned)

        vbox.pack_start(self.item_factory.get_widget("<main>"), False, False,
                        0)

        sw = gtk.ScrolledWindow()
        sw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)

        self.text_view = gtksourceview.SourceView(buffer)
        self.text_view.set_wrap_mode(gtk.WRAP_WORD)
        self.text_view.set_show_line_numbers(True)
        self.text_view.set_auto_indent(True)
        self.text_view.set_insert_spaces_instead_of_tabs(True)
        # FIXME: the following 2 lines don't have any effect :/
        self.text_view.tab_width = 4
        self.text_view.indent_width = 4
        self.text_view.connect("expose_event", self.tab_stops_expose)

        self.bhid = buffer.connect("mark_set", self.cursor_set_callback)

        if View.FONT is None:
            # Get font or fallback
            context = self.text_view.get_pango_context()
            fonts = context.list_families()
            for font in fonts:
                if font.get_name() == 'Bitstream Vera Sans Mono':
                    View.FONT = 'Bitstream Vera Sans Mono 8'
                    break
            else:
                print 'Bitstream Vera Font not found.'
                print 'Download and install it from here'
                print 'http://ftp.gnome.org/pub/GNOME/sources/ttf-bitstream-vera/1.10/'
                View.FONT = 'Mono 8'

        self.text_view.modify_font(pango.FontDescription(View.FONT))

        vbox.pack_start(sw, True, True, 0)
        sw.add(self.text_view)

        # this creates a console error and output window besides script window
        self.console_error = ConsoleWindow()
        # we create an instance for stdout filter
        self.stdout_filter = Stdout_Filter(self.console_error)
        # we redirect stderr
        sys.stderr = self.console_error
        # stdout is redirected too, but through the filter in order to get different color for text
        sys.stdout = self.stdout_filter
        # error-console window is added to container as second child
        hpaned.add2(self.console_error.text_window)
        hpaned.set_position(450)
        # message displayed in console-error window at start, the double true values passed makes it render with system message tag
        self.console_error.write(
            _("This is a console window, error messages and script output are shown here,\n you can clear the window selecting and deleting the content\n\n"
              ), True, True)

        self.set_default_size(800, 500)
        self.text_view.grab_focus()

        self.set_view_title()
        self.init_menus()

        # options toggle
        self.use_varwindow = False
        self.use_socketserver = False
        self.go_fullscreen = False

        # setup syntax highlighting
        manager = gtksourceview.SourceLanguagesManager()
        language = manager.get_language_from_mime_type("text/x-python")
        buffer.set_language(language)
        buffer.set_highlight(True)

        self.shoebot_window = None

        try:
            self.set_icon_from_file(ICON_FILE)
        except gobject.GError:
            # icon not found = no icon
            pass

        self.show_all()
Пример #30
0
def create_main_window(*args):

    win = gtk.Window(type=gtk.WINDOW_TOPLEVEL)
    gui["main_window"] = win

    win.set_resizable(gtk.TRUE)
    win.set_title("Clarence " + version)
    win.set_size_request(config["win_width"], config["win_height"])
    win.connect("delete_event", gtk.mainquit)

    window_pos_mode(win)

    vbox1 = gtk.VBox(spacing=5)
    win.add(vbox1)
    vbox1.show()

    ag = gtk.AccelGroup()
    itemf = gtk.ItemFactory(gtk.MenuBar, "<main>", ag)
    gui["main_window"].add_accel_group(ag)
    itemf.create_items([
        ('/_Misc', None, None, 0, '<Branch>'),
        ('/_Misc/_Clear', 'Escape', main_menu, 1, '<StockItem>',
         gtk.STOCK_CLEAR),
        ('/_Misc/Pre_ferences', '<control>P', main_menu, 3, '<StockItem>',
         gtk.STOCK_PREFERENCES), ('/_Misc/sep1', None, None, 0, '<Separator>'),
        ('/_Misc/E_xit', '<control>Q', main_menu, 2, '<StockItem>',
         gtk.STOCK_QUIT), ('/_Insert', None, None, 0, '<Branch>'),
        ('/_Insert/_Bin value', '<control>comma', insert_menu, 1, ''),
        ('/_Insert/_ASCII chars', '<control>period', insert_menu, 2, ''),
        ('/_Insert/_IPv4 address', '<control>semicolon', insert_menu, 3, ''),
        ('/_Insert/sep1', None, None, 0, '<Separator>'),
        ('/_Insert/_Last result', '<control>slash', insert_menu, 4,
         '<StockItem>', gtk.STOCK_REFRESH),
        ('/_Select', None, None, 0, '<Branch>'),
        ('/_Select/_Decimal field', '<control>1', select_menu, 1, ''),
        ('/_Select/_Hexadecimal field', '<control>2', select_menu, 2, ''),
        ('/_Select/_Octal field', '<control>3', select_menu, 3, ''),
        ('/_Select/_ASCII field', '<control>4', select_menu, 4, ''),
        ('/_Select/_IPv4 field', '<control>5', select_menu, 5, ''),
        ('/_Select/_Binary field', '<control>6', select_menu, 6, ''),
        ('/_Select/sep1', None, None, 0, '<Separator>'),
        ('/_Select/_Clear fields', '<control>0', select_menu, 6, '<StockItem>',
         gtk.STOCK_CLEAR), ('/_Help', None, None, 0, '<LastBranch>'),
        ('/_Help/Functions', 'F1', functions_help_window, 1, '<StockItem>',
         gtk.STOCK_HELP),
        ('/_Help/_About', None, help_menu, 1, '<StockItem>', gtk.STOCK_HOME)
    ])
    menubar = itemf.get_widget('<main>')
    if (gui["disable_menu"] == 0):
        vbox1.pack_start(menubar, expand=gtk.FALSE)
        menubar.show()

    vbox2 = gtk.VBox(spacing=5)
    vbox1.pack_start(vbox2, expand=gtk.TRUE)
    vbox2.show()

    entry = gtk.Entry()
    gui["main_entry"] = entry
    vbox2.pack_start(entry, expand=gtk.FALSE)
    vbox2.set_border_width(4)
    entry.modify_font(gui["fixed_font"])
    if (config["remember_expression"] == 1):
        entry.set_text(config["last_expression"])
    entry.connect("key_press_event", key_function)
    entry.grab_focus()
    gui["main_entry"].show()

    frame = gtk.Frame()
    vbox2.pack_start(frame)
    frame.show()

    vbox3 = gtk.VBox()
    frame.add(vbox3)
    vbox3.show()

    table = gtk.Table(2, 6, gtk.FALSE)
    table.set_row_spacings(5)
    table.set_col_spacings(5)
    table.set_border_width(10)
    vbox3.pack_start(table)
    table.show()

    for y in range(6):
        label = gtk.Label(labels[y])
        label.modify_font(gui["fixed_font"])
        label.show()
        table.attach(label, 0, 1, y, y + 1)
        entry = gtk.Entry()
        gui[entries[y]] = entry
        entry.set_editable(gtk.FALSE)
        entry.set_size_request(300, -1)
        entry.modify_font(gui["fixed_font"])
        entry.show()
        table.attach(entry, 1, 2, y, y + 1)

    gui["main_window"].show()

    if (config["remember_expression"] == 1):
        result(config["last_expression"])
    else:
        result(0)