New upstream version 3.24.34

This commit is contained in:
Simon McVittie 2022-06-01 16:13:05 +01:00
commit e0952cc337
473 changed files with 306973 additions and 738624 deletions

View File

@ -4,7 +4,7 @@ Prerequisites
GTK+ requires the following packages:
- The GLib, Pango, GdkPixbuf, ATK and cairo libraries, available at
the same location as GTK+. GTK+ 3.24.33 requires at least
the same location as GTK+. GTK+ 3.24.34 requires at least
GLib 2.57.2, Pango 1.41.0,
GdkPixbuf 2.30.0, ATK 2.32.0
and cairo 1.14.0.
@ -22,8 +22,8 @@ GTK+ requires the following packages:
Simple install procedure
========================
% tar xf gtk+-3.24.33.tar.xz # unpack the sources
% cd gtk+-3.24.33 # change to the toplevel directory
% tar xf gtk+-3.24.34.tar.xz # unpack the sources
% cd gtk+-3.24.34 # change to the toplevel directory
% ./configure # run the `configure' script
% make # build GTK+
[ Become root if necessary ]

View File

@ -1,7 +1,7 @@
# Makefile.in generated by automake 1.16.2 from Makefile.am.
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -198,9 +198,6 @@ am__define_uniq_tagged_files = \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
CSCOPE = cscope
DIST_SUBDIRS = $(SUBDIRS)
am__DIST_COMMON = $(srcdir)/INSTALL.in $(srcdir)/Makefile.in \
$(srcdir)/README.in $(srcdir)/config.h.in \
@ -256,6 +253,8 @@ am__relativize = \
GZIP_ENV = --best
DIST_ARCHIVES = $(distdir).tar.xz
DIST_TARGETS = dist-xz
# Exists only to be overridden by the user if desired.
AM_DISTCHECK_DVI_TARGET = dvi
distuninstallcheck_listfiles = find . -type f -print
am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
@ -297,6 +296,8 @@ CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
CPP_FOR_BUILD = @CPP_FOR_BUILD@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CUPS_API_MAJOR = @CUPS_API_MAJOR@
CUPS_API_MINOR = @CUPS_API_MINOR@
CUPS_CFLAGS = @CUPS_CFLAGS@
@ -319,6 +320,7 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_ON_X11 = @ENABLE_ON_X11@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
EXE_MANIFEST_ARCHITECTURE = @EXE_MANIFEST_ARCHITECTURE@
FGREP = @FGREP@
@ -844,7 +846,6 @@ cscopelist-am: $(am__tagged_files)
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am
@ -993,7 +994,7 @@ distcheck: dist
$(DISTCHECK_CONFIGURE_FLAGS) \
--srcdir=../.. --prefix="$$dc_install_base" \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) $(AM_DISTCHECK_DVI_TARGET) \
&& $(MAKE) $(AM_MAKEFLAGS) check \
&& $(MAKE) $(AM_MAKEFLAGS) install \
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \

30
NEWS
View File

@ -1,3 +1,33 @@
Overview of Changes in GTK+ 3.24.34, 05-18-2022
===============================================
* Include legacy hicolor icons
* Fix the build with gcc 12
* MacOS:
- Restore QUARTZ_RELOCATION support
* X11:
- Trap errors when getting output properties
* Wayland:
- Ignore empty preedit updates This fixes a problem with
textview scrolling
* Translation updates
Danish
Dutch
French
German
Hungarian
Italian
Kazakh
Latvian
Lithuanian
Norwegian Bokmål
Swedish
Overview of Changes in GTK+ 3.24.33, 04-03-2022
===============================================

2
README
View File

@ -1,7 +1,7 @@
General Information
===================
This is GTK+ version 3.24.33. GTK+ is a multi-platform toolkit for
This is GTK+ version 3.24.34. GTK+ is a multi-platform toolkit for
creating graphical user interfaces. Offering a complete set of widgets,
GTK+ is suitable for projects ranging from small one-off projects to
complete application suites.

79
aclocal.m4 vendored
View File

@ -1,6 +1,6 @@
# generated automatically by aclocal 1.16.2 -*- Autoconf -*-
# generated automatically by aclocal 1.16.5 -*- Autoconf -*-
# Copyright (C) 1996-2020 Free Software Foundation, Inc.
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -14,8 +14,8 @@
m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
[m4_warning([this file was generated for autoconf 2.69.
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.71],,
[m4_warning([this file was generated for autoconf 2.71.
You have another version of autoconf. It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
@ -812,7 +812,7 @@ AS_IF([test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"],
[AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])])
])dnl PKG_HAVE_DEFINE_WITH_MODULES
# Copyright (C) 2002-2020 Free Software Foundation, Inc.
# Copyright (C) 2002-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -827,7 +827,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION],
[am__api_version='1.16'
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
dnl require some minimum version. Point them to the right macro.
m4_if([$1], [1.16.2], [],
m4_if([$1], [1.16.5], [],
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
])
@ -843,14 +843,14 @@ m4_define([_AM_AUTOCONF_VERSION], [])
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
[AM_AUTOMAKE_VERSION([1.16.2])dnl
[AM_AUTOMAKE_VERSION([1.16.5])dnl
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
# Figure out how to run the assembler. -*- Autoconf -*-
# Copyright (C) 2001-2020 Free Software Foundation, Inc.
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -870,7 +870,7 @@ _AM_IF_OPTION([no-dependencies],, [_AM_DEPENDENCIES([CCAS])])dnl
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
# Copyright (C) 2001-2020 Free Software Foundation, Inc.
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -922,7 +922,7 @@ am_aux_dir=`cd "$ac_aux_dir" && pwd`
# AM_CONDITIONAL -*- Autoconf -*-
# Copyright (C) 1997-2020 Free Software Foundation, Inc.
# Copyright (C) 1997-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -953,7 +953,7 @@ AC_CONFIG_COMMANDS_PRE(
Usually this means the macro was only invoked conditionally.]])
fi])])
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1144,7 +1144,7 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
# Generate code to set up dependency tracking. -*- Autoconf -*-
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1212,7 +1212,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
# Do all the work for Automake. -*- Autoconf -*-
# Copyright (C) 1996-2020 Free Software Foundation, Inc.
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1240,6 +1240,10 @@ m4_defn([AC_PROG_CC])
# release and drop the old call support.
AC_DEFUN([AM_INIT_AUTOMAKE],
[AC_PREREQ([2.65])dnl
m4_ifdef([_$0_ALREADY_INIT],
[m4_fatal([$0 expanded multiple times
]m4_defn([_$0_ALREADY_INIT]))],
[m4_define([_$0_ALREADY_INIT], m4_expansion_stack)])dnl
dnl Autoconf wants to disallow AM_ names. We explicitly allow
dnl the ones we care about.
m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
@ -1276,7 +1280,7 @@ m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
[_AM_SET_OPTIONS([$1])dnl
dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
m4_if(
m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
m4_ifset([AC_PACKAGE_NAME], [ok]):m4_ifset([AC_PACKAGE_VERSION], [ok]),
[ok:ok],,
[m4_fatal([AC_INIT should be called with package and version arguments])])dnl
AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
@ -1328,6 +1332,20 @@ AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
[m4_define([AC_PROG_OBJCXX],
m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
])
# Variables for tags utilities; see am/tags.am
if test -z "$CTAGS"; then
CTAGS=ctags
fi
AC_SUBST([CTAGS])
if test -z "$ETAGS"; then
ETAGS=etags
fi
AC_SUBST([ETAGS])
if test -z "$CSCOPE"; then
CSCOPE=cscope
fi
AC_SUBST([CSCOPE])
AC_REQUIRE([AM_SILENT_RULES])dnl
dnl The testsuite driver may need to know about EXEEXT, so add the
dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This
@ -1409,7 +1427,7 @@ for _am_header in $config_headers :; do
done
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
# Copyright (C) 2001-2020 Free Software Foundation, Inc.
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1430,7 +1448,7 @@ if test x"${install_sh+set}" != xset; then
fi
AC_SUBST([install_sh])])
# Copyright (C) 2003-2020 Free Software Foundation, Inc.
# Copyright (C) 2003-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1452,7 +1470,7 @@ AC_SUBST([am__leading_dot])])
# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
# From Jim Meyering
# Copyright (C) 1996-2020 Free Software Foundation, Inc.
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1487,7 +1505,7 @@ AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
# Check to see how 'make' treats includes. -*- Autoconf -*-
# Copyright (C) 2001-2020 Free Software Foundation, Inc.
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1530,7 +1548,7 @@ AC_SUBST([am__quote])])
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
# Copyright (C) 1997-2020 Free Software Foundation, Inc.
# Copyright (C) 1997-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1551,12 +1569,7 @@ AC_DEFUN([AM_MISSING_HAS_RUN],
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
AC_REQUIRE_AUX_FILE([missing])dnl
if test x"${MISSING+set}" != xset; then
case $am_aux_dir in
*\ * | *\ *)
MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
*)
MISSING="\${SHELL} $am_aux_dir/missing" ;;
esac
MISSING="\${SHELL} '$am_aux_dir/missing'"
fi
# Use eval to expand $SHELL
if eval "$MISSING --is-lightweight"; then
@ -1569,7 +1582,7 @@ fi
# Helper functions for option handling. -*- Autoconf -*-
# Copyright (C) 2001-2020 Free Software Foundation, Inc.
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1598,7 +1611,7 @@ AC_DEFUN([_AM_SET_OPTIONS],
AC_DEFUN([_AM_IF_OPTION],
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1645,7 +1658,7 @@ AC_LANG_POP([C])])
# For backward compatibility.
AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
# Copyright (C) 2001-2020 Free Software Foundation, Inc.
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1664,7 +1677,7 @@ AC_DEFUN([AM_RUN_LOG],
# Check to make sure that the build environment is sane. -*- Autoconf -*-
# Copyright (C) 1996-2020 Free Software Foundation, Inc.
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1745,7 +1758,7 @@ AC_CONFIG_COMMANDS_PRE(
rm -f conftest.file
])
# Copyright (C) 2009-2020 Free Software Foundation, Inc.
# Copyright (C) 2009-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1805,7 +1818,7 @@ AC_SUBST([AM_BACKSLASH])dnl
_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
])
# Copyright (C) 2001-2020 Free Software Foundation, Inc.
# Copyright (C) 2001-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1833,7 +1846,7 @@ fi
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
AC_SUBST([INSTALL_STRIP_PROGRAM])])
# Copyright (C) 2006-2020 Free Software Foundation, Inc.
# Copyright (C) 2006-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -1852,7 +1865,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
# Check how to create a tarball. -*- Autoconf -*-
# Copyright (C) 2004-2020 Free Software Foundation, Inc.
# Copyright (C) 2004-2021 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,

View File

@ -3,7 +3,7 @@
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify

668
build-aux/config.guess vendored

File diff suppressed because it is too large Load Diff

2711
build-aux/config.sub vendored

File diff suppressed because it is too large Load Diff

View File

@ -3,7 +3,7 @@
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by

View File

@ -1,7 +1,7 @@
#!/bin/sh
# install - install a program, script, or datafile
scriptversion=2018-03-11.20; # UTC
scriptversion=2020-11-14.01; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
@ -69,6 +69,11 @@ posix_mkdir=
# Desired mode of installed file.
mode=0755
# Create dirs (including intermediate dirs) using mode 755.
# This is like GNU 'install' as of coreutils 8.32 (2020).
mkdir_umask=22
backupsuffix=
chgrpcmd=
chmodcmd=$chmodprog
chowncmd=
@ -99,18 +104,28 @@ Options:
--version display version info and exit.
-c (ignored)
-C install only if different (preserve the last data modification time)
-C install only if different (preserve data modification time)
-d create directories instead of installing files.
-g GROUP $chgrpprog installed files to GROUP.
-m MODE $chmodprog installed files to MODE.
-o USER $chownprog installed files to USER.
-p pass -p to $cpprog.
-s $stripprog installed files.
-S SUFFIX attempt to back up existing files, with suffix SUFFIX.
-t DIRECTORY install into DIRECTORY.
-T report an error if DSTFILE is a directory.
Environment variables override the default commands:
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
RMPROG STRIPPROG
By default, rm is invoked with -f; when overridden with RMPROG,
it's up to you to specify -f if you want it.
If -S is not specified, no backups are attempted.
Email bug reports to bug-automake@gnu.org.
Automake home page: https://www.gnu.org/software/automake/
"
while test $# -ne 0; do
@ -137,8 +152,13 @@ while test $# -ne 0; do
-o) chowncmd="$chownprog $2"
shift;;
-p) cpprog="$cpprog -p";;
-s) stripcmd=$stripprog;;
-S) backupsuffix="$2"
shift;;
-t)
is_target_a_directory=always
dst_arg=$2
@ -255,6 +275,10 @@ do
dstdir=$dst
test -d "$dstdir"
dstdir_status=$?
# Don't chown directories that already exist.
if test $dstdir_status = 0; then
chowncmd=""
fi
else
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
@ -301,22 +325,6 @@ do
if test $dstdir_status != 0; then
case $posix_mkdir in
'')
# Create intermediate dirs using mode 755 as modified by the umask.
# This is like FreeBSD 'install' as of 1997-10-28.
umask=`umask`
case $stripcmd.$umask in
# Optimize common cases.
*[2367][2367]) mkdir_umask=$umask;;
.*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
*[0-7])
mkdir_umask=`expr $umask + 22 \
- $umask % 100 % 40 + $umask % 20 \
- $umask % 10 % 4 + $umask % 2
`;;
*) mkdir_umask=$umask,go-w;;
esac
# With -d, create the new directory with the user-specified mode.
# Otherwise, rely on $mkdir_umask.
if test -n "$dir_arg"; then
@ -326,52 +334,49 @@ do
fi
posix_mkdir=false
case $umask in
*[123567][0-7][0-7])
# POSIX mkdir -p sets u+wx bits regardless of umask, which
# is incompatible with FreeBSD 'install' when (umask & 300) != 0.
;;
*)
# Note that $RANDOM variable is not portable (e.g. dash); Use it
# here however when possible just to lower collision chance.
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
# The $RANDOM variable is not portable (e.g., dash). Use it
# here however when possible just to lower collision chance.
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
trap '
ret=$?
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null
exit $ret
' 0
# Because "mkdir -p" follows existing symlinks and we likely work
# directly in world-writeable /tmp, make sure that the '$tmpdir'
# directory is successfully created first before we actually test
# 'mkdir -p' feature.
if (umask $mkdir_umask &&
$mkdirprog $mkdir_mode "$tmpdir" &&
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
then
if test -z "$dir_arg" || {
# Check for POSIX incompatibilities with -m.
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
# other-writable bit of parent directory when it shouldn't.
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
test_tmpdir="$tmpdir/a"
ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
case $ls_ld_tmpdir in
d????-?r-*) different_mode=700;;
d????-?--*) different_mode=755;;
*) false;;
esac &&
$mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
}
}
then posix_mkdir=:
fi
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
else
# Remove any dirs left behind by ancient mkdir implementations.
rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
fi
trap '' 0;;
esac;;
# Because "mkdir -p" follows existing symlinks and we likely work
# directly in world-writeable /tmp, make sure that the '$tmpdir'
# directory is successfully created first before we actually test
# 'mkdir -p'.
if (umask $mkdir_umask &&
$mkdirprog $mkdir_mode "$tmpdir" &&
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
then
if test -z "$dir_arg" || {
# Check for POSIX incompatibilities with -m.
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
# other-writable bit of parent directory when it shouldn't.
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
test_tmpdir="$tmpdir/a"
ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
case $ls_ld_tmpdir in
d????-?r-*) different_mode=700;;
d????-?--*) different_mode=755;;
*) false;;
esac &&
$mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
}
}
then posix_mkdir=:
fi
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
else
# Remove any dirs left behind by ancient mkdir implementations.
rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
fi
trap '' 0;;
esac
if
@ -382,7 +387,7 @@ do
then :
else
# The umask is ridiculous, or mkdir does not conform to POSIX,
# mkdir does not conform to POSIX,
# or it failed possibly due to a race condition. Create the
# directory the slow way, step by step, checking for races as we go.
@ -411,7 +416,7 @@ do
prefixes=
else
if $posix_mkdir; then
(umask=$mkdir_umask &&
(umask $mkdir_umask &&
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
# Don't fail if two instances are running concurrently.
test -d "$prefix" || exit 1
@ -488,6 +493,13 @@ do
then
rm -f "$dsttmp"
else
# If $backupsuffix is set, and the file being installed
# already exists, attempt a backup. Don't worry if it fails,
# e.g., if mv doesn't support -f.
if test -n "$backupsuffix" && test -f "$dst"; then
$doit $mvcmd -f "$dst" "$dst$backupsuffix" 2>/dev/null
fi
# Rename the file to the real destination.
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
@ -502,9 +514,9 @@ do
# file should still install successfully.
{
test ! -f "$dst" ||
$doit $rmcmd -f "$dst" 2>/dev/null ||
$doit $rmcmd "$dst" 2>/dev/null ||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
{ $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
{ $doit $rmcmd "$rmtmp" 2>/dev/null; :; }
} ||
{ echo "$0: cannot unlink or rename $dst" >&2
(exit 1); exit 1

View File

@ -2124,7 +2124,7 @@ fi
# a configuration failure hint, and exit.
func_fatal_configuration ()
{
func_fatal_error ${1+"$@"} \
func__fatal_error ${1+"$@"} \
"See the $PACKAGE documentation for more information." \
"Fatal configuration error."
}
@ -2415,17 +2415,10 @@ libtool_validate_options ()
# preserve --debug
test : = "$debug_cmd" || func_append preserve_args " --debug"
case $host in
# Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452
# see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788
*cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*)
# don't eliminate duplications in $postdeps and $predeps
opt_duplicate_compiler_generated_deps=:
;;
*)
opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps
;;
esac
# Keeping compiler generated duplicates in $postdeps and $predeps is not
# harmful, and is necessary in a majority of systems that use it to satisfy
# symbol dependencies.
opt_duplicate_compiler_generated_deps=:
$opt_help || {
# Sanity checks first:
@ -7272,12 +7265,10 @@ func_mode_link ()
# -tp=* Portland pgcc target processor selection
# --sysroot=* for sysroot support
# -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
# -specs=* GCC specs files
# -stdlib=* select c++ std lib with clang
-64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
-t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
-O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
-specs=*)
-O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*)
func_quote_for_eval "$arg"
arg=$func_quote_for_eval_result
func_append compile_command " $arg"

View File

@ -3,7 +3,7 @@
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1996-2020 Free Software Foundation, Inc.
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify

View File

@ -102,8 +102,8 @@
/* Define to 1 if you have the `mallinfo' function. */
#undef HAVE_MALLINFO
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the <minix/config.h> header file. */
#undef HAVE_MINIX_CONFIG_H
/* Define to 1 if you have the `mkstemp' function. */
#undef HAVE_MKSTEMP
@ -147,6 +147,9 @@
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdio.h> header file. */
#undef HAVE_STDIO_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
@ -189,6 +192,9 @@
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to 1 if you have the <wchar.h> header file. */
#undef HAVE_WCHAR_H
/* Have the XCOMPOSITE X extension */
#undef HAVE_XCOMPOSITE
@ -263,7 +269,9 @@
*/
#undef SIZEOF_DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY
/* Define to 1 if you have the ANSI C header files. */
/* Define to 1 if all of the C90 standard headers exist (not just the ones
required in a freestanding environment). This macro is provided for
backward compatibility; new code need not use it. */
#undef STDC_HEADERS
/* Define to 1 if gmodule works and should be used */
@ -273,21 +281,87 @@
#ifndef _ALL_SOURCE
# undef _ALL_SOURCE
#endif
/* Enable general extensions on macOS. */
#ifndef _DARWIN_C_SOURCE
# undef _DARWIN_C_SOURCE
#endif
/* Enable general extensions on Solaris. */
#ifndef __EXTENSIONS__
# undef __EXTENSIONS__
#endif
/* Enable GNU extensions on systems that have them. */
#ifndef _GNU_SOURCE
# undef _GNU_SOURCE
#endif
/* Enable threading extensions on Solaris. */
/* Enable X/Open compliant socket functions that do not require linking
with -lxnet on HP-UX 11.11. */
#ifndef _HPUX_ALT_XOPEN_SOCKET_API
# undef _HPUX_ALT_XOPEN_SOCKET_API
#endif
/* Identify the host operating system as Minix.
This macro does not affect the system headers' behavior.
A future release of Autoconf may stop defining this macro. */
#ifndef _MINIX
# undef _MINIX
#endif
/* Enable general extensions on NetBSD.
Enable NetBSD compatibility extensions on Minix. */
#ifndef _NETBSD_SOURCE
# undef _NETBSD_SOURCE
#endif
/* Enable OpenBSD compatibility extensions on NetBSD.
Oddly enough, this does nothing on OpenBSD. */
#ifndef _OPENBSD_SOURCE
# undef _OPENBSD_SOURCE
#endif
/* Define to 1 if needed for POSIX-compatible behavior. */
#ifndef _POSIX_SOURCE
# undef _POSIX_SOURCE
#endif
/* Define to 2 if needed for POSIX-compatible behavior. */
#ifndef _POSIX_1_SOURCE
# undef _POSIX_1_SOURCE
#endif
/* Enable POSIX-compatible threading on Solaris. */
#ifndef _POSIX_PTHREAD_SEMANTICS
# undef _POSIX_PTHREAD_SEMANTICS
#endif
/* Enable extensions specified by ISO/IEC TS 18661-5:2014. */
#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
# undef __STDC_WANT_IEC_60559_ATTRIBS_EXT__
#endif
/* Enable extensions specified by ISO/IEC TS 18661-1:2014. */
#ifndef __STDC_WANT_IEC_60559_BFP_EXT__
# undef __STDC_WANT_IEC_60559_BFP_EXT__
#endif
/* Enable extensions specified by ISO/IEC TS 18661-2:2015. */
#ifndef __STDC_WANT_IEC_60559_DFP_EXT__
# undef __STDC_WANT_IEC_60559_DFP_EXT__
#endif
/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */
#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__
# undef __STDC_WANT_IEC_60559_FUNCS_EXT__
#endif
/* Enable extensions specified by ISO/IEC TS 18661-3:2015. */
#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__
# undef __STDC_WANT_IEC_60559_TYPES_EXT__
#endif
/* Enable extensions specified by ISO/IEC TR 24731-2:2010. */
#ifndef __STDC_WANT_LIB_EXT2__
# undef __STDC_WANT_LIB_EXT2__
#endif
/* Enable extensions specified by ISO/IEC 24747:2009. */
#ifndef __STDC_WANT_MATH_SPEC_FUNCS__
# undef __STDC_WANT_MATH_SPEC_FUNCS__
#endif
/* Enable extensions on HP NonStop. */
#ifndef _TANDEM_SOURCE
# undef _TANDEM_SOURCE
#endif
/* Enable general extensions on Solaris. */
#ifndef __EXTENSIONS__
# undef __EXTENSIONS__
/* Enable X/Open extensions. Define to 500 only if necessary
to make mbstate_t available. */
#ifndef _XOPEN_SOURCE
# undef _XOPEN_SOURCE
#endif
@ -303,11 +377,6 @@
/* Define to 1 if the X Window System is missing or not being used. */
#undef X_DISPLAY_MISSING
/* Enable large inode numbers on Mac OS X 10.5. */
#ifndef _DARWIN_USE_64_BIT_INODE
# define _DARWIN_USE_64_BIT_INODE 1
#endif
/* Number of bits in a file offset, on hosts where this is settable. */
#undef _FILE_OFFSET_BITS
@ -317,16 +386,6 @@
/* Define for large files, on AIX-style hosts. */
#undef _LARGE_FILES
/* Define to 1 if on MINIX. */
#undef _MINIX
/* Define to 2 if the system does not provide POSIX.1 features except with
this defined. */
#undef _POSIX_1_SOURCE
/* Define to 1 if you need to in order for `stat' and other things to work. */
#undef _POSIX_SOURCE
/* Define to `int' if <sys/types.h> doesn't define. */
#undef gid_t

View File

@ -273,7 +273,7 @@
#define PACKAGE_NAME "gtk+"
/* Define to the full name and version of this package. */
#define PACKAGE_STRING "gtk+ 3.24.33"
#define PACKAGE_STRING "gtk+ 3.24.34"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "gtk+"
@ -282,7 +282,7 @@
#define PACKAGE_URL ""
/* Define to the version of this package. */
#define PACKAGE_VERSION "3.24.33"
#define PACKAGE_VERSION "3.24.34"
/* Use NSBundle functions to determine load paths for libraries, translations,
etc. */

10900
configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -10,8 +10,8 @@
m4_define([gtk_major_version], [3])
m4_define([gtk_minor_version], [24])
m4_define([gtk_micro_version], [33])
m4_define([gtk_interface_age], [29])
m4_define([gtk_micro_version], [34])
m4_define([gtk_interface_age], [30])
m4_define([gtk_binary_age],
[m4_eval(100 * gtk_minor_version + gtk_micro_version)])
m4_define([gtk_version],

View File

@ -1,7 +1,7 @@
# Makefile.in generated by automake 1.16.2 from Makefile.am.
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -161,8 +161,6 @@ am__define_uniq_tagged_files = \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/Makefile.decl
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@ -228,6 +226,8 @@ CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
CPP_FOR_BUILD = @CPP_FOR_BUILD@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CUPS_API_MAJOR = @CUPS_API_MAJOR@
CUPS_API_MINOR = @CUPS_API_MINOR@
CUPS_CFLAGS = @CUPS_CFLAGS@
@ -250,6 +250,7 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_ON_X11 = @ENABLE_ON_X11@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
EXE_MANIFEST_ARCHITECTURE = @EXE_MANIFEST_ARCHITECTURE@
FGREP = @FGREP@
@ -636,7 +637,6 @@ cscopelist-am: $(am__tagged_files)
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am

View File

@ -1,7 +1,7 @@
# Makefile.in generated by automake 1.16.2 from Makefile.am.
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -351,8 +351,6 @@ am__define_uniq_tagged_files = \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/demos-sources.mak \
$(srcdir)/geninclude.pl.in $(top_srcdir)/Makefile.decl \
$(top_srcdir)/build-aux/depcomp \
@ -395,6 +393,8 @@ CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
CPP_FOR_BUILD = @CPP_FOR_BUILD@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CUPS_API_MAJOR = @CUPS_API_MAJOR@
CUPS_API_MINOR = @CUPS_API_MINOR@
CUPS_CFLAGS = @CUPS_CFLAGS@
@ -417,6 +417,7 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_ON_X11 = @ENABLE_ON_X11@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
EXE_MANIFEST_ARCHITECTURE = @EXE_MANIFEST_ARCHITECTURE@
FGREP = @FGREP@
@ -1230,7 +1231,6 @@ cscopelist-am: $(am__tagged_files)
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am
@ -1278,7 +1278,8 @@ installdirs:
done
install: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) install-am
install-exec: install-exec-am
install-exec: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) install-exec-am
install-data: install-data-am
uninstall: uninstall-am
@ -1536,7 +1537,7 @@ uninstall-am: uninstall-binPROGRAMS uninstall-dist_appsicon16DATA \
@$(NORMAL_INSTALL)
$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
.MAKE: all check check-am install install-am install-data-am \
install-strip uninstall-am
install-exec install-strip uninstall-am
.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am \
check-local clean clean-binPROGRAMS clean-generic \

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
# Makefile.in generated by automake 1.16.2 from Makefile.am.
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -243,8 +243,6 @@ am__define_uniq_tagged_files = \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in \
$(top_srcdir)/build-aux/depcomp \
$(top_srcdir)/win32/Makefile.msvcproj
@ -286,6 +284,8 @@ CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
CPP_FOR_BUILD = @CPP_FOR_BUILD@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CUPS_API_MAJOR = @CUPS_API_MAJOR@
CUPS_API_MINOR = @CUPS_API_MINOR@
CUPS_CFLAGS = @CUPS_CFLAGS@
@ -308,6 +308,7 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_ON_X11 = @ENABLE_ON_X11@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
EXE_MANIFEST_ARCHITECTURE = @EXE_MANIFEST_ARCHITECTURE@
FGREP = @FGREP@
@ -780,7 +781,6 @@ cscopelist-am: $(am__tagged_files)
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am
@ -827,7 +827,8 @@ installdirs:
done
install: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) install-am
install-exec: install-exec-am
install-exec: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) install-exec-am
install-data: install-data-am
uninstall: uninstall-am
@ -935,7 +936,7 @@ ps-am:
uninstall-am: uninstall-binPROGRAMS uninstall-dist_desktopDATA
.MAKE: all check install install-am install-strip
.MAKE: all check install install-am install-exec install-strip
.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
# Makefile.in generated by automake 1.16.2 from Makefile.am.
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -222,8 +222,6 @@ am__define_uniq_tagged_files = \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/Makefile.decl \
$(top_srcdir)/build-aux/depcomp
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@ -264,6 +262,8 @@ CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
CPP_FOR_BUILD = @CPP_FOR_BUILD@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CUPS_API_MAJOR = @CUPS_API_MAJOR@
CUPS_API_MINOR = @CUPS_API_MINOR@
CUPS_CFLAGS = @CUPS_CFLAGS@
@ -286,6 +286,7 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_ON_X11 = @ENABLE_ON_X11@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
EXE_MANIFEST_ARCHITECTURE = @EXE_MANIFEST_ARCHITECTURE@
FGREP = @FGREP@
@ -933,7 +934,6 @@ cscopelist-am: $(am__tagged_files)
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am
@ -978,7 +978,8 @@ installdirs:
done
install: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) install-am
install-exec: install-exec-am
install-exec: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) install-exec-am
install-data: install-data-am
uninstall: uninstall-am
@ -1089,7 +1090,7 @@ uninstall-am: uninstall-binPROGRAMS uninstall-dist_appsicon16DATA \
@$(NORMAL_INSTALL)
$(MAKE) $(AM_MAKEFLAGS) uninstall-hook
.MAKE: all check check-am install install-am install-data-am \
install-strip uninstall-am
install-exec install-strip uninstall-am
.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am \
check-local clean clean-binPROGRAMS clean-generic \

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
# Makefile.in generated by automake 1.16.2 from Makefile.am.
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -161,8 +161,6 @@ am__define_uniq_tagged_files = \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/Makefile.decl
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@ -228,6 +226,8 @@ CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
CPP_FOR_BUILD = @CPP_FOR_BUILD@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CUPS_API_MAJOR = @CUPS_API_MAJOR@
CUPS_API_MINOR = @CUPS_API_MINOR@
CUPS_CFLAGS = @CUPS_CFLAGS@
@ -250,6 +250,7 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_ON_X11 = @ENABLE_ON_X11@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
EXE_MANIFEST_ARCHITECTURE = @EXE_MANIFEST_ARCHITECTURE@
FGREP = @FGREP@
@ -639,7 +640,6 @@ cscopelist-am: $(am__tagged_files)
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am

View File

@ -1,7 +1,7 @@
# Makefile.in generated by automake 1.16.2 from Makefile.am.
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -161,8 +161,6 @@ am__define_uniq_tagged_files = \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/Makefile.decl
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@ -228,6 +226,8 @@ CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
CPP_FOR_BUILD = @CPP_FOR_BUILD@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CUPS_API_MAJOR = @CUPS_API_MAJOR@
CUPS_API_MINOR = @CUPS_API_MINOR@
CUPS_CFLAGS = @CUPS_CFLAGS@
@ -250,6 +250,7 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_ON_X11 = @ENABLE_ON_X11@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
EXE_MANIFEST_ARCHITECTURE = @EXE_MANIFEST_ARCHITECTURE@
FGREP = @FGREP@
@ -637,7 +638,6 @@ cscopelist-am: $(am__tagged_files)
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am

View File

@ -1,7 +1,7 @@
# Makefile.in generated by automake 1.16.2 from Makefile.am.
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -191,6 +191,8 @@ CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
CPP_FOR_BUILD = @CPP_FOR_BUILD@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CUPS_API_MAJOR = @CUPS_API_MAJOR@
CUPS_API_MINOR = @CUPS_API_MINOR@
CUPS_CFLAGS = @CUPS_CFLAGS@
@ -213,6 +215,7 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_ON_X11 = @ENABLE_ON_X11@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
EXE_MANIFEST_ARCHITECTURE = @EXE_MANIFEST_ARCHITECTURE@
FGREP = @FGREP@
@ -753,7 +756,6 @@ ctags CTAGS:
cscope cscopelist:
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am

View File

@ -571,23 +571,23 @@ compose <span class="type">GSettings</span> paths to store settings for this dev
15
16
17</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="n">GSettings</span> <span class="o">*</span>
<span class="nf">get_device_settings</span> <span class="p">(</span><span class="n">GdkDevice</span> <span class="o">*</span><span class="n">device</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">const</span> <span class="n">gchar</span> <span class="o">*</span><span class="n">vendor</span><span class="p">,</span> <span class="o">*</span><span class="n">product</span><span class="p">;</span>
<span class="n">GSettings</span> <span class="o">*</span><span class="n">settings</span><span class="p">;</span>
<span class="n">GdkDevice</span> <span class="o">*</span><span class="n">device</span><span class="p">;</span>
<span class="n">gchar</span> <span class="o">*</span><span class="n">path</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="n">GSettings</span><span class="w"> </span><span class="o">*</span><span class="w"></span>
<span class="nf">get_device_settings</span><span class="w"> </span><span class="p">(</span><span class="n">GdkDevice</span><span class="w"> </span><span class="o">*</span><span class="n">device</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="n">gchar</span><span class="w"> </span><span class="o">*</span><span class="n">vendor</span><span class="p">,</span><span class="w"> </span><span class="o">*</span><span class="n">product</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">GSettings</span><span class="w"> </span><span class="o">*</span><span class="n">settings</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">GdkDevice</span><span class="w"> </span><span class="o">*</span><span class="n">device</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">gchar</span><span class="w"> </span><span class="o">*</span><span class="n">path</span><span class="p">;</span><span class="w"></span>
<span class="n">vendor</span> <span class="o">=</span> <span class="n">gdk_device_get_vendor_id</span> <span class="p">(</span><span class="n">device</span><span class="p">);</span>
<span class="n">product</span> <span class="o">=</span> <span class="n">gdk_device_get_product_id</span> <span class="p">(</span><span class="n">device</span><span class="p">);</span>
<span class="w"> </span><span class="n">vendor</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gdk_device_get_vendor_id</span><span class="w"> </span><span class="p">(</span><span class="n">device</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">product</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gdk_device_get_product_id</span><span class="w"> </span><span class="p">(</span><span class="n">device</span><span class="p">);</span><span class="w"></span>
<span class="n">path</span> <span class="o">=</span> <span class="n">g_strdup_printf</span> <span class="p">(</span><span class="s">&quot;/org/example/app/devices/%s:%s/&quot;</span><span class="p">,</span> <span class="n">vendor</span><span class="p">,</span> <span class="n">product</span><span class="p">);</span>
<span class="n">settings</span> <span class="o">=</span> <span class="n">g_settings_new_with_path</span> <span class="p">(</span><span class="n">DEVICE_SCHEMA</span><span class="p">,</span> <span class="n">path</span><span class="p">);</span>
<span class="n">g_free</span> <span class="p">(</span><span class="n">path</span><span class="p">);</span>
<span class="w"> </span><span class="n">path</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">g_strdup_printf</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;/org/example/app/devices/%s:%s/&quot;</span><span class="p">,</span><span class="w"> </span><span class="n">vendor</span><span class="p">,</span><span class="w"> </span><span class="n">product</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">settings</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">g_settings_new_with_path</span><span class="w"> </span><span class="p">(</span><span class="n">DEVICE_SCHEMA</span><span class="p">,</span><span class="w"> </span><span class="n">path</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">g_free</span><span class="w"> </span><span class="p">(</span><span class="n">path</span><span class="p">);</span><span class="w"></span>
<span class="k">return</span> <span class="n">settings</span><span class="p">;</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">settings</span><span class="p">;</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -209,22 +209,22 @@ be “floating”, which means they are not attached to any virtual device.</p>
14
15
16</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">carlos</span><span class="err">@</span><span class="nl">sacarino</span><span class="p">:</span><span class="o">~</span><span class="n">$</span> <span class="n">xinput</span> <span class="n">list</span>
<span class="err"></span> <span class="n">Virtual</span> <span class="n">core</span> <span class="n">pointer</span> <span class="n">id</span><span class="o">=</span><span class="mi">2</span> <span class="p">[</span><span class="n">master</span> <span class="n">pointer</span> <span class="p">(</span><span class="mi">3</span><span class="p">)]</span>
<span class="err"></span> <span class="err"></span> <span class="n">Virtual</span> <span class="n">core</span> <span class="n">XTEST</span> <span class="n">pointer</span> <span class="n">id</span><span class="o">=</span><span class="mi">4</span> <span class="p">[</span><span class="n">slave</span> <span class="n">pointer</span> <span class="p">(</span><span class="mi">2</span><span class="p">)]</span>
<span class="err"></span> <span class="err"></span> <span class="n">Wacom</span> <span class="n">ISDv4</span> <span class="n">E6</span> <span class="n">Pen</span> <span class="n">stylus</span> <span class="n">id</span><span class="o">=</span><span class="mi">10</span> <span class="p">[</span><span class="n">slave</span> <span class="n">pointer</span> <span class="p">(</span><span class="mi">2</span><span class="p">)]</span>
<span class="err"></span> <span class="err"></span> <span class="n">Wacom</span> <span class="n">ISDv4</span> <span class="n">E6</span> <span class="n">Finger</span> <span class="n">touch</span> <span class="n">id</span><span class="o">=</span><span class="mi">11</span> <span class="p">[</span><span class="n">slave</span> <span class="n">pointer</span> <span class="p">(</span><span class="mi">2</span><span class="p">)]</span>
<span class="err"></span> <span class="err"></span> <span class="n">SynPS</span><span class="o">/</span><span class="mi">2</span> <span class="n">Synaptics</span> <span class="n">TouchPad</span> <span class="n">id</span><span class="o">=</span><span class="mi">13</span> <span class="p">[</span><span class="n">slave</span> <span class="n">pointer</span> <span class="p">(</span><span class="mi">2</span><span class="p">)]</span>
<span class="err"></span> <span class="err"></span> <span class="n">TPPS</span><span class="o">/</span><span class="mi">2</span> <span class="n">IBM</span> <span class="n">TrackPoint</span> <span class="n">id</span><span class="o">=</span><span class="mi">14</span> <span class="p">[</span><span class="n">slave</span> <span class="n">pointer</span> <span class="p">(</span><span class="mi">2</span><span class="p">)]</span>
<span class="err"></span> <span class="err"></span> <span class="n">Wacom</span> <span class="n">ISDv4</span> <span class="n">E6</span> <span class="n">Pen</span> <span class="n">eraser</span> <span class="n">id</span><span class="o">=</span><span class="mi">16</span> <span class="p">[</span><span class="n">slave</span> <span class="n">pointer</span> <span class="p">(</span><span class="mi">2</span><span class="p">)]</span>
<span class="err"></span> <span class="n">Virtual</span> <span class="n">core</span> <span class="n">keyboard</span> <span class="n">id</span><span class="o">=</span><span class="mi">3</span> <span class="p">[</span><span class="n">master</span> <span class="n">keyboard</span> <span class="p">(</span><span class="mi">2</span><span class="p">)]</span>
<span class="err"></span> <span class="n">Virtual</span> <span class="n">core</span> <span class="n">XTEST</span> <span class="n">keyboard</span> <span class="n">id</span><span class="o">=</span><span class="mi">5</span> <span class="p">[</span><span class="n">slave</span> <span class="n">keyboard</span> <span class="p">(</span><span class="mi">3</span><span class="p">)]</span>
<span class="err"></span> <span class="n">Power</span> <span class="n">Button</span> <span class="n">id</span><span class="o">=</span><span class="mi">6</span> <span class="p">[</span><span class="n">slave</span> <span class="n">keyboard</span> <span class="p">(</span><span class="mi">3</span><span class="p">)]</span>
<span class="err"></span> <span class="n">Video</span> <span class="n">Bus</span> <span class="n">id</span><span class="o">=</span><span class="mi">7</span> <span class="p">[</span><span class="n">slave</span> <span class="n">keyboard</span> <span class="p">(</span><span class="mi">3</span><span class="p">)]</span>
<span class="err"></span> <span class="n">Sleep</span> <span class="n">Button</span> <span class="n">id</span><span class="o">=</span><span class="mi">8</span> <span class="p">[</span><span class="n">slave</span> <span class="n">keyboard</span> <span class="p">(</span><span class="mi">3</span><span class="p">)]</span>
<span class="err"></span> <span class="n">Integrated</span> <span class="n">Camera</span> <span class="n">id</span><span class="o">=</span><span class="mi">9</span> <span class="p">[</span><span class="n">slave</span> <span class="n">keyboard</span> <span class="p">(</span><span class="mi">3</span><span class="p">)]</span>
<span class="err"></span> <span class="n">AT</span> <span class="n">Translated</span> <span class="n">Set</span> <span class="mi">2</span> <span class="n">keyboard</span> <span class="n">id</span><span class="o">=</span><span class="mi">12</span> <span class="p">[</span><span class="n">slave</span> <span class="n">keyboard</span> <span class="p">(</span><span class="mi">3</span><span class="p">)]</span>
<span class="err"></span> <span class="n">ThinkPad</span> <span class="n">Extra</span> <span class="n">Buttons</span> <span class="n">id</span><span class="o">=</span><span class="mi">15</span> <span class="p">[</span><span class="n">slave</span> <span class="n">keyboard</span> <span class="p">(</span><span class="mi">3</span><span class="p">)]</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">carlos</span><span class="err">@</span><span class="n">sacarino</span><span class="o">:~</span><span class="n">$</span><span class="w"> </span><span class="n">xinput</span><span class="w"> </span><span class="n">list</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="n">Virtual</span><span class="w"> </span><span class="n">core</span><span class="w"> </span><span class="n">pointer</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">2</span><span class="w"> </span><span class="p">[</span><span class="n">master</span><span class="w"> </span><span class="n">pointer</span><span class="w"> </span><span class="p">(</span><span class="mi">3</span><span class="p">)]</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err"></span><span class="w"> </span><span class="n">Virtual</span><span class="w"> </span><span class="n">core</span><span class="w"> </span><span class="n">XTEST</span><span class="w"> </span><span class="n">pointer</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">4</span><span class="w"> </span><span class="p">[</span><span class="n">slave</span><span class="w"> </span><span class="n">pointer</span><span class="w"> </span><span class="p">(</span><span class="mi">2</span><span class="p">)]</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err"></span><span class="w"> </span><span class="n">Wacom</span><span class="w"> </span><span class="n">ISDv4</span><span class="w"> </span><span class="n">E6</span><span class="w"> </span><span class="n">Pen</span><span class="w"> </span><span class="n">stylus</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">10</span><span class="w"> </span><span class="p">[</span><span class="n">slave</span><span class="w"> </span><span class="n">pointer</span><span class="w"> </span><span class="p">(</span><span class="mi">2</span><span class="p">)]</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err"></span><span class="w"> </span><span class="n">Wacom</span><span class="w"> </span><span class="n">ISDv4</span><span class="w"> </span><span class="n">E6</span><span class="w"> </span><span class="n">Finger</span><span class="w"> </span><span class="n">touch</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">11</span><span class="w"> </span><span class="p">[</span><span class="n">slave</span><span class="w"> </span><span class="n">pointer</span><span class="w"> </span><span class="p">(</span><span class="mi">2</span><span class="p">)]</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err"></span><span class="w"> </span><span class="n">SynPS</span><span class="o">/</span><span class="mi">2</span><span class="w"> </span><span class="n">Synaptics</span><span class="w"> </span><span class="n">TouchPad</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">13</span><span class="w"> </span><span class="p">[</span><span class="n">slave</span><span class="w"> </span><span class="n">pointer</span><span class="w"> </span><span class="p">(</span><span class="mi">2</span><span class="p">)]</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err"></span><span class="w"> </span><span class="n">TPPS</span><span class="o">/</span><span class="mi">2</span><span class="w"> </span><span class="n">IBM</span><span class="w"> </span><span class="n">TrackPoint</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">14</span><span class="w"> </span><span class="p">[</span><span class="n">slave</span><span class="w"> </span><span class="n">pointer</span><span class="w"> </span><span class="p">(</span><span class="mi">2</span><span class="p">)]</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err"></span><span class="w"> </span><span class="n">Wacom</span><span class="w"> </span><span class="n">ISDv4</span><span class="w"> </span><span class="n">E6</span><span class="w"> </span><span class="n">Pen</span><span class="w"> </span><span class="n">eraser</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">16</span><span class="w"> </span><span class="p">[</span><span class="n">slave</span><span class="w"> </span><span class="n">pointer</span><span class="w"> </span><span class="p">(</span><span class="mi">2</span><span class="p">)]</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="n">Virtual</span><span class="w"> </span><span class="n">core</span><span class="w"> </span><span class="n">keyboard</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">3</span><span class="w"> </span><span class="p">[</span><span class="n">master</span><span class="w"> </span><span class="n">keyboard</span><span class="w"> </span><span class="p">(</span><span class="mi">2</span><span class="p">)]</span><span class="w"></span>
<span class="w"> </span><span class="err"></span><span class="w"> </span><span class="n">Virtual</span><span class="w"> </span><span class="n">core</span><span class="w"> </span><span class="n">XTEST</span><span class="w"> </span><span class="n">keyboard</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">5</span><span class="w"> </span><span class="p">[</span><span class="n">slave</span><span class="w"> </span><span class="n">keyboard</span><span class="w"> </span><span class="p">(</span><span class="mi">3</span><span class="p">)]</span><span class="w"></span>
<span class="w"> </span><span class="err"></span><span class="w"> </span><span class="n">Power</span><span class="w"> </span><span class="n">Button</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">6</span><span class="w"> </span><span class="p">[</span><span class="n">slave</span><span class="w"> </span><span class="n">keyboard</span><span class="w"> </span><span class="p">(</span><span class="mi">3</span><span class="p">)]</span><span class="w"></span>
<span class="w"> </span><span class="err"></span><span class="w"> </span><span class="n">Video</span><span class="w"> </span><span class="n">Bus</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">7</span><span class="w"> </span><span class="p">[</span><span class="n">slave</span><span class="w"> </span><span class="n">keyboard</span><span class="w"> </span><span class="p">(</span><span class="mi">3</span><span class="p">)]</span><span class="w"></span>
<span class="w"> </span><span class="err"></span><span class="w"> </span><span class="n">Sleep</span><span class="w"> </span><span class="n">Button</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">8</span><span class="w"> </span><span class="p">[</span><span class="n">slave</span><span class="w"> </span><span class="n">keyboard</span><span class="w"> </span><span class="p">(</span><span class="mi">3</span><span class="p">)]</span><span class="w"></span>
<span class="w"> </span><span class="err"></span><span class="w"> </span><span class="n">Integrated</span><span class="w"> </span><span class="n">Camera</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">9</span><span class="w"> </span><span class="p">[</span><span class="n">slave</span><span class="w"> </span><span class="n">keyboard</span><span class="w"> </span><span class="p">(</span><span class="mi">3</span><span class="p">)]</span><span class="w"></span>
<span class="w"> </span><span class="err"></span><span class="w"> </span><span class="n">AT</span><span class="w"> </span><span class="n">Translated</span><span class="w"> </span><span class="n">Set</span><span class="w"> </span><span class="mi">2</span><span class="w"> </span><span class="n">keyboard</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">12</span><span class="w"> </span><span class="p">[</span><span class="n">slave</span><span class="w"> </span><span class="n">keyboard</span><span class="w"> </span><span class="p">(</span><span class="mi">3</span><span class="p">)]</span><span class="w"></span>
<span class="w"> </span><span class="err"></span><span class="w"> </span><span class="n">ThinkPad</span><span class="w"> </span><span class="n">Extra</span><span class="w"> </span><span class="n">Buttons</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="mi">15</span><span class="w"> </span><span class="p">[</span><span class="n">slave</span><span class="w"> </span><span class="n">keyboard</span><span class="w"> </span><span class="p">(</span><span class="mi">3</span><span class="p">)]</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -180,20 +180,20 @@ macros like <code class="function">GDK_IS_X11_DISPLAY()</code> to find out which
14
15</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="cp">#ifdef GDK_WINDOWING_X11</span>
<span class="k">if</span> <span class="p">(</span><span class="n">GDK_IS_X11_DISPLAY</span> <span class="p">(</span><span class="n">display</span><span class="p">))</span>
<span class="p">{</span>
<span class="c1">// make X11-specific calls here</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">GDK_IS_X11_DISPLAY</span><span class="w"> </span><span class="p">(</span><span class="n">display</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// make X11-specific calls here</span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="cp">#endif</span>
<span class="cp">#ifdef GDK_WINDOWING_QUARTZ</span>
<span class="k">if</span> <span class="p">(</span><span class="n">GDK_IS_QUARTZ_DISPLAY</span> <span class="p">(</span><span class="n">display</span><span class="p">))</span>
<span class="p">{</span>
<span class="c1">// make Quartz-specific calls here</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">GDK_IS_QUARTZ_DISPLAY</span><span class="w"> </span><span class="p">(</span><span class="n">display</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// make Quartz-specific calls here</span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="cp">#endif</span>
<span class="n">g_error</span> <span class="p">(</span><span class="s">&quot;Unsupported GDK backend&quot;</span><span class="p">);</span></pre></td>
<span class="w"> </span><span class="n">g_error</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;Unsupported GDK backend&quot;</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -282,7 +282,7 @@ want to draw with is the current one before issuing commands:</p>
<tbody>
<tr>
<td class="listing_lines" align="right"><pre>1</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">gdk_gl_context_make_current</span> <span class="p">(</span><span class="n">context</span><span class="p">);</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">gdk_gl_context_make_current</span><span class="w"> </span><span class="p">(</span><span class="n">context</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -164,17 +164,17 @@ screen or workspace.</p>
9
10
11</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GdkAppLaunchContext</span> <span class="o">*</span><span class="n">context</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GdkAppLaunchContext</span><span class="w"> </span><span class="o">*</span><span class="n">context</span><span class="p">;</span><span class="w"></span>
<span class="n">context</span> <span class="o">=</span> <span class="n">gdk_display_get_app_launch_context</span> <span class="p">(</span><span class="n">display</span><span class="p">);</span>
<span class="n">context</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gdk_display_get_app_launch_context</span><span class="w"> </span><span class="p">(</span><span class="n">display</span><span class="p">);</span><span class="w"></span>
<span class="n">gdk_app_launch_context_set_screen</span> <span class="p">(</span><span class="n">screen</span><span class="p">);</span>
<span class="n">gdk_app_launch_context_set_timestamp</span> <span class="p">(</span><span class="n">event</span><span class="o">-&gt;</span><span class="n">time</span><span class="p">);</span>
<span class="n">gdk_app_launch_context_set_screen</span><span class="w"> </span><span class="p">(</span><span class="n">screen</span><span class="p">);</span><span class="w"></span>
<span class="n">gdk_app_launch_context_set_timestamp</span><span class="w"> </span><span class="p">(</span><span class="n">event</span><span class="o">-&gt;</span><span class="n">time</span><span class="p">);</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">g_app_info_launch_default_for_uri</span> <span class="p">(</span><span class="s">&quot;http://www.gtk.org&quot;</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">error</span><span class="p">))</span>
<span class="n">g_warning</span> <span class="p">(</span><span class="s">&quot;Launching failed: %s</span><span class="se">\n</span><span class="s">&quot;</span><span class="p">,</span> <span class="n">error</span><span class="o">-&gt;</span><span class="n">message</span><span class="p">);</span>
<span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="o">!</span><span class="n">g_app_info_launch_default_for_uri</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;http://www.gtk.org&quot;</span><span class="p">,</span><span class="w"> </span><span class="n">context</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">error</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="n">g_warning</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;Launching failed: %s</span><span class="se">\n</span><span class="s">&quot;</span><span class="p">,</span><span class="w"> </span><span class="n">error</span><span class="o">-&gt;</span><span class="n">message</span><span class="p">);</span><span class="w"></span>
<span class="n">g_object_unref</span> <span class="p">(</span><span class="n">context</span><span class="p">);</span></pre></td>
<span class="n">g_object_unref</span><span class="w"> </span><span class="p">(</span><span class="n">context</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -273,16 +273,16 @@ use:</p>
8
9
10</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="kt">int</span> <span class="n">scale</span> <span class="o">=</span> <span class="n">gdk_window_get_scale_factor</span> <span class="p">(</span><span class="n">window</span><span class="p">);</span>
<span class="kt">int</span> <span class="n">width</span> <span class="o">=</span> <span class="n">gdk_window_get_width</span> <span class="p">(</span><span class="n">window</span><span class="p">)</span> <span class="o">*</span> <span class="n">scale</span><span class="p">;</span>
<span class="kt">int</span> <span class="n">height</span> <span class="o">=</span> <span class="n">gdk_window_get_height</span> <span class="p">(</span><span class="n">window</span><span class="p">)</span> <span class="o">*</span> <span class="n">scale</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="kt">int</span><span class="w"> </span><span class="n">scale</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gdk_window_get_scale_factor</span><span class="w"> </span><span class="p">(</span><span class="n">window</span><span class="p">);</span><span class="w"></span>
<span class="kt">int</span><span class="w"> </span><span class="n">width</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gdk_window_get_width</span><span class="w"> </span><span class="p">(</span><span class="n">window</span><span class="p">)</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">scale</span><span class="p">;</span><span class="w"></span>
<span class="kt">int</span><span class="w"> </span><span class="n">height</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gdk_window_get_height</span><span class="w"> </span><span class="p">(</span><span class="n">window</span><span class="p">)</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">scale</span><span class="p">;</span><span class="w"></span>
<span class="c1">// format is set elsewhere</span>
<span class="n">cairo_surface_t</span> <span class="o">*</span><span class="n">surface</span> <span class="o">=</span>
<span class="n">gdk_window_create_similar_image_surface</span> <span class="p">(</span><span class="n">window</span><span class="p">,</span>
<span class="n">format</span><span class="p">,</span>
<span class="n">width</span><span class="p">,</span> <span class="n">height</span><span class="p">,</span>
<span class="n">scale</span><span class="p">);</span></pre></td>
<span class="n">cairo_surface_t</span><span class="w"> </span><span class="o">*</span><span class="n">surface</span><span class="w"> </span><span class="o">=</span><span class="w"></span>
<span class="w"> </span><span class="n">gdk_window_create_similar_image_surface</span><span class="w"> </span><span class="p">(</span><span class="n">window</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">format</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">width</span><span class="p">,</span><span class="w"> </span><span class="n">height</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">scale</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -206,10 +206,10 @@ event it is:</p>
2
3
4</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GdkEvent</span> <span class="o">*</span><span class="n">event</span><span class="p">;</span>
<span class="n">GdkEventType</span> <span class="n">type</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GdkEvent</span><span class="w"> </span><span class="o">*</span><span class="n">event</span><span class="p">;</span><span class="w"></span>
<span class="n">GdkEventType</span><span class="w"> </span><span class="n">type</span><span class="p">;</span><span class="w"></span>
<span class="n">type</span> <span class="o">=</span> <span class="n">event</span><span class="o">-&gt;</span><span class="n">type</span><span class="p">;</span></pre></td>
<span class="n">type</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">event</span><span class="o">-&gt;</span><span class="n">type</span><span class="p">;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -228,10 +228,10 @@ then the x coordinate of the button press can be accessed with:</p>
2
3
4</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GdkEvent</span> <span class="o">*</span><span class="n">event</span><span class="p">;</span>
<span class="n">gdouble</span> <span class="n">x</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GdkEvent</span><span class="w"> </span><span class="o">*</span><span class="n">event</span><span class="p">;</span><span class="w"></span>
<span class="n">gdouble</span><span class="w"> </span><span class="n">x</span><span class="p">;</span><span class="w"></span>
<span class="n">x</span> <span class="o">=</span> <span class="p">((</span><span class="n">GdkEventButton</span><span class="o">*</span><span class="p">)</span><span class="n">event</span><span class="p">)</span><span class="o">-&gt;</span><span class="n">x</span><span class="p">;</span></pre></td>
<span class="n">x</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">((</span><span class="n">GdkEventButton</span><span class="o">*</span><span class="p">)</span><span class="n">event</span><span class="p">)</span><span class="o">-&gt;</span><span class="n">x</span><span class="p">;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -247,10 +247,10 @@ or:</p>
2
3
4</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GdkEvent</span> <span class="o">*</span><span class="n">event</span><span class="p">;</span>
<span class="n">gdouble</span> <span class="n">x</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GdkEvent</span><span class="w"> </span><span class="o">*</span><span class="n">event</span><span class="p">;</span><span class="w"></span>
<span class="n">gdouble</span><span class="w"> </span><span class="n">x</span><span class="p">;</span><span class="w"></span>
<span class="n">x</span> <span class="o">=</span> <span class="n">event</span><span class="o">-&gt;</span><span class="n">button</span><span class="p">.</span><span class="n">x</span><span class="p">;</span></pre></td>
<span class="n">x</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">event</span><span class="o">-&gt;</span><span class="n">button</span><span class="p">.</span><span class="n">x</span><span class="p">;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -911,33 +911,33 @@ should check the return value of this function, or of
25
26
27</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GdkScrollDirection</span> <span class="n">direction</span><span class="p">;</span>
<span class="kt">double</span> <span class="n">vscroll_factor</span> <span class="o">=</span> <span class="mf">0.0</span><span class="p">;</span>
<span class="kt">double</span> <span class="n">x_scroll</span><span class="p">,</span> <span class="n">y_scroll</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GdkScrollDirection</span><span class="w"> </span><span class="n">direction</span><span class="p">;</span><span class="w"></span>
<span class="kt">double</span><span class="w"> </span><span class="n">vscroll_factor</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">0.0</span><span class="p">;</span><span class="w"></span>
<span class="kt">double</span><span class="w"> </span><span class="n">x_scroll</span><span class="p">,</span><span class="w"> </span><span class="n">y_scroll</span><span class="p">;</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="n">gdk_event_get_scroll_direction</span> <span class="p">(</span><span class="n">event</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">direction</span><span class="p">))</span>
<span class="p">{</span>
<span class="c1">// Handle discrete scrolling with a known constant delta;</span>
<span class="k">const</span> <span class="kt">double</span> <span class="n">delta</span> <span class="o">=</span> <span class="mf">12.0</span><span class="p">;</span>
<span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">gdk_event_get_scroll_direction</span><span class="w"> </span><span class="p">(</span><span class="n">event</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">direction</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// Handle discrete scrolling with a known constant delta;</span>
<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">delta</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">12.0</span><span class="p">;</span><span class="w"></span>
<span class="k">switch</span> <span class="p">(</span><span class="n">direction</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">case</span> <span class="nl">GDK_SCROLL_UP</span><span class="p">:</span>
<span class="n">vscroll_factor</span> <span class="o">=</span> <span class="o">-</span><span class="n">delta</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="nl">GDK_SCROLL_DOWN</span><span class="p">:</span>
<span class="n">vscroll_factor</span> <span class="o">=</span> <span class="n">delta</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">default</span><span class="o">:</span>
<span class="c1">// no scrolling</span>
<span class="k">break</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="n">gdk_event_get_scroll_deltas</span> <span class="p">(</span><span class="n">event</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">x_scroll</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">y_scroll</span><span class="p">))</span>
<span class="p">{</span>
<span class="c1">// Handle smooth scrolling directly</span>
<span class="n">vscroll_factor</span> <span class="o">=</span> <span class="n">y_scroll</span><span class="p">;</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="k">switch</span><span class="w"> </span><span class="p">(</span><span class="n">direction</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="k">case</span><span class="w"> </span><span class="nl">GDK_SCROLL_UP</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="n">vscroll_factor</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="o">-</span><span class="n">delta</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="k">case</span><span class="w"> </span><span class="nl">GDK_SCROLL_DOWN</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="n">vscroll_factor</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">delta</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="k">default</span><span class="o">:</span><span class="w"></span>
<span class="w"> </span><span class="c1">// no scrolling</span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="k">else</span><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">gdk_event_get_scroll_deltas</span><span class="w"> </span><span class="p">(</span><span class="n">event</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">x_scroll</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">y_scroll</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// Handle smooth scrolling directly</span>
<span class="w"> </span><span class="n">vscroll_factor</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">y_scroll</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -1226,13 +1226,13 @@ motion events from a <a class="link" href="gdk3-Events.html#GDK-MOTION-NOTIFY:CA
5
6
7</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="p">{</span>
<span class="c1">// motion_event handler</span>
<span class="n">x</span> <span class="o">=</span> <span class="n">motion_event</span><span class="o">-&gt;</span><span class="n">x</span><span class="p">;</span>
<span class="n">y</span> <span class="o">=</span> <span class="n">motion_event</span><span class="o">-&gt;</span><span class="n">y</span><span class="p">;</span>
<span class="c1">// handle (x,y) motion</span>
<span class="n">gdk_event_request_motions</span> <span class="p">(</span><span class="n">motion_event</span><span class="p">);</span> <span class="c1">// handles is_hint events</span>
<span class="p">}</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// motion_event handler</span>
<span class="w"> </span><span class="n">x</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">motion_event</span><span class="o">-&gt;</span><span class="n">x</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">y</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">motion_event</span><span class="o">-&gt;</span><span class="n">y</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="c1">// handle (x,y) motion</span>
<span class="w"> </span><span class="n">gdk_event_request_motions</span><span class="w"> </span><span class="p">(</span><span class="n">motion_event</span><span class="p">);</span><span class="w"> </span><span class="c1">// handles is_hint events</span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -527,7 +527,7 @@ work with certain GDK backends.</p>
<tbody>
<tr>
<td class="listing_lines" align="right"><pre>1</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">gdk_set_allowed_backends</span> <span class="p">(</span><span class="s">&quot;wayland,quartz,*&quot;</span><span class="p">);</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">gdk_set_allowed_backends</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;wayland,quartz,*&quot;</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -1002,15 +1002,15 @@ on only a single display.</p>
7
8
9</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">gdk_error_trap_push</span> <span class="p">();</span>
<td class="listing_code"><pre class="programlisting"><span class="n">gdk_error_trap_push</span><span class="w"> </span><span class="p">();</span><span class="w"></span>
<span class="c1">// ... Call the X function which may cause an error here ...</span>
<span class="w"> </span><span class="c1">// ... Call the X function which may cause an error here ...</span>
<span class="k">if</span> <span class="p">(</span><span class="n">gdk_error_trap_pop</span> <span class="p">())</span>
<span class="p">{</span>
<span class="c1">// ... Handle the error here ...</span>
<span class="p">}</span></pre></td>
<span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">gdk_error_trap_pop</span><span class="w"> </span><span class="p">())</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// ... Handle the error here ...</span>
<span class="w"> </span><span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -485,12 +485,12 @@ the <code class="literal">plus</code> symbol is shifted, so when comparing a key
8</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="c1">// We want to ignore irrelevant modifiers like ScrollLock</span>
<span class="cp">#define ALL_ACCELS_MASK (GDK_CONTROL_MASK | GDK_SHIFT_MASK | GDK_MOD1_MASK)</span>
<span class="n">gdk_keymap_translate_keyboard_state</span> <span class="p">(</span><span class="n">keymap</span><span class="p">,</span> <span class="n">event</span><span class="o">-&gt;</span><span class="n">hardware_keycode</span><span class="p">,</span>
<span class="n">event</span><span class="o">-&gt;</span><span class="n">state</span><span class="p">,</span> <span class="n">event</span><span class="o">-&gt;</span><span class="n">group</span><span class="p">,</span>
<span class="o">&amp;</span><span class="n">keyval</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">consumed</span><span class="p">);</span>
<span class="k">if</span> <span class="p">(</span><span class="n">keyval</span> <span class="o">==</span> <span class="n">GDK_PLUS</span> <span class="o">&amp;&amp;</span>
<span class="p">(</span><span class="n">event</span><span class="o">-&gt;</span><span class="n">state</span> <span class="o">&amp;</span> <span class="o">~</span><span class="n">consumed</span> <span class="o">&amp;</span> <span class="n">ALL_ACCELS_MASK</span><span class="p">)</span> <span class="o">==</span> <span class="n">GDK_CONTROL_MASK</span><span class="p">)</span>
<span class="c1">// Control was pressed</span></pre></td>
<span class="n">gdk_keymap_translate_keyboard_state</span><span class="w"> </span><span class="p">(</span><span class="n">keymap</span><span class="p">,</span><span class="w"> </span><span class="n">event</span><span class="o">-&gt;</span><span class="n">hardware_keycode</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">event</span><span class="o">-&gt;</span><span class="n">state</span><span class="p">,</span><span class="w"> </span><span class="n">event</span><span class="o">-&gt;</span><span class="n">group</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="o">&amp;</span><span class="n">keyval</span><span class="p">,</span><span class="w"> </span><span class="nb">NULL</span><span class="p">,</span><span class="w"> </span><span class="nb">NULL</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">consumed</span><span class="p">);</span><span class="w"></span>
<span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">keyval</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">GDK_PLUS</span><span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"></span>
<span class="w"> </span><span class="p">(</span><span class="n">event</span><span class="o">-&gt;</span><span class="n">state</span><span class="w"> </span><span class="o">&amp;</span><span class="w"> </span><span class="o">~</span><span class="n">consumed</span><span class="w"> </span><span class="o">&amp;</span><span class="w"> </span><span class="n">ALL_ACCELS_MASK</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">GDK_CONTROL_MASK</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="c1">// Control was pressed</span></pre></td>
</tr>
</tbody>
</table>
@ -511,9 +511,9 @@ modifiers, by doing:</p>
3
4</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="c1">// XXX Dont do this XXX</span>
<span class="k">if</span> <span class="p">(</span><span class="n">keyval</span> <span class="o">==</span> <span class="n">accel_keyval</span> <span class="o">&amp;&amp;</span>
<span class="p">(</span><span class="n">event</span><span class="o">-&gt;</span><span class="n">state</span> <span class="o">&amp;</span> <span class="o">~</span><span class="n">consumed</span> <span class="o">&amp;</span> <span class="n">ALL_ACCELS_MASK</span><span class="p">)</span> <span class="o">==</span> <span class="p">(</span><span class="n">accel_mods</span> <span class="o">&amp;</span> <span class="o">~</span><span class="n">consumed</span><span class="p">))</span>
<span class="c1">// Accelerator was pressed</span></pre></td>
<span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">keyval</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">accel_keyval</span><span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"></span>
<span class="w"> </span><span class="p">(</span><span class="n">event</span><span class="o">-&gt;</span><span class="n">state</span><span class="w"> </span><span class="o">&amp;</span><span class="w"> </span><span class="o">~</span><span class="n">consumed</span><span class="w"> </span><span class="o">&amp;</span><span class="w"> </span><span class="n">ALL_ACCELS_MASK</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="p">(</span><span class="n">accel_mods</span><span class="w"> </span><span class="o">&amp;</span><span class="w"> </span><span class="o">~</span><span class="n">consumed</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="c1">// Accelerator was pressed</span></pre></td>
</tr>
</tbody>
</table>

View File

@ -177,64 +177,64 @@ you can also draw pieces of the layout with <code class="function">pango_cairo_s
<span class="cp">#define N_WORDS 10</span>
<span class="cp">#define FONT &quot;Sans Bold 18&quot;</span>
<span class="n">PangoContext</span> <span class="o">*</span><span class="n">context</span><span class="p">;</span>
<span class="n">PangoLayout</span> <span class="o">*</span><span class="n">layout</span><span class="p">;</span>
<span class="n">PangoFontDescription</span> <span class="o">*</span><span class="n">desc</span><span class="p">;</span>
<span class="n">PangoContext</span><span class="w"> </span><span class="o">*</span><span class="n">context</span><span class="p">;</span><span class="w"></span>
<span class="n">PangoLayout</span><span class="w"> </span><span class="o">*</span><span class="n">layout</span><span class="p">;</span><span class="w"></span>
<span class="n">PangoFontDescription</span><span class="w"> </span><span class="o">*</span><span class="n">desc</span><span class="p">;</span><span class="w"></span>
<span class="kt">double</span> <span class="n">radius</span><span class="p">;</span>
<span class="kt">int</span> <span class="n">width</span><span class="p">,</span> <span class="n">height</span><span class="p">;</span>
<span class="kt">int</span> <span class="n">i</span><span class="p">;</span>
<span class="kt">double</span><span class="w"> </span><span class="n">radius</span><span class="p">;</span><span class="w"></span>
<span class="kt">int</span><span class="w"> </span><span class="n">width</span><span class="p">,</span><span class="w"> </span><span class="n">height</span><span class="p">;</span><span class="w"></span>
<span class="kt">int</span><span class="w"> </span><span class="n">i</span><span class="p">;</span><span class="w"></span>
<span class="c1">// Set up a transformation matrix so that the user space coordinates for</span>
<span class="c1">// where we are drawing are [-RADIUS, RADIUS], [-RADIUS, RADIUS]</span>
<span class="c1">// We first center, then change the scale</span>
<span class="n">width</span> <span class="o">=</span> <span class="n">gdk_window_get_width</span> <span class="p">(</span><span class="n">window</span><span class="p">);</span>
<span class="n">height</span> <span class="o">=</span> <span class="n">gdk_window_get_height</span> <span class="p">(</span><span class="n">window</span><span class="p">);</span>
<span class="n">radius</span> <span class="o">=</span> <span class="n">MIN</span> <span class="p">(</span><span class="n">width</span><span class="p">,</span> <span class="n">height</span><span class="p">)</span> <span class="o">/</span> <span class="mf">2.</span><span class="p">;</span>
<span class="n">width</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gdk_window_get_width</span><span class="w"> </span><span class="p">(</span><span class="n">window</span><span class="p">);</span><span class="w"></span>
<span class="n">height</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gdk_window_get_height</span><span class="w"> </span><span class="p">(</span><span class="n">window</span><span class="p">);</span><span class="w"></span>
<span class="n">radius</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">MIN</span><span class="w"> </span><span class="p">(</span><span class="n">width</span><span class="p">,</span><span class="w"> </span><span class="n">height</span><span class="p">)</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="mf">2.</span><span class="p">;</span><span class="w"></span>
<span class="n">cairo_translate</span> <span class="p">(</span><span class="n">cr</span><span class="p">,</span>
<span class="n">radius</span> <span class="o">+</span> <span class="p">(</span><span class="n">width</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">radius</span><span class="p">)</span> <span class="o">/</span> <span class="mi">2</span><span class="p">,</span>
<span class="n">radius</span> <span class="o">+</span> <span class="p">(</span><span class="n">height</span> <span class="o">-</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">radius</span><span class="p">)</span> <span class="o">/</span> <span class="mi">2</span><span class="p">);</span>
<span class="n">cairo_scale</span> <span class="p">(</span><span class="n">cr</span><span class="p">,</span> <span class="n">radius</span> <span class="o">/</span> <span class="n">RADIUS</span><span class="p">,</span> <span class="n">radius</span> <span class="o">/</span> <span class="n">RADIUS</span><span class="p">);</span>
<span class="n">cairo_translate</span><span class="w"> </span><span class="p">(</span><span class="n">cr</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">radius</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="p">(</span><span class="n">width</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mi">2</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">radius</span><span class="p">)</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="mi">2</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">radius</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="p">(</span><span class="n">height</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mi">2</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">radius</span><span class="p">)</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="mi">2</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">cairo_scale</span><span class="w"> </span><span class="p">(</span><span class="n">cr</span><span class="p">,</span><span class="w"> </span><span class="n">radius</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="n">RADIUS</span><span class="p">,</span><span class="w"> </span><span class="n">radius</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="n">RADIUS</span><span class="p">);</span><span class="w"></span>
<span class="c1">// Create a PangoLayout, set the font and text</span>
<span class="n">context</span> <span class="o">=</span> <span class="n">gdk_pango_context_get_for_screen</span> <span class="p">(</span><span class="n">screen</span><span class="p">);</span>
<span class="n">layout</span> <span class="o">=</span> <span class="n">pango_layout_new</span> <span class="p">(</span><span class="n">context</span><span class="p">);</span>
<span class="n">pango_layout_set_text</span> <span class="p">(</span><span class="n">layout</span><span class="p">,</span> <span class="s">&quot;Text&quot;</span><span class="p">,</span> <span class="mi">-1</span><span class="p">);</span>
<span class="n">desc</span> <span class="o">=</span> <span class="n">pango_font_description_from_string</span> <span class="p">(</span><span class="n">FONT</span><span class="p">);</span>
<span class="n">pango_layout_set_font_description</span> <span class="p">(</span><span class="n">layout</span><span class="p">,</span> <span class="n">desc</span><span class="p">);</span>
<span class="n">pango_font_description_free</span> <span class="p">(</span><span class="n">desc</span><span class="p">);</span>
<span class="n">context</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gdk_pango_context_get_for_screen</span><span class="w"> </span><span class="p">(</span><span class="n">screen</span><span class="p">);</span><span class="w"></span>
<span class="n">layout</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">pango_layout_new</span><span class="w"> </span><span class="p">(</span><span class="n">context</span><span class="p">);</span><span class="w"></span>
<span class="n">pango_layout_set_text</span><span class="w"> </span><span class="p">(</span><span class="n">layout</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;Text&quot;</span><span class="p">,</span><span class="w"> </span><span class="mi">-1</span><span class="p">);</span><span class="w"></span>
<span class="n">desc</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">pango_font_description_from_string</span><span class="w"> </span><span class="p">(</span><span class="n">FONT</span><span class="p">);</span><span class="w"></span>
<span class="n">pango_layout_set_font_description</span><span class="w"> </span><span class="p">(</span><span class="n">layout</span><span class="p">,</span><span class="w"> </span><span class="n">desc</span><span class="p">);</span><span class="w"></span>
<span class="n">pango_font_description_free</span><span class="w"> </span><span class="p">(</span><span class="n">desc</span><span class="p">);</span><span class="w"></span>
<span class="c1">// Draw the layout N_WORDS times in a circle</span>
<span class="k">for</span> <span class="p">(</span><span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o">&lt;</span> <span class="n">N_WORDS</span><span class="p">;</span> <span class="n">i</span><span class="o">++</span><span class="p">)</span>
<span class="p">{</span>
<span class="kt">double</span> <span class="n">red</span><span class="p">,</span> <span class="n">green</span><span class="p">,</span> <span class="n">blue</span><span class="p">;</span>
<span class="kt">double</span> <span class="n">angle</span> <span class="o">=</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">G_PI</span> <span class="o">*</span> <span class="n">i</span> <span class="o">/</span> <span class="n">n_words</span><span class="p">;</span>
<span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="n">i</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span><span class="w"> </span><span class="n">i</span><span class="w"> </span><span class="o">&lt;</span><span class="w"> </span><span class="n">N_WORDS</span><span class="p">;</span><span class="w"> </span><span class="n">i</span><span class="o">++</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">red</span><span class="p">,</span><span class="w"> </span><span class="n">green</span><span class="p">,</span><span class="w"> </span><span class="n">blue</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="kt">double</span><span class="w"> </span><span class="n">angle</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">2</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">G_PI</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">i</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="n">n_words</span><span class="p">;</span><span class="w"></span>
<span class="n">cairo_save</span> <span class="p">(</span><span class="n">cr</span><span class="p">);</span>
<span class="w"> </span><span class="n">cairo_save</span><span class="w"> </span><span class="p">(</span><span class="n">cr</span><span class="p">);</span><span class="w"></span>
<span class="c1">// Gradient from red at angle == 60 to blue at angle == 300</span>
<span class="n">red</span> <span class="o">=</span> <span class="p">(</span><span class="mi">1</span> <span class="o">+</span> <span class="n">cos</span> <span class="p">(</span><span class="n">angle</span> <span class="o">-</span> <span class="mi">60</span><span class="p">))</span> <span class="o">/</span> <span class="mi">2</span><span class="p">;</span>
<span class="n">green</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
<span class="n">blue</span> <span class="o">=</span> <span class="mi">1</span> <span class="o">-</span> <span class="n">red</span><span class="p">;</span>
<span class="w"> </span><span class="c1">// Gradient from red at angle == 60 to blue at angle == 300</span>
<span class="w"> </span><span class="n">red</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="mi">1</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="n">cos</span><span class="w"> </span><span class="p">(</span><span class="n">angle</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mi">60</span><span class="p">))</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="mi">2</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">green</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">blue</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">1</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="n">red</span><span class="p">;</span><span class="w"></span>
<span class="n">cairo_set_source_rgb</span> <span class="p">(</span><span class="n">cr</span><span class="p">,</span> <span class="n">red</span><span class="p">,</span> <span class="n">green</span><span class="p">,</span> <span class="n">blue</span><span class="p">);</span>
<span class="n">cairo_rotate</span> <span class="p">(</span><span class="n">cr</span><span class="p">,</span> <span class="n">angle</span><span class="p">);</span>
<span class="w"> </span><span class="n">cairo_set_source_rgb</span><span class="w"> </span><span class="p">(</span><span class="n">cr</span><span class="p">,</span><span class="w"> </span><span class="n">red</span><span class="p">,</span><span class="w"> </span><span class="n">green</span><span class="p">,</span><span class="w"> </span><span class="n">blue</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">cairo_rotate</span><span class="w"> </span><span class="p">(</span><span class="n">cr</span><span class="p">,</span><span class="w"> </span><span class="n">angle</span><span class="p">);</span><span class="w"></span>
<span class="c1">// Inform Pango to re-layout the text with the new transformation matrix</span>
<span class="n">pango_cairo_update_layout</span> <span class="p">(</span><span class="n">cr</span><span class="p">,</span> <span class="n">layout</span><span class="p">);</span>
<span class="w"> </span><span class="c1">// Inform Pango to re-layout the text with the new transformation matrix</span>
<span class="w"> </span><span class="n">pango_cairo_update_layout</span><span class="w"> </span><span class="p">(</span><span class="n">cr</span><span class="p">,</span><span class="w"> </span><span class="n">layout</span><span class="p">);</span><span class="w"></span>
<span class="n">pango_layout_get_size</span> <span class="p">(</span><span class="n">layout</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">width</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">height</span><span class="p">);</span>
<span class="w"> </span><span class="n">pango_layout_get_size</span><span class="w"> </span><span class="p">(</span><span class="n">layout</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">width</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">height</span><span class="p">);</span><span class="w"></span>
<span class="n">cairo_move_to</span> <span class="p">(</span><span class="n">cr</span><span class="p">,</span> <span class="o">-</span> <span class="n">width</span> <span class="o">/</span> <span class="mi">2</span> <span class="o">/</span> <span class="n">PANGO_SCALE</span><span class="p">,</span> <span class="o">-</span> <span class="n">DEFAULT_TEXT_RADIUS</span><span class="p">);</span>
<span class="n">pango_cairo_show_layout</span> <span class="p">(</span><span class="n">cr</span><span class="p">,</span> <span class="n">layout</span><span class="p">);</span>
<span class="w"> </span><span class="n">cairo_move_to</span><span class="w"> </span><span class="p">(</span><span class="n">cr</span><span class="p">,</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="n">width</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="mi">2</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="n">PANGO_SCALE</span><span class="p">,</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="n">DEFAULT_TEXT_RADIUS</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">pango_cairo_show_layout</span><span class="w"> </span><span class="p">(</span><span class="n">cr</span><span class="p">,</span><span class="w"> </span><span class="n">layout</span><span class="p">);</span><span class="w"></span>
<span class="n">cairo_restore</span> <span class="p">(</span><span class="n">cr</span><span class="p">);</span>
<span class="p">}</span>
<span class="w"> </span><span class="n">cairo_restore</span><span class="w"> </span><span class="p">(</span><span class="n">cr</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="n">g_object_unref</span> <span class="p">(</span><span class="n">layout</span><span class="p">);</span>
<span class="n">g_object_unref</span> <span class="p">(</span><span class="n">context</span><span class="p">);</span></pre></td>
<span class="n">g_object_unref</span><span class="w"> </span><span class="p">(</span><span class="n">layout</span><span class="p">);</span><span class="w"></span>
<span class="n">g_object_unref</span><span class="w"> </span><span class="p">(</span><span class="n">context</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -173,25 +173,25 @@ by using <a class="link" href="gdk3-Threads.html#gdk-threads-add-idle" title="gd
17
18
19</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="kt">void</span>
<span class="nf">worker_thread</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">ExpensiveData</span> <span class="o">*</span><span class="n">expensive_data</span> <span class="o">=</span> <span class="n">do_expensive_computation</span> <span class="p">();</span>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="nf">worker_thread</span><span class="w"> </span><span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">ExpensiveData</span><span class="w"> </span><span class="o">*</span><span class="n">expensive_data</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">do_expensive_computation</span><span class="w"> </span><span class="p">();</span><span class="w"></span>
<span class="n">gdk_threads_add_idle</span> <span class="p">(</span><span class="n">got_value</span><span class="p">,</span> <span class="n">expensive_data</span><span class="p">);</span>
<span class="p">}</span>
<span class="w"> </span><span class="n">gdk_threads_add_idle</span><span class="w"> </span><span class="p">(</span><span class="n">got_value</span><span class="p">,</span><span class="w"> </span><span class="n">expensive_data</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="k">static</span> <span class="n">gboolean</span>
<span class="nf">got_value</span> <span class="p">(</span><span class="n">gpointer</span> <span class="n">user_data</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">ExpensiveData</span> <span class="o">*</span><span class="n">expensive_data</span> <span class="o">=</span> <span class="n">user_data</span><span class="p">;</span>
<span class="k">static</span><span class="w"> </span><span class="n">gboolean</span><span class="w"></span>
<span class="nf">got_value</span><span class="w"> </span><span class="p">(</span><span class="n">gpointer</span><span class="w"> </span><span class="n">user_data</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">ExpensiveData</span><span class="w"> </span><span class="o">*</span><span class="n">expensive_data</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">user_data</span><span class="p">;</span><span class="w"></span>
<span class="n">my_app</span><span class="o">-&gt;</span><span class="n">expensive_data</span> <span class="o">=</span> <span class="n">expensive_data</span><span class="p">;</span>
<span class="n">gtk_button_set_sensitive</span> <span class="p">(</span><span class="n">my_app</span><span class="o">-&gt;</span><span class="n">button</span><span class="p">,</span> <span class="n">TRUE</span><span class="p">);</span>
<span class="n">gtk_button_set_label</span> <span class="p">(</span><span class="n">my_app</span><span class="o">-&gt;</span><span class="n">button</span><span class="p">,</span> <span class="n">expensive_data</span><span class="o">-&gt;</span><span class="n">result_label</span><span class="p">);</span>
<span class="w"> </span><span class="n">my_app</span><span class="o">-&gt;</span><span class="n">expensive_data</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">expensive_data</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_button_set_sensitive</span><span class="w"> </span><span class="p">(</span><span class="n">my_app</span><span class="o">-&gt;</span><span class="n">button</span><span class="p">,</span><span class="w"> </span><span class="n">TRUE</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_button_set_label</span><span class="w"> </span><span class="p">(</span><span class="n">my_app</span><span class="o">-&gt;</span><span class="n">button</span><span class="p">,</span><span class="w"> </span><span class="n">expensive_data</span><span class="o">-&gt;</span><span class="n">result_label</span><span class="p">);</span><span class="w"></span>
<span class="k">return</span> <span class="n">G_SOURCE_REMOVE</span><span class="p">;</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">G_SOURCE_REMOVE</span><span class="p">;</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -426,35 +426,35 @@ in thread B:</p>
27
28
29</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="n">gboolean</span>
<span class="nf">idle_callback</span> <span class="p">(</span><span class="n">gpointer</span> <span class="n">data</span><span class="p">)</span>
<span class="p">{</span>
<span class="c1">// gdk_threads_enter(); would be needed for g_idle_add()</span>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="n">gboolean</span><span class="w"></span>
<span class="nf">idle_callback</span><span class="w"> </span><span class="p">(</span><span class="n">gpointer</span><span class="w"> </span><span class="n">data</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// gdk_threads_enter(); would be needed for g_idle_add()</span>
<span class="n">SomeWidget</span> <span class="o">*</span><span class="n">self</span> <span class="o">=</span> <span class="n">data</span><span class="p">;</span>
<span class="c1">// do stuff with self</span>
<span class="w"> </span><span class="n">SomeWidget</span><span class="w"> </span><span class="o">*</span><span class="n">self</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">data</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="c1">// do stuff with self</span>
<span class="n">self</span><span class="o">-&gt;</span><span class="n">idle_id</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
<span class="w"> </span><span class="n">self</span><span class="o">-&gt;</span><span class="n">idle_id</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span><span class="w"></span>
<span class="c1">// gdk_threads_leave(); would be needed for g_idle_add()</span>
<span class="k">return</span> <span class="n">FALSE</span><span class="p">;</span>
<span class="p">}</span>
<span class="w"> </span><span class="c1">// gdk_threads_leave(); would be needed for g_idle_add()</span>
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">FALSE</span><span class="p">;</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="k">static</span> <span class="kt">void</span>
<span class="nf">some_widget_do_stuff_later</span> <span class="p">(</span><span class="n">SomeWidget</span> <span class="o">*</span><span class="n">self</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">self</span><span class="o">-&gt;</span><span class="n">idle_id</span> <span class="o">=</span> <span class="n">gdk_threads_add_idle</span> <span class="p">(</span><span class="n">idle_callback</span><span class="p">,</span> <span class="n">self</span><span class="p">)</span>
<span class="c1">// using g_idle_add() here would require thread protection in the callback</span>
<span class="p">}</span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="nf">some_widget_do_stuff_later</span><span class="w"> </span><span class="p">(</span><span class="n">SomeWidget</span><span class="w"> </span><span class="o">*</span><span class="n">self</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">self</span><span class="o">-&gt;</span><span class="n">idle_id</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gdk_threads_add_idle</span><span class="w"> </span><span class="p">(</span><span class="n">idle_callback</span><span class="p">,</span><span class="w"> </span><span class="n">self</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="c1">// using g_idle_add() here would require thread protection in the callback</span>
<span class="p">}</span><span class="w"></span>
<span class="k">static</span> <span class="kt">void</span>
<span class="nf">some_widget_finalize</span> <span class="p">(</span><span class="n">GObject</span> <span class="o">*</span><span class="n">object</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">SomeWidget</span> <span class="o">*</span><span class="n">self</span> <span class="o">=</span> <span class="n">SOME_WIDGET</span> <span class="p">(</span><span class="n">object</span><span class="p">);</span>
<span class="k">if</span> <span class="p">(</span><span class="n">self</span><span class="o">-&gt;</span><span class="n">idle_id</span><span class="p">)</span>
<span class="n">g_source_remove</span> <span class="p">(</span><span class="n">self</span><span class="o">-&gt;</span><span class="n">idle_id</span><span class="p">);</span>
<span class="n">G_OBJECT_CLASS</span> <span class="p">(</span><span class="n">parent_class</span><span class="p">)</span><span class="o">-&gt;</span><span class="n">finalize</span> <span class="p">(</span><span class="n">object</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="nf">some_widget_finalize</span><span class="w"> </span><span class="p">(</span><span class="n">GObject</span><span class="w"> </span><span class="o">*</span><span class="n">object</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">SomeWidget</span><span class="w"> </span><span class="o">*</span><span class="n">self</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">SOME_WIDGET</span><span class="w"> </span><span class="p">(</span><span class="n">object</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">self</span><span class="o">-&gt;</span><span class="n">idle_id</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="n">g_source_remove</span><span class="w"> </span><span class="p">(</span><span class="n">self</span><span class="o">-&gt;</span><span class="n">idle_id</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">G_OBJECT_CLASS</span><span class="w"> </span><span class="p">(</span><span class="n">parent_class</span><span class="p">)</span><span class="o">-&gt;</span><span class="n">finalize</span><span class="w"> </span><span class="p">(</span><span class="n">object</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -601,31 +601,31 @@ for GTK+ widgets for the following use case:</p>
23
24
25</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="n">gboolean</span> <span class="nf">timeout_callback</span> <span class="p">(</span><span class="n">gpointer</span> <span class="n">data</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">SomeWidget</span> <span class="o">*</span><span class="n">self</span> <span class="o">=</span> <span class="n">data</span><span class="p">;</span>
<span class="c1">// do stuff with self</span>
<span class="n">self</span><span class="o">-&gt;</span><span class="n">timeout_id</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
<span class="k">return</span> <span class="n">G_SOURCE_REMOVE</span><span class="p">;</span>
<span class="p">}</span>
<span class="k">static</span> <span class="kt">void</span> <span class="nf">some_widget_do_stuff_later</span> <span class="p">(</span><span class="n">SomeWidget</span> <span class="o">*</span><span class="n">self</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">self</span><span class="o">-&gt;</span><span class="n">timeout_id</span> <span class="o">=</span> <span class="n">g_timeout_add</span> <span class="p">(</span><span class="n">timeout_callback</span><span class="p">,</span> <span class="n">self</span><span class="p">)</span>
<span class="p">}</span>
<span class="k">static</span> <span class="kt">void</span> <span class="nf">some_widget_finalize</span> <span class="p">(</span><span class="n">GObject</span> <span class="o">*</span><span class="n">object</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">SomeWidget</span> <span class="o">*</span><span class="n">self</span> <span class="o">=</span> <span class="n">SOME_WIDGET</span> <span class="p">(</span><span class="n">object</span><span class="p">);</span>
<span class="k">if</span> <span class="p">(</span><span class="n">self</span><span class="o">-&gt;</span><span class="n">timeout_id</span><span class="p">)</span>
<span class="n">g_source_remove</span> <span class="p">(</span><span class="n">self</span><span class="o">-&gt;</span><span class="n">timeout_id</span><span class="p">);</span>
<span class="n">G_OBJECT_CLASS</span> <span class="p">(</span><span class="n">parent_class</span><span class="p">)</span><span class="o">-&gt;</span><span class="n">finalize</span> <span class="p">(</span><span class="n">object</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="n">gboolean</span><span class="w"> </span><span class="nf">timeout_callback</span><span class="w"> </span><span class="p">(</span><span class="n">gpointer</span><span class="w"> </span><span class="n">data</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">SomeWidget</span><span class="w"> </span><span class="o">*</span><span class="n">self</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">data</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span>
<span class="w"> </span><span class="c1">// do stuff with self</span>
<span class="w"> </span>
<span class="w"> </span><span class="n">self</span><span class="o">-&gt;</span><span class="n">timeout_id</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span>
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">G_SOURCE_REMOVE</span><span class="p">;</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="w"> </span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="nf">some_widget_do_stuff_later</span><span class="w"> </span><span class="p">(</span><span class="n">SomeWidget</span><span class="w"> </span><span class="o">*</span><span class="n">self</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">self</span><span class="o">-&gt;</span><span class="n">timeout_id</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">g_timeout_add</span><span class="w"> </span><span class="p">(</span><span class="n">timeout_callback</span><span class="p">,</span><span class="w"> </span><span class="n">self</span><span class="p">)</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="w"> </span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="nf">some_widget_finalize</span><span class="w"> </span><span class="p">(</span><span class="n">GObject</span><span class="w"> </span><span class="o">*</span><span class="n">object</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">SomeWidget</span><span class="w"> </span><span class="o">*</span><span class="n">self</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">SOME_WIDGET</span><span class="w"> </span><span class="p">(</span><span class="n">object</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">self</span><span class="o">-&gt;</span><span class="n">timeout_id</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="n">g_source_remove</span><span class="w"> </span><span class="p">(</span><span class="n">self</span><span class="o">-&gt;</span><span class="n">timeout_id</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span>
<span class="w"> </span><span class="n">G_OBJECT_CLASS</span><span class="w"> </span><span class="p">(</span><span class="n">parent_class</span><span class="p">)</span><span class="o">-&gt;</span><span class="n">finalize</span><span class="w"> </span><span class="p">(</span><span class="n">object</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -66,20 +66,20 @@ using the <code class="function">GDK_IS_WAYLAND_DISPLAY()</code> macro).</p>
14
15</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="cp">#ifdef GDK_WINDOWING_WAYLAND</span>
<span class="k">if</span> <span class="p">(</span><span class="n">GDK_IS_WAYLAND_DISPLAY</span> <span class="p">(</span><span class="n">display</span><span class="p">))</span>
<span class="p">{</span>
<span class="c1">// make Wayland-specific calls here</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">GDK_IS_WAYLAND_DISPLAY</span><span class="w"> </span><span class="p">(</span><span class="n">display</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// make Wayland-specific calls here</span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="cp">#endif</span>
<span class="cp">#ifdef GDK_WINDOWING_X11</span>
<span class="k">if</span> <span class="p">(</span><span class="n">GDK_IS_X11_DISPLAY</span> <span class="p">(</span><span class="n">display</span><span class="p">))</span>
<span class="p">{</span>
<span class="c1">// make X11-specific calls here</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">GDK_IS_X11_DISPLAY</span><span class="w"> </span><span class="p">(</span><span class="n">display</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// make X11-specific calls here</span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="cp">#endif</span>
<span class="n">g_error</span> <span class="p">(</span><span class="s">&quot;Unsupported GDK backend&quot;</span><span class="p">);</span></pre></td>
<span class="w"> </span><span class="n">g_error</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;Unsupported GDK backend&quot;</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -8052,21 +8052,21 @@ a terminal area widget called “terminal” and a toplevel window “toplevel
13
14
15</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GdkGeometry</span> <span class="n">hints</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GdkGeometry</span><span class="w"> </span><span class="n">hints</span><span class="p">;</span><span class="w"></span>
<span class="n">hints</span><span class="p">.</span><span class="n">base_width</span> <span class="o">=</span> <span class="n">terminal</span><span class="o">-&gt;</span><span class="n">char_width</span><span class="p">;</span>
<span class="n">hints</span><span class="p">.</span><span class="n">base_height</span> <span class="o">=</span> <span class="n">terminal</span><span class="o">-&gt;</span><span class="n">char_height</span><span class="p">;</span>
<span class="n">hints</span><span class="p">.</span><span class="n">min_width</span> <span class="o">=</span> <span class="n">terminal</span><span class="o">-&gt;</span><span class="n">char_width</span><span class="p">;</span>
<span class="n">hints</span><span class="p">.</span><span class="n">min_height</span> <span class="o">=</span> <span class="n">terminal</span><span class="o">-&gt;</span><span class="n">char_height</span><span class="p">;</span>
<span class="n">hints</span><span class="p">.</span><span class="n">width_inc</span> <span class="o">=</span> <span class="n">terminal</span><span class="o">-&gt;</span><span class="n">char_width</span><span class="p">;</span>
<span class="n">hints</span><span class="p">.</span><span class="n">height_inc</span> <span class="o">=</span> <span class="n">terminal</span><span class="o">-&gt;</span><span class="n">char_height</span><span class="p">;</span>
<span class="n">hints</span><span class="p">.</span><span class="n">base_width</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">terminal</span><span class="o">-&gt;</span><span class="n">char_width</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">hints</span><span class="p">.</span><span class="n">base_height</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">terminal</span><span class="o">-&gt;</span><span class="n">char_height</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">hints</span><span class="p">.</span><span class="n">min_width</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">terminal</span><span class="o">-&gt;</span><span class="n">char_width</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">hints</span><span class="p">.</span><span class="n">min_height</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">terminal</span><span class="o">-&gt;</span><span class="n">char_height</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">hints</span><span class="p">.</span><span class="n">width_inc</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">terminal</span><span class="o">-&gt;</span><span class="n">char_width</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">hints</span><span class="p">.</span><span class="n">height_inc</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">terminal</span><span class="o">-&gt;</span><span class="n">char_height</span><span class="p">;</span><span class="w"></span>
<span class="n">gtk_window_set_geometry_hints</span> <span class="p">(</span><span class="n">GTK_WINDOW</span> <span class="p">(</span><span class="n">toplevel</span><span class="p">),</span>
<span class="n">GTK_WIDGET</span> <span class="p">(</span><span class="n">terminal</span><span class="p">),</span>
<span class="o">&amp;</span><span class="n">hints</span><span class="p">,</span>
<span class="n">GDK_HINT_RESIZE_INC</span> <span class="o">|</span>
<span class="n">GDK_HINT_MIN_SIZE</span> <span class="o">|</span>
<span class="n">GDK_HINT_BASE_SIZE</span><span class="p">);</span></pre></td>
<span class="w"> </span><span class="n">gtk_window_set_geometry_hints</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_WINDOW</span><span class="w"> </span><span class="p">(</span><span class="n">toplevel</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_WIDGET</span><span class="w"> </span><span class="p">(</span><span class="n">terminal</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="o">&amp;</span><span class="n">hints</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GDK_HINT_RESIZE_INC</span><span class="w"> </span><span class="o">|</span><span class="w"></span>
<span class="w"> </span><span class="n">GDK_HINT_MIN_SIZE</span><span class="w"> </span><span class="o">|</span><span class="w"></span>
<span class="w"> </span><span class="n">GDK_HINT_BASE_SIZE</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -635,20 +635,20 @@ using the <code class="function">GDK_IS_X11_DISPLAY()</code> macro).</p>
14
15</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="cp">#ifdef GDK_WINDOWING_X11</span>
<span class="k">if</span> <span class="p">(</span><span class="n">GDK_IS_X11_DISPLAY</span> <span class="p">(</span><span class="n">display</span><span class="p">))</span>
<span class="p">{</span>
<span class="c1">// make X11-specific calls here</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">GDK_IS_X11_DISPLAY</span><span class="w"> </span><span class="p">(</span><span class="n">display</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// make X11-specific calls here</span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="cp">#endif</span>
<span class="cp">#ifdef GDK_WINDOWING_QUARTZ</span>
<span class="k">if</span> <span class="p">(</span><span class="n">GDK_IS_QUARTZ_DISPLAY</span> <span class="p">(</span><span class="n">display</span><span class="p">))</span>
<span class="p">{</span>
<span class="c1">// make Quartz-specific calls here</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">GDK_IS_QUARTZ_DISPLAY</span><span class="w"> </span><span class="p">(</span><span class="n">display</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// make Quartz-specific calls here</span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="cp">#endif</span>
<span class="n">g_error</span> <span class="p">(</span><span class="s">&quot;Unsupported GDK backend&quot;</span><span class="p">);</span></pre></td>
<span class="w"> </span><span class="n">g_error</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;Unsupported GDK backend&quot;</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -15,7 +15,7 @@
<div>
<div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GDK 3 Reference Manual</p></th></tr></table></div>
<div><p class="releaseinfo">
This document is for the GDK 3 library, version 3.24.33
This document is for the GDK 3 library, version 3.24.34
The latest versions can be found online at
<a class="ulink" href="https://developer.gnome.org/gdk3/" target="_top">https://developer.gnome.org/gdk3/</a>.

View File

@ -461,22 +461,22 @@ span.linenos { color: inherit; background-color: transparent; padding-left: 5px;
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.hll { background-color: #ffffcc }
.c { color: #408080; font-style: italic } /* Comment */
.c { color: #3D7B7B; font-style: italic } /* Comment */
.err { border: 1px solid #FF0000 } /* Error */
.k { color: #008000; font-weight: bold } /* Keyword */
.o { color: #666666 } /* Operator */
.ch { color: #408080; font-style: italic } /* Comment.Hashbang */
.cm { color: #408080; font-style: italic } /* Comment.Multiline */
.cp { color: #BC7A00 } /* Comment.Preproc */
.cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */
.c1 { color: #408080; font-style: italic } /* Comment.Single */
.cs { color: #408080; font-style: italic } /* Comment.Special */
.ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */
.cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */
.cp { color: #9C6500 } /* Comment.Preproc */
.cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */
.c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */
.cs { color: #3D7B7B; font-style: italic } /* Comment.Special */
.gd { color: #A00000 } /* Generic.Deleted */
.ge { font-style: italic } /* Generic.Emph */
.gr { color: #FF0000 } /* Generic.Error */
.gr { color: #E40000 } /* Generic.Error */
.gh { color: #000080; font-weight: bold } /* Generic.Heading */
.gi { color: #00A000 } /* Generic.Inserted */
.go { color: #888888 } /* Generic.Output */
.gi { color: #008400 } /* Generic.Inserted */
.go { color: #717171 } /* Generic.Output */
.gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.gs { font-weight: bold } /* Generic.Strong */
.gu { color: #800080; font-weight: bold } /* Generic.Subheading */
@ -489,15 +489,15 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
.kt { color: #B00040 } /* Keyword.Type */
.m { color: #666666 } /* Literal.Number */
.s { color: #BA2121 } /* Literal.String */
.na { color: #7D9029 } /* Name.Attribute */
.na { color: #687822 } /* Name.Attribute */
.nb { color: #008000 } /* Name.Builtin */
.nc { color: #0000FF; font-weight: bold } /* Name.Class */
.no { color: #880000 } /* Name.Constant */
.nd { color: #AA22FF } /* Name.Decorator */
.ni { color: #999999; font-weight: bold } /* Name.Entity */
.ne { color: #D2413A; font-weight: bold } /* Name.Exception */
.ni { color: #717171; font-weight: bold } /* Name.Entity */
.ne { color: #CB3F38; font-weight: bold } /* Name.Exception */
.nf { color: #0000FF } /* Name.Function */
.nl { color: #A0A000 } /* Name.Label */
.nl { color: #767600 } /* Name.Label */
.nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
.nt { color: #008000; font-weight: bold } /* Name.Tag */
.nv { color: #19177C } /* Name.Variable */
@ -514,11 +514,11 @@ span.linenos.special { color: #000000; background-color: #ffffc0; padding-left:
.dl { color: #BA2121 } /* Literal.String.Delimiter */
.sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.s2 { color: #BA2121 } /* Literal.String.Double */
.se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
.se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */
.sh { color: #BA2121 } /* Literal.String.Heredoc */
.si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
.si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */
.sx { color: #008000 } /* Literal.String.Other */
.sr { color: #BB6688 } /* Literal.String.Regex */
.sr { color: #A45A77 } /* Literal.String.Regex */
.s1 { color: #BA2121 } /* Literal.String.Single */
.ss { color: #19177C } /* Literal.String.Symbol */
.bp { color: #008000 } /* Name.Builtin.Pseudo */

View File

@ -1 +1 @@
3.24.33
3.24.34

View File

@ -1,7 +1,7 @@
# Makefile.in generated by automake 1.16.2 from Makefile.am.
# Makefile.in generated by automake 1.16.5 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2020 Free Software Foundation, Inc.
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@ -223,6 +223,8 @@ CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ -UGTK_DISABLE_SINGLE_INCLUDES
CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
CPP_FOR_BUILD = @CPP_FOR_BUILD@
CSCOPE = @CSCOPE@
CTAGS = @CTAGS@
CUPS_API_MAJOR = @CUPS_API_MAJOR@
CUPS_API_MINOR = @CUPS_API_MINOR@
CUPS_CFLAGS = @CUPS_CFLAGS@
@ -245,6 +247,7 @@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
ENABLE_ON_X11 = @ENABLE_ON_X11@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
EXE_MANIFEST_ARCHITECTURE = @EXE_MANIFEST_ARCHITECTURE@
FGREP = @FGREP@
@ -1151,7 +1154,6 @@ ctags CTAGS:
cscope cscopelist:
distdir: $(BUILT_SOURCES)
$(MAKE) $(AM_MAKEFLAGS) distdir-am

View File

@ -2,7 +2,7 @@
.\" Title: broadwayd
.\" Author: Alexander Larsson
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 03/04/2022
.\" Date: 05/18/2022
.\" Manual: User Commands
.\" Source: GTK+
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: gtk-builder-tool
.\" Author: Matthias Clasen
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 03/04/2022
.\" Date: 05/18/2022
.\" Manual: User Commands
.\" Source: GTK+
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: gtk-encode-symbolic-svg
.\" Author: Alexander Larsson
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 03/04/2022
.\" Date: 05/18/2022
.\" Manual: User Commands
.\" Source: GTK+
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: gtk-launch
.\" Author: Tomáš Bžatek <tbzatek@redhat.com>
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 03/04/2022
.\" Date: 05/18/2022
.\" Manual: User Commands
.\" Source: GTK+
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: gtk-query-immodules-3.0
.\" Author: Matthias Clasen
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 03/04/2022
.\" Date: 05/18/2022
.\" Manual: User Commands
.\" Source: GTK+
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: gtk-query-settings
.\" Author: Timm Bäder
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 03/04/2022
.\" Date: 05/18/2022
.\" Manual: User Commands
.\" Source: GTK+
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: gtk-update-icon-cache
.\" Author: Matthias Clasen
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 03/04/2022
.\" Date: 05/18/2022
.\" Manual: User Commands
.\" Source: GTK+
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: gtk3-demo-application
.\" Author: Matthias Clasen
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 03/04/2022
.\" Date: 05/18/2022
.\" Manual: User Commands
.\" Source: GTK+
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: gtk3-demo
.\" Author: Matthias Clasen
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 03/04/2022
.\" Date: 05/18/2022
.\" Manual: User Commands
.\" Source: GTK+
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: gtk3-icon-browser
.\" Author: Matthias Clasen
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 03/04/2022
.\" Date: 05/18/2022
.\" Manual: User Commands
.\" Source: GTK+
.\" Language: English

View File

@ -2,7 +2,7 @@
.\" Title: gtk3-widget-factory
.\" Author: Matthias Clasen
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\" Date: 03/04/2022
.\" Date: 05/18/2022
.\" Manual: User Commands
.\" Source: GTK+
.\" Language: English

View File

@ -485,12 +485,12 @@ as shown in the following example:</p>
4
5
6</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GdkPixbuf</span> <span class="o">*</span><span class="n">example_logo</span> <span class="o">=</span> <span class="n">gdk_pixbuf_new_from_file</span> <span class="p">(</span><span class="s">&quot;./logo.png&quot;</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">);</span>
<span class="n">gtk_show_about_dialog</span> <span class="p">(</span><span class="nb">NULL</span><span class="p">,</span>
<span class="s">&quot;program-name&quot;</span><span class="p">,</span> <span class="s">&quot;ExampleCode&quot;</span><span class="p">,</span>
<span class="s">&quot;logo&quot;</span><span class="p">,</span> <span class="n">example_logo</span><span class="p">,</span>
<span class="s">&quot;title&quot;</span><span class="p">,</span> <span class="n">_</span><span class="p">(</span><span class="s">&quot;About ExampleCode&quot;</span><span class="p">),</span>
<span class="nb">NULL</span><span class="p">);</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GdkPixbuf</span><span class="w"> </span><span class="o">*</span><span class="n">example_logo</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gdk_pixbuf_new_from_file</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;./logo.png&quot;</span><span class="p">,</span><span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_show_about_dialog</span><span class="w"> </span><span class="p">(</span><span class="nb">NULL</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot;program-name&quot;</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;ExampleCode&quot;</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot;logo&quot;</span><span class="p">,</span><span class="w"> </span><span class="n">example_logo</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot;title&quot;</span><span class="p">,</span><span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;About ExampleCode&quot;</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -1296,9 +1296,9 @@ string for translation:</p>
<td class="listing_lines" align="right"><pre>1
2
3</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span> <span class="o">*</span><span class="n">about</span> <span class="o">=</span> <span class="n">gtk_about_dialog_new</span> <span class="p">();</span>
<span class="n">gtk_about_dialog_set_translator_credits</span> <span class="p">(</span><span class="n">GTK_ABOUT_DIALOG</span> <span class="p">(</span><span class="n">about</span><span class="p">),</span>
<span class="n">_</span><span class="p">(</span><span class="s">&quot;translator-credits&quot;</span><span class="p">));</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">about</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_about_dialog_new</span><span class="w"> </span><span class="p">();</span><span class="w"></span>
<span class="n">gtk_about_dialog_set_translator_credits</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_ABOUT_DIALOG</span><span class="w"> </span><span class="p">(</span><span class="n">about</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;translator-credits&quot;</span><span class="p">));</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -216,27 +216,27 @@ though it is almost always used to display just one accelerator key.</p>
19
20
21</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span> <span class="o">*</span><span class="n">window</span> <span class="o">=</span> <span class="n">gtk_window_new</span> <span class="p">(</span><span class="n">GTK_WINDOW_TOPLEVEL</span><span class="p">);</span>
<span class="n">GtkWidget</span> <span class="o">*</span><span class="n">menu</span> <span class="o">=</span> <span class="n">gtk_menu_new</span> <span class="p">();</span>
<span class="n">GtkWidget</span> <span class="o">*</span><span class="n">save_item</span><span class="p">;</span>
<span class="n">GtkAccelGroup</span> <span class="o">*</span><span class="n">accel_group</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">window</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_window_new</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_WINDOW_TOPLEVEL</span><span class="p">);</span><span class="w"></span>
<span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">menu</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_menu_new</span><span class="w"> </span><span class="p">();</span><span class="w"></span>
<span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">save_item</span><span class="p">;</span><span class="w"></span>
<span class="n">GtkAccelGroup</span><span class="w"> </span><span class="o">*</span><span class="n">accel_group</span><span class="p">;</span><span class="w"></span>
<span class="c1">// Create a GtkAccelGroup and add it to the window.</span>
<span class="n">accel_group</span> <span class="o">=</span> <span class="n">gtk_accel_group_new</span> <span class="p">();</span>
<span class="n">gtk_window_add_accel_group</span> <span class="p">(</span><span class="n">GTK_WINDOW</span> <span class="p">(</span><span class="n">window</span><span class="p">),</span> <span class="n">accel_group</span><span class="p">);</span>
<span class="n">accel_group</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_accel_group_new</span><span class="w"> </span><span class="p">();</span><span class="w"></span>
<span class="n">gtk_window_add_accel_group</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_WINDOW</span><span class="w"> </span><span class="p">(</span><span class="n">window</span><span class="p">),</span><span class="w"> </span><span class="n">accel_group</span><span class="p">);</span><span class="w"></span>
<span class="c1">// Create the menu item using the convenience function.</span>
<span class="n">save_item</span> <span class="o">=</span> <span class="n">gtk_menu_item_new_with_label</span> <span class="p">(</span><span class="s">&quot;Save&quot;</span><span class="p">);</span>
<span class="n">gtk_widget_show</span> <span class="p">(</span><span class="n">save_item</span><span class="p">);</span>
<span class="n">gtk_container_add</span> <span class="p">(</span><span class="n">GTK_CONTAINER</span> <span class="p">(</span><span class="n">menu</span><span class="p">),</span> <span class="n">save_item</span><span class="p">);</span>
<span class="n">save_item</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_menu_item_new_with_label</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;Save&quot;</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_widget_show</span><span class="w"> </span><span class="p">(</span><span class="n">save_item</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_container_add</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_CONTAINER</span><span class="w"> </span><span class="p">(</span><span class="n">menu</span><span class="p">),</span><span class="w"> </span><span class="n">save_item</span><span class="p">);</span><span class="w"></span>
<span class="c1">// Now add the accelerator to the GtkMenuItem. Note that since we</span>
<span class="c1">// called gtk_menu_item_new_with_label() to create the GtkMenuItem</span>
<span class="c1">// the GtkAccelLabel is automatically set up to display the</span>
<span class="c1">// GtkMenuItem accelerators. We just need to make sure we use</span>
<span class="c1">// GTK_ACCEL_VISIBLE here.</span>
<span class="n">gtk_widget_add_accelerator</span> <span class="p">(</span><span class="n">save_item</span><span class="p">,</span> <span class="s">&quot;activate&quot;</span><span class="p">,</span> <span class="n">accel_group</span><span class="p">,</span>
<span class="n">GDK_KEY_s</span><span class="p">,</span> <span class="n">GDK_CONTROL_MASK</span><span class="p">,</span> <span class="n">GTK_ACCEL_VISIBLE</span><span class="p">);</span></pre></td>
<span class="n">gtk_widget_add_accelerator</span><span class="w"> </span><span class="p">(</span><span class="n">save_item</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;activate&quot;</span><span class="p">,</span><span class="w"> </span><span class="n">accel_group</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GDK_KEY_s</span><span class="p">,</span><span class="w"> </span><span class="n">GDK_CONTROL_MASK</span><span class="p">,</span><span class="w"> </span><span class="n">GTK_ACCEL_VISIBLE</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -252,8 +252,8 @@ though it is almost always used to display just one accelerator key.</p>
<tr>
<td class="listing_lines" align="right"><pre>1
2</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">label</span>
<span class="err">╰──</span> <span class="n">accelerator</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">label</span><span class="w"></span>
<span class="err">╰──</span><span class="w"> </span><span class="n">accelerator</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -422,7 +422,7 @@ be needed by applications.</p>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_accel_label_set_accel (<em class="parameter"><code><a class="link" href="GtkAccelLabel.html" title="GtkAccelLabel"><span class="type">GtkAccelLabel</span></a> *accel_label</code></em>,
<em class="parameter"><code><span class="type">guint</span> accelerator_key</code></em>,
<em class="parameter"><code><span class="type">GdkModifierType</span> accelerator_mods</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accelerator_mods</code></em>);</pre>
<p>Manually sets a keyval and modifier mask as the accelerator rendered
by <em class="parameter"><code>accel_label</code></em>
.</p>
@ -465,7 +465,7 @@ used regardless of any associated accel closure or widget.</p>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_accel_label_get_accel (<em class="parameter"><code><a class="link" href="GtkAccelLabel.html" title="GtkAccelLabel"><span class="type">GtkAccelLabel</span></a> *accel_label</code></em>,
<em class="parameter"><code><span class="type">guint</span> *accelerator_key</code></em>,
<em class="parameter"><code><span class="type">GdkModifierType</span> *accelerator_mods</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> *accelerator_mods</code></em>);</pre>
<p>Gets the keyval and modifier mask set with
<a class="link" href="GtkAccelLabel.html#gtk-accel-label-set-accel" title="gtk_accel_label_set_accel ()"><code class="function">gtk_accel_label_set_accel()</code></a>.</p>
<div class="refsect3">

View File

@ -391,16 +391,16 @@ it doesnt allow you to specify a signal.</p>
8
9
10</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkActionGroup&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;actiongroup&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkAction&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;About&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;name&quot;</span><span class="o">&gt;</span><span class="n">About</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;stock_id&quot;</span><span class="o">&gt;</span><span class="n">gtk</span><span class="o">-</span><span class="n">about</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">signal</span> <span class="n">handler</span><span class="o">=</span><span class="s">&quot;about_activate&quot;</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;activate&quot;</span><span class="o">/&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">accelerator</span> <span class="n">key</span><span class="o">=</span><span class="s">&quot;F1&quot;</span> <span class="n">modifiers</span><span class="o">=</span><span class="s">&quot;GDK_CONTROL_MASK | GDK_SHIFT_MASK&quot;</span><span class="o">/&gt;</span>
<span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkActionGroup&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;actiongroup&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkAction&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;About&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">property</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;name&quot;</span><span class="o">&gt;</span><span class="n">About</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">property</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;stock_id&quot;</span><span class="o">&gt;</span><span class="n">gtk</span><span class="o">-</span><span class="n">about</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">signal</span><span class="w"> </span><span class="n">handler</span><span class="o">=</span><span class="s">&quot;about_activate&quot;</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;activate&quot;</span><span class="o">/&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">accelerator</span><span class="w"> </span><span class="n">key</span><span class="o">=</span><span class="s">&quot;F1&quot;</span><span class="w"> </span><span class="n">modifiers</span><span class="o">=</span><span class="s">&quot;GDK_CONTROL_MASK | GDK_SHIFT_MASK&quot;</span><span class="o">/&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -395,217 +395,217 @@ the action pointer and boolean flag on your instance, and calling
209
210
211</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">enum</span> <span class="p">{</span>
<span class="p">...</span>
<td class="listing_code"><pre class="programlisting"><span class="k">enum</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="p">...</span><span class="w"></span>
<span class="n">PROP_ACTIVATABLE_RELATED_ACTION</span><span class="p">,</span>
<span class="n">PROP_ACTIVATABLE_USE_ACTION_APPEARANCE</span>
<span class="p">}</span>
<span class="n">PROP_ACTIVATABLE_RELATED_ACTION</span><span class="p">,</span><span class="w"></span>
<span class="n">PROP_ACTIVATABLE_USE_ACTION_APPEARANCE</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="k">struct</span> <span class="nc">_FooBarPrivate</span>
<span class="p">{</span>
<span class="k">struct</span><span class="w"> </span><span class="nc">_FooBarPrivate</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="p">...</span>
<span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="n">GtkAction</span> <span class="o">*</span><span class="n">action</span><span class="p">;</span>
<span class="n">gboolean</span> <span class="n">use_action_appearance</span><span class="p">;</span>
<span class="p">};</span>
<span class="w"> </span><span class="n">GtkAction</span><span class="w"> </span><span class="o">*</span><span class="n">action</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">gboolean</span><span class="w"> </span><span class="n">use_action_appearance</span><span class="p">;</span><span class="w"></span>
<span class="p">};</span><span class="w"></span>
<span class="p">...</span>
<span class="p">...</span><span class="w"></span>
<span class="k">static</span> <span class="kt">void</span> <span class="n">foo_bar_activatable_interface_init</span> <span class="p">(</span><span class="n">GtkActivatableIface</span> <span class="o">*</span><span class="n">iface</span><span class="p">);</span>
<span class="k">static</span> <span class="kt">void</span> <span class="nf">foo_bar_activatable_update</span> <span class="p">(</span><span class="n">GtkActivatable</span> <span class="o">*</span><span class="n">activatable</span><span class="p">,</span>
<span class="n">GtkAction</span> <span class="o">*</span><span class="n">action</span><span class="p">,</span>
<span class="k">const</span> <span class="n">gchar</span> <span class="o">*</span><span class="n">property_name</span><span class="p">);</span>
<span class="k">static</span> <span class="kt">void</span> <span class="nf">foo_bar_activatable_sync_action_properties</span> <span class="p">(</span><span class="n">GtkActivatable</span> <span class="o">*</span><span class="n">activatable</span><span class="p">,</span>
<span class="n">GtkAction</span> <span class="o">*</span><span class="n">action</span><span class="p">);</span>
<span class="p">...</span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="n">foo_bar_activatable_interface_init</span><span class="w"> </span><span class="p">(</span><span class="n">GtkActivatableIface</span><span class="w"> </span><span class="o">*</span><span class="n">iface</span><span class="p">);</span><span class="w"></span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="nf">foo_bar_activatable_update</span><span class="w"> </span><span class="p">(</span><span class="n">GtkActivatable</span><span class="w"> </span><span class="o">*</span><span class="n">activatable</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkAction</span><span class="w"> </span><span class="o">*</span><span class="n">action</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="n">gchar</span><span class="w"> </span><span class="o">*</span><span class="n">property_name</span><span class="p">);</span><span class="w"></span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="nf">foo_bar_activatable_sync_action_properties</span><span class="w"> </span><span class="p">(</span><span class="n">GtkActivatable</span><span class="w"> </span><span class="o">*</span><span class="n">activatable</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkAction</span><span class="w"> </span><span class="o">*</span><span class="n">action</span><span class="p">);</span><span class="w"></span>
<span class="p">...</span><span class="w"></span>
<span class="k">static</span> <span class="kt">void</span>
<span class="n">foo_bar_class_init</span> <span class="p">(</span><span class="n">FooBarClass</span> <span class="o">*</span><span class="n">klass</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="n">foo_bar_class_init</span><span class="w"> </span><span class="p">(</span><span class="n">FooBarClass</span><span class="w"> </span><span class="o">*</span><span class="n">klass</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="p">...</span>
<span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="n">g_object_class_override_property</span> <span class="p">(</span><span class="n">gobject_class</span><span class="p">,</span> <span class="n">PROP_ACTIVATABLE_RELATED_ACTION</span><span class="p">,</span> <span class="s">&quot;related-action&quot;</span><span class="p">);</span>
<span class="n">g_object_class_override_property</span> <span class="p">(</span><span class="n">gobject_class</span><span class="p">,</span> <span class="n">PROP_ACTIVATABLE_USE_ACTION_APPEARANCE</span><span class="p">,</span> <span class="s">&quot;use-action-appearance&quot;</span><span class="p">);</span>
<span class="w"> </span><span class="n">g_object_class_override_property</span><span class="w"> </span><span class="p">(</span><span class="n">gobject_class</span><span class="p">,</span><span class="w"> </span><span class="n">PROP_ACTIVATABLE_RELATED_ACTION</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;related-action&quot;</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">g_object_class_override_property</span><span class="w"> </span><span class="p">(</span><span class="n">gobject_class</span><span class="p">,</span><span class="w"> </span><span class="n">PROP_ACTIVATABLE_USE_ACTION_APPEARANCE</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;use-action-appearance&quot;</span><span class="p">);</span><span class="w"></span>
<span class="p">...</span>
<span class="p">}</span>
<span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="k">static</span> <span class="kt">void</span>
<span class="n">foo_bar_activatable_interface_init</span> <span class="p">(</span><span class="n">GtkActivatableIface</span> <span class="o">*</span><span class="n">iface</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">iface</span><span class="o">-&gt;</span><span class="n">update</span> <span class="o">=</span> <span class="n">foo_bar_activatable_update</span><span class="p">;</span>
<span class="n">iface</span><span class="o">-&gt;</span><span class="n">sync_action_properties</span> <span class="o">=</span> <span class="n">foo_bar_activatable_sync_action_properties</span><span class="p">;</span>
<span class="p">}</span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="n">foo_bar_activatable_interface_init</span><span class="w"> </span><span class="p">(</span><span class="n">GtkActivatableIface</span><span class="w"> </span><span class="o">*</span><span class="n">iface</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">iface</span><span class="o">-&gt;</span><span class="n">update</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">foo_bar_activatable_update</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">iface</span><span class="o">-&gt;</span><span class="n">sync_action_properties</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">foo_bar_activatable_sync_action_properties</span><span class="p">;</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="p">...</span> <span class="n">Break</span> <span class="n">the</span> <span class="n">reference</span> <span class="n">using</span> <span class="n">gtk_activatable_do_set_related_action</span><span class="p">()...</span>
<span class="p">...</span><span class="w"> </span><span class="n">Break</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">reference</span><span class="w"> </span><span class="n">using</span><span class="w"> </span><span class="n">gtk_activatable_do_set_related_action</span><span class="p">()...</span><span class="w"></span>
<span class="k">static</span> <span class="kt">void</span>
<span class="n">foo_bar_dispose</span> <span class="p">(</span><span class="n">GObject</span> <span class="o">*</span><span class="n">object</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">FooBar</span> <span class="o">*</span><span class="n">bar</span> <span class="o">=</span> <span class="n">FOO_BAR</span> <span class="p">(</span><span class="n">object</span><span class="p">);</span>
<span class="n">FooBarPrivate</span> <span class="o">*</span><span class="n">priv</span> <span class="o">=</span> <span class="n">FOO_BAR_GET_PRIVATE</span> <span class="p">(</span><span class="n">bar</span><span class="p">);</span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span>
<span class="n">foo_bar_dispose</span><span class="w"> </span><span class="p">(</span><span class="n">GObject</span><span class="w"> </span><span class="o">*</span><span class="n">object</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">FooBar</span><span class="w"> </span><span class="o">*</span><span class="n">bar</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">FOO_BAR</span><span class="w"> </span><span class="p">(</span><span class="n">object</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">FooBarPrivate</span><span class="w"> </span><span class="o">*</span><span class="n">priv</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">FOO_BAR_GET_PRIVATE</span><span class="w"> </span><span class="p">(</span><span class="n">bar</span><span class="p">);</span><span class="w"></span>
<span class="p">...</span>
<span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">action</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">gtk_activatable_do_set_related_action</span> <span class="p">(</span><span class="n">GTK_ACTIVATABLE</span> <span class="p">(</span><span class="n">bar</span><span class="p">),</span> <span class="nb">NULL</span><span class="p">);</span>
<span class="n">priv</span><span class="o">-&gt;</span><span class="n">action</span> <span class="o">=</span> <span class="nb">NULL</span><span class="p">;</span>
<span class="p">}</span>
<span class="n">G_OBJECT_CLASS</span> <span class="p">(</span><span class="n">foo_bar_parent_class</span><span class="p">)</span><span class="o">-&gt;</span><span class="n">dispose</span> <span class="p">(</span><span class="n">object</span><span class="p">);</span>
<span class="p">}</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">action</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_activatable_do_set_related_action</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_ACTIVATABLE</span><span class="w"> </span><span class="p">(</span><span class="n">bar</span><span class="p">),</span><span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">action</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">NULL</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="n">G_OBJECT_CLASS</span><span class="w"> </span><span class="p">(</span><span class="n">foo_bar_parent_class</span><span class="p">)</span><span class="o">-&gt;</span><span class="n">dispose</span><span class="w"> </span><span class="p">(</span><span class="n">object</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="p">...</span> <span class="n">Handle</span> <span class="n">the</span> <span class="err"></span><span class="n">related</span><span class="o">-</span><span class="n">action</span><span class="err"></span> <span class="n">and</span> <span class="err"></span><span class="n">use</span><span class="o">-</span><span class="n">action</span><span class="o">-</span><span class="n">appearance</span><span class="err"></span> <span class="n">properties</span> <span class="p">...</span>
<span class="p">...</span><span class="w"> </span><span class="n">Handle</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="err"></span><span class="n">related</span><span class="o">-</span><span class="n">action</span><span class="err"></span><span class="w"> </span><span class="n">and</span><span class="w"> </span><span class="err"></span><span class="n">use</span><span class="o">-</span><span class="n">action</span><span class="o">-</span><span class="n">appearance</span><span class="err"></span><span class="w"> </span><span class="n">properties</span><span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="k">static</span> <span class="kt">void</span>
<span class="n">foo_bar_set_property</span> <span class="p">(</span><span class="n">GObject</span> <span class="o">*</span><span class="n">object</span><span class="p">,</span>
<span class="n">guint</span> <span class="n">prop_id</span><span class="p">,</span>
<span class="k">const</span> <span class="n">GValue</span> <span class="o">*</span><span class="n">value</span><span class="p">,</span>
<span class="n">GParamSpec</span> <span class="o">*</span><span class="n">pspec</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">FooBar</span> <span class="o">*</span><span class="n">bar</span> <span class="o">=</span> <span class="n">FOO_BAR</span> <span class="p">(</span><span class="n">object</span><span class="p">);</span>
<span class="n">FooBarPrivate</span> <span class="o">*</span><span class="n">priv</span> <span class="o">=</span> <span class="n">FOO_BAR_GET_PRIVATE</span> <span class="p">(</span><span class="n">bar</span><span class="p">);</span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="n">foo_bar_set_property</span><span class="w"> </span><span class="p">(</span><span class="n">GObject</span><span class="w"> </span><span class="o">*</span><span class="n">object</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">guint</span><span class="w"> </span><span class="n">prop_id</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="n">GValue</span><span class="w"> </span><span class="o">*</span><span class="n">value</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GParamSpec</span><span class="w"> </span><span class="o">*</span><span class="n">pspec</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">FooBar</span><span class="w"> </span><span class="o">*</span><span class="n">bar</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">FOO_BAR</span><span class="w"> </span><span class="p">(</span><span class="n">object</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">FooBarPrivate</span><span class="w"> </span><span class="o">*</span><span class="n">priv</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">FOO_BAR_GET_PRIVATE</span><span class="w"> </span><span class="p">(</span><span class="n">bar</span><span class="p">);</span><span class="w"></span>
<span class="k">switch</span> <span class="p">(</span><span class="n">prop_id</span><span class="p">)</span>
<span class="p">{</span>
<span class="w"> </span><span class="k">switch</span><span class="w"> </span><span class="p">(</span><span class="n">prop_id</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="p">...</span>
<span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="k">case</span> <span class="nl">PROP_ACTIVATABLE_RELATED_ACTION</span><span class="p">:</span>
<span class="n">foo_bar_set_related_action</span> <span class="p">(</span><span class="n">bar</span><span class="p">,</span> <span class="n">g_value_get_object</span> <span class="p">(</span><span class="n">value</span><span class="p">));</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="nl">PROP_ACTIVATABLE_USE_ACTION_APPEARANCE</span><span class="p">:</span>
<span class="n">foo_bar_set_use_action_appearance</span> <span class="p">(</span><span class="n">bar</span><span class="p">,</span> <span class="n">g_value_get_boolean</span> <span class="p">(</span><span class="n">value</span><span class="p">));</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">default</span><span class="o">:</span>
<span class="n">G_OBJECT_WARN_INVALID_PROPERTY_ID</span> <span class="p">(</span><span class="n">object</span><span class="p">,</span> <span class="n">prop_id</span><span class="p">,</span> <span class="n">pspec</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="w"> </span><span class="k">case</span><span class="w"> </span><span class="nl">PROP_ACTIVATABLE_RELATED_ACTION</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="n">foo_bar_set_related_action</span><span class="w"> </span><span class="p">(</span><span class="n">bar</span><span class="p">,</span><span class="w"> </span><span class="n">g_value_get_object</span><span class="w"> </span><span class="p">(</span><span class="n">value</span><span class="p">));</span><span class="w"></span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="k">case</span><span class="w"> </span><span class="nl">PROP_ACTIVATABLE_USE_ACTION_APPEARANCE</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="n">foo_bar_set_use_action_appearance</span><span class="w"> </span><span class="p">(</span><span class="n">bar</span><span class="p">,</span><span class="w"> </span><span class="n">g_value_get_boolean</span><span class="w"> </span><span class="p">(</span><span class="n">value</span><span class="p">));</span><span class="w"></span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="k">default</span><span class="o">:</span><span class="w"></span>
<span class="w"> </span><span class="n">G_OBJECT_WARN_INVALID_PROPERTY_ID</span><span class="w"> </span><span class="p">(</span><span class="n">object</span><span class="p">,</span><span class="w"> </span><span class="n">prop_id</span><span class="p">,</span><span class="w"> </span><span class="n">pspec</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="k">static</span> <span class="kt">void</span>
<span class="n">foo_bar_get_property</span> <span class="p">(</span><span class="n">GObject</span> <span class="o">*</span><span class="n">object</span><span class="p">,</span>
<span class="n">guint</span> <span class="n">prop_id</span><span class="p">,</span>
<span class="n">GValue</span> <span class="o">*</span><span class="n">value</span><span class="p">,</span>
<span class="n">GParamSpec</span> <span class="o">*</span><span class="n">pspec</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">FooBar</span> <span class="o">*</span><span class="n">bar</span> <span class="o">=</span> <span class="n">FOO_BAR</span> <span class="p">(</span><span class="n">object</span><span class="p">);</span>
<span class="n">FooBarPrivate</span> <span class="o">*</span><span class="n">priv</span> <span class="o">=</span> <span class="n">FOO_BAR_GET_PRIVATE</span> <span class="p">(</span><span class="n">bar</span><span class="p">);</span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="n">foo_bar_get_property</span><span class="w"> </span><span class="p">(</span><span class="n">GObject</span><span class="w"> </span><span class="o">*</span><span class="n">object</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">guint</span><span class="w"> </span><span class="n">prop_id</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GValue</span><span class="w"> </span><span class="o">*</span><span class="n">value</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GParamSpec</span><span class="w"> </span><span class="o">*</span><span class="n">pspec</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">FooBar</span><span class="w"> </span><span class="o">*</span><span class="n">bar</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">FOO_BAR</span><span class="w"> </span><span class="p">(</span><span class="n">object</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">FooBarPrivate</span><span class="w"> </span><span class="o">*</span><span class="n">priv</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">FOO_BAR_GET_PRIVATE</span><span class="w"> </span><span class="p">(</span><span class="n">bar</span><span class="p">);</span><span class="w"></span>
<span class="k">switch</span> <span class="p">(</span><span class="n">prop_id</span><span class="p">)</span>
<span class="p">{</span>
<span class="w"> </span><span class="k">switch</span><span class="w"> </span><span class="p">(</span><span class="n">prop_id</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"> </span>
<span class="p">...</span>
<span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="k">case</span> <span class="nl">PROP_ACTIVATABLE_RELATED_ACTION</span><span class="p">:</span>
<span class="n">g_value_set_object</span> <span class="p">(</span><span class="n">value</span><span class="p">,</span> <span class="n">priv</span><span class="o">-&gt;</span><span class="n">action</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">case</span> <span class="nl">PROP_ACTIVATABLE_USE_ACTION_APPEARANCE</span><span class="p">:</span>
<span class="n">g_value_set_boolean</span> <span class="p">(</span><span class="n">value</span><span class="p">,</span> <span class="n">priv</span><span class="o">-&gt;</span><span class="n">use_action_appearance</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">default</span><span class="o">:</span>
<span class="n">G_OBJECT_WARN_INVALID_PROPERTY_ID</span> <span class="p">(</span><span class="n">object</span><span class="p">,</span> <span class="n">prop_id</span><span class="p">,</span> <span class="n">pspec</span><span class="p">);</span>
<span class="k">break</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="w"> </span><span class="k">case</span><span class="w"> </span><span class="nl">PROP_ACTIVATABLE_RELATED_ACTION</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="n">g_value_set_object</span><span class="w"> </span><span class="p">(</span><span class="n">value</span><span class="p">,</span><span class="w"> </span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">action</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="k">case</span><span class="w"> </span><span class="nl">PROP_ACTIVATABLE_USE_ACTION_APPEARANCE</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="n">g_value_set_boolean</span><span class="w"> </span><span class="p">(</span><span class="n">value</span><span class="p">,</span><span class="w"> </span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">use_action_appearance</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="k">default</span><span class="o">:</span><span class="w"></span>
<span class="w"> </span><span class="n">G_OBJECT_WARN_INVALID_PROPERTY_ID</span><span class="w"> </span><span class="p">(</span><span class="n">object</span><span class="p">,</span><span class="w"> </span><span class="n">prop_id</span><span class="p">,</span><span class="w"> </span><span class="n">pspec</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="k">static</span> <span class="kt">void</span>
<span class="n">foo_bar_set_use_action_appearance</span> <span class="p">(</span><span class="n">FooBar</span> <span class="o">*</span><span class="n">bar</span><span class="p">,</span>
<span class="n">gboolean</span> <span class="n">use_appearance</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">FooBarPrivate</span> <span class="o">*</span><span class="n">priv</span> <span class="o">=</span> <span class="n">FOO_BAR_GET_PRIVATE</span> <span class="p">(</span><span class="n">bar</span><span class="p">);</span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="n">foo_bar_set_use_action_appearance</span><span class="w"> </span><span class="p">(</span><span class="n">FooBar</span><span class="w"> </span><span class="o">*</span><span class="n">bar</span><span class="p">,</span><span class="w"> </span>
<span class="w"> </span><span class="n">gboolean</span><span class="w"> </span><span class="n">use_appearance</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">FooBarPrivate</span><span class="w"> </span><span class="o">*</span><span class="n">priv</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">FOO_BAR_GET_PRIVATE</span><span class="w"> </span><span class="p">(</span><span class="n">bar</span><span class="p">);</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">use_action_appearance</span> <span class="o">!=</span> <span class="n">use_appearance</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">priv</span><span class="o">-&gt;</span><span class="n">use_action_appearance</span> <span class="o">=</span> <span class="n">use_appearance</span><span class="p">;</span>
<span class="n">gtk_activatable_sync_action_properties</span> <span class="p">(</span><span class="n">GTK_ACTIVATABLE</span> <span class="p">(</span><span class="n">bar</span><span class="p">),</span> <span class="n">priv</span><span class="o">-&gt;</span><span class="n">action</span><span class="p">);</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">use_action_appearance</span><span class="w"> </span><span class="o">!=</span><span class="w"> </span><span class="n">use_appearance</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">use_action_appearance</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">use_appearance</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span>
<span class="w"> </span><span class="n">gtk_activatable_sync_action_properties</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_ACTIVATABLE</span><span class="w"> </span><span class="p">(</span><span class="n">bar</span><span class="p">),</span><span class="w"> </span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">action</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="p">...</span> <span class="n">call</span> <span class="n">gtk_activatable_do_set_related_action</span><span class="p">()</span> <span class="n">and</span> <span class="n">then</span> <span class="n">assign</span> <span class="n">the</span> <span class="n">action</span> <span class="n">pointer</span><span class="p">,</span>
<span class="n">no</span> <span class="n">need</span> <span class="n">to</span> <span class="n">reference</span> <span class="n">the</span> <span class="n">action</span> <span class="n">here</span> <span class="n">since</span> <span class="n">gtk_activatable_do_set_related_action</span><span class="p">()</span> <span class="n">already</span>
<span class="n">holds</span> <span class="n">a</span> <span class="n">reference</span> <span class="n">here</span> <span class="k">for</span> <span class="n">you</span><span class="p">...</span>
<span class="k">static</span> <span class="kt">void</span>
<span class="n">foo_bar_set_related_action</span> <span class="p">(</span><span class="n">FooBar</span> <span class="o">*</span><span class="n">bar</span><span class="p">,</span>
<span class="n">GtkAction</span> <span class="o">*</span><span class="n">action</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">FooBarPrivate</span> <span class="o">*</span><span class="n">priv</span> <span class="o">=</span> <span class="n">FOO_BAR_GET_PRIVATE</span> <span class="p">(</span><span class="n">bar</span><span class="p">);</span>
<span class="p">...</span><span class="w"> </span><span class="n">call</span><span class="w"> </span><span class="n">gtk_activatable_do_set_related_action</span><span class="p">()</span><span class="w"> </span><span class="n">and</span><span class="w"> </span><span class="n">then</span><span class="w"> </span><span class="n">assign</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">action</span><span class="w"> </span><span class="n">pointer</span><span class="p">,</span><span class="w"> </span>
<span class="n">no</span><span class="w"> </span><span class="n">need</span><span class="w"> </span><span class="n">to</span><span class="w"> </span><span class="n">reference</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">action</span><span class="w"> </span><span class="n">here</span><span class="w"> </span><span class="n">since</span><span class="w"> </span><span class="n">gtk_activatable_do_set_related_action</span><span class="p">()</span><span class="w"> </span><span class="n">already</span><span class="w"> </span>
<span class="n">holds</span><span class="w"> </span><span class="n">a</span><span class="w"> </span><span class="n">reference</span><span class="w"> </span><span class="n">here</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">you</span><span class="p">...</span><span class="w"></span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="n">foo_bar_set_related_action</span><span class="w"> </span><span class="p">(</span><span class="n">FooBar</span><span class="w"> </span><span class="o">*</span><span class="n">bar</span><span class="p">,</span><span class="w"> </span>
<span class="w"> </span><span class="n">GtkAction</span><span class="w"> </span><span class="o">*</span><span class="n">action</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">FooBarPrivate</span><span class="w"> </span><span class="o">*</span><span class="n">priv</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">FOO_BAR_GET_PRIVATE</span><span class="w"> </span><span class="p">(</span><span class="n">bar</span><span class="p">);</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">action</span> <span class="o">==</span> <span class="n">action</span><span class="p">)</span>
<span class="k">return</span><span class="p">;</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">action</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">action</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="k">return</span><span class="p">;</span><span class="w"></span>
<span class="n">gtk_activatable_do_set_related_action</span> <span class="p">(</span><span class="n">GTK_ACTIVATABLE</span> <span class="p">(</span><span class="n">bar</span><span class="p">),</span> <span class="n">action</span><span class="p">);</span>
<span class="w"> </span><span class="n">gtk_activatable_do_set_related_action</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_ACTIVATABLE</span><span class="w"> </span><span class="p">(</span><span class="n">bar</span><span class="p">),</span><span class="w"> </span><span class="n">action</span><span class="p">);</span><span class="w"></span>
<span class="n">priv</span><span class="o">-&gt;</span><span class="n">action</span> <span class="o">=</span> <span class="n">action</span><span class="p">;</span>
<span class="p">}</span>
<span class="w"> </span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">action</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">action</span><span class="p">;</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="p">...</span> <span class="n">Selectively</span> <span class="n">reset</span> <span class="n">and</span> <span class="n">update</span> <span class="n">activatable</span> <span class="n">depending</span> <span class="n">on</span> <span class="n">the</span> <span class="n">use</span><span class="o">-</span><span class="n">action</span><span class="o">-</span><span class="n">appearance</span> <span class="n">property</span> <span class="p">...</span>
<span class="k">static</span> <span class="kt">void</span>
<span class="n">gtk_button_activatable_sync_action_properties</span> <span class="p">(</span><span class="n">GtkActivatable</span> <span class="o">*</span><span class="n">activatable</span><span class="p">,</span>
<span class="n">GtkAction</span> <span class="o">*</span><span class="n">action</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">GtkButtonPrivate</span> <span class="o">*</span><span class="n">priv</span> <span class="o">=</span> <span class="n">GTK_BUTTON_GET_PRIVATE</span> <span class="p">(</span><span class="n">activatable</span><span class="p">);</span>
<span class="p">...</span><span class="w"> </span><span class="n">Selectively</span><span class="w"> </span><span class="n">reset</span><span class="w"> </span><span class="n">and</span><span class="w"> </span><span class="n">update</span><span class="w"> </span><span class="n">activatable</span><span class="w"> </span><span class="n">depending</span><span class="w"> </span><span class="n">on</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">use</span><span class="o">-</span><span class="n">action</span><span class="o">-</span><span class="n">appearance</span><span class="w"> </span><span class="n">property</span><span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="n">gtk_button_activatable_sync_action_properties</span><span class="w"> </span><span class="p">(</span><span class="n">GtkActivatable</span><span class="w"> </span><span class="o">*</span><span class="n">activatable</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkAction</span><span class="w"> </span><span class="o">*</span><span class="n">action</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkButtonPrivate</span><span class="w"> </span><span class="o">*</span><span class="n">priv</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">GTK_BUTTON_GET_PRIVATE</span><span class="w"> </span><span class="p">(</span><span class="n">activatable</span><span class="p">);</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">action</span><span class="p">)</span>
<span class="k">return</span><span class="p">;</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="o">!</span><span class="n">action</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="k">return</span><span class="p">;</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="n">gtk_action_is_visible</span> <span class="p">(</span><span class="n">action</span><span class="p">))</span>
<span class="n">gtk_widget_show</span> <span class="p">(</span><span class="n">GTK_WIDGET</span> <span class="p">(</span><span class="n">activatable</span><span class="p">));</span>
<span class="k">else</span>
<span class="n">gtk_widget_hide</span> <span class="p">(</span><span class="n">GTK_WIDGET</span> <span class="p">(</span><span class="n">activatable</span><span class="p">));</span>
<span class="n">gtk_widget_set_sensitive</span> <span class="p">(</span><span class="n">GTK_WIDGET</span> <span class="p">(</span><span class="n">activatable</span><span class="p">),</span> <span class="n">gtk_action_is_sensitive</span> <span class="p">(</span><span class="n">action</span><span class="p">));</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">gtk_action_is_visible</span><span class="w"> </span><span class="p">(</span><span class="n">action</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_widget_show</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_WIDGET</span><span class="w"> </span><span class="p">(</span><span class="n">activatable</span><span class="p">));</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_widget_hide</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_WIDGET</span><span class="w"> </span><span class="p">(</span><span class="n">activatable</span><span class="p">));</span><span class="w"></span>
<span class="w"> </span>
<span class="w"> </span><span class="n">gtk_widget_set_sensitive</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_WIDGET</span><span class="w"> </span><span class="p">(</span><span class="n">activatable</span><span class="p">),</span><span class="w"> </span><span class="n">gtk_action_is_sensitive</span><span class="w"> </span><span class="p">(</span><span class="n">action</span><span class="p">));</span><span class="w"></span>
<span class="p">...</span>
<span class="k">if</span> <span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">use_action_appearance</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="n">gtk_action_get_stock_id</span> <span class="p">(</span><span class="n">action</span><span class="p">))</span>
<span class="n">foo_bar_set_stock</span> <span class="p">(</span><span class="n">button</span><span class="p">,</span> <span class="n">gtk_action_get_stock_id</span> <span class="p">(</span><span class="n">action</span><span class="p">));</span>
<span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="n">gtk_action_get_label</span> <span class="p">(</span><span class="n">action</span><span class="p">))</span>
<span class="n">foo_bar_set_label</span> <span class="p">(</span><span class="n">button</span><span class="p">,</span> <span class="n">gtk_action_get_label</span> <span class="p">(</span><span class="n">action</span><span class="p">));</span>
<span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="w"> </span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">use_action_appearance</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">gtk_action_get_stock_id</span><span class="w"> </span><span class="p">(</span><span class="n">action</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="n">foo_bar_set_stock</span><span class="w"> </span><span class="p">(</span><span class="n">button</span><span class="p">,</span><span class="w"> </span><span class="n">gtk_action_get_stock_id</span><span class="w"> </span><span class="p">(</span><span class="n">action</span><span class="p">));</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">gtk_action_get_label</span><span class="w"> </span><span class="p">(</span><span class="n">action</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="n">foo_bar_set_label</span><span class="w"> </span><span class="p">(</span><span class="n">button</span><span class="p">,</span><span class="w"> </span><span class="n">gtk_action_get_label</span><span class="w"> </span><span class="p">(</span><span class="n">action</span><span class="p">));</span><span class="w"></span>
<span class="p">...</span>
<span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="p">}</span>
<span class="p">}</span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="k">static</span> <span class="kt">void</span>
<span class="n">foo_bar_activatable_update</span> <span class="p">(</span><span class="n">GtkActivatable</span> <span class="o">*</span><span class="n">activatable</span><span class="p">,</span>
<span class="n">GtkAction</span> <span class="o">*</span><span class="n">action</span><span class="p">,</span>
<span class="k">const</span> <span class="n">gchar</span> <span class="o">*</span><span class="n">property_name</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">FooBarPrivate</span> <span class="o">*</span><span class="n">priv</span> <span class="o">=</span> <span class="n">FOO_BAR_GET_PRIVATE</span> <span class="p">(</span><span class="n">activatable</span><span class="p">);</span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span>
<span class="n">foo_bar_activatable_update</span><span class="w"> </span><span class="p">(</span><span class="n">GtkActivatable</span><span class="w"> </span><span class="o">*</span><span class="n">activatable</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkAction</span><span class="w"> </span><span class="o">*</span><span class="n">action</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="n">gchar</span><span class="w"> </span><span class="o">*</span><span class="n">property_name</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">FooBarPrivate</span><span class="w"> </span><span class="o">*</span><span class="n">priv</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">FOO_BAR_GET_PRIVATE</span><span class="w"> </span><span class="p">(</span><span class="n">activatable</span><span class="p">);</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="n">strcmp</span> <span class="p">(</span><span class="n">property_name</span><span class="p">,</span> <span class="s">&quot;visible&quot;</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="n">gtk_action_is_visible</span> <span class="p">(</span><span class="n">action</span><span class="p">))</span>
<span class="n">gtk_widget_show</span> <span class="p">(</span><span class="n">GTK_WIDGET</span> <span class="p">(</span><span class="n">activatable</span><span class="p">));</span>
<span class="k">else</span>
<span class="n">gtk_widget_hide</span> <span class="p">(</span><span class="n">GTK_WIDGET</span> <span class="p">(</span><span class="n">activatable</span><span class="p">));</span>
<span class="p">}</span>
<span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="n">strcmp</span> <span class="p">(</span><span class="n">property_name</span><span class="p">,</span> <span class="s">&quot;sensitive&quot;</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span><span class="p">)</span>
<span class="n">gtk_widget_set_sensitive</span> <span class="p">(</span><span class="n">GTK_WIDGET</span> <span class="p">(</span><span class="n">activatable</span><span class="p">),</span> <span class="n">gtk_action_is_sensitive</span> <span class="p">(</span><span class="n">action</span><span class="p">));</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">strcmp</span><span class="w"> </span><span class="p">(</span><span class="n">property_name</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;visible&quot;</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="mi">0</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">gtk_action_is_visible</span><span class="w"> </span><span class="p">(</span><span class="n">action</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_widget_show</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_WIDGET</span><span class="w"> </span><span class="p">(</span><span class="n">activatable</span><span class="p">));</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_widget_hide</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_WIDGET</span><span class="w"> </span><span class="p">(</span><span class="n">activatable</span><span class="p">));</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">strcmp</span><span class="w"> </span><span class="p">(</span><span class="n">property_name</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;sensitive&quot;</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="mi">0</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_widget_set_sensitive</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_WIDGET</span><span class="w"> </span><span class="p">(</span><span class="n">activatable</span><span class="p">),</span><span class="w"> </span><span class="n">gtk_action_is_sensitive</span><span class="w"> </span><span class="p">(</span><span class="n">action</span><span class="p">));</span><span class="w"></span>
<span class="p">...</span>
<span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">use_action_appearance</span><span class="p">)</span>
<span class="k">return</span><span class="p">;</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="o">!</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">use_action_appearance</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="k">return</span><span class="p">;</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="n">strcmp</span> <span class="p">(</span><span class="n">property_name</span><span class="p">,</span> <span class="s">&quot;stock-id&quot;</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span><span class="p">)</span>
<span class="n">foo_bar_set_stock</span> <span class="p">(</span><span class="n">button</span><span class="p">,</span> <span class="n">gtk_action_get_stock_id</span> <span class="p">(</span><span class="n">action</span><span class="p">));</span>
<span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="n">strcmp</span> <span class="p">(</span><span class="n">property_name</span><span class="p">,</span> <span class="s">&quot;label&quot;</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span><span class="p">)</span>
<span class="n">foo_bar_set_label</span> <span class="p">(</span><span class="n">button</span><span class="p">,</span> <span class="n">gtk_action_get_label</span> <span class="p">(</span><span class="n">action</span><span class="p">));</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">strcmp</span><span class="w"> </span><span class="p">(</span><span class="n">property_name</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;stock-id&quot;</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="mi">0</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="n">foo_bar_set_stock</span><span class="w"> </span><span class="p">(</span><span class="n">button</span><span class="p">,</span><span class="w"> </span><span class="n">gtk_action_get_stock_id</span><span class="w"> </span><span class="p">(</span><span class="n">action</span><span class="p">));</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">strcmp</span><span class="w"> </span><span class="p">(</span><span class="n">property_name</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;label&quot;</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="mi">0</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="n">foo_bar_set_label</span><span class="w"> </span><span class="p">(</span><span class="n">button</span><span class="p">,</span><span class="w"> </span><span class="n">gtk_action_get_label</span><span class="w"> </span><span class="p">(</span><span class="n">action</span><span class="p">));</span><span class="w"></span>
<span class="p">...</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -209,27 +209,27 @@ windows client-side decorations.</p>
19
20
21</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkApplication</span> <span class="o">*</span><span class="n">app</span> <span class="o">=</span> <span class="n">gtk_application_new</span> <span class="p">(</span><span class="s">&quot;org.gtk.test&quot;</span><span class="p">,</span> <span class="mi">0</span><span class="p">);</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkApplication</span><span class="w"> </span><span class="o">*</span><span class="n">app</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_application_new</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;org.gtk.test&quot;</span><span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="p">);</span><span class="w"></span>
<span class="n">GtkBuilder</span> <span class="o">*</span><span class="n">builder</span> <span class="o">=</span> <span class="n">gtk_builder_new_from_string</span> <span class="p">(</span>
<span class="s">&quot;&lt;interface&gt;&quot;</span>
<span class="s">&quot; &lt;menu id=&#39;menubar&#39;&gt;&quot;</span>
<span class="s">&quot; &lt;submenu label=&#39;_Edit&#39;&gt;&quot;</span>
<span class="s">&quot; &lt;item label=&#39;_Copy&#39; action=&#39;win.copy&#39;/&gt;&quot;</span>
<span class="s">&quot; &lt;item label=&#39;_Paste&#39; action=&#39;win.paste&#39;/&gt;&quot;</span>
<span class="s">&quot; &lt;/submenu&gt;&quot;</span>
<span class="s">&quot; &lt;/menu&gt;&quot;</span>
<span class="s">&quot;&lt;/interface&gt;&quot;</span><span class="p">,</span>
<span class="mi">-1</span><span class="p">);</span>
<span class="n">GtkBuilder</span><span class="w"> </span><span class="o">*</span><span class="n">builder</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_builder_new_from_string</span><span class="w"> </span><span class="p">(</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot;&lt;interface&gt;&quot;</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot; &lt;menu id=&#39;menubar&#39;&gt;&quot;</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot; &lt;submenu label=&#39;_Edit&#39;&gt;&quot;</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot; &lt;item label=&#39;_Copy&#39; action=&#39;win.copy&#39;/&gt;&quot;</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot; &lt;item label=&#39;_Paste&#39; action=&#39;win.paste&#39;/&gt;&quot;</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot; &lt;/submenu&gt;&quot;</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot; &lt;/menu&gt;&quot;</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot;&lt;/interface&gt;&quot;</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="mi">-1</span><span class="p">);</span><span class="w"></span>
<span class="n">GMenuModel</span> <span class="o">*</span><span class="n">menubar</span> <span class="o">=</span> <span class="n">G_MENU_MODEL</span> <span class="p">(</span><span class="n">gtk_builder_get_object</span> <span class="p">(</span><span class="n">builder</span><span class="p">,</span>
<span class="s">&quot;menubar&quot;</span><span class="p">));</span>
<span class="n">gtk_application_set_menubar</span> <span class="p">(</span><span class="n">GTK_APPLICATION</span> <span class="p">(</span><span class="n">app</span><span class="p">),</span> <span class="n">menubar</span><span class="p">);</span>
<span class="n">g_object_unref</span> <span class="p">(</span><span class="n">builder</span><span class="p">);</span>
<span class="n">GMenuModel</span><span class="w"> </span><span class="o">*</span><span class="n">menubar</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">G_MENU_MODEL</span><span class="w"> </span><span class="p">(</span><span class="n">gtk_builder_get_object</span><span class="w"> </span><span class="p">(</span><span class="n">builder</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot;menubar&quot;</span><span class="p">));</span><span class="w"></span>
<span class="n">gtk_application_set_menubar</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_APPLICATION</span><span class="w"> </span><span class="p">(</span><span class="n">app</span><span class="p">),</span><span class="w"> </span><span class="n">menubar</span><span class="p">);</span><span class="w"></span>
<span class="n">g_object_unref</span><span class="w"> </span><span class="p">(</span><span class="n">builder</span><span class="p">);</span><span class="w"></span>
<span class="c1">// ...</span>
<span class="n">GtkWidget</span> <span class="o">*</span><span class="n">window</span> <span class="o">=</span> <span class="n">gtk_application_window_new</span> <span class="p">(</span><span class="n">app</span><span class="p">);</span></pre></td>
<span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">window</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_application_window_new</span><span class="w"> </span><span class="p">(</span><span class="n">app</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -403,7 +403,7 @@ as <code class="literal">TRUE</code>, strings like “FALSE”, “f”, “no
as <code class="literal">FALSE</code>), enumerations (can be specified by their name, nick or
integer value), flags (can be specified by their name, nick, integer
value, optionally combined with “|”, e.g. “GTK_VISIBLE|GTK_REALIZED”)
and colors (in a format understood by <code class="function">gdk_rgba_parse()</code>).</p>
and colors (in a format understood by <a href="../html/gdk3-RGBA-Colors.html#gdk-rgba-parse"><code class="function">gdk_rgba_parse()</code></a>).</p>
<p>GVariants can be specified in the format understood by <code class="function">g_variant_parse()</code>,
and pixbufs can be specified as a filename of an image file to load.</p>
<p>Objects can be referred to by their name and by default refer to
@ -473,27 +473,27 @@ sections describing the widget-specific portions of UI definitions.</p>
19
20
21</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">interface</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkDialog&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;dialog1&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">child</span> <span class="n">internal</span><span class="o">-</span><span class="n">child</span><span class="o">=</span><span class="s">&quot;vbox&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkBox&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;vbox1&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;border-width&quot;</span><span class="o">&gt;</span><span class="mi">10</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">child</span> <span class="n">internal</span><span class="o">-</span><span class="n">child</span><span class="o">=</span><span class="s">&quot;action_area&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkButtonBox&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;hbuttonbox1&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;border-width&quot;</span><span class="o">&gt;</span><span class="mi">20</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkButton&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;ok_button&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;label&quot;</span><span class="o">&gt;</span><span class="n">gtk</span><span class="o">-</span><span class="n">ok</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;use-stock&quot;</span><span class="o">&gt;</span><span class="n">TRUE</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">signal</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;clicked&quot;</span> <span class="n">handler</span><span class="o">=</span><span class="s">&quot;ok_button_clicked&quot;</span><span class="o">/&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">interface</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">interface</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkDialog&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;dialog1&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="w"> </span><span class="n">internal</span><span class="o">-</span><span class="n">child</span><span class="o">=</span><span class="s">&quot;vbox&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkBox&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;vbox1&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">property</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;border-width&quot;</span><span class="o">&gt;</span><span class="mi">10</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="w"> </span><span class="n">internal</span><span class="o">-</span><span class="n">child</span><span class="o">=</span><span class="s">&quot;action_area&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkButtonBox&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;hbuttonbox1&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">property</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;border-width&quot;</span><span class="o">&gt;</span><span class="mi">20</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkButton&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;ok_button&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">property</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;label&quot;</span><span class="o">&gt;</span><span class="n">gtk</span><span class="o">-</span><span class="n">ok</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">property</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;use-stock&quot;</span><span class="o">&gt;</span><span class="n">TRUE</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">signal</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;clicked&quot;</span><span class="w"> </span><span class="n">handler</span><span class="o">=</span><span class="s">&quot;ok_button_clicked&quot;</span><span class="o">/&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span>
<span class="o">&lt;/</span><span class="n">interface</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -1634,7 +1634,7 @@ calls <code class="function">g_value_init()</code> on the <em class="parameter">
argument, so it need not be
initialised beforehand.</p>
<p>This function can handle char, uchar, boolean, int, uint, long,
ulong, enum, flags, float, double, string, <span class="type">GdkColor</span>, <span class="type">GdkRGBA</span> and
ulong, enum, flags, float, double, string, <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a>, <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> and
<a class="link" href="GtkAdjustment.html" title="GtkAdjustment"><span class="type">GtkAdjustment</span></a> type values. Support for <a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> type values is
still to come.</p>
<p>Upon errors <code class="literal">FALSE</code> will be returned and <em class="parameter"><code>error</code></em>

View File

@ -269,7 +269,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GdkWindow</span> *
<a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="returnvalue">GdkWindow</span></a> *
</td>
<td class="function_name">
<a class="link" href="GtkButton.html#gtk-button-get-event-window" title="gtk_button_get_event_window ()">gtk_button_get_event_window</a> <span class="c_punctuation">()</span>
@ -1370,7 +1370,7 @@ setting and always show the image, if available.</p>
<hr>
<div class="refsect2">
<a name="gtk-button-get-event-window"></a><h3>gtk_button_get_event_window ()</h3>
<pre class="programlisting"><span class="returnvalue">GdkWindow</span> *
<pre class="programlisting"><a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="returnvalue">GdkWindow</span></a> *
gtk_button_get_event_window (<em class="parameter"><code><a class="link" href="GtkButton.html" title="GtkButton"><span class="type">GtkButton</span></a> *button</code></em>);</pre>
<p>Returns the buttons event window if it is realized, <code class="literal">NULL</code> otherwise.
This function should be rarely needed.</p>

View File

@ -602,19 +602,19 @@ of a <a class="link" href="GtkTreeModel.html" title="GtkTreeModel"><span class="
11
12
13</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkTreeIter</span> <span class="n">iter</span><span class="p">;</span>
<span class="n">gint</span> <span class="n">minimum_width</span><span class="p">;</span>
<span class="n">gint</span> <span class="n">natural_width</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkTreeIter</span><span class="w"> </span><span class="n">iter</span><span class="p">;</span><span class="w"></span>
<span class="n">gint</span><span class="w"> </span><span class="n">minimum_width</span><span class="p">;</span><span class="w"></span>
<span class="n">gint</span><span class="w"> </span><span class="n">natural_width</span><span class="p">;</span><span class="w"></span>
<span class="n">valid</span> <span class="o">=</span> <span class="n">gtk_tree_model_get_iter_first</span> <span class="p">(</span><span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span>
<span class="k">while</span> <span class="p">(</span><span class="n">valid</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">gtk_cell_area_apply_attributes</span> <span class="p">(</span><span class="n">area</span><span class="p">,</span> <span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span> <span class="n">FALSE</span><span class="p">,</span> <span class="n">FALSE</span><span class="p">);</span>
<span class="n">gtk_cell_area_get_preferred_width</span> <span class="p">(</span><span class="n">area</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">widget</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">);</span>
<span class="n">valid</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_tree_model_get_iter_first</span><span class="w"> </span><span class="p">(</span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span><span class="w"></span>
<span class="k">while</span><span class="w"> </span><span class="p">(</span><span class="n">valid</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_cell_area_apply_attributes</span><span class="w"> </span><span class="p">(</span><span class="n">area</span><span class="p">,</span><span class="w"> </span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span><span class="w"> </span><span class="n">FALSE</span><span class="p">,</span><span class="w"> </span><span class="n">FALSE</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_cell_area_get_preferred_width</span><span class="w"> </span><span class="p">(</span><span class="n">area</span><span class="p">,</span><span class="w"> </span><span class="n">context</span><span class="p">,</span><span class="w"> </span><span class="n">widget</span><span class="p">,</span><span class="w"> </span><span class="nb">NULL</span><span class="p">,</span><span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span>
<span class="n">valid</span> <span class="o">=</span> <span class="n">gtk_tree_model_iter_next</span> <span class="p">(</span><span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span>
<span class="p">}</span>
<span class="n">gtk_cell_area_context_get_preferred_width</span> <span class="p">(</span><span class="n">context</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">minimum_width</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">natural_width</span><span class="p">);</span></pre></td>
<span class="w"> </span><span class="n">valid</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_tree_model_iter_next</span><span class="w"> </span><span class="p">(</span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="n">gtk_cell_area_context_get_preferred_width</span><span class="w"> </span><span class="p">(</span><span class="n">context</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">minimum_width</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">natural_width</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -653,18 +653,18 @@ take up the full width of the layouting widget would look like:</p>
10
11
12</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="kt">void</span>
<span class="nf">foo_get_preferred_width</span> <span class="p">(</span><span class="n">GtkWidget</span> <span class="o">*</span><span class="n">widget</span><span class="p">,</span>
<span class="n">gint</span> <span class="o">*</span><span class="n">minimum_size</span><span class="p">,</span>
<span class="n">gint</span> <span class="o">*</span><span class="n">natural_size</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">Foo</span> <span class="o">*</span><span class="n">foo</span> <span class="o">=</span> <span class="n">FOO</span> <span class="p">(</span><span class="n">widget</span><span class="p">);</span>
<span class="n">FooPrivate</span> <span class="o">*</span><span class="n">priv</span> <span class="o">=</span> <span class="n">foo</span><span class="o">-&gt;</span><span class="n">priv</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="nf">foo_get_preferred_width</span><span class="w"> </span><span class="p">(</span><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">widget</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gint</span><span class="w"> </span><span class="o">*</span><span class="n">minimum_size</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gint</span><span class="w"> </span><span class="o">*</span><span class="n">natural_size</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">Foo</span><span class="w"> </span><span class="o">*</span><span class="n">foo</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">FOO</span><span class="w"> </span><span class="p">(</span><span class="n">widget</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">FooPrivate</span><span class="w"> </span><span class="o">*</span><span class="n">priv</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">foo</span><span class="o">-&gt;</span><span class="n">priv</span><span class="p">;</span><span class="w"></span>
<span class="n">foo_ensure_at_least_one_handfull_of_rows_have_been_requested</span> <span class="p">(</span><span class="n">foo</span><span class="p">);</span>
<span class="w"> </span><span class="n">foo_ensure_at_least_one_handfull_of_rows_have_been_requested</span><span class="w"> </span><span class="p">(</span><span class="n">foo</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_cell_area_context_get_preferred_width</span> <span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">context</span><span class="p">,</span> <span class="n">minimum_size</span><span class="p">,</span> <span class="n">natural_size</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="n">gtk_cell_area_context_get_preferred_width</span><span class="w"> </span><span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">context</span><span class="p">,</span><span class="w"> </span><span class="n">minimum_size</span><span class="p">,</span><span class="w"> </span><span class="n">natural_size</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -709,27 +709,27 @@ root level of a <a class="link" href="GtkTreeModel.html" title="GtkTreeModel"><s
19
20
21</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkTreeIter</span> <span class="n">iter</span><span class="p">;</span>
<span class="n">gint</span> <span class="n">minimum_height</span><span class="p">;</span>
<span class="n">gint</span> <span class="n">natural_height</span><span class="p">;</span>
<span class="n">gint</span> <span class="n">full_minimum_height</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
<span class="n">gint</span> <span class="n">full_natural_height</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkTreeIter</span><span class="w"> </span><span class="n">iter</span><span class="p">;</span><span class="w"></span>
<span class="n">gint</span><span class="w"> </span><span class="n">minimum_height</span><span class="p">;</span><span class="w"></span>
<span class="n">gint</span><span class="w"> </span><span class="n">natural_height</span><span class="p">;</span><span class="w"></span>
<span class="n">gint</span><span class="w"> </span><span class="n">full_minimum_height</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span><span class="w"></span>
<span class="n">gint</span><span class="w"> </span><span class="n">full_natural_height</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span><span class="w"></span>
<span class="n">valid</span> <span class="o">=</span> <span class="n">gtk_tree_model_get_iter_first</span> <span class="p">(</span><span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span>
<span class="k">while</span> <span class="p">(</span><span class="n">valid</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">gtk_cell_area_apply_attributes</span> <span class="p">(</span><span class="n">area</span><span class="p">,</span> <span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span> <span class="n">FALSE</span><span class="p">,</span> <span class="n">FALSE</span><span class="p">);</span>
<span class="n">gtk_cell_area_get_preferred_height_for_width</span> <span class="p">(</span><span class="n">area</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">widget</span><span class="p">,</span>
<span class="n">width</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">minimum_height</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">natural_height</span><span class="p">);</span>
<span class="n">valid</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_tree_model_get_iter_first</span><span class="w"> </span><span class="p">(</span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span><span class="w"></span>
<span class="k">while</span><span class="w"> </span><span class="p">(</span><span class="n">valid</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_cell_area_apply_attributes</span><span class="w"> </span><span class="p">(</span><span class="n">area</span><span class="p">,</span><span class="w"> </span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span><span class="w"> </span><span class="n">FALSE</span><span class="p">,</span><span class="w"> </span><span class="n">FALSE</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_cell_area_get_preferred_height_for_width</span><span class="w"> </span><span class="p">(</span><span class="n">area</span><span class="p">,</span><span class="w"> </span><span class="n">context</span><span class="p">,</span><span class="w"> </span><span class="n">widget</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">width</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">minimum_height</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">natural_height</span><span class="p">);</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="n">width_is_for_allocation</span><span class="p">)</span>
<span class="n">cache_row_height</span> <span class="p">(</span><span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span> <span class="n">minimum_height</span><span class="p">,</span> <span class="n">natural_height</span><span class="p">);</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">width_is_for_allocation</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="n">cache_row_height</span><span class="w"> </span><span class="p">(</span><span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span><span class="w"> </span><span class="n">minimum_height</span><span class="p">,</span><span class="w"> </span><span class="n">natural_height</span><span class="p">);</span><span class="w"></span>
<span class="n">full_minimum_height</span> <span class="o">+=</span> <span class="n">minimum_height</span><span class="p">;</span>
<span class="n">full_natural_height</span> <span class="o">+=</span> <span class="n">natural_height</span><span class="p">;</span>
<span class="w"> </span><span class="n">full_minimum_height</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="n">minimum_height</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">full_natural_height</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="n">natural_height</span><span class="p">;</span><span class="w"></span>
<span class="n">valid</span> <span class="o">=</span> <span class="n">gtk_tree_model_iter_next</span> <span class="p">(</span><span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="n">valid</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_tree_model_iter_next</span><span class="w"> </span><span class="p">(</span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -790,28 +790,28 @@ runs as follows:</p>
20
21
22</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkAllocation</span> <span class="n">allocation</span><span class="p">;</span>
<span class="n">GdkRectangle</span> <span class="n">cell_area</span> <span class="o">=</span> <span class="p">{</span> <span class="mi">0</span><span class="p">,</span> <span class="p">};</span>
<span class="n">GtkTreeIter</span> <span class="n">iter</span><span class="p">;</span>
<span class="n">gint</span> <span class="n">minimum_width</span><span class="p">;</span>
<span class="n">gint</span> <span class="n">natural_width</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkAllocation</span><span class="w"> </span><span class="n">allocation</span><span class="p">;</span><span class="w"></span>
<span class="n">GdkRectangle</span><span class="w"> </span><span class="n">cell_area</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">{</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="p">};</span><span class="w"></span>
<span class="n">GtkTreeIter</span><span class="w"> </span><span class="n">iter</span><span class="p">;</span><span class="w"></span>
<span class="n">gint</span><span class="w"> </span><span class="n">minimum_width</span><span class="p">;</span><span class="w"></span>
<span class="n">gint</span><span class="w"> </span><span class="n">natural_width</span><span class="p">;</span><span class="w"></span>
<span class="n">gtk_widget_get_allocation</span> <span class="p">(</span><span class="n">widget</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">allocation</span><span class="p">);</span>
<span class="n">cell_area</span><span class="p">.</span><span class="n">width</span> <span class="o">=</span> <span class="n">allocation</span><span class="p">.</span><span class="n">width</span><span class="p">;</span>
<span class="n">gtk_widget_get_allocation</span><span class="w"> </span><span class="p">(</span><span class="n">widget</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">allocation</span><span class="p">);</span><span class="w"></span>
<span class="n">cell_area</span><span class="p">.</span><span class="n">width</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">allocation</span><span class="p">.</span><span class="n">width</span><span class="p">;</span><span class="w"></span>
<span class="n">valid</span> <span class="o">=</span> <span class="n">gtk_tree_model_get_iter_first</span> <span class="p">(</span><span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span>
<span class="k">while</span> <span class="p">(</span><span class="n">valid</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">cell_area</span><span class="p">.</span><span class="n">height</span> <span class="o">=</span> <span class="n">get_cached_height_for_row</span> <span class="p">(</span><span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span>
<span class="n">valid</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_tree_model_get_iter_first</span><span class="w"> </span><span class="p">(</span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span><span class="w"></span>
<span class="k">while</span><span class="w"> </span><span class="p">(</span><span class="n">valid</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">cell_area</span><span class="p">.</span><span class="n">height</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">get_cached_height_for_row</span><span class="w"> </span><span class="p">(</span><span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_cell_area_apply_attributes</span> <span class="p">(</span><span class="n">area</span><span class="p">,</span> <span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span> <span class="n">FALSE</span><span class="p">,</span> <span class="n">FALSE</span><span class="p">);</span>
<span class="n">gtk_cell_area_render</span> <span class="p">(</span><span class="n">area</span><span class="p">,</span> <span class="n">context</span><span class="p">,</span> <span class="n">widget</span><span class="p">,</span> <span class="n">cr</span><span class="p">,</span>
<span class="o">&amp;</span><span class="n">cell_area</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">cell_area</span><span class="p">,</span> <span class="n">state_flags</span><span class="p">,</span> <span class="n">FALSE</span><span class="p">);</span>
<span class="w"> </span><span class="n">gtk_cell_area_apply_attributes</span><span class="w"> </span><span class="p">(</span><span class="n">area</span><span class="p">,</span><span class="w"> </span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span><span class="w"> </span><span class="n">FALSE</span><span class="p">,</span><span class="w"> </span><span class="n">FALSE</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_cell_area_render</span><span class="w"> </span><span class="p">(</span><span class="n">area</span><span class="p">,</span><span class="w"> </span><span class="n">context</span><span class="p">,</span><span class="w"> </span><span class="n">widget</span><span class="p">,</span><span class="w"> </span><span class="n">cr</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="o">&amp;</span><span class="n">cell_area</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">cell_area</span><span class="p">,</span><span class="w"> </span><span class="n">state_flags</span><span class="p">,</span><span class="w"> </span><span class="n">FALSE</span><span class="p">);</span><span class="w"></span>
<span class="n">cell_area</span><span class="p">.</span><span class="n">y</span> <span class="o">+=</span> <span class="n">cell_area</span><span class="p">.</span><span class="n">height</span><span class="p">;</span>
<span class="w"> </span><span class="n">cell_area</span><span class="p">.</span><span class="n">y</span><span class="w"> </span><span class="o">+=</span><span class="w"> </span><span class="n">cell_area</span><span class="p">.</span><span class="n">height</span><span class="p">;</span><span class="w"></span>
<span class="n">valid</span> <span class="o">=</span> <span class="n">gtk_tree_model_iter_next</span> <span class="p">(</span><span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="n">valid</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_tree_model_iter_next</span><span class="w"> </span><span class="p">(</span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -911,61 +911,61 @@ should be implemented:</p>
53
54
55</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="n">gboolean</span>
<span class="nf">foo_focus</span> <span class="p">(</span><span class="n">GtkWidget</span> <span class="o">*</span><span class="n">widget</span><span class="p">,</span>
<span class="n">GtkDirectionType</span> <span class="n">direction</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">Foo</span> <span class="o">*</span><span class="n">foo</span> <span class="o">=</span> <span class="n">FOO</span> <span class="p">(</span><span class="n">widget</span><span class="p">);</span>
<span class="n">FooPrivate</span> <span class="o">*</span><span class="n">priv</span> <span class="o">=</span> <span class="n">foo</span><span class="o">-&gt;</span><span class="n">priv</span><span class="p">;</span>
<span class="n">gint</span> <span class="n">focus_row</span><span class="p">;</span>
<span class="n">gboolean</span> <span class="n">have_focus</span> <span class="o">=</span> <span class="n">FALSE</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="n">gboolean</span><span class="w"></span>
<span class="nf">foo_focus</span><span class="w"> </span><span class="p">(</span><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">widget</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkDirectionType</span><span class="w"> </span><span class="n">direction</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">Foo</span><span class="w"> </span><span class="o">*</span><span class="n">foo</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">FOO</span><span class="w"> </span><span class="p">(</span><span class="n">widget</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">FooPrivate</span><span class="w"> </span><span class="o">*</span><span class="n">priv</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">foo</span><span class="o">-&gt;</span><span class="n">priv</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">gint</span><span class="w"> </span><span class="n">focus_row</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">gboolean</span><span class="w"> </span><span class="n">have_focus</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">FALSE</span><span class="p">;</span><span class="w"></span>
<span class="n">focus_row</span> <span class="o">=</span> <span class="n">priv</span><span class="o">-&gt;</span><span class="n">focus_row</span><span class="p">;</span>
<span class="w"> </span><span class="n">focus_row</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">focus_row</span><span class="p">;</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">gtk_widget_has_focus</span> <span class="p">(</span><span class="n">widget</span><span class="p">))</span>
<span class="n">gtk_widget_grab_focus</span> <span class="p">(</span><span class="n">widget</span><span class="p">);</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="o">!</span><span class="n">gtk_widget_has_focus</span><span class="w"> </span><span class="p">(</span><span class="n">widget</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_widget_grab_focus</span><span class="w"> </span><span class="p">(</span><span class="n">widget</span><span class="p">);</span><span class="w"></span>
<span class="n">valid</span> <span class="o">=</span> <span class="n">gtk_tree_model_iter_nth_child</span> <span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">,</span> <span class="n">priv</span><span class="o">-&gt;</span><span class="n">focus_row</span><span class="p">);</span>
<span class="k">while</span> <span class="p">(</span><span class="n">valid</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">gtk_cell_area_apply_attributes</span> <span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">area</span><span class="p">,</span> <span class="n">priv</span><span class="o">-&gt;</span><span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span> <span class="n">FALSE</span><span class="p">,</span> <span class="n">FALSE</span><span class="p">);</span>
<span class="w"> </span><span class="n">valid</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_tree_model_iter_nth_child</span><span class="w"> </span><span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span><span class="w"> </span><span class="nb">NULL</span><span class="p">,</span><span class="w"> </span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">focus_row</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="k">while</span><span class="w"> </span><span class="p">(</span><span class="n">valid</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_cell_area_apply_attributes</span><span class="w"> </span><span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">area</span><span class="p">,</span><span class="w"> </span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span><span class="w"> </span><span class="n">FALSE</span><span class="p">,</span><span class="w"> </span><span class="n">FALSE</span><span class="p">);</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="n">gtk_cell_area_focus</span> <span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">area</span><span class="p">,</span> <span class="n">direction</span><span class="p">))</span>
<span class="p">{</span>
<span class="n">priv</span><span class="o">-&gt;</span><span class="n">focus_row</span> <span class="o">=</span> <span class="n">focus_row</span><span class="p">;</span>
<span class="n">have_focus</span> <span class="o">=</span> <span class="n">TRUE</span><span class="p">;</span>
<span class="k">break</span><span class="p">;</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="n">direction</span> <span class="o">==</span> <span class="n">GTK_DIR_RIGHT</span> <span class="o">||</span>
<span class="n">direction</span> <span class="o">==</span> <span class="n">GTK_DIR_LEFT</span><span class="p">)</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="n">direction</span> <span class="o">==</span> <span class="n">GTK_DIR_UP</span> <span class="o">||</span>
<span class="n">direction</span> <span class="o">==</span> <span class="n">GTK_DIR_TAB_BACKWARD</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="n">focus_row</span> <span class="o">==</span> <span class="mi">0</span><span class="p">)</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">else</span>
<span class="p">{</span>
<span class="n">focus_row</span><span class="o">--</span><span class="p">;</span>
<span class="n">valid</span> <span class="o">=</span> <span class="n">gtk_tree_model_iter_nth_child</span> <span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">,</span> <span class="n">focus_row</span><span class="p">);</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="n">focus_row</span> <span class="o">==</span> <span class="n">last_row</span><span class="p">)</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">else</span>
<span class="p">{</span>
<span class="n">focus_row</span><span class="o">++</span><span class="p">;</span>
<span class="n">valid</span> <span class="o">=</span> <span class="n">gtk_tree_model_iter_next</span> <span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="k">return</span> <span class="n">have_focus</span><span class="p">;</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">gtk_cell_area_focus</span><span class="w"> </span><span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">area</span><span class="p">,</span><span class="w"> </span><span class="n">direction</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">focus_row</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">focus_row</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">have_focus</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">TRUE</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">direction</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">GTK_DIR_RIGHT</span><span class="w"> </span><span class="o">||</span><span class="w"></span>
<span class="w"> </span><span class="n">direction</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">GTK_DIR_LEFT</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">direction</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">GTK_DIR_UP</span><span class="w"> </span><span class="o">||</span><span class="w"></span>
<span class="w"> </span><span class="n">direction</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">GTK_DIR_TAB_BACKWARD</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">focus_row</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="mi">0</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">focus_row</span><span class="o">--</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">valid</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_tree_model_iter_nth_child</span><span class="w"> </span><span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span><span class="w"> </span><span class="nb">NULL</span><span class="p">,</span><span class="w"> </span><span class="n">focus_row</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">focus_row</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">last_row</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">focus_row</span><span class="o">++</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">valid</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_tree_model_iter_next</span><span class="w"> </span><span class="p">(</span><span class="n">priv</span><span class="o">-&gt;</span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">have_focus</span><span class="p">;</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -1038,8 +1038,8 @@ the cell renderers of a <a class="link" href="GtkCellArea.html" title="GtkCellAr
<a name="GtkCellAllocCallback"></a><h3>GtkCellAllocCallback ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
<span class="c_punctuation">(</span>*GtkCellAllocCallback<span class="c_punctuation">)</span> (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *renderer</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_area</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_background</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_background</code></em>,
<em class="parameter"><code><span class="type">gpointer</span> data</code></em>);</pre>
<p>The type of the callback functions used for iterating over the
cell renderers and their allocated areas inside a <a class="link" href="GtkCellArea.html" title="GtkCellArea"><span class="type">GtkCellArea</span></a>,
@ -1273,8 +1273,8 @@ gtk_cell_area_foreach (<em class="parameter"><code><a class="link" href="GtkCell
gtk_cell_area_foreach_alloc (<em class="parameter"><code><a class="link" href="GtkCellArea.html" title="GtkCellArea"><span class="type">GtkCellArea</span></a> *area</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellAreaContext.html" title="GtkCellAreaContext"><span class="type">GtkCellAreaContext</span></a> *context</code></em>,
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_area</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *background_area</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *background_area</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellArea.html#GtkCellAllocCallback" title="GtkCellAllocCallback ()"><span class="type">GtkCellAllocCallback</span></a> callback</code></em>,
<em class="parameter"><code><span class="type">gpointer</span> callback_data</code></em>);</pre>
<p>Calls <em class="parameter"><code>callback</code></em>
@ -1342,8 +1342,8 @@ relative coordinates of the background area</p></td>
gtk_cell_area_event (<em class="parameter"><code><a class="link" href="GtkCellArea.html" title="GtkCellArea"><span class="type">GtkCellArea</span></a> *area</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellAreaContext.html" title="GtkCellAreaContext"><span class="type">GtkCellAreaContext</span></a> *context</code></em>,
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
<em class="parameter"><code><span class="type">GdkEvent</span> *event</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_area</code></em>,
<em class="parameter"><code><a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> *event</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState"><span class="type">GtkCellRendererState</span></a> flags</code></em>);</pre>
<p>Delegates event handling to a <a class="link" href="GtkCellArea.html" title="GtkCellArea"><span class="type">GtkCellArea</span></a>.</p>
<div class="refsect3">
@ -1373,7 +1373,7 @@ is rendering to</p></td>
</tr>
<tr>
<td class="parameter_name"><p>event</p></td>
<td class="parameter_description"><p>the <span class="type">GdkEvent</span> to handle</p></td>
<td class="parameter_description"><p>the <a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> to handle</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -1407,8 +1407,8 @@ gtk_cell_area_render (<em class="parameter"><code><a class="link" href="GtkCellA
<em class="parameter"><code><a class="link" href="GtkCellAreaContext.html" title="GtkCellAreaContext"><span class="type">GtkCellAreaContext</span></a> *context</code></em>,
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/cairo/cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> *cr</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *background_area</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_area</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *background_area</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState"><span class="type">GtkCellRendererState</span></a> flags</code></em>,
<em class="parameter"><code><span class="type">gboolean</span> paint_focus</code></em>);</pre>
<p>Renders <em class="parameter"><code>area</code></em>
@ -1485,8 +1485,8 @@ gtk_cell_area_get_cell_allocation (<em class="parameter"><code><a class="link" h
<em class="parameter"><code><a class="link" href="GtkCellAreaContext.html" title="GtkCellAreaContext"><span class="type">GtkCellAreaContext</span></a> *context</code></em>,
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *renderer</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_area</code></em>,
<em class="parameter"><code><span class="type">GdkRectangle</span> *allocation</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
<em class="parameter"><code><a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *allocation</code></em>);</pre>
<p>Derives the allocation of <em class="parameter"><code>renderer</code></em>
inside <em class="parameter"><code>area</code></em>
if <em class="parameter"><code>area</code></em>
@ -1549,10 +1549,10 @@ for this row</p></td>
gtk_cell_area_get_cell_at_position (<em class="parameter"><code><a class="link" href="GtkCellArea.html" title="GtkCellArea"><span class="type">GtkCellArea</span></a> *area</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellAreaContext.html" title="GtkCellAreaContext"><span class="type">GtkCellAreaContext</span></a> *context</code></em>,
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_area</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
<em class="parameter"><code><span class="type">gint</span> x</code></em>,
<em class="parameter"><code><span class="type">gint</span> y</code></em>,
<em class="parameter"><code><span class="type">GdkRectangle</span> *alloc_area</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *alloc_area</code></em>);</pre>
<p>Gets the <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> at <em class="parameter"><code>x</code></em>
and <em class="parameter"><code>y</code></em>
coordinates inside <em class="parameter"><code>area</code></em>
@ -2696,7 +2696,7 @@ can do anything when activated.</p>
gtk_cell_area_activate (<em class="parameter"><code><a class="link" href="GtkCellArea.html" title="GtkCellArea"><span class="type">GtkCellArea</span></a> *area</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellAreaContext.html" title="GtkCellAreaContext"><span class="type">GtkCellAreaContext</span></a> *context</code></em>,
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_area</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState"><span class="type">GtkCellRendererState</span></a> flags</code></em>,
<em class="parameter"><code><span class="type">gboolean</span> edit_only</code></em>);</pre>
<p>Activates <em class="parameter"><code>area</code></em>
@ -3150,8 +3150,8 @@ to edit the currently edited cell.</p>
gtk_cell_area_activate_cell (<em class="parameter"><code><a class="link" href="GtkCellArea.html" title="GtkCellArea"><span class="type">GtkCellArea</span></a> *area</code></em>,
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *renderer</code></em>,
<em class="parameter"><code><span class="type">GdkEvent</span> *event</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_area</code></em>,
<em class="parameter"><code><a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> *event</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState"><span class="type">GtkCellRendererState</span></a> flags</code></em>);</pre>
<p>This is used by <a class="link" href="GtkCellArea.html" title="GtkCellArea"><span class="type">GtkCellArea</span></a> subclasses when handling events
to activate cells, the base <a class="link" href="GtkCellArea.html" title="GtkCellArea"><span class="type">GtkCellArea</span></a> class activates cells
@ -3185,12 +3185,12 @@ to activate</p></td>
</tr>
<tr>
<td class="parameter_name"><p>event</p></td>
<td class="parameter_description"><p>the <span class="type">GdkEvent</span> for which cell activation should occur</p></td>
<td class="parameter_description"><p>the <a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> for which cell activation should occur</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>cell_area</p></td>
<td class="parameter_description"><p>the <span class="type">GdkRectangle</span> in <em class="parameter"><code>widget</code></em>
<td class="parameter_description"><p>the <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> in <em class="parameter"><code>widget</code></em>
relative coordinates
of <em class="parameter"><code>renderer</code></em>
for the current row.</p></td>
@ -3254,8 +3254,8 @@ edit widget.</p>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_cell_area_inner_cell_area (<em class="parameter"><code><a class="link" href="GtkCellArea.html" title="GtkCellArea"><span class="type">GtkCellArea</span></a> *area</code></em>,
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_area</code></em>,
<em class="parameter"><code><span class="type">GdkRectangle</span> *inner_area</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
<em class="parameter"><code><a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *inner_area</code></em>);</pre>
<p>This is a convenience function for <a class="link" href="GtkCellArea.html" title="GtkCellArea"><span class="type">GtkCellArea</span></a> implementations
to get the inner area where a given <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> will be
rendered. It removes any padding previously added by <a class="link" href="GtkCellArea.html#gtk-cell-area-request-renderer" title="gtk_cell_area_request_renderer ()"><code class="function">gtk_cell_area_request_renderer()</code></a>.</p>
@ -3665,7 +3665,7 @@ a result of a call <a class="link" href="GtkCellArea.html#gtk-cell-area-activate
user_function (<a class="link" href="GtkCellArea.html" title="GtkCellArea"><span class="type">GtkCellArea</span></a> *area,
<a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *renderer,
<a class="link" href="GtkCellEditable.html" title="GtkCellEditable"><span class="type">GtkCellEditable</span></a> *editable,
<span class="type">GdkRectangle</span> *cell_area,
<a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area,
<span class="type">char</span> *path,
<span class="type">gpointer</span> user_data)</pre>
<p>Indicates that editing has started on <em class="parameter"><code>renderer</code></em>
@ -3699,7 +3699,7 @@ should be added to the owning cell-layouting widget at <em class="parameter"><co
</tr>
<tr>
<td class="parameter_name"><p>cell_area</p></td>
<td class="parameter_description"><p>the <a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> relative <span class="type">GdkRectangle</span> coordinates
<td class="parameter_description"><p>the <a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> relative <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> coordinates
where <em class="parameter"><code>editable</code></em>
should be added</p></td>
<td class="parameter_annotations"> </td>

View File

@ -162,7 +162,7 @@ temporary widgets should be configured for editing, get the new value, etc.</p>
<a name="gtk-cell-editable-start-editing"></a><h3>gtk_cell_editable_start_editing ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_cell_editable_start_editing (<em class="parameter"><code><a class="link" href="GtkCellEditable.html" title="GtkCellEditable"><span class="type">GtkCellEditable</span></a> *cell_editable</code></em>,
<em class="parameter"><code><span class="type">GdkEvent</span> *event</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> *event</code></em>);</pre>
<p>Begins editing on a <em class="parameter"><code>cell_editable</code></em>
.</p>
<p>The <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> for the cell creates and returns a <a class="link" href="GtkCellEditable.html" title="GtkCellEditable"><span class="type">GtkCellEditable</span></a> from
@ -189,7 +189,7 @@ lifetime is temporary and does not persist across other edits and/or cells.</p>
</tr>
<tr>
<td class="parameter_name"><p>event</p></td>
<td class="parameter_description"><p>The <span class="type">GdkEvent</span> that began the editing process, or
<td class="parameter_description"><p>The <a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> that began the editing process, or
<code class="literal">NULL</code> if editing was initiated programmatically. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>

View File

@ -212,14 +212,14 @@ attribute value.</p>
6
7
8</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkCellView&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkCellRendererText&quot;</span><span class="o">/&gt;</span>
<span class="o">&lt;</span><span class="n">attributes</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">attribute</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;text&quot;</span><span class="o">&gt;</span><span class="mi">0</span><span class="o">&lt;/</span><span class="n">attribute</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">attributes</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkCellView&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkCellRendererText&quot;</span><span class="o">/&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">attributes</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">attribute</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;text&quot;</span><span class="o">&gt;</span><span class="mi">0</span><span class="o">&lt;/</span><span class="n">attribute</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">attributes</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -245,15 +245,15 @@ specifying the custom <code class="literal">&lt;cell-packing&gt;</code> attribut
7
8
9</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkTreeViewColumn&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkCellRendererText&quot;</span><span class="o">/&gt;</span>
<span class="o">&lt;</span><span class="n">cell</span><span class="o">-</span><span class="n">packing</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;align&quot;</span><span class="o">&gt;</span><span class="n">True</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;expand&quot;</span><span class="o">&gt;</span><span class="n">False</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">cell</span><span class="o">-</span><span class="n">packing</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkTreeViewColumn&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkCellRendererText&quot;</span><span class="o">/&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">cell</span><span class="o">-</span><span class="n">packing</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">property</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;align&quot;</span><span class="o">&gt;</span><span class="n">True</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">property</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;expand&quot;</span><span class="o">&gt;</span><span class="n">False</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">cell</span><span class="o">-</span><span class="n">packing</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -274,7 +274,7 @@ widgets. This means that it is possible to e.g. do</p>
<tbody>
<tr>
<td class="listing_lines" align="right"><pre>1</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">combo</span> <span class="o">=</span> <span class="n">g_object_new</span> <span class="p">(</span><span class="n">GTK_TYPE_COMBO_BOX</span><span class="p">,</span> <span class="s">&quot;cell-area&quot;</span><span class="p">,</span> <span class="n">my_cell_area</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">);</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">combo</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">g_object_new</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_TYPE_COMBO_BOX</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;cell-area&quot;</span><span class="p">,</span><span class="w"> </span><span class="n">my_cell_area</span><span class="p">,</span><span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -310,24 +310,24 @@ you to the problem).</p>
16
17
18</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="kt">void</span>
<span class="nf">my_combo_box_init</span> <span class="p">(</span><span class="n">MyComboBox</span> <span class="o">*</span><span class="n">b</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">GtkCellRenderer</span> <span class="o">*</span><span class="n">cell</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="nf">my_combo_box_init</span><span class="w"> </span><span class="p">(</span><span class="n">MyComboBox</span><span class="w"> </span><span class="o">*</span><span class="n">b</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkCellRenderer</span><span class="w"> </span><span class="o">*</span><span class="n">cell</span><span class="p">;</span><span class="w"></span>
<span class="n">cell</span> <span class="o">=</span> <span class="n">gtk_cell_renderer_pixbuf_new</span> <span class="p">();</span>
<span class="c1">// The following call causes the default cell area for combo boxes,</span>
<span class="c1">// a GtkCellAreaBox, to be instantiated</span>
<span class="n">gtk_cell_layout_pack_start</span> <span class="p">(</span><span class="n">GTK_CELL_LAYOUT</span> <span class="p">(</span><span class="n">b</span><span class="p">),</span> <span class="n">cell</span><span class="p">,</span> <span class="n">FALSE</span><span class="p">);</span>
<span class="p">...</span>
<span class="p">}</span>
<span class="w"> </span><span class="n">cell</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_cell_renderer_pixbuf_new</span><span class="w"> </span><span class="p">();</span><span class="w"></span>
<span class="w"> </span><span class="c1">// The following call causes the default cell area for combo boxes,</span>
<span class="w"> </span><span class="c1">// a GtkCellAreaBox, to be instantiated</span>
<span class="w"> </span><span class="n">gtk_cell_layout_pack_start</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_CELL_LAYOUT</span><span class="w"> </span><span class="p">(</span><span class="n">b</span><span class="p">),</span><span class="w"> </span><span class="n">cell</span><span class="p">,</span><span class="w"> </span><span class="n">FALSE</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="n">GtkWidget</span> <span class="o">*</span>
<span class="nf">my_combo_box_new</span> <span class="p">(</span><span class="n">GtkCellArea</span> <span class="o">*</span><span class="n">area</span><span class="p">)</span>
<span class="p">{</span>
<span class="c1">// This call is going to cause a warning about area being ignored</span>
<span class="k">return</span> <span class="n">g_object_new</span> <span class="p">(</span><span class="n">MY_TYPE_COMBO_BOX</span><span class="p">,</span> <span class="s">&quot;cell-area&quot;</span><span class="p">,</span> <span class="n">area</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="w"></span>
<span class="nf">my_combo_box_new</span><span class="w"> </span><span class="p">(</span><span class="n">GtkCellArea</span><span class="w"> </span><span class="o">*</span><span class="n">area</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// This call is going to cause a warning about area being ignored</span>
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">g_object_new</span><span class="w"> </span><span class="p">(</span><span class="n">MY_TYPE_COMBO_BOX</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;cell-area&quot;</span><span class="p">,</span><span class="w"> </span><span class="n">area</span><span class="p">,</span><span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -262,13 +262,13 @@
</tr>
<tr>
<td class="property_type">
<span class="type">GdkColor</span> *</td>
<a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *</td>
<td class="property_name"><a class="link" href="GtkCellRenderer.html#GtkCellRenderer--cell-background-gdk" title="The “cell-background-gdk” property">cell-background-gdk</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<span class="type">GdkRGBA</span> *</td>
<a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *</td>
<td class="property_name"><a class="link" href="GtkCellRenderer.html#GtkCellRenderer--cell-background-rgba" title="The “cell-background-rgba” property">cell-background-rgba</a></td>
<td class="property_flags">Read / Write</td>
</tr>
@ -486,8 +486,8 @@ The type must be a subtype of <span class="type">GtkRendererCellAccessible</span
gtk_cell_renderer_get_aligned_area (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState"><span class="type">GtkCellRendererState</span></a> flags</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_area</code></em>,
<em class="parameter"><code><span class="type">GdkRectangle</span> *aligned_area</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
<em class="parameter"><code><a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *aligned_area</code></em>);</pre>
<p>Gets the aligned area used by <em class="parameter"><code>cell</code></em>
inside <em class="parameter"><code>cell_area</code></em>
. Used for finding
@ -538,7 +538,7 @@ that would acually be used to render. </p></td>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_cell_renderer_get_size (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_area</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
<em class="parameter"><code><span class="type">gint</span> *x_offset</code></em>,
<em class="parameter"><code><span class="type">gint</span> *y_offset</code></em>,
<em class="parameter"><code><span class="type">gint</span> *width</code></em>,
@ -615,8 +615,8 @@ in <em class="parameter"><code>x_offset</code></em>
gtk_cell_renderer_render (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/cairo/cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> *cr</code></em>,
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *background_area</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_area</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *background_area</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState"><span class="type">GtkCellRendererState</span></a> flags</code></em>);</pre>
<p>Invokes the virtual render function of the <a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a>. The three
passed-in rectangles are areas in <em class="parameter"><code>cr</code></em>
@ -681,11 +681,11 @@ padding on the sides)</p></td>
<a name="gtk-cell-renderer-activate"></a><h3>gtk_cell_renderer_activate ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_cell_renderer_activate (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
<em class="parameter"><code><span class="type">GdkEvent</span> *event</code></em>,
<em class="parameter"><code><a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> *event</code></em>,
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *path</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *background_area</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_area</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *background_area</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState"><span class="type">GtkCellRendererState</span></a> flags</code></em>);</pre>
<p>Passes an activate event to the cell renderer for possible processing.
Some cell renderers may use events; for example, <a class="link" href="GtkCellRendererToggle.html" title="GtkCellRendererToggle"><span class="type">GtkCellRendererToggle</span></a>
@ -706,7 +706,7 @@ toggles when it gets a mouse click.</p>
</tr>
<tr>
<td class="parameter_name"><p>event</p></td>
<td class="parameter_description"><p>a <span class="type">GdkEvent</span></p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -748,11 +748,11 @@ e.g. for <a class="link" href="GtkTreeView.html" title="GtkTreeView"><span class
<a name="gtk-cell-renderer-start-editing"></a><h3>gtk_cell_renderer_start_editing ()</h3>
<pre class="programlisting"><a class="link" href="GtkCellEditable.html" title="GtkCellEditable"><span class="returnvalue">GtkCellEditable</span></a> *
gtk_cell_renderer_start_editing (<em class="parameter"><code><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="type">GtkCellRenderer</span></a> *cell</code></em>,
<em class="parameter"><code><span class="type">GdkEvent</span> *event</code></em>,
<em class="parameter"><code><a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> *event</code></em>,
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
<em class="parameter"><code>const <span class="type">gchar</span> *path</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *background_area</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *cell_area</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *background_area</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *cell_area</code></em>,
<em class="parameter"><code><a class="link" href="GtkCellRenderer.html#GtkCellRendererState" title="enum GtkCellRendererState"><span class="type">GtkCellRendererState</span></a> flags</code></em>);</pre>
<p>Starts editing the contents of this <em class="parameter"><code>cell</code></em>
, through a new <a class="link" href="GtkCellEditable.html" title="GtkCellEditable"><span class="type">GtkCellEditable</span></a>
@ -773,7 +773,7 @@ widget created by the <a class="link" href="GtkCellRenderer.html#GtkCellRenderer
</tr>
<tr>
<td class="parameter_name"><p>event</p></td>
<td class="parameter_description"><p>a <span class="type">GdkEvent</span>. </p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
<tr>
@ -1802,8 +1802,8 @@ inside <em class="parameter"><code>cell_area</code></em>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--cell-background-gdk"></a><h3>The <code class="literal">“cell-background-gdk”</code> property</h3>
<pre class="programlisting"> “cell-background-gdk” <span class="type">GdkColor</span> *</pre>
<p>Cell background as a <span class="type">GdkColor</span></p>
<pre class="programlisting"> “cell-background-gdk” <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *</pre>
<p>Cell background as a <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a></p>
<div class="warning">
<p><code class="literal">GtkCellRenderer:cell-background-gdk</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="GtkCellRenderer.html#GtkCellRenderer--cell-background-rgba" title="The “cell-background-rgba” property"><span class="type">“cell-background-rgba”</span></a> instead.</p>
@ -1814,8 +1814,8 @@ inside <em class="parameter"><code>cell_area</code></em>
<hr>
<div class="refsect2">
<a name="GtkCellRenderer--cell-background-rgba"></a><h3>The <code class="literal">“cell-background-rgba”</code> property</h3>
<pre class="programlisting"> “cell-background-rgba” <span class="type">GdkRGBA</span> *</pre>
<p>Cell background as a <span class="type">GdkRGBA</span></p>
<pre class="programlisting"> “cell-background-rgba” <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *</pre>
<p>Cell background as a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a></p>
<p>Owner: GtkCellRenderer</p>
<p>Flags: Read / Write</p>
<p class="since">Since: <a class="link" href="api-index-3-0.html#api-index-3.0">3.0</a></p>
@ -2020,22 +2020,22 @@ before doing any specific setup, as in the following example:</p>
14
15
16</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="kt">void</span>
<span class="nf">text_editing_started</span> <span class="p">(</span><span class="n">GtkCellRenderer</span> <span class="o">*</span><span class="n">cell</span><span class="p">,</span>
<span class="n">GtkCellEditable</span> <span class="o">*</span><span class="n">editable</span><span class="p">,</span>
<span class="k">const</span> <span class="n">gchar</span> <span class="o">*</span><span class="n">path</span><span class="p">,</span>
<span class="n">gpointer</span> <span class="n">data</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="n">GTK_IS_ENTRY</span> <span class="p">(</span><span class="n">editable</span><span class="p">))</span>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="nf">text_editing_started</span><span class="w"> </span><span class="p">(</span><span class="n">GtkCellRenderer</span><span class="w"> </span><span class="o">*</span><span class="n">cell</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkCellEditable</span><span class="w"> </span><span class="o">*</span><span class="n">editable</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="n">gchar</span><span class="w"> </span><span class="o">*</span><span class="n">path</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gpointer</span><span class="w"> </span><span class="n">data</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_IS_ENTRY</span><span class="w"> </span><span class="p">(</span><span class="n">editable</span><span class="p">))</span><span class="w"></span>
<span class="p">{</span>
<span class="n">GtkEntry</span> <span class="o">*</span><span class="n">entry</span> <span class="o">=</span> <span class="n">GTK_ENTRY</span> <span class="p">(</span><span class="n">editable</span><span class="p">);</span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkEntry</span><span class="w"> </span><span class="o">*</span><span class="n">entry</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">GTK_ENTRY</span><span class="w"> </span><span class="p">(</span><span class="n">editable</span><span class="p">);</span><span class="w"></span>
<span class="c1">// ... create a GtkEntryCompletion</span>
<span class="w"> </span><span class="c1">// ... create a GtkEntryCompletion</span>
<span class="n">gtk_entry_set_completion</span> <span class="p">(</span><span class="n">entry</span><span class="p">,</span> <span class="n">completion</span><span class="p">);</span>
<span class="p">}</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="n">gtk_entry_set_completion</span><span class="w"> </span><span class="p">(</span><span class="n">entry</span><span class="p">,</span><span class="w"> </span><span class="n">completion</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -71,7 +71,7 @@
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><span class="type">GdkModifierType</span></td>
<td class="property_type"><a href="../html/gdk3-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a></td>
<td class="property_name"><a class="link" href="GtkCellRendererAccel.html#GtkCellRendererAccel--accel-mods" title="The “accel-mods” property">accel-mods</a></td>
<td class="property_flags">Read / Write</td>
</tr>
@ -228,7 +228,7 @@ in the same way as they are in menus.</p>
<hr>
<div class="refsect2">
<a name="GtkCellRendererAccel--accel-mods"></a><h3>The <code class="literal">“accel-mods”</code> property</h3>
<pre class="programlisting"> “accel-mods” <span class="type">GdkModifierType</span></pre>
<pre class="programlisting"> “accel-mods” <a href="../html/gdk3-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a></pre>
<p>The modifier mask of the accelerator.</p>
<p>Owner: GtkCellRendererAccel</p>
<p>Flags: Read / Write</p>
@ -294,7 +294,7 @@ user_function (<a class="link" href="GtkCellRendererAccel.html" title="GtkCellRe
user_function (<a class="link" href="GtkCellRendererAccel.html" title="GtkCellRendererAccel"><span class="type">GtkCellRendererAccel</span></a> *accel,
<span class="type">char</span> *path_string,
<span class="type">guint</span> accel_key,
<span class="type">GdkModifierType</span> accel_mods,
<a href="../html/gdk3-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> accel_mods,
<span class="type">guint</span> hardware_keycode,
<span class="type">gpointer</span> user_data)</pre>
<p>Gets emitted when the user has selected a new accelerator.</p>

View File

@ -94,13 +94,13 @@
</tr>
<tr>
<td class="property_type">
<span class="type">GdkColor</span> *</td>
<a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *</td>
<td class="property_name"><a class="link" href="GtkCellRendererText.html#GtkCellRendererText--background-gdk" title="The “background-gdk” property">background-gdk</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<span class="type">GdkRGBA</span> *</td>
<a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *</td>
<td class="property_name"><a class="link" href="GtkCellRendererText.html#GtkCellRendererText--background-rgba" title="The “background-rgba” property">background-rgba</a></td>
<td class="property_flags">Read / Write</td>
</tr>
@ -160,13 +160,13 @@
</tr>
<tr>
<td class="property_type">
<span class="type">GdkColor</span> *</td>
<a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *</td>
<td class="property_name"><a class="link" href="GtkCellRendererText.html#GtkCellRendererText--foreground-gdk" title="The “foreground-gdk” property">foreground-gdk</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<span class="type">GdkRGBA</span> *</td>
<a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *</td>
<td class="property_name"><a class="link" href="GtkCellRendererText.html#GtkCellRendererText--foreground-rgba" title="The “foreground-rgba” property">foreground-rgba</a></td>
<td class="property_flags">Read / Write</td>
</tr>
@ -486,8 +486,8 @@ on the other hand, sets the horizontal alignment of the whole text.</p>
<hr>
<div class="refsect2">
<a name="GtkCellRendererText--background-gdk"></a><h3>The <code class="literal">“background-gdk”</code> property</h3>
<pre class="programlisting"> “background-gdk” <span class="type">GdkColor</span> *</pre>
<p>Background color as a <span class="type">GdkColor</span></p>
<pre class="programlisting"> “background-gdk” <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *</pre>
<p>Background color as a <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a></p>
<div class="warning">
<p><code class="literal">GtkCellRendererText:background-gdk</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="GtkCellRendererText.html#GtkCellRendererText--background-rgba" title="The “background-rgba” property"><span class="type">“background-rgba”</span></a> instead.</p>
@ -498,8 +498,8 @@ on the other hand, sets the horizontal alignment of the whole text.</p>
<hr>
<div class="refsect2">
<a name="GtkCellRendererText--background-rgba"></a><h3>The <code class="literal">“background-rgba”</code> property</h3>
<pre class="programlisting"> “background-rgba” <span class="type">GdkRGBA</span> *</pre>
<p>Background color as a <span class="type">GdkRGBA</span></p>
<pre class="programlisting"> “background-rgba” <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *</pre>
<p>Background color as a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a></p>
<p>Owner: GtkCellRendererText</p>
<p>Flags: Read / Write</p>
<p class="since">Since: <a class="link" href="api-index-3-0.html#api-index-3.0">3.0</a></p>
@ -600,8 +600,8 @@ for another way of making the text fit into a given width.</p>
<hr>
<div class="refsect2">
<a name="GtkCellRendererText--foreground-gdk"></a><h3>The <code class="literal">“foreground-gdk”</code> property</h3>
<pre class="programlisting"> “foreground-gdk” <span class="type">GdkColor</span> *</pre>
<p>Foreground color as a <span class="type">GdkColor</span></p>
<pre class="programlisting"> “foreground-gdk” <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *</pre>
<p>Foreground color as a <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a></p>
<div class="warning">
<p><code class="literal">GtkCellRendererText:foreground-gdk</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="GtkCellRendererText.html#GtkCellRendererText--foreground-rgba" title="The “foreground-rgba” property"><span class="type">“foreground-rgba”</span></a> instead.</p>
@ -612,8 +612,8 @@ for another way of making the text fit into a given width.</p>
<hr>
<div class="refsect2">
<a name="GtkCellRendererText--foreground-rgba"></a><h3>The <code class="literal">“foreground-rgba”</code> property</h3>
<pre class="programlisting"> “foreground-rgba” <span class="type">GdkRGBA</span> *</pre>
<p>Foreground color as a <span class="type">GdkRGBA</span></p>
<pre class="programlisting"> “foreground-rgba” <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *</pre>
<p>Foreground color as a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a></p>
<p>Owner: GtkCellRendererText</p>
<p>Flags: Read / Write</p>
<p class="since">Since: <a class="link" href="api-index-3-0.html#api-index-3.0">3.0</a></p>

View File

@ -190,13 +190,13 @@
</tr>
<tr>
<td class="property_type">
<span class="type">GdkColor</span> *</td>
<a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *</td>
<td class="property_name"><a class="link" href="GtkCellView.html#GtkCellView--background-gdk" title="The “background-gdk” property">background-gdk</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<span class="type">GdkRGBA</span> *</td>
<a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *</td>
<td class="property_name"><a class="link" href="GtkCellView.html#GtkCellView--background-rgba" title="The “background-rgba” property">background-rgba</a></td>
<td class="property_flags">Read / Write</td>
</tr>
@ -623,7 +623,7 @@ the model row pointed to by <em class="parameter"><code>path</code></em>
<a name="gtk-cell-view-set-background-color"></a><h3>gtk_cell_view_set_background_color ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_cell_view_set_background_color (<em class="parameter"><code><a class="link" href="GtkCellView.html" title="GtkCellView"><span class="type">GtkCellView</span></a> *cell_view</code></em>,
<em class="parameter"><code>const <span class="type">GdkColor</span> *color</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *color</code></em>);</pre>
<div class="warning">
<p><code class="literal">gtk_cell_view_set_background_color</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="GtkCellView.html#gtk-cell-view-set-background-rgba" title="gtk_cell_view_set_background_rgba ()"><code class="function">gtk_cell_view_set_background_rgba()</code></a> instead.</p>
@ -659,7 +659,7 @@ gtk_cell_view_set_background_color (<em class="parameter"><code><a class="link"
<a name="gtk-cell-view-set-background-rgba"></a><h3>gtk_cell_view_set_background_rgba ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_cell_view_set_background_rgba (<em class="parameter"><code><a class="link" href="GtkCellView.html" title="GtkCellView"><span class="type">GtkCellView</span></a> *cell_view</code></em>,
<em class="parameter"><code>const <span class="type">GdkRGBA</span> *rgba</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *rgba</code></em>);</pre>
<p>Sets the background color of <em class="parameter"><code>cell_view</code></em>
.</p>
<div class="refsect3">
@ -859,8 +859,8 @@ the entire <a class="link" href="GtkTreeModel.html" title="GtkTreeModel"><span c
<hr>
<div class="refsect2">
<a name="GtkCellView--background-gdk"></a><h3>The <code class="literal">“background-gdk”</code> property</h3>
<pre class="programlisting"> “background-gdk” <span class="type">GdkColor</span> *</pre>
<p>The background color as a <span class="type">GdkColor</span></p>
<pre class="programlisting"> “background-gdk” <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *</pre>
<p>The background color as a <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a></p>
<div class="warning">
<p><code class="literal">GtkCellView:background-gdk</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="GtkCellView.html#GtkCellView--background-rgba" title="The “background-rgba” property"><span class="type">“background-rgba”</span></a> instead.</p>
@ -871,8 +871,8 @@ the entire <a class="link" href="GtkTreeModel.html" title="GtkTreeModel"><span c
<hr>
<div class="refsect2">
<a name="GtkCellView--background-rgba"></a><h3>The <code class="literal">“background-rgba”</code> property</h3>
<pre class="programlisting"> “background-rgba” <span class="type">GdkRGBA</span> *</pre>
<p>The background color as a <span class="type">GdkRGBA</span></p>
<pre class="programlisting"> “background-rgba” <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *</pre>
<p>The background color as a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a></p>
<p>Owner: GtkCellView</p>
<p>Flags: Read / Write</p>
<p class="since">Since: <a class="link" href="api-index-3-0.html#api-index-3.0">3.0</a></p>

View File

@ -144,9 +144,9 @@ more information about toggle/check buttons.</p>
<td class="listing_lines" align="right"><pre>1
2
3</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">checkbutton</span>
<span class="err">├──</span> <span class="n">check</span>
<span class="err">╰──</span> <span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">checkbutton</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="n">check</span><span class="w"></span>
<span class="err">╰──</span><span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -162,9 +162,9 @@ main CSS node with name checkbutton and a subnode with name check.</p>
<td class="listing_lines" align="right"><pre>1
2
3</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">button</span><span class="p">.</span><span class="n">check</span>
<span class="err">├──</span> <span class="n">check</span>
<span class="err">╰──</span> <span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">button</span><span class="p">.</span><span class="n">check</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="n">check</span><span class="w"></span>
<span class="err">╰──</span><span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -243,9 +243,9 @@ toggles the value.</p>
<td class="listing_lines" align="right"><pre>1
2
3</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">menuitem</span>
<span class="err">├──</span> <span class="n">check</span><span class="p">.</span><span class="n">left</span>
<span class="err">╰──</span> <span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">menuitem</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="n">check</span><span class="p">.</span><span class="n">left</span><span class="w"></span>
<span class="err">╰──</span><span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -165,13 +165,13 @@
</tr>
<tr>
<td class="property_type">
<span class="type">GdkColor</span> *</td>
<a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *</td>
<td class="property_name"><a class="link" href="GtkColorButton.html#GtkColorButton--color" title="The “color” property">color</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<span class="type">GdkRGBA</span> *</td>
<a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *</td>
<td class="property_name"><a class="link" href="GtkColorButton.html#GtkColorButton--rgba" title="The “rgba” property">rgba</a></td>
<td class="property_flags">Read / Write</td>
</tr>
@ -277,7 +277,7 @@ color when the user finishes.</p>
<div class="refsect2">
<a name="gtk-color-button-new-with-color"></a><h3>gtk_color_button_new_with_color ()</h3>
<pre class="programlisting"><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> *
gtk_color_button_new_with_color (<em class="parameter"><code>const <span class="type">GdkColor</span> *color</code></em>);</pre>
gtk_color_button_new_with_color (<em class="parameter"><code>const <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *color</code></em>);</pre>
<div class="warning">
<p><code class="literal">gtk_color_button_new_with_color</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="GtkColorButton.html#gtk-color-button-new-with-rgba" title="gtk_color_button_new_with_rgba ()"><code class="function">gtk_color_button_new_with_rgba()</code></a> instead.</p>
@ -293,7 +293,7 @@ gtk_color_button_new_with_color (<em class="parameter"><code>const <span class="
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>color</p></td>
<td class="parameter_description"><p>A <span class="type">GdkColor</span> to set the current color with</p></td>
<td class="parameter_description"><p>A <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> to set the current color with</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
@ -308,7 +308,7 @@ gtk_color_button_new_with_color (<em class="parameter"><code>const <span class="
<div class="refsect2">
<a name="gtk-color-button-new-with-rgba"></a><h3>gtk_color_button_new_with_rgba ()</h3>
<pre class="programlisting"><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> *
gtk_color_button_new_with_rgba (<em class="parameter"><code>const <span class="type">GdkRGBA</span> *rgba</code></em>);</pre>
gtk_color_button_new_with_rgba (<em class="parameter"><code>const <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *rgba</code></em>);</pre>
<p>Creates a new color button.</p>
<div class="refsect3">
<a name="gtk-color-button-new-with-rgba.parameters"></a><h4>Parameters</h4>
@ -320,7 +320,7 @@ gtk_color_button_new_with_rgba (<em class="parameter"><code>const <span class="t
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>rgba</p></td>
<td class="parameter_description"><p>A <span class="type">GdkRGBA</span> to set the current color with</p></td>
<td class="parameter_description"><p>A <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> to set the current color with</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
@ -336,7 +336,7 @@ gtk_color_button_new_with_rgba (<em class="parameter"><code>const <span class="t
<a name="gtk-color-button-set-color"></a><h3>gtk_color_button_set_color ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_color_button_set_color (<em class="parameter"><code><a class="link" href="GtkColorButton.html" title="GtkColorButton"><span class="type">GtkColorButton</span></a> *button</code></em>,
<em class="parameter"><code>const <span class="type">GdkColor</span> *color</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *color</code></em>);</pre>
<div class="warning">
<p><code class="literal">gtk_color_button_set_color</code> is deprecated and should not be used in newly-written code.</p>
<p>Use <a class="link" href="GtkColorChooser.html#gtk-color-chooser-set-rgba" title="gtk_color_chooser_set_rgba ()"><code class="function">gtk_color_chooser_set_rgba()</code></a> instead.</p>
@ -359,7 +359,7 @@ gtk_color_button_set_color (<em class="parameter"><code><a class="link" href="Gt
</tr>
<tr>
<td class="parameter_name"><p>color</p></td>
<td class="parameter_description"><p>A <span class="type">GdkColor</span> to set the current color with</p></td>
<td class="parameter_description"><p>A <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> to set the current color with</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
@ -372,7 +372,7 @@ gtk_color_button_set_color (<em class="parameter"><code><a class="link" href="Gt
<a name="gtk-color-button-get-color"></a><h3>gtk_color_button_get_color ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_color_button_get_color (<em class="parameter"><code><a class="link" href="GtkColorButton.html" title="GtkColorButton"><span class="type">GtkColorButton</span></a> *button</code></em>,
<em class="parameter"><code><span class="type">GdkColor</span> *color</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *color</code></em>);</pre>
<div class="warning">
<p><code class="literal">gtk_color_button_get_color</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="GtkColorChooser.html#gtk-color-chooser-get-rgba" title="gtk_color_chooser_get_rgba ()"><code class="function">gtk_color_chooser_get_rgba()</code></a> instead.</p>
@ -395,7 +395,7 @@ gtk_color_button_get_color (<em class="parameter"><code><a class="link" href="Gt
</tr>
<tr>
<td class="parameter_name"><p>color</p></td>
<td class="parameter_description"><p>a <span class="type">GdkColor</span> to fill in with the current color. </p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> to fill in with the current color. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
</tbody>
@ -475,7 +475,7 @@ gtk_color_button_get_alpha (<em class="parameter"><code><a class="link" href="Gt
<a name="gtk-color-button-set-rgba"></a><h3>gtk_color_button_set_rgba ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_color_button_set_rgba (<em class="parameter"><code><a class="link" href="GtkColorButton.html" title="GtkColorButton"><span class="type">GtkColorButton</span></a> *button</code></em>,
<em class="parameter"><code>const <span class="type">GdkRGBA</span> *rgba</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *rgba</code></em>);</pre>
<div class="warning">
<p><code class="literal">gtk_color_button_set_rgba</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="GtkColorChooser.html#gtk-color-chooser-set-rgba" title="gtk_color_chooser_set_rgba ()"><code class="function">gtk_color_chooser_set_rgba()</code></a> instead.</p>
@ -499,7 +499,7 @@ gtk_color_button_set_rgba (<em class="parameter"><code><a class="link" href="Gtk
</tr>
<tr>
<td class="parameter_name"><p>rgba</p></td>
<td class="parameter_description"><p>a <span class="type">GdkRGBA</span> to set the current color with</p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> to set the current color with</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
@ -512,7 +512,7 @@ gtk_color_button_set_rgba (<em class="parameter"><code><a class="link" href="Gtk
<a name="gtk-color-button-get-rgba"></a><h3>gtk_color_button_get_rgba ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_color_button_get_rgba (<em class="parameter"><code><a class="link" href="GtkColorButton.html" title="GtkColorButton"><span class="type">GtkColorButton</span></a> *button</code></em>,
<em class="parameter"><code><span class="type">GdkRGBA</span> *rgba</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *rgba</code></em>);</pre>
<div class="warning">
<p><code class="literal">gtk_color_button_get_rgba</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="GtkColorChooser.html#gtk-color-chooser-get-rgba" title="gtk_color_chooser_get_rgba ()"><code class="function">gtk_color_chooser_get_rgba()</code></a> instead.</p>
@ -536,7 +536,7 @@ gtk_color_button_get_rgba (<em class="parameter"><code><a class="link" href="Gtk
</tr>
<tr>
<td class="parameter_name"><p>rgba</p></td>
<td class="parameter_description"><p>a <span class="type">GdkRGBA</span> to fill in with the current color. </p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> to fill in with the current color. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
</tbody>
@ -691,7 +691,7 @@ gtk_color_button_get_title (<em class="parameter"><code><a class="link" href="Gt
<hr>
<div class="refsect2">
<a name="GtkColorButton--color"></a><h3>The <code class="literal">“color”</code> property</h3>
<pre class="programlisting"> “color” <span class="type">GdkColor</span> *</pre>
<pre class="programlisting"> “color” <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *</pre>
<p>The selected color.</p>
<div class="warning">
<p><code class="literal">GtkColorButton:color</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
@ -704,7 +704,7 @@ gtk_color_button_get_title (<em class="parameter"><code><a class="link" href="Gt
<hr>
<div class="refsect2">
<a name="GtkColorButton--rgba"></a><h3>The <code class="literal">“rgba”</code> property</h3>
<pre class="programlisting"> “rgba” <span class="type">GdkRGBA</span> *</pre>
<pre class="programlisting"> “rgba” <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *</pre>
<p>The RGBA color.</p>
<p>Owner: GtkColorButton</p>
<p>Flags: Read / Write</p>

View File

@ -98,7 +98,7 @@
<tbody>
<tr>
<td class="property_type">
<span class="type">GdkRGBA</span> *</td>
<a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *</td>
<td class="property_name"><a class="link" href="GtkColorChooser.html#GtkColorChooser--rgba" title="The “rgba” property">rgba</a></td>
<td class="property_flags">Read / Write</td>
</tr>
@ -175,7 +175,7 @@ allowed to have alpha (translucency).</p>
<a name="gtk-color-chooser-get-rgba"></a><h3>gtk_color_chooser_get_rgba ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_color_chooser_get_rgba (<em class="parameter"><code><a class="link" href="GtkColorChooser.html" title="GtkColorChooser"><span class="type">GtkColorChooser</span></a> *chooser</code></em>,
<em class="parameter"><code><span class="type">GdkRGBA</span> *color</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *color</code></em>);</pre>
<p>Gets the currently-selected color.</p>
<div class="refsect3">
<a name="gtk-color-chooser-get-rgba.parameters"></a><h4>Parameters</h4>
@ -193,7 +193,7 @@ gtk_color_chooser_get_rgba (<em class="parameter"><code><a class="link" href="Gt
</tr>
<tr>
<td class="parameter_name"><p>color</p></td>
<td class="parameter_description"><p>a <span class="type">GdkRGBA</span> to fill in with the current color. </p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> to fill in with the current color. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
</tbody>
@ -206,7 +206,7 @@ gtk_color_chooser_get_rgba (<em class="parameter"><code><a class="link" href="Gt
<a name="gtk-color-chooser-set-rgba"></a><h3>gtk_color_chooser_set_rgba ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_color_chooser_set_rgba (<em class="parameter"><code><a class="link" href="GtkColorChooser.html" title="GtkColorChooser"><span class="type">GtkColorChooser</span></a> *chooser</code></em>,
<em class="parameter"><code>const <span class="type">GdkRGBA</span> *color</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *color</code></em>);</pre>
<p>Sets the color.</p>
<div class="refsect3">
<a name="gtk-color-chooser-set-rgba.parameters"></a><h4>Parameters</h4>
@ -299,7 +299,7 @@ gtk_color_chooser_add_palette (<em class="parameter"><code><a class="link" href=
<em class="parameter"><code><a class="link" href="gtk3-Standard-Enumerations.html#GtkOrientation" title="enum GtkOrientation"><span class="type">GtkOrientation</span></a> orientation</code></em>,
<em class="parameter"><code><span class="type">gint</span> colors_per_line</code></em>,
<em class="parameter"><code><span class="type">gint</span> n_colors</code></em>,
<em class="parameter"><code><span class="type">GdkRGBA</span> *colors</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *colors</code></em>);</pre>
<p>Adds a palette to the color chooser. If <em class="parameter"><code>orientation</code></em>
is horizontal,
the colors are grouped in rows, with <em class="parameter"><code>colors_per_line</code></em>
@ -370,9 +370,9 @@ be displayed in rows, <a class="link" href="gtk3-Standard-Enumerations.html#GTK-
<a name="GtkColorChooser.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GtkColorChooser--rgba"></a><h3>The <code class="literal">“rgba”</code> property</h3>
<pre class="programlisting"> “rgba” <span class="type">GdkRGBA</span> *</pre>
<pre class="programlisting"> “rgba” <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *</pre>
<p>The ::rgba property contains the currently selected color,
as a <span class="type">GdkRGBA</span> struct. The property can be set to change
as a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> struct. The property can be set to change
the current selection programmatically.</p>
<p>Owner: GtkColorChooser</p>
<p>Flags: Read / Write</p>
@ -383,7 +383,7 @@ the current selection programmatically.</p>
<a name="GtkColorChooser--use-alpha"></a><h3>The <code class="literal">“use-alpha”</code> property</h3>
<pre class="programlisting"> “use-alpha” <span class="type">gboolean</span></pre>
<p>When ::use-alpha is <code class="literal">TRUE</code>, colors may have alpha (translucency)
information. When it is <code class="literal">FALSE</code>, the <span class="type">GdkRGBA</span> struct obtained
information. When it is <code class="literal">FALSE</code>, the <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> struct obtained
via the <a class="link" href="GtkColorChooser.html#GtkColorChooser--rgba" title="The “rgba” property"><span class="type">“rgba”</span></a> property will be forced to have
alpha == 1.</p>
<p>Implementations are expected to show alpha by rendering the color
@ -400,7 +400,7 @@ over a non-uniform background (like a checkerboard pattern).</p>
<a name="GtkColorChooser-color-activated"></a><h3>The <code class="literal">“color-activated”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GtkColorChooser.html" title="GtkColorChooser"><span class="type">GtkColorChooser</span></a> *chooser,
<span class="type">GdkRGBA</span> *color,
<a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *color,
<span class="type">gpointer</span> user_data)</pre>
<p>Emitted when a color is activated from the color chooser.
This usually happens when the user clicks a color swatch,

View File

@ -246,13 +246,13 @@
</tr>
<tr>
<td class="property_type">
<span class="type">GdkColor</span> *</td>
<a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *</td>
<td class="property_name"><a class="link" href="GtkColorSelection.html#GtkColorSelection--current-color" title="The “current-color” property">current-color</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<span class="type">GdkRGBA</span> *</td>
<a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *</td>
<td class="property_name"><a class="link" href="GtkColorSelection.html#GtkColorSelection--current-rgba" title="The “current-rgba” property">current-rgba</a></td>
<td class="property_flags">Read / Write</td>
</tr>
@ -535,7 +535,7 @@ the original opacity to be <em class="parameter"><code>alpha</code></em>
<a name="gtk-color-selection-get-current-color"></a><h3>gtk_color_selection_get_current_color ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_color_selection_get_current_color (<em class="parameter"><code><a class="link" href="GtkColorSelection.html" title="GtkColorSelection"><span class="type">GtkColorSelection</span></a> *colorsel</code></em>,
<em class="parameter"><code><span class="type">GdkColor</span> *color</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *color</code></em>);</pre>
<div class="warning">
<p><code class="literal">gtk_color_selection_get_current_color</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="GtkColorSelection.html#gtk-color-selection-get-current-rgba" title="gtk_color_selection_get_current_rgba ()"><code class="function">gtk_color_selection_get_current_rgba()</code></a> instead.</p>
@ -558,7 +558,7 @@ gtk_color_selection_get_current_color (<em class="parameter"><code><a class="lin
</tr>
<tr>
<td class="parameter_name"><p>color</p></td>
<td class="parameter_description"><p>a <span class="type">GdkColor</span> to fill in with the current color. </p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> to fill in with the current color. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
</tbody>
@ -570,7 +570,7 @@ gtk_color_selection_get_current_color (<em class="parameter"><code><a class="lin
<a name="gtk-color-selection-set-current-color"></a><h3>gtk_color_selection_set_current_color ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_color_selection_set_current_color (<em class="parameter"><code><a class="link" href="GtkColorSelection.html" title="GtkColorSelection"><span class="type">GtkColorSelection</span></a> *colorsel</code></em>,
<em class="parameter"><code>const <span class="type">GdkColor</span> *color</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *color</code></em>);</pre>
<div class="warning">
<p><code class="literal">gtk_color_selection_set_current_color</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="GtkColorSelection.html#gtk-color-selection-set-current-rgba" title="gtk_color_selection_set_current_rgba ()"><code class="function">gtk_color_selection_set_current_rgba()</code></a> instead.</p>
@ -596,7 +596,7 @@ the original color to be <em class="parameter"><code>color</code></em>
</tr>
<tr>
<td class="parameter_name"><p>color</p></td>
<td class="parameter_description"><p>a <span class="type">GdkColor</span> to set the current color with</p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> to set the current color with</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
@ -672,7 +672,7 @@ as it might seem confusing to have that alpha change.</p>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_color_selection_get_previous_color
(<em class="parameter"><code><a class="link" href="GtkColorSelection.html" title="GtkColorSelection"><span class="type">GtkColorSelection</span></a> *colorsel</code></em>,
<em class="parameter"><code><span class="type">GdkColor</span> *color</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *color</code></em>);</pre>
<div class="warning">
<p><code class="literal">gtk_color_selection_get_previous_color</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="GtkColorSelection.html#gtk-color-selection-get-previous-rgba" title="gtk_color_selection_get_previous_rgba ()"><code class="function">gtk_color_selection_get_previous_rgba()</code></a> instead.</p>
@ -695,7 +695,7 @@ gtk_color_selection_get_previous_color
</tr>
<tr>
<td class="parameter_name"><p>color</p></td>
<td class="parameter_description"><p>a <span class="type">GdkColor</span> to fill in with the original color value. </p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> to fill in with the original color value. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
</tbody>
@ -708,7 +708,7 @@ gtk_color_selection_get_previous_color
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_color_selection_set_previous_color
(<em class="parameter"><code><a class="link" href="GtkColorSelection.html" title="GtkColorSelection"><span class="type">GtkColorSelection</span></a> *colorsel</code></em>,
<em class="parameter"><code>const <span class="type">GdkColor</span> *color</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *color</code></em>);</pre>
<div class="warning">
<p><code class="literal">gtk_color_selection_set_previous_color</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
<p>Use <a class="link" href="GtkColorSelection.html#gtk-color-selection-set-previous-rgba" title="gtk_color_selection_set_previous_rgba ()"><code class="function">gtk_color_selection_set_previous_rgba()</code></a> instead.</p>
@ -735,7 +735,7 @@ set this color the first time it is called.</p>
</tr>
<tr>
<td class="parameter_name"><p>color</p></td>
<td class="parameter_description"><p>a <span class="type">GdkColor</span> to set the previous color with</p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> to set the previous color with</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
@ -747,7 +747,7 @@ set this color the first time it is called.</p>
<a name="gtk-color-selection-get-current-rgba"></a><h3>gtk_color_selection_get_current_rgba ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_color_selection_get_current_rgba (<em class="parameter"><code><a class="link" href="GtkColorSelection.html" title="GtkColorSelection"><span class="type">GtkColorSelection</span></a> *colorsel</code></em>,
<em class="parameter"><code><span class="type">GdkRGBA</span> *rgba</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *rgba</code></em>);</pre>
<div class="warning"><p><code class="literal">gtk_color_selection_get_current_rgba</code> is deprecated and should not be used in newly-written code.</p></div>
<p>Sets <em class="parameter"><code>rgba</code></em>
to be the current color in the GtkColorSelection widget.</p>
@ -767,7 +767,7 @@ gtk_color_selection_get_current_rgba (<em class="parameter"><code><a class="link
</tr>
<tr>
<td class="parameter_name"><p>rgba</p></td>
<td class="parameter_description"><p>a <span class="type">GdkRGBA</span> to fill in with the current color. </p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> to fill in with the current color. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
</tbody>
@ -780,7 +780,7 @@ gtk_color_selection_get_current_rgba (<em class="parameter"><code><a class="link
<a name="gtk-color-selection-set-current-rgba"></a><h3>gtk_color_selection_set_current_rgba ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_color_selection_set_current_rgba (<em class="parameter"><code><a class="link" href="GtkColorSelection.html" title="GtkColorSelection"><span class="type">GtkColorSelection</span></a> *colorsel</code></em>,
<em class="parameter"><code>const <span class="type">GdkRGBA</span> *rgba</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *rgba</code></em>);</pre>
<div class="warning"><p><code class="literal">gtk_color_selection_set_current_rgba</code> is deprecated and should not be used in newly-written code.</p></div>
<p>Sets the current color to be <em class="parameter"><code>rgba</code></em>
.</p>
@ -803,7 +803,7 @@ the original color to be <em class="parameter"><code>rgba</code></em>
</tr>
<tr>
<td class="parameter_name"><p>rgba</p></td>
<td class="parameter_description"><p>A <span class="type">GdkRGBA</span> to set the current color with</p></td>
<td class="parameter_description"><p>A <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> to set the current color with</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
@ -816,7 +816,7 @@ the original color to be <em class="parameter"><code>rgba</code></em>
<a name="gtk-color-selection-get-previous-rgba"></a><h3>gtk_color_selection_get_previous_rgba ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_color_selection_get_previous_rgba (<em class="parameter"><code><a class="link" href="GtkColorSelection.html" title="GtkColorSelection"><span class="type">GtkColorSelection</span></a> *colorsel</code></em>,
<em class="parameter"><code><span class="type">GdkRGBA</span> *rgba</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *rgba</code></em>);</pre>
<div class="warning"><p><code class="literal">gtk_color_selection_get_previous_rgba</code> is deprecated and should not be used in newly-written code.</p></div>
<p>Fills <em class="parameter"><code>rgba</code></em>
in with the original color value.</p>
@ -836,7 +836,7 @@ gtk_color_selection_get_previous_rgba (<em class="parameter"><code><a class="lin
</tr>
<tr>
<td class="parameter_name"><p>rgba</p></td>
<td class="parameter_description"><p>a <span class="type">GdkRGBA</span> to fill in with the original color value. </p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> to fill in with the original color value. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
</tr>
</tbody>
@ -849,7 +849,7 @@ gtk_color_selection_get_previous_rgba (<em class="parameter"><code><a class="lin
<a name="gtk-color-selection-set-previous-rgba"></a><h3>gtk_color_selection_set_previous_rgba ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_color_selection_set_previous_rgba (<em class="parameter"><code><a class="link" href="GtkColorSelection.html" title="GtkColorSelection"><span class="type">GtkColorSelection</span></a> *colorsel</code></em>,
<em class="parameter"><code>const <span class="type">GdkRGBA</span> *rgba</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *rgba</code></em>);</pre>
<div class="warning"><p><code class="literal">gtk_color_selection_set_previous_rgba</code> is deprecated and should not be used in newly-written code.</p></div>
<p>Sets the “previous” color to be <em class="parameter"><code>rgba</code></em>
.</p>
@ -873,7 +873,7 @@ set this color the first time it is called.</p>
</tr>
<tr>
<td class="parameter_name"><p>rgba</p></td>
<td class="parameter_description"><p>a <span class="type">GdkRGBA</span> to set the previous color with</p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> to set the previous color with</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
@ -916,11 +916,11 @@ a color around, and <code class="literal">FALSE</code> if the selection has stop
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_color_selection_palette_from_string
(<em class="parameter"><code>const <span class="type">gchar</span> *str</code></em>,
<em class="parameter"><code><span class="type">GdkColor</span> **colors</code></em>,
<em class="parameter"><code><a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> **colors</code></em>,
<em class="parameter"><code><span class="type">gint</span> *n_colors</code></em>);</pre>
<div class="warning"><p><code class="literal">gtk_color_selection_palette_from_string</code> is deprecated and should not be used in newly-written code.</p></div>
<p>Parses a color palette string; the string is a colon-separated
list of color names readable by <code class="function">gdk_color_parse()</code>.</p>
list of color names readable by <a href="../html/gdk3-Colors.html#gdk-color-parse"><code class="function">gdk_color_parse()</code></a>.</p>
<div class="refsect3">
<a name="gtk-color-selection-palette-from-string.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -938,7 +938,7 @@ list of color names readable by <code class="function">gdk_color_parse()</code>.
<tr>
<td class="parameter_name"><p>colors</p></td>
<td class="parameter_description"><p>return location for
allocated array of <span class="type">GdkColor</span>. </p></td>
allocated array of <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=n_colors]</span></td>
</tr>
<tr>
@ -958,7 +958,7 @@ allocated array of <span class="type">GdkColor</span>. </p></td>
<div class="refsect2">
<a name="gtk-color-selection-palette-to-string"></a><h3>gtk_color_selection_palette_to_string ()</h3>
<pre class="programlisting"><span class="returnvalue">gchar</span> *
gtk_color_selection_palette_to_string (<em class="parameter"><code>const <span class="type">GdkColor</span> *colors</code></em>,
gtk_color_selection_palette_to_string (<em class="parameter"><code>const <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *colors</code></em>,
<em class="parameter"><code><span class="type">gint</span> n_colors</code></em>);</pre>
<div class="warning"><p><code class="literal">gtk_color_selection_palette_to_string</code> is deprecated and should not be used in newly-written code.</p></div>
<p>Encodes a palette as a string, useful for persistent storage.</p>
@ -993,7 +993,7 @@ gtk_color_selection_palette_to_string (<em class="parameter"><code>const <span c
<div class="refsect2">
<a name="GtkColorSelectionChangePaletteFunc"></a><h3>GtkColorSelectionChangePaletteFunc ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*GtkColorSelectionChangePaletteFunc<span class="c_punctuation">)</span> (<em class="parameter"><code>const <span class="type">GdkColor</span> *colors</code></em>,
<span class="c_punctuation">(</span>*GtkColorSelectionChangePaletteFunc<span class="c_punctuation">)</span> (<em class="parameter"><code>const <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *colors</code></em>,
<em class="parameter"><code><span class="type">gint</span> n_colors</code></em>);</pre>
<div class="warning"><p><code class="literal">GtkColorSelectionChangePaletteFunc</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p></div>
<div class="refsect3">
@ -1058,8 +1058,8 @@ GtkColorSelection widgets will be modified.</p>
<a name="GtkColorSelectionChangePaletteWithScreenFunc"></a><h3>GtkColorSelectionChangePaletteWithScreenFunc ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
<span class="c_punctuation">(</span>*GtkColorSelectionChangePaletteWithScreenFunc<span class="c_punctuation">)</span>
(<em class="parameter"><code><span class="type">GdkScreen</span> *screen</code></em>,
<em class="parameter"><code>const <span class="type">GdkColor</span> *colors</code></em>,
(<em class="parameter"><code><a href="../html/GdkScreen.html#GdkScreen-struct"><span class="type">GdkScreen</span></a> *screen</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *colors</code></em>,
<em class="parameter"><code><span class="type">gint</span> n_colors</code></em>);</pre>
<div class="warning"><p><code class="literal">GtkColorSelectionChangePaletteWithScreenFunc</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p></div>
<div class="refsect3">
@ -1133,7 +1133,7 @@ GtkColorSelection widgets will be modified.</p>
<hr>
<div class="refsect2">
<a name="GtkColorSelection--current-color"></a><h3>The <code class="literal">“current-color”</code> property</h3>
<pre class="programlisting"> “current-color” <span class="type">GdkColor</span> *</pre>
<pre class="programlisting"> “current-color” <a href="../html/gdk3-Colors.html#GdkColor"><span class="type">GdkColor</span></a> *</pre>
<p>The current GdkColor color.</p>
<div class="warning">
<p><code class="literal">GtkColorSelection:current-color</code> has been deprecated since version 3.4 and should not be used in newly-written code.</p>
@ -1145,7 +1145,7 @@ GtkColorSelection widgets will be modified.</p>
<hr>
<div class="refsect2">
<a name="GtkColorSelection--current-rgba"></a><h3>The <code class="literal">“current-rgba”</code> property</h3>
<pre class="programlisting"> “current-rgba” <span class="type">GdkRGBA</span> *</pre>
<pre class="programlisting"> “current-rgba” <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *</pre>
<p>The current RGBA color.</p>
<p>Owner: GtkColorSelection</p>
<p>Flags: Read / Write</p>

View File

@ -616,13 +616,13 @@ an entry.</p>
5
6
7</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">combobox</span>
<span class="err">├──</span> <span class="n">box</span><span class="p">.</span><span class="n">linked</span>
<span class="err"></span> <span class="err">╰──</span> <span class="n">button</span><span class="p">.</span><span class="n">combo</span>
<span class="err"></span> <span class="err">╰──</span> <span class="n">box</span>
<span class="err"></span> <span class="err">├──</span> <span class="n">cellview</span>
<span class="err"></span> <span class="err">╰──</span> <span class="n">arrow</span>
<span class="err">╰──</span> <span class="n">window</span><span class="p">.</span><span class="n">popup</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">combobox</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="n">box</span><span class="p">.</span><span class="n">linked</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err">╰──</span><span class="w"> </span><span class="n">button</span><span class="p">.</span><span class="n">combo</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err">╰──</span><span class="w"> </span><span class="n">box</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err">├──</span><span class="w"> </span><span class="n">cellview</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err">╰──</span><span class="w"> </span><span class="n">arrow</span><span class="w"></span>
<span class="err">╰──</span><span class="w"> </span><span class="n">window</span><span class="p">.</span><span class="n">popup</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -643,13 +643,13 @@ an arrow.</p>
5
6
7</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">combobox</span>
<span class="err">├──</span> <span class="n">box</span><span class="p">.</span><span class="n">linked</span>
<span class="err"></span> <span class="err">├──</span> <span class="n">entry</span><span class="p">.</span><span class="n">combo</span>
<span class="err"></span> <span class="err">╰──</span> <span class="n">button</span><span class="p">.</span><span class="n">combo</span>
<span class="err"></span> <span class="err">╰──</span> <span class="n">box</span>
<span class="err"></span> <span class="err">╰──</span> <span class="n">arrow</span>
<span class="err">╰──</span> <span class="n">window</span><span class="p">.</span><span class="n">popup</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">combobox</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="n">box</span><span class="p">.</span><span class="n">linked</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err">├──</span><span class="w"> </span><span class="n">entry</span><span class="p">.</span><span class="n">combo</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err">╰──</span><span class="w"> </span><span class="n">button</span><span class="p">.</span><span class="n">combo</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err">╰──</span><span class="w"> </span><span class="n">box</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err">╰──</span><span class="w"> </span><span class="n">arrow</span><span class="w"></span>
<span class="err">╰──</span><span class="w"> </span><span class="n">window</span><span class="p">.</span><span class="n">popup</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -1353,7 +1353,7 @@ cell renderers for the new model.</p>
<a name="gtk-combo-box-popup-for-device"></a><h3>gtk_combo_box_popup_for_device ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_combo_box_popup_for_device (<em class="parameter"><code><a class="link" href="GtkComboBox.html" title="GtkComboBox"><span class="type">GtkComboBox</span></a> *combo_box</code></em>,
<em class="parameter"><code><span class="type">GdkDevice</span> *device</code></em>);</pre>
<em class="parameter"><code><a href="../html/GdkDevice.html#GdkDevice-struct"><span class="type">GdkDevice</span></a> *device</code></em>);</pre>
<p>Pops up the menu or dropdown list of <em class="parameter"><code>combo_box</code></em>
, the popup window
will be grabbed so only <em class="parameter"><code>device</code></em>
@ -1375,7 +1375,7 @@ are the only <span class="type">GdkDevices</span> able to send events to it.</p>
</tr>
<tr>
<td class="parameter_name"><p>device</p></td>
<td class="parameter_description"><p>a <span class="type">GdkDevice</span></p></td>
<td class="parameter_description"><p>a <a href="../html/GdkDevice.html#GdkDevice-struct"><span class="type">GdkDevice</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
@ -2337,24 +2337,24 @@ displays it in the entry.</p>
16
17
18</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="n">gchar</span><span class="o">*</span>
<span class="nf">format_entry_text_callback</span> <span class="p">(</span><span class="n">GtkComboBox</span> <span class="o">*</span><span class="n">combo</span><span class="p">,</span>
<span class="k">const</span> <span class="n">gchar</span> <span class="o">*</span><span class="n">path</span><span class="p">,</span>
<span class="n">gpointer</span> <span class="n">user_data</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">GtkTreeIter</span> <span class="n">iter</span><span class="p">;</span>
<span class="n">GtkTreeModel</span> <span class="n">model</span><span class="p">;</span>
<span class="n">gdouble</span> <span class="n">value</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="n">gchar</span><span class="o">*</span><span class="w"></span>
<span class="nf">format_entry_text_callback</span><span class="w"> </span><span class="p">(</span><span class="n">GtkComboBox</span><span class="w"> </span><span class="o">*</span><span class="n">combo</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="n">gchar</span><span class="w"> </span><span class="o">*</span><span class="n">path</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gpointer</span><span class="w"> </span><span class="n">user_data</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkTreeIter</span><span class="w"> </span><span class="n">iter</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkTreeModel</span><span class="w"> </span><span class="n">model</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">gdouble</span><span class="w"> </span><span class="n">value</span><span class="p">;</span><span class="w"></span>
<span class="n">model</span> <span class="o">=</span> <span class="n">gtk_combo_box_get_model</span> <span class="p">(</span><span class="n">combo</span><span class="p">);</span>
<span class="w"> </span><span class="n">model</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_combo_box_get_model</span><span class="w"> </span><span class="p">(</span><span class="n">combo</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_tree_model_get_iter_from_string</span> <span class="p">(</span><span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span> <span class="n">path</span><span class="p">);</span>
<span class="n">gtk_tree_model_get</span> <span class="p">(</span><span class="n">model</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span>
<span class="n">THE_DOUBLE_VALUE_COLUMN</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">value</span><span class="p">,</span>
<span class="mi">-1</span><span class="p">);</span>
<span class="w"> </span><span class="n">gtk_tree_model_get_iter_from_string</span><span class="w"> </span><span class="p">(</span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span><span class="w"> </span><span class="n">path</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_tree_model_get</span><span class="w"> </span><span class="p">(</span><span class="n">model</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">iter</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">THE_DOUBLE_VALUE_COLUMN</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">value</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="mi">-1</span><span class="p">);</span><span class="w"></span>
<span class="k">return</span> <span class="n">g_strdup_printf</span> <span class="p">(</span><span class="s">&quot;%g&quot;</span><span class="p">,</span> <span class="n">value</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">g_strdup_printf</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;%g&quot;</span><span class="p">,</span><span class="w"> </span><span class="n">value</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -202,13 +202,13 @@ translation attributes “translatable”, “context” and “comments”.</p>
5
6
7</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkComboBoxText&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">items</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">item</span> <span class="n">translatable</span><span class="o">=</span><span class="s">&quot;yes&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;factory&quot;</span><span class="o">&gt;</span><span class="n">Factory</span><span class="o">&lt;/</span><span class="n">item</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">item</span> <span class="n">translatable</span><span class="o">=</span><span class="s">&quot;yes&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;home&quot;</span><span class="o">&gt;</span><span class="n">Home</span><span class="o">&lt;/</span><span class="n">item</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">item</span> <span class="n">translatable</span><span class="o">=</span><span class="s">&quot;yes&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;subway&quot;</span><span class="o">&gt;</span><span class="n">Subway</span><span class="o">&lt;/</span><span class="n">item</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">items</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkComboBoxText&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">items</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">item</span><span class="w"> </span><span class="n">translatable</span><span class="o">=</span><span class="s">&quot;yes&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;factory&quot;</span><span class="o">&gt;</span><span class="n">Factory</span><span class="o">&lt;/</span><span class="n">item</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">item</span><span class="w"> </span><span class="n">translatable</span><span class="o">=</span><span class="s">&quot;yes&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;home&quot;</span><span class="o">&gt;</span><span class="n">Home</span><span class="o">&lt;/</span><span class="n">item</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">item</span><span class="w"> </span><span class="n">translatable</span><span class="o">=</span><span class="s">&quot;yes&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;subway&quot;</span><span class="o">&gt;</span><span class="n">Subway</span><span class="o">&lt;/</span><span class="n">item</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">items</span><span class="o">&gt;</span><span class="w"></span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -228,11 +228,11 @@ translation attributes “translatable”, “context” and “comments”.</p>
3
4
5</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">combobox</span>
<span class="err">╰──</span> <span class="n">box</span><span class="p">.</span><span class="n">linked</span>
<span class="err">├──</span> <span class="n">entry</span><span class="p">.</span><span class="n">combo</span>
<span class="err">├──</span> <span class="n">button</span><span class="p">.</span><span class="n">combo</span>
<span class="err">╰──</span> <span class="n">window</span><span class="p">.</span><span class="n">popup</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">combobox</span><span class="w"></span>
<span class="err">╰──</span><span class="w"> </span><span class="n">box</span><span class="p">.</span><span class="n">linked</span><span class="w"></span>
<span class="w"> </span><span class="err">├──</span><span class="w"> </span><span class="n">entry</span><span class="p">.</span><span class="n">combo</span><span class="w"></span>
<span class="w"> </span><span class="err">├──</span><span class="w"> </span><span class="n">button</span><span class="p">.</span><span class="n">combo</span><span class="w"></span>
<span class="w"> </span><span class="err">╰──</span><span class="w"> </span><span class="n">window</span><span class="p">.</span><span class="n">popup</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -568,33 +568,33 @@ simply calling the reverse apis implemented for itself as follows:</p>
25
26
27</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="kt">void</span>
<span class="nf">foo_container_get_preferred_height</span> <span class="p">(</span><span class="n">GtkWidget</span> <span class="o">*</span><span class="n">widget</span><span class="p">,</span>
<span class="n">gint</span> <span class="o">*</span><span class="n">min_height</span><span class="p">,</span>
<span class="n">gint</span> <span class="o">*</span><span class="n">nat_height</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="n">i_am_in_height_for_width_mode</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">gint</span> <span class="n">min_width</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="nf">foo_container_get_preferred_height</span><span class="w"> </span><span class="p">(</span><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">widget</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gint</span><span class="w"> </span><span class="o">*</span><span class="n">min_height</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gint</span><span class="w"> </span><span class="o">*</span><span class="n">nat_height</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">i_am_in_height_for_width_mode</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">gint</span><span class="w"> </span><span class="n">min_width</span><span class="p">;</span><span class="w"></span>
<span class="n">GTK_WIDGET_GET_CLASS</span> <span class="p">(</span><span class="n">widget</span><span class="p">)</span><span class="o">-&gt;</span><span class="n">get_preferred_width</span> <span class="p">(</span><span class="n">widget</span><span class="p">,</span>
<span class="o">&amp;</span><span class="n">min_width</span><span class="p">,</span>
<span class="nb">NULL</span><span class="p">);</span>
<span class="n">GTK_WIDGET_GET_CLASS</span> <span class="p">(</span><span class="n">widget</span><span class="p">)</span><span class="o">-&gt;</span><span class="n">get_preferred_height_for_width</span>
<span class="p">(</span><span class="n">widget</span><span class="p">,</span>
<span class="n">min_width</span><span class="p">,</span>
<span class="n">min_height</span><span class="p">,</span>
<span class="n">nat_height</span><span class="p">);</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="p">{</span>
<span class="p">...</span> <span class="n">many</span> <span class="n">containers</span> <span class="n">support</span> <span class="n">both</span> <span class="n">request</span> <span class="n">modes</span><span class="p">,</span> <span class="n">execute</span> <span class="n">the</span>
<span class="n">real</span> <span class="n">width</span><span class="o">-</span><span class="k">for</span><span class="o">-</span><span class="n">height</span> <span class="n">request</span> <span class="n">here</span> <span class="n">by</span> <span class="n">returning</span> <span class="n">the</span>
<span class="n">collective</span> <span class="n">heights</span> <span class="n">of</span> <span class="n">all</span> <span class="n">widgets</span> <span class="n">that</span> <span class="n">are</span> <span class="n">stacked</span>
<span class="n">vertically</span> <span class="p">(</span><span class="n">or</span> <span class="n">whatever</span> <span class="n">is</span> <span class="n">appropriate</span> <span class="k">for</span> <span class="n">this</span> <span class="n">container</span><span class="p">)</span>
<span class="p">...</span>
<span class="p">}</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="n">GTK_WIDGET_GET_CLASS</span><span class="w"> </span><span class="p">(</span><span class="n">widget</span><span class="p">)</span><span class="o">-&gt;</span><span class="n">get_preferred_width</span><span class="w"> </span><span class="p">(</span><span class="n">widget</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="o">&amp;</span><span class="n">min_width</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_WIDGET_GET_CLASS</span><span class="w"> </span><span class="p">(</span><span class="n">widget</span><span class="p">)</span><span class="o">-&gt;</span><span class="n">get_preferred_height_for_width</span><span class="w"></span>
<span class="w"> </span><span class="p">(</span><span class="n">widget</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">min_width</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">min_height</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">nat_height</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="p">...</span><span class="w"> </span><span class="n">many</span><span class="w"> </span><span class="n">containers</span><span class="w"> </span><span class="n">support</span><span class="w"> </span><span class="n">both</span><span class="w"> </span><span class="n">request</span><span class="w"> </span><span class="n">modes</span><span class="p">,</span><span class="w"> </span><span class="n">execute</span><span class="w"> </span><span class="n">the</span><span class="w"></span>
<span class="w"> </span><span class="n">real</span><span class="w"> </span><span class="n">width</span><span class="o">-</span><span class="k">for</span><span class="o">-</span><span class="n">height</span><span class="w"> </span><span class="n">request</span><span class="w"> </span><span class="n">here</span><span class="w"> </span><span class="n">by</span><span class="w"> </span><span class="n">returning</span><span class="w"> </span><span class="n">the</span><span class="w"></span>
<span class="w"> </span><span class="n">collective</span><span class="w"> </span><span class="n">heights</span><span class="w"> </span><span class="n">of</span><span class="w"> </span><span class="n">all</span><span class="w"> </span><span class="n">widgets</span><span class="w"> </span><span class="n">that</span><span class="w"> </span><span class="n">are</span><span class="w"> </span><span class="n">stacked</span><span class="w"></span>
<span class="w"> </span><span class="n">vertically</span><span class="w"> </span><span class="p">(</span><span class="n">or</span><span class="w"> </span><span class="n">whatever</span><span class="w"> </span><span class="n">is</span><span class="w"> </span><span class="n">appropriate</span><span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="n">this</span><span class="w"> </span><span class="n">container</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -626,25 +626,25 @@ that is height-for-width, it then only needs to return the base minimum width li
17
18
19</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="kt">void</span>
<span class="nf">foo_container_get_preferred_width_for_height</span> <span class="p">(</span><span class="n">GtkWidget</span> <span class="o">*</span><span class="n">widget</span><span class="p">,</span>
<span class="n">gint</span> <span class="n">for_height</span><span class="p">,</span>
<span class="n">gint</span> <span class="o">*</span><span class="n">min_width</span><span class="p">,</span>
<span class="n">gint</span> <span class="o">*</span><span class="n">nat_width</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="n">i_am_in_height_for_width_mode</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">GTK_WIDGET_GET_CLASS</span> <span class="p">(</span><span class="n">widget</span><span class="p">)</span><span class="o">-&gt;</span><span class="n">get_preferred_width</span> <span class="p">(</span><span class="n">widget</span><span class="p">,</span>
<span class="n">min_width</span><span class="p">,</span>
<span class="n">nat_width</span><span class="p">);</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="p">{</span>
<span class="p">...</span> <span class="n">execute</span> <span class="n">the</span> <span class="n">real</span> <span class="n">width</span><span class="o">-</span><span class="k">for</span><span class="o">-</span><span class="n">height</span> <span class="n">request</span> <span class="n">here</span> <span class="n">based</span> <span class="n">on</span>
<span class="n">the</span> <span class="n">required</span> <span class="n">width</span> <span class="n">of</span> <span class="n">the</span> <span class="n">children</span> <span class="n">collectively</span> <span class="k">if</span> <span class="n">the</span>
<span class="n">container</span> <span class="n">were</span> <span class="n">to</span> <span class="n">be</span> <span class="n">allocated</span> <span class="n">the</span> <span class="n">said</span> <span class="n">height</span> <span class="p">...</span>
<span class="p">}</span>
<span class="p">}</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="nf">foo_container_get_preferred_width_for_height</span><span class="w"> </span><span class="p">(</span><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">widget</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gint</span><span class="w"> </span><span class="n">for_height</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gint</span><span class="w"> </span><span class="o">*</span><span class="n">min_width</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gint</span><span class="w"> </span><span class="o">*</span><span class="n">nat_width</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">i_am_in_height_for_width_mode</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_WIDGET_GET_CLASS</span><span class="w"> </span><span class="p">(</span><span class="n">widget</span><span class="p">)</span><span class="o">-&gt;</span><span class="n">get_preferred_width</span><span class="w"> </span><span class="p">(</span><span class="n">widget</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">min_width</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">nat_width</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="p">...</span><span class="w"> </span><span class="n">execute</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">real</span><span class="w"> </span><span class="n">width</span><span class="o">-</span><span class="k">for</span><span class="o">-</span><span class="n">height</span><span class="w"> </span><span class="n">request</span><span class="w"> </span><span class="n">here</span><span class="w"> </span><span class="n">based</span><span class="w"> </span><span class="n">on</span><span class="w"></span>
<span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">required</span><span class="w"> </span><span class="n">width</span><span class="w"> </span><span class="n">of</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">children</span><span class="w"> </span><span class="n">collectively</span><span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="n">the</span><span class="w"></span>
<span class="w"> </span><span class="n">container</span><span class="w"> </span><span class="n">were</span><span class="w"> </span><span class="n">to</span><span class="w"> </span><span class="n">be</span><span class="w"> </span><span class="n">allocated</span><span class="w"> </span><span class="n">the</span><span class="w"> </span><span class="n">said</span><span class="w"> </span><span class="n">height</span><span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -730,21 +730,21 @@ chain. The ”name” attribute gives the id of the widget.</p>
13
14
15</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkBox&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkEntry&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;entry1&quot;</span><span class="o">/&gt;</span>
<span class="o">&lt;</span><span class="n">packing</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;pack-type&quot;</span><span class="o">&gt;</span><span class="n">start</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">packing</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkEntry&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;entry2&quot;</span><span class="o">/&gt;</span>
<span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">focus</span><span class="o">-</span><span class="n">chain</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">widget</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;entry1&quot;</span><span class="o">/&gt;</span>
<span class="o">&lt;</span><span class="n">widget</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;entry2&quot;</span><span class="o">/&gt;</span>
<span class="o">&lt;/</span><span class="n">focus</span><span class="o">-</span><span class="n">chain</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkBox&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkEntry&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;entry1&quot;</span><span class="o">/&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">packing</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">property</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;pack-type&quot;</span><span class="o">&gt;</span><span class="n">start</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">packing</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkEntry&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;entry2&quot;</span><span class="o">/&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">focus</span><span class="o">-</span><span class="n">chain</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">widget</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;entry1&quot;</span><span class="o">/&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">widget</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;entry2&quot;</span><span class="o">/&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">focus</span><span class="o">-</span><span class="n">chain</span><span class="o">&gt;</span><span class="w"></span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -1902,7 +1902,7 @@ gtk_container_propagate_draw (<em class="parameter"><code><a class="link" href="
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/cairo/cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> *cr</code></em>);</pre>
<p>When a container receives a call to the draw function, it must send
synthetic <a class="link" href="GtkWidget.html#GtkWidget-draw" title="The “draw” signal"><span class="type">“draw”</span></a> calls to all children that dont have their
own <span class="type">GdkWindows</span>. This function provides a convenient way of doing this.
own <a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="type">GdkWindows</span></a>. This function provides a convenient way of doing this.
A container, when it receives a call to its <a class="link" href="GtkWidget.html#GtkWidget-draw" title="The “draw” signal"><span class="type">“draw”</span></a> function,
calls <a class="link" href="GtkContainer.html#gtk-container-propagate-draw" title="gtk_container_propagate_draw ()"><code class="function">gtk_container_propagate_draw()</code></a> once for each child, passing in
the <em class="parameter"><code>cr</code></em>

View File

@ -389,35 +389,35 @@ in the dialog.</p>
29
30</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="c1">// Function to open a dialog box with a message</span>
<span class="kt">void</span>
<span class="nf">quick_message</span> <span class="p">(</span><span class="n">GtkWindow</span> <span class="o">*</span><span class="n">parent</span><span class="p">,</span> <span class="n">gchar</span> <span class="o">*</span><span class="n">message</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">GtkWidget</span> <span class="o">*</span><span class="n">dialog</span><span class="p">,</span> <span class="o">*</span><span class="n">label</span><span class="p">,</span> <span class="o">*</span><span class="n">content_area</span><span class="p">;</span>
<span class="n">GtkDialogFlags</span> <span class="n">flags</span><span class="p">;</span>
<span class="kt">void</span><span class="w"></span>
<span class="nf">quick_message</span><span class="w"> </span><span class="p">(</span><span class="n">GtkWindow</span><span class="w"> </span><span class="o">*</span><span class="n">parent</span><span class="p">,</span><span class="w"> </span><span class="n">gchar</span><span class="w"> </span><span class="o">*</span><span class="n">message</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">dialog</span><span class="p">,</span><span class="w"> </span><span class="o">*</span><span class="n">label</span><span class="p">,</span><span class="w"> </span><span class="o">*</span><span class="n">content_area</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkDialogFlags</span><span class="w"> </span><span class="n">flags</span><span class="p">;</span><span class="w"></span>
<span class="c1">// Create the widgets</span>
<span class="n">flags</span> <span class="o">=</span> <span class="n">GTK_DIALOG_DESTROY_WITH_PARENT</span><span class="p">;</span>
<span class="n">dialog</span> <span class="o">=</span> <span class="n">gtk_dialog_new_with_buttons</span> <span class="p">(</span><span class="s">&quot;Message&quot;</span><span class="p">,</span>
<span class="n">parent</span><span class="p">,</span>
<span class="n">flags</span><span class="p">,</span>
<span class="n">_</span><span class="p">(</span><span class="s">&quot;_OK&quot;</span><span class="p">),</span>
<span class="n">GTK_RESPONSE_NONE</span><span class="p">,</span>
<span class="nb">NULL</span><span class="p">);</span>
<span class="n">content_area</span> <span class="o">=</span> <span class="n">gtk_dialog_get_content_area</span> <span class="p">(</span><span class="n">GTK_DIALOG</span> <span class="p">(</span><span class="n">dialog</span><span class="p">));</span>
<span class="n">label</span> <span class="o">=</span> <span class="n">gtk_label_new</span> <span class="p">(</span><span class="n">message</span><span class="p">);</span>
<span class="w"> </span><span class="c1">// Create the widgets</span>
<span class="w"> </span><span class="n">flags</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">GTK_DIALOG_DESTROY_WITH_PARENT</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">dialog</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_dialog_new_with_buttons</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;Message&quot;</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">parent</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">flags</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;_OK&quot;</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_NONE</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">content_area</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_dialog_get_content_area</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_DIALOG</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">));</span><span class="w"></span>
<span class="w"> </span><span class="n">label</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_label_new</span><span class="w"> </span><span class="p">(</span><span class="n">message</span><span class="p">);</span><span class="w"></span>
<span class="c1">// Ensure that the dialog box is destroyed when the user responds</span>
<span class="w"> </span><span class="c1">// Ensure that the dialog box is destroyed when the user responds</span>
<span class="n">g_signal_connect_swapped</span> <span class="p">(</span><span class="n">dialog</span><span class="p">,</span>
<span class="s">&quot;response&quot;</span><span class="p">,</span>
<span class="n">G_CALLBACK</span> <span class="p">(</span><span class="n">gtk_widget_destroy</span><span class="p">),</span>
<span class="n">dialog</span><span class="p">);</span>
<span class="w"> </span><span class="n">g_signal_connect_swapped</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot;response&quot;</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">G_CALLBACK</span><span class="w"> </span><span class="p">(</span><span class="n">gtk_widget_destroy</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">dialog</span><span class="p">);</span><span class="w"></span>
<span class="c1">// Add the label, and show everything weve added</span>
<span class="w"> </span><span class="c1">// Add the label, and show everything weve added</span>
<span class="n">gtk_container_add</span> <span class="p">(</span><span class="n">GTK_CONTAINER</span> <span class="p">(</span><span class="n">content_area</span><span class="p">),</span> <span class="n">label</span><span class="p">);</span>
<span class="n">gtk_widget_show_all</span> <span class="p">(</span><span class="n">dialog</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="n">gtk_container_add</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_CONTAINER</span><span class="w"> </span><span class="p">(</span><span class="n">content_area</span><span class="p">),</span><span class="w"> </span><span class="n">label</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_widget_show_all</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -462,20 +462,20 @@ with the action widget using the <code class="literal">&lt;action-widgets&gt;</c
12
13
14</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkDialog&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;dialog1&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">child</span> <span class="n">type</span><span class="o">=</span><span class="s">&quot;action&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkButton&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;button_cancel&quot;</span><span class="o">/&gt;</span>
<span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">child</span> <span class="n">type</span><span class="o">=</span><span class="s">&quot;action&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkButton&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;button_ok&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">property</span> <span class="n">name</span><span class="o">=</span><span class="s">&quot;can-default&quot;</span><span class="o">&gt;</span><span class="n">True</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">action</span><span class="o">-</span><span class="n">widgets</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">action</span><span class="o">-</span><span class="n">widget</span> <span class="n">response</span><span class="o">=</span><span class="s">&quot;cancel&quot;</span><span class="o">&gt;</span><span class="n">button_cancel</span><span class="o">&lt;/</span><span class="n">action</span><span class="o">-</span><span class="n">widget</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">action</span><span class="o">-</span><span class="n">widget</span> <span class="n">response</span><span class="o">=</span><span class="s">&quot;ok&quot;</span> <span class="k">default</span><span class="o">=</span><span class="s">&quot;true&quot;</span><span class="o">&gt;</span><span class="n">button_ok</span><span class="o">&lt;/</span><span class="n">action</span><span class="o">-</span><span class="n">widget</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">action</span><span class="o">-</span><span class="n">widgets</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkDialog&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;dialog1&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="w"> </span><span class="n">type</span><span class="o">=</span><span class="s">&quot;action&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkButton&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;button_cancel&quot;</span><span class="o">/&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="w"> </span><span class="n">type</span><span class="o">=</span><span class="s">&quot;action&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkButton&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;button_ok&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">property</span><span class="w"> </span><span class="n">name</span><span class="o">=</span><span class="s">&quot;can-default&quot;</span><span class="o">&gt;</span><span class="n">True</span><span class="o">&lt;/</span><span class="n">property</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">action</span><span class="o">-</span><span class="n">widgets</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">action</span><span class="o">-</span><span class="n">widget</span><span class="w"> </span><span class="n">response</span><span class="o">=</span><span class="s">&quot;cancel&quot;</span><span class="o">&gt;</span><span class="n">button_cancel</span><span class="o">&lt;/</span><span class="n">action</span><span class="o">-</span><span class="n">widget</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">action</span><span class="o">-</span><span class="n">widget</span><span class="w"> </span><span class="n">response</span><span class="o">=</span><span class="s">&quot;ok&quot;</span><span class="w"> </span><span class="k">default</span><span class="o">=</span><span class="s">&quot;true&quot;</span><span class="o">&gt;</span><span class="n">button_ok</span><span class="o">&lt;/</span><span class="n">action</span><span class="o">-</span><span class="n">widget</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">action</span><span class="o">-</span><span class="n">widgets</span><span class="o">&gt;</span><span class="w"></span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -546,17 +546,17 @@ so the first button in the list will be the leftmost button in the dialog.</p>
9
10
11</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span> <span class="o">*</span><span class="n">main_app_window</span><span class="p">;</span> <span class="c1">// Window the dialog should show up on</span>
<span class="n">GtkWidget</span> <span class="o">*</span><span class="n">dialog</span><span class="p">;</span>
<span class="n">GtkDialogFlags</span> <span class="n">flags</span> <span class="o">=</span> <span class="n">GTK_DIALOG_MODAL</span> <span class="o">|</span> <span class="n">GTK_DIALOG_DESTROY_WITH_PARENT</span><span class="p">;</span>
<span class="n">dialog</span> <span class="o">=</span> <span class="n">gtk_dialog_new_with_buttons</span> <span class="p">(</span><span class="s">&quot;My dialog&quot;</span><span class="p">,</span>
<span class="n">main_app_window</span><span class="p">,</span>
<span class="n">flags</span><span class="p">,</span>
<span class="n">_</span><span class="p">(</span><span class="s">&quot;_OK&quot;</span><span class="p">),</span>
<span class="n">GTK_RESPONSE_ACCEPT</span><span class="p">,</span>
<span class="n">_</span><span class="p">(</span><span class="s">&quot;_Cancel&quot;</span><span class="p">),</span>
<span class="n">GTK_RESPONSE_REJECT</span><span class="p">,</span>
<span class="nb">NULL</span><span class="p">);</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">main_app_window</span><span class="p">;</span><span class="w"> </span><span class="c1">// Window the dialog should show up on</span>
<span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">dialog</span><span class="p">;</span><span class="w"></span>
<span class="n">GtkDialogFlags</span><span class="w"> </span><span class="n">flags</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">GTK_DIALOG_MODAL</span><span class="w"> </span><span class="o">|</span><span class="w"> </span><span class="n">GTK_DIALOG_DESTROY_WITH_PARENT</span><span class="p">;</span><span class="w"></span>
<span class="n">dialog</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_dialog_new_with_buttons</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;My dialog&quot;</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">main_app_window</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">flags</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;_OK&quot;</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_ACCEPT</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;_Cancel&quot;</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_REJECT</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -648,20 +648,20 @@ destroying the dialog if you wish to do so.</p>
12
13
14</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span> <span class="o">*</span><span class="n">dialog</span> <span class="o">=</span> <span class="n">gtk_dialog_new</span> <span class="p">();</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">dialog</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_dialog_new</span><span class="w"> </span><span class="p">();</span><span class="w"></span>
<span class="c1">// Set up dialog...</span>
<span class="kt">int</span> <span class="n">result</span> <span class="o">=</span> <span class="n">gtk_dialog_run</span> <span class="p">(</span><span class="n">GTK_DIALOG</span> <span class="p">(</span><span class="n">dialog</span><span class="p">));</span>
<span class="k">switch</span> <span class="p">(</span><span class="n">result</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">case</span> <span class="nl">GTK_RESPONSE_ACCEPT</span><span class="p">:</span>
<span class="c1">// do_application_specific_something ();</span>
<span class="k">break</span><span class="p">;</span>
<span class="k">default</span><span class="o">:</span>
<span class="c1">// do_nothing_since_dialog_was_cancelled ();</span>
<span class="k">break</span><span class="p">;</span>
<span class="p">}</span>
<span class="n">gtk_widget_destroy</span> <span class="p">(</span><span class="n">dialog</span><span class="p">);</span></pre></td>
<span class="kt">int</span><span class="w"> </span><span class="n">result</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_dialog_run</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_DIALOG</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">));</span><span class="w"></span>
<span class="k">switch</span><span class="w"> </span><span class="p">(</span><span class="n">result</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="k">case</span><span class="w"> </span><span class="nl">GTK_RESPONSE_ACCEPT</span><span class="p">:</span><span class="w"></span>
<span class="w"> </span><span class="c1">// do_application_specific_something ();</span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="k">default</span><span class="o">:</span><span class="w"></span>
<span class="w"> </span><span class="c1">// do_nothing_since_dialog_was_cancelled ();</span>
<span class="w"> </span><span class="k">break</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="n">gtk_widget_destroy</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -1105,7 +1105,7 @@ headerbar is only used by the dialog if the
<div class="refsect2">
<a name="gtk-alternative-dialog-button-order"></a><h3>gtk_alternative_dialog_button_order ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_alternative_dialog_button_order (<em class="parameter"><code><span class="type">GdkScreen</span> *screen</code></em>);</pre>
gtk_alternative_dialog_button_order (<em class="parameter"><code><a href="../html/GdkScreen.html#GdkScreen-struct"><span class="type">GdkScreen</span></a> *screen</code></em>);</pre>
<div class="warning">
<p><code class="literal">gtk_alternative_dialog_button_order</code> has been deprecated since version 3.10 and should not be used in newly-written code.</p>
<p>Deprecated</p>
@ -1130,7 +1130,7 @@ notified if the button order setting changes.</p>
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>screen</p></td>
<td class="parameter_description"><p>a <span class="type">GdkScreen</span>, or <code class="literal">NULL</code> to use the default screen. </p></td>
<td class="parameter_description"><p>a <a href="../html/GdkScreen.html#GdkScreen-struct"><span class="type">GdkScreen</span></a>, or <code class="literal">NULL</code> to use the default screen. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr></tbody>
</table></div>
@ -1188,25 +1188,25 @@ following example shows:</p>
17
18
19</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">cancel_button</span> <span class="o">=</span> <span class="n">gtk_dialog_add_button</span> <span class="p">(</span><span class="n">GTK_DIALOG</span> <span class="p">(</span><span class="n">dialog</span><span class="p">),</span>
<span class="n">_</span><span class="p">(</span><span class="s">&quot;_Cancel&quot;</span><span class="p">),</span>
<span class="n">GTK_RESPONSE_CANCEL</span><span class="p">);</span>
<td class="listing_code"><pre class="programlisting"><span class="n">cancel_button</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_dialog_add_button</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_DIALOG</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;_Cancel&quot;</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_CANCEL</span><span class="p">);</span><span class="w"></span>
<span class="n">ok_button</span> <span class="o">=</span> <span class="n">gtk_dialog_add_button</span> <span class="p">(</span><span class="n">GTK_DIALOG</span> <span class="p">(</span><span class="n">dialog</span><span class="p">),</span>
<span class="n">_</span><span class="p">(</span><span class="s">&quot;_OK&quot;</span><span class="p">),</span>
<span class="n">GTK_RESPONSE_OK</span><span class="p">);</span>
<span class="n">ok_button</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_dialog_add_button</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_DIALOG</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;_OK&quot;</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_OK</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_widget_grab_default</span> <span class="p">(</span><span class="n">ok_button</span><span class="p">);</span>
<span class="n">gtk_widget_grab_default</span><span class="w"> </span><span class="p">(</span><span class="n">ok_button</span><span class="p">);</span><span class="w"></span>
<span class="n">help_button</span> <span class="o">=</span> <span class="n">gtk_dialog_add_button</span> <span class="p">(</span><span class="n">GTK_DIALOG</span> <span class="p">(</span><span class="n">dialog</span><span class="p">),</span>
<span class="n">_</span><span class="p">(</span><span class="s">&quot;_Help&quot;</span><span class="p">),</span>
<span class="n">GTK_RESPONSE_HELP</span><span class="p">);</span>
<span class="n">help_button</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_dialog_add_button</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_DIALOG</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;_Help&quot;</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_HELP</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_dialog_set_alternative_button_order</span> <span class="p">(</span><span class="n">GTK_DIALOG</span> <span class="p">(</span><span class="n">dialog</span><span class="p">),</span>
<span class="n">GTK_RESPONSE_OK</span><span class="p">,</span>
<span class="n">GTK_RESPONSE_CANCEL</span><span class="p">,</span>
<span class="n">GTK_RESPONSE_HELP</span><span class="p">,</span>
<span class="mi">-1</span><span class="p">);</span></pre></td>
<span class="n">gtk_dialog_set_alternative_button_order</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_DIALOG</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_OK</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_CANCEL</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_HELP</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="mi">-1</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -145,39 +145,39 @@ to call <a class="link" href="GtkStyleContext.html#gtk-render-background" title=
31
32
33</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">gboolean</span>
<span class="nf">draw_callback</span> <span class="p">(</span><span class="n">GtkWidget</span> <span class="o">*</span><span class="n">widget</span><span class="p">,</span> <span class="n">cairo_t</span> <span class="o">*</span><span class="n">cr</span><span class="p">,</span> <span class="n">gpointer</span> <span class="n">data</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">guint</span> <span class="n">width</span><span class="p">,</span> <span class="n">height</span><span class="p">;</span>
<span class="n">GdkRGBA</span> <span class="n">color</span><span class="p">;</span>
<span class="n">GtkStyleContext</span> <span class="o">*</span><span class="n">context</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">gboolean</span><span class="w"></span>
<span class="nf">draw_callback</span><span class="w"> </span><span class="p">(</span><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">widget</span><span class="p">,</span><span class="w"> </span><span class="n">cairo_t</span><span class="w"> </span><span class="o">*</span><span class="n">cr</span><span class="p">,</span><span class="w"> </span><span class="n">gpointer</span><span class="w"> </span><span class="n">data</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">guint</span><span class="w"> </span><span class="n">width</span><span class="p">,</span><span class="w"> </span><span class="n">height</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">GdkRGBA</span><span class="w"> </span><span class="n">color</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkStyleContext</span><span class="w"> </span><span class="o">*</span><span class="n">context</span><span class="p">;</span><span class="w"></span>
<span class="n">context</span> <span class="o">=</span> <span class="n">gtk_widget_get_style_context</span> <span class="p">(</span><span class="n">widget</span><span class="p">);</span>
<span class="w"> </span><span class="n">context</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_widget_get_style_context</span><span class="w"> </span><span class="p">(</span><span class="n">widget</span><span class="p">);</span><span class="w"></span>
<span class="n">width</span> <span class="o">=</span> <span class="n">gtk_widget_get_allocated_width</span> <span class="p">(</span><span class="n">widget</span><span class="p">);</span>
<span class="n">height</span> <span class="o">=</span> <span class="n">gtk_widget_get_allocated_height</span> <span class="p">(</span><span class="n">widget</span><span class="p">);</span>
<span class="w"> </span><span class="n">width</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_widget_get_allocated_width</span><span class="w"> </span><span class="p">(</span><span class="n">widget</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">height</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_widget_get_allocated_height</span><span class="w"> </span><span class="p">(</span><span class="n">widget</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_render_background</span> <span class="p">(</span><span class="n">context</span><span class="p">,</span> <span class="n">cr</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">width</span><span class="p">,</span> <span class="n">height</span><span class="p">);</span>
<span class="w"> </span><span class="n">gtk_render_background</span><span class="w"> </span><span class="p">(</span><span class="n">context</span><span class="p">,</span><span class="w"> </span><span class="n">cr</span><span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="n">width</span><span class="p">,</span><span class="w"> </span><span class="n">height</span><span class="p">);</span><span class="w"></span>
<span class="n">cairo_arc</span> <span class="p">(</span><span class="n">cr</span><span class="p">,</span>
<span class="n">width</span> <span class="o">/</span> <span class="mf">2.0</span><span class="p">,</span> <span class="n">height</span> <span class="o">/</span> <span class="mf">2.0</span><span class="p">,</span>
<span class="n">MIN</span> <span class="p">(</span><span class="n">width</span><span class="p">,</span> <span class="n">height</span><span class="p">)</span> <span class="o">/</span> <span class="mf">2.0</span><span class="p">,</span>
<span class="mi">0</span><span class="p">,</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">G_PI</span><span class="p">);</span>
<span class="w"> </span><span class="n">cairo_arc</span><span class="w"> </span><span class="p">(</span><span class="n">cr</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">width</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="mf">2.0</span><span class="p">,</span><span class="w"> </span><span class="n">height</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="mf">2.0</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">MIN</span><span class="w"> </span><span class="p">(</span><span class="n">width</span><span class="p">,</span><span class="w"> </span><span class="n">height</span><span class="p">)</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="mf">2.0</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="mi">2</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">G_PI</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_style_context_get_color</span> <span class="p">(</span><span class="n">context</span><span class="p">,</span>
<span class="n">gtk_style_context_get_state</span> <span class="p">(</span><span class="n">context</span><span class="p">),</span>
<span class="o">&amp;</span><span class="n">color</span><span class="p">);</span>
<span class="n">gdk_cairo_set_source_rgba</span> <span class="p">(</span><span class="n">cr</span><span class="p">,</span> <span class="o">&amp;</span><span class="n">color</span><span class="p">);</span>
<span class="w"> </span><span class="n">gtk_style_context_get_color</span><span class="w"> </span><span class="p">(</span><span class="n">context</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_style_context_get_state</span><span class="w"> </span><span class="p">(</span><span class="n">context</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="o">&amp;</span><span class="n">color</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">gdk_cairo_set_source_rgba</span><span class="w"> </span><span class="p">(</span><span class="n">cr</span><span class="p">,</span><span class="w"> </span><span class="o">&amp;</span><span class="n">color</span><span class="p">);</span><span class="w"></span>
<span class="n">cairo_fill</span> <span class="p">(</span><span class="n">cr</span><span class="p">);</span>
<span class="w"> </span><span class="n">cairo_fill</span><span class="w"> </span><span class="p">(</span><span class="n">cr</span><span class="p">);</span><span class="w"></span>
<span class="k">return</span> <span class="n">FALSE</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">[...]</span>
<span class="n">GtkWidget</span> <span class="o">*</span><span class="n">drawing_area</span> <span class="o">=</span> <span class="n">gtk_drawing_area_new</span> <span class="p">();</span>
<span class="n">gtk_widget_set_size_request</span> <span class="p">(</span><span class="n">drawing_area</span><span class="p">,</span> <span class="mi">100</span><span class="p">,</span> <span class="mi">100</span><span class="p">);</span>
<span class="n">g_signal_connect</span> <span class="p">(</span><span class="n">G_OBJECT</span> <span class="p">(</span><span class="n">drawing_area</span><span class="p">),</span> <span class="s">&quot;draw&quot;</span><span class="p">,</span>
<span class="n">G_CALLBACK</span> <span class="p">(</span><span class="n">draw_callback</span><span class="p">),</span> <span class="nb">NULL</span><span class="p">);</span></pre></td>
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">FALSE</span><span class="p">;</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="p">[...]</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">drawing_area</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_drawing_area_new</span><span class="w"> </span><span class="p">();</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_widget_set_size_request</span><span class="w"> </span><span class="p">(</span><span class="n">drawing_area</span><span class="p">,</span><span class="w"> </span><span class="mi">100</span><span class="p">,</span><span class="w"> </span><span class="mi">100</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">g_signal_connect</span><span class="w"> </span><span class="p">(</span><span class="n">G_OBJECT</span><span class="w"> </span><span class="p">(</span><span class="n">drawing_area</span><span class="p">),</span><span class="w"> </span><span class="s">&quot;draw&quot;</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">G_CALLBACK</span><span class="w"> </span><span class="p">(</span><span class="n">draw_callback</span><span class="p">),</span><span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -188,7 +188,7 @@ to call <a class="link" href="GtkStyleContext.html#gtk-render-background" title=
onscreen, or when its covered by another window and then uncovered.
You can also force an expose event by adding to the “damage region”
of the drawing areas window; <a class="link" href="GtkWidget.html#gtk-widget-queue-draw-area" title="gtk_widget_queue_draw_area ()"><code class="function">gtk_widget_queue_draw_area()</code></a> and
<code class="function">gdk_window_invalidate_rect()</code> are equally good ways to do this.
<a href="../html/gdk3-Windows.html#gdk-window-invalidate-rect"><code class="function">gdk_window_invalidate_rect()</code></a> are equally good ways to do this.
Youll then get a draw signal for the invalid region.</p>
<p>The available routines for drawing are documented on the
GDK Drawing Primitives page

View File

@ -243,27 +243,27 @@ can convert all entry into a widget into uppercase.</p>
19
20
21</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="cp">#include</span> <span class="cpf">&lt;ctype.h&gt;</span><span class="c1">;</span><span class="cp"></span>
<td class="listing_code"><pre class="programlisting"><span class="cp">#include</span><span class="w"> </span><span class="cpf">&lt;ctype.h&gt;</span><span class="c1">;</span><span class="cp"></span>
<span class="kt">void</span>
<span class="nf">insert_text_handler</span> <span class="p">(</span><span class="n">GtkEditable</span> <span class="o">*</span><span class="n">editable</span><span class="p">,</span>
<span class="k">const</span> <span class="n">gchar</span> <span class="o">*</span><span class="n">text</span><span class="p">,</span>
<span class="n">gint</span> <span class="n">length</span><span class="p">,</span>
<span class="n">gint</span> <span class="o">*</span><span class="n">position</span><span class="p">,</span>
<span class="n">gpointer</span> <span class="n">data</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">gchar</span> <span class="o">*</span><span class="n">result</span> <span class="o">=</span> <span class="n">g_utf8_strup</span> <span class="p">(</span><span class="n">text</span><span class="p">,</span> <span class="n">length</span><span class="p">);</span>
<span class="kt">void</span><span class="w"></span>
<span class="nf">insert_text_handler</span><span class="w"> </span><span class="p">(</span><span class="n">GtkEditable</span><span class="w"> </span><span class="o">*</span><span class="n">editable</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="k">const</span><span class="w"> </span><span class="n">gchar</span><span class="w"> </span><span class="o">*</span><span class="n">text</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gint</span><span class="w"> </span><span class="n">length</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gint</span><span class="w"> </span><span class="o">*</span><span class="n">position</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gpointer</span><span class="w"> </span><span class="n">data</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">gchar</span><span class="w"> </span><span class="o">*</span><span class="n">result</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">g_utf8_strup</span><span class="w"> </span><span class="p">(</span><span class="n">text</span><span class="p">,</span><span class="w"> </span><span class="n">length</span><span class="p">);</span><span class="w"></span>
<span class="n">g_signal_handlers_block_by_func</span> <span class="p">(</span><span class="n">editable</span><span class="p">,</span>
<span class="p">(</span><span class="n">gpointer</span><span class="p">)</span> <span class="n">insert_text_handler</span><span class="p">,</span> <span class="n">data</span><span class="p">);</span>
<span class="n">gtk_editable_insert_text</span> <span class="p">(</span><span class="n">editable</span><span class="p">,</span> <span class="n">result</span><span class="p">,</span> <span class="n">length</span><span class="p">,</span> <span class="n">position</span><span class="p">);</span>
<span class="n">g_signal_handlers_unblock_by_func</span> <span class="p">(</span><span class="n">editable</span><span class="p">,</span>
<span class="p">(</span><span class="n">gpointer</span><span class="p">)</span> <span class="n">insert_text_handler</span><span class="p">,</span> <span class="n">data</span><span class="p">);</span>
<span class="w"> </span><span class="n">g_signal_handlers_block_by_func</span><span class="w"> </span><span class="p">(</span><span class="n">editable</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="p">(</span><span class="n">gpointer</span><span class="p">)</span><span class="w"> </span><span class="n">insert_text_handler</span><span class="p">,</span><span class="w"> </span><span class="n">data</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_editable_insert_text</span><span class="w"> </span><span class="p">(</span><span class="n">editable</span><span class="p">,</span><span class="w"> </span><span class="n">result</span><span class="p">,</span><span class="w"> </span><span class="n">length</span><span class="p">,</span><span class="w"> </span><span class="n">position</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">g_signal_handlers_unblock_by_func</span><span class="w"> </span><span class="p">(</span><span class="n">editable</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="p">(</span><span class="n">gpointer</span><span class="p">)</span><span class="w"> </span><span class="n">insert_text_handler</span><span class="p">,</span><span class="w"> </span><span class="n">data</span><span class="p">);</span><span class="w"></span>
<span class="n">g_signal_stop_emission_by_name</span> <span class="p">(</span><span class="n">editable</span><span class="p">,</span> <span class="s">&quot;insert_text&quot;</span><span class="p">);</span>
<span class="w"> </span><span class="n">g_signal_stop_emission_by_name</span><span class="w"> </span><span class="p">(</span><span class="n">editable</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;insert_text&quot;</span><span class="p">);</span><span class="w"></span>
<span class="n">g_free</span> <span class="p">(</span><span class="n">result</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="n">g_free</span><span class="w"> </span><span class="p">(</span><span class="n">result</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -1152,14 +1152,14 @@ via the context menu of the entry.</p>
6
7
8</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">entry</span><span class="p">[.</span><span class="n">read</span><span class="o">-</span><span class="n">only</span><span class="p">][.</span><span class="n">flat</span><span class="p">][.</span><span class="n">warning</span><span class="p">][.</span><span class="n">error</span><span class="p">]</span>
<span class="err">├──</span> <span class="n">image</span><span class="p">.</span><span class="n">left</span>
<span class="err">├──</span> <span class="n">image</span><span class="p">.</span><span class="n">right</span>
<span class="err">├──</span> <span class="n">undershoot</span><span class="p">.</span><span class="n">left</span>
<span class="err">├──</span> <span class="n">undershoot</span><span class="p">.</span><span class="n">right</span>
<span class="err">├──</span> <span class="p">[</span><span class="n">selection</span><span class="p">]</span>
<span class="err">├──</span> <span class="p">[</span><span class="n">progress</span><span class="p">[.</span><span class="n">pulse</span><span class="p">]]</span>
<span class="err">╰──</span> <span class="p">[</span><span class="n">window</span><span class="p">.</span><span class="n">popup</span><span class="p">]</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">entry</span><span class="p">[.</span><span class="n">read</span><span class="o">-</span><span class="n">only</span><span class="p">][.</span><span class="n">flat</span><span class="p">][.</span><span class="n">warning</span><span class="p">][.</span><span class="n">error</span><span class="p">]</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="n">image</span><span class="p">.</span><span class="n">left</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="n">image</span><span class="p">.</span><span class="n">right</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="n">undershoot</span><span class="p">.</span><span class="n">left</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="n">undershoot</span><span class="p">.</span><span class="n">right</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="p">[</span><span class="n">selection</span><span class="p">]</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="p">[</span><span class="n">progress</span><span class="p">[.</span><span class="n">pulse</span><span class="p">]]</span><span class="w"></span>
<span class="err">╰──</span><span class="w"> </span><span class="p">[</span><span class="n">window</span><span class="p">.</span><span class="n">popup</span><span class="p">]</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -1388,7 +1388,7 @@ in <a class="link" href="GtkEntry.html" title="GtkEntry"><span class="type">GtkE
<a name="gtk-entry-get-text-area"></a><h3>gtk_entry_get_text_area ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_entry_get_text_area (<em class="parameter"><code><a class="link" href="GtkEntry.html" title="GtkEntry"><span class="type">GtkEntry</span></a> *entry</code></em>,
<em class="parameter"><code><span class="type">GdkRectangle</span> *text_area</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *text_area</code></em>);</pre>
<p>Gets the area where the entrys text is drawn. This function is
useful when drawing something to the entry in a draw callback.</p>
<p>If the entry is not realized, <em class="parameter"><code>text_area</code></em>
@ -2668,7 +2668,7 @@ where a block bounces back and forth. Each call to
<a name="gtk-entry-im-context-filter-keypress"></a><h3>gtk_entry_im_context_filter_keypress ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_entry_im_context_filter_keypress (<em class="parameter"><code><a class="link" href="GtkEntry.html" title="GtkEntry"><span class="type">GtkEntry</span></a> *entry</code></em>,
<em class="parameter"><code><span class="type">GdkEventKey</span> *event</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Event-Structures.html#GdkEventKey"><span class="type">GdkEventKey</span></a> *event</code></em>);</pre>
<p>Allow the <a class="link" href="GtkEntry.html" title="GtkEntry"><span class="type">GtkEntry</span></a> input method to internally handle key press
and release events. If this function returns <code class="literal">TRUE</code>, then no further
processing should be done for this key event. See
@ -3527,7 +3527,7 @@ string with <code class="function">g_free()</code> when done. </p>
gtk_entry_set_icon_drag_source (<em class="parameter"><code><a class="link" href="GtkEntry.html" title="GtkEntry"><span class="type">GtkEntry</span></a> *entry</code></em>,
<em class="parameter"><code><a class="link" href="GtkEntry.html#GtkEntryIconPosition" title="enum GtkEntryIconPosition"><span class="type">GtkEntryIconPosition</span></a> icon_pos</code></em>,
<em class="parameter"><code><a class="link" href="gtk3-Selections.html#GtkTargetList"><span class="type">GtkTargetList</span></a> *target_list</code></em>,
<em class="parameter"><code><span class="type">GdkDragAction</span> actions</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Drag-and-Drop.html#GdkDragAction"><span class="type">GdkDragAction</span></a> actions</code></em>);</pre>
<p>Sets up the icon at the given position so that GTK+ will start a drag
operation when the user clicks and drags the icon.</p>
<p>To handle the drag operation, you need to connect to the usual
@ -3611,7 +3611,7 @@ DND operation, or -1.</p>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_entry_get_icon_area (<em class="parameter"><code><a class="link" href="GtkEntry.html" title="GtkEntry"><span class="type">GtkEntry</span></a> *entry</code></em>,
<em class="parameter"><code><a class="link" href="GtkEntry.html#GtkEntryIconPosition" title="enum GtkEntryIconPosition"><span class="type">GtkEntryIconPosition</span></a> icon_pos</code></em>,
<em class="parameter"><code><span class="type">GdkRectangle</span> *icon_area</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *icon_area</code></em>);</pre>
<p>Gets the area where entrys icon at <em class="parameter"><code>icon_pos</code></em>
is drawn.
This function is useful when drawing something to the
@ -5043,7 +5043,7 @@ units to delete</p></td>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GtkEntry.html" title="GtkEntry"><span class="type">GtkEntry</span></a> *entry,
<a class="link" href="GtkEntry.html#GtkEntryIconPosition" title="enum GtkEntryIconPosition"><span class="type">GtkEntryIconPosition</span></a> icon_pos,
<span class="type">GdkEvent</span> *event,
<a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> *event,
<span class="type">gpointer</span> user_data)</pre>
<p>The ::icon-press signal is emitted when an activatable icon
is clicked.</p>
@ -5088,7 +5088,7 @@ is clicked.</p>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GtkEntry.html" title="GtkEntry"><span class="type">GtkEntry</span></a> *entry,
<a class="link" href="GtkEntry.html#GtkEntryIconPosition" title="enum GtkEntryIconPosition"><span class="type">GtkEntryIconPosition</span></a> icon_pos,
<span class="type">GdkEvent</span> *event,
<a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> *event,
<span class="type">gpointer</span> user_data)</pre>
<p>The ::icon-release signal is emitted on the button release from a
mouse click over an activatable icon.</p>

View File

@ -241,10 +241,10 @@ gtk_event_box_set_visible_window (<em class="parameter"><code><a class="link" hr
<p>Set whether the event box uses a visible or invisible child
window. The default is to use visible windows.</p>
<p>In an invisible window event box, the window that the
event box creates is a <code class="literal">GDK_INPUT_ONLY</code> window, which
event box creates is a <a href="../html/gdk3-Windows.html#GDK-INPUT-ONLY:CAPS"><code class="literal">GDK_INPUT_ONLY</code></a> window, which
means that it is invisible and only serves to receive
events.</p>
<p>A visible window event box creates a visible (<code class="literal">GDK_INPUT_OUTPUT</code>)
<p>A visible window event box creates a visible (<a href="../html/gdk3-Windows.html#GDK-INPUT-OUTPUT:CAPS"><code class="literal">GDK_INPUT_OUTPUT</code></a>)
window that acts as the parent window for all the widgets
contained in the event box.</p>
<p>You should generally make your event box invisible if

View File

@ -145,7 +145,7 @@
<div class="refsect1">
<a name="GtkEventController.description"></a><h2>Description</h2>
<p><a class="link" href="GtkEventController.html" title="GtkEventController"><span class="type">GtkEventController</span></a> is a base, low-level implementation for event
controllers. Those react to a series of <span class="type">GdkEvents</span>, and possibly trigger
controllers. Those react to a series of <a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvents</span></a>, and possibly trigger
actions as a consequence of those.</p>
</div>
<div class="refsect1">
@ -219,7 +219,7 @@ the events can be managed by calling <a class="link" href="GtkEventController.ht
<a name="gtk-event-controller-handle-event"></a><h3>gtk_event_controller_handle_event ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_event_controller_handle_event (<em class="parameter"><code><a class="link" href="GtkEventController.html" title="GtkEventController"><span class="type">GtkEventController</span></a> *controller</code></em>,
<em class="parameter"><code>const <span class="type">GdkEvent</span> *event</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a> *event</code></em>);</pre>
<p>Feeds an events into <em class="parameter"><code>controller</code></em>
, so it can be interpreted
and the controller actions triggered.</p>
@ -239,7 +239,7 @@ and the controller actions triggered.</p>
</tr>
<tr>
<td class="parameter_name"><p>event</p></td>
<td class="parameter_description"><p>a <span class="type">GdkEvent</span></p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvent</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
@ -385,7 +385,7 @@ grab broken handlers for controllers in this phase to be run.</p>
<div class="refsect2">
<a name="GtkEventController--widget"></a><h3>The <code class="literal">“widget”</code> property</h3>
<pre class="programlisting"> “widget” <a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *</pre>
<p>The widget receiving the <span class="type">GdkEvents</span> that the controller will handle.</p>
<p>The widget receiving the <a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="type">GdkEvents</span></a> that the controller will handle.</p>
<p>Owner: GtkEventController</p>
<p>Flags: Read / Write / Construct Only</p>
<p class="since">Since: <a class="link" href="api-index-3-14.html#api-index-3.14">3.14</a></p>

View File

@ -170,7 +170,7 @@ user_function (<a class="link" href="GtkEventControllerKey.html" title="GtkEvent
user_function (<a class="link" href="GtkEventControllerKey.html" title="GtkEventControllerKey"><span class="type">GtkEventControllerKey</span></a> *controller,
<span class="type">guint</span> keyval,
<span class="type">guint</span> keycode,
<span class="type">GdkModifierType</span> state,
<a href="../html/gdk3-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> state,
<span class="type">gpointer</span> user_data)</pre>
<p>This signal is emitted whenever a key is pressed.</p>
<div class="refsect3">
@ -199,7 +199,7 @@ user_function (<a class="link" href="GtkEventControllerKey.html" title="GtkEvent
</tr>
<tr>
<td class="parameter_name"><p>state</p></td>
<td class="parameter_description"><p>the bitmask, representing the state of modifier keys and pointer buttons. See <span class="type">GdkModifierType</span>.</p></td>
<td class="parameter_description"><p>the bitmask, representing the state of modifier keys and pointer buttons. See <a href="../html/gdk3-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -224,7 +224,7 @@ user_function (<a class="link" href="GtkEventControllerKey.html" title="GtkEvent
user_function (<a class="link" href="GtkEventControllerKey.html" title="GtkEventControllerKey"><span class="type">GtkEventControllerKey</span></a> *controller,
<span class="type">guint</span> keyval,
<span class="type">guint</span> keycode,
<span class="type">GdkModifierType</span> state,
<a href="../html/gdk3-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> state,
<span class="type">gpointer</span> user_data)</pre>
<p>This signal is emitted whenever a key is released.</p>
<div class="refsect3">
@ -253,7 +253,7 @@ user_function (<a class="link" href="GtkEventControllerKey.html" title="GtkEvent
</tr>
<tr>
<td class="parameter_name"><p>state</p></td>
<td class="parameter_description"><p>the bitmask, representing the state of modifier keys and pointer buttons. See <span class="type">GdkModifierType</span>.</p></td>
<td class="parameter_description"><p>the bitmask, representing the state of modifier keys and pointer buttons. See <a href="../html/gdk3-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -272,7 +272,7 @@ user_function (<a class="link" href="GtkEventControllerKey.html" title="GtkEvent
<a name="GtkEventControllerKey-modifiers"></a><h3>The <code class="literal">“modifiers”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
user_function (<a class="link" href="GtkEventControllerKey.html" title="GtkEventControllerKey"><span class="type">GtkEventControllerKey</span></a> *eventcontrollerkey,
<span class="type">GdkModifierType</span> arg1,
<a href="../html/gdk3-Windows.html#GdkModifierType"><span class="type">GdkModifierType</span></a> arg1,
<span class="type">gpointer</span> user_data)</pre>
<p>Flags: Run Last</p>
</div>

View File

@ -370,34 +370,34 @@ connection as follows:</p>
26
27
28</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="kt">void</span>
<span class="nf">expander_callback</span> <span class="p">(</span><span class="n">GObject</span> <span class="o">*</span><span class="n">object</span><span class="p">,</span>
<span class="n">GParamSpec</span> <span class="o">*</span><span class="n">param_spec</span><span class="p">,</span>
<span class="n">gpointer</span> <span class="n">user_data</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">GtkExpander</span> <span class="o">*</span><span class="n">expander</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="nf">expander_callback</span><span class="w"> </span><span class="p">(</span><span class="n">GObject</span><span class="w"> </span><span class="o">*</span><span class="n">object</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GParamSpec</span><span class="w"> </span><span class="o">*</span><span class="n">param_spec</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gpointer</span><span class="w"> </span><span class="n">user_data</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkExpander</span><span class="w"> </span><span class="o">*</span><span class="n">expander</span><span class="p">;</span><span class="w"></span>
<span class="n">expander</span> <span class="o">=</span> <span class="n">GTK_EXPANDER</span> <span class="p">(</span><span class="n">object</span><span class="p">);</span>
<span class="w"> </span><span class="n">expander</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">GTK_EXPANDER</span><span class="w"> </span><span class="p">(</span><span class="n">object</span><span class="p">);</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="n">gtk_expander_get_expanded</span> <span class="p">(</span><span class="n">expander</span><span class="p">))</span>
<span class="p">{</span>
<span class="c1">// Show or create widgets</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="p">{</span>
<span class="c1">// Hide or destroy widgets</span>
<span class="p">}</span>
<span class="p">}</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">gtk_expander_get_expanded</span><span class="w"> </span><span class="p">(</span><span class="n">expander</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// Show or create widgets</span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// Hide or destroy widgets</span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="k">static</span> <span class="kt">void</span>
<span class="nf">create_expander</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">GtkWidget</span> <span class="o">*</span><span class="n">expander</span> <span class="o">=</span> <span class="n">gtk_expander_new_with_mnemonic</span> <span class="p">(</span><span class="s">&quot;_More Options&quot;</span><span class="p">);</span>
<span class="n">g_signal_connect</span> <span class="p">(</span><span class="n">expander</span><span class="p">,</span> <span class="s">&quot;notify::expanded&quot;</span><span class="p">,</span>
<span class="n">G_CALLBACK</span> <span class="p">(</span><span class="n">expander_callback</span><span class="p">),</span> <span class="nb">NULL</span><span class="p">);</span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="nf">create_expander</span><span class="w"> </span><span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">expander</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_expander_new_with_mnemonic</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;_More Options&quot;</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">g_signal_connect</span><span class="w"> </span><span class="p">(</span><span class="n">expander</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;notify::expanded&quot;</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">G_CALLBACK</span><span class="w"> </span><span class="p">(</span><span class="n">expander_callback</span><span class="p">),</span><span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span>
<span class="c1">// ...</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="c1">// ...</span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -425,14 +425,14 @@ specified without specifying a <code class="literal">&lt;child&gt;</code> type a
6
7
8</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkExpander&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">child</span> <span class="n">type</span><span class="o">=</span><span class="s">&quot;label&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkLabel&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;expander-label&quot;</span><span class="o">/&gt;</span>
<span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkEntry&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;expander-content&quot;</span><span class="o">/&gt;</span>
<span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkExpander&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="w"> </span><span class="n">type</span><span class="o">=</span><span class="s">&quot;label&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkLabel&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;expander-label&quot;</span><span class="o">/&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkEntry&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;expander-content&quot;</span><span class="o">/&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -452,11 +452,11 @@ specified without specifying a <code class="literal">&lt;child&gt;</code> type a
3
4
5</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">expander</span>
<span class="err">├──</span> <span class="n">title</span>
<span class="err"></span> <span class="err">├──</span> <span class="n">arrow</span>
<span class="err"></span> <span class="err">╰──</span> <span class="o">&lt;</span><span class="n">label</span> <span class="n">widget</span><span class="o">&gt;</span>
<span class="err">╰──</span> <span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">expander</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="n">title</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err">├──</span><span class="w"> </span><span class="n">arrow</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err">╰──</span><span class="w"> </span><span class="o">&lt;</span><span class="n">label</span><span class="w"> </span><span class="n">widget</span><span class="o">&gt;</span><span class="w"></span>
<span class="err">╰──</span><span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -808,39 +808,39 @@ generate a preview.</p>
31
32
33</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="p">{</span>
<span class="n">GtkImage</span> <span class="o">*</span><span class="n">preview</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkImage</span><span class="w"> </span><span class="o">*</span><span class="n">preview</span><span class="p">;</span><span class="w"></span>
<span class="p">...</span>
<span class="w"> </span><span class="p">...</span><span class="w"></span>
<span class="n">preview</span> <span class="o">=</span> <span class="n">gtk_image_new</span> <span class="p">();</span>
<span class="w"> </span><span class="n">preview</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_image_new</span><span class="w"> </span><span class="p">();</span><span class="w"></span>
<span class="n">gtk_file_chooser_set_preview_widget</span> <span class="p">(</span><span class="n">my_file_chooser</span><span class="p">,</span> <span class="n">preview</span><span class="p">);</span>
<span class="n">g_signal_connect</span> <span class="p">(</span><span class="n">my_file_chooser</span><span class="p">,</span> <span class="s">&quot;update-preview&quot;</span><span class="p">,</span>
<span class="n">G_CALLBACK</span> <span class="p">(</span><span class="n">update_preview_cb</span><span class="p">),</span> <span class="n">preview</span><span class="p">);</span>
<span class="p">}</span>
<span class="w"> </span><span class="n">gtk_file_chooser_set_preview_widget</span><span class="w"> </span><span class="p">(</span><span class="n">my_file_chooser</span><span class="p">,</span><span class="w"> </span><span class="n">preview</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">g_signal_connect</span><span class="w"> </span><span class="p">(</span><span class="n">my_file_chooser</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;update-preview&quot;</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">G_CALLBACK</span><span class="w"> </span><span class="p">(</span><span class="n">update_preview_cb</span><span class="p">),</span><span class="w"> </span><span class="n">preview</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="k">static</span> <span class="kt">void</span>
<span class="n">update_preview_cb</span> <span class="p">(</span><span class="n">GtkFileChooser</span> <span class="o">*</span><span class="n">file_chooser</span><span class="p">,</span> <span class="n">gpointer</span> <span class="n">data</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">GtkWidget</span> <span class="o">*</span><span class="n">preview</span><span class="p">;</span>
<span class="kt">char</span> <span class="o">*</span><span class="n">filename</span><span class="p">;</span>
<span class="n">GdkPixbuf</span> <span class="o">*</span><span class="n">pixbuf</span><span class="p">;</span>
<span class="n">gboolean</span> <span class="n">have_preview</span><span class="p">;</span>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="n">update_preview_cb</span><span class="w"> </span><span class="p">(</span><span class="n">GtkFileChooser</span><span class="w"> </span><span class="o">*</span><span class="n">file_chooser</span><span class="p">,</span><span class="w"> </span><span class="n">gpointer</span><span class="w"> </span><span class="n">data</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">preview</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">filename</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">GdkPixbuf</span><span class="w"> </span><span class="o">*</span><span class="n">pixbuf</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">gboolean</span><span class="w"> </span><span class="n">have_preview</span><span class="p">;</span><span class="w"></span>
<span class="n">preview</span> <span class="o">=</span> <span class="n">GTK_WIDGET</span> <span class="p">(</span><span class="n">data</span><span class="p">);</span>
<span class="n">filename</span> <span class="o">=</span> <span class="n">gtk_file_chooser_get_preview_filename</span> <span class="p">(</span><span class="n">file_chooser</span><span class="p">);</span>
<span class="w"> </span><span class="n">preview</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">GTK_WIDGET</span><span class="w"> </span><span class="p">(</span><span class="n">data</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">filename</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_file_chooser_get_preview_filename</span><span class="w"> </span><span class="p">(</span><span class="n">file_chooser</span><span class="p">);</span><span class="w"></span>
<span class="n">pixbuf</span> <span class="o">=</span> <span class="n">gdk_pixbuf_new_from_file_at_size</span> <span class="p">(</span><span class="n">filename</span><span class="p">,</span> <span class="mi">128</span><span class="p">,</span> <span class="mi">128</span><span class="p">,</span> <span class="nb">NULL</span><span class="p">);</span>
<span class="n">have_preview</span> <span class="o">=</span> <span class="p">(</span><span class="n">pixbuf</span> <span class="o">!=</span> <span class="nb">NULL</span><span class="p">);</span>
<span class="n">g_free</span> <span class="p">(</span><span class="n">filename</span><span class="p">);</span>
<span class="w"> </span><span class="n">pixbuf</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gdk_pixbuf_new_from_file_at_size</span><span class="w"> </span><span class="p">(</span><span class="n">filename</span><span class="p">,</span><span class="w"> </span><span class="mi">128</span><span class="p">,</span><span class="w"> </span><span class="mi">128</span><span class="p">,</span><span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">have_preview</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="n">pixbuf</span><span class="w"> </span><span class="o">!=</span><span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">g_free</span><span class="w"> </span><span class="p">(</span><span class="n">filename</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_image_set_from_pixbuf</span> <span class="p">(</span><span class="n">GTK_IMAGE</span> <span class="p">(</span><span class="n">preview</span><span class="p">),</span> <span class="n">pixbuf</span><span class="p">);</span>
<span class="k">if</span> <span class="p">(</span><span class="n">pixbuf</span><span class="p">)</span>
<span class="n">g_object_unref</span> <span class="p">(</span><span class="n">pixbuf</span><span class="p">);</span>
<span class="w"> </span><span class="n">gtk_image_set_from_pixbuf</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_IMAGE</span><span class="w"> </span><span class="p">(</span><span class="n">preview</span><span class="p">),</span><span class="w"> </span><span class="n">pixbuf</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">pixbuf</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="n">g_object_unref</span><span class="w"> </span><span class="p">(</span><span class="n">pixbuf</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_file_chooser_set_preview_widget_active</span> <span class="p">(</span><span class="n">file_chooser</span><span class="p">,</span> <span class="n">have_preview</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="n">gtk_file_chooser_set_preview_widget_active</span><span class="w"> </span><span class="p">(</span><span class="n">file_chooser</span><span class="p">,</span><span class="w"> </span><span class="n">have_preview</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -871,14 +871,14 @@ widgets in a file chooser.</p>
6
7
8</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span> <span class="o">*</span><span class="n">toggle</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">toggle</span><span class="p">;</span><span class="w"></span>
<span class="p">...</span>
<span class="p">...</span><span class="w"></span>
<span class="n">toggle</span> <span class="o">=</span> <span class="n">gtk_check_button_new_with_label</span> <span class="p">(</span><span class="s">&quot;Open file read-only&quot;</span><span class="p">);</span>
<span class="n">gtk_widget_show</span> <span class="p">(</span><span class="n">toggle</span><span class="p">);</span>
<span class="n">gtk_file_chooser_set_extra_widget</span> <span class="p">(</span><span class="n">my_file_chooser</span><span class="p">,</span> <span class="n">toggle</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<span class="n">toggle</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_check_button_new_with_label</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;Open file read-only&quot;</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_widget_show</span><span class="w"> </span><span class="p">(</span><span class="n">toggle</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_file_chooser_set_extra_widget</span><span class="w"> </span><span class="p">(</span><span class="n">my_file_chooser</span><span class="p">,</span><span class="w"> </span><span class="n">toggle</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -1425,16 +1425,16 @@ time, do not call this function. Instead, use something similar to this:</p>
8
9
10</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">if</span> <span class="p">(</span><span class="n">document_is_new</span><span class="p">)</span>
<span class="p">{</span>
<span class="c1">// the user just created a new document</span>
<span class="n">gtk_file_chooser_set_current_name</span> <span class="p">(</span><span class="n">chooser</span><span class="p">,</span> <span class="s">&quot;Untitled document&quot;</span><span class="p">);</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="p">{</span>
<span class="c1">// the user edited an existing document</span>
<span class="n">gtk_file_chooser_set_filename</span> <span class="p">(</span><span class="n">chooser</span><span class="p">,</span> <span class="n">existing_filename</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">document_is_new</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// the user just created a new document</span>
<span class="w"> </span><span class="n">gtk_file_chooser_set_current_name</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;Untitled document&quot;</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// the user edited an existing document</span>
<span class="w"> </span><span class="n">gtk_file_chooser_set_filename</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">,</span><span class="w"> </span><span class="n">existing_filename</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -1780,16 +1780,16 @@ not call this function. Instead, use something similar to this:</p>
8
9
10</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">if</span> <span class="p">(</span><span class="n">document_is_new</span><span class="p">)</span>
<span class="p">{</span>
<span class="c1">// the user just created a new document</span>
<span class="n">gtk_file_chooser_set_current_name</span> <span class="p">(</span><span class="n">chooser</span><span class="p">,</span> <span class="s">&quot;Untitled document&quot;</span><span class="p">);</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="p">{</span>
<span class="c1">// the user edited an existing document</span>
<span class="n">gtk_file_chooser_set_uri</span> <span class="p">(</span><span class="n">chooser</span><span class="p">,</span> <span class="n">existing_uri</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">document_is_new</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// the user just created a new document</span>
<span class="w"> </span><span class="n">gtk_file_chooser_set_current_name</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;Untitled document&quot;</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// the user edited an existing document</span>
<span class="w"> </span><span class="n">gtk_file_chooser_set_uri</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">,</span><span class="w"> </span><span class="n">existing_uri</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -2943,7 +2943,7 @@ See <a class="link" href="GtkFileChooser.html#gtk-file-chooser-get-current-folde
<div class="refsect3">
<a name="gtk-file-chooser-get-current-folder-file.returns"></a><h4>Returns</h4>
<p>the <span class="type">GFile</span> for the current folder. </p>
<p><span class="annotation">[<acronym title="The caller owns the data, and is responsible for free it."><span class="acronym">transfer full</span></acronym>]</span></p>
<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>][<acronym title="The caller owns the data, and is responsible for free it."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
<p class="since">Since: 2.14</p>
</div>
@ -3175,17 +3175,17 @@ Instead, use something similar to this:</p>
9
10
11</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">if</span> <span class="p">(</span><span class="n">document_is_new</span><span class="p">)</span>
<span class="p">{</span>
<span class="c1">// the user just created a new document</span>
<span class="n">gtk_file_chooser_set_current_folder_file</span> <span class="p">(</span><span class="n">chooser</span><span class="p">,</span> <span class="n">default_file_for_saving</span><span class="p">);</span>
<span class="n">gtk_file_chooser_set_current_name</span> <span class="p">(</span><span class="n">chooser</span><span class="p">,</span> <span class="s">&quot;Untitled document&quot;</span><span class="p">);</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="p">{</span>
<span class="c1">// the user edited an existing document</span>
<span class="n">gtk_file_chooser_set_file</span> <span class="p">(</span><span class="n">chooser</span><span class="p">,</span> <span class="n">existing_file</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">document_is_new</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// the user just created a new document</span>
<span class="w"> </span><span class="n">gtk_file_chooser_set_current_folder_file</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">,</span><span class="w"> </span><span class="n">default_file_for_saving</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_file_chooser_set_current_name</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;Untitled document&quot;</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// the user edited an existing document</span>
<span class="w"> </span><span class="n">gtk_file_chooser_set_file</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">,</span><span class="w"> </span><span class="n">existing_file</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -3586,35 +3586,35 @@ illustrates this.</p>
27
28
29</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="n">GtkFileChooserConfirmation</span>
<span class="nf">confirm_overwrite_callback</span> <span class="p">(</span><span class="n">GtkFileChooser</span> <span class="o">*</span><span class="n">chooser</span><span class="p">,</span> <span class="n">gpointer</span> <span class="n">data</span><span class="p">)</span>
<span class="p">{</span>
<span class="kt">char</span> <span class="o">*</span><span class="n">uri</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="n">GtkFileChooserConfirmation</span><span class="w"></span>
<span class="nf">confirm_overwrite_callback</span><span class="w"> </span><span class="p">(</span><span class="n">GtkFileChooser</span><span class="w"> </span><span class="o">*</span><span class="n">chooser</span><span class="p">,</span><span class="w"> </span><span class="n">gpointer</span><span class="w"> </span><span class="n">data</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">uri</span><span class="p">;</span><span class="w"></span>
<span class="n">uri</span> <span class="o">=</span> <span class="n">gtk_file_chooser_get_uri</span> <span class="p">(</span><span class="n">chooser</span><span class="p">);</span>
<span class="w"> </span><span class="n">uri</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_file_chooser_get_uri</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">);</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="n">is_uri_read_only</span> <span class="p">(</span><span class="n">uri</span><span class="p">))</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="n">user_wants_to_replace_read_only_file</span> <span class="p">(</span><span class="n">uri</span><span class="p">))</span>
<span class="k">return</span> <span class="n">GTK_FILE_CHOOSER_CONFIRMATION_ACCEPT_FILENAME</span><span class="p">;</span>
<span class="k">else</span>
<span class="k">return</span> <span class="n">GTK_FILE_CHOOSER_CONFIRMATION_SELECT_AGAIN</span><span class="p">;</span>
<span class="p">}</span> <span class="k">else</span>
<span class="k">return</span> <span class="n">GTK_FILE_CHOOSER_CONFIRMATION_CONFIRM</span><span class="p">;</span> <span class="c1">// fall back to the default dialog</span>
<span class="p">}</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">is_uri_read_only</span><span class="w"> </span><span class="p">(</span><span class="n">uri</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">user_wants_to_replace_read_only_file</span><span class="w"> </span><span class="p">(</span><span class="n">uri</span><span class="p">))</span><span class="w"></span>
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">GTK_FILE_CHOOSER_CONFIRMATION_ACCEPT_FILENAME</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">GTK_FILE_CHOOSER_CONFIRMATION_SELECT_AGAIN</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"> </span><span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">GTK_FILE_CHOOSER_CONFIRMATION_CONFIRM</span><span class="p">;</span><span class="w"> </span><span class="c1">// fall back to the default dialog</span>
<span class="p">}</span><span class="w"></span>
<span class="p">...</span>
<span class="p">...</span><span class="w"></span>
<span class="n">chooser</span> <span class="o">=</span> <span class="n">gtk_file_chooser_dialog_new</span> <span class="p">(...);</span>
<span class="n">chooser</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_file_chooser_dialog_new</span><span class="w"> </span><span class="p">(...);</span><span class="w"></span>
<span class="n">gtk_file_chooser_set_do_overwrite_confirmation</span> <span class="p">(</span><span class="n">GTK_FILE_CHOOSER</span> <span class="p">(</span><span class="n">dialog</span><span class="p">),</span> <span class="n">TRUE</span><span class="p">);</span>
<span class="n">g_signal_connect</span> <span class="p">(</span><span class="n">chooser</span><span class="p">,</span> <span class="s">&quot;confirm-overwrite&quot;</span><span class="p">,</span>
<span class="n">G_CALLBACK</span> <span class="p">(</span><span class="n">confirm_overwrite_callback</span><span class="p">),</span> <span class="nb">NULL</span><span class="p">);</span>
<span class="n">gtk_file_chooser_set_do_overwrite_confirmation</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_FILE_CHOOSER</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">),</span><span class="w"> </span><span class="n">TRUE</span><span class="p">);</span><span class="w"></span>
<span class="n">g_signal_connect</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;confirm-overwrite&quot;</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">G_CALLBACK</span><span class="w"> </span><span class="p">(</span><span class="n">confirm_overwrite_callback</span><span class="p">),</span><span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="n">gtk_dialog_run</span> <span class="p">(</span><span class="n">chooser</span><span class="p">)</span> <span class="o">==</span> <span class="n">GTK_RESPONSE_ACCEPT</span><span class="p">)</span>
<span class="n">save_to_file</span> <span class="p">(</span><span class="n">gtk_file_chooser_get_filename</span> <span class="p">(</span><span class="n">GTK_FILE_CHOOSER</span> <span class="p">(</span><span class="n">chooser</span><span class="p">));</span>
<span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">gtk_dialog_run</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">GTK_RESPONSE_ACCEPT</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="n">save_to_file</span><span class="w"> </span><span class="p">(</span><span class="n">gtk_file_chooser_get_filename</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_FILE_CHOOSER</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">));</span><span class="w"></span>
<span class="n">gtk_widget_destroy</span> <span class="p">(</span><span class="n">chooser</span><span class="p">);</span></pre></td>
<span class="n">gtk_widget_destroy</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -215,14 +215,14 @@ that button. This widget does not support setting the
6
7
8</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="p">{</span>
<span class="n">GtkWidget</span> <span class="o">*</span><span class="n">button</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">button</span><span class="p">;</span><span class="w"></span>
<span class="n">button</span> <span class="o">=</span> <span class="n">gtk_file_chooser_button_new</span> <span class="p">(</span><span class="n">_</span><span class="p">(</span><span class="s">&quot;Select a file&quot;</span><span class="p">),</span>
<span class="n">GTK_FILE_CHOOSER_ACTION_OPEN</span><span class="p">);</span>
<span class="n">gtk_file_chooser_set_current_folder</span> <span class="p">(</span><span class="n">GTK_FILE_CHOOSER</span> <span class="p">(</span><span class="n">button</span><span class="p">),</span>
<span class="s">&quot;/etc&quot;</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="n">button</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_file_chooser_button_new</span><span class="w"> </span><span class="p">(</span><span class="n">_</span><span class="p">(</span><span class="s">&quot;Select a file&quot;</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_FILE_CHOOSER_ACTION_OPEN</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_file_chooser_set_current_folder</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_FILE_CHOOSER</span><span class="w"> </span><span class="p">(</span><span class="n">button</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot;/etc&quot;</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -133,30 +133,30 @@ otherwise.</p>
22
23
24</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span> <span class="o">*</span><span class="n">dialog</span><span class="p">;</span>
<span class="n">GtkFileChooserAction</span> <span class="n">action</span> <span class="o">=</span> <span class="n">GTK_FILE_CHOOSER_ACTION_OPEN</span><span class="p">;</span>
<span class="n">gint</span> <span class="n">res</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">dialog</span><span class="p">;</span><span class="w"></span>
<span class="n">GtkFileChooserAction</span><span class="w"> </span><span class="n">action</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">GTK_FILE_CHOOSER_ACTION_OPEN</span><span class="p">;</span><span class="w"></span>
<span class="n">gint</span><span class="w"> </span><span class="n">res</span><span class="p">;</span><span class="w"></span>
<span class="n">dialog</span> <span class="o">=</span> <span class="n">gtk_file_chooser_dialog_new</span> <span class="p">(</span><span class="s">&quot;Open File&quot;</span><span class="p">,</span>
<span class="n">parent_window</span><span class="p">,</span>
<span class="n">action</span><span class="p">,</span>
<span class="n">_</span><span class="p">(</span><span class="s">&quot;_Cancel&quot;</span><span class="p">),</span>
<span class="n">GTK_RESPONSE_CANCEL</span><span class="p">,</span>
<span class="n">_</span><span class="p">(</span><span class="s">&quot;_Open&quot;</span><span class="p">),</span>
<span class="n">GTK_RESPONSE_ACCEPT</span><span class="p">,</span>
<span class="nb">NULL</span><span class="p">);</span>
<span class="n">dialog</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_file_chooser_dialog_new</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;Open File&quot;</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">parent_window</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">action</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;_Cancel&quot;</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_CANCEL</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;_Open&quot;</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_ACCEPT</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span>
<span class="n">res</span> <span class="o">=</span> <span class="n">gtk_dialog_run</span> <span class="p">(</span><span class="n">GTK_DIALOG</span> <span class="p">(</span><span class="n">dialog</span><span class="p">));</span>
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">==</span> <span class="n">GTK_RESPONSE_ACCEPT</span><span class="p">)</span>
<span class="p">{</span>
<span class="kt">char</span> <span class="o">*</span><span class="n">filename</span><span class="p">;</span>
<span class="n">GtkFileChooser</span> <span class="o">*</span><span class="n">chooser</span> <span class="o">=</span> <span class="n">GTK_FILE_CHOOSER</span> <span class="p">(</span><span class="n">dialog</span><span class="p">);</span>
<span class="n">filename</span> <span class="o">=</span> <span class="n">gtk_file_chooser_get_filename</span> <span class="p">(</span><span class="n">chooser</span><span class="p">);</span>
<span class="n">open_file</span> <span class="p">(</span><span class="n">filename</span><span class="p">);</span>
<span class="n">g_free</span> <span class="p">(</span><span class="n">filename</span><span class="p">);</span>
<span class="p">}</span>
<span class="n">res</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_dialog_run</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_DIALOG</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">));</span><span class="w"></span>
<span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">res</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">GTK_RESPONSE_ACCEPT</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">filename</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">GtkFileChooser</span><span class="w"> </span><span class="o">*</span><span class="n">chooser</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">GTK_FILE_CHOOSER</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">filename</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_file_chooser_get_filename</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">open_file</span><span class="w"> </span><span class="p">(</span><span class="n">filename</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">g_free</span><span class="w"> </span><span class="p">(</span><span class="n">filename</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="n">gtk_widget_destroy</span> <span class="p">(</span><span class="n">dialog</span><span class="p">);</span></pre></td>
<span class="n">gtk_widget_destroy</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -203,41 +203,41 @@ otherwise.</p>
33
34
35</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span> <span class="o">*</span><span class="n">dialog</span><span class="p">;</span>
<span class="n">GtkFileChooser</span> <span class="o">*</span><span class="n">chooser</span><span class="p">;</span>
<span class="n">GtkFileChooserAction</span> <span class="n">action</span> <span class="o">=</span> <span class="n">GTK_FILE_CHOOSER_ACTION_SAVE</span><span class="p">;</span>
<span class="n">gint</span> <span class="n">res</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">dialog</span><span class="p">;</span><span class="w"></span>
<span class="n">GtkFileChooser</span><span class="w"> </span><span class="o">*</span><span class="n">chooser</span><span class="p">;</span><span class="w"></span>
<span class="n">GtkFileChooserAction</span><span class="w"> </span><span class="n">action</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">GTK_FILE_CHOOSER_ACTION_SAVE</span><span class="p">;</span><span class="w"></span>
<span class="n">gint</span><span class="w"> </span><span class="n">res</span><span class="p">;</span><span class="w"></span>
<span class="n">dialog</span> <span class="o">=</span> <span class="n">gtk_file_chooser_dialog_new</span> <span class="p">(</span><span class="s">&quot;Save File&quot;</span><span class="p">,</span>
<span class="n">parent_window</span><span class="p">,</span>
<span class="n">action</span><span class="p">,</span>
<span class="n">_</span><span class="p">(</span><span class="s">&quot;_Cancel&quot;</span><span class="p">),</span>
<span class="n">GTK_RESPONSE_CANCEL</span><span class="p">,</span>
<span class="n">_</span><span class="p">(</span><span class="s">&quot;_Save&quot;</span><span class="p">),</span>
<span class="n">GTK_RESPONSE_ACCEPT</span><span class="p">,</span>
<span class="nb">NULL</span><span class="p">);</span>
<span class="n">chooser</span> <span class="o">=</span> <span class="n">GTK_FILE_CHOOSER</span> <span class="p">(</span><span class="n">dialog</span><span class="p">);</span>
<span class="n">dialog</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_file_chooser_dialog_new</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;Save File&quot;</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">parent_window</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">action</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;_Cancel&quot;</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_CANCEL</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;_Save&quot;</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_ACCEPT</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span>
<span class="n">chooser</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">GTK_FILE_CHOOSER</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_file_chooser_set_do_overwrite_confirmation</span> <span class="p">(</span><span class="n">chooser</span><span class="p">,</span> <span class="n">TRUE</span><span class="p">);</span>
<span class="n">gtk_file_chooser_set_do_overwrite_confirmation</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">,</span><span class="w"> </span><span class="n">TRUE</span><span class="p">);</span><span class="w"></span>
<span class="k">if</span> <span class="p">(</span><span class="n">user_edited_a_new_document</span><span class="p">)</span>
<span class="n">gtk_file_chooser_set_current_name</span> <span class="p">(</span><span class="n">chooser</span><span class="p">,</span>
<span class="n">_</span><span class="p">(</span><span class="s">&quot;Untitled document&quot;</span><span class="p">));</span>
<span class="k">else</span>
<span class="n">gtk_file_chooser_set_filename</span> <span class="p">(</span><span class="n">chooser</span><span class="p">,</span>
<span class="n">existing_filename</span><span class="p">);</span>
<span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">user_edited_a_new_document</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_file_chooser_set_current_name</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;Untitled document&quot;</span><span class="p">));</span><span class="w"></span>
<span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_file_chooser_set_filename</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">existing_filename</span><span class="p">);</span><span class="w"></span>
<span class="n">res</span> <span class="o">=</span> <span class="n">gtk_dialog_run</span> <span class="p">(</span><span class="n">GTK_DIALOG</span> <span class="p">(</span><span class="n">dialog</span><span class="p">));</span>
<span class="k">if</span> <span class="p">(</span><span class="n">res</span> <span class="o">==</span> <span class="n">GTK_RESPONSE_ACCEPT</span><span class="p">)</span>
<span class="p">{</span>
<span class="kt">char</span> <span class="o">*</span><span class="n">filename</span><span class="p">;</span>
<span class="n">res</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_dialog_run</span><span class="w"> </span><span class="p">(</span><span class="n">GTK_DIALOG</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">));</span><span class="w"></span>
<span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">res</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">GTK_RESPONSE_ACCEPT</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="kt">char</span><span class="w"> </span><span class="o">*</span><span class="n">filename</span><span class="p">;</span><span class="w"></span>
<span class="n">filename</span> <span class="o">=</span> <span class="n">gtk_file_chooser_get_filename</span> <span class="p">(</span><span class="n">chooser</span><span class="p">);</span>
<span class="n">save_to_file</span> <span class="p">(</span><span class="n">filename</span><span class="p">);</span>
<span class="n">g_free</span> <span class="p">(</span><span class="n">filename</span><span class="p">);</span>
<span class="p">}</span>
<span class="w"> </span><span class="n">filename</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_file_chooser_get_filename</span><span class="w"> </span><span class="p">(</span><span class="n">chooser</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">save_to_file</span><span class="w"> </span><span class="p">(</span><span class="n">filename</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">g_free</span><span class="w"> </span><span class="p">(</span><span class="n">filename</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="n">gtk_widget_destroy</span> <span class="p">(</span><span class="n">dialog</span><span class="p">);</span></pre></td>
<span class="n">gtk_widget_destroy</span><span class="w"> </span><span class="p">(</span><span class="n">dialog</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -288,17 +288,17 @@ could call <a class="link" href="GtkFileChooserDialog.html#gtk-file-chooser-dial
9
10
11</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span> <span class="o">*</span><span class="n">dialog</span><span class="p">;</span>
<span class="n">GtkFileChooserAction</span> <span class="n">action</span> <span class="o">=</span> <span class="n">GTK_FILE_CHOOSER_ACTION_OPEN</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">dialog</span><span class="p">;</span><span class="w"></span>
<span class="n">GtkFileChooserAction</span><span class="w"> </span><span class="n">action</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">GTK_FILE_CHOOSER_ACTION_OPEN</span><span class="p">;</span><span class="w"></span>
<span class="n">dialog</span> <span class="o">=</span> <span class="n">gtk_file_chooser_dialog_new</span> <span class="p">(</span><span class="s">&quot;Open File&quot;</span><span class="p">,</span>
<span class="n">parent_window</span><span class="p">,</span>
<span class="n">action</span><span class="p">,</span>
<span class="n">_</span><span class="p">(</span><span class="s">&quot;_Cancel&quot;</span><span class="p">),</span>
<span class="n">GTK_RESPONSE_CANCEL</span><span class="p">,</span>
<span class="n">_</span><span class="p">(</span><span class="s">&quot;_Open&quot;</span><span class="p">),</span>
<span class="n">GTK_RESPONSE_ACCEPT</span><span class="p">,</span>
<span class="nb">NULL</span><span class="p">);</span></pre></td>
<span class="n">dialog</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_file_chooser_dialog_new</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;Open File&quot;</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">parent_window</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">action</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;_Cancel&quot;</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_CANCEL</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">_</span><span class="p">(</span><span class="s">&quot;_Open&quot;</span><span class="p">),</span><span class="w"></span>
<span class="w"> </span><span class="n">GTK_RESPONSE_ACCEPT</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -218,16 +218,16 @@ rules:</p>
8
9
10</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkFileFilter&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">mime</span><span class="o">-</span><span class="n">types</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">mime</span><span class="o">-</span><span class="n">type</span><span class="o">&gt;</span><span class="n">text</span><span class="o">/</span><span class="n">plain</span><span class="o">&lt;/</span><span class="n">mime</span><span class="o">-</span><span class="n">type</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">mime</span><span class="o">-</span><span class="n">type</span><span class="o">&gt;</span><span class="n">image</span><span class="o">/</span> <span class="o">*&lt;/</span><span class="n">mime</span><span class="o">-</span><span class="n">type</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">mime</span><span class="o">-</span><span class="n">types</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">patterns</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">pattern</span><span class="o">&gt;*</span><span class="p">.</span><span class="n">txt</span><span class="o">&lt;/</span><span class="n">pattern</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">pattern</span><span class="o">&gt;*</span><span class="p">.</span><span class="n">png</span><span class="o">&lt;/</span><span class="n">pattern</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">patterns</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkFileFilter&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">mime</span><span class="o">-</span><span class="n">types</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">mime</span><span class="o">-</span><span class="n">type</span><span class="o">&gt;</span><span class="n">text</span><span class="o">/</span><span class="n">plain</span><span class="o">&lt;/</span><span class="n">mime</span><span class="o">-</span><span class="n">type</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">mime</span><span class="o">-</span><span class="n">type</span><span class="o">&gt;</span><span class="n">image</span><span class="o">/</span><span class="w"> </span><span class="o">*&lt;/</span><span class="n">mime</span><span class="o">-</span><span class="n">type</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">mime</span><span class="o">-</span><span class="n">types</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">patterns</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">pattern</span><span class="o">&gt;*</span><span class="p">.</span><span class="n">txt</span><span class="o">&lt;/</span><span class="n">pattern</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">pattern</span><span class="o">&gt;*</span><span class="p">.</span><span class="n">png</span><span class="o">&lt;/</span><span class="n">pattern</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">patterns</span><span class="o">&gt;</span><span class="w"></span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -291,8 +291,8 @@ that accepts any file, use:</p>
<tr>
<td class="listing_lines" align="right"><pre>1
2</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkFileFilter</span> <span class="o">*</span><span class="n">filter</span> <span class="o">=</span> <span class="n">gtk_file_filter_new</span> <span class="p">();</span>
<span class="n">gtk_file_filter_add_pattern</span> <span class="p">(</span><span class="n">filter</span><span class="p">,</span> <span class="s">&quot;*&quot;</span><span class="p">);</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkFileFilter</span><span class="w"> </span><span class="o">*</span><span class="n">filter</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_file_filter_new</span><span class="w"> </span><span class="p">();</span><span class="w"></span>
<span class="n">gtk_file_filter_add_pattern</span><span class="w"> </span><span class="p">(</span><span class="n">filter</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;*&quot;</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -536,13 +536,13 @@ the box and the widget.</p>
5
6
7</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">flowbox</span>
<span class="err">├──</span> <span class="n">flowboxchild</span>
<span class="err"></span> <span class="err">╰──</span> <span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span>
<span class="err">├──</span> <span class="n">flowboxchild</span>
<span class="err"></span> <span class="err">╰──</span> <span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span>
<span class="err"></span>
<span class="err">╰──</span> <span class="p">[</span><span class="n">rubberband</span><span class="p">]</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">flowbox</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="n">flowboxchild</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err">╰──</span><span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="n">flowboxchild</span><span class="w"></span>
<span class="err"></span><span class="w"> </span><span class="err">╰──</span><span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="err"></span><span class="w"></span>
<span class="err">╰──</span><span class="w"> </span><span class="p">[</span><span class="n">rubberband</span><span class="p">]</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -782,16 +782,16 @@ fonts instead of or in addition to the normal system fonts.</p>
8
9
10</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">FcConfig</span> <span class="o">*</span><span class="n">config</span><span class="p">;</span>
<span class="n">PangoFontMap</span> <span class="o">*</span><span class="n">fontmap</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">FcConfig</span><span class="w"> </span><span class="o">*</span><span class="n">config</span><span class="p">;</span><span class="w"></span>
<span class="n">PangoFontMap</span><span class="w"> </span><span class="o">*</span><span class="n">fontmap</span><span class="p">;</span><span class="w"></span>
<span class="n">config</span> <span class="o">=</span> <span class="n">FcInitLoadConfigAndFonts</span> <span class="p">();</span>
<span class="n">FcConfigAppFontAddFile</span> <span class="p">(</span><span class="n">config</span><span class="p">,</span> <span class="n">my_app_font_file</span><span class="p">);</span>
<span class="n">config</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">FcInitLoadConfigAndFonts</span><span class="w"> </span><span class="p">();</span><span class="w"></span>
<span class="n">FcConfigAppFontAddFile</span><span class="w"> </span><span class="p">(</span><span class="n">config</span><span class="p">,</span><span class="w"> </span><span class="n">my_app_font_file</span><span class="p">);</span><span class="w"></span>
<span class="n">fontmap</span> <span class="o">=</span> <span class="n">pango_cairo_font_map_new_for_font_type</span> <span class="p">(</span><span class="n">CAIRO_FONT_TYPE_FT</span><span class="p">);</span>
<span class="n">pango_fc_font_map_set_config</span> <span class="p">(</span><span class="n">PANGO_FC_FONT_MAP</span> <span class="p">(</span><span class="n">fontmap</span><span class="p">),</span> <span class="n">config</span><span class="p">);</span>
<span class="n">fontmap</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">pango_cairo_font_map_new_for_font_type</span><span class="w"> </span><span class="p">(</span><span class="n">CAIRO_FONT_TYPE_FT</span><span class="p">);</span><span class="w"></span>
<span class="n">pango_fc_font_map_set_config</span><span class="w"> </span><span class="p">(</span><span class="n">PANGO_FC_FONT_MAP</span><span class="w"> </span><span class="p">(</span><span class="n">fontmap</span><span class="p">),</span><span class="w"> </span><span class="n">config</span><span class="p">);</span><span class="w"></span>
<span class="n">gtk_font_chooser_set_font_map</span> <span class="p">(</span><span class="n">font_chooser</span><span class="p">,</span> <span class="n">fontmap</span><span class="p">);</span></pre></td>
<span class="n">gtk_font_chooser_set_font_map</span><span class="w"> </span><span class="p">(</span><span class="n">font_chooser</span><span class="p">,</span><span class="w"> </span><span class="n">fontmap</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -806,8 +806,8 @@ font if it is present in the font map they use:</p>
<tr>
<td class="listing_lines" align="right"><pre>1
2</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">context</span> <span class="o">=</span> <span class="n">gtk_widget_get_pango_context</span> <span class="p">(</span><span class="n">label</span><span class="p">);</span>
<span class="n">pango_context_set_font_map</span> <span class="p">(</span><span class="n">context</span><span class="p">,</span> <span class="n">fontmap</span><span class="p">);</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">context</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_widget_get_pango_context</span><span class="w"> </span><span class="p">(</span><span class="n">label</span><span class="p">);</span><span class="w"></span>
<span class="n">pango_context_set_font_map</span><span class="w"> </span><span class="p">(</span><span class="n">context</span><span class="p">,</span><span class="w"> </span><span class="n">fontmap</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -221,14 +221,14 @@ be specified without specifying a <code class="literal">&lt;child&gt;</code> typ
6
7
8</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkFrame&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">child</span> <span class="n">type</span><span class="o">=</span><span class="s">&quot;label&quot;</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkLabel&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;frame-label&quot;</span><span class="o">/&gt;</span>
<span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;</span><span class="n">object</span> <span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkEntry&quot;</span> <span class="n">id</span><span class="o">=</span><span class="s">&quot;frame-content&quot;</span><span class="o">/&gt;</span>
<span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkFrame&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="w"> </span><span class="n">type</span><span class="o">=</span><span class="s">&quot;label&quot;</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkLabel&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;frame-label&quot;</span><span class="o">/&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;</span><span class="n">object</span><span class="w"> </span><span class="n">class</span><span class="o">=</span><span class="s">&quot;GtkEntry&quot;</span><span class="w"> </span><span class="n">id</span><span class="o">=</span><span class="s">&quot;frame-content&quot;</span><span class="o">/&gt;</span><span class="w"></span>
<span class="w"> </span><span class="o">&lt;/</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span>
<span class="o">&lt;/</span><span class="n">object</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -247,10 +247,10 @@ be specified without specifying a <code class="literal">&lt;child&gt;</code> typ
2
3
4</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">frame</span>
<span class="err">├──</span> <span class="n">border</span><span class="p">[.</span><span class="n">flat</span><span class="p">]</span>
<span class="err">├──</span> <span class="o">&lt;</span><span class="n">label</span> <span class="n">widget</span><span class="o">&gt;</span>
<span class="err">╰──</span> <span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">frame</span><span class="w"> </span>
<span class="err">├──</span><span class="w"> </span><span class="n">border</span><span class="p">[.</span><span class="n">flat</span><span class="p">]</span><span class="w"></span>
<span class="err">├──</span><span class="w"> </span><span class="o">&lt;</span><span class="n">label</span><span class="w"> </span><span class="n">widget</span><span class="o">&gt;</span><span class="w"></span>
<span class="err">╰──</span><span class="w"> </span><span class="o">&lt;</span><span class="n">child</span><span class="o">&gt;</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>

View File

@ -53,7 +53,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GdkGLContext</span> *
<a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="returnvalue">GdkGLContext</span></a> *
</td>
<td class="function_name">
<a class="link" href="GtkGLArea.html#gtk-gl-area-get-context" title="gtk_gl_area_get_context ()">gtk_gl_area_get_context</a> <span class="c_punctuation">()</span>
@ -214,7 +214,7 @@
</tr>
<tr>
<td class="property_type">
<span class="type">GdkGLContext</span> *</td>
<a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a> *</td>
<td class="property_name"><a class="link" href="GtkGLArea.html#GtkGLArea--context" title="The “context” property">context</a></td>
<td class="property_flags">Read</td>
</tr>
@ -252,7 +252,7 @@
<tbody>
<tr>
<td class="signal_type">
<span class="returnvalue">GdkGLContext</span>*</td>
<a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="returnvalue">GdkGLContext</span></a>*</td>
<td class="signal_name"><a class="link" href="GtkGLArea.html#GtkGLArea-create-context" title="The “create-context” signal">create-context</a></td>
<td class="signal_flags">Run Last</td>
</tr>
@ -310,7 +310,7 @@ GtkGLArea implements
<div class="refsect1">
<a name="GtkGLArea.description"></a><h2>Description</h2>
<p><a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> is a widget that allows drawing with OpenGL.</p>
<p><a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> sets up its own <span class="type">GdkGLContext</span> for the window it creates, and
<p><a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> sets up its own <a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a> for the window it creates, and
creates a custom GL framebuffer that the widget will do GL rendering onto.
It also ensures that this framebuffer is the default GL rendering target
when rendering.</p>
@ -318,7 +318,7 @@ when rendering.</p>
or subclass <a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> and override the <em class="parameter"><code>GtkGLAreaClass.render()</code></em>
virtual
function.</p>
<p>The <a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> widget ensures that the <span class="type">GdkGLContext</span> is associated with
<p>The <a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> widget ensures that the <a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a> is associated with
the widget's drawing area, and it is kept updated when the size and
position of the drawing area changes.</p>
<div class="refsect3">
@ -335,10 +335,10 @@ create a widget instance and connect to the <a class="link" href="GtkGLArea.html
4
5</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="c1">// create a GtkGLArea instance</span>
<span class="n">GtkWidget</span> <span class="o">*</span><span class="n">gl_area</span> <span class="o">=</span> <span class="n">gtk_gl_area_new</span> <span class="p">();</span>
<span class="n">GtkWidget</span><span class="w"> </span><span class="o">*</span><span class="n">gl_area</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_gl_area_new</span><span class="w"> </span><span class="p">();</span><span class="w"></span>
<span class="c1">// connect to the &quot;render&quot; signal</span>
<span class="n">g_signal_connect</span> <span class="p">(</span><span class="n">gl_area</span><span class="p">,</span> <span class="s">&quot;render&quot;</span><span class="p">,</span> <span class="n">G_CALLBACK</span> <span class="p">(</span><span class="n">render</span><span class="p">),</span> <span class="nb">NULL</span><span class="p">);</span></pre></td>
<span class="n">g_signal_connect</span><span class="w"> </span><span class="p">(</span><span class="n">gl_area</span><span class="p">,</span><span class="w"> </span><span class="s">&quot;render&quot;</span><span class="p">,</span><span class="w"> </span><span class="n">G_CALLBACK</span><span class="w"> </span><span class="p">(</span><span class="n">render</span><span class="p">),</span><span class="w"> </span><span class="nb">NULL</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -371,26 +371,26 @@ for you to draw its content:</p>
18
19
20</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="n">gboolean</span>
<span class="nf">render</span> <span class="p">(</span><span class="n">GtkGLArea</span> <span class="o">*</span><span class="n">area</span><span class="p">,</span> <span class="n">GdkGLContext</span> <span class="o">*</span><span class="n">context</span><span class="p">)</span>
<span class="p">{</span>
<span class="c1">// inside this function it&#39;s safe to use GL; the given</span>
<span class="c1">// #GdkGLContext has been made current to the drawable</span>
<span class="c1">// surface used by the #GtkGLArea and the viewport has</span>
<span class="c1">// already been set to be the size of the allocation</span>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="n">gboolean</span><span class="w"></span>
<span class="nf">render</span><span class="w"> </span><span class="p">(</span><span class="n">GtkGLArea</span><span class="w"> </span><span class="o">*</span><span class="n">area</span><span class="p">,</span><span class="w"> </span><span class="n">GdkGLContext</span><span class="w"> </span><span class="o">*</span><span class="n">context</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// inside this function it&#39;s safe to use GL; the given</span>
<span class="w"> </span><span class="c1">// #GdkGLContext has been made current to the drawable</span>
<span class="w"> </span><span class="c1">// surface used by the #GtkGLArea and the viewport has</span>
<span class="w"> </span><span class="c1">// already been set to be the size of the allocation</span>
<span class="c1">// we can start by clearing the buffer</span>
<span class="n">glClearColor</span> <span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">);</span>
<span class="n">glClear</span> <span class="p">(</span><span class="n">GL_COLOR_BUFFER_BIT</span><span class="p">);</span>
<span class="w"> </span><span class="c1">// we can start by clearing the buffer</span>
<span class="w"> </span><span class="n">glClearColor</span><span class="w"> </span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">glClear</span><span class="w"> </span><span class="p">(</span><span class="n">GL_COLOR_BUFFER_BIT</span><span class="p">);</span><span class="w"></span>
<span class="c1">// draw your object</span>
<span class="n">draw_an_object</span> <span class="p">();</span>
<span class="w"> </span><span class="c1">// draw your object</span>
<span class="w"> </span><span class="n">draw_an_object</span><span class="w"> </span><span class="p">();</span><span class="w"></span>
<span class="c1">// we completed our drawing; the draw commands will be</span>
<span class="c1">// flushed at the end of the signal emission chain, and</span>
<span class="c1">// the buffers will be drawn on the window</span>
<span class="k">return</span> <span class="n">TRUE</span><span class="p">;</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="c1">// we completed our drawing; the draw commands will be</span>
<span class="w"> </span><span class="c1">// flushed at the end of the signal emission chain, and</span>
<span class="w"> </span><span class="c1">// the buffers will be drawn on the window</span>
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">TRUE</span><span class="p">;</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -400,7 +400,7 @@ for you to draw its content:</p>
<p>If you need to initialize OpenGL state, e.g. buffer objects or
shaders, you should use the <a class="link" href="GtkWidget.html#GtkWidget-realize" title="The “realize” signal"><span class="type">“realize”</span></a> signal; you
can use the <a class="link" href="GtkWidget.html#GtkWidget-unrealize" title="The “unrealize” signal"><span class="type">“unrealize”</span></a> signal to clean up. Since the
<span class="type">GdkGLContext</span> creation and initialization may fail, you will
<a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a> creation and initialization may fail, you will
need to check for errors, using <a class="link" href="GtkGLArea.html#gtk-gl-area-get-error" title="gtk_gl_area_get_error ()"><code class="function">gtk_gl_area_get_error()</code></a>. An example
of how to safely initialize the GL state is:</p>
<div class="informalexample">
@ -440,46 +440,46 @@ of how to safely initialize the GL state is:</p>
31
32
33</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="kt">void</span>
<span class="nf">on_realize</span> <span class="p">(</span><span class="n">GtkGLarea</span> <span class="o">*</span><span class="n">area</span><span class="p">)</span>
<span class="p">{</span>
<span class="c1">// We need to make the context current if we want to</span>
<span class="c1">// call GL API</span>
<span class="n">gtk_gl_area_make_current</span> <span class="p">(</span><span class="n">area</span><span class="p">);</span>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="nf">on_realize</span><span class="w"> </span><span class="p">(</span><span class="n">GtkGLarea</span><span class="w"> </span><span class="o">*</span><span class="n">area</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// We need to make the context current if we want to</span>
<span class="w"> </span><span class="c1">// call GL API</span>
<span class="w"> </span><span class="n">gtk_gl_area_make_current</span><span class="w"> </span><span class="p">(</span><span class="n">area</span><span class="p">);</span><span class="w"></span>
<span class="c1">// If there were errors during the initialization or</span>
<span class="c1">// when trying to make the context current, this</span>
<span class="c1">// function will return a #GError for you to catch</span>
<span class="k">if</span> <span class="p">(</span><span class="n">gtk_gl_area_get_error</span> <span class="p">(</span><span class="n">area</span><span class="p">)</span> <span class="o">!=</span> <span class="nb">NULL</span><span class="p">)</span>
<span class="k">return</span><span class="p">;</span>
<span class="w"> </span><span class="c1">// If there were errors during the initialization or</span>
<span class="w"> </span><span class="c1">// when trying to make the context current, this</span>
<span class="w"> </span><span class="c1">// function will return a #GError for you to catch</span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">gtk_gl_area_get_error</span><span class="w"> </span><span class="p">(</span><span class="n">area</span><span class="p">)</span><span class="w"> </span><span class="o">!=</span><span class="w"> </span><span class="nb">NULL</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="k">return</span><span class="p">;</span><span class="w"></span>
<span class="c1">// You can also use gtk_gl_area_set_error() in order</span>
<span class="c1">// to show eventual initialization errors on the</span>
<span class="c1">// GtkGLArea widget itself</span>
<span class="n">GError</span> <span class="o">*</span><span class="n">internal_error</span> <span class="o">=</span> <span class="nb">NULL</span><span class="p">;</span>
<span class="n">init_buffer_objects</span> <span class="p">(</span><span class="o">&amp;</span><span class="n">error</span><span class="p">);</span>
<span class="k">if</span> <span class="p">(</span><span class="n">error</span> <span class="o">!=</span> <span class="nb">NULL</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">gtk_gl_area_set_error</span> <span class="p">(</span><span class="n">area</span><span class="p">,</span> <span class="n">error</span><span class="p">);</span>
<span class="n">g_error_free</span> <span class="p">(</span><span class="n">error</span><span class="p">);</span>
<span class="k">return</span><span class="p">;</span>
<span class="p">}</span>
<span class="w"> </span><span class="c1">// You can also use gtk_gl_area_set_error() in order</span>
<span class="w"> </span><span class="c1">// to show eventual initialization errors on the</span>
<span class="w"> </span><span class="c1">// GtkGLArea widget itself</span>
<span class="w"> </span><span class="n">GError</span><span class="w"> </span><span class="o">*</span><span class="n">internal_error</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">NULL</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="n">init_buffer_objects</span><span class="w"> </span><span class="p">(</span><span class="o">&amp;</span><span class="n">error</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">error</span><span class="w"> </span><span class="o">!=</span><span class="w"> </span><span class="nb">NULL</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_gl_area_set_error</span><span class="w"> </span><span class="p">(</span><span class="n">area</span><span class="p">,</span><span class="w"> </span><span class="n">error</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">g_error_free</span><span class="w"> </span><span class="p">(</span><span class="n">error</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="k">return</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="n">init_shaders</span> <span class="p">(</span><span class="o">&amp;</span><span class="n">error</span><span class="p">);</span>
<span class="k">if</span> <span class="p">(</span><span class="n">error</span> <span class="o">!=</span> <span class="nb">NULL</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">gtk_gl_area_set_error</span> <span class="p">(</span><span class="n">area</span><span class="p">,</span> <span class="n">error</span><span class="p">);</span>
<span class="n">g_error_free</span> <span class="p">(</span><span class="n">error</span><span class="p">);</span>
<span class="k">return</span><span class="p">;</span>
<span class="p">}</span>
<span class="p">}</span></pre></td>
<span class="w"> </span><span class="n">init_shaders</span><span class="w"> </span><span class="p">(</span><span class="o">&amp;</span><span class="n">error</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">error</span><span class="w"> </span><span class="o">!=</span><span class="w"> </span><span class="nb">NULL</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_gl_area_set_error</span><span class="w"> </span><span class="p">(</span><span class="n">area</span><span class="p">,</span><span class="w"> </span><span class="n">error</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">g_error_free</span><span class="w"> </span><span class="p">(</span><span class="n">error</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="k">return</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
</div>
<p></p>
<p>If you need to change the options for creating the <span class="type">GdkGLContext</span>
<p>If you need to change the options for creating the <a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a>
you should use the <a class="link" href="GtkGLArea.html#GtkGLArea-create-context" title="The “create-context” signal"><span class="type">“create-context”</span></a> signal.</p>
</div>
</div>
@ -499,9 +499,9 @@ gtk_gl_area_new (<em class="parameter"><code><span class="type">void</span></cod
<hr>
<div class="refsect2">
<a name="gtk-gl-area-get-context"></a><h3>gtk_gl_area_get_context ()</h3>
<pre class="programlisting"><span class="returnvalue">GdkGLContext</span> *
<pre class="programlisting"><a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="returnvalue">GdkGLContext</span></a> *
gtk_gl_area_get_context (<em class="parameter"><code><a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> *area</code></em>);</pre>
<p>Retrieves the <span class="type">GdkGLContext</span> used by <em class="parameter"><code>area</code></em>
<p>Retrieves the <a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a> used by <em class="parameter"><code>area</code></em>
.</p>
<div class="refsect3">
<a name="gtk-gl-area-get-context.parameters"></a><h4>Parameters</h4>
@ -520,7 +520,7 @@ gtk_gl_area_get_context (<em class="parameter"><code><a class="link" href="GtkGL
</div>
<div class="refsect3">
<a name="gtk-gl-area-get-context.returns"></a><h4>Returns</h4>
<p>the <span class="type">GdkGLContext</span>. </p>
<p>the <a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a>. </p>
<p><span class="annotation">[<acronym title="The data is owned by the callee, which is responsible of freeing it."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="api-index-3-16.html#api-index-3.16">3.16</a></p>
@ -530,7 +530,7 @@ gtk_gl_area_get_context (<em class="parameter"><code><a class="link" href="GtkGL
<a name="gtk-gl-area-make-current"></a><h3>gtk_gl_area_make_current ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_gl_area_make_current (<em class="parameter"><code><a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> *area</code></em>);</pre>
<p>Ensures that the <span class="type">GdkGLContext</span> used by <em class="parameter"><code>area</code></em>
<p>Ensures that the <a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a> used by <em class="parameter"><code>area</code></em>
is associated with
the <a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a>.</p>
<p>This function is automatically called before emitting the
@ -1015,7 +1015,7 @@ gtk_gl_area_set_use_es (<em class="parameter"><code><a class="link" href="GtkGLA
<em class="parameter"><code><span class="type">gboolean</span> use_es</code></em>);</pre>
<p>Sets whether the <em class="parameter"><code>area</code></em>
should create an OpenGL or an OpenGL ES context.</p>
<p>You should check the capabilities of the <span class="type">GdkGLContext</span> before drawing
<p>You should check the capabilities of the <a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a> before drawing
with either API.</p>
<div class="refsect3">
<a name="gtk-gl-area-set-use-es.parameters"></a><h4>Parameters</h4>
@ -1142,9 +1142,9 @@ to redraw.</p>
<hr>
<div class="refsect2">
<a name="GtkGLArea--context"></a><h3>The <code class="literal">“context”</code> property</h3>
<pre class="programlisting"> “context” <span class="type">GdkGLContext</span> *</pre>
<p>The <span class="type">GdkGLContext</span> used by the <a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> widget.</p>
<p>The <a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> widget is responsible for creating the <span class="type">GdkGLContext</span>
<pre class="programlisting"> “context” <a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a> *</pre>
<p>The <a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a> used by the <a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> widget.</p>
<p>The <a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> widget is responsible for creating the <a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a>
instance. If you need to render with other kinds of buffers (stencil,
depth, etc), use render buffers.</p>
<p>Owner: GtkGLArea</p>
@ -1191,9 +1191,9 @@ target framebuffer.</p>
<div class="refsect2">
<a name="GtkGLArea--use-es"></a><h3>The <code class="literal">“use-es”</code> property</h3>
<pre class="programlisting"> “use-es” <span class="type">gboolean</span></pre>
<p>If set to <code class="literal">TRUE</code> the widget will try to create a <span class="type">GdkGLContext</span> using
<p>If set to <code class="literal">TRUE</code> the widget will try to create a <a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a> using
OpenGL ES instead of OpenGL.</p>
<p>See also: <code class="function">gdk_gl_context_set_use_es()</code></p>
<p>See also: <a href="../html/GdkGLContext.html#gdk-gl-context-set-use-es"><code class="function">gdk_gl_context_set_use_es()</code></a></p>
<p>Owner: GtkGLArea</p>
<p>Flags: Read / Write</p>
<p>Default value: FALSE</p>
@ -1204,7 +1204,7 @@ OpenGL ES instead of OpenGL.</p>
<a name="GtkGLArea.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="GtkGLArea-create-context"></a><h3>The <code class="literal">“create-context”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">GdkGLContext</span>*
<pre class="programlisting"><a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="returnvalue">GdkGLContext</span></a>*
user_function (<a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> *area,
<span class="type">gpointer</span> user_data)</pre>
<p>The ::create-context signal is emitted when the widget is being
@ -1244,7 +1244,7 @@ of how the construction failed.</p>
</div>
<div class="refsect3">
<a name="GtkGLArea-create-context.returns"></a><h4>Returns</h4>
<p>a newly created <span class="type">GdkGLContext</span>;
<p>a newly created <a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a>;
the <a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> widget will take ownership of the returned value. </p>
<p><span class="annotation">[<acronym title="The caller owns the data, and is responsible for free it."><span class="acronym">transfer full</span></acronym>]</span></p>
</div>
@ -1256,7 +1256,7 @@ the <a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">G
<a name="GtkGLArea-render"></a><h3>The <code class="literal">“render”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
user_function (<a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> *area,
<span class="type">GdkGLContext</span> *context,
<a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a> *context,
<span class="type">gpointer</span> user_data)</pre>
<p>The ::render signal is emitted every time the contents
of the <a class="link" href="GtkGLArea.html" title="GtkGLArea"><span class="type">GtkGLArea</span></a> should be redrawn.</p>
@ -1280,7 +1280,7 @@ and the buffers are painted to the window once the emission terminates.</p>
</tr>
<tr>
<td class="parameter_name"><p>context</p></td>
<td class="parameter_description"><p>the <span class="type">GdkGLContext</span> used by <em class="parameter"><code>area</code></em>
<td class="parameter_description"><p>the <a href="../html/GdkGLContext.html#GdkGLContext-struct"><span class="type">GdkGLContext</span></a> used by <em class="parameter"><code>area</code></em>
</p></td>
<td class="parameter_annotations"> </td>
</tr>

View File

@ -44,7 +44,7 @@
<tbody>
<tr>
<td class="function_type">
<span class="returnvalue">GdkDevice</span> *
<a href="../html/GdkDevice.html#GdkDevice-struct"><span class="returnvalue">GdkDevice</span></a> *
</td>
<td class="function_name">
<a class="link" href="GtkGesture.html#gtk-gesture-get-device" title="gtk_gesture_get_device ()">gtk_gesture_get_device</a> <span class="c_punctuation">()</span>
@ -52,7 +52,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GdkWindow</span> *
<a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="returnvalue">GdkWindow</span></a> *
</td>
<td class="function_name">
<a class="link" href="GtkGesture.html#gtk-gesture-get-window" title="gtk_gesture_get_window ()">gtk_gesture_get_window</a> <span class="c_punctuation">()</span>
@ -124,14 +124,14 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GdkEventSequence</span> *
<a href="../html/gdk3-Events.html#GdkEventSequence"><span class="returnvalue">GdkEventSequence</span></a> *
</td>
<td class="function_name">
<a class="link" href="GtkGesture.html#gtk-gesture-get-last-updated-sequence" title="gtk_gesture_get_last_updated_sequence ()">gtk_gesture_get_last_updated_sequence</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">const <span class="returnvalue">GdkEvent</span> *
<td class="function_type">const <a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="returnvalue">GdkEvent</span></a> *
</td>
<td class="function_name">
<a class="link" href="GtkGesture.html#gtk-gesture-get-last-event" title="gtk_gesture_get_last_event ()">gtk_gesture_get_last_event</a> <span class="c_punctuation">()</span>
@ -212,7 +212,7 @@
</tr>
<tr>
<td class="property_type">
<span class="type">GdkWindow</span> *</td>
<a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="type">GdkWindow</span></a> *</td>
<td class="property_name"><a class="link" href="GtkGesture.html#GtkGesture--window" title="The “window” property">window</a></td>
<td class="property_flags">Read / Write</td>
</tr>
@ -295,7 +295,7 @@
<p><a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> is the base object for gesture recognition, although this
object is quite generalized to serve as a base for multi-touch gestures,
it is suitable to implement single-touch and pointer-based gestures (using
the special <code class="literal">NULL</code> <span class="type">GdkEventSequence</span> value for these).</p>
the special <code class="literal">NULL</code> <a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> value for these).</p>
<p>The number of touches that a <a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> need to be recognized is controlled
by the <a class="link" href="GtkGesture.html#GtkGesture--n-points" title="The “n-points” property"><span class="type">“n-points”</span></a> property, if a gesture is keeping track of less
or more than that number of sequences, it won't check wether the gesture
@ -356,13 +356,13 @@ propagation chain.</p></li>
<li class="listitem"><p>Stopping event propagation after the gesture group handles the event.</p></li>
</ul></div>
<p>Note: if a sequence is set early to <a class="link" href="GtkGesture.html#GTK-EVENT-SEQUENCE-CLAIMED:CAPS"><span class="type">GTK_EVENT_SEQUENCE_CLAIMED</span></a> on
<span class="type">GDK_TOUCH_BEGIN</span>/<span class="type">GDK_BUTTON_PRESS</span> (so those events are captured before
<a href="../html/gdk3-Events.html#GDK-TOUCH-BEGIN:CAPS"><span class="type">GDK_TOUCH_BEGIN</span></a>/<a href="../html/gdk3-Events.html#GDK-BUTTON-PRESS:CAPS"><span class="type">GDK_BUTTON_PRESS</span></a> (so those events are captured before
reaching the event widget, this implies <a class="link" href="GtkEventController.html#GTK-PHASE-CAPTURE:CAPS"><span class="type">GTK_PHASE_CAPTURE</span></a>), one similar
event will emulated if the sequence changes to <a class="link" href="GtkGesture.html#GTK-EVENT-SEQUENCE-DENIED:CAPS"><span class="type">GTK_EVENT_SEQUENCE_DENIED</span></a>.
This way event coherence is preserved before event propagation is unstopped
again.</p>
<p>Sequence states can't be changed freely, see <a class="link" href="GtkGesture.html#gtk-gesture-set-sequence-state" title="gtk_gesture_set_sequence_state ()"><code class="function">gtk_gesture_set_sequence_state()</code></a>
to know about the possible lifetimes of a <span class="type">GdkEventSequence</span>.</p>
to know about the possible lifetimes of a <a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a>.</p>
</div>
<div class="refsect3">
<a name="id-1.3.24.6.9.9"></a><h4>Touchpad gestures</h4>
@ -370,9 +370,9 @@ to know about the possible lifetimes of a <span class="type">GdkEventSequence</s
touchpad gesture events. The only precautions users of <a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> should do
to enable this support are:</p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem"><p>Enabling <code class="literal">GDK_TOUCHPAD_GESTURE_MASK</code> on their <span class="type">GdkWindows</span></p></li>
<li class="listitem"><p>Enabling <a href="../html/gdk3-Events.html#GDK-TOUCHPAD-GESTURE-MASK:CAPS"><code class="literal">GDK_TOUCHPAD_GESTURE_MASK</code></a> on their <a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="type">GdkWindows</span></a></p></li>
<li class="listitem"><p>If the gesture has <a class="link" href="GtkEventController.html#GTK-PHASE-NONE:CAPS"><code class="literal">GTK_PHASE_NONE</code></a>, ensuring events of type
<code class="literal">GDK_TOUCHPAD_SWIPE</code> and <code class="literal">GDK_TOUCHPAD_PINCH</code> are handled by the <a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a></p></li>
<a href="../html/gdk3-Events.html#GDK-TOUCHPAD-SWIPE:CAPS"><code class="literal">GDK_TOUCHPAD_SWIPE</code></a> and <a href="../html/gdk3-Events.html#GDK-TOUCHPAD-PINCH:CAPS"><code class="literal">GDK_TOUCHPAD_PINCH</code></a> are handled by the <a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a></p></li>
</ul></div>
</div>
</div>
@ -380,9 +380,9 @@ to enable this support are:</p>
<a name="GtkGesture.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="gtk-gesture-get-device"></a><h3>gtk_gesture_get_device ()</h3>
<pre class="programlisting"><span class="returnvalue">GdkDevice</span> *
<pre class="programlisting"><a href="../html/GdkDevice.html#GdkDevice-struct"><span class="returnvalue">GdkDevice</span></a> *
gtk_gesture_get_device (<em class="parameter"><code><a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture</code></em>);</pre>
<p>Returns the master <span class="type">GdkDevice</span> that is currently operating
<p>Returns the master <a href="../html/GdkDevice.html#GdkDevice-struct"><span class="type">GdkDevice</span></a> that is currently operating
on <em class="parameter"><code>gesture</code></em>
, or <code class="literal">NULL</code> if the gesture is not being interacted.</p>
<div class="refsect3">
@ -402,7 +402,7 @@ on <em class="parameter"><code>gesture</code></em>
</div>
<div class="refsect3">
<a name="gtk-gesture-get-device.returns"></a><h4>Returns</h4>
<p>a <span class="type">GdkDevice</span>, or <code class="literal">NULL</code>. </p>
<p>a <a href="../html/GdkDevice.html#GdkDevice-struct"><span class="type">GdkDevice</span></a>, or <code class="literal">NULL</code>. </p>
<p><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>][<acronym title="The data is owned by the callee, which is responsible of freeing it."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="api-index-3-14.html#api-index-3.14">3.14</a></p>
@ -410,7 +410,7 @@ on <em class="parameter"><code>gesture</code></em>
<hr>
<div class="refsect2">
<a name="gtk-gesture-get-window"></a><h3>gtk_gesture_get_window ()</h3>
<pre class="programlisting"><span class="returnvalue">GdkWindow</span> *
<pre class="programlisting"><a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="returnvalue">GdkWindow</span></a> *
gtk_gesture_get_window (<em class="parameter"><code><a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture</code></em>);</pre>
<p>Returns the user-defined window that receives the events
handled by <em class="parameter"><code>gesture</code></em>
@ -443,7 +443,7 @@ information.</p>
<a name="gtk-gesture-set-window"></a><h3>gtk_gesture_set_window ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_gesture_set_window (<em class="parameter"><code><a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture</code></em>,
<em class="parameter"><code><span class="type">GdkWindow</span> *window</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="type">GdkWindow</span></a> *window</code></em>);</pre>
<p>Sets a specific window to receive events about, so <em class="parameter"><code>gesture</code></em>
will effectively handle only events targeting <em class="parameter"><code>window</code></em>
@ -466,7 +466,7 @@ a child of it. <em class="parameter"><code>window</code></em>
</tr>
<tr>
<td class="parameter_name"><p>window</p></td>
<td class="parameter_description"><p>a <span class="type">GdkWindow</span>, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="type">GdkWindow</span></a>, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
</tbody>
@ -539,7 +539,7 @@ returned <code class="literal">TRUE</code> for the sequences being currently int
<a name="gtk-gesture-get-sequence-state"></a><h3>gtk_gesture_get_sequence_state ()</h3>
<pre class="programlisting"><a class="link" href="GtkGesture.html#GtkEventSequenceState" title="enum GtkEventSequenceState"><span class="returnvalue">GtkEventSequenceState</span></a>
gtk_gesture_get_sequence_state (<em class="parameter"><code><a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture</code></em>,
<em class="parameter"><code><span class="type">GdkEventSequence</span> *sequence</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> *sequence</code></em>);</pre>
<p>Returns the <em class="parameter"><code>sequence</code></em>
state, as seen by <em class="parameter"><code>gesture</code></em>
.</p>
@ -559,7 +559,7 @@ gtk_gesture_get_sequence_state (<em class="parameter"><code><a class="link" href
</tr>
<tr>
<td class="parameter_name"><p>sequence</p></td>
<td class="parameter_description"><p>a <span class="type">GdkEventSequence</span></p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
@ -577,7 +577,7 @@ gtk_gesture_get_sequence_state (<em class="parameter"><code><a class="link" href
<a name="gtk-gesture-set-sequence-state"></a><h3>gtk_gesture_set_sequence_state ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_gesture_set_sequence_state (<em class="parameter"><code><a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture</code></em>,
<em class="parameter"><code><span class="type">GdkEventSequence</span> *sequence</code></em>,
<em class="parameter"><code><a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> *sequence</code></em>,
<em class="parameter"><code><a class="link" href="GtkGesture.html#GtkEventSequenceState" title="enum GtkEventSequenceState"><span class="type">GtkEventSequenceState</span></a> state</code></em>);</pre>
<p>Sets the state of <em class="parameter"><code>sequence</code></em>
in <em class="parameter"><code>gesture</code></em>
@ -619,23 +619,23 @@ perform this could be:</p>
15
16
17</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span> <span class="kt">void</span>
<span class="nf">first_gesture_begin_cb</span> <span class="p">(</span><span class="n">GtkGesture</span> <span class="o">*</span><span class="n">first_gesture</span><span class="p">,</span>
<span class="n">GdkEventSequence</span> <span class="o">*</span><span class="n">sequence</span><span class="p">,</span>
<span class="n">gpointer</span> <span class="n">user_data</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">gtk_gesture_set_sequence_state</span> <span class="p">(</span><span class="n">first_gesture</span><span class="p">,</span> <span class="n">sequence</span><span class="p">,</span> <span class="n">GTK_EVENT_SEQUENCE_CLAIMED</span><span class="p">);</span>
<span class="n">gtk_gesture_set_sequence_state</span> <span class="p">(</span><span class="n">second_gesture</span><span class="p">,</span> <span class="n">sequence</span><span class="p">,</span> <span class="n">GTK_EVENT_SEQUENCE_DENIED</span><span class="p">);</span>
<span class="p">}</span>
<td class="listing_code"><pre class="programlisting"><span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="nf">first_gesture_begin_cb</span><span class="w"> </span><span class="p">(</span><span class="n">GtkGesture</span><span class="w"> </span><span class="o">*</span><span class="n">first_gesture</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GdkEventSequence</span><span class="w"> </span><span class="o">*</span><span class="n">sequence</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gpointer</span><span class="w"> </span><span class="n">user_data</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_gesture_set_sequence_state</span><span class="w"> </span><span class="p">(</span><span class="n">first_gesture</span><span class="p">,</span><span class="w"> </span><span class="n">sequence</span><span class="p">,</span><span class="w"> </span><span class="n">GTK_EVENT_SEQUENCE_CLAIMED</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_gesture_set_sequence_state</span><span class="w"> </span><span class="p">(</span><span class="n">second_gesture</span><span class="p">,</span><span class="w"> </span><span class="n">sequence</span><span class="p">,</span><span class="w"> </span><span class="n">GTK_EVENT_SEQUENCE_DENIED</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span>
<span class="k">static</span> <span class="kt">void</span>
<span class="nf">second_gesture_begin_cb</span> <span class="p">(</span><span class="n">GtkGesture</span> <span class="o">*</span><span class="n">second_gesture</span><span class="p">,</span>
<span class="n">GdkEventSequence</span> <span class="o">*</span><span class="n">sequence</span><span class="p">,</span>
<span class="n">gpointer</span> <span class="n">user_data</span><span class="p">)</span>
<span class="p">{</span>
<span class="k">if</span> <span class="p">(</span><span class="n">gtk_gesture_get_sequence_state</span> <span class="p">(</span><span class="n">first_gesture</span><span class="p">,</span> <span class="n">sequence</span><span class="p">)</span> <span class="o">==</span> <span class="n">GTK_EVENT_SEQUENCE_CLAIMED</span><span class="p">)</span>
<span class="n">gtk_gesture_set_sequence_state</span> <span class="p">(</span><span class="n">second_gesture</span><span class="p">,</span> <span class="n">sequence</span><span class="p">,</span> <span class="n">GTK_EVENT_SEQUENCE_DENIED</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"></span>
<span class="nf">second_gesture_begin_cb</span><span class="w"> </span><span class="p">(</span><span class="n">GtkGesture</span><span class="w"> </span><span class="o">*</span><span class="n">second_gesture</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">GdkEventSequence</span><span class="w"> </span><span class="o">*</span><span class="n">sequence</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="n">gpointer</span><span class="w"> </span><span class="n">user_data</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">gtk_gesture_get_sequence_state</span><span class="w"> </span><span class="p">(</span><span class="n">first_gesture</span><span class="p">,</span><span class="w"> </span><span class="n">sequence</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">GTK_EVENT_SEQUENCE_CLAIMED</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="n">gtk_gesture_set_sequence_state</span><span class="w"> </span><span class="p">(</span><span class="n">second_gesture</span><span class="p">,</span><span class="w"> </span><span class="n">sequence</span><span class="p">,</span><span class="w"> </span><span class="n">GTK_EVENT_SEQUENCE_DENIED</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -662,7 +662,7 @@ gesture processes the event.</p>
</tr>
<tr>
<td class="parameter_name"><p>sequence</p></td>
<td class="parameter_description"><p>a <span class="type">GdkEventSequence</span></p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
@ -759,7 +759,7 @@ through <code class="function">g_list_free()</code>. </p>
<a name="gtk-gesture-handles-sequence"></a><h3>gtk_gesture_handles_sequence ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_gesture_handles_sequence (<em class="parameter"><code><a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture</code></em>,
<em class="parameter"><code><span class="type">GdkEventSequence</span> *sequence</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> *sequence</code></em>);</pre>
<p>Returns <code class="literal">TRUE</code> if <em class="parameter"><code>gesture</code></em>
is currently handling events corresponding to
<em class="parameter"><code>sequence</code></em>
@ -780,7 +780,7 @@ gtk_gesture_handles_sequence (<em class="parameter"><code><a class="link" href="
</tr>
<tr>
<td class="parameter_name"><p>sequence</p></td>
<td class="parameter_description"><p>a <span class="type">GdkEventSequence</span> or <code class="literal">NULL</code>. </p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
</tbody>
@ -797,9 +797,9 @@ is handling <em class="parameter"><code>sequence</code></em>
<hr>
<div class="refsect2">
<a name="gtk-gesture-get-last-updated-sequence"></a><h3>gtk_gesture_get_last_updated_sequence ()</h3>
<pre class="programlisting"><span class="returnvalue">GdkEventSequence</span> *
<pre class="programlisting"><a href="../html/gdk3-Events.html#GdkEventSequence"><span class="returnvalue">GdkEventSequence</span></a> *
gtk_gesture_get_last_updated_sequence (<em class="parameter"><code><a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture</code></em>);</pre>
<p>Returns the <span class="type">GdkEventSequence</span> that was last updated on <em class="parameter"><code>gesture</code></em>
<p>Returns the <a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> that was last updated on <em class="parameter"><code>gesture</code></em>
.</p>
<div class="refsect3">
<a name="gtk-gesture-get-last-updated-sequence.parameters"></a><h4>Parameters</h4>
@ -826,9 +826,9 @@ gtk_gesture_get_last_updated_sequence (<em class="parameter"><code><a class="lin
<hr>
<div class="refsect2">
<a name="gtk-gesture-get-last-event"></a><h3>gtk_gesture_get_last_event ()</h3>
<pre class="programlisting">const <span class="returnvalue">GdkEvent</span> *
<pre class="programlisting">const <a href="../html/gdk3-Event-Structures.html#GdkEvent"><span class="returnvalue">GdkEvent</span></a> *
gtk_gesture_get_last_event (<em class="parameter"><code><a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture</code></em>,
<em class="parameter"><code><span class="type">GdkEventSequence</span> *sequence</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> *sequence</code></em>);</pre>
<p>Returns the last event that was processed for <em class="parameter"><code>sequence</code></em>
.</p>
<p>Note that the returned pointer is only valid as long as the <em class="parameter"><code>sequence</code></em>
@ -852,7 +852,7 @@ a copy of the event.</p>
</tr>
<tr>
<td class="parameter_name"><p>sequence</p></td>
<td class="parameter_description"><p>a <span class="type">GdkEventSequence</span>. </p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
</tbody>
@ -870,7 +870,7 @@ a copy of the event.</p>
<a name="gtk-gesture-get-point"></a><h3>gtk_gesture_get_point ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_gesture_get_point (<em class="parameter"><code><a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture</code></em>,
<em class="parameter"><code><span class="type">GdkEventSequence</span> *sequence</code></em>,
<em class="parameter"><code><a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> *sequence</code></em>,
<em class="parameter"><code><span class="type">gdouble</span> *x</code></em>,
<em class="parameter"><code><span class="type">gdouble</span> *y</code></em>);</pre>
<p>If <em class="parameter"><code>sequence</code></em>
@ -897,7 +897,7 @@ widget allocation.</p>
</tr>
<tr>
<td class="parameter_name"><p>sequence</p></td>
<td class="parameter_description"><p>a <span class="type">GdkEventSequence</span>, or <code class="literal">NULL</code> for pointer events. </p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a>, or <code class="literal">NULL</code> for pointer events. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
@ -925,7 +925,7 @@ is currently interpreted</p>
<a name="gtk-gesture-get-bounding-box"></a><h3>gtk_gesture_get_bounding_box ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_gesture_get_bounding_box (<em class="parameter"><code><a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture</code></em>,
<em class="parameter"><code><span class="type">GdkRectangle</span> *rect</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *rect</code></em>);</pre>
<p>If there are touch sequences being currently handled by <em class="parameter"><code>gesture</code></em>
,
this function returns <code class="literal">TRUE</code> and fills in <em class="parameter"><code>rect</code></em>
@ -1027,7 +1027,7 @@ are by default isolated in their own groups.</p>
is kept in sync for all of those, so calling <a class="link" href="GtkGesture.html#gtk-gesture-set-sequence-state" title="gtk_gesture_set_sequence_state ()"><code class="function">gtk_gesture_set_sequence_state()</code></a>,
on one will transfer the same value to the others.</p>
<p>Groups also perform an "implicit grabbing" of sequences, if a
<span class="type">GdkEventSequence</span> state is set to <a class="link" href="GtkGesture.html#GTK-EVENT-SEQUENCE-CLAIMED:CAPS"><span class="type">GTK_EVENT_SEQUENCE_CLAIMED</span></a> on one group,
<a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> state is set to <a class="link" href="GtkGesture.html#GTK-EVENT-SEQUENCE-CLAIMED:CAPS"><span class="type">GTK_EVENT_SEQUENCE_CLAIMED</span></a> on one group,
every other gesture group attached to the same <a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> will switch the
state for that sequence to <a class="link" href="GtkGesture.html#GTK-EVENT-SEQUENCE-DENIED:CAPS"><span class="type">GTK_EVENT_SEQUENCE_DENIED</span></a>.</p>
<div class="refsect3">
@ -1154,7 +1154,7 @@ gtk_gesture_is_grouped_with (<em class="parameter"><code><a class="link" href="G
<hr>
<div class="refsect2">
<a name="GtkEventSequenceState"></a><h3>enum GtkEventSequenceState</h3>
<p>Describes the state of a <span class="type">GdkEventSequence</span> in a <a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a>.</p>
<p>Describes the state of a <a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> in a <a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a>.</p>
<div class="refsect3">
<a name="GtkEventSequenceState.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
@ -1206,9 +1206,9 @@ gtk_gesture_is_grouped_with (<em class="parameter"><code><a class="link" href="G
<hr>
<div class="refsect2">
<a name="GtkGesture--window"></a><h3>The <code class="literal">“window”</code> property</h3>
<pre class="programlisting"> “window” <span class="type">GdkWindow</span> *</pre>
<pre class="programlisting"> “window” <a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="type">GdkWindow</span></a> *</pre>
<p>If non-<code class="literal">NULL</code>, the gesture will only listen for events that happen on
this <span class="type">GdkWindow</span>, or a child of it.</p>
this <a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="type">GdkWindow</span></a>, or a child of it.</p>
<p>Owner: GtkGesture</p>
<p>Flags: Read / Write</p>
<p class="since">Since: <a class="link" href="api-index-3-14.html#api-index-3.14">3.14</a></p>
@ -1220,7 +1220,7 @@ this <span class="type">GdkWindow</span>, or a child of it.</p>
<a name="GtkGesture-begin"></a><h3>The <code class="literal">“begin”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture,
<span class="type">GdkEventSequence</span> *sequence,
<a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> *sequence,
<span class="type">gpointer</span> user_data)</pre>
<p>This signal is emitted when the gesture is recognized. This means the
number of touch sequences matches <a class="link" href="GtkGesture.html#GtkGesture--n-points" title="The “n-points” property"><span class="type">“n-points”</span></a>, and the <span class="type">“check”</span>
@ -1245,7 +1245,7 @@ to the current set of active touches, so don't rely on this being true.</p>
</tr>
<tr>
<td class="parameter_name"><p>sequence</p></td>
<td class="parameter_description"><p>the <span class="type">GdkEventSequence</span> that made the gesture to be recognized. </p></td>
<td class="parameter_description"><p>the <a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> that made the gesture to be recognized. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
<tr>
@ -1264,7 +1264,7 @@ to the current set of active touches, so don't rely on this being true.</p>
<a name="GtkGesture-cancel"></a><h3>The <code class="literal">“cancel”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture,
<span class="type">GdkEventSequence</span> *sequence,
<a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> *sequence,
<span class="type">gpointer</span> user_data)</pre>
<p>This signal is emitted whenever a sequence is cancelled. This usually
happens on active touches when <a class="link" href="GtkEventController.html#gtk-event-controller-reset" title="gtk_event_controller_reset ()"><code class="function">gtk_event_controller_reset()</code></a> is called
@ -1291,7 +1291,7 @@ was claimed by parent widgets' controllers (see <a class="link" href="GtkGesture
</tr>
<tr>
<td class="parameter_name"><p>sequence</p></td>
<td class="parameter_description"><p>the <span class="type">GdkEventSequence</span> that was cancelled. </p></td>
<td class="parameter_description"><p>the <a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> that was cancelled. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
<tr>
@ -1310,7 +1310,7 @@ was claimed by parent widgets' controllers (see <a class="link" href="GtkGesture
<a name="GtkGesture-end"></a><h3>The <code class="literal">“end”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture,
<span class="type">GdkEventSequence</span> *sequence,
<a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> *sequence,
<span class="type">gpointer</span> user_data)</pre>
<p>This signal is emitted when <em class="parameter"><code>gesture</code></em>
either stopped recognizing the event
@ -1339,7 +1339,7 @@ by checking through <a class="link" href="GtkGesture.html#gtk-gesture-handles-se
</tr>
<tr>
<td class="parameter_name"><p>sequence</p></td>
<td class="parameter_description"><p>the <span class="type">GdkEventSequence</span> that made gesture recognition to finish. </p></td>
<td class="parameter_description"><p>the <a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> that made gesture recognition to finish. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
<tr>
@ -1358,7 +1358,7 @@ by checking through <a class="link" href="GtkGesture.html#gtk-gesture-handles-se
<a name="GtkGesture-sequence-state-changed"></a><h3>The <code class="literal">“sequence-state-changed”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture,
<span class="type">GdkEventSequence</span> *sequence,
<a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> *sequence,
<a class="link" href="GtkGesture.html#GtkEventSequenceState" title="enum GtkEventSequenceState"><span class="type">GtkEventSequenceState</span></a> state,
<span class="type">gpointer</span> user_data)</pre>
<p>This signal is emitted whenever a sequence state changes. See
@ -1380,7 +1380,7 @@ sequence lifetimes.</p>
</tr>
<tr>
<td class="parameter_name"><p>sequence</p></td>
<td class="parameter_description"><p>the <span class="type">GdkEventSequence</span> that was cancelled. </p></td>
<td class="parameter_description"><p>the <a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> that was cancelled. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
<tr>
@ -1404,7 +1404,7 @@ sequence lifetimes.</p>
<a name="GtkGesture-update"></a><h3>The <code class="literal">“update”</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
user_function (<a class="link" href="GtkGesture.html" title="GtkGesture"><span class="type">GtkGesture</span></a> *gesture,
<span class="type">GdkEventSequence</span> *sequence,
<a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> *sequence,
<span class="type">gpointer</span> user_data)</pre>
<p>This signal is emitted whenever an event is handled while the gesture is
recognized. <em class="parameter"><code>sequence</code></em>
@ -1425,7 +1425,7 @@ recognized. <em class="parameter"><code>sequence</code></em>
</tr>
<tr>
<td class="parameter_name"><p>sequence</p></td>
<td class="parameter_description"><p>the <span class="type">GdkEventSequence</span> that was updated. </p></td>
<td class="parameter_description"><p>the <a href="../html/gdk3-Events.html#GdkEventSequence"><span class="type">GdkEventSequence</span></a> that was updated. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
<tr>

View File

@ -168,7 +168,7 @@ presses.</p>
<a name="gtk-gesture-multi-press-set-area"></a><h3>gtk_gesture_multi_press_set_area ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_gesture_multi_press_set_area (<em class="parameter"><code><a class="link" href="GtkGestureMultiPress.html" title="GtkGestureMultiPress"><span class="type">GtkGestureMultiPress</span></a> *gesture</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *rect</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *rect</code></em>);</pre>
<p>If <em class="parameter"><code>rect</code></em>
is non-<code class="literal">NULL</code>, the press area will be checked to be
confined within the rectangle, otherwise the button count
@ -208,7 +208,7 @@ akin to an input shape.</p>
<a name="gtk-gesture-multi-press-get-area"></a><h3>gtk_gesture_multi_press_get_area ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_gesture_multi_press_get_area (<em class="parameter"><code><a class="link" href="GtkGestureMultiPress.html" title="GtkGestureMultiPress"><span class="type">GtkGestureMultiPress</span></a> *gesture</code></em>,
<em class="parameter"><code><span class="type">GdkRectangle</span> *rect</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *rect</code></em>);</pre>
<p>If an area was set through <a class="link" href="GtkGestureMultiPress.html#gtk-gesture-multi-press-set-area" title="gtk_gesture_multi_press_set_area ()"><code class="function">gtk_gesture_multi_press_set_area()</code></a>,
this function will return <code class="literal">TRUE</code> and fill in <em class="parameter"><code>rect</code></em>
with the

View File

@ -99,7 +99,7 @@
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GdkEventSequence</span> *
<a href="../html/gdk3-Events.html#GdkEventSequence"><span class="returnvalue">GdkEventSequence</span></a> *
</td>
<td class="function_name">
<a class="link" href="GtkGestureSingle.html#gtk-gesture-single-get-current-sequence" title="gtk_gesture_single_get_current_sequence ()">gtk_gesture_single_get_current_sequence</a> <span class="c_punctuation">()</span>
@ -173,7 +173,7 @@ not restricted) for dealing with mouse and single-touch gestures. Under
interaction, these gestures stick to the first interacting sequence, which
is accessible through <a class="link" href="GtkGestureSingle.html#gtk-gesture-single-get-current-sequence" title="gtk_gesture_single_get_current_sequence ()"><code class="function">gtk_gesture_single_get_current_sequence()</code></a> while the
gesture is being interacted with.</p>
<p>By default gestures react to both <code class="literal">GDK_BUTTON_PRIMARY</code> and touch
<p>By default gestures react to both <a href="../html/gdk3-Events.html#GDK-BUTTON-PRIMARY:CAPS"><code class="literal">GDK_BUTTON_PRIMARY</code></a> and touch
events, <a class="link" href="GtkGestureSingle.html#gtk-gesture-single-set-touch-only" title="gtk_gesture_single_set_touch_only ()"><code class="function">gtk_gesture_single_set_touch_only()</code></a> can be used to change the
touch behavior. Callers may also specify a different mouse button number
to interact with through <a class="link" href="GtkGestureSingle.html#gtk-gesture-single-set-button" title="gtk_gesture_single_set_button ()"><code class="function">gtk_gesture_single_set_button()</code></a>, or react to any
@ -281,7 +281,7 @@ gtk_gesture_single_set_touch_only (<em class="parameter"><code><a class="link" h
<p>If <em class="parameter"><code>touch_only</code></em>
is <code class="literal">TRUE</code>, <em class="parameter"><code>gesture</code></em>
will only handle events of type
<span class="type">GDK_TOUCH_BEGIN</span>, <span class="type">GDK_TOUCH_UPDATE</span> or <span class="type">GDK_TOUCH_END</span>. If <code class="literal">FALSE</code>,
<a href="../html/gdk3-Events.html#GDK-TOUCH-BEGIN:CAPS"><span class="type">GDK_TOUCH_BEGIN</span></a>, <a href="../html/gdk3-Events.html#GDK-TOUCH-UPDATE:CAPS"><span class="type">GDK_TOUCH_UPDATE</span></a> or <a href="../html/gdk3-Events.html#GDK-TOUCH-END:CAPS"><span class="type">GDK_TOUCH_END</span></a>. If <code class="literal">FALSE</code>,
mouse events will be handled too.</p>
<div class="refsect3">
<a name="gtk-gesture-single-set-touch-only.parameters"></a><h4>Parameters</h4>
@ -404,7 +404,7 @@ is none.</p>
<hr>
<div class="refsect2">
<a name="gtk-gesture-single-get-current-sequence"></a><h3>gtk_gesture_single_get_current_sequence ()</h3>
<pre class="programlisting"><span class="returnvalue">GdkEventSequence</span> *
<pre class="programlisting"><a href="../html/gdk3-Events.html#GdkEventSequence"><span class="returnvalue">GdkEventSequence</span></a> *
gtk_gesture_single_get_current_sequence
(<em class="parameter"><code><a class="link" href="GtkGestureSingle.html" title="GtkGestureSingle"><span class="type">GtkGestureSingle</span></a> *gesture</code></em>);</pre>
<p>Returns the event sequence currently interacting with <em class="parameter"><code>gesture</code></em>

View File

@ -173,7 +173,7 @@ gtk_gesture_stylus_new (<em class="parameter"><code><a class="link" href="GtkWid
<a name="gtk-gesture-stylus-get-axis"></a><h3>gtk_gesture_stylus_get_axis ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_gesture_stylus_get_axis (<em class="parameter"><code><a class="link" href="GtkGestureStylus.html" title="GtkGestureStylus"><span class="type">GtkGestureStylus</span></a> *gesture</code></em>,
<em class="parameter"><code><span class="type">GdkAxisUse</span> axis</code></em>,
<em class="parameter"><code><a href="../html/GdkDevice.html#GdkAxisUse"><span class="type">GdkAxisUse</span></a> axis</code></em>,
<em class="parameter"><code><span class="type">gdouble</span> *value</code></em>);</pre>
<p>Returns the current value for the requested <em class="parameter"><code>axis</code></em>
. This function
@ -218,7 +218,7 @@ signals.</p>
<a name="gtk-gesture-stylus-get-axes"></a><h3>gtk_gesture_stylus_get_axes ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_gesture_stylus_get_axes (<em class="parameter"><code><a class="link" href="GtkGestureStylus.html" title="GtkGestureStylus"><span class="type">GtkGestureStylus</span></a> *gesture</code></em>,
<em class="parameter"><code><span class="type">GdkAxisUse</span> axes[]</code></em>,
<em class="parameter"><code><a href="../html/GdkDevice.html#GdkAxisUse"><span class="type">GdkAxisUse</span></a> axes[]</code></em>,
<em class="parameter"><code><span class="type">gdouble</span> **values</code></em>);</pre>
<p>Returns the current values for the requested <em class="parameter"><code>axes</code></em>
. This function
@ -241,7 +241,7 @@ signals.</p>
</tr>
<tr>
<td class="parameter_name"><p>axes</p></td>
<td class="parameter_description"><p>array of requested axes, terminated with <span class="type">GDK_AXIS_IGNORE</span>. </p></td>
<td class="parameter_description"><p>array of requested axes, terminated with <a href="../html/GdkDevice.html#GDK-AXIS-IGNORE:CAPS"><span class="type">GDK_AXIS_IGNORE</span></a>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym>]</span></td>
</tr>
<tr>

View File

@ -266,7 +266,7 @@ these four functions:</p>
<tbody>
<tr>
<td class="listing_lines" align="right"><pre>1</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="kt">void</span> <span class="nf">im_module_init</span><span class="p">(</span><span class="n">GTypeModule</span> <span class="o">*</span><span class="n">module</span><span class="p">);</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="kt">void</span><span class="w"> </span><span class="nf">im_module_init</span><span class="p">(</span><span class="n">GTypeModule</span><span class="w"> </span><span class="o">*</span><span class="n">module</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -282,7 +282,7 @@ registered dynamically.</p>
<tbody>
<tr>
<td class="listing_lines" align="right"><pre>1</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="kt">void</span> <span class="nf">im_module_exit</span><span class="p">(</span><span class="kt">void</span><span class="p">);</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="kt">void</span><span class="w"> </span><span class="nf">im_module_exit</span><span class="p">(</span><span class="kt">void</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -299,11 +299,11 @@ Here goes any cleanup code your input method might require on module unload.</p>
3
4
5</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="kt">void</span> <span class="nf">im_module_list</span><span class="p">(</span><span class="k">const</span> <span class="n">GtkIMContextInfo</span> <span class="o">***</span><span class="n">contexts</span><span class="p">,</span> <span class="kt">int</span> <span class="o">*</span><span class="n">n_contexts</span><span class="p">)</span>
<span class="p">{</span>
<span class="o">*</span><span class="n">contexts</span> <span class="o">=</span> <span class="n">info_list</span><span class="p">;</span>
<span class="o">*</span><span class="n">n_contexts</span> <span class="o">=</span> <span class="n">G_N_ELEMENTS</span> <span class="p">(</span><span class="n">info_list</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="kt">void</span><span class="w"> </span><span class="nf">im_module_list</span><span class="p">(</span><span class="k">const</span><span class="w"> </span><span class="n">GtkIMContextInfo</span><span class="w"> </span><span class="o">***</span><span class="n">contexts</span><span class="p">,</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="o">*</span><span class="n">n_contexts</span><span class="p">)</span><span class="w"></span>
<span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="o">*</span><span class="n">contexts</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">info_list</span><span class="p">;</span><span class="w"></span>
<span class="w"> </span><span class="o">*</span><span class="n">n_contexts</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">G_N_ELEMENTS</span><span class="w"> </span><span class="p">(</span><span class="n">info_list</span><span class="p">);</span><span class="w"></span>
<span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -319,7 +319,7 @@ provided input method.</p>
<tbody>
<tr>
<td class="listing_lines" align="right"><pre>1</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkIMContext</span> <span class="o">*</span> <span class="nf">im_module_create</span><span class="p">(</span><span class="k">const</span> <span class="n">gchar</span> <span class="o">*</span><span class="n">context_id</span><span class="p">);</span></pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GtkIMContext</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="nf">im_module_create</span><span class="p">(</span><span class="k">const</span><span class="w"> </span><span class="n">gchar</span><span class="w"> </span><span class="o">*</span><span class="n">context_id</span><span class="p">);</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -341,9 +341,9 @@ in order for the new input method to become available to GTK+ applications.</p>
<a name="gtk-im-context-set-client-window"></a><h3>gtk_im_context_set_client_window ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_im_context_set_client_window (<em class="parameter"><code><a class="link" href="GtkIMContext.html" title="GtkIMContext"><span class="type">GtkIMContext</span></a> *context</code></em>,
<em class="parameter"><code><span class="type">GdkWindow</span> *window</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="type">GdkWindow</span></a> *window</code></em>);</pre>
<p>Set the client window for the input context; this is the
<span class="type">GdkWindow</span> in which the input appears. This window is
<a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="type">GdkWindow</span></a> in which the input appears. This window is
used in order to correctly position status windows, and may
also be used for purposes internal to the input method.</p>
<div class="refsect3">
@ -424,7 +424,7 @@ within the preedit string. </p></td>
<a name="gtk-im-context-filter-keypress"></a><h3>gtk_im_context_filter_keypress ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_im_context_filter_keypress (<em class="parameter"><code><a class="link" href="GtkIMContext.html" title="GtkIMContext"><span class="type">GtkIMContext</span></a> *context</code></em>,
<em class="parameter"><code><span class="type">GdkEventKey</span> *event</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Event-Structures.html#GdkEventKey"><span class="type">GdkEventKey</span></a> *event</code></em>);</pre>
<p>Allow an input method to internally handle key press and release
events. If this function returns <code class="literal">TRUE</code>, then no further processing
should be done for this key event.</p>
@ -534,7 +534,7 @@ method to clear the preedit state.</p>
<a name="gtk-im-context-set-cursor-location"></a><h3>gtk_im_context_set_cursor_location ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_im_context_set_cursor_location (<em class="parameter"><code><a class="link" href="GtkIMContext.html" title="GtkIMContext"><span class="type">GtkIMContext</span></a> *context</code></em>,
<em class="parameter"><code>const <span class="type">GdkRectangle</span> *area</code></em>);</pre>
<em class="parameter"><code>const <a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *area</code></em>);</pre>
<p>Notify the input method that a change in cursor
position has been made. The location is relative to the client
window.</p>

View File

@ -536,7 +536,7 @@ or stock items, rather than directly, but looking up icons
directly is also simple. The <a class="link" href="GtkIconTheme.html" title="GtkIconTheme"><span class="type">GtkIconTheme</span></a> object acts
as a database of all the icons in the current theme. You
can create new <a class="link" href="GtkIconTheme.html" title="GtkIconTheme"><span class="type">GtkIconTheme</span></a> objects, but its much more
efficient to use the standard icon theme for the <span class="type">GdkScreen</span>
efficient to use the standard icon theme for the <a href="../html/GdkScreen.html#GdkScreen-struct"><span class="type">GdkScreen</span></a>
so that the icon information is shared with other people
looking up icons.</p>
<div class="informalexample">
@ -563,26 +563,26 @@ looking up icons.</p>
18
19
20</pre></td>
<td class="listing_code"><pre class="programlisting"><span class="n">GError</span> <span class="o">*</span><span class="n">error</span> <span class="o">=</span> <span class="nb">NULL</span><span class="p">;</span>
<span class="n">GtkIconTheme</span> <span class="o">*</span><span class="n">icon_theme</span><span class="p">;</span>
<span class="n">GdkPixbuf</span> <span class="o">*</span><span class="n">pixbuf</span><span class="p">;</span>
<td class="listing_code"><pre class="programlisting"><span class="n">GError</span><span class="w"> </span><span class="o">*</span><span class="n">error</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">NULL</span><span class="p">;</span><span class="w"></span>
<span class="n">GtkIconTheme</span><span class="w"> </span><span class="o">*</span><span class="n">icon_theme</span><span class="p">;</span><span class="w"></span>
<span class="n">GdkPixbuf</span><span class="w"> </span><span class="o">*</span><span class="n">pixbuf</span><span class="p">;</span><span class="w"></span>
<span class="n">icon_theme</span> <span class="o">=</span> <span class="n">gtk_icon_theme_get_default</span> <span class="p">();</span>
<span class="n">pixbuf</span> <span class="o">=</span> <span class="n">gtk_icon_theme_load_icon</span> <span class="p">(</span><span class="n">icon_theme</span><span class="p">,</span>
<span class="s">&quot;my-icon-name&quot;</span><span class="p">,</span> <span class="c1">// icon name</span>
<span class="mi">48</span><span class="p">,</span> <span class="c1">// icon size</span>
<span class="mi">0</span><span class="p">,</span> <span class="c1">// flags</span>
<span class="o">&amp;</span><span class="n">error</span><span class="p">);</span>
<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">pixbuf</span><span class="p">)</span>
<span class="p">{</span>
<span class="n">g_warning</span> <span class="p">(</span><span class="s">&quot;Couldnt load icon: %s&quot;</span><span class="p">,</span> <span class="n">error</span><span class="o">-&gt;</span><span class="n">message</span><span class="p">);</span>
<span class="n">g_error_free</span> <span class="p">(</span><span class="n">error</span><span class="p">);</span>
<span class="p">}</span>
<span class="k">else</span>
<span class="p">{</span>
<span class="c1">// Use the pixbuf</span>
<span class="n">g_object_unref</span> <span class="p">(</span><span class="n">pixbuf</span><span class="p">);</span>
<span class="p">}</span></pre></td>
<span class="n">icon_theme</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_icon_theme_get_default</span><span class="w"> </span><span class="p">();</span><span class="w"></span>
<span class="n">pixbuf</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">gtk_icon_theme_load_icon</span><span class="w"> </span><span class="p">(</span><span class="n">icon_theme</span><span class="p">,</span><span class="w"></span>
<span class="w"> </span><span class="s">&quot;my-icon-name&quot;</span><span class="p">,</span><span class="w"> </span><span class="c1">// icon name</span>
<span class="w"> </span><span class="mi">48</span><span class="p">,</span><span class="w"> </span><span class="c1">// icon size</span>
<span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="c1">// flags</span>
<span class="w"> </span><span class="o">&amp;</span><span class="n">error</span><span class="p">);</span><span class="w"></span>
<span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="o">!</span><span class="n">pixbuf</span><span class="p">)</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="n">g_warning</span><span class="w"> </span><span class="p">(</span><span class="s">&quot;Couldnt load icon: %s&quot;</span><span class="p">,</span><span class="w"> </span><span class="n">error</span><span class="o">-&gt;</span><span class="n">message</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="n">g_error_free</span><span class="w"> </span><span class="p">(</span><span class="n">error</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span>
<span class="k">else</span><span class="w"></span>
<span class="w"> </span><span class="p">{</span><span class="w"></span>
<span class="w"> </span><span class="c1">// Use the pixbuf</span>
<span class="w"> </span><span class="n">g_object_unref</span><span class="w"> </span><span class="p">(</span><span class="n">pixbuf</span><span class="p">);</span><span class="w"></span>
<span class="w"> </span><span class="p">}</span><span class="w"></span></pre></td>
</tr>
</tbody>
</table>
@ -628,7 +628,7 @@ is open. Do not ref or unref it. </p>
<div class="refsect2">
<a name="gtk-icon-theme-get-for-screen"></a><h3>gtk_icon_theme_get_for_screen ()</h3>
<pre class="programlisting"><a class="link" href="GtkIconTheme.html" title="GtkIconTheme"><span class="returnvalue">GtkIconTheme</span></a> *
gtk_icon_theme_get_for_screen (<em class="parameter"><code><span class="type">GdkScreen</span> *screen</code></em>);</pre>
gtk_icon_theme_get_for_screen (<em class="parameter"><code><a href="../html/GdkScreen.html#GdkScreen-struct"><span class="type">GdkScreen</span></a> *screen</code></em>);</pre>
<p>Gets the icon theme object associated with <em class="parameter"><code>screen</code></em>
; if this
function has not previously been called for the given
@ -648,7 +648,7 @@ a single icon theme object will be shared between users.</p>
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>screen</p></td>
<td class="parameter_description"><p>a <span class="type">GdkScreen</span></p></td>
<td class="parameter_description"><p>a <a href="../html/GdkScreen.html#GdkScreen-struct"><span class="type">GdkScreen</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
@ -668,7 +668,7 @@ is open. Do not ref or unref it. </p>
<a name="gtk-icon-theme-set-screen"></a><h3>gtk_icon_theme_set_screen ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_icon_theme_set_screen (<em class="parameter"><code><a class="link" href="GtkIconTheme.html" title="GtkIconTheme"><span class="type">GtkIconTheme</span></a> *icon_theme</code></em>,
<em class="parameter"><code><span class="type">GdkScreen</span> *screen</code></em>);</pre>
<em class="parameter"><code><a href="../html/GdkScreen.html#GdkScreen-struct"><span class="type">GdkScreen</span></a> *screen</code></em>);</pre>
<p>Sets the screen for an icon theme; the screen is used
to track the users currently configured icon theme,
which might be different for different screens.</p>
@ -688,7 +688,7 @@ which might be different for different screens.</p>
</tr>
<tr>
<td class="parameter_name"><p>screen</p></td>
<td class="parameter_description"><p>a <span class="type">GdkScreen</span></p></td>
<td class="parameter_description"><p>a <a href="../html/GdkScreen.html#GdkScreen-struct"><span class="type">GdkScreen</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
@ -981,7 +981,7 @@ combines these two steps if all you need is the pixbuf.)</p>
<p>When rendering on displays with high pixel densities you should not
use a <em class="parameter"><code>size</code></em>
multiplied by the scaling factor returned by functions
like <code class="function">gdk_window_get_scale_factor()</code>. Instead, you should use
like <a href="../html/gdk3-Windows.html#gdk-window-get-scale-factor"><code class="function">gdk_window_get_scale_factor()</code></a>. Instead, you should use
<a class="link" href="GtkIconTheme.html#gtk-icon-theme-lookup-icon-for-scale" title="gtk_icon_theme_lookup_icon_for_scale ()"><code class="function">gtk_icon_theme_lookup_icon_for_scale()</code></a>, as the assets loaded
for a given scaling factor may be different.</p>
<div class="refsect3">
@ -1223,7 +1223,7 @@ into a pixbuf using <a class="link" href="GtkIconTheme.html#gtk-icon-info-load-i
<p>When rendering on displays with high pixel densities you should not
use a <em class="parameter"><code>size</code></em>
multiplied by the scaling factor returned by functions
like <code class="function">gdk_window_get_scale_factor()</code>. Instead, you should use
like <a href="../html/gdk3-Windows.html#gdk-window-get-scale-factor"><code class="function">gdk_window_get_scale_factor()</code></a>. Instead, you should use
<a class="link" href="GtkIconTheme.html#gtk-icon-theme-lookup-by-gicon-for-scale" title="gtk_icon_theme_lookup_by_gicon_for_scale ()"><code class="function">gtk_icon_theme_lookup_by_gicon_for_scale()</code></a>, as the assets loaded
for a given scaling factor may be different.</p>
<div class="refsect3">
@ -1479,7 +1479,7 @@ gtk_icon_theme_load_surface (<em class="parameter"><code><a class="link" href="G
<em class="parameter"><code>const <span class="type">gchar</span> *icon_name</code></em>,
<em class="parameter"><code><span class="type">gint</span> size</code></em>,
<em class="parameter"><code><span class="type">gint</span> scale</code></em>,
<em class="parameter"><code><span class="type">GdkWindow</span> *for_window</code></em>,
<em class="parameter"><code><a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="type">GdkWindow</span></a> *for_window</code></em>,
<em class="parameter"><code><a class="link" href="GtkIconTheme.html#GtkIconLookupFlags" title="enum GtkIconLookupFlags"><span class="type">GtkIconLookupFlags</span></a> flags</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<p>Looks up an icon in an icon theme for a particular window scale,
@ -1522,7 +1522,7 @@ exactly this size; see <a class="link" href="GtkIconTheme.html#gtk-icon-info-loa
</tr>
<tr>
<td class="parameter_name"><p>for_window</p></td>
<td class="parameter_description"><p><span class="type">GdkWindow</span> to optimize drawing for, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_description"><p><a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="type">GdkWindow</span></a> to optimize drawing for, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
@ -2081,7 +2081,7 @@ to the icon. </p>
<a name="gtk-icon-info-load-surface"></a><h3>gtk_icon_info_load_surface ()</h3>
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/cairo/cairo-cairo-surface-t.html#cairo-surface-t"><span class="returnvalue">cairo_surface_t</span></a> *
gtk_icon_info_load_surface (<em class="parameter"><code><a class="link" href="GtkIconTheme.html#GtkIconInfo" title="GtkIconInfo"><span class="type">GtkIconInfo</span></a> *icon_info</code></em>,
<em class="parameter"><code><span class="type">GdkWindow</span> *for_window</code></em>,
<em class="parameter"><code><a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="type">GdkWindow</span></a> *for_window</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<p>Renders an icon previously looked up in an icon theme using
<a class="link" href="GtkIconTheme.html#gtk-icon-theme-lookup-icon" title="gtk_icon_theme_lookup_icon ()"><code class="function">gtk_icon_theme_lookup_icon()</code></a>; the size will be based on the size
@ -2110,7 +2110,7 @@ returned by this function will be scaled to the exact size.</p>
</tr>
<tr>
<td class="parameter_name"><p>for_window</p></td>
<td class="parameter_description"><p><span class="type">GdkWindow</span> to optimize drawing for, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_description"><p><a href="../html/gdk3-Windows.html#GdkWindow-struct"><span class="type">GdkWindow</span></a> to optimize drawing for, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
@ -2229,10 +2229,10 @@ to the icon. </p>
<a name="gtk-icon-info-load-symbolic"></a><h3>gtk_icon_info_load_symbolic ()</h3>
<pre class="programlisting"><span class="returnvalue">GdkPixbuf</span> *
gtk_icon_info_load_symbolic (<em class="parameter"><code><a class="link" href="GtkIconTheme.html#GtkIconInfo" title="GtkIconInfo"><span class="type">GtkIconInfo</span></a> *icon_info</code></em>,
<em class="parameter"><code>const <span class="type">GdkRGBA</span> *fg</code></em>,
<em class="parameter"><code>const <span class="type">GdkRGBA</span> *success_color</code></em>,
<em class="parameter"><code>const <span class="type">GdkRGBA</span> *warning_color</code></em>,
<em class="parameter"><code>const <span class="type">GdkRGBA</span> *error_color</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *fg</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *success_color</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *warning_color</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *error_color</code></em>,
<em class="parameter"><code><span class="type">gboolean</span> *was_symbolic</code></em>,
<em class="parameter"><code><span class="type">GError</span> **error</code></em>);</pre>
<p>Loads an icon, modifying it to match the system colours for the foreground,
@ -2263,24 +2263,24 @@ for more information about symbolic icons.</p>
</tr>
<tr>
<td class="parameter_name"><p>fg</p></td>
<td class="parameter_description"><p>a <span class="type">GdkRGBA</span> representing the foreground color of the icon</p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> representing the foreground color of the icon</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>success_color</p></td>
<td class="parameter_description"><p>a <span class="type">GdkRGBA</span> representing the warning color
<td class="parameter_description"><p>a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> representing the warning color
of the icon or <code class="literal">NULL</code> to use the default color. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>warning_color</p></td>
<td class="parameter_description"><p>a <span class="type">GdkRGBA</span> representing the warning color
<td class="parameter_description"><p>a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> representing the warning color
of the icon or <code class="literal">NULL</code> to use the default color. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>error_color</p></td>
<td class="parameter_description"><p>a <span class="type">GdkRGBA</span> representing the error color
<td class="parameter_description"><p>a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> representing the error color
of the icon or <code class="literal">NULL</code> to use the default color (allow-none). </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
@ -2313,10 +2313,10 @@ or <code class="literal">NULL</code>. </p></td>
<a name="gtk-icon-info-load-symbolic-async"></a><h3>gtk_icon_info_load_symbolic_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_icon_info_load_symbolic_async (<em class="parameter"><code><a class="link" href="GtkIconTheme.html#GtkIconInfo" title="GtkIconInfo"><span class="type">GtkIconInfo</span></a> *icon_info</code></em>,
<em class="parameter"><code>const <span class="type">GdkRGBA</span> *fg</code></em>,
<em class="parameter"><code>const <span class="type">GdkRGBA</span> *success_color</code></em>,
<em class="parameter"><code>const <span class="type">GdkRGBA</span> *warning_color</code></em>,
<em class="parameter"><code>const <span class="type">GdkRGBA</span> *error_color</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *fg</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *success_color</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *warning_color</code></em>,
<em class="parameter"><code>const <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> *error_color</code></em>,
<em class="parameter"><code><span class="type">GCancellable</span> *cancellable</code></em>,
<em class="parameter"><code><span class="type">GAsyncReadyCallback</span> callback</code></em>,
<em class="parameter"><code><span class="type">gpointer</span> user_data</code></em>);</pre>
@ -2340,24 +2340,24 @@ version of this call.</p>
</tr>
<tr>
<td class="parameter_name"><p>fg</p></td>
<td class="parameter_description"><p>a <span class="type">GdkRGBA</span> representing the foreground color of the icon</p></td>
<td class="parameter_description"><p>a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> representing the foreground color of the icon</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>success_color</p></td>
<td class="parameter_description"><p>a <span class="type">GdkRGBA</span> representing the warning color
<td class="parameter_description"><p>a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> representing the warning color
of the icon or <code class="literal">NULL</code> to use the default color. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>warning_color</p></td>
<td class="parameter_description"><p>a <span class="type">GdkRGBA</span> representing the warning color
<td class="parameter_description"><p>a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> representing the warning color
of the icon or <code class="literal">NULL</code> to use the default color. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>error_color</p></td>
<td class="parameter_description"><p>a <span class="type">GdkRGBA</span> representing the error color
<td class="parameter_description"><p>a <a href="../html/gdk3-RGBA-Colors.html#GdkRGBA"><span class="type">GdkRGBA</span></a> representing the error color
of the icon or <code class="literal">NULL</code> to use the default color (allow-none). </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
@ -2728,7 +2728,7 @@ and attached points should be returned in their original
<a name="gtk-icon-info-get-embedded-rect"></a><h3>gtk_icon_info_get_embedded_rect ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_icon_info_get_embedded_rect (<em class="parameter"><code><a class="link" href="GtkIconTheme.html#GtkIconInfo" title="GtkIconInfo"><span class="type">GtkIconInfo</span></a> *icon_info</code></em>,
<em class="parameter"><code><span class="type">GdkRectangle</span> *rectangle</code></em>);</pre>
<em class="parameter"><code><a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> *rectangle</code></em>);</pre>
<div class="warning">
<p><code class="literal">gtk_icon_info_get_embedded_rect</code> has been deprecated since version 3.14 and should not be used in newly-written code.</p>
<p>Embedded rectangles are deprecated</p>
@ -2750,7 +2750,7 @@ gtk_icon_info_get_embedded_rect (<em class="parameter"><code><a class="link" hre
</tr>
<tr>
<td class="parameter_name"><p>rectangle</p></td>
<td class="parameter_description"><p><span class="type">GdkRectangle</span> in which to store embedded
<td class="parameter_description"><p><a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkRectangle"><span class="type">GdkRectangle</span></a> in which to store embedded
rectangle coordinates; coordinates are only stored
when this function returns <code class="literal">TRUE</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
@ -2769,7 +2769,7 @@ when this function returns <code class="literal">TRUE</code>. </p></td>
<a name="gtk-icon-info-get-attach-points"></a><h3>gtk_icon_info_get_attach_points ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_icon_info_get_attach_points (<em class="parameter"><code><a class="link" href="GtkIconTheme.html#GtkIconInfo" title="GtkIconInfo"><span class="type">GtkIconInfo</span></a> *icon_info</code></em>,
<em class="parameter"><code><span class="type">GdkPoint</span> **points</code></em>,
<em class="parameter"><code><a href="../html/gdk3-Points-Rectangles-and-Regions.html#GdkPoint"><span class="type">GdkPoint</span></a> **points</code></em>,
<em class="parameter"><code><span class="type">gint</span> *n_points</code></em>);</pre>
<div class="warning">
<p><code class="literal">gtk_icon_info_get_attach_points</code> has been deprecated since version 3.14 and should not be used in newly-written code.</p>

Some files were not shown because too many files have changed in this diff Show More