Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit f00ee56

Browse files
committed
Merge branch 'v1.0.x'
2 parents f19ef03 + 45d81f9 commit f00ee56

1 file changed

Lines changed: 18 additions & 2 deletions

File tree

lib/matplotlib/backends/backend_qt4.py

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,22 @@
2222
except ImportError:
2323
raise ImportError("Qt4 backend requires that PyQt4 is installed.")
2424

25+
import sip
26+
27+
try :
28+
if sip.getapi("QString") > 1 :
29+
# Use new getSaveFileNameAndFilter()
30+
_getSaveFileName = lambda self, msg, start, filters, selectedFilter : \
31+
QtGui.QFileDialog.getSaveFileNameAndFilter(self, \
32+
msg, start, filters, selectedFilter)[0]
33+
else :
34+
# Use old getSaveFileName()
35+
_getSaveFileName = QtGui.QFileDialog.getSaveFileName
36+
except (AttributeError, KeyError) :
37+
# call to getapi() can fail in older versions of sip
38+
# Use the old getSaveFileName()
39+
_getSaveFileName = QtGui.QFileDialog.getSaveFileName
40+
2541
backend_version = "0.9.1"
2642
def fn_name(): return sys._getframe(1).f_code.co_name
2743

@@ -529,8 +545,8 @@ def save_figure(self, *args):
529545
filters.append(filter)
530546
filters = ';;'.join(filters)
531547

532-
fname = QtGui.QFileDialog.getSaveFileName(
533-
self, "Choose a filename to save to", start, filters, selectedFilter)
548+
fname = _getSaveFileName(self, "Choose a filename to save to",
549+
start, filters, selectedFilter)
534550
if fname:
535551
try:
536552
self.canvas.print_figure( unicode(fname) )

0 commit comments

Comments
 (0)