summaryrefslogtreecommitdiff
path: root/fpcsrc/packages/gtk2/src/glib/gmarkup.inc
blob: 058a1df03c9c3ffd78dd4e91895511ed195f55b2 (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
// included by glib2.pas

{$IFDEF read_forward_definitions}
{$ENDIF read_forward_definitions}

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

{$IFDEF read_interface_types}
  PGMarkupError = ^TGMarkupError;
  TGMarkupError = (
    G_MARKUP_ERROR_BAD_UTF8,
    G_MARKUP_ERROR_EMPTY,
    G_MARKUP_ERROR_PARSE,
    G_MARKUP_ERROR_UNKNOWN_ELEMENT,
    G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE,
    G_MARKUP_ERROR_INVALID_CONTENT
  );

  PGMarkupParseFlags = ^TGMarkupParseFlags;
  TGMarkupParseFlags = integer;

  PGMarkupParseContext = ^TGMarkupParseContext;
  TGMarkupParseContext = pointer;                // please correct me if it's wrong


  PGMarkupParser = ^TGMarkupParser;
  TGMarkupParser = record
    start_element : procedure (context          : PGMarkupParseContext;
                               element_name     : Pgchar;
                               attribute_names  : PPgchar;
                               attribute_values : PPgchar;
                               user_data        : gpointer; error:PPGError);cdecl;
    end_element   : procedure (context          : PGMarkupParseContext;
                               element_name     : Pgchar;
                               user_data        : gpointer;
                               error            : PPGError); cdecl;
    text          : procedure (context          : PGMarkupParseContext;
                               text             : Pgchar;
                               text_len         : gsize;
                               user_data        : gpointer;
                               error            : PPGError); cdecl;
    passthrough   : procedure (context          : PGMarkupParseContext;
                               passthrough_text : Pgchar;
                               text_len         : gsize;
                               user_data        : gpointer;
                               error            : PPGError); cdecl;
    error          : procedure (context         : PGMarkupParseContext;
                                error           : PGError;
                                user_data       : gpointer); cdecl;
    end;
{$ENDIF read_interface_types}

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

{$IFDEF read_interface_rest}
function G_MARKUP_ERROR : TGQuark;

function g_markup_error_quark:TGQuark;cdecl;external gliblib name 'g_markup_error_quark';

const
  G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG = 1 shl 0;


function  g_markup_parse_context_new (parser            : PGMarkupParser;
                                      flags             : TGMarkupParseFlags;
                                      user_data         : gpointer;
                                      user_data_dnotify : TGDestroyNotify): PGMarkupParseContext;  cdecl;external gliblib name 'g_markup_parse_context_new';

procedure g_markup_parse_context_free(context           : PGMarkupParseContext);cdecl;external gliblib name 'g_markup_parse_context_free';
function  g_markup_parse_context_parse(context          : PGMarkupParseContext;
                                       text             : Pgchar;
                                       text_len         : gssize;
                                       error            : PPGError):gboolean;cdecl;external gliblib name 'g_markup_parse_context_parse';

function  g_markup_parse_context_end_parse(context      : PGMarkupParseContext;
                                           error        : PPGError):gboolean;cdecl;external gliblib name 'g_markup_parse_context_end_parse';
procedure g_markup_parse_context_get_position(context     : PGMarkupParseContext;
                                              line_number : Pgint;
                                              char_number : Pgint);cdecl;external gliblib name 'g_markup_parse_context_get_position';
function g_markup_escape_text (text   : Pgchar;
                               length : gssize):Pgchar;cdecl;external gliblib name 'g_markup_escape_text';

{$ENDIF read_interface_rest}
// included by glib2.pas