diff --git a/TermTk/TTkLayouts/layout.py b/TermTk/TTkLayouts/layout.py index 5645da5f..e09d804b 100644 --- a/TermTk/TTkLayouts/layout.py +++ b/TermTk/TTkLayouts/layout.py @@ -231,6 +231,11 @@ class TTkLayout(TTkLayoutItem): self.parentWidget().update(repaint=True, updateLayout=True) def addWidget(self, widget): + ''' Add a widget to this Layout + + :param widget: the widget to be added + :type widget: :class:`~TermTk.TTkWidgets` + ''' self.insertWidget(len(self._items),widget) def insertWidget(self, index, widget): @@ -244,6 +249,11 @@ class TTkLayout(TTkLayoutItem): self._zSortItems() def removeWidget(self, widget): + ''' Remove a widget from this Layout + + :param widget: the widget to be removed + :type widget: :class:`~TermTk.TTkWidgets` + ''' for item in self._items: if item.layoutItemType == TTkK.WidgetItem and \ item.widget() == widget: diff --git a/TermTk/TTkWidgets/splitter.py b/TermTk/TTkWidgets/splitter.py index 6a871e34..6dd354fc 100644 --- a/TermTk/TTkWidgets/splitter.py +++ b/TermTk/TTkWidgets/splitter.py @@ -50,15 +50,15 @@ class TTkSplitter(TTkFrame): self._splitterInitialized = True class _SplitterLayout(TTkLayout): - def addWidget(s, *args, **kwargs): - TTkLayout.addWidget(s, *args, **kwargs) - self._addWidget(*args, **kwargs) + def addWidget(s, widget, size=None): + TTkLayout.addWidget(s, widget) + self._addWidget(size) self.setLayout(_SplitterLayout()) def orientation(self): return self._orientation - def _addWidget(self, widget, size=None): + def _addWidget(self, size=None): _,_,w,h = self.geometry() if self.border(): w-=2 diff --git a/TermTk/TTkWidgets/widget.py b/TermTk/TTkWidgets/widget.py index 5acd4804..5db97b9d 100644 --- a/TermTk/TTkWidgets/widget.py +++ b/TermTk/TTkWidgets/widget.py @@ -159,6 +159,38 @@ class TTkWidget(TMouseEvents,TKeyEvents, TDragEvents): def widgetItem(self): return self._widgetItem + def addWidget(self, widget): + ''' + .. warning:: + Method Deprecated, + + use :class:`TTkWidget` -> :class:`~TermTk.TTkWidgets.widget.TTkWidget.layout` -> :class:`~TermTk.TTkLayouts.layout.TTkLayout.addWidget` + + i.e. + + .. code:: python + + parentWidget.layout().addWidget(childWidget) + ''' + TTkLog.error(".addWidget(...) is deprecated, use .layout().addWidget(...)") + if self.layout(): self.layout().addWidget(widget) + + def removeWidget(self, widget): + ''' + .. warning:: + Method Deprecated, + + use :class:`TTkWidget` -> :class:`~TermTk.TTkWidgets.widget.TTkWidget.layout` -> :class:`~TermTk.TTkLayouts.layout.TTkLayout.removeWidget` + + i.e. + + .. code:: python + + parentWidget.layout().removeWidget(childWidget) + ''' + TTkLog.error(".removeWidget(...) is deprecated, use .layout().removeWidget(...)") + if self.layout(): self.layout().removeWidget(widget) + def paintEvent(self): ''' Paint Event callback, @@ -383,7 +415,13 @@ class TTkWidget(TMouseEvents,TKeyEvents, TDragEvents): #self.layout().setParent(self) self.update(repaint=True, updateLayout=True) - def layout(self): return self._layout.itemAt(0) + def layout(self): + ''' Get the layout + + :return: The layout used + :rtype: :class:`TTkLayout` or derived + ''' + return self._layout.itemAt(0) def rootLayout(self): return self._layout def setParent(self, parent): diff --git a/docs/MDNotes/TODO.md b/docs/MDNotes/TODO.md index 7fdd9545..bb19ec66 100644 --- a/docs/MDNotes/TODO.md +++ b/docs/MDNotes/TODO.md @@ -64,7 +64,7 @@ - [x] Add Grid Layout - [x] Add ColSpan / RowSpan - [x] Get rid of groupMoveTo -- [ ] Get rid of addWidget +- [x] Get rid of addWidget ### AbstractScrollArea - [x] Implement something that mimic the QAbstactScrollArea