Check-in [fa410c856a]
Overview
| Comment: | Enable empty entries=[] display in mygtk.columns (empty channels/categories/bookmarks) | 
|---|---|
| Downloads: | Tarball | ZIP archive | SQL archive | 
| Timelines: | family | ancestors | descendants | both | trunk | 
| Files: | files | file ages | folders | 
| SHA1: | 
fa410c856ac3d524c22052059619323f | 
| User & Date: | mario on 2014-05-12 20:10:02 | 
| Other Links: | manifest | tags | 
Context
| 
   2014-05-13 
 | ||
| 03:25 | Regrouped config dialog settings. check-in: 1818d826d6 user: mario tags: trunk | |
| 
   2014-05-12 
 | ||
| 20:10 | Enable empty entries=[] display in mygtk.columns (empty channels/categories/bookmarks) check-in: fa410c856a user: mario tags: trunk | |
| 
   2014-05-11 
 | ||
| 01:21 | load Jamendo images in favour of favicons check-in: 6d065627b5 user: mario tags: trunk | |
Changes
Modified channels/_generic.py from [cfe3bb4bc7] to [740afe7476].
| ︙ | ︙ | |||
159 160 161 162 163 164 165  | 
                    for x in range(2, len(row)):
                        self.rowmap.append(row[x][0])
            # load default category
            if (self.current):
                self.load(self.current)
            else:
 | |  | 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173  | 
                    for x in range(2, len(row)):
                        self.rowmap.append(row[x][0])
            # load default category
            if (self.current):
                self.load(self.current)
            else:
                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)
            
            
        # make private copy of .datamap and modify field (title= only ATM)
        def update_datamap(self, search="name", title=None):
 | 
| ︙ | ︙ | 
Modified mygtk.py from [2fdc371b2a] to [eafa93f0f3].
| ︙ | ︙ | |||
86 87 88 89 90 91 92  | 
        #
        # An according entries list then would contain a dictionary for each row:
        #   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
 | |  | 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100  | 
        #
        # An according entries list then would contain a dictionary for each row:
        #   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=None, pix_entry=False, typecast=0):
            # create treeviewcolumns?
            if (not widget.get_column(0)):
                # loop through titles
                datapos = 0
                for n_col,desc in enumerate(datamap):
                                    
 | 
| ︙ | ︙ | |||
143 144 145 146 147 148 149  | 
                widget.set_search_column(4)   #??
                widget.set_search_column(3)   #??
                widget.set_search_column(2)   #??
                widget.set_search_column(1)   #??
                #widget.set_reorderable(True)
               
            # add data?
 | | |  | 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158  | 
                widget.set_search_column(4)   #??
                widget.set_search_column(3)   #??
                widget.set_search_column(2)   #??
                widget.set_search_column(1)   #??
                #widget.set_reorderable(True)
               
            # add data?
            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)):
                            vartypes.append(desc[var][1])  # content types
                            rowmap.append(desc[var][0])    # dict{} column keys in entries[] list
 | 
| ︙ | ︙ | |||
193 194 195 196 197 198 199  | 
                    try:
                        # add
                        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)]  )
 | > > |  | 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209  | 
                    try:
                        # add
                        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)]  )
                if entries:
                     __print__("[37m→[0m", row, len(row))
                
                # apply array to widget
                widget.set_model(ls)
                return ls
                
            pass
 | 
| ︙ | ︙ |