svn: r7860
This commit is contained in:
		@@ -176,14 +176,14 @@ ged2fam_custom = {}
 | 
			
		||||
# regular expressions
 | 
			
		||||
#
 | 
			
		||||
#-------------------------------------------------------------------------
 | 
			
		||||
intRE = re.compile(r"\s*(\d+)\s*$")
 | 
			
		||||
nameRegexp= re.compile(r"/?([^/]*)(/([^/]*)(/([^/]*))?)?")
 | 
			
		||||
snameRegexp= re.compile(r"/([^/]*)/([^/]*)")
 | 
			
		||||
modRegexp = re.compile(r"\s*(EST|CAL)\s+(.*)$")
 | 
			
		||||
calRegexp = re.compile(r"\s*(ABT|BEF|AFT)?\s*@#D([^@]+)@\s*(.*)$")
 | 
			
		||||
intRE       = re.compile(r"\s*(\d+)\s*$")
 | 
			
		||||
nameRegexp  = re.compile(r"/?([^/]*)(/([^/]*)(/([^/]*))?)?")
 | 
			
		||||
snameRegexp = re.compile(r"/([^/]*)/([^/]*)")
 | 
			
		||||
modRegexp   = re.compile(r"\s*(EST|CAL)\s+(.*)$")
 | 
			
		||||
calRegexp   = re.compile(r"\s*(ABT|BEF|AFT)?\s*@#D([^@]+)@\s*(.*)$")
 | 
			
		||||
rangeRegexp = re.compile(r"\s*BET\s+@#D([^@]+)@\s*(.*)\s+AND\s+@#D([^@]+)@\s*(.*)$")
 | 
			
		||||
spanRegexp = re.compile(r"\s*FROM\s+@#D([^@]+)@\s*(.*)\s+TO\s+@#D([^@]+)@\s*(.*)$")
 | 
			
		||||
intRegexp = re.compile(r"\s*INT\s+([^(]+)\((.*)\)$")
 | 
			
		||||
spanRegexp  = re.compile(r"\s*FROM\s+@#D([^@]+)@\s*(.*)\s+TO\s+@#D([^@]+)@\s*(.*)$")
 | 
			
		||||
intRegexp   = re.compile(r"\s*INT\s+([^(]+)\((.*)\)$")
 | 
			
		||||
 | 
			
		||||
#-------------------------------------------------------------------------
 | 
			
		||||
#
 | 
			
		||||
@@ -706,12 +706,12 @@ class GedcomParser(UpdateCallback):
 | 
			
		||||
            TOKEN_CHAN  : self.func_obje_chan,
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
        self.place_names = set()
 | 
			
		||||
        self.place_names = {}
 | 
			
		||||
        cursor = dbase.get_place_cursor()
 | 
			
		||||
        data = cursor.next()
 | 
			
		||||
        while data:
 | 
			
		||||
            (handle,val) = data
 | 
			
		||||
            self.place_names.add(val[2])
 | 
			
		||||
            self.place_names[val[2]] = handle
 | 
			
		||||
            data = cursor.next()
 | 
			
		||||
        cursor.close()
 | 
			
		||||
 | 
			
		||||
@@ -1175,9 +1175,14 @@ class GedcomParser(UpdateCallback):
 | 
			
		||||
 | 
			
		||||
        # check to see if we've encountered this name before
 | 
			
		||||
        # if we haven't we need to get a new GRAMPS ID
 | 
			
		||||
        intid = self.lid2id.get(title)
 | 
			
		||||
        
 | 
			
		||||
        intid = self.place_names.get(title)
 | 
			
		||||
        if intid == None:
 | 
			
		||||
            new_id = self.db.find_next_place_gramps_id()
 | 
			
		||||
            intid = self.lid2id.get(title)
 | 
			
		||||
            if intid == None:
 | 
			
		||||
                new_id = self.db.find_next_place_gramps_id()
 | 
			
		||||
            else:
 | 
			
		||||
                new_id = None
 | 
			
		||||
        else:
 | 
			
		||||
            new_id = None
 | 
			
		||||
 | 
			
		||||
@@ -2299,7 +2304,6 @@ class GedcomParser(UpdateCallback):
 | 
			
		||||
        return value
 | 
			
		||||
    
 | 
			
		||||
    def parse_ftw_fam_schema(self,level):
 | 
			
		||||
        
 | 
			
		||||
        while True:
 | 
			
		||||
            matches = self.get_next()
 | 
			
		||||
 | 
			
		||||
@@ -2313,8 +2317,6 @@ class GedcomParser(UpdateCallback):
 | 
			
		||||
            matches = self.get_next()
 | 
			
		||||
            if self.level_is_finished(matches,level):
 | 
			
		||||
                break
 | 
			
		||||
#            else:
 | 
			
		||||
#                print matches
 | 
			
		||||
    
 | 
			
		||||
    def ignore_change_data(self,level):
 | 
			
		||||
        matches = self.get_next()
 | 
			
		||||
 
 | 
			
		||||
