indexing description: "[ Wrapper to perform dispatch for standard dialogs. It is intended to be used through inheritance. Descendants of this class should wrap the call to the Window API to show the dialog with a call to `begin_activate' and `end_activate'. ]" legal: "See notice at end of class." status: "See notice at end of class." date: "$Date$" revision: "$Revision$" deferred class WEL_STANDARD_DIALOG_DISPATCHER feature {NONE} -- Initialization begin_activate is -- Initialize the C variables. do create dialog_delegate.make (Current, $standard_dialog_procedure) cwel_set_standard_dialog_procedure_address (dialog_delegate) end end_activate is -- Uninitialize the C variables. do dialog_delegate := Void cwel_set_standard_dialog_procedure_address (Void) end feature {NONE} -- Implementation standard_dialog_procedure (hdlg: POINTER; msg: INTEGER_32; wparam, lparam: POINTER): POINTER is deferred end feature {NONE} -- Externals dialog_delegate: WEL_DISPATCHER_DELEGATE -- Delegate for callbacks. cwel_set_standard_dialog_procedure_address (address: WEL_DISPATCHER_DELEGATE) is external "C [macro %"disptchr.h%"] (EIF_POINTER)" end wel_standard_dialog_procedure: POINTER is -- Address of the C routine wrapping `standard_dialog_procedure'. external "C inline use %"disptchr.h%"" alias "return (EIF_POINTER) cwel_standard_dialog_procedure;" end indexing copyright: "Copyright (c) 1984-2006, Eiffel Software and others" license: "Eiffel Forum License v2 (see http://www.eiffel.com/licensing/forum.txt)" source: "[ Eiffel Software 356 Storke Road, Goleta, CA 93117 USA Telephone 805-685-1006, Fax 805-685-6869 Website http://www.eiffel.com Customer support http://support.eiffel.com ]" end