From 26dc58fb696ac1f96e018fbae7083d1ba2a1a55a Mon Sep 17 00:00:00 2001 From: deva Date: Thu, 4 Sep 2008 12:25:09 +0000 Subject: Made macrowindow clean up proprely when closed (thus terminating dangling db connections through dbwidget). --- client/macrowindow.cc | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'client/macrowindow.cc') diff --git a/client/macrowindow.cc b/client/macrowindow.cc index b0eab65..5ef342d 100644 --- a/client/macrowindow.cc +++ b/client/macrowindow.cc @@ -61,6 +61,21 @@ MacroWindow::MacroWindow(QDomNode &xml_doc) MacroWindow::~MacroWindow() { delete lua; + + QVector< Widget* >::iterator i = widgets.begin(); + while (i != widgets.end()) { + Widget* w = *i; + delete w; + i++; + } + + QVector< Widget* >::iterator j = auxwidgets.begin(); + while (j != auxwidgets.end()) { + Widget* w = *j; + delete w; + j++; + } + } void MacroWindow::initMacro(QDomNode &node) @@ -200,7 +215,7 @@ void MacroWindow::cont(QString name) bool MacroWindow::isClosed() { - return isclosed; + return isclosed || mainwidget->isVisible() == false; } Widget *MacroWindow::getWidget(QString name) -- cgit v1.2.3