forked from M-Labs/artiq
29 lines
1.2 KiB
Diff
29 lines
1.2 KiB
Diff
diff --git a/pyqtgraph/dockarea/Dock.py b/pyqtgraph/dockarea/Dock.py
|
|
index 4493d07..a05e685 100644
|
|
--- a/pyqtgraph/dockarea/Dock.py
|
|
+++ b/pyqtgraph/dockarea/Dock.py
|
|
@@ -18,6 +18,7 @@ class Dock(QtGui.QWidget, DockDrop):
|
|
self.label = DockLabel(name, self, closable)
|
|
if closable:
|
|
self.label.sigCloseClicked.connect(self.close)
|
|
+ self.closable = closable
|
|
self.labelHidden = False
|
|
self.moveLabel = True ## If false, the dock is no longer allowed to move the label.
|
|
self.autoOrient = autoOrientation
|
|
diff --git a/pyqtgraph/dockarea/DockArea.py b/pyqtgraph/dockarea/DockArea.py
|
|
index ffe75b6..b054b24 100644
|
|
--- a/pyqtgraph/dockarea/DockArea.py
|
|
+++ b/pyqtgraph/dockarea/DockArea.py
|
|
@@ -306,7 +306,10 @@ class DockArea(Container, QtGui.QWidget, DockDrop):
|
|
def clear(self):
|
|
docks = self.findAll()[1]
|
|
for dock in docks.values():
|
|
- dock.close()
|
|
+ if dock.closable:
|
|
+ dock.close()
|
|
+ else:
|
|
+ self.home.moveDock(dock, "top", None)
|
|
|
|
## PySide bug: We need to explicitly redefine these methods
|
|
## or else drag/drop events will not be delivered.
|