src/eric7/Plugins/VcsPlugins/vcsPySvn/subversion.py

branch
eric7
changeset 9482
a2bc06a54d9d
parent 9473
3f23dbf37dbe
child 9514
2b104ad132a4
diff -r 0b936ff1bbb9 -r a2bc06a54d9d src/eric7/Plugins/VcsPlugins/vcsPySvn/subversion.py
--- a/src/eric7/Plugins/VcsPlugins/vcsPySvn/subversion.py	Sun Nov 06 11:22:39 2022 +0100
+++ b/src/eric7/Plugins/VcsPlugins/vcsPySvn/subversion.py	Mon Nov 07 17:19:58 2022 +0100
@@ -24,6 +24,7 @@
 from eric7.EricUtilities.EricMutexLocker import EricMutexLocker
 from eric7.EricWidgets import EricMessageBox
 from eric7.EricWidgets.EricApplication import ericApp
+from eric7.UI.DeleteFilesConfirmationDialog import DeleteFilesConfirmationDialog
 from eric7.VCS.VersionControl import VersionControl
 
 from .SvnDialog import SvnDialog
@@ -478,11 +479,11 @@
         @param message message for this operation (string)
         @param noDialog flag indicating quiet operations
         """
+        from .SvnCommitDialog import SvnCommitDialog
+
         if not noDialog and not message:
             # call CommitDialog and get message from there
             if self.__commitDialog is None:
-                from .SvnCommitDialog import SvnCommitDialog
-
                 self.__commitDialog = SvnCommitDialog(self, self.__ui)
                 self.__commitDialog.accepted.connect(self.__vcsCommit_Step2)
             self.__commitDialog.show()
@@ -962,6 +963,8 @@
         @param noDialog flag indicating quiet operations
         @return flag indicating successfull operation (boolean)
         """
+        from .SvnCopyDialog import SvnCopyDialog
+
         rx_prot = re.compile("(file:|svn:|svn+ssh:|http:|https:).+")
         opts = self.options["global"]
         res = False
@@ -972,8 +975,6 @@
             force = True
             accepted = True
         else:
-            from .SvnCopyDialog import SvnCopyDialog
-
             dlg = SvnCopyDialog(name, None, True, "--force" in opts)
             accepted = dlg.exec() == QDialog.DialogCode.Accepted
             if accepted:
@@ -1039,6 +1040,8 @@
 
         @param name file/directory name to be diffed (string)
         """
+        from .SvnDiffDialog import SvnDiffDialog
+
         names = name[:] if isinstance(name, list) else [name]
         for nam in names:
             if os.path.isfile(nam):
@@ -1050,8 +1053,6 @@
                 if nam == project.ppath and not project.saveAllScripts():
                     return
         if self.diff is None:
-            from .SvnDiffDialog import SvnDiffDialog
-
             self.diff = SvnDiffDialog(self)
         self.diff.show()
         self.diff.raise_()
@@ -1066,9 +1067,9 @@
         @param name file/directory name(s) to show the status of
             (string or list of strings)
         """
+        from .SvnStatusDialog import SvnStatusDialog
+
         if self.status is None:
-            from .SvnStatusDialog import SvnStatusDialog
-
             self.status = SvnStatusDialog(self)
         self.status.show()
         self.status.raise_()
@@ -1082,6 +1083,8 @@
 
         @param name file/directory name to be tagged (string)
         """
+        from .SvnTagDialog import SvnTagDialog
+
         dname, fname = self.splitPath(name)
 
         reposURL = self.svnGetReposName(dname)
@@ -1100,8 +1103,6 @@
         url = (
             None if self.otherData["standardLayout"] else self.svnNormalizeURL(reposURL)
         )
-        from .SvnTagDialog import SvnTagDialog
-
         dlg = SvnTagDialog(
             self.allTagsBranchesList, url, self.otherData["standardLayout"]
         )
@@ -1191,10 +1192,6 @@
         project = ericApp().getObject("Project")
         names = [project.getRelativePath(nam) for nam in name]
         if names[0]:
-            from eric7.UI.DeleteFilesConfirmationDialog import (
-                DeleteFilesConfirmationDialog,
-            )
-
             dia = DeleteFilesConfirmationDialog(
                 self.parent(),
                 self.tr("Revert changes"),
@@ -1255,6 +1252,8 @@
         @return flag indicating, that the switch contained an add
             or delete (boolean)
         """
