Put some ownership on a vector.

This commit is contained in:
2025-04-18 16:09:46 -04:00
parent 12812814d4
commit b1854e8db8
3 changed files with 8 additions and 13 deletions

View File

@ -262,8 +262,6 @@ Layout::Layout (Platform *platform, bool limit)
topLevel = NULL;
widgetAtPoint = NULL;
queueResizeList = new typed::Vector<Widget> (4, false);
DBG_OBJ_CREATE ("dw::core::Layout");
bgColor = NULL;
@ -331,7 +329,6 @@ Layout::~Layout ()
topLevel.reset();
}
delete queueResizeList;
delete platform;
delete view;
delete textZone;
@ -383,7 +380,7 @@ void Layout::addWidget (std::unique_ptr< Widget > widget)
widget_p->container = NULL;
DBG_OBJ_SET_PTR_O (widget_p, "container", widget_p->container);
queueResizeList->clear ();
queueResizeList.clear ();
widget_p->notifySetAsTopLevel ();
findtextState.setWidget (widget_p);
@ -404,7 +401,7 @@ void Layout::removeWidget ()
* \bug Some more attributes must be reset here.
*/
topLevel = NULL;
queueResizeList->clear ();
queueResizeList.clear ();
widgetAtPoint = NULL;
canvasWidth = canvasAscent = canvasDescent = 0;
scrollX = scrollY = 0;
@ -887,10 +884,7 @@ void Layout::resizeIdle ()
resizeCounter++;
for (typed::Iterator <Widget> it = queueResizeList->iterator();
it.hasNext (); ) {
Widget *widget = it.getNext ();
for( auto &widget: queueResizeList ) {
if (widget->resizeQueued ()) {
widget->setFlags (Widget::NEEDS_RESIZE);
widget->unsetFlags (Widget::RESIZE_QUEUED);
@ -906,7 +900,7 @@ void Layout::resizeIdle ()
widget->unsetFlags (Widget::EXTREMES_QUEUED);
}
}
queueResizeList->clear ();
queueResizeList.clear ();
// Reset here, since below, queueResize() may be called again.
resizeIdleId = -1;