]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/findtexturedialog.cpp
GTK: wrap gtk_box_pack_start
[xonotic/netradiant.git] / radiant / findtexturedialog.cpp
index 13fad1c2f4bfb3d95244405706d7447a4580898b..3be09fdb2d0f37cb2e72423610036bc74cce636d 100644 (file)
 
 #include "findtexturedialog.h"
 
+#include <gtk/gtk.h>
+
 #include "debugging/debugging.h"
 
 #include "ishaders.h"
 
-#include <gtk/gtk.h>
-
 #include "gtkutil/window.h"
 #include "stream/stringstream.h"
 
@@ -128,80 +128,81 @@ FindTextureDialog::~FindTextureDialog(){
 }
 
 ui::Window FindTextureDialog::BuildDialog(){
-       ui::Widget vbox, hbox, table, label;
-       ui::Widget button, check, entry;
+       ui::Widget table{ui::null}, label{ui::null};
+       ui::Widget button{ui::null};
+       ui::Entry entry{ui::null};
 
-       ui::Window dlg = ui::Window(create_floating_window( "Find / Replace Texture(s)", m_parent ));
+       auto dlg = ui::Window(create_floating_window( "Find / Replace Texture(s)", m_parent ));
 
-       hbox = ui::HBox( FALSE, 5 );
-       gtk_widget_show( hbox );
-       gtk_container_add( GTK_CONTAINER( dlg ), GTK_WIDGET( hbox ) );
+       auto hbox = ui::HBox( FALSE, 5 );
+       hbox.show();
+       dlg.add(hbox);
        gtk_container_set_border_width( GTK_CONTAINER( hbox ), 5 );
 
-       vbox = ui::VBox( FALSE, 5 );
-       gtk_widget_show( vbox );
-       gtk_box_pack_start( GTK_BOX( hbox ), GTK_WIDGET( vbox ), TRUE, TRUE, 0 );
+       auto vbox = ui::VBox( FALSE, 5 );
+       vbox.show();
+       hbox.pack_start( vbox, TRUE, TRUE, 0 );
 
        table = ui::Table( 2, 2, FALSE );
-       gtk_widget_show( table );
-       gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( table ), TRUE, TRUE, 0 );
+       table.show();
+       vbox.pack_start( table, TRUE, TRUE, 0 );
        gtk_table_set_row_spacings( GTK_TABLE( table ), 5 );
        gtk_table_set_col_spacings( GTK_TABLE( table ), 5 );
 
        label = ui::Label( "Find:" );
-       gtk_widget_show( label );
+       label.show();
        gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 0, 1,
                                          (GtkAttachOptions) ( GTK_FILL ),
                                          (GtkAttachOptions) ( 0 ), 0, 0 );
        gtk_misc_set_alignment( GTK_MISC( label ), 0, 0.5 );
 
        label = ui::Label( "Replace:" );
-       gtk_widget_show( label );
+       label.show();
        gtk_table_attach( GTK_TABLE( table ), label, 0, 1, 1, 2,
                                          (GtkAttachOptions) ( GTK_FILL ),
                                          (GtkAttachOptions) ( 0 ), 0, 0 );
        gtk_misc_set_alignment( GTK_MISC( label ), 0, 0.5 );
 
-       entry = ui::Entry();
-       gtk_widget_show( entry );
+       entry = ui::Entry(ui::New);
+       entry.show();
        gtk_table_attach( GTK_TABLE( table ), entry, 1, 2, 0, 1,
                                          (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
                                          (GtkAttachOptions) ( 0 ), 0, 0 );
-       g_signal_connect( G_OBJECT( entry ), "focus_in_event",
+       entry.connect( "focus_in_event",
                                          G_CALLBACK( find_focus_in ), 0 );
-       AddDialogData( *GTK_ENTRY( entry ), m_strFind );
-       GlobalTextureEntryCompletion::instance().connect( GTK_ENTRY( entry ) );
+       AddDialogData( *GTK_ENTRY(entry), m_strFind );
+       GlobalTextureEntryCompletion::instance().connect( entry );
 
-       entry = ui::Entry();
-       gtk_widget_show( entry );
+       entry = ui::Entry(ui::New);
+       entry.show();
        gtk_table_attach( GTK_TABLE( table ), entry, 1, 2, 1, 2,
                                          (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
                                          (GtkAttachOptions) ( 0 ), 0, 0 );
-       g_signal_connect( G_OBJECT( entry ), "focus_in_event",
+       entry.connect( "focus_in_event",
                                          G_CALLBACK( replace_focus_in ), 0 );
-       AddDialogData( *GTK_ENTRY( entry ), m_strReplace );
-       GlobalTextureEntryCompletion::instance().connect( GTK_ENTRY( entry ) );
+       AddDialogData( *GTK_ENTRY(entry), m_strReplace );
+       GlobalTextureEntryCompletion::instance().connect( entry );
 
-       check = ui::CheckButton( "Within selected brushes only" );
-       gtk_widget_show( check );
-       gtk_box_pack_start( GTK_BOX( vbox ), check, TRUE, TRUE, 0 );
-       AddDialogData( *GTK_TOGGLE_BUTTON( check ), m_bSelectedOnly );
+       auto check = ui::CheckButton( "Within selected brushes only" );
+       check.show();
+       vbox.pack_start( check, TRUE, TRUE, 0 );
+       AddDialogData( *GTK_TOGGLE_BUTTON(check), m_bSelectedOnly );
 
        vbox = ui::VBox( FALSE, 5 );
-       gtk_widget_show( vbox );
-       gtk_box_pack_start( GTK_BOX( hbox ), GTK_WIDGET( vbox ), FALSE, FALSE, 0 );
+       vbox.show();
+       hbox.pack_start( vbox, FALSE, FALSE, 0 );
 
        button = ui::Button( "Apply" );
-       gtk_widget_show( button );
-       gtk_box_pack_start( GTK_BOX( vbox ), button, FALSE, FALSE, 0 );
-       g_signal_connect( G_OBJECT( button ), "clicked",
+       button.show();
+       vbox.pack_start( button, FALSE, FALSE, 0 );
+       button.connect( "clicked",
                                          G_CALLBACK( OnApply ), 0 );
        gtk_widget_set_size_request( button, 60, -1 );
 
        button = ui::Button( "Close" );
-       gtk_widget_show( button );
-       gtk_box_pack_start( GTK_BOX( vbox ), button, FALSE, FALSE, 0 );
-       g_signal_connect( G_OBJECT( button ), "clicked",
+       button.show();
+       vbox.pack_start( button, FALSE, FALSE, 0 );
+       button.connect( "clicked",
                                          G_CALLBACK( OnClose ), 0 );
        gtk_widget_set_size_request( button, 60, -1 );
 
@@ -221,7 +222,7 @@ void FindTextureDialog::updateTextures( const char* name ){
 }
 
 bool FindTextureDialog::isOpen(){
-       return gtk_widget_get_visible( g_FindTextureDialog.GetWidget() ) == TRUE;
+       return g_FindTextureDialog.GetWidget().visible();
 }
 
 void FindTextureDialog::setFindStr( const char* name ){