Exemplo n.º 1
0
    def __init__(self, gladexml, gstyle_obj):
        ## load buttons and attach signals
        self.gstyle_obj = gstyle_obj
        self.fullpack_dict = gstyle_obj.fullpack_dict
        self.gtk_dict = self.gstyle_obj.gtk_dict
        self.wallstat_dict = self.gstyle_obj.wallpapers_dict.get_dict_static_w(
        )
        self.walldyn_dict = self.gstyle_obj.wallpapers_dict.get_dict_dynamique_w(
        )
        self.icons_dict = self.gstyle_obj.icon_dict
        self.emerald_dict = self.gstyle_obj.emerald_dict
        self.mouse_dict = self.gstyle_obj.mouse_dict
        self.cubemodel_dict = self.gstyle_obj.cubemodels_dict
        self.metacity_dict = self.gstyle_obj.metacity_dict

        self.icon_obj = self.gstyle_obj.gtk_gui.icon_obj
        self.gtk_obj = self.gstyle_obj.gtk_gui.gtk_obj
        self.wallpaper_obj = self.gstyle_obj.gtk_gui.wallpaper_obj
        self.mouse_obj = self.gstyle_obj.gtk_gui.mouse_obj
        self.metacity_obj = self.gstyle_obj.gtk_gui.metacity_obj
        self.emerald_obj = self.gstyle_obj.gtk_gui.emerald_obj
        self.cubemodel_obj = self.gstyle_obj.gtk_gui.cubemodel_obj

        self.fpack_dic = {}
        self.fpack_dic_copy = {}

        self.fullpack_save_btn = gladexml.get_widget("fullpack_save_btn")
        self.fullpack_create_btn = gladexml.get_widget("fpack_create_btn")
        self.fullpack_manage_scroll = gladexml.get_widget(
            "fullpack_gest_viewer")
        self.fullpack_manage_info = gladexml.get_widget("fullpack_gest_label")
        self.fullpack_manage_info.set_text(_("Installed fullpack theme list"))
        ## fullpack notebook page image
        self.fullpack_page_img = gladexml.get_widget("fullpack_page_img")
        self.fullpack_page_img.set_from_file("%s/fullpack-icon.png" %
                                             config.img_path)
        ## fullpack top description
        self.fullpack_page_label = gladexml.get_widget("fullpack_page_label")
        self.fullpack_page_label.set_text(
            _("Fullpacks : \nOrganize, create or download fullpack themes...\n"
              ))

        self.fullpack_download_scroll = gladexml.get_widget(
            'fullpack_download_scroll')
        self.fullpack_download_info = gladexml.get_widget(
            'fullpack_download_info')
        self.fullpack_download_info.set_text(
            _("Click the refresh button to update the theme list"))

        ## progress
        self.progress_box = gladexml.get_widget("progress_box")
        self.progress_text = gladexml.get_widget("progress_box_text")
        self.main_progressbar = gladexml.get_widget("main_progressbar")

        self.statbar = gladexml.get_widget("statusbar")
        self.progress = gladexml.get_widget("fullpack_download_pbar")

        ## gui
        self.fullpack_name_scroll = gladexml.get_widget(
            "fullpack_gest_txtlist")
        self.fullpack_name_scroll.set_policy(gtk.POLICY_AUTOMATIC,
                                             gtk.POLICY_ALWAYS)
        self.model = gtk.ListStore(gtk.gdk.Pixbuf, str, str, str)
        self.fullpack_name_tree = gtk.TreeView()
        self.fullpack_name_tree.set_model(self.model)
        renderer = gtk.CellRendererText()
        img_renderer = gtk.CellRendererPixbuf()
        pixColumn = gtk.TreeViewColumn(_("Preview"), img_renderer)
        pixColumn.set_fixed_width(200)
        self.fullpack_name_tree.append_column(pixColumn)
        pixColumn.add_attribute(img_renderer, 'pixbuf', 0)
        titleColumn = gtk.TreeViewColumn(_("Fullpack name"), renderer, text=1)
        titleColumn.set_min_width(200)
        pathColumn = gtk.TreeViewColumn()
        iniColumn = gtk.TreeViewColumn()

        self.fullpack_name_tree.append_column(titleColumn)
        self.fullpack_name_tree.append_column(pathColumn)
        self.fullpack_name_tree.append_column(iniColumn)

        ## setup the scrollview
        self.name_list_columns = self.fullpack_name_tree.get_columns()
        self.name_list_columns[1].set_visible(0)
        self.name_list_columns[2].set_visible(0)
        self.name_list_columns[3].set_visible(0)
        self.fullpack_name_scroll.add_with_viewport(self.fullpack_name_tree)
        self.fullpack_name_scroll.show()

        self.fullpack_name_tree.connect('cursor-changed', self.get_model)
        self.fullpack_name_tree.connect('button-press-event',
                                        self.check_double_click)

        ## the fullpack editor
        self.fpack_gtk_selector = gladexml.get_widget('fpack_gtk_selector')
        self.fpack_gtk_selector.set_model(self.gtk_obj.model)
        self.fpack_icon_selector = gladexml.get_widget('fpack_icon_selector')
        self.fpack_icon_selector.set_model(self.icon_obj.model)
        self.fpack_metacity_selector = gladexml.get_widget(
            'fpack_metacity_selector')
        self.fpack_metacity_selector.set_model(self.metacity_obj.model)
        self.fpack_emerald_selector = gladexml.get_widget(
            'fpack_emerald_selector')
        self.fpack_emerald_selector.set_model(self.emerald_obj.model)
        self.fpack_wallstat_selector = gladexml.get_widget(
            'fpack_wallstat_selector')
        self.fpack_wallstat_selector.set_model(
            self.wallpaper_obj.wallstats_model)
        self.fpack_walldyn_selector = gladexml.get_widget(
            'fpack_walldyn_selector')
        self.fpack_walldyn_selector.set_model(
            self.wallpaper_obj.walldyns_model)
        self.fpack_mouse_selector = gladexml.get_widget('fpack_mouse_selector')
        self.fpack_mouse_selector.set_model(self.mouse_obj.model)
        self.fpack_cubemodel_selector = gladexml.get_widget(
            'fpack_cubemodel_selector')
        self.fpack_cubemodel_selector.set_model(self.cubemodel_obj.model)

        ## preview images
        self.fpack_gtk_img = gladexml.get_widget('fpack_gtk_img')
        self.fpack_gtk_preview = gladexml.get_widget('fpack_gtk_preview')
        self.fpack_icon_img = gladexml.get_widget('fpack_icon_img')
        self.metacity_previewbox = gladexml.get_widget('metacity_previewbox')
        self.fpack_emerald_img = gladexml.get_widget('fpack_emerald_img')
        self.fpack_wallstat_img = gladexml.get_widget('fpack_wallstat_img')
        self.fpack_walldyn_img = gladexml.get_widget('fpack_walldyn_img')
        self.fpack_mouse_img = gladexml.get_widget('fpack_mouse_img')
        self.fpack_cubemodel_img = gladexml.get_widget('fpack_cubemodel_img')

        ## entry
        self.fpack_name_entry = gladexml.get_widget('fpack_name_entry')
        self.fpack_author_entry = gladexml.get_widget('fpack_author_entry')
        self.fpack_licence_entry = gladexml.get_widget('fpack_licence_entry')
        self.fpack_website_entry = gladexml.get_widget('fpack_website_entry')

        ## create
        self.fpack_create_imgpath = gladexml.get_widget('fpack_create_imgpath')
        self.fpack_chooseimg_btn = gladexml.get_widget('fpack_chooseimg_btn')

        ############################################
        # download model
        ## gui
        self.fullpack_down_model = gtk.ListStore(gtk.gdk.Pixbuf, str, str)
        self.fullpack_down_iconview = gtk.IconView(
            model=self.fullpack_down_model)

        # Setup cubemodel iconview
        self.fullpack_down_iconview.set_pixbuf_column(0)
        self.fullpack_down_iconview.set_text_column(1)
        ## options
        self.fullpack_down_iconview.set_columns(0)
        self.fullpack_down_iconview.set_selection_mode('single')
        self.fullpack_down_iconview.set_reorderable(1)

        self.fullpack_down_iconview.connect('selection_changed',
                                            self.get_down_model)
        self.fullpack_download_scroll.add(self.fullpack_down_iconview)
        ## start listing
        self.fullpack_save_btn.set_sensitive(0)
        ## active comboboxes
        self.gtk_combo = ComboBox(self.fpack_gtk_selector)
        self.icons_combo = ComboBox(self.fpack_icon_selector)
        self.metacity_combo = ComboBox(self.fpack_metacity_selector)
        self.emerald_combo = ComboBox(self.fpack_emerald_selector)
        self.wallstat_combo = ComboBox(self.fpack_wallstat_selector)
        self.walldyn_combo = ComboBox(self.fpack_walldyn_selector)
        self.mouse_combo = ComboBox(self.fpack_mouse_selector)
        self.cubemodel_combo = ComboBox(self.fpack_cubemodel_selector)

        dic = {
            "on_fullpack_add_btn_clicked": self.action_add,
            "on_fullpack_apply_btn_clicked": self.action_apply,
            "on_fullpack_del_btn_clicked": self.action_del,
            "on_fullpack_refresh_btn_clicked": self.action_refresh,
            "on_fullpack_down_btn_clicked": self.action_download,
            "on_fullpack_save_btn_clicked": self.action_save,
            "on_fpack_gtk_selector_changed": self.on_select_gtk,
            "on_fpack_metacity_selector_changed": self.on_select_metacity,
            "on_fpack_icon_selector_changed": self.on_select_icon,
            "on_fpack_emerald_selector_changed": self.on_select_emerald,
            "on_fpack_wallstat_selector_changed": self.on_select_wallstat,
            "on_fpack_walldyn_selector_changed": self.on_select_walldyn,
            "on_fpack_mouse_selector_changed": self.on_select_mouse,
            "on_fpack_cubemodel_selector_changed": self.on_select_cubemodel,
            "on_fpack_create_btn_clicked": self.action_create,
            "on_fpack_chooseimg_btn_clicked": self.action_chooseimg,
            "on_fpack_gtk_reset_clicked": self.reset_combobox,
            "on_fpack_icons_reset_clicked": self.reset_combobox,
            "on_fpack_metacity_reset_clicked": self.reset_combobox,
            "on_fpack_wallstat_reset_clicked": self.reset_combobox,
            "on_fpack_walldyn_reset_clicked": self.reset_combobox,
            "on_fpack_mouse_reset_clicked": self.reset_combobox,
            "on_fpack_cubemodel_reset_clicked": self.reset_combobox,
            "on_fpack_emerald_reset_clicked": self.reset_combobox,
            "on_fpack_export_btn_clicked": self.export_fullpack,
        }
        gladexml.signal_autoconnect(dic)

        self.list_fullpack_themes()
