class PurchaseViewer(gtk.Window): def __init__(self): gtk.Window.__init__(self) self.set_title('Purchases') self.search = SearchContainer(self.get_columns()) self.search.set_summary_label('price') self.add(self.search) self._setup_searching() self._create_filters() def _setup_searching(self): self.query = StormQueryExecuter(store) self.search.set_query_executer(self.query) self.query.set_table(Sale) def _create_filters(self): self.search.set_text_field_columns(['description']) self.search.add_filter(DateSearchFilter('Date:'), columns=['date']) def get_columns(self): return [Column('description', data_type=str, title='Description', expand=True), Column('price', data_type=currency, title='Price'), Column('date', data_type=datetime.date, width=90)]
def _setup_searching(self): self.query = StormQueryExecuter(store) self.search.set_query_executer(self.query) self.query.set_table(Sale)