1. with Associations;                      use Associations; 
  2. with Entities;                          use Entities; 
  3.  
  4. private with Widgets.Buttons; 
  5.  
  6. pragma Warnings( Off, Associations ); 
  7.  
  8. package Widgets.Containers.Panels.Dialogs.Entity_Attributes is 
  9.  
  10.     function Create_Entity_Attributes_Dialog( view       : not null access Game_Views.Game_View'Class; 
  11.                                               id         : String; 
  12.                                               eid        : Entity_Id; 
  13.                                               class      : String; 
  14.                                               attributes : not null A_Association ) return A_Dialog; 
  15.     pragma Precondition( id'Length > 0 ); 
  16.     pragma Precondition( class'Length > 0 ); 
  17.     pragma Postcondition( Create_Entity_Attributes_Dialog'Result /= null ); 
  18.  
  19. private 
  20.  
  21.     use Widgets.Buttons; 
  22.  
  23.     type Entity_Attributes_Dialog is new Dialog and Button_Listener with 
  24.         record 
  25.             eid         : Entity_Id; 
  26.             eAttributes : A_Association := null; 
  27.         end record; 
  28.  
  29.     procedure Construct( this       : access Entity_Attributes_Dialog; 
  30.                          view       : not null access Game_Views.Game_View'Class; 
  31.                          id         : String; 
  32.                          eid        : Entity_Id; 
  33.                          class      : String; 
  34.                          attributes : not null A_Association ); 
  35.     pragma Precondition( id'Length > 0 ); 
  36.     pragma Precondition( class'Length > 0 ); 
  37.  
  38.     procedure Do_Apply( this : access Entity_Attributes_Dialog ); 
  39.  
  40.     procedure Handle_Action( this   : access Entity_Attributes_Dialog; 
  41.                              action : A_Button_Action ); 
  42.  
  43.     procedure Handle_Action( this    : access Entity_Attributes_Dialog; 
  44.                              action  : A_Key_Action; 
  45.                              handled : out Boolean ); 
  46.  
  47.     procedure Show( this : access Entity_Attributes_Dialog ); 
  48.  
  49. end Widgets.Containers.Panels.Dialogs.Entity_Attributes;