Further changes to make mfctest work.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1601 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
1999-02-04 22:06:15 +00:00
parent 1cb8b1ec05
commit f5e5bd6607
2 changed files with 16 additions and 21 deletions

View File

@@ -74,8 +74,6 @@ class MyApp: public wxApp
wxFrame *CreateFrame(void);
};
DECLARE_APP(MyApp)
class MyCanvas: public wxScrolledWindow
{
public:
@@ -104,10 +102,6 @@ DECLARE_EVENT_TABLE()
long xpos = -1;
long ypos = -1;
// Initialise this in OnInit, not statically
wxPen *red_pen;
wxFont *small_font;
// ID for the menu quit command
#define HELLO_QUIT 1
#define HELLO_NEW 2
@@ -219,6 +213,8 @@ BOOL CTheApp::InitInstance()
int CTheApp::ExitInstance()
{
// OnExit isn't called by CleanUp so must be called explicitly.
wxTheApp->OnExit();
wxApp::CleanUp();
return CWinApp::ExitInstance();
@@ -252,12 +248,6 @@ bool MyApp::OnInit(void)
// Don't exit app when the top level frame is deleted
// SetExitOnFrameDelete(FALSE);
// Create a red pen
red_pen = new wxPen("RED", 3, wxSOLID);
// Create a small font
small_font = new wxFont(10, wxSWISS, wxNORMAL, wxNORMAL);
wxFrame* frame = CreateFrame();
return TRUE;
}
@@ -289,8 +279,7 @@ wxFrame *MyApp::CreateFrame(void)
subframe->GetClientSize(&width, &height);
MyCanvas *canvas = new MyCanvas(subframe, wxPoint(0, 0), wxSize(width, height));
wxCursor *cursor = new wxCursor(wxCURSOR_PENCIL);
canvas->SetCursor(*cursor);
canvas->SetCursor(wxCursor(wxCURSOR_PENCIL));
subframe->canvas = canvas;
// Give it scrollbars
@@ -317,7 +306,7 @@ void MyCanvas::OnPaint(wxPaintEvent& event)
{
wxPaintDC dc(this);
dc.SetFont(* small_font);
dc.SetFont(* wxSWISS_FONT);
dc.SetPen(* wxGREEN_PEN);
dc.DrawLine(0, 0, 200, 200);
dc.DrawLine(200, 0, 0, 200);

View File

@@ -445,6 +445,15 @@ void wxApp::ConvertToStandardCommandArgs(char* lpCmdLine)
void wxApp::CleanUp()
{
//// COMMON CLEANUP
// flush the logged messages if any
wxLog *pLog = wxLog::GetActiveTarget();
if ( pLog != NULL && pLog->HasPendingMessages() )
pLog->Flush();
// One last chance for pending objects to be cleaned up
wxTheApp->DeletePendingObjects();
wxModule::CleanUpModules();
#if wxUSE_WX_RESOURCES
@@ -608,6 +617,9 @@ int wxEntry(WXHINSTANCE hInstance,
{
retValue = wxTheApp->OnRun();
}
else
// We want to initialize, but not run or exit immediately.
return 1;
}
//else: app initialization failed, so we skipped OnRun()
@@ -630,12 +642,6 @@ int wxEntry(WXHINSTANCE hInstance,
wxTheApp->OnExit();
// flush the logged messages if any
wxLog *pLog = wxLog::GetActiveTarget();
if ( pLog != NULL && pLog->HasPendingMessages() )
pLog->Flush();
wxApp::CleanUp();
return retValue;