#include #include #include #include #include #include #include #include #include "contacteditor/frmContactEditor.h" #include "frmMain.h" #include "bitmaps.h" #include "version.h" #include "frmActivityMgr.h" #include "frmSearch.h" #include "common/timers.h" #include "common/defaults.h" class XestiaABApp: public wxApp { virtual bool OnInit(); }; IMPLEMENT_APP(XestiaABApp); bool XestiaABApp::OnInit() { // Setup the locale. wxLocale locale; locale.Init(wxLANGUAGE_DEFAULT, wxLOCALE_LOAD_DEFAULT); #if defined(__WIN32__) // Check that the minimum version of Xestia Common Components is installed on the system. #include if (!CheckXCCVersion(1, 0, 0)){ MessageBox(0, L"The version of Xestia Common Components installed is an older version not supported by this version of Xestia Address Book.\n\nPlease visit http://xestia.co.uk/commoncomponents and follow the page instructions to download the version required.", L"Older version of Xestia Common Components installed", MB_OK|MB_ICONSTOP); this->Exit(); } #endif static const wxCmdLineEntryDesc g_cmdLineDesc [] = { { wxCMD_LINE_SWITCH, wxT_2("h"), wxT_2("help"), wxTRANSLATE("Displays help on command line parameters"), wxCMD_LINE_VAL_NONE, wxCMD_LINE_OPTION_HELP }, /*{ wxCMD_LINE_OPTION, wxT_2("e"), wxT_2("edit"), wxTRANSLATE("Edit a vCard 4.0 formatted contact"), wxCMD_LINE_VAL_STRING, wxCMD_LINE_PARAM_OPTIONAL },*/ { wxCMD_LINE_SWITCH, wxT_2("s"), wxT_2("search"), wxTRANSLATE("Display the search window instead of starting normally"), wxCMD_LINE_VAL_NONE, wxCMD_LINE_PARAM_OPTIONAL }, { wxCMD_LINE_SWITCH, wxT_2("v"), wxT_2("version"), wxTRANSLATE("Displays version number"), wxCMD_LINE_VAL_NONE, wxCMD_LINE_PARAM_OPTIONAL }, { wxCMD_LINE_NONE } }; wxString wxSContactFilename; wxCmdLineParser XABArgs (g_cmdLineDesc, argc, argv); XABArgs.Parse(); if (XABArgs.Found(wxT("h"))){ return false; } if (XABArgs.Found(wxT("v"))){ wxPuts(XSDAB_VERSION); exit(0); } wxInitAllImageHandlers(); if (XABArgs.Found(wxT("s"))){ // Open up the search window. frmSearch *frmSearchPtr = new frmSearch( NULL ); frmSearchPtr->Show(true); frmSearchPtr->SetSearchMode(true); return true; } /*if (XABArgs.Found(wxT("e"), &wxSContactFilename)){ Xestia Gelforn Project Repositories - xestiaab/.git/tree - source/vcard/ // Check if the filename exists. //wxImage::AddHandler(new wxPNGHandler); wxFileName contactfile(wxSContactFilename); if (!contactfile.FileExists()){ return false; } curl_global_init(CURL_GLOBAL_ALL); wxMemoryInputStream istream(bigimgs_contactpersonicon48_png, sizeof(bigimgs_contactpersonicon48_png)); wxImage bigimgs_contactpersonicon48i(istream, wxBITMAP_TYPE_PNG); wxBitmap contacticonbmp(bigimgs_contactpersonicon48i, -1); wxIcon contacticon; contacticon.CopyFromBitmap(contacticonbmp); // Get the filename of the selected contact. frmContactEditor *ContactEditor = new frmContactEditor( NULL ); ContactEditor->SetupHeaders(); ContactEditor->LoadContact(wxSContactFilename); //ContactEditor->SetupContact(ActiveAccount); ContactEditor->SetIcon(contacticon); ContactEditor->Show(true); SetTopWindow(ContactEditor); return true; }*/ // Setup default settings and accounts if they don't exist. SetupDirectories(); SetupDefaultSettings(); SetupDefaultAddressBook(); //wxImage::AddHandler(new wxPNGHandler); wxMemoryInputStream istream(bigimgs_appicon48_png, sizeof(bigimgs_appicon_png)); wxImage bigimgs_appicon48i(istream, wxBITMAP_TYPE_PNG); wxBitmap appiconbmp(bigimgs_appicon48i, -1); wxIcon appicon; appicon.CopyFromBitmap(appiconbmp); frmMain *frame = new frmMain( NULL ); frame->Show(true); frmActivityMgr *frameActMgr = new frmActivityMgr ( frame ); frame->SetupPointers(frameActMgr); frame->SetupForm(); frame->SetIcon(appicon); SetTopWindow(frame); return true; }