ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/Frodo4/Src/main_x.h
(Generate patch)

Comparing Frodo4/Src/main_x.h (file contents):
Revision 1.6 by cebix, 2004-01-14T17:24:19Z vs.
Revision 1.11 by cebix, 2010-04-21T22:03:44Z

# Line 1 | Line 1
1   /*
2   *  main_x.h - Main program, Unix specific stuff
3   *
4 < *  Frodo (C) 1994-1997,2002-2004 Christian Bauer
4 > *  Frodo Copyright (C) Christian Bauer
5   *
6   *  This program is free software; you can redistribute it and/or modify
7   *  it under the terms of the GNU General Public License as published by
# Line 24 | Line 24
24   #include <gnome.h>
25   #endif
26  
27 + // Qtopia Windowing System
28 + #ifdef QTOPIA
29 + extern "C" int main(int argc, char *argv[]);
30 + #include <SDL.h>
31 + #endif
32  
33   extern int init_graphics(void);
34  
35  
36   // Global variables
37 + Frodo *TheApp = NULL;
38   char Frodo::prefs_path[256] = "";
39  
40  
# Line 47 | Line 53 | int main(int argc, char **argv)
53          gettimeofday(&tv, NULL);
54          srand(tv.tv_usec);
55  
56 <        printf("%s by Christian Bauer\n", VERSION_STRING);
56 > #ifndef HAVE_GLADE
57 >        printf(
58 >                "%s Copyright (C) Christian Bauer\n"
59 >                "This is free software with ABSOLUTELY NO WARRANTY.\n"
60 >                , VERSION_STRING
61 >        );
62 > #endif
63          if (!init_graphics())
64                  return 1;
65          fflush(stdout);
66  
67 <        Frodo *the_app = new Frodo();
68 <        the_app->ArgvReceived(argc, argv);
69 <        the_app->ReadyToRun();
70 <        delete the_app;
67 >        TheApp = new Frodo();
68 >        TheApp->ArgvReceived(argc, argv);
69 >        TheApp->ReadyToRun();
70 >        delete TheApp;
71  
72          return 0;
73   }
# Line 86 | Line 98 | void Frodo::ArgvReceived(int argc, char
98   *  Arguments processed, run emulation
99   */
100  
101 < void Frodo::ReadyToRun(void)
101 > void Frodo::ReadyToRun()
102   {
103          getcwd(AppDirPath, 256);
104  
# Line 102 | Line 114 | void Frodo::ReadyToRun(void)
114          ThePrefs.Load(prefs_path);
115  
116          // Show preferences editor
117 <        if (ThePrefs.ShowEditor(true, prefs_path)) {
117 > #ifdef HAVE_GLADE
118 >        if (!ThePrefs.ShowEditor(true, prefs_path))
119 >                return;  // "Quit" clicked
120 > #endif
121  
122 <                // Create and start C64
123 <                TheC64 = new C64;
124 <                load_rom_files();
125 <                TheC64->Run();
126 <                delete TheC64;
112 <        }
122 >        // Create and start C64
123 >        TheC64 = new C64;
124 >        load_rom_files();
125 >        TheC64->Run();
126 >        delete TheC64;
127   }
128  
129  
130 < Prefs *Frodo::reload_prefs(void)
130 > /*
131 > *  Run preferences editor
132 > */
133 >
134 > bool Frodo::RunPrefsEditor(void)
135   {
136 <        static Prefs newprefs;
137 <        newprefs.Load(prefs_path);
138 <        return &newprefs;
136 >        Prefs *prefs = new Prefs(ThePrefs);
137 >        bool result = prefs->ShowEditor(false, prefs_path);
138 >        if (result) {
139 >                TheC64->NewPrefs(prefs);
140 >                ThePrefs = *prefs;
141 >        }
142 >        delete prefs;
143 >        return result;
144   }
145  
146  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines