X-Git-Url: https://de.git.xonotic.org/?p=xonotic%2Fnetradiant.git;a=blobdiff_plain;f=libs%2Fgtkutil%2Fpaned.cpp;h=bc0d1f7ac53e812d5563e8ee6bdd8c5c79721f65;hp=e664aef4ee400ee5d9120f05919a918c855f7c0d;hb=HEAD;hpb=7b688d9788aa791949a8859c2729bfabb0178b4e diff --git a/libs/gtkutil/paned.cpp b/libs/gtkutil/paned.cpp index e664aef4..bc0d1f7a 100644 --- a/libs/gtkutil/paned.cpp +++ b/libs/gtkutil/paned.cpp @@ -49,7 +49,7 @@ PanedState g_hpaned = { 0.5f, -1, }; PanedState g_vpaned1 = { 0.5f, -1, }; PanedState g_vpaned2 = { 0.5f, -1, }; -ui::HPaned create_split_views( ui::Widget topleft, ui::Widget topright, ui::Widget botleft, ui::Widget botright ){ +ui::Widget create_split_views( ui::Widget topleft, ui::Widget topright, ui::Widget botleft, ui::Widget botright, ui::Widget& vsplit1, ui::Widget& vsplit2 ){ auto hsplit = ui::HPaned(ui::New); hsplit.show(); @@ -58,25 +58,27 @@ ui::HPaned create_split_views( ui::Widget topleft, ui::Widget topright, ui::Widg { auto vsplit = ui::VPaned(ui::New); - gtk_paned_add1( GTK_PANED( hsplit ), vsplit ); - vsplit.show(); + vsplit1 = vsplit; + gtk_paned_add1( GTK_PANED( hsplit ), GTK_WIDGET( vsplit ) ); + gtk_widget_show( GTK_WIDGET( vsplit ) ); vsplit.connect( "size_allocate", G_CALLBACK( vpaned_allocate ), &g_vpaned1 ); vsplit.connect( "notify::position", G_CALLBACK( paned_position ), &g_vpaned1 ); - gtk_paned_add1( GTK_PANED( vsplit ), create_framed_widget( topleft ) ); - gtk_paned_add2( GTK_PANED( vsplit ), create_framed_widget( topright ) ); + gtk_paned_add1( GTK_PANED( vsplit ), GTK_WIDGET( create_framed_widget( topleft ) ) ); + gtk_paned_add2( GTK_PANED( vsplit ), GTK_WIDGET( create_framed_widget( botleft ) ) ); } { auto vsplit = ui::VPaned(ui::New); - gtk_paned_add2( GTK_PANED( hsplit ), vsplit ); - vsplit.show(); + vsplit2 = vsplit; + gtk_paned_add2( GTK_PANED( hsplit ), GTK_WIDGET( vsplit ) ); + gtk_widget_show( GTK_WIDGET( vsplit ) ); vsplit.connect( "size_allocate", G_CALLBACK( vpaned_allocate ), &g_vpaned2 ); vsplit.connect( "notify::position", G_CALLBACK( paned_position ), &g_vpaned2 ); - gtk_paned_add1( GTK_PANED( vsplit ), create_framed_widget( botleft ) ); - gtk_paned_add2( GTK_PANED( vsplit ), create_framed_widget( botright ) ); + gtk_paned_add1( GTK_PANED( vsplit ), GTK_WIDGET( create_framed_widget( topright ) ) ); + gtk_paned_add2( GTK_PANED( vsplit ), GTK_WIDGET( create_framed_widget( botright ) ) ); } return hsplit; }