note description: "[ DEMO_WINDOW class, base class for all demo windows. Belongs to EiffelVision example test_all_widgets. Note: A demo window is an empty window, features must be redefine to have a full window. ]" legal: "See notice at end of class." status: "See notice at end of class." id: "$Id$" date: "$Date$" revision: "$Revision$" class DEMO_WINDOW inherit EV_WINDOW redefine make end create make feature -- Initialization make (par: MAIN_WINDOW) do the_parent := par Precursor {EV_WINDOW} (the_parent) set_widgets set_values end feature -- Access main_widget: EV_WIDGET -- The main widget of the demo do end actions_window: ACTIONS_WINDOW -- Actions window related to this demo effective_button: EV_TOGGLE_BUTTON -- Button which was pressed when this demo -- window was opened the_parent: MAIN_WINDOW -- The parent window of the current one feature -- Status setting set_widgets -- Set the widgets in the demo windows. -- Need to be redefine. do end set_values -- Set the values on the widgets of the window. -- Need to be redefine. do end set_effective_button (but: EV_TOGGLE_BUTTON) -- Make `but' the new `effective_button'. do effective_button := but end feature -- Show the window activate (win: MAIN_WINDOW) local arg1: EV_ARGUMENT1[DEMO_WINDOW] do create actions_window.make_with_main_widget (Current, main_widget) actions_window.show win.set_insensitive (True) create arg1.make (Current) add_close_command (win, arg1) show end note 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 -- class DEMO_WINDOW