def test_actionbar(self): mock = Mock() actionbar = ActionBar() actionbar.add_button("id1", "label", mock) actionbar.add_button("id2", "label", mock) actionbar.remove_button("id2") win = get_test_window(child=actionbar) self.addCleanup(win.destroy)
def test_actionbar(self): from softwarecenter.ui.gtk3.widgets.actionbar import ActionBar mock = Mock() actionbar = ActionBar() actionbar.add_button("id1", "label", mock) actionbar.add_button("id2", "label", mock) actionbar.remove_button("id2") win = Gtk.Window() win.set_size_request(400, 400) win.add(actionbar) win.connect("destroy", Gtk.main_quit) win.show_all() GObject.timeout_add(TIMEOUT, lambda: win.destroy()) Gtk.main()
def __init__(self, cache, db, distro, icons, datadir, show_ratings=True): Gtk.VBox.__init__(self) BasePane.__init__(self) # other classes we need self.enquirer = AppEnquire(cache, db) self._query_complete_handler = self.enquirer.connect( "query-complete", self.on_query_complete) self.cache = cache self.db = db self.distro = distro self.icons = icons self.datadir = datadir self.show_ratings = show_ratings self.backend = get_install_backend() self.nonapps_visible = NonAppVisibility.MAYBE_VISIBLE # refreshes can happen out-of-bound so we need to be sure # that we only set the new model (when its available) if # the refresh_seq_nr of the ready model matches that of the # request (e.g. people click on ubuntu channel, get impatient, click # on partner channel) self.refresh_seq_nr = 0 # this should be initialized self.apps_search_term = "" # Create the basic frame for the common view self.state = DisplayState() vm = get_viewmanager() self.searchentry = vm.get_global_searchentry() self.back_forward = vm.get_global_backforward() # a notebook below self.notebook = Gtk.Notebook() if not SOFTWARE_CENTER_DEBUG_TABS: self.notebook.set_show_tabs(False) self.notebook.set_show_border(False) # make a spinner view to display while the applist is loading self.spinner_notebook = SpinnerNotebook(self.notebook) self.pack_start(self.spinner_notebook, True, True, 0) # add a bar at the bottom (hidden by default) for contextual actions self.action_bar = ActionBar() self.pack_start(self.action_bar, False, True, 0) # cursor self.busy_cursor = Gdk.Cursor.new(Gdk.CursorType.WATCH) # views to be created in init_view self.app_view = None self.app_details_view = None