Просмотр исходного кода

- reverted changes in Tools regarding the toggle effect - now they work as expected and added protection against AttributeError that can happen when switching from another tab.

Marius Stanciu 6 лет назад
Родитель
Сommit
ae0706620e

+ 5 - 2
flatcamTools/ToolCalculators.py

@@ -243,8 +243,11 @@ class ToolCalculator(FlatCAMTool):
             if self.app.ui.splitter.sizes()[0] == 0:
                 self.app.ui.splitter.setSizes([1, 1])
             else:
-                if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
-                    self.app.ui.splitter.setSizes([0, 1])
+                try:
+                    if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
+                        self.app.ui.splitter.setSizes([0, 1])
+                except AttributeError:
+                    pass
 
         FlatCAMTool.run(self)
 

+ 5 - 2
flatcamTools/ToolCutOut.py

@@ -287,8 +287,11 @@ class CutOut(FlatCAMTool):
             if self.app.ui.splitter.sizes()[0] == 0:
                 self.app.ui.splitter.setSizes([1, 1])
             else:
-                if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
-                    self.app.ui.splitter.setSizes([0, 1])
+                try:
+                    if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
+                        self.app.ui.splitter.setSizes([0, 1])
+                except AttributeError:
+                    pass
 
         FlatCAMTool.run(self)
         self.set_tool_ui()

+ 5 - 2
flatcamTools/ToolDblSided.py

@@ -277,8 +277,11 @@ class DblSidedTool(FlatCAMTool):
             if self.app.ui.splitter.sizes()[0] == 0:
                 self.app.ui.splitter.setSizes([1, 1])
             else:
-                if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
-                    self.app.ui.splitter.setSizes([0, 1])
+                try:
+                    if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
+                        self.app.ui.splitter.setSizes([0, 1])
+                except AttributeError:
+                    pass
 
         FlatCAMTool.run(self)
         self.set_tool_ui()

+ 5 - 2
flatcamTools/ToolFilm.py

@@ -188,8 +188,11 @@ class Film(FlatCAMTool):
             if self.app.ui.splitter.sizes()[0] == 0:
                 self.app.ui.splitter.setSizes([1, 1])
             else:
-                if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
-                    self.app.ui.splitter.setSizes([0, 1])
+                try:
+                    if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
+                        self.app.ui.splitter.setSizes([0, 1])
+                except AttributeError:
+                    pass
 
         FlatCAMTool.run(self)
 

+ 5 - 2
flatcamTools/ToolImage.py

@@ -155,8 +155,11 @@ class ToolImage(FlatCAMTool):
             if self.app.ui.splitter.sizes()[0] == 0:
                 self.app.ui.splitter.setSizes([1, 1])
             else:
-                if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
-                    self.app.ui.splitter.setSizes([0, 1])
+                try:
+                    if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
+                        self.app.ui.splitter.setSizes([0, 1])
+                except AttributeError:
+                    pass
 
         FlatCAMTool.run(self)
         self.set_tool_ui()

+ 11 - 0
flatcamTools/ToolNonCopperClear.py

@@ -262,6 +262,17 @@ class NonCopperClear(FlatCAMTool, Gerber):
     def run(self, toggle=True):
         self.app.report_usage("ToolNonCopperClear()")
 
+        if toggle:
+            # if the splitter is hidden, display it, else hide it but only if the current widget is the same
+            if self.app.ui.splitter.sizes()[0] == 0:
+                self.app.ui.splitter.setSizes([1, 1])
+            else:
+                try:
+                    if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
+                        self.app.ui.splitter.setSizes([0, 1])
+                except AttributeError:
+                    pass
+
         FlatCAMTool.run(self)
         self.set_tool_ui()
 

+ 5 - 2
flatcamTools/ToolPaint.py

@@ -325,8 +325,11 @@ class ToolPaint(FlatCAMTool, Gerber):
             if self.app.ui.splitter.sizes()[0] == 0:
                 self.app.ui.splitter.setSizes([1, 1])
             else:
-                if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
-                    self.app.ui.splitter.setSizes([0, 1])
+                try:
+                    if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
+                        self.app.ui.splitter.setSizes([0, 1])
+                except AttributeError:
+                    pass
 
         FlatCAMTool.run(self)
         self.set_tool_ui()

+ 5 - 2
flatcamTools/ToolPanelize.py

@@ -221,8 +221,11 @@ class Panelize(FlatCAMTool):
             if self.app.ui.splitter.sizes()[0] == 0:
                 self.app.ui.splitter.setSizes([1, 1])
             else:
-                if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
-                    self.app.ui.splitter.setSizes([0, 1])
+                try:
+                    if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
+                        self.app.ui.splitter.setSizes([0, 1])
+                except AttributeError:
+                    pass
 
         FlatCAMTool.run(self)
         self.set_tool_ui()

+ 5 - 2
flatcamTools/ToolProperties.py

@@ -75,8 +75,11 @@ class Properties(FlatCAMTool):
             if self.app.ui.splitter.sizes()[0] == 0:
                 self.app.ui.splitter.setSizes([1, 1])
             else:
-                if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
-                    self.app.ui.splitter.setSizes([0, 1])
+                try:
+                    if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
+                        self.app.ui.splitter.setSizes([0, 1])
+                except AttributeError:
+                    pass
 
         FlatCAMTool.run(self)
         self.set_tool_ui()

+ 5 - 2
flatcamTools/ToolSolderPaste.py

@@ -434,8 +434,11 @@ class SolderPaste(FlatCAMTool):
             if self.app.ui.splitter.sizes()[0] == 0:
                 self.app.ui.splitter.setSizes([1, 1])
             else:
-                if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
-                    self.app.ui.splitter.setSizes([0, 1])
+                try:
+                    if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
+                        self.app.ui.splitter.setSizes([0, 1])
+                except AttributeError:
+                    pass
 
         FlatCAMTool.run(self)
         self.set_tool_ui()

+ 5 - 2
flatcamTools/ToolTransform.py

@@ -383,8 +383,11 @@ class ToolTransform(FlatCAMTool):
             if self.app.ui.splitter.sizes()[0] == 0:
                 self.app.ui.splitter.setSizes([1, 1])
             else:
-                if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
-                    self.app.ui.splitter.setSizes([0, 1])
+                try:
+                    if self.app.ui.tool_scroll_area.widget().objectName() == self.toolName:
+                        self.app.ui.splitter.setSizes([0, 1])
+                except AttributeError:
+                    pass
 
         FlatCAMTool.run(self)
         self.set_tool_ui()