]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/preferences.h
radiant: ask user to restart the editor when map load switches the brush format
[xonotic/netradiant.git] / radiant / preferences.h
index 59dd60daaa0c6e42633932892511d91fa594429c..8c657fe7251fd80605ad5dd818227a235b5dffe5 100644 (file)
@@ -71,6 +71,12 @@ void appendRadioIcons( const char* name, StringArrayRange icons, Property<int> c
 void appendRadioIcons( const char* name, int& data, StringArrayRange icons ){
        m_dialog.addRadioIcons( m_vbox, name, data, icons );
 }
+ui::Widget appendSpacer( int dimension ){
+       return m_dialog.addSpacer( m_vbox, dimension );
+}
+ui::Widget appendLabel( const char* name, const char* text ){
+       return m_dialog.addLabel( m_vbox, name, text );
+}
 ui::Widget appendEntry( const char* name, Property<int> const &cb ){
        return m_dialog.addIntEntry( m_vbox, name, cb );
 }
@@ -123,6 +129,7 @@ void PreferencesDialog_addDisplayPage( const PreferenceGroupCallback& callback )
 void PreferencesDialog_addSettingsPreferences( const PreferencesPageCallback& callback );
 void PreferencesDialog_addSettingsPage( const PreferenceGroupCallback& callback );
 
+bool PreferencesDialog_isRestartRequired();
 void PreferencesDialog_restartRequired( const char* staticName );
 
 template<typename Value>
@@ -222,6 +229,11 @@ mutable int m_nComboSelect;   ///< intermediate int value for combo in dialog bo
 
 public:
 
+/*!
+  used to no ask for restart when switching game from Gobal Preferences window displayed on startup
+*/
+
+bool onStartup;
 /*!
    those settings are saved in the global prefs file
    I'm too lazy to wrap behind protected access, not sure this needs to be public
@@ -238,6 +250,12 @@ CopiedString m_sGameFile;
    prompt which game to load on startup
  */
 bool m_bGamePrompt;
+/*!
+   when if m_bGamePrompt is true
+   do not prompt at startup which game to load this time, but prompt the next times
+   this is used to not uselessly prompt game after having restarted because user switched game
+ */
+bool m_bSkipGamePromptOnce;
 /*!
    log console to radiant.log
    m_bForceLogConsole is an obscure forced latching situation
@@ -253,6 +271,7 @@ std::list<CGameDescription*> mGames;
 CGameDialog() :
        m_sGameFile( "" ),
        m_bGamePrompt( true ),
+       m_bSkipGamePromptOnce( false ),
        m_bForceLogConsole( false ){
 }
 virtual ~CGameDialog();
@@ -392,6 +411,8 @@ extern preferences_globals_t g_preferences_globals;
 void PreferencesDialog_constructWindow( ui::Window main_window );
 void PreferencesDialog_destroyWindow();
 
+
+void PreferencesDialog_restartIfRequired();
 void PreferencesDialog_showDialog();
 
 void GlobalPreferences_Init();