Exemple #1
0
    def __init__(self, handler, main_window=None):
        """
        constructor

        handler -- a e3common.Handler.TrayIconHandler object
        """
        gtk.Menu.__init__(self)
        self.handler = handler

        StatusMenu = extension.get_default("menu status")
        self.status = gtk.ImageMenuItem(_("Status"))
        self.status.set_image(gtk.image_new_from_stock(gtk.STOCK_CONVERT, gtk.ICON_SIZE_MENU))
        self.status_menu = StatusMenu(handler.on_status_selected)
        self.status.set_submenu(self.status_menu)

        self.list = gtk.ImageMenuItem(_("Contacts"))
        self.list.set_image(utils.safe_gtk_image_load(gui.theme.image_theme.chat))
        self.list_contacts = ContactsMenu(handler, main_window)
        self.list.set_submenu(self.list_contacts)

        self.hide_show_mainwindow = gtk.MenuItem(_("Hide/Show emesene"))
        self.hide_show_mainwindow.connect("activate", lambda *args: self.handler.on_hide_show_mainwindow(main_window))

        self.disconnect = gtk.ImageMenuItem(gtk.STOCK_DISCONNECT)
        self.disconnect.connect("activate", lambda *args: self.handler.on_disconnect_selected())
        self.quit = gtk.ImageMenuItem(gtk.STOCK_QUIT)
        self.quit.connect("activate", lambda *args: self.handler.on_quit_selected())

        self.append(self.hide_show_mainwindow)
        self.append(self.status)
        self.append(self.list)
        self.append(self.disconnect)
        self.append(gtk.SeparatorMenuItem())
        self.append(self.quit)
Exemple #2
0
    def __init__(self, handler, main_window=None):
        """
        constructor

        handler -- a e3common.Handler.TrayIconHandler object
        """
        gtk.Menu.__init__(self)
        self.handler = handler

        StatusMenu = extension.get_default('menu status')
        self.status = gtk.ImageMenuItem(_('Status'))
        self.status.set_image(gtk.image_new_from_stock(gtk.STOCK_CONVERT,
            gtk.ICON_SIZE_MENU))
        self.status_menu = StatusMenu(handler.on_status_selected)
        self.status.set_submenu(self.status_menu)

        self.list = gtk.ImageMenuItem(_('Contacts'))
        self.list.set_image(utils.safe_gtk_image_load(gui.theme.image_theme.chat))
        self.list_contacts = ContactsMenu(handler, main_window)
        self.list.set_submenu(self.list_contacts)

        self.hide_show_mainwindow = gtk.MenuItem(_('Hide/Show emesene'))
        self.hide_show_mainwindow.connect('activate',
            lambda *args: self.handler.on_hide_show_mainwindow(main_window))

        self.disconnect = gtk.ImageMenuItem(gtk.STOCK_DISCONNECT)
        self.disconnect.connect('activate',
            lambda *args: self.handler.on_disconnect_selected())
        self.quit = gtk.ImageMenuItem(gtk.STOCK_QUIT)
        self.quit.connect('activate',
            lambda *args: self.handler.on_quit_selected())
        self.preferences = gtk.ImageMenuItem(gtk.STOCK_PREFERENCES)
        self.preferences.connect('activate',
            lambda *args: self.handler.on_preferences_selected())

        self.unmute_label = _('Unmute sounds')
        self.unmute_stock = gtk.STOCK_MEDIA_PLAY
        self.mute_label = _('Mute sounds')
        self.mute_stock = gtk.STOCK_MEDIA_STOP
        self.mute = gtk.ImageMenuItem()
        self._on_b_mute_sounds_changed()
        self.handler.session.config.subscribe(self._on_b_mute_sounds_changed,
                                              'b_mute_sounds')
        
        self.mute.connect('activate', self._on_mute_unmute_sounds)

        self.append(self.hide_show_mainwindow)
        self.append(self.mute)
        if self.handler.session.session_has_service(e3.Session.SERVICE_STATUS):
            self.append(self.status)
        self.append(self.list)
        self.append(self.disconnect)
        self.append(self.preferences)
        self.append(gtk.SeparatorMenuItem())
        self.append(self.quit)
