Commit c0cefa15923440b7d08102e18a219bfc749b32b3

Authored by Thiago Franco de Moraes
1 parent aad0e7da
Exists in phoenix

Dialogs adapted to phoenix

Showing 1 changed file with 170 additions and 94 deletions   Show diff stats
invesalius/gui/dialogs.py
@@ -60,11 +60,17 @@ EVT_MASK_SET = wx.PyEventBinder(myEVT_MASK_SET, 1) @@ -60,11 +60,17 @@ EVT_MASK_SET = wx.PyEventBinder(myEVT_MASK_SET, 1)
60 60
61 class NumberDialog(wx.Dialog): 61 class NumberDialog(wx.Dialog):
62 def __init__(self, message, value=0): 62 def __init__(self, message, value=0):
63 - pre = wx.PreDialog()  
64 - pre.Create(None, -1, "InVesalius 3", size=wx.DefaultSize,  
65 - pos=wx.DefaultPosition,  
66 - style=wx.DEFAULT_DIALOG_STYLE)  
67 - self.PostCreate(pre) 63 + try:
  64 + pre = wx.PreDialog()
  65 + pre.Create(None, -1, "InVesalius 3", size=wx.DefaultSize,
  66 + pos=wx.DefaultPosition,
  67 + style=wx.DEFAULT_DIALOG_STYLE)
  68 + self.PostCreate(pre)
  69 + except AttributeError:
  70 + wx.Dialog.__init__(self)
  71 + self.Create(None, -1, "InVesalius 3", size=wx.DefaultSize,
  72 + pos=wx.DefaultPosition,
  73 + style=wx.DEFAULT_DIALOG_STYLE)
68 74
69 # Static text which contains message to user 75 # Static text which contains message to user
70 label = wx.StaticText(self, -1, message) 76 label = wx.StaticText(self, -1, message)
@@ -110,11 +116,17 @@ class NumberDialog(wx.Dialog): @@ -110,11 +116,17 @@ class NumberDialog(wx.Dialog):
110 class ResizeImageDialog(wx.Dialog): 116 class ResizeImageDialog(wx.Dialog):
111 117
112 def __init__(self):#, message, value=0): 118 def __init__(self):#, message, value=0):
113 - pre = self.pre = wx.PreDialog()  
114 - pre.Create(None, -1, "InVesalius 3", size=wx.DefaultSize,  
115 - pos=wx.DefaultPosition,  
116 - style=wx.DEFAULT_DIALOG_STYLE)  
117 - self.PostCreate(pre) 119 + try:
  120 + pre = self.pre = wx.PreDialog()
  121 + pre.Create(None, -1, "InVesalius 3", size=wx.DefaultSize,
  122 + pos=wx.DefaultPosition,
  123 + style=wx.DEFAULT_DIALOG_STYLE)
  124 + self.PostCreate(pre)
  125 + except AttributeError:
  126 + wx.Dialog.__init__(self)
  127 + self.Create(None, -1, "InVesalius 3", size=wx.DefaultSize,
  128 + pos=wx.DefaultPosition,
  129 + style=wx.DEFAULT_DIALOG_STYLE)
