]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - contrib/bobtoolz/dialogs/dialogs-gtk.cpp
Merge commit 'c845c5cd8f427d39665d6a8b1f6eeff401370d80' into garux-merge
[xonotic/netradiant.git] / contrib / bobtoolz / dialogs / dialogs-gtk.cpp
index 9329f306a2817e7823d6e95fb456ee9e310861b3..ad4446795e45386b418ad7f697df927d55ccefe4 100644 (file)
@@ -28,6 +28,8 @@
 #include "../lists.h"
 #include "../misc.h"
 
+#include "../bobToolz-GTK.h"
+
 
 /*--------------------------------
         Callback Functions
@@ -210,6 +212,7 @@ EMessageBoxReturn DoMessageBox( const char* lpText, const char* lpCaption, EMess
        int loop = 1;
 
        auto window = ui::Window( ui::window_type::TOP );
+       gtk_window_set_transient_for( GTK_WINDOW( window ), GTK_WINDOW( g_pRadiantWnd ) );
        window.connect( "delete_event", G_CALLBACK( dialog_delete_callback ), NULL );
        window.connect( "destroy", G_CALLBACK( gtk_widget_destroy ), NULL );
        gtk_window_set_title( window, lpCaption );
@@ -293,7 +296,7 @@ EMessageBoxReturn DoMessageBox( const char* lpText, const char* lpCaption, EMess
                ret = eIDNO;
        }
 
-       gtk_window_set_position( window, GTK_WIN_POS_CENTER );
+       gtk_window_set_position( GTK_WINDOW( window ),GTK_WIN_POS_CENTER_ON_PARENT );
        window.show();
        gtk_grab_add( window );
 
@@ -404,6 +407,7 @@ EMessageBoxReturn DoPolygonBox( PolygonRS* rs ){
        int loop = 1;
 
        auto window = ui::Window( ui::window_type::TOP );
+       gtk_window_set_transient_for( GTK_WINDOW( window ), GTK_WINDOW( g_pRadiantWnd ) );
 
        window.connect( "delete_event", G_CALLBACK( dialog_delete_callback ), NULL );
        window.connect( "destroy", G_CALLBACK( gtk_widget_destroy ), NULL );
@@ -525,7 +529,8 @@ EMessageBoxReturn DoPolygonBox( PolygonRS* rs ){
 
        // ---- /vbox ----
 
-       gtk_window_set_position( window, GTK_WIN_POS_CENTER );
+       gtk_window_set_position( GTK_WINDOW( window ),GTK_WIN_POS_CENTER_ON_PARENT );
+       gtk_window_set_modal( GTK_WINDOW( window ), TRUE );
        window.show();
        gtk_grab_add( window );
 
@@ -1274,6 +1279,8 @@ EMessageBoxReturn DoResetTextureBox( ResetTextureRS* rs ){
        int loop = 1;
 
        auto window = ui::Window( ui::window_type::TOP );
+       gtk_window_set_transient_for( GTK_WINDOW( window ), GTK_WINDOW( g_pRadiantWnd ) );
+       gtk_window_set_modal( GTK_WINDOW( window ), TRUE );
 
        window.connect( "delete_event", G_CALLBACK( dialog_delete_callback ), NULL );
        window.connect( "destroy", G_CALLBACK( gtk_widget_destroy ), NULL );
@@ -1491,7 +1498,7 @@ EMessageBoxReturn DoResetTextureBox( ResetTextureRS* rs ){
 
        // ---- /vbox ----
 
-       gtk_window_set_position( window, GTK_WIN_POS_CENTER );
+       gtk_window_set_position( GTK_WINDOW( window ),GTK_WIN_POS_CENTER_ON_PARENT );
        window.show();
        gtk_grab_add( window );