X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=src%2Fctsim.cpp;h=d9e3171485af6d47eb45613db6c6cf5cdda06a29;hp=6a1e1117abff5458f4284552796b6ce0e3c86f68;hb=3587fb3fb702a765b16048c88b691d4bbd0fe6fc;hpb=f692b2d39f56ffbafc04283f32233c098aa2978b diff --git a/src/ctsim.cpp b/src/ctsim.cpp index 6a1e111..d9e3171 100644 --- a/src/ctsim.cpp +++ b/src/ctsim.cpp @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: ctsim.cpp,v 1.64 2001/01/31 01:01:22 kevin Exp $ +** $Id: ctsim.cpp,v 1.65 2001/02/02 21:50:18 kevin Exp $ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -70,7 +70,7 @@ #endif #endif -static const char* rcsindent = "$Id: ctsim.cpp,v 1.64 2001/01/31 01:01:22 kevin Exp $"; +static const char* rcsindent = "$Id: ctsim.cpp,v 1.65 2001/02/02 21:50:18 kevin Exp $"; struct option CTSimApp::ctsimOptions[] = { @@ -385,10 +385,21 @@ MainFrame::MainFrame(wxDocManager *manager, wxFrame *frame, wxWindowID id, const MainFrame::~MainFrame() { m_bShuttingDown = true; // Currently used so that Log Window will close + + // delete all non-modified documents + wxList& rListDocs = theApp->getDocManager()->GetDocuments(); + for (wxNode* pNode = rListDocs.GetFirst(); pNode != NULL; pNode = pNode->GetNext()) { + wxDocument* pDoc = static_cast(pNode->GetData()); + if (! pDoc->IsModified()) { + GetDocumentManager()->RemoveDocument(pDoc); + delete pDoc; + } + } + ::wxYield(); if (theApp->getConfig()) - theApp->getDocManager()->FileHistorySave (*theApp->getConfig()); - delete theApp->getDocManager(); - + GetDocumentManager()->FileHistorySave (*theApp->getConfig()); + ::wxYield(); + delete theApp->getDocManager(); } void