Antony Stace <[EMAIL PROTECTED]> writes:
> [snip]
> GtkWidget *switchW;
> GdkCursor* TelCursor = gdk_cursor_new(GDK_HAND2);
> switchW = gtk_window_new (GTK_WINDOW_POPUP);
> gdk_window_set_cursor(switchW->window, TelCursor);
> [snip]
>
>
> and here is the error
> oakura:/home/kermit> /tmp/switch.x
>
> Gdk-CRITICAL **: file gdkwindow.c: line 1274
> (gdk_window_set_cursor): assertion `window != NULL' failed.
>
You need to wait for the window to be realized. Since realization can
happen more than once I would simply gtk_signal_connect_after() to the
realize signal on the window, and set the cursor there.
So:
void
my_realize_cb (GtkWidget *widget, gpionter user_data)
{
GdkCursor *cursor;
cursor = gdk_cursor_new (GDK_HAND2);
gdk_window_set_cursor (widget->window, cursor);
gdk_cursor_destroy (cursor);
}
gtk_signal_connect_after (GTK_OBJECT (widget), "realize",
GTK_SIGNAL_FUNC (my_realize_cb), NULL);
Havoc
_______________________________________________
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list