#include "iselection.h"
#include <uilib/uilib.h>
+#include <gtk/gtk.h>
#include "string/string.h"
#include "scenelib.h"
void RedrawEntityList();
typedef FreeCaller<RedrawEntityList> RedrawEntityListCaller;
-typedef struct _GtkTreeView GtkTreeView;
class EntityList
{
m_selection_disabled( false ){
}
-bool visible() const {
- return gtk_widget_get_visible( m_window );
+bool visible() {
+ return m_window.visible();
}
};
if ( node != 0 ) {
gtk_cell_renderer_set_fixed_size( renderer, -1, -1 );
char* name = const_cast<char*>( node_get_name( *node ) );
- g_object_set( G_OBJECT( renderer ), "text", name, "visible", TRUE, 0 );
+ g_object_set( G_OBJECT( renderer ), "text", name, "visible", TRUE, NULL );
//globalOutputStream() << "rendering cell " << makeQuoted(name) << "\n";
GtkStyle* style = gtk_widget_get_style( GTK_WIDGET( getEntityList().m_tree_view ) );
if ( instance->childSelected() ) {
- g_object_set( G_OBJECT( renderer ), "cell-background-gdk", &style->base[GTK_STATE_ACTIVE], 0 );
+ g_object_set( G_OBJECT( renderer ), "cell-background-gdk", &style->base[GTK_STATE_ACTIVE], NULL );
}
else
{
- g_object_set( G_OBJECT( renderer ), "cell-background-gdk", &style->base[GTK_STATE_NORMAL], 0 );
+ g_object_set( G_OBJECT( renderer ), "cell-background-gdk", &style->base[GTK_STATE_NORMAL], NULL );
}
}
else
{
gtk_cell_renderer_set_fixed_size( renderer, -1, 0 );
- g_object_set( G_OBJECT( renderer ), "text", "", "visible", FALSE, 0 );
+ g_object_set( G_OBJECT( renderer ), "text", "", "visible", FALSE, NULL );
}
}
void EntityList_constructWindow( ui::Window main_window ){
ASSERT_TRUE( !getEntityList().m_window );
- ui::Window window = ui::Window(create_persistent_floating_window( "Entity List", main_window ));
+ auto window = ui::Window(create_persistent_floating_window( "Entity List", main_window ));
window.add_accel_group(global_accel);
getEntityList().m_window = window;
{
- GtkScrolledWindow* scr = create_scrolled_window( GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC );
- gtk_container_add( GTK_CONTAINER( window ), GTK_WIDGET( scr ) );
+ auto scr = create_scrolled_window( ui::Policy::AUTOMATIC, ui::Policy::AUTOMATIC );
+ window.add(scr);
{
- ui::Widget view = ui::TreeView();
+ ui::Widget view = ui::TreeView(ui::New);
gtk_tree_view_set_headers_visible( GTK_TREE_VIEW( view ), FALSE );
- auto renderer = ui::CellRendererText();
+ auto renderer = ui::CellRendererText(ui::New);
GtkTreeViewColumn* column = gtk_tree_view_column_new();
gtk_tree_view_column_pack_start( column, renderer, TRUE );
gtk_tree_view_column_set_cell_data_func( column, renderer, entitylist_treeviewcolumn_celldatafunc, 0, 0 );
GtkTreeSelection* select = gtk_tree_view_get_selection( GTK_TREE_VIEW( view ) );
gtk_tree_selection_set_mode( select, GTK_SELECTION_MULTIPLE );
- g_signal_connect( G_OBJECT( view ), "row_expanded", G_CALLBACK( entitylist_treeview_row_expanded ), 0 );
- g_signal_connect( G_OBJECT( view ), "row_collapsed", G_CALLBACK( entitylist_treeview_rowcollapsed ), 0 );
+ view.connect( "row_expanded", G_CALLBACK( entitylist_treeview_row_expanded ), 0 );
+ view.connect( "row_collapsed", G_CALLBACK( entitylist_treeview_rowcollapsed ), 0 );
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);
getEntityList().m_tree_view = GTK_TREE_VIEW( view );
}
}