jdk/src/solaris/native/sun/awt/gtk2_interface.h
author ohair
Wed, 06 Apr 2011 22:06:11 -0700
changeset 9035 1255eb81cc2f
parent 8513 101b3095ff5a
child 9210 f973306e1d07
permissions -rw-r--r--
7033660: Update copyright year to 2011 on any files changed in 2011 Reviewed-by: dholmes
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     1
/*
9035
1255eb81cc2f 7033660: Update copyright year to 2011 on any files changed in 2011
ohair
parents: 8513
diff changeset
     2
 * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
90ce3da70b43 Initial load
duke
parents:
diff changeset
     4
 *
90ce3da70b43 Initial load
duke
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
90ce3da70b43 Initial load
duke
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
5506
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 5471
diff changeset
     7
 * published by the Free Software Foundation.  Oracle designates this
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
     8
 * particular file as subject to the "Classpath" exception as provided
5506
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 5471
diff changeset
     9
 * by Oracle in the LICENSE file that accompanied this code.
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    10
 *
90ce3da70b43 Initial load
duke
parents:
diff changeset
    11
 * This code is distributed in the hope that it will be useful, but WITHOUT
90ce3da70b43 Initial load
duke
parents:
diff changeset
    12
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
90ce3da70b43 Initial load
duke
parents:
diff changeset
    13
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
90ce3da70b43 Initial load
duke
parents:
diff changeset
    14
 * version 2 for more details (a copy is included in the LICENSE file that
90ce3da70b43 Initial load
duke
parents:
diff changeset
    15
 * accompanied this code).
90ce3da70b43 Initial load
duke
parents:
diff changeset
    16
 *
90ce3da70b43 Initial load
duke
parents:
diff changeset
    17
 * You should have received a copy of the GNU General Public License version
90ce3da70b43 Initial load
duke
parents:
diff changeset
    18
 * 2 along with this work; if not, write to the Free Software Foundation,
90ce3da70b43 Initial load
duke
parents:
diff changeset
    19
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
90ce3da70b43 Initial load
duke
parents:
diff changeset
    20
 *
5506
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 5471
diff changeset
    21
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 5471
diff changeset
    22
 * or visit www.oracle.com if you need additional information or have any
202f599c92aa 6943119: Rebrand source copyright notices
ohair
parents: 5471
diff changeset
    23
 * questions.
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    24
 */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    25
#ifndef _GTK2_INTERFACE_H
90ce3da70b43 Initial load
duke
parents:
diff changeset
    26
#define _GTK2_INTERFACE_H
90ce3da70b43 Initial load
duke
parents:
diff changeset
    27
90ce3da70b43 Initial load
duke
parents:
diff changeset
    28
#include <stdlib.h>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    29
#include <jni.h>
90ce3da70b43 Initial load
duke
parents:
diff changeset
    30
5444
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    31
#define _G_TYPE_CIC(ip, gt, ct)       ((ct*) ip)
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    32
#define G_TYPE_CHECK_INSTANCE_CAST(instance, g_type, c_type)    (_G_TYPE_CIC ((instance), (g_type), c_type))
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    33
#define GTK_TYPE_FILE_CHOOSER             (fp_gtk_file_chooser_get_type ())
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    34
#define GTK_FILE_CHOOSER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_FILE_CHOOSER, GtkFileChooser))
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    35
#define fp_g_signal_connect(instance, detailed_signal, c_handler, data) \
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    36
    fp_g_signal_connect_data ((instance), (detailed_signal), (c_handler), (data), NULL, (GConnectFlags) 0)
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    37
#define G_CALLBACK(f) ((GCallback) (f))
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    38
#define G_TYPE_FUNDAMENTAL_SHIFT (2)
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    39
#define G_TYPE_MAKE_FUNDAMENTAL(x) ((GType) ((x) << G_TYPE_FUNDAMENTAL_SHIFT))
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    40
#define G_TYPE_OBJECT G_TYPE_MAKE_FUNDAMENTAL (20)
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    41
#define G_OBJECT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), G_TYPE_OBJECT, GObject))
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    42
#define GTK_STOCK_CANCEL           "gtk-cancel"
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    43
#define GTK_STOCK_SAVE             "gtk-save"
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    44
#define GTK_STOCK_OPEN             "gtk-open"
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
    45
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
    46
