DEADSOFTWARE

render: use only r_render to access render-specific info
[d2df-sdl.git] / src / game / opengl / r_render.pas
index 2a4c3e7247226170373c12d4ce38ea07ca61444e..e5ed3486c9916192ffbfd443bd64b345dd45f0bc 100644 (file)
@@ -17,7 +17,12 @@ unit r_render;
 
 interface
 
-  uses g_base; // TRectWH
+  uses
+    {$IFDEF ENABLE_MENU}
+      g_gui,
+    {$ENDIF}
+    g_base // TRectWH
+  ;
 
   procedure r_Render_Initialize;
   procedure r_Render_Finalize;
@@ -49,6 +54,13 @@ interface
     procedure r_Render_GetKeyRect (key: Integer; out x, y, w, h: Integer; out founded: Boolean);
   {$ENDIF}
 
+  {$IFDEF ENABLE_MENU}
+    procedure r_Render_GetControlSize (ctrl: TGUIControl; out w, h: Integer);
+    procedure r_Render_GetLogoSize (out w, h: Integer);
+    procedure r_Render_GetMaxFontSize (BigFont: Boolean; out w, h: Integer);
+    procedure r_Render_GetStringSize (BigFont: Boolean; str: String; out w, h: Integer);
+  {$ENDIF}
+
   procedure r_Render_DrawLoading (force: Boolean); // !!! remove it
 
 implementation
@@ -64,6 +76,9 @@ implementation
     {$IFDEF ENABLE_SYSTEM}
       g_system,
     {$ENDIF}
+    {$IFDEF ENABLE_MENU}
+      r_gui,
+    {$ENDIF}
     SysUtils, Classes, Math,
     e_log, utils,
     g_game, g_options, g_console,
@@ -220,10 +235,16 @@ implementation
     {$IFDEF ENABLE_GFX}
       r_GFX_Load;
     {$ENDIF}
+    {$IFDEF ENABLE_MENU}
+      r_GUI_Load;
+    {$ENDIF}
   end;
 
   procedure r_Render_Free;
   begin
+    {$IFDEF ENABLE_MENU}
+      r_GUI_Free;
+    {$ENDIF}
     {$IFDEF ENABLE_GFX}
       r_GFX_Free;
     {$ENDIF}
@@ -353,6 +374,28 @@ implementation
   end;
 {$ENDIF}
 
+{$IFDEF ENABLE_MENU}
+  procedure r_Render_GetControlSize (ctrl: TGUIControl; out w, h: Integer);
+  begin
+    r_GUI_GetSize(ctrl, w, h)
+  end;
+
+  procedure r_Render_GetLogoSize (out w, h: Integer);
+  begin
+    r_GUI_GetLogoSize(w, h)
+  end;
+
+  procedure r_Render_GetMaxFontSize (BigFont: Boolean; out w, h: Integer);
+  begin
+    r_GUI_GetMaxFontSize(BigFont, w, h)
+  end;
+
+  procedure r_Render_GetStringSize (BigFont: Boolean; str: String; out w, h: Integer);
+  begin
+    r_GUI_GetStringSize(BigFont, str, w, h)
+  end;
+{$ENDIF}
+
   procedure r_Render_DrawLoading (force: Boolean);
   begin
     r_Window_DrawLoading(force)