MDApp::MDApp ( int* argc, char* argv[], JBoolean* displayAbout, JString* prevVersStr ) : JXApplication(argc, argv, kAppSignature, kMDDefaultStringData) { *displayAbout = MDCreateGlobals(this); if (!*displayAbout) { *prevVersStr = (MDGetPrefsManager())->GetPrevVersionStr(); if (*prevVersStr == MDGetVersionNumberStr()) { prevVersStr->Clear(); } else { *displayAbout = kJTrue; } } else { prevVersStr->Clear(); } }
int main ( int argc, char* argv[] ) { ParseTextOptions(argc, argv); #ifdef USE_MDI if (!MDMDIServer::WillBeMDIServer(MDApp::GetAppSignature(), argc, argv)) { return 0; } #endif JBoolean displayAbout; JString prevVersStr; MDApp* app = new MDApp(&argc, argv, &displayAbout, &prevVersStr); assert( app != NULL ); if (displayAbout && !(JGetUserNotification())->AcceptLicense()) { return 0; } JCheckForNewerVersion(MDGetPrefsManager(), kMDVersionCheckID); (MDGetMDIServer())->HandleCmdLineOptions(argc, argv); // You may want to create all directors inside HandleCmdLineOptions() MDMainDirector* dir = new MDMainDirector(app); assert( dir != NULL ); dir->Activate(); if (displayAbout) { app->DisplayAbout(prevVersStr); } app->Run(); return 0; }