8 """ |
8 """ |
9 |
9 |
10 from __future__ import unicode_literals # __IGNORE_WARNING__ |
10 from __future__ import unicode_literals # __IGNORE_WARNING__ |
11 try: |
11 try: |
12 str = unicode |
12 str = unicode |
|
13 import urllib as parse |
13 except (NameError): |
14 except (NameError): |
14 pass |
15 import urllib.parse as parse # __IGNORE_WARNING__ |
15 |
16 |
16 import os |
17 import os |
17 import shutil |
18 import shutil |
18 import re |
19 import re |
19 try: # Py3 |
|
20 import urllib.parse as parse |
|
21 except: |
|
22 import urllib as parse |
|
23 |
20 |
24 from PyQt4.QtCore import QProcess, pyqtSignal, QFileInfo, QFileSystemWatcher |
21 from PyQt4.QtCore import QProcess, pyqtSignal, QFileInfo, QFileSystemWatcher |
25 from PyQt4.QtGui import QApplication, QDialog, QInputDialog |
22 from PyQt4.QtGui import QApplication, QDialog, QInputDialog |
26 |
23 |
27 from E5Gui.E5Application import e5App |
24 from E5Gui.E5Application import e5App |
106 self.repoEditor = None |
103 self.repoEditor = None |
107 self.userEditor = None |
104 self.userEditor = None |
108 self.serveDlg = None |
105 self.serveDlg = None |
109 |
106 |
110 self.bundleFile = None |
107 self.bundleFile = None |
|
108 self.__lastChangeGroupPath = None |
111 |
109 |
112 self.statusCache = {} |
110 self.statusCache = {} |
113 |
111 |
114 self.__commitData = {} |
112 self.__commitData = {} |
115 self.__commitDialog = None |
113 self.__commitDialog = None |
2146 revs, baseRevs, compression, all = dlg.getParameters() |
2144 revs, baseRevs, compression, all = dlg.getParameters() |
2147 |
2145 |
2148 fname, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( |
2146 fname, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( |
2149 None, |
2147 None, |
2150 self.trUtf8("Create changegroup"), |
2148 self.trUtf8("Create changegroup"), |
2151 repodir, |
2149 self.__lastChangeGroupPath or repodir, |
2152 self.trUtf8("Mercurial Changegroup Files (*.hg)"), |
2150 self.trUtf8("Mercurial Changegroup Files (*.hg)"), |
2153 None, |
2151 None, |
2154 E5FileDialog.Options(E5FileDialog.DontConfirmOverwrite)) |
2152 E5FileDialog.Options(E5FileDialog.DontConfirmOverwrite)) |
2155 |
2153 |
2156 if not fname: |
2154 if not fname: |
2209 return |
2208 return |
2210 |
2209 |
2211 file = E5FileDialog.getOpenFileName( |
2210 file = E5FileDialog.getOpenFileName( |
2212 None, |
2211 None, |
2213 self.trUtf8("Preview changegroup"), |
2212 self.trUtf8("Preview changegroup"), |
2214 repodir, |
2213 self.__lastChangeGroupPath or repodir, |
2215 self.trUtf8("Mercurial Changegroup Files (*.hg);;All Files (*)")) |
2214 self.trUtf8("Mercurial Changegroup Files (*.hg);;All Files (*)")) |
2216 if file: |
2215 if file: |
|
2216 self.__lastChangeGroupPath = os.path.dirname(file) |
|
2217 |
2217 if self.getPlugin().getPreferences("UseLogBrowser"): |
2218 if self.getPlugin().getPreferences("UseLogBrowser"): |
2218 from .HgLogBrowserDialog import HgLogBrowserDialog |
2219 from .HgLogBrowserDialog import HgLogBrowserDialog |
2219 self.logBrowser = \ |
2220 self.logBrowser = \ |
2220 HgLogBrowserDialog(self, mode="incoming", bundle=file) |
2221 HgLogBrowserDialog(self, mode="incoming", bundle=file) |
2221 self.logBrowser.show() |
2222 self.logBrowser.show() |
2242 return |
2243 return |
2243 |
2244 |
2244 file = E5FileDialog.getOpenFileName( |
2245 file = E5FileDialog.getOpenFileName( |
2245 None, |
2246 None, |
2246 self.trUtf8("Preview changegroup"), |
2247 self.trUtf8("Preview changegroup"), |
2247 repodir, |
2248 self.__lastChangeGroupPath or repodir, |
2248 self.trUtf8("Mercurial Changegroup Files (*.hg);;All Files (*)")) |
2249 self.trUtf8("Mercurial Changegroup Files (*.hg);;All Files (*)")) |
2249 if file: |
2250 if file: |
|
2251 self.__lastChangeGroupPath = os.path.dirname(file) |
|
2252 |
2250 args = [] |
2253 args = [] |
2251 args.append('identify') |
2254 args.append('identify') |
2252 args.append(file) |
2255 args.append(file) |
2253 |
2256 |
2254 dia = HgDialog(self.trUtf8('Identifying changegroup file'), self) |
2257 dia = HgDialog(self.trUtf8('Identifying changegroup file'), self) |
2275 |
2278 |
2276 res = False |
2279 res = False |
2277 files = E5FileDialog.getOpenFileNames( |
2280 files = E5FileDialog.getOpenFileNames( |
2278 None, |
2281 None, |
2279 self.trUtf8("Apply changegroups"), |
2282 self.trUtf8("Apply changegroups"), |
2280 repodir, |
2283 self.__lastChangeGroupPath or repodir, |
2281 self.trUtf8("Mercurial Changegroup Files (*.hg);;All Files (*)")) |
2284 self.trUtf8("Mercurial Changegroup Files (*.hg);;All Files (*)")) |
2282 if files: |
2285 if files: |
|
2286 self.__lastChangeGroupPath = os.path.dirname(files[0]) |
|
2287 |
2283 update = E5MessageBox.yesNo(self.__ui, |
2288 update = E5MessageBox.yesNo(self.__ui, |
2284 self.trUtf8("Apply changegroups"), |
2289 self.trUtf8("Apply changegroups"), |
2285 self.trUtf8("""Shall the working directory be updated?"""), |
2290 self.trUtf8("""Shall the working directory be updated?"""), |
2286 yesDefault=True) |
2291 yesDefault=True) |
2287 |
2292 |