VCS/ProjectHelper.py

changeset 6188
5a6ae3be31e6
parent 6168
e9d3ea144b0b
child 6489
577c644ab6f3
--- a/VCS/ProjectHelper.py	Mon Mar 12 19:57:16 2018 +0100
+++ b/VCS/ProjectHelper.py	Tue Mar 13 14:54:46 2018 +0100
@@ -211,14 +211,17 @@
             0, False)
         if not ok:
             return
+        
+        selectedVcsSystem = None
         for vcsSystem, vcsSystemDisplay in list(vcsSystemsDict.items()):
             if vcsSystemDisplay == vcsSelected:
+                selectedVcsSystem = vcsSystem
                 break
         
         if not self.project.closeProject():
             return
         
-        vcs = self.project.initVCS(vcsSystem)
+        vcs = self.project.initVCS(selectedVcsSystem)
         if vcs is not None:
             vcsdlg = vcs.vcsNewProjectOptionsDialog()
             if vcsdlg.exec_() == QDialog.Accepted:
@@ -313,7 +316,7 @@
                             if dlg.exec_() == QDialog.Accepted:
                                 dlg.storeData()
                                 self.project.initFileTypes()
-                                self.project.pdata["VCS"] = vcsSystem
+                                self.project.pdata["VCS"] = selectedVcsSystem
                                 self.project.setDirty(True)
                                 if self.project.pdata["MAINSCRIPT"]:
                                     ms = os.path.join(
@@ -405,49 +408,54 @@
             0, False)
         if not ok:
             return
+        
+        selectedVcsSystem = None
         for vcsSystem, vcsSystemDisplay in list(vcsSystemsDict.items()):
             if vcsSystemDisplay == vcsSelected:
+                selectedVcsSystem = vcsSystem
                 break
         
-        self.project.pdata["VCS"] = vcsSystem
-        self.project.vcs = self.project.initVCS(vcsSystem)
-        if self.project.vcs is not None:
-            vcsdlg = self.project.vcs.vcsOptionsDialog(self.project,
-                                                       self.project.name, 1)
-            if vcsdlg.exec_() == QDialog.Accepted:
-                vcsDataDict = vcsdlg.getData()
-                # edit VCS command options
-                if self.project.vcs.vcsSupportCommandOptions():
-                    vcores = E5MessageBox.yesNo(
-                        self.parent(),
-                        QCoreApplication.translate(
-                            "VcsProjectHelper", "Import Project"),
-                        QCoreApplication.translate(
-                            "VcsProjectHelper",
-                            """Would you like to edit the VCS command"""
-                            """ options?"""))
+        if selectedVcsSystem is not None:
+            self.project.pdata["VCS"] = selectedVcsSystem
+            self.project.vcs = self.project.initVCS(selectedVcsSystem)
+            if self.project.vcs is not None:
+                vcsdlg = self.project.vcs.vcsOptionsDialog(
+                    self.project, self.project.name, 1)
+                if vcsdlg.exec_() == QDialog.Accepted:
+                    vcsDataDict = vcsdlg.getData()
+                    # edit VCS command options
+                    if self.project.vcs.vcsSupportCommandOptions():
+                        vcores = E5MessageBox.yesNo(
+                            self.parent(),
+                            QCoreApplication.translate(
+                                "VcsProjectHelper", "Import Project"),
+                            QCoreApplication.translate(
+                                "VcsProjectHelper",
+                                """Would you like to edit the VCS command"""
+                                """ options?"""))
+                    else:
+                        vcores = False
+                    if vcores:
+                        from .CommandOptionsDialog import \
+                            VcsCommandOptionsDialog
+                        codlg = VcsCommandOptionsDialog(self.project.vcs)
+                        if codlg.exec_() == QDialog.Accepted:
+                            self.project.vcs.vcsSetOptions(codlg.getOptions())
+                    self.project.setDirty(True)
+                    self.project.vcs.vcsSetDataFromDict(vcsDataDict)
+                    self.project.saveProject()
+                    isVcsControlled = self.project.vcs.vcsImport(
+                        vcsDataDict, self.project.ppath)[0]
+                    if isVcsControlled:
+                        # reopen the project
+                        self.project.openProject(self.project.pfile)
+                    else:
+                        # revert the changes to the local project
+                        # because the project dir is not a VCS directory
+                        revertChanges()
                 else:
-                    vcores = False
-                if vcores:
-                    from .CommandOptionsDialog import VcsCommandOptionsDialog
-                    codlg = VcsCommandOptionsDialog(self.project.vcs)
-                    if codlg.exec_() == QDialog.Accepted:
-                        self.project.vcs.vcsSetOptions(codlg.getOptions())
-                self.project.setDirty(True)
-                self.project.vcs.vcsSetDataFromDict(vcsDataDict)
-                self.project.saveProject()
-                isVcsControlled = self.project.vcs.vcsImport(
-                    vcsDataDict, self.project.ppath)[0]
-                if isVcsControlled:
-                    # reopen the project
-                    self.project.openProject(self.project.pfile)
-                else:
-                    # revert the changes to the local project
-                    # because the project dir is not a VCS directory
+                    # revert the changes because user cancelled
                     revertChanges()
-            else:
-                # revert the changes because user cancelled
-                revertChanges()
 
     def _vcsUpdate(self):
         """

eric ide

mercurial