summaryrefslogtreecommitdiff
path: root/fpcsrc/packages/gtk2/src/gtk+/gtk/gtktextdisplay.inc
blob: 16a356b2dbbffbd1681e6569d85bcf67ee964d28 (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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
{ Pointers to basic pascal types, inserted by h2pas conversion program.}
Type
  PLongint  = ^Longint;
  PSmallInt = ^SmallInt;
  PByte     = ^Byte;
  PWord     = ^Word;
  PDWord    = ^DWord;
  PDouble   = ^Double;

{$PACKRECORDS C}

{ gtktextdisplay.c - display layed-out text

   Copyright (c) 1992-1994 The Regents of the University of California.
   Copyright (c) 1994-1997 Sun Microsystems, Inc.
   Copyright (c) 2000 Red Hat, Inc.
   Tk->Gtk port by Havoc Pennington

   This file can be used under your choice of two licenses, the LGPL
   and the original Tk license.

   LGPL:

   This library is free software; you can redistribute it and/or
   modify it under the terms of the GNU Lesser General Public
   License as published by the Free Software Foundation; either
   version 2 of the License, or (at your option) any later version.

   This library is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Lesser General Public License for more details.

   You should have received a copy of the GNU Lesser General Public
   License along with this library; if not, write to the Free
   Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

   Original Tk license:

   This software is copyrighted by the Regents of the University of
   California, Sun Microsystems, Inc., and other parties.  The
   following terms apply to all files associated with the software
   unless explicitly disclaimed in individual files.

   The authors hereby grant permission to use, copy, modify,
   distribute, and license this software and its documentation for any
   purpose, provided that existing copyright notices are retained in
   all copies and that this notice is included verbatim in any
   distributions. No written agreement, license, or royalty fee is
   required for any of the authorized uses.  Modifications to this
   software may be copyrighted by their authors and need not follow
   the licensing terms described here, provided that the new terms are
   clearly indicated on the first page of each file where they apply.

   IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY
   PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL
   DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION,
   OR ANY DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED
   OF THE POSSIBILITY OF SUCH DAMAGE.

   THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES,
   INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
   MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND
   NON-INFRINGEMENT.  THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS,
   AND THE AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE
   MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.

   GOVERNMENT USE: If you are acquiring this software on behalf of the
   U.S. government, the Government shall have only "Restricted Rights"
   in the software and related documentation as defined in the Federal
   Acquisition Regulations (FARs) in Clause 52.227.19 (c) (2).  If you
   are acquiring the software on behalf of the Department of Defense,
   the software shall be classified as "Commercial Computer Software"
   and the Government shall have only "Restricted Rights" as defined
   in Clause 252.227-7013 (c) (1) of DFARs.  Notwithstanding the
   foregoing, the authors grant the U.S. Government and others acting
   in its behalf permission to use and distribute the software in
   accordance with the terms specified in this license.

  }
{
   Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS
   file for a list of people on the GTK+ Team.  See the ChangeLog
   files for a list of changes.  These files are distributed with
   GTK+ at ftp://ftp.gtk.org/pub/gtk/.
  }
{$ifndef GTK_TEXT_DISPLAY_H}
{$define GTK_TEXT_DISPLAY_H}
{$include gtktextlayout.inc}
{ C++ extern C conditionnal removed }
{ __cplusplus  }
{ A semi-public header intended for use by code that also
   uses GtkTextLayout
  }
{ The drawable should be pre-initialized to your preferred background.
   widget            - Widget to grab some style info from
   drawable          - Drawable to render to
   cursor_gc         - Graphics context to use for cursor
   x_offset/y_offset - Position of the drawable in layout coordinates
   x/y/width/height  - Region of the layout to render. x,y must be inside
                       the drawable.
   widgets           - list of widgets that need exposing
  }

procedure gtk_text_layout_draw(layout:PGtkTextLayout; widget:PGtkWidget; drawable:PGdkDrawable; cursor_gc:PGdkGC; x_offset:gint;
            y_offset:gint; x:gint; y:gint; width:gint; height:gint;
            widgets:PPGList); cdecl; external gtklib;
{ C++ end of extern C conditionnal removed }
{ __cplusplus  }
{$endif}
{ GTK_TEXT_DISPLAY_H  }