]> de.git.xonotic.org Git - xonotic/netradiant.git/blobdiff - contrib/brushexport/callbacks.cpp
Merge branch 'NateEag-master-patch-12920' into 'master'
[xonotic/netradiant.git] / contrib / brushexport / callbacks.cpp
index 29fb3263aeb1abe6542961424ddff6f7f87460f2..1e7dbb2a8d53d0799ed7724f1f4f2875e6e1f0f4 100644 (file)
@@ -13,12 +13,12 @@ void DestroyWindow();
 
 namespace callbacks {
 
-void OnDestroy( GtkWidget* w, gpointer data ){
+void OnDestroy( ui::Widget w, gpointer data ){
        DestroyWindow();
 }
 
-void OnExportClicked( GtkButton* button, gpointer user_data ){
-       ui::Widget window = lookup_widget( GTK_WIDGET( button ), "w_plugplug2" );
+void OnExportClicked( ui::Button button, gpointer user_data ){
+       auto window = ui::Window::from(lookup_widget( button , "w_plugplug2" ));
        ASSERT_TRUE( window );
        const char* cpath = GlobalRadiant().m_pfnFileDialog( window, false, "Save as Obj", 0, 0, false, false, true );
        if ( !cpath ) {
@@ -30,19 +30,19 @@ void OnExportClicked( GtkButton* button, gpointer user_data ){
        // get ignore list from ui
        std::set<std::string> ignore;
 
-       GtkTreeView* view = GTK_TREE_VIEW( lookup_widget( GTK_WIDGET( button ), "t_materialist" ) );
-       ui::ListStore list = ui::ListStore(GTK_LIST_STORE( gtk_tree_view_get_model( view ) ));
+       auto view = ui::TreeView::from(lookup_widget(button, "t_materialist"));
+       ui::ListStore list = ui::ListStore::from(gtk_tree_view_get_model( view ));
 
        GtkTreeIter iter;
-       gboolean valid = gtk_tree_model_get_iter_first( GTK_TREE_MODEL( list ), &iter );
+       gboolean valid = gtk_tree_model_get_iter_first(list, &iter );
        while ( valid )
        {
                gchar* data;
-               gtk_tree_model_get( GTK_TREE_MODEL( list ), &iter, 0, &data, -1 );
+               gtk_tree_model_get(list, &iter, 0, &data, -1 );
                globalOutputStream() << data << "\n";
                ignore.insert( std::string( data ) );
                g_free( data );
-               valid = gtk_tree_model_iter_next( GTK_TREE_MODEL( list ), &iter );
+               valid = gtk_tree_model_iter_next(list, &iter );
        }
 
        for ( std::set<std::string>::iterator it( ignore.begin() ); it != ignore.end(); ++it )
@@ -51,31 +51,31 @@ void OnExportClicked( GtkButton* button, gpointer user_data ){
        // collapse mode
        collapsemode mode = COLLAPSE_NONE;
 
-       GtkWidget* radio = lookup_widget( GTK_WIDGET( button ), "r_collapse" );
-       ASSERT_NOTNULL( radio );
+       auto radio = lookup_widget( button , "r_collapse" );
+       ASSERT_TRUE( radio );
 
        if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( radio ) ) ) {
                mode = COLLAPSE_ALL;
        }
        else
        {
-               radio = lookup_widget( GTK_WIDGET( button ), "r_collapsebymaterial" );
-               ASSERT_NOTNULL( radio );
+               radio = lookup_widget( button , "r_collapsebymaterial" );
+               ASSERT_TRUE( radio );
                if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( radio ) ) ) {
                        mode = COLLAPSE_BY_MATERIAL;
                }
                else
                {
-                       radio = lookup_widget( GTK_WIDGET( button ), "r_nocollapse" );
-                       ASSERT_NOTNULL( radio );
+                       radio = lookup_widget( button , "r_nocollapse" );
+                       ASSERT_TRUE( radio );
                        ASSERT_TRUE( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( radio ) ) );
                        mode = COLLAPSE_NONE;
                }
        }
 
        // export materials?
-       GtkWidget* toggle = lookup_widget( GTK_WIDGET( button ), "t_exportmaterials" );
-       ASSERT_NOTNULL( toggle );
+       auto toggle = lookup_widget( button , "t_exportmaterials" );
+       ASSERT_TRUE( toggle );
 
        bool exportmat = FALSE;
 
@@ -84,8 +84,8 @@ void OnExportClicked( GtkButton* button, gpointer user_data ){
        }
 
        // limit material names?
-       toggle = lookup_widget( GTK_WIDGET( button ), "t_limitmatnames" );
-       ASSERT_NOTNULL( toggle );
+       toggle = lookup_widget( button , "t_limitmatnames" );
+       ASSERT_TRUE( toggle );
 
        bool limitMatNames = FALSE;
 
@@ -94,8 +94,8 @@ void OnExportClicked( GtkButton* button, gpointer user_data ){
        }
 
        // create objects instead of groups?
-       toggle = lookup_widget( GTK_WIDGET( button ), "t_objects" );
-       ASSERT_NOTNULL( toggle );
+       toggle = lookup_widget( button , "t_objects" );
+       ASSERT_TRUE( toggle );
 
        bool objects = FALSE;
 
@@ -107,24 +107,22 @@ void OnExportClicked( GtkButton* button, gpointer user_data ){
        ExportSelection( ignore, mode, exportmat, path, limitMatNames, objects );
 }
 
-void OnAddMaterial( GtkButton* button, gpointer user_data ){
-       GtkEntry* edit = GTK_ENTRY( lookup_widget( GTK_WIDGET( button ), "ed_materialname" ) );
-       ASSERT_NOTNULL( edit );
+void OnAddMaterial( ui::Button button, gpointer user_data ){
+    auto edit = ui::Entry::from( lookup_widget( button , "ed_materialname" ) );
+       ASSERT_TRUE( edit );
 
        const gchar* name = gtk_entry_get_text( edit );
        if ( g_utf8_strlen( name, -1 ) > 0 ) {
-               ui::ListStore list = ui::ListStore(GTK_LIST_STORE( gtk_tree_view_get_model( GTK_TREE_VIEW( lookup_widget( GTK_WIDGET( button ), "t_materialist" ) ) ) ));
-               GtkTreeIter iter;
-               gtk_list_store_append( list, &iter );
-               gtk_list_store_set( list, &iter, 0, name, -1 );
+               ui::ListStore list = ui::ListStore::from( gtk_tree_view_get_model(ui::TreeView::from(lookup_widget(button, "t_materialist") )) );
+               list.append(0, name);
                gtk_entry_set_text( edit, "" );
        }
 }
 
-void OnRemoveMaterial( GtkButton* button, gpointer user_data ){
-       GtkTreeView* view = GTK_TREE_VIEW( lookup_widget( GTK_WIDGET( button ), "t_materialist" ) );
-       ui::ListStore list = ui::ListStore(GTK_LIST_STORE( gtk_tree_view_get_model( view ) ));
-       GtkTreeSelection* sel = gtk_tree_view_get_selection( view );
+void OnRemoveMaterial( ui::Button button, gpointer user_data ){
+       ui::TreeView view = ui::TreeView::from(lookup_widget(button, "t_materialist"));
+       ui::ListStore list = ui::ListStore::from( gtk_tree_view_get_model( view ) );
+       auto sel = ui::TreeSelection::from(gtk_tree_view_get_selection( view ));
 
        GtkTreeIter iter;
        if ( gtk_tree_selection_get_selected( sel, 0, &iter ) ) {
@@ -132,17 +130,17 @@ void OnRemoveMaterial( GtkButton* button, gpointer user_data ){
        }
 }
 
-void OnExportMatClicked( GtkButton* button, gpointer user_data ){
-       GtkWidget* toggleLimit = lookup_widget( GTK_WIDGET( button ), "t_limitmatnames" );
-       GtkWidget* toggleObject = lookup_widget( GTK_WIDGET( button ), "t_objects" );
+void OnExportMatClicked( ui::Button button, gpointer user_data ){
+       ui::Widget toggleLimit = lookup_widget( button , "t_limitmatnames" );
+       ui::Widget toggleObject = lookup_widget( button , "t_objects" );
 
        if ( gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON( button ) ) ) {
-               gtk_widget_set_sensitive( GTK_WIDGET( toggleLimit ), TRUE );
-               gtk_widget_set_sensitive( GTK_WIDGET( toggleObject ), TRUE );
+               gtk_widget_set_sensitive( toggleLimit , TRUE );
+               gtk_widget_set_sensitive( toggleObject , TRUE );
        }
        else {
-               gtk_widget_set_sensitive( GTK_WIDGET( toggleLimit ), FALSE );
-               gtk_widget_set_sensitive( GTK_WIDGET( toggleObject ), FALSE );
+               gtk_widget_set_sensitive( toggleLimit , FALSE );
+               gtk_widget_set_sensitive( toggleObject , FALSE );
        }
 }