private with Events;
private with Events.Listeners;
private with Widgets.Buttons;
package Widgets.Containers.Panels.Dialogs.Resize_World is
function Create_Resize_Dialog( view : not null access Game_Views.Game_View'Class;
id : String ) return A_Dialog;
pragma Precondition( id'Length > 0 );
pragma Postcondition( Create_Resize_Dialog'Result /= null );
private
use Events;
use Events.Listeners;
use Widgets.Buttons;
type Resize_Dialog is new Dialog and
Button_Listener and
Event_Listener with
record
mapHeight,
mapWidth : Integer;
end record;
procedure Construct( this : access Resize_Dialog;
view : not null access Game_Views.Game_View'Class;
id : String );
pragma Precondition( id'Length > 0 );
procedure Delete( this : in out Resize_Dialog );
procedure Do_Ok( this : access Resize_Dialog );
procedure Handle_Action( this : access Resize_Dialog;
action : A_Button_Action );
procedure Handle_Action( this : access Resize_Dialog;
action : A_Key_Action;
handled : out Boolean );
procedure Handle_Event( this : access Resize_Dialog;
evt : in out A_Event;
resp : out Response_Type );
pragma Precondition( evt /= null );
procedure Handle_Show( this : access Resize_Dialog );
procedure Show( this : access Resize_Dialog );
end Widgets.Containers.Panels.Dialogs.Resize_World;