Example #1
0
    def __init__(self, ctrl, client=None, title=None):
        '''
            ctrl: is the controller necessary to manage MVC pattern
            client: could be None for a new client view or client object 
                of client info view
            tittle: is the tittle of the window
        '''
        self.controller = ctrl
        self.builder = gtk.Builder()
        main_window_name = "client_info"
        glade_name = "client_view.glade"
        try:
            self.filename = views.get_data_dev(glade_name)
            self.builder.add_from_file(self.filename)
        except glib.GError:
            self.filename = views.get_data(glade_name)
            self.builder.add_from_file(self.filename)
        
        self.window = self.builder.get_object(main_window_name)

        ######## client variables #########
        self.name_entry = self.builder.get_object("name_entry")
        self.surname_entry = self.builder.get_object("surname_entry")
        self.dni_entry = self.builder.get_object("dni_entry")
        self.email_entry = self.builder.get_object("email_entry")
        self.web_entry = self.builder.get_object("web_entry")
        self.notification_label = self.builder.get_object("notification_label")    
        self.apply_button = self.builder.get_object("apply")
        self.client_id_label = self.builder.get_object("client_id_label")
        if tests.debbuging:
            self.client_id_label.set_visible(True)

        ######## address 1 variables #########
        # to manage the address notebook it create a list of address_view objects __address_pages__
        # with the same index of the notebook page index
        # If the client doesn't have any address its insert in the page 0 an empty
        # address table as an address_view object without filled up
        self.address_pages = []
        self.address_notebook = self.builder.get_object("address_notebook")
        self.modified = [] # Store what kind of object has been modified either client, or address
        self.to_modify_add = [] # Store the tab_number of the modified already stores address
        self.to_new_add = [] # For new address, modified and NO already stores
        self.to_delete_add = [] # For address deleted, just the stored ones
        self.has_new_add = -1 # has_new_add is the index of the new add without been modified or -1
        
        dic = {
            "on_client_info_destroy" : self.quit,
            "on_cancel_clicked" : self.cancel,
            "client_entry_changed" : self.client_changed,
            "address_entry_changed" : self.address_changed,
            "on_new_address_clicked" : self.new_address,
            "on_delete_address" : self.delete_address,
            "on_apply_clicked" : self.save_apply,
              }

        self.window.set_title(title)
        self.client = client
        self.populate_client_view(client)
        self.builder.connect_signals(dic)
Example #2
0
    def __init__(self, ctrl):
        '''
        Build the main dashboard view using the main_view.glade file 
        located in interfaces
        '''
        self.controller = ctrl
        self.builder = gtk.Builder()
        self.main_window_name = "Ord-en Ley"
        glade_name = "main_view.glade"
        try:
            self.filename = views.get_data_dev(glade_name)
            self.builder.add_from_file(self.filename)
        except glib.GError:
            self.filename = views.get_data(glade_name)
            self.builder.add_from_file(self.filename)

        self.treeview = self.builder.get_object("client_tree")
        self.liststore = self.builder.get_object("client_store")
        self.notifier_label = self.builder.get_object("notifier_label")
        self.id_column = self.builder.get_object("id_column")
        self.id_column.set_visible(False)
        
        self.window = self.builder.get_object(self.main_window_name)
        if tests.debbuging:
            print "self.window=" + str(self.window)
            print "self.filename=" + str(self.filename)
            print "self.builder=" + str(self.builder)
            self.id_column.set_visible(True)

        dic = {
        "gtk_main_quit" : self.quit,
        "on_main_view_destroy" : self.quit,
        "gtk_main_quit" : self.quit,
        "on_client_tree_row_activated" : self.row_activated,
        "on_new_client_clicked" : self.new_client,
        "on_delete_client_clicked" : self.delete_client,
               }
        self.builder.connect_signals(dic)
        self.activated_clients = []
        self.window.set_title("Ord-en Ley")
        # iter_id is a variable to get all pairs id iter in the liststore
        self.__iter_id = {}