diff --git a/CHANGELOG b/CHANGELOG index 64a030d60ab5ce412b0d6f01ffd87cfb35314595..66b01d1cf027d5648cf117b2ecf7950f31815574 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -10,12 +10,18 @@ pyqtgraph-0.9.9 [unreleased] commit will result in a more descriptive version string. - Speed improvements in functions.makeARGB - ImageItem is faster by avoiding makeQImage(transpose=True) + - ComboBox will raise error when adding multiple items of the same name New Features: - New HDF5 example for working with very large datasets - Added Qt.loadUiType function for PySide - Simplified Profilers; can be activated with environmental variables - Added Dock.raiseDock() method + - ComboBox updates: + - Essentially a graphical interface to dict; all items have text and value + - Assigns previously-selected text after list is cleared and repopulated + - Get, set current value + - Added Flowchart.sigChartChanged Bugfixes: - PlotCurveItem now has correct clicking behavior--clicks within a few px diff --git a/pyqtgraph/flowchart/Flowchart.py b/pyqtgraph/flowchart/Flowchart.py index 8d1ea4ce8f9c808b4d819612a647f0a2dc411569..27586040e4c6d88fc3f3933bda74bfae4a37249a 100644 --- a/pyqtgraph/flowchart/Flowchart.py +++ b/pyqtgraph/flowchart/Flowchart.py @@ -58,14 +58,15 @@ def toposort(deps, nodes=None, seen=None, stack=None, depth=0): class Flowchart(Node): - sigFileLoaded = QtCore.Signal(object) sigFileSaved = QtCore.Signal(object) #sigOutputChanged = QtCore.Signal() ## inherited from Node sigChartLoaded = QtCore.Signal() - sigStateChanged = QtCore.Signal() + sigStateChanged = QtCore.Signal() # called when output is expected to have changed + sigChartChanged = QtCore.Signal(object, object, object) # called when nodes are added, removed, or renamed. + # (self, action, node) def __init__(self, terminals=None, name=None, filePath=None, library=None): self.library = library or LIBRARY @@ -218,6 +219,7 @@ class Flowchart(Node): node.sigClosed.connect(self.nodeClosed) node.sigRenamed.connect(self.nodeRenamed) node.sigOutputChanged.connect(self.nodeOutputChanged) + self.sigChartChanged.emit(self, 'add', node) def removeNode(self, node): node.close() @@ -237,11 +239,13 @@ class Flowchart(Node): node.sigOutputChanged.disconnect(self.nodeOutputChanged) except TypeError: pass + self.sigChartChanged.emit(self, 'remove', node) def nodeRenamed(self, node, oldName): del self._nodes[oldName] self._nodes[node.name()] = node self.widget().nodeRenamed(node, oldName) + self.sigChartChanged.emit(self, 'rename', node) def arrangeNodes(self): pass