Mercurial > dwindows
diff gtk/dw.c @ 34:b03b24bb95f8
Added dw_window_default() to set the default focus widget in a dialog.
Also some fixes for containers on OS/2.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Mon, 03 Sep 2001 23:30:43 +0000 |
parents | 72675de7d229 |
children | cddb02f847e1 |
line wrap: on
line diff
--- a/gtk/dw.c Thu Aug 30 06:07:19 2001 +0000 +++ b/gtk/dw.c Mon Sep 03 23:30:43 2001 +0000 @@ -723,6 +723,7 @@ int dw_window_show(HWND handle) { int _locked_by_me = FALSE; + GtkWidget *defaultitem; if(!handle) return 0; @@ -733,6 +734,9 @@ gdk_flush(); gdk_window_show(GTK_WIDGET(handle)->window); gdk_flush(); + defaultitem = (GtkWidget *)gtk_object_get_data(GTK_OBJECT(handle), "defaultitem"); + if(defaultitem) + gtk_widget_grab_focus(defaultitem); DW_MUTEX_UNLOCK; return 0; } @@ -4413,6 +4417,24 @@ } /* + * Sets the default focus item for a window/dialog. + * Parameters: + * window: Toplevel window or dialog. + * defaultitem: Handle to the dialog item to be default. + */ +void dw_window_default(HWND window, HWND defaultitem) +{ + int _locked_by_me = FALSE; + + if(!window) + return; + + DW_MUTEX_LOCK; + gtk_object_set_data(GTK_OBJECT(window), "defaultitem", (gpointer)defaultitem); + DW_MUTEX_UNLOCK; +} + +/* * Returns some information about the current operating environment. * Parameters: * env: Pointer to a DWEnv struct.