#include "debugging/debugging.h"
#include <vector>
-
#include <gtk/gtk.h>
#include "gtkutil/widget.h"
void Show(){
// workaround for strange gtk behaviour - modifying the contents of a window while it is not visible causes the window position to change without sending a configure_event
m_position_tracker.sync( m_window );
- gtk_widget_show( GTK_WIDGET( m_window ) );
+ m_window.show();
}
void Hide(){
gtk_widget_hide( GTK_WIDGET( m_window ) );
void GroupDlg::Create( ui::Window parent ){
ASSERT_MESSAGE( !m_window, "dialog already created" );
- ui::Window window = ui::Window(create_persistent_floating_window( "Entities", parent ));
+ auto window = ui::Window(create_persistent_floating_window( "Entities", parent ));
global_accel_connect_window( window );
{
ui::Widget notebook = ui::Widget(gtk_notebook_new());
- gtk_widget_show( notebook );
- gtk_container_add( GTK_CONTAINER( window ), notebook );
+ notebook.show();
+ window.add(notebook);
gtk_notebook_set_tab_pos( GTK_NOTEBOOK( notebook ), GTK_POS_BOTTOM );
m_pNotebook = notebook;
- g_signal_connect( G_OBJECT(notebook), "switch_page", G_CALLBACK( switch_page ), (gpointer) window );
+ notebook.connect( "switch_page", G_CALLBACK( switch_page ), (gpointer) window );
}
}
ui::Widget GroupDialog_addPage( const char* tabLabel, ui::Widget widget, const StringExportCallback& title ){
ui::Widget w = ui::Label( tabLabel );
- gtk_widget_show( w );
+ w.show();
ui::Widget page = ui::Widget(gtk_notebook_get_nth_page( GTK_NOTEBOOK( g_GroupDlg.m_pNotebook ), gtk_notebook_insert_page( GTK_NOTEBOOK( g_GroupDlg.m_pNotebook ), widget, w, -1 ) ));
g_pages.push_back( title );
void GroupDialog_destroyWindow(){
ASSERT_TRUE( g_GroupDlg.m_window );
destroy_floating_window( g_GroupDlg.m_window );
- g_GroupDlg.m_window = ui::Window();
+ g_GroupDlg.m_window = ui::Window{ui::null};
}
}
else
{
- gtk_widget_show( GTK_WIDGET( g_GroupDlg.m_window ) );
+ g_GroupDlg.m_window.show();
GroupDialog_setPage( page );
}
}