]> git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/build.cpp
radiant/build: add comment telling MaingFrame_getWindow() is suspicious
[xonotic/netradiant.git] / radiant / build.cpp
index 6462e382ab66aa3f61ccdadb2cfca67fdcead48d..2ff2b83d8c8b6a0d9dafe9660403033f1a924de9 100644 (file)
@@ -76,6 +76,25 @@ void setString( const char* string ){
        m_string = string;
 }
 void evaluate( StringBuffer& output ){
+       // replace ".[ExecutableType]" with "[ExecutableExt]"
+       {
+               StringBuffer output;
+               const char *pattern = ".[ExecutableType]";
+               for ( const char *i = m_string.c_str(); *i != '\0'; ++i )
+               {
+                       if ( strncmp( pattern, i, sizeof( pattern ) ) == 0 )
+                       {
+                               output.push_string("[ExecutableExt]");
+                               i += strlen( pattern ) - 1;
+                       }
+                       else
+                       {
+                               output.push_back(*i);
+                       }
+               }
+               setString(output.c_str());
+       }
+
        StringBuffer variable;
        bool in_variable = false;
        for ( const char* i = m_string.c_str(); *i != '\0'; ++i )
@@ -823,6 +842,12 @@ gboolean commands_key_press( ui::TreeView widget, GdkEventKey* event, ui::ListSt
 ui::Window BuildMenuDialog_construct( ModalDialog& modal, ProjectList& projectList ){
        ui::Window window = MainFrame_getWindow().create_dialog_window("Build Menu", G_CALLBACK(dialog_delete_callback ), &modal, -1, 400 );
 
+       // FIXME: GTK_WIN_POS_CENTER_ON_PARENT must be used instead but does not work
+       // for unknown reason.
+       // It's possible MaingFrame_getWindow() does not return the main window.
+       // It's known the preferences window has same issue when using MaingFrame_getWindow().
+       gtk_window_set_position( window, GTK_WIN_POS_CENTER_ALWAYS );
+
        {
                auto table1 = create_dialog_table( 2, 2, 4, 4, 4 );
                window.add(table1);