]> git.xonotic.org Git - xonotic/netradiant.git/blobdiff - contrib/hydratoolz/plugin.cpp
bikeshedding: unifying some variable in contrib/shaderplug
[xonotic/netradiant.git] / contrib / hydratoolz / plugin.cpp
index 44393ea14f3fa0bd2d3199c0dbaccf821450f766..b1dfcfe3248a5f0163666086bf319c8bec86f404 100644 (file)
@@ -20,7 +20,6 @@
  */
 
 #include "plugin.h"
-#include "version.h"
 
 /*! \file plugin.cpp
     \brief HydraToolz!
@@ -58,11 +57,10 @@ void *g_pMainWnd;
 // =============================================================================
 // Ripped from TexTool.cpp
 
-static void dialog_button_callback( GtkWidget *widget, gpointer data ){
-       GtkWidget *parent;
+static void dialog_button_callback( ui::Widget widget, gpointer data ){
        int *loop, *ret;
 
-       parent = gtk_widget_get_toplevel( widget );
+       auto parent = widget.window();
        loop = (int*)gtk_object_get_data( GTK_OBJECT( parent ), "loop" );
        ret = (int*)gtk_object_get_data( GTK_OBJECT( parent ), "ret" );
 
@@ -81,111 +79,111 @@ static gint dialog_delete_callback( GtkWidget *widget, GdkEvent* event, gpointer
 }
 
 int DoMessageBox( const char* lpText, const char* lpCaption, guint32 uType ){
-       GtkWidget *window, *w, *vbox, *hbox;
+       GtkWidget *w, *hbox;
        int mode = ( uType & MB_TYPEMASK ), ret, loop = 1;
 
-       window = gtk_window_new( GTK_WINDOW_TOPLEVEL );
-       gtk_signal_connect( GTK_OBJECT( window ), "delete_event",
-                                               GTK_SIGNAL_FUNC( dialog_delete_callback ), NULL );
-       gtk_signal_connect( GTK_OBJECT( window ), "destroy",
-                                               GTK_SIGNAL_FUNC( gtk_widget_destroy ), NULL );
-       gtk_window_set_title( GTK_WINDOW( window ), lpCaption );
-       gtk_container_border_width( GTK_CONTAINER( window ), 10 );
+       auto window = ui::Window( ui::window_type::TOP );
+       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 );
+       gtk_container_set_border_width( GTK_CONTAINER( window ), 10 );
        gtk_object_set_data( GTK_OBJECT( window ), "loop", &loop );
        gtk_object_set_data( GTK_OBJECT( window ), "ret", &ret );
        gtk_widget_realize( window );
 
-       vbox = gtk_vbox_new( FALSE, 10 );
-       gtk_container_add( GTK_CONTAINER( window ), vbox );
-       gtk_widget_show( vbox );
+       auto vbox = ui::VBox( FALSE, 10 );
+       window.add(vbox);
+       vbox.show();
 
-       w = gtk_label_new( lpText );
-       gtk_box_pack_start( GTK_BOX( vbox ), w, FALSE, FALSE, 2 );
+       w = ui::Label( lpText );
+       vbox.pack_start( w, FALSE, FALSE, 2 );
        gtk_label_set_justify( GTK_LABEL( w ), GTK_JUSTIFY_LEFT );
-       gtk_widget_show( w );
+       w.show();
 
        w = gtk_hseparator_new();
-       gtk_box_pack_start( GTK_BOX( vbox ), w, FALSE, FALSE, 2 );
-       gtk_widget_show( w );
+       vbox.pack_start( w, FALSE, FALSE, 2 );
+       w.show();
 
-       hbox = gtk_hbox_new( FALSE, 10 );
-       gtk_box_pack_start( GTK_BOX( vbox ), hbox, FALSE, FALSE, 2 );
-       gtk_widget_show( hbox );
+       hbox = ui::HBox( FALSE, 10 );
+       vbox.pack_start( hbox, FALSE, FALSE, 2 );
+       hbox.show();
 
        if ( mode == MB_OK ) {
-               w = gtk_button_new_with_label( "Ok" );
-               gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
-               gtk_signal_connect( GTK_OBJECT( w ), "clicked",
-                                                       GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDOK ) );
-               GTK_WIDGET_SET_FLAGS( w, GTK_CAN_DEFAULT );
+               w = ui::Button( "Ok" );
+               hbox.pack_start( w, TRUE, TRUE, 0 );
+               w.connect( "clicked",
+                                                       G_CALLBACK( dialog_button_callback ), GINT_TO_POINTER( IDOK ) );
+               gtk_widget_set_can_default( w, true );
                gtk_widget_grab_default( w );
-               gtk_widget_show( w );
+               w.show();
                ret = IDOK;
        }
        else if ( mode ==  MB_OKCANCEL ) {
-               w = gtk_button_new_with_label( "Ok" );
-               gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
-               gtk_signal_connect( GTK_OBJECT( w ), "clicked",
-                                                       GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDOK ) );
-               GTK_WIDGET_SET_FLAGS( w, GTK_CAN_DEFAULT );
+               w = ui::Button( "Ok" );
+               hbox.pack_start( w, TRUE, TRUE, 0 );
+               w.connect( "clicked",
+                                                       G_CALLBACK( dialog_button_callback ), GINT_TO_POINTER( IDOK ) );
+               gtk_widget_set_can_default( w, true );
                gtk_widget_grab_default( w );
-               gtk_widget_show( w );
+               w.show();
 
-               w = gtk_button_new_with_label( "Cancel" );
-               gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
-               gtk_signal_connect( GTK_OBJECT( w ), "clicked",
-                                                       GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDCANCEL ) );
-               gtk_widget_show( w );
+               w = ui::Button( "Cancel" );
+               hbox.pack_start( w, TRUE, TRUE, 0 );
+               w.connect( "clicked",
+                                                       G_CALLBACK( dialog_button_callback ), GINT_TO_POINTER( IDCANCEL ) );
+               w.show();
                ret = IDCANCEL;
        }
        else if ( mode == MB_YESNOCANCEL ) {
-               w = gtk_button_new_with_label( "Yes" );
-               gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
-               gtk_signal_connect( GTK_OBJECT( w ), "clicked",
-                                                       GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDYES ) );
-               GTK_WIDGET_SET_FLAGS( w, GTK_CAN_DEFAULT );
+               w = ui::Button( "Yes" );
+               hbox.pack_start( w, TRUE, TRUE, 0 );
+               w.connect( "clicked",
+                                                       G_CALLBACK( dialog_button_callback ), GINT_TO_POINTER( IDYES ) );
+               gtk_widget_set_can_default( w, true );
                gtk_widget_grab_default( w );
-               gtk_widget_show( w );
-
-               w = gtk_button_new_with_label( "No" );
-               gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
-               gtk_signal_connect( GTK_OBJECT( w ), "clicked",
-                                                       GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDNO ) );
-               gtk_widget_show( w );
-
-               w = gtk_button_new_with_label( "Cancel" );
-               gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
-               gtk_signal_connect( GTK_OBJECT( w ), "clicked",
-                                                       GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDCANCEL ) );
-               gtk_widget_show( w );
+               w.show();
+
+               w = ui::Button( "No" );
+               hbox.pack_start( w, TRUE, TRUE, 0 );
+               w.connect( "clicked",
+                                                       G_CALLBACK( dialog_button_callback ), GINT_TO_POINTER( IDNO ) );
+               w.show();
+
+               w = ui::Button( "Cancel" );
+               hbox.pack_start( w, TRUE, TRUE, 0 );
+               w.connect( "clicked",
+                                                       G_CALLBACK( dialog_button_callback ), GINT_TO_POINTER( IDCANCEL ) );
+               w.show();
                ret = IDCANCEL;
        }
        else /* if (mode == MB_YESNO) */
        {
-               w = gtk_button_new_with_label( "Yes" );
-               gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
-               gtk_signal_connect( GTK_OBJECT( w ), "clicked",
-                                                       GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDYES ) );
-               GTK_WIDGET_SET_FLAGS( w, GTK_CAN_DEFAULT );
+               w = ui::Button( "Yes" );
+               hbox.pack_start( w, TRUE, TRUE, 0 );
+               w.connect( "clicked",
+                                                       G_CALLBACK( dialog_button_callback ), GINT_TO_POINTER( IDYES ) );
+               gtk_widget_set_can_default( w, true );
                gtk_widget_grab_default( w );
-               gtk_widget_show( w );
+               w.show();
 
-               w = gtk_button_new_with_label( "No" );
-               gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
-               gtk_signal_connect( GTK_OBJECT( w ), "clicked",
-                                                       GTK_SIGNAL_FUNC( dialog_button_callback ), GINT_TO_POINTER( IDNO ) );
-               gtk_widget_show( w );
+               w = ui::Button( "No" );
+               hbox.pack_start( w, TRUE, TRUE, 0 );
+               w.connect( "clicked",
+                                                       G_CALLBACK( dialog_button_callback ), GINT_TO_POINTER( IDNO ) );
+               w.show();
                ret = IDNO;
        }
 
-       gtk_widget_show( window );
+       window.show();
        gtk_grab_add( window );
 
        while ( loop )
                gtk_main_iteration();
 
        gtk_grab_remove( window );
-       gtk_widget_destroy( window );
+       window.destroy();
 
        return ret;
 }