X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=radiant%2Fcommands.cpp;h=b8a67ddfeb6922ad0c660b65bf172b97b4a4f46b;hb=2951e448a7f008f2438be4bd5feba2e4f4400eef;hp=f463503e04ac95878256a8ab6550cb856f783f6c;hpb=c52a4bd4da209e657018e8d799dcb488cd848e4c;p=xonotic%2Fnetradiant.git diff --git a/radiant/commands.cpp b/radiant/commands.cpp index f463503e..b8a67ddf 100644 --- a/radiant/commands.cpp +++ b/radiant/commands.cpp @@ -21,6 +21,7 @@ #include "commands.h" +#include "gtk/gtk.h" #include "debugging/debugging.h" #include "warnings.h" @@ -28,7 +29,6 @@ #include "string/string.h" #include "versionlib.h" #include "gtkutil/messagebox.h" -#include #include "gtkmisc.h" typedef std::pair ShortcutValue; // accelerator, isRegistered @@ -392,18 +392,18 @@ void DoCommandListDlg(){ return accelerator_window_key_press(widget, event, dialogptr); }, &dialog); - GtkAccelGroup* accel = ui::AccelGroup(); - gtk_window_add_accel_group( window, accel ); + auto accel = ui::AccelGroup(ui::New); + window.add_accel_group( accel ); - GtkHBox* hbox = create_dialog_hbox( 4, 4 ); - gtk_container_add( GTK_CONTAINER( window ), GTK_WIDGET( hbox ) ); + auto hbox = create_dialog_hbox( 4, 4 ); + window.add(hbox); { - GtkScrolledWindow* scr = create_scrolled_window( GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC ); - gtk_box_pack_start( GTK_BOX( hbox ), GTK_WIDGET( scr ), TRUE, TRUE, 0 ); + auto scr = create_scrolled_window( ui::Policy::NEVER, ui::Policy::AUTOMATIC ); + hbox.pack_start( scr, TRUE, TRUE, 0 ); { - GtkListStore* store = gtk_list_store_new( 4, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_INT ); + ui::ListStore store = ui::ListStore(gtk_list_store_new( 4, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_BOOLEAN, G_TYPE_INT )); ui::Widget view = ui::TreeView(ui::TreeModel(GTK_TREE_MODEL(store))); dialog.m_list = GTK_TREE_VIEW( view ); @@ -411,19 +411,19 @@ void DoCommandListDlg(){ gtk_tree_view_set_enable_search( GTK_TREE_VIEW( view ), false ); // annoying { - auto renderer = ui::CellRendererText(); + auto renderer = ui::CellRendererText(ui::New); GtkTreeViewColumn* column = ui::TreeViewColumn( "Command", renderer, {{"text", 0}, {"weight-set", 2}, {"weight", 3}} ); gtk_tree_view_append_column( GTK_TREE_VIEW( view ), column ); } { - auto renderer = ui::CellRendererText(); + auto renderer = ui::CellRendererText(ui::New); GtkTreeViewColumn* column = ui::TreeViewColumn( "Key", renderer, {{"text", 1}, {"weight-set", 2}, {"weight", 3}} ); gtk_tree_view_append_column( GTK_TREE_VIEW( view ), column ); } - gtk_widget_show( view ); - gtk_container_add( GTK_CONTAINER( scr ), view ); + view.show(); + scr.add(view); { // Initialize dialog @@ -433,19 +433,15 @@ void DoCommandListDlg(){ class BuildCommandList : public CommandVisitor { TextFileOutputStream m_commandList; - GtkListStore* m_store; + ui::ListStore m_store; public: - BuildCommandList( const char* filename, GtkListStore* store ) : m_commandList( filename ), m_store( store ){ + BuildCommandList( const char* filename, ui::ListStore store ) : m_commandList( filename ), m_store( store ){ } void visit( const char* name, Accelerator& accelerator ){ StringOutputStream modifiers; modifiers << accelerator; - { - GtkTreeIter iter; - gtk_list_store_append( m_store, &iter ); - gtk_list_store_set( m_store, &iter, 0, name, 1, modifiers.c_str(), 2, false, 3, 800, -1 ); - } + m_store.append(0, name, 1, modifiers.c_str(), 2, false, 3, 800); if ( !m_commandList.failed() ) { int l = strlen( name ); @@ -460,33 +456,33 @@ public: GlobalShortcuts_foreach( visitor ); } - g_object_unref( G_OBJECT( store ) ); + store.unref(); } } - GtkVBox* vbox = create_dialog_vbox( 4 ); - gtk_box_pack_start( GTK_BOX( hbox ), GTK_WIDGET( vbox ), TRUE, TRUE, 0 ); + auto vbox = create_dialog_vbox( 4 ); + hbox.pack_start( vbox, TRUE, TRUE, 0 ); { - GtkButton* editbutton = create_dialog_button( "Edit", (GCallback) accelerator_edit_button_clicked, &dialog ); - gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( editbutton ), FALSE, FALSE, 0 ); + auto editbutton = create_dialog_button( "Edit", (GCallback) accelerator_edit_button_clicked, &dialog ); + vbox.pack_start( editbutton, FALSE, FALSE, 0 ); - GtkButton* clearbutton = create_dialog_button( "Clear", (GCallback) accelerator_clear_button_clicked, &dialog ); - gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( clearbutton ), FALSE, FALSE, 0 ); + auto clearbutton = create_dialog_button( "Clear", (GCallback) accelerator_clear_button_clicked, &dialog ); + vbox.pack_start( clearbutton, FALSE, FALSE, 0 ); - ui::Widget spacer = ui::Image(); - gtk_widget_show( spacer ); - gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( spacer ), TRUE, TRUE, 0 ); + ui::Widget spacer = ui::Image(ui::New); + spacer.show(); + vbox.pack_start( spacer, TRUE, TRUE, 0 ); - GtkButton* button = create_modal_dialog_button( "Close", dialog.m_close_button ); - gtk_box_pack_start( GTK_BOX( vbox ), GTK_WIDGET( button ), FALSE, FALSE, 0 ); - widget_make_default( GTK_WIDGET( button ) ); + auto button = create_modal_dialog_button( "Close", dialog.m_close_button ); + vbox.pack_start( button, FALSE, FALSE, 0 ); + widget_make_default( button ); gtk_widget_grab_default( GTK_WIDGET( button ) ); - gtk_widget_add_accelerator( GTK_WIDGET( button ), "clicked", accel, GDK_Return, (GdkModifierType)0, (GtkAccelFlags)0 ); - gtk_widget_add_accelerator( GTK_WIDGET( button ), "clicked", accel, GDK_Escape, (GdkModifierType)0, (GtkAccelFlags)0 ); + gtk_widget_add_accelerator( GTK_WIDGET( button ), "clicked", accel, GDK_KEY_Return, (GdkModifierType)0, (GtkAccelFlags)0 ); + gtk_widget_add_accelerator( GTK_WIDGET( button ), "clicked", accel, GDK_KEY_Escape, (GdkModifierType)0, (GtkAccelFlags)0 ); } modal_dialog_show( window, dialog ); - gtk_widget_destroy( GTK_WIDGET( window ) ); + window.destroy(); } #include "profile/profile.h"