summaryrefslogtreecommitdiff
path: root/fpcsrc/packages/gtk2/src/pango/pango-fontmap.inc
blob: 7c9fff260e12773cd3968ea6a5eb31c9da91282c (plain)
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
// included by pango.pp
{$IFDEF read_interface_types}

{$IFDEF PANGO_ENABLE_BACKEND}
   PPangoFontMap = ^TPangoFontMap;
   TPangoFontMap = record
        parent_instance : TGObject;
     end;

{ Padding for future expansion  }
   TPangoFontMapClassLoadFont =
     function (fontmap:PPangoFontMap; context:PPangoContext;
               desc:PPangoFontDescription):PPangoFont; cdecl;
   TPangoFontMapClassListFamilies =
     procedure (fontmap:PPangoFontMap; families:PPPPangoFontFamily;
                n_families:Plongint); cdecl;
   TPangoFontMapClassFontSet =
     function (fontmap:PPangoFontMap; context:PPangoContext;
               desc:PPangoFontDescription;
               language:PPangoLanguage):PPangoFontset; cdecl;

   PPangoFontMapClass = ^TPangoFontMapClass;
   TPangoFontMapClass = record
        parent_class : TGObjectClass;
        load_font : TPangoFontMapClassLoadFont;
        list_families : TPangoFontMapClassListFamilies;
        load_fontset : TPangoFontMapClassFontSet;
        _pango_reserved1 : procedure ; cdecl;
        _pango_reserved2 : procedure ; cdecl;
        _pango_reserved3 : procedure ; cdecl;
        _pango_reserved4 : procedure ; cdecl;
     end;
{$ENDIF}


{$ENDIF read_interface_types}

//------------------------------------------------------------------------------

{$IFDEF read_interface_functions}
function PANGO_TYPE_FONT_MAP : GType;
function PANGO_FONT_MAP(anObject : pointer) : PPangoFontMap;
function PANGO_IS_FONT_MAP(anObject : pointer) : boolean;

function pango_font_map_get_type:GType; cdecl; external pangolib;
function pango_font_map_load_font(fontmap:PPangoFontMap; context:PPangoContext; desc:PPangoFontDescription):PPangoFont; cdecl; external pangolib;
function pango_font_map_load_fontset(fontmap:PPangoFontMap; context:PPangoContext; desc:PPangoFontDescription; language:PPangoLanguage):PPangoFontset; cdecl; external pangolib;
procedure pango_font_map_list_families(fontmap:PPangoFontMap; families:PPPPangoFontFamily; n_families:Plongint); cdecl; external pangolib;

{$ifdef PANGO_ENABLE_BACKEND}
function PANGO_FONT_MAP_CLASS(klass : pointer) : PPangoFontMapClass;
function PANGO_IS_FONT_MAP_CLASS(klass : pointer) : boolean;
function PANGO_FONT_MAP_GET_CLASS(obj : PPangoFontMap) : PPangoFontMapClass;
{$endif}
{ PANGO_ENABLE_BACKEND  }
{$endif read_interface_functions}

//------------------------------------------------------------------------------

{$IFDEF read_implementation}
function PANGO_TYPE_FONT_MAP : GType;
begin
  PANGO_TYPE_FONT_MAP:=pango_font_map_get_type;
end;

function PANGO_FONT_MAP(anObject : pointer) : PPangoFontmap;
begin
  PANGO_FONT_MAP:=PPangoFontmap(G_TYPE_CHECK_INSTANCE_CAST(anObject,
                                                          PANGO_TYPE_FONT_MAP));
end;

function PANGO_IS_FONT_MAP(anObject : pointer) : boolean;
begin
  PANGO_IS_FONT_MAP:=G_TYPE_CHECK_INSTANCE_TYPE(anObject,PANGO_TYPE_FONT_MAP);
end;

function PANGO_FONT_MAP_CLASS(klass : pointer) : PPangoFontMapClass;
begin
  PANGO_FONT_MAP_CLASS:=PPangoFontMapClass(G_TYPE_CHECK_CLASS_CAST(klass,
                                                          PANGO_TYPE_FONT_MAP));
end;

function PANGO_IS_FONT_MAP_CLASS(klass : pointer) : boolean;
begin
  PANGO_IS_FONT_MAP_CLASS:=G_TYPE_CHECK_CLASS_TYPE(klass,PANGO_TYPE_FONT_MAP);
end;

function PANGO_FONT_MAP_GET_CLASS(obj : PPangoFontMap) : PPangoFontMapClass;
begin
   PANGO_FONT_MAP_GET_CLASS:=PPangoFontMapClass(G_TYPE_INSTANCE_GET_CLASS(obj,
                                                          PANGO_TYPE_FONT_MAP));
end;
{$ENDIF}