118 130
119 lbl_message = wx.StaticText(self, -1, _("InVesalius is running on a 32-bit operating system or has insufficient memory. \nIf you want to work with 3D surfaces or volume rendering, \nit is recommended to reduce the medical images resolution.")) 131 lbl_message = wx.StaticText(self, -1, _("InVesalius is running on a 32-bit operating system or has insufficient memory. \nIf you want to work with 3D surfaces or volume rendering, \nit is recommended to reduce the medical images resolution."))
120 icon = wx.ArtProvider.GetBitmap(wx.ART_WARNING, wx.ART_MESSAGE_BOX, (32,32)) 132 icon = wx.ArtProvider.GetBitmap(wx.ART_WARNING, wx.ART_MESSAGE_BOX, (32,32))
@@ -512,10 +524,16 @@ def ShowLoadMarkersDialog(): @@ -512,10 +524,16 @@ def ShowLoadMarkersDialog():
512 524
513 class MessageDialog(wx.Dialog): 525 class MessageDialog(wx.Dialog):
514 def __init__(self, message): 526 def __init__(self, message):
515 - pre = wx.PreDialog()  
516 - pre.Create(None, -1, "InVesalius 3", size=(360, 370), pos=wx.DefaultPosition,  
517 - style=wx.DEFAULT_DIALOG_STYLE|wx.ICON_INFORMATION)  
518 - self.PostCreate(pre) 527 + try:
  528 + pre = wx.PreDialog()
  529 + pre.Create(None, -1, "InVesalius 3", size=(360, 370), pos=wx.DefaultPosition,
  530 + style=wx.DEFAULT_DIALOG_STYLE|wx.ICON_INFORMATION)
  531 + self.PostCreate(pre)
  532 + except AttributeError:
  533 + wx.Dialog.__init__(self)
  534 + self.Create(None, -1, "InVesalius 3", size=(360, 370),
  535 + pos=wx.DefaultPosition,
  536 + style=wx.DEFAULT_DIALOG_STYLE|wx.ICON_INFORMATION)
519 537
520 # Static text which contains message to user 538 # Static text which contains message to user
521 label = wx.StaticText(self, -1, message) 539 label = wx.StaticText(self, -1, message)
@@ -554,10 +572,15 @@ class UpdateMessageDialog(wx.Dialog): @@ -554,10 +572,15 @@ class UpdateMessageDialog(wx.Dialog):
554 title=_("Invesalius Update") 572 title=_("Invesalius Update")
555 self.url = url 573 self.url = url
556 574
557 - pre = wx.PreDialog()  
558 - pre.Create(None, -1, title, size=(360, 370), pos=wx.DefaultPosition,  
559 - style=wx.DEFAULT_DIALOG_STYLE|wx.ICON_INFORMATION)  
560 - self.PostCreate(pre) 575 + try:
  576 + pre = wx.PreDialog()
  577 + pre.Create(None, -1, title, size=(360, 370), pos=wx.DefaultPosition,
  578 + style=wx.DEFAULT_DIALOG_STYLE|wx.ICON_INFORMATION)
  579 + self.PostCreate(pre)
  580 + except AttributeError:
  581 + wx.Dialog.__init__(self)
  582 + self.Create(None, -1, title, size=(360, 370), pos=wx.DefaultPosition,
  583 + style=wx.DEFAULT_DIALOG_STYLE|wx.ICON_INFORMATION)
561 584
562 # Static text which contains message to user 585 # Static text which contains message to user
563 label = wx.StaticText(self, -1, msg) 586 label = wx.StaticText(self, -1, msg)
@@ -831,14 +854,19 @@ class NewMask(wx.Dialog): @@ -831,14 +854,19 @@ class NewMask(wx.Dialog):
831 # so we can set an extra style that must be set before 854 # so we can set an extra style that must be set before
832 # creation, and then we create the GUI object using the Create 855 # creation, and then we create the GUI object using the Create
833 # method. 856 # method.
834 - pre = wx.PreDialog()  
835 - pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP)  
836 - pre.Create(parent, ID, title, pos, (500,300), style)  
837 -  
838 - # This next step is the most important, it turns this Python  
839 - # object into the real wrapper of the dialog (instead of pre)  
840 - # as far as the wxPython extension is concerned.  
841 - self.PostCreate(pre) 857 + try:
  858 + pre = wx.PreDialog()
  859 + pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP)
  860 + pre.Create(parent, ID, title, pos, (500,300), style)
  861 +
  862 + # This next step is the most important, it turns this Python
  863 + # object into the real wrapper of the dialog (instead of pre)
  864 + # as far as the wxPython extension is concerned.
  865 + self.PostCreate(pre)
  866 + except AttributeError:
  867 + wx.Dialog.__init__(self)
  868 + self.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP)
  869 + self.Create(parent, ID, title, pos, (500,300), style)
