Ejemplo n.º 1
0
 def __init__(self):
     Gtk.Application.__init__(self)
     self.connect("activate", self.on_activate)
     self.controller = AlienFXProber.get_controller()
     self.themefile = AlienFXThemeFile(self.controller)
     self.selected_action = None
     self.action_type = self.themefile.KW_ACTION_TYPE_FIXED
     self.theme_edited = False
     self.set_theme_done = True
Ejemplo n.º 2
0
 def on_action_new_theme_activate(self, widget):
     """ Handler for when the "New Theme" action is triggered."""
     if self.theme_edited:
         if not self.ask_discard_changes():
             return
             
     self.themefile = AlienFXThemeFile(self.controller)
     self.themefile.set_default_theme()
     self.load_theme("New Theme")
     self.set_theme_dirty(False)
     self.theme_loaded_from_file = False
     self.enable_delete_theme_button(False)
Ejemplo n.º 3
0
 def on_activate(self, data=None):
     self.builder = Gtk.Builder()
     self.builder.add_from_file(pkg_resources.resource_filename(
         "alienfx.ui.gtkui", "glade/ui.glade"))
     
     self.zone_list_view = self.builder.get_object("zone_list_view")
     self.zone_list_view.get_selection().set_mode(Gtk.SelectionMode.SINGLE)
     self.zone_list_view.connect(
         "button-press-event", self.zone_item_selected)
     self.action_cell_renderer = AlienFXActionCellRenderer(
         treeview=self.zone_list_view, max_colour_val=0xf)
     col_colour = Gtk.TreeViewColumn(
         "Actions", self.action_cell_renderer, actions=1)
     self.zone_list_view.append_column(col_colour)
     
     self.open_theme_list_view = self.builder.get_object("open_theme_list_view")
     self.open_theme_list_view.get_selection().set_mode(Gtk.SelectionMode.SINGLE)
     self.open_theme_list_view.get_selection().connect(
         "changed", self.on_open_theme_list_selection_changed)
         
     self.saveas_theme_list_view = self.builder.get_object("saveas_theme_list_view")
     self.saveas_theme_list_view.get_selection().set_mode(Gtk.SelectionMode.SINGLE)
     self.saveas_theme_list_view.get_selection().connect(
         "changed", self.on_saveas_theme_list_selection_changed)
         
     self.properties_frame = self.builder.get_object("properties_frame")
     
     self.palette1 = ColourPalette(
         self.colours, max_colour_val=0xf, num_rows=2, num_cols=10, 
         horizontal=True, selected_handler=self.on_colour_selected)
     self.builder.get_object("colour_palette1").add(self.palette1)
     
     self.palette2 = ColourPalette(
         self.colours, max_colour_val=0xf, num_rows=2, num_cols=10, 
         horizontal=True, selected_handler=self.on_colour_selected)
     self.builder.get_object("colour_palette2").add(self.palette2)
     self.palette2.set_sensitive(False)
     
     self.builder.connect_signals(self)
     main_window = self.builder.get_object("main_window")
     main_window.set_icon_from_file(pkg_resources.resource_filename(
         "alienfx", "data/icons/hicolor/scalable/apps/alienfx.svg"))
     main_window.show_all()
     self.add_window(main_window)
     
     if self.controller is None:
         Gtk.MessageDialog(
             main_window, Gtk.DialogFlags.MODAL, 
             Gtk.MessageType.ERROR, 
             Gtk.ButtonsType.CLOSE, 
             "No supported Alien FX controller found!").run()
         quit()
         
     self.themefile = AlienFXThemeFile(self.controller)
     last_theme_loaded = self.themefile.load_last_theme()
     if last_theme_loaded:
         self.load_theme("Current Theme")
     else:
         self.load_theme("New Theme")
     self.theme_loaded_from_file = False
     self.enable_delete_theme_button(False)