typedef enum _WidgetType
90ce3da70b43 Initial load
duke
parents:
diff changeset
    47
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
    48
    BUTTON,                     /* GtkButton */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    49
    CHECK_BOX,                  /* GtkCheckButton */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    50
    CHECK_BOX_MENU_ITEM,        /* GtkCheckMenuItem */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    51
    COLOR_CHOOSER,              /* GtkColorSelectionDialog */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    52
    COMBO_BOX,                  /* GtkComboBox */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    53
    COMBO_BOX_ARROW_BUTTON,     /* GtkComboBoxEntry */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    54
    COMBO_BOX_TEXT_FIELD,       /* GtkComboBoxEntry */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    55
    DESKTOP_ICON,               /* GtkLabel */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    56
    DESKTOP_PANE,               /* GtkContainer */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    57
    EDITOR_PANE,                /* GtkTextView */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    58
    FORMATTED_TEXT_FIELD,       /* GtkEntry */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    59
    HANDLE_BOX,                 /* GtkHandleBox */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    60
    HPROGRESS_BAR,              /* GtkProgressBar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    61
    HSCROLL_BAR,                /* GtkHScrollbar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    62
    HSCROLL_BAR_BUTTON_LEFT,    /* GtkHScrollbar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    63
    HSCROLL_BAR_BUTTON_RIGHT,   /* GtkHScrollbar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    64
    HSCROLL_BAR_TRACK,          /* GtkHScrollbar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    65
    HSCROLL_BAR_THUMB,          /* GtkHScrollbar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    66
    HSEPARATOR,                 /* GtkHSeparator */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    67
    HSLIDER,                    /* GtkHScale */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    68
    HSLIDER_TRACK,              /* GtkHScale */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    69
    HSLIDER_THUMB,              /* GtkHScale */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    70
    HSPLIT_PANE_DIVIDER,        /* GtkHPaned */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    71
    INTERNAL_FRAME,             /* GtkWindow */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    72
    INTERNAL_FRAME_TITLE_PANE,  /* GtkLabel */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    73
    IMAGE,                      /* GtkImage */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    74
    LABEL,                      /* GtkLabel */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    75
    LIST,                       /* GtkTreeView */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    76
    MENU,                       /* GtkMenu */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    77
    MENU_BAR,                   /* GtkMenuBar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    78
    MENU_ITEM,                  /* GtkMenuItem */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    79
    MENU_ITEM_ACCELERATOR,      /* GtkLabel */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    80
    OPTION_PANE,                /* GtkMessageDialog */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    81
    PANEL,                      /* GtkContainer */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    82
    PASSWORD_FIELD,             /* GtkEntry */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    83
    POPUP_MENU,                 /* GtkMenu */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    84
    POPUP_MENU_SEPARATOR,       /* GtkSeparatorMenuItem */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    85
    RADIO_BUTTON,               /* GtkRadioButton */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    86
    RADIO_BUTTON_MENU_ITEM,     /* GtkRadioMenuItem */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    87
    ROOT_PANE,                  /* GtkContainer */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    88
    SCROLL_PANE,                /* GtkScrolledWindow */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    89
    SPINNER,                    /* GtkSpinButton */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    90
    SPINNER_ARROW_BUTTON,       /* GtkSpinButton */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    91
    SPINNER_TEXT_FIELD,         /* GtkSpinButton */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    92
    SPLIT_PANE,                 /* GtkPaned */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    93
    TABBED_PANE,                /* GtkNotebook */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    94
    TABBED_PANE_TAB_AREA,       /* GtkNotebook */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    95
    TABBED_PANE_CONTENT,        /* GtkNotebook */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    96
    TABBED_PANE_TAB,            /* GtkNotebook */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    97
    TABLE,                      /* GtkTreeView */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    98
    TABLE_HEADER,               /* GtkButton */
90ce3da70b43 Initial load
duke
parents:
diff changeset
    99
    TEXT_AREA,                  /* GtkTextView */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   100
    TEXT_FIELD,                 /* GtkEntry */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   101
    TEXT_PANE,                  /* GtkTextView */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   102
    TITLED_BORDER,              /* GtkFrame */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   103
    TOGGLE_BUTTON,              /* GtkToggleButton */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   104
    TOOL_BAR,                   /* GtkToolbar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   105
    TOOL_BAR_DRAG_WINDOW,       /* GtkToolbar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   106
    TOOL_BAR_SEPARATOR,         /* GtkSeparatorToolItem */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   107
    TOOL_TIP,                   /* GtkWindow */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   108
    TREE,                       /* GtkTreeView */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   109
    TREE_CELL,                  /* GtkTreeView */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   110
    VIEWPORT,                   /* GtkViewport */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   111
    VPROGRESS_BAR,              /* GtkProgressBar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   112
    VSCROLL_BAR,                /* GtkVScrollbar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   113
    VSCROLL_BAR_BUTTON_UP,      /* GtkVScrollbar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   114
    VSCROLL_BAR_BUTTON_DOWN,    /* GtkVScrollbar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   115
    VSCROLL_BAR_TRACK,          /* GtkVScrollbar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   116
    VSCROLL_BAR_THUMB,          /* GtkVScrollbar */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   117
    VSEPARATOR,                 /* GtkVSeparator */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   118
    VSLIDER,                    /* GtkVScale */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   119
    VSLIDER_TRACK,              /* GtkVScale */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   120
    VSLIDER_THUMB,              /* GtkVScale */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   121
    VSPLIT_PANE_DIVIDER,        /* GtkVPaned */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   122
    WIDGET_TYPE_SIZE
90ce3da70b43 Initial load
duke
parents:
diff changeset
   123
} WidgetType;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   124
90ce3da70b43 Initial load
duke
parents:
diff changeset
   125
typedef enum _ColorType
90ce3da70b43 Initial load
duke
parents:
diff changeset
   126
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   127
    FOREGROUND,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   128
    BACKGROUND,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   129
    TEXT_FOREGROUND,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   130
    TEXT_BACKGROUND,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   131
    FOCUS,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   132
    LIGHT,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   133
    DARK,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   134
    MID,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   135
    BLACK,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   136
    WHITE
90ce3da70b43 Initial load
duke
parents:
diff changeset
   137
} ColorType;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   138
90ce3da70b43 Initial load
duke
parents:
diff changeset
   139
typedef enum _Setting
90ce3da70b43 Initial load
duke
parents:
diff changeset
   140
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   141
    GTK_FONT_NAME,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   142
    GTK_ICON_SIZES
90ce3da70b43 Initial load
duke
parents:
diff changeset
   143
} Setting;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   144
90ce3da70b43 Initial load
duke
parents:
diff changeset
   145
/* GTK types, here to eliminate need for GTK headers at compile time */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   146
90ce3da70b43 Initial load
duke
parents:
diff changeset
   147
#ifndef FALSE
90ce3da70b43 Initial load
duke
parents:
diff changeset
   148
#define FALSE           (0)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   149
#define TRUE            (!FALSE)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   150
#endif
90ce3da70b43 Initial load
duke
parents:
diff changeset
   151
90ce3da70b43 Initial load
duke
parents:
diff changeset
   152
#define GTK_HAS_FOCUS   (1 << 12)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   153
#define GTK_HAS_DEFAULT (1 << 14)
90ce3da70b43 Initial load
duke
parents:
diff changeset
   154
90ce3da70b43 Initial load
duke
parents:
diff changeset
   155
90ce3da70b43 Initial load
duke
parents:
diff changeset
   156
