]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/preferences.cpp
GTK: wrap gtk_box_pack_start
[xonotic/netradiant.git] / radiant / preferences.cpp
index 46ed23ffb1f4b004850ef41735e713f5cf3d91ee..9a3e826c19a46f0d51b982c710e527ac3d59c62b 100644 (file)
@@ -26,6 +26,9 @@
 //
 
 #include "preferences.h"
+#include "globaldefs.h"
+
+#include <gtk/gtk.h>
 #include "environment.h"
 
 #include "debugging/debugging.h"
@@ -55,7 +58,7 @@ void Global_constructPreferences( PreferencesPage& page ){
 }
 
 void Interface_constructPreferences( PreferencesPage& page ){
-#ifdef WIN32
+#if GDEF_OS_WINDOWS
        page.appendCheckBox( "", "Default Text Editor", g_TextEditor_useWin32Editor );
 #else
        {
@@ -507,7 +510,7 @@ static void OnButtonClean( ui::Widget widget, gpointer data ){
    ========
  */
 
-#define PREFS_LOCAL_FILENAME "local.pref"
+const char *PREFS_LOCAL_FILENAME = "local.pref";
 
 void PrefsDlg::Init(){
        // m_global_rc_path has been set above
@@ -545,7 +548,7 @@ static void treeSelection( GtkTreeSelection* selection, gpointer data ){
        GtkTreeModel* model;
        GtkTreeIter selected;
        if ( gtk_tree_selection_get_selected( selection, &model, &selected ) ) {
-               ui::Widget prefpage;
+               ui::Widget prefpage{ui::null};
                gtk_tree_model_get( model, &selected, 1, (gpointer*)&prefpage, -1 );
                dlg->showPrefPage( prefpage );
        }
@@ -620,8 +623,8 @@ void ToggleButton_state_changed_Widget_updateDependency( ui::Widget toggleButton
 }
 
 void Widget_connectToggleDependency( ui::Widget self, ui::Widget toggleButton ){
-       g_signal_connect( G_OBJECT( toggleButton ), "state_changed", G_CALLBACK( ToggleButton_state_changed_Widget_updateDependency ), self );
-       g_signal_connect( G_OBJECT( toggleButton ), "toggled", G_CALLBACK( ToggleButton_toggled_Widget_updateDependency ), self );
+       toggleButton.connect( "state_changed", G_CALLBACK( ToggleButton_state_changed_Widget_updateDependency ), self );
+       toggleButton.connect( "toggled", G_CALLBACK( ToggleButton_toggled_Widget_updateDependency ), self );
        Widget_updateDependency( self, toggleButton );
 }
 
@@ -683,39 +686,39 @@ ui::Window PrefsDlg::BuildDialog(){
        ui::Window dialog = ui::Window(create_floating_window( "NetRadiant Preferences", m_parent ));
 
        {
-               ui::Widget mainvbox = ui::VBox( FALSE, 5 );
+               auto mainvbox = ui::VBox( FALSE, 5 );
                dialog.add(mainvbox);
                gtk_container_set_border_width( GTK_CONTAINER( mainvbox ), 5 );
                mainvbox.show();
 
                {
-                       ui::Widget hbox = ui::HBox( FALSE, 5 );
+                       auto hbox = ui::HBox( FALSE, 5 );
                        hbox.show();
-                       gtk_box_pack_end( GTK_BOX( mainvbox ), hbox, FALSE, TRUE, 0 );
+                       mainvbox.pack_end(hbox, FALSE, TRUE, 0);
 
                        {
-                               GtkButton* button = create_dialog_button( "OK", G_CALLBACK( dialog_button_ok ), &m_modal );
-                               gtk_box_pack_end( GTK_BOX( hbox ), GTK_WIDGET( button ), FALSE, FALSE, 0 );
+                               auto button = create_dialog_button( "OK", G_CALLBACK( dialog_button_ok ), &m_modal );
+                               hbox.pack_end(button, FALSE, FALSE, 0);
                        }
                        {
-                               GtkButton* button = create_dialog_button( "Cancel", G_CALLBACK( dialog_button_cancel ), &m_modal );
-                               gtk_box_pack_end( GTK_BOX( hbox ), GTK_WIDGET( button ), FALSE, FALSE, 0 );
+                               auto button = create_dialog_button( "Cancel", G_CALLBACK( dialog_button_cancel ), &m_modal );
+                               hbox.pack_end(button, FALSE, FALSE, 0);
                        }
                        {
-                               GtkButton* button = create_dialog_button( "Clean", G_CALLBACK( OnButtonClean ), this );
-                               gtk_box_pack_end( GTK_BOX( hbox ), GTK_WIDGET( button ), FALSE, FALSE, 0 );
+                               auto button = create_dialog_button( "Clean", G_CALLBACK( OnButtonClean ), this );
+                               hbox.pack_end(button, FALSE, FALSE, 0);
                        }
                }
 
                {
-                       ui::Widget hbox = ui::HBox( FALSE, 5 );
-                       gtk_box_pack_start( GTK_BOX( mainvbox ), hbox, TRUE, TRUE, 0 );
+                       auto hbox = ui::HBox( FALSE, 5 );
+                       mainvbox.pack_start( hbox, TRUE, TRUE, 0 );
                        hbox.show();
 
                        {
-                               auto sc_win = ui::ScrolledWindow();
+                               auto sc_win = ui::ScrolledWindow(ui::New);
                                gtk_scrolled_window_set_policy( GTK_SCROLLED_WINDOW( sc_win ), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC );
-                               gtk_box_pack_start( GTK_BOX( hbox ), sc_win, FALSE, FALSE, 0 );
+                               hbox.pack_start( sc_win, FALSE, FALSE, 0 );
                                sc_win.show();
                                gtk_scrolled_window_set_shadow_type( GTK_SCROLLED_WINDOW( sc_win ), GTK_SHADOW_IN );
 
@@ -723,25 +726,25 @@ ui::Window PrefsDlg::BuildDialog(){
                                m_notebook = ui::Widget(gtk_notebook_new());
                                // hide the notebook tabs since its not supposed to look like a notebook
                                gtk_notebook_set_show_tabs( GTK_NOTEBOOK( m_notebook ), FALSE );
-                               gtk_box_pack_start( GTK_BOX( hbox ), m_notebook, TRUE, TRUE, 0 );
+                               hbox.pack_start( m_notebook, TRUE, TRUE, 0 );
                                m_notebook.show();
 
 
                                {
-                                       GtkTreeStore* store = gtk_tree_store_new( 2, G_TYPE_STRING, G_TYPE_POINTER );
+                                       auto store = gtk_tree_store_new( 2, G_TYPE_STRING, G_TYPE_POINTER );
 
                                        ui::Widget view = ui::TreeView(ui::TreeModel( GTK_TREE_MODEL( store ) ));
                                        gtk_tree_view_set_headers_visible( GTK_TREE_VIEW( view ), FALSE );
 
                                        {
-                                               auto renderer = ui::CellRendererText();
+                                               auto renderer = ui::CellRendererText(ui::New);
                                                GtkTreeViewColumn* column = ui::TreeViewColumn( "Preferences", renderer, {{"text", 0}} );
                                                gtk_tree_view_append_column( GTK_TREE_VIEW( view ), column );
                                        }
 
                                        {
-                                               GtkTreeSelection* selection = gtk_tree_view_get_selection( GTK_TREE_VIEW( view ) );
-                                               g_signal_connect( G_OBJECT( selection ), "changed", G_CALLBACK( treeSelection ), this );
+                                               auto selection = ui::TreeSelection(gtk_tree_view_get_selection( GTK_TREE_VIEW( view ) ));
+                                               selection.connect( "changed", G_CALLBACK( treeSelection ), this );
                                        }
 
                                        view.show();
@@ -947,7 +950,7 @@ typedef FreeCaller1<const StringImportCallback&, GameMode_exportString> GameMode
 
 
 void RegisterPreferences( PreferenceSystem& preferences ){
-#ifdef WIN32
+#if GDEF_OS_WINDOWS
        preferences.registerPreference( "UseCustomShaderEditor", BoolImportStringCaller( g_TextEditor_useWin32Editor ), BoolExportStringCaller( g_TextEditor_useWin32Editor ) );
 #else
        preferences.registerPreference( "UseCustomShaderEditor", BoolImportStringCaller( g_TextEditor_useCustomEditor ), BoolExportStringCaller( g_TextEditor_useCustomEditor ) );