Develop and Download Open Source Software

Browse CVS Repository

Diff of /malonnote/main.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.1.1.1 by maloninc, Thu Jul 28 03:25:05 2005 UTC revision 1.10 by maloninc, Tue Oct 24 08:52:04 2006 UTC
# Line 3  Line 3 
3  #include <wx/wx.h>  #include <wx/wx.h>
4  #include <wx/image.h>  #include <wx/image.h>
5  #include <wx/snglinst.h>  #include <wx/snglinst.h>
6    #include <wx/xrc/xmlres.h>
7    #include "mnDef.h"
8  #include "mnFrame.h"  #include "mnFrame.h"
9  #include "mnController.h"  #include "mnFrameController.h"
10    
11  #define MY_APP  "MalonNote"  extern void InitXmlResource(); // defined in mnResource.cpp generated by wxrc
12    
13  class mnApp: public wxApp {  class mnApp: public wxApp {
14  public:  public:
# Line 20  private: Line 22  private:
22    
23  IMPLEMENT_APP(mnApp)  IMPLEMENT_APP(mnApp)
24    
25  static wxLocale locale(wxLANGUAGE_DEFAULT);  //static wxLocale locale(wxLANGUAGE_DEFAULT);
26    
27  bool mnApp::OnInit()  bool mnApp::OnInit()
28  {  {
29            wxString* dirName = new wxString();
30          const wxString appName = wxString::Format(wxT(MY_APP) wxT("-%s"), wxGetUserId().c_str());          wxString* fastSearchOpt = new wxString();
31            wxString gotDirName;
32            wxDirDialog* dlg;
33            wxString confKey;
34            
35            const wxString appName = wxString::Format(wxT(MN_APP_NAME) wxT("-%s"), wxGetUserId().c_str());
36    
37      m_checker = new wxSingleInstanceChecker(appName);      m_checker = new wxSingleInstanceChecker(appName);
38      if ( m_checker->IsAnotherRunning() ){      if ( m_checker->IsAnotherRunning() ){
# Line 35  bool mnApp::OnInit() Line 42  bool mnApp::OnInit()
42      }      }
43    
44      wxInitAllImageHandlers();      wxInitAllImageHandlers();
45      mainFrame = new mnFrame(0, -1, wxT(""));          wxXmlResource::Get()->InitAllHandlers();
46            InitXmlResource();
47    
48        mainFrame = new mnFrame(0);
49    
50          /* set controller object as event handler */          /* set controller object as event handler */
51          mnController* controller = new mnController(mainFrame);          mnFrameController* controller = new mnFrameController(mainFrame);
52          mainFrame->PushEventHandler(controller);          mainFrame->PushEventHandler(controller);
53    
54      SetTopWindow(mainFrame);      SetTopWindow(mainFrame);
55      mainFrame->Show();      mainFrame->Show();
56            
57            /* add note panel */
58            wxConfig* config = new wxConfig(wxT(CONF_APP_NAME));
59            if(config->Read(wxT(CONF_WIKI_DIR), dirName) == FALSE) {
60                    delete dirName;
61                    dlg = new wxDirDialog(mainFrame);
62                    if(dlg->ShowModal() == wxID_OK) {
63                            gotDirName = dlg->GetPath();
64                            config->Write(wxT(CONF_WIKI_DIR), gotDirName.c_str());
65                            mainFrame->addNotePanel(&gotDirName);
66                    }
67                    else {
68                            mainFrame->Close();
69                    }
70            }
71            else {
72                    mainFrame->addNotePanel(dirName);
73    
74                    for(int i = 1; ;i++) {
75                            confKey.sprintf(wxT(CONF_WIKI_DIR) "%d", i);
76                            if(config->Read(confKey.c_str(), dirName) == FALSE) break;
77                            mainFrame->addNotePanel(dirName);
78                    }
79                    mainFrame->getNotebook()->SetSelection(0);
80            }
81    
82            /* check Fast Search option */
83            wxMenuItem* mItem = mainFrame->GetMenuBar()->FindItem(XRCID("FastSearch"));
84            if(config->Read(wxT(CONF_FAST_SEARCH_OPT), fastSearchOpt) == FALSE) {
85                    mItem->Check(true);
86            }
87            else{
88                    if( fastSearchOpt->Contains(wxT(MN_ENABLE_FAST_SEARCH)) ) {
89                            mItem->Check(true);
90                    }
91                    else {
92                            mItem->Check(false);
93                    }
94            }
95    
96            delete config;
97    
98            mainFrame->setFocusToSearchTextCtrl();
99      return true;      return true;
100  }  }
101    

Legend:
Removed from v.1.1.1.1  
changed lines
  Added in v.1.10

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26