def update_statusbar(self): model = self.__treeview.get_model() count = len(model) if count == 0: info = "" else: info = parse_track_list_stats(count, self.__size, self.__length) BlaStatusbar.set_view_info(blaconst.VIEW_QUEUE, info)
def __new__(cls, name, bases, dct): # Make sure at least one baseclass inherits from gobject.GObject. if not any([issubclass(base, gobject.GObject) for base in bases]): raise TypeError("%s does not inherit from gobject.GObject" % name) # Add the view_name property. if "view_name" in dct: raise ValueError("View class %s already defines an attribute " "'view_name'" % name) dct["view_name"] = property(lambda self: view_name) # Add the count_changed signal. signals = dct.get("__gsignals__", {}) if "count_changed" in signals or "count-changed" in signals: raise ValueError("Class %s already defines a 'count_changed' " "signal" % name) signals["count_changed"] = blautil.signal(2) dct["__gsignals__"] = signals # Add the init-function stub. if "init" not in dct: dct["init"] = lambda self: None # Add default behavior for `update_statusbar()'. if "update_statusbar" not in dct: dct["update_statusbar"] = lambda s: BlaStatusbar.set_view_info( blacfg.getint("general", "view"), "") return super(_BlaViewMeta, cls).__new__(cls, name, bases, dct)