Index: channels/_generic.py ================================================================== --- channels/_generic.py +++ channels/_generic.py @@ -161,11 +161,11 @@ # load default category if (self.current): self.load(self.current) else: - mygtk.columns(self.gtk_list, self.datamap, [{}]) + mygtk.columns(self.gtk_list, self.datamap, []) # add to main menu mygtk.add_menu(parent.channelmenuitems, self.title, lambda w: parent.channel_switch(w, self.module) or 1) Index: mygtk.py ================================================================== --- mygtk.py +++ mygtk.py @@ -88,11 +88,11 @@ # entries = [ {"titlerow":"first", "interndat":123}, {"titlerow":"..."}, ] # Keys not mentioned in the datamap get ignored, and defaults are applied # for missing cols. All values must already be in the correct type however. # @staticmethod - def columns(widget, datamap=[], entries=[], pix_entry=False, typecast=0): + def columns(widget, datamap=[], entries=None, pix_entry=False, typecast=0): # create treeviewcolumns? if (not widget.get_column(0)): # loop through titles datapos = 0 @@ -145,12 +145,12 @@ widget.set_search_column(2) #?? widget.set_search_column(1) #?? #widget.set_reorderable(True) # add data? - if (entries): - #- expand datamap + if (entries is not None): + #- expand datamap vartypes = [] #(str, str, bool, str, int, int, gtk.gdk.Pixbuf, str, int) rowmap = [] #["title", "desc", "bookmarked", "name", "count", "max", "img", ...] if (not rowmap): for desc in datamap: for var in xrange(2, len(desc)): @@ -195,11 +195,13 @@ ls.append(row) # had to be adapted for real TreeStore (would require additional input for grouping/level/parents) except: # brute-force typecast ls.append( [va if ty==gtk.gdk.Pixbuf else ty(va) for va,ty in zip(row,vartypes)] ) - __print__("→", row, len(row)) + + if entries: + __print__("→", row, len(row)) # apply array to widget widget.set_model(ls) return ls