Exemplo n.º 2
0
    def __init__(self,gladexml,icon_dict):
        #Load api icon
        self.icon_dict = icon_dict
        self.gclient = gconf.client_get_default()
        self.iconsTheme_save = gconf_get("/desktop/gnome/interface/icon_theme")
        ## load widget
        self.w_status_bar = gladexml.get_widget("statusbar")

        self.icons_page_img = gladexml.get_widget("icons_page_img")
        self.icons_page_img.set_from_file(config.img_path+"/iconspack.png")
        self.icons_page_label = gladexml.get_widget("icons_page_label")
        self.icons_page_label.set_text(_("Icons:\nManage and install your icons themes"))

        self.wl_icon_gest = gladexml.get_widget("icons_gest_label")
        self.wl_icon_gest.set_text(_("Available themes list"))

        self.progress_box = gladexml.get_widget("progress_box")
        self.progress_text = gladexml.get_widget("progress_box_text")

        self.main_progressbar = gladexml.get_widget("main_progressbar")

        self.statbar = gladexml.get_widget("statusbar")

        ## setup the iconview
        self.model = gtk.ListStore(str,gtk.gdk.Pixbuf, str, str, str, str, str, str)
        self.w_iconview = gtk.IconView(model=self.model)
        self.w_iconview.set_pixbuf_column(1)
        self.w_iconview.set_text_column(0)
        self.w_iconview.set_columns(0)
        self.w_iconview.set_item_width(150)
        self.w_iconview.set_selection_mode('single')
        self.w_iconview.set_reorderable(1)
        ## add the iconview
        self.w_viewer = gladexml.get_widget("icons_viewer")
        self.w_viewer.add(self.w_iconview)
        self.list_icon_themes()

        self.w_applybtn =  gladexml.get_widget("icons_gest_applybtn")


        #Mettre ça dans un objet fenétre principal
        self.decoration_page_img = gladexml.get_widget("decoration_page_img")
        self.decoration_page_desc = gladexml.get_widget("decoration_page_desc")
        img_path = os.path.join(config.exec_path,"/img/iconspack.png")
        if os.path.exists(img_path):
            self.decoration_page_img.set_from_file(img_path)
        self.decoration_page_desc.set_text(_("Icons:\nManage and install your icons themes..."))

        ## gconf and panel icons
        self.icon_panel_combobox = gladexml.get_widget("icon_panel_combobox")
        self.icon_panel_apply_btn = gladexml.get_widget("icon_panel_apply_btn")
        self.menuhaveicon_checkbox = gladexml.get_widget("icon_menuicons_select")
        self.btnhaveicon_checkbox = gladexml.get_widget("icon_btnicons_select")
        self.home_visible_checkbox = gladexml.get_widget("home_icon")
        self.computer_visible_checkbox = gladexml.get_widget("computer_icon")
        self.trash_visible_checkbox = gladexml.get_widget("trash_icon")
        self.network_visible_checkbox = gladexml.get_widget("network_icon")
        self.volumes_visible_checkbox = gladexml.get_widget("volumes_icon")
        ## initialize checkboxes
        self.check_gconf_options()

        ## panel icons
        self.panel_icon_dic = {}
        self.icon_panel_model = gtk.ListStore(str,gtk.gdk.Pixbuf,str)
        self.list_panel_icons()

        self.panelTree = gtk.TreeView()
        self.icon_panel_combobox.set_model(self.icon_panel_model)
        px = gtk.CellRendererPixbuf()
        text = gtk.CellRendererText()

        #Pack the cell renderer into the combobox.
        self.icon_panel_combobox.pack_start(px, False)
        self.icon_panel_combobox.pack_start(text, False)

        #Use the add_attribute method to specify which column in the model the
        self.icon_panel_combobox.add_attribute(px, "pixbuf", 1)
        #Do the same for CellRendererText()
        self.icon_panel_combobox.add_attribute(text, "text", 0)

        self.panel_icon_combo = ComboBox(self.icon_panel_combobox)
        self.get_active_panel_icon()

        ##load signal
        dic = {"on_icons_gest_addbtn_clicked" : self.action_add,
               "on_icons_gest_applybtn_clicked" : self.action_apply,
               "on_icons_gest_delbtn_clicked" : self.action_delete,
               "on_icon_panel_apply_btn_clicked" : self.apply_panel_icon,
               "on_icon_menuicons_select_toggled" : self.set_gconf_options,
               "on_icon_btnicons_select_toggled" : self.set_gconf_options,
               "on_panel_icon_addbtn_clicked" : self.add_panel_icon,
               "on_panel_icon_delbtn_clicked" : self.del_panel_icon,
               "on_computer_icon_toggled" : self.set_gconf_options,
               "on_home_icon_toggled" : self.set_gconf_options,
               "on_trash_icon_toggled" : self.set_gconf_options,
               "on_network_icon_toggled" : self.set_gconf_options,
               "on_volumes_icon_toggled" : self.set_gconf_options,
               }
        self.w_iconview.connect('selection_changed',self.action_get_model)
        self.w_iconview.connect('button-press-event',self.treeview_clicked)
        gladexml.signal_autoconnect(dic)