+        from .SvnSwitchDialog import SvnSwitchDialog
+
         dname, fname = self.splitPath(name)
 
         reposURL = self.svnGetReposName(dname)
@@ -1273,8 +1272,6 @@
         url = (
             None if self.otherData["standardLayout"] else self.svnNormalizeURL(reposURL)
         )
-        from .SvnSwitchDialog import SvnSwitchDialog
-
         dlg = SvnSwitchDialog(
             self.allTagsBranchesList, url, self.otherData["standardLayout"]
         )
@@ -1339,11 +1336,11 @@
 
         @param name file/directory name to be merged (string)
         """
+        from .SvnMergeDialog import SvnMergeDialog
+
         dname, fname = self.splitPath(name)
 
         opts = self.options["global"]
-        from .SvnMergeDialog import SvnMergeDialog
-
         dlg = SvnMergeDialog(
             self.mergeList[0], self.mergeList[1], self.mergeList[2], "--force" in opts
         )
@@ -1549,6 +1546,8 @@
         @return the received dictionary completed with a combination of
             canBeCommited and canBeAdded or None in order to signal an error
         """
+        from .SvnDialogMixin import SvnDialogMixin
+
         if dname.endswith(os.sep):
             dname = dname[:-1]
         dname = os.path.normcase(dname)
@@ -1567,8 +1566,6 @@
                 if os.path.splitdrive(repodir)[1] == os.sep:
                     return names
 
-            from .SvnDialogMixin import SvnDialogMixin
-
             mixin = SvnDialogMixin()
             client = self.getClient()
             client.callback_get_login = mixin._clientLoginCallback
@@ -1627,6 +1624,8 @@
         @return the received dictionary completed with a combination of
             canBeCommited and canBeAdded or None in order to signal an error
         """
+        from .SvnDialogMixin import SvnDialogMixin
+
         if not os.path.isdir(os.path.join(dname, self.adminDir)):
             # not under version control -> do nothing
             return names
@@ -1642,8 +1641,6 @@
                     names[name] = self.statusCache[name]
 
         if not found:
-            from .SvnDialogMixin import SvnDialogMixin
-
             mixin = SvnDialogMixin()
             client = self.getClient()
             client.callback_get_login = mixin._clientLoginCallback
@@ -1740,6 +1737,10 @@
 
         @param name directory name of the working directory (string)
         """
+        from eric7.Plugins.VcsPlugins.vcsSubversion.SvnDialog import (
+            SvnDialog as SvnProcessDialog,
+        )
+
         from .SvnCommandDialog import SvnCommandDialog
 
         dlg = SvnCommandDialog(self.commandHistory, self.wdHistory, name)
@@ -1759,10 +1760,6 @@
             args = []
             self.addArguments(args, commandList)
 
-            from eric7.Plugins.VcsPlugins.vcsSubversion.SvnDialog import (
-                SvnDialog as SvnProcessDialog,
-            )
-
             dia = SvnProcessDialog(self.tr("Subversion command"))
             res = dia.startProcess(args, wd)
             if res:
@@ -1959,9 +1956,9 @@
         @param name file/directory name (string or list of strings)
         @param recursive flag indicating a recursive list is requested
         """
+        from .SvnPropListDialog import SvnPropListDialog
+
         if self.propList is None:
-            from .SvnPropListDialog import SvnPropListDialog
-
             self.propList = SvnPropListDialog(self)
         self.propList.show()
         self.propList.raise_()
@@ -2092,9 +2089,9 @@
         @param tags flag indicating listing of branches or tags
                 (False = branches, True = tags)
         """
+        from .SvnTagBranchListDialog import SvnTagBranchListDialog
+
         if self.tagbranchList is None:
-            from .SvnTagBranchListDialog import SvnTagBranchListDialog
-
             self.tagbranchList = SvnTagBranchListDialog(self)
         self.tagbranchList.show()
         self.tagbranchList.raise_()
