def __init__(self, filters, config): # Color page filters self.filters = filters # Filter edit helper self.filter_editor = RawFilterEditor(config.get("Editor", "preview")) # File dialog self.filechooser = FileChooser(acyls.dirs['filters'], "filter.xml") # Read icon size settins from config self.PREVIEW_ICON_SIZE = config.getint("PreviewSize", "single") # Load GUI self.builder = Gtk.Builder() self.builder.add_from_file( os.path.join(acyls.dirs['gui'], "editor.glade")) gui_elements = ( 'editor_grid', 'editor_textview', 'editor_preview_icon', 'filter_info_label', ) self.gui = { element: self.builder.get_object(element) for element in gui_elements } self.gui['editor_textview'].modify_font( Pango.FontDescription("Monospace")) # Build buffer self.buffer = Gtk.TextBuffer(text="Enter filter source here") self.gui['editor_textview'].set_buffer(self.buffer) # Mainpage buttnons hanlers self.mhandlers = dict() self.mhandlers['refresh_button'] = self.on_refresh_click # Toolbar buttnons hanlers self.bhandlers = dict() self.bhandlers[ 'edit_filter_toolbutton'] = self.on_edit_filter_button_click self.bhandlers[ 'load_filter_toolbutton'] = self.on_load_filter_button_click self.bhandlers[ 'revert_filter_toolbutton'] = self.on_revert_filter_button_click self.bhandlers[ 'save_filter_toolbutton'] = self.on_save_filter_button_click self.bhandlers[ 'save_as_filter_toolbutton'] = self.on_save_as_filter_button_click # Fill up GUI pixbuf = PixbufCreator.new_single_at_size(self.filter_editor.preview, self.PREVIEW_ICON_SIZE) self.gui['editor_preview_icon'].set_from_pixbuf(pixbuf)
def __init__(self, config): super().__init__() self.icontype = ("jpeg", "png", "tiff", "ico", "bmp", "svg") self.pixbufs = [] # Create object for iconview self.themes_dir = config.getdir("Directories", "applications") self.backup_dir = config.getdir("Directories", "backup") self.appthemes = AppThemeReader(self.themes_dir, self.icontype) # File dialog self.filechooser = FileChooser(self.backup_dir) # Read icon size settins from config self.VIEW_ICON_SIZE = config.getint("PreviewSize", "group") # Load GUI self.builder = Gtk.Builder() self.builder.add_from_file(os.path.join(acyls.dirs['gui'], "applications.glade")) gui_elements = ( 'apps_grid', 'applications_combo', 'icons_view', 'path_label', 'message_label', ) self.gui = {element: self.builder.get_object(element) for element in gui_elements} # Build store self.store = Gtk.ListStore(Pixbuf) self.gui['icons_view'].set_model(self.store) self.gui['icons_view'].set_pixbuf_column(0) self.iconview_lock = TreeViewHolder(self.gui['icons_view']) # Fill up GUI for name in self.appthemes.pack.keys(): self.gui['applications_combo'].append_text(name) # connect signals self.gui['applications_combo'].connect("changed", self.on_applications_combo_changed) self.connect("icons_loaded", self.on_icons_loaded) # setup self.gui['applications_combo'].set_active(0) # Mainpage buttnons hanlers self.mhandlers = dict() self.mhandlers['apply_button'] = self.on_apply_click # Toolbar buttnons hanlers self.bhandlers = dict() self.bhandlers['make_backup_toolbutton'] = self.on_make_backup_button_click self.bhandlers['restore_backup_toolbutton'] = self.on_restore_backup_button_click
def __init__(self, database, config): self.database = database self.config = config # Read icon size settins from config self.PREVIEW_ICON_SIZE = self.config.getint("PreviewSize", "single") # Load icon groups from config file self.icongroups = IconGroupCollector(self.config) # Build griadient object self.gradient = gradient.Gradient() # Load filters from certain directory self.filters = FilterCollector(acyls.dirs['filters']) self.filters.connect_signal(self.filter_refresh) # File dialog self.filechooser = FileChooser(acyls.dirs['user'], "custom.acyl") # Load GUI self.signals = dict() self.builder = Gtk.Builder() self.builder.add_from_file( os.path.join(acyls.dirs['gui'], "colors.glade")) gui_elements = ( 'colorbox', 'icongroup_combo', 'custom_icons_treeview', 'colorlist_treeview', 'gradient_combo', 'filter_group_combo', 'filters_combo', 'direction_treeview', 'handoffset_switch', 'filters_combo', 'colorlist_treeview_selection', 'offset_scale', 'color_selector', 'offset_scale', 'render_button', 'preview_icon', 'filter_settings_button', ) self.gui = { element: self.builder.get_object(element) for element in gui_elements } # Build stores self.build_data_stores() # Database setup self.build_data_hadlers() # Toolbar buttnons hanlers self.bhandlers = dict() self.bhandlers['add_color_toolbutton'] = self.on_add_color_button_click self.bhandlers[ 'remove_color_toolbutton'] = self.on_remove_color_button_click self.bhandlers[ 'copy_color_toolbutton'] = self.on_copy_settings_button_click self.bhandlers[ 'paste_color_toolbutton'] = self.on_paste_settings_button_click self.bhandlers[ 'save_settings_toolbutton'] = self.on_save_settings_button_click self.bhandlers[ 'load_settings_toolbutton'] = self.on_load_settings_button_click self.bhandlers[ 'reset_settings_toolbutton'] = self.on_reset_settings_button_click # Mainpage buttnons hanlers self.mhandlers = dict() self.mhandlers['refresh_button'] = self.on_refresh_click self.mhandlers['apply_button'] = self.on_apply_click # Init vars self.color_selected = None self.rtr = False self.init_confirmed = False self.state_buffer = {} # Fill up gui for name in self.icongroups.names: self.gui['icongroup_combo'].append_text(name) for tag in sorted(gradient.GRADIENT_PROFILES): self.gui['gradient_combo'].append_text(tag) for group in self.filters.groupnames: self.gui['filter_group_combo'].append_text(group) # connect signals self.connect_signals() self.gui['icongroup_combo'].set_active(0) # restore GUI elements state from last session self.gui['render_button'].set_active( self.config.getboolean("Settings", "autorender")) self.init_confirmed = True