honki_tonks_zivilisationen_0.5.5305_cfbe2104/src/Grafik/Grafikeinstellungen/TexteinstellungenGrafik.ads

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
with Ada.Strings.Wide_Wide_Unbounded; use Ada.Strings.Wide_Wide_Unbounded;
with Ada.Wide_Wide_Text_IO; use Ada.Wide_Wide_Text_IO;

with Sf.Graphics;
with Sf.Graphics.Color;
with Sf.Graphics.Text;

with TextDatentypen;

package TexteinstellungenGrafik is
   pragma Elaborate_Body;
   use type Sf.Graphics.sfFont_Ptr;
      
   procedure SchriftartFestlegen;
   
   procedure SchriftgrößeSchreiben
     (GrößeExtern : in Sf.sfUint32;
      WelcheGrößeExtern : in TextDatentypen.Schriftgröße_Enum);
   
   procedure SchriftfarbeSchreiben
     (FarbeExtern : in Sf.Graphics.Color.sfColor;
      WelcheFarbeExtern : in TextDatentypen.Schriftfarbe_Enum);
   
   procedure SchriftstilSchreiben
     (StilExtern : in Sf.Graphics.Text.sfTextStyle);
   
   
   
   function SchriftartLesen
     return Sf.Graphics.sfFont_Ptr
     with
       Post => (
                  SchriftartLesen'Result /= null
               );
      
   function SchriftgrößeLesen
     (WelcheGrößeExtern : in TextDatentypen.Schriftgröße_Enum)
      return Sf.sfUint32;
   
   function SchriftfarbeLesen
     (WelcheFarbeExtern : in TextDatentypen.Schriftfarbe_Enum)
      return Sf.Graphics.Color.sfColor;
   
   function StandardSchriftartVerwenden
     return String
     with
       Post => (
                  StandardSchriftartVerwenden'Result'Length > 0
               );
   
   function EigeneSchriftartVerwenden
     (SpracheExtern : in Wide_Wide_String)
      return String
     with
       Pre => (
                 SpracheExtern'Length > 0
              ),
         
       Post => (
                  EigeneSchriftartVerwenden'Result'Length > 0
               );
   
   function SchriftstilLesen
     return Sf.Graphics.Text.sfTextStyle;
   
private
   
   DateiSchriftart : File_Type;
   
   AktuelleSprache : Unbounded_Wide_Wide_String;
   EigeneSchriftart : Unbounded_Wide_Wide_String;

   SchriftartAccess : Sf.Graphics.sfFont_Ptr := null;
   
   SchriftartFehlt : exception;

end TexteinstellungenGrafik;