Index

Package: Scenes

Description

package Widgets.Containers.Scenes is

Classes

Scene (abstract)

type Scene is abstract new Container and Event_Listener with private;

Ancestors:

Immediate Children:

Widgets.Containers.Scenes.Keen.Keen_Scene

Primitive operations:

Add (overriding Widgets.Containers.Add)
Clear_Selection
Construct (overriding Widgets.Construct)
Delete (overriding Widgets.Containers.Delete)
Delete_Children (overriding Widgets.Containers.Delete_Children)
Draw_Content
Draw_Layer_Overlay
Events.Listeners.To_String (Inherited)
Get_Min_Height (overriding Widgets.Get_Min_Height)
Get_Min_Width (overriding Widgets.Get_Min_Width)
Handle_Entity_Attribute_Changed
Handle_Entity_Created
Handle_Entity_Deleted
Handle_Entity_Moved
Handle_Entity_Resized
Handle_Event (overriding Events.Listeners.Handle_Event)
Handle_Frame_Changed
Handle_New_World
Handle_Resize (overriding Widgets.Containers.Handle_Resize)
Handle_Tile_Changed
Handle_World_Property_Changed
Objects.Construct (Inherited)
Remove (overriding Widgets.Containers.Remove)
Set_Selection
Widgets.Activate_Popup (Inherited)
Widgets.Bring_To_Front (Inherited)
Widgets.Containers.Apply_Container_Layout (Inherited)
Widgets.Containers.Bring_To_Front (Inherited)
Widgets.Containers.Delete_Child (Inherited)
Widgets.Containers.Draw (Inherited)
Widgets.Containers.Draw_Children (Inherited)
Widgets.Containers.Draw_Content (Inherited)
Widgets.Containers.Find_Widget (Inherited)
Widgets.Containers.Handle_Ancestor_Hidden (Inherited)
Widgets.Containers.Handle_Ancestor_Unhidden (Inherited)
Widgets.Containers.Pack (Inherited)
Widgets.Containers.Set_Zoom (Inherited)
Widgets.Deactivate_Popup (Inherited)
Widgets.Get_Color (Inherited)
Widgets.Get_View (Inherited)
Widgets.Get_Window (Inherited)
Widgets.Handle_Blur (Inherited)
Widgets.Handle_Click (Inherited)
Widgets.Handle_Descendant_Hidden (Inherited)
Widgets.Handle_Descendant_Unhidden (Inherited)
Widgets.Handle_Enter (Inherited)
Widgets.Handle_Exit (Inherited)
Widgets.Handle_Focus (Inherited)
Widgets.Handle_Key_Held (Inherited)
Widgets.Handle_Key_Press (Inherited)
Widgets.Handle_Key_Release (Inherited)
Widgets.Handle_Mouse_Held (Inherited)
Widgets.Handle_Mouse_Move (Inherited)
Widgets.Handle_Mouse_Press (Inherited)
Widgets.Handle_Mouse_Release (Inherited)
Widgets.Handle_Mouse_Scroll (Inherited)
Widgets.Set_Color (Inherited)
Widgets.Set_Dirty (Inherited)
Widgets.Set_Enabled (Inherited)
Widgets.Set_Focused (Inherited)
Widgets.Set_Parent (Inherited)
Widgets.Set_Visible (Inherited)
Widgets.To_String (Inherited)
Widgets.Translate_To_Content (Inherited)
Widgets.Translate_To_Window (Inherited)

Types

A_Scene

type A_Scene is access all Scene'Class;

Subprograms & Entries

Draw_Layer (abstract)

procedure Draw_Layer
( this: access Scene;
dc: Drawing_Context;
layer: Positive;
-- layer to draw startX, -- location in world coordinates startY: Integer;
-- to start drawing tileX1, -- range of the visible layer tileY1, -- in tile coordinates tileX2, -- tileY2: Integer -- ) is abstract;

Get_Height_Tiles

function Get_Height_Tiles
( this: not null access Scene'Class ) return Natural;

Get_Width_Tiles

function Get_Width_Tiles
( this: not null access Scene'Class ) return Natural;

Scroll

procedure Scroll
( this: not null access Scene'Class;
x, y: Float );
Shifts the focus of the scene by x, y in world coordinates. If the scene is following a target entity then scrolling will be constrained to the target by slack the distance.

Set_Selection

procedure Set_Selection
( this: access Scene;
child: A_Widget );
Passing null in 'child' will clear the selection.

Set_Target

procedure Set_Target
( this: access Scene;
target: Entity_Id );

Unselect

procedure Unselect
( this: access Scene;
child: not null A_Widget );