@@ -2120,9 +2117,9 @@
 
         @param name file name to show the blame for (string)
         """
+        from .SvnBlameDialog import SvnBlameDialog
+
         if self.blame is None:
-            from .SvnBlameDialog import SvnBlameDialog
-
             self.blame = SvnBlameDialog(self)
         self.blame.show()
         self.blame.raise_()
@@ -2143,6 +2140,9 @@
 
         @param name file/directory name to be diffed (string)
         """
+        from .SvnDiffDialog import SvnDiffDialog
+        from .SvnRevisionSelectionDialog import SvnRevisionSelectionDialog
+
         names = name[:] if isinstance(name, list) else [name]
         for nam in names:
             if os.path.isfile(nam):
@@ -2153,14 +2153,10 @@
                 project = ericApp().getObject("Project")
                 if nam == project.ppath and not project.saveAllScripts():
                     return
-        from .SvnRevisionSelectionDialog import SvnRevisionSelectionDialog
-
         dlg = SvnRevisionSelectionDialog()
         if dlg.exec() == QDialog.DialogCode.Accepted:
             revisions = dlg.getRevisions()
             if self.diff is None:
-                from .SvnDiffDialog import SvnDiffDialog
-
                 self.diff = SvnDiffDialog(self)
             self.diff.show()
             self.diff.raise_()
@@ -2181,6 +2177,9 @@
 
         @param name file/directory name to be diffed (string)
         """
+        from .SvnDiffDialog import SvnDiffDialog
+        from .SvnUrlSelectionDialog import SvnUrlSelectionDialog
+
         names = name[:] if isinstance(name, list) else [name]
         for nam in names:
             if os.path.isfile(nam):
@@ -2194,14 +2193,10 @@
 
         dname = self.splitPath(names[0])[0]
 
-        from .SvnUrlSelectionDialog import SvnUrlSelectionDialog
-
         dlg = SvnUrlSelectionDialog(self, self.tagsList, self.branchesList, dname)
         if dlg.exec() == QDialog.DialogCode.Accepted:
             urls, summary = dlg.getURLs()
             if self.diff is None:
-                from .SvnDiffDialog import SvnDiffDialog
-
                 self.diff = SvnDiffDialog(self)
             self.diff.show()
             self.diff.raise_()
@@ -2262,12 +2257,14 @@
         @param revisions tuple of two revisions (tuple of strings)
         @exception ValueError raised to indicate an invalid name parameter type
         """
+        from eric7.UI.CompareDialog import CompareDialog
+
+        from .SvnRevisionSelectionDialog import SvnRevisionSelectionDialog
+
         if isinstance(name, list):
             raise ValueError("Wrong parameter type")
 
         if extended:
-            from .SvnRevisionSelectionDialog import SvnRevisionSelectionDialog
-
             dlg = SvnRevisionSelectionDialog()
             if dlg.exec() == QDialog.DialogCode.Accepted:
                 rev1, rev2 = dlg.getRevisions()
@@ -2314,8 +2311,6 @@
                 return
 
         if self.sbsDiff is None:
-            from eric7.UI.CompareDialog import CompareDialog
-
             self.sbsDiff = CompareDialog()
         self.sbsDiff.show()
         self.sbsDiff.raise_()
@@ -2329,9 +2324,9 @@
         @param name file/directory name to show the log of (string)
         @param isFile flag indicating log for a file is to be shown (boolean)
         """
+        from .SvnLogBrowserDialog import SvnLogBrowserDialog
+
         if self.logBrowser is None:
-            from .SvnLogBrowserDialog import SvnLogBrowserDialog
-
             self.logBrowser = SvnLogBrowserDialog(self)
         self.logBrowser.show()
         self.logBrowser.raise_()
@@ -2475,6 +2470,8 @@
 
         @param projectPath path name of the project (string)
         """
+        from .SvnRepoBrowserDialog import SvnRepoBrowserDialog
+
         url = self.svnGetReposName(projectPath) if projectPath else None
         if url is None:
             url, ok = QInputDialog.getText(
@@ -2487,8 +2484,6 @@
                 return
 
         if self.repoBrowser is None:
-            from .SvnRepoBrowserDialog import SvnRepoBrowserDialog
-
             self.repoBrowser = SvnRepoBrowserDialog(self)
         self.repoBrowser.start(url)
         self.repoBrowser.show()

eric ide

mercurial