]> git.saurik.com Git - wxWidgets.git/blobdiff - demos/forty/forty.cpp
Don't do the wx cleanup if wxPython didn't do the initialization.
[wxWidgets.git] / demos / forty / forty.cpp
index a2a1cd4c5bac2a677fc5947533c0e8302f62668f..43865d88400b47a3bd1221386da32405c389f29b 100644 (file)
 #include "forty.h"
 #include "card.h"
 #include "scoredg.h"
-#ifdef wx_x
-#include "cards.xbm"
-#endif
-
-class FortyFrame: public wxFrame
-{
-public:
-        FortyFrame(wxFrame* frame, char* title, int x, int y, int w, int h,bool largecards);
-       virtual ~FortyFrame();
-
-       void OnCloseWindow(wxCloseEvent& event);
-
-       // Menu callbacks
-       void NewGame(wxCommandEvent& event);
-       void Exit(wxCommandEvent& event);
-       void About(wxCommandEvent& event);
-       void Undo(wxCommandEvent& event);
-       void Redo(wxCommandEvent& event);
-       void Scores(wxCommandEvent& event);
-       void ToggleRightButtonUndo(wxCommandEvent& event);
-       void ToggleHelpingHand(wxCommandEvent& event);
-        void ToggleCardSize(wxCommandEvent& event);
-
-       DECLARE_EVENT_TABLE()
-
-private:
-       enum MenuCommands { NEW_GAME = 10, SCORES, EXIT,
-                                               UNDO, REDO,
-                                                RIGHT_BUTTON_UNDO, HELPING_HAND, LARGE_CARDS,
-                                               ABOUT };
-
-       wxMenuBar*              m_menuBar;
-       FortyCanvas*    m_canvas;
-};
 
 BEGIN_EVENT_TABLE(FortyFrame, wxFrame)
        EVT_MENU(NEW_GAME, FortyFrame::NewGame)
@@ -86,6 +52,20 @@ wxColour* FortyApp::m_backgroundColour = 0;
 wxColour* FortyApp::m_textColour = 0;
 wxBrush*  FortyApp::m_backgroundBrush = 0;
 
+FortyApp::FortyApp()
+{
+}
+
+FortyApp::~FortyApp()
+{
+    delete m_backgroundColour;
+    delete m_textColour;
+    delete m_backgroundBrush;
+    delete Card::m_symbolBmap;
+    delete Card::m_pictureBmap;
+
+}
+
 bool FortyApp::OnInit()
 {
         bool largecards = FALSE;
@@ -106,6 +86,8 @@ bool FortyApp::OnInit()
        // Show the frame
        frame->Show(TRUE);
 
+        frame->GetCanvas()->ShowPlayerDialog();
+
        return TRUE;
 }