842 870
843 self.CenterOnScreen() 871 self.CenterOnScreen()
844 872
@@ -1104,18 +1132,23 @@ class NewSurfaceDialog(wx.Dialog): @@ -1104,18 +1132,23 @@ class NewSurfaceDialog(wx.Dialog):
1104 import invesalius.data.surface as surface 1132 import invesalius.data.surface as surface
1105 import invesalius.project as prj 1133 import invesalius.project as prj
1106 1134
1107 - # Instead of calling wx.Dialog.__init__ we precreate the dialog  
1108 - # so we can set an extra style that must be set before  
1109 - # creation, and then we create the GUI object using the Create  
1110 - # method.  
1111 - pre = wx.PreDialog()  
1112 - pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP)  
1113 - pre.Create(parent, ID, title, pos, (500,300), style)  
1114 -  
1115 - # This next step is the most important, it turns this Python  
1116 - # object into the real wrapper of the dialog (instead of pre)  
1117 - # as far as the wxPython extension is concerned.  
1118 - self.PostCreate(pre) 1135 + try:
  1136 + # Instead of calling wx.Dialog.__init__ we precreate the dialog
  1137 + # so we can set an extra style that must be set before
  1138 + # creation, and then we create the GUI object using the Create
  1139 + # method.
  1140 + pre = wx.PreDialog()
  1141 + pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP)
  1142 + pre.Create(parent, ID, title, pos, (500,300), style)
  1143 +
  1144 + # This next step is the most important, it turns this Python
  1145 + # object into the real wrapper of the dialog (instead of pre)
  1146 + # as far as the wxPython extension is concerned.
  1147 + self.PostCreate(pre)
  1148 + except AttributeError:
  1149 + wx.Dialog.__init__(self)
  1150 + self.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP)
  1151 + self.Create(parent, ID, title, pos, (500,300), style)
1119 1152
1120 self.CenterOnScreen() 1153 self.CenterOnScreen()
1121 1154
@@ -1313,22 +1346,31 @@ class SurfaceCreationDialog(wx.Dialog): @@ -1313,22 +1346,31 @@ class SurfaceCreationDialog(wx.Dialog):
1313 style=wx.DEFAULT_DIALOG_STYLE, useMetal=False, 1346 style=wx.DEFAULT_DIALOG_STYLE, useMetal=False,
1314 mask_edited=False): 1347 mask_edited=False):
1315 1348
1316 - # Instead of calling wx.Dialog.__init__ we precreate the dialog  
1317 - # so we can set an extra style that must be set before  
1318 - # creation, and then we create the GUI object using the Create  
1319 - # method.  
1320 - pre = wx.PreDialog()  
1321 - pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP)  
1322 - pre.Create(parent, ID, title, pos, (500,300), style)  
1323 -  
1324 - # This extra style can be set after the UI object has been created.  
1325 - if 'wxMac' in wx.PlatformInfo and useMetal:  
1326 - self.SetExtraStyle(wx.DIALOG_EX_METAL)  
1327 -  
1328 - # This next step is the most important, it turns this Python  
1329 - # object into the real wrapper of the dialog (instead of pre)  
1330 - # as far as the wxPython extension is concerned.  
1331 - self.PostCreate(pre) 1349 + try:
  1350 + # Instead of calling wx.Dialog.__init__ we precreate the dialog
  1351 + # so we can set an extra style that must be set before
  1352 + # creation, and then we create the GUI object using the Create
  1353 + # method.
  1354 + pre = wx.PreDialog()
  1355 + pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP)
  1356 + pre.Create(parent, ID, title, pos, (500,300), style)
  1357 +
  1358 + # This extra style can be set after the UI object has been created.
  1359 + if 'wxMac' in wx.PlatformInfo and useMetal:
  1360 + self.SetExtraStyle(wx.DIALOG_EX_METAL)
  1361 +
  1362 + # This next step is the most important, it turns this Python
  1363 + # object into the real wrapper of the dialog (instead of pre)
  1364 + # as far as the wxPython extension is concerned.
  1365 + self.PostCreate(pre)
  1366 + except AttributeError:
  1367 + wx.Dialog.__init__(self)
  1368 + self.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP)
  1369 +
  1370 + if 'wxMac' in wx.PlatformInfo and useMetal:
  1371 + self.SetExtraStyle(wx.DIALOG_EX_METAL)
  1372 +
  1373 + self.Create(parent, ID, title, pos, (500,300), style)
