def _setup_widgets(self): """ Sets up the widgets for the files panel """ self.directory = self.tree.render_icon( gtk.STOCK_DIRECTORY, gtk.ICON_SIZE_SMALL_TOOLBAR) self.track = icons.MANAGER.pixbuf_from_icon_name( 'audio-x-generic', gtk.ICON_SIZE_SMALL_TOOLBAR) self.back = self.builder.get_object('files_back_button') self.back.connect('clicked', self.go_back) self.forward = self.builder.get_object('files_forward_button') self.forward.connect('clicked', self.go_forward) self.up = self.builder.get_object('files_up_button') self.up.connect('clicked', self.go_up) self.builder.get_object('files_refresh_button').connect('clicked', self.refresh) self.builder.get_object('files_home_button').connect('clicked', self.go_home) # Set up the location bar self.location_bar = self.builder.get_object('files_entry') self.location_bar.connect('changed', self.on_location_bar_changed) event.add_callback(self.fill_libraries_location, 'libraries_modified', self.collection) self.fill_libraries_location() self.entry = self.location_bar.child self.entry.connect('activate', self.entry_activate) # Set up the search entry self.filter = guiutil.SearchEntry(self.builder.get_object('files_search_entry')) self.filter.connect('activate', lambda *e: self.load_directory(self.current, history=False, keyword=unicode(self.filter.get_text(), 'utf-8')))
def _setup_widgets(self): """ Sets up the various widgets to be used in this panel """ self.choice = self.builder.get_object('collection_combo_box') self.choicemodel = self.builder.get_object('collection_combo_model') self.repopulate_choices() self.filter = guiutil.SearchEntry( self.builder.get_object('collection_search_entry'))
def _setup_widgets(self): """ Sets up the widgets for the files panel """ self.directory = icons.MANAGER.pixbuf_from_icon_name( 'folder', Gtk.IconSize.SMALL_TOOLBAR) self.track = icons.MANAGER.pixbuf_from_icon_name( 'audio-x-generic', Gtk.IconSize.SMALL_TOOLBAR) self.back = self.builder.get_object('files_back_button') self.back.connect('clicked', self.go_back) self.forward = self.builder.get_object('files_forward_button') self.forward.connect('clicked', self.go_forward) self.up = self.builder.get_object('files_up_button') self.up.connect('clicked', self.go_up) self.builder.get_object('files_refresh_button').connect( 'clicked', self.refresh) self.builder.get_object('files_home_button').connect( 'clicked', self.go_home) # Set up the location bar self.location_bar = self.builder.get_object('files_entry') self.location_bar.connect('changed', self.on_location_bar_changed) event.add_ui_callback(self.fill_libraries_location, 'libraries_modified', self.collection) self.fill_libraries_location() self.location_bar.set_row_separator_func(lambda m, i: m[i][1] is None) self.entry = self.location_bar.get_children()[0] self.entry.connect('activate', self.entry_activate) # Set up the search entry self.filter = guiutil.SearchEntry( self.builder.get_object('files_search_entry')) self.filter.connect( 'activate', lambda *e: self.load_directory( self.current, history=False, keyword=self.filter.get_text(), ), )
def gui_init(self, exaile): self.vbox = Gtk.Box(orientation=Gtk.Orientation.VERTICAL) self.vbox.set_border_width(3) self.search_label = Gtk.Label(label="LibriVox.org") self.vbox.pack_start(self.search_label, False, True, 4) self.entry = guiutil.SearchEntry() self.entry.connect("activate", self.run_search) self.hbox = Gtk.Box() self.vbox.pack_start(self.hbox, False, True, 0) self.hbox.pack_start(self.entry.entry, True, True, 0) self.searchbutton = Gtk.Button() self.searchimage = Gtk.Image.new_from_icon_name( 'edit-find', Gtk.IconSize.MENU) self.searchbutton.set_image(self.searchimage) self.searchbutton.connect("pressed", self.run_search) self.hbox.pack_start(self.searchbutton, False, True, 0) self.statusbar = Status() self.vbox.pack_start(self.statusbar.bar, False, True, 0) self.scrlw = Gtk.ScrolledWindow() self.scrlw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC) self.scrlw.set_shadow_type(Gtk.ShadowType.IN) self.vbox.pack_start(self.scrlw, True, True, 0) self.treestore = Gtk.TreeStore(str, GdkPixbuf.Pixbuf) self.treeview = Gtk.TreeView.new_with_model(self.treestore) self.treeview.set_headers_visible(False) self.column = Gtk.TreeViewColumn(None) self.cell = Gtk.CellRendererText() if settings.get_option('gui/ellipsize_text_in_panels', False): from gi.repository import Pango self.cell.set_property('ellipsize-set', True) self.cell.set_property('ellipsize', Pango.EllipsizeMode.END) self.cellpb = Gtk.CellRendererPixbuf() self.column.pack_start(self.cellpb, False) self.column.pack_start(self.cell, True) self.column.set_attributes(self.cell, text=0) self.column.set_attributes(self.cellpb, pixbuf=1) self.treeview.append_column(self.column) self.treeview.connect("row-expanded", self.on_row_exp) self.treeview.drag_source_set( Gdk.ModifierType.BUTTON1_MASK, [Gtk.TargetEntry.new('text/uri-list', 0, 0)], Gdk.DragAction.COPY) self.treeview.connect("drag-data-get", self.drag_data_get) self.scrlw.add(self.treeview) self.title = 'LibriVox' self.vbox.show_all() self.popup_menu = Gtk.Menu() self.add_to_pl = Gtk.ImageMenuItem.new_with_label("Append to Current") self.add_to_pl.set_image( Gtk.Image.new_from_icon_name('list-add', Gtk.IconSize.MENU)) self.about_book = Gtk.ImageMenuItem.new_with_label("About the Book") self.about_book.set_image( Gtk.Image.new_from_icon_name('help-about', Gtk.IconSize.MENU)) self.popup_menu.add(self.add_to_pl) self.popup_menu.add(self.about_book) self.popup_menu.show_all() self.aboutwindow = None
def gui_init(self, exaile): self.vbox = gtk.VBox() self.vbox.set_border_width(3) self.search_label = gtk.Label("LibriVox.org") self.vbox.pack_start(self.search_label, False, True, 4) self.entry = guiutil.SearchEntry() self.entry.connect("activate", self.run_search) self.hbox = gtk.HBox() self.vbox.pack_start(self.hbox, False, True, 0) self.hbox.pack_start(self.entry.entry, True, True, 0) self.searchbutton = gtk.Button() self.searchimage = gtk.Image() self.searchimage.set_from_stock(gtk.STOCK_FIND, gtk.ICON_SIZE_MENU) self.searchbutton.set_image(self.searchimage) self.searchbutton.connect("pressed", self.run_search) self.hbox.pack_start(self.searchbutton, False, True, 0) self.statusbar = Status() self.vbox.pack_start(self.statusbar.bar, False, True, 0) self.scrlw = gtk.ScrolledWindow() self.scrlw.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC) self.scrlw.set_shadow_type(gtk.SHADOW_IN) self.vbox.pack_start(self.scrlw, True, True, 0) self.treestore = gtk.TreeStore(str, gtk.gdk.Pixbuf) self.treeview = gtk.TreeView(self.treestore) self.treeview.set_headers_visible(False) self.column = gtk.TreeViewColumn(None) self.cell = gtk.CellRendererText() if settings.get_option('gui/ellipsize_text_in_panels', False): import pango self.cell.set_property('ellipsize-set', True) self.cell.set_property('ellipsize', pango.ELLIPSIZE_END) self.cellpb = gtk.CellRendererPixbuf() self.column.pack_start(self.cellpb, False) self.column.pack_start(self.cell, True) self.column.set_attributes(self.cell, text=0) self.column.set_attributes(self.cellpb, pixbuf=1) self.treeview.append_column(self.column) self.treeview.connect("row-expanded", self.on_row_exp) self.treeview.drag_source_set(gtk.gdk.BUTTON1_MASK, [('text/uri-list', 0, 0)], gtk.gdk.ACTION_COPY) self.treeview.connect("drag-data-get", self.drag_data_get) self.scrlw.add(self.treeview) self.title = 'LibriVox' self.vbox.show_all() self.popup_menu = gtk.Menu() self.add_to_pl = gtk.ImageMenuItem("Append to Current") self.add_to_pl.set_image( gtk.image_new_from_stock(gtk.STOCK_ADD, gtk.ICON_SIZE_MENU)) self.about_book = gtk.ImageMenuItem("About the Book") self.about_book.set_image( gtk.image_new_from_stock(gtk.STOCK_ABOUT, gtk.ICON_SIZE_MENU)) self.popup_menu.add(self.add_to_pl) self.popup_menu.add(self.about_book) self.popup_menu.show_all() self.aboutwindow = None