def populate(self, person): from stoqlib.domain.person import (Client, Supplier, Transporter, SalesPerson, Branch) store = get_store_for_field(self) person_type = self.person_type if person_type == Supplier: objects = Supplier.get_active_suppliers(store) self.add_button.set_tooltip_text(_("Add a new supplier")) self.edit_button.set_tooltip_text(_("Edit the selected supplier")) elif person_type == Client: objects = Client.get_active_clients(store) self.add_button.set_tooltip_text(_("Add a new client")) self.edit_button.set_tooltip_text(_("Edit the selected client")) elif person_type == Transporter: objects = Transporter.get_active_transporters(store) self.add_button.set_tooltip_text(_("Add a new transporter")) self.edit_button.set_tooltip_text(_("Edit the selected transporter")) elif person_type == SalesPerson: objects = SalesPerson.get_active_salespersons(store) self.add_button.set_tooltip_text(_("Add a new sales person")) self.edit_button.set_tooltip_text(_("Edit the selected sales person")) elif person_type == Branch: objects = Branch.get_active_branches(store) self.add_button.set_tooltip_text(_("Add a new branch")) self.edit_button.set_tooltip_text(_("Edit the selected branch")) else: raise AssertionError(self.person_type) self.widget.prefill(api.for_person_combo(objects)) if person: assert isinstance(person, person_type) self.widget.select(person)
def populate(self, person): from stoqlib.domain.person import (Client, Supplier, Transporter, SalesPerson, Branch) store = get_store_for_field(self) person_type = self.person_type if person_type == Supplier: objects = Supplier.get_active_suppliers(store) self.add_button.set_tooltip_text(_("Add a new supplier")) self.edit_button.set_tooltip_text(_("Edit the selected supplier")) elif person_type == Client: objects = Client.get_active_clients(store) self.add_button.set_tooltip_text(_("Add a new client")) self.edit_button.set_tooltip_text(_("Edit the selected client")) elif person_type == Transporter: objects = Transporter.get_active_transporters(store) self.add_button.set_tooltip_text(_("Add a new transporter")) self.edit_button.set_tooltip_text( _("Edit the selected transporter")) elif person_type == SalesPerson: objects = SalesPerson.get_active_salespersons(store) self.add_button.set_tooltip_text(_("Add a new sales person")) self.edit_button.set_tooltip_text( _("Edit the selected sales person")) elif person_type == Branch: objects = Branch.get_active_branches(store) self.add_button.set_tooltip_text(_("Add a new branch")) self.edit_button.set_tooltip_text(_("Edit the selected branch")) else: raise AssertionError(self.person_type) self.widget.prefill(api.for_person_combo(objects)) if person: assert isinstance(person, person_type) self.widget.select(person)
def _fill_clients_combo(self): # FIXME: This should not be using a normal ProxyComboEntry, # we need a specialized widget that does the searching # on demand. clients = Client.get_active_clients(self.store) self.client.prefill(api.for_person_combo(clients)) self.client.mandatory = True
def _fill_clients_combo(self): # FIXME: This should not be using a normal ProxyComboEntry, # we need a specialized widget that does the searching # on demand. clients = Client.get_active_clients(self.store) self.client.prefill(api.for_person_combo(clients)) self.client.mandatory = True
def _fill_clients_combo(self): marker('Filling clients') # FIXME: This should not be using a normal ProxyComboEntry, # we need a specialized widget that does the searching # on demand. clients = Client.get_active_clients(self.store) self.client.prefill(api.for_person_combo(clients)) self.client.set_sensitive(len(self.client.get_model())) marker('Filled clients')
def _fill_clients_combo(self): marker('Filling clients') # FIXME: This should not be using a normal ProxyComboEntry, # we need a specialized widget that does the searching # on demand. clients = Client.get_active_clients(self.store) self.client.prefill(api.for_person_combo(clients)) self.client.set_sensitive(len(self.client.get_model())) marker('Filled clients')
def _fill_clients_combo(self): # FIXME: This should not be using a normal ProxyComboEntry, # we need a specialized widget that does the searching # on demand. # This is to keep the clients in cache clients_cache = list(Client.get_active_clients(self.store)) clients_cache # pyflakes # We are using ClientView here to show the fancy name as well clients = ClientView.get_active_clients(self.store) items = [(c.get_description(), c.client) for c in clients] items = locale_sorted(items, key=operator.itemgetter(0)) self.client.prefill(items) # TODO: Implement a has_items() in kiwi self.client.set_sensitive(len(self.client.get_model()))
def _fill_clients_combo(self): # FIXME: This should not be using a normal ProxyComboEntry, # we need a specialized widget that does the searching # on demand. # This is to keep the clients in cache clients_cache = list(Client.get_active_clients(self.store)) clients_cache # pyflakes # We are using ClientView here to show the fancy name as well clients = ClientView.get_active_clients(self.store) items = [(c.get_description(), c.client) for c in clients] items = locale_sorted(items, key=operator.itemgetter(0)) self.client.prefill(items) # TODO: Implement a has_items() in kiwi self.client.set_sensitive(len(self.client.get_model()))
def _fill_clients_combo(self): clients = Client.get_active_clients(self.store) self.client.prefill(api.for_person_combo(clients))
def _fill_clients_combo(self): clients = Client.get_active_clients(self.store) self.client.prefill(api.for_person_combo(clients))