/* basic types */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   157
typedef char    gchar;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   158
typedef short   gshort;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   159
typedef int     gint;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   160
typedef long    glong;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   161
typedef float   gfloat;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   162
typedef double  gdouble;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   163
typedef void*   gpointer;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   164
typedef gint    gboolean;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   165
90ce3da70b43 Initial load
duke
parents:
diff changeset
   166
typedef signed char  gint8;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   167
typedef signed short gint16;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   168
typedef signed int   gint32;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   169
90ce3da70b43 Initial load
duke
parents:
diff changeset
   170
typedef unsigned char  guchar;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   171
typedef unsigned char  guint8;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   172
typedef unsigned short gushort;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   173
typedef unsigned short guint16;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   174
typedef unsigned int   guint;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   175
typedef unsigned int   guint32;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   176
typedef unsigned int   gsize;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   177
typedef unsigned long  gulong;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   178
90ce3da70b43 Initial load
duke
parents:
diff changeset
   179
typedef signed long long   gint64;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   180
typedef unsigned long long guint64;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   181
90ce3da70b43 Initial load
duke
parents:
diff changeset
   182
/* enumerated constants */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   183
typedef enum
90ce3da70b43 Initial load
duke
parents:
diff changeset
   184
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   185
  GTK_ARROW_UP,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   186
  GTK_ARROW_DOWN,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   187
  GTK_ARROW_LEFT,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   188
  GTK_ARROW_RIGHT
90ce3da70b43 Initial load
duke
parents:
diff changeset
   189
} GtkArrowType;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   190
90ce3da70b43 Initial load
duke
parents:
diff changeset
   191
typedef enum {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   192
  GDK_COLORSPACE_RGB
90ce3da70b43 Initial load
duke
parents:
diff changeset
   193
} GdkColorspace;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   194
90ce3da70b43 Initial load
duke
parents:
diff changeset
   195
typedef enum
90ce3da70b43 Initial load
duke
parents:
diff changeset
   196
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   197
  GTK_EXPANDER_COLLAPSED,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   198
  GTK_EXPANDER_SEMI_COLLAPSED,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   199
  GTK_EXPANDER_SEMI_EXPANDED,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   200
  GTK_EXPANDER_EXPANDED
90ce3da70b43 Initial load
duke
parents:
diff changeset
   201
} GtkExpanderStyle;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   202
90ce3da70b43 Initial load
duke
parents:
diff changeset
   203
typedef enum
90ce3da70b43 Initial load
duke
parents:
diff changeset
   204
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   205
  GTK_ICON_SIZE_INVALID,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   206
  GTK_ICON_SIZE_MENU,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   207
  GTK_ICON_SIZE_SMALL_TOOLBAR,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   208
  GTK_ICON_SIZE_LARGE_TOOLBAR,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   209
  GTK_ICON_SIZE_BUTTON,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   210
  GTK_ICON_SIZE_DND,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   211
  GTK_ICON_SIZE_DIALOG
90ce3da70b43 Initial load
duke
parents:
diff changeset
   212
} GtkIconSize;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   213
90ce3da70b43 Initial load
duke
parents:
diff changeset
   214
typedef enum
90ce3da70b43 Initial load
duke
parents:
diff changeset
   215
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   216
  GTK_ORIENTATION_HORIZONTAL,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   217
  GTK_ORIENTATION_VERTICAL
90ce3da70b43 Initial load
duke
parents:
diff changeset
   218
} GtkOrientation;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   219
90ce3da70b43 Initial load
duke
parents:
diff changeset
   220
typedef enum
90ce3da70b43 Initial load
duke
parents:
diff changeset
   221
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   222
  GTK_POS_LEFT,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   223
  GTK_POS_RIGHT,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   224
  GTK_POS_TOP,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   225
  GTK_POS_BOTTOM
90ce3da70b43 Initial load
duke
parents:
diff changeset
   226
} GtkPositionType;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   227
90ce3da70b43 Initial load
duke
parents:
diff changeset
   228
typedef enum
90ce3da70b43 Initial load
duke
parents:
diff changeset
   229
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   230
  GTK_SHADOW_NONE,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   231
  GTK_SHADOW_IN,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   232
  GTK_SHADOW_OUT,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   233
  GTK_SHADOW_ETCHED_IN,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   234
  GTK_SHADOW_ETCHED_OUT
90ce3da70b43 Initial load
duke
parents:
diff changeset
   235
} GtkShadowType;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   236
90ce3da70b43 Initial load
duke
parents:
diff changeset
   237
typedef enum
90ce3da70b43 Initial load
duke
parents:
diff changeset
   238
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   239
  GTK_STATE_NORMAL,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   240
  GTK_STATE_ACTIVE,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   241
  GTK_STATE_PRELIGHT,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   242
  GTK_STATE_SELECTED,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   243
  GTK_STATE_INSENSITIVE
90ce3da70b43 Initial load
duke
parents:
diff changeset
   244
} GtkStateType;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   245
90ce3da70b43 Initial load
duke
parents:
diff changeset
   246
typedef enum
90ce3da70b43 Initial load
duke
parents:
diff changeset
   247
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   248
  GTK_TEXT_DIR_NONE,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   249
  GTK_TEXT_DIR_LTR,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   250
  GTK_TEXT_DIR_RTL
90ce3da70b43 Initial load
duke
parents:
diff changeset
   251
} GtkTextDirection;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   252
90ce3da70b43 Initial load
duke
parents:
diff changeset
   253
typedef enum
90ce3da70b43 Initial load
duke
parents:
diff changeset
   254
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   255
  GTK_WINDOW_TOPLEVEL,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   256
  GTK_WINDOW_POPUP
90ce3da70b43 Initial load
duke
parents:
diff changeset
   257
} GtkWindowType;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   258
90ce3da70b43 Initial load
duke
parents:
diff changeset
   259
