int scr_restore(const char *filename) { int rval = ERR; if( stdscr) { FILE *ifile = fopen( filename, "rb"); if( ifile) { rval = read_window( stdscr, ifile); fclose( ifile); } } return( rval); }
BOOL CFREDApp::InitInstance() { // disable the debug memory stuff _CrtSetDbgFlag(~(_CRTDBG_ALLOC_MEM_DF) & _CrtSetDbgFlag(_CRTDBG_REPORT_FLAG)); // Standard initialization // If you are not using these features and wish to reduce the size // of your final executable, you should remove from the following // the specific initialization routines you do not need. #ifdef _AFXDLL Enable3dControls(); // Call this when using MFC in a shared DLL #else Enable3dControlsStatic(); // Call this when linking to MFC statically #endif LoadStdProfileSettings(9); // Load standard INI file options (including MRU) User_interface = GetProfileInt("Preferences", "User interface", User_interface); Show_stars = GetProfileInt("Preferences", "Show stars", Show_stars); Show_grid_positions = GetProfileInt("Preferences", "Show grid positions", Show_grid_positions); Show_coordinates = GetProfileInt("Preferences", "Show coordinates", Show_coordinates); Show_compass = GetProfileInt("Preferences", "Show compass", Show_compass); Show_ship_models = GetProfileInt("Preferences", "Show ship models", Show_ship_models); Show_ship_info = GetProfileInt("Preferences", "Show ship info", Show_ship_info); Show_outlines = GetProfileInt("Preferences", "Show outlines", Show_outlines); Show_waypoints = GetProfileInt("Preferences", "Show waypoints", Show_waypoints); Show_sexp_help = GetProfileInt("Preferences", "Show sexp help", Show_sexp_help); physics_speed = GetProfileInt("Preferences", "Physics speed", physics_speed); physics_rot = GetProfileInt("Preferences", "Physics rotation", physics_rot); Hide_ship_cues = GetProfileInt("Preferences", "Hide ship cues", Hide_ship_cues); Hide_wing_cues = GetProfileInt("Preferences", "Hide wing cues", Hide_wing_cues); Autosave_disabled = GetProfileInt("Preferences", "Autosave disabled", Autosave_disabled); double_fine_gridlines = GetProfileInt("Preferences", "Double fine gridlines", double_fine_gridlines); Aa_gridlines = GetProfileInt("Preferences", "Anti aliased gridlines", Aa_gridlines); Show_dock_points = GetProfileInt("Preferences", "Show dock points", Show_dock_points); Show_paths_fred = GetProfileInt("Preferences", "Show paths", Show_paths_fred); read_window("Main window", &Main_wnd_data); read_window("Ship window", &Ship_wnd_data); read_window("Wing window", &Wing_wnd_data); read_window("Waypoint window", &Waypoint_wnd_data); read_window("Object window", &Object_wnd_data); read_window("Mission goals window", &Mission_goals_wnd_data); read_window("Messages window", &Messages_wnd_data); read_window("Player window", &Player_wnd_data); read_window("Events window", &Events_wnd_data); read_window("Bg window", &Bg_wnd_data); read_window("Briefing window", &Briefing_wnd_data); read_window("Reinforcement window", &Reinforcement_wnd_data); read_window("Starfield window", &Starfield_wnd_data); read_window("Asteroid window", &Asteroid_wnd_data); read_window("Mission notes window", &Mission_notes_wnd_data); write_ini_file(1); // Register the application's document templates. Document templates // serve as the connection between documents, frame windows and views. CSingleDocTemplate* pDocTemplate; pDocTemplate = new CSingleDocTemplate( IDR_MAINFRAME, RUNTIME_CLASS(CFREDDoc), RUNTIME_CLASS(CMainFrame), // main SDI frame window RUNTIME_CLASS(CFREDView)); AddDocTemplate(pDocTemplate); // Enable DDE Execute open EnableShellOpen(); RegisterShellFileTypes(TRUE); // setup the fred exe directory so CFILE can init properly /* c = GetCommandLine(); Assert(c != NULL); if(c == NULL){ return FALSE; } tok = strtok(c, " \n"); Assert(tok != NULL); if(tok == NULL){ return FALSE; } // Fred_exe_dir = strdup(c); strcpy(Fred_exe_dir, tok); */ strcpy(Fred_exe_dir, __argv[0]); // Parse command line for standard shell commands, DDE, file open CCommandLineInfo cmdInfo; ParseCommandLine(cmdInfo); m_nCmdShow = Main_wnd_data.p.showCmd; OnFileNew(); // Enable drag/drop open m_pMainWnd->DragAcceptFiles(); h_cursor_move = LoadCursor(IDC_CURSOR1); h_cursor_rotate = LoadCursor(IDC_CURSOR2); return TRUE; }