Changeset a9cae9a52e7a…
Parent e32407c7a099…
by
Changes to 5 files · Browse files at a9cae9a52e7a Showing diff from parent e32407c7a099 Diff from another changeset...
@@ -477,7 +477,7 @@ wfile = util.localpath(self.curfile)
wfile, ext = os.path.splitext(os.path.basename(wfile))
filename = "%s@%d%s" % (wfile, self.currev, ext)
- fd = gdialog.NativeSaveFileDialogWrapper(Title = "Save file to",
+ fd = gtklib.NativeSaveFileDialogWrapper(Title = "Save file to",
InitialDir=self.cwd,
FileName=filename)
result = fd.run()
|
@@ -509,63 +509,3 @@ thread.setDaemon(True)
thread.start()
-class NativeSaveFileDialogWrapper:
- """Wrap the windows file dialog, or display default gtk dialog if
- that isn't available"""
- def __init__(self, InitialDir = None, Title = _('Save File'),
- Filter = {"All files": "*.*"}, FilterIndex = 1, FileName = ''):
- if InitialDir == None:
- InitialDir = os.path.expanduser("~")
- self.InitialDir = InitialDir
- self.FileName = FileName
- self.Title = Title
- self.Filter = Filter
- self.FilterIndex = FilterIndex
-
- def run(self):
- """run the file dialog, either return a file name, or False if
- the user aborted the dialog"""
- try:
- import win32gui, win32con
- return self.runWindows()
- except ImportError:
- return self.runCompatible()
-
- def runWindows(self):
- import win32gui, win32con
- fname, customfilter, flags=win32gui.GetSaveFileNameW(
- InitialDir=self.InitialDir,
- Flags=win32con.OFN_EXPLORER,
- File=self.FileName,
- DefExt='py',
- Title=self.Title,
- Filter="",
- CustomFilter="",
- FilterIndex=1)
- if fname:
- return fname
- else:
- return False
-
- def runCompatible(self):
- file_save = gtk.FileChooserDialog(self.Title,None,
- gtk.FILE_CHOOSER_ACTION_SAVE
- , (gtk.STOCK_CANCEL
- , gtk.RESPONSE_CANCEL
- , gtk.STOCK_SAVE
- , gtk.RESPONSE_OK))
- file_save.set_do_overwrite_confirmation(True)
- file_save.set_default_response(gtk.RESPONSE_OK)
- file_save.set_current_folder(self.InitialDir)
- file_save.set_current_name(self.FileName)
- for name, pattern in self.Filter.iteritems():
- fi = gtk.FileFilter()
- fi.set_name(name)
- fi.add_pattern(pattern)
- file_save.add_filter(fi)
- if file_save.run() == gtk.RESPONSE_OK:
- result = file_save.get_filename();
- else:
- result = False
- file_save.destroy()
- return result
|
@@ -168,3 +168,64 @@ self._image = image
self._image_frame.add(self._image)
self._image.show()
+
+class NativeSaveFileDialogWrapper:
+ """Wrap the windows file dialog, or display default gtk dialog if
+ that isn't available"""
+ def __init__(self, InitialDir = None, Title = _('Save File'),
+ Filter = {"All files": "*.*"}, FilterIndex = 1, FileName = ''):
+ if InitialDir == None:
+ InitialDir = os.path.expanduser("~")
+ self.InitialDir = InitialDir
+ self.FileName = FileName
+ self.Title = Title
+ self.Filter = Filter
+ self.FilterIndex = FilterIndex
+
+ def run(self):
+ """run the file dialog, either return a file name, or False if
+ the user aborted the dialog"""
+ try:
+ import win32gui, win32con
+ return self.runWindows()
+ except ImportError:
+ return self.runCompatible()
+
+ def runWindows(self):
+ import win32gui, win32con
+ fname, customfilter, flags=win32gui.GetSaveFileNameW(
+ InitialDir=self.InitialDir,
+ Flags=win32con.OFN_EXPLORER,
+ File=self.FileName,
+ DefExt='py',
+ Title=self.Title,
+ Filter="",
+ CustomFilter="",
+ FilterIndex=1)
+ if fname:
+ return fname
+ else:
+ return False
+
+ def runCompatible(self):
+ file_save = gtk.FileChooserDialog(self.Title,None,
+ gtk.FILE_CHOOSER_ACTION_SAVE
+ , (gtk.STOCK_CANCEL
+ , gtk.RESPONSE_CANCEL
+ , gtk.STOCK_SAVE
+ , gtk.RESPONSE_OK))
+ file_save.set_do_overwrite_confirmation(True)
+ file_save.set_default_response(gtk.RESPONSE_OK)
+ file_save.set_current_folder(self.InitialDir)
+ file_save.set_current_name(self.FileName)
+ for name, pattern in self.Filter.iteritems():
+ fi = gtk.FileFilter()
+ fi.set_name(name)
+ fi.add_pattern(pattern)
+ file_save.add_filter(fi)
+ if file_save.run() == gtk.RESPONSE_OK:
+ result = file_save.get_filename();
+ else:
+ result = False
+ file_save.destroy()
+ return result
|
@@ -566,7 +566,7 @@
filename = "%s_rev%d_to_rev%s.hg" % (os.path.basename(self.repo.root),
revs[0], revs[1])
- result = NativeSaveFileDialogWrapper(Title=_('Write bundle to'),
+ result = gtklib.NativeSaveFileDialogWrapper(Title=_('Write bundle to'),
InitialDir=self.repo.root,
FileName=filename).run()
if result:
@@ -611,7 +611,7 @@ def _export_patch(self, menuitem):
rev = self.currow[treemodel.REVID]
filename = "%s_rev%s.patch" % (os.path.basename(self.repo.root), rev)
- fd = NativeSaveFileDialogWrapper(Title=_('Save patch to'),
+ fd = gtklib.NativeSaveFileDialogWrapper(Title=_('Save patch to'),
InitialDir=self.repo.root,
FileName=filename)
result = fd.run()
@@ -642,7 +642,7 @@ except (ValueError, hglib.LookupError):
return
filename = "%s_rev%d_to_tip.hg" % (os.path.basename(self.repo.root), rev)
- result = NativeSaveFileDialogWrapper(Title=_('Write bundle to'),
+ result = gtklib.NativeSaveFileDialogWrapper(Title=_('Write bundle to'),
InitialDir=self.repo.root,
FileName=filename).run()
if result:
|
@@ -1038,7 +1038,7 @@ 'Write selected diff hunks to a patch file'
revrange = self.opts.get('rev')[0]
filename = "%s.patch" % revrange.replace(':', '_to_')
- fd = gdialog.NativeSaveFileDialogWrapper(Title=_('Save patch to'),
+ fd = gtklib.NativeSaveFileDialogWrapper(Title=_('Save patch to'),
InitialDir=self.repo.root,
FileName=filename)
result = fd.run()
|
Loading...