Matthias: hopefully fixed the mysterious crashes :-)

svn path=/trunk/kdenetwork/kmail/; revision=11067
wilder-work
Matthias Ettrich 28 years ago
parent 1ff1c3798c
commit a80e956f6b
  1. 37
      kmtopwidget.cpp
  2. 8
      kmtopwidget.h

@ -37,30 +37,31 @@ KMTopLevelWidget::~KMTopLevelWidget()
//-----------------------------------------------------------------------------
void KMTopLevelWidget::closeEvent(QCloseEvent* e)
{
KMTopLevelWidgetInherited::closeEvent(e);
if (e->isAccepted())
{
writeConfig();
e->ignore();
//delete this;
}
KMTopLevelWidgetInherited::closeEvent(e);
// if (e->isAccepted())
// {
// writeConfig();
// e->ignore();
// //delete this;
// }
}
//-----------------------------------------------------------------------------
bool KMTopLevelWidget::close(bool aForceKill)
{
static bool rc;
rc = KMTopLevelWidgetInherited::close(aForceKill);
if (!rc) return FALSE;
// bool KMTopLevelWidget::close(bool aForceKill)
// {
// static bool rc;
// rc = KMTopLevelWidgetInherited::close(aForceKill);
// if (!rc) return FALSE;
if (KMTopLevelWidgetInherited::memberList &&
KMTopLevelWidgetInherited::memberList->isEmpty())
kapp->quit();
// if (KMTopLevelWidgetInherited::memberList &&
// KMTopLevelWidgetInherited::memberList->isEmpty())
// kapp->quit();
return TRUE;
}
// return TRUE;
// }
//-----------------------------------------------------------------------------
@ -76,7 +77,7 @@ void KMTopLevelWidget::forEvery(KForEvery func)
{
if (w->inherits("KMTopLevelWidget")) (w->*func)();
}
}
}
}

@ -26,7 +26,7 @@ class KMTopLevelWidget;
// easier declarations of function prototypes for forEvery type functions
typedef void (KMTopLevelWidget::*KForEvery)(void);
/** Top level window that offers methods to be called on every
/** Top level window that offers methods to be called on every
* existing top level window.
*/
#define KMTopLevelWidgetInherited KTMainWindow
@ -48,12 +48,12 @@ public:
virtual void writeConfig(void);
/** Closes the widget and the app if no other top level widget
is opened. Returns TRUE if the widget was closed, otherwise
is opened. Returns TRUE if the widget was closed, otherwise
FALSE. Call with forceKill==TRUE to delete the widget also. */
virtual bool close(bool forceKill=FALSE);
// virtual bool close(bool forceKill=FALSE);
protected:
virtual void closeEvent(QCloseEvent*);
virtual void closeEvent(QCloseEvent*);
};
#endif /*kmtopwidget_h*/

Loading…
Cancel
Save