typedef enum
90ce3da70b43 Initial load
duke
parents:
diff changeset
   260
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   261
  G_PARAM_READABLE            = 1 << 0,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   262
  G_PARAM_WRITABLE            = 1 << 1,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   263
  G_PARAM_CONSTRUCT           = 1 << 2,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   264
  G_PARAM_CONSTRUCT_ONLY      = 1 << 3,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   265
  G_PARAM_LAX_VALIDATION      = 1 << 4,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   266
  G_PARAM_PRIVATE             = 1 << 5
90ce3da70b43 Initial load
duke
parents:
diff changeset
   267
} GParamFlags;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   268
90ce3da70b43 Initial load
duke
parents:
diff changeset
   269
/* We define all structure pointers to be void* */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   270
typedef void GError;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   271
typedef void GMainContext;
5444
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   272
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   273
typedef struct _GSList GSList;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   274
struct _GSList
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   275
{
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   276
  gpointer data;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   277
  GSList *next;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   278
};
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   279
90ce3da70b43 Initial load
duke
parents:
diff changeset
   280
typedef void GdkColormap;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   281
typedef void GdkDrawable;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   282
typedef void GdkGC;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   283
typedef void GdkPixbuf;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   284
typedef void GdkPixmap;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   285
typedef void GdkWindow;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   286
90ce3da70b43 Initial load
duke
parents:
diff changeset
   287
typedef void GtkFixed;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   288
typedef void GtkMenuItem;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   289
typedef void GtkMenuShell;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   290
typedef void GtkWidgetClass;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   291
typedef void PangoFontDescription;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   292
typedef void GtkSettings;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   293
90ce3da70b43 Initial load
duke
parents:
diff changeset
   294
/* Some real structures */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   295
typedef struct
90ce3da70b43 Initial load
duke
parents:
diff changeset
   296
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   297
  guint32 pixel;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   298
  guint16 red;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   299
  guint16 green;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   300
  guint16 blue;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   301
} GdkColor;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   302
90ce3da70b43 Initial load
duke
parents:
diff changeset
   303
typedef struct {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   304
  gint      fd;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   305
  gushort   events;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   306
  gushort   revents;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   307
} GPollFD;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   308
90ce3da70b43 Initial load
duke
parents:
diff changeset
   309
typedef struct {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   310
  gint x;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   311
  gint y;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   312
  gint width;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   313
  gint height;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   314
} GdkRectangle;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   315
90ce3da70b43 Initial load
duke
parents:
diff changeset
   316
typedef struct {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   317
  gint x;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   318
  gint y;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   319
  gint width;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   320
  gint height;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   321
} GtkAllocation;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   322
90ce3da70b43 Initial load
duke
parents:
diff changeset
   323
typedef struct {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   324
  gint width;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   325
  gint height;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   326
} GtkRequisition;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   327
90ce3da70b43 Initial load
duke
parents:
diff changeset
   328
typedef struct {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   329
  GtkWidgetClass *g_class;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   330
} GTypeInstance;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   331
90ce3da70b43 Initial load
duke
parents:
diff changeset
   332
typedef struct {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   333
  gint left;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   334
  gint right;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   335
  gint top;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   336
  gint bottom;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   337
} GtkBorder;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   338
90ce3da70b43 Initial load
duke
parents:
diff changeset
   339
/******************************************************
90ce3da70b43 Initial load
duke
parents:
diff changeset
   340
 * FIXME: it is more safe to include gtk headers for
90ce3da70b43 Initial load
duke
parents:
diff changeset
   341
 * the precise type definition of GType and other
90ce3da70b43 Initial load
duke
parents:
diff changeset
   342
 * structures. This is a place where getting rid of gtk
90ce3da70b43 Initial load
duke
parents:
diff changeset
   343
 * headers may be dangerous.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   344
 ******************************************************/
90ce3da70b43 Initial load
duke
parents:
diff changeset
   345
typedef gulong         GType;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   346
90ce3da70b43 Initial load
duke
parents:
diff changeset
   347
typedef struct
90ce3da70b43 Initial load
duke
parents:
diff changeset
   348
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   349
  GType         g_type;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   350
90ce3da70b43 Initial load
duke
parents:
diff changeset
   351
  union {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   352
    gint        v_int;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   353
    guint       v_uint;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   354
    glong       v_long;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   355
    gulong      v_ulong;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   356
    gint64      v_int64;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   357
    guint64     v_uint64;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   358
    gfloat      v_float;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   359
    gdouble     v_double;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   360
    gpointer    v_pointer;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   361
  } data[2];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   362
} GValue;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   363
90ce3da70b43 Initial load
duke
parents:
diff changeset
   364
typedef struct
90ce3da70b43 Initial load
duke
parents:
diff changeset
   365
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   366
  GTypeInstance  g_type_instance;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   367
90ce3da70b43 Initial load
duke
parents:
diff changeset
   368
  gchar         *name;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   369
  GParamFlags    flags;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   370
  GType          value_type;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   371
  GType          owner_type;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   372
} GParamSpec;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   373
90ce3da70b43 Initial load
duke
parents:
diff changeset
   374
typedef struct {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   375
  GTypeInstance g_type_instance;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   376
  guint         ref_count;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   377
  void         *qdata;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   378
} GObject;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   379
90ce3da70b43 Initial load
duke
parents:
diff changeset
   380
typedef struct {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   381
  GObject parent_instance;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   382
  guint32 flags;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   383
} GtkObject;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   384
90ce3da70b43 Initial load
duke
parents:
diff changeset
   385
typedef struct
90ce3da70b43 Initial load
duke
parents:
diff changeset
   386
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   387
  GObject parent_instance;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   388
