gtk_statusbar question



Hello.
I'm try to use gtk_statusbar in my application.
I'm use gtkbuild to load GtkWidget.
Then i'm click to open file executes on_open_menu_item_activate,
Widgets struct contains all needed widgets, but message not displayed in
statusbar, only errors in colsole, where is my mistake?
Please help me..


(usp-client:2390): GLib-GObject-WARNING **: invalid unclassed pointer in
cast to `GtkStatusbar'

(test:2390): Gtk-CRITICAL **: gtk_statusbar_pop: assertion
`GTK_IS_STATUSBAR (statusbar)' failed

(test:2390): GLib-GObject-WARNING **: invalid unclassed pointer in cast
to `GtkStatusbar'

(test:2390): Gtk-CRITICAL **: gtk_statusbar_push: assertion
`GTK_IS_STATUSBAR (statusbar)' failed

(test:2390): GLib-GObject-WARNING **: invalid unclassed pointer in cast
to `GtkStatusbar'

(test:2390): Gtk-CRITICAL **: gtk_statusbar_pop: assertion
`GTK_IS_STATUSBAR (statusbar)' failed

(ïtest:2390): GLib-GObject-WARNING **: invalid unclassed pointer in cast
to `GtkStatusbar'

(ïtest:2390): Gtk-CRITICAL **: gtk_statusbar_pop: assertion
`GTK_IS_STATUSBAR (statusbar)' failed

(ïtest:2390): GLib-GObject-WARNING **: invalid unclassed pointer in cast
to `GtkStatusbar'

(ïtest:2390): Gtk-CRITICAL **: gtk_statusbar_push: assertion
`GTK_IS_STATUSBAR (statusbar)' failed



typedef struct {
        GtkWidget *window;
        GtkWidget *about;
        GtkWidget *statusbar;
        GtkWidget *hbuttonbox;
        GtkWidget *description_label;
        GtkWidget *event_left;
        GtkWidget *event_right;
        GtkWidget *connection;
     
        guint statusbar_context_id;
        gchar *filename;
} Widgets;

widgets->statusbar = GTK_WIDGET (gtk_builder_get_object (builder,
"statusbar"));

        guint id = gtk_statusbar_get_context_id (GTK_STATUSBAR
(widgets->statusbar), "test");

        widgets->statusbar_context_id = id;


extern "C" void on_open_menu_item_activate (GtkMenuItem *menuitem,
Widgets *widgets) {
        gchar                   *filename;

        if (filename != NULL) load_file (widgets, "test.file");
}

extern "C" void load_file (Widgets *widgets, gchar *filename) {
        gchar                   *stat;

        stat = g_strdup_printf ("Loading %s...", filename);
     gtk_statusbar_pop (GTK_STATUSBAR (widgets->statusbar),
widgets->statusbar_context_id);
        gtk_statusbar_push (GTK_STATUSBAR (widgets->statusbar),
widgets->statusbar_context_id, stat);
     g_free (stat);
     
        while (gtk_events_pending()) gtk_main_iteration();

     if (widgets->filename != NULL) g_free (widgets->filename);
        widgets->filename = filename;

        gtk_statusbar_pop (GTK_STATUSBAR (widgets->statusbar),
widgets->statusbar_context_id);
        reset_default_status (widgets);


}




-- 
Vasiliy G Tolstov <v tolstov selfip ru>
Selfip.Ru




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]