Compare commits
8 Commits
applicatio
...
xi2-playgr
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d5dda9a2f0 | ||
|
|
ab8242c522 | ||
|
|
80bf8c3999 | ||
|
|
4212943079 | ||
|
|
0ac8f1686f | ||
|
|
a771703f0f | ||
|
|
e3a3ba57f0 | ||
|
|
712672f1d1 |
52
NEWS
52
NEWS
@@ -1,55 +1,3 @@
|
||||
Overview of Changes from GTK+ 2.90.4 to 2.90.5
|
||||
==============================================
|
||||
|
||||
* Support NOCONFIGURE in autogen.sh to avoid running configure
|
||||
|
||||
* The cairo dependency has been bumped to 1.9.10
|
||||
|
||||
* Drop aliasing hacks instead use -Bsymbolic-funtions.
|
||||
|
||||
* Bugs:
|
||||
589904 Certain drawing in some widgets does not pass on...
|
||||
610346 Confusion between GtkWindow:allow-grow and GtkWindow:resizable
|
||||
613284 Replace GdkRegion with cairo_region_t
|
||||
617386 Migrate API docs from templates to source files (GtkButton)
|
||||
617389 Migrate API docs from templates to source files (GtkCalendar)
|
||||
617392 Migrate API docs from templates to source files (GtkCellEditable)
|
||||
621414 Can't select file on file browser popup after choosing to sort...
|
||||
622677 Remove GdkWindowObject public structure
|
||||
623239 also show num-lock warning
|
||||
623307 Annotate gdk_display_manager_list_displays return value
|
||||
623389 [iconview] Fix segfault when using rubberband selection
|
||||
623476 [windows] gdk fails to compile
|
||||
623520 gtk+ 3 fails to build from outside git source tree
|
||||
623845 Use -Bsymbolic
|
||||
461618 use GSlice for gtkrequisition
|
||||
|
||||
* Deprecations and cleanups:
|
||||
- GdkRegion has been removed, and region-using code has been ported
|
||||
to cairo_region_t and cairo_rectangle_int_t.
|
||||
- The deprecated GdkFont has been removed, together with vestigial
|
||||
uses in GTK+, including the GdkFontSel::font property and a GdkFont
|
||||
member in GtkStyle.
|
||||
- The GdkWindowObject structure has been removed from public headers.
|
||||
- The GdkWindow::allow-grow and ::allow-shrink properties have been removed.
|
||||
|
||||
* Quartz:
|
||||
- Misc fixed to clipping and color handling
|
||||
- Update the DND code for GdkDevice changes
|
||||
|
||||
* Translation updates:
|
||||
Breton
|
||||
Czech
|
||||
Estonian
|
||||
Galician
|
||||
Hebrew
|
||||
Kazakh
|
||||
Norwegian bokmål
|
||||
Slovenian
|
||||
Simplified Chinese
|
||||
Spanish
|
||||
|
||||
|
||||
Overview of Changes from GTK+ 2.90.3 to 2.90.4
|
||||
==============================================
|
||||
|
||||
|
||||
31
configure.ac
31
configure.ac
@@ -12,7 +12,7 @@ AC_PREREQ([2.62])
|
||||
|
||||
m4_define([gtk_major_version], [2])
|
||||
m4_define([gtk_minor_version], [90])
|
||||
m4_define([gtk_micro_version], [6])
|
||||
m4_define([gtk_micro_version], [5])
|
||||
m4_define([gtk_interface_age], [0])
|
||||
m4_define([gtk_binary_age],
|
||||
[m4_eval(100 * gtk_minor_version + gtk_micro_version)])
|
||||
@@ -31,7 +31,7 @@ m4_define([gtk_api_version], [3.0])
|
||||
m4_define([gtk_binary_version], [3.0.0])
|
||||
|
||||
# required versions of other packages
|
||||
m4_define([glib_required_version], [2.25.12])
|
||||
m4_define([glib_required_version], [2.25.9])
|
||||
m4_define([pango_required_version], [1.20])
|
||||
m4_define([atk_required_version], [1.29.2])
|
||||
m4_define([cairo_required_version], [1.9.10])
|
||||
@@ -1556,7 +1556,7 @@ fi
|
||||
# GObject introspection
|
||||
##################################################
|
||||
|
||||
GOBJECT_INTROSPECTION_CHECK([0.9.0])
|
||||
GOBJECT_INTROSPECTION_CHECK([0.6.14])
|
||||
|
||||
##################################################
|
||||
# Checks for gtk-doc and docbook-tools
|
||||
@@ -1671,30 +1671,10 @@ if test x$gdk_working_wctype = xno; then
|
||||
gdk_wc="\$gdk_wc
|
||||
#define GDK_HAVE_BROKEN_WCTYPE 1"
|
||||
fi
|
||||
|
||||
|
||||
])
|
||||
|
||||
dnl
|
||||
dnl Check for -Bsymbolic-functions linker flag used to avoid
|
||||
dnl intra-library PLT jumps, if available.
|
||||
dnl
|
||||
AC_ARG_ENABLE(Bsymbolic,
|
||||
[AC_HELP_STRING([--disable-Bsymbolic],
|
||||
[avoid linking with -Bsymbolic])],,
|
||||
[SAVED_LDFLAGS="${LDFLAGS}"
|
||||
AC_MSG_CHECKING([for -Bsymbolic-functions linker flag])
|
||||
LDFLAGS=-Wl,-Bsymbolic-functions
|
||||
AC_TRY_LINK([], [int main (void) { return 0; }],
|
||||
AC_MSG_RESULT(yes)
|
||||
enable_Bsymbolic=yes,
|
||||
AC_MSG_RESULT(no)
|
||||
enable_Bsymbolic=no)
|
||||
LDFLAGS="${SAVED_LDFLAGS}"])
|
||||
|
||||
if test "x${enable_Bsymbolic}" == "xyes"; then
|
||||
GTK_LINK_FLAGS=-Wl,-Bsymbolic-functions
|
||||
fi
|
||||
AC_SUBST(GTK_LINK_FLAGS)
|
||||
|
||||
AC_CONFIG_FILES([
|
||||
config.h.win32
|
||||
gtk-zip.sh
|
||||
@@ -1713,6 +1693,7 @@ demos/Makefile
|
||||
demos/gtk-demo/Makefile
|
||||
demos/gtk-demo/geninclude.pl
|
||||
tests/Makefile
|
||||
tests/multidevice/Makefile
|
||||
docs/Makefile
|
||||
docs/reference/Makefile
|
||||
docs/reference/gdk/Makefile
|
||||
|
||||
@@ -229,7 +229,6 @@ static void
|
||||
open_display_cb (GtkWidget *button,
|
||||
ChangeDisplayInfo *info)
|
||||
{
|
||||
GtkWidget *content_area;
|
||||
GtkWidget *dialog;
|
||||
GtkWidget *display_entry;
|
||||
GtkWidget *dialog_label;
|
||||
@@ -249,13 +248,11 @@ open_display_cb (GtkWidget *button,
|
||||
dialog_label =
|
||||
gtk_label_new ("Please enter the name of\nthe new display\n");
|
||||
|
||||
content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog));
|
||||
|
||||
gtk_container_add (GTK_CONTAINER (content_area), dialog_label);
|
||||
gtk_container_add (GTK_CONTAINER (content_area), display_entry);
|
||||
gtk_container_add (GTK_CONTAINER (GTK_DIALOG (dialog)->vbox), dialog_label);
|
||||
gtk_container_add (GTK_CONTAINER (GTK_DIALOG (dialog)->vbox), display_entry);
|
||||
|
||||
gtk_widget_grab_focus (display_entry);
|
||||
gtk_widget_show_all (gtk_bin_get_child (GTK_BIN (dialog)));
|
||||
gtk_widget_show_all (GTK_BIN (dialog)->child);
|
||||
|
||||
while (!result)
|
||||
{
|
||||
@@ -602,7 +599,6 @@ do_changedisplay (GtkWidget *do_widget)
|
||||
|
||||
if (!info)
|
||||
{
|
||||
GtkWidget *content_area;
|
||||
GtkWidget *vbox;
|
||||
GtkWidget *frame;
|
||||
|
||||
@@ -622,11 +618,11 @@ do_changedisplay (GtkWidget *do_widget)
|
||||
g_signal_connect (info->window, "destroy",
|
||||
G_CALLBACK (destroy_cb), &info);
|
||||
|
||||
content_area = gtk_dialog_get_content_area (GTK_DIALOG (info->window));
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 5);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
|
||||
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
|
||||
|
||||
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (info->window)->vbox), vbox,
|
||||
TRUE, TRUE, 0);
|
||||
|
||||
frame = create_display_frame (info);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), frame, TRUE, TRUE, 0);
|
||||
|
||||
@@ -41,15 +41,13 @@ change_color_callback (GtkWidget *button,
|
||||
{
|
||||
GtkWidget *dialog;
|
||||
GtkColorSelection *colorsel;
|
||||
GtkColorSelectionDialog *selection_dialog;
|
||||
gint response;
|
||||
|
||||
dialog = gtk_color_selection_dialog_new ("Changing color");
|
||||
|
||||
gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (window));
|
||||
|
||||
selection_dialog = GTK_COLOR_SELECTION_DIALOG (dialog);
|
||||
colorsel = GTK_COLOR_SELECTION (gtk_color_selection_dialog_get_color_selection (selection_dialog));
|
||||
|
||||
colorsel = GTK_COLOR_SELECTION (GTK_COLOR_SELECTION_DIALOG (dialog)->colorsel);
|
||||
|
||||
gtk_color_selection_set_previous_color (colorsel, &color);
|
||||
gtk_color_selection_set_current_color (colorsel, &color);
|
||||
|
||||
@@ -435,7 +435,7 @@ do_combobox (GtkWidget *do_widget)
|
||||
entry = g_object_new (TYPE_MASK_ENTRY, NULL);
|
||||
MASK_ENTRY (entry)->mask = "^([0-9]*|One|Two|2\302\275|Three)$";
|
||||
|
||||
gtk_container_remove (GTK_CONTAINER (combo), gtk_bin_get_child (GTK_BIN (combo)));
|
||||
gtk_container_remove (GTK_CONTAINER (combo), GTK_BIN (combo)->child);
|
||||
gtk_container_add (GTK_CONTAINER (combo), entry);
|
||||
|
||||
}
|
||||
|
||||
@@ -33,7 +33,6 @@ static void
|
||||
interactive_dialog_clicked (GtkButton *button,
|
||||
gpointer user_data)
|
||||
{
|
||||
GtkWidget *content_area;
|
||||
GtkWidget *dialog;
|
||||
GtkWidget *hbox;
|
||||
GtkWidget *stock;
|
||||
@@ -52,11 +51,9 @@ interactive_dialog_clicked (GtkButton *button,
|
||||
GTK_RESPONSE_CANCEL,
|
||||
NULL);
|
||||
|
||||
content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog));
|
||||
|
||||
hbox = gtk_hbox_new (FALSE, 8);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (hbox), 8);
|
||||
gtk_box_pack_start (GTK_BOX (content_area), hbox, FALSE, FALSE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), hbox, FALSE, FALSE, 0);
|
||||
|
||||
stock = gtk_image_new_from_stock (GTK_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), stock, FALSE, FALSE, 0);
|
||||
|
||||
@@ -11,7 +11,6 @@ static GtkWidget *window = NULL;
|
||||
GtkWidget *
|
||||
do_entry_buffer (GtkWidget *do_widget)
|
||||
{
|
||||
GtkWidget *content_area;
|
||||
GtkWidget *vbox;
|
||||
GtkWidget *label;
|
||||
GtkWidget *entry;
|
||||
@@ -32,10 +31,8 @@ do_entry_buffer (GtkWidget *do_widget)
|
||||
g_signal_connect (window, "destroy",
|
||||
G_CALLBACK (gtk_widget_destroyed), &window);
|
||||
|
||||
content_area = gtk_dialog_get_content_area (GTK_DIALOG (window));
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 5);
|
||||
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), vbox, TRUE, TRUE, 0);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
|
||||
|
||||
label = gtk_label_new (NULL);
|
||||
|
||||
@@ -37,7 +37,6 @@ create_completion_model (void)
|
||||
GtkWidget *
|
||||
do_entry_completion (GtkWidget *do_widget)
|
||||
{
|
||||
GtkWidget *content_area;
|
||||
GtkWidget *vbox;
|
||||
GtkWidget *label;
|
||||
GtkWidget *entry;
|
||||
@@ -59,10 +58,8 @@ do_entry_completion (GtkWidget *do_widget)
|
||||
g_signal_connect (window, "destroy",
|
||||
G_CALLBACK (gtk_widget_destroyed), &window);
|
||||
|
||||
content_area = gtk_dialog_get_content_area (GTK_DIALOG (window));
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 5);
|
||||
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), vbox, TRUE, TRUE, 0);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
|
||||
|
||||
label = gtk_label_new (NULL);
|
||||
|
||||
@@ -13,7 +13,6 @@ static GtkWidget *window = NULL;
|
||||
GtkWidget *
|
||||
do_expander (GtkWidget *do_widget)
|
||||
{
|
||||
GtkWidget *content_area;
|
||||
GtkWidget *vbox;
|
||||
GtkWidget *label;
|
||||
GtkWidget *expander;
|
||||
@@ -33,10 +32,8 @@ do_expander (GtkWidget *do_widget)
|
||||
g_signal_connect (window, "destroy",
|
||||
G_CALLBACK (gtk_widget_destroyed), &window);
|
||||
|
||||
content_area = gtk_dialog_get_content_area (GTK_DIALOG (window));
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 5);
|
||||
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), vbox, TRUE, TRUE, 0);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
|
||||
|
||||
label = gtk_label_new ("Expander demo. Click on the triangle for details.");
|
||||
|
||||
@@ -226,12 +226,12 @@ gtk_rotated_bin_realize (GtkWidget *widget)
|
||||
GtkRotatedBin *bin = GTK_ROTATED_BIN (widget);
|
||||
GdkWindowAttr attributes;
|
||||
gint attributes_mask;
|
||||
guint border_width;
|
||||
gint border_width;
|
||||
GtkRequisition child_requisition;
|
||||
|
||||
gtk_widget_set_realized (widget, TRUE);
|
||||
|
||||
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
|
||||
border_width = GTK_CONTAINER (widget)->border_width;
|
||||
|
||||
attributes.x = widget->allocation.x + border_width;
|
||||
attributes.y = widget->allocation.y + border_width;
|
||||
@@ -378,7 +378,6 @@ gtk_rotated_bin_size_request (GtkWidget *widget,
|
||||
GtkRequisition child_requisition;
|
||||
double s, c;
|
||||
double w, h;
|
||||
guint border_width;
|
||||
|
||||
child_requisition.width = 0;
|
||||
child_requisition.height = 0;
|
||||
@@ -391,9 +390,8 @@ gtk_rotated_bin_size_request (GtkWidget *widget,
|
||||
w = c * child_requisition.width + s * child_requisition.height;
|
||||
h = s * child_requisition.width + c * child_requisition.height;
|
||||
|
||||
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
|
||||
requisition->width = border_width * 2 + w;
|
||||
requisition->height = border_width * 2 + h;
|
||||
requisition->width = GTK_CONTAINER (widget)->border_width * 2 + w;
|
||||
requisition->height = GTK_CONTAINER (widget)->border_width * 2 + h;
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -401,13 +399,13 @@ gtk_rotated_bin_size_allocate (GtkWidget *widget,
|
||||
GtkAllocation *allocation)
|
||||
{
|
||||
GtkRotatedBin *bin = GTK_ROTATED_BIN (widget);
|
||||
guint border_width;
|
||||
gint border_width;
|
||||
gint w, h;
|
||||
gdouble s, c;
|
||||
|
||||
widget->allocation = *allocation;
|
||||
|
||||
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
|
||||
border_width = GTK_CONTAINER (widget)->border_width;
|
||||
|
||||
w = allocation->width - border_width * 2;
|
||||
h = allocation->height - border_width * 2;
|
||||
|
||||
@@ -164,12 +164,12 @@ gtk_mirror_bin_realize (GtkWidget *widget)
|
||||
GtkMirrorBin *bin = GTK_MIRROR_BIN (widget);
|
||||
GdkWindowAttr attributes;
|
||||
gint attributes_mask;
|
||||
guint border_width;
|
||||
gint border_width;
|
||||
GtkRequisition child_requisition;
|
||||
|
||||
gtk_widget_set_realized (widget, TRUE);
|
||||
|
||||
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
|
||||
border_width = GTK_CONTAINER (widget)->border_width;
|
||||
|
||||
attributes.x = widget->allocation.x + border_width;
|
||||
attributes.y = widget->allocation.y + border_width;
|
||||
@@ -302,7 +302,6 @@ gtk_mirror_bin_size_request (GtkWidget *widget,
|
||||
{
|
||||
GtkMirrorBin *bin = GTK_MIRROR_BIN (widget);
|
||||
GtkRequisition child_requisition;
|
||||
guint border_width;
|
||||
|
||||
child_requisition.width = 0;
|
||||
child_requisition.height = 0;
|
||||
@@ -310,9 +309,8 @@ gtk_mirror_bin_size_request (GtkWidget *widget,
|
||||
if (bin->child && gtk_widget_get_visible (bin->child))
|
||||
gtk_widget_size_request (bin->child, &child_requisition);
|
||||
|
||||
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
|
||||
requisition->width = border_width * 2 + child_requisition.width + 10;
|
||||
requisition->height = border_width * 2 + child_requisition.height * 2 + 10;
|
||||
requisition->width = GTK_CONTAINER (widget)->border_width * 2 + child_requisition.width + 10;
|
||||
requisition->height = GTK_CONTAINER (widget)->border_width * 2 + child_requisition.height * 2 + 10;
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -320,12 +318,11 @@ gtk_mirror_bin_size_allocate (GtkWidget *widget,
|
||||
GtkAllocation *allocation)
|
||||
{
|
||||
GtkMirrorBin *bin = GTK_MIRROR_BIN (widget);
|
||||
gint border_width;
|
||||
gint w, h;
|
||||
guint border_width;
|
||||
|
||||
widget->allocation = *allocation;
|
||||
|
||||
border_width = gtk_container_get_border_width (GTK_CONTAINER (widget));
|
||||
border_width = GTK_CONTAINER (widget)->border_width;
|
||||
|
||||
w = allocation->width - border_width * 2;
|
||||
h = allocation->height - border_width * 2;
|
||||
|
||||
@@ -18,13 +18,11 @@ toggle_resize (GtkWidget *widget,
|
||||
GtkWidget *child)
|
||||
{
|
||||
GtkPaned *paned = GTK_PANED (child->parent);
|
||||
gboolean is_child1 = (child == gtk_paned_get_child1 (paned));
|
||||
gboolean is_child1 = (child == paned->child1);
|
||||
gboolean resize, shrink;
|
||||
|
||||
gtk_container_child_get (GTK_CONTAINER (paned), child,
|
||||
"resize", &resize,
|
||||
"shrink", &shrink,
|
||||
NULL);
|
||||
resize = is_child1 ? paned->child1_resize : paned->child2_resize;
|
||||
shrink = is_child1 ? paned->child1_shrink : paned->child2_shrink;
|
||||
|
||||
g_object_ref (child);
|
||||
gtk_container_remove (GTK_CONTAINER (child->parent), child);
|
||||
@@ -40,13 +38,11 @@ toggle_shrink (GtkWidget *widget,
|
||||
GtkWidget *child)
|
||||
{
|
||||
GtkPaned *paned = GTK_PANED (child->parent);
|
||||
gboolean is_child1 = (child == gtk_paned_get_child1 (paned));
|
||||
gboolean is_child1 = (child == paned->child1);
|
||||
gboolean resize, shrink;
|
||||
|
||||
gtk_container_child_get (GTK_CONTAINER (paned), child,
|
||||
"resize", &resize,
|
||||
"shrink", &shrink,
|
||||
NULL);
|
||||
resize = is_child1 ? paned->child1_resize : paned->child2_resize;
|
||||
shrink = is_child1 ? paned->child1_shrink : paned->child2_shrink;
|
||||
|
||||
g_object_ref (child);
|
||||
gtk_container_remove (GTK_CONTAINER (child->parent), child);
|
||||
@@ -63,15 +59,11 @@ create_pane_options (GtkPaned *paned,
|
||||
const gchar *label1,
|
||||
const gchar *label2)
|
||||
{
|
||||
GtkWidget *child1, *child2;
|
||||
GtkWidget *frame;
|
||||
GtkWidget *table;
|
||||
GtkWidget *label;
|
||||
GtkWidget *check_button;
|
||||
|
||||
child1 = gtk_paned_get_child1 (paned);
|
||||
child2 = gtk_paned_get_child2 (paned);
|
||||
|
||||
|
||||
frame = gtk_frame_new (frame_label);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (frame), 4);
|
||||
|
||||
@@ -86,16 +78,16 @@ create_pane_options (GtkPaned *paned,
|
||||
gtk_table_attach_defaults (GTK_TABLE (table), check_button,
|
||||
0, 1, 1, 2);
|
||||
g_signal_connect (check_button, "toggled",
|
||||
G_CALLBACK (toggle_resize), child1);
|
||||
|
||||
G_CALLBACK (toggle_resize), paned->child1);
|
||||
|
||||
check_button = gtk_check_button_new_with_mnemonic ("_Shrink");
|
||||
gtk_table_attach_defaults (GTK_TABLE (table), check_button,
|
||||
0, 1, 2, 3);
|
||||
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (check_button),
|
||||
TRUE);
|
||||
g_signal_connect (check_button, "toggled",
|
||||
G_CALLBACK (toggle_shrink), child1);
|
||||
|
||||
G_CALLBACK (toggle_shrink), paned->child1);
|
||||
|
||||
label = gtk_label_new (label2);
|
||||
gtk_table_attach_defaults (GTK_TABLE (table), label,
|
||||
1, 2, 0, 1);
|
||||
@@ -106,15 +98,15 @@ create_pane_options (GtkPaned *paned,
|
||||
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (check_button),
|
||||
TRUE);
|
||||
g_signal_connect (check_button, "toggled",
|
||||
G_CALLBACK (toggle_resize), child2);
|
||||
|
||||
G_CALLBACK (toggle_resize), paned->child2);
|
||||
|
||||
check_button = gtk_check_button_new_with_mnemonic ("_Shrink");
|
||||
gtk_table_attach_defaults (GTK_TABLE (table), check_button,
|
||||
1, 2, 2, 3);
|
||||
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (check_button),
|
||||
TRUE);
|
||||
g_signal_connect (check_button, "toggled",
|
||||
G_CALLBACK (toggle_shrink), child2);
|
||||
G_CALLBACK (toggle_shrink), paned->child2);
|
||||
|
||||
return frame;
|
||||
}
|
||||
|
||||
@@ -241,7 +241,6 @@ entry_populate_popup (GtkEntry *entry,
|
||||
GtkWidget *
|
||||
do_search_entry (GtkWidget *do_widget)
|
||||
{
|
||||
GtkWidget *content_area;
|
||||
GtkWidget *vbox;
|
||||
GtkWidget *hbox;
|
||||
GtkWidget *label;
|
||||
@@ -264,10 +263,8 @@ do_search_entry (GtkWidget *do_widget)
|
||||
g_signal_connect (window, "destroy",
|
||||
G_CALLBACK (search_entry_destroyed), &window);
|
||||
|
||||
content_area = gtk_dialog_get_content_area (GTK_DIALOG (window));
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 5);
|
||||
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), vbox, TRUE, TRUE, 0);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
|
||||
|
||||
label = gtk_label_new (NULL);
|
||||
|
||||
@@ -82,7 +82,6 @@ toggle_grouping (GtkToggleButton *check_button,
|
||||
GtkWidget *
|
||||
do_sizegroup (GtkWidget *do_widget)
|
||||
{
|
||||
GtkWidget *content_area;
|
||||
GtkWidget *table;
|
||||
GtkWidget *frame;
|
||||
GtkWidget *vbox;
|
||||
@@ -116,10 +115,8 @@ do_sizegroup (GtkWidget *do_widget)
|
||||
g_signal_connect (window, "destroy",
|
||||
G_CALLBACK (gtk_widget_destroyed), &window);
|
||||
|
||||
content_area = gtk_dialog_get_content_area (GTK_DIALOG (window));
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 5);
|
||||
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), vbox, TRUE, TRUE, 0);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
|
||||
|
||||
size_group = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL);
|
||||
|
||||
@@ -27,7 +27,6 @@ on_stop_clicked (GtkButton *button, gpointer user_data)
|
||||
GtkWidget *
|
||||
do_spinner (GtkWidget *do_widget)
|
||||
{
|
||||
GtkWidget *content_area;
|
||||
GtkWidget *vbox;
|
||||
GtkWidget *hbox;
|
||||
GtkWidget *button;
|
||||
@@ -48,10 +47,8 @@ do_spinner (GtkWidget *do_widget)
|
||||
g_signal_connect (window, "destroy",
|
||||
G_CALLBACK (gtk_widget_destroyed), &window);
|
||||
|
||||
content_area = gtk_dialog_get_content_area (GTK_DIALOG (window));
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 5);
|
||||
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), vbox, TRUE, TRUE, 0);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
|
||||
|
||||
/* Sensitive */
|
||||
|
||||
@@ -17,8 +17,6 @@ pdf:
|
||||
(cd $(srcdir); db2pdf gtk-faq.sgml); \
|
||||
fi
|
||||
|
||||
all-local: html
|
||||
|
||||
dist-hook: html
|
||||
cp -Rp $(srcdir)/html $(distdir)
|
||||
else
|
||||
|
||||
@@ -21,6 +21,7 @@ CFILE_GLOB=$(top_srcdir)/gdk/*.c
|
||||
|
||||
# Header files to ignore when scanning
|
||||
IGNORE_HFILES= \
|
||||
gdkalias.h \
|
||||
gdkintl.h \
|
||||
gdkmarshalers.h \
|
||||
gdkkeysyms.h \
|
||||
|
||||
@@ -706,6 +706,8 @@ gdk_window_get_device_cursor
|
||||
gdk_window_set_device_cursor
|
||||
gdk_window_get_device_events
|
||||
gdk_window_set_device_events
|
||||
gdk_window_get_source_events
|
||||
gdk_window_set_source_events
|
||||
|
||||
<SUBSECTION>
|
||||
GdkPointerHooks
|
||||
@@ -910,7 +912,6 @@ gdk_keymap_get_entries_for_keycode
|
||||
gdk_keymap_get_direction
|
||||
gdk_keymap_have_bidi_layouts
|
||||
gdk_keymap_get_caps_lock_state
|
||||
gdk_keymap_get_num_lock_state
|
||||
gdk_keymap_add_virtual_modifiers
|
||||
gdk_keymap_map_virtual_modifiers
|
||||
|
||||
|
||||
@@ -21,6 +21,7 @@ CFILE_GLOB=$(top_srcdir)/gtk/*.c
|
||||
|
||||
# Header files to ignore when scanning
|
||||
IGNORE_HFILES= \
|
||||
gtkalias.h \
|
||||
fnmatch.h \
|
||||
gtkdebug.h \
|
||||
gtkbuilderprivate.h \
|
||||
@@ -78,6 +79,7 @@ IGNORE_HFILES= \
|
||||
gtktexttypes.h \
|
||||
gtktextutil.h \
|
||||
gtkthemes.h \
|
||||
gtktoggleactionprivate.h \
|
||||
gtktrayicon.h \
|
||||
gtktreedatalist.h \
|
||||
gtktreeprivate.h \
|
||||
|
||||
@@ -318,7 +318,7 @@ that is, GUI components such as #GtkButton or #GtkTextView.
|
||||
<xi:include href="xml/gtktable.xml" />
|
||||
<xi:include href="xml/gtkexpander.xml" />
|
||||
<xi:include href="xml/gtkorientable.xml" />
|
||||
<xi:include href="xml/gtksizerequest.xml" />
|
||||
<xi:include href="xml/gtkextendedlayout.xml" />
|
||||
</chapter>
|
||||
|
||||
<chapter id="Ornaments">
|
||||
|
||||
@@ -4942,7 +4942,6 @@ gtk_widget_get_requisition
|
||||
gtk_widget_device_is_shadowed
|
||||
|
||||
<SUBSECTION>
|
||||
gtk_requisition_new
|
||||
gtk_requisition_copy
|
||||
gtk_requisition_free
|
||||
|
||||
|
||||
4
docs/reference/gtk/tmpl/.gitignore
vendored
4
docs/reference/gtk/tmpl/.gitignore
vendored
@@ -1,10 +1,6 @@
|
||||
gtkactiongroup.sgml
|
||||
gtkbbox.sgml
|
||||
gtkbox.sgml
|
||||
gtkbuilder.sgml
|
||||
gtkbutton.sgml
|
||||
gtkcalendar.sgml
|
||||
gtkcelleditable.sgml
|
||||
gtkhbox.sgml
|
||||
gtkiconview.sgml
|
||||
gtkmessagedialog.sgml
|
||||
|
||||
401
docs/reference/gtk/tmpl/gtkactiongroup.sgml
Normal file
401
docs/reference/gtk/tmpl/gtkactiongroup.sgml
Normal file
@@ -0,0 +1,401 @@
|
||||
<!-- ##### SECTION Title ##### -->
|
||||
GtkActionGroup
|
||||
|
||||
<!-- ##### SECTION Short_Description ##### -->
|
||||
A group of actions
|
||||
|
||||
<!-- ##### SECTION Long_Description ##### -->
|
||||
<para>
|
||||
Actions are organised into groups. An action group is essentially a
|
||||
map from names to #GtkAction objects.
|
||||
</para>
|
||||
<para>
|
||||
All actions that would make sense to use in a particular context
|
||||
should be in a single group. Multiple action groups may be used for a
|
||||
particular user interface. In fact, it is expected that most nontrivial
|
||||
applications will make use of multiple groups. For example, in an application
|
||||
that can edit multiple documents, one group holding global actions
|
||||
(e.g. quit, about, new), and one group per document holding actions that
|
||||
act on that document (eg. save, cut/copy/paste, etc). Each window's menus
|
||||
would be constructed from a combination of two action groups.
|
||||
</para>
|
||||
<para id="Action-Accel">
|
||||
Accelerators are handled by the GTK+ accelerator map. All actions are assigned an
|
||||
accelerator path (which normally has the form
|
||||
<literal><Actions>/<replaceable>group-name</replaceable>/<replaceable>action-name</replaceable></literal>)
|
||||
and a shortcut is associated with this accelerator path. All menuitems and
|
||||
toolitems take on this accelerator path. The GTK+ accelerator map code makes
|
||||
sure that the correct shortcut is displayed next to the menu item.
|
||||
</para>
|
||||
|
||||
<refsect2 id="GtkActionGroup-BUILDER-UI">
|
||||
<title>GtkActionGroup as GtkBuildable</title>
|
||||
<para>
|
||||
The GtkActionGroup implementation of the GtkBuildable interface accepts
|
||||
GtkAction objects as <child> elements in UI definitions.
|
||||
</para>
|
||||
<para>
|
||||
Note that it is probably more common to define actions and action groups
|
||||
in the code, since they are directly related to what the code can do.
|
||||
</para>
|
||||
<para>
|
||||
The GtkActionGroup implementation of the GtkBuildable interface supports a
|
||||
custom <accelerator> element, which has attributes named key and
|
||||
modifiers and allows to specify accelerators. This is similar to the
|
||||
<accelerator> element of GtkWidget, the main difference is that
|
||||
it doesn't allow you to specify a signal.
|
||||
</para>
|
||||
<example>
|
||||
<title>A <structname>GtkDialog</structname> UI definition fragment.</title>
|
||||
<programlisting><![CDATA[
|
||||
<object class="GtkActionGroup" id="actiongroup">
|
||||
<child>
|
||||
<object class="GtkAction" id="About">
|
||||
<property name="name">About</property>
|
||||
<property name="stock_id">gtk-about</property>
|
||||
<signal handler="about_activate" name="activate"/>
|
||||
</object>
|
||||
<accelerator key="F1" modifiers="GDK_CONTROL_MASK | GDK_SHIFT_MASK"/>
|
||||
</child>
|
||||
</object>
|
||||
]]></programlisting>
|
||||
</example>
|
||||
</refsect2>
|
||||
|
||||
<!-- ##### SECTION See_Also ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### SECTION Stability_Level ##### -->
|
||||
|
||||
|
||||
<!-- ##### SECTION Image ##### -->
|
||||
|
||||
|
||||
<!-- ##### STRUCT GtkActionGroup ##### -->
|
||||
<para>
|
||||
The <structname>GtkActionGroup</structname> struct contains only private
|
||||
members and should not be accessed directly.
|
||||
</para>
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GtkActionGroup::connect-proxy ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@actiongroup: the object which received the signal.
|
||||
@arg1:
|
||||
@widget:
|
||||
|
||||
<!-- ##### SIGNAL GtkActionGroup::disconnect-proxy ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@actiongroup: the object which received the signal.
|
||||
@arg1:
|
||||
@widget:
|
||||
|
||||
<!-- ##### SIGNAL GtkActionGroup::post-activate ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@actiongroup: the object which received the signal.
|
||||
@arg1:
|
||||
|
||||
<!-- ##### SIGNAL GtkActionGroup::pre-activate ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@actiongroup: the object which received the signal.
|
||||
@arg1:
|
||||
|
||||
<!-- ##### ARG GtkActionGroup:name ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkActionGroup:sensitive ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkActionGroup:visible ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_new ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@name:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_get_name ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_get_sensitive ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_set_sensitive ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@sensitive:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_get_visible ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_set_visible ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@visible:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_get_action ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@action_name:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_list_actions ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_add_action ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@action:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_add_action_with_accel ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@action:
|
||||
@accelerator:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_remove_action ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@action:
|
||||
|
||||
|
||||
<!-- ##### STRUCT GtkActionEntry ##### -->
|
||||
<para>
|
||||
<structname>GtkActionEntry</structname> structs are used with
|
||||
gtk_action_group_add_actions() to construct actions.
|
||||
</para>
|
||||
|
||||
@name: The name of the action.
|
||||
@stock_id: The stock id for the action, or the name of an icon from the icon
|
||||
theme.
|
||||
@label: The label for the action. This field should typically be marked for
|
||||
translation, see gtk_action_group_set_translation_domain(). If @label
|
||||
is %NULL, the label of the stock item with id @stock_id is used.
|
||||
@accelerator: The accelerator for the action, in the format understood by
|
||||
gtk_accelerator_parse().
|
||||
@tooltip: The tooltip for the action. This field should typically be marked
|
||||
for translation, see gtk_action_group_set_translation_domain().
|
||||
@callback: The function to call when the action is activated.
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_add_actions ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@entries:
|
||||
@n_entries:
|
||||
@user_data:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_add_actions_full ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@entries:
|
||||
@n_entries:
|
||||
@user_data:
|
||||
@destroy:
|
||||
|
||||
|
||||
<!-- ##### STRUCT GtkToggleActionEntry ##### -->
|
||||
<para>
|
||||
<structname>GtkToggleActionEntry</structname> structs are used with
|
||||
gtk_action_group_add_toggle_actions() to construct toggle actions.
|
||||
</para>
|
||||
|
||||
@name: The name of the action.
|
||||
@stock_id: The stock id for the action, or the name of an icon from the icon
|
||||
theme.
|
||||
@label: The label for the action. This field should typically be marked for
|
||||
translation, see gtk_action_group_set_translation_domain().
|
||||
@accelerator: The accelerator for the action, in the format understood by
|
||||
gtk_accelerator_parse().
|
||||
@tooltip: The tooltip for the action. This field should typically be marked
|
||||
for translation, see gtk_action_group_set_translation_domain().
|
||||
@callback: The function to call when the action is activated.
|
||||
@is_active: The initial state of the toggle action.
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_add_toggle_actions ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@entries:
|
||||
@n_entries:
|
||||
@user_data:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_add_toggle_actions_full ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@entries:
|
||||
@n_entries:
|
||||
@user_data:
|
||||
@destroy:
|
||||
|
||||
|
||||
<!-- ##### STRUCT GtkRadioActionEntry ##### -->
|
||||
<para>
|
||||
<structname>GtkRadioActionEntry</structname> structs are used with
|
||||
gtk_action_group_add_radio_actions() to construct groups of radio actions.
|
||||
</para>
|
||||
|
||||
@name: The name of the action.
|
||||
@stock_id: The stock id for the action, or the name of an icon from the icon
|
||||
theme.
|
||||
@label: The label for the action. This field should typically be marked for
|
||||
translation, see gtk_action_group_set_translation_domain().
|
||||
@accelerator: The accelerator for the action, in the format understood by
|
||||
gtk_accelerator_parse().
|
||||
@tooltip: The tooltip for the action. This field should typically be marked for
|
||||
translation, see gtk_action_group_set_translation_domain().
|
||||
@value: The value to set on the radio action. See gtk_radio_action_get_current_value().
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_add_radio_actions ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@entries:
|
||||
@n_entries:
|
||||
@value:
|
||||
@on_change:
|
||||
@user_data:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_add_radio_actions_full ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@entries:
|
||||
@n_entries:
|
||||
@value:
|
||||
@on_change:
|
||||
@user_data:
|
||||
@destroy:
|
||||
|
||||
|
||||
<!-- ##### USER_FUNCTION GtkTranslateFunc ##### -->
|
||||
<para>
|
||||
The function used to translate messages in e.g. #GtkIconFactory
|
||||
and #GtkActionGroup.
|
||||
</para>
|
||||
|
||||
@path: The id of the message. In #GtkItemFactory this will be a path
|
||||
from a #GtkItemFactoryEntry, in #GtkActionGroup, it will be a label
|
||||
or tooltip from a #GtkActionEntry.
|
||||
@func_data: user data passed in when registering the function
|
||||
@Returns: the translated message
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_set_translate_func ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@func:
|
||||
@data:
|
||||
@notify:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_set_translation_domain ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@domain:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_action_group_translate_string ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@action_group:
|
||||
@string:
|
||||
@Returns:
|
||||
|
||||
|
||||
398
docs/reference/gtk/tmpl/gtkbutton.sgml
Normal file
398
docs/reference/gtk/tmpl/gtkbutton.sgml
Normal file
@@ -0,0 +1,398 @@
|
||||
<!-- ##### SECTION Title ##### -->
|
||||
GtkButton
|
||||
|
||||
<!-- ##### SECTION Short_Description ##### -->
|
||||
A widget that creates a signal when clicked on
|
||||
|
||||
<!-- ##### SECTION Long_Description ##### -->
|
||||
<para>
|
||||
The #GtkButton widget is generally used to attach a function to that
|
||||
is called when the button is pressed. The various signals and how to use
|
||||
them are outlined below.
|
||||
</para>
|
||||
<para>
|
||||
The #GtkButton widget can hold any valid child widget. That is it can
|
||||
hold most any other standard #GtkWidget. The most commonly used child is
|
||||
the #GtkLabel.
|
||||
</para>
|
||||
|
||||
<!-- ##### SECTION See_Also ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### SECTION Stability_Level ##### -->
|
||||
|
||||
|
||||
<!-- ##### SECTION Image ##### -->
|
||||
|
||||
|
||||
<!-- ##### STRUCT GtkButton ##### -->
|
||||
<para>
|
||||
This should not be accessed directly. Use the accessor functions below.
|
||||
</para>
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GtkButton::activate ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button: the object which received the signal.
|
||||
|
||||
<!-- ##### SIGNAL GtkButton::clicked ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
|
||||
<!-- ##### SIGNAL GtkButton::enter ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
|
||||
<!-- ##### SIGNAL GtkButton::leave ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
|
||||
<!-- ##### SIGNAL GtkButton::pressed ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
|
||||
<!-- ##### SIGNAL GtkButton::released ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
|
||||
<!-- ##### ARG GtkButton:focus-on-click ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:image ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:image-position ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:label ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:relief ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:use-stock ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:use-underline ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:xalign ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:yalign ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:child-displacement-x ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:child-displacement-y ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:default-border ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:default-outside-border ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:displace-focus ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:image-spacing ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkButton:inner-border ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_new ##### -->
|
||||
<para>
|
||||
Creates a new #GtkButton widget. To add a child widget to the button,
|
||||
use gtk_container_add().
|
||||
</para>
|
||||
|
||||
@void:
|
||||
@Returns: The newly created #GtkButton widget.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_new_with_label ##### -->
|
||||
<para>
|
||||
Creates a #GtkButton widget with a #GtkLabel child containing the given
|
||||
text.
|
||||
</para>
|
||||
|
||||
@label: The text you want the #GtkLabel to hold.
|
||||
@Returns: The newly created #GtkButton widget.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_new_with_mnemonic ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@label:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_new_from_stock ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@stock_id:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_pressed ##### -->
|
||||
<para>
|
||||
Emits a #GtkButton::pressed signal to the given #GtkButton.
|
||||
</para>
|
||||
|
||||
@button: The #GtkButton you want to send the signal to.
|
||||
@Deprecated: 2.20: Use the #GtkWidget::button-press-event signal.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_released ##### -->
|
||||
<para>
|
||||
Emits a #GtkButton::released signal to the given #GtkButton.
|
||||
</para>
|
||||
|
||||
@button: The #GtkButton you want to send the signal to.
|
||||
@Deprecated: 2.20: Use the #GtkWidget::button-release-event signal.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_clicked ##### -->
|
||||
<para>
|
||||
Emits a #GtkButton::clicked signal to the given #GtkButton.
|
||||
</para>
|
||||
|
||||
@button: The #GtkButton you want to send the signal to.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_enter ##### -->
|
||||
<para>
|
||||
Emits a #GtkButton::enter signal to the given #GtkButton.
|
||||
</para>
|
||||
|
||||
@button: The #GtkButton you want to send the signal to.
|
||||
@Deprecated: 2.20: Use the #GtkWidget::enter-notify-event signal.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_leave ##### -->
|
||||
<para>
|
||||
Emits a #GtkButton::leave signal to the given #GtkButton.
|
||||
</para>
|
||||
|
||||
@button: The #GtkButton you want to send the signal to.
|
||||
@Deprecated: 2.20: Use the #GtkWidget::leave-notify-event signal.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_set_relief ##### -->
|
||||
<para>
|
||||
Sets the relief style of the edges of the given #GtkButton widget.
|
||||
Three styles exist, GTK_RELIEF_NORMAL, GTK_RELIEF_HALF, GTK_RELIEF_NONE.
|
||||
The default style is, as one can guess, GTK_RELIEF_NORMAL.
|
||||
|
||||
<!-- FIXME: put pictures of each style -->
|
||||
</para>
|
||||
|
||||
@button: The #GtkButton you want to set relief styles of.
|
||||
@newstyle: The GtkReliefStyle as described above.
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_get_relief ##### -->
|
||||
<para>
|
||||
Returns the current relief style of the given #GtkButton.
|
||||
</para>
|
||||
|
||||
@button: The #GtkButton you want the #GtkReliefStyle from.
|
||||
@Returns: The current #GtkReliefStyle
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_get_label ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_set_label ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@label:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_get_use_stock ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_set_use_stock ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@use_stock:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_get_use_underline ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_set_use_underline ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@use_underline:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_set_focus_on_click ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@focus_on_click:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_get_focus_on_click ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_set_alignment ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@xalign:
|
||||
@yalign:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_get_alignment ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@xalign:
|
||||
@yalign:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_set_image ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@image:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_get_image ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_set_image_position ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@position:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_get_image_position ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_button_get_event_window ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@button:
|
||||
@Returns:
|
||||
|
||||
|
||||
315
docs/reference/gtk/tmpl/gtkcalendar.sgml
Normal file
315
docs/reference/gtk/tmpl/gtkcalendar.sgml
Normal file
@@ -0,0 +1,315 @@
|
||||
<!-- ##### SECTION Title ##### -->
|
||||
GtkCalendar
|
||||
|
||||
<!-- ##### SECTION Short_Description ##### -->
|
||||
Displays a calendar and allows the user to select a date
|
||||
|
||||
<!-- ##### SECTION Long_Description ##### -->
|
||||
<para>
|
||||
#GtkCalendar is a widget that displays a calendar, one month at a time.
|
||||
It can be created with gtk_calendar_new().
|
||||
</para>
|
||||
<para>
|
||||
The month and year currently displayed can be altered with
|
||||
gtk_calendar_select_month(). The exact day can be selected from the displayed
|
||||
month using gtk_calendar_select_day().
|
||||
</para>
|
||||
<para>
|
||||
To place a visual marker on a particular day, use gtk_calendar_mark_day()
|
||||
and to remove the marker, gtk_calendar_unmark_day().
|
||||
Alternative, all marks can be cleared with gtk_calendar_clear_marks().
|
||||
</para>
|
||||
<para>
|
||||
The way in which the calendar itself is displayed can be altered using
|
||||
gtk_calendar_set_display_options().
|
||||
</para>
|
||||
<para>
|
||||
The selected date can be retrieved from a #GtkCalendar using
|
||||
gtk_calendar_get_date().
|
||||
</para>
|
||||
|
||||
<!-- ##### SECTION See_Also ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### SECTION Stability_Level ##### -->
|
||||
|
||||
|
||||
<!-- ##### SECTION Image ##### -->
|
||||
|
||||
|
||||
<!-- ##### STRUCT GtkCalendar ##### -->
|
||||
<para>
|
||||
<structfield>num_marked_dates</structfield> is an integer containing the
|
||||
number of days that have a mark over them.
|
||||
</para>
|
||||
<para>
|
||||
<structfield>marked_date</structfield> is an array containing the day numbers
|
||||
that currently have a mark over them.
|
||||
</para>
|
||||
<para>
|
||||
<structfield>month</structfield>, <structfield>year</structfield>, and
|
||||
<structfield>selected_day</structfield> contain the currently visible month,
|
||||
year, and selected day respectively.
|
||||
</para>
|
||||
<para>
|
||||
All of these fields should be considered read only, and everything in this
|
||||
struct should only be modified using the functions provided below.
|
||||
</para>
|
||||
<note>
|
||||
<para>
|
||||
Note that <structfield>month</structfield> is zero-based (i.e it allowed values
|
||||
are 0-11) while <structfield>selected_day</structfield> is one-based
|
||||
(i.e. allowed values are 1-31).
|
||||
</para>
|
||||
</note>
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GtkCalendar::day-selected ##### -->
|
||||
<para>
|
||||
Emitted when the user selects a day.
|
||||
</para>
|
||||
|
||||
@calendar: the object which received the signal.
|
||||
|
||||
<!-- ##### SIGNAL GtkCalendar::day-selected-double-click ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@calendar: the object which received the signal.
|
||||
|
||||
<!-- ##### SIGNAL GtkCalendar::month-changed ##### -->
|
||||
<para>
|
||||
Emitted when the user clicks a button to change the selected month on a
|
||||
calendar.
|
||||
</para>
|
||||
|
||||
@calendar: the object which received the signal.
|
||||
|
||||
<!-- ##### SIGNAL GtkCalendar::next-month ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@calendar: the object which received the signal.
|
||||
|
||||
<!-- ##### SIGNAL GtkCalendar::next-year ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@calendar: the object which received the signal.
|
||||
|
||||
<!-- ##### SIGNAL GtkCalendar::prev-month ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@calendar: the object which received the signal.
|
||||
|
||||
<!-- ##### SIGNAL GtkCalendar::prev-year ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@calendar: the object which received the signal.
|
||||
|
||||
<!-- ##### ARG GtkCalendar:day ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkCalendar:detail-height-rows ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkCalendar:detail-width-chars ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkCalendar:month ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkCalendar:no-month-change ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkCalendar:show-day-names ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkCalendar:show-details ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkCalendar:show-heading ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkCalendar:show-week-numbers ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkCalendar:year ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### USER_FUNCTION GtkCalendarDetailFunc ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@calendar:
|
||||
@year:
|
||||
@month:
|
||||
@day:
|
||||
@user_data:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### ENUM GtkCalendarDisplayOptions ##### -->
|
||||
<para>
|
||||
</para>
|
||||
|
||||
@GTK_CALENDAR_SHOW_HEADING:
|
||||
@GTK_CALENDAR_SHOW_DAY_NAMES:
|
||||
@GTK_CALENDAR_NO_MONTH_CHANGE:
|
||||
@GTK_CALENDAR_SHOW_WEEK_NUMBERS:
|
||||
@GTK_CALENDAR_WEEK_START_MONDAY:
|
||||
@GTK_CALENDAR_SHOW_DETAILS:
|
||||
|
||||
<!-- ##### FUNCTION gtk_calendar_new ##### -->
|
||||
<para>
|
||||
</para>
|
||||
|
||||
@void:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_calendar_select_month ##### -->
|
||||
<para>
|
||||
</para>
|
||||
|
||||
@calendar:
|
||||
@month:
|
||||
@year:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_calendar_select_day ##### -->
|
||||
<para>
|
||||
</para>
|
||||
|
||||
@calendar:
|
||||
@day:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_calendar_mark_day ##### -->
|
||||
<para>
|
||||
</para>
|
||||
|
||||
@calendar:
|
||||
@day:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_calendar_unmark_day ##### -->
|
||||
<para>
|
||||
</para>
|
||||
|
||||
@calendar:
|
||||
@day:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_calendar_clear_marks ##### -->
|
||||
<para>
|
||||
</para>
|
||||
|
||||
@calendar:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_calendar_get_display_options ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@calendar:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_calendar_set_display_options ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@calendar:
|
||||
@flags:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_calendar_get_date ##### -->
|
||||
<para>
|
||||
</para>
|
||||
|
||||
@calendar:
|
||||
@year:
|
||||
@month:
|
||||
@day:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_calendar_set_detail_func ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@calendar:
|
||||
@func:
|
||||
@data:
|
||||
@destroy:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_calendar_get_detail_width_chars ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@calendar:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_calendar_set_detail_width_chars ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@calendar:
|
||||
@chars:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_calendar_get_detail_height_rows ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@calendar:
|
||||
@Returns:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_calendar_set_detail_height_rows ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@calendar:
|
||||
@rows:
|
||||
|
||||
|
||||
83
docs/reference/gtk/tmpl/gtkcelleditable.sgml
Normal file
83
docs/reference/gtk/tmpl/gtkcelleditable.sgml
Normal file
@@ -0,0 +1,83 @@
|
||||
<!-- ##### SECTION Title ##### -->
|
||||
GtkCellEditable
|
||||
|
||||
<!-- ##### SECTION Short_Description ##### -->
|
||||
Interface for widgets which can are used for editing cells
|
||||
|
||||
<!-- ##### SECTION Long_Description ##### -->
|
||||
<para>
|
||||
The #GtkCellEditable interface must be implemented for widgets
|
||||
to be usable when editing the contents of a #GtkTreeView cell.
|
||||
</para>
|
||||
|
||||
<!-- ##### SECTION See_Also ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### SECTION Stability_Level ##### -->
|
||||
|
||||
|
||||
<!-- ##### SECTION Image ##### -->
|
||||
|
||||
|
||||
<!-- ##### STRUCT GtkCellEditable ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
|
||||
<!-- ##### SIGNAL GtkCellEditable::editing-done ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@celleditable: the object which received the signal.
|
||||
|
||||
<!-- ##### SIGNAL GtkCellEditable::remove-widget ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@celleditable: the object which received the signal.
|
||||
|
||||
<!-- ##### ARG GtkCellEditable:editing-canceled ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### STRUCT GtkCellEditableIface ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@g_iface:
|
||||
@editing_done:
|
||||
@remove_widget:
|
||||
@start_editing:
|
||||
|
||||
<!-- ##### FUNCTION gtk_cell_editable_start_editing ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@cell_editable:
|
||||
@event:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_cell_editable_editing_done ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@cell_editable:
|
||||
|
||||
|
||||
<!-- ##### FUNCTION gtk_cell_editable_remove_widget ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
@cell_editable:
|
||||
|
||||
|
||||
@@ -48,6 +48,11 @@ only be accessed using the functions below.
|
||||
</para>
|
||||
|
||||
|
||||
<!-- ##### ARG GtkFontSelection:font ##### -->
|
||||
<para>
|
||||
|
||||
</para>
|
||||
|
||||
<!-- ##### ARG GtkFontSelection:font-name ##### -->
|
||||
<para>
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ their icons, but more additional application themes can be
|
||||
installed as operating system vendors and users choose.
|
||||
</para>
|
||||
<para>
|
||||
Named icons are similar to the <xref linkend="gtk3-Themeable-Stock-Images"/>
|
||||
Named icons are similar to the <xref linkend="gtk-Themeable-Stock-Images"/>
|
||||
facility, and the distinction between the two may be a bit confusing.
|
||||
A few things to keep in mind:
|
||||
</para>
|
||||
@@ -27,7 +27,7 @@ A few things to keep in mind:
|
||||
<listitem>
|
||||
<para>
|
||||
Stock images usually are used in conjunction with
|
||||
<xref linkend="gtk3-Stock-Items"/>., such as %GTK_STOCK_OK or
|
||||
<xref linkend="gtk-Stock-Items"/>., such as %GTK_STOCK_OK or
|
||||
%GTK_STOCK_OPEN. Named icons are easier to set up and therefore
|
||||
are more useful for new icons that an application wants to
|
||||
add, such as application icons or window icons.
|
||||
|
||||
@@ -54,7 +54,7 @@ GtkWidget *frame2 = gtk_frame_new (NULL);
|
||||
gtk_frame_set_shadow_type (GTK_FRAME (frame1), GTK_SHADOW_IN);
|
||||
gtk_frame_set_shadow_type (GTK_FRAME (frame2), GTK_SHADOW_IN);
|
||||
|
||||
gtk_widget_set_size_request (hpaned, 200, -1);
|
||||
gtk_widget_set_size_request (hpaned, 200 + GTK_PANED (hpaned)->gutter_size, -1);
|
||||
|
||||
gtk_paned_pack1 (GTK_PANED (hpaned), frame1, TRUE, FALSE);
|
||||
gtk_widget_set_size_request (frame1, 50, -1);
|
||||
|
||||
@@ -131,8 +131,7 @@ The <structname>GtkTable</structname> structure holds the data for the actual ta
|
||||
Used to create a new table widget. An initial size must be given by
|
||||
specifying how many rows and columns the table should have, although
|
||||
this can be changed later with gtk_table_resize(). @rows and @columns
|
||||
must both be in the range 1 .. 65535. For historical reasons, 0 is accepted
|
||||
as well and is silently interpreted as 1.
|
||||
must both be in the range 0 .. 65535.
|
||||
</para>
|
||||
|
||||
@rows: The number of rows the new table should have.
|
||||
|
||||
@@ -279,15 +279,13 @@ create_combo_box_entry (void)
|
||||
{
|
||||
GtkWidget *widget;
|
||||
GtkWidget *align;
|
||||
GtkWidget *child;
|
||||
|
||||
gtk_rc_parse_string ("style \"combo-box-entry-style\" {\n"
|
||||
" GtkComboBox::appears-as-list = 1\n"
|
||||
"}\n"
|
||||
"widget_class \"GtkComboBoxEntry\" style \"combo-box-entry-style\"\n" );
|
||||
widget = gtk_combo_box_entry_new_text ();
|
||||
child = gtk_bin_get_child (GTK_BIN (widget));
|
||||
gtk_entry_set_text (GTK_ENTRY (child), "Combo Box Entry");
|
||||
gtk_entry_set_text (GTK_ENTRY (GTK_BIN (widget)->child), "Combo Box Entry");
|
||||
align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0);
|
||||
gtk_container_add (GTK_CONTAINER (align), widget);
|
||||
|
||||
@@ -614,12 +612,10 @@ create_colorsel (void)
|
||||
WidgetInfo *info;
|
||||
GtkWidget *widget;
|
||||
GtkColorSelection *colorsel;
|
||||
GtkColorSelectionDialog *selection_dialog;
|
||||
GdkColor color;
|
||||
|
||||
widget = gtk_color_selection_dialog_new ("Color Selection Dialog");
|
||||
selection_dialog = GTK_COLOR_SELECTION_DIALOG (widget);
|
||||
colorsel = GTK_COLOR_SELECTION (gtk_color_selection_dialog_get_color_selection (selection_dialog));
|
||||
colorsel = GTK_COLOR_SELECTION (GTK_COLOR_SELECTION_DIALOG (widget)->colorsel);
|
||||
|
||||
color.red = 0x7979;
|
||||
color.green = 0xdbdb;
|
||||
@@ -999,7 +995,7 @@ create_volume_button (void)
|
||||
button = gtk_volume_button_new ();
|
||||
gtk_scale_button_set_value (GTK_SCALE_BUTTON (button), 33);
|
||||
/* Hack: get the private dock */
|
||||
widget = gtk_scale_button_get_plus_button (GTK_SCALE_BUTTON (button))->parent->parent->parent;
|
||||
widget = GTK_SCALE_BUTTON (button)->plus_button->parent->parent->parent;
|
||||
gtk_widget_show_all (widget);
|
||||
return new_widget_info ("volumebutton", widget, ASIS);
|
||||
}
|
||||
|
||||
@@ -37,7 +37,7 @@ EXTRA_DIST += \
|
||||
images/tictactoe.png
|
||||
|
||||
if HAVE_DOCBOOK
|
||||
html: gtk-tut.sgml
|
||||
html:
|
||||
if test -w $(srcdir); then \
|
||||
(cd $(srcdir); \
|
||||
db2html gtk-tut.sgml; \
|
||||
@@ -47,13 +47,11 @@ html: gtk-tut.sgml
|
||||
cp images/*.png html/images); \
|
||||
fi
|
||||
|
||||
pdf: gtk-tut.sgml
|
||||
pdf:
|
||||
if test -w $(srcdir); then \
|
||||
(cd $(srcdir); db2pdf gtk-tut.sgml); \
|
||||
fi
|
||||
|
||||
all-local: html
|
||||
|
||||
dist-hook: html
|
||||
cp -Rp $(srcdir)/html $(distdir)
|
||||
else
|
||||
|
||||
@@ -27,7 +27,6 @@ static gboolean area_event( GtkWidget *widget,
|
||||
gint handled = FALSE;
|
||||
gint response;
|
||||
GtkColorSelection *colorsel;
|
||||
GtkColorSelectionDialog *selection_dialog;
|
||||
|
||||
/* Check if we've received a button pressed event */
|
||||
|
||||
@@ -40,8 +39,7 @@ static gboolean area_event( GtkWidget *widget,
|
||||
colorseldlg = gtk_color_selection_dialog_new ("Select background color");
|
||||
|
||||
/* Get the ColorSelection widget */
|
||||
selection_dialog = GTK_COLOR_SELECTION_DIALOG (colorseldlg);
|
||||
colorsel = GTK_COLOR_SELECTION (gtk_color_selection_dialog_get_colorsel (selection_dialog));
|
||||
colorsel = GTK_COLOR_SELECTION (GTK_COLOR_SELECTION_DIALOG (colorseldlg)->colorsel);
|
||||
|
||||
gtk_color_selection_set_previous_color (colorsel, &color);
|
||||
gtk_color_selection_set_current_color (colorsel, &color);
|
||||
|
||||
@@ -26,9 +26,11 @@ EXTRA_DIST += \
|
||||
makeenums.pl \
|
||||
makefile.msc \
|
||||
gdk.symbols \
|
||||
makegdkalias.pl \
|
||||
gdkenumtypes.c.template \
|
||||
gdkenumtypes.h.template \
|
||||
abicheck.sh
|
||||
abicheck.sh \
|
||||
pltcheck.sh
|
||||
|
||||
INCLUDES = \
|
||||
-DG_LOG_DOMAIN=\"Gdk\" \
|
||||
@@ -48,7 +50,6 @@ endif
|
||||
# since automake doesn't support conditionalized libsomething_la_LDFLAGS
|
||||
# we use the general approach here
|
||||
LDADD = \
|
||||
$(GTK_LINK_FLAGS) \
|
||||
-version-info $(LT_VERSION_INFO) \
|
||||
-export-dynamic \
|
||||
-rpath $(libdir) \
|
||||
@@ -103,6 +104,9 @@ gdk_public_h_sources = \
|
||||
gdk_built_public_sources = \
|
||||
gdkenumtypes.h
|
||||
|
||||
gdk_built_private_headers = \
|
||||
gdkalias.h
|
||||
|
||||
gdk_private_headers = \
|
||||
gdkinternals.h \
|
||||
gdkdeviceprivate.h \
|
||||
@@ -142,10 +146,12 @@ gdk_c_sources = \
|
||||
gdkwindowimpl.c
|
||||
|
||||
gdk_built_sources = \
|
||||
gdkaliasdef.c \
|
||||
gdkenumtypes.c \
|
||||
gdkmarshalers.h \
|
||||
gdkmarshalers.c \
|
||||
$(gdk_built_public_sources)
|
||||
$(gdk_built_public_sources) \
|
||||
$(gdk_built_private_headers)
|
||||
|
||||
#
|
||||
# setup GDK sources and their dependencies
|
||||
@@ -154,9 +160,9 @@ gdk_built_sources = \
|
||||
gdkincludedir = $(includedir)/gtk-3.0/gdk
|
||||
gdkinclude_HEADERS = $(gdk_public_h_sources) $(gdk_built_public_sources)
|
||||
|
||||
common_sources = \
|
||||
$(gdk_private_headers) \
|
||||
$(gdk_c_sources) \
|
||||
common_sources = \
|
||||
$(gdk_private_headers) \
|
||||
$(gdk_c_sources) \
|
||||
gdkenumtypes.c \
|
||||
gdkmarshalers.c \
|
||||
gdkmarshalers.h
|
||||
@@ -180,67 +186,30 @@ libgdk_win32_3_0_la_LDFLAGS = -Wl,win32/rc/gdk-win32-res.o -export-symbols $(src
|
||||
|
||||
if HAVE_INTROSPECTION
|
||||
|
||||
introspection_files = \
|
||||
$(gdk_public_h_sources) \
|
||||
$(gdk_c_sources) \
|
||||
gdkenumtypes.c \
|
||||
introspection_files = \
|
||||
$(gdk_public_h_sources) \
|
||||
$(gdk_c_sources) \
|
||||
gdkenumtypes.c \
|
||||
gdkenumtypes.h
|
||||
|
||||
Gdk-3.0.gir: $(gdktargetlib) Makefile
|
||||
Gdk_3_0_gir_SCANNERFLAGS = --strip-prefix=Gdk
|
||||
Gdk_3_0_gir_INCLUDES = Gio-2.0 GdkPixbuf-2.0 Pango-1.0 cairo-1.0
|
||||
Gdk_3_0_gir_INCLUDES = Gio-2.0 GdkPixbuf-2.0 Pango-1.0
|
||||
Gdk_3_0_gir_LIBS = $(gdktargetlib)
|
||||
Gdk_3_0_gir_FILES = $(introspection_files)
|
||||
Gdk_3_0_gir_FILES = $(addprefix $(srcdir)/,$(introspection_files))
|
||||
Gdk_3_0_gir_CFLAGS = $(INCLUDES)
|
||||
INTROSPECTION_GIRS += Gdk-3.0.gir
|
||||
|
||||
if USE_X11
|
||||
x11_introspection_files = \
|
||||
x11/checksettings.c \
|
||||
x11/gdkapplaunchcontext-x11.c \
|
||||
x11/gdkasync.c \
|
||||
x11/gdkcolor-x11.c \
|
||||
x11/gdkcursor-x11.c \
|
||||
x11/gdkdevice-core.c \
|
||||
x11/gdkdevicemanager-core.c \
|
||||
x11/gdkdevicemanager-x11.c \
|
||||
x11/gdkdevicemanager-xi2.c \
|
||||
x11/gdkdevicemanager-xi.c \
|
||||
x11/gdkdevice-xi2.c \
|
||||
x11/gdkdevice-xi.c \
|
||||
x11/gdkdisplay-x11.c \
|
||||
x11/gdkdnd-x11.c \
|
||||
x11/gdkdrawable-x11.c \
|
||||
x11/gdkeventsource.c \
|
||||
x11/gdkeventtranslator.c \
|
||||
x11/gdkgc-x11.c \
|
||||
x11/gdkgeometry-x11.c \
|
||||
x11/gdkglobals-x11.c \
|
||||
x11/gdkimage-x11.c \
|
||||
x11/gdkim-x11.c \
|
||||
x11/gdkinput.c \
|
||||
x11/gdkkeys-x11.c \
|
||||
x11/gdkmain-x11.c \
|
||||
x11/gdkpixmap-x11.c \
|
||||
x11/gdkproperty-x11.c \
|
||||
x11/gdkscreen-x11.c \
|
||||
x11/gdkselection-x11.c \
|
||||
x11/gdksettings.c \
|
||||
x11/gdkspawn-x11.c \
|
||||
x11/gdktestutils-x11.c \
|
||||
x11/gdkvisual-x11.c \
|
||||
x11/gdkwindow-x11.c \
|
||||
x11/gdkxftdefaults.c \
|
||||
x11/gdkxid.c \
|
||||
x11/xsettings-client.c \
|
||||
x11/xsettings-common.c \
|
||||
x11_introspection_files = \
|
||||
x11/*.c \
|
||||
x11/gdkx.h
|
||||
|
||||
GdkX11-3.0.gir: $(gdktargetlib) Gdk-3.0.gir Makefile
|
||||
GdkX11_3_0_gir_SCANNERFLAGS = --strip-prefix=gdk_x11
|
||||
GdkX11_3_0_gir_INCLUDES = Gio-2.0 Gdk-3.0 GdkPixbuf-2.0 Pango-1.0 xlib-2.0
|
||||
GdkX11_3_0_gir_LIBS = $(gdktargetlib)
|
||||
GdkX11_3_0_gir_FILES = $(x11_introspection_files)
|
||||
GdkX11_3_0_gir_FILES = $(addprefix $(srcdir)/,$(x11_introspection_files))
|
||||
GdkX11_3_0_gir_CFLAGS = $(INCLUDES) -L$(top_builddir)/gdk
|
||||
INTROSPECTION_GIRS += GdkX11-3.0.gir
|
||||
endif # USE_X11
|
||||
@@ -286,9 +255,15 @@ endif
|
||||
gdk.def: gdk.symbols
|
||||
(echo -e EXPORTS; $(CPP) -P -DALL_FILES -DGDK_WINDOWING_WIN32 -DINCLUDE_VARIABLES - <$(srcdir)/gdk.symbols | sed -e '/^$$/d' -e 's/^/ /' -e 's/G_GNUC_[^ ]*//g') > $(srcdir)/gdk.def
|
||||
|
||||
gdkalias.h: gdk.symbols
|
||||
$(PERL) $(srcdir)/makegdkalias.pl < $(srcdir)/gdk.symbols > gdkalias.h
|
||||
|
||||
gdkaliasdef.c: gdk.symbols
|
||||
$(PERL) $(srcdir)/makegdkalias.pl -def < $(srcdir)/gdk.symbols > gdkaliasdef.c
|
||||
|
||||
TESTS_ENVIRONMENT = srcdir="$(srcdir)"
|
||||
if OS_LINUX
|
||||
TESTS = abicheck.sh
|
||||
TESTS = abicheck.sh pltcheck.sh
|
||||
endif
|
||||
|
||||
|
||||
@@ -344,7 +319,7 @@ gdkmarshalers.h: @REBUILD@ gdkmarshalers.list
|
||||
&& mv gdkmarshalers-h.tmp gdkmarshalers.h \
|
||||
|| ( rm -f gdkmarshalers-h.tmp && exit 1)
|
||||
gdkmarshalers.c: @REBUILD@ gdkmarshalers.list
|
||||
$(GLIB_GENMARSHAL) --prefix=_gdk_marshal $(srcdir)/gdkmarshalers.list --body > gdkmarshalers-c.tmp \
|
||||
(echo "#include \"gdkalias.h\""; $(GLIB_GENMARSHAL) --prefix=_gdk_marshal $(srcdir)/gdkmarshalers.list --body) > gdkmarshalers-c.tmp \
|
||||
&& mv gdkmarshalers-c.tmp gdkmarshalers.c \
|
||||
|| ( rm -f gdkmarshalers-c.tmp && exit 1 )
|
||||
|
||||
|
||||
@@ -42,6 +42,7 @@
|
||||
#include "gdkinternals.h"
|
||||
#include "gdkdirectfb.h"
|
||||
#include "gdkprivate-directfb.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
typedef struct {
|
||||
@@ -509,3 +510,5 @@ gdk_directfb_allocate_color_key (GdkColormap *colormap)
|
||||
|
||||
private->info[255].ref_count++;
|
||||
}
|
||||
#define __GDK_COLOR_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
#include "gdkdirectfb.h"
|
||||
#include "gdkprivate-directfb.h"
|
||||
#include "gdkcursor.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
#include "x-cursors.xbm"
|
||||
|
||||
@@ -544,3 +545,7 @@ gdk_display_supports_cursor_color (GdkDisplay *display)
|
||||
g_return_val_if_fail (GDK_IS_DISPLAY (display), FALSE);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
#define __GDK_CURSOR_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
#include "gdkprivate-directfb.h"
|
||||
#include "gdkscreen.h"
|
||||
#include "gdkdisplaymanager.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
extern void _gdk_visual_init (void);
|
||||
@@ -539,3 +540,8 @@ gdk_display_supports_composite (GdkDisplay *display)
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
#define __GDK_DISPLAY_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
|
||||
#include "gdkdnd.h"
|
||||
#include "gdkproperty.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
typedef struct _GdkDragContextPrivate GdkDragContextPrivate;
|
||||
|
||||
@@ -632,3 +633,6 @@ gdk_drag_get_selection (GdkDragContext *context)
|
||||
else
|
||||
return GDK_NONE;
|
||||
}
|
||||
|
||||
#define __GDK_DND_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -43,6 +43,9 @@
|
||||
|
||||
#include "gdkinternals.h"
|
||||
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
#include "cairo-directfb.h"
|
||||
|
||||
|
||||
@@ -1631,3 +1634,6 @@ gdk_directfb_ref_cairo_surface (GdkDrawable *drawable)
|
||||
g_assert (impl->cairo_surface != NULL);
|
||||
return impl->cairo_surface;
|
||||
}
|
||||
|
||||
#define __GDK_DRAWABLE_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -47,10 +47,16 @@
|
||||
gboolean gdk_net_wm_supports (GdkAtom property);
|
||||
#endif
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
#define EventBuffer _gdk_display->buffer
|
||||
#define DirectFB _gdk_display->directfb
|
||||
|
||||
|
||||
|
||||
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
/*********************************************
|
||||
* Functions for maintaining the event queue *
|
||||
*********************************************/
|
||||
@@ -961,3 +967,6 @@ void
|
||||
_gdk_windowing_event_data_free (GdkEvent *event)
|
||||
{
|
||||
}
|
||||
|
||||
#define __GDK_EVENTS_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -43,6 +43,8 @@
|
||||
#include "gdkgc.h"
|
||||
#include "gdkpixmap.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
static void gdk_directfb_gc_get_values (GdkGC *gc,
|
||||
GdkGCValues *values);
|
||||
static void gdk_directfb_gc_set_values (GdkGC *gc,
|
||||
@@ -384,3 +386,5 @@ gdk_gc_get_screen (GdkGC *gc)
|
||||
|
||||
return _gdk_screen;
|
||||
}
|
||||
#define __GDK_GC_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
#include "gdkprivate-directfb.h"
|
||||
|
||||
#include "gdkinternals.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
void
|
||||
@@ -252,3 +253,6 @@ _gdk_directfb_window_move_region (GdkWindow *window,
|
||||
cairo_region_destroy (src_region);
|
||||
cairo_region_destroy (dest_region);
|
||||
}
|
||||
|
||||
#define __GDK_GEOMETRY_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -36,6 +36,8 @@
|
||||
#include "gdkdirectfb.h"
|
||||
#include "gdkprivate-directfb.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
GdkDisplayDFB *_gdk_display = NULL;
|
||||
GdkScreen * _gdk_screen = NULL;
|
||||
@@ -56,3 +58,5 @@ GdkEventMask _gdk_directfb_keyboard_grab_events = 0;
|
||||
GdkCursor * _gdk_directfb_pointer_grab_cursor = NULL;
|
||||
|
||||
GdkAtom _gdk_selection_property = 0;
|
||||
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
#include "gdkinternals.h"
|
||||
|
||||
#include "gdkimage.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
static GList *image_list = NULL;
|
||||
@@ -403,3 +404,6 @@ _gdk_windowing_get_bits_for_depth (GdkDisplay *display,
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#define __GDK_IMAGE_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
|
||||
#include "gdkinput.h"
|
||||
#include "gdkkeysyms.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
static GdkDeviceAxis gdk_input_core_axes[] =
|
||||
@@ -325,3 +326,7 @@ gdk_device_set_source (GdkDevice *device,
|
||||
g_return_if_fail (device != NULL);
|
||||
device->source = source;
|
||||
}
|
||||
|
||||
#define __GDK_INPUT_NONE_C__
|
||||
#define __GDK_INPUT_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -36,11 +36,12 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
|
||||
#include "gdkdirectfb.h"
|
||||
#include "gdkprivate-directfb.h"
|
||||
|
||||
#include "gdkkeysyms.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
static struct gdk_key *gdk_keys_by_name = NULL;
|
||||
|
||||
@@ -2030,3 +2031,6 @@ gdk_keymap_map_virtual_modifiers (GdkKeymap *keymap,
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
#define __GDK_KEYS_DIRECTFB_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -53,6 +53,7 @@
|
||||
#include "gdkinput-directfb.h"
|
||||
|
||||
#include "gdkintl.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
void
|
||||
@@ -415,3 +416,6 @@ _gdk_windowing_pointer_grab (GdkWindow *window,
|
||||
|
||||
return GDK_GRAB_SUCCESS;
|
||||
}
|
||||
|
||||
#define __GDK_MAIN_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -43,6 +43,7 @@
|
||||
#include "gdkinternals.h"
|
||||
|
||||
#include "gdkpixmap.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
static void gdk_pixmap_impl_directfb_init (GdkPixmapImplDirectFB *pixmap);
|
||||
@@ -335,3 +336,6 @@ GdkPixmap* gdk_pixmap_lookup_for_display (GdkDisplay *display,GdkNativeWindow an
|
||||
{
|
||||
return gdk_pixmap_lookup (anid);
|
||||
}
|
||||
|
||||
#define __GDK_PIXMAP_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -42,6 +42,7 @@
|
||||
|
||||
#include "gdkinternals.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
static GHashTable *names_to_atoms;
|
||||
static GPtrArray *atoms_to_names;
|
||||
@@ -395,3 +396,5 @@ gdk_property_change (GdkWindow *window,
|
||||
event->property.state = GDK_PROPERTY_NEW_VALUE;
|
||||
}
|
||||
}
|
||||
#define __GDK_PROPERTY_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
#include "gdkprivate-directfb.h"
|
||||
|
||||
#include "gdkinternals.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
static GdkColormap *default_colormap = NULL;
|
||||
@@ -246,3 +247,6 @@ gdk_screen_is_composited (GdkScreen *screen)
|
||||
g_return_val_if_fail (GDK_IS_SCREEN (screen), FALSE);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
#define __GDK_SCREEN_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
#include "gdkproperty.h"
|
||||
#include "gdkselection.h"
|
||||
#include "gdkprivate.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
typedef struct _OwnerInfo OwnerInfo;
|
||||
@@ -492,3 +493,6 @@ gdk_text_property_to_utf8_list_for_display (GdkDisplay *display,
|
||||
return count;
|
||||
}
|
||||
}
|
||||
|
||||
#define __GDK_SELECTION_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
#include "gdk.h"
|
||||
#include "gdkspawn.h"
|
||||
#include "gdkprivate.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
gboolean
|
||||
@@ -102,3 +103,6 @@ gdk_spawn_command_line_on_screen (GdkScreen *screen,
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
#define __GDK_SPAWN_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
|
||||
#include <gdk/gdktestutils.h>
|
||||
#include <gdk/gdkkeysyms.h>
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
static DFBInputDeviceKeySymbol
|
||||
@@ -261,3 +262,6 @@ gdk_test_simulate_button (GdkWindow *window,
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
#define __GDK_TEST_UTILS_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
|
||||
#include "gdkscreen.h"
|
||||
#include "gdkvisual.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
struct _GdkVisualClass
|
||||
@@ -491,3 +492,6 @@ gdk_directfb_visual_create (DFBSurfacePixelFormat pixelformat)
|
||||
|
||||
return (GdkVisualDirectFB *) visual;
|
||||
}
|
||||
|
||||
#define __GDK_VISUAL_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -41,6 +41,7 @@
|
||||
#include "gdkdisplay-directfb.h"
|
||||
|
||||
#include "gdkinternals.h"
|
||||
#include "gdkalias.h"
|
||||
#include "cairo.h"
|
||||
#include <assert.h>
|
||||
|
||||
@@ -2889,3 +2890,7 @@ gdk_window_impl_iface_init (GdkWindowImplIface *iface)
|
||||
iface->queue_translation = gdk_directfb_window_queue_translation;
|
||||
iface->destroy = gdk_directfb_window_destroy;
|
||||
}
|
||||
|
||||
#define __GDK_WINDOW_X11_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
|
||||
20
gdk/gdk.c
20
gdk/gdk.c
@@ -36,6 +36,7 @@
|
||||
#ifndef HAVE_XCONVERTCASE
|
||||
#include "gdkkeysyms.h"
|
||||
#endif
|
||||
#include "gdkalias.h"
|
||||
|
||||
typedef struct _GdkPredicate GdkPredicate;
|
||||
|
||||
@@ -787,24 +788,27 @@ gdk_set_program_class (const char *program_class)
|
||||
}
|
||||
|
||||
/**
|
||||
* gdk_enable_multidevice:
|
||||
* gdk_disable_multidevice:
|
||||
*
|
||||
* Enables multidevice support in GDK. This call must happen prior
|
||||
* Disables multidevice support in GDK. This call must happen prior
|
||||
* to gdk_display_open(), gtk_init(), gtk_init_with_args() or
|
||||
* gtk_init_check() in order to take effect.
|
||||
*
|
||||
* Note that individual #GdkWindow<!-- -->s still need to explicitly
|
||||
* enable multidevice awareness through gdk_window_set_support_multidevice().
|
||||
*
|
||||
* This function must be called before initializing GDK.
|
||||
* Most common GTK+ applications won't ever need to call this. Only
|
||||
* applications that do mixed GDK/Xlib calls could want to disable
|
||||
* multidevice support if such Xlib code deals with input devices in
|
||||
* any way and doesn't observe the presence of XInput 2.
|
||||
*
|
||||
* Since: 3.0
|
||||
**/
|
||||
void
|
||||
gdk_enable_multidevice (void)
|
||||
gdk_disable_multidevice (void)
|
||||
{
|
||||
if (gdk_initialized)
|
||||
return;
|
||||
|
||||
_gdk_enable_multidevice = TRUE;
|
||||
_gdk_disable_multidevice = TRUE;
|
||||
}
|
||||
|
||||
#define __GDK_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -66,7 +66,7 @@ G_BEGIN_DECLS
|
||||
/* Initialization, exit and events
|
||||
*/
|
||||
#define GDK_PRIORITY_EVENTS (G_PRIORITY_DEFAULT)
|
||||
void gdk_enable_multidevice (void);
|
||||
void gdk_disable_multidevice (void);
|
||||
void gdk_parse_args (gint *argc,
|
||||
gchar ***argv);
|
||||
void gdk_init (gint *argc,
|
||||
|
||||
@@ -177,7 +177,7 @@ gdk_get_display_arg_name
|
||||
gdk_get_program_class
|
||||
gdk_init
|
||||
gdk_init_check
|
||||
gdk_enable_multidevice
|
||||
gdk_disable_multidevice
|
||||
gdk_pre_parse_libgtk_only
|
||||
gdk_parse_args
|
||||
gdk_set_program_class
|
||||
@@ -738,6 +738,8 @@ gdk_window_get_device_events
|
||||
gdk_window_set_device_cursor
|
||||
gdk_window_get_device_cursor
|
||||
gdk_window_get_device_position
|
||||
gdk_window_set_source_events
|
||||
gdk_window_get_source_events
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
#include "gdkinternals.h"
|
||||
#include "gdkscreen.h"
|
||||
#include "gdkintl.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
static void gdk_app_launch_context_finalize (GObject *object);
|
||||
@@ -286,3 +287,6 @@ gdk_app_launch_context_new (void)
|
||||
{
|
||||
return g_object_new (GDK_TYPE_APP_LAUNCH_CONTEXT, NULL);
|
||||
}
|
||||
|
||||
#define __GDK_APP_LAUNCH_CONTEXT_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
#include "gdkcairo.h"
|
||||
#include "gdkdrawable.h"
|
||||
#include "gdkinternals.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
/**
|
||||
* gdk_cairo_create:
|
||||
@@ -287,3 +287,7 @@ gdk_cairo_set_source_pixmap (cairo_t *cr,
|
||||
cairo_set_source_surface (cr, surface, pixmap_x, pixmap_y);
|
||||
cairo_surface_destroy (surface);
|
||||
}
|
||||
|
||||
|
||||
#define __GDK_CAIRO_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
#include "gdkscreen.h"
|
||||
#include "gdkcolor.h"
|
||||
#include "gdkinternals.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
/**
|
||||
@@ -246,3 +247,6 @@ gdk_colormap_get_system (void)
|
||||
{
|
||||
return gdk_screen_get_system_colormap (gdk_screen_get_default ());
|
||||
}
|
||||
|
||||
#define __GDK_COLOR_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
#include "gdkcursor.h"
|
||||
#include "gdkdisplay.h"
|
||||
#include "gdkinternals.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
GType
|
||||
gdk_cursor_get_type (void)
|
||||
@@ -97,3 +97,6 @@ gdk_cursor_new (GdkCursorType cursor_type)
|
||||
{
|
||||
return gdk_cursor_new_for_display (gdk_display_get_default(), cursor_type);
|
||||
}
|
||||
|
||||
#define __GDK_CURSOR_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
#include "gdkdeviceprivate.h"
|
||||
#include "gdkintl.h"
|
||||
#include "gdkinternals.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
typedef struct _GdkAxisInfo GdkAxisInfo;
|
||||
|
||||
@@ -1394,3 +1394,6 @@ _gdk_device_translate_axis (GdkDevice *device,
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
#define __GDK_DEVICE_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -66,6 +66,7 @@ typedef enum
|
||||
* of a stylus on a graphics tablet.
|
||||
* @GDK_SOURCE_CURSOR: the device is a graphics tablet "puck" or similar device.
|
||||
* @GDK_SOURCE_KEYBOARD: the device is a keyboard.
|
||||
* @GDK_SOURCE_TOUCH: the device is a (multi)touch capable device.
|
||||
*
|
||||
* An enumeration describing the type of an input device in general terms.
|
||||
*/
|
||||
@@ -75,7 +76,8 @@ typedef enum
|
||||
GDK_SOURCE_PEN,
|
||||
GDK_SOURCE_ERASER,
|
||||
GDK_SOURCE_CURSOR,
|
||||
GDK_SOURCE_KEYBOARD
|
||||
GDK_SOURCE_KEYBOARD,
|
||||
GDK_SOURCE_TOUCH
|
||||
} GdkInputSource;
|
||||
|
||||
/**
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
#include "gdkdevicemanager.h"
|
||||
#include "gdkintl.h"
|
||||
#include "gdkinternals.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
/**
|
||||
* SECTION:gdkdevicemanager
|
||||
@@ -34,12 +34,13 @@
|
||||
* additional features such as sub-pixel positioning information and additional
|
||||
* device-dependent information.
|
||||
* @Title: GdkDeviceManager
|
||||
* @See_also: #GdkDevice, #GdkEvent, gdk_enable_multidevice()
|
||||
* @See_also: #GdkDevice, #GdkEvent, gdk_disable_multidevice()
|
||||
*
|
||||
* By default, GDK supports the traditional single keyboard/pointer input scheme (Plus additional
|
||||
* special input devices such as tablets. In short, backwards compatible with 2.X). Since version 3.0,
|
||||
* if gdk_enable_multidevice() is called before gdk_display_open() and the platform supports it, GDK
|
||||
* will be aware of multiple keyboard/pointer pairs interacting simultaneously with the user interface.
|
||||
* By default, and if the platform supports it, GDK is aware of multiple keyboard/pointer pairs
|
||||
* and multitouch devices, this behavior can be changed by calling gdk_disable_multidevice()
|
||||
* before gdk_display_open(), although there would be rarely a reason to do that. For a widget
|
||||
* or window to be dealt as multipointer aware, gdk_window_set_support_multidevice() or
|
||||
* gtk_widget_set_support_multidevice() must have been called on it.
|
||||
*
|
||||
* Conceptually, in multidevice mode there are 2 device types, virtual devices (or master devices)
|
||||
* are represented by the pointer cursors and keyboard foci that are seen on the screen. physical
|
||||
@@ -320,3 +321,7 @@ gdk_device_manager_get_client_pointer (GdkDeviceManager *device_manager)
|
||||
|
||||
return GDK_DEVICE_MANAGER_GET_CLASS (device_manager)->get_client_pointer (device_manager);
|
||||
}
|
||||
|
||||
|
||||
#define __GDK_DEVICE_MANAGER_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
#include "gdkinternals.h"
|
||||
#include "gdkmarshalers.h"
|
||||
#include "gdkscreen.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
enum {
|
||||
OPENED,
|
||||
@@ -1250,6 +1250,7 @@ _gdk_display_add_device_grab (GdkDisplay *display,
|
||||
static void
|
||||
synthesize_crossing_events (GdkDisplay *display,
|
||||
GdkDevice *device,
|
||||
GdkDevice *source_device,
|
||||
GdkWindow *src_window,
|
||||
GdkWindow *dest_window,
|
||||
GdkCrossingMode crossing_mode,
|
||||
@@ -1285,7 +1286,7 @@ synthesize_crossing_events (GdkDisplay *display,
|
||||
_gdk_synthesize_crossing_events (display,
|
||||
src_window,
|
||||
dest_window,
|
||||
device,
|
||||
device, source_device,
|
||||
crossing_mode,
|
||||
x, y, state,
|
||||
time,
|
||||
@@ -1299,7 +1300,7 @@ synthesize_crossing_events (GdkDisplay *display,
|
||||
_gdk_synthesize_crossing_events (display,
|
||||
src_window,
|
||||
NULL,
|
||||
device,
|
||||
device, source_device,
|
||||
crossing_mode,
|
||||
x, y, state,
|
||||
time,
|
||||
@@ -1314,7 +1315,7 @@ synthesize_crossing_events (GdkDisplay *display,
|
||||
_gdk_synthesize_crossing_events (display,
|
||||
src_window,
|
||||
NULL,
|
||||
device,
|
||||
device, source_device,
|
||||
crossing_mode,
|
||||
x, y, state,
|
||||
time,
|
||||
@@ -1325,7 +1326,7 @@ synthesize_crossing_events (GdkDisplay *display,
|
||||
_gdk_synthesize_crossing_events (display,
|
||||
NULL,
|
||||
dest_window,
|
||||
device,
|
||||
device, source_device,
|
||||
crossing_mode,
|
||||
x, y, state,
|
||||
time,
|
||||
@@ -1362,6 +1363,7 @@ get_current_toplevel (GdkDisplay *display,
|
||||
static void
|
||||
switch_to_pointer_grab (GdkDisplay *display,
|
||||
GdkDevice *device,
|
||||
GdkDevice *source_device,
|
||||
GdkDeviceGrabInfo *grab,
|
||||
GdkDeviceGrabInfo *last_grab,
|
||||
guint32 time,
|
||||
@@ -1397,7 +1399,7 @@ switch_to_pointer_grab (GdkDisplay *display,
|
||||
src_window = info->window_under_pointer;
|
||||
|
||||
if (src_window != grab->window)
|
||||
synthesize_crossing_events (display, device,
|
||||
synthesize_crossing_events (display, device, source_device,
|
||||
src_window, grab->window,
|
||||
GDK_CROSSING_GRAB, time, serial);
|
||||
|
||||
@@ -1448,7 +1450,7 @@ switch_to_pointer_grab (GdkDisplay *display,
|
||||
}
|
||||
|
||||
if (pointer_window != last_grab->window)
|
||||
synthesize_crossing_events (display, device,
|
||||
synthesize_crossing_events (display, device, source_device,
|
||||
last_grab->window, pointer_window,
|
||||
GDK_CROSSING_UNGRAB, time, serial);
|
||||
|
||||
@@ -1463,6 +1465,7 @@ switch_to_pointer_grab (GdkDisplay *display,
|
||||
void
|
||||
_gdk_display_device_grab_update (GdkDisplay *display,
|
||||
GdkDevice *device,
|
||||
GdkDevice *source_device,
|
||||
gulong current_serial)
|
||||
{
|
||||
GdkDeviceGrabInfo *current_grab, *next_grab;
|
||||
@@ -1487,7 +1490,7 @@ _gdk_display_device_grab_update (GdkDisplay *display,
|
||||
if (!current_grab->activated)
|
||||
{
|
||||
if (device->source != GDK_SOURCE_KEYBOARD)
|
||||
switch_to_pointer_grab (display, device, current_grab, NULL, time, current_serial);
|
||||
switch_to_pointer_grab (display, device, source_device, current_grab, NULL, time, current_serial);
|
||||
}
|
||||
|
||||
break;
|
||||
@@ -1515,7 +1518,7 @@ _gdk_display_device_grab_update (GdkDisplay *display,
|
||||
g_hash_table_insert (display->device_grabs, device, grabs);
|
||||
|
||||
if (device->source != GDK_SOURCE_KEYBOARD)
|
||||
switch_to_pointer_grab (display, device,
|
||||
switch_to_pointer_grab (display, device, source_device,
|
||||
next_grab, current_grab,
|
||||
time, current_serial);
|
||||
|
||||
@@ -1813,3 +1816,6 @@ gdk_display_get_device_manager (GdkDisplay *display)
|
||||
|
||||
return display->device_manager;
|
||||
}
|
||||
|
||||
#define __GDK_DISPLAY_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
|
||||
#include "gdkintl.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
struct _GdkDisplayManager
|
||||
{
|
||||
@@ -258,3 +259,6 @@ gdk_display_manager_list_displays (GdkDisplayManager *display_manager)
|
||||
{
|
||||
return g_slist_copy (_gdk_displays);
|
||||
}
|
||||
|
||||
#define __GDK_DISPLAY_MANAGER_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
#include <gdkdnd.h>
|
||||
#include <gdkdrawable.h>
|
||||
#include <gdkdisplay.h>
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
/**
|
||||
* SECTION:dnd
|
||||
@@ -183,3 +183,6 @@ gdk_drag_context_get_source_window (GdkDragContext *context)
|
||||
|
||||
return context->source_window;
|
||||
}
|
||||
|
||||
#define __GDK_DND_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
#include "gdkwindow.h"
|
||||
#include "gdkscreen.h"
|
||||
#include "gdkpixbuf.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
static GdkImage* gdk_drawable_real_get_image (GdkDrawable *drawable,
|
||||
gint x,
|
||||
@@ -1730,3 +1730,7 @@ _gdk_drawable_create_cairo_surface (GdkDrawable *drawable,
|
||||
return GDK_DRAWABLE_GET_CLASS (drawable)->create_cairo_surface (drawable,
|
||||
width, height);
|
||||
}
|
||||
|
||||
|
||||
#define __GDK_DRAW_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
/*** BEGIN file-header ***/
|
||||
#define GDK_ENABLE_BROKEN
|
||||
#include "gdk.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
/*** END file-header ***/
|
||||
|
||||
@@ -32,5 +33,6 @@ GType
|
||||
/*** END value-tail ***/
|
||||
|
||||
/*** BEGIN file-tail ***/
|
||||
/**/
|
||||
#define __GDK_ENUM_TYPES_C__
|
||||
#include "gdkaliasdef.c"
|
||||
/*** END file-tail ***/
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
|
||||
#include "gdk.h"
|
||||
#include "gdkinternals.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
typedef struct _GdkIOClosure GdkIOClosure;
|
||||
|
||||
@@ -1053,6 +1053,66 @@ gdk_event_get_device (const GdkEvent *event)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* gdk_event_set_source_device:
|
||||
* @event: a #GdkEvent
|
||||
* @device: a #GdkDevice
|
||||
*
|
||||
* Sets the slave device for @event to @device. The event
|
||||
* must have been allocated by GTK+, for instance, by
|
||||
* gdk_event_copy().
|
||||
*
|
||||
* Since: 3.0
|
||||
**/
|
||||
void
|
||||
gdk_event_set_source_device (GdkEvent *event,
|
||||
GdkDevice *device)
|
||||
{
|
||||
GdkEventPrivate *private;
|
||||
|
||||
g_return_if_fail (gdk_event_is_allocated (event));
|
||||
g_return_if_fail (GDK_IS_DEVICE (device));
|
||||
|
||||
private = (GdkEventPrivate *) event;
|
||||
|
||||
private->source_device = device;
|
||||
}
|
||||
|
||||
/**
|
||||
* gdk_event_get_source_device:
|
||||
* @event: a #GdkEvent
|
||||
*
|
||||
* This function returns the hardware (slave) #GdkDevice that has triggered the event,
|
||||
* falling back to the virtual (master) device (as in gdk_event_get_device()) if the
|
||||
* event wasn't caused by interaction with a hardware device. This may happen for
|
||||
* example in synthesized crossing events after a #GdkWindow updates its geometry or
|
||||
* a grab is acquired/released.
|
||||
*
|
||||
* If the event does not contain device field, this function will return %NULL.
|
||||
*
|
||||
* Returns: a #GdkDevice, or %NULL.
|
||||
*
|
||||
* Since: 3.0
|
||||
**/
|
||||
GdkDevice *
|
||||
gdk_event_get_source_device (const GdkEvent *event)
|
||||
{
|
||||
GdkEventPrivate *private;
|
||||
|
||||
g_return_val_if_fail (event != NULL, NULL);
|
||||
|
||||
if (!gdk_event_is_allocated (event))
|
||||
return NULL;
|
||||
|
||||
private = (GdkEventPrivate *) event;
|
||||
|
||||
if (private->source_device)
|
||||
return private->source_device;
|
||||
|
||||
/* Fallback to event device */
|
||||
return gdk_event_get_device (event);
|
||||
}
|
||||
|
||||
/**
|
||||
* gdk_event_request_motions:
|
||||
* @event: a valid #GdkEvent
|
||||
@@ -1541,3 +1601,6 @@ gdk_setting_get (const gchar *name,
|
||||
{
|
||||
return gdk_screen_get_setting (gdk_screen_get_default (), name, value);
|
||||
}
|
||||
|
||||
#define __GDK_EVENTS_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -543,6 +543,9 @@ gboolean gdk_event_get_axis (const GdkEvent *event,
|
||||
void gdk_event_set_device (GdkEvent *event,
|
||||
GdkDevice *device);
|
||||
GdkDevice* gdk_event_get_device (const GdkEvent *event);
|
||||
void gdk_event_set_source_device (GdkEvent *event,
|
||||
GdkDevice *device);
|
||||
GdkDevice* gdk_event_get_source_device (const GdkEvent *event);
|
||||
void gdk_event_request_motions (const GdkEventMotion *event);
|
||||
|
||||
gboolean gdk_events_get_distance (GdkEvent *event1,
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
#include "gdkpixmap.h"
|
||||
#include "gdkrgb.h"
|
||||
#include "gdkprivate.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
static void gdk_gc_finalize (GObject *object);
|
||||
|
||||
@@ -1458,3 +1458,7 @@ _gdk_gc_update_context (GdkGC *gc,
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
#define __GDK_GC_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
|
||||
#include "gdktypes.h"
|
||||
#include "gdkprivate.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
guint _gdk_debug_flags = 0;
|
||||
gint _gdk_error_code = 0;
|
||||
@@ -40,7 +40,7 @@ gchar *_gdk_display_name = NULL;
|
||||
gint _gdk_screen_number = -1;
|
||||
gchar *_gdk_display_arg_name = NULL;
|
||||
gboolean _gdk_native_windows = FALSE;
|
||||
gboolean _gdk_enable_multidevice = FALSE;
|
||||
gboolean _gdk_disable_multidevice = FALSE;
|
||||
|
||||
GSList *_gdk_displays = NULL;
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
#include "gdkimage.h"
|
||||
#include "gdkprivate.h"
|
||||
#include "gdkinternals.h" /* For scratch_image code */
|
||||
#include "gdkalias.h"
|
||||
|
||||
/**
|
||||
* gdk_image_set_colormap:
|
||||
@@ -564,3 +565,6 @@ gdk_image_new (GdkImageType type,
|
||||
return _gdk_image_new_for_depth (gdk_visual_get_screen (visual), type,
|
||||
visual, width, height, -1);
|
||||
}
|
||||
|
||||
#define __GDK_IMAGE_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -158,6 +158,7 @@ struct _GdkEventPrivate
|
||||
GdkScreen *screen;
|
||||
gpointer windowing_data;
|
||||
GdkDevice *device;
|
||||
GdkDevice *source_device;
|
||||
};
|
||||
|
||||
/* Tracks information about the pointer grab on this display */
|
||||
@@ -273,6 +274,9 @@ struct _GdkWindowObject
|
||||
|
||||
GList *devices_inside;
|
||||
GHashTable *device_events;
|
||||
|
||||
GHashTable *source_event_masks;
|
||||
gulong device_added_handler_id;
|
||||
};
|
||||
|
||||
#define GDK_WINDOW_TYPE(d) (((GdkWindowObject*)(GDK_WINDOW (d)))->window_type)
|
||||
@@ -286,7 +290,7 @@ extern GSList *_gdk_displays;
|
||||
extern gchar *_gdk_display_name;
|
||||
extern gint _gdk_screen_number;
|
||||
extern gchar *_gdk_display_arg_name;
|
||||
extern gboolean _gdk_enable_multidevice;
|
||||
extern gboolean _gdk_disable_multidevice;
|
||||
|
||||
void _gdk_events_queue (GdkDisplay *display);
|
||||
GdkEvent* _gdk_event_unqueue (GdkDisplay *display);
|
||||
@@ -594,6 +598,7 @@ void _gdk_windowing_launch_failed (GAppLaunchContext *context,
|
||||
|
||||
void _gdk_display_device_grab_update (GdkDisplay *display,
|
||||
GdkDevice *device,
|
||||
GdkDevice *source_device,
|
||||
gulong current_serial);
|
||||
GdkDeviceGrabInfo *_gdk_display_get_last_device_grab (GdkDisplay *display,
|
||||
GdkDevice *device);
|
||||
@@ -659,6 +664,7 @@ void _gdk_synthesize_crossing_events (GdkDisplay *display,
|
||||
GdkWindow *src,
|
||||
GdkWindow *dest,
|
||||
GdkDevice *device,
|
||||
GdkDevice *source_device,
|
||||
GdkCrossingMode mode,
|
||||
gint toplevel_x,
|
||||
gint toplevel_y,
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
|
||||
#include "gdkkeysyms.h"
|
||||
#include "gdkinternals.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
/* Key handling not part of the keymap */
|
||||
|
||||
@@ -100,3 +101,6 @@ gdk_keyval_from_name (const gchar *keyval_name)
|
||||
else
|
||||
return GDK_VoidSymbol;
|
||||
}
|
||||
|
||||
#define __GDK_KEYNAMES_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
|
||||
#include "gdkdisplay.h"
|
||||
#include "gdkkeys.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
enum {
|
||||
DIRECTION_CHANGED,
|
||||
@@ -311,3 +311,6 @@ gdk_keymap_get_default (void)
|
||||
{
|
||||
return gdk_keymap_get_for_display (gdk_display_get_default ());
|
||||
}
|
||||
|
||||
#define __GDK_KEYS_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
#include "config.h"
|
||||
#include "gdk.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
/* Thanks to Markus G. Kuhn <mkuhn@acm.org> for the ksysym<->Unicode
|
||||
* mapping functions, from the xterm sources.
|
||||
@@ -1695,3 +1695,6 @@ gdk_unicode_to_keyval (guint32 wc)
|
||||
*/
|
||||
return wc | 0x01000000;
|
||||
}
|
||||
|
||||
#define __GDK_KEYUNI_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
#include "gdkgc.h"
|
||||
#include "gdkcolor.h"
|
||||
#include "gdkcursor.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
/* LIMITATIONS:
|
||||
*
|
||||
@@ -1228,3 +1228,6 @@ gdk_offscreen_window_impl_iface_init (GdkWindowImplIface *iface)
|
||||
iface->get_device_state = gdk_offscreen_window_get_device_state;
|
||||
iface->destroy = gdk_offscreen_window_destroy;
|
||||
}
|
||||
|
||||
#define __GDK_OFFSCREEN_WINDOW_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
#include "gdkprivate.h"
|
||||
#include "gdkscreen.h"
|
||||
#include "gdkintl.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
#define GDK_INFO_KEY "gdk-info"
|
||||
|
||||
@@ -1478,3 +1478,6 @@ gdk_pango_context_get_for_screen (GdkScreen *screen)
|
||||
|
||||
return context;
|
||||
}
|
||||
|
||||
#define __GDK_PANGO_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
#include "gdkpixbuf.h"
|
||||
#include "gdkpixmap.h"
|
||||
#include "gdkinternals.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
/* Some convenient names
|
||||
*/
|
||||
@@ -1413,3 +1413,6 @@ gdk_pixbuf_get_from_image (GdkPixbuf *dest,
|
||||
|
||||
return dest;
|
||||
}
|
||||
|
||||
#define __GDK_PIXBUF_DRAWABLE_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -26,7 +26,9 @@
|
||||
#include "gdkpixbuf.h"
|
||||
#include "gdkscreen.h"
|
||||
#include "gdkinternals.h"
|
||||
#include "gdkalias.h"
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* gdk_pixbuf_render_threshold_alpha:
|
||||
@@ -251,3 +253,7 @@ gdk_pixbuf_render_pixmap_and_mask_for_colormap (GdkPixbuf *pixbuf,
|
||||
*mask_return = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
#define __GDK_PIXBUF_RENDER_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
#include "gdkinternals.h"
|
||||
#include "gdkpixbuf.h"
|
||||
#include "gdkscreen.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
static GdkGC *gdk_pixmap_create_gc (GdkDrawable *drawable,
|
||||
GdkGCValues *values,
|
||||
@@ -774,3 +774,6 @@ gdk_pixmap_real_get_screen (GdkDrawable *drawable)
|
||||
{
|
||||
return gdk_drawable_get_screen (GDK_PIXMAP_OBJECT (drawable)->impl);
|
||||
}
|
||||
|
||||
#define __GDK_PIXMAP_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
#include "config.h"
|
||||
#include <gdk/gdk.h>
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
/**
|
||||
* gdk_rectangle_union:
|
||||
@@ -132,3 +132,7 @@ gdk_rectangle_get_type (void)
|
||||
(GBoxedFreeFunc)g_free);
|
||||
return our_type;
|
||||
}
|
||||
|
||||
|
||||
#define __GDK_RECTANGLE_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
|
||||
#include "gdkrgb.h"
|
||||
#include "gdkscreen.h"
|
||||
#include "gdkalias.h"
|
||||
#include <glib/gprintf.h>
|
||||
|
||||
typedef struct _GdkRgbInfo GdkRgbInfo;
|
||||
@@ -3709,3 +3710,6 @@ gdk_rgb_get_visual (void)
|
||||
{
|
||||
return gdk_screen_get_rgb_visual (gdk_screen_get_default ());
|
||||
}
|
||||
|
||||
#define __GDK_RGB_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
#include "gdkwindow.h"
|
||||
#include "gdkscreen.h"
|
||||
#include "gdkintl.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
static void gdk_screen_dispose (GObject *object);
|
||||
static void gdk_screen_finalize (GObject *object);
|
||||
@@ -540,3 +540,6 @@ gdk_screen_set_property (GObject *object,
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
#define __GDK_SCREEN_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
#include "gdkproperty.h"
|
||||
#include "gdkdisplay.h"
|
||||
#include "gdkselection.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
gboolean
|
||||
gdk_selection_owner_set (GdkWindow *owner,
|
||||
@@ -134,3 +134,6 @@ gdk_utf8_to_compound_text (const gchar *str,
|
||||
str, encoding, format,
|
||||
ctext, length);
|
||||
}
|
||||
|
||||
#define __GDK_SELECTION_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
#include "config.h"
|
||||
#include "gdkvisual.h"
|
||||
#include "gdkscreen.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
/**
|
||||
* gdk_list_visuals:
|
||||
@@ -248,3 +248,6 @@ gdk_visual_get_blue_pixel_details (GdkVisual *visual,
|
||||
if (precision)
|
||||
*precision = visual->blue_prec;
|
||||
}
|
||||
|
||||
#define __GDK_VISUAL_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
180
gdk/gdkwindow.c
180
gdk/gdkwindow.c
@@ -45,6 +45,8 @@
|
||||
#include "gdkscreen.h"
|
||||
#include "gdkwindowimpl.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
#undef DEBUG_WINDOW_PRINTING
|
||||
|
||||
|
||||
@@ -700,6 +702,9 @@ gdk_window_finalize (GObject *object)
|
||||
if (obj->device_events)
|
||||
g_hash_table_destroy (obj->device_events);
|
||||
|
||||
if (obj->source_event_masks)
|
||||
g_hash_table_destroy (obj->source_event_masks);
|
||||
|
||||
if (obj->devices_inside)
|
||||
g_list_free (obj->devices_inside);
|
||||
|
||||
@@ -8477,7 +8482,7 @@ gdk_window_set_device_cursor (GdkWindow *window,
|
||||
if (!cursor)
|
||||
g_hash_table_remove (private->device_cursor, device);
|
||||
else
|
||||
g_hash_table_replace (private->device_cursor, device, gdk_cursor_ref (cursor));
|
||||
g_hash_table_replace (private->device_cursor, device, cursor);
|
||||
|
||||
if (!GDK_WINDOW_DESTROYED (window))
|
||||
{
|
||||
@@ -10075,6 +10080,7 @@ gdk_window_set_support_multidevice (GdkWindow *window,
|
||||
gboolean support_multidevice)
|
||||
{
|
||||
GdkWindowObject *private = (GdkWindowObject *) window;
|
||||
GdkEventMask event_mask = 0;
|
||||
|
||||
g_return_if_fail (GDK_IS_WINDOW (window));
|
||||
|
||||
@@ -10086,6 +10092,12 @@ gdk_window_set_support_multidevice (GdkWindow *window,
|
||||
|
||||
private->support_multidevice = support_multidevice;
|
||||
|
||||
if (support_multidevice)
|
||||
event_mask = gdk_window_get_events (window);
|
||||
|
||||
/* Enable events for slave touchscreen devices */
|
||||
gdk_window_set_source_events (window, GDK_SOURCE_TOUCH, event_mask);
|
||||
|
||||
/* FIXME: What to do if called when some pointers are inside the window ? */
|
||||
}
|
||||
|
||||
@@ -10343,6 +10355,7 @@ send_crossing_event (GdkDisplay *display,
|
||||
GdkNotifyType notify_type,
|
||||
GdkWindow *subwindow,
|
||||
GdkDevice *device,
|
||||
GdkDevice *source_device,
|
||||
gint toplevel_x,
|
||||
gint toplevel_y,
|
||||
GdkModifierType mask,
|
||||
@@ -10402,6 +10415,10 @@ send_crossing_event (GdkDisplay *display,
|
||||
{
|
||||
event = _gdk_make_event ((GdkWindow *)window, type, event_in_queue, TRUE);
|
||||
gdk_event_set_device (event, device);
|
||||
|
||||
if (source_device)
|
||||
gdk_event_set_source_device (event, source_device);
|
||||
|
||||
event->crossing.time = time_;
|
||||
event->crossing.subwindow = subwindow;
|
||||
if (subwindow)
|
||||
@@ -10429,6 +10446,7 @@ _gdk_synthesize_crossing_events (GdkDisplay *display,
|
||||
GdkWindow *src,
|
||||
GdkWindow *dest,
|
||||
GdkDevice *device,
|
||||
GdkDevice *source_device,
|
||||
GdkCrossingMode mode,
|
||||
gint toplevel_x,
|
||||
gint toplevel_y,
|
||||
@@ -10484,7 +10502,7 @@ _gdk_synthesize_crossing_events (GdkDisplay *display,
|
||||
a, GDK_LEAVE_NOTIFY,
|
||||
mode,
|
||||
notify_type,
|
||||
NULL, device,
|
||||
NULL, device, source_device,
|
||||
toplevel_x, toplevel_y,
|
||||
mask, time_,
|
||||
event_in_queue,
|
||||
@@ -10506,7 +10524,7 @@ _gdk_synthesize_crossing_events (GdkDisplay *display,
|
||||
mode,
|
||||
notify_type,
|
||||
(GdkWindow *)last,
|
||||
device,
|
||||
device, source_device,
|
||||
toplevel_x, toplevel_y,
|
||||
mask, time_,
|
||||
event_in_queue,
|
||||
@@ -10553,7 +10571,7 @@ _gdk_synthesize_crossing_events (GdkDisplay *display,
|
||||
mode,
|
||||
notify_type,
|
||||
(GdkWindow *)next,
|
||||
device,
|
||||
device, source_device,
|
||||
toplevel_x, toplevel_y,
|
||||
mask, time_,
|
||||
event_in_queue,
|
||||
@@ -10575,7 +10593,7 @@ _gdk_synthesize_crossing_events (GdkDisplay *display,
|
||||
mode,
|
||||
notify_type,
|
||||
NULL,
|
||||
device,
|
||||
device, source_device,
|
||||
toplevel_x, toplevel_y,
|
||||
mask, time_,
|
||||
event_in_queue,
|
||||
@@ -10909,6 +10927,123 @@ gdk_window_geometry_changed (GdkWindow *window)
|
||||
_gdk_synthesize_crossing_events_for_geometry_change (window);
|
||||
}
|
||||
|
||||
static void
|
||||
source_events_device_added (GdkDeviceManager *device_manager,
|
||||
GdkDevice *device,
|
||||
gpointer user_data)
|
||||
{
|
||||
GdkWindow *window;
|
||||
GdkWindowObject *private;
|
||||
GdkEventMask event_mask;
|
||||
GdkInputSource source;
|
||||
|
||||
if (gdk_device_get_device_type (device) != GDK_DEVICE_TYPE_FLOATING)
|
||||
return;
|
||||
|
||||
window = user_data;
|
||||
private = (GdkWindowObject *) window;
|
||||
source = gdk_device_get_source (device);
|
||||
|
||||
event_mask = GPOINTER_TO_UINT (g_hash_table_lookup (private->source_event_masks,
|
||||
GUINT_TO_POINTER (source)));
|
||||
if (event_mask)
|
||||
{
|
||||
gdk_window_set_device_events (window, device, event_mask);
|
||||
gdk_device_set_mode (device, GDK_MODE_SCREEN);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* gdk_window_set_source_events:
|
||||
* @window: a #GdkWindow
|
||||
* @source: a #GdkInputSource to define the source class.
|
||||
* @event_mask: event mask for @window
|
||||
*
|
||||
* Sets the event mask for any floating device (i.e. not attached to any
|
||||
* visible pointer) that has the source defined as @source. This event
|
||||
* mask will be applied both to currently existing and newly added devices
|
||||
* after this call.
|
||||
**/
|
||||
void
|
||||
gdk_window_set_source_events (GdkWindow *window,
|
||||
GdkInputSource source,
|
||||
GdkEventMask event_mask)
|
||||
{
|
||||
GdkDeviceManager *device_manager;
|
||||
GdkWindowObject *private;
|
||||
GdkDisplay *display;
|
||||
GList *devices, *d;
|
||||
guint size;
|
||||
|
||||
g_return_if_fail (GDK_IS_WINDOW (window));
|
||||
|
||||
display = gdk_drawable_get_display (GDK_DRAWABLE (window));
|
||||
device_manager = gdk_display_get_device_manager (display);
|
||||
private = (GdkWindowObject *) window;
|
||||
|
||||
devices = gdk_device_manager_list_devices (device_manager, GDK_DEVICE_TYPE_FLOATING);
|
||||
|
||||
/* Set event mask for existing devices */
|
||||
for (d = devices; d; d = d->next)
|
||||
{
|
||||
GdkDevice *device = d->data;
|
||||
|
||||
if (source == gdk_device_get_source (device))
|
||||
{
|
||||
gdk_window_set_device_events (window, device, event_mask);
|
||||
gdk_device_set_mode (device, GDK_MODE_SCREEN);
|
||||
}
|
||||
}
|
||||
|
||||
/* Update accounting */
|
||||
if (G_UNLIKELY (!private->source_event_masks))
|
||||
private->source_event_masks = g_hash_table_new (NULL, NULL);
|
||||
|
||||
if (event_mask)
|
||||
g_hash_table_insert (private->source_event_masks,
|
||||
GUINT_TO_POINTER (source),
|
||||
GUINT_TO_POINTER (event_mask));
|
||||
else
|
||||
g_hash_table_remove (private->source_event_masks,
|
||||
GUINT_TO_POINTER (source));
|
||||
|
||||
size = g_hash_table_size (private->source_event_masks);
|
||||
|
||||
/* Update handler if needed */
|
||||
if (!private->device_added_handler_id && size > 0)
|
||||
{
|
||||
private->device_added_handler_id =
|
||||
g_signal_connect (device_manager, "device-added",
|
||||
G_CALLBACK (source_events_device_added), window);
|
||||
}
|
||||
else if (private->device_added_handler_id && size == 0)
|
||||
g_signal_handler_disconnect (device_manager, private->device_added_handler_id);
|
||||
}
|
||||
|
||||
/**
|
||||
* gdk_window_get_source_events:
|
||||
* @window: a #GdkWindow
|
||||
* @source: a #GdkInputSource to define the source class.
|
||||
*
|
||||
* Returns the event mask for @window corresponding to the device class specified
|
||||
* by @source.
|
||||
*
|
||||
* Returns: source event mask for @window
|
||||
**/
|
||||
GdkEventMask
|
||||
gdk_window_get_source_events (GdkWindow *window,
|
||||
GdkInputSource source)
|
||||
{
|
||||
GdkWindowObject *private;
|
||||
|
||||
g_return_val_if_fail (GDK_IS_WINDOW (window), 0);
|
||||
|
||||
private = (GdkWindowObject *) window;
|
||||
|
||||
return GPOINTER_TO_UINT (g_hash_table_lookup (private->source_event_masks,
|
||||
GUINT_TO_POINTER (source)));
|
||||
}
|
||||
|
||||
static gboolean
|
||||
do_synthesize_crossing_event (gpointer data)
|
||||
{
|
||||
@@ -10950,7 +11085,7 @@ do_synthesize_crossing_event (gpointer data)
|
||||
_gdk_synthesize_crossing_events (display,
|
||||
pointer_info->window_under_pointer,
|
||||
new_window_under_pointer,
|
||||
device,
|
||||
device, NULL,
|
||||
GDK_CROSSING_NORMAL,
|
||||
pointer_info->toplevel_x,
|
||||
pointer_info->toplevel_y,
|
||||
@@ -11070,7 +11205,7 @@ proxy_pointer_event (GdkDisplay *display,
|
||||
GdkWindow *toplevel_window, *event_window;
|
||||
GdkWindow *pointer_window;
|
||||
GdkPointerWindowInfo *pointer_info;
|
||||
GdkDevice *device;
|
||||
GdkDevice *device, *source_device;
|
||||
GdkEvent *event;
|
||||
guint state;
|
||||
gdouble toplevel_x, toplevel_y;
|
||||
@@ -11082,6 +11217,7 @@ proxy_pointer_event (GdkDisplay *display,
|
||||
gdk_event_get_state (source_event, &state);
|
||||
time_ = gdk_event_get_time (source_event);
|
||||
device = gdk_event_get_device (source_event);
|
||||
source_device = gdk_event_get_source_device (source_event);
|
||||
pointer_info = _gdk_display_get_pointer_info (display, device);
|
||||
toplevel_window = convert_native_coords_to_toplevel (event_window,
|
||||
toplevel_x, toplevel_y,
|
||||
@@ -11115,7 +11251,7 @@ proxy_pointer_event (GdkDisplay *display,
|
||||
_gdk_synthesize_crossing_events (display,
|
||||
pointer_info->window_under_pointer,
|
||||
event_window,
|
||||
device,
|
||||
device, source_device,
|
||||
source_event->crossing.mode,
|
||||
toplevel_x, toplevel_y,
|
||||
state, time_,
|
||||
@@ -11131,7 +11267,7 @@ proxy_pointer_event (GdkDisplay *display,
|
||||
source_event->crossing.mode,
|
||||
source_event->crossing.detail,
|
||||
NULL,
|
||||
device,
|
||||
device, source_device,
|
||||
toplevel_x, toplevel_y,
|
||||
state, time_,
|
||||
source_event,
|
||||
@@ -11161,7 +11297,7 @@ proxy_pointer_event (GdkDisplay *display,
|
||||
source_event->crossing.mode,
|
||||
source_event->crossing.detail,
|
||||
NULL,
|
||||
device,
|
||||
device, source_device,
|
||||
toplevel_x, toplevel_y,
|
||||
state, time_,
|
||||
source_event,
|
||||
@@ -11171,7 +11307,7 @@ proxy_pointer_event (GdkDisplay *display,
|
||||
_gdk_synthesize_crossing_events (display,
|
||||
event_window,
|
||||
pointer_window,
|
||||
device,
|
||||
device, source_device,
|
||||
source_event->crossing.mode,
|
||||
toplevel_x, toplevel_y,
|
||||
state, time_,
|
||||
@@ -11190,7 +11326,7 @@ proxy_pointer_event (GdkDisplay *display,
|
||||
_gdk_synthesize_crossing_events (display,
|
||||
pointer_info->window_under_pointer,
|
||||
pointer_window,
|
||||
device,
|
||||
device, source_device,
|
||||
GDK_CROSSING_NORMAL,
|
||||
toplevel_x, toplevel_y,
|
||||
state, time_,
|
||||
@@ -11280,7 +11416,7 @@ proxy_button_event (GdkEvent *source_event,
|
||||
gdouble toplevel_x, toplevel_y;
|
||||
GdkDisplay *display;
|
||||
GdkWindowObject *w;
|
||||
GdkDevice *device;
|
||||
GdkDevice *device, *source_device;
|
||||
|
||||
type = source_event->any.type;
|
||||
event_window = source_event->any.window;
|
||||
@@ -11288,6 +11424,7 @@ proxy_button_event (GdkEvent *source_event,
|
||||
gdk_event_get_state (source_event, &state);
|
||||
time_ = gdk_event_get_time (source_event);
|
||||
device = gdk_event_get_device (source_event);
|
||||
source_device = gdk_event_get_source_device (source_event);
|
||||
display = gdk_drawable_get_display (source_event->any.window);
|
||||
toplevel_window = convert_native_coords_to_toplevel (event_window,
|
||||
toplevel_x, toplevel_y,
|
||||
@@ -11324,7 +11461,7 @@ proxy_button_event (GdkEvent *source_event,
|
||||
serial,
|
||||
time_,
|
||||
TRUE);
|
||||
_gdk_display_device_grab_update (display, device, serial);
|
||||
_gdk_display_device_grab_update (display, device, source_device, serial);
|
||||
}
|
||||
|
||||
pointer_window = get_pointer_window (display, toplevel_window, device,
|
||||
@@ -11471,20 +11608,21 @@ _gdk_windowing_got_event (GdkDisplay *display,
|
||||
guint old_state, old_button;
|
||||
GdkDeviceGrabInfo *button_release_grab;
|
||||
GdkPointerWindowInfo *pointer_info;
|
||||
GdkDevice *device;
|
||||
GdkDevice *device, *source_device;
|
||||
gboolean is_toplevel;
|
||||
|
||||
if (gdk_event_get_time (event) != GDK_CURRENT_TIME)
|
||||
display->last_event_time = gdk_event_get_time (event);
|
||||
|
||||
device = gdk_event_get_device (event);
|
||||
source_device = gdk_event_get_source_device (event);
|
||||
|
||||
if (device)
|
||||
{
|
||||
GdkInputMode mode;
|
||||
|
||||
g_object_get (device, "input-mode", &mode, NULL);
|
||||
_gdk_display_device_grab_update (display, device, serial);
|
||||
_gdk_display_device_grab_update (display, device, source_device, serial);
|
||||
|
||||
if (mode == GDK_MODE_DISABLED ||
|
||||
!_gdk_display_check_grab_ownership (display, device, serial))
|
||||
@@ -11530,7 +11668,7 @@ _gdk_windowing_got_event (GdkDisplay *display,
|
||||
serial,
|
||||
gdk_event_get_time (event),
|
||||
TRUE);
|
||||
_gdk_display_device_grab_update (display, device, serial);
|
||||
_gdk_display_device_grab_update (display, device, source_device, serial);
|
||||
}
|
||||
if (event->type == GDK_BUTTON_RELEASE &&
|
||||
!event->any.send_event)
|
||||
@@ -11543,7 +11681,7 @@ _gdk_windowing_got_event (GdkDisplay *display,
|
||||
{
|
||||
button_release_grab->serial_end = serial;
|
||||
button_release_grab->implicit_ungrab = FALSE;
|
||||
_gdk_display_device_grab_update (display, device, serial);
|
||||
_gdk_display_device_grab_update (display, device, source_device, serial);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11665,7 +11803,7 @@ _gdk_windowing_got_event (GdkDisplay *display,
|
||||
{
|
||||
button_release_grab->serial_end = serial;
|
||||
button_release_grab->implicit_ungrab = FALSE;
|
||||
_gdk_display_device_grab_update (display, device, serial);
|
||||
_gdk_display_device_grab_update (display, device, source_device, serial);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -11760,3 +11898,7 @@ _gdk_window_get_input_window_for_event (GdkWindow *native_window,
|
||||
|
||||
return event_win;
|
||||
}
|
||||
|
||||
|
||||
#define __GDK_WINDOW_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
@@ -779,6 +779,12 @@ void gdk_window_set_device_events (GdkWindow *window,
|
||||
GdkEventMask gdk_window_get_device_events (GdkWindow *window,
|
||||
GdkDevice *device);
|
||||
|
||||
void gdk_window_set_source_events (GdkWindow *window,
|
||||
GdkInputSource source,
|
||||
GdkEventMask event_mask);
|
||||
GdkEventMask gdk_window_get_source_events (GdkWindow *window,
|
||||
GdkInputSource source);
|
||||
|
||||
void gdk_window_set_icon_list (GdkWindow *window,
|
||||
GList *pixbufs);
|
||||
void gdk_window_set_icon (GdkWindow *window,
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
#include "gdkwindowimpl.h"
|
||||
#include "gdkinternals.h"
|
||||
|
||||
#include "gdkalias.h"
|
||||
|
||||
GType
|
||||
gdk_window_impl_get_type (void)
|
||||
@@ -45,3 +46,7 @@ gdk_window_impl_get_type (void)
|
||||
|
||||
return gtype;
|
||||
}
|
||||
|
||||
#define __GDK_WINDOW_IMPL_C__
|
||||
#include "gdkaliasdef.c"
|
||||
|
||||
|
||||
@@ -51,6 +51,8 @@ gdk-win32-backend :
|
||||
all: \
|
||||
..\config.h \
|
||||
gdkconfig.h \
|
||||
gdkalias.h \
|
||||
gdkaliasdef.c \
|
||||
gdkenumtypes.h \
|
||||
gdkenumtypes.c \
|
||||
gdkmarshalers.h \
|
||||
@@ -136,6 +138,12 @@ gdkenumtypes.c: $(gdk_public_h_sources) gdkenumtypes.c.template
|
||||
gdkconfig.h : gdkconfig.h.win32
|
||||
copy gdkconfig.h.win32 gdkconfig.h
|
||||
|
||||
gdkalias.h: gdk.symbols
|
||||
perl makegdkalias.pl < gdk.symbols > gdkalias.h
|
||||
|
||||
gdkaliasdef.c: gdk.symbols
|
||||
perl makegdkalias.pl -def < gdk.symbols > gdkaliasdef.c
|
||||
|
||||
gdk.def: gdk.symbols
|
||||
echo EXPORTS > gdk.def
|
||||
cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DGDK_WINDOWING_WIN32 -DALL_FILES \
|
||||
|
||||
136
gdk/makegdkalias.pl
Executable file
136
gdk/makegdkalias.pl
Executable file
@@ -0,0 +1,136 @@
|
||||
#!/usr/bin/perl -w
|
||||
|
||||
my $do_def = 0;
|
||||
|
||||
if (($#ARGV >= 0) && ($ARGV[0] eq "-def")) {
|
||||
shift;
|
||||
$do_def = 1;
|
||||
}
|
||||
|
||||
print <<EOF;
|
||||
/* Generated by makegdkalias.pl */
|
||||
|
||||
#ifndef DISABLE_VISIBILITY
|
||||
|
||||
#include <glib.h>
|
||||
|
||||
#ifdef G_HAVE_GNUC_VISIBILITY
|
||||
|
||||
EOF
|
||||
|
||||
if ($do_def) {
|
||||
print <<EOF
|
||||
#undef IN_FILE
|
||||
#define IN_FILE defined
|
||||
|
||||
#undef IN_HEADER
|
||||
#define IN_HEADER(x) 1
|
||||
|
||||
EOF
|
||||
}
|
||||
else {
|
||||
print <<EOF
|
||||
#define IN_FILE(x) 1
|
||||
#define IN_HEADER defined
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
my $in_comment = 0;
|
||||
my $in_skipped_section = 0;
|
||||
|
||||
while (<>) {
|
||||
|
||||
# ignore empty lines
|
||||
next if /^\s*$/;
|
||||
|
||||
# skip comments
|
||||
if ($_ =~ /^\s*\/\*/)
|
||||
{
|
||||
$in_comment = 1;
|
||||
}
|
||||
|
||||
if ($in_comment)
|
||||
{
|
||||
if ($_ =~ /\*\/\s$/)
|
||||
{
|
||||
$in_comment = 0;
|
||||
}
|
||||
|
||||
next;
|
||||
}
|
||||
|
||||
# handle ifdefs
|
||||
if ($_ =~ /^\#endif/)
|
||||
{
|
||||
if (!$in_skipped_section)
|
||||
{
|
||||
print $_;
|
||||
}
|
||||
|
||||
$in_skipped_section = 0;
|
||||
|
||||
next;
|
||||
}
|
||||
|
||||
if ($_ =~ /^\#ifdef\s+(INCLUDE_VARIABLES|INCLUDE_INTERNAL_SYMBOLS|ALL_FILES)/)
|
||||
{
|
||||
$in_skipped_section = 1;
|
||||
}
|
||||
|
||||
if ($in_skipped_section)
|
||||
{
|
||||
next;
|
||||
}
|
||||
|
||||
if ($_ =~ /^\#ifn?def/)
|
||||
{
|
||||
print $_;
|
||||
|
||||
next;
|
||||
}
|
||||
|
||||
if ($_ =~ /^\#if.*(IN_FILE|IN_HEADER)/)
|
||||
{
|
||||
print $_;
|
||||
|
||||
next;
|
||||
}
|
||||
|
||||
chop;
|
||||
my $str = $_;
|
||||
my @words;
|
||||
my $attributes = "";
|
||||
|
||||
@words = split(/ /, $str);
|
||||
$str = shift(@words);
|
||||
chomp($str);
|
||||
my $alias = "IA__".$str;
|
||||
|
||||
# Drop any Win32 specific .def file syntax, but keep attributes
|
||||
foreach $word (@words) {
|
||||
$attributes = "$attributes $word" unless $word eq "PRIVATE";
|
||||
}
|
||||
|
||||
if (!$do_def) {
|
||||
print <<EOF
|
||||
extern __typeof ($str) $alias __attribute((visibility("hidden")))$attributes;
|
||||
\#define $str $alias
|
||||
|
||||
EOF
|
||||
}
|
||||
else {
|
||||
print <<EOF
|
||||
\#undef $str
|
||||
extern __typeof ($str) $str __attribute((alias("$alias"), visibility("default")));
|
||||
|
||||
EOF
|
||||
}
|
||||
}
|
||||
|
||||
print <<EOF;
|
||||
|
||||
#endif /* G_HAVE_GNUC_VISIBILITY */
|
||||
#endif /* DISABLE_VISIBILITY */
|
||||
EOF
|
||||
|
||||
17
gdk/pltcheck.sh
Executable file
17
gdk/pltcheck.sh
Executable file
@@ -0,0 +1,17 @@
|
||||
#!/bin/sh
|
||||
|
||||
LANG=C
|
||||
|
||||
status=0
|
||||
|
||||
if ! which readelf 2>/dev/null >/dev/null; then
|
||||
echo "'readelf' not found; skipping test"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
for so in .libs/lib*.so; do
|
||||
echo Checking $so for local PLT entries
|
||||
readelf -r $so | grep 'JU\?MP_SLOT' | grep -v 'gdk_pixbuf' | grep gdk && status=1
|
||||
done
|
||||
|
||||
exit $status
|
||||
@@ -512,14 +512,14 @@ generic_draw (GdkDrawable *drawable,
|
||||
const GdkGCValuesMask blitting_mask = 0;
|
||||
GdkGCValuesMask drawing_mask = GDK_GC_FOREGROUND;
|
||||
gint ts_x_origin = 0, ts_y_origin = 0;
|
||||
cairo_rectangle_int_t region_extents;
|
||||
|
||||
cairo_region_get_extents (region, ®ion_extents);
|
||||
gint width = region->extents.x2 - region->extents.x1;
|
||||
gint height = region->extents.y2 - region->extents.y1;
|
||||
|
||||
GdkPixmap *mask_pixmap =
|
||||
gdk_pixmap_new (drawable, region_extents.width, region_extents.height, 1);
|
||||
gdk_pixmap_new (drawable, width, height, 1);
|
||||
GdkPixmap *tile_pixmap =
|
||||
gdk_pixmap_new (drawable, region_extents.width, region_extents.height, -1);
|
||||
gdk_pixmap_new (drawable, width, height, -1);
|
||||
GdkPixmap *stipple_bitmap = NULL;
|
||||
GdkColor fg;
|
||||
|
||||
@@ -542,13 +542,13 @@ generic_draw (GdkDrawable *drawable,
|
||||
if (gcwin32->values_mask & GDK_GC_TS_Y_ORIGIN)
|
||||
ts_y_origin = gc->ts_y_origin;
|
||||
|
||||
ts_x_origin -= region_extents.x;
|
||||
ts_y_origin -= region_extents.y;
|
||||
ts_x_origin -= region->extents.x1;
|
||||
ts_y_origin -= region->extents.y1;
|
||||
|
||||
/* Fill mask bitmap with zeros */
|
||||
gdk_gc_set_function (mask_gc, GDK_CLEAR);
|
||||
gdk_draw_rectangle (mask_pixmap, mask_gc, TRUE,
|
||||
0, 0, region_extents.width, region_extents.height);
|
||||
0, 0, width, height);
|
||||
|
||||
/* Paint into mask bitmap, drawing ones */
|
||||
gdk_gc_set_function (mask_gc, GDK_COPY);
|
||||
@@ -575,7 +575,7 @@ generic_draw (GdkDrawable *drawable,
|
||||
|
||||
mask_hdc = gdk_win32_hdc_get (mask_pixmap, mask_gc, drawing_mask);
|
||||
(*function) (GDK_GC_WIN32 (mask_gc), mask_hdc,
|
||||
region_extents.x, region_extents.y, args);
|
||||
region->extents.x1, region->extents.y1, args);
|
||||
gdk_win32_hdc_release (mask_pixmap, mask_gc, drawing_mask);
|
||||
|
||||
if (fill_style == GDK_TILED)
|
||||
@@ -584,22 +584,21 @@ generic_draw (GdkDrawable *drawable,
|
||||
draw_tiles (tile_pixmap, tile_gc, SRCCOPY,
|
||||
_gdk_gc_get_tile (gc),
|
||||
0, 0, ts_x_origin, ts_y_origin,
|
||||
region_extents.width, region_extents.height);
|
||||
width, height);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Tile with stipple */
|
||||
GdkGC *stipple_gc;
|
||||
|
||||
stipple_bitmap =
|
||||
gdk_pixmap_new (NULL, region_extents.width, region_extents.height, 1);
|
||||
stipple_bitmap = gdk_pixmap_new (NULL, width, height, 1);
|
||||
stipple_gc = gdk_gc_new (stipple_bitmap);
|
||||
|
||||
/* Tile stipple bitmap */
|
||||
draw_tiles (stipple_bitmap, stipple_gc, SRCCOPY,
|
||||
_gdk_gc_get_stipple (gc),
|
||||
0, 0, ts_x_origin, ts_y_origin,
|
||||
region_extents.width, region_extents.height);
|
||||
width, height);
|
||||
|
||||
if (fill_style == GDK_OPAQUE_STIPPLED)
|
||||
{
|
||||
@@ -607,8 +606,7 @@ generic_draw (GdkDrawable *drawable,
|
||||
fg.pixel = _gdk_gc_get_bg_pixel (gc);
|
||||
gdk_gc_set_foreground (tile_gc, &fg);
|
||||
gdk_draw_rectangle (tile_pixmap, tile_gc, TRUE,
|
||||
0, 0,
|
||||
region_extents.width, region_extents.height);
|
||||
0, 0, width, height);
|
||||
}
|
||||
g_object_unref (stipple_gc);
|
||||
}
|
||||
@@ -664,18 +662,14 @@ generic_draw (GdkDrawable *drawable,
|
||||
* Reading bottom-up: 11100010 = 0xE2. PSDK docs say this is
|
||||
* known as DSPDxax, with hex value 0x00E20746.
|
||||
*/
|
||||
GDI_CALL (BitBlt, (tile_hdc, 0, 0,
|
||||
region_extents.width, region_extents.height,
|
||||
stipple_hdc, 0, 0,
|
||||
ROP3_DSPDxax));
|
||||
GDI_CALL (BitBlt, (tile_hdc, 0, 0, width, height,
|
||||
stipple_hdc, 0, 0, ROP3_DSPDxax));
|
||||
|
||||
if (fill_style == GDK_STIPPLED)
|
||||
{
|
||||
/* Punch holes in mask where stipple is zero */
|
||||
GDI_CALL (BitBlt, (mask_hdc, 0, 0,
|
||||
region_extents.width, region_extents.height,
|
||||
stipple_hdc, 0, 0,
|
||||
SRCAND));
|
||||
GDI_CALL (BitBlt, (mask_hdc, 0, 0, width, height,
|
||||
stipple_hdc, 0, 0, SRCAND));
|
||||
}
|
||||
|
||||
GDI_CALL (SelectObject, (tile_hdc, old_tile_brush));
|
||||
@@ -689,8 +683,8 @@ generic_draw (GdkDrawable *drawable,
|
||||
* the areas where mask is one. (It is filled with said pattern.)
|
||||
*/
|
||||
|
||||
GDI_CALL (MaskBlt, (hdc, region_extents.x, region_extents.y,
|
||||
region_extents.width, region_extents.height,
|
||||
GDI_CALL (MaskBlt, (hdc, region->extents.x1, region->extents.y1,
|
||||
width, height,
|
||||
tile_hdc, 0, 0,
|
||||
GDK_PIXMAP_HBITMAP (mask_pixmap), 0, 0,
|
||||
MAKEROP4 (rop2_to_rop3 (gcwin32->rop2), ROP3_D)));
|
||||
|
||||
@@ -543,9 +543,9 @@ gdk_win32_gc_set_dashes (GdkGC *gc,
|
||||
}
|
||||
|
||||
void
|
||||
_gdk_windowing_gc_set_clip_region (GdkGC *gc,
|
||||
_gdk_windowing_gc_set_clip_region (GdkGC *gc,
|
||||
const cairo_region_t *region,
|
||||
gboolean reset_origin)
|
||||
gboolean reset_origin)
|
||||
{
|
||||
GdkGCWin32 *win32_gc = GDK_GC_WIN32 (gc);
|
||||
|
||||
@@ -556,9 +556,9 @@ _gdk_windowing_gc_set_clip_region (GdkGC *gc,
|
||||
{
|
||||
GDK_NOTE (GC, g_print ("gdk_gc_set_clip_region: %p: %s\n",
|
||||
win32_gc,
|
||||
_gdk_win32_cairo_region_to_string (region)));
|
||||
_gdk_win32_gdkregion_to_string (region)));
|
||||
|
||||
win32_gc->hcliprgn = _gdk_win32_cairo_region_to_hrgn (region, 0, 0);
|
||||
win32_gc->hcliprgn = _gdk_win32_gdkregion_to_hrgn (region, 0, 0);
|
||||
win32_gc->values_mask |= GDK_GC_CLIP_MASK;
|
||||
}
|
||||
else
|
||||
@@ -1055,16 +1055,16 @@ _gdk_win32_bitmap_to_hrgn (GdkPixmap *pixmap)
|
||||
}
|
||||
|
||||
HRGN
|
||||
_gdk_win32_cairo_region_to_hrgn (const cairo_region_t *region,
|
||||
gint x_origin,
|
||||
gint y_origin)
|
||||
_gdk_win32_gdkregion_to_hrgn (const cairo_region_t *region,
|
||||
gint x_origin,
|
||||
gint y_origin)
|
||||
{
|
||||
HRGN hrgn;
|
||||
RGNDATA *rgndata;
|
||||
RECT *rect;
|
||||
cairo_rectangle_int_t cairo_rect;
|
||||
guint nbytes = sizeof (RGNDATAHEADER)
|
||||
+ (sizeof (RECT) * cairo_region_num_rectangles (region));
|
||||
cairo_region_tBox *boxes = region->rects;
|
||||
guint nbytes =
|
||||
sizeof (RGNDATAHEADER) + (sizeof (RECT) * region->numRects);
|
||||
int i;
|
||||
|
||||
rgndata = g_malloc (nbytes);
|
||||
@@ -1074,15 +1074,14 @@ _gdk_win32_cairo_region_to_hrgn (const cairo_region_t *region,
|
||||
SetRect (&rgndata->rdh.rcBound,
|
||||
G_MAXLONG, G_MAXLONG, G_MINLONG, G_MINLONG);
|
||||
|
||||
for (i = 0; i < cairo_region_num_rectangles (region); i++)
|
||||
for (i = 0; i < region->numRects; i++)
|
||||
{
|
||||
rect = ((RECT *) rgndata->Buffer) + rgndata->rdh.nCount++;
|
||||
cairo_region_get_rectangle (region, i, &cairo_rect);
|
||||
|
||||
rect->left = cairo_rect.x + x_origin;
|
||||
rect->right = cairo_rect.x + cairo_rect.width + x_origin;
|
||||
rect->top = cairo_rect.y + y_origin;
|
||||
rect->bottom = cairo_rect.y + cairo_rect.height + y_origin;
|
||||
rect->left = boxes[i].x1 + x_origin;
|
||||
rect->right = boxes[i].x2 + x_origin;
|
||||
rect->top = boxes[i].y1 + y_origin;
|
||||
rect->bottom = boxes[i].y2 + y_origin;
|
||||
|
||||
if (rect->left < rgndata->rdh.rcBound.left)
|
||||
rgndata->rdh.rcBound.left = rect->left;
|
||||
|
||||
@@ -282,7 +282,7 @@ gdk_window_post_scroll (GdkWindow *window,
|
||||
{
|
||||
GDK_NOTE (EVENTS,
|
||||
g_print ("gdk_window_clip_changed: invalidating region: %s\n",
|
||||
_gdk_win32_cairo_region_to_string (new_clip_region)));
|
||||
_gdk_win32_gdkregion_to_string (new_clip_region)));
|
||||
|
||||
gdk_window_invalidate_region (window, new_clip_region, FALSE);
|
||||
g_print ("gdk_window_post_scroll\n");
|
||||
|
||||
@@ -517,6 +517,7 @@ _gdk_win32_gcvalues_mask_to_string (GdkGCValuesMask mask)
|
||||
|
||||
BIT (FOREGROUND);
|
||||
BIT (BACKGROUND);
|
||||
BIT (FONT);
|
||||
BIT (FUNCTION);
|
||||
BIT (FILL);
|
||||
BIT (TILE);
|
||||
@@ -1157,13 +1158,12 @@ _gdk_win32_gdkrectangle_to_string (const GdkRectangle *rect)
|
||||
}
|
||||
|
||||
gchar *
|
||||
_gdk_win32_cairo_region_to_string (const cairo_region_t *rgn)
|
||||
_gdk_win32_gdkregion_to_string (const cairo_region_t *rgn)
|
||||
{
|
||||
cairo_rectangle_int_t extents;
|
||||
cairo_region_get_extents (rgn, &extents);
|
||||
return static_printf ("%dx%d@%+d%+d",
|
||||
extents.width, extents.height,
|
||||
extents.x, extents.y);
|
||||
(rgn->extents.x2 - rgn->extents.x1),
|
||||
(rgn->extents.y2 - rgn->extents.y1),
|
||||
rgn->extents.x1, rgn->extents.y1);
|
||||
}
|
||||
|
||||
gchar *
|
||||
|
||||
@@ -267,9 +267,9 @@ COLORREF _gdk_win32_colormap_color (GdkColormap *colormap,
|
||||
|
||||
HRGN _gdk_win32_bitmap_to_hrgn (GdkPixmap *bitmap);
|
||||
|
||||
HRGN _gdk_win32_cairo_region_to_hrgn (const cairo_region_t *region,
|
||||
gint x_origin,
|
||||
gint y_origin);
|
||||
HRGN _gdk_win32_gdkregion_to_hrgn (const cairo_region_t *region,
|
||||
gint x_origin,
|
||||
gint y_origin);
|
||||
|
||||
cairo_region_t *_gdk_win32_hrgn_to_region (HRGN hrgn);
|
||||
|
||||
@@ -321,7 +321,7 @@ gchar *_gdk_win32_data_to_string (const guchar*data,
|
||||
gchar *_gdk_win32_rect_to_string (const RECT *rect);
|
||||
|
||||
gchar *_gdk_win32_gdkrectangle_to_string (const GdkRectangle *rect);
|
||||
gchar *_gdk_win32_cairo_region_to_string (const cairo_region_t *box);
|
||||
gchar *_gdk_win32_gdkregion_to_string (const cairo_region_t *box);
|
||||
|
||||
void _gdk_win32_print_event (const GdkEvent *event);
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user