1. -- 
  2. -- Copyright (c) 2012 Kevin Wellwood 
  3. -- All rights reserved. 
  4. -- 
  5. -- This source code is distributed under the Modified BSD License. For terms and 
  6. -- conditions, see license.txt. 
  7. -- 
  8.  
  9. --private with Physics.Clip_Maps; 
  10.  
  11. package Widgets.Containers.Scenes.Keen is 
  12.  
  13.     function Create_Scene( view : not null access Game_Views.Game_View'Class; 
  14.                            id   : String ) return A_Scene; 
  15.     pragma Precondition( id'Length > 0 ); 
  16.     pragma Postcondition( Create_Scene'Result /= null ); 
  17.  
  18. private 
  19.  
  20. --    use Physics.Clip_Maps; 
  21.  
  22.     type Keen_Scene is new Scene with null record; 
  23. --      record 
  24. --          clipMap : A_Clip_Map := null; 
  25. --      end record; 
  26.  
  27.     procedure Construct( this : access Keen_Scene; 
  28.                          view : not null access Game_Views.Game_View'Class; 
  29.                          id   : String ); 
  30.     pragma Precondition( id'Length > 0 ); 
  31.  
  32.     procedure Delete( this : in out Keen_Scene ); 
  33.  
  34.     procedure Draw_Layer( this   : access Keen_Scene; 
  35.                           layer  : Positive; 
  36.                           startX, 
  37.                           startY : Integer; 
  38.                           tileX1, 
  39.                           tileY1, 
  40.                           tileX2, 
  41.                           tileY2 : Integer ); 
  42. -- 
  43. --  procedure Draw_Layer_Overlay( this   : access Keen_Scene; 
  44. --                                startX, 
  45. --                                startY : Integer; 
  46. --                                tileX1, 
  47. --                                tileY1, 
  48. --                                tileX2, 
  49. --                                tileY2 : Integer ); 
  50. -- 
  51.  
  52.     procedure Handle_Event( this : access Keen_Scene; 
  53.                             evt  : in out A_Event; 
  54.                             resp : out Response_Type ); 
  55.     pragma Precondition( evt /= null ); 
  56.  
  57.     procedure Handle_World_Loaded( this : access Keen_Scene; 
  58.                                    evt  : not null A_World_Loaded_Event ); 
  59.  
  60.     procedure Handle_World_Property_Changed( this : access Keen_Scene; 
  61.                                              evt  : not null A_World_Property_Event ); 
  62.  
  63. end Widgets.Containers.Scenes.Keen;