indexing description: "[ Scene that contains EM_WIDGET's. Widgets can be added using `add_widget'. The next scene can be set and started using `set_next_scene' and `start_next_scene'. Subclasses must call `make_widget_scene' at creation. ]" date: "$Date$" revision: "$Revision$" class EM_WIDGET_SCENE inherit EM_COMPONENT_SCENE redefine initialize_scene end EM_WIDGET rename set_mouse_focus as widget_set_mouse_focus, mouse_focus as widget_mouse_focus, redraw as widget_redraw, width as widget_width, height as widget_height export {NONE} set_position, x, y {NONE} optimal_width, optimal_height {NONE} widget_width, widget_height, widget_redraw {NONE} widget_mouse_focus, widget_set_mouse_focus end EM_TIME_SINGLETON export {NONE} all end create make_widget_scene feature {NONE} -- Initialisation make_widget_scene is -- Initialise widget scene. do make_component_scene make_from_dimension (Video_subsystem.video_surface_width, Video_subsystem.video_surface_height) set_optimal_dimension (Video_subsystem.video_surface_width, Video_subsystem.video_surface_height) add_component (Current) end delegate_factory: FUNCTION [ANY, TUPLE [], like delegate] is -- Factory to create default delegate do Result := theme_delegates.panel_delegate_factory end feature -- Initialisation initialize_scene is -- Initialize the scene. do if Video_subsystem.opengl_enabled and not Video_subsystem.video_surface.is_opengl_enabled then Video_subsystem.video_surface.enable_opengl_blitting end Precursor {EM_COMPONENT_SCENE} end end