#include <gtk/gtk.h>
+#include <uilib/uilib.h>
#include "support.h"
-GtkWidget*
-lookup_widget( GtkWidget *widget,
+ui::Widget
+lookup_widget(ui::Widget widget,
const gchar *widget_name ){
- GtkWidget *parent, *found_widget;
+ ui::Widget parent{ui::null};
for (;; )
{
if ( GTK_IS_MENU( widget ) ) {
- parent = gtk_menu_get_attach_widget( GTK_MENU( widget ) );
+ parent = ui::Widget::from(gtk_menu_get_attach_widget( GTK_MENU( widget ) ));
}
else{
- parent = widget->parent;
+ parent = ui::Widget::from(gtk_widget_get_parent(widget));
}
if ( !parent ) {
- parent = (GtkWidget*) g_object_get_data( G_OBJECT( widget ), "GladeParentKey" );
+ parent = ui::Widget::from(g_object_get_data( G_OBJECT( widget ), "GladeParentKey" ));
}
if ( parent == NULL ) {
break;
widget = parent;
}
- found_widget = (GtkWidget*) g_object_get_data( G_OBJECT( widget ),
- widget_name );
+ auto found_widget = ui::Widget::from(g_object_get_data( G_OBJECT( widget ), widget_name ));
if ( !found_widget ) {
g_warning( "Widget not found: %s", widget_name );
}