@@ -487,7 +487,7 @@ class MergePeople:
 | 
			
		||||
        not entirely identical to the destination person's primary name.
 | 
			
		||||
 | 
			
		||||
        Remaining alternate names are then added to the merged
 | 
			
		||||
        person's alternate names.
 | 
			
		||||
        person's alternate names, removing exact duplicates.
 | 
			
		||||
        """
 | 
			
		||||
        p1_name = self.p1.get_primary_name()
 | 
			
		||||
        p2_name = self.p2.get_primary_name()
 | 
			
		||||
@@ -496,10 +496,14 @@ class MergePeople:
 | 
			
		||||
        if not p2_name.is_equal(p1_name):
 | 
			
		||||
            new.add_alternate_name(p2_name)
 | 
			
		||||
            
 | 
			
		||||
        for name in self.p1.get_alternate_names():
 | 
			
		||||
            new.add_alternate_name(name)
 | 
			
		||||
        for name in self.p2.get_alternate_names():
 | 
			
		||||
            new.add_alternate_name(name)
 | 
			
		||||
        for name in self.p1.get_alternate_names() + self.p2.get_alternate_names():
 | 
			
		||||
            if name.is_equal(p1_name):
 | 
			
		||||
                break
 | 
			
		||||
            for item in new.get_alternate_names():
 | 
			
		||||
                if item.is_equal(name):
 | 
			
		||||
                    break
 | 
			
		||||
            else:
 | 
			
		||||
                new.add_alternate_name(name)
 | 
			
		||||
 | 
			
		||||
    def merge_birth(self, new,trans):
 | 
			
		||||
        """
 | 
			
		||||
 
 | 
			
		||||
@@ -177,6 +177,8 @@ uidefault = '''<ui>
 | 
			
		||||
<accelerator action="F9"/>
 | 
			
		||||
<accelerator action="F11"/>
 | 
			
		||||
<accelerator action="F12"/>
 | 
			
		||||
<accelerator action="<Alt>N"/>
 | 
			
		||||
<accelerator action="<Alt>P"/>
 | 
			
		||||
</ui>
 | 
			
		||||
'''
 | 
			
		||||
 | 
			
		||||
@@ -364,6 +366,8 @@ class ViewManager:
 | 
			
		||||
            ('F9', None, 'F9', "F9", None, self.keypress),
 | 
			
		||||
            ('F11', None, 'F11', "F11", None, self.keypress),
 | 
			
		||||
            ('F12', None, 'F12', "F12", None, self.keypress),
 | 
			
		||||
            ('<Alt>N', None, '<Alt>N', "<Alt>N", None, self.next_view),
 | 
			
		||||
            ('<Alt>P', None, '<Alt>P', "<Alt>P", None, self.prev_view),
 | 
			
		||||
            ]
 | 
			
		||||
 | 
			
		||||
        self._action_action_list = [
 | 
			
		||||
@@ -415,6 +419,22 @@ class ViewManager:
 | 
			
		||||
            self.uistate.push_message(self.state,
 | 
			
		||||
                                      _("Key %s is not bound") % name)
 | 
			
		||||
 | 
			
		||||
    def next_view(self, action):
 | 
			
		||||
        current_page = self.notebook.get_current_page()
 | 
			
		||||
        if current_page == len(self.pages)-1:
 | 
			
		||||
            new_page = 0
 | 
			
		||||
        else:
 | 
			
		||||
            new_page = current_page + 1
 | 
			
		||||
        self.buttons[new_page].set_active(True)
 | 
			
		||||
 | 
			
		||||
    def prev_view(self, action):
 | 
			
		||||
        current_page = self.notebook.get_current_page()
 | 
			
		||||
        if current_page == 0:
 | 
			
		||||
            new_page = len(self.pages)-1
 | 
			
		||||
        else:
 | 
			
		||||
            new_page = current_page - 1
 | 
			
		||||
        self.buttons[new_page].set_active(True)
 | 
			
		||||
 | 
			
		||||
    def init_interface(self):
 | 
			
		||||
        self._init_lists()
 | 
			
		||||
 | 
			
		||||
@@ -725,16 +745,16 @@ class ViewManager:
 | 
			
		||||
 | 
			
		||||
        use_current = Config.get(Config.USE_LAST_VIEW)
 | 
			
		||||
        if use_current:
 | 
			
		||||
            current = Config.get(Config.LAST_VIEW)
 | 
			
		||||
            if current > len(self.pages):
 | 
			
		||||
                current = 0
 | 
			
		||||
            current_page = Config.get(Config.LAST_VIEW)
 | 
			
		||||
            if current_page > len(self.pages):
 | 
			
		||||
                current_page = 0
 | 
			
		||||
        else:
 | 
			
		||||
            current = 0
 | 
			
		||||
            current_page = 0
 | 
			
		||||
 | 
			
		||||
        self.active_page = self.pages[current]
 | 
			
		||||
        self.buttons[current].set_active(True)
 | 
			
		||||
        self.active_page = self.pages[current_page]
 | 
			
		||||
        self.buttons[current_page].set_active(True)
 | 
			
		||||
        self.active_page.set_active()
 | 
			
		||||
        self.notebook.set_current_page(current)
 | 
			
		||||
        self.notebook.set_current_page(current_page)
 | 
			
		||||
 | 
			
		||||
    def vb_clicked(self,button,index):
 | 
			
		||||
        if Config.get(Config.VIEW):
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user