source: AE/Installer/trunk/source/aeinstallerapp.cpp @ 356

Last change on this file since 356 was 356, checked in by gumby, 11 years ago
File size: 4.2 KB
Line 
1/////////////////////////////////////////////////////////////////////////////
2// Name:        aeinstallerapp.cpp
3// Purpose:     
4// Author:     
5// Modified by:
6// Created:     07/05/2009 17:23:39
7// RCS-ID:     
8// Copyright:   
9// Licence:     
10/////////////////////////////////////////////////////////////////////////////
11
12#include "boost/filesystem.hpp" // includes all needed Boost.Filesystem declarations
13#include "boost/lexical_cast.hpp" //int -> string
14using namespace boost::filesystem; 
15// For compilers that support precompilation, includes "wx/wx.h".
16#include "wx/wxprec.h"
17
18#ifdef __BORLANDC__
19#pragma hdrstop
20#endif
21
22#ifndef WX_PRECOMP
23#include "wx/wx.h"
24#endif
25
26////@begin includes
27////@end includes
28
29#include "aeinstallerapp.h"
30#include <string>
31
32////@begin XPM images
33////@end XPM images
34
35
36/*
37 * Application instance implementation
38 */
39
40////@begin implement app
41IMPLEMENT_APP( AEInstallerApp )
42////@end implement app
43
44
45/*
46 * AEInstallerApp type definition
47 */
48
49IMPLEMENT_CLASS( AEInstallerApp, wxApp )
50
51
52/*
53 * AEInstallerApp event table definition
54 */
55
56BEGIN_EVENT_TABLE( AEInstallerApp, wxApp )
57
58////@begin AEInstallerApp event table entries
59////@end AEInstallerApp event table entries
60
61END_EVENT_TABLE()
62
63
64/*
65 * Constructor for AEInstallerApp
66 */
67
68AEInstallerApp::AEInstallerApp()
69{
70    Init();
71}
72
73
74/*
75 * Member initialisation
76 */
77
78void AEInstallerApp::Init()
79{
80        ////@begin AEInstallerApp member initialisation
81        ////@end AEInstallerApp member initialisation
82}
83
84/*
85 * Initialisation for AEInstallerApp
86 */
87
88bool AEInstallerApp::OnInit()
89{   
90        ////@begin AEInstallerApp initialisation
91        // Remove the comment markers above and below this block
92        // to make permanent changes to the code.
93       
94#if wxUSE_XPM
95        wxImage::AddHandler(new wxXPMHandler);
96#endif
97#if wxUSE_LIBPNG
98        wxImage::AddHandler(new wxPNGHandler);
99#endif
100#if wxUSE_LIBJPEG
101        wxImage::AddHandler(new wxJPEGHandler);
102#endif
103#if wxUSE_GIF
104        wxImage::AddHandler(new wxGIFHandler);
105#endif
106        MainWindow* mainWindow = new MainWindow( NULL );
107        mainWindow->Show(true);
108        ////@end AEInstallerApp initialisation
109        TheWindow = mainWindow;
110       
111        //anything after this is done after the window appears...
112                if ( !exists("../GameDataFolder") ) {
113                wxMessageDialog* YesNoDialog = new wxMessageDialog(TheWindow,           "You haven't globalized yet! \nYou must globalize to use the Anniversary Edition framework. \nWould you like to globalize now? (This could take a while...)\n(Selecting \"No\" will exit this program...)",  "AE Installer Alert",  wxYES_NO | wxICON_EXCLAMATION       , wxDefaultPosition);
114
115                        if (YesNoDialog->ShowModal() == wxID_NO) { //if the user said no...
116                        TheWindow->Close();
117                }
118                else {
119                        //globalize...
120                }
121        }
122
123        return true;
124}
125
126
127void setStatusArea( string s ) {
128        wxString wxs(s.c_str(), wxConvUTF8);
129       
130        TheWindow->StatusArea->SetStatusText(  wxs );
131        //TheWindow->StatusArea->SetStatusText(s.c_str());
132        //StatusArea->SetStatusText(_(s.c_str()));
133        //(*TheStatusBar)->SetStatusText(_(s.c_str()));
134        //AEInstallerApp::
135        //      TheWindow->StatusArea->SetStatusText("hi");
136        //mainWindow
137        //itemFrame1->StatusArea->SetStatusText(_"lol");
138        //MainWindow.StatusArea->SetStatusText("hi");
139        // class AbstractStatusNotifier { public: virtual void NotifyStatus(const wxString &statusString) = 0; };
140        //class StatusBarStatusNotifier : public AbstractStatusNotifier { wxStatusBar *statusbar; StatusBarStatusNotifier(wxStatusBar *bar) : statusbar(bar) { } ;
141        //void NotifyStatus(const wxString &status) { statusbar->SetStatus(status); } }
142       
143       
144        //MainWindow::StatusArea->
145        //MainWindow::MainWindow().SetSize(MainWindow::MainWindow().GetRect().GetWidth(), MainWindow::MainWindow().GetRect().GetHeight()+1);
146       
147        //MainWindow::StatusBar->SetLabel("Importing Files...");
148        //StatusBar->SetLabel(s);
149        //->SetLabel(s);
150       
151}
152
153
154/*
155 * Cleanup for AEInstallerApp
156 */
157
158int AEInstallerApp::OnExit()
159{   
160        ////@begin AEInstallerApp cleanup
161        return wxApp::OnExit();
162        ////@end AEInstallerApp cleanup
163}
164void doglobalizeData() {
165        //TheWindow->Disable();
166        globalizeData();
167#ifdef WIN32
168        while(1) Sleep(-1);
169#endif
170        //TheWindow->Enable();
171        //setStatusArea((string)"Test1");
172}
Note: See TracBrowser for help on using the repository browser.