Exemple #3
0
    def __init__(self, handler, main_window=None):
        """
        constructor

        handler -- a e3common.Handler.TrayIconHandler object
        """
        gtk.Menu.__init__(self)
        self.handler = handler

        self.status = gtk.ImageMenuItem(_('Status'))
        self.status.set_image(
            gtk.image_new_from_stock(gtk.STOCK_CONVERT, gtk.ICON_SIZE_MENU))
        self.status_menu = StatusMenu.StatusMenu(handler.on_status_selected)
        self.status.set_submenu(self.status_menu)

        self.list = gtk.ImageMenuItem(_('Contacts'))
        self.list.set_image(
            utils.safe_gtk_image_load(gui.theme.image_theme.chat))
        self.list_contacts = ContactsMenu(handler, main_window)
        self.list.set_submenu(self.list_contacts)

        self.hide_show_mainwindow = gtk.MenuItem(_('Hide/Show emesene'))
        self.hide_show_mainwindow.connect(
            'activate',
            lambda *args: self.handler.on_hide_show_mainwindow(main_window))

        self.disconnect = gtk.ImageMenuItem(gtk.STOCK_DISCONNECT)
        self.disconnect.connect(
            'activate', lambda *args: self.handler.on_disconnect_selected())
        self.quit = gtk.ImageMenuItem(gtk.STOCK_QUIT)
        self.quit.connect('activate',
                          lambda *args: self.handler.on_quit_selected())
        self.preferences = gtk.ImageMenuItem(gtk.STOCK_PREFERENCES)
        self.preferences.connect(
            'activate', lambda *args: self.handler.on_preferences_selected())

        self.unmute_label = _('Unmute sounds')
        self.unmute_stock = gtk.STOCK_MEDIA_PLAY
        self.mute_label = _('Mute sounds')
        self.mute_stock = gtk.STOCK_MEDIA_STOP
        self.mute = gtk.ImageMenuItem()
        self._on_b_mute_sounds_changed()
        self.handler.session.config.subscribe(self._on_b_mute_sounds_changed,
                                              'b_mute_sounds')
        self.mute.connect('activate', self._on_mute_unmute_sounds)

        self.append(self.hide_show_mainwindow)
        self.append(self.mute)
        if self.handler.session.session_has_service(e3.Session.SERVICE_STATUS):
            self.append(self.status)
        self.append(self.list)
        self.append(self.disconnect)
        self.append(self.preferences)
        self.append(gtk.SeparatorMenuItem())
        self.append(self.quit)
    def __init__(self, callback, player_name, config_table):
        '''constructor, callback is a function that receives a boolean as first
        argument with the value True if ok was clicked and False otherwise,
        the rest of the arguments are the values collected during configuration
        '''
        gtk.Window.__init__(self)

        self.config_table = config_table
        self.callback = callback
        self.set_border_width(2)
        self.set_title(player_name + " preferences")
        if hasattr(gui.theme, "image_theme"):
            logo = gui.theme.image_theme.logo
        else:
            logo = gui.theme.logo

        self.set_icon(
            utils.safe_gtk_image_load(logo).get_pixbuf())

        self.set_default_size(300, 150)
        self.set_role("New preferences Window")
        self.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)

        vbox  = gtk.VBox()

        buttons = gtk.HButtonBox()
        buttons.set_layout(gtk.BUTTONBOX_END)

        accept = gtk.Button(stock=gtk.STOCK_OK)
        cancel = gtk.Button(stock=gtk.STOCK_CANCEL)

        buttons.pack_start(accept)
        buttons.pack_start(cancel)

        accept.connect('clicked', self._on_accept)
        cancel.connect('clicked', self._on_cancel)
        self.connect('delete_event', self._on_close)

        vbox.pack_start(self.config_table, True, False)

        separator = gtk.HSeparator()

        vbox.pack_start(separator, False, True, 5)
        vbox.pack_start(buttons, True)

        vbox.show_all()
        self.add(vbox)
    def __init__(self, callback, player_name, config_table):
        '''constructor, callback is a function that receives a boolean as first
        argument with the value True if ok was clicked and False otherwise,
        the rest of the arguments are the values collected during configuration
        '''
        gtk.Window.__init__(self)

        self.config_table = config_table
        self.callback = callback
        self.set_border_width(2)
        self.set_title(player_name + " preferences")
        if hasattr(gui.theme, "image_theme"):
            logo = gui.theme.image_theme.logo
        else:
            logo = gui.theme.logo

        self.set_icon(utils.safe_gtk_image_load(logo).get_pixbuf())

        self.set_default_size(300, 150)
        self.set_role("New preferences Window")
        self.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)

        vbox = gtk.VBox()

        buttons = gtk.HButtonBox()
        buttons.set_layout(gtk.BUTTONBOX_END)

        accept = gtk.Button(stock=gtk.STOCK_OK)
        cancel = gtk.Button(stock=gtk.STOCK_CANCEL)

        buttons.pack_start(accept)
        buttons.pack_start(cancel)

        accept.connect('clicked', self._on_accept)
        cancel.connect('clicked', self._on_cancel)
        self.connect('delete_event', self._on_close)

        vbox.pack_start(self.config_table, True, False)

        separator = gtk.HSeparator()

        vbox.pack_start(separator, False, True, 5)
        vbox.pack_start(buttons, True)

        vbox.show_all()
        self.add(vbox)
Exemple #6
0
    def __init__(self, callback, player, format):
        '''constructor, callback is a function that receives a boolean as first
        argument with the value True if ok was clicked and False otherwise,
        the rest of the arguments are the values collected during configuration
        '''
        gtk.Window.__init__(self)

        self.callback = callback
        self.set_border_width(2)
        self.set_title("Preferences")
        self.set_icon(
            utils.safe_gtk_image_load(gui.theme.logo).get_pixbuf())

        self.set_default_size(300, 150)
        self.set_role("New preferences Window")
        self.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)

        vbox  = gtk.VBox()
        table = gtk.Table(2, 2)
        table.set_row_spacings(4)
        table.set_col_spacings(4)

        label = gtk.Label("player")
        label.set_alignment(0.0, 0.5)
        table.attach(label, 0, 1, 0, 1)

        self.combo = gtk.combo_box_new_text()

        active = 0
        count = 0
        for name in songretriever.get_handler_names():
            if name == player:
                active = count

            self.combo.append_text(name)
            count += 1

        self.combo.set_active(active)

        table.attach(self.combo, 1, 2, 0, 1)

        label = gtk.Label("format")
        label.set_alignment(0.0, 0.5)
        table.attach(label, 0, 1, 1, 2)

        self.entry = gtk.Entry()
        self.entry.set_text(format)
        table.attach(self.entry, 1, 2, 1, 2)

        buttons = gtk.HButtonBox()
        buttons.set_layout(gtk.BUTTONBOX_END)

        accept = gtk.Button(stock=gtk.STOCK_OK)
        cancel = gtk.Button(stock=gtk.STOCK_CANCEL)

        buttons.pack_start(accept)
        buttons.pack_start(cancel)

        accept.connect('clicked', self._on_accept)
        cancel.connect('clicked', self._on_cancel)
        self.connect('delete_event', self._on_close)

        vbox.pack_start(table, True, False)
        vbox.pack_start(buttons, True)

        vbox.show_all()
        self.add(vbox)