py::gui::models::series Class Reference

Inheritance diagram for py::gui::models::series:

Inheritance graph
[legend]

List of all members.

Public Member Functions

def __init__
def clear_indexes
def update_colors
def parent_registered
def parent_unregistered
def matches
def fill
def auto_expand
def get_expand
def get_row_colors

Public Attributes

 parent

Static Public Attributes

int nb_col = 4
list header = [_("Name"),_("Volume"),("Author"),_("Drawer")]

Private Member Functions

def _create_entry
def _register_series
def _unregister_series
def _queryset


Member Function Documentation

def py::gui::models::series::__init__ (   self,
  parent,
  view 
)

00501                                            :
00502                 flat_catalog.__init__(self,view)
00503                 self.parent = parent
00504                 self.parent.register_model(self)
00505         
        def clear_indexes( self ) :

def py::gui::models::series::clear_indexes (   self  ) 

Reimplemented from py::gui::models::flat_catalog.

00506                                   :
00507                 flat_catalog.clear_indexes(self)
00508                 self['toplevel-series'] = {}
00509         
        def update_colors( self ) :

def py::gui::models::series::update_colors (   self  ) 

Reimplemented from py::gui::models::flat_catalog.

00510                                   :
00511                 for item in self['toplevel-series'].itervalues() :
00512                         item.setup_color()
00513                 flat_catalog.update_colors(self)
00514         
        def parent_registered( self, albumcopy ) :

def py::gui::models::series::parent_registered (   self,
  albumcopy 
)

00515                                                  :
00516                 album = albumcopy.album
00517                 if album.series.is_oneshot() :
00518                         return
00519                 if album.series.qoid not in self['toplevel-series'] :
00520                         self._register_series(album.series)
00521                         self.invalidate_sort()
00522                         self.album_count_changed()
00523         
        def parent_unregistered( self, albumcopy_id, album ) :

def py::gui::models::series::parent_unregistered (   self,
  albumcopy_id,
  album 
)

00524                                                              :
00525                 if album.qoid in self['by-album'] :
00526                         series = album.series
00527                         if not self.parent.has_series(series) :
00528                                 self._unregister_series(series)
00529                         else :
00530                                 self['toplevel-series'][series.qoid].setup_properties()
00531 
        def matches( self, album ) :

def py::gui::models::series::matches (   self,
  album 
)

00532                                    :
00533                 return not album.series.is_oneshot() and album.series.belongs_to_library(self.parent.library_id)
00534         
        def _create_entry( self, album ) :

def py::gui::models::series::_create_entry (   self,
  album 
) [private]

Reimplemented from py::gui::models::flat_catalog.

00535                                          :
00536                 series = album.series
00537                 if series.qoid not in self['toplevel-series'] :
00538                         self._register_series(series)
00539                 else :
00540                         node = self['toplevel-series'][series.qoid]
00541                         self.register_item(album, series_album_item(self, node, album))
00542                         node.setup_color()
00543                 self.album_count_changed()
00544 
        def _register_series( self, series ) :

def py::gui::models::series::_register_series (   self,
  series 
) [private]

00545                                              :
00546                 node = self['toplevel-series'][series.qoid] = series_item(self, self.view, series)
00547                 for album in series.album_set.select_related().order_by('volume') :
00548                         self.register_item(album, series_album_item(self, node, album))
00549 
        def _unregister_series( self, series ) :

def py::gui::models::series::_unregister_series (   self,
  series 
) [private]

00550                                                :
00551                 series_item = self['toplevel-series'][series.qoid]
00552                 self.view.remove_item(series_item)
00553 
00554                 series_item.takeChildren()
00555                 for item in self['by-series'][series.qoid] :
00556                         del self['by-album'][item.album.qoid]
00557                 del self['by-series'][series.qoid]
00558 
00559                 del self['toplevel-series'][series.qoid]
00560 
        def _queryset( self ) :

def py::gui::models::series::_queryset (   self  )  [private]

00561                               :
00562                 return Album.objects.filter(series__qoid__in=self.parent['by-series'].keys())\
00563                                                                                                 .exclude(Q(series__name__iexact='oneshot')|Q(series__name__exact=''))
00564 
        def fill( self ) :

def py::gui::models::series::fill (   self  ) 

Reimplemented from py::gui::models::flat_catalog.

00565                          :
00566                 for series in self.parent.get_series() :
00567                         if not series.is_oneshot() :
00568                                 self._register_series(series)
00569         
        def auto_expand( self ) :

def py::gui::models::series::auto_expand (   self  ) 

00570                                 :
00571                 for item in self['toplevel-series'].itervalues() :
00572                         item.setup_expand()
00573 
        def get_expand( self, series ) :

def py::gui::models::series::get_expand (   self,
  series 
)

00574                                        :
00575                 return not self.parent.has_series_completed(series)
00576 
        def get_row_colors( self, row ) :

def py::gui::models::series::get_row_colors (   self,
  row 
)

00577                                         :
00578                 if isinstance(row, series_item) :
00579                         if self.parent.has_series_completed(row.series) :
00580                                 return qocfg.get_color("completed_series")
00581                         else :
00582                                 return qocfg.get_color("series")
00583                 else :
00584                         if self.parent.has_album(row.album) :
00585                                 return row.parent().backgroundColor(0).name(), row.parent().textColor(0).name()
00586                         elif row.album.is_nextout() :
00587                                 return qocfg.get_color("not_published")
00588                         elif libraries[qodb.cte.shopping_list_id].has_album(row.album) :
00589                                 return qocfg.get_color("library%d"%qodb.cte.shopping_list_id)
00590                         else :
00591                                 return None,None
00592 
00593 


Member Data Documentation

int py::gui::models::series::nb_col = 4 [static]

Reimplemented from py::gui::models::flat_catalog.

list py::gui::models::series::header = [_("Name"),_("Volume"),("Author"),_("Drawer")] [static]

Reimplemented from py::gui::models::flat_catalog.

py::gui::models::series::parent


The documentation for this class was generated from the following file:
Generated on Tue Oct 9 20:40:29 2007 for Qomics by  doxygen 1.5.3