Commit 314371db3ef01063e895e05ceab327bc13d836b1
1 parent
26095686
Exists in
ffill_gui
Better gui to ffil fill and remove
Showing
1 changed file
with
86 additions
and
38 deletions
Show diff stats
invesalius/gui/dialogs.py
@@ -1840,6 +1840,66 @@ def BitmapNotSameSize(): | @@ -1840,6 +1840,66 @@ def BitmapNotSameSize(): | ||
1840 | dlg.Destroy() | 1840 | dlg.Destroy() |
1841 | 1841 | ||
1842 | 1842 | ||
1843 | +class PanelTargeFFill(wx.Panel): | ||
1844 | + def __init__(self, parent, ID=-1, style=wx.TAB_TRAVERSAL|wx.NO_BORDER): | ||
1845 | + wx.Panel.__init__(self, parent, ID, style=style) | ||
1846 | + self._init_gui() | ||
1847 | + | ||
1848 | + def _init_gui(self): | ||
1849 | + self.target_2d = wx.RadioButton(self, -1, _(u"2D - Actual slice"), style=wx.RB_GROUP) | ||
1850 | + self.target_3d = wx.RadioButton(self, -1, _(u"3D - All slices")) | ||
1851 | + | ||
1852 | + sizer = wx.GridBagSizer(10) | ||
1853 | + | ||
1854 | + sizer.Add(self.target_2d, (0, 0), (1, 6), flag=wx.LEFT, border=5) | ||
1855 | + sizer.Add(self.target_3d, (1, 0), (1, 6), flag=wx.LEFT, border=5) | ||
1856 | + | ||
1857 | + self.SetSizer(sizer) | ||
1858 | + sizer.Fit(self) | ||
1859 | + self.Layout() | ||
1860 | + | ||
1861 | +class Panel2DConnectivity(wx.Panel): | ||
1862 | + def __init__(self, parent, ID=-1, style=wx.TAB_TRAVERSAL|wx.NO_BORDER): | ||
1863 | + wx.Panel.__init__(self, parent, ID, style=style) | ||
1864 | + self._init_gui() | ||
1865 | + | ||
1866 | + def _init_gui(self): | ||
1867 | + self.conect2D_4 = wx.RadioButton(self, -1, "4", style=wx.RB_GROUP) | ||
1868 | + self.conect2D_8 = wx.RadioButton(self, -1, "8") | ||
1869 | + | ||
1870 | + sizer = wx.GridBagSizer(10) | ||
1871 | + | ||
1872 | + sizer.Add(wx.StaticText(self, -1, _(u"2D Connectivity")), (0, 0), (1, 6), flag=wx.LEFT, border=5) | ||
1873 | + sizer.Add(self.conect2D_4, (1, 0), flag=wx.LEFT, border=7) | ||
1874 | + sizer.Add(self.conect2D_8, (1, 1), flag=wx.LEFT, border=7) | ||
1875 | + | ||
1876 | + self.SetSizer(sizer) | ||
1877 | + sizer.Fit(self) | ||
1878 | + self.Layout() | ||
1879 | + | ||
1880 | + | ||
1881 | +class Panel3DConnectivity(wx.Panel): | ||
1882 | + def __init__(self, parent, ID=-1, style=wx.TAB_TRAVERSAL|wx.NO_BORDER): | ||
1883 | + wx.Panel.__init__(self, parent, ID, style=style) | ||
1884 | + self._init_gui() | ||
1885 | + | ||
1886 | + def _init_gui(self): | ||
1887 | + self.conect3D_6 = wx.RadioButton(self, -1, "6", style=wx.RB_GROUP) | ||
1888 | + self.conect3D_18 = wx.RadioButton(self, -1, "18") | ||
1889 | + self.conect3D_26 = wx.RadioButton(self, -1, "26") | ||
1890 | + | ||
1891 | + sizer = wx.GridBagSizer(5, 5) | ||
1892 | + | ||
1893 | + sizer.Add(wx.StaticText(self, -1, _(u"3D Connectivity")), (0, 0), (1, 6), flag=wx.LEFT, border=5) | ||
1894 | + sizer.Add(self.conect3D_6, (1, 0), flag=wx.LEFT, border=9) | ||
1895 | + sizer.Add(self.conect3D_18, (1, 1), flag=wx.LEFT, border=9) | ||
1896 | + sizer.Add(self.conect3D_26, (1, 2), flag=wx.LEFT, border=9) | ||
1897 | + | ||
1898 | + self.SetSizer(sizer) | ||
1899 | + sizer.Fit(self) | ||
1900 | + self.Layout() | ||
1901 | + | ||
1902 | + | ||
1843 | class FFillOptionsDialog(wx.Dialog): | 1903 | class FFillOptionsDialog(wx.Dialog): |
1844 | def __init__(self, title, config): | 1904 | def __init__(self, title, config): |
1845 | pre = wx.PreDialog() | 1905 | pre = wx.PreDialog() |
@@ -1855,57 +1915,45 @@ class FFillOptionsDialog(wx.Dialog): | @@ -1855,57 +1915,45 @@ class FFillOptionsDialog(wx.Dialog): | ||
1855 | Create the widgets. | 1915 | Create the widgets. |
1856 | """ | 1916 | """ |
1857 | # Target | 1917 | # Target |
1858 | - self.target_2d = wx.RadioButton(self, -1, _(u"2D - Actual slice"), style=wx.RB_GROUP) | ||
1859 | - self.target_3d = wx.RadioButton(self, -1, _(u"3D - All slices")) | 1918 | + self.panel_target = PanelTargeFFill(self, style=wx.SUNKEN_BORDER) |
1860 | 1919 | ||
1861 | if self.config.target == "2D": | 1920 | if self.config.target == "2D": |
1862 | - self.target_2d.SetValue(1) | 1921 | + self.panel_target.target_2d.SetValue(1) |
1863 | else: | 1922 | else: |
1864 | - self.target_3d.SetValue(1) | 1923 | + self.panel_target.target_3d.SetValue(1) |
1865 | 1924 | ||
1866 | # Connectivity 2D | 1925 | # Connectivity 2D |
1867 | - self.conect2D_4 = wx.RadioButton(self, -1, "4", style=wx.RB_GROUP) | ||
1868 | - self.conect2D_8 = wx.RadioButton(self, -1, "8") | 1926 | + self.panel2dcon = Panel2DConnectivity(self, style=wx.SUNKEN_BORDER) |
1869 | 1927 | ||
1870 | if self.config.con_2d == 8: | 1928 | if self.config.con_2d == 8: |
1871 | - self.conect2D_8.SetValue(1) | 1929 | + self.panel2dcon.conect2D_8.SetValue(1) |
1872 | else: | 1930 | else: |
1873 | - self.conect2D_4.SetValue(1) | 1931 | + self.panel2dcon.conect2D_4.SetValue(1) |
1874 | self.config.con_2d = 4 | 1932 | self.config.con_2d = 4 |
1875 | 1933 | ||
1876 | # Connectivity 3D | 1934 | # Connectivity 3D |
1877 | - self.conect3D_6 = wx.RadioButton(self, -1, "6", style=wx.RB_GROUP) | ||
1878 | - self.conect3D_18 = wx.RadioButton(self, -1, "18") | ||
1879 | - self.conect3D_26 = wx.RadioButton(self, -1, "26") | 1935 | + self.panel3dcon = Panel3DConnectivity(self, style=wx.SUNKEN_BORDER) |
1880 | 1936 | ||
1881 | if self.config.con_3d == 18: | 1937 | if self.config.con_3d == 18: |
1882 | - self.conect3D_18.SetValue(1) | 1938 | + self.panel3dcon.conect3D_18.SetValue(1) |
1883 | elif self.config.con_3d == 26: | 1939 | elif self.config.con_3d == 26: |
1884 | - self.conect3D_26.SetValue(1) | 1940 | + self.panel3dcon.conect3D_26.SetValue(1) |
1885 | else: | 1941 | else: |
1886 | - self.conect3D_6.SetValue(1) | 1942 | + self.panel3dcon.conect3D_6.SetValue(1) |
1887 | 1943 | ||
1888 | # Sizer | 1944 | # Sizer |
1889 | - sizer = wx.GridBagSizer(11, 6) | ||
1890 | - sizer.AddStretchSpacer((0, 0)) | ||
1891 | - | ||
1892 | - sizer.Add(wx.StaticText(self, -1, _(u"Parameters")), (1, 0), (1, 6), flag=wx.LEFT, border=7) | ||
1893 | - sizer.Add(self.target_2d, (2, 0), (1, 6), flag=wx.LEFT, border=9) | ||
1894 | - sizer.Add(self.target_3d, (3, 0), (1, 6), flag=wx.LEFT, border=9) | ||
1895 | - | ||
1896 | - sizer.AddStretchSpacer((4, 0)) | ||
1897 | - | ||
1898 | - sizer.Add(wx.StaticText(self, -1, _(u"2D Connectivity")), (5, 0), (1, 6), flag=wx.LEFT, border=9) | ||
1899 | - sizer.Add(self.conect2D_4, (6, 0), flag=wx.LEFT, border=9) | ||
1900 | - sizer.Add(self.conect2D_8, (6, 1), flag=wx.LEFT, border=9) | 1945 | + sizer = wx.BoxSizer(wx.VERTICAL) |
1901 | 1946 | ||
1902 | - sizer.AddStretchSpacer((7, 0)) | 1947 | + sizer.AddSpacer(5) |
1948 | + sizer.Add(wx.StaticText(self, -1, _(u"Parameters")), flag=wx.LEFT, border=5) | ||
1949 | + sizer.AddSpacer(5) | ||
1950 | + sizer.Add(self.panel_target, flag=wx.LEFT|wx.RIGHT|wx.EXPAND, border=7) | ||
1951 | + sizer.AddSpacer(5) | ||
1952 | + sizer.Add(self.panel2dcon, flag=wx.LEFT|wx.RIGHT|wx.EXPAND, border=7) | ||
1953 | + sizer.AddSpacer(5) | ||
1954 | + sizer.Add(self.panel3dcon, flag=wx.LEFT|wx.RIGHT|wx.EXPAND, border=7) | ||
1955 | + sizer.AddSpacer(5) | ||
1903 | 1956 | ||
1904 | - sizer.Add(wx.StaticText(self, -1, _(u"3D Connectivity")), (8, 0), (1, 6), flag=wx.LEFT, border=9) | ||
1905 | - sizer.Add(self.conect3D_6, (9, 0), flag=wx.LEFT, border=9) | ||
1906 | - sizer.Add(self.conect3D_18, (9, 1), flag=wx.LEFT, border=9) | ||
1907 | - sizer.Add(self.conect3D_26, (9, 2), flag=wx.LEFT, border=9) | ||
1908 | - sizer.AddStretchSpacer((10, 0)) | ||
1909 | 1957 | ||
1910 | self.SetSizer(sizer) | 1958 | self.SetSizer(sizer) |
1911 | sizer.Fit(self) | 1959 | sizer.Fit(self) |
@@ -1916,23 +1964,23 @@ class FFillOptionsDialog(wx.Dialog): | @@ -1916,23 +1964,23 @@ class FFillOptionsDialog(wx.Dialog): | ||
1916 | 1964 | ||
1917 | def OnSetRadio(self, evt): | 1965 | def OnSetRadio(self, evt): |
1918 | # Target | 1966 | # Target |
1919 | - if self.target_2d.GetValue(): | 1967 | + if self.panel_target.target_2d.GetValue(): |
1920 | self.config.target = "2D" | 1968 | self.config.target = "2D" |
1921 | else: | 1969 | else: |
1922 | self.config.target = "3D" | 1970 | self.config.target = "3D" |
1923 | 1971 | ||
1924 | # 2D | 1972 | # 2D |
1925 | - if self.conect2D_4.GetValue(): | 1973 | + if self.panel2dcon.conect2D_4.GetValue(): |
1926 | self.config.con_2d = 4 | 1974 | self.config.con_2d = 4 |
1927 | - elif self.conect2D_8.GetValue(): | 1975 | + elif self.panel2dcon.conect2D_8.GetValue(): |
1928 | self.config.con_2d = 8 | 1976 | self.config.con_2d = 8 |
1929 | 1977 | ||
1930 | # 3D | 1978 | # 3D |
1931 | - if self.conect3D_6.GetValue(): | 1979 | + if self.panel3dcon.conect3D_6.GetValue(): |
1932 | self.config.con_3d = 6 | 1980 | self.config.con_3d = 6 |
1933 | - elif self.conect3D_18.GetValue(): | 1981 | + elif self.panel3dcon.conect3D_18.GetValue(): |
1934 | self.config.con_3d = 18 | 1982 | self.config.con_3d = 18 |
1935 | - elif self.conect3D_26.GetValue(): | 1983 | + elif self.panel3dcon.conect3D_26.GetValue(): |
1936 | self.config.con_3d = 26 | 1984 | self.config.con_3d = 26 |
1937 | 1985 | ||
1938 | def OnClose(self, evt): | 1986 | def OnClose(self, evt): |