90ce3da70b43 Initial load
duke
parents:
diff changeset
   389
  GdkColor fg[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   390
  GdkColor bg[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   391
  GdkColor light[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   392
  GdkColor dark[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   393
  GdkColor mid[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   394
  GdkColor text[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   395
  GdkColor base[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   396
  GdkColor text_aa[5];          /* Halfway between text/base */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   397
90ce3da70b43 Initial load
duke
parents:
diff changeset
   398
  GdkColor black;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   399
  GdkColor white;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   400
  PangoFontDescription *font_desc;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   401
90ce3da70b43 Initial load
duke
parents:
diff changeset
   402
  gint xthickness;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   403
  gint ythickness;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   404
90ce3da70b43 Initial load
duke
parents:
diff changeset
   405
  GdkGC *fg_gc[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   406
  GdkGC *bg_gc[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   407
  GdkGC *light_gc[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   408
  GdkGC *dark_gc[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   409
  GdkGC *mid_gc[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   410
  GdkGC *text_gc[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   411
  GdkGC *base_gc[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   412
  GdkGC *text_aa_gc[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   413
  GdkGC *black_gc;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   414
  GdkGC *white_gc;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   415
90ce3da70b43 Initial load
duke
parents:
diff changeset
   416
  GdkPixmap *bg_pixmap[5];
90ce3da70b43 Initial load
duke
parents:
diff changeset
   417
} GtkStyle;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   418
90ce3da70b43 Initial load
duke
parents:
diff changeset
   419
typedef struct _GtkWidget GtkWidget;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   420
struct _GtkWidget
90ce3da70b43 Initial load
duke
parents:
diff changeset
   421
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   422
  GtkObject object;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   423
  guint16 private_flags;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   424
  guint8 state;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   425
  guint8 saved_state;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   426
  gchar *name;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   427
  GtkStyle *style;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   428
  GtkRequisition requisition;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   429
  GtkAllocation allocation;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   430
  GdkWindow *window;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   431
  GtkWidget *parent;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   432
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   433
90ce3da70b43 Initial load
duke
parents:
diff changeset
   434
typedef struct
90ce3da70b43 Initial load
duke
parents:
diff changeset
   435
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   436
  GtkWidget widget;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   437
90ce3da70b43 Initial load
duke
parents:
diff changeset
   438
  gfloat xalign;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   439
  gfloat yalign;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   440
90ce3da70b43 Initial load
duke
parents:
diff changeset
   441
  guint16 xpad;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   442
  guint16 ypad;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   443
} GtkMisc;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   444
90ce3da70b43 Initial load
duke
parents:
diff changeset
   445
typedef struct {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   446
  GtkWidget widget;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   447
  GtkWidget *focus_child;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   448
  guint border_width : 16;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   449
  guint need_resize : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   450
  guint resize_mode : 2;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   451
  guint reallocate_redraws : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   452
  guint has_focus_chain : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   453
} GtkContainer;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   454
90ce3da70b43 Initial load
duke
parents:
diff changeset
   455
typedef struct {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   456
  GtkContainer container;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   457
  GtkWidget *child;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   458
} GtkBin;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   459
90ce3da70b43 Initial load
duke
parents:
diff changeset
   460
typedef struct {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   461
  GtkBin bin;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   462
  GdkWindow *event_window;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   463
  gchar *label_text;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   464
  guint activate_timeout;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   465
  guint constructed : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   466
  guint in_button : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   467
  guint button_down : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   468
  guint relief : 2;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   469
  guint use_underline : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   470
  guint use_stock : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   471
  guint depressed : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   472
  guint depress_on_activate : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   473
  guint focus_on_click : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   474
} GtkButton;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   475
90ce3da70b43 Initial load
duke
parents:
diff changeset
   476
typedef struct {
90ce3da70b43 Initial load
duke
parents:
diff changeset
   477
  GtkButton button;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   478
  guint active : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   479
  guint draw_indicator : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   480
  guint inconsistent : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   481
} GtkToggleButton;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   482
90ce3da70b43 Initial load
duke
parents:
diff changeset
   483
typedef struct _GtkAdjustment GtkAdjustment;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   484
struct _GtkAdjustment
90ce3da70b43 Initial load
duke
parents:
diff changeset
   485
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   486
  GtkObject parent_instance;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   487
90ce3da70b43 Initial load
duke
parents:
diff changeset
   488
  gdouble lower;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   489
  gdouble upper;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   490
  gdouble value;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   491
  gdouble step_increment;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   492
  gdouble page_increment;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   493
  gdouble page_size;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   494
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   495
90ce3da70b43 Initial load
duke
parents:
diff changeset
   496
typedef enum
90ce3da70b43 Initial load
duke
parents:
diff changeset
   497
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   498
  GTK_UPDATE_CONTINUOUS,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   499
  GTK_UPDATE_DISCONTINUOUS,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   500
  GTK_UPDATE_DELAYED
90ce3da70b43 Initial load
duke
parents:
diff changeset
   501
} GtkUpdateType;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   502
90ce3da70b43 Initial load
duke
parents:
diff changeset
   503
typedef struct _GtkRange GtkRange;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   504
struct _GtkRange
90ce3da70b43 Initial load
duke
parents:
diff changeset
   505
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   506
  GtkWidget widget;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   507
  GtkAdjustment *adjustment;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   508
  GtkUpdateType update_policy;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   509
  guint inverted : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   510
  /*< protected >*/
90ce3da70b43 Initial load
duke
parents:
diff changeset
   511
  guint flippable : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   512
  guint has_stepper_a : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   513
  guint has_stepper_b : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   514
  guint has_stepper_c : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   515
  guint has_stepper_d : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   516
  guint need_recalc : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   517
  guint slider_size_fixed : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   518
  gint min_slider_size;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   519
  GtkOrientation orientation;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   520
  GdkRectangle range_rect;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   521
  gint slider_start, slider_end;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   522
  gint round_digits;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   523
  /*< private >*/
90ce3da70b43 Initial load
duke
parents:
diff changeset
   524
  guint trough_click_forward : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   525
  guint update_pending : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   526
  /*GtkRangeLayout * */ void *layout;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   527
  /*GtkRangeStepTimer * */ void* timer;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   528
  gint slide_initial_slider_position;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   529
  gint slide_initial_coordinate;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   530
  guint update_timeout_id;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   531
  GdkWindow *event_window;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   532
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   533
90ce3da70b43 Initial load
duke
parents:
diff changeset
   534
typedef struct _GtkProgressBar       GtkProgressBar;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   535
90ce3da70b43 Initial load
duke
parents:
diff changeset
   536
typedef enum
90ce3da70b43 Initial load
duke
parents:
diff changeset
   537
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   538
  GTK_PROGRESS_CONTINUOUS,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   539
  GTK_PROGRESS_DISCRETE
90ce3da70b43 Initial load
duke
parents:
diff changeset
   540
} GtkProgressBarStyle;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   541
90ce3da70b43 Initial load
duke
parents:
diff changeset
   542
typedef enum
90ce3da70b43 Initial load
duke
parents:
diff changeset
   543
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   544
  GTK_PROGRESS_LEFT_TO_RIGHT,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   545
  GTK_PROGRESS_RIGHT_TO_LEFT,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   546
  GTK_PROGRESS_BOTTOM_TO_TOP,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   547
  GTK_PROGRESS_TOP_TO_BOTTOM
90ce3da70b43 Initial load
duke
parents:
diff changeset
   548
} GtkProgressBarOrientation;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   549
90ce3da70b43 Initial load
duke
parents:
diff changeset
   550
typedef struct _GtkProgress       GtkProgress;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   551
90ce3da70b43 Initial load
duke
parents:
diff changeset
   552
struct _GtkProgress
90ce3da70b43 Initial load
duke
parents:
diff changeset
   553
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   554
  GtkWidget widget;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   555
  GtkAdjustment *adjustment;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   556
  GdkPixmap     *offscreen_pixmap;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   557
  gchar         *format;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   558
  gfloat         x_align;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   559
  gfloat         y_align;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   560
  guint          show_text : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   561
  guint          activity_mode : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   562
  guint          use_text_format : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   563
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   564
90ce3da70b43 Initial load
duke
parents:
diff changeset
   565
struct _GtkProgressBar
90ce3da70b43 Initial load
duke
parents:
diff changeset
   566
{
90ce3da70b43 Initial load
duke
parents:
diff changeset
   567
  GtkProgress progress;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   568
  GtkProgressBarStyle bar_style;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   569
  GtkProgressBarOrientation orientation;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   570
  guint blocks;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   571
  gint  in_block;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   572
  gint  activity_pos;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   573
  guint activity_step;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   574
  guint activity_blocks;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   575
  gdouble pulse_fraction;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   576
  guint activity_dir : 1;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   577
  guint ellipsize : 3;
90ce3da70b43 Initial load
duke
parents:
diff changeset
   578
};
90ce3da70b43 Initial load
duke
parents:
diff changeset
   579
5444
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   580
typedef enum {
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   581
  GTK_RESPONSE_NONE = -1,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   582
  GTK_RESPONSE_REJECT = -2,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   583
  GTK_RESPONSE_ACCEPT = -3,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   584
  GTK_RESPONSE_DELETE_EVENT = -4,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   585
  GTK_RESPONSE_OK = -5,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   586
  GTK_RESPONSE_CANCEL = -6,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   587
  GTK_RESPONSE_CLOSE = -7,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   588
  GTK_RESPONSE_YES = -8,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   589
  GTK_RESPONSE_NO = -9,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   590
  GTK_RESPONSE_APPLY = -10,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   591
  GTK_RESPONSE_HELP = -11
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   592
} GtkResponseType;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   593
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   594
typedef struct _GtkWindow GtkWindow;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   595
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   596
typedef struct _GtkFileChooser GtkFileChooser;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   597
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   598
typedef enum {
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   599
  GTK_FILE_CHOOSER_ACTION_OPEN,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   600
  GTK_FILE_CHOOSER_ACTION_SAVE,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   601
  GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   602
  GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   603
} GtkFileChooserAction;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   604
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   605
typedef struct _GtkFileFilter GtkFileFilter;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   606
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   607
typedef enum {
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   608
  GTK_FILE_FILTER_FILENAME = 1 << 0,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   609
  GTK_FILE_FILTER_URI = 1 << 1,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   610
  GTK_FILE_FILTER_DISPLAY_NAME = 1 << 2,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   611
  GTK_FILE_FILTER_MIME_TYPE = 1 << 3
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   612
} GtkFileFilterFlags;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   613
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   614
typedef struct {
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   615
  GtkFileFilterFlags contains;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   616
  const gchar *filename;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   617
  const gchar *uri;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   618
  const gchar *display_name;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   619
  const gchar *mime_type;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   620
} GtkFileFilterInfo;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   621
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   622
typedef gboolean (*GtkFileFilterFunc)(const GtkFileFilterInfo *filter_info,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   623
    gpointer data);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   624
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   625
typedef void (*GDestroyNotify)(gpointer data);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   626
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   627
typedef void (*GCallback)(void);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   628
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   629
typedef struct _GClosure GClosure;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   630
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   631
typedef void (*GClosureNotify)(gpointer data, GClosure *closure);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   632
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   633
typedef enum {
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   634
  G_CONNECT_AFTER = 1 << 0, G_CONNECT_SWAPPED = 1 << 1
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   635
} GConnectFlags;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   636
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   637
typedef struct _GThreadFunctions GThreadFunctions;
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   638
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   639
/*
90ce3da70b43 Initial load
duke
parents:
diff changeset
   640
 * Converts java.lang.String object to UTF-8 character string.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   641
 */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   642
const char *getStrFor(JNIEnv *env, jstring value);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   643
90ce3da70b43 Initial load
duke
parents:
diff changeset
   644
/*
90ce3da70b43 Initial load
duke
parents:
diff changeset
   645
 * Check whether the gtk2 library is available and meets the minimum
90ce3da70b43 Initial load
duke
parents:
diff changeset
   646
 * version requirement.  If the library is already loaded this method has no
90ce3da70b43 Initial load
duke
parents:
diff changeset
   647
 * effect and returns success.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   648
 * Returns FALSE on failure and TRUE on success.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   649
 */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   650
gboolean gtk2_check_version();
90ce3da70b43 Initial load
duke
parents:
diff changeset
   651
5444
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   652
/**
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   653
 * Returns :
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   654
 * NULL if the GTK+ library is compatible with the given version, or a string
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   655
 * describing the version mismatch.
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   656
 */
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   657
gchar* (*fp_gtk_check_version)(guint required_major, guint required_minor,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   658
                       guint required_micro);
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   659
/*
90ce3da70b43 Initial load
duke
parents:
diff changeset
   660
 * Load the gtk2 library.  If the library is already loaded this method has no
90ce3da70b43 Initial load
duke
parents:
diff changeset
   661
 * effect and returns success.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   662
 * Returns FALSE on failure and TRUE on success.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   663
 */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   664
gboolean gtk2_load();
90ce3da70b43 Initial load
duke
parents:
diff changeset
   665
90ce3da70b43 Initial load
duke
parents:
diff changeset
   666
/*
90ce3da70b43 Initial load
duke
parents:
diff changeset
   667
 * Unload the gtk2 library.  If the library is already unloaded this method has
90ce3da70b43 Initial load
duke
parents:
diff changeset
   668
 * no effect and returns success.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   669
 * Returns FALSE on failure and TRUE on success.
90ce3da70b43 Initial load
duke
parents:
diff changeset
   670
 */
90ce3da70b43 Initial load
duke
parents:
diff changeset
   671
gboolean gtk2_unload();
90ce3da70b43 Initial load
duke
parents:
diff changeset
   672
90ce3da70b43 Initial load
duke
parents:
diff changeset
   673
void gtk2_paint_arrow(WidgetType widget_type, GtkStateType state_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   674
        GtkShadowType shadow_type, const gchar *detail,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   675
        gint x, gint y, gint width, gint height,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   676
        GtkArrowType arrow_type, gboolean fill);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   677
void gtk2_paint_box(WidgetType widget_type, GtkStateType state_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   678
        GtkShadowType shadow_type, const gchar *detail,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   679
        gint x, gint y, gint width, gint height,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   680
        gint synth_state, GtkTextDirection dir);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   681
void gtk2_paint_box_gap(WidgetType widget_type, GtkStateType state_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   682
        GtkShadowType shadow_type, const gchar *detail,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   683
        gint x, gint y, gint width, gint height,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   684
        GtkPositionType gap_side, gint gap_x, gint gap_width);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   685
void gtk2_paint_check(WidgetType widget_type, gint synth_state,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   686
        const gchar *detail, gint x, gint y, gint width, gint height);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   687
void gtk2_paint_diamond(WidgetType widget_type, GtkStateType state_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   688
        GtkShadowType shadow_type, const gchar *detail,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   689
        gint x, gint y, gint width, gint height);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   690
void gtk2_paint_expander(WidgetType widget_type, GtkStateType state_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   691
        const gchar *detail, gint x, gint y, gint width, gint height,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   692
        GtkExpanderStyle expander_style);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   693
void gtk2_paint_extension(WidgetType widget_type, GtkStateType state_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   694
        GtkShadowType shadow_type, const gchar *detail,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   695
        gint x, gint y, gint width, gint height, GtkPositionType gap_side);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   696
void gtk2_paint_flat_box(WidgetType widget_type, GtkStateType state_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   697
        GtkShadowType shadow_type, const gchar *detail,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   698
        gint x, gint y, gint width, gint height, gboolean has_focus);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   699
void gtk2_paint_focus(WidgetType widget_type, GtkStateType state_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   700
        const char *detail, gint x, gint y, gint width, gint height);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   701
void gtk2_paint_handle(WidgetType widget_type, GtkStateType state_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   702
        GtkShadowType shadow_type, const gchar *detail,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   703
        gint x, gint y, gint width, gint height, GtkOrientation orientation);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   704
void gtk2_paint_hline(WidgetType widget_type, GtkStateType state_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   705
        const gchar *detail, gint x, gint y, gint width, gint height);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   706
void gtk2_paint_option(WidgetType widget_type, gint synth_state,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   707
        const gchar *detail, gint x, gint y, gint width, gint height);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   708
void gtk2_paint_shadow(WidgetType widget_type, GtkStateType state_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   709
        GtkShadowType shadow_type, const gchar *detail,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   710
        gint x, gint y, gint width, gint height,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   711
        gint synth_state, GtkTextDirection dir);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   712
void gtk2_paint_slider(WidgetType widget_type, GtkStateType state_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   713
        GtkShadowType shadow_type, const gchar *detail,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   714
        gint x, gint y, gint width, gint height, GtkOrientation orientation);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   715
void gtk2_paint_vline(WidgetType widget_type, GtkStateType state_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   716
        const gchar *detail, gint x, gint y, gint width, gint height);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   717
void gtk_paint_background(WidgetType widget_type, GtkStateType state_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   718
        gint x, gint y, gint width, gint height);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   719
6513
83264865df37 6741392: libmawt.so crash at Java_com_sun_java_swing_plaf_gtk_GTKEngine_nativeFinishPainting+0x4f
malenkov
parents: 5506
diff changeset
   720
void gtk2_init_painting(JNIEnv *env, gint w, gint h);
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   721
gint gtk2_copy_image(gint *dest, gint width, gint height);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   722
90ce3da70b43 Initial load
duke
parents:
diff changeset
   723
gint gtk2_get_xthickness(JNIEnv *env, WidgetType widget_type);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   724
gint gtk2_get_ythickness(JNIEnv *env, WidgetType widget_type);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   725
gint gtk2_get_color_for_state(JNIEnv *env, WidgetType widget_type,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   726
                              GtkStateType state_type, ColorType color_type);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   727
jobject gtk2_get_class_value(JNIEnv *env, WidgetType widget_type, jstring key);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   728
90ce3da70b43 Initial load
duke
parents:
diff changeset
   729
GdkPixbuf *gtk2_get_stock_icon(gint widget_type, const gchar *stock_id,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   730
        GtkIconSize size, GtkTextDirection direction, const char *detail);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   731
GdkPixbuf *gtk2_get_icon(const gchar *filename, gint size);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   732
jstring gtk2_get_pango_font_name(JNIEnv *env, WidgetType widget_type);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   733
90ce3da70b43 Initial load
duke
parents:
diff changeset
   734
void flush_gtk_event_loop();
90ce3da70b43 Initial load
duke
parents:
diff changeset
   735
90ce3da70b43 Initial load
duke
parents:
diff changeset
   736
jobject gtk2_get_setting(JNIEnv *env, Setting property);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   737
90ce3da70b43 Initial load
duke
parents:
diff changeset
   738
void gtk2_set_range_value(WidgetType widget_type, jdouble value,
90ce3da70b43 Initial load
duke
parents:
diff changeset
   739
                          jdouble min, jdouble max, jdouble visible);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   740
5444
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   741
void (*fp_g_free)(gpointer mem);
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   742
void (*fp_g_object_unref)(gpointer object);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   743
int (*fp_gdk_pixbuf_get_bits_per_sample)(const GdkPixbuf *pixbuf);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   744
guchar *(*fp_gdk_pixbuf_get_pixels)(const GdkPixbuf *pixbuf);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   745
gboolean (*fp_gdk_pixbuf_get_has_alpha)(const GdkPixbuf *pixbuf);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   746
int (*fp_gdk_pixbuf_get_height)(const GdkPixbuf *pixbuf);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   747
int (*fp_gdk_pixbuf_get_n_channels)(const GdkPixbuf *pixbuf);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   748
int (*fp_gdk_pixbuf_get_rowstride)(const GdkPixbuf *pixbuf);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   749
int (*fp_gdk_pixbuf_get_width)(const GdkPixbuf *pixbuf);
90ce3da70b43 Initial load
duke
parents:
diff changeset
   750
GdkPixbuf *(*fp_gdk_pixbuf_new_from_file)(const char *filename, GError **error);
5444
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   751
void (*fp_gtk_widget_destroy)(GtkWidget *widget);
7243
4678eab93673 6998592: FileDialog tests crashed on solaris
anthony
parents: 6513
diff changeset
   752
void (*fp_gtk_window_present)(GtkWindow *window);
8513
101b3095ff5a 7009114: GTK FileDialog lies about it's Bounds
dcherepanov
parents: 7243
diff changeset
   753
void (*fp_gtk_window_move)(GtkWindow *window, gint x, gint y);
101b3095ff5a 7009114: GTK FileDialog lies about it's Bounds
dcherepanov
parents: 7243
diff changeset
   754
void (*fp_gtk_window_resize)(GtkWindow *window, gint width, gint height);
5444
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   755
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   756
/**
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   757
 * Function Pointers for GtkFileChooser
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   758
 */
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   759
gchar* (*fp_gtk_file_chooser_get_filename)(GtkFileChooser *chooser);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   760
void (*fp_gtk_widget_hide)(GtkWidget *widget);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   761
void (*fp_gtk_main_quit)(void);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   762
GtkWidget* (*fp_gtk_file_chooser_dialog_new)(const gchar *title,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   763
    GtkWindow *parent, GtkFileChooserAction action,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   764
    const gchar *first_button_text, ...);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   765
gboolean (*fp_gtk_file_chooser_set_current_folder)(GtkFileChooser *chooser,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   766
    const gchar *filename);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   767
gboolean (*fp_gtk_file_chooser_set_filename)(GtkFileChooser *chooser,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   768
    const char *filename);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   769
void (*fp_gtk_file_filter_add_custom)(GtkFileFilter *filter,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   770
    GtkFileFilterFlags needed, GtkFileFilterFunc func, gpointer data,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   771
    GDestroyNotify notify);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   772
void (*fp_gtk_file_chooser_set_filter)(GtkFileChooser *chooser,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   773
    GtkFileFilter *filter);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   774
GType (*fp_gtk_file_chooser_get_type)(void);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   775
GtkFileFilter* (*fp_gtk_file_filter_new)(void);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   776
void (*fp_gtk_file_chooser_set_do_overwrite_confirmation)(
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   777
    GtkFileChooser *chooser, gboolean do_overwrite_confirmation);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   778
void (*fp_gtk_file_chooser_set_select_multiple)(
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   779
    GtkFileChooser *chooser, gboolean select_multiple);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   780
gchar* (*fp_gtk_file_chooser_get_current_folder)(GtkFileChooser *chooser);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   781
GSList* (*fp_gtk_file_chooser_get_filenames)(GtkFileChooser *chooser);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   782
guint (*fp_gtk_g_slist_length)(GSList *list);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   783
gulong (*fp_g_signal_connect_data)(gpointer instance,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   784
    const gchar *detailed_signal, GCallback c_handler, gpointer data,
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   785
    GClosureNotify destroy_data, GConnectFlags connect_flags);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   786
void (*fp_gtk_widget_show)(GtkWidget *widget);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   787
void (*fp_gtk_main)(void);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   788
guint (*fp_gtk_main_level)(void);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   789
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   790
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   791
void (*fp_g_thread_init)(GThreadFunctions *vtable);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   792
void (*fp_gdk_threads_init)(void);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   793
void (*fp_gdk_threads_enter)(void);
f7c5aeb82a14 6913179: The java.awt.FileDialog should use native GTK file chooser on linux distros
anthony
parents: 2
diff changeset
   794
void (*fp_gdk_threads_leave)(void);
2
90ce3da70b43 Initial load
duke
parents:
diff changeset
   795
90ce3da70b43 Initial load
duke
parents:
diff changeset
   796
#endif /* !_GTK2_INTERFACE_H */