1332 1374
1333 self.CenterOnScreen() 1375 self.CenterOnScreen()
1334 1376
@@ -1625,9 +1667,13 @@ class SurfaceMethodPanel(wx.Panel): @@ -1625,9 +1667,13 @@ class SurfaceMethodPanel(wx.Panel):
1625 1667
1626 class ClutImagedataDialog(wx.Dialog): 1668 class ClutImagedataDialog(wx.Dialog):
1627 def __init__(self, histogram, init, end, nodes=None): 1669 def __init__(self, histogram, init, end, nodes=None):
1628 - pre = wx.PreDialog()  
1629 - pre.Create(wx.GetApp().GetTopWindow(), -1, style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)  
1630 - self.PostCreate(pre) 1670 + try:
  1671 + pre = wx.PreDialog()
  1672 + pre.Create(wx.GetApp().GetTopWindow(), -1, style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
  1673 + self.PostCreate(pre)
  1674 + except AttributeError:
  1675 + wx.Dialog.__init__(self)
  1676 + self.Create(wx.GetApp().GetTopWindow(), -1, style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
1631 1677
1632 self.histogram = histogram 1678 self.histogram = histogram
1633 self.init = init 1679 self.init = init
@@ -1726,9 +1772,13 @@ class WatershedOptionsPanel(wx.Panel): @@ -1726,9 +1772,13 @@ class WatershedOptionsPanel(wx.Panel):
1726 1772
1727 class WatershedOptionsDialog(wx.Dialog): 1773 class WatershedOptionsDialog(wx.Dialog):
1728 def __init__(self, config): 1774 def __init__(self, config):
1729 - pre = wx.PreDialog()  
1730 - pre.Create(wx.GetApp().GetTopWindow(), -1, _(u'Watershed'), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)  
1731 - self.PostCreate(pre) 1775 + try:
  1776 + pre = wx.PreDialog()
  1777 + pre.Create(wx.GetApp().GetTopWindow(), -1, _(u'Watershed'), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
  1778 + self.PostCreate(pre)
  1779 + except AttributeError:
  1780 + wx.Dialog.__init__(self)
  1781 + self.Create(wx.GetApp().GetTopWindow(), -1, _(u'Watershed'), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
1732 1782
1733 self.config = config 1783 self.config = config
1734 1784
@@ -1767,9 +1817,13 @@ class WatershedOptionsDialog(wx.Dialog): @@ -1767,9 +1817,13 @@ class WatershedOptionsDialog(wx.Dialog):
1767 1817
1768 class MaskBooleanDialog(wx.Dialog): 1818 class MaskBooleanDialog(wx.Dialog):
1769 def __init__(self, masks): 1819 def __init__(self, masks):
1770 - pre = wx.PreDialog()  
1771 - pre.Create(wx.GetApp().GetTopWindow(), -1, _(u"Boolean operations"), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT|wx.STAY_ON_TOP)  
1772 - self.PostCreate(pre) 1820 + try:
  1821 + pre = wx.PreDialog()
  1822 + pre.Create(wx.GetApp().GetTopWindow(), -1, _(u"Boolean operations"), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT|wx.STAY_ON_TOP)
  1823 + self.PostCreate(pre)
  1824 + except AttributeError:
  1825 + wx.Dialog.__init__(self)
  1826 + self.Create(wx.GetApp().GetTopWindow(), -1, _(u"Boolean operations"), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT|wx.STAY_ON_TOP)
1773 1827
1774 self._init_gui(masks) 1828 self._init_gui(masks)
1775 self.CenterOnScreen() 1829 self.CenterOnScreen()
@@ -1847,9 +1901,13 @@ class MaskBooleanDialog(wx.Dialog): @@ -1847,9 +1901,13 @@ class MaskBooleanDialog(wx.Dialog):
1847 1901
1848 class ReorientImageDialog(wx.Dialog): 1902 class ReorientImageDialog(wx.Dialog):
1849 def __init__(self): 1903 def __init__(self):
1850 - pre = wx.PreDialog()  
1851 - pre.Create(wx.GetApp().GetTopWindow(), -1, _(u'Image reorientation'), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)  
1852 - self.PostCreate(pre) 1904 + try:
  1905 + pre = wx.PreDialog()
  1906 + pre.Create(wx.GetApp().GetTopWindow(), -1, _(u'Image reorientation'), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
  1907 + self.PostCreate(pre)
  1908 + except AttributeError:
  1909 + wx.Dialog.__init__(self)
  1910 + self.Create(wx.GetApp().GetTopWindow(), -1, _(u'Image reorientation'), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
1853 1911
1854 self._init_gui() 1912 self._init_gui()
1855 self._bind_events() 1913 self._bind_events()
@@ -1914,20 +1972,22 @@ class ImportBitmapParameters(wx.Dialog): @@ -1914,20 +1972,22 @@ class ImportBitmapParameters(wx.Dialog):
1914 from os import sys 1972 from os import sys
1915 1973
1916 def __init__(self): 1974 def __init__(self):
1917 - pre = wx.PreDialog()  
1918 -  
1919 if sys.platform == 'win32': 1975 if sys.platform == 'win32':
1920 size=wx.Size(380,180) 1976 size=wx.Size(380,180)
1921 else: 1977 else:
1922 size=wx.Size(380,210) 1978 size=wx.Size(380,210)
1923 1979
1924 - pre.Create(wx.GetApp().GetTopWindow(), -1, _(u"Create project from bitmap"),size=size,\  
1925 - style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT|wx.STAY_ON_TOP) 1980 + try:
  1981 + pre = wx.PreDialog()
  1982 + pre.Create(wx.GetApp().GetTopWindow(), -1, _(u"Create project from bitmap"),size=size,\
  1983 + style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT|wx.STAY_ON_TOP)
  1984 + self.PostCreate(pre)
  1985 + except AttributeError:
  1986 + wx.Dialog.__init__(self)
  1987 + self.Create(wx.GetApp().GetTopWindow(), -1, _(u"Create project from bitmap"),size=size,\
  1988 + style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT|wx.STAY_ON_TOP)
1926 1989
1927 self.interval = 0 1990 self.interval = 0
1928 -  
1929 - self.PostCreate(pre)  
1930 -  
1931 self._init_gui() 1991 self._init_gui()
1932 1992
1933 self.bind_evts() 1993 self.bind_evts()
@@ -2314,9 +2374,13 @@ class PanelFFillConfidence(wx.Panel): @@ -2314,9 +2374,13 @@ class PanelFFillConfidence(wx.Panel):
2314 2374
2315 class FFillOptionsDialog(wx.Dialog): 2375 class FFillOptionsDialog(wx.Dialog):
2316 def __init__(self, title, config): 2376 def __init__(self, title, config):
2317 - pre = wx.PreDialog()  
2318 - pre.Create(wx.GetApp().GetTopWindow(), -1, title, style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)  
2319 - self.PostCreate(pre) 2377 + try:
  2378 + pre = wx.PreDialog()
  2379 + pre.Create(wx.GetApp().GetTopWindow(), -1, title, style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
  2380 + self.PostCreate(pre)
  2381 + except AttributeError:
  2382 + wx.Dialog.__init__(self)
  2383 + self.Create(wx.GetApp().GetTopWindow(), -1, title, style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
2320 2384
2321 self.config = config 2385 self.config = config
2322 2386
@@ -2424,9 +2488,13 @@ class FFillOptionsDialog(wx.Dialog): @@ -2424,9 +2488,13 @@ class FFillOptionsDialog(wx.Dialog):
2424 2488
2425 class SelectPartsOptionsDialog(wx.Dialog): 2489 class SelectPartsOptionsDialog(wx.Dialog):
2426 def __init__(self, config): 2490 def __init__(self, config):
2427 - pre = wx.PreDialog()  
2428 - pre.Create(wx.GetApp().GetTopWindow(), -1, _(u"Select mask parts"), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)  
2429 - self.PostCreate(pre) 2491 + try:
  2492 + pre = wx.PreDialog()
  2493 + pre.Create(wx.GetApp().GetTopWindow(), -1, _(u"Select mask parts"), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
  2494 + self.PostCreate(pre)
  2495 + except AttributeError:
  2496 + wx.Dialog.__init__(self)
  2497 + self.Create(wx.GetApp().GetTopWindow(), -1, _(u"Select mask parts"), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
2430 2498
2431 self.config = config 2499 self.config = config
2432 2500
@@ -2506,9 +2574,13 @@ class SelectPartsOptionsDialog(wx.Dialog): @@ -2506,9 +2574,13 @@ class SelectPartsOptionsDialog(wx.Dialog):
2506 2574
2507 class FFillSegmentationOptionsDialog(wx.Dialog): 2575 class FFillSegmentationOptionsDialog(wx.Dialog):
2508 def __init__(self, config): 2576 def __init__(self, config):
2509 - pre = wx.PreDialog()  
2510 - pre.Create(wx.GetApp().GetTopWindow(), -1, _(u"Region growing"), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)  
2511 - self.PostCreate(pre) 2577 + try:
  2578 + pre = wx.PreDialog()
  2579 + pre.Create(wx.GetApp().GetTopWindow(), -1, _(u"Region growing"), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
  2580 + self.PostCreate(pre)
  2581 + except AttributeError:
  2582 + wx.Dialog.__init__(self)
  2583 + self.Create(wx.GetApp().GetTopWindow(), -1, _(u"Region growing"), style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
2512 2584
2513 self.config = config 2585 self.config = config
2514 2586
@@ -2682,22 +2754,22 @@ class FFillSegmentationOptionsDialog(wx.Dialog): @@ -2682,22 +2754,22 @@ class FFillSegmentationOptionsDialog(wx.Dialog):
2682 2754
2683 2755
2684 class CropOptionsDialog(wx.Dialog): 2756 class CropOptionsDialog(wx.Dialog):
2685 -  
2686 def __init__(self, config): 2757 def __init__(self, config):
2687 -  
2688 self.config = config 2758 self.config = config
2689 -  
2690 - pre = wx.PreDialog()  
2691 -  
2692 if sys.platform == 'win32': 2759 if sys.platform == 'win32':
2693 size=wx.Size(204,165) 2760 size=wx.Size(204,165)
2694 else: 2761 else:
2695 size=wx.Size(205,180) 2762 size=wx.Size(205,180)
2696 2763
2697 - pre.Create(wx.GetApp().GetTopWindow(), -1, _(u"Crop mask"),\  
2698 - size=size, style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)  
2699 -  
2700 - self.PostCreate(pre) 2764 + try:
  2765 + pre = wx.PreDialog()
  2766 + pre.Create(wx.GetApp().GetTopWindow(), -1, _(u"Crop mask"),\
  2767 + size=size, style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
  2768 + self.PostCreate(pre)
  2769 + except AttributeError:
  2770 + wx.Dialog.__init__(self)
  2771 + self.Create(wx.GetApp().GetTopWindow(), -1, _(u"Crop mask"),\
  2772 + size=size, style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
2701 2773
2702 self._init_gui() 2774 self._init_gui()
2703 #self.config = config 2775 #self.config = config
@@ -2807,9 +2879,13 @@ class CropOptionsDialog(wx.Dialog): @@ -2807,9 +2879,13 @@ class CropOptionsDialog(wx.Dialog):
2807 2879
2808 class FillHolesAutoDialog(wx.Dialog): 2880 class FillHolesAutoDialog(wx.Dialog):
2809 def __init__(self, title): 2881 def __init__(self, title):
2810 - pre = wx.PreDialog()  
2811 - pre.Create(wx.GetApp().GetTopWindow(), -1, title, style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)  
2812 - self.PostCreate(pre) 2882 + try:
  2883 + pre = wx.PreDialog()
  2884 + pre.Create(wx.GetApp().GetTopWindow(), -1, title, style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
  2885 + self.PostCreate(pre)
  2886 + except AttributeError:
  2887 + wx.Dialog.__init__(self)
  2888 + self.Create(wx.GetApp().GetTopWindow(), -1, title, style=wx.DEFAULT_DIALOG_STYLE|wx.FRAME_FLOAT_ON_PARENT)
2813 2889
2814 self._init_gui() 2890 self._init_gui()
2815 2891