Compare commits
266 Commits
gdk-object
...
gtk-new-im
Author | SHA1 | Date | |
---|---|---|---|
|
257e0f26ef | ||
|
f787ebb03f | ||
|
5d24f08d0a | ||
|
f3eb790c9e | ||
|
9624060bda | ||
|
d24b426b92 | ||
|
f109da8d74 | ||
|
e31ae4384b | ||
|
850653e8c7 | ||
|
cc7c62e0e2 | ||
|
0dcf14976d | ||
|
4ca0a710cd | ||
|
6ae1449a66 | ||
|
2a9abf57ce | ||
|
5fea69440e | ||
|
e6169335e2 | ||
|
39339f14f5 | ||
|
42e44b9fa5 | ||
|
03db6a411b | ||
|
8ff6644c76 | ||
|
2e2272aac1 | ||
|
38a656ab18 | ||
|
7e928a4b2d | ||
|
6ffe1dcf10 | ||
|
2bcef62f0b | ||
|
71337db92e | ||
|
21b538970e | ||
|
8c4980ed54 | ||
|
f4fc70e3c7 | ||
|
2c8fc56d21 | ||
|
49a6b8335d | ||
|
e4229e9c4b | ||
|
6e3a2369b3 | ||
|
78500e9045 | ||
|
41b5d5d26d | ||
|
a9de95392e | ||
|
b968041627 | ||
|
d717bbe4df | ||
|
0176b387c8 | ||
|
a10a7350f3 | ||
|
ea1210765d | ||
|
3c8161925e | ||
|
3f14b4598f | ||
|
c6dfddd233 | ||
|
92b2246581 | ||
|
cae2af57d5 | ||
|
617e17da3f | ||
|
41885abc7c | ||
|
843b1789a3 | ||
|
8b6e32e690 | ||
|
e0833cd52a | ||
|
247fd85f7c | ||
|
8421d02a4c | ||
|
33f56c79b0 | ||
|
b4d6a19524 | ||
|
fcc951506d | ||
|
5d048f3365 | ||
|
cbfcca98b0 | ||
|
3e4c24c96e | ||
|
a6895b64fd | ||
|
98bacfb792 | ||
|
d72659968c | ||
|
06fd9e335d | ||
|
9ecfc48c12 | ||
|
d1da582ab8 | ||
|
f14eca7043 | ||
|
b9ac96e591 | ||
|
bc3f1cfc43 | ||
|
73f441ccbb | ||
|
10ce43ece5 | ||
|
c6bf7f0c5f | ||
|
08b87727f0 | ||
|
5ad55596f9 | ||
|
b3dd84048d | ||
|
aa88a217a5 | ||
|
157b6fd7ec | ||
|
98f8f4d229 | ||
|
96e4699c30 | ||
|
c4384ce24f | ||
|
b427cec028 | ||
|
1b6dbf0ea2 | ||
|
7bc2cb6e6e | ||
|
d0893cc5dd | ||
|
4d72175087 | ||
|
75225b9f21 | ||
|
e9a03443c7 | ||
|
44afc537b3 | ||
|
d9e05d7009 | ||
|
621639b754 | ||
|
e4d140d5aa | ||
|
3d8f790e2d | ||
|
471396fdd4 | ||
|
9ff07fdad9 | ||
|
9d72f811ee | ||
|
3ddaa73578 | ||
|
de9e8979fd | ||
|
f9576e58ee | ||
|
bd91876973 | ||
|
afee2c67c5 | ||
|
cbc86c2b90 | ||
|
6c4f3568d5 | ||
|
e8138cd803 | ||
|
bbaeb8aa28 | ||
|
a4762fbff4 | ||
|
f56297c534 | ||
|
d1a4a1ea28 | ||
|
20e675e1a3 | ||
|
5ac61d3eee | ||
|
37e809867e | ||
|
1623b0fcfe | ||
|
838e2f341b | ||
|
6d7a643f7c | ||
|
72aa0d6611 | ||
|
824bc30f68 | ||
|
4658795817 | ||
|
20b5d8ec2f | ||
|
a52f7c348e | ||
|
85cca4f33f | ||
|
773aacf9b6 | ||
|
a338544d1a | ||
|
6a2c2edf05 | ||
|
e6be8f3f6a | ||
|
fa5d7c7709 | ||
|
a7ac5157d0 | ||
|
631205ddc7 | ||
|
1e166c0693 | ||
|
8ac34068ba | ||
|
2aa67df2e1 | ||
|
18e2da3360 | ||
|
b8dcd76c99 | ||
|
2465ad85f9 | ||
|
6c9b8cab3b | ||
|
2f8d209e5d | ||
|
cc87344c1f | ||
|
72fe20c132 | ||
|
32784edafa | ||
|
0bcf86c032 | ||
|
ed7408e1ff | ||
|
bb26890024 | ||
|
9332748007 | ||
|
e8afc471f9 | ||
|
4b7246d9e9 | ||
|
4e514e817e | ||
|
1f581a961e | ||
|
2823963703 | ||
|
5fc106081f | ||
|
30973dd7a2 | ||
|
fc5ee9256d | ||
|
64911ddc44 | ||
|
1e72328181 | ||
|
06df244dd5 | ||
|
c70fd21648 | ||
|
359307231a | ||
|
d375c92f6c | ||
|
0611f06b5a | ||
|
f60e216527 | ||
|
166ba89af8 | ||
|
f3d8cf9252 | ||
|
f3f6fa88a5 | ||
|
186cc0624b | ||
|
a1260f864d | ||
|
ceac1c16fd | ||
|
50b1a5a9dc | ||
|
01212ce170 | ||
|
0c2240ba37 | ||
|
4e09f86e48 | ||
|
bf87b7c628 | ||
|
b02ebc65e4 | ||
|
d2058c2875 | ||
|
fe7fb8c62f | ||
|
4f1ccca594 | ||
|
7164c0acb1 | ||
|
a893dba084 | ||
|
09e06dffde | ||
|
edacfcb766 | ||
|
c5c75ece06 | ||
|
2bb4bcff5d | ||
|
d872631bae | ||
|
68810d1794 | ||
|
af35c6542c | ||
|
100c9594d6 | ||
|
3ef478ecd7 | ||
|
797642a563 | ||
|
a626ad31e8 | ||
|
eef2692ad6 | ||
|
8aeed4867c | ||
|
3a422541e3 | ||
|
7b6c38f544 | ||
|
c4018b0221 | ||
|
527b872757 | ||
|
cef3331e64 | ||
|
30bd71e2ae | ||
|
8a7664a1ae | ||
|
ba55612d48 | ||
|
11056f564b | ||
|
443e8c395e | ||
|
f534125777 | ||
|
ee0895169d | ||
|
39440b43cd | ||
|
e01a43253a | ||
|
c319839d8e | ||
|
dd46dfaae3 | ||
|
2a98bc6a31 | ||
|
8a01e98fdf | ||
|
2a1b3edd18 | ||
|
df4fc36721 | ||
|
2ad30e9fc1 | ||
|
8f4f35b392 | ||
|
dd7510dccb | ||
|
2eb7985b0b | ||
|
f327889ac4 | ||
|
4060ae7bd1 | ||
|
bae5667ca3 | ||
|
8b72011482 | ||
|
cbe220de09 | ||
|
9df3e65391 | ||
|
62e5119872 | ||
|
b166924b0c | ||
|
40298ef908 | ||
|
ba0567786b | ||
|
d23c74dd44 | ||
|
60d3ad3e0b | ||
|
4bacc3ecd0 | ||
|
544b6cb26e | ||
|
315c3511be | ||
|
93d6686ce9 | ||
|
65c1ef36ad | ||
|
caf18947ca | ||
|
a03f62c641 | ||
|
3a917e9da7 | ||
|
eaa77a4754 | ||
|
eb34d19399 | ||
|
f6b5d39189 | ||
|
e79504746a | ||
|
c76e9c5e75 | ||
|
7d7ecf515a | ||
|
e86329d5d4 | ||
|
bb77f4e6b9 | ||
|
9ae724bf4d | ||
|
3f0092c4e6 | ||
|
c496211676 | ||
|
85e7a89b13 | ||
|
379da28de8 | ||
|
b07bab344a | ||
|
4ceed6bf51 | ||
|
bace0659d2 | ||
|
15434db63e | ||
|
8cd73f2fde | ||
|
288b44b2d2 | ||
|
e5206ce903 | ||
|
9a08b87fee | ||
|
8dde9abbaf | ||
|
63af6ead1f | ||
|
978f327f7f | ||
|
a357ab820a | ||
|
1839240c72 | ||
|
1b51476458 | ||
|
c4b632e781 | ||
|
48d8ec36d5 | ||
|
9ce7ba8df8 | ||
|
719f258bc6 | ||
|
31fa339113 | ||
|
26b2cbe5ae | ||
|
fccaf53bfb | ||
|
f43ab0c41d | ||
|
b9d4205044 |
@@ -9,7 +9,7 @@ Makefile
|
|||||||
Makefile.in
|
Makefile.in
|
||||||
aclocal.m4
|
aclocal.m4
|
||||||
configure
|
configure
|
||||||
gtk-config
|
gtk-config-2.0
|
||||||
config.cache
|
config.cache
|
||||||
ABOUT-NLS
|
ABOUT-NLS
|
||||||
intl
|
intl
|
||||||
|
2664
ChangeLog.pre-2-0
2664
ChangeLog.pre-2-10
2664
ChangeLog.pre-2-2
2664
ChangeLog.pre-2-4
2664
ChangeLog.pre-2-6
2664
ChangeLog.pre-2-8
33
INSTALL
@@ -1,14 +1,35 @@
|
|||||||
Prerequisites
|
Prerequisites
|
||||||
=============
|
=============
|
||||||
|
|
||||||
GTK+ requires the GLIB library, available at the same location as
|
GTK+ requires the following packages:
|
||||||
you got this package.
|
|
||||||
|
- The GLIB library, available at the same location as GTK+
|
||||||
|
|
||||||
|
- The Pango library, available from:
|
||||||
|
|
||||||
|
http://www.pango.org/download.shtml
|
||||||
|
|
||||||
|
Pango also requires the FriBidi library, available from:
|
||||||
|
|
||||||
|
http://imagic.weizmann.ac.il/~dov/freesw/FriBidi/
|
||||||
|
|
||||||
|
- The TIFF, PNG, and JPEG image loading libraries. You most
|
||||||
|
likely have these installed on your system already. If not
|
||||||
|
these libraries are available from:
|
||||||
|
|
||||||
|
http://www.libtiff.org/
|
||||||
|
ftp://swrinde.nde.swri.edu/pub/png/src/
|
||||||
|
ftp://ftp.uu.net/graphics/jpeg/
|
||||||
|
|
||||||
|
If these libraries are not available, the corresponding
|
||||||
|
image loaders will simply not be built. However, this
|
||||||
|
may cause applications using GTK+ not to function properly.
|
||||||
|
|
||||||
Simple install procedure
|
Simple install procedure
|
||||||
========================
|
========================
|
||||||
|
|
||||||
% gzip -cd gtk+-1.2.7.tar.gz | tar xvf - # unpack the sources
|
% gzip -cd gtk+-1.3.1.tar.gz | tar xvf - # unpack the sources
|
||||||
% cd gtk+-1.2.7 # change to the toplevel directory
|
% cd gtk+-1.3.1 # change to the toplevel directory
|
||||||
% ./configure # run the `configure' script
|
% ./configure # run the `configure' script
|
||||||
% make # build GTK
|
% make # build GTK
|
||||||
[ Become root if necessary ]
|
[ Become root if necessary ]
|
||||||
@@ -118,7 +139,7 @@ You can compile GTK+ against a copy of GLIB that you have not
|
|||||||
yet installed. To do this, give the --with-glib=DIR options
|
yet installed. To do this, give the --with-glib=DIR options
|
||||||
to ./configure. For instance:
|
to ./configure. For instance:
|
||||||
|
|
||||||
./configure --with-glib=../glib-1.2.7
|
./configure --with-glib=../glib-1.3.1
|
||||||
|
|
||||||
This, however, will not work if you built GLIB with different
|
This, however, will not work if you built GLIB with different
|
||||||
source and build directories.
|
source and build directories.
|
||||||
@@ -169,7 +190,7 @@ C library multibyte functions. Unless your C library has support
|
|||||||
for Japanese locales, this is incorrect, and will cause problems
|
for Japanese locales, this is incorrect, and will cause problems
|
||||||
for GTK's internationalization.
|
for GTK's internationalization.
|
||||||
|
|
||||||
(In particular, this occurs with GNU libc 2.0 and 2.1, in which
|
(In particular, this occurs with GNU libc 2.0 in which
|
||||||
the multibyte functions always translate to and from UTF-8; but
|
the multibyte functions always translate to and from UTF-8; but
|
||||||
the problem may occur for other C libraries, and other operating
|
the problem may occur for other C libraries, and other operating
|
||||||
systems as well.)
|
systems as well.)
|
||||||
|
25
INSTALL.in
@@ -1,8 +1,29 @@
|
|||||||
Prerequisites
|
Prerequisites
|
||||||
=============
|
=============
|
||||||
|
|
||||||
GTK+ requires the GLIB library, available at the same location as
|
GTK+ requires the following packages:
|
||||||
you got this package.
|
|
||||||
|
- The GLIB library, available at the same location as GTK+
|
||||||
|
|
||||||
|
- The Pango library, available from:
|
||||||
|
|
||||||
|
http://www.pango.org/download.shtml
|
||||||
|
|
||||||
|
Pango also requires the FriBidi library, available from:
|
||||||
|
|
||||||
|
http://imagic.weizmann.ac.il/~dov/freesw/FriBidi/
|
||||||
|
|
||||||
|
- The TIFF, PNG, and JPEG image loading libraries. You most
|
||||||
|
likely have these installed on your system already. If not
|
||||||
|
these libraries are available from:
|
||||||
|
|
||||||
|
http://www.libtiff.org/
|
||||||
|
ftp://swrinde.nde.swri.edu/pub/png/src/
|
||||||
|
ftp://ftp.uu.net/graphics/jpeg/
|
||||||
|
|
||||||
|
If these libraries are not available, the corresponding
|
||||||
|
image loaders will simply not be built. However, this
|
||||||
|
may cause applications using GTK+ not to function properly.
|
||||||
|
|
||||||
Simple install procedure
|
Simple install procedure
|
||||||
========================
|
========================
|
||||||
|
37
Makefile.am
@@ -1,23 +1,26 @@
|
|||||||
## Makefile.am for GTK+
|
## Makefile.am for GTK+
|
||||||
|
|
||||||
SRC_SUBDIRS = gdk gtk
|
SRC_SUBDIRS = gdk-pixbuf gdk modules gtk demos
|
||||||
SUBDIRS = po $(SRC_SUBDIRS) docs
|
SUBDIRS = po $(SRC_SUBDIRS) docs build
|
||||||
|
|
||||||
bin_SCRIPTS = gtk-config
|
bin_SCRIPTS = gtk-config-2.0
|
||||||
|
|
||||||
# require automake 1.4
|
# require automake 1.4
|
||||||
AUTOMAKE_OPTIONS = 1.4
|
AUTOMAKE_OPTIONS = 1.4
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
HACKING \
|
HACKING \
|
||||||
gtk+.spec.in \
|
gtk+.spec.in \
|
||||||
gtk.m4 \
|
gtk-2.0.m4 \
|
||||||
makecopyright \
|
makecopyright \
|
||||||
TODO \
|
TODO \
|
||||||
NEWS.pre-1-0 \
|
TODO.xml \
|
||||||
|
NEWS.pre-1-0 \
|
||||||
ChangeLog.pre-1-0 \
|
ChangeLog.pre-1-0 \
|
||||||
|
ChangeLog.pre-1-2 \
|
||||||
README.cvs-commits \
|
README.cvs-commits \
|
||||||
README.win32 \
|
README.win32 \
|
||||||
|
README.nanox \
|
||||||
intl/libgettext.h \
|
intl/libgettext.h \
|
||||||
intl/po2tbl.sed.in \
|
intl/po2tbl.sed.in \
|
||||||
examples/aspectframe/Makefile \
|
examples/aspectframe/Makefile \
|
||||||
@@ -26,8 +29,12 @@ EXTRA_DIST = \
|
|||||||
examples/README.1ST \
|
examples/README.1ST \
|
||||||
examples/extract.awk \
|
examples/extract.awk \
|
||||||
examples/extract.sh \
|
examples/extract.sh \
|
||||||
|
examples/arrow/Makefile \
|
||||||
|
examples/arrow/arrow.c \
|
||||||
examples/base/Makefile \
|
examples/base/Makefile \
|
||||||
examples/base/base.c \
|
examples/base/base.c \
|
||||||
|
examples/buttonbox/Makefile \
|
||||||
|
examples/buttonbox/buttonbox.c \
|
||||||
examples/buttons/Makefile \
|
examples/buttons/Makefile \
|
||||||
examples/buttons/buttons.c \
|
examples/buttons/buttons.c \
|
||||||
examples/buttons/info.xpm \
|
examples/buttons/info.xpm \
|
||||||
@@ -49,6 +56,8 @@ EXTRA_DIST = \
|
|||||||
examples/helloworld/helloworld.c \
|
examples/helloworld/helloworld.c \
|
||||||
examples/helloworld2/Makefile \
|
examples/helloworld2/Makefile \
|
||||||
examples/helloworld2/helloworld2.c \
|
examples/helloworld2/helloworld2.c \
|
||||||
|
examples/label/Makefile \
|
||||||
|
examples/label/label.c \
|
||||||
examples/list/Makefile \
|
examples/list/Makefile \
|
||||||
examples/list/list.c \
|
examples/list/list.c \
|
||||||
examples/menu/Makefile \
|
examples/menu/Makefile \
|
||||||
@@ -74,6 +83,8 @@ EXTRA_DIST = \
|
|||||||
examples/rulers/rulers.c \
|
examples/rulers/rulers.c \
|
||||||
examples/scribble-simple/Makefile \
|
examples/scribble-simple/Makefile \
|
||||||
examples/scribble-simple/scribble-simple.c \
|
examples/scribble-simple/scribble-simple.c \
|
||||||
|
examples/scribble-xinput/Makefile \
|
||||||
|
examples/scribble-xinput/scribble-xinput.c \
|
||||||
examples/scrolledwin/Makefile \
|
examples/scrolledwin/Makefile \
|
||||||
examples/scrolledwin/scrolledwin.c \
|
examples/scrolledwin/scrolledwin.c \
|
||||||
examples/selection/Makefile \
|
examples/selection/Makefile \
|
||||||
@@ -111,7 +122,7 @@ dist-hook: gtk+.spec
|
|||||||
&& cp gtk+.spec $(distdir)
|
&& cp gtk+.spec $(distdir)
|
||||||
|
|
||||||
m4datadir = $(datadir)/aclocal
|
m4datadir = $(datadir)/aclocal
|
||||||
m4data_DATA = gtk.m4
|
m4data_DATA = gtk-2.0.m4
|
||||||
|
|
||||||
.PHONY: files release sanity snapshot
|
.PHONY: files release sanity snapshot
|
||||||
|
|
||||||
@@ -135,4 +146,4 @@ sanity:
|
|||||||
|
|
||||||
|
|
||||||
snapshot:
|
snapshot:
|
||||||
$(MAKE) dist distdir=$(PACKAGE)`date +"%y%m%d"`
|
$(MAKE) dist distdir=$(PACKAGE)-snap`date +"%Y%m%d"`
|
||||||
|
41
NEWS
@@ -1,3 +1,44 @@
|
|||||||
|
Overview of Changes in GTK+ 1.3.1:
|
||||||
|
|
||||||
|
* GTK+ now uses the Pango library for text manipulation. All
|
||||||
|
strings in GTK+ now are in Unicode, languages written
|
||||||
|
from right-to-left, and complex-text languages are now supported.
|
||||||
|
* The gdk-pixbuf library for image loading and manipulation is
|
||||||
|
has been integrated with GTK+.
|
||||||
|
* The GTK+ object system has mostly been moved to GLib, separating
|
||||||
|
it from the GUI code. Many significant enhancements have been
|
||||||
|
made as part of this.
|
||||||
|
* A new text widget is now included. This started as a port
|
||||||
|
of the Tk text widget, and includes such features of the Tk
|
||||||
|
text widget as tags, marks, and unicode text support. It
|
||||||
|
has been enhanced to support model-view operation and the
|
||||||
|
full power of Pango.
|
||||||
|
* The GDK library has been extensively revised to support multiple
|
||||||
|
windowing systems. The only fully functional backend in 1.3.1
|
||||||
|
is the X11 backend, however, ports to Win32, Linux-framebuffer,
|
||||||
|
Nano-X, BeOS, and MacOS exist in various states of completion,
|
||||||
|
and at least some of these will be finished and integrated in
|
||||||
|
before the final GTK+-2.0 release.
|
||||||
|
* 32-bit coordinates are now supported throughout GDK and GTK+
|
||||||
|
(they are emulated where not supported by the windowing system.)
|
||||||
|
* Many minor bug fixes and enhancements. Incompatible changes
|
||||||
|
are documented in docs/Changes-2.0.txt
|
||||||
|
|
||||||
|
Overview of Changes in GTK+ 1.2.8:
|
||||||
|
|
||||||
|
* GNU Make 3.79 bug workaround
|
||||||
|
* FAQ and tutorial updates and improvements
|
||||||
|
* Miscellaneous bug fixes: CList, Calendar, rc-files, FontSelection
|
||||||
|
|
||||||
|
Overview of Changes in GTK+ 1.2.7:
|
||||||
|
|
||||||
|
* More header cleanups.
|
||||||
|
* Fixed activation bug for insensitive widgets.
|
||||||
|
* Locale fixes to RC file parsing code.
|
||||||
|
* Miscellaneous bugfixes for Item Factory, CList, CTree, X Selections,
|
||||||
|
HScale, VScale, Pixmap, Viewport, OptionMenu, Entry and Notebook.
|
||||||
|
* Upgrade to libtool 1.3.4.
|
||||||
|
|
||||||
Overview of Changes in GTK+ 1.2.6:
|
Overview of Changes in GTK+ 1.2.6:
|
||||||
|
|
||||||
* container queue_resize fixes
|
* container queue_resize fixes
|
||||||
|
8
README
@@ -1,7 +1,7 @@
|
|||||||
General Information
|
General Information
|
||||||
===================
|
===================
|
||||||
|
|
||||||
This is GTK+ version 1.2.7. GTK+, which stands for the Gimp ToolKit,
|
This is GTK+ version 1.3.1. GTK+, which stands for the Gimp ToolKit,
|
||||||
is a library for creating graphical user interfaces for the X Window
|
is a library for creating graphical user interfaces for the X Window
|
||||||
System. It is designed to be small, efficient, and flexible. GTK+ is
|
System. It is designed to be small, efficient, and flexible. GTK+ is
|
||||||
written in C with a very object-oriented approach.
|
written in C with a very object-oriented approach.
|
||||||
@@ -37,9 +37,9 @@ version number. This should be separated by a blank
|
|||||||
line from the actual headers.
|
line from the actual headers.
|
||||||
|
|
||||||
Package: gtk+
|
Package: gtk+
|
||||||
Version: 1.2.7
|
Version: 1.3.1
|
||||||
|
|
||||||
[ Please substitute 1.2.7 with the version of GTK+ that
|
[ Please substitute 1.3.1 with the version of GTK+ that
|
||||||
you have installed ]
|
you have installed ]
|
||||||
|
|
||||||
Then describe the bug. Include:
|
Then describe the bug. Include:
|
||||||
@@ -82,7 +82,7 @@ From: yourname@your.address.org
|
|||||||
Subject: handlebox test in testgtk is misnamed.
|
Subject: handlebox test in testgtk is misnamed.
|
||||||
|
|
||||||
Package: gtk+
|
Package: gtk+
|
||||||
Version: 1.2.7
|
Version: 1.3.1
|
||||||
|
|
||||||
When I run gtk/testgtk, the button "handle box"
|
When I run gtk/testgtk, the button "handle box"
|
||||||
is misnamed. There are multiple handle boxes in
|
is misnamed. There are multiple handle boxes in
|
||||||
|
126
README.nanox
@@ -21,134 +21,12 @@ We need to be able to clip and change the background of windows at runtime
|
|||||||
for apps to not look so ugly!
|
for apps to not look so ugly!
|
||||||
Fonts: wait for better nano-X font implementation.
|
Fonts: wait for better nano-X font implementation.
|
||||||
Properties on windows.
|
Properties on windows.
|
||||||
|
Provide a pango module.
|
||||||
|
|
||||||
If you want to work on this port or get additional informnation, get in
|
If you want to work on this port or get additional informnation, get in
|
||||||
touch with me.
|
touch with me.
|
||||||
To get the beast to compile you also need to apply the patch below
|
Configure gtk with the --with-gdktarget=nanox to compile with nano-X support.
|
||||||
(any auto* wizard here?): the issue of having two gtk libraries in the
|
|
||||||
system needs to be addressed too, maybe use libgtk-x11-1.4.so and
|
|
||||||
libgtk-nanox-1.4.so ...
|
|
||||||
|
|
||||||
Paolo Molaro
|
Paolo Molaro
|
||||||
lupus@linuxcare.com
|
lupus@linuxcare.com
|
||||||
|
|
||||||
|
|
||||||
Index: acconfig.h
|
|
||||||
===================================================================
|
|
||||||
RCS file: /cvs/gnome/gtk+/acconfig.h,v
|
|
||||||
retrieving revision 1.16
|
|
||||||
diff -u -r1.16 acconfig.h
|
|
||||||
--- acconfig.h 1999/03/20 00:52:29 1.16
|
|
||||||
+++ acconfig.h 2000/05/06 11:52:38
|
|
||||||
@@ -49,6 +49,8 @@
|
|
||||||
/* Most machines will be happy with int or void. IRIX requires '...' */
|
|
||||||
#undef SIGNAL_ARG_TYPE
|
|
||||||
|
|
||||||
+#undef USE_NANOX
|
|
||||||
+
|
|
||||||
/* #undef PACKAGE */
|
|
||||||
/* #undef VERSION */
|
|
||||||
|
|
||||||
Index: configure.in
|
|
||||||
===================================================================
|
|
||||||
RCS file: /cvs/gnome/gtk+/configure.in,v
|
|
||||||
retrieving revision 1.142
|
|
||||||
diff -u -r1.142 configure.in
|
|
||||||
--- configure.in 2000/05/04 00:29:46 1.142
|
|
||||||
+++ configure.in 2000/05/06 11:52:38
|
|
||||||
@@ -99,6 +99,8 @@
|
|
||||||
AC_ARG_WITH(locale, [ --with-locale=LOCALE locale name you want to use ])
|
|
||||||
|
|
||||||
AC_ARG_WITH(xinput, [ --with-xinput=[no/gxi/xfree] support XInput ])
|
|
||||||
+AC_ARG_ENABLE(nanox, [ --enable-nanox use nano-X instead of X11 [default=no]],
|
|
||||||
+ , enable_nanox="no")
|
|
||||||
|
|
||||||
if test "x$enable_debug" = "xyes"; then
|
|
||||||
test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
|
|
||||||
@@ -322,6 +324,8 @@
|
|
||||||
saved_cflags="$CFLAGS"
|
|
||||||
saved_ldflags="$LDFLAGS"
|
|
||||||
|
|
||||||
+if text "x$enable_nanox" = "xno"; then
|
|
||||||
+
|
|
||||||
CFLAGS="$CFLAGS $X_CFLAGS"
|
|
||||||
LDFLAGS="$LDFLAGS $X_LDFLAGS $X_LIBS"
|
|
||||||
|
|
||||||
@@ -465,6 +469,13 @@
|
|
||||||
GTK_LOCALE_FLAGS="-DX_LOCALE"
|
|
||||||
fi
|
|
||||||
|
|
||||||
+else
|
|
||||||
+AC_CHECK_LIB(nano-X, GrOpen)
|
|
||||||
+LIBS="-lnano-X $LIBS"
|
|
||||||
+ AC_DEFINE(USE_NANOX)
|
|
||||||
+AM_CONDITIONAL(USE_NANOX, test x$enable_nanox = xyes)
|
|
||||||
+fi # if enable_nanox
|
|
||||||
+
|
|
||||||
# Checks for header files.
|
|
||||||
AC_HEADER_STDC
|
|
||||||
|
|
||||||
@@ -602,8 +613,13 @@
|
|
||||||
esac
|
|
||||||
],[
|
|
||||||
# Currently we always use X11 on those systems where we run configure...
|
|
||||||
+if test x$enable_nanox = xno; then
|
|
||||||
gdk_windowing='
|
|
||||||
#define GDK_WINDOWING_X11'
|
|
||||||
+else
|
|
||||||
+gdk_windowing='
|
|
||||||
+#define GDK_WINDOWING_NANOX'
|
|
||||||
+fi
|
|
||||||
if test x$gdk_wchar_h = xyes; then
|
|
||||||
gdk_wc='
|
|
||||||
#define GDK_HAVE_WCHAR_H 1'
|
|
||||||
@@ -629,6 +645,7 @@
|
|
||||||
docs/Makefile
|
|
||||||
gdk/Makefile
|
|
||||||
gdk/x11/Makefile
|
|
||||||
+gdk/nanox/Makefile
|
|
||||||
gdk/win32/Makefile
|
|
||||||
gtk/Makefile
|
|
||||||
gtk/gtkfeatures.h
|
|
||||||
Index: gdk/Makefile.am
|
|
||||||
===================================================================
|
|
||||||
RCS file: /cvs/gnome/gtk+/gdk/Makefile.am,v
|
|
||||||
retrieving revision 1.41
|
|
||||||
diff -u -r1.41 Makefile.am
|
|
||||||
--- gdk/Makefile.am 2000/04/05 04:11:10 1.41
|
|
||||||
+++ gdk/Makefile.am 2000/05/06 11:52:38
|
|
||||||
@@ -1,6 +1,10 @@
|
|
||||||
## Makefile.am for gtk+/gdk
|
|
||||||
|
|
||||||
+if USE_NANOX
|
|
||||||
+SUBDIRS=win32 nanox
|
|
||||||
+else
|
|
||||||
SUBDIRS=x11 win32
|
|
||||||
+endif
|
|
||||||
|
|
||||||
EXTRA_DIST = \
|
|
||||||
gdkconfig.h.win32 \
|
|
||||||
@@ -36,8 +40,13 @@
|
|
||||||
-lm \
|
|
||||||
@STRIP_END@
|
|
||||||
|
|
||||||
+if USE_NANOX
|
|
||||||
libgdk_la_LIBADD = \
|
|
||||||
+ nanox/libgdk-nanox.la
|
|
||||||
+else
|
|
||||||
+libgdk_la_LIBADD = \
|
|
||||||
x11/libgdk-x11.la
|
|
||||||
+endif
|
|
||||||
|
|
||||||
#
|
|
||||||
# setup source file variables
|
|
||||||
@@ -138,3 +147,8 @@
|
|
||||||
@files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
|
|
||||||
echo $$p; \
|
|
||||||
done
|
|
||||||
+
|
|
||||||
+noinst_PROGRAMS = simple
|
|
||||||
+simple_DEPENDENCIES = libgdk.la simple.c
|
|
||||||
+simple_LDADD = libgdk.la
|
|
||||||
+
|
|
||||||
|
28
README.win32
@@ -1,14 +1,16 @@
|
|||||||
|
This current (CVS) version of the Win32 backend does *not* even
|
||||||
|
compile properly. A zipfile with an older snapshot (from before the
|
||||||
|
merge of the no-flicker branch, and the other recent additions), is
|
||||||
|
available from http://www.gimp.org/win32/. That should be use by
|
||||||
|
"production" code until this CVS version is useable. (But note, the
|
||||||
|
Win32 backend has never been claimed to be "production quality",
|
||||||
|
although it works OK for the GIMP.)
|
||||||
|
|
||||||
The Win32 port of GTk+ is a work in progress, and not as stable or
|
The Win32 port of GTk+ is a work in progress, and not as stable or
|
||||||
correct as the Unix/X11 version. For more information about the Win32
|
correct as the Unix/X11 version. For more information about the Win32
|
||||||
port, see http://www.gimp.org/tml/gimp/win32/ or
|
port, see http://www.gimp.org/win32/ or
|
||||||
http://www.iki.fi/tml/gimp/win32/ .
|
http://www.iki.fi/tml/gimp/win32/ .
|
||||||
|
|
||||||
The current (CVS) version of the Win32 backend is *not* as stable as it
|
|
||||||
was before the no-flicker branch was merged. A zipfile with that
|
|
||||||
version is available from http://www.gimp.org/win32/. That should be
|
|
||||||
use by "production" code until this CVS version is usable. (But note,
|
|
||||||
the Win32 backend has never been claimed to be "production quality".)
|
|
||||||
|
|
||||||
To build GTk+ on Win32, you need either the Microsoft compiler and
|
To build GTk+ on Win32, you need either the Microsoft compiler and
|
||||||
tools, or gcc-2.95 or later. The mingw setup of gcc is preferred, but
|
tools, or gcc-2.95 or later. The mingw setup of gcc is preferred, but
|
||||||
you can run gcc also under cygwin-b20.1 or later. Compile in
|
you can run gcc also under cygwin-b20.1 or later. Compile in
|
||||||
@@ -19,8 +21,8 @@ really be called makefile.mingw.
|
|||||||
See the README.win32 file in the GLib distribution for instructions
|
See the README.win32 file in the GLib distribution for instructions
|
||||||
how to build with gcc.
|
how to build with gcc.
|
||||||
|
|
||||||
To use GTk+ on Win32, you also need either of the above mentioned
|
To use GTk+ on Win32, you also need either one of the above mentioned
|
||||||
compilers. Other compilers might work, but don't count on it. The
|
compilers. Other compilers might work, but don't count on it. The
|
||||||
same instructions on how to set up a correct version of gcc should
|
same instructions on how to set up a correct version of gcc should
|
||||||
also be followed if you want to build applications that use GTk+ with
|
also be followed if you want to build applications that use GTk+ with
|
||||||
gcc.
|
gcc.
|
||||||
@@ -39,7 +41,7 @@ undefine ENABLE_NLS, HAVE_GETTEXT and HAVE_LIBINTL in the
|
|||||||
config.h.win32 file, and remove references to the gnu-intl library
|
config.h.win32 file, and remove references to the gnu-intl library
|
||||||
from the makefiles.
|
from the makefiles.
|
||||||
|
|
||||||
Note that while the GNU gettext package is under the GPL, the "intl"
|
Note that while the GNU gettext package is under the GPL license, the
|
||||||
part of it which is distributed with GNU libc is under the LGPL (like
|
"intl" part of it is also distributed as part of the GNU C library
|
||||||
GTk+ or GLib). We want the LGPL one, even if they are the same, more
|
(glibc) where it is under the LGPL license (as is GTk+ or GLib). We
|
||||||
or less.
|
want the LGPL licensed version. The code is more or less the same.
|
||||||
|
102
TODO.xml
@@ -12,7 +12,7 @@
|
|||||||
<section>
|
<section>
|
||||||
<title>GDK</title>
|
<title>GDK</title>
|
||||||
|
|
||||||
<entry size="medium" status="70%" target="1.4">
|
<entry size="medium" status="90%" target="2.0">
|
||||||
<title>Add backing store support</title>
|
<title>Add backing store support</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -39,7 +39,7 @@
|
|||||||
<contact>Owen Taylor <otaylor@redhat.com></contact>
|
<contact>Owen Taylor <otaylor@redhat.com></contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="medium" status="70%" target="1.4">
|
<entry size="medium" status="90%" target="2.0">
|
||||||
<title>32 Bit Coordinates</title>
|
<title>32 Bit Coordinates</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -60,7 +60,7 @@
|
|||||||
<contact>Owen Taylor <otaylor@redhat.com></contact>
|
<contact>Owen Taylor <otaylor@redhat.com></contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="0%" target="1.4">
|
<entry size="small" status="0%" target="2.0">
|
||||||
<title>Customizable double-click timeout</title>
|
<title>Customizable double-click timeout</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -73,7 +73,7 @@
|
|||||||
<bugs>#3958</bugs>
|
<bugs>#3958</bugs>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="0%" target="1.4">
|
<entry size="small" status="0%" target="2.0">
|
||||||
<title>Make color handling more convenient</title>
|
<title>Make color handling more convenient</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -88,7 +88,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="0%" target="1.4">
|
<entry size="small" status="0%" target="2.0">
|
||||||
<title>Cursors</title>
|
<title>Cursors</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -105,7 +105,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="medium" status="0%" target="1.4">
|
<entry size="medium" status="100%" target="2.0">
|
||||||
<title>Make GdkRGB work on any visual</title>
|
<title>Make GdkRGB work on any visual</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -123,7 +123,7 @@
|
|||||||
<section>
|
<section>
|
||||||
<title>Internationalization</title>
|
<title>Internationalization</title>
|
||||||
|
|
||||||
<entry size="big" status="70%" target="1.4">
|
<entry size="big" status="90%" target="2.0">
|
||||||
<title>Integrate Pango</title>
|
<title>Integrate Pango</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -136,7 +136,7 @@
|
|||||||
<contact>gtk-i18n-list@redhat.com</contact>
|
<contact>gtk-i18n-list@redhat.com</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="medium" status="80%" target="1.4">
|
<entry size="medium" status="90%" target="2.0">
|
||||||
<title>Switch to using UTF-8</title>
|
<title>Switch to using UTF-8</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -158,7 +158,7 @@
|
|||||||
<contact>gtk-i18n-list@redhat.com</contact>
|
<contact>gtk-i18n-list@redhat.com</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="big" status="40%" target="1.4">
|
<entry size="big" status="60%" target="2.0">
|
||||||
<title>Rewrite Input Method Support</title>
|
<title>Rewrite Input Method Support</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -172,7 +172,7 @@
|
|||||||
set of callbacks that are invoked by the input methods.
|
set of callbacks that are invoked by the input methods.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
GTK+-1.4 will have a new system with loadable input method
|
GTK+-2.0 will have a new system with loadable input method
|
||||||
modules. These modules can either be implemented using XIM,
|
modules. These modules can either be implemented using XIM,
|
||||||
or written from scratch.
|
or written from scratch.
|
||||||
</p>
|
</p>
|
||||||
@@ -184,7 +184,7 @@
|
|||||||
<section>
|
<section>
|
||||||
<title>GTK+ Core</title>
|
<title>GTK+ Core</title>
|
||||||
|
|
||||||
<entry size="big" status="5%" target="1.4">
|
<entry size="big" status="60%" target="2.0">
|
||||||
<title>GLib based object and type system</title>
|
<title>GLib based object and type system</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -197,7 +197,7 @@
|
|||||||
<contact>Tim Janik <timj@gtk.org></contact>
|
<contact>Tim Janik <timj@gtk.org></contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="big" status="1%" target="1.4">
|
<entry size="big" status="1%" target="2.0">
|
||||||
<title>Overall callback improvements</title>
|
<title>Overall callback improvements</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -213,7 +213,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="big" status="0%" target="1.4">
|
<entry size="big" status="0%" target="2.0">
|
||||||
<title>State change notification</title>
|
<title>State change notification</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -233,7 +233,7 @@
|
|||||||
<contact>Tim Janik <timj@gtk.org></contact>
|
<contact>Tim Janik <timj@gtk.org></contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="big" status="5%" target="1.4">
|
<entry size="big" status="5%" target="2.0">
|
||||||
<title>Widget as sensitivity/grab state machine</title>
|
<title>Widget as sensitivity/grab state machine</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -253,7 +253,7 @@
|
|||||||
<contact>Tim Janik <timj@gtk.org></contact>
|
<contact>Tim Janik <timj@gtk.org></contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="big" status="0%" target="1.4">
|
<entry size="big" status="0%" target="2.0">
|
||||||
<title>Allow argument customization</title>
|
<title>Allow argument customization</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -269,7 +269,7 @@
|
|||||||
</description>
|
</description>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="medium" status="0%" target="1.4">
|
<entry size="medium" status="0%" target="2.0">
|
||||||
<title>Allow global customization</title>
|
<title>Allow global customization</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -286,7 +286,7 @@
|
|||||||
</description>
|
</description>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="0%" target="1.4">
|
<entry size="small" status="0%" target="2.0">
|
||||||
<title>Gtk+ Modules installation directory</title>
|
<title>Gtk+ Modules installation directory</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -301,7 +301,7 @@
|
|||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
|
|
||||||
<entry size="small" status="0%" target="1.4">
|
<entry size="small" status="20%" target="2.0">
|
||||||
<title>Convenient widget setup</title>
|
<title>Convenient widget setup</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -322,7 +322,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="medium" status="0%" target="> 1.4">
|
<entry size="medium" status="0%" target="> 2.0">
|
||||||
<title>Make selections/clipboard more convenient</title>
|
<title>Make selections/clipboard more convenient</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -334,7 +334,7 @@
|
|||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
|
|
||||||
<entry size="small" status="50%" target="1.4">
|
<entry size="small" status="80%" target="2.0">
|
||||||
<title>Stock label/icon system</title>
|
<title>Stock label/icon system</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -347,7 +347,7 @@
|
|||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
|
|
||||||
<entry size="big" status="0%" target="> 1.4">
|
<entry size="big" status="0%" target="> 2.0">
|
||||||
<title>Session Management</title>
|
<title>Session Management</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -359,14 +359,14 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="big" status="0%" target="> 1.4">
|
<entry size="big" status="0%" target="> 2.0">
|
||||||
<title>Online help enhancements</title>
|
<title>Online help enhancements</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
Look at a small "What's This" popup widget,
|
Look at a small "What's This" popup widget,
|
||||||
and a What's This system in general (this part
|
and a What's This system in general (this part
|
||||||
could maybe be done for 1.4). A more difficult, probably
|
could maybe be done for 2.0). A more difficult, probably
|
||||||
a post-1.4 task, is to integrate a very simple little
|
a post-2.0 task, is to integrate a very simple little
|
||||||
help browser gizmo into GTK.
|
help browser gizmo into GTK.
|
||||||
</p>
|
</p>
|
||||||
</description>
|
</description>
|
||||||
@@ -374,7 +374,7 @@
|
|||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
|
|
||||||
<entry size="medium" status="0%" target="1.4">
|
<entry size="medium" status="0%" target="2.0">
|
||||||
<title>GUI-editable means of user configuration</title>
|
<title>GUI-editable means of user configuration</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -390,7 +390,7 @@
|
|||||||
<section>
|
<section>
|
||||||
<title>GTK+ Widgets</title>
|
<title>GTK+ Widgets</title>
|
||||||
|
|
||||||
<entry size="small" status="50%" target="1.4">
|
<entry size="small" status="100%" target="2.0">
|
||||||
<title>Make GtkFrame use a label</title>
|
<title>Make GtkFrame use a label</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -405,7 +405,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="big" status="75%" target="1.4">
|
<entry size="big" status="90%" target="2.0">
|
||||||
<title>Replace GtkText Widget</title>
|
<title>Replace GtkText Widget</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -426,7 +426,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="0%" target="1.4">
|
<entry size="small" status="20%" target="2.0">
|
||||||
<title>Improve Radio/Checkbutton Look</title>
|
<title>Improve Radio/Checkbutton Look</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -441,7 +441,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="0%" target="1.4">
|
<entry size="small" status="99%" target="2.0">
|
||||||
<title>Improve Submenu Navigation</title>
|
<title>Improve Submenu Navigation</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -457,7 +457,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="0%" target="1.4 ?">
|
<entry size="small" status="0%" target="2.0 ?">
|
||||||
<title>Improve Spinbutton Look</title>
|
<title>Improve Spinbutton Look</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -478,20 +478,20 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="big" status="90%" target="1.4">
|
<entry size="big" status="90%" target="2.0">
|
||||||
<title>Supply horizontable/vertical wrapping boxes</title>
|
<title>Supply horizontable/vertical wrapping boxes</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
An often requested feature are wrapping containers, at this
|
An often requested feature are wrapping containers, at this
|
||||||
point, gimp's development version already uses such widgets:
|
point, gimp's development version already uses such widgets:
|
||||||
horizontable/vertical wrap boxes, that need to go into 1.4
|
horizontable/vertical wrap boxes, that need to go into 2.0
|
||||||
proper at some point.
|
proper at some point.
|
||||||
</p>
|
</p>
|
||||||
</description>
|
</description>
|
||||||
<contact>Tim Janik <timj@gtk.org></contact>
|
<contact>Tim Janik <timj@gtk.org></contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="medium" status="90%" target="1.4">
|
<entry size="medium" status="90%" target="2.0">
|
||||||
<title>Improved generic combo support</title>
|
<title>Improved generic combo support</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -504,7 +504,7 @@
|
|||||||
<contact>Tim Janik <timj@gtk.org></contact>
|
<contact>Tim Janik <timj@gtk.org></contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="big" status="0%" target="> 1.4">
|
<entry size="big" status="40%" target="2.0?">
|
||||||
<title>Add unified set of List/Tree/Grid widgets</title>
|
<title>Add unified set of List/Tree/Grid widgets</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -529,8 +529,8 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="0%" target="1.4">
|
<entry size="small" status="0%" target="2.0">
|
||||||
<title>GtkPixbuf</title>
|
<title>GtkImage</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
gdk-pixbuf is moving to become a GTK+ dependency, a new image-display
|
gdk-pixbuf is moving to become a GTK+ dependency, a new image-display
|
||||||
@@ -540,7 +540,7 @@
|
|||||||
<contact>hp@redhat.com</contact>
|
<contact>hp@redhat.com</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="0%" target="1.4">
|
<entry size="small" status="0%" target="2.0">
|
||||||
<title>Attempt to fix GtkStatusbar</title>
|
<title>Attempt to fix GtkStatusbar</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -553,7 +553,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="95%" target="1.4">
|
<entry size="small" status="95%" target="2.0">
|
||||||
<title>Decruft GtkProgress, GtkProgressbar</title>
|
<title>Decruft GtkProgress, GtkProgressbar</title>
|
||||||
<description>
|
<description>
|
||||||
<p>UPDATE: this is done, just need to apply the patch.
|
<p>UPDATE: this is done, just need to apply the patch.
|
||||||
@@ -571,7 +571,7 @@
|
|||||||
<contact>hp@redhat.com</contact>
|
<contact>hp@redhat.com</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="0%" target="1.4">
|
<entry size="small" status="0%" target="2.0">
|
||||||
<title>Entry validation hooks</title>
|
<title>Entry validation hooks</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -586,7 +586,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="big" status="0%" target="> 1.4">
|
<entry size="big" status="0%" target="> 2.0">
|
||||||
<title>pseudo-MDI Widget</title>
|
<title>pseudo-MDI Widget</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -607,7 +607,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="medium" status="0%" target="> 1.4">
|
<entry size="medium" status="0%" target="> 2.0">
|
||||||
<title>Icon List Widget</title>
|
<title>Icon List Widget</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -618,7 +618,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="medium" status="0%" target="> 1.4">
|
<entry size="medium" status="0%" target="> 2.0">
|
||||||
<title>Dock widget</title>
|
<title>Dock widget</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -631,7 +631,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="big" status="0%" target="> 1.4">
|
<entry size="big" status="0%" target="> 2.0">
|
||||||
<title>Canvas widget</title>
|
<title>Canvas widget</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -641,7 +641,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="medium" status="0%" target="1.4">
|
<entry size="medium" status="40%" target="2.0">
|
||||||
<title>Menu scroll</title>
|
<title>Menu scroll</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -652,7 +652,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="medium" status="0%" target="1.4">
|
<entry size="medium" status="20%" target="2.0">
|
||||||
<title>Toolbar/menubar wrap</title>
|
<title>Toolbar/menubar wrap</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -663,7 +663,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="0%" target="1.4">
|
<entry size="small" status="0%" target="2.0">
|
||||||
<title>Blink cursor in GtkEntry</title>
|
<title>Blink cursor in GtkEntry</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -674,7 +674,7 @@
|
|||||||
<contact>otaylor@redhat.com</contact>
|
<contact>otaylor@redhat.com</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="100%" target="1.4">
|
<entry size="small" status="100%" target="2.0">
|
||||||
<title>Don't highlight first menu item when menus come up</title>
|
<title>Don't highlight first menu item when menus come up</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -684,7 +684,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="95%" target="1.4">
|
<entry size="small" status="100%" target="2.0">
|
||||||
<title>Integrate new color selector</title>
|
<title>Integrate new color selector</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -697,7 +697,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="medium" status="0%" target="1.4">
|
<entry size="medium" status="70%" target="2.0">
|
||||||
<title>Write new font selector</title>
|
<title>Write new font selector</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -710,7 +710,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org</contact>
|
<contact>gtk-devel-list@gnome.org</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="0%" target="1.4">
|
<entry size="small" status="0%" target="2.0">
|
||||||
<title>Stack Widget</title>
|
<title>Stack Widget</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
@@ -723,7 +723,7 @@
|
|||||||
<contact>gtk-devel-list@gnome.org, jrb@redhat.com</contact>
|
<contact>gtk-devel-list@gnome.org, jrb@redhat.com</contact>
|
||||||
</entry>
|
</entry>
|
||||||
|
|
||||||
<entry size="small" status="0%" target="1.4">
|
<entry size="small" status="0%" target="2.0">
|
||||||
<title>Clean up GtkNotebook</title>
|
<title>Clean up GtkNotebook</title>
|
||||||
<description>
|
<description>
|
||||||
<p>
|
<p>
|
||||||
|
@@ -23,6 +23,7 @@
|
|||||||
#undef HAVE_GETTEXT
|
#undef HAVE_GETTEXT
|
||||||
#undef HAVE_IPC_H
|
#undef HAVE_IPC_H
|
||||||
#undef HAVE_LC_MESSAGES
|
#undef HAVE_LC_MESSAGES
|
||||||
|
#undef HAVE_PROGRESSIVE_JPEG
|
||||||
#undef HAVE_PWD_H
|
#undef HAVE_PWD_H
|
||||||
#undef HAVE_SHM_H
|
#undef HAVE_SHM_H
|
||||||
#undef HAVE_STPCPY
|
#undef HAVE_STPCPY
|
||||||
@@ -36,9 +37,13 @@
|
|||||||
|
|
||||||
#undef RESOURCE_BASE
|
#undef RESOURCE_BASE
|
||||||
|
|
||||||
|
#undef USE_GMODULE
|
||||||
|
#undef USE_MMX
|
||||||
|
|
||||||
/* Define to use X11R6 additions to XIM */
|
/* Define to use X11R6 additions to XIM */
|
||||||
#undef USE_X11R6_XIM
|
#undef USE_X11R6_XIM
|
||||||
|
|
||||||
|
|
||||||
#undef XINPUT_NONE
|
#undef XINPUT_NONE
|
||||||
#undef XINPUT_GXI
|
#undef XINPUT_GXI
|
||||||
#undef XINPUT_XFREE
|
#undef XINPUT_XFREE
|
||||||
@@ -49,6 +54,8 @@
|
|||||||
/* Most machines will be happy with int or void. IRIX requires '...' */
|
/* Most machines will be happy with int or void. IRIX requires '...' */
|
||||||
#undef SIGNAL_ARG_TYPE
|
#undef SIGNAL_ARG_TYPE
|
||||||
|
|
||||||
|
#undef GETTEXT_PACKAGE
|
||||||
|
|
||||||
/* #undef PACKAGE */
|
/* #undef PACKAGE */
|
||||||
/* #undef VERSION */
|
/* #undef VERSION */
|
||||||
|
|
||||||
|
@@ -71,6 +71,12 @@ echo "Running gettextize... Ignore non-fatal messages."
|
|||||||
# while making dist.
|
# while making dist.
|
||||||
echo "no" | gettextize --copy --force
|
echo "no" | gettextize --copy --force
|
||||||
|
|
||||||
|
#
|
||||||
|
# Really bad hack
|
||||||
|
echo "Munging po/Makefile.in.in"
|
||||||
|
sed s%@PACKAGE@%@GETTEXT_PACKAGE@% < po/Makefile.in.in > po/Makefile.in.in.new
|
||||||
|
mv po/Makefile.in.in.new po/Makefile.in.in
|
||||||
|
|
||||||
aclocal $ACLOCAL_FLAGS
|
aclocal $ACLOCAL_FLAGS
|
||||||
|
|
||||||
# optionally feature autoheader
|
# optionally feature autoheader
|
||||||
|
@@ -190,3 +190,10 @@
|
|||||||
* (available in the Platform SDK)
|
* (available in the Platform SDK)
|
||||||
*/
|
*/
|
||||||
/* #define HAVE_DIMM_H 1 */
|
/* #define HAVE_DIMM_H 1 */
|
||||||
|
|
||||||
|
#define USE_GMODULE 1
|
||||||
|
#define USE_MMX 1
|
||||||
|
|
||||||
|
/* #undef HAVE_SIGSETJMP */
|
||||||
|
|
||||||
|
#define GETTEXT_PACKAGE "gtk20"
|
||||||
|
609
configure.in
@@ -29,7 +29,7 @@ AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl
|
|||||||
#
|
#
|
||||||
GTK_MAJOR_VERSION=1
|
GTK_MAJOR_VERSION=1
|
||||||
GTK_MINOR_VERSION=3
|
GTK_MINOR_VERSION=3
|
||||||
GTK_MICRO_VERSION=0
|
GTK_MICRO_VERSION=1
|
||||||
GTK_INTERFACE_AGE=0
|
GTK_INTERFACE_AGE=0
|
||||||
GTK_BINARY_AGE=0
|
GTK_BINARY_AGE=0
|
||||||
GTK_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$GTK_MICRO_VERSION
|
GTK_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$GTK_MICRO_VERSION
|
||||||
@@ -53,10 +53,27 @@ AC_SUBST(LT_CURRENT)
|
|||||||
AC_SUBST(LT_REVISION)
|
AC_SUBST(LT_REVISION)
|
||||||
AC_SUBST(LT_AGE)
|
AC_SUBST(LT_AGE)
|
||||||
|
|
||||||
|
#
|
||||||
|
# gdk-pixbuf gets versioned separately, and for now, using standard
|
||||||
|
# libtool versioning, not GTK+-style versioning
|
||||||
|
#
|
||||||
|
GDK_PIXBUF_MAJOR=0
|
||||||
|
GDK_PIXBUF_MINOR=8
|
||||||
|
GDK_PIXBUF_MICRO=0
|
||||||
|
GDK_PIXBUF_VERSION="${GDK_PIXBUF_MAJOR}.${GDK_PIXBUF_MINOR}.${GDK_PIXBUF_MICRO}"
|
||||||
|
AC_SUBST(GDK_PIXBUF_MAJOR)
|
||||||
|
AC_SUBST(GDK_PIXBUF_MINOR)
|
||||||
|
AC_SUBST(GDK_PIXBUF_MICRO)
|
||||||
|
AC_SUBST(GDK_PIXBUF_VERSION)
|
||||||
|
|
||||||
# For automake.
|
# For automake.
|
||||||
VERSION=$GTK_VERSION
|
VERSION=$GTK_VERSION
|
||||||
PACKAGE=gtk+
|
PACKAGE=gtk+
|
||||||
|
|
||||||
|
GETTEXT_PACKAGE=gtk20
|
||||||
|
AC_SUBST(GETTEXT_PACKAGE)
|
||||||
|
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE")
|
||||||
|
|
||||||
# Save this value here, since automake will set cflags later
|
# Save this value here, since automake will set cflags later
|
||||||
cflags_set=${CFLAGS+set}
|
cflags_set=${CFLAGS+set}
|
||||||
|
|
||||||
@@ -100,6 +117,18 @@ AC_ARG_WITH(locale, [ --with-locale=LOCALE locale name you want to use ])
|
|||||||
|
|
||||||
AC_ARG_WITH(xinput, [ --with-xinput=[no/gxi/xfree] support XInput ])
|
AC_ARG_WITH(xinput, [ --with-xinput=[no/gxi/xfree] support XInput ])
|
||||||
|
|
||||||
|
gdktarget=x11
|
||||||
|
gdktargetlib=libgdk-x11-1.3.la
|
||||||
|
gtktargetlib=libgtk-x11-1.3.la
|
||||||
|
AC_ARG_WITH(gdktarget, [ --with-gdktarget=[x11/nanox/linux-fb] select GDK target [default=x11] ],
|
||||||
|
gdktarget=$with_gdktarget)
|
||||||
|
|
||||||
|
AC_SUBST(gdktarget)
|
||||||
|
case $gdktarget in
|
||||||
|
x11|nanox|linux-fb) ;;
|
||||||
|
*) AC_MSG_ERROR([Invalid target for GDK: use x11, nanox or linux-fb.]);;
|
||||||
|
esac
|
||||||
|
|
||||||
if test "x$enable_debug" = "xyes"; then
|
if test "x$enable_debug" = "xyes"; then
|
||||||
test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
|
test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
|
||||||
GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG"
|
GTK_DEBUG_FLAGS="-DG_ENABLE_DEBUG"
|
||||||
@@ -165,7 +194,7 @@ if test "x$enable_rebuilds" = "xyes" && \
|
|||||||
fi
|
fi
|
||||||
AC_SUBST(REBUILD)
|
AC_SUBST(REBUILD)
|
||||||
|
|
||||||
AC_CHECK_FUNCS(lstat)
|
AC_CHECK_FUNCS(lstat mkstemp sigsetjmp)
|
||||||
|
|
||||||
AC_MSG_CHECKING(whether make is GNU Make)
|
AC_MSG_CHECKING(whether make is GNU Make)
|
||||||
STRIP_BEGIN=
|
STRIP_BEGIN=
|
||||||
@@ -183,7 +212,7 @@ AC_SUBST(STRIP_BEGIN)
|
|||||||
AC_SUBST(STRIP_END)
|
AC_SUBST(STRIP_END)
|
||||||
|
|
||||||
# i18n stuff
|
# i18n stuff
|
||||||
ALL_LINGUAS="ca cs da de el es et eu fi fr ga gl hr hu it ja ko lt nl no pl pt pt_BR ro ru sk sl sv tr uk wa zh_TW.Big5 zh_CN.GB2312"
|
ALL_LINGUAS="ca cs da de el es et eu fi fr ga gl he hr hu it ja ko lt nl no pl pt pt_BR ro ru sk sl sp sr sv tr uk wa zh_TW.Big5 zh_CN.GB2312"
|
||||||
AM_GTK_GNU_GETTEXT
|
AM_GTK_GNU_GETTEXT
|
||||||
LIBS="$LIBS $INTLLIBS"
|
LIBS="$LIBS $INTLLIBS"
|
||||||
|
|
||||||
@@ -201,13 +230,13 @@ LIBS="$LIBS -lm"
|
|||||||
AC_TRY_RUN([#include <math.h>
|
AC_TRY_RUN([#include <math.h>
|
||||||
int main (void) { return (log(1) != log(1.)); }],
|
int main (void) { return (log(1) != log(1.)); }],
|
||||||
AC_MSG_RESULT(none needed),
|
AC_MSG_RESULT(none needed),
|
||||||
gtk_save_CFLAGS=$CFLAGS
|
gtk_save_CFLAGS="$CFLAGS"
|
||||||
CFLAGS="$CFLAGS -std1"
|
CFLAGS="$CFLAGS -std1"
|
||||||
AC_TRY_RUN([#include <math.h>
|
AC_TRY_RUN([#include <math.h>
|
||||||
int main (void) { return (log(1) != log(1.)); }],
|
int main (void) { return (log(1) != log(1.)); }],
|
||||||
AC_MSG_RESULT(-std1),
|
AC_MSG_RESULT(-std1),
|
||||||
AC_MSG_RESULT()
|
AC_MSG_RESULT()
|
||||||
CFLAGS=$gtk_save_CFLAGS
|
CFLAGS="$gtk_save_CFLAGS"
|
||||||
AC_MSG_WARN(
|
AC_MSG_WARN(
|
||||||
[No ANSI prototypes found in library. (-std1 didn't work.)]),
|
[No ANSI prototypes found in library. (-std1 didn't work.)]),
|
||||||
true
|
true
|
||||||
@@ -236,12 +265,12 @@ dnl NeXTStep cc seems to need this
|
|||||||
AC_MSG_CHECKING([for extra flags for POSIX compliance])
|
AC_MSG_CHECKING([for extra flags for POSIX compliance])
|
||||||
AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
|
AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
|
||||||
AC_MSG_RESULT(none needed),
|
AC_MSG_RESULT(none needed),
|
||||||
gtk_save_CFLAGS=$CFLAGS
|
gtk_save_CFLAGS="$CFLAGS"
|
||||||
CFLAGS="$CFLAGS -posix"
|
CFLAGS="$CFLAGS -posix"
|
||||||
AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
|
AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
|
||||||
AC_MSG_RESULT(-posix),
|
AC_MSG_RESULT(-posix),
|
||||||
AC_MSG_RESULT()
|
AC_MSG_RESULT()
|
||||||
CFLAGS=$gtk_save_CFLAGS
|
CFLAGS="$gtk_save_CFLAGS"
|
||||||
AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
|
AC_MSG_WARN([Could not determine POSIX flag. (-posix didn't work.)])))
|
||||||
|
|
||||||
if test x$with_glib = xyes ; then
|
if test x$with_glib = xyes ; then
|
||||||
@@ -252,36 +281,36 @@ fi
|
|||||||
if test x$with_glib = x ; then
|
if test x$with_glib = x ; then
|
||||||
# Look for separately installed glib
|
# Look for separately installed glib
|
||||||
|
|
||||||
AM_PATH_GLIB(1.3.1,,
|
AM_PATH_GLIB_2_0(1.3.1,,
|
||||||
AC_MSG_ERROR([
|
AC_MSG_ERROR([
|
||||||
*** GLIB 1.3.0 or better is required. The latest version of GLIB
|
*** GLIB 1.3.1 or better is required. The latest version of GLIB
|
||||||
*** is always available from ftp://ftp.gtk.org/.]),
|
*** is always available from ftp://ftp.gtk.org/.]),
|
||||||
gobject gmodule gthread)
|
gobject gmodule gthread)
|
||||||
|
|
||||||
# we do not want to make all gtk progs to link to thread libraries.
|
# we do not want to make all gtk progs to link to thread libraries.
|
||||||
glib_cflags=`$GLIB_CONFIG glib gobject gmodule --cflags`
|
glib_cflags=`$GLIB_CONFIG_2_0 glib gobject gmodule --cflags`
|
||||||
glib_thread_cflags="$GLIB_CFLAGS"
|
glib_thread_cflags="$GLIB_CFLAGS"
|
||||||
glib_libs=`$GLIB_CONFIG glib gobject gmodule --libs`
|
glib_libs=`$GLIB_CONFIG_2_0 glib gobject gmodule --libs`
|
||||||
glib_thread_libs="$GLIB_LIBS"
|
glib_thread_libs="$GLIB_LIBS"
|
||||||
GLIB_LIBS="$glib_libs"
|
GLIB_LIBS="$glib_libs"
|
||||||
GLIB_DEPLIBS="$glib_libs"
|
GLIB_DEPLIBS="$glib_libs"
|
||||||
else
|
else
|
||||||
# Use uninstalled glib (assume they got the version right)
|
# Use uninstalled glib (assume they got the version right)
|
||||||
|
|
||||||
GLIB_CONFIG=$with_glib/glib-config
|
GLIB_CONFIG_2_0=$with_glib/glib-config-2.0
|
||||||
if test -x $GLIB_CONFIG ; then
|
if test -x $GLIB_CONFIG_2_0 ; then
|
||||||
:
|
:
|
||||||
else
|
else
|
||||||
AC_MSG_ERROR([GLIB directory ($with_glib) not present or not configured])
|
AC_MSG_ERROR([GLIB directory ($with_glib) not present or not configured])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# For use in gtk-config
|
# For use in gtk-config
|
||||||
glib_cflags=`$GLIB_CONFIG --cflags gmodule`
|
glib_cflags=`$GLIB_CONFIG_2_0 --cflags gmodule`
|
||||||
glib_thread_cflags=`$GLIB_CONFIG --cflags gmodule gthread`
|
glib_thread_cflags=`$GLIB_CONFIG_2_0 --cflags gmodule gthread`
|
||||||
glib_libs=`$GLIB_CONFIG --libs gmodule`
|
glib_libs=`$GLIB_CONFIG_2_0 --libs gmodule`
|
||||||
glib_thread_libs=`$GLIB_CONFIG --libs gmodule gthread`
|
glib_thread_libs=`$GLIB_CONFIG_2_0 --libs gmodule gthread`
|
||||||
|
|
||||||
glib_release=`$GLIB_CONFIG --version | sed 's%\\.[[0-9]]*$%%'`
|
glib_release=`$GLIB_CONFIG_2_0 --version | sed 's%\\.[[0-9]]*$%%'`
|
||||||
|
|
||||||
# canonicalize relative paths
|
# canonicalize relative paths
|
||||||
case $with_glib in
|
case $with_glib in
|
||||||
@@ -294,7 +323,7 @@ else
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
GLIB_CFLAGS="-I$glib_dir -I$glib_dir/gmodule"
|
GLIB_CFLAGS="-I$glib_dir -I$glib_dir/gmodule"
|
||||||
GLIB_LIBS="$glib_dir/libglib.la $glib_dir/gmodule/libgmodule.la"
|
GLIB_LIBS="$glib_dir/libglib-1.3.la $glib_dir/gmodule/libgmodule-1.3.la"
|
||||||
GLIB_DEPLIBS=
|
GLIB_DEPLIBS=
|
||||||
|
|
||||||
AC_SUBST(GLIB_CFLAGS)
|
AC_SUBST(GLIB_CFLAGS)
|
||||||
@@ -310,47 +339,49 @@ AC_SUBST(GLIB_DEPLIBS)
|
|||||||
AC_CHECK_HEADERS(dirent.h, AC_DEFINE(HAVE_DIRENT_H))
|
AC_CHECK_HEADERS(dirent.h, AC_DEFINE(HAVE_DIRENT_H))
|
||||||
AC_CHECK_HEADERS(pwd.h, AC_DEFINE(HAVE_PWD_H))
|
AC_CHECK_HEADERS(pwd.h, AC_DEFINE(HAVE_PWD_H))
|
||||||
AC_CHECK_HEADERS(sys/time.h, AC_DEFINE(HAVE_SYS_TIME_H))
|
AC_CHECK_HEADERS(sys/time.h, AC_DEFINE(HAVE_SYS_TIME_H))
|
||||||
|
AC_CHECK_HEADERS(unistd.h, AC_DEFINE(HAVE_UNISTD_H))
|
||||||
# Find the X11 include and library directories
|
|
||||||
AC_PATH_X
|
|
||||||
AC_PATH_XTRA
|
|
||||||
|
|
||||||
if test "x$x_includes" = "x"; then
|
|
||||||
x_includes="/usr/include"
|
|
||||||
fi
|
|
||||||
|
|
||||||
saved_cflags="$CFLAGS"
|
saved_cflags="$CFLAGS"
|
||||||
saved_ldflags="$LDFLAGS"
|
saved_ldflags="$LDFLAGS"
|
||||||
|
|
||||||
CFLAGS="$CFLAGS $X_CFLAGS"
|
if test "x$gdktarget" = "xx11"; then
|
||||||
LDFLAGS="$LDFLAGS $X_LDFLAGS $X_LIBS"
|
# Find the X11 include and library directories
|
||||||
|
AC_PATH_X
|
||||||
|
AC_PATH_XTRA
|
||||||
|
|
||||||
if test "x$no_x" = "xyes"; then
|
if test "x$x_includes" = "x"; then
|
||||||
AC_MSG_ERROR([
|
x_includes="/usr/include"
|
||||||
|
fi
|
||||||
|
|
||||||
|
CFLAGS="$CFLAGS $X_CFLAGS"
|
||||||
|
LDFLAGS="$LDFLAGS $X_LDFLAGS $X_LIBS"
|
||||||
|
|
||||||
|
if test "x$no_x" = "xyes"; then
|
||||||
|
AC_MSG_ERROR([
|
||||||
*** X libraries or include files not found. Check 'config.log' for
|
*** X libraries or include files not found. Check 'config.log' for
|
||||||
*** more details.])
|
*** more details.])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Checks for libraries.
|
# Checks for libraries.
|
||||||
# Check for the X11 library
|
# Check for the X11 library
|
||||||
AC_CHECK_LIB(X11, XOpenDisplay, x_libs="-lX11 $X_EXTRA_LIBS",
|
AC_CHECK_LIB(X11, XOpenDisplay, x_libs="-lX11 $X_EXTRA_LIBS",
|
||||||
AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]),
|
AC_MSG_ERROR([*** libX11 not found. Check 'config.log' for more details.]),
|
||||||
$X_EXTRA_LIBS)
|
$X_EXTRA_LIBS)
|
||||||
|
|
||||||
if test "x$enable_shm" = "xyes"; then
|
if test "x$enable_shm" = "xyes"; then
|
||||||
# Check for the Xext library (needed for XShm extention)
|
# Check for the Xext library (needed for XShm extention)
|
||||||
AC_CHECK_LIB(Xext, XShmAttach,
|
AC_CHECK_LIB(Xext, XShmAttach,
|
||||||
x_libs="-lXext $x_libs",
|
x_libs="-lXext $x_libs",
|
||||||
# On AIX, it is in XextSam instead, but we still need -lXext
|
# On AIX, it is in XextSam instead, but we still need -lXext
|
||||||
AC_CHECK_LIB(XextSam, XShmAttach,
|
AC_CHECK_LIB(XextSam, XShmAttach,
|
||||||
x_libs="-lXextSam -lXext $x_libs",
|
x_libs="-lXextSam -lXext $x_libs",
|
||||||
no_xext_lib=yes, $x_libs),
|
no_xext_lib=yes, $x_libs),
|
||||||
$x_libs)
|
$x_libs)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Check for shaped window extension
|
# Check for shaped window extension
|
||||||
|
|
||||||
AC_CHECK_LIB(Xext, XShapeCombineMask,
|
AC_CHECK_LIB(Xext, XShapeCombineMask,
|
||||||
if test -z "`echo $x_libs | grep "\-lXext" 2> /dev/null`"; then
|
if test -z "`echo $x_libs | grep "\-lXext" 2> /dev/null`"; then
|
||||||
x_libs="-lXext $x_libs"
|
x_libs="-lXext $x_libs"
|
||||||
fi
|
fi
|
||||||
@@ -358,60 +389,163 @@ AC_CHECK_LIB(Xext, XShapeCombineMask,
|
|||||||
,
|
,
|
||||||
$x_libs)
|
$x_libs)
|
||||||
|
|
||||||
# Check for XConvertCase (X11R6 specific)
|
# Check for XConvertCase (X11R6 specific)
|
||||||
|
|
||||||
AC_CHECK_LIB(X11, XConvertCase,
|
AC_CHECK_LIB(X11, XConvertCase,
|
||||||
AC_DEFINE(HAVE_XCONVERTCASE),
|
AC_DEFINE(HAVE_XCONVERTCASE),
|
||||||
,
|
,
|
||||||
$x_libs)
|
$x_libs)
|
||||||
|
|
||||||
# Check for XIM support.
|
# Check for XIM support.
|
||||||
|
|
||||||
AC_CHECK_LIB(X11, XUnregisterIMInstantiateCallback,
|
AC_CHECK_LIB(X11, XUnregisterIMInstantiateCallback,
|
||||||
: ,
|
: ,
|
||||||
enable_xim_inst="no",
|
enable_xim_inst="no",
|
||||||
$x_libs)
|
$x_libs)
|
||||||
|
|
||||||
# On Solaris, calling XRegisterIMInstantiateCallback seems to
|
# On Solaris, calling XRegisterIMInstantiateCallback seems to
|
||||||
# cause an immediate segfault, so we disable it, unless
|
# cause an immediate segfault, so we disable it, unless
|
||||||
# the user specifically forces it to be on.
|
# the user specifically forces it to be on.
|
||||||
|
|
||||||
if test x$enable_xim_inst = xmaybe ; then
|
if test x$enable_xim_inst = xmaybe ; then
|
||||||
case host in
|
case host in
|
||||||
*-*-solaris*)
|
*-*-solaris*)
|
||||||
enable_xim_inst="no"
|
enable_xim_inst="no"
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
enable_xim_inst="yes"
|
enable_xim_inst="yes"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
|
||||||
|
|
||||||
if test "x$enable_xim" = "xyes"; then
|
|
||||||
GTK_XIM_FLAGS="-DUSE_XIM"
|
|
||||||
if test "x$enable_xim_inst" = "xyes"; then
|
|
||||||
AC_DEFINE(USE_X11R6_XIM)
|
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
x_cflags="$X_CFLAGS"
|
if test "x$enable_xim" = "xyes"; then
|
||||||
x_ldflags="$X_LDFLAGS $X_LIBS"
|
GTK_XIM_FLAGS="-DUSE_XIM"
|
||||||
|
if test "x$enable_xim_inst" = "xyes"; then
|
||||||
|
AC_DEFINE(USE_X11R6_XIM)
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
# set up things for XInput
|
x_cflags="$X_CFLAGS"
|
||||||
|
x_ldflags="$X_LDFLAGS $X_LIBS"
|
||||||
|
|
||||||
if test "x$with_xinput" = "xgxi" || test "x$with_xinput" = "xyes"; then
|
# set up things for XInput
|
||||||
AC_DEFINE(XINPUT_GXI)
|
|
||||||
xinput_progs=gxid
|
if test "x$with_xinput" = "xgxi" || test "x$with_xinput" = "xyes"; then
|
||||||
x_libs="-lXi $x_libs"
|
AC_DEFINE(XINPUT_GXI)
|
||||||
elif test "x$with_xinput" = "xxfree"; then
|
xinput_progs=gxid
|
||||||
AC_DEFINE(XINPUT_XFREE)
|
x_libs="-lXi $x_libs"
|
||||||
x_libs="-lXi $x_libs"
|
elif test "x$with_xinput" = "xxfree"; then
|
||||||
|
AC_DEFINE(XINPUT_XFREE)
|
||||||
|
x_libs="-lXi $x_libs"
|
||||||
|
else
|
||||||
|
AC_DEFINE(XINPUT_NONE)
|
||||||
|
fi
|
||||||
|
|
||||||
|
AM_CONDITIONAL(XINPUT_GXI, test x$with_xinput = xgxi)
|
||||||
|
AM_CONDITIONAL(XINPUT_XFREE, test x$with_xinput = xxfree)
|
||||||
|
|
||||||
|
if test "x$enable_shm" = "xyes"; then
|
||||||
|
# Check for shared memory
|
||||||
|
AC_CHECK_HEADER(sys/ipc.h, AC_DEFINE(HAVE_IPC_H), no_sys_ipc=yes)
|
||||||
|
AC_CHECK_HEADER(sys/shm.h, AC_DEFINE(HAVE_SHM_H), no_sys_shm=yes)
|
||||||
|
|
||||||
|
# Check for the X shared memory extension header file
|
||||||
|
AC_MSG_CHECKING(X11/extensions/XShm.h)
|
||||||
|
if test "x$no_xext_lib" = "xyes"; then
|
||||||
|
AC_MSG_RESULT(no)
|
||||||
|
no_xshm=yes
|
||||||
|
else
|
||||||
|
if test -f "$x_includes/X11/extensions/XShm.h"; then
|
||||||
|
AC_MSG_RESULT(yes)
|
||||||
|
AC_DEFINE(HAVE_XSHM_H)
|
||||||
|
else
|
||||||
|
AC_MSG_RESULT(no)
|
||||||
|
no_xshm=yes
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
more_cflags="$x_cflags"
|
||||||
|
more_ldflags="$x_ldflags"
|
||||||
|
more_libs="$x_libs"
|
||||||
|
more_includes="$x_includes"
|
||||||
|
|
||||||
|
# these are already defined above
|
||||||
|
#gdktargetlib = "libgdk-x11-1.3.la"
|
||||||
|
#gtktargetlib = "libgtk-x11-1.3.la"
|
||||||
|
|
||||||
|
AM_CONDITIONAL(USE_X11, true)
|
||||||
else
|
else
|
||||||
AC_DEFINE(XINPUT_NONE)
|
AM_CONDITIONAL(USE_X11, false)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
AM_CONDITIONAL(XINPUT_GXI, test x$with_xinput = xgxi)
|
if test "x$gdktarget" = "xnanox"; then
|
||||||
AM_CONDITIONAL(XINPUT_XFREE, test x$with_xinput = xxfree)
|
AC_CHECK_LIB(nano-X, GrOpen,,AC_MSG_ERROR([nano-X libraries not found.]))
|
||||||
|
# nano-X may require additional libraries
|
||||||
|
more_cflags=
|
||||||
|
more_ldflags=
|
||||||
|
more_libs="-lnano-X"
|
||||||
|
more_includes=
|
||||||
|
|
||||||
|
gdktargetlib="libgdk-nanox-1.3.la"
|
||||||
|
gtktargetlib="libgtk-nanox-1.3.la"
|
||||||
|
|
||||||
|
with_xinput=no
|
||||||
|
AC_DEFINE(XINPUT_NONE)
|
||||||
|
x_cflags=
|
||||||
|
x_includes=
|
||||||
|
x_ldflags=
|
||||||
|
x_libs=
|
||||||
|
xinput_progs=
|
||||||
|
AM_CONDITIONAL(USE_NANOX, true)
|
||||||
|
else
|
||||||
|
AM_CONDITIONAL(USE_NANOX, false)
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "x$gdktarget" = "xlinux-fb"; then
|
||||||
|
more_cflags=
|
||||||
|
more_ldflags=
|
||||||
|
more_libs=
|
||||||
|
more_includes=
|
||||||
|
|
||||||
|
gdktargetlib="libgdk-linux-fb-1.3.la"
|
||||||
|
gtktargetlib="libgtk-linux-fb-1.3.la"
|
||||||
|
|
||||||
|
with_xinput=no
|
||||||
|
AC_DEFINE(XINPUT_NONE)
|
||||||
|
x_cflags=
|
||||||
|
x_includes=
|
||||||
|
x_ldflags=
|
||||||
|
x_libs=
|
||||||
|
xinput_progs=
|
||||||
|
|
||||||
|
AM_CONDITIONAL(USE_LINUX_FB, true)
|
||||||
|
else
|
||||||
|
AM_CONDITIONAL(USE_LINUX_FB, false)
|
||||||
|
fi
|
||||||
|
|
||||||
|
#
|
||||||
|
# Check for Pango
|
||||||
|
#
|
||||||
|
AC_PATH_PROG(PANGO_CONFIG, pango-config, no)
|
||||||
|
if test x$PANGO_CONFIG = xno ; then
|
||||||
|
AC_MSG_ERROR([*** pango-config not found])
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "x$gdktarget" = "xx11"; then
|
||||||
|
PANGO_CFLAGS="`$PANGO_CONFIG --cflags pangox`"
|
||||||
|
PANGO_LIBS="`$PANGO_CONFIG --libs pangox`"
|
||||||
|
else
|
||||||
|
PANGO_CFLAGS="`$PANGO_CONFIG --cflags pango`"
|
||||||
|
PANGO_LIBS="`$PANGO_CONFIG --libs pango`"
|
||||||
|
fi
|
||||||
|
CFLAGS="$CFLAGS $PANGO_CFLAGS"
|
||||||
|
AC_SUBST(PANGO_LIBS)
|
||||||
|
AC_SUBST(PANGO_CFLAGS)
|
||||||
|
|
||||||
|
AC_CHECK_LIB(pango, pango_context_new, :, AC_MSG_ERROR([
|
||||||
|
*** Pango not found. Pango is required to build
|
||||||
|
*** GTK+. For more information see http://www.pango.org]), $PANGO_LIBS $x_ldflags $x_libs)
|
||||||
|
|
||||||
CFLAGS="$saved_cflags"
|
CFLAGS="$saved_cflags"
|
||||||
LDFLAGS="$saved_ldflags"
|
LDFLAGS="$saved_ldflags"
|
||||||
@@ -422,26 +556,13 @@ AC_SUBST(x_ldflags)
|
|||||||
AC_SUBST(x_libs)
|
AC_SUBST(x_libs)
|
||||||
AC_SUBST(xinput_progs)
|
AC_SUBST(xinput_progs)
|
||||||
|
|
||||||
if test "x$enable_shm" = "xyes"; then
|
AC_SUBST(more_cflags)
|
||||||
# Check for shared memory
|
AC_SUBST(more_includes)
|
||||||
AC_CHECK_HEADER(sys/ipc.h, AC_DEFINE(HAVE_IPC_H), no_sys_ipc=yes)
|
AC_SUBST(more_ldflags)
|
||||||
AC_CHECK_HEADER(sys/shm.h, AC_DEFINE(HAVE_SHM_H), no_sys_shm=yes)
|
AC_SUBST(more_libs)
|
||||||
|
AC_SUBST(gdktargetlib)
|
||||||
|
AC_SUBST(gtktargetlib)
|
||||||
|
|
||||||
# Check for the X shared memory extension header file
|
|
||||||
AC_MSG_CHECKING(X11/extensions/XShm.h)
|
|
||||||
if test "x$no_xext_lib" = "xyes"; then
|
|
||||||
AC_MSG_RESULT(no)
|
|
||||||
no_xshm=yes
|
|
||||||
else
|
|
||||||
if test -f "$x_includes/X11/extensions/XShm.h"; then
|
|
||||||
AC_MSG_RESULT(yes)
|
|
||||||
AC_DEFINE(HAVE_XSHM_H)
|
|
||||||
else
|
|
||||||
AC_MSG_RESULT(no)
|
|
||||||
no_xshm=yes
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Check if X_LOCALE definition is necessary
|
# Check if X_LOCALE definition is necessary
|
||||||
|
|
||||||
@@ -543,6 +664,252 @@ AC_SUBST(GTK_DEBUG_FLAGS)
|
|||||||
AC_SUBST(GTK_XIM_FLAGS)
|
AC_SUBST(GTK_XIM_FLAGS)
|
||||||
AC_SUBST(GTK_LOCALE_FLAGS)
|
AC_SUBST(GTK_LOCALE_FLAGS)
|
||||||
|
|
||||||
|
##################################################
|
||||||
|
# Checks for gdk-pixbuf
|
||||||
|
##################################################
|
||||||
|
|
||||||
|
AC_MSG_CHECKING(whether to build gmodulized gdk-pixbuf)
|
||||||
|
|
||||||
|
AC_ARG_ENABLE(modules, [ --disable-modules Disables dynamic module loading],[
|
||||||
|
if test x$withval = xyes; then
|
||||||
|
with_modules=yes
|
||||||
|
else
|
||||||
|
with_modules=no
|
||||||
|
fi
|
||||||
|
])
|
||||||
|
|
||||||
|
dynworks=false
|
||||||
|
deps=
|
||||||
|
if test x$with_modules = xno; then
|
||||||
|
AC_MSG_RESULT(no)
|
||||||
|
else
|
||||||
|
AC_MSG_RESULT(yes)
|
||||||
|
AC_MSG_CHECKING(whether dynamic modules work)
|
||||||
|
oLIBS="$LIBS"
|
||||||
|
oCFLAGS="$CFLAGS"
|
||||||
|
CFLAGS="$GLIB_CFLAGS"
|
||||||
|
LIBS="$GLIB_LIBS"
|
||||||
|
AC_TRY_RUN([
|
||||||
|
#include <glib.h>
|
||||||
|
#include <gmodule.h>
|
||||||
|
main ()
|
||||||
|
{
|
||||||
|
if (g_module_supported ())
|
||||||
|
exit (0);
|
||||||
|
else
|
||||||
|
exit (1);
|
||||||
|
}
|
||||||
|
], dynworks=true)
|
||||||
|
LIBS="$oLIBS"
|
||||||
|
CFLAGS="$oCFLAGS"
|
||||||
|
fi
|
||||||
|
|
||||||
|
dnl Now we check to see if our libtool supports shared lib deps
|
||||||
|
dnl (in a rather ugly way even)
|
||||||
|
if $dynworks; then
|
||||||
|
pixbuf_libtool_config="${CONFIG_SHELL-/bin/sh} libtool --config"
|
||||||
|
pixbuf_deplibs_check=`$pixbuf_libtool_config | \
|
||||||
|
grep '^[[a-z_]]*check[[a-z_]]*_method=[['\''"]]' | \
|
||||||
|
sed 's/.*[['\''"]]\(.*\)[['\''"]]$/\1/'`
|
||||||
|
if test "x$pixbuf_deplibs_check" = "xnone" || \
|
||||||
|
test "x$pixbuf_deplibs_check" = "xunknown" || \
|
||||||
|
test "x$pixbuf_deplibs_check" = "x"; then
|
||||||
|
dynworks=false
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if $dynworks; then
|
||||||
|
AC_DEFINE(USE_GMODULE)
|
||||||
|
GMODULE_LIBS="`$GLIB_CONFIG_2_0 --libs gmodule`"
|
||||||
|
GMODULE_FLAGS="`$GLIB_CONFIG_2_0 --cflags gmodule`"
|
||||||
|
AC_SUBST(GMODULE_LIBS)
|
||||||
|
AC_SUBST(GMODULE_FLAGS)
|
||||||
|
AC_MSG_RESULT(yes)
|
||||||
|
else
|
||||||
|
AC_MSG_RESULT(no)
|
||||||
|
fi
|
||||||
|
|
||||||
|
dnl Test for libtiff
|
||||||
|
if test -z "$LIBTIFF"; then
|
||||||
|
AC_CHECK_LIB(tiff, TIFFReadScanline,
|
||||||
|
AC_CHECK_HEADER(tiffio.h,
|
||||||
|
TIFF='tiff'; LIBTIFF='-ltiff',
|
||||||
|
AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***)),
|
||||||
|
AC_CHECK_LIB(tiff, TIFFWriteScanline,
|
||||||
|
AC_CHECK_HEADER(tiffio.h,
|
||||||
|
TIFF='tiff'; LIBTIFF='-ltiff -ljpeg -lz',
|
||||||
|
AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***)),
|
||||||
|
AC_CHECK_LIB(tiff34, TIFFFlushData,
|
||||||
|
AC_CHECK_HEADER(tiffio.h,
|
||||||
|
TIFF='tiff'; LIBTIFF='-ltiff34 -ljpeg -lz',
|
||||||
|
AC_MSG_WARN(*** TIFF loader will not be built (TIFF header files not found) ***)),
|
||||||
|
AC_MSG_WARN(*** TIFF plug-in will not be built (TIFF library not found) ***), -ljpeg -lz -lm), -ljpeg -lz -lm), -lm)
|
||||||
|
fi
|
||||||
|
|
||||||
|
dnl Test for libjpeg
|
||||||
|
if test -z "$LIBJPEG"; then
|
||||||
|
AC_CHECK_LIB(jpeg, jpeg_destroy_decompress,
|
||||||
|
jpeg_ok=yes,
|
||||||
|
jpeg_ok=no
|
||||||
|
AC_MSG_WARN(*** JPEG loader will not be built (JPEG library not found) ***))
|
||||||
|
if test "$jpeg_ok" = yes; then
|
||||||
|
AC_MSG_CHECKING([for jpeglib.h])
|
||||||
|
AC_TRY_CPP(
|
||||||
|
[#include <stdio.h>
|
||||||
|
#undef PACKAGE
|
||||||
|
#undef VERSION
|
||||||
|
#include <jpeglib.h>],
|
||||||
|
jpeg_ok=yes,
|
||||||
|
jpeg_ok=no)
|
||||||
|
AC_MSG_RESULT($jpeg_ok)
|
||||||
|
if test "$jpeg_ok" = yes; then
|
||||||
|
LIBJPEG='-ljpeg'
|
||||||
|
AC_CHECK_LIB(jpeg, jpeg_simple_progression,
|
||||||
|
AC_DEFINE(HAVE_PROGRESSIVE_JPEG),
|
||||||
|
AC_MSG_WARN(JPEG library does not support progressive saving.))
|
||||||
|
else
|
||||||
|
AC_MSG_WARN(*** JPEG loader will not be built (JPEG header file not found) ***)
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
dnl Test for libpng
|
||||||
|
if test -z "$LIBPNG"; then
|
||||||
|
AC_CHECK_LIB(png, png_read_info,
|
||||||
|
AC_CHECK_HEADER(png.h,
|
||||||
|
png_ok=yes,
|
||||||
|
png_ok=no),
|
||||||
|
AC_MSG_WARN(*** PNG loader will not be built (PNG library not found) ***), -lz -lm)
|
||||||
|
if test "$png_ok" = yes; then
|
||||||
|
AC_MSG_CHECKING([for png_structp in png.h])
|
||||||
|
AC_TRY_COMPILE([#include <png.h>],
|
||||||
|
[png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;],
|
||||||
|
png_ok=yes,
|
||||||
|
png_ok=no)
|
||||||
|
AC_MSG_RESULT($png_ok)
|
||||||
|
if test "$png_ok" = yes; then
|
||||||
|
PNG='png'; LIBPNG='-lpng -lz'
|
||||||
|
else
|
||||||
|
AC_MSG_WARN(*** PNG loader will not be built (PNG library is too old) ***)
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
AC_MSG_WARN(*** PNG loader will not be built (PNG header file not found) ***)
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
deps="$LIBTIFF $LIBJPEG $LIBPNG"
|
||||||
|
|
||||||
|
AC_SUBST(LIBTIFF)
|
||||||
|
AC_SUBST(LIBJPEG)
|
||||||
|
AC_SUBST(LIBPNG)
|
||||||
|
|
||||||
|
AM_CONDITIONAL(BUILD_DYNAMIC_MODULES, $dynworks)
|
||||||
|
|
||||||
|
AC_HEADER_STDC
|
||||||
|
AC_HEADER_DIRENT
|
||||||
|
AC_HEADER_SYS_WAIT
|
||||||
|
|
||||||
|
AC_TYPE_SIGNAL
|
||||||
|
|
||||||
|
AM_CONDITIONAL(HAVE_TIFF, test "x$LIBTIFF" != x)
|
||||||
|
AM_CONDITIONAL(HAVE_PNG, test "x$LIBPNG" != x)
|
||||||
|
AM_CONDITIONAL(HAVE_JPEG, test "x$LIBJPEG" != x)
|
||||||
|
|
||||||
|
GDK_PIXBUF_LIBDIR='-L${libdir}'
|
||||||
|
GDK_PIXBUF_INCLUDEDIR="-I${includedir} $GTK_CFLAGS"
|
||||||
|
GDK_PIXBUF_LIBS="$GLIB_LIBS -lgdk_pixbuf $deps $GTK_LIBS"
|
||||||
|
AC_SUBST(STATIC_LIB_DEPS)
|
||||||
|
STATIC_LIB_DEPS="$deps"
|
||||||
|
|
||||||
|
AC_SUBST(GDK_PIXBUF_LIBDIR)
|
||||||
|
AC_SUBST(GDK_PIXBUF_INCLUDEDIR)
|
||||||
|
AC_SUBST(GDK_PIXBUF_LIBS)
|
||||||
|
|
||||||
|
# Checks to see if we should compile in MMX support (there will be
|
||||||
|
# a runtime test when the code is actually run to see if it should
|
||||||
|
# be used - this just checks if we can compile it.)
|
||||||
|
#
|
||||||
|
# This code is partially taken from Mesa
|
||||||
|
#
|
||||||
|
AC_MSG_CHECKING(for x86 platform)
|
||||||
|
case $host_cpu in
|
||||||
|
i386|i486|i586|i686|i786|k6|k7)
|
||||||
|
use_x86_asm=yes
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
use_x86_asm=no
|
||||||
|
esac
|
||||||
|
AC_MSG_RESULT($use_x86_asm)
|
||||||
|
|
||||||
|
use_mmx_asm=no
|
||||||
|
if test $use_x86_asm = yes; then
|
||||||
|
save_ac_ext=$ac_ext
|
||||||
|
ac_ext=S
|
||||||
|
|
||||||
|
AC_MSG_CHECKING(compiler support for MMX)
|
||||||
|
cp $srcdir/gdk-pixbuf/pixops/scale_line_22_33_mmx.S conftest.S
|
||||||
|
if AC_TRY_EVAL(ac_compile); then
|
||||||
|
use_mmx_asm=yes
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -rf conftest*
|
||||||
|
|
||||||
|
ac_ext=$save_ac_ext
|
||||||
|
if test $use_mmx_asm = yes; then
|
||||||
|
AC_DEFINE(USE_MMX)
|
||||||
|
AC_MSG_RESULT(yes)
|
||||||
|
else
|
||||||
|
AC_MSG_RESULT(no)
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
AM_CONDITIONAL(USE_MMX, test x$use_mmx_asm = xyes)
|
||||||
|
|
||||||
|
|
||||||
|
##################################################
|
||||||
|
# Checks for gtk-doc and docbook-tools
|
||||||
|
##################################################
|
||||||
|
|
||||||
|
AC_ARG_WITH(html-dir, [ --with-html-dir=PATH path to installed docs ])
|
||||||
|
|
||||||
|
if test "x$with_html_dir" = "x" ; then
|
||||||
|
HTML_DIR='${datadir}/gtk-doc/html'
|
||||||
|
else
|
||||||
|
HTML_DIR=$with_html_dir
|
||||||
|
fi
|
||||||
|
|
||||||
|
AC_SUBST(HTML_DIR)
|
||||||
|
|
||||||
|
AC_CHECK_PROG(GTKDOC, gtkdoc-mkdb, true, false)
|
||||||
|
AM_CONDITIONAL(HAVE_GTK_DOC, $GTKDOC)
|
||||||
|
AC_SUBST(HAVE_GTK_DOC)
|
||||||
|
|
||||||
|
AC_CHECK_PROG(DB2HTML, db2html, true, false)
|
||||||
|
AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
|
||||||
|
|
||||||
|
dnl Let people disable the gtk-doc stuff.
|
||||||
|
AC_ARG_ENABLE(gtk-doc, [ --enable-gtk-doc Use gtk-doc to build documentation [default=auto]], enable_gtk_doc="$enableval", enable_gtk_doc=auto)
|
||||||
|
|
||||||
|
if test x$enable_gtk_doc = xauto ; then
|
||||||
|
if test x$GTKDOC = xtrue ; then
|
||||||
|
enable_gtk_doc=yes
|
||||||
|
else
|
||||||
|
enable_gtk_doc=no
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
dnl NOTE: We need to use a separate automake conditional for this
|
||||||
|
dnl to make this work with the tarballs.
|
||||||
|
AM_CONDITIONAL(ENABLE_GTK_DOC, test x$enable_gtk_doc = xyes)
|
||||||
|
|
||||||
|
GDK_PIXBUF_DIR=`(cd $srcdir; pwd)`
|
||||||
|
AC_SUBST(GDK_PIXBUF_DIR)
|
||||||
|
|
||||||
|
|
||||||
|
##################################################
|
||||||
|
# Output commands
|
||||||
|
##################################################
|
||||||
|
|
||||||
AC_OUTPUT_COMMANDS([
|
AC_OUTPUT_COMMANDS([
|
||||||
|
|
||||||
## Generate `gdk/gdkconfig.h' in two cases
|
## Generate `gdk/gdkconfig.h' in two cases
|
||||||
@@ -602,8 +969,18 @@ _______EOF
|
|||||||
esac
|
esac
|
||||||
],[
|
],[
|
||||||
# Currently we always use X11 on those systems where we run configure...
|
# Currently we always use X11 on those systems where we run configure...
|
||||||
gdk_windowing='
|
if test "x$gdktarget" = "xx11" ; then
|
||||||
|
gdk_windowing='
|
||||||
#define GDK_WINDOWING_X11'
|
#define GDK_WINDOWING_X11'
|
||||||
|
elif test "x$gdktarget" = "xnanox" ; then
|
||||||
|
gdk_windowing='
|
||||||
|
#define GDK_WINDOWING_NANOX'
|
||||||
|
elif test "x$gdktarget" = "xlinux-fb" ; then
|
||||||
|
gdk_windowing='
|
||||||
|
#define GDK_WINDOWING_FB
|
||||||
|
#define GDK_NATIVE_WINDOW_POINTER'
|
||||||
|
fi
|
||||||
|
|
||||||
if test x$gdk_wchar_h = xyes; then
|
if test x$gdk_wchar_h = xyes; then
|
||||||
gdk_wc='
|
gdk_wc='
|
||||||
#define GDK_HAVE_WCHAR_H 1'
|
#define GDK_HAVE_WCHAR_H 1'
|
||||||
@@ -620,17 +997,41 @@ fi
|
|||||||
|
|
||||||
])
|
])
|
||||||
|
|
||||||
|
AC_PATH_PROG(SGML2HTML, sgml2html, no)
|
||||||
|
AM_CONDITIONAL(HAVE_SGML2HTML, ! test x$SGML2HTML = xno)
|
||||||
|
|
||||||
AC_OUTPUT([
|
AC_OUTPUT([
|
||||||
gtk+.spec
|
gtk+.spec
|
||||||
docs/gtk-config.1
|
docs/gtk-config.1
|
||||||
Makefile
|
Makefile
|
||||||
gtk-config
|
gtk-config-2.0
|
||||||
po/Makefile.in
|
po/Makefile.in
|
||||||
|
build/Makefile
|
||||||
|
build/win32/Makefile
|
||||||
|
demos/Makefile
|
||||||
docs/Makefile
|
docs/Makefile
|
||||||
|
docs/reference/Makefile
|
||||||
|
docs/reference/gdk-pixbuf/Makefile
|
||||||
|
docs/reference/gdk/Makefile
|
||||||
|
docs/reference/gtk/Makefile
|
||||||
|
docs/faq/Makefile
|
||||||
|
docs/tutorial/Makefile
|
||||||
|
gdk-pixbuf/Makefile
|
||||||
|
gdk-pixbuf/makefile.mingw
|
||||||
|
gdk-pixbuf/gdk-pixbuf-features.h
|
||||||
|
gdk-pixbuf/pixops/Makefile
|
||||||
|
gdk-pixbuf/pixops/makefile.mingw
|
||||||
gdk/Makefile
|
gdk/Makefile
|
||||||
|
gdk/makefile.mingw
|
||||||
gdk/x11/Makefile
|
gdk/x11/Makefile
|
||||||
gdk/win32/Makefile
|
gdk/win32/Makefile
|
||||||
|
gdk/win32/makefile.mingw
|
||||||
|
gdk/nanox/Makefile
|
||||||
|
gdk/linux-fb/Makefile
|
||||||
gtk/Makefile
|
gtk/Makefile
|
||||||
gtk/gtkfeatures.h
|
gtk/makefile.mingw
|
||||||
gtk/gtkcompat.h
|
gtk/gtkcompat.h
|
||||||
], [chmod +x gtk-config])
|
modules/Makefile
|
||||||
|
modules/linux-fb/Makefile
|
||||||
|
modules/input/Makefile
|
||||||
|
], [chmod +x gtk-config-2.0])
|
||||||
|
9
demos/.cvsignore
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
Makefile
|
||||||
|
Makefile.in
|
||||||
|
.libs
|
||||||
|
.deps
|
||||||
|
testanimation
|
||||||
|
testpixbuf-drawable
|
||||||
|
testpixbuf-scale
|
||||||
|
testpixbuf
|
||||||
|
pixbuf-demo
|
67
demos/Makefile.am
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
## Makefile.am for gtk+/demos
|
||||||
|
|
||||||
|
INCLUDES = @STRIP_BEGIN@ \
|
||||||
|
-I$(top_srcdir) \
|
||||||
|
-I$(top_builddir)/gdk \
|
||||||
|
-DGTK_DISABLE_COMPAT_H \
|
||||||
|
@GTK_DEBUG_FLAGS@ \
|
||||||
|
@GTK_XIM_FLAGS@ \
|
||||||
|
@GTK_LOCALE_FLAGS@ \
|
||||||
|
@PANGO_CFLAGS@ \
|
||||||
|
@GLIB_CFLAGS@ \
|
||||||
|
@more_cflags@ \
|
||||||
|
@STRIP_END@
|
||||||
|
|
||||||
|
DEPS = \
|
||||||
|
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-1.3.la \
|
||||||
|
$(top_builddir)/gdk/@gdktargetlib@ \
|
||||||
|
$(top_builddir)/gtk/@gtktargetlib@
|
||||||
|
|
||||||
|
LDADDS = @STRIP_BEGIN@ \
|
||||||
|
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-1.3.la \
|
||||||
|
$(top_builddir)/gdk/@gdktargetlib@ \
|
||||||
|
$(top_builddir)/gtk/@gtktargetlib@ \
|
||||||
|
@more_ldflags@ \
|
||||||
|
@more_libs@ \
|
||||||
|
@GDK_WLIBS@ \
|
||||||
|
@PANGO_LIBS@ \
|
||||||
|
@GLIB_LIBS@ \
|
||||||
|
@GTK_LIBS_EXTRA@ \
|
||||||
|
-lm \
|
||||||
|
@STRIP_END@
|
||||||
|
|
||||||
|
noinst_PROGRAMS = \
|
||||||
|
testpixbuf \
|
||||||
|
testpixbuf-drawable \
|
||||||
|
testanimation \
|
||||||
|
testpixbuf-scale \
|
||||||
|
pixbuf-demo
|
||||||
|
|
||||||
|
testpixbuf_DEPENDENCIES = $(DEPS)
|
||||||
|
testpixbuf_drawable_DEPENDENCIES = $(DEPS)
|
||||||
|
testpixbuf_scale_DEPENDENCIES = $(DEPS)
|
||||||
|
testanimation_DEPENDENCIES = $(DEPS)
|
||||||
|
pixbuf_demo_DEPENDENCIES = $(DEPS)
|
||||||
|
|
||||||
|
testpixbuf_LDADD = $(LDADDS)
|
||||||
|
testpixbuf_drawable_LDADD = $(LDADDS)
|
||||||
|
testpixbuf_scale_LDADD = $(LDADDS)
|
||||||
|
testanimation_LDADD = $(LDADDS)
|
||||||
|
pixbuf_demo_LDADD = $(LDADDS)
|
||||||
|
|
||||||
|
testpixbuf_SOURCES = testpixbuf.c pixbuf-init.c
|
||||||
|
testpixbuf_drawable_SOURCES = testpixbuf-drawable.c pixbuf-init.c
|
||||||
|
testpixbuf_scale_SOURCES = testpixbuf-scale.c pixbuf-init.c
|
||||||
|
testanimation_SOURCES = testanimation.c pixbuf-init.c
|
||||||
|
pixbuf_demo_SOURCES = pixbuf-demo.c pixbuf-init.c
|
||||||
|
|
||||||
|
EXTRA_DIST = \
|
||||||
|
apple-red.png \
|
||||||
|
background.jpg \
|
||||||
|
gnome-applets.png \
|
||||||
|
gnome-calendar.png \
|
||||||
|
gnome-foot.png \
|
||||||
|
gnome-gimp.png \
|
||||||
|
gnome-gmush.png \
|
||||||
|
gnome-gsame.png \
|
||||||
|
gnu-keys.png
|
BIN
demos/apple-red.png
Normal file
After Width: | Height: | Size: 3.5 KiB |
BIN
demos/background.jpg
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
demos/gnome-applets.png
Normal file
After Width: | Height: | Size: 3.0 KiB |
BIN
demos/gnome-calendar.png
Normal file
After Width: | Height: | Size: 2.7 KiB |
BIN
demos/gnome-foot.png
Normal file
After Width: | Height: | Size: 2.8 KiB |
BIN
demos/gnome-gimp.png
Normal file
After Width: | Height: | Size: 3.3 KiB |
BIN
demos/gnome-gmush.png
Normal file
After Width: | Height: | Size: 3.2 KiB |
BIN
demos/gnome-gsame.png
Normal file
After Width: | Height: | Size: 4.2 KiB |
BIN
demos/gnu-keys.png
Normal file
After Width: | Height: | Size: 3.8 KiB |
230
demos/pixbuf-demo.c
Normal file
@@ -0,0 +1,230 @@
|
|||||||
|
/* GdkPixbuf library - Scaling and compositing demo
|
||||||
|
*
|
||||||
|
* Copyright (C) 1999 The Free Software Foundation
|
||||||
|
*
|
||||||
|
* Authors: Federico Mena-Quintero <federico@gimp.org>
|
||||||
|
*
|
||||||
|
* This library is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
* License as published by the Free Software Foundation; either
|
||||||
|
* version 2 of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This library is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with this library; if not, write to the
|
||||||
|
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||||
|
* Boston, MA 02111-1307, USA.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <config.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <gtk/gtk.h>
|
||||||
|
#include <math.h>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#define FRAME_DELAY 50
|
||||||
|
|
||||||
|
#define BACKGROUND_NAME "background.jpg"
|
||||||
|
|
||||||
|
static const char *image_names[] = {
|
||||||
|
"apple-red.png",
|
||||||
|
"gnome-applets.png",
|
||||||
|
"gnome-calendar.png",
|
||||||
|
"gnome-foot.png",
|
||||||
|
"gnome-gmush.png",
|
||||||
|
"gnome-gimp.png",
|
||||||
|
"gnome-gsame.png",
|
||||||
|
"gnu-keys.png"
|
||||||
|
};
|
||||||
|
|
||||||
|
#define N_IMAGES (sizeof (image_names) / sizeof (image_names[0]))
|
||||||
|
|
||||||
|
/* Current frame */
|
||||||
|
static GdkPixbuf *frame;
|
||||||
|
|
||||||
|
/* Background image */
|
||||||
|
static GdkPixbuf *background;
|
||||||
|
int back_width, back_height;
|
||||||
|
|
||||||
|
/* Images */
|
||||||
|
static GdkPixbuf *images[N_IMAGES];
|
||||||
|
|
||||||
|
/* Widgets */
|
||||||
|
GtkWidget *da;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* Loads the images for the demo and returns whether the operation succeeded */
|
||||||
|
static gboolean
|
||||||
|
load_pixbufs (void)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
background = gdk_pixbuf_new_from_file (BACKGROUND_NAME);
|
||||||
|
if (!background)
|
||||||
|
return FALSE;
|
||||||
|
|
||||||
|
back_width = gdk_pixbuf_get_width (background);
|
||||||
|
back_height = gdk_pixbuf_get_height (background);
|
||||||
|
|
||||||
|
for (i = 0; i < N_IMAGES; i++) {
|
||||||
|
images[i] = gdk_pixbuf_new_from_file (image_names[i]);
|
||||||
|
if (!images[i])
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Expose callback for the drawing area */
|
||||||
|
static gint
|
||||||
|
expose_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data)
|
||||||
|
{
|
||||||
|
guchar *pixels;
|
||||||
|
int rowstride;
|
||||||
|
|
||||||
|
rowstride = gdk_pixbuf_get_rowstride (frame);
|
||||||
|
|
||||||
|
pixels = gdk_pixbuf_get_pixels (frame) + rowstride * event->area.y + event->area.x * 3;
|
||||||
|
|
||||||
|
gdk_draw_rgb_image_dithalign (widget->window,
|
||||||
|
widget->style->black_gc,
|
||||||
|
event->area.x, event->area.y,
|
||||||
|
event->area.width, event->area.height,
|
||||||
|
GDK_RGB_DITHER_NORMAL,
|
||||||
|
pixels, rowstride,
|
||||||
|
event->area.x, event->area.y);
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
#define CYCLE_LEN 60
|
||||||
|
|
||||||
|
static int frame_num;
|
||||||
|
|
||||||
|
/* Timeout handler to regenerate the frame */
|
||||||
|
static gint
|
||||||
|
timeout (gpointer data)
|
||||||
|
{
|
||||||
|
double f;
|
||||||
|
int i;
|
||||||
|
double xmid, ymid;
|
||||||
|
double radius;
|
||||||
|
|
||||||
|
gdk_pixbuf_copy_area (background, 0, 0, back_width, back_height,
|
||||||
|
frame, 0, 0);
|
||||||
|
|
||||||
|
f = (double) (frame_num % CYCLE_LEN) / CYCLE_LEN;
|
||||||
|
|
||||||
|
xmid = back_width / 2.0;
|
||||||
|
ymid = back_height / 2.0;
|
||||||
|
|
||||||
|
radius = MIN (xmid, ymid) / 2.0;
|
||||||
|
|
||||||
|
for (i = 0; i < N_IMAGES; i++) {
|
||||||
|
double ang;
|
||||||
|
int xpos, ypos;
|
||||||
|
int iw, ih;
|
||||||
|
double r;
|
||||||
|
GdkRectangle r1, r2, dest;
|
||||||
|
double k;
|
||||||
|
|
||||||
|
ang = 2.0 * M_PI * (double) i / N_IMAGES - f * 2.0 * M_PI;
|
||||||
|
|
||||||
|
iw = gdk_pixbuf_get_width (images[i]);
|
||||||
|
ih = gdk_pixbuf_get_height (images[i]);
|
||||||
|
|
||||||
|
r = radius + (radius / 3.0) * sin (f * 2.0 * M_PI);
|
||||||
|
|
||||||
|
xpos = floor (xmid + r * cos (ang) - iw / 2.0 + 0.5);
|
||||||
|
ypos = floor (ymid + r * sin (ang) - ih / 2.0 + 0.5);
|
||||||
|
|
||||||
|
k = (i & 1) ? sin (f * 2.0 * M_PI) : cos (f * 2.0 * M_PI);
|
||||||
|
k = 2.0 * k * k;
|
||||||
|
k = MAX (0.25, k);
|
||||||
|
|
||||||
|
r1.x = xpos;
|
||||||
|
r1.y = ypos;
|
||||||
|
r1.width = iw * k;
|
||||||
|
r1.height = ih * k;
|
||||||
|
|
||||||
|
r2.x = 0;
|
||||||
|
r2.y = 0;
|
||||||
|
r2.width = back_width;
|
||||||
|
r2.height = back_height;
|
||||||
|
|
||||||
|
if (gdk_rectangle_intersect (&r1, &r2, &dest))
|
||||||
|
gdk_pixbuf_composite (images[i],
|
||||||
|
frame,
|
||||||
|
dest.x, dest.y,
|
||||||
|
dest.width, dest.height,
|
||||||
|
xpos, ypos,
|
||||||
|
k, k,
|
||||||
|
GDK_INTERP_NEAREST,
|
||||||
|
((i & 1)
|
||||||
|
? MAX (127, fabs (255 * sin (f * 2.0 * M_PI)))
|
||||||
|
: MAX (127, fabs (255 * cos (f * 2.0 * M_PI)))));
|
||||||
|
}
|
||||||
|
|
||||||
|
gtk_widget_draw (da, NULL);
|
||||||
|
|
||||||
|
frame_num++;
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
static guint timeout_id;
|
||||||
|
|
||||||
|
/* Destroy handler for the window */
|
||||||
|
static void
|
||||||
|
destroy_cb (GtkObject *object, gpointer data)
|
||||||
|
{
|
||||||
|
gtk_timeout_remove (timeout_id);
|
||||||
|
timeout_id = 0;
|
||||||
|
|
||||||
|
gtk_main_quit ();
|
||||||
|
}
|
||||||
|
|
||||||
|
extern void pixbuf_init();
|
||||||
|
|
||||||
|
int
|
||||||
|
main (int argc, char **argv)
|
||||||
|
{
|
||||||
|
GtkWidget *window;
|
||||||
|
|
||||||
|
pixbuf_init ();
|
||||||
|
gtk_init (&argc, &argv);
|
||||||
|
gdk_rgb_init ();
|
||||||
|
|
||||||
|
if (!load_pixbufs ()) {
|
||||||
|
g_message ("main(): Could not load all the pixbufs!");
|
||||||
|
exit (EXIT_FAILURE);
|
||||||
|
}
|
||||||
|
|
||||||
|
frame = gdk_pixbuf_new (GDK_COLORSPACE_RGB, FALSE, 8, back_width, back_height);
|
||||||
|
|
||||||
|
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
|
||||||
|
gtk_widget_set_usize (window, back_width, back_height);
|
||||||
|
gtk_window_set_policy (GTK_WINDOW (window), FALSE, FALSE, FALSE);
|
||||||
|
|
||||||
|
gtk_signal_connect (GTK_OBJECT (window), "destroy",
|
||||||
|
GTK_SIGNAL_FUNC (destroy_cb), NULL);
|
||||||
|
|
||||||
|
da = gtk_drawing_area_new ();
|
||||||
|
|
||||||
|
gtk_signal_connect (GTK_OBJECT (da), "expose_event",
|
||||||
|
GTK_SIGNAL_FUNC (expose_cb), NULL);
|
||||||
|
|
||||||
|
gtk_container_add (GTK_CONTAINER (window), da);
|
||||||
|
|
||||||
|
timeout_id = gtk_timeout_add (FRAME_DELAY, timeout, NULL);
|
||||||
|
|
||||||
|
gtk_widget_show_all (window);
|
||||||
|
gtk_main ();
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
19
demos/pixbuf-init.c
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
#include <glib.h>
|
||||||
|
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
static gboolean
|
||||||
|
file_exists (const char *filename)
|
||||||
|
{
|
||||||
|
struct stat statbuf;
|
||||||
|
|
||||||
|
return stat (filename, &statbuf) == 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
pixbuf_init ()
|
||||||
|
{
|
||||||
|
if (file_exists ("../gdk-pixbuf/.libs/libpixbufloader-pnm.so"))
|
||||||
|
putenv ("GDK_PIXBUF_MODULEDIR=../gdk-pixbuf/.libs");
|
||||||
|
}
|
@@ -3,16 +3,16 @@
|
|||||||
* Copyright (C) 1999 Mark Crichton, Larry Ewing
|
* Copyright (C) 1999 Mark Crichton, Larry Ewing
|
||||||
*
|
*
|
||||||
* This library is free software; you can redistribute it and/or
|
* This library is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU Library General Public
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
* License as published by the Free Software Foundation; either
|
* License as published by the Free Software Foundation; either
|
||||||
* version 2 of the License, or (at your option) any later version.
|
* version 2 of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This library is distributed in the hope that it will be useful,
|
* This library is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
* Library General Public License for more details.
|
* Lesser General Public License for more details.
|
||||||
*
|
*
|
||||||
* You should have received a copy of the GNU Library General Public
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
* License along with this library; if not, write to the
|
* License along with this library; if not, write to the
|
||||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||||
* Boston, MA 02111-1307, USA.
|
* Boston, MA 02111-1307, USA.
|
||||||
@@ -24,8 +24,7 @@
|
|||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
#include "gdk-pixbuf.h"
|
#include <gtk/gdk-pixbuf-loader.h>
|
||||||
#include "gdk-pixbuf-loader.h"
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FILE *imagefile;
|
FILE *imagefile;
|
||||||
@@ -367,6 +366,8 @@ progressive_updated_callback(GdkPixbufLoader* loader, guint x, guint y, guint wi
|
|||||||
|
|
||||||
static int readlen = 4096;
|
static int readlen = 4096;
|
||||||
|
|
||||||
|
extern void pixbuf_init();
|
||||||
|
|
||||||
int
|
int
|
||||||
main (int argc, char **argv)
|
main (int argc, char **argv)
|
||||||
{
|
{
|
||||||
@@ -375,6 +376,8 @@ main (int argc, char **argv)
|
|||||||
|
|
||||||
GdkPixbufAnimation *animation;
|
GdkPixbufAnimation *animation;
|
||||||
|
|
||||||
|
pixbuf_init ();
|
||||||
|
|
||||||
gtk_init (&argc, &argv);
|
gtk_init (&argc, &argv);
|
||||||
|
|
||||||
gdk_rgb_set_verbose (TRUE);
|
gdk_rgb_set_verbose (TRUE);
|
||||||
@@ -382,7 +385,6 @@ main (int argc, char **argv)
|
|||||||
gdk_rgb_init ();
|
gdk_rgb_init ();
|
||||||
|
|
||||||
gtk_widget_set_default_colormap (gdk_rgb_get_cmap ());
|
gtk_widget_set_default_colormap (gdk_rgb_get_cmap ());
|
||||||
gtk_widget_set_default_visual (gdk_rgb_get_visual ());
|
|
||||||
|
|
||||||
{
|
{
|
||||||
char *tbf_readlen = getenv("TBF_READLEN");
|
char *tbf_readlen = getenv("TBF_READLEN");
|
||||||
|
@@ -1,7 +1,6 @@
|
|||||||
#include <config.h>
|
#include <config.h>
|
||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
#include <gdk/gdkx.h>
|
#include <gdk/x11/gdkx.h>
|
||||||
#include "gdk-pixbuf.h"
|
|
||||||
|
|
||||||
int close_app(GtkWidget *widget, gpointer data)
|
int close_app(GtkWidget *widget, gpointer data)
|
||||||
{
|
{
|
||||||
@@ -67,6 +66,8 @@ int configure_cb(GtkWidget *drawing_area, GdkEventConfigure *evt, gpointer data)
|
|||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern void pixbuf_init();
|
||||||
|
|
||||||
int main(int argc, char **argv)
|
int main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
GdkWindow *root;
|
GdkWindow *root;
|
||||||
@@ -75,12 +76,13 @@ int main(int argc, char **argv)
|
|||||||
GtkWidget *drawing_area;
|
GtkWidget *drawing_area;
|
||||||
GdkPixbuf *pixbuf;
|
GdkPixbuf *pixbuf;
|
||||||
|
|
||||||
|
pixbuf_init ();
|
||||||
|
|
||||||
gtk_init(&argc, &argv);
|
gtk_init(&argc, &argv);
|
||||||
gdk_rgb_set_verbose(TRUE);
|
gdk_rgb_set_verbose(TRUE);
|
||||||
gdk_rgb_init();
|
gdk_rgb_init();
|
||||||
|
|
||||||
gtk_widget_set_default_colormap(gdk_rgb_get_cmap());
|
gtk_widget_set_default_colormap(gdk_rgb_get_cmap());
|
||||||
gtk_widget_set_default_visual(gdk_rgb_get_visual());
|
|
||||||
|
|
||||||
root = GDK_ROOT_PARENT();
|
root = GDK_ROOT_PARENT();
|
||||||
pixbuf = gdk_pixbuf_get_from_drawable(NULL, root, NULL,
|
pixbuf = gdk_pixbuf_get_from_drawable(NULL, root, NULL,
|
||||||
|
@@ -1,5 +1,4 @@
|
|||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
#include "gdk-pixbuf.h"
|
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
@@ -52,6 +51,8 @@ expose_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data)
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern void pixbuf_init();
|
||||||
|
|
||||||
int
|
int
|
||||||
main(int argc, char **argv)
|
main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
@@ -62,6 +63,8 @@ main(int argc, char **argv)
|
|||||||
GtkAdjustment *adjustment;
|
GtkAdjustment *adjustment;
|
||||||
GtkRequisition scratch_requisition;
|
GtkRequisition scratch_requisition;
|
||||||
|
|
||||||
|
pixbuf_init ();
|
||||||
|
|
||||||
gtk_init (&argc, &argv);
|
gtk_init (&argc, &argv);
|
||||||
gdk_rgb_init ();
|
gdk_rgb_init ();
|
||||||
|
|
||||||
|
@@ -2,16 +2,16 @@
|
|||||||
* Copyright (C) 1999 Mark Crichton, Larry Ewing
|
* Copyright (C) 1999 Mark Crichton, Larry Ewing
|
||||||
*
|
*
|
||||||
* This library is free software; you can redistribute it and/or
|
* This library is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU Library General Public
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
* License as published by the Free Software Foundation; either
|
* License as published by the Free Software Foundation; either
|
||||||
* version 2 of the License, or (at your option) any later version.
|
* version 2 of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This library is distributed in the hope that it will be useful,
|
* This library is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
* Library General Public License for more details.
|
* Lesser General Public License for more details.
|
||||||
*
|
*
|
||||||
* You should have received a copy of the GNU Library General Public
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
* License along with this library; if not, write to the
|
* License along with this library; if not, write to the
|
||||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||||
* Boston, MA 02111-1307, USA.
|
* Boston, MA 02111-1307, USA.
|
||||||
@@ -23,8 +23,7 @@
|
|||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <gtk/gtk.h>
|
#include <gtk/gtk.h>
|
||||||
#include "gdk-pixbuf.h"
|
#include <gtk/gdk-pixbuf-loader.h>
|
||||||
#include "gdk-pixbuf-loader.h"
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
FILE *imagefile;
|
FILE *imagefile;
|
||||||
@@ -484,6 +483,8 @@ progressive_updated_callback(GdkPixbufLoader* loader, guint x, guint y, guint wi
|
|||||||
|
|
||||||
static int readlen = 4096;
|
static int readlen = 4096;
|
||||||
|
|
||||||
|
extern void pixbuf_init();
|
||||||
|
|
||||||
int
|
int
|
||||||
main (int argc, char **argv)
|
main (int argc, char **argv)
|
||||||
{
|
{
|
||||||
@@ -493,6 +494,8 @@ main (int argc, char **argv)
|
|||||||
GdkPixbuf *pixbuf;
|
GdkPixbuf *pixbuf;
|
||||||
GdkPixbufLoader *pixbuf_loader;
|
GdkPixbufLoader *pixbuf_loader;
|
||||||
|
|
||||||
|
pixbuf_init ();
|
||||||
|
|
||||||
gtk_init (&argc, &argv);
|
gtk_init (&argc, &argv);
|
||||||
|
|
||||||
gdk_rgb_set_verbose (TRUE);
|
gdk_rgb_set_verbose (TRUE);
|
||||||
@@ -500,7 +503,6 @@ main (int argc, char **argv)
|
|||||||
gdk_rgb_init ();
|
gdk_rgb_init ();
|
||||||
|
|
||||||
gtk_widget_set_default_colormap (gdk_rgb_get_cmap ());
|
gtk_widget_set_default_colormap (gdk_rgb_get_cmap ());
|
||||||
gtk_widget_set_default_visual (gdk_rgb_get_visual ());
|
|
||||||
|
|
||||||
{
|
{
|
||||||
char *tbf_readlen = getenv("TBF_READLEN");
|
char *tbf_readlen = getenv("TBF_READLEN");
|
||||||
|
@@ -1,7 +1,6 @@
|
|||||||
Makefile
|
Makefile
|
||||||
Makefile.in
|
Makefile.in
|
||||||
*.html
|
*.html
|
||||||
*.info*
|
|
||||||
*.dvi
|
*.dvi
|
||||||
*.ps
|
*.ps
|
||||||
*.pg
|
*.pg
|
||||||
|
@@ -1,108 +0,0 @@
|
|||||||
Incompatible Changes from GTK+-1.2 to GTK+-1.4:
|
|
||||||
|
|
||||||
* The gdk_time* functions have been removed. This functionality
|
|
||||||
has been unused since the main loop was moved into GLib
|
|
||||||
prior to 1.2.
|
|
||||||
|
|
||||||
* The signature for GtkPrintFunc (used for gtk_item_factory_dump_items)
|
|
||||||
has been changed to take a 'const gchar *' instead of 'gchar *', to
|
|
||||||
match what we do for glib, and other similar cases.
|
|
||||||
|
|
||||||
* The detail arguments in the GtkStyleClass structure are now 'const gchar *'.
|
|
||||||
|
|
||||||
* gtk_paned_set_gutter_size() has been removed, since the small handle tab
|
|
||||||
has been changed to include the entire area previously occupied by
|
|
||||||
the gutter.
|
|
||||||
|
|
||||||
* GDK no longer selects OwnerGrabButtonMask for button presses. This means
|
|
||||||
that the automatic grab that occurs when the user presses a button
|
|
||||||
will have owner_events = FALSE, so all events are redirected to the
|
|
||||||
grab window, even events that would normally go to other windows of the
|
|
||||||
window's owner.
|
|
||||||
|
|
||||||
* GtkColorSelectionDialog has now been moved into it's own set of files,
|
|
||||||
gtkcolorseldialog.c and gtkcolorseldialog.h.
|
|
||||||
|
|
||||||
* gtk_widget_shape_combine_mask() now keeps a reference count on the
|
|
||||||
mask pixmap that is passed in.
|
|
||||||
|
|
||||||
* Type system changes:
|
|
||||||
- GTK_TYPE_OBJECT is not a fundamental type anymore. Type checks of the
|
|
||||||
style (GTK_FUNDAMENTAL_TYPE (some_type) == GTK_TYPE_OBJECT)
|
|
||||||
will not work anymore. As a replacement, (GTK_TYPE_IS_OBJECT (some_type))
|
|
||||||
can be used now.
|
|
||||||
- The following types vanished: GTK_TYPE_ARGS, GTK_TYPE_CALLBACK,
|
|
||||||
GTK_TYPE_C_CALLBACK, GTK_TYPE_FOREIGN. The corresponding GtkArg
|
|
||||||
fields and field access macros are also gone.
|
|
||||||
- The following type aliases vanished: GTK_TYPE_FLAT_FIRST,
|
|
||||||
GTK_TYPE_FLAT_LAST, GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST.
|
|
||||||
- The type macros GTK_TYPE_MAKE() and GTK_TYPE_SEQNO() vanished, use of
|
|
||||||
GTK_FUNDAMENTAL_TYPE() is discouraged. Instead, the corresponding GType
|
|
||||||
API should be used: G_TYPE_FUNDAMENTAL(), G_TYPE_DERIVE_ID(),
|
|
||||||
G_TYPE_BRANCH_SEQNO(). Note that the GLib type system doesn't build new
|
|
||||||
type ids based on a global incremental sequential number anymore, but
|
|
||||||
numbers new type ids sequentially per fundamental type branch.
|
|
||||||
- The following type functions vanished/were replaced:
|
|
||||||
Old Function Replacement
|
|
||||||
gtk_type_query() - being investigated -
|
|
||||||
gtk_type_set_varargs_type() -
|
|
||||||
gtk_type_get_varargs_type() -
|
|
||||||
gtk_type_check_object_cast() g_type_check_instance_cast()
|
|
||||||
gtk_type_check_class_cast() g_type_check_class_cast()
|
|
||||||
gtk_type_describe_tree() -
|
|
||||||
gtk_type_describe_heritage() -
|
|
||||||
gtk_type_free() -
|
|
||||||
gtk_type_children_types() g_type_children()
|
|
||||||
gtk_type_set_chunk_alloc() GTypeInfo.n_preallocs
|
|
||||||
gtk_type_register_enum() g_enum_register_static()
|
|
||||||
gtk_type_register_flags() g_flags_register_static()
|
|
||||||
gtk_type_parent_class() g_type_parent() / g_type_class_peek_parent()
|
|
||||||
Use of g_type_class_ref() / g_type_class_unref() and g_type_class_peek()
|
|
||||||
is recommended over usage of gtk_type_class().
|
|
||||||
Use of g_type_register_static() / g_type_register_dynamic() is recommended
|
|
||||||
over usage of gtk_type_unique().
|
|
||||||
|
|
||||||
* Object system changes:
|
|
||||||
GtkObject derives from GObject, so is not the basic object type anymore.
|
|
||||||
This imposes the following source incompatible changes:
|
|
||||||
- GtkObject has no klass field anymore, an object's class can be retrived
|
|
||||||
with the object's coresponding GTK_<OBJECT>_GET_CLASS (object) macro.
|
|
||||||
- GtkObjectClass has no type field anymore, a class's type can be retrived
|
|
||||||
with the GTK_CLASS_TYPE (class) macro.
|
|
||||||
- GtkObjectClass does not introduce the finalize() and shutdown() methods
|
|
||||||
anymore. While shutdown() is intended for GTK+ internal use only, finalize()
|
|
||||||
is required by a variety of object implementations. GObjectClass.finalize
|
|
||||||
should be overriden here, e.g.:
|
|
||||||
static void gtk_label_finalize (GObject *gobject)
|
|
||||||
{
|
|
||||||
GtkLabel *label = GTK_LABEL (gobject);
|
|
||||||
|
|
||||||
G_OBJECT_CLASS (parent_class)->finalize (object);
|
|
||||||
}
|
|
||||||
static void gtk_label_class_init (GtkLabelClass *class)
|
|
||||||
{
|
|
||||||
GObjectClass *gobject_class = G_OBJECT_CLASS (class);
|
|
||||||
|
|
||||||
gobject_class->finalize = gtk_label_finalize;
|
|
||||||
}
|
|
||||||
|
|
||||||
- the GtkObject::destroy signal can now be emitted multiple times on an object.
|
|
||||||
::destroy implementations should check that make sure that they take this
|
|
||||||
into account, by checking to make sure that resources are there before
|
|
||||||
freeing them. For example:
|
|
||||||
if (object->foo_data)
|
|
||||||
{
|
|
||||||
g_free (object->foo_data);
|
|
||||||
object->foo_data = NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
Also, ::destroy implementations have to release object references that
|
|
||||||
the object holds. Code in finalize implementations such as:
|
|
||||||
if (object->adjustment)
|
|
||||||
{
|
|
||||||
gtk_object_unref (object->adjustment);
|
|
||||||
object->adjustment = NULL;
|
|
||||||
}
|
|
||||||
have to be moved into the ::destroy implementations. The reason for doing
|
|
||||||
this is that all object reference cycles should be broken at destruction
|
|
||||||
time.
|
|
232
docs/Changes-2.0.txt
Normal file
@@ -0,0 +1,232 @@
|
|||||||
|
Incompatible Changes from GTK+-1.2 to GTK+-1.4:
|
||||||
|
|
||||||
|
* The gdk_time* functions have been removed. This functionality
|
||||||
|
has been unused since the main loop was moved into GLib
|
||||||
|
prior to 1.2.
|
||||||
|
|
||||||
|
* The signature for GtkPrintFunc (used for gtk_item_factory_dump_items)
|
||||||
|
has been changed to take a 'const gchar *' instead of 'gchar *', to
|
||||||
|
match what we do for glib, and other similar cases.
|
||||||
|
|
||||||
|
* The detail arguments in the GtkStyleClass structure are now 'const gchar *'.
|
||||||
|
|
||||||
|
* gtk_paned_set_gutter_size() has been removed, since the small handle tab
|
||||||
|
has been changed to include the entire area previously occupied by
|
||||||
|
the gutter.
|
||||||
|
|
||||||
|
* GDK no longer selects OwnerGrabButtonMask for button presses. This means
|
||||||
|
that the automatic grab that occurs when the user presses a button
|
||||||
|
will have owner_events = FALSE, so all events are redirected to the
|
||||||
|
grab window, even events that would normally go to other windows of the
|
||||||
|
window's owner.
|
||||||
|
|
||||||
|
* GtkColorSelectionDialog has now been moved into it's own set of files,
|
||||||
|
gtkcolorseldialog.c and gtkcolorseldialog.h.
|
||||||
|
|
||||||
|
* gtk_widget_shape_combine_mask() now keeps a reference count on the
|
||||||
|
mask pixmap that is passed in.
|
||||||
|
|
||||||
|
* Type system changes:
|
||||||
|
- GTK_TYPE_OBJECT is not a fundamental type anymore. Type checks of the
|
||||||
|
style (GTK_FUNDAMENTAL_TYPE (some_type) == GTK_TYPE_OBJECT)
|
||||||
|
will not work anymore. As a replacement, (GTK_TYPE_IS_OBJECT (some_type))
|
||||||
|
can be used now.
|
||||||
|
- The following types vanished: GTK_TYPE_ARGS, GTK_TYPE_CALLBACK,
|
||||||
|
GTK_TYPE_C_CALLBACK, GTK_TYPE_FOREIGN. The corresponding GtkArg
|
||||||
|
fields and field access macros are also gone.
|
||||||
|
- The following type aliases vanished: GTK_TYPE_FLAT_FIRST,
|
||||||
|
GTK_TYPE_FLAT_LAST, GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST.
|
||||||
|
- The type macros GTK_TYPE_MAKE() and GTK_TYPE_SEQNO() vanished, use of
|
||||||
|
GTK_FUNDAMENTAL_TYPE() is discouraged. Instead, the corresponding GType
|
||||||
|
API should be used: G_TYPE_FUNDAMENTAL(), G_TYPE_DERIVE_ID(),
|
||||||
|
G_TYPE_BRANCH_SEQNO(). Note that the GLib type system doesn't build new
|
||||||
|
type ids based on a global incremental sequential number anymore, but
|
||||||
|
numbers new type ids sequentially per fundamental type branch.
|
||||||
|
- The following type functions vanished/were replaced:
|
||||||
|
Old Function Replacement
|
||||||
|
gtk_type_query() - being investigated -
|
||||||
|
gtk_type_set_varargs_type() -
|
||||||
|
gtk_type_get_varargs_type() -
|
||||||
|
gtk_type_check_object_cast() g_type_check_instance_cast()
|
||||||
|
gtk_type_check_class_cast() g_type_check_class_cast()
|
||||||
|
gtk_type_describe_tree() -
|
||||||
|
gtk_type_describe_heritage() -
|
||||||
|
gtk_type_free() -
|
||||||
|
gtk_type_children_types() g_type_children()
|
||||||
|
gtk_type_set_chunk_alloc() GTypeInfo.n_preallocs
|
||||||
|
gtk_type_register_enum() g_enum_register_static()
|
||||||
|
gtk_type_register_flags() g_flags_register_static()
|
||||||
|
gtk_type_parent_class() g_type_parent() / g_type_class_peek_parent()
|
||||||
|
Use of g_type_class_ref() / g_type_class_unref() and g_type_class_peek()
|
||||||
|
is recommended over usage of gtk_type_class().
|
||||||
|
Use of g_type_register_static() / g_type_register_dynamic() is recommended
|
||||||
|
over usage of gtk_type_unique().
|
||||||
|
|
||||||
|
* Object system changes:
|
||||||
|
GtkObject derives from GObject, so is not the basic object type anymore.
|
||||||
|
This imposes the following source incompatible changes:
|
||||||
|
- GtkObject has no klass field anymore, an object's class can be retrived
|
||||||
|
with the object's coresponding GTK_<OBJECT>_GET_CLASS (object) macro.
|
||||||
|
- GtkObjectClass has no type field anymore, a class's type can be retrived
|
||||||
|
with the GTK_CLASS_TYPE (class) macro.
|
||||||
|
- GtkObjectClass does not introduce the finalize() and shutdown() methods
|
||||||
|
anymore. While shutdown() is intended for GTK+ internal use only, finalize()
|
||||||
|
is required by a variety of object implementations. GObjectClass.finalize
|
||||||
|
should be overriden here, e.g.:
|
||||||
|
static void gtk_label_finalize (GObject *gobject)
|
||||||
|
{
|
||||||
|
GtkLabel *label = GTK_LABEL (gobject);
|
||||||
|
|
||||||
|
G_OBJECT_CLASS (parent_class)->finalize (object);
|
||||||
|
}
|
||||||
|
static void gtk_label_class_init (GtkLabelClass *class)
|
||||||
|
{
|
||||||
|
GObjectClass *gobject_class = G_OBJECT_CLASS (class);
|
||||||
|
|
||||||
|
gobject_class->finalize = gtk_label_finalize;
|
||||||
|
}
|
||||||
|
|
||||||
|
- the GtkObject::destroy signal can now be emitted multiple times on an object.
|
||||||
|
::destroy implementations should check that make sure that they take this
|
||||||
|
into account, by checking to make sure that resources are there before
|
||||||
|
freeing them. For example:
|
||||||
|
if (object->foo_data)
|
||||||
|
{
|
||||||
|
g_free (object->foo_data);
|
||||||
|
object->foo_data = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
Also, ::destroy implementations have to release object references that
|
||||||
|
the object holds. Code in finalize implementations such as:
|
||||||
|
if (object->adjustment)
|
||||||
|
{
|
||||||
|
gtk_object_unref (object->adjustment);
|
||||||
|
object->adjustment = NULL;
|
||||||
|
}
|
||||||
|
have to be moved into the ::destroy implementations. The reason for doing
|
||||||
|
this is that all object reference cycles should be broken at destruction
|
||||||
|
time.
|
||||||
|
|
||||||
|
- Inserting and deleting text in GtkEntry though functions such
|
||||||
|
as gtk_entry_insert_text() now leave the cursor at its original
|
||||||
|
position in the text instead of moving it to the location of
|
||||||
|
the insertion/deletion.
|
||||||
|
|
||||||
|
- The ->label field of GtkFrame widgets has been removed. (As part of
|
||||||
|
a change to allow the arbitrary widgets in the title position.) The
|
||||||
|
text can now be retrieved with the new function gtk_frame_get_text().
|
||||||
|
|
||||||
|
- The 'font' and 'font_set' declarations in RC files are now ignored. There
|
||||||
|
is a new 'font_name' field that holds the string form of a Pango font
|
||||||
|
|
||||||
|
- A number of types in GDK have become subclasses of GObject. For the
|
||||||
|
most part, this should not break anyone's code. However, it's now
|
||||||
|
possible/encouraged to use g_object_ref()/g_object_unref() and other
|
||||||
|
GObject features with these GDK types. The converted types are:
|
||||||
|
GdkWindow, GdkDrawable, GdkPixmap, GdkImage, GdkGC, GdkDragContext,
|
||||||
|
GdkColormap
|
||||||
|
|
||||||
|
- All drawables including pixmaps used to have a type tag, the
|
||||||
|
GdkWindowType enumeration, which included GDK_WINDOW_PIXMAP.
|
||||||
|
GdkWindowType is now a property of GdkWindow _only_, and there is
|
||||||
|
no GDK_WINDOW_PIXMAP. You can use the GDK_IS_PIXMAP() macro to see
|
||||||
|
if you have a pixmap, if you need to know that.
|
||||||
|
|
||||||
|
- GtkStyle and GtkRcStyle are now subclasses of GObject as well. This
|
||||||
|
requires fairly extensive changes to theme engines quite badly, but
|
||||||
|
shouldn't affect most other code.
|
||||||
|
|
||||||
|
- xthickness/ythickness have moved from GtkStyleClass to GtkStyle
|
||||||
|
(from class to instance). This gives themes a bit more flexibility
|
||||||
|
and is generally more of the Right Thing. You can trivially fix
|
||||||
|
your code with s/style->klass->xthickness/style->xthickness/g and
|
||||||
|
same for ythickness.
|
||||||
|
|
||||||
|
- If you were using private GDK types, they have been rearranged
|
||||||
|
significantly. You shouldn't use private types. ;-)
|
||||||
|
|
||||||
|
- The visual for a widget, and also the default visual is now derived
|
||||||
|
from the colormap for the widget and the default colormap.
|
||||||
|
gtk_widget_set_visual(), gtk_widget_set_default_visual(), gtk_widget_push_visual()
|
||||||
|
and gtk_widget_pop_visual() now do nothing. Since the visual always
|
||||||
|
had to match that of the colormap, it is safe to simply delete
|
||||||
|
all references to these functions.
|
||||||
|
|
||||||
|
- A number of functions in GDK have been renamed for consistency and
|
||||||
|
clarity. #defines to provide backwards compatibility have been
|
||||||
|
included, but can be disabled by defineing GDK_DISABLE_COMPAT_H.
|
||||||
|
|
||||||
|
#define gdk_draw_pixmap gdk_draw_drawable
|
||||||
|
#define gdk_draw_bitmap gdk_draw_drawable
|
||||||
|
|
||||||
|
#define gdk_window_get_size gdk_drawable_get_size
|
||||||
|
#define gdk_window_get_type gdk_window_get_window_type
|
||||||
|
#define gdk_window_get_colormap gdk_drawable_get_colormap
|
||||||
|
#define gdk_window_set_colormap gdk_drawable_set_colormap
|
||||||
|
#define gdk_window_get_visual gdk_drawable_get_visual
|
||||||
|
|
||||||
|
#define gdk_window_ref gdk_drawable_ref
|
||||||
|
#define gdk_window_unref gdk_drawable_unref
|
||||||
|
#define gdk_bitmap_ref gdk_drawable_ref
|
||||||
|
#define gdk_bitmap_unref gdk_drawable_unref
|
||||||
|
#define gdk_pixmap_ref gdk_drawable_ref
|
||||||
|
#define gdk_pixmap_unref gdk_drawable_unref
|
||||||
|
|
||||||
|
#define gdk_gc_destroy gdk_gc_unref
|
||||||
|
#define gdk_image_destroy gdk_image_unref
|
||||||
|
#define gdk_cursor_destroy gdk_cursor_unref
|
||||||
|
|
||||||
|
(Note that g_object_ref() and g_object_unref() may be used for all of
|
||||||
|
the above.)
|
||||||
|
|
||||||
|
#define gdk_window_copy_area(drawable,gc,x,y,source_drawable,source_x,source_y,width,height) \
|
||||||
|
gdk_draw_pixmap(drawable,gc,source_drawable,source_x,source_y,x,y,width,height)
|
||||||
|
|
||||||
|
#define gdk_rgb_get_cmap gdk_rgb_get_colormap
|
||||||
|
|
||||||
|
- gdk_pixmap_foreign_new() no longer calls XFreePixmap() on the
|
||||||
|
pixmap when the GdkPixmap is finalized. This change corresponds
|
||||||
|
to the behavior of gdk_window_foreign_new(), and fixes a lot
|
||||||
|
of problems with code where the pixmap wasn't supposed to be
|
||||||
|
freed. If XFreePixmap() is needed, it can be done using the
|
||||||
|
destroy-notification facilities of g_object_set_data().
|
||||||
|
|
||||||
|
- GtkProgress/GtkProgressBar had serious problems in GTK 1.2.
|
||||||
|
|
||||||
|
- Only 3 or 4 functions are really needed for 95% of progress
|
||||||
|
interfaces; GtkProgress[Bar] had about 25 functions, and
|
||||||
|
didn't even include these 3 or 4.
|
||||||
|
- In activity mode, the API involves setting the adjustment
|
||||||
|
to any random value, just to have the side effect of
|
||||||
|
calling the progress bar update function - the adjustment
|
||||||
|
is totally ignored in activity mode
|
||||||
|
- You set the activity step as a pixel value, which means to
|
||||||
|
set the activity step you basically need to connect to
|
||||||
|
size_allocate
|
||||||
|
- There are ctree_set_expander_style()-functions, to randomly
|
||||||
|
change look-and-feel for no good reason
|
||||||
|
- The split between GtkProgress and GtkProgressBar makes no sense
|
||||||
|
to me whatsoever.
|
||||||
|
|
||||||
|
This was a big wart on GTK and made people waste lots of time,
|
||||||
|
both learning and using the interface.
|
||||||
|
|
||||||
|
So, we have added what we feel is the correct API, and marked all the
|
||||||
|
rest deprecated. However, the changes are 100% backward-compatible and
|
||||||
|
should break no existing code.
|
||||||
|
|
||||||
|
The following 5 functions are the new programming interface and you
|
||||||
|
should consider changing your code to use them:
|
||||||
|
|
||||||
|
void gtk_progress_bar_pulse (GtkProgressBar *pbar);
|
||||||
|
void gtk_progress_bar_set_text (GtkProgressBar *pbar,
|
||||||
|
const gchar *text);
|
||||||
|
void gtk_progress_bar_set_fraction (GtkProgressBar *pbar,
|
||||||
|
gfloat fraction);
|
||||||
|
|
||||||
|
void gtk_progress_bar_set_pulse_step (GtkProgressBar *pbar,
|
||||||
|
gfloat fraction);
|
||||||
|
void gtk_progress_bar_set_orientation (GtkProgressBar *pbar,
|
||||||
|
GtkProgressBarOrientation orientation);
|
||||||
|
|
||||||
|
|
191
docs/Makefile.am
@@ -1,176 +1,16 @@
|
|||||||
## Process this file with automake to produce Makefile.in
|
## Process this file with automake to produce Makefile.in
|
||||||
|
|
||||||
info_TEXINFOS = gdk.texi gtk.texi
|
SUBDIRS = tutorial faq reference
|
||||||
|
|
||||||
man_MANS = gtk-config.1
|
man_MANS = gtk-config.1
|
||||||
|
|
||||||
TUTORIAL_FR_FILES=html/gtk_tut_fr-1.html \
|
|
||||||
html/gtk_tut_fr-2.html \
|
|
||||||
html/gtk_tut_fr-3.html \
|
|
||||||
html/gtk_tut_fr-4.html \
|
|
||||||
html/gtk_tut_fr-5.html \
|
|
||||||
html/gtk_tut_fr-6.html \
|
|
||||||
html/gtk_tut_fr-7.html \
|
|
||||||
html/gtk_tut_fr-8.html \
|
|
||||||
html/gtk_tut_fr-9.html \
|
|
||||||
html/gtk_tut_fr-10.html \
|
|
||||||
html/gtk_tut_fr-11.html \
|
|
||||||
html/gtk_tut_fr-12.html \
|
|
||||||
html/gtk_tut_fr-13.html \
|
|
||||||
html/gtk_tut_fr-14.html \
|
|
||||||
html/gtk_tut_fr-15.html \
|
|
||||||
html/gtk_tut_fr-16.html \
|
|
||||||
html/gtk_tut_fr-17.html \
|
|
||||||
html/gtk_tut_fr-18.html \
|
|
||||||
html/gtk_tut_fr-19.html \
|
|
||||||
html/gtk_tut_fr-20.html \
|
|
||||||
html/gtk_tut_fr-21.html \
|
|
||||||
html/gtk_tut_fr-22.html \
|
|
||||||
html/gtk_tut_fr-23.html \
|
|
||||||
html/gtk_tut_fr-24.html \
|
|
||||||
html/gtk_tut_fr.html text/gtk_tut_fr.txt
|
|
||||||
|
|
||||||
TUTORIAL_FILES=text/gtk_tut.txt html/gtk_tut.html \
|
|
||||||
html/gtk_tut.html \
|
|
||||||
html/gtk_tut-1.html \
|
|
||||||
html/gtk_tut-2.html \
|
|
||||||
html/gtk_tut-3.html \
|
|
||||||
html/gtk_tut-4.html \
|
|
||||||
html/gtk_tut-5.html \
|
|
||||||
html/gtk_tut-6.html \
|
|
||||||
html/gtk_tut-7.html \
|
|
||||||
html/gtk_tut-8.html \
|
|
||||||
html/gtk_tut-9.html \
|
|
||||||
html/gtk_tut-10.html \
|
|
||||||
html/gtk_tut-11.html \
|
|
||||||
html/gtk_tut-12.html \
|
|
||||||
html/gtk_tut-13.html \
|
|
||||||
html/gtk_tut-14.html \
|
|
||||||
html/gtk_tut-15.html \
|
|
||||||
html/gtk_tut-16.html \
|
|
||||||
html/gtk_tut-17.html \
|
|
||||||
html/gtk_tut-18.html \
|
|
||||||
html/gtk_tut-19.html \
|
|
||||||
html/gtk_tut-20.html \
|
|
||||||
html/gtk_tut-21.html \
|
|
||||||
html/gtk_tut-22.html \
|
|
||||||
html/gtk_tut-23.html \
|
|
||||||
html/gtk_tut-24.html \
|
|
||||||
html/gtk_tut-25.html \
|
|
||||||
html/gtk_tut-26.html \
|
|
||||||
html/gtk_tut-27.html \
|
|
||||||
html/gtk_tut-28.html \
|
|
||||||
html/gtk_tut-29.html \
|
|
||||||
html/gtk_tut-30.html \
|
|
||||||
html/gtk_tut-31.html
|
|
||||||
|
|
||||||
TUTORIAL_IT_FILES= html/gtk_tut_it.html \
|
|
||||||
html/gtk_tut_it-1.html \
|
|
||||||
html/gtk_tut_it-2.html \
|
|
||||||
html/gtk_tut_it-3.html \
|
|
||||||
html/gtk_tut_it-4.html \
|
|
||||||
html/gtk_tut_it-5.html \
|
|
||||||
html/gtk_tut_it-6.html \
|
|
||||||
html/gtk_tut_it-7.html \
|
|
||||||
html/gtk_tut_it-8.html \
|
|
||||||
html/gtk_tut_it-9.html \
|
|
||||||
html/gtk_tut_it-10.html \
|
|
||||||
html/gtk_tut_it-11.html \
|
|
||||||
html/gtk_tut_it-12.html \
|
|
||||||
html/gtk_tut_it-13.html \
|
|
||||||
html/gtk_tut_it-14.html \
|
|
||||||
html/gtk_tut_it-15.html \
|
|
||||||
html/gtk_tut_it-16.html \
|
|
||||||
html/gtk_tut_it-17.html \
|
|
||||||
html/gtk_tut_it-18.html \
|
|
||||||
html/gtk_tut_it-19.html \
|
|
||||||
html/gtk_tut_it-20.html \
|
|
||||||
html/gtk_tut_it-21.html \
|
|
||||||
html/gtk_tut_it-22.html \
|
|
||||||
html/gtk_tut_it-23.html \
|
|
||||||
html/gtk_tut_it-24.html \
|
|
||||||
text/gtk_tut_it.txt
|
|
||||||
|
|
||||||
FAQ_FILES=html/gtkfaq.html \
|
|
||||||
html/gtkfaq-1.html \
|
|
||||||
html/gtkfaq-2.html \
|
|
||||||
html/gtkfaq-3.html \
|
|
||||||
html/gtkfaq-4.html \
|
|
||||||
html/gtkfaq-5.html \
|
|
||||||
html/gtkfaq-6.html \
|
|
||||||
html/gtkfaq-7.html \
|
|
||||||
text/gtkfaq.txt
|
|
||||||
|
|
||||||
html/gtk_tut_table.gif: gdk.html gtk.html
|
|
||||||
|
|
||||||
.PHONY: html htmldir faq tutorial tutorial_it tutorial_fr files
|
|
||||||
|
|
||||||
distdocs: gdk.html gtk.html faq tutorial tutorial_it tutorial_fr
|
|
||||||
|
|
||||||
htmldir:
|
|
||||||
(cd $(srcdir); mkdir -p html; cp gtk_tut*gif html)
|
|
||||||
|
|
||||||
textdir:
|
|
||||||
mkdir -p $(srcdir)/text
|
|
||||||
|
|
||||||
gdk.html gdk_toc.html: gdk.texi
|
|
||||||
(cd $(srcdir); texi2html gdk.texi)
|
|
||||||
|
|
||||||
gtk.html gtk_toc.html: gtk.texi
|
|
||||||
(cd $(srcdir); texi2html gtk.texi)
|
|
||||||
|
|
||||||
html/gdk.html html/gdk_toc.html: htmldir gdk.html gdk_toc.html
|
|
||||||
(cd $(srcdir); cp gdk.html gdk_toc.html html/)
|
|
||||||
|
|
||||||
html/gtk.html html/gtk_toc.html: htmldir gtk.html gtk_toc.html
|
|
||||||
(cd $(srcdir); cp gtk.html gtk_toc.html html/)
|
|
||||||
|
|
||||||
$(FAQ_FILES): faq
|
|
||||||
|
|
||||||
faq: htmldir textdir
|
|
||||||
(cd $(srcdir); sgml2html gtkfaq.sgml; \
|
|
||||||
perl gtkdocs_fix gtkfaq*html; \
|
|
||||||
mv gtkfaq*html html/; \
|
|
||||||
sgml2txt gtkfaq.sgml; \
|
|
||||||
mv gtkfaq.txt text/)
|
|
||||||
|
|
||||||
$(TUTORIAL_FILES): tutorial
|
|
||||||
|
|
||||||
$(TUTORIAL_FR_FILES): tutorial_fr
|
|
||||||
|
|
||||||
$(TUTORIAL_IT_FILES): tutorial_it
|
|
||||||
|
|
||||||
tutorial: htmldir textdir
|
|
||||||
(cd $(srcdir); sgml2html gtk_tut.sgml; \
|
|
||||||
perl gtkdocs_fix gtk_tut*html; \
|
|
||||||
mv gtk_tut*html html/; \
|
|
||||||
sgml2txt gtk_tut.sgml; \
|
|
||||||
mv gtk_tut.txt text/)
|
|
||||||
|
|
||||||
tutorial_it: htmldir textdir
|
|
||||||
(cd $(srcdir); sgml2html --language=it gtk_tut_it.sgml; \
|
|
||||||
perl gtkdocs_fix gtk_tut_it*html; \
|
|
||||||
mv gtk_tut_it*html html/; \
|
|
||||||
sgml2txt --language=it gtk_tut_it.sgml; \
|
|
||||||
mv gtk_tut_it.txt text/)
|
|
||||||
|
|
||||||
tutorial_fr: htmldir textdir
|
|
||||||
(cd $(srcdir); sgml2html --language=fr gtk_tut_fr.sgml; \
|
|
||||||
perl gtkdocs_fix gtk_tut_fr*html; \
|
|
||||||
mv gtk_tut_fr*html html/; \
|
|
||||||
sgml2txt --language=fr gtk_tut_fr.sgml; \
|
|
||||||
mv gtk_tut_fr.txt text/)
|
|
||||||
|
|
||||||
|
|
||||||
files:
|
|
||||||
@files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
|
|
||||||
echo $$p; \
|
|
||||||
done
|
|
||||||
|
|
||||||
EXTRA_DIST += \
|
EXTRA_DIST += \
|
||||||
Changes-1.2.txt \
|
Changes-1.2.txt \
|
||||||
|
Changes-2.0.txt \
|
||||||
debugging.txt \
|
debugging.txt \
|
||||||
developers.txt \
|
developers.txt \
|
||||||
|
dnd_internals.txt \
|
||||||
|
make-todo \
|
||||||
refcounting.txt \
|
refcounting.txt \
|
||||||
styles.txt \
|
styles.txt \
|
||||||
text_widget.txt \
|
text_widget.txt \
|
||||||
@@ -178,24 +18,5 @@ EXTRA_DIST += \
|
|||||||
generation.txt \
|
generation.txt \
|
||||||
gtk-config.txt \
|
gtk-config.txt \
|
||||||
gtk-config.1.in \
|
gtk-config.1.in \
|
||||||
texinfo.tex \
|
gtkdocs_fix
|
||||||
macros.texi \
|
|
||||||
gtkdocs_fix \
|
|
||||||
gtkfaq.sgml \
|
|
||||||
gtk_tut.sgml \
|
|
||||||
gtk_tut_it.sgml \
|
|
||||||
gtk_tut_fr.sgml \
|
|
||||||
gtk_tut_packbox1.gif \
|
|
||||||
gtk_tut_packbox2.gif \
|
|
||||||
html/gtk_tut_table.gif \
|
|
||||||
html/gtk_tut_packbox1.gif \
|
|
||||||
html/gtk_tut_packbox2.gif \
|
|
||||||
gtk_tut_table.gif \
|
|
||||||
html/gdk.html \
|
|
||||||
html/gdk_toc.html \
|
|
||||||
html/gtk.html \
|
|
||||||
html/gtk_toc.html \
|
|
||||||
$(TUTORIAL_FILES) \
|
|
||||||
$(TUTORIAL_FR_FILES) \
|
|
||||||
$(TUTORIAL_IT_FILES) \
|
|
||||||
$(FAQ_FILES)
|
|
||||||
|
103
docs/es/gtk.html
@@ -1,103 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.6">
|
|
||||||
<TITLE>GTK+ FAQ</TITLE>
|
|
||||||
<LINK HREF="gtkfaq-es-1.html" REL=next>
|
|
||||||
|
|
||||||
|
|
||||||
</HEAD>
|
|
||||||
<BODY BGCOLOR="#FFFFFF">
|
|
||||||
<A HREF="gtkfaq-es-1.html">Next</A>
|
|
||||||
Previous
|
|
||||||
Contents
|
|
||||||
<HR NOSHADE>
|
|
||||||
<H1>GTK+ FAQ</H1>
|
|
||||||
|
|
||||||
|
|
||||||
<H2>Nathan Froyd, Tony Gale, Shawn T. Amundson.</H2>Seis de Julio de 1998
|
|
||||||
<P><HR NOSHADE>
|
|
||||||
<EM>La intenci<63>n de este documento es dar respuesta a las preguntas
|
|
||||||
realizadas con m<>s frecuencia por parte de los programadores que utilizan GTK+ o simplemente por personas que desean utilizar GTK+. </EM>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="toc1">1.</A> <A HREF="gtkfaq-es-1.html">Informaci<EFBFBD>n General</A></H2>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.1">1.1 Autores</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.2">1.2 <20>Qu<51> es GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.3">1.3 <20>Qu<51> es el + en GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.4">1.4 <20>La G en GTK+ significa General, Gimp, o GNU?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.5">1.5 <20>D<EFBFBD>nde est<73> la documentaci<63>n para GTK?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.6">1.6 <20>Hay alguna lista de correo (o archivo de lista de correo) para GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.7">1.7 <20>La lista gtk-list no ha tenido tr<74>fico alguno por d<>as,</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.8">1.8 C<>mo conseguir ayuda con GTK+</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.9">1.9 C<>mo reportar errores en GTK+</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.10">1.10 <20>Qu<51> aplicaciones se han escrito con GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.11">1.11 Estoy buscando una aplicaci<63>n que escribir en GTK+. <20>Qu<51> tal un cliente IRC?</A>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="toc2">2.</A> <A HREF="gtkfaq-es-2.html">C<EFBFBD>mo encontrar, configurar, instalar y comprobar GTK+</A></H2>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI><A HREF="gtkfaq-es-2.html#ss2.1">2.1 <20>Qu<51> necesito para correr GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-2.html#ss2.2">2.2 <20>D<EFBFBD>nde puedo conseguir GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-2.html#ss2.3">2.3 <20>C<EFBFBD>mo configuro/compilo GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-2.html#ss2.4">2.4 Cuando compilo GTK+ obtengo un error como: <CODE>make: file `Makefile' line 456: Syntax error</CODE></A>
|
|
||||||
<LI><A HREF="gtkfaq-es-2.html#ss2.5">2.5 <20>He compilado e instalado GTK+, pero no puedo lograr que los programas se enlacen con <20>l!</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-2.html#ss2.6">2.6 Cuando compilo programas con GTK+, obtengo mensajes de error del compilador diciendo que no es capaz de encontrar <CODE>"glibconfig.h"</CODE>.</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-2.html#ss2.7">2.7 Cuando instalo El GIMP, configure reporta que no puede encontrar GTK.</A>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="toc3">3.</A> <A HREF="gtkfaq-es-3.html">Desarrollo de GTK+</A></H2>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI><A HREF="gtkfaq-es-3.html#ss3.1">3.1 <20>Qu<51> es esta cosa CVS de la cual todo el mundo habla, y c<>mo puedo acceder a ella?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-3.html#ss3.2">3.2 <20>C<EFBFBD>mo puedo contribu<62>r a GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-3.html#ss3.3">3.3 <20>C<EFBFBD>mo averiguo si mi parche fue aplicado, y si no, por qu<71> no?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-3.html#ss3.4">3.4 <20>Cu<43>l es la pol<6F>tica sobre la incorporaci<63>n de nuevos <EM>widgets</EM> en la librer<65>a?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-3.html#ss3.5">3.5 <20>Hay alguien trabajando en atamientos para otros lenguajes distintos a C?</A>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="toc4">4.</A> <A HREF="gtkfaq-es-4.html">Desarrollo con GTK+</A></H2>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.1">4.1 <20>C<EFBFBD>mo empiezo?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.2">4.2 <20>Qu<51> <EM>widgets</EM> existen en GTK?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.3">4.3 <20>GTK+ es seguro ante m<>ltiples hilos?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.4">4.4 <20>C<EFBFBD>mo puedo prevenir el redibujar y reacomodar tama<6D>os mientras cambio m<>ltiples <EM>widgets</EM>?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.5">4.5 <20>C<EFBFBD>mo atrapo un evento de doble tecleo (en un <EM>widget</EM> de lista, por ejemplo)?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.6">4.6 <20>C<EFBFBD>mo puedo averiguar cu<63>l es la selecci<63>n de un GtkList?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.7">4.7 <20>Acaso es posible desplegar un texto que se recorte para que quepa dentro del lugar que tenga asignado?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.8">4.8 <20>Por qu<71> el contenido de un bot<6F>n no se mueve al presionar el bot<6F>n? Aqu<71> les env<6E>o un parche para que funcione de esa forma...</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.9">4.9 <20>C<EFBFBD>mo puedo definir una l<>nea de separaci<63>n como en un men<65>?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.10">4.10 <20>C<EFBFBD>mo puedo darle justificaci<63>n a la derecha a un men<65>, como Help, cuando utilizo MenuFactory?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.11">4.11 <20>C<EFBFBD>mo hago mi ventana modal? / <20>C<EFBFBD>mo hago una s<>la ventana activa?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.12">4.12 <20>Por qu<71> mi <EM>widget</EM> (ej. progressbar) no se actualiza?</A>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="toc5">5.</A> <A HREF="gtkfaq-es-5.html">Acerca de gdk</A></H2>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI><A HREF="gtkfaq-es-5.html#ss5.1">5.1 <20>Qu<51> es gdk?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-5.html#ss5.2">5.2 <20>C<EFBFBD>mo utilizo la asignaci<63>n de colores?</A>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="toc6">6.</A> <A HREF="gtkfaq-es-6.html">Acerca de glib</A></H2>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI><A HREF="gtkfaq-es-6.html#ss6.1">6.1 <20>Qu<51> es glib?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-6.html#ss6.2">6.2 <20>Por qu<71> utilizar g_print, g_malloc, g_strdup y funciones compa<70>eras de glib?</A>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="toc7">7.</A> <A HREF="gtkfaq-es-7.html">Contribuciones al GTK+ FAQ, Mantenedores y Copyright</A></H2>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI><A HREF="gtkfaq-es-7.html#ss7.1">7.1 Nota del Traductor</A>
|
|
||||||
</UL>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<A HREF="gtkfaq-es-1.html">Next</A>
|
|
||||||
Previous
|
|
||||||
Contents
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
@@ -1,192 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.6">
|
|
||||||
<TITLE>GTK+ FAQ: Informaci<63>n General</TITLE>
|
|
||||||
<LINK HREF="gtkfaq-es-2.html" REL=next>
|
|
||||||
|
|
||||||
<LINK HREF="gtkfaq-es.html#toc1" REL=contents>
|
|
||||||
</HEAD>
|
|
||||||
<BODY BGCOLOR="#FFFFFF">
|
|
||||||
<A HREF="gtkfaq-es-2.html">Next</A>
|
|
||||||
Previous
|
|
||||||
<A HREF="gtkfaq-es.html#toc1">Contents</A>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<H2><A NAME="s1">1. Informaci<63>n General</A></H2>
|
|
||||||
|
|
||||||
<H2><A NAME="ss1.1">1.1 Autores</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Los autores de GTK+ son:
|
|
||||||
<P>
|
|
||||||
<UL>
|
|
||||||
<LI>Peter Mattis (petm@xcf.berkeley.edu)</LI>
|
|
||||||
<LI>Spencer Kimball (spencer@xcf.berkeley.edu)</LI>
|
|
||||||
<LI>Josh MacDonald (jmacd@xcf.berkeley.edu)</LI>
|
|
||||||
</UL>
|
|
||||||
|
|
||||||
GTK+ se ditribuye bajo la licencia de Librer<65>a P<>blica General de GNU
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss1.2">1.2 <20>Qu<51> es GTK+?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>GTK+ es un peque<75>o y eficiente conjunto de <EM>widgets</EM>, dise<73>ados
|
|
||||||
con un aspecto y sentir general a Motif. Contiene <EM>widgets</EM> com<6F>nes
|
|
||||||
y alg<6C>nos <EM>widgets</EM> m<>s complejos como una selecci<63>n de
|
|
||||||
archivos, y <EM>widgets</EM> de selecci<63>n de colores.
|
|
||||||
<P>GTK+ proporciona algunas caracter<65>sticas <20>nicas. (No tengo conocimiento
|
|
||||||
de otra librer<65>a de <EM>widge>
|
|
||||||
<HR><H3>Transfer interrupted!</H3>
|
|
||||||
enos).
|
|
||||||
Por ejemplo, un bot<6F>n no contiene una etiqueta, contiene un <EM>widget</EM>
|
|
||||||
hijo, que en muchas instancias ser<65> una etiqueta. Sin embargo, el
|
|
||||||
<EM>widget</EM> hijo tambi<62>n puede ser un <EM>pixmap</EM> (mapa de pixels),
|
|
||||||
imag<EFBFBD>n o cualquier combinaci<63>n posible que desee el programador. Toda la
|
|
||||||
librer<EFBFBD>a es as<61> de flexible.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss1.3">1.3 <20>Qu<51> es el + en GTK+?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Peter Mattis inform<72> a la lista de correo gtk:
|
|
||||||
<BLOCKQUOTE>
|
|
||||||
"Escrib<69> originalmente gtk el cual inclu<6C>a tres librer<65>as,
|
|
||||||
libglib, libgdk y libgtk. Era caracterizado por una jerarqu<71>a de
|
|
||||||
<EM>widget</EM> plana. O sea, no pod<6F>as derivar un nuevo
|
|
||||||
<EM>widget</EM> de uno ya existente. Conten<65>a un mecanismo de
|
|
||||||
<EM>callback</EM> (llamada) m<>s est<73>ndar en lugar del mecanismo
|
|
||||||
de se<73>ales ahora presente en gtk+. El + fue agregado para distinguir
|
|
||||||
entre la versi<73>n original de gtk y la nueva versi<73>n. Pueden pensar
|
|
||||||
en ello como una ampliaci<63>n al gtk original que agrega caracter<65>sticas
|
|
||||||
orientadas o objetos."
|
|
||||||
</BLOCKQUOTE>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss1.4">1.4 <20>La G en GTK+ significa General, Gimp, o GNU?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Peter Mattis inform<72> a la lista de correo gtk:
|
|
||||||
<BLOCKQUOTE>
|
|
||||||
"Pienso que la <20>ltima vez que Spencer y yo hablamos al respecto nos
|
|
||||||
decidimos por GTK = Gimp ToolKit. Pero no estoy seguro. Sin embargo,
|
|
||||||
definitivamente no es GNU."
|
|
||||||
</BLOCKQUOTE>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss1.5">1.5 <20>D<EFBFBD>nde est<73> la documentaci<63>n para GTK?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>
|
|
||||||
En el directorio doc/ de la distribuci<63>n de GTK+ encontrar<61>s
|
|
||||||
el material de referencia para GTK y GDK, este FAQ y el tutor de GTK.
|
|
||||||
<P>Adicionalmente, puedes encontrar enlaces a versiones HTML de estos
|
|
||||||
documentos al ir a
|
|
||||||
<A HREF="http://www.gtk.org/">http://www.gtk.org/</A>.
|
|
||||||
<P>El Tutor y el FAQ tambi<62>n se pueden encontrar en
|
|
||||||
<A HREF="http://www.geocities.com/ResearchTriangle/Lab/4299/">http://www.geocities.com/ResearchTriangle/Lab/4299/</A>.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss1.6">1.6 <20>Hay alguna lista de correo (o archivo de lista de correo) para GTK+?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Hay dos listas de correo:
|
|
||||||
<UL>
|
|
||||||
<LI>Una lista de correo para la discusi<73>n del desarrollo de aplicaciones
|
|
||||||
basadas en GTK se hospeda en gtk-app-devel-list@redhat.com. Para suscribirse
|
|
||||||
env<EFBFBD>e un correo electr<74>nico a
|
|
||||||
<A HREF="mailto:gtk-app-devel-list-request@redhat.com">gtk-app-devel-list-request@redhat.com</A> con <EM>subscribe</EM> en el
|
|
||||||
campo <B>subject</B>.
|
|
||||||
<P>
|
|
||||||
</LI>
|
|
||||||
<LI>Una lista de correo para la discusi<73>n del desarrollo de GTK se hospeda
|
|
||||||
en gtk-list@redhat.com. Para suscribirse env<6E>e un correo electr<74>nico
|
|
||||||
a
|
|
||||||
<A HREF="mailto:gtk-list-request@redhat.com">gtk-list-request@redhat.com</A> con <EM>subscribe</EM>
|
|
||||||
en el campo <B>subject</B>.
|
|
||||||
<P>Un archivo escudri<72>able de la lista de correo puede ser encontrado en
|
|
||||||
<A HREF="http://archive.redhat.com/gtk-list">http://archive.redhat.com/gtk-list</A></LI>
|
|
||||||
</UL>
|
|
||||||
<H2><A NAME="ss1.7">1.7 <20>La lista gtk-list no ha tenido tr<74>fico alguno por d<>as,</A>
|
|
||||||
est<EFBFBD> muerta?</H2>
|
|
||||||
|
|
||||||
<P>No, todos est<73>n ocupados codificando.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss1.8">1.8 C<>mo conseguir ayuda con GTK+</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Primero, aseg<65>rate que tu pregunta no est<73> respondida en la
|
|
||||||
documentaci<EFBFBD>n, este FAQ o el tutor. <20>Hecho? <20>Est<73>s seguro de que
|
|
||||||
lo has hecho, verdad? En ese caso, el mejor lugar para hacer preguntas es
|
|
||||||
la lista de correo de GTK+.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss1.9">1.9 C<>mo reportar errores en GTK+</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Los reportes de errores se deben enviar a la lista de correo de GTK+.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss1.10">1.10 <20>Qu<51> aplicaciones se han escrito con GTK+?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Algunas aplicaciones que utilizan GTK+ son:
|
|
||||||
<UL>
|
|
||||||
<LI>GIMP (
|
|
||||||
<A HREF="http://www.XCF.Berkeley.EDU/~gimp/">http://www.XCF.Berkeley.EDU/~gimp/</A> ),
|
|
||||||
un programa de manipulaci<63>n de im<69>genes</LI>
|
|
||||||
<LI>Gsumi (
|
|
||||||
<A HREF="http://www.msc.cornell.edu/~otaylor/gsumi/gsumi.html">http://www.msc.cornell.edu/~otaylor/gsumi/gsumi.html</A>),
|
|
||||||
un divertido programa para rayar en blanco y negro con soporte para
|
|
||||||
XInput.</LI>
|
|
||||||
<LI>GUBI (
|
|
||||||
<A HREF="http://www.SoftHome.net/pub/users/timj/gubi/index.htm">http://www.SoftHome.net/pub/users/timj/gubi/index.htm</A>),
|
|
||||||
un constructor de interface de usuario</LI>
|
|
||||||
<LI>Gzilla (
|
|
||||||
<A HREF="http://www.levien.com/gzilla/">http://www.levien.com/gzilla/</A>),
|
|
||||||
un navegador del web</LI>
|
|
||||||
<LI>SANE (
|
|
||||||
<A HREF="http://www.azstarnet.com/~axplinux/sane/">http://www.azstarnet.com/~axplinux/sane/</A> ),
|
|
||||||
una interface universal para <EM>scanner</EM></LI>
|
|
||||||
<LI>XQF (
|
|
||||||
<A HREF="http://www.botik.ru/~roma/quake/">http://www.botik.ru/~roma/quake/</A>),
|
|
||||||
un lanzador y navegador de servidores de QuakeWorld/Quake2</LI>
|
|
||||||
<LI>ElectricEyes (
|
|
||||||
<A HREF="http://www.labs.redhat.com/ee.shtml">http://www.labs.redhat.com/ee.shtml</A>),
|
|
||||||
un visor de im<69>genes que se dirige a ser un reemplazo libre de xv</LI>
|
|
||||||
<LI>GPK - the General Proxy Kit (
|
|
||||||
<A HREF="http://www.humanfactor.com/gpk/">http://www.humanfactor.com/gpk/</A>),
|
|
||||||
una librer<65>a agregable que permite accesso seguro a GTK+
|
|
||||||
ante m<>ltiples hilos</LI>
|
|
||||||
<LI>GCK - the General Convenience Kit (
|
|
||||||
<A HREF="http://www.ii.uib.no/~tomb/gck.html">http://www.ii.uib.no/~tomb/gck.html</A>),
|
|
||||||
funciones miscel<65>neas cuya intenci<63>n es facilitar el manejo de
|
|
||||||
colores, construcci<63>n de IU (interfaces de usuario), operaciones
|
|
||||||
vectoriales, y funciones matem<65>ticas</LI>
|
|
||||||
<LI>GDK Imlib (
|
|
||||||
<A HREF="http://www.labs.redhat.com/imlib/">http://www.labs.redhat.com/imlib/</A>),
|
|
||||||
una librer<65>a de manipulaci<63>n y carga r<>pida de im<69>genes para
|
|
||||||
GDK </LI>
|
|
||||||
</UL>
|
|
||||||
<P>Adicionalmente a lo de arriba, el proyecto GNOME
|
|
||||||
(
|
|
||||||
<A HREF="http://www.gnome.org">http://www.gnome.org</A>)
|
|
||||||
utiliza GTK+ para constru<72>r un escritorio libre para Linux. Muchos m<>s
|
|
||||||
programas pueden ser encontrados ah<61>.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss1.11">1.11 Estoy buscando una aplicaci<63>n que escribir en GTK+. <20>Qu<51> tal un cliente IRC?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>
|
|
||||||
<P>Pregunte en gtk-list para sugerencias. Actualmente hay por lo menos cuatro
|
|
||||||
clientes IRC endesarrollo.
|
|
||||||
<P>
|
|
||||||
<UL>
|
|
||||||
<LI>girc. (Inclu<6C>do con GNOME)</LI>
|
|
||||||
<LI>Bezerk (
|
|
||||||
<A HREF="http://www.gtk.org/~trog/">http://www.gtk.org/~trog/</A>)</LI>
|
|
||||||
<LI>gsirc. (<28>Localizaci<63>n?)</LI>
|
|
||||||
<LI>Gnirc. (
|
|
||||||
<A HREF="http://www.imaginet.fr/~dramboz/gnirc">http://www.imaginet.fr/~dramboz/gnirc</A>)</LI>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<P>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<A HREF="gtkfaq-es-2.html">Next</A>
|
|
||||||
Previous
|
|
||||||
<A HREF="gtkfaq-es.html#toc1">Contents</A>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
@@ -1,195 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.6">
|
|
||||||
<TITLE>GTK+ FAQ: C<>mo encontrar, configurar, instalar y comprobar GTK+</TITLE>
|
|
||||||
<LINK HREF="gtkfaq-es-3.html" REL=next>
|
|
||||||
<LINK HREF="gtkfaq-es-1.html" REL=previous>
|
|
||||||
<LINK HREF="gtkfaq-es.html#toc2" REL=contents>
|
|
||||||
</HEAD>
|
|
||||||
<BODY BGCOLOR="#FFFFFF">
|
|
||||||
<A HREF="gtkfaq-es-3.html">Next</A>
|
|
||||||
<A HREF="gtkfaq-es-1.html">Previous</A>
|
|
||||||
<A HREF="gtkfaq-es.html#toc2">Contents</A>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<H2><A NAME="s2">2. C<>mo encontrar, configurar, instalar y comprobar GTK+</A></H2>
|
|
||||||
|
|
||||||
<H2><A NAME="ss2.1">2.1 <20>Qu<51> necesito para correr GTK+?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Para compilar GTK+, todo lo que necesita es un compilador de C (gcc) y
|
|
||||||
el Sistema X Windows y librer<65>as asociadas en su sistema.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss2.2">2.2 <20>D<EFBFBD>nde puedo conseguir GTK+?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>El sitio can<61>nico es:
|
|
||||||
<PRE>
|
|
||||||
ftp://ftp.gtk.org/pub/gtk
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
Por supuesto, cualquier espejo de ftp.gtk.org debe tener las <20>ltimas
|
|
||||||
versiones tambi<62>n.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss2.3">2.3 <20>C<EFBFBD>mo configuro/compilo GTK+?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Por lo general, todo lo que necesita es emititir los comandos:
|
|
||||||
<PRE>
|
|
||||||
./configure
|
|
||||||
make
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
en el directorio gtk+-version/.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss2.4">2.4 Cuando compilo GTK+ obtengo un error como: <CODE>make: file `Makefile' line 456: Syntax error</CODE></A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Aseg<EFBFBD>rese de que utiliza GNU make (verifique con <CODE>make -v</CODE>). Hay
|
|
||||||
varias versiones extra<72>as y maravillosas de make por ah<61>, y no todas
|
|
||||||
manejan los <EM>Makefiles</EM> generados autom<6F>ticamente.
|
|
||||||
<P>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss2.5">2.5 <20>He compilado e instalado GTK+, pero no puedo lograr que los programas se enlacen con <20>l!</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Este problema se encuentra com<6F>nmente cuando las librer<65>as GTK+ no pueden
|
|
||||||
ser localizadas o tienen la versi<73>n incorrecta. Generalmente, el compilador
|
|
||||||
se quejar<61> de un 'unresolved symbol' (s<>mbolo no resuelto). Hay dos cosas
|
|
||||||
que necesita verificar:
|
|
||||||
<P>
|
|
||||||
<UL>
|
|
||||||
<LI>Aseg<EFBFBD>rese de que las librer<65>as pueden ser encontradas. Usted desea editar
|
|
||||||
/etc/ld.so.conf para inclu<6C>r los directorios que contienen las librer<65>as
|
|
||||||
GTK, de manera que luzca como:
|
|
||||||
<PRE>
|
|
||||||
/usr/X11R6/lib
|
|
||||||
/usr/local/lib
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
Luego necesita correr /sbin/ldconfig como root. Puede encontrar que directorio
|
|
||||||
utiliza GTK al ejecutar
|
|
||||||
<PRE>
|
|
||||||
gtk-config --libs
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
|
|
||||||
Si su sitema no utiliza ld.so para encontrar librer<65>as (como Solaris),
|
|
||||||
entonces tendr<64> que utilizar la variable de ambiente LD_LIBRARY_PATH
|
|
||||||
(o compilar el camino en su programa, lo cual no voy a cubrir aqu<71>). As<41>
|
|
||||||
que, con un shell tipo Bourne usted puede hacer (si sus librer<65>as GTK
|
|
||||||
est<EFBFBD>n en /usr/local/lib):
|
|
||||||
<PRE>
|
|
||||||
export LD_LIBRARY_PATH=/usr/local/lib
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
y en un csh, usted puede hacer:
|
|
||||||
<PRE>
|
|
||||||
setenv LD_LIBRARY_PATH /usr/local/lib
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
</LI>
|
|
||||||
<LI>Aseg<EFBFBD>rese de que el enlazador est<73> ha encontrado el conjunto correcto de
|
|
||||||
librer<EFBFBD>as. Si tiene una distribuci<63>n de Linux que instala GTK+ (ej.
|
|
||||||
RedHat 5.0) entonces esta versi<73>n anterior puede ser utilizada. Ahora
|
|
||||||
(asumiendo que tiene un sistema RedHat), emita el comando
|
|
||||||
<PRE>
|
|
||||||
rpm -e gtk gtk-devel
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
Tambi<EFBFBD>n puede querer remover los paquetes que dependen de gtk (rpm le
|
|
||||||
dir<EFBFBD> cu<63>les son). Si no tiene un sistema Linux RedHat, verifique
|
|
||||||
para estar seguro que ni
|
|
||||||
<PRE>
|
|
||||||
/usr/lib
|
|
||||||
</PRE>
|
|
||||||
ni
|
|
||||||
<PRE>
|
|
||||||
/usr/local/lib
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
contengan alguna de las librer<65>as libgtk, libgdk, libglib, or libgck.
|
|
||||||
Si existen, elim<69>nelas (y cualquier archivo <EM>include</EM>, como
|
|
||||||
/usr/include/gtk y /usr/include/gdk) y reinstale gtk+.</LI>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss2.6">2.6 Cuando compilo programas con GTK+, obtengo mensajes de error del compilador diciendo que no es capaz de encontrar <CODE>"glibconfig.h"</CODE>.</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>El archivo de encabezado "glibconfig.h" se movi<76> al directorio
|
|
||||||
$exec_prefix/lib/glib/include/. $exec_prefix es el directorio que fue
|
|
||||||
especificado al dar la bandera --exec-prefix a ./configure cuando se
|
|
||||||
compil<EFBFBD> GTK+. Va por omisi<73>n a $prefix, (especificado con --prefix),
|
|
||||||
que en su lugar va por omisi<73>n a /usr/local/.
|
|
||||||
<P><EFBFBD>sto se hizo asi porque "glibconfig.h" incluye informaci<63>n
|
|
||||||
dependiente de la arquitectura, y el resto de los archivos <EM>include</EM>
|
|
||||||
se colocan en $prefix/include, el cual puede ser compartido entre distintas
|
|
||||||
arquitecturas.
|
|
||||||
<P>GTK+ incluye un gui<75>n para el int<6E>rprete de comandos,
|
|
||||||
<CODE>gtk-config</CODE>, el cual hace f<>cil
|
|
||||||
encontrar los caminos correctos de inclusi<73>n. El tutor de GTK+ incluye
|
|
||||||
un ejemplo de como utilizar <CODE>gtk-config</CODE> para una compilaci<63>n simple
|
|
||||||
desde la l<>nea de comandos. Para informaci<63>n sobre configuraciones m<>s
|
|
||||||
complicadas, vea el archivo docs/gtk-config.txt en la distribuci<63>n de GTK+.
|
|
||||||
<P>Si est<73> intentando compilar un programa viejo, puede bordear el problema
|
|
||||||
al configurarlo con una l<>nea de comando como:
|
|
||||||
<P>
|
|
||||||
<BLOCKQUOTE><CODE>
|
|
||||||
<PRE>
|
|
||||||
CPPFLAGS="-I/usr/local/include/glib/include" ./configure
|
|
||||||
</PRE>
|
|
||||||
</CODE></BLOCKQUOTE>
|
|
||||||
<P>para int<6E>rpretes de comandos compatibles con Bourne como bash, o para
|
|
||||||
variantes csh:
|
|
||||||
<P>
|
|
||||||
<BLOCKQUOTE><CODE>
|
|
||||||
<PRE>
|
|
||||||
setenv CPPFLAGS "-I/usr/local/include/glib/include"
|
|
||||||
./configure
|
|
||||||
</PRE>
|
|
||||||
</CODE></BLOCKQUOTE>
|
|
||||||
<P>(Sustituya el valor apropiado de $exec_prefix para /usr/local.)
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss2.7">2.7 Cuando instalo El GIMP, configure reporta que no puede encontrar GTK.</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Hay varias razones com<6F>nes para esto:
|
|
||||||
<UL>
|
|
||||||
<LI>Usted tiene una versi<73>n vieja de GTK instalada en alg<6C>n lugar.
|
|
||||||
RedHat 5.0, por ejemplo, instala una copia anterior de GTK que no funcinar<61>
|
|
||||||
con las <20>ltimas veriones de GIMP. Debe eliminar esta copia vieja, pero
|
|
||||||
observe que en el caso de RedHat 5.0 esto da<64>ar<61> las aplicaciones
|
|
||||||
<CODE>control-panel</CODE>.
|
|
||||||
<P>
|
|
||||||
</LI>
|
|
||||||
<LI><CODE>gtk-config</CODE> (u otro componente de GTK) no se encuentra en el camino
|
|
||||||
(<EM>path</EM>),
|
|
||||||
o hay una versi<73>n vieja en su sistema. Teclee:
|
|
||||||
<PRE>
|
|
||||||
gtk-config --version
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
para verificar ambos casos. <20>sto debe devolver un valor de por lo menos
|
|
||||||
0.99.8 para que las cosas funcionen correctamente con GIMP 0.99.23. Si
|
|
||||||
devuelve un valor distinto a lo que usted espera, entonces tiene una versi<73>n
|
|
||||||
vieja de GTK en su sistema.
|
|
||||||
<P>
|
|
||||||
</LI>
|
|
||||||
<LI>El gui<75>n ./configure no puede encontrar las librer<65>as GTK. Como
|
|
||||||
./configure compila varios programas de prueba, necesita poder encontrar las
|
|
||||||
librer<EFBFBD>as GTK. Revise la pregunta anterior para obtener m<>s ayuda al
|
|
||||||
respecto.</LI>
|
|
||||||
</UL>
|
|
||||||
<P>Si nada de lo anterior ayuda, entonces revise config.log, el cual es
|
|
||||||
generado por ./configure cuando corre. Al final estar<61> la <20>ltima
|
|
||||||
acci<EFBFBD>n tomada antes de fallar. Si es una secci<63>n de c<>digo fuente,
|
|
||||||
copie el c<>digo fuente a un archivo y compilelo con la l<>nea
|
|
||||||
j<EFBFBD>stamente arriba de <20>l en config.log. Si la compilaci<63>n tiene
|
|
||||||
<EFBFBD>xito, intente ejecutarlo.
|
|
||||||
<P>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<A HREF="gtkfaq-es-3.html">Next</A>
|
|
||||||
<A HREF="gtkfaq-es-1.html">Previous</A>
|
|
||||||
<A HREF="gtkfaq-es.html#toc2">Contents</A>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
@@ -1,198 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.6">
|
|
||||||
<TITLE>GTK+ FAQ: Desarrollo de GTK+</TITLE>
|
|
||||||
<LINK HREF="gtkfaq-es-4.html" REL=next>
|
|
||||||
<LINK HREF="gtkfaq-es-2.html" REL=previous>
|
|
||||||
<LINK HREF="gtkfaq-es.html#toc3" REL=contents>
|
|
||||||
</HEAD>
|
|
||||||
<BODY BGCOLOR="#FFFFFF">
|
|
||||||
<A HREF="gtkfaq-es-4.html">Next</A>
|
|
||||||
<A HREF="gtkfaq-es-2.html">Previous</A>
|
|
||||||
<A HREF="gtkfaq-es.html#toc3">Contents</A>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<H2><A NAME="s3">3. Desarrollo de GTK+</A></H2>
|
|
||||||
|
|
||||||
<H2><A NAME="ss3.1">3.1 <20>Qu<51> es esta cosa CVS de la cual todo el mundo habla, y c<>mo puedo acceder a ella?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>CVS es el Concurrent Version System (Sistema de Versi<73>n Concurrente) y es
|
|
||||||
un medio muy popular de control de versi<73>n para proyectos de software.
|
|
||||||
Est<EFBFBD> dise<73>ado para permitir que m<>ltiples autores puedan operar de
|
|
||||||
manera simult<6C>nea en el mismo <20>rbol fuente. Este <20>rbol fuente es
|
|
||||||
mantenido centralizadamente, pero cada desarrollador tiene una r<>plica local
|
|
||||||
de este repositorio en el cual hacen sus cambios.
|
|
||||||
<P>Los desarrolladores de GTK+ utilizan un repositorio CVS para almacenar la
|
|
||||||
copia maestra de la actual versi<73>n en desarrollo de GTK+. Como tal,
|
|
||||||
la gente que desea contribu<62>r con parches a GTK+ deben generarlos para la
|
|
||||||
versi<EFBFBD>n del CVS. La gente normal debe utilizar los paquetes liberados.
|
|
||||||
<P>El conjunto de herramientas CVS est<73> disponible como paquetes RPM en los
|
|
||||||
sitios usuales de RedHat. La <20>ltima versi<73>n est<73> disponible en
|
|
||||||
<A HREF="http://download.cyclic.com/pub/"><http://download.cyclic.com/pub/></A><P>Cualquiera puede bajar la <20>ltima versi<73>n CVS de GTK+ utilizando
|
|
||||||
acceso an<61>nimo con los siguientes pasos:
|
|
||||||
<UL>
|
|
||||||
<LI> En un descendiente del int<6E>rprete de comandos bourne (ej. bash)
|
|
||||||
teclee:
|
|
||||||
<PRE>
|
|
||||||
export CVSROOT=':pserver:anonymous@anoncvs.gimp.org:/debian/home/gnomecvs'
|
|
||||||
</PRE>
|
|
||||||
</LI>
|
|
||||||
<LI>Luego, la primera vez que el <20>rbol fuente se retira, se necesita
|
|
||||||
un <EM>login</EM> cvs.
|
|
||||||
<PRE>
|
|
||||||
cvs login
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
<EFBFBD>sto har<61> que se le solicite una clave de acceso. No hay clave de
|
|
||||||
acceso para cvs.gimp.org, as<61> que solo ingrese un retorno de carro.</LI>
|
|
||||||
<LI>Para conseguir el <20>rbol y colocarlo en un subdirectorio de su
|
|
||||||
directorio de trabajo actual, emita el comando:
|
|
||||||
<PRE>
|
|
||||||
cvs -z3 get gtk+
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
|
|
||||||
Observe que con el <20>rbol GTK+ 1.1, glib se ha movido a un m<>dulo CVS
|
|
||||||
separado, de manera que si no tiene glib instalado necesitar<61> conseguirlo
|
|
||||||
igualmente:
|
|
||||||
<PRE>
|
|
||||||
cvs -z3 get glib
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
</LI>
|
|
||||||
</UL>
|
|
||||||
<H2><A NAME="ss3.2">3.2 <20>C<EFBFBD>mo puedo contribu<62>r a GTK+?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Es simple. Si algo no funciona en un programa como usted piensa que deber<65>a,
|
|
||||||
revise la documentaci<63>n para asegurarse de que no ha pasado algo por alto.
|
|
||||||
Si es un verdadero error o caracter<65>stica perdida, rastr<74>elo en el
|
|
||||||
fuente de GTK+, c<>mbielo, y entonces genere un parche en la forma de un
|
|
||||||
'diff de contexto'. Esto puede hacerse utilizando un comando como
|
|
||||||
<CODE>diff -ru <oldfile> <newfile></CODE>. Entonces env<6E>e el archivo
|
|
||||||
de parche a:
|
|
||||||
<PRE>
|
|
||||||
ftp://ftp.gtk.org/incoming
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
junto a un archivo README. <20>Aseg<65>rese de seguir las convenciones de
|
|
||||||
asignaci<EFBFBD>n de nombres o su parche ser<65> borrado! Los archivos deben ser
|
|
||||||
de esta forma:
|
|
||||||
<PRE>
|
|
||||||
gtk-<username>-<date yymmdd-n>.patch.gz
|
|
||||||
gtk-<username>-<date yymmdd-n>.patch.README
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
La "n" en la fecha indica un n<>mero <20>nico (empezando de 0)
|
|
||||||
de parches que subi<62> ese d<>a. Debe ser 0, a menos que env<6E>e m<>s de
|
|
||||||
un parche en el mismo d<>a.
|
|
||||||
<P>Example:
|
|
||||||
<PRE>
|
|
||||||
gtk-gale-982701-0.patch.gz
|
|
||||||
gtk-gale-982701-0.patch.README
|
|
||||||
</PRE>
|
|
||||||
|
|
||||||
Una vez que usted env<6E>a <EM>lo que sea</EM>, env<6E>e el README a
|
|
||||||
ftp-admin@gtk.org
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss3.3">3.3 <20>C<EFBFBD>mo averiguo si mi parche fue aplicado, y si no, por qu<71> no?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Los parches enviados se mandar<61>n a
|
|
||||||
<CODE>ftp://ftp.gtk.org/pub/gtk/patches</CODE>
|
|
||||||
donde uno del equipo de desarrollo de GTK+ los recoger<65>. Si son aplicados,
|
|
||||||
ser<EFBFBD>n movidos a <CODE>/pub/gtk/patches/old</CODE>.
|
|
||||||
<P>Los parches que no son aplicados, por cualquier raz<61>n, se mandar<61>n a
|
|
||||||
<CODE>/pub/gtk/patches/unapplied</CODE> o <CODE>/pub/gtk/patches/outdated</CODE>.
|
|
||||||
En este punto puede preguntar en la lista de correo <CODE>gtk-list</CODE> el porqu<71>
|
|
||||||
su parche no fu<66> aplicado. Hay muchas razones posibles por las cuales un
|
|
||||||
parche no se aplica, pasando desde que no se puede aplicar limpiamente, hasta
|
|
||||||
que no es correcto. No se rinda si no logr<67> que su parche se aplicase a la
|
|
||||||
primera.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss3.4">3.4 <20>Cu<43>l es la pol<6F>tica sobre la incorporaci<63>n de nuevos <EM>widgets</EM> en la librer<65>a?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Esto corresponde a los autores, de manera que tendr<64> que preguntarles
|
|
||||||
al terminar su <EM>widget</EM>. Como una gu<67>a general, los <EM>widgets</EM>
|
|
||||||
que por lo general son <20>tiles, funcionan, y no son una desgracia al conjunto
|
|
||||||
de <EM>widgets</EM> ser<65>n inclu<6C>dos con mucho gusto.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss3.5">3.5 <20>Hay alguien trabajando en atamientos para otros lenguajes distintos a C?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>S<EFBFBD>. Existe
|
|
||||||
<UL>
|
|
||||||
<LI>una envoltura de C++ para GTK+ llamada gtk--. Puede encontrar el su
|
|
||||||
p<EFBFBD>gina hogar en:
|
|
||||||
<A HREF="http://www.cs.tut.fi/~p150650/gtk/gtk--.html">http://www.cs.tut.fi/~p150650/gtk/gtk--.html</A>.
|
|
||||||
El sitio FTP es
|
|
||||||
<A HREF="ftp://ftp.gtk.org/pub/gtk/gtk--">ftp://ftp.gtk.org/pub/gtk/gtk--</A>.
|
|
||||||
<P>
|
|
||||||
<P>
|
|
||||||
</LI>
|
|
||||||
<LI>Hay dos ataduras para Objective-C en desarrollo:
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI>El paquete elegido por el
|
|
||||||
<A HREF="http://www.gnome.org/">proyecto GNOME</A> es obgtk. Objgtk se basa en la clase Object y es
|
|
||||||
mantenido por
|
|
||||||
<A HREF="mailto:sopwith@cuc.edu">Elliot Lee</A>.
|
|
||||||
Aparentemente, objgtk se est<73> aceptando como el atamiento `est<73>ndar'
|
|
||||||
de Objective-C para GTK+.
|
|
||||||
</LI>
|
|
||||||
<LI> Si usted est<73> m<>s inclinado al
|
|
||||||
<A HREF="http://www.gnustep.org/">proyecto GNUstep</A>,
|
|
||||||
puede que quiera revisar GTKKit por
|
|
||||||
<A HREF="mailto:helge@mdlink.de">Helge Heß</A>.
|
|
||||||
La intenci<63>n es crear un atamiento GTK+ utilizando FoundationKit.
|
|
||||||
GTKKit incluye linduras como escribir un archivo con una plantilla tipo
|
|
||||||
XML para constru<72>r una interface GTK+.
|
|
||||||
</LI>
|
|
||||||
</UL>
|
|
||||||
|
|
||||||
<P>
|
|
||||||
</LI>
|
|
||||||
<LI>Atamientos Perl
|
|
||||||
<A HREF="ftp://ftp.gtk.org/pub/gtk/perl">ftp://ftp.gtk.org/pub/gtk/perl</A>
|
|
||||||
<P>
|
|
||||||
</LI>
|
|
||||||
<LI>Atamientos Guile. La p<>gina hogar se encuentra en
|
|
||||||
<A HREF="http://www.ping.de/sites/zagadka/guile-gtk">http://www.ping.de/sites/zagadka/guile-gtk</A>.
|
|
||||||
Por cierto, Guile es la implantaci<63>n del Proyecto GNU de Scheme R4RS (el
|
|
||||||
est<EFBFBD>ndar). Si le gusta Scheme, querr<72> darle un vistazo a <20>ste.
|
|
||||||
<P>
|
|
||||||
<P>
|
|
||||||
</LI>
|
|
||||||
<LI>David Monniaux informa:
|
|
||||||
<BLOCKQUOTE>
|
|
||||||
He empezado un sistema de atamiento gtk-O'Caml. Las bases del sistema,
|
|
||||||
incluyendo <EM>callbacks</EM>, funcionan bien.
|
|
||||||
|
|
||||||
El desarrollo actual se encuentra en
|
|
||||||
<A HREF="http://www.ens-lyon.fr/~dmonniau/arcs">http://www.ens-lyon.fr/~dmonniau/arcs</A></BLOCKQUOTE>
|
|
||||||
|
|
||||||
</LI>
|
|
||||||
<LI>Se han hecho varios atamientos para python:
|
|
||||||
<P>
|
|
||||||
<UL>
|
|
||||||
<LI>pygtk se encuentra en
|
|
||||||
<A HREF="http://www.daa.com.au/~james/pygtk">http://www.daa.com.au/~james/pygtk</A> y
|
|
||||||
<A HREF="ftp://ftp.gtk.org/pub/gtk/python">ftp://ftp.gtk.org/pub/gtk/python</A></LI>
|
|
||||||
<LI>python-gtk se encuentra en
|
|
||||||
<A HREF="http://www.ucalgary.ca/~nascheme/python-gtk">http://www.ucalgary.ca/~nascheme/python-gtk</A></LI>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
</LI>
|
|
||||||
<LI>Hay un <EM>widget</EM> disponible para GTK+. Ag<41>rrelo en
|
|
||||||
<A HREF="http://www.sakuranet.or.jp/~aozasa/shige/doc/comp/gtk/gtkGL/files-en.html">http://www.sakuranet.or.jp/~aozasa/shige/doc/comp/gtk/gtkGL/files-en.html</A>
|
|
||||||
</LI>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<A HREF="gtkfaq-es-4.html">Next</A>
|
|
||||||
<A HREF="gtkfaq-es-2.html">Previous</A>
|
|
||||||
<A HREF="gtkfaq-es.html#toc3">Contents</A>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
@@ -1,435 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.6">
|
|
||||||
<TITLE>GTK+ FAQ: Desarrollo con GTK+</TITLE>
|
|
||||||
<LINK HREF="gtkfaq-es-5.html" REL=next>
|
|
||||||
<LINK HREF="gtkfaq-es-3.html" REL=previous>
|
|
||||||
<LINK HREF="gtkfaq-es.html#toc4" REL=contents>
|
|
||||||
</HEAD>
|
|
||||||
<BODY BGCOLOR="#FFFFFF">
|
|
||||||
<A HREF="gtkfaq-es-5.html">Next</A>
|
|
||||||
<A HREF="gtkfaq-es-3.html">Previous</A>
|
|
||||||
<A HREF="gtkfaq-es.html#toc4">Contents</A>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<H2><A NAME="s4">4. Desarrollo con GTK+</A></H2>
|
|
||||||
|
|
||||||
<H2><A NAME="ss4.1">4.1 <20>C<EFBFBD>mo empiezo?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Despu<EFBFBD>s de que ha instalado GTK+, hay un par de cosas que pueden
|
|
||||||
facilitarle el desarrollo de aplicaciones con <20>l. Est<73> el Tutor de
|
|
||||||
GTK+
|
|
||||||
<A HREF="http://www.gtk.org/tutorial/"><http://www.gtk.org/tutorial/></A>, el cual est<73> en desarrollo
|
|
||||||
activo. Este tutorial le introducir<69> en la escritura de aplicaciones
|
|
||||||
utilizando C.
|
|
||||||
<P>El Tutor no contiene (todav<61>a) informaci<63>n sobre todos los
|
|
||||||
<EM>widgets</EM> que existen en GTK+. Para c<>digo de ejemplo sobre la
|
|
||||||
utilizaci<EFBFBD>n b<>sica de todos los <EM>widgets</EM> de GTK+, debe ver
|
|
||||||
el archivo gtk/testgtk.c (y archivos fuentes asociados) en la distribuci<63>n
|
|
||||||
GTK+. Ver estos ejemplos le dar<61> una buena base sobre lo que pueden hacer
|
|
||||||
los <EM>widgets</EM>.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss4.2">4.2 <20>Qu<51> <EM>widgets</EM> existen en GTK?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>El Tutor de GTK+ lista los siguientes <EM>widgets</EM>:
|
|
||||||
<PRE>
|
|
||||||
GtkObject
|
|
||||||
+GtkData
|
|
||||||
| +GtkAdjustment
|
|
||||||
| `GtkTooltips
|
|
||||||
`GtkWidget
|
|
||||||
+GtkContainer
|
|
||||||
| +GtkBin
|
|
||||||
| | +GtkAlignment
|
|
||||||
| | +GtkEventBox
|
|
||||||
| | +GtkFrame
|
|
||||||
| | | `GtkAspectFrame
|
|
||||||
| | +GtkHandleBox
|
|
||||||
| | +GtkItem
|
|
||||||
| | | +GtkListItem
|
|
||||||
| | | +GtkMenuItem
|
|
||||||
| | | | `GtkCheckMenuItem
|
|
||||||
| | | | `GtkRadioMenuItem
|
|
||||||
| | | `GtkTreeItem
|
|
||||||
| | +GtkViewport
|
|
||||||
| | `GtkWindow
|
|
||||||
| | +GtkColorSelectionDialog
|
|
||||||
| | +GtkDialog
|
|
||||||
| | | `GtkInputDialog
|
|
||||||
| | `GtkFileSelection
|
|
||||||
| +GtkBox
|
|
||||||
| | +GtkButtonBox
|
|
||||||
| | | +GtkHButtonBox
|
|
||||||
| | | `GtkVButtonBox
|
|
||||||
| | +GtkHBox
|
|
||||||
| | | +GtkCombo
|
|
||||||
| | | `GtkStatusbar
|
|
||||||
| | `GtkVBox
|
|
||||||
| | +GtkColorSelection
|
|
||||||
| | `GtkGammaCurve
|
|
||||||
| +GtkButton
|
|
||||||
| | +GtkOptionMenu
|
|
||||||
| | `GtkToggleButton
|
|
||||||
| | `GtkCheckButton
|
|
||||||
| | `GtkRadioButton
|
|
||||||
| +GtkCList
|
|
||||||
| `GtkCTree
|
|
||||||
| +GtkFixed
|
|
||||||
| +GtkList
|
|
||||||
| +GtkMenuShell
|
|
||||||
| | +GtkMenuBar
|
|
||||||
| | `GtkMenu
|
|
||||||
| +GtkNotebook
|
|
||||||
| +GtkPaned
|
|
||||||
| | +GtkHPaned
|
|
||||||
| | `GtkVPaned
|
|
||||||
| +GtkScrolledWindow
|
|
||||||
| +GtkTable
|
|
||||||
| +GtkToolbar
|
|
||||||
| `GtkTree
|
|
||||||
+GtkDrawingArea
|
|
||||||
| `GtkCurve
|
|
||||||
+GtkEditable
|
|
||||||
| +GtkEntry
|
|
||||||
| | `GtkSpinButton
|
|
||||||
| `GtkText
|
|
||||||
+GtkMisc
|
|
||||||
| +GtkArrow
|
|
||||||
| +GtkImage
|
|
||||||
| +GtkLabel
|
|
||||||
| | `GtkTipsQuery
|
|
||||||
| `GtkPixmap
|
|
||||||
+GtkPreview
|
|
||||||
+GtkProgressBar
|
|
||||||
+GtkRange
|
|
||||||
| +GtkScale
|
|
||||||
| | +GtkHScale
|
|
||||||
| | `GtkVScale
|
|
||||||
| `GtkScrollbar
|
|
||||||
| +GtkHScrollbar
|
|
||||||
| `GtkVScrollbar
|
|
||||||
+GtkRuler
|
|
||||||
| +GtkHRuler
|
|
||||||
| `GtkVRuler
|
|
||||||
`GtkSeparator
|
|
||||||
+GtkHSeparator
|
|
||||||
`GtkVSeparator
|
|
||||||
</PRE>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss4.3">4.3 <20>GTK+ es seguro ante m<>ltiples hilos?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Aunque GTK+, como la mayor<6F>a de los juegos de herramientas para X,
|
|
||||||
no es seguro ante m<>ltiples hilos, esto no prohibe el desarrollo de
|
|
||||||
aplicaciones con m<>ltiples hilos con GTK+.
|
|
||||||
<P>Rob Browning (rlb@cs.utexas.edu) describe t<>cnicas de hilamiento
|
|
||||||
que pueden utilizarse con GTK+ (levemente modificado):
|
|
||||||
<P>B<EFBFBD>sicamente existen dos enfoques principales, el primero es sencillo,
|
|
||||||
y el segundo complicado. En el primero, simplemente hay que asegurarse
|
|
||||||
de que todas las interacciones de GTK+ (o X) se manejan por un, y solo un,
|
|
||||||
hilo. Cualquier otro hilo que desee dibujar algo tiene que notificarlo de
|
|
||||||
alguna manera al hilo "GTK+", y dejarlo que maneje el trabajo real.
|
|
||||||
<P>El segundo enfoque le permite llamar funciones de GTK+ (o X) desde cualquier
|
|
||||||
hilo, pero requiere sincronizaci<63>n cuidadosa. La idea b<>sica es crear
|
|
||||||
una exclusi<73>n mutua de protecci<63>n para X, de manera que nadie haga
|
|
||||||
llamadas X sin primero adquirir esta exclusi<73>n mutua.
|
|
||||||
<P>Observe que se trata de un peque<75>o esfuerzo, pero que le permitir<69> ser
|
|
||||||
potencialmente m<>s eficiente que un GTK+ completamente seguro ante
|
|
||||||
m<EFBFBD>ltiples hilos. Usted decide la granularidad del bloqueo de hilos.
|
|
||||||
Tambi<EFBFBD>n debe asegurarse que el hilo que llama a gtk_main mantiene la
|
|
||||||
cerradura cuando llama a gtk_main.
|
|
||||||
<P>Lo siguiente por lo que hay que preocuparse ya que se ten<65>a agarrada
|
|
||||||
la exclusi<73>n mutua global cuando se entr<74> a gtk_main, es que todos
|
|
||||||
los <EM>callbacks</EM> tambi<62>n la tendr<64>n. Esto significa que el
|
|
||||||
<EM>callback</EM> debe soltarla si va a llamar a cualquier otro c<>digo
|
|
||||||
que pueda readquirirla. De otra manera obtendr<64> un bloqueo mortal.
|
|
||||||
Tambi<EFBFBD>n hay que tener agarrada la exclusi<73>n mutua cuando finalmente
|
|
||||||
regresa del <EM>callback</EM>.
|
|
||||||
<P>Para permitir a otros hilos, adem<65>s del que llama a gtk_main, tener
|
|
||||||
acceso a la exclusi<73>n mutua, necesitamos registrar una funci<63>n de
|
|
||||||
trabajo con GTK que nos permita liberar la exclusi<73>n mutua
|
|
||||||
peri<EFBFBD>dicamente.
|
|
||||||
<P><EFBFBD>Por qu<71> GTK+ no puede ser seguro ante m<>ltiples hilos de
|
|
||||||
manera nativa?
|
|
||||||
<P>Complejidad, sobrecarga, y mano de obra. La proporci<63>n de programas
|
|
||||||
con hilos es todav<61>a razonablemente peque<75>a, y conseguir seguridad
|
|
||||||
ante hilos es muy dif<69>cil y le quita tiempo valioso al trabajo
|
|
||||||
principal de obtener una buena librer<65>a gr<67>fica terminada. Ser<65>a
|
|
||||||
muy agradable que GTK+ fuera seguro ante hilos "al sacarlo de la caja",
|
|
||||||
pero no es pr<70>ctico ahora mismo, y har<61>a a GTK+ sustancialmente menos
|
|
||||||
eficiente si no se maneja cuidadosamente.
|
|
||||||
<P>De cualquier manera, no es una prioridad esencial ya que existen remedios
|
|
||||||
relativamente buenos.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss4.4">4.4 <20>C<EFBFBD>mo puedo prevenir el redibujar y reacomodar tama<6D>os mientras cambio m<>ltiples <EM>widgets</EM>?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>
|
|
||||||
Utilize gtk_container_disable_resize y gtk_container_enable_resize alrededor
|
|
||||||
del c<>digo donde quiere cambiar varias cosas. Esto resultar<61> en mayor
|
|
||||||
velocidad ya que prevendr<64> tener que darle el tama<6D>o otra vez a la
|
|
||||||
jerarqu<EFBFBD>a de <EM>widget</EM> por completo.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss4.5">4.5 <20>C<EFBFBD>mo atrapo un evento de doble tecleo (en un <EM>widget</EM> de lista, por ejemplo)?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Tim Janik escribi<62> a la lista gtk-list (ligeramente modificado):
|
|
||||||
<P>Defina un manejador de se<73>al:
|
|
||||||
<P>
|
|
||||||
<BLOCKQUOTE><CODE>
|
|
||||||
<PRE>
|
|
||||||
gint
|
|
||||||
signal_handler_event(GtkWiget *widget, GdkEvenButton *event, gpointer func_data)
|
|
||||||
{
|
|
||||||
if (GTK_IS_LIST_ITEM(widget) &&
|
|
||||||
(event->type==GDK_2BUTTON_PRESS ||
|
|
||||||
event->type==GDK_3BUTTON_PRESS) ) {
|
|
||||||
printf("I feel %s clicked on button %d\",
|
|
||||||
event->type==GDK_2BUTTON_PRESS ? "double" : "triple",
|
|
||||||
event->button);
|
|
||||||
}
|
|
||||||
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
</PRE>
|
|
||||||
</CODE></BLOCKQUOTE>
|
|
||||||
<P>Y conecte el manejador a su objeto:
|
|
||||||
<P>
|
|
||||||
<BLOCKQUOTE><CODE>
|
|
||||||
<PRE>
|
|
||||||
{
|
|
||||||
/* lista, asuntos de inicializacion de articulos de lista */
|
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(list_item),
|
|
||||||
"button_press_event",
|
|
||||||
GTK_SIGNAL_FUNC(signal_handler_event),
|
|
||||||
NULL);
|
|
||||||
|
|
||||||
/* y/o */
|
|
||||||
|
|
||||||
gtk_signal_connect(GTK_OBJECT(list_item),
|
|
||||||
"button_release_event",
|
|
||||||
GTK_SIGNAL_FUNC(signal_handler_event),
|
|
||||||
NULL);
|
|
||||||
|
|
||||||
/* algo mas */
|
|
||||||
}
|
|
||||||
</PRE>
|
|
||||||
</CODE></BLOCKQUOTE>
|
|
||||||
<P>y, Owen Taylor escribi<62>:
|
|
||||||
<P>Observe que se recibir<69> la pulsaci<63>n del bot<6F>n de antemano, y
|
|
||||||
si est<73> haciendo esto para un bot<6F>n, tambi<62>n obtendr<64> una se<73>al
|
|
||||||
de "tecleado" para el bot<6F>n. (Esto es cierto para cualquier juego de
|
|
||||||
herramientas, ya que las computadoras no son buenas para leer la mente de
|
|
||||||
cada quien.)
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss4.6">4.6 <20>C<EFBFBD>mo puedo averiguar cu<63>l es la selecci<63>n de un GtkList?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>
|
|
||||||
<P>Consiga la selecci<63>n con algo como esto:
|
|
||||||
<BLOCKQUOTE><CODE>
|
|
||||||
<PRE>
|
|
||||||
GList *sel;
|
|
||||||
sel = GTK_LIST(list)->selection;
|
|
||||||
</PRE>
|
|
||||||
</CODE></BLOCKQUOTE>
|
|
||||||
<P>As<EFBFBD> es como GList est<73> definido (sacado de glist.h):
|
|
||||||
<BLOCKQUOTE><CODE>
|
|
||||||
<PRE>
|
|
||||||
typedef struct _GList GList;
|
|
||||||
|
|
||||||
struct _GList
|
|
||||||
{
|
|
||||||
gpointer data;
|
|
||||||
GList *next;
|
|
||||||
GList *prev;
|
|
||||||
};
|
|
||||||
</PRE>
|
|
||||||
</CODE></BLOCKQUOTE>
|
|
||||||
<P>Una estructura GList es simplemente una estructura para listas doblemente
|
|
||||||
enlazadas. Existen varias funciones g_list_*() para modificar una lista
|
|
||||||
enlazada en glib.h. Sin embargo, la selecci<63>n GTK_LIST(MyGtkList)->selection
|
|
||||||
es mantenida por las funciones gtk_list_*() y no deben ser modificadas.
|
|
||||||
<P>El selection_mode del GtkList determina las facilidades de selecci<63>n de un
|
|
||||||
GtkList y por lo tanto los contenidos de GTK_LIST(AnyGtkList)->selection:
|
|
||||||
<P>
|
|
||||||
<PRE>
|
|
||||||
selection_mode GTK_LIST()->selection contents
|
|
||||||
------------------------------------------------------
|
|
||||||
|
|
||||||
GTK_SELECTION_SINGLE) la selecci<63>n es NULL
|
|
||||||
o contiene un puntero GList*
|
|
||||||
para un art<72>culo seleccionado individualmente
|
|
||||||
|
|
||||||
GTK_SELECTION_BROWSE) la selecci<63>n es NULL si la lista
|
|
||||||
no contiene widgets, de otra manera
|
|
||||||
contiene un puntero GList*
|
|
||||||
para una estructura GList.
|
|
||||||
GTK_SELECTION_MULTIPLE) la selecci<63>n es NULL si no se seleccionan
|
|
||||||
listitems para un apuntador GList*
|
|
||||||
para el primer art<72>culo seleccionado. Eso en
|
|
||||||
su lugar apunta a una estructura GList para el
|
|
||||||
segundo art<72>culo seleccionado y contin<69>a
|
|
||||||
|
|
||||||
GTK_SELECTION_EXTENDED) la selecci<63>n es NULL.
|
|
||||||
</PRE>
|
|
||||||
<P>El campo data de la estructura GList GTK_LIST(MyGtkList)->selection apunta
|
|
||||||
al primer GtkListItem que es seleccionado. De manera que si quiere determinar
|
|
||||||
cuales listitems est<73>n seleccionados debe hacer esto:
|
|
||||||
<P>Durante la in>
|
|
||||||
<HR><H3>Transfer interrupted!</H3>
|
|
||||||
>
|
|
||||||
{
|
|
||||||
gchar *list_items[]={
|
|
||||||
"Item0",
|
|
||||||
"Item1",
|
|
||||||
"foo",
|
|
||||||
"last Item",
|
|
||||||
};
|
|
||||||
guint nlist_items=sizeof(list_items)/sizeof(list_items[0]);
|
|
||||||
GtkWidget *list_item;
|
|
||||||
guint i;
|
|
||||||
|
|
||||||
list=gtk_list_new();
|
|
||||||
gtk_list_set_selection_mode(GTK_LIST(list), GTK_SELECTION_MULTIPLE);
|
|
||||||
gtk_container_add(GTK_CONTAINER(AnyGtkContainer), list);
|
|
||||||
gtk_widget_show (list);
|
|
||||||
|
|
||||||
for (i = 0; i < nlist_items; i++)
|
|
||||||
{
|
|
||||||
list_item=gtk_list_item_new_with_label(list_items[i]);
|
|
||||||
gtk_object_set_user_data(GTK_OBJECT(list_item), (gpointer)i);
|
|
||||||
gtk_container_add(GTK_CONTAINER(list), list_item);
|
|
||||||
gtk_widget_show(list_item);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</PRE>
|
|
||||||
</CODE></BLOCKQUOTE>
|
|
||||||
<P>Para tener conocimiento de la inicializaci<63>n:
|
|
||||||
<BLOCKQUOTE><CODE>
|
|
||||||
<PRE>
|
|
||||||
{
|
|
||||||
GList *items;
|
|
||||||
|
|
||||||
items=GTK_LIST(list)->selection;
|
|
||||||
|
|
||||||
printf("Selected Items: ");
|
|
||||||
while (items) {
|
|
||||||
if (GTK_IS_LIST_ITEM(items->data))
|
|
||||||
printf("%d ", (guint)
|
|
||||||
gtk_object_get_user_data(items->data));
|
|
||||||
items=items->next;
|
|
||||||
}
|
|
||||||
printf("\n");
|
|
||||||
}
|
|
||||||
</PRE>
|
|
||||||
</CODE></BLOCKQUOTE>
|
|
||||||
<H2><A NAME="ss4.7">4.7 <20>Acaso es posible desplegar un texto que se recorte para que quepa dentro del lugar que tenga asignado?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>El comportamiento de GTK+ (sin recorte) es una consecuencia de sus intentos
|
|
||||||
para conservar recursos de X. Los <EM>widgets</EM> etiqueta (entre otros) no
|
|
||||||
tienen su propia ventana X - simplemente dibujan su contenido en la ventana
|
|
||||||
de su padre. Aunque ser<65>a posible hacer que ocurran recortes al establecer
|
|
||||||
la m<>scara de recorte antes de dibujar el texto, esto podr<64>a causar una
|
|
||||||
penalizaci<EFBFBD>n substancial en el rendimiento.
|
|
||||||
<P>Es posible que, a largo plazo, la mejor soluci<63>n a tales problemas sea
|
|
||||||
simplemente cambiar gtk para que le de ventanas X a las etiquetas. Un remedio
|
|
||||||
a corto plazo es poner el <EM>widget</EM> de etiqueta dentro de otro
|
|
||||||
<EM>widget</EM> que s<> obtiene su propia ventana - un candidato posible puede ser el <EM>widget</EM> <EM>viewport</EM>.
|
|
||||||
<P>
|
|
||||||
<BLOCKQUOTE><CODE>
|
|
||||||
<PRE>
|
|
||||||
viewport = gtk_viewport (NULL, NULL);
|
|
||||||
gtk_widget_set_usize (viewport, 50, 25);
|
|
||||||
gtk_viewport_set_shadow_type (GTK_VIEWPORT(viewport), GTK_SHADOW_NONE);
|
|
||||||
gtk_widget_show(viewport);
|
|
||||||
|
|
||||||
label = gtk_label ("a really long label that won't fit");
|
|
||||||
gtk_container_add (GTK_CONTAINER(viewport), label);
|
|
||||||
gtk_widget_show (label);
|
|
||||||
</PRE>
|
|
||||||
</CODE></BLOCKQUOTE>
|
|
||||||
<P>Si estuviera haciendo esto para un mont<6E>n de <EM>widgets</EM>, querr<72>
|
|
||||||
copiar gtkviewport.c y arrancar la funcionalidad de sombra y ajuste (tal vez
|
|
||||||
quiera llamarlo GtkClipper).
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss4.8">4.8 <20>Por qu<71> el contenido de un bot<6F>n no se mueve al presionar el bot<6F>n? Aqu<71> les env<6E>o un parche para que funcione de esa forma...</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>De: Peter Mattis
|
|
||||||
<P>La raz<61>n por la cu<63>l los botones no mueven a su hijo abajo y a la derecha
|
|
||||||
cuando son presionados es porque no me parece que eso es lo que ocurre
|
|
||||||
visualmente. Mi visi<73>n de los botonos es que los miras de manera recta.
|
|
||||||
O sea, la interface de usuario tiende sobre un plano y t<> est<73>s sobre
|
|
||||||
<EFBFBD>l observ<72>ndolo de manera recta. Cuando un bot<6F>n es presionado se
|
|
||||||
mueve directamente lejos de t<>. Para ser absolutamente correcto supongo
|
|
||||||
que el hijo deber<65>a encojerse un poquito. Pero no veo por qu<71> el hijo
|
|
||||||
deber<EFBFBD>a moverse abajo y a la izquierda. Recurda, el hijo se supone que
|
|
||||||
est<EFBFBD> pegado a la superficie del bot<6F>n. No es bueno que luzca como si
|
|
||||||
el hijo se resbala sobre la superficie del bot<6F>n.
|
|
||||||
<P>En una nota m<>s pr<70>ctica, ya implant<6E> esto una vez y determin<69>
|
|
||||||
que no se ve<76>a bien y lo quit<69>.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss4.9">4.9 <20>C<EFBFBD>mo puedo definir una l<>nea de separaci<63>n como en un men<65>?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Revise el
|
|
||||||
<A HREF="http://www.gtk.org/tutorial/">Tutor</A> para informaci<63>n sobre como crear men<65>s.
|
|
||||||
<P>Sin embargo, para crear una l<>nea de separaci<63>n en un men<65>,
|
|
||||||
simplemente inserte un art<72>culo de men<65> vac<61>o:
|
|
||||||
<P>
|
|
||||||
<BLOCKQUOTE><CODE>
|
|
||||||
<PRE>
|
|
||||||
menuitem = gtk_menu_item_new();
|
|
||||||
gtk_menu_append(GTK_MENU(menu), menuitem);
|
|
||||||
gtk_widget_show(menuitem);
|
|
||||||
</PRE>
|
|
||||||
</CODE></BLOCKQUOTE>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss4.10">4.10 <20>C<EFBFBD>mo puedo darle justificaci<63>n a la derecha a un men<65>, como Help, cuando utilizo MenuFactory?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Utilice algo como lo que sigue:
|
|
||||||
<P>
|
|
||||||
<BLOCKQUOTE><CODE>
|
|
||||||
<PRE>
|
|
||||||
menu_path = gtk_menu_factory_find (factory, "<MyApp>/Help");
|
|
||||||
gtk_menu_item_right_justify(menu_path->widget);
|
|
||||||
</PRE>
|
|
||||||
</CODE></BLOCKQUOTE>
|
|
||||||
<H2><A NAME="ss4.11">4.11 <20>C<EFBFBD>mo hago mi ventana modal? / <20>C<EFBFBD>mo hago una s<>la ventana activa?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Despu<EFBFBD>s de haber creado su ventana, haga gtk_grab_add(my_window). Y
|
|
||||||
despu<EFBFBD>s de cerrar la ventana haga gtk_grab_remove(my_window).
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss4.12">4.12 <20>Por qu<71> mi <EM>widget</EM> (ej. progressbar) no se actualiza?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>
|
|
||||||
<P>Probablemente usted est<73> haciendo todos los cambios dentro de una funci<63>n
|
|
||||||
sin devolver el control a gtk_main. La mayor<6F>a de las actualizaciones de
|
|
||||||
dibujo se colocan simplemente en una cola, la cual es procesada dentro de
|
|
||||||
gtk_main. Puede forzar que se procese la cola de dibujado utilizando algo como:
|
|
||||||
<P>
|
|
||||||
<BLOCKQUOTE><CODE>
|
|
||||||
<PRE>
|
|
||||||
while (gtk_events_pending())
|
|
||||||
gtk_main_iteration();
|
|
||||||
</PRE>
|
|
||||||
</CODE></BLOCKQUOTE>
|
|
||||||
<P>dentro de la funci<63>n que cambia el <EM>widget</EM>.
|
|
||||||
<P>Lo que el fragmento anterior hace es correr todos los eventos pendientes y
|
|
||||||
funciones ociosas de alta prioridad, luego regresa de inmediato (el dibujado
|
|
||||||
se realiza en una funci<63>n ociosa de alta prioridad).
|
|
||||||
<P>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<A HREF="gtkfaq-es-5.html">Next</A>
|
|
||||||
<A HREF="gtkfaq-es-3.html">Previous</A>
|
|
||||||
<A HREF="gtkfaq-es.html#toc4">Contents</A>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
@@ -1,92 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.6">
|
|
||||||
<TITLE>GTK+ FAQ: Acerca de gdk</TITLE>
|
|
||||||
<LINK HREF="gtkfaq-es-6.html" REL=next>
|
|
||||||
<LINK HREF="gtkfaq-es-4.html" REL=previous>
|
|
||||||
<LINK HREF="gtkfaq-es.html#toc5" REL=contents>
|
|
||||||
</HEAD>
|
|
||||||
<BODY BGCOLOR="#FFFFFF">
|
|
||||||
<A HREF="gtkfaq-es-6.html">Next</A>
|
|
||||||
<A HREF="gtkfaq-es-4.html">Previous</A>
|
|
||||||
<A HREF="gtkfaq-es.html#toc5">Contents</A>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<H2><A NAME="s5">5. Acerca de gdk</A></H2>
|
|
||||||
|
|
||||||
<H2><A NAME="ss5.1">5.1 <20>Qu<51> es gdk?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>gdk es b<>sicamente una envoltura alrededor de las llamadas a funciones
|
|
||||||
Xlib. Si est<73>s familiarizado con Xlib, muchas de las funciones en gdk
|
|
||||||
requerir<EFBFBD>n poco o ning<6E>n tiempo para acostumbrarse.
|
|
||||||
Todas las funciones est<73>n escritas para proporcionar una manera f<>cil de
|
|
||||||
acceder a las funciones Xlib en una manera un poco m<>s intuitiva.
|
|
||||||
Adicionalmente, ya que gdk utiliza glib (vea abajo), ser<65> m<>s portable
|
|
||||||
y seguro de utilizar en
|
|
||||||
m<EFBFBD>ltiples plataformas.
|
|
||||||
<P>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss5.2">5.2 <20>C<EFBFBD>mo utilizo la asignaci<63>n de colores?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Una de las cosas agradables de GDK es que est<73> basado sobre Xlib; esto
|
|
||||||
tambi<EFBFBD>n es un problema, especialmente en el <20>rea de administraci<63>n
|
|
||||||
de colores. Si usted quiere utilizar color en su programa (dibujando un
|
|
||||||
rect<EFBFBD>ngulo o algo por el estilo, su c<>digo debe lucir algo as<61>:
|
|
||||||
<P>
|
|
||||||
<BLOCKQUOTE><CODE>
|
|
||||||
<PRE>
|
|
||||||
{
|
|
||||||
GdkColor *color;
|
|
||||||
int width, height;
|
|
||||||
GtkWidget *widget;
|
|
||||||
GdkGC *gc;
|
|
||||||
|
|
||||||
...
|
|
||||||
|
|
||||||
/* primero, cree un GC (contexto grafico) en el cual dibujar */
|
|
||||||
gc = gdk_gc_new(widget->window);
|
|
||||||
|
|
||||||
/* encuentre las dimensiones correctas para el rectangulo */
|
|
||||||
gdk_window_get_size(widget->window, &width, &height);
|
|
||||||
|
|
||||||
/* el color que queremos utilizar */
|
|
||||||
color = (GdkColor *)malloc(sizeof(GdkColor));
|
|
||||||
|
|
||||||
/* rojo, verde y azul son valores pasados, indicando el trio RGB
|
|
||||||
* del color que queremos dibujar. Note que los valores de los componentes
|
|
||||||
* RGB dentro de GdkColor son tomados de 0 a 65535, no de 0 a 255.
|
|
||||||
*/
|
|
||||||
color->red = red * (65535/255);
|
|
||||||
color->green = green * (65535/255);
|
|
||||||
color->blue = blue * (65535/255);
|
|
||||||
|
|
||||||
/* el valor de pixel indica el indice en el mapa de colores del color.
|
|
||||||
* simplemente es una combinacion de los valores RGB colocados anteriormente
|
|
||||||
*/
|
|
||||||
color->pixel = (gulong)(red*65536 + green*256 + blue);
|
|
||||||
|
|
||||||
/* Sin embargo, el valor de pixel es solo valido en dispositivos de 24-bit
|
|
||||||
* (color verdadero). Por lo tanto, esta llamada es requerida para que GDK
|
|
||||||
* y X puedan darnos el color mas cercano disponible en el mapa de colores
|
|
||||||
*/
|
|
||||||
gdk_color_alloc(gtk_widget_get_colormap(widget), color);
|
|
||||||
|
|
||||||
/* colocar la parte delantera a nuestro color */
|
|
||||||
gdk_gc_set_foreground(gc, color);
|
|
||||||
|
|
||||||
/* dibujar el rectangulo*/
|
|
||||||
gdk_draw_rectangle(widget->window, gc, 1, 0, 0, width, height);
|
|
||||||
|
|
||||||
...
|
|
||||||
}
|
|
||||||
</PRE>
|
|
||||||
</CODE></BLOCKQUOTE>
|
|
||||||
<P>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<A HREF="gtkfaq-es-6.html">Next</A>
|
|
||||||
<A HREF="gtkfaq-es-4.html">Previous</A>
|
|
||||||
<A HREF="gtkfaq-es.html#toc5">Contents</A>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
@@ -1,64 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.6">
|
|
||||||
<TITLE>GTK+ FAQ: Acerca de glib</TITLE>
|
|
||||||
<LINK HREF="gtkfaq-es-7.html" REL=next>
|
|
||||||
<LINK HREF="gtkfaq-es-5.html" REL=previous>
|
|
||||||
<LINK HREF="gtkfaq-es.html#toc6" REL=contents>
|
|
||||||
</HEAD>
|
|
||||||
<BODY BGCOLOR="#FFFFFF">
|
|
||||||
<A HREF="gtkfaq-es-7.html">Next</A>
|
|
||||||
<A HREF="gtkfaq-es-5.html">Previous</A>
|
|
||||||
<A HREF="gtkfaq-es.html#toc6">Contents</A>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<H2><A NAME="s6">6. Acerca de glib</A></H2>
|
|
||||||
|
|
||||||
<H2><A NAME="ss6.1">6.1 <20>Qu<51> es glib?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>glib es una librer<65>a de funciones y definiciones <20>tiles disponibles
|
|
||||||
para ser utilizadas cuando se crean aplicaciones GDK y GTK. Proporciona
|
|
||||||
reemplazos para algunas funciones est<73>ndar de libc, como malloc, las
|
|
||||||
cuales tienen errores en algunos sistemas.
|
|
||||||
<P>Tambi<EFBFBD>n proporciona rutinas para manejar:
|
|
||||||
<UL>
|
|
||||||
<LI>Listas Doblemente Enlazadas</LI>
|
|
||||||
<LI>Listas con Enlace Sencillo</LI>
|
|
||||||
<LI>Cron<EFBFBD>metros</LI>
|
|
||||||
<LI>Manipulaci<EFBFBD>n de cadenas</LI>
|
|
||||||
<LI>Un Analizador L<>xico</LI>
|
|
||||||
<LI>Funciones de Error</LI>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss6.2">6.2 <20>Por qu<71> utilizar g_print, g_malloc, g_strdup y funciones compa<70>eras de glib?</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Gracias a Tim Janik que escribi<62> a gtk-list: (ligeramente modificado)
|
|
||||||
<BLOCKQUOTE>
|
|
||||||
Con respecto a g_malloc(), g_free() y hermanos, estas funciones son m<>s
|
|
||||||
seguras que sus equivalentes en libc. Por ejemplo, g_free() solo regresa si
|
|
||||||
se llama con NULL. Tambi<62>n, si se define USE_DMALLOC, la definici<63>n para
|
|
||||||
estas funciones cambia (en glib.h) para utilizar MALLOC(), FREE() etc... Si
|
|
||||||
MEM_PROFILE o MEM_CHECK se definen, hay incluso peque<75>as estad<61>sticas
|
|
||||||
realizadas las cuales cuentan los tama<6D>os de los bloques (mostrado por
|
|
||||||
g_mem_profile() / g_mem_check()).
|
|
||||||
<P>Considerando el hecho de que glib provee una interface para salvar espacio en
|
|
||||||
pedazos de memoria si se tiene varios bloques que son siempre del mismo
|
|
||||||
tama<EFBFBD>o y para marcarlos ALLOC_ONLY si es necesario, es sencillo crear
|
|
||||||
una peque<75>a envoltura para salvar (revisable para errores) alrededor del
|
|
||||||
malloc/free normal asimismo - igual que gdk cubre Xlib. ;)
|
|
||||||
<P>Utilizar g_error() y g_warning() dentro de aplicaciones como GIMP las cuales
|
|
||||||
utilizan gtk por completo incluso da la oportunidad de hacer saltar una ventana
|
|
||||||
que muestre los mensajes dentro de una ventana gtk con tu propio handler
|
|
||||||
(utilizando g_set_error_handler()) con el mismo estilo que gtk_print()
|
|
||||||
(dentro de gtkmain.c).
|
|
||||||
</BLOCKQUOTE>
|
|
||||||
<P>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<A HREF="gtkfaq-es-7.html">Next</A>
|
|
||||||
<A HREF="gtkfaq-es-5.html">Previous</A>
|
|
||||||
<A HREF="gtkfaq-es.html#toc6">Contents</A>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
@@ -1,80 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.6">
|
|
||||||
<TITLE>GTK+ FAQ: Contribuciones al GTK+ FAQ, Mantenedores y Copyright</TITLE>
|
|
||||||
<LINK HREF="gtkfaq-es-6.html" REL=previous>
|
|
||||||
<LINK HREF="gtkfaq-es.html#toc7" REL=contents>
|
|
||||||
</HEAD>
|
|
||||||
<BODY BGCOLOR="#FFFFFF">
|
|
||||||
Next
|
|
||||||
<A HREF="gtkfaq-es-6.html">Previous</A>
|
|
||||||
<A HREF="gtkfaq-es.html#toc7">Contents</A>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<H2><A NAME="s7">7. Contribuciones al GTK+ FAQ, Mantenedores y Copyright</A></H2>
|
|
||||||
|
|
||||||
<P>Si desea hacer una contribuci<63>n al FAQ, env<6E>e a alguno de nosotros
|
|
||||||
un mensaje por correo electr<74>nico con el texto exacto que cree que
|
|
||||||
deber<EFBFBD>a ser inclu<6C>do (pregunta y respuesta). <20>Con su ayuda, este
|
|
||||||
documento puede crecer y llegar a ser m<>s <20>til!
|
|
||||||
<P>Este documento es mantenido por Nathan Froyd
|
|
||||||
<A HREF="mailto:maestrox@geocities.com"><maestrox@geocities.com></A>
|
|
||||||
y Tony Gale
|
|
||||||
<A HREF="mailto:gale@gimp.org"><gale@gimp.org></A>.
|
|
||||||
Este FAQ fue creado por Shawn T. Amundson
|
|
||||||
<A HREF="mailto:amundson@gimp.org"><amundson@gimp.org></A> quien contin<69>a dando soporte.
|
|
||||||
<P>El GTK+ FAQ est<73> registrado Copyright (C) 1997, 1998 por Shawn T. Amundson,
|
|
||||||
Nathan Froyd y tony Gale.
|
|
||||||
<P>Se otorga permiso para hacer y distribu<62>r copias textuales de este manual
|
|
||||||
siempre y cuando la informaci<63>n de copyright y este permiso se preserven en
|
|
||||||
todas las copias.
|
|
||||||
<P>Se otorga permiso para copiar y distribuir versiones modificados de este
|
|
||||||
documento bajo las condiciones para copiado textual, siempre y cuando esta
|
|
||||||
noticia de copyright se incluya ex<65>ctamente como en el original, y
|
|
||||||
que el trabajo resultante en su totalidad sea distribu<62>do bajo los
|
|
||||||
t<EFBFBD>rminos de una noticia de permiso id<69>ntica a esta.
|
|
||||||
<P>Se otorga permiso para copiar y distribu<62>r traducciones de este documento
|
|
||||||
a otro lenguaje, bajo las condiciones anteriores de versiones modificadas.
|
|
||||||
<P>Si tiene intenciones de incorporar este documento en un trabajo publicado,
|
|
||||||
por favor contacte a uno de los mantenedores, y nos aseguraremos de que
|
|
||||||
obtenga la informaci<63>n m<>s actual posible.
|
|
||||||
<P>No hay garant<6E>a de que este documento logre su prop<6F>sito. Este documento
|
|
||||||
se proporciona simplemente como un recurso libre. Como tal, los autores y
|
|
||||||
mantenedores de la informaci<63>n proporcionada en <20>l no pueden dar
|
|
||||||
garant<EFBFBD>a alguna de que la informaci<63>n es precisa.
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="ss7.1">7.1 Nota del Traductor</A>
|
|
||||||
</H2>
|
|
||||||
|
|
||||||
<P>Esta traducci<63>n fue realizada por
|
|
||||||
<A HREF="http://www.talisman.com.pa">Rams<EFBFBD>s Morales</A>.
|
|
||||||
He intentado hacer
|
|
||||||
la mejor adaptaci<63>n posible de los t<>rminos t<>cnicos, si tiene
|
|
||||||
alguna sugerencia o mejora a estos t<>rminos y mi espa<70>ol, o alguna
|
|
||||||
duda por causa de mi traducci<63>n, no dude en comunic<69>rmelo a
|
|
||||||
<A HREF="mailto:ramses@computer.org"><ramses@computer.org></A><P>Gracias a
|
|
||||||
<A HREF="mailto: e98cuenc@criens.u-psud.fr">Joaqu<EFBFBD>n Cuenca</A> por todas sus sugerencias para mejorar la
|
|
||||||
traducci<EFBFBD>n, fueron de gran ayuda.
|
|
||||||
<P>--------------------------------------
|
|
||||||
<P>The GTK+ FAQ is Copyright (C) 1997,1998 by Shawn T. Amundson, Nathan Froyd and Tony Gale.
|
|
||||||
<P>Permission is granted to make and distribute verbatim copies of this manual provided the
|
|
||||||
copyright notice and this permission notice are preserved on all copies.
|
|
||||||
<P>Permission is granted to copy and distribute modified versions of this document under the conditions
|
|
||||||
for verbatim copying, provided that this copyright notice is included exactly as in the original,
|
|
||||||
and that the entire resulting derived work is distributed under the terms of a permission
|
|
||||||
notice identical to this one.
|
|
||||||
<P>Permission is granted to copy and distribute translations of this document into another language,
|
|
||||||
under the above conditions for modified versions.
|
|
||||||
<P>If you are intending to incorporate this document into a published work, please contact one of
|
|
||||||
the maintainers, and we will make an effort to ensure that you have the most up to date
|
|
||||||
information available.
|
|
||||||
<P>There is no guarentee that this document lives up to its intended
|
|
||||||
purpose. This is simply provided as a free resource. As such,
|
|
||||||
the authors and maintainers of the information provided within can
|
|
||||||
not make any guarentee that the information is even accurate.
|
|
||||||
<HR NOSHADE>
|
|
||||||
Next
|
|
||||||
<A HREF="gtkfaq-es-6.html">Previous</A>
|
|
||||||
<A HREF="gtkfaq-es.html#toc7">Contents</A>
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
@@ -1,103 +0,0 @@
|
|||||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
|
||||||
<HTML>
|
|
||||||
<HEAD>
|
|
||||||
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.6">
|
|
||||||
<TITLE>GTK+ FAQ</TITLE>
|
|
||||||
<LINK HREF="gtkfaq-es-1.html" REL=next>
|
|
||||||
|
|
||||||
|
|
||||||
</HEAD>
|
|
||||||
<BODY BGCOLOR="#FFFFFF">
|
|
||||||
<A HREF="gtkfaq-es-1.html">Next</A>
|
|
||||||
Previous
|
|
||||||
Contents
|
|
||||||
<HR NOSHADE>
|
|
||||||
<H1>GTK+ FAQ</H1>
|
|
||||||
|
|
||||||
|
|
||||||
<H2>Nathan Froyd, Tony Gale, Shawn T. Amundson.</H2>Seis de Julio de 1998
|
|
||||||
<P><HR NOSHADE>
|
|
||||||
<EM>La intenci<63>n de este documento es dar respuesta a las preguntas
|
|
||||||
realizadas con m<>s frecuencia por parte de los programadores que utilizan GTK+ o simplemente por personas que desean utilizar GTK+. </EM>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="toc1">1.</A> <A HREF="gtkfaq-es-1.html">Informaci<EFBFBD>n General</A></H2>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.1">1.1 Autores</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.2">1.2 <20>Qu<51> es GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.3">1.3 <20>Qu<51> es el + en GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.4">1.4 <20>La G en GTK+ significa General, Gimp, o GNU?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.5">1.5 <20>D<EFBFBD>nde est<73> la documentaci<63>n para GTK?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.6">1.6 <20>Hay alguna lista de correo (o archivo de lista de correo) para GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.7">1.7 <20>La lista gtk-list no ha tenido tr<74>fico alguno por d<>as,</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.8">1.8 C<>mo conseguir ayuda con GTK+</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.9">1.9 C<>mo reportar errores en GTK+</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.10">1.10 <20>Qu<51> aplicaciones se han escrito con GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-1.html#ss1.11">1.11 Estoy buscando una aplicaci<63>n que escribir en GTK+. <20>Qu<51> tal un cliente IRC?</A>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="toc2">2.</A> <A HREF="gtkfaq-es-2.html">C<EFBFBD>mo encontrar, configurar, instalar y comprobar GTK+</A></H2>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI><A HREF="gtkfaq-es-2.html#ss2.1">2.1 <20>Qu<51> necesito para correr GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-2.html#ss2.2">2.2 <20>D<EFBFBD>nde puedo conseguir GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-2.html#ss2.3">2.3 <20>C<EFBFBD>mo configuro/compilo GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-2.html#ss2.4">2.4 Cuando compilo GTK+ obtengo un error como: <CODE>make: file `Makefile' line 456: Syntax error</CODE></A>
|
|
||||||
<LI><A HREF="gtkfaq-es-2.html#ss2.5">2.5 <20>He compilado e instalado GTK+, pero no puedo lograr que los programas se enlacen con <20>l!</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-2.html#ss2.6">2.6 Cuando compilo programas con GTK+, obtengo mensajes de error del compilador diciendo que no es capaz de encontrar <CODE>"glibconfig.h"</CODE>.</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-2.html#ss2.7">2.7 Cuando instalo El GIMP, configure reporta que no puede encontrar GTK.</A>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="toc3">3.</A> <A HREF="gtkfaq-es-3.html">Desarrollo de GTK+</A></H2>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI><A HREF="gtkfaq-es-3.html#ss3.1">3.1 <20>Qu<51> es esta cosa CVS de la cual todo el mundo habla, y c<>mo puedo acceder a ella?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-3.html#ss3.2">3.2 <20>C<EFBFBD>mo puedo contribu<62>r a GTK+?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-3.html#ss3.3">3.3 <20>C<EFBFBD>mo averiguo si mi parche fue aplicado, y si no, por qu<71> no?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-3.html#ss3.4">3.4 <20>Cu<43>l es la pol<6F>tica sobre la incorporaci<63>n de nuevos <EM>widgets</EM> en la librer<65>a?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-3.html#ss3.5">3.5 <20>Hay alguien trabajando en atamientos para otros lenguajes distintos a C?</A>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="toc4">4.</A> <A HREF="gtkfaq-es-4.html">Desarrollo con GTK+</A></H2>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.1">4.1 <20>C<EFBFBD>mo empiezo?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.2">4.2 <20>Qu<51> <EM>widgets</EM> existen en GTK?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.3">4.3 <20>GTK+ es seguro ante m<>ltiples hilos?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.4">4.4 <20>C<EFBFBD>mo puedo prevenir el redibujar y reacomodar tama<6D>os mientras cambio m<>ltiples <EM>widgets</EM>?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.5">4.5 <20>C<EFBFBD>mo atrapo un evento de doble tecleo (en un <EM>widget</EM> de lista, por ejemplo)?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.6">4.6 <20>C<EFBFBD>mo puedo averiguar cu<63>l es la selecci<63>n de un GtkList?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.7">4.7 <20>Acaso es posible desplegar un texto que se recorte para que quepa dentro del lugar que tenga asignado?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.8">4.8 <20>Por qu<71> el contenido de un bot<6F>n no se mueve al presionar el bot<6F>n? Aqu<71> les env<6E>o un parche para que funcione de esa forma...</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.9">4.9 <20>C<EFBFBD>mo puedo definir una l<>nea de separaci<63>n como en un men<65>?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.10">4.10 <20>C<EFBFBD>mo puedo darle justificaci<63>n a la derecha a un men<65>, como Help, cuando utilizo MenuFactory?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.11">4.11 <20>C<EFBFBD>mo hago mi ventana modal? / <20>C<EFBFBD>mo hago una s<>la ventana activa?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-4.html#ss4.12">4.12 <20>Por qu<71> mi <EM>widget</EM> (ej. progressbar) no se actualiza?</A>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="toc5">5.</A> <A HREF="gtkfaq-es-5.html">Acerca de gdk</A></H2>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI><A HREF="gtkfaq-es-5.html#ss5.1">5.1 <20>Qu<51> es gdk?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-5.html#ss5.2">5.2 <20>C<EFBFBD>mo utilizo la asignaci<63>n de colores?</A>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="toc6">6.</A> <A HREF="gtkfaq-es-6.html">Acerca de glib</A></H2>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI><A HREF="gtkfaq-es-6.html#ss6.1">6.1 <20>Qu<51> es glib?</A>
|
|
||||||
<LI><A HREF="gtkfaq-es-6.html#ss6.2">6.2 <20>Por qu<71> utilizar g_print, g_malloc, g_strdup y funciones compa<70>eras de glib?</A>
|
|
||||||
</UL>
|
|
||||||
<P>
|
|
||||||
<H2><A NAME="toc7">7.</A> <A HREF="gtkfaq-es-7.html">Contribuciones al GTK+ FAQ, Mantenedores y Copyright</A></H2>
|
|
||||||
|
|
||||||
<UL>
|
|
||||||
<LI><A HREF="gtkfaq-es-7.html#ss7.1">7.1 Nota del Traductor</A>
|
|
||||||
</UL>
|
|
||||||
<HR NOSHADE>
|
|
||||||
<A HREF="gtkfaq-es-1.html">Next</A>
|
|
||||||
Previous
|
|
||||||
Contents
|
|
||||||
</BODY>
|
|
||||||
</HTML>
|
|
19
docs/faq/.cvsignore
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
Makefile
|
||||||
|
Makefile.in
|
||||||
|
*.html
|
||||||
|
*.dvi
|
||||||
|
*.ps
|
||||||
|
*.pg
|
||||||
|
*.ky
|
||||||
|
*.cp
|
||||||
|
*.fn
|
||||||
|
*.tp
|
||||||
|
*.vr
|
||||||
|
*.log
|
||||||
|
*.aux
|
||||||
|
*.toc
|
||||||
|
*.cps
|
||||||
|
*.fns
|
||||||
|
*.vrs
|
||||||
|
html
|
||||||
|
text
|
42
docs/faq/Makefile.am
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
.PHONY: htmldir textdir faq
|
||||||
|
|
||||||
|
FAQ_FILES=html/gtkfaq.html \
|
||||||
|
html/gtkfaq-1.html \
|
||||||
|
html/gtkfaq-2.html \
|
||||||
|
html/gtkfaq-3.html \
|
||||||
|
html/gtkfaq-4.html \
|
||||||
|
html/gtkfaq-5.html \
|
||||||
|
html/gtkfaq-6.html \
|
||||||
|
html/gtkfaq-7.html \
|
||||||
|
text/gtkfaq.txt
|
||||||
|
|
||||||
|
$(FAQ_FILES): faq
|
||||||
|
|
||||||
|
htmldir:
|
||||||
|
mkdir -p $(srcdir)/html
|
||||||
|
|
||||||
|
textdir:
|
||||||
|
mkdir -p $(srcdir)/text
|
||||||
|
|
||||||
|
faq: htmldir textdir
|
||||||
|
(cd $(srcdir); sgml2html gtkfaq.sgml; \
|
||||||
|
perl $(top_srcdir)/docs/gtkdocs_fix gtkfaq*html; \
|
||||||
|
mv gtkfaq*html html/; \
|
||||||
|
sgml2txt gtkfaq.sgml; \
|
||||||
|
mv gtkfaq.txt text/)
|
||||||
|
|
||||||
|
EXTRA_DIST += gtkfaq.sgml
|
||||||
|
|
||||||
|
if HAVE_SGML2HTML
|
||||||
|
dist-hook: faq
|
||||||
|
mkdir $(distdir)/html
|
||||||
|
cp -p $(srcdir)/html/*.html $(distdir)/html
|
||||||
|
mkdir $(distdir)/text
|
||||||
|
cp -p $(srcdir)/text/*.txt $(distdir)/text
|
||||||
|
else
|
||||||
|
dist-hook:
|
||||||
|
echo "***"
|
||||||
|
echo "*** Warning: FAQ not built"
|
||||||
|
echo "*** DISTRIBUTION IS INCOMPLETE"
|
||||||
|
echo "***"
|
||||||
|
endif
|
3577
docs/faq/gtk-faq.sgml
Normal file
@@ -1617,7 +1617,7 @@ placed on a queue, which is processed within <tt/gtk_main()/. You can
|
|||||||
force the drawing queue to be processed using something like:
|
force the drawing queue to be processed using something like:
|
||||||
|
|
||||||
<tscreen><verb>
|
<tscreen><verb>
|
||||||
while (gtk_main_iteration(FALSE));
|
while (g_main_iteration(FALSE));
|
||||||
</verb></tscreen>
|
</verb></tscreen>
|
||||||
|
|
||||||
inside you're function that changes the widget.
|
inside you're function that changes the widget.
|
||||||
|
198
docs/gdk.sgml
@@ -1,198 +0,0 @@
|
|||||||
<!doctype linuxdoc system>
|
|
||||||
|
|
||||||
<article>
|
|
||||||
|
|
||||||
<!-- Title information -->
|
|
||||||
|
|
||||||
<title>The GTK+ Drawing Kit Programming Manual
|
|
||||||
<author>Shawn T. Amundson, Peter Mattis
|
|
||||||
<date>July 26, 1998
|
|
||||||
|
|
||||||
<abstract>
|
|
||||||
This document aims at teaching user how to effectively program in
|
|
||||||
GDK, the GTK+ Drawing Kit, and to serve as a reference guide to
|
|
||||||
more experienced GTK+ programmers. It is a work in progress.
|
|
||||||
|
|
||||||
<!-- Table of contents -->
|
|
||||||
<toc>
|
|
||||||
|
|
||||||
<!-- Begin the document -->
|
|
||||||
|
|
||||||
<!-- ***************************************************************** -->
|
|
||||||
<sect>Introduction
|
|
||||||
|
|
||||||
<p>
|
|
||||||
GDK is designed as a wrapper library that lies on top of Xlib. It
|
|
||||||
performs many common and desired operations for a programmer instead
|
|
||||||
of the programmer having to explicitly ask for such functionality from
|
|
||||||
Xlib directly. For example, GDK provides a common interface to both
|
|
||||||
regular and shared memory XImage types. By doing so, an application
|
|
||||||
can nearly transparently use the fastest image type available. GDK
|
|
||||||
also provides routines for determining the best available color depth
|
|
||||||
and the best available visual which is not always the default visual
|
|
||||||
for a screen.
|
|
||||||
|
|
||||||
GDK is distributed and developed with GTK+, and is licensed under the
|
|
||||||
GNU Library General Public Licence (LGPL).
|
|
||||||
|
|
||||||
<sect>Getting Started
|
|
||||||
|
|
||||||
<sect1>Initialization
|
|
||||||
<p>
|
|
||||||
Initialization of GDK is easy. Simply call gdk_init() passing
|
|
||||||
in the argc and argv parameters.
|
|
||||||
|
|
||||||
<tscreen><verb>
|
|
||||||
int main (int argc, char *argv[])
|
|
||||||
{
|
|
||||||
/* Initialize GDK. */
|
|
||||||
gdk_init (&argc, &argv);
|
|
||||||
|
|
||||||
/* Cleanup of GDK is done automatically when the program exits. */
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
</verb></tscreen>
|
|
||||||
|
|
||||||
Generally, GDK initialization is done by gtk_init() in GTK+. This means
|
|
||||||
that when using GTK+, you do not need to directly call gdk_init().
|
|
||||||
|
|
||||||
<sect1>An Example using GDK with GTK+
|
|
||||||
<p>
|
|
||||||
This example demonstrates drawing a line using the foreground
|
|
||||||
color of the GtkDrawArea widget it is drawn inside. The example
|
|
||||||
will end when you click inside the window, which is filled by the
|
|
||||||
GtkDrawingArea widget.
|
|
||||||
|
|
||||||
The line is drawn during the expose event so that when the window
|
|
||||||
drawing is done whenever it is needed.
|
|
||||||
|
|
||||||
<tscreen><verb>
|
|
||||||
#include <gtk/gtk.h>
|
|
||||||
|
|
||||||
/* The expose callback does the drawing of the line */
|
|
||||||
int
|
|
||||||
expose_callback (GtkWidget *widget, GdkEventExpose *event, gpointer data)
|
|
||||||
{
|
|
||||||
GdkGC *gc;
|
|
||||||
|
|
||||||
printf("expose...\n");
|
|
||||||
|
|
||||||
|
|
||||||
/* The GC is the Graphics Context. Here it is borrowed from the widget */
|
|
||||||
gc = widget->style->fg_gc[GTK_STATE_NORMAL];
|
|
||||||
|
|
||||||
gdk_draw_line (widget->window, /* GDK Window of GtkDrawingArea widget */
|
|
||||||
gc, /* Graphics Context */
|
|
||||||
0, /* x1, left */
|
|
||||||
0, /* y1, top */
|
|
||||||
200, /* x2, right */
|
|
||||||
200); /* y2, bottom */
|
|
||||||
}
|
|
||||||
|
|
||||||
/* This quits GTK+ */
|
|
||||||
void destroy (GtkWidget *widget, gpointer data)
|
|
||||||
{
|
|
||||||
gtk_main_quit ();
|
|
||||||
}
|
|
||||||
|
|
||||||
int main (int argc, char *argv[])
|
|
||||||
{
|
|
||||||
GtkWidget *window;
|
|
||||||
GtkWidget *darea;
|
|
||||||
int events;
|
|
||||||
|
|
||||||
/* This initializes both GTK+ and GDK */
|
|
||||||
gtk_init (&argc, &argv);
|
|
||||||
|
|
||||||
/* Create a window */
|
|
||||||
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
|
|
||||||
gtk_signal_connect (GTK_OBJECT (window), "destroy",
|
|
||||||
GTK_SIGNAL_FUNC (destroy), NULL);
|
|
||||||
|
|
||||||
/* Create a drawing area widget. This widget actually is just a
|
|
||||||
simple widget which provides us an GDK window to draw on and
|
|
||||||
takes care of all the toolkit integration, like providing the
|
|
||||||
ability to add it to the window with gtk_contianer_add() */
|
|
||||||
darea = gtk_drawing_area_new ();
|
|
||||||
gtk_container_add (GTK_CONTAINER (window), darea);
|
|
||||||
|
|
||||||
/* Set the width and height (arguments are in that order) */
|
|
||||||
gtk_drawing_area_size (GTK_DRAWING_AREA (darea), 200, 200);
|
|
||||||
|
|
||||||
/* Drawing in the expose event is important to keep the
|
|
||||||
draw line always on the GDK window */
|
|
||||||
gtk_signal_connect (GTK_OBJECT (darea), "expose_event",
|
|
||||||
GTK_SIGNAL_FUNC (expose_callback), NULL);
|
|
||||||
|
|
||||||
/* We get the events, then add in button press. If we did not
|
|
||||||
do this, we would not be notified of button press events in
|
|
||||||
the GtkDrawingArea widget */
|
|
||||||
events = gtk_widget_get_events (darea);
|
|
||||||
gtk_widget_set_events (darea, events | GDK_BUTTON_PRESS_MASK);
|
|
||||||
|
|
||||||
/* If we click on the darea, the application will exit */
|
|
||||||
gtk_signal_connect_object (GTK_OBJECT (darea), "button_press_event",
|
|
||||||
GTK_SIGNAL_FUNC (gtk_widget_destroy),
|
|
||||||
GTK_OBJECT (window));
|
|
||||||
|
|
||||||
gtk_widget_show (darea);
|
|
||||||
gtk_widget_show (window);
|
|
||||||
|
|
||||||
/* The GTK+ main idle loop */
|
|
||||||
gtk_main();
|
|
||||||
|
|
||||||
/* Cleanup of GDK is done automatically when the program exits. */
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
</verb></tscreen>
|
|
||||||
|
|
||||||
<sect>The Graphics Context
|
|
||||||
<p>
|
|
||||||
The Graphics Context, or GC, defines how things should be drawn,
|
|
||||||
including color, font, fill, tile, stipple, clipping mask, line
|
|
||||||
width, line style, and join style.
|
|
||||||
|
|
||||||
<sect1>Color
|
|
||||||
<p>
|
|
||||||
Changing color is done by changing the forground or background color
|
|
||||||
of the GC.
|
|
||||||
|
|
||||||
<sect>Drawing Commands
|
|
||||||
<sect>Event Handling
|
|
||||||
<sect>Understanding and Using Visuals
|
|
||||||
<sect>Creating and Using New Windows
|
|
||||||
<sect>Pixmaps
|
|
||||||
<sect>Images
|
|
||||||
<sect>Fonts
|
|
||||||
<sect>
|
|
||||||
|
|
||||||
<sect>About this Document
|
|
||||||
<sect1>History
|
|
||||||
<P>
|
|
||||||
This document was originially written by Peter Mattis and entitled
|
|
||||||
"The General Drawing Kit". It was meant as a reference guide.
|
|
||||||
|
|
||||||
This version of the document has been renamed and is meant as a general
|
|
||||||
programming guide.
|
|
||||||
|
|
||||||
<sect1>Copying
|
|
||||||
<p>
|
|
||||||
Copyright (c) 1996 Peter Mattis
|
|
||||||
<p>
|
|
||||||
Copyright (c) 1998 Shawn T. Amundson
|
|
||||||
|
|
||||||
Permission is granted to make and distribute verbatim copies of this
|
|
||||||
manual provided the copyright notice and this permission notice are
|
|
||||||
preserved on all copies.
|
|
||||||
|
|
||||||
Permission is granted to copy and distribute modified versions of this
|
|
||||||
manual under the conditions for verbatim copying, provided that the
|
|
||||||
entire resulting derived work is distributed under the terms of a
|
|
||||||
permission notice identical to this one.
|
|
||||||
|
|
||||||
Permission is granted to copy and distribute translations of this manual
|
|
||||||
into another language, under the above conditions for modified versions,
|
|
||||||
except that this permission notice may be stated in a translation
|
|
||||||
approved by Peter Mattis.
|
|
||||||
|
|
||||||
</article>
|
|
334
docs/gdk.texi
@@ -1,334 +0,0 @@
|
|||||||
\input texinfo @c -*-texinfo-*-
|
|
||||||
@c %**start of header
|
|
||||||
@setfilename gdk.info
|
|
||||||
@settitle GDK
|
|
||||||
@setchapternewpage odd
|
|
||||||
@c %**end of header
|
|
||||||
|
|
||||||
@set edition 1.0
|
|
||||||
@set update-date 16 May 1996
|
|
||||||
@set update-month May 1996
|
|
||||||
|
|
||||||
@ifinfo
|
|
||||||
This file documents GDK, the General Drawing Kit
|
|
||||||
|
|
||||||
Copyright (C) 1996 Peter Mattis
|
|
||||||
|
|
||||||
Permission is granted to make and distribute verbatim copies of this
|
|
||||||
manual provided the copyright notice and this permission notice are
|
|
||||||
preserved on all copies
|
|
||||||
|
|
||||||
@ignore
|
|
||||||
Permission is granted to process this file throught TeX and print the
|
|
||||||
results, provided the printed document carries copying permission notice
|
|
||||||
identical to this one except for the removal of this paragraph (this
|
|
||||||
paragraph not being relevant to the printed manual).
|
|
||||||
|
|
||||||
@end ignore
|
|
||||||
Permission is granted to copy and distribute modified versions of this
|
|
||||||
manual under the conditions for verbatim copying, provided that the
|
|
||||||
entire resulting derived work is distributed under the terms of a
|
|
||||||
permission notice identical to this one.
|
|
||||||
|
|
||||||
Permission is granted to copy and distribute translations of this manual
|
|
||||||
into another language, under the above conditions for modified versions,
|
|
||||||
except that this permission notice may be stated in a translation
|
|
||||||
approved by Peter Mattis.
|
|
||||||
@end ifinfo
|
|
||||||
|
|
||||||
@titlepage
|
|
||||||
@title The General Drawing Kit
|
|
||||||
@subtitle Version 1.0
|
|
||||||
@subtitle @value{update-month}
|
|
||||||
@author by Peter Mattis
|
|
||||||
|
|
||||||
@page
|
|
||||||
@vskip 0pt plus 1filll
|
|
||||||
Copyright @copyright{} 1996 Peter Mattis
|
|
||||||
|
|
||||||
Permission is granted to make and distribute verbatim copies of this
|
|
||||||
manual provided the copyright notice and this permission notice are
|
|
||||||
preserved on all copies.
|
|
||||||
|
|
||||||
Permission is granted to copy and distribute modified versions of this
|
|
||||||
manual under the conditions for verbatim copying, provided that the
|
|
||||||
entire resulting derived work is distributed under the terms of a
|
|
||||||
permission notice identical to this one.
|
|
||||||
|
|
||||||
Permission is granted to copy and distribute translations of this manual
|
|
||||||
into another language, under the above conditions for modified versions,
|
|
||||||
except that this permission notice may be stated in a translation
|
|
||||||
approved by Peter Mattis.
|
|
||||||
@end titlepage
|
|
||||||
|
|
||||||
@dircategory User Interface Toolkit
|
|
||||||
@direntry
|
|
||||||
* GDK: (gdk). The General Drawing Kit
|
|
||||||
@end direntry
|
|
||||||
|
|
||||||
@node Top, Copying, (dir), (dir)
|
|
||||||
@top The General Drawing Kit
|
|
||||||
@ifinfo
|
|
||||||
This is edition @value{edition} of the GDK documentation,
|
|
||||||
@w{@value{update-date}}.
|
|
||||||
@end ifinfo
|
|
||||||
|
|
||||||
@menu
|
|
||||||
* Copying:: Your rights.
|
|
||||||
* Overview:: What is GDK?
|
|
||||||
* Initialization:: Initialization and exit.
|
|
||||||
* Events:: Event handling.
|
|
||||||
* Visuals:: Understanding and using visuals.
|
|
||||||
* Windows:: Creating and using windows.
|
|
||||||
* Graphics Contexts:: Creating and modifying GCs.
|
|
||||||
* Pixmaps:: Creating pixmaps.
|
|
||||||
* Images:: Creating images.
|
|
||||||
* Color:: Specifying color.
|
|
||||||
* Fonts:: Creating fonts.
|
|
||||||
* Drawing:: Drawing commands.
|
|
||||||
* XInput Support:: Using extended devices.
|
|
||||||
* Miscellany:: Other stuff.
|
|
||||||
* Examples:: Using GDK.
|
|
||||||
* Function Index:: Index of functions
|
|
||||||
* Concept Index:: Index of concepts
|
|
||||||
@end menu
|
|
||||||
|
|
||||||
@node Copying, Overview, Top, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter Copying
|
|
||||||
|
|
||||||
GDK is @dfn{free}; this means that everyone is free to use it and free
|
|
||||||
to redestribute it on a free basis. GDK is not in the public domain; it
|
|
||||||
is copyrighted and there are restrictions on its distribution, but these
|
|
||||||
restrictions are designed to permit everything that a good cooperating
|
|
||||||
citizen would want to do. What is not allowed is to try to prevent
|
|
||||||
others from further sharing any version of GDK that they might get from
|
|
||||||
you.
|
|
||||||
|
|
||||||
Specifically, we want to make sure that you have the right to give away
|
|
||||||
copies of GDK, that you receive source code or else can get it if you
|
|
||||||
want it, that you can change GDK or use pieces of it in new free
|
|
||||||
programs, and that you know you can do these things.
|
|
||||||
|
|
||||||
To make sure that everyone has such rights, we have to forbid you to
|
|
||||||
deprive anyone else of these rights. For example, if you distribute
|
|
||||||
copies of GDK, you must give the recipients all the rights that you
|
|
||||||
have. You must make sure that they, too, receive or can get the source
|
|
||||||
code. And you must tell them their rights.
|
|
||||||
|
|
||||||
Also, for my own protection, we must make certain that everyone finds
|
|
||||||
out that there is no warranty for GDK. If GDK is modified by someone
|
|
||||||
else and passed on, we want their recipients to know that what they have
|
|
||||||
is not what we distributed, so that any problems introduced by others
|
|
||||||
will no reflect on our reputation.
|
|
||||||
|
|
||||||
The precise conditions of the licenses for GDK are found in the General
|
|
||||||
Public Licenses that accompanies it.
|
|
||||||
|
|
||||||
|
|
||||||
@node Overview, Initialization, Copying, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter What is GDK?
|
|
||||||
@cindex Overview
|
|
||||||
|
|
||||||
GDK is designed as a wrapper library that lies on top of Xlib. It
|
|
||||||
performs many common and desired operations for a programmer instead
|
|
||||||
of the programmer having to explicitly ask for such functionality from
|
|
||||||
Xlib directly. For example, GDK provides a common interface to both
|
|
||||||
regular and shared memory XImage types. By doing so, an application
|
|
||||||
can nearly transparently use the fastest image type available. GDK
|
|
||||||
also provides routines for determining the best available color depth
|
|
||||||
and the best available visual which is not always the default visual
|
|
||||||
for a screen.
|
|
||||||
|
|
||||||
@node Initialization, Events, Overview, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter Initialization and exit
|
|
||||||
@cindex Initialization
|
|
||||||
@cindex Exit
|
|
||||||
|
|
||||||
Initializing GDK is easy. Simply call @code{gdk_init} passing in the
|
|
||||||
@var{argc} and @var{argv} parameters. Exit is similarly easy. Just
|
|
||||||
call @code{gdk_exit}.
|
|
||||||
|
|
||||||
@deftypefun void gdk_init (int *@var{argc}, char ***@var{argv})
|
|
||||||
Initializes the GDK library. The arguments @var{argc} and @var{argv}
|
|
||||||
are scanned and any arguments that GDK recognizes are handled and
|
|
||||||
removed. The @var{argc} and @var{argv} parameters are the values
|
|
||||||
passed to @code{main} upon program invocation.
|
|
||||||
@end deftypefun
|
|
||||||
|
|
||||||
@deftypefun void gdk_exit (int @var{errorcode})
|
|
||||||
Exit GDK and perform any necessary cleanup. @code{gdk_exit} will call
|
|
||||||
the systems @code{exit} function passing @var{errorcode} as the
|
|
||||||
parameter.
|
|
||||||
@end deftypefun
|
|
||||||
|
|
||||||
@example
|
|
||||||
int
|
|
||||||
main (int argc, char *argv[])
|
|
||||||
@{
|
|
||||||
/* Initialize GDK. */
|
|
||||||
gdk_init (&argc, &argv);
|
|
||||||
|
|
||||||
/* Exit from GDK...this call will never return. */
|
|
||||||
gdk_exit (0);
|
|
||||||
|
|
||||||
/* Keep compiler from issuing a warning */
|
|
||||||
return 0;
|
|
||||||
@}
|
|
||||||
@end example
|
|
||||||
|
|
||||||
|
|
||||||
@node Events, Visuals, Initialization, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter Event handling
|
|
||||||
@cindex Events
|
|
||||||
|
|
||||||
Events are the means by which GDK lets the programmer know of user
|
|
||||||
interaction. An event is normally a button or key press or some other
|
|
||||||
indirect user action, such as a the mouse cursor entering or leaving a
|
|
||||||
window.
|
|
||||||
|
|
||||||
There exist only a few functions for getting events and event
|
|
||||||
information. These are @code{gdk_events_pending},
|
|
||||||
@code{gdk_event_get}, @code{gdk_events_record} and
|
|
||||||
@code{gdk_events_playback}. The latter two functions are useful for
|
|
||||||
automatic testing of a software package and should normally not be
|
|
||||||
needed in a program.
|
|
||||||
|
|
||||||
@deftypefun gint gdk_events_pending (void)
|
|
||||||
Returns the number of events pending on the event queue.
|
|
||||||
@end deftypefun
|
|
||||||
|
|
||||||
@deftypefun gint gdk_event_get (GdkEvent *@var{event})
|
|
||||||
Return the next available event in the @var{event}
|
|
||||||
structure. @code{gdk_event_get} will return @code{TRUE} on success and
|
|
||||||
@code{FALSE} on failure. Success and failure is determined by whether
|
|
||||||
an event arrived before the timeout period expired.
|
|
||||||
@end deftypefun
|
|
||||||
|
|
||||||
@deftypefun void gdk_events_record (char *@var{filename})
|
|
||||||
Turn on recording of events. User events and certain system events will
|
|
||||||
be saved in the file named by the variable @var{filename}. This stream
|
|
||||||
of events can later be played back and ``should'' produce the same
|
|
||||||
results as when the original events were handled. However, the
|
|
||||||
programmer does need to be careful in that the state of the program must
|
|
||||||
be the same when @code{gdk_events_record} is called and when
|
|
||||||
@code{gdk_events_playback} is called. For this reason,
|
|
||||||
@code{gdk_events_record} is normally not called directly, but is instead
|
|
||||||
invoked indirectly by specifying the ``-record'' command line option.
|
|
||||||
@end deftypefun
|
|
||||||
|
|
||||||
@deftypefun void gdk_events_playback (char *@var{filename})
|
|
||||||
Start playback of events from a file. (See the above description of
|
|
||||||
@code{gdk_events_record}). Normally this function is not called directly
|
|
||||||
but is invoked by the ``-playback'' command line option.
|
|
||||||
@end deftypefun
|
|
||||||
|
|
||||||
@deftypefun void gdk_events_stop (void)
|
|
||||||
Stop recording and playback of events.
|
|
||||||
@end deftypefun
|
|
||||||
|
|
||||||
@example
|
|
||||||
void
|
|
||||||
handle_event ()
|
|
||||||
@{
|
|
||||||
GdkEvent event;
|
|
||||||
|
|
||||||
if (gdk_event_get (&event))
|
|
||||||
@{
|
|
||||||
switch (event.type)
|
|
||||||
@{
|
|
||||||
@dots{}
|
|
||||||
@}
|
|
||||||
@}
|
|
||||||
@}
|
|
||||||
@end example
|
|
||||||
|
|
||||||
|
|
||||||
@node Visuals, Windows, Events, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter Understanding and using visuals
|
|
||||||
@cindex Visuals
|
|
||||||
|
|
||||||
@node Windows, Graphics Contexts, Visuals, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter Creating and using windows
|
|
||||||
@cindex Windows
|
|
||||||
|
|
||||||
@node Graphics Contexts, Pixmaps, Windows, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter Creating and modifying GCs
|
|
||||||
@cindex Graphics Contexts
|
|
||||||
@cindex GC
|
|
||||||
|
|
||||||
@node Pixmaps, Images, Graphics Contexts, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter Creating pixmaps
|
|
||||||
@cindex Pixmaps
|
|
||||||
|
|
||||||
@node Images, Color, Pixmaps, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter Creating images
|
|
||||||
@cindex Images
|
|
||||||
|
|
||||||
@node Color, Fonts, Images, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter Specifying color
|
|
||||||
@cindex Color
|
|
||||||
|
|
||||||
@node Fonts, Drawing, Color, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter Creating Fonts
|
|
||||||
@cindex Fonts
|
|
||||||
|
|
||||||
@node Drawing, XInput Support, Fonts, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter Drawing Commands
|
|
||||||
@cindex Drawing
|
|
||||||
|
|
||||||
@node XInput Support, Miscellany, Drawing, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter Using extended devices
|
|
||||||
@cindex Overview
|
|
||||||
@cindex Using extended device capabilities
|
|
||||||
@cindex Controlling extended devices
|
|
||||||
|
|
||||||
@node Miscellany, Examples, XInput Support, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter Other stuff
|
|
||||||
@cindex Timers
|
|
||||||
@cindex Debugging
|
|
||||||
@cindex Miscellaneous
|
|
||||||
|
|
||||||
|
|
||||||
@node Examples, Function Index, Miscellany, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@chapter Using GDK
|
|
||||||
@cindex Examples
|
|
||||||
|
|
||||||
|
|
||||||
@node Function Index, Concept Index, Examples, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@unnumbered Variable Index
|
|
||||||
|
|
||||||
@printindex fn
|
|
||||||
|
|
||||||
@node Concept Index, , Function Index, Top
|
|
||||||
@comment node-name, next, previous, up
|
|
||||||
@unnumbered Concept Index
|
|
||||||
|
|
||||||
@printindex cp
|
|
||||||
|
|
||||||
@summarycontents
|
|
||||||
@contents
|
|
||||||
@bye
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
5648
docs/gtk.texi
17638
docs/gtk_tut_12.es.sgml
8600
docs/gtk_tut_fr.sgml
10090
docs/gtk_tut_it.sgml
Before Width: | Height: | Size: 6.6 KiB |
Before Width: | Height: | Size: 5.9 KiB |
Before Width: | Height: | Size: 2.4 KiB |
2982
docs/gtkfaq.sgml
@@ -1,18 +0,0 @@
|
|||||||
@macro gtkstdmacros {p, q}
|
|
||||||
|
|
||||||
@deftypefun Gtk\p\* GTK_\q\ (gpointer @var{obj})
|
|
||||||
Cast a generic pointer to @code{Gtk\p\*}. @xref{Standard Macros}, for
|
|
||||||
more info.
|
|
||||||
@end deftypefun
|
|
||||||
|
|
||||||
@deftypefun Gtk\p\Class* GTK_\q\_CLASS (gpointer @var{class})
|
|
||||||
Cast a generic pointer to @code{Gtk\p\Class*}. @xref{Standard Macros},
|
|
||||||
for more info.
|
|
||||||
@end deftypefun
|
|
||||||
|
|
||||||
@deftypefun gint GTK_IS_\q\ (gpointer @var{obj})
|
|
||||||
Determine if a generic pointer refers to a @code{Gtk\p\}
|
|
||||||
object. @xref{Standard Macros}, for more info.
|
|
||||||
@end deftypefun
|
|
||||||
|
|
||||||
@end macro
|
|
@@ -196,7 +196,7 @@ class TodoParser (xmllib.XMLParser):
|
|||||||
|
|
||||||
def start_contact(self,attributes):
|
def start_contact(self,attributes):
|
||||||
if not self.entry:
|
if not self.entry:
|
||||||
raise ParseError, "<contact> tag must be in <contact>"
|
raise ParseError, "<contact> tag must be in <entry>"
|
||||||
if self.in_data:
|
if self.in_data:
|
||||||
raise ParseError, "Unexpected <contact> tag in content"
|
raise ParseError, "Unexpected <contact> tag in content"
|
||||||
self.in_data = 1
|
self.in_data = 1
|
||||||
|
@@ -1,242 +0,0 @@
|
|||||||
|
|
||||||
=head1 NAME
|
|
||||||
|
|
||||||
gtk_button - GTK+ push button widget
|
|
||||||
|
|
||||||
=head1 SYNOPSIS
|
|
||||||
|
|
||||||
#include <gtk/gtkbutton.h>
|
|
||||||
|
|
||||||
GtkType gtk_button_get_type (void);
|
|
||||||
GtkWidget* gtk_button_new (void);
|
|
||||||
GtkWidget* gtk_button_new_with_label (const gchar *label);
|
|
||||||
void gtk_button_pressed (GtkButton *button);
|
|
||||||
void gtk_button_released (GtkButton *button);
|
|
||||||
void gtk_button_clicked (GtkButton *button);
|
|
||||||
void gtk_button_enter (GtkButton *button);
|
|
||||||
void gtk_button_leave (GtkButton *button);
|
|
||||||
void gtk_button_set_relief (GtkButton *button,
|
|
||||||
GtkReliefStyle style);
|
|
||||||
GtkReliefStyle gtk_button_get_relief (GtkButton *button);
|
|
||||||
|
|
||||||
=head1 DESCRIPTION
|
|
||||||
|
|
||||||
This widget is a standard push button widget. Push button widgets
|
|
||||||
are generally used for allowing the user to click on them to initiate
|
|
||||||
a command.
|
|
||||||
|
|
||||||
This widget is a container widget which contains one child.
|
|
||||||
|
|
||||||
=head1 OBJECT HIERARCHY
|
|
||||||
|
|
||||||
gtk_object
|
|
||||||
gtk_widget
|
|
||||||
gtk_container
|
|
||||||
gtk_button
|
|
||||||
|
|
||||||
=head1 SIGNAL PROTOTYPES
|
|
||||||
|
|
||||||
"clicked" void user_function (GtkWidget *widget, gpointer data);
|
|
||||||
"pressed" void user_function (GtkWidget *widget, gpointer data);
|
|
||||||
"released" void user_function (GtkWidget *widget, gpointer data);
|
|
||||||
"enter" void user_function (GtkWidget *widget, gpointer data);
|
|
||||||
"leave" void user_function (GtkWidget *widget, gpointer data);
|
|
||||||
|
|
||||||
=head1 USAGE
|
|
||||||
|
|
||||||
=head2 Creation
|
|
||||||
|
|
||||||
The most common way to create a button is with a label in it, which
|
|
||||||
contains text for the user to read. The child of the button will then
|
|
||||||
be a L<gtk_label(3)> widget with the text you passwd in. You can
|
|
||||||
do this in one command:
|
|
||||||
|
|
||||||
GtkWidget *button;
|
|
||||||
button = gtk_button_new_with_label ("This is a button");
|
|
||||||
|
|
||||||
To create a gtk_button widget which does not already have a child,
|
|
||||||
use gtk_button_new():
|
|
||||||
|
|
||||||
GtkWidget *button;
|
|
||||||
button = gtk_button_new ();
|
|
||||||
|
|
||||||
After you have created a button you can then add a widget to the
|
|
||||||
button (such as a label or pixmap) using gtk_container_add(). See
|
|
||||||
L<gtk_container(3)> for more information on adding widgets to
|
|
||||||
containers.
|
|
||||||
|
|
||||||
=head2 Creating a pixmap in a button in a window
|
|
||||||
|
|
||||||
After we have an empty gtk_button, such as above, and we have a gtk_pixmap,
|
|
||||||
we can simply add the gtk_pixmap to the gtk_button with gtk_container_add().
|
|
||||||
|
|
||||||
The following code will open the file "gimp.xpm" and place it in a
|
|
||||||
button.
|
|
||||||
|
|
||||||
#include <gtk/gtk.h>
|
|
||||||
|
|
||||||
int main (int argc, char *argv[])
|
|
||||||
{
|
|
||||||
GtkWidget *window;
|
|
||||||
GtkWidget *button;
|
|
||||||
GtkWidget *pixmap;
|
|
||||||
GtkStyle *style;
|
|
||||||
GdkPixmap *gdkpixmap;
|
|
||||||
GdkBitmap *mask;
|
|
||||||
char *filename = "gimp.xpm";
|
|
||||||
|
|
||||||
gtk_init (&argc, &argv);
|
|
||||||
|
|
||||||
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
|
|
||||||
|
|
||||||
button = gtk_button_new ();
|
|
||||||
gtk_container_add (GTK_CONTAINER (window), button);
|
|
||||||
|
|
||||||
/* The button is realized now, which creates button->window
|
|
||||||
used below to create the pixmap. */
|
|
||||||
gtk_widget_realize (button);
|
|
||||||
|
|
||||||
style = gtk_widget_get_style (button);
|
|
||||||
gdkpixmap = gdk_pixmap_create_from_xpm (button->window, &mask,
|
|
||||||
&style->bg[GTK_STATE_NORMAL],
|
|
||||||
filename);
|
|
||||||
pixmap = gtk_pixmap_new (gdkpixmap, mask);
|
|
||||||
|
|
||||||
gtk_container_add (GTK_CONTAINER (button), pixmap);
|
|
||||||
|
|
||||||
gtk_widget_show (pixmap);
|
|
||||||
gtk_widget_show (button);
|
|
||||||
gtk_widget_show (window);
|
|
||||||
|
|
||||||
gtk_main ();
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
=head2 Different reliefs
|
|
||||||
|
|
||||||
Reliefs affect how the shadowing of the button is drawn. The different
|
|
||||||
types of relief styles are:
|
|
||||||
|
|
||||||
GTK_RELIEF_NORMAL
|
|
||||||
GTK_RELIEF_HALF
|
|
||||||
GTK_RELIEF_NONE
|
|
||||||
|
|
||||||
When set to a normal relief, the widget looks and acts like a normal
|
|
||||||
button. When half or none relief is used, shadowing is only drawn when the
|
|
||||||
mouse cursor is over the widget.
|
|
||||||
|
|
||||||
To set the relief, use gtk_button_set_relief(), like:
|
|
||||||
|
|
||||||
gtk_button_set_relief (button, GTK_RELIEF_HALF);
|
|
||||||
|
|
||||||
To get the current relief of a button, use gtk_button_get_relief():
|
|
||||||
|
|
||||||
GtkReliefStyle relief;
|
|
||||||
relief = gtk_button_get_relief (GTK_BUTTON (button));
|
|
||||||
|
|
||||||
=head2 Executing a command when the button is pressed
|
|
||||||
|
|
||||||
To execute a function when a button is pressed, use
|
|
||||||
gtk_signal_connect() to connect to the "clicked" signal.
|
|
||||||
|
|
||||||
gtk_signal_connect (GTK_OBJECT (button), "clicked",
|
|
||||||
GTK_SIGNAL_FUNC (user_function),
|
|
||||||
NULL);
|
|
||||||
|
|
||||||
user_function is a user defined function, like the following:
|
|
||||||
|
|
||||||
void user_function (GtkWidget *button, gpointer data)
|
|
||||||
{
|
|
||||||
printf("clicked\n");
|
|
||||||
}
|
|
||||||
|
|
||||||
=head1 FUNCTIONS
|
|
||||||
|
|
||||||
GtkType gtk_button_get_type (void);
|
|
||||||
|
|
||||||
This function returns the GtkType which is assigned to the
|
|
||||||
object class for gtk_button.
|
|
||||||
|
|
||||||
GtkWidget* gtk_button_new (void);
|
|
||||||
|
|
||||||
This functions returns a new button widget which can then be
|
|
||||||
used as a container for another widget.
|
|
||||||
|
|
||||||
GtkWidget* gtk_button_new_with_label (const gchar *label);
|
|
||||||
|
|
||||||
This function returns a new button widget with a label widget
|
|
||||||
as a child. The label widget will have the text passed into
|
|
||||||
the commant.
|
|
||||||
|
|
||||||
void gtk_button_pressed (GtkButton *button);
|
|
||||||
|
|
||||||
This function sends a "pressed" signal to the button.
|
|
||||||
|
|
||||||
void gtk_button_released (GtkButton *button);
|
|
||||||
|
|
||||||
This function sends a "released" signal to the button.
|
|
||||||
|
|
||||||
void gtk_button_clicked (GtkButton *button);
|
|
||||||
|
|
||||||
This function sends a "clicked" signal to the button.
|
|
||||||
|
|
||||||
void gtk_button_enter (GtkButton *button);
|
|
||||||
|
|
||||||
This function sends a "enter" signal to the button.
|
|
||||||
|
|
||||||
void gtk_button_leave (GtkButton *button);
|
|
||||||
|
|
||||||
This function sends a "leave" signal to the button.
|
|
||||||
|
|
||||||
void gtk_button_set_relief (GtkButton *button, GtkReliefStyle style);
|
|
||||||
|
|
||||||
This function is sets the GtkReliefStyle of the button. The
|
|
||||||
relief style is one of: GTK_RELIEF_NORMAL, GTK_RELIEF_HALF,
|
|
||||||
or GTK_RELIEF_NONE. The relief determines when the shadow of
|
|
||||||
the button is drawn.
|
|
||||||
|
|
||||||
GtkReliefStyle gtk_button_get_relief (GtkButton *button);
|
|
||||||
|
|
||||||
This function returns the current relief of the button.
|
|
||||||
|
|
||||||
=head1 SIGNALS
|
|
||||||
|
|
||||||
"clicked"
|
|
||||||
|
|
||||||
void user_function (GtkWidget *widget, gpointer data);
|
|
||||||
|
|
||||||
Gets emitted when the button is clicked. A click is
|
|
||||||
a press and release of the button when the cursor is
|
|
||||||
inside the button on release.
|
|
||||||
|
|
||||||
"pressed"
|
|
||||||
|
|
||||||
void user_function (GtkWidget *widget, gpointer data);
|
|
||||||
|
|
||||||
Gets emitted when the left mouse button is pressed.
|
|
||||||
|
|
||||||
"released"
|
|
||||||
|
|
||||||
void user_function (GtkWidget *widget, gpointer data);
|
|
||||||
|
|
||||||
Gets emitted when the left mouse button is released and
|
|
||||||
the widget was previously pressed.
|
|
||||||
|
|
||||||
"enter"
|
|
||||||
|
|
||||||
void user_function (GtkWidget *widget, gpointer data);
|
|
||||||
|
|
||||||
Emitted when the mouse cursor enters the button.
|
|
||||||
|
|
||||||
"leave"
|
|
||||||
|
|
||||||
void user_function (GtkWidget *widget, gpointer data);
|
|
||||||
|
|
||||||
Emitted when the mouse cursor leaves the button.
|
|
||||||
|
|
||||||
=head1 AUTHORS
|
|
||||||
|
|
||||||
The author of this man page is Shawn T. Amundson E<lt>amundson@gtk.orgE<gt>.
|
|
||||||
For the authors of GTK+, see the AUTHORS file in the GTK+ distribution.
|
|
||||||
|
|
||||||
|
|
@@ -1,99 +0,0 @@
|
|||||||
#! /bin/sh
|
|
||||||
# package_tutorial.sh - Package up the tutorial into various formats
|
|
||||||
# Copyright (C) Tony Gale 1999
|
|
||||||
# Contact: gale@gtk.org
|
|
||||||
#
|
|
||||||
# NOTE: This script requires the following to be installed:
|
|
||||||
# o SGML Tools
|
|
||||||
# o Latex
|
|
||||||
# o DVI tools
|
|
||||||
|
|
||||||
TARGET=`pwd`/gtk_tut.sgml
|
|
||||||
GIFS="`pwd`/*.gif"
|
|
||||||
EXAMPLES=`pwd`/../examples
|
|
||||||
|
|
||||||
PATH=`pwd`:$PATH
|
|
||||||
|
|
||||||
DATE=`date '+%y%m%d'`
|
|
||||||
|
|
||||||
# Check top level directory
|
|
||||||
if [ ! -d gtk_tutorial ]; then
|
|
||||||
if [ -e gtk_tutorial ]; then
|
|
||||||
echo "ERROR: gtk_tutorial is not a directory"
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
mkdir gtk_tutorial.$DATE
|
|
||||||
fi
|
|
||||||
|
|
||||||
cd gtk_tutorial.$DATE
|
|
||||||
|
|
||||||
# SGML Format
|
|
||||||
echo -n "Copy SGML and GIF's.... "
|
|
||||||
if [ ! -d sgml ]; then
|
|
||||||
if [ -e sgml ]; then
|
|
||||||
echo "ERROR: html is not a directory"
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
mkdir sgml
|
|
||||||
fi
|
|
||||||
|
|
||||||
(cd sgml ; cp $TARGET . ; cp $GIFS .)
|
|
||||||
echo "done"
|
|
||||||
|
|
||||||
# HTML Format
|
|
||||||
echo -n "Formatting into HTML.... "
|
|
||||||
if [ ! -d html ]; then
|
|
||||||
if [ -e html ]; then
|
|
||||||
echo "ERROR: html is not a directory"
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
mkdir html
|
|
||||||
fi
|
|
||||||
|
|
||||||
(cd html ; sgml2html $TARGET ; cp $GIFS .)
|
|
||||||
echo "done"
|
|
||||||
|
|
||||||
# Text Format
|
|
||||||
echo -n "Formatting into Text.... "
|
|
||||||
if [ ! -d txt ]; then
|
|
||||||
if [ -e txt ]; then
|
|
||||||
echo "ERROR: txt is not a directory"
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
mkdir txt
|
|
||||||
fi
|
|
||||||
|
|
||||||
(cd txt ; sgml2txt -f $TARGET 2>&1 > /dev/null )
|
|
||||||
echo "done"
|
|
||||||
|
|
||||||
# PS and DVI Format
|
|
||||||
echo -n "Formatting into PS and DVI.... "
|
|
||||||
if [ ! -d ps ]; then
|
|
||||||
if [ -e ps ]; then
|
|
||||||
echo "ERROR: ps is not a directory"
|
|
||||||
exit
|
|
||||||
fi
|
|
||||||
mkdir ps
|
|
||||||
fi
|
|
||||||
|
|
||||||
(cd ps ; sgml2latex --output=ps $TARGET > /dev/null)
|
|
||||||
(cd ps ; sgml2latex $TARGET > /dev/null)
|
|
||||||
echo "done"
|
|
||||||
|
|
||||||
# Copy examples
|
|
||||||
echo -n "Copying examples"
|
|
||||||
cp -R $EXAMPLES .
|
|
||||||
(cd examples ; make clean ; rm -rf CVS */CVS)
|
|
||||||
echo "done"
|
|
||||||
|
|
||||||
# Package it all up
|
|
||||||
echo -n "Creating packages.... "
|
|
||||||
cd ..
|
|
||||||
tar cvfz gtk_tutorial.$DATE.tar.gz gtk_tutorial.$DATE
|
|
||||||
echo "done"
|
|
||||||
|
|
||||||
rm -rf gtk_tutorial.$DATE
|
|
||||||
|
|
||||||
echo
|
|
||||||
echo Package gtk_tutorial.$DATE.tar.gz created.
|
|
||||||
echo
|
|
2
docs/reference/.cvsignore
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
Makefile
|
||||||
|
Makefile.in
|
@@ -1,3 +1,30 @@
|
|||||||
|
Thu Sep 7 14:15:03 2000 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
|
* gdk/* gtk/*: Move gtk-reference files into GTK+ tree proper.
|
||||||
|
|
||||||
|
* Update sections.txt files to correspond to current code,
|
||||||
|
tweak .sgml files and Makefiles to correspond.
|
||||||
|
|
||||||
|
* gtk/tmpl/gtkradiomenuitem.sgml (this): Remove extra <para>
|
||||||
|
|
||||||
|
2000-06-14 Damon Chaplin <damon@helixcode.com>
|
||||||
|
|
||||||
|
* gtk/tmpl/gtktooltips.sgml: added a note about no-window widgets.
|
||||||
|
|
||||||
|
Mon Jun 5 11:17:25 2000 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
|
* gdk/tmpl/general.sgml: Fix gdk_pointer_grab description
|
||||||
|
as pointed out by Dave Morse.
|
||||||
|
|
||||||
|
Sun May 28 12:16:01 2000 Owen Taylor <otaylor@redhat.com>
|
||||||
|
|
||||||
|
* gtk/tmpl/gtkaspectframe.sgml: Fix typo
|
||||||
|
pointed out by Gregory McLean.
|
||||||
|
|
||||||
|
2000-05-28 Damon Chaplin <damon@helixcode.com>
|
||||||
|
|
||||||
|
* gdk/tmpl/event_structs.sgml: typo.
|
||||||
|
|
||||||
2000-04-22 Damon Chaplin <damon@helixcode.com>
|
2000-04-22 Damon Chaplin <damon@helixcode.com>
|
||||||
|
|
||||||
* gtk/tmpl/gtkenums.sgml: update from Lee Mallabone
|
* gtk/tmpl/gtkenums.sgml: update from Lee Mallabone
|
||||||
|
3
docs/reference/Makefile.am
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
## Process this file with automake to produce Makefile.in
|
||||||
|
|
||||||
|
SUBDIRS = gdk-pixbuf gdk gtk
|
@@ -2,4 +2,5 @@ Makefile
|
|||||||
Makefile.in
|
Makefile.in
|
||||||
html
|
html
|
||||||
sgml
|
sgml
|
||||||
gdk-pixbuf.html
|
gdk-pixbuf-decl-list.txt
|
||||||
|
gdk-pixbuf-unused.txt
|
||||||
|
@@ -9,62 +9,71 @@ DOC_MAIN_SGML_FILE=gdk-pixbuf.sgml
|
|||||||
# The directory containing the source code (if it contains documentation).
|
# The directory containing the source code (if it contains documentation).
|
||||||
DOC_SOURCE_DIR=$(GDK_PIXBUF_DIR)/gdk-pixbuf
|
DOC_SOURCE_DIR=$(GDK_PIXBUF_DIR)/gdk-pixbuf
|
||||||
|
|
||||||
CFLAGS=`gnome-config --cflags gnomeui gdk_pixbuf gnomecanvaspixbuf`
|
# Extra options to supply to gtkdoc-fixref
|
||||||
LDFLAGS=`gnome-config --libs gnomeui gdk_pixbuf gnomecanvaspixbuf`
|
FIXXREF_OPTIONS=
|
||||||
|
|
||||||
HTML_DIR=$(datadir)/gnome/html
|
# Header files to ignore when scanning
|
||||||
|
IGNORE_HFILES=pixops.h pixops-internal.h
|
||||||
|
|
||||||
TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
|
# Extra files to add when scanning
|
||||||
|
EXTRA_HFILES= \
|
||||||
|
$(top_srcdir)/gtk/gdk-pixbuf-loader.h
|
||||||
|
|
||||||
|
# CFLAGS and LDFLAGS for compiling scan program
|
||||||
|
CFLAGS=
|
||||||
|
LDFLAGS=
|
||||||
|
|
||||||
tmpl_sources = \
|
tmpl_sources = \
|
||||||
tmpl/animation.sgml \
|
tmpl/animation.sgml \
|
||||||
tmpl/creating.sgml \
|
tmpl/creating.sgml \
|
||||||
tmpl/file-loading.sgml \
|
tmpl/file-loading.sgml \
|
||||||
tmpl/from-drawables.sgml \
|
|
||||||
tmpl/gdk-pixbuf-loader.sgml \
|
tmpl/gdk-pixbuf-loader.sgml \
|
||||||
tmpl/gdk-pixbuf-unused.sgml \
|
tmpl/gdk-pixbuf-unused.sgml \
|
||||||
tmpl/gdk-pixbuf.sgml \
|
tmpl/gdk-pixbuf.sgml \
|
||||||
tmpl/gnome-canvas-pixbuf.sgml \
|
tmpl/initialization_versions.sgml \
|
||||||
|
tmpl/module_interface.sgml \
|
||||||
tmpl/refcounting.sgml \
|
tmpl/refcounting.sgml \
|
||||||
tmpl/rendering.sgml \
|
|
||||||
tmpl/scaling.sgml \
|
tmpl/scaling.sgml \
|
||||||
tmpl/util.sgml
|
tmpl/util.sgml
|
||||||
|
|
||||||
gdk_pixbuf_docdir = $(HTML_DIR)
|
# Extra SGML files that are included by DOC_MAIN_SGML_FILE
|
||||||
gdk_pixbuf_doc_DATA = \
|
|
||||||
gdk-pixbuf.html \
|
|
||||||
gdk-pixbuf.hierarchy \
|
|
||||||
gdk-pixbuf.types \
|
|
||||||
gdk-pixbuf-decl.txt \
|
|
||||||
gdk-pixbuf-sections.txt
|
|
||||||
|
|
||||||
content_files = \
|
content_files = \
|
||||||
compiling.sgml
|
compiling.sgml \
|
||||||
|
gdk-pixbuf.sgml
|
||||||
|
|
||||||
|
####################################
|
||||||
|
# Everything below here is generic #
|
||||||
|
####################################
|
||||||
|
|
||||||
|
TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
$(gdk_pixbuf_doc_DATA) \
|
$(DOC_MAIN_SGML_FILE) \
|
||||||
$(content_files)
|
$(content_files) \
|
||||||
|
$(DOC_MODULE)-sections.txt \
|
||||||
|
$(DOC_MODULE)-overrides.txt
|
||||||
|
|
||||||
if ENABLE_GTK_DOC
|
if ENABLE_GTK_DOC
|
||||||
gdk-pixbuf.html: html/book1.html
|
all-local: html/index.html
|
||||||
-cd $(srcdir) && cp html/book1.html gdk-pixbuf.html
|
|
||||||
else
|
|
||||||
gdk-pixbuf.html:
|
|
||||||
endif
|
|
||||||
|
|
||||||
html/book1.html: sgml/gdk-pixbuf-doc.bottom $(content_files)
|
$(DOC_MODULE)-decl.txt:
|
||||||
$(MAKE) html
|
$(MAKE) scan
|
||||||
|
|
||||||
sgml/gdk-pixbuf-doc.bottom: $(tmpl_sources)
|
$(tmpl_sources): $(DOC_MODULE)-decl.txt $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
|
||||||
|
$(MAKE) templates
|
||||||
|
|
||||||
|
sgml/$(DOC_MODULE)-doc.bottom: $(tmpl_sources) $(DOC_MODULE)-decl.txt
|
||||||
$(MAKE) sgml
|
$(MAKE) sgml
|
||||||
|
|
||||||
|
html/index.html: sgml/$(DOC_MODULE)-doc.bottom $(DOC_MAIN_SGML_FILE) $(content_fiels)
|
||||||
|
$(MAKE) html
|
||||||
|
endif
|
||||||
|
|
||||||
scan:
|
scan:
|
||||||
-(cd $(srcdir) \
|
-(cd $(srcdir) \
|
||||||
&& env CFLAGS=$(CFLAGS) LDFLAGS=$(LDFLAGS) \
|
&& gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(EXTRA_HFILES))
|
||||||
gtkdoc-scanobj --module=$(DOC_MODULE) \
|
|
||||||
&& gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="pixops.h pixops-internal.h" )
|
|
||||||
|
|
||||||
templates: scan
|
templates:
|
||||||
cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE)
|
cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE)
|
||||||
|
|
||||||
sgml:
|
sgml:
|
||||||
@@ -74,6 +83,8 @@ sgml:
|
|||||||
html:
|
html:
|
||||||
test -d $(srcdir)/html || mkdir $(srcdir)/html
|
test -d $(srcdir)/html || mkdir $(srcdir)/html
|
||||||
-cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
|
-cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
|
||||||
|
@echo '-- Fixing Crossreferences'
|
||||||
|
gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
|
||||||
|
|
||||||
clean-local:
|
clean-local:
|
||||||
rm -f *~ *.bak *.signals *-unused.txt
|
rm -f *~ *.bak *.signals *-unused.txt
|
||||||
@@ -93,11 +104,20 @@ install-data-local:
|
|||||||
done; \
|
done; \
|
||||||
echo '-- Installing $(srcdir)/html/index.sgml' ; \
|
echo '-- Installing $(srcdir)/html/index.sgml' ; \
|
||||||
$(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR); \
|
$(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR); \
|
||||||
echo '-- Fixing Crossreferences' ; \
|
|
||||||
gtkdoc-fixxref --module=$(DOC_MODULE) --html-dir=$(HTML_DIR)|| true; \
|
|
||||||
fi)
|
fi)
|
||||||
|
|
||||||
dist-hook:
|
#
|
||||||
|
# Require gtk-doc when making dist
|
||||||
|
#
|
||||||
|
if ENABLE_GTK_DOC
|
||||||
|
dist-check-gtkdoc:
|
||||||
|
else
|
||||||
|
dist-check-gtkdoc:
|
||||||
|
@echo "*** gtk-doc must be installed and enabled in order to make dist
|
||||||
|
@false
|
||||||
|
endif
|
||||||
|
|
||||||
|
dist-hook: dist-check-gtkdoc
|
||||||
mkdir $(distdir)/html
|
mkdir $(distdir)/html
|
||||||
mkdir $(distdir)/sgml
|
mkdir $(distdir)/sgml
|
||||||
mkdir $(distdir)/tmpl
|
mkdir $(distdir)/tmpl
|
||||||
|
@@ -1,527 +0,0 @@
|
|||||||
<USER_FUNCTION>
|
|
||||||
<NAME>ModulePreparedNotifyFunc</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbuf *pixbuf, gpointer user_data
|
|
||||||
</USER_FUNCTION>
|
|
||||||
<USER_FUNCTION>
|
|
||||||
<NAME>ModuleUpdatedNotifyFunc</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbuf *pixbuf,
|
|
||||||
guint x, guint y,
|
|
||||||
guint width, guint height,
|
|
||||||
gpointer user_data
|
|
||||||
</USER_FUNCTION>
|
|
||||||
<USER_FUNCTION>
|
|
||||||
<NAME>ModuleFrameDoneNotifyFunc</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbufFrame *frame,
|
|
||||||
gpointer user_data
|
|
||||||
</USER_FUNCTION>
|
|
||||||
<USER_FUNCTION>
|
|
||||||
<NAME>ModuleAnimationDoneNotifyFunc</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbuf *pixbuf,
|
|
||||||
gpointer user_data
|
|
||||||
</USER_FUNCTION>
|
|
||||||
<STRUCT>
|
|
||||||
<NAME>GdkPixbufModule</NAME>
|
|
||||||
</STRUCT>
|
|
||||||
<STRUCT>
|
|
||||||
<NAME>GdkPixbufModule</NAME>
|
|
||||||
struct GdkPixbufModule {
|
|
||||||
char *module_name;
|
|
||||||
gboolean (* format_check) (guchar *buffer, int size);
|
|
||||||
GModule *module;
|
|
||||||
GdkPixbuf *(* load) (FILE *f);
|
|
||||||
GdkPixbuf *(* load_xpm_data) (const char **data);
|
|
||||||
|
|
||||||
/* Incremental loading */
|
|
||||||
|
|
||||||
gpointer (* begin_load) (ModulePreparedNotifyFunc prepare_func,
|
|
||||||
ModuleUpdatedNotifyFunc update_func,
|
|
||||||
ModuleFrameDoneNotifyFunc frame_done_func,
|
|
||||||
ModuleAnimationDoneNotifyFunc anim_done_func,
|
|
||||||
gpointer user_data);
|
|
||||||
void (* stop_load) (gpointer context);
|
|
||||||
gboolean (* load_increment) (gpointer context, const guchar *buf, guint size);
|
|
||||||
|
|
||||||
/* Animation loading */
|
|
||||||
GdkPixbufAnimation *(* load_animation) (FILE *f);
|
|
||||||
};
|
|
||||||
</STRUCT>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_get_module</NAME>
|
|
||||||
<RETURNS>GdkPixbufModule *</RETURNS>
|
|
||||||
guchar *buffer, guint size
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_load_module</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbufModule *image_module
|
|
||||||
</FUNCTION>
|
|
||||||
<MACRO>
|
|
||||||
<NAME>GDK_TYPE_PIXBUF_LOADER</NAME>
|
|
||||||
#define GDK_TYPE_PIXBUF_LOADER (gdk_pixbuf_loader_get_type ())
|
|
||||||
</MACRO>
|
|
||||||
<MACRO>
|
|
||||||
<NAME>GDK_PIXBUF_LOADER</NAME>
|
|
||||||
#define GDK_PIXBUF_LOADER(obj) (GTK_CHECK_CAST ((obj), GDK_TYPE_PIXBUF_LOADER, GdkPixbufLoader))
|
|
||||||
</MACRO>
|
|
||||||
<MACRO>
|
|
||||||
<NAME>GDK_PIXBUF_LOADER_CLASS</NAME>
|
|
||||||
#define GDK_PIXBUF_LOADER_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GDK_TYPE_PIXBUF_LOADER, GdkPixbufLoaderClass))
|
|
||||||
</MACRO>
|
|
||||||
<MACRO>
|
|
||||||
<NAME>GDK_IS_PIXBUF_LOADER</NAME>
|
|
||||||
#define GDK_IS_PIXBUF_LOADER(obj) (GTK_CHECK_TYPE ((obj), GDK_TYPE_PIXBUF_LOADER))
|
|
||||||
</MACRO>
|
|
||||||
<MACRO>
|
|
||||||
<NAME>GDK_IS_PIXBUF_LOADER_CLASS</NAME>
|
|
||||||
#define GDK_IS_PIXBUF_LOADER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GDK_TYPE_PIXBUF_LOADER))
|
|
||||||
</MACRO>
|
|
||||||
<STRUCT>
|
|
||||||
<NAME>GdkPixbufLoader</NAME>
|
|
||||||
</STRUCT>
|
|
||||||
<STRUCT>
|
|
||||||
<NAME>GdkPixbufLoader</NAME>
|
|
||||||
struct GdkPixbufLoader
|
|
||||||
{
|
|
||||||
GtkObject object;
|
|
||||||
|
|
||||||
/* < Private > */
|
|
||||||
gpointer private;
|
|
||||||
};
|
|
||||||
</STRUCT>
|
|
||||||
<STRUCT>
|
|
||||||
<NAME>GdkPixbufLoaderClass</NAME>
|
|
||||||
</STRUCT>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_loader_get_type</NAME>
|
|
||||||
<RETURNS>GtkType </RETURNS>
|
|
||||||
void
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_loader_new</NAME>
|
|
||||||
<RETURNS>GdkPixbufLoader *</RETURNS>
|
|
||||||
void
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_loader_write</NAME>
|
|
||||||
<RETURNS>gboolean </RETURNS>
|
|
||||||
GdkPixbufLoader *loader,const guchar *buf,size_t count
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_loader_get_pixbuf</NAME>
|
|
||||||
<RETURNS>GdkPixbuf *</RETURNS>
|
|
||||||
GdkPixbufLoader *loader
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_loader_get_animation</NAME>
|
|
||||||
<RETURNS>GdkPixbufAnimation *</RETURNS>
|
|
||||||
GdkPixbufLoader *loader
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_loader_close</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbufLoader *loader
|
|
||||||
</FUNCTION>
|
|
||||||
<ENUM>
|
|
||||||
<NAME>GdkColorspace</NAME>
|
|
||||||
typedef enum {
|
|
||||||
GDK_COLORSPACE_RGB
|
|
||||||
} GdkColorspace;
|
|
||||||
</ENUM>
|
|
||||||
<STRUCT>
|
|
||||||
<NAME>GdkPixbuf</NAME>
|
|
||||||
</STRUCT>
|
|
||||||
<STRUCT>
|
|
||||||
<NAME>GdkPixbufFrame</NAME>
|
|
||||||
</STRUCT>
|
|
||||||
<STRUCT>
|
|
||||||
<NAME>GdkPixbufAnimation</NAME>
|
|
||||||
</STRUCT>
|
|
||||||
<USER_FUNCTION>
|
|
||||||
<NAME>GdkPixbufDestroyNotify</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
guchar *pixels, gpointer data
|
|
||||||
</USER_FUNCTION>
|
|
||||||
<USER_FUNCTION>
|
|
||||||
<NAME>GdkPixbufLastUnref</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbuf *pixbuf, gpointer data
|
|
||||||
</USER_FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_ref</NAME>
|
|
||||||
<RETURNS>GdkPixbuf *</RETURNS>
|
|
||||||
GdkPixbuf *pixbuf
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_unref</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbuf *pixbuf
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_set_last_unref_handler</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbuf *pixbuf,GdkPixbufLastUnref last_unref_fn,gpointer last_unref_fn_data
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_finalize</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbuf *pixbuf
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_get_colorspace</NAME>
|
|
||||||
<RETURNS>GdkColorspace </RETURNS>
|
|
||||||
const GdkPixbuf *pixbuf
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_get_n_channels</NAME>
|
|
||||||
<RETURNS>int </RETURNS>
|
|
||||||
const GdkPixbuf *pixbuf
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_get_has_alpha</NAME>
|
|
||||||
<RETURNS>gboolean </RETURNS>
|
|
||||||
const GdkPixbuf *pixbuf
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_get_bits_per_sample</NAME>
|
|
||||||
<RETURNS>int </RETURNS>
|
|
||||||
const GdkPixbuf *pixbuf
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_get_pixels</NAME>
|
|
||||||
<RETURNS>guchar *</RETURNS>
|
|
||||||
const GdkPixbuf *pixbuf
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_get_width</NAME>
|
|
||||||
<RETURNS>int </RETURNS>
|
|
||||||
const GdkPixbuf *pixbuf
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_get_height</NAME>
|
|
||||||
<RETURNS>int </RETURNS>
|
|
||||||
const GdkPixbuf *pixbuf
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_get_rowstride</NAME>
|
|
||||||
<RETURNS>int </RETURNS>
|
|
||||||
const GdkPixbuf *pixbuf
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_new</NAME>
|
|
||||||
<RETURNS>GdkPixbuf *</RETURNS>
|
|
||||||
GdkColorspace colorspace, gboolean has_alpha, int bits_per_sample,int width, int height
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_copy</NAME>
|
|
||||||
<RETURNS>GdkPixbuf *</RETURNS>
|
|
||||||
const GdkPixbuf *pixbuf
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_new_from_file</NAME>
|
|
||||||
<RETURNS>GdkPixbuf *</RETURNS>
|
|
||||||
const char *filename
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_new_from_data</NAME>
|
|
||||||
<RETURNS>GdkPixbuf *</RETURNS>
|
|
||||||
const guchar *data,GdkColorspace colorspace,gboolean has_alpha,int bits_per_sample,int width, int height,int rowstride,GdkPixbufDestroyNotify destroy_fn,gpointer destroy_fn_data
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_new_from_xpm_data</NAME>
|
|
||||||
<RETURNS>GdkPixbuf *</RETURNS>
|
|
||||||
const char **data
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_add_alpha</NAME>
|
|
||||||
<RETURNS>GdkPixbuf *</RETURNS>
|
|
||||||
const GdkPixbuf *pixbuf, gboolean substitute_color,guchar r, guchar g, guchar b
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_copy_area</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
const GdkPixbuf *src_pixbuf,int src_x, int src_y,int width, int height,GdkPixbuf *dest_pixbuf,int dest_x, int dest_y
|
|
||||||
</FUNCTION>
|
|
||||||
<ENUM>
|
|
||||||
<NAME>GdkPixbufAlphaMode</NAME>
|
|
||||||
typedef enum {
|
|
||||||
GDK_PIXBUF_ALPHA_BILEVEL,
|
|
||||||
GDK_PIXBUF_ALPHA_FULL
|
|
||||||
} GdkPixbufAlphaMode;
|
|
||||||
</ENUM>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_render_threshold_alpha</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbuf *pixbuf, GdkBitmap *bitmap,int src_x, int src_y,int dest_x, int dest_y,int width, int height,int alpha_threshold
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_render_to_drawable</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbuf *pixbuf,GdkDrawable *drawable, GdkGC *gc,int src_x, int src_y,int dest_x, int dest_y,int width, int height,GdkRgbDither dither,int x_dither, int y_dither
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_render_to_drawable_alpha</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbuf *pixbuf, GdkDrawable *drawable,int src_x, int src_y,int dest_x, int dest_y,int width, int height,GdkPixbufAlphaMode alpha_mode,int alpha_threshold,GdkRgbDither dither,int x_dither, int y_dither
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_render_pixmap_and_mask</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbuf *pixbuf,GdkPixmap **pixmap_return, GdkBitmap **mask_return,int alpha_threshold
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_get_from_drawable</NAME>
|
|
||||||
<RETURNS>GdkPixbuf *</RETURNS>
|
|
||||||
GdkPixbuf *dest,GdkDrawable *src, GdkColormap *cmap,int src_x, int src_y,int dest_x, int dest_y,int width, int height
|
|
||||||
</FUNCTION>
|
|
||||||
<ENUM>
|
|
||||||
<NAME>GdkInterpType</NAME>
|
|
||||||
typedef enum {
|
|
||||||
GDK_INTERP_NEAREST,
|
|
||||||
GDK_INTERP_TILES,
|
|
||||||
GDK_INTERP_BILINEAR,
|
|
||||||
GDK_INTERP_HYPER
|
|
||||||
} GdkInterpType;
|
|
||||||
</ENUM>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_scale</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
const GdkPixbuf *src,GdkPixbuf *dest,int dest_x,int dest_y,int dest_width,int dest_height,double offset_x,double offset_y,double scale_x,double scale_y,GdkInterpType interp_type
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_composite</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
const GdkPixbuf *src,GdkPixbuf *dest,int dest_x,int dest_y,int dest_width,int dest_height,double offset_x,double offset_y,double scale_x,double scale_y,GdkInterpType interp_type,int overall_alpha
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_composite_color</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
const GdkPixbuf *src,GdkPixbuf *dest,int dest_x,int dest_y,int dest_width,int dest_height,double offset_x,double offset_y,double scale_x,double scale_y,GdkInterpType interp_type,int overall_alpha,int check_x,int check_y,int check_size,guint32 color1,guint32 color2
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_scale_simple</NAME>
|
|
||||||
<RETURNS>GdkPixbuf *</RETURNS>
|
|
||||||
const GdkPixbuf *src,int dest_width,int dest_height,GdkInterpType interp_type
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_composite_color_simple</NAME>
|
|
||||||
<RETURNS>GdkPixbuf *</RETURNS>
|
|
||||||
const GdkPixbuf *src,int dest_width,int dest_height,GdkInterpType interp_type,int overall_alpha,int check_size,guint32 color1,guint32 color2
|
|
||||||
</FUNCTION>
|
|
||||||
<ENUM>
|
|
||||||
<NAME>GdkPixbufFrameAction</NAME>
|
|
||||||
typedef enum {
|
|
||||||
GDK_PIXBUF_FRAME_RETAIN,
|
|
||||||
GDK_PIXBUF_FRAME_DISPOSE,
|
|
||||||
GDK_PIXBUF_FRAME_REVERT
|
|
||||||
} GdkPixbufFrameAction;
|
|
||||||
</ENUM>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_animation_new_from_file</NAME>
|
|
||||||
<RETURNS>GdkPixbufAnimation *</RETURNS>
|
|
||||||
const char *filename
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_animation_ref</NAME>
|
|
||||||
<RETURNS>GdkPixbufAnimation *</RETURNS>
|
|
||||||
GdkPixbufAnimation *animation
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_animation_unref</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
GdkPixbufAnimation *animation
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_animation_get_width</NAME>
|
|
||||||
<RETURNS>int </RETURNS>
|
|
||||||
GdkPixbufAnimation *animation
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_animation_get_height</NAME>
|
|
||||||
<RETURNS>int </RETURNS>
|
|
||||||
GdkPixbufAnimation *animation
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_animation_get_frames</NAME>
|
|
||||||
<RETURNS>GList *</RETURNS>
|
|
||||||
GdkPixbufAnimation *animation
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_animation_get_num_frames</NAME>
|
|
||||||
<RETURNS>int </RETURNS>
|
|
||||||
GdkPixbufAnimation *animation
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_frame_get_pixbuf</NAME>
|
|
||||||
<RETURNS>GdkPixbuf *</RETURNS>
|
|
||||||
GdkPixbufFrame *frame
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_frame_get_x_offset</NAME>
|
|
||||||
<RETURNS>int </RETURNS>
|
|
||||||
GdkPixbufFrame *frame
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_frame_get_y_offset</NAME>
|
|
||||||
<RETURNS>int </RETURNS>
|
|
||||||
GdkPixbufFrame *frame
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_frame_get_delay_time</NAME>
|
|
||||||
<RETURNS>int </RETURNS>
|
|
||||||
GdkPixbufFrame *frame
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_frame_get_action</NAME>
|
|
||||||
<RETURNS>GdkPixbufFrameAction </RETURNS>
|
|
||||||
GdkPixbufFrame *frame
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_preinit</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
gpointer app, gpointer modinfo
|
|
||||||
</FUNCTION>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gdk_pixbuf_postinit</NAME>
|
|
||||||
<RETURNS>void </RETURNS>
|
|
||||||
gpointer app, gpointer modinfo
|
|
||||||
</FUNCTION>
|
|
||||||
<MACRO>
|
|
||||||
<NAME>GNOME_TYPE_CANVAS_PIXBUF</NAME>
|
|
||||||
#define GNOME_TYPE_CANVAS_PIXBUF (gnome_canvas_pixbuf_get_type ())
|
|
||||||
</MACRO>
|
|
||||||
<MACRO>
|
|
||||||
<NAME>GNOME_CANVAS_PIXBUF</NAME>
|
|
||||||
#define GNOME_CANVAS_PIXBUF(obj) (GTK_CHECK_CAST ((obj), \
|
|
||||||
GNOME_TYPE_CANVAS_PIXBUF, GnomeCanvasPixbuf))
|
|
||||||
</MACRO>
|
|
||||||
<MACRO>
|
|
||||||
<NAME>GNOME_CANVAS_PIXBUF_CLASS</NAME>
|
|
||||||
#define GNOME_CANVAS_PIXBUF_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), \
|
|
||||||
GNOME_TYPE_CANVAS_PIXBUF, GnomeCanvasPixbufClass))
|
|
||||||
</MACRO>
|
|
||||||
<MACRO>
|
|
||||||
<NAME>GNOME_IS_CANVAS_PIXBUF</NAME>
|
|
||||||
#define GNOME_IS_CANVAS_PIXBUF(obj) (GTK_CHECK_TYPE ((obj), GNOME_TYPE_CANVAS_PIXBUF))
|
|
||||||
</MACRO>
|
|
||||||
<MACRO>
|
|
||||||
<NAME>GNOME_IS_CANVAS_PIXBUF_CLASS</NAME>
|
|
||||||
#define GNOME_IS_CANVAS_PIXBUF_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), \
|
|
||||||
GNOME_TYPE_CANVAS_PIXBUF))
|
|
||||||
</MACRO>
|
|
||||||
<STRUCT>
|
|
||||||
<NAME>GnomeCanvasPixbuf</NAME>
|
|
||||||
</STRUCT>
|
|
||||||
<STRUCT>
|
|
||||||
<NAME>GnomeCanvasPixbufClass</NAME>
|
|
||||||
</STRUCT>
|
|
||||||
<STRUCT>
|
|
||||||
<NAME>GnomeCanvasPixbuf</NAME>
|
|
||||||
struct GnomeCanvasPixbuf {
|
|
||||||
GnomeCanvasItem item;
|
|
||||||
|
|
||||||
/* Private data */
|
|
||||||
gpointer priv;
|
|
||||||
};
|
|
||||||
</STRUCT>
|
|
||||||
<FUNCTION>
|
|
||||||
<NAME>gnome_canvas_pixbuf_get_type</NAME>
|
|
||||||
<RETURNS>GtkType </RETURNS>
|
|
||||||
void
|
|
||||||
</FUNCTION>
|
|
||||||
<MACRO>
|
|
||||||
<NAME>GDK_PIXBUF_MAJOR</NAME>
|
|
||||||
#define GDK_PIXBUF_MAJOR (0)
|
|
||||||
</MACRO>
|
|
||||||
<MACRO>
|
|
||||||
<NAME>GDK_PIXBUF_MINOR</NAME>
|
|
||||||
#define GDK_PIXBUF_MINOR (7)
|
|
||||||
</MACRO>
|
|
||||||
<MACRO>
|
|
||||||
<NAME>GDK_PIXBUF_MICRO</NAME>
|
|
||||||
#define GDK_PIXBUF_MICRO (0)
|
|
||||||
</MACRO>
|
|
||||||
<MACRO>
|
|
||||||
<NAME>GDK_PIXBUF_VERSION</NAME>
|
|
||||||
#define GDK_PIXBUF_VERSION "0.7.0"
|
|
||||||
</MACRO>
|
|
||||||
<VARIABLE>
|
|
||||||
<NAME>gdk_pixbuf_version</NAME>
|
|
||||||
extern const char *gdk_pixbuf_version;
|
|
||||||
</VARIABLE>
|
|
||||||
<STRUCT>
|
|
||||||
<NAME>GdkPixbuf</NAME>
|
|
||||||
struct GdkPixbuf {
|
|
||||||
/* Reference count */
|
|
||||||
int ref_count;
|
|
||||||
|
|
||||||
/* Color space */
|
|
||||||
GdkColorspace colorspace;
|
|
||||||
|
|
||||||
/* Number of channels, alpha included */
|
|
||||||
int n_channels;
|
|
||||||
|
|
||||||
/* Bits per channel */
|
|
||||||
int bits_per_sample;
|
|
||||||
|
|
||||||
/* Size */
|
|
||||||
int width, height;
|
|
||||||
|
|
||||||
/* Offset between rows */
|
|
||||||
int rowstride;
|
|
||||||
|
|
||||||
/* The pixel array */
|
|
||||||
guchar *pixels;
|
|
||||||
|
|
||||||
/* Destroy notification function; it is supposed to free the pixel array */
|
|
||||||
GdkPixbufDestroyNotify destroy_fn;
|
|
||||||
|
|
||||||
/* User data for the destroy notification function */
|
|
||||||
gpointer destroy_fn_data;
|
|
||||||
|
|
||||||
/* Last unref handler, determines whether the pixbuf should be finalized */
|
|
||||||
GdkPixbufLastUnref last_unref_fn;
|
|
||||||
|
|
||||||
/* User data for the last unref handler */
|
|
||||||
gpointer last_unref_fn_data;
|
|
||||||
|
|
||||||
/* Do we have an alpha channel? */
|
|
||||||
guint has_alpha : 1;
|
|
||||||
};
|
|
||||||
</STRUCT>
|
|
||||||
<STRUCT>
|
|
||||||
<NAME>GdkPixbufFrame</NAME>
|
|
||||||
struct GdkPixbufFrame {
|
|
||||||
/* The pixbuf with this frame's image data */
|
|
||||||
GdkPixbuf *pixbuf;
|
|
||||||
|
|
||||||
/* Offsets for overlaying onto the animation's area */
|
|
||||||
int x_offset;
|
|
||||||
int y_offset;
|
|
||||||
|
|
||||||
/* Frame duration in ms */
|
|
||||||
int delay_time;
|
|
||||||
|
|
||||||
/* Overlay mode */
|
|
||||||
GdkPixbufFrameAction action;
|
|
||||||
};
|
|
||||||
</STRUCT>
|
|
||||||
<STRUCT>
|
|
||||||
<NAME>GdkPixbufAnimation</NAME>
|
|
||||||
struct GdkPixbufAnimation {
|
|
||||||
/* Reference count */
|
|
||||||
int ref_count;
|
|
||||||
|
|
||||||
/* Number of frames */
|
|
||||||
int n_frames;
|
|
||||||
|
|
||||||
/* List of GdkPixbufFrame structures */
|
|
||||||
GList *frames;
|
|
||||||
|
|
||||||
/* bounding box size */
|
|
||||||
int width, height;
|
|
||||||
};
|
|
||||||
</STRUCT>
|
|
0
docs/reference/gdk-pixbuf/gdk-pixbuf-overrides.txt
Normal file
@@ -1,9 +1,25 @@
|
|||||||
<INCLUDE>gdk-pixbuf/gdk-pixbuf.h</INCLUDE>
|
<INCLUDE>gdk-pixbuf/gdk-pixbuf.h</INCLUDE>
|
||||||
|
|
||||||
|
<SECTION>
|
||||||
|
<TITLE>Initialization and Versions</TITLE>
|
||||||
|
<FILE>initialization_versions</FILE>
|
||||||
|
gdk_pixbuf_init
|
||||||
|
gdk_pixbuf_preinit
|
||||||
|
gdk_pixbuf_postinit
|
||||||
|
|
||||||
|
<SUBSECTION>
|
||||||
|
gdk_pixbuf_version
|
||||||
|
GDK_PIXBUF_VERSION
|
||||||
|
GDK_PIXBUF_MAJOR
|
||||||
|
GDK_PIXBUF_MINOR
|
||||||
|
GDK_PIXBUF_MICRO
|
||||||
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
<FILE>gdk-pixbuf</FILE>
|
<FILE>gdk-pixbuf</FILE>
|
||||||
GdkColorspace
|
GdkColorspace
|
||||||
GdkPixbuf
|
GdkPixbuf
|
||||||
|
GdkPixbufClass
|
||||||
gdk_pixbuf_get_colorspace
|
gdk_pixbuf_get_colorspace
|
||||||
gdk_pixbuf_get_n_channels
|
gdk_pixbuf_get_n_channels
|
||||||
gdk_pixbuf_get_has_alpha
|
gdk_pixbuf_get_has_alpha
|
||||||
@@ -12,16 +28,24 @@ gdk_pixbuf_get_pixels
|
|||||||
gdk_pixbuf_get_width
|
gdk_pixbuf_get_width
|
||||||
gdk_pixbuf_get_height
|
gdk_pixbuf_get_height
|
||||||
gdk_pixbuf_get_rowstride
|
gdk_pixbuf_get_rowstride
|
||||||
|
|
||||||
|
<SUBSECTION Standard>
|
||||||
|
GDK_PIXBUF
|
||||||
|
GDK_TYPE_PIXBUF
|
||||||
|
GDK_IS_PIXBUF
|
||||||
|
GDK_IS_PIXBUF_CLASS
|
||||||
|
GDK_PIXBUF_CLASS
|
||||||
|
GDK_PIXBUF_GET_CLASS
|
||||||
|
|
||||||
|
<SUBSECTION Private>
|
||||||
|
gdk_pixbuf_get_type
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
<FILE>refcounting</FILE>
|
<FILE>refcounting</FILE>
|
||||||
GdkPixbufDestroyNotify
|
GdkPixbufDestroyNotify
|
||||||
GdkPixbufLastUnref
|
|
||||||
gdk_pixbuf_ref
|
gdk_pixbuf_ref
|
||||||
gdk_pixbuf_unref
|
gdk_pixbuf_unref
|
||||||
gdk_pixbuf_set_last_unref_handler
|
|
||||||
gdk_pixbuf_finalize
|
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
@@ -37,20 +61,6 @@ gdk_pixbuf_new_from_xpm_data
|
|||||||
gdk_pixbuf_copy
|
gdk_pixbuf_copy
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
|
||||||
<FILE>rendering</FILE>
|
|
||||||
GdkPixbufAlphaMode
|
|
||||||
gdk_pixbuf_render_to_drawable_alpha
|
|
||||||
gdk_pixbuf_render_to_drawable
|
|
||||||
gdk_pixbuf_render_threshold_alpha
|
|
||||||
gdk_pixbuf_render_pixmap_and_mask
|
|
||||||
</SECTION>
|
|
||||||
|
|
||||||
<SECTION>
|
|
||||||
<FILE>from-drawables</FILE>
|
|
||||||
gdk_pixbuf_get_from_drawable
|
|
||||||
</SECTION>
|
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
<FILE>util</FILE>
|
<FILE>util</FILE>
|
||||||
gdk_pixbuf_add_alpha
|
gdk_pixbuf_add_alpha
|
||||||
@@ -62,6 +72,7 @@ gdk_pixbuf_copy_area
|
|||||||
GdkPixbufFrameAction
|
GdkPixbufFrameAction
|
||||||
GdkPixbufFrame
|
GdkPixbufFrame
|
||||||
GdkPixbufAnimation
|
GdkPixbufAnimation
|
||||||
|
GdkPixbufAnimationClass
|
||||||
gdk_pixbuf_animation_new_from_file
|
gdk_pixbuf_animation_new_from_file
|
||||||
gdk_pixbuf_animation_ref
|
gdk_pixbuf_animation_ref
|
||||||
gdk_pixbuf_animation_unref
|
gdk_pixbuf_animation_unref
|
||||||
@@ -74,6 +85,17 @@ gdk_pixbuf_frame_get_action
|
|||||||
gdk_pixbuf_frame_get_y_offset
|
gdk_pixbuf_frame_get_y_offset
|
||||||
gdk_pixbuf_frame_get_delay_time
|
gdk_pixbuf_frame_get_delay_time
|
||||||
gdk_pixbuf_frame_get_x_offset
|
gdk_pixbuf_frame_get_x_offset
|
||||||
|
|
||||||
|
<SUBSECTION Standard>
|
||||||
|
GDK_PIXBUF_ANIMATION
|
||||||
|
GDK_PIXBUF_ANIMATION_CLASS
|
||||||
|
GDK_TYPE_PIXBUF_ANIMATION
|
||||||
|
GDK_PIXBUF_ANIMATION_GET_CLASS
|
||||||
|
GDK_IS_PIXBUF_ANIMATION_CLASS
|
||||||
|
GDK_IS_PIXBUF_ANIMATION
|
||||||
|
|
||||||
|
<SUBSECTION Private>
|
||||||
|
gdk_pixbuf_animation_get_type
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
@@ -88,33 +110,34 @@ gdk_pixbuf_composite_color_simple
|
|||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
<FILE>gdk-pixbuf-loader</FILE>
|
<FILE>gdk-pixbuf-loader</FILE>
|
||||||
GDK_PIXBUF_LOADER
|
|
||||||
<TITLE>GdkPixbufLoader</TITLE>
|
<TITLE>GdkPixbufLoader</TITLE>
|
||||||
gdk_pixbuf_loader_new
|
gdk_pixbuf_loader_new
|
||||||
|
gdk_pixbuf_loader_new_with_type
|
||||||
gdk_pixbuf_loader_write
|
gdk_pixbuf_loader_write
|
||||||
gdk_pixbuf_loader_get_pixbuf
|
gdk_pixbuf_loader_get_pixbuf
|
||||||
gdk_pixbuf_loader_get_animation
|
gdk_pixbuf_loader_get_animation
|
||||||
gdk_pixbuf_loader_close
|
gdk_pixbuf_loader_close
|
||||||
<SUBSECTION Standard>
|
<SUBSECTION Standard>
|
||||||
|
GDK_PIXBUF_LOADER
|
||||||
|
GDK_PIXBUF_LOADER_GET_CLASS
|
||||||
GDK_TYPE_PIXBUF_LOADER
|
GDK_TYPE_PIXBUF_LOADER
|
||||||
GDK_IS_PIXBUF_LOADER
|
GDK_IS_PIXBUF_LOADER
|
||||||
gdk_pixbuf_loader_get_type
|
|
||||||
GDK_PIXBUF_LOADER_CLASS
|
GDK_PIXBUF_LOADER_CLASS
|
||||||
GDK_IS_PIXBUF_LOADER_CLASS
|
GDK_IS_PIXBUF_LOADER_CLASS
|
||||||
<SUBSECTION Private>
|
<SUBSECTION Private>
|
||||||
GdkPixbufLoader
|
GdkPixbufLoader
|
||||||
|
gdk_pixbuf_loader_get_type
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
<FILE>gnome-canvas-pixbuf</FILE>
|
<TITLE>Module Interface</TITLE>
|
||||||
GNOME_CANVAS_PIXBUF
|
<FILE>module_interface</FILE>
|
||||||
<TITLE>GnomeCanvasPixbuf</TITLE>
|
ModulePreparedNotifyFunc
|
||||||
<SUBSECTION Standard>
|
ModuleUpdatedNotifyFunc
|
||||||
GNOME_TYPE_CANVAS_PIXBUF
|
ModuleFrameDoneNotifyFunc
|
||||||
GNOME_IS_CANVAS_PIXBUF
|
ModuleAnimationDoneNotifyFunc
|
||||||
gnome_canvas_pixbuf_get_type
|
GdkPixbufModule
|
||||||
GNOME_CANVAS_PIXBUF_CLASS
|
gdk_pixbuf_get_module
|
||||||
GNOME_IS_CANVAS_PIXBUF_CLASS
|
gdk_pixbuf_get_named_module
|
||||||
<SUBSECTION Private>
|
gdk_pixbuf_load_module
|
||||||
GnomeCanvasPixbuf
|
</SECTION>
|
||||||
</SECTION>
|
|
@@ -1,4 +1,5 @@
|
|||||||
<!doctype book PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
|
<!doctype book PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
|
||||||
|
<!entity gdk-pixbuf-Initialization-and-Versions SYSTEM "sgml/initialization_versions.sgml">
|
||||||
<!entity gdk-pixbuf-gdk-pixbuf SYSTEM "sgml/gdk-pixbuf.sgml">
|
<!entity gdk-pixbuf-gdk-pixbuf SYSTEM "sgml/gdk-pixbuf.sgml">
|
||||||
<!entity gdk-pixbuf-refcounting SYSTEM "sgml/refcounting.sgml">
|
<!entity gdk-pixbuf-refcounting SYSTEM "sgml/refcounting.sgml">
|
||||||
<!entity gdk-pixbuf-file-loading SYSTEM "sgml/file-loading.sgml">
|
<!entity gdk-pixbuf-file-loading SYSTEM "sgml/file-loading.sgml">
|
||||||
@@ -8,12 +9,13 @@
|
|||||||
<!entity gdk-pixbuf-from-drawables SYSTEM "sgml/from-drawables.sgml">
|
<!entity gdk-pixbuf-from-drawables SYSTEM "sgml/from-drawables.sgml">
|
||||||
<!entity gdk-pixbuf-util SYSTEM "sgml/util.sgml">
|
<!entity gdk-pixbuf-util SYSTEM "sgml/util.sgml">
|
||||||
<!entity gdk-pixbuf-animation SYSTEM "sgml/animation.sgml">
|
<!entity gdk-pixbuf-animation SYSTEM "sgml/animation.sgml">
|
||||||
|
<!entity gdk-pixbuf-Module-Interface SYSTEM "sgml/module_interface.sgml">
|
||||||
<!entity GdkPixbufLoader SYSTEM "sgml/gdk-pixbuf-loader.sgml">
|
<!entity GdkPixbufLoader SYSTEM "sgml/gdk-pixbuf-loader.sgml">
|
||||||
<!entity GnomeCanvasPixbuf SYSTEM "sgml/gnome-canvas-pixbuf.sgml">
|
<!entity GnomeCanvasPixbuf SYSTEM "sgml/gnome-canvas-pixbuf.sgml">
|
||||||
<!entity Compiling SYSTEM "compiling.sgml">
|
<!entity Compiling SYSTEM "compiling.sgml">
|
||||||
]>
|
]>
|
||||||
|
|
||||||
<book>
|
<book id="index">
|
||||||
<bookinfo>
|
<bookinfo>
|
||||||
<title>The <application>gdk-pixbuf</application> Library</title>
|
<title>The <application>gdk-pixbuf</application> Library</title>
|
||||||
|
|
||||||
@@ -35,7 +37,7 @@
|
|||||||
</copyright>
|
</copyright>
|
||||||
</bookinfo>
|
</bookinfo>
|
||||||
|
|
||||||
<reference>
|
<reference id="api">
|
||||||
<title>API Reference</title>
|
<title>API Reference</title>
|
||||||
|
|
||||||
<partintro>
|
<partintro>
|
||||||
@@ -47,18 +49,23 @@
|
|||||||
</para>
|
</para>
|
||||||
</partintro>
|
</partintro>
|
||||||
|
|
||||||
|
&gdk-pixbuf-Initialization-and-Versions;
|
||||||
&gdk-pixbuf-gdk-pixbuf;
|
&gdk-pixbuf-gdk-pixbuf;
|
||||||
&gdk-pixbuf-refcounting;
|
&gdk-pixbuf-refcounting;
|
||||||
&gdk-pixbuf-file-loading;
|
&gdk-pixbuf-file-loading;
|
||||||
&gdk-pixbuf-creating;
|
&gdk-pixbuf-creating;
|
||||||
&gdk-pixbuf-rendering;
|
|
||||||
&gdk-pixbuf-scaling;
|
&gdk-pixbuf-scaling;
|
||||||
&gdk-pixbuf-from-drawables;
|
|
||||||
&gdk-pixbuf-util;
|
&gdk-pixbuf-util;
|
||||||
&gdk-pixbuf-animation;
|
&gdk-pixbuf-animation;
|
||||||
&GdkPixbufLoader;
|
&GdkPixbufLoader;
|
||||||
&GnomeCanvasPixbuf;
|
&GnomeCanvasPixbuf;
|
||||||
</reference>
|
</reference>
|
||||||
|
|
||||||
|
<reference id="internals">
|
||||||
|
<title>Internals</title>
|
||||||
|
&gdk-pixbuf-Module-Interface;
|
||||||
|
</reference>
|
||||||
|
|
||||||
&Compiling;
|
&Compiling;
|
||||||
|
|
||||||
</book>
|
</book>
|
||||||
|
@@ -29,10 +29,8 @@ Animations as multi-frame structures.
|
|||||||
|
|
||||||
@GDK_PIXBUF_FRAME_RETAIN: The previous image should remain displayed,
|
@GDK_PIXBUF_FRAME_RETAIN: The previous image should remain displayed,
|
||||||
and will potentially be occluded by the new frame.
|
and will potentially be occluded by the new frame.
|
||||||
|
|
||||||
@GDK_PIXBUF_FRAME_DISPOSE: The animation will be reverted to the state
|
@GDK_PIXBUF_FRAME_DISPOSE: The animation will be reverted to the state
|
||||||
before the frame was shown.
|
before the frame was shown.
|
||||||
|
|
||||||
@GDK_PIXBUF_FRAME_REVERT: The animation will be reverted to the first
|
@GDK_PIXBUF_FRAME_REVERT: The animation will be reverted to the first
|
||||||
frame.
|
frame.
|
||||||
|
|
||||||
@@ -44,12 +42,30 @@ frame.
|
|||||||
action.
|
action.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
@pixbuf:
|
||||||
|
@x_offset:
|
||||||
|
@y_offset:
|
||||||
|
@delay_time:
|
||||||
|
@action:
|
||||||
|
|
||||||
<!-- ##### STRUCT GdkPixbufAnimation ##### -->
|
<!-- ##### STRUCT GdkPixbufAnimation ##### -->
|
||||||
<para>
|
<para>
|
||||||
This structure describes an animation, which is represented as a
|
This structure describes an animation, which is represented as a
|
||||||
list of #GdkPixbufFrame structures.
|
list of #GdkPixbufFrame structures.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
@parent_instance:
|
||||||
|
@n_frames:
|
||||||
|
@frames:
|
||||||
|
@width:
|
||||||
|
@height:
|
||||||
|
|
||||||
|
<!-- ##### STRUCT GdkPixbufAnimationClass ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_animation_new_from_file ##### -->
|
<!-- ##### FUNCTION gdk_pixbuf_animation_new_from_file ##### -->
|
||||||
<para>
|
<para>
|
||||||
|
|
||||||
@@ -154,11 +170,11 @@ frame.
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
@frame:
|
@frame:
|
||||||
@Returns:
|
@Returns: <!--
|
||||||
|
|
||||||
<!--
|
|
||||||
Local variables:
|
Local variables:
|
||||||
mode: sgml
|
mode: sgml
|
||||||
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
||||||
End:
|
End:
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
||||||
|
@@ -88,9 +88,7 @@ Creating a pixbuf from image data that is already in memory.
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
@pixbuf:
|
@pixbuf:
|
||||||
@Returns:
|
@Returns: <!--
|
||||||
|
|
||||||
<!--
|
|
||||||
Local variables:
|
Local variables:
|
||||||
mode: sgml
|
mode: sgml
|
||||||
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
||||||
|
@@ -32,8 +32,7 @@ Loading a pixbuf from a file.
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
@filename:
|
@filename:
|
||||||
@Returns:
|
@Returns: <!--
|
||||||
<!--
|
|
||||||
Local variables:
|
Local variables:
|
||||||
mode: sgml
|
mode: sgml
|
||||||
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
||||||
|
@@ -1,43 +0,0 @@
|
|||||||
<!-- ##### SECTION Title ##### -->
|
|
||||||
Drawables to Pixbufs
|
|
||||||
|
|
||||||
<!-- ##### SECTION Short_Description ##### -->
|
|
||||||
Getting parts of a drawable's image data into a pixbuf.
|
|
||||||
|
|
||||||
<!-- ##### SECTION Long_Description ##### -->
|
|
||||||
<para>
|
|
||||||
The functions in this section allow you to take the image data
|
|
||||||
from a GDK drawable and dump it into a #GdkPixbuf. This can be
|
|
||||||
used for screenshots and other special effects. Note that these
|
|
||||||
operations can be expensive, since the image data has to be
|
|
||||||
transferred from the X server to the client program and converted.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### SECTION See_Also ##### -->
|
|
||||||
<para>
|
|
||||||
gdk_image_get().
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_get_from_drawable ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@dest:
|
|
||||||
@src:
|
|
||||||
@cmap:
|
|
||||||
@src_x:
|
|
||||||
@src_y:
|
|
||||||
@dest_x:
|
|
||||||
@dest_y:
|
|
||||||
@width:
|
|
||||||
@height:
|
|
||||||
@Returns:
|
|
||||||
<!--
|
|
||||||
Local variables:
|
|
||||||
mode: sgml
|
|
||||||
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
|
||||||
End:
|
|
||||||
-->
|
|
||||||
|
|
||||||
|
|
@@ -74,14 +74,6 @@ Application-driven progressive image loading.
|
|||||||
gdk_pixbuf_new_from_file()
|
gdk_pixbuf_new_from_file()
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<!-- ##### MACRO GDK_PIXBUF_LOADER ##### -->
|
|
||||||
<para>
|
|
||||||
Casts a #GtkObject to a #GdkPixbufLoader.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@obj: A GTK+ object.
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_loader_new ##### -->
|
<!-- ##### FUNCTION gdk_pixbuf_loader_new ##### -->
|
||||||
<para>
|
<para>
|
||||||
|
|
||||||
@@ -90,6 +82,15 @@ Application-driven progressive image loading.
|
|||||||
@Returns:
|
@Returns:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_pixbuf_loader_new_with_type ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@image_type:
|
||||||
|
@Returns:
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_loader_write ##### -->
|
<!-- ##### FUNCTION gdk_pixbuf_loader_write ##### -->
|
||||||
<para>
|
<para>
|
||||||
|
|
||||||
@@ -136,6 +137,12 @@ Application-driven progressive image loading.
|
|||||||
areas of an image that is being loaded.
|
areas of an image that is being loaded.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
@gdkpixbufloader: the object which received the signal.
|
||||||
|
@arg1:
|
||||||
|
@arg2:
|
||||||
|
@arg3:
|
||||||
|
@arg4:
|
||||||
|
<!-- # Unused Parameters # -->
|
||||||
@loader: Loader which emitted the signal.
|
@loader: Loader which emitted the signal.
|
||||||
@x: X offset of upper-left corner of the updated area.
|
@x: X offset of upper-left corner of the updated area.
|
||||||
@y: Y offset of upper-left corner of the updated area.
|
@y: Y offset of upper-left corner of the updated area.
|
||||||
@@ -151,6 +158,8 @@ Application-driven progressive image loading.
|
|||||||
fetch the partially-loaded pixbuf.
|
fetch the partially-loaded pixbuf.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
@gdkpixbufloader: the object which received the signal.
|
||||||
|
<!-- # Unused Parameters # -->
|
||||||
@loader: Loader which emitted the signal.
|
@loader: Loader which emitted the signal.
|
||||||
|
|
||||||
<!-- ##### SIGNAL GdkPixbufLoader::frame-done ##### -->
|
<!-- ##### SIGNAL GdkPixbufLoader::frame-done ##### -->
|
||||||
@@ -159,6 +168,9 @@ Application-driven progressive image loading.
|
|||||||
emitted for each frame in an animation data stream.
|
emitted for each frame in an animation data stream.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
@gdkpixbufloader: the object which received the signal.
|
||||||
|
@arg1:
|
||||||
|
<!-- # Unused Parameters # -->
|
||||||
@loader: Loader which emitted the signal.
|
@loader: Loader which emitted the signal.
|
||||||
@frame: Frame which just completed loading.
|
@frame: Frame which just completed loading.
|
||||||
|
|
||||||
@@ -167,6 +179,8 @@ Application-driven progressive image loading.
|
|||||||
This signal is emitted when an animation is done loading.
|
This signal is emitted when an animation is done loading.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
@gdkpixbufloader: the object which received the signal.
|
||||||
|
<!-- # Unused Parameters # -->
|
||||||
@loader: Loader which emitted the signal.
|
@loader: Loader which emitted the signal.
|
||||||
|
|
||||||
<!-- ##### SIGNAL GdkPixbufLoader::closed ##### -->
|
<!-- ##### SIGNAL GdkPixbufLoader::closed ##### -->
|
||||||
@@ -177,6 +191,8 @@ Application-driven progressive image loading.
|
|||||||
drives it.
|
drives it.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
@gdkpixbufloader: the object which received the signal.
|
||||||
|
<!-- # Unused Parameters # -->
|
||||||
@loader: Loader which emitted the signal.
|
@loader: Loader which emitted the signal.
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
|
@@ -1,27 +1,148 @@
|
|||||||
<!-- ##### FUNCTION gdk_pixbuf_load_module ##### -->
|
<!-- ##### USER_FUNCTION GdkPixbufLastUnref ##### -->
|
||||||
|
<para>
|
||||||
|
A function of this type can be used to override the default
|
||||||
|
operation when a pixbuf loses its last reference, i.e. when
|
||||||
|
gdk_pixbuf_unref() is called on a #GdkPixbuf structure that has a
|
||||||
|
reference count of 1. This function should determine whether to
|
||||||
|
finalize the pixbuf by calling gdk_pixbuf_finalize(), or whether
|
||||||
|
to just resume normal execution. The last unref handler for a
|
||||||
|
#GdkPixbuf can be set using the
|
||||||
|
gdk_pixbuf_set_last_unref_handler() function. By default, pixbufs
|
||||||
|
will be finalized automatically if no last unref handler has been
|
||||||
|
defined.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@pixbuf: The pixbuf that is losing its last reference.
|
||||||
|
@data: User closure data.
|
||||||
|
|
||||||
|
<!-- ##### SECTION ./tmpl/from-drawables.sgml:Title ##### -->
|
||||||
|
Drawables to Pixbufs
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### ARG GnomeCanvasPixbuf:height_pixels ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### SECTION ./tmpl/rendering.sgml:See_Also ##### -->
|
||||||
|
<para>
|
||||||
|
GdkRGB
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_pixbuf_render_pixmap_and_mask ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@pixbuf:
|
||||||
|
@pixmap_return:
|
||||||
|
@mask_return:
|
||||||
|
@alpha_threshold: <!--
|
||||||
|
Local variables:
|
||||||
|
mode: sgml
|
||||||
|
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
||||||
|
End:
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_pixbuf_render_to_drawable ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@pixbuf:
|
||||||
|
@drawable:
|
||||||
|
@gc:
|
||||||
|
@src_x:
|
||||||
|
@src_y:
|
||||||
|
@dest_x:
|
||||||
|
@dest_y:
|
||||||
|
@width:
|
||||||
|
@height:
|
||||||
|
@dither:
|
||||||
|
@x_dither:
|
||||||
|
@y_dither:
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_pixbuf_get_from_drawable ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@dest:
|
||||||
|
@src:
|
||||||
|
@cmap:
|
||||||
|
@src_x:
|
||||||
|
@src_y:
|
||||||
|
@dest_x:
|
||||||
|
@dest_y:
|
||||||
|
@width:
|
||||||
|
@height:
|
||||||
|
@Returns: <!--
|
||||||
|
Local variables:
|
||||||
|
mode: sgml
|
||||||
|
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
||||||
|
End:
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_pixbuf_new_from_art_pixbuf ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@art_pixbuf:
|
||||||
|
@Returns:
|
||||||
|
|
||||||
|
<!-- ##### ARG GnomeCanvasPixbuf:y_pixels ##### -->
|
||||||
<para>
|
<para>
|
||||||
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
@image_module:
|
|
||||||
|
|
||||||
<!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:Short_Description ##### -->
|
<!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:Short_Description ##### -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### STRUCT GdkPixbufModule ##### -->
|
<!-- ##### SECTION ./tmpl/from-drawables.sgml:Long_Description ##### -->
|
||||||
|
<para>
|
||||||
|
The functions in this section allow you to take the image data
|
||||||
|
from a GDK drawable and dump it into a #GdkPixbuf. This can be
|
||||||
|
used for screenshots and other special effects. Note that these
|
||||||
|
operations can be expensive, since the image data has to be
|
||||||
|
transferred from the X server to the client program and converted.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:See_Also ##### -->
|
||||||
<para>
|
<para>
|
||||||
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
@module_name:
|
|
||||||
@format_check:
|
<!-- ##### FUNCTION gdk_pixbuf_finalize ##### -->
|
||||||
@module:
|
<para>
|
||||||
@load:
|
|
||||||
@load_xpm_data:
|
</para>
|
||||||
@begin_load:
|
|
||||||
@stop_load:
|
@pixbuf: <!--
|
||||||
@load_increment:
|
Local variables:
|
||||||
|
mode: sgml
|
||||||
|
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
||||||
|
End:
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!-- ##### SECTION ./tmpl/rendering.sgml:Short_Description ##### -->
|
||||||
|
Rendering a pixbuf to a GDK drawable.
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_pixbuf_set_last_unref_handler ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@pixbuf:
|
||||||
|
@last_unref_fn:
|
||||||
|
@last_unref_fn_data:
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:x_set ##### -->
|
<!-- ##### ARG GnomeCanvasPixbuf:x_set ##### -->
|
||||||
<para>
|
<para>
|
||||||
@@ -32,70 +153,55 @@
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### USER_FUNCTION ModulePreparedNotifyFunc ##### -->
|
<!-- ##### FUNCTION gdk_pixbuf_get_format ##### -->
|
||||||
<para>
|
<para>
|
||||||
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
@pixbuf:
|
@pixbuf:
|
||||||
@user_data:
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_get_module ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@buffer:
|
|
||||||
@size:
|
|
||||||
@Returns:
|
@Returns:
|
||||||
|
|
||||||
<!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:See_Also ##### -->
|
<!-- ##### FUNCTION gdk_pixbuf_render_to_drawable_alpha ##### -->
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_new_from_art_pixbuf ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@art_pixbuf:
|
|
||||||
@Returns:
|
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:height_pixels ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:y_pixels ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:Long_Description ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### USER_FUNCTION ModuleUpdatedNotifyFunc ##### -->
|
|
||||||
<para>
|
<para>
|
||||||
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
@pixbuf:
|
@pixbuf:
|
||||||
@user_data:
|
@drawable:
|
||||||
@x:
|
@src_x:
|
||||||
@y:
|
@src_y:
|
||||||
|
@dest_x:
|
||||||
|
@dest_y:
|
||||||
@width:
|
@width:
|
||||||
@height:
|
@height:
|
||||||
|
@alpha_mode:
|
||||||
|
@alpha_threshold:
|
||||||
|
@dither:
|
||||||
|
@x_dither:
|
||||||
|
@y_dither:
|
||||||
|
|
||||||
<!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:Title ##### -->
|
<!-- ##### ARG GnomeCanvasPixbuf:x_pixels ##### -->
|
||||||
gdk-pixbuf-io
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### SECTION ./tmpl/from-drawables.sgml:See_Also ##### -->
|
||||||
|
<para>
|
||||||
|
gdk_image_get().
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### SECTION ./tmpl/rendering.sgml:Title ##### -->
|
||||||
|
Rendering
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### MACRO GDK_PIXBUF_LOADER ##### -->
|
||||||
|
<para>
|
||||||
|
Casts a #GtkObject to a #GdkPixbufLoader.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@obj: A GTK+ object.
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:y_set ##### -->
|
<!-- ##### ARG GnomeCanvasPixbuf:y_set ##### -->
|
||||||
<para>
|
<para>
|
||||||
@@ -108,19 +214,50 @@ gdk-pixbuf-io
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:x_pixels ##### -->
|
<!-- ##### SECTION ./tmpl/rendering.sgml:Long_Description ##### -->
|
||||||
<para>
|
<para>
|
||||||
|
The <application>gdk-pixbuf</application> library provides several
|
||||||
|
convenience functions to render pixbufs to GDK drawables. It uses
|
||||||
|
the GdkRGB to render the image data.
|
||||||
|
</para>
|
||||||
|
|
||||||
</para>
|
<para>
|
||||||
|
At this point there is not a standard alpha channel extension for
|
||||||
|
the X Window System, so it is not possible to use full opacity
|
||||||
|
information when painting images to arbitrary drawables. The
|
||||||
|
<application>gdk-pixbuf</application> convenience functions will
|
||||||
|
threshold the opacity information to create a bi-level clipping
|
||||||
|
mask (black and white), and use that to draw the image onto a
|
||||||
|
drawable.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<important>
|
||||||
|
<para>
|
||||||
|
Since these functions use GdkRGB for rendering, you must
|
||||||
|
initialize GdkRGB before using any of them. You can do this by
|
||||||
|
calling gdk_rgb_init() near the beginning of your program.
|
||||||
|
</para>
|
||||||
|
</important>
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_get_format ##### -->
|
<!-- ##### SECTION ./tmpl/from-drawables.sgml:Short_Description ##### -->
|
||||||
|
Getting parts of a drawable's image data into a pixbuf.
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_pixbuf_render_threshold_alpha ##### -->
|
||||||
<para>
|
<para>
|
||||||
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
@pixbuf:
|
@pixbuf:
|
||||||
@Returns:
|
@bitmap:
|
||||||
|
@src_x:
|
||||||
|
@src_y:
|
||||||
|
@dest_x:
|
||||||
|
@dest_y:
|
||||||
|
@width:
|
||||||
|
@height:
|
||||||
|
@alpha_threshold:
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:width_pixels ##### -->
|
<!-- ##### ARG GnomeCanvasPixbuf:width_pixels ##### -->
|
||||||
<para>
|
<para>
|
||||||
@@ -128,3 +265,32 @@ gdk-pixbuf-io
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### ENUM GdkPixbufAlphaMode ##### -->
|
||||||
|
<para>
|
||||||
|
These values can be passed to
|
||||||
|
gdk_pixbuf_render_to_drawable_alpha() to control how the alpha
|
||||||
|
chanel of an image should be handled. This function can create a
|
||||||
|
bilevel clipping mask (black and white) and use it while painting
|
||||||
|
the image. In the future, when the X Window System gets an alpha
|
||||||
|
channel extension, it will be possible to do full alpha
|
||||||
|
compositing onto arbitrary drawables. For now both cases fall
|
||||||
|
back to a bilevel clipping mask.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@GDK_PIXBUF_ALPHA_BILEVEL: A bilevel clipping mask (black and white)
|
||||||
|
will be created and used to draw the image. Pixels below 0.5 opacity
|
||||||
|
will be considered fully transparent, and all others will be
|
||||||
|
considered fully opaque.
|
||||||
|
@GDK_PIXBUF_ALPHA_FULL: For now falls back to #GDK_PIXBUF_ALPHA_BILEVEL.
|
||||||
|
In the future it will do full alpha compositing.
|
||||||
|
|
||||||
|
<!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:Long_Description ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### SECTION ./tmpl/gdk-pixbuf-io.sgml:Title ##### -->
|
||||||
|
gdk-pixbuf-io
|
||||||
|
|
||||||
|
|
||||||
|
@@ -33,6 +33,24 @@ Information that describes an image.
|
|||||||
rowstride or number of bytes between rows.
|
rowstride or number of bytes between rows.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
@parent_instance:
|
||||||
|
@colorspace:
|
||||||
|
@n_channels:
|
||||||
|
@bits_per_sample:
|
||||||
|
@width:
|
||||||
|
@height:
|
||||||
|
@rowstride:
|
||||||
|
@pixels:
|
||||||
|
@destroy_fn:
|
||||||
|
@destroy_fn_data:
|
||||||
|
@has_alpha:
|
||||||
|
|
||||||
|
<!-- ##### STRUCT GdkPixbufClass ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_get_colorspace ##### -->
|
<!-- ##### FUNCTION gdk_pixbuf_get_colorspace ##### -->
|
||||||
<para>
|
<para>
|
||||||
|
|
||||||
@@ -102,11 +120,11 @@ Information that describes an image.
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
@pixbuf:
|
@pixbuf:
|
||||||
@Returns:
|
@Returns: <!--
|
||||||
|
|
||||||
<!--
|
|
||||||
Local variables:
|
Local variables:
|
||||||
mode: sgml
|
mode: sgml
|
||||||
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
||||||
End:
|
End:
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
||||||
|
@@ -1,301 +0,0 @@
|
|||||||
<!-- ##### SECTION Title ##### -->
|
|
||||||
GnomeCanvasPixbuf
|
|
||||||
|
|
||||||
<!-- ##### SECTION Short_Description ##### -->
|
|
||||||
Canvas item to display #GdkPixbuf images.
|
|
||||||
|
|
||||||
<!-- ##### SECTION Long_Description ##### -->
|
|
||||||
<para>
|
|
||||||
This canvas item displays #GdkPixbuf images. It handles full
|
|
||||||
affine transformations in both GDK and antialiased modes, and also
|
|
||||||
supports the <ulink url="http://www.w3.org">W3C</ulink>'s <ulink
|
|
||||||
url="http://www.w3.org/Graphics/SVG/">SVG</ulink>-like scaling and
|
|
||||||
translation semantics for absolute pixel values.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
#GdkPixbuf structures may be shared among different pixbuf canvas
|
|
||||||
items; the pixbuf item uses #GdkPixbuf's reference counting
|
|
||||||
functions for this.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<refsect2>
|
|
||||||
<title>Custom Scaling and Translation</title>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
In addition to the normal affine transformations supported by
|
|
||||||
canvas items, the #GnomeCanvasPixbuf item supports independent
|
|
||||||
object arguments for scaling and translation. This is useful
|
|
||||||
for explicitly setting a size to which the pixbuf's image will
|
|
||||||
be scaled, and for specifying translation offsets that take
|
|
||||||
place in the item's local coordinate system.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
By default, the pixbuf canvas item will attain the size in units
|
|
||||||
of the #GdkPixbuf it contains. If a #GnomeCanvasPixbuf is
|
|
||||||
configured to use a #GdkPixbuf that has a size of 300 by 200
|
|
||||||
pixels, then the pixbuf item will automatically obtain a size of
|
|
||||||
300 by 200 units in the item's local coordinate system. If the
|
|
||||||
item is transformed with a scaling transformation of (0.5, 2.0),
|
|
||||||
then the final image size will be of 150 by 400 pixels.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
To set custom width and height values, you must set the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--width-set">width_set</link> or <link
|
|
||||||
linkend="GnomeCanvasPixbuf--height-set">height_set</link>
|
|
||||||
arguments to %TRUE, and then set the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--width">width</link> or <link
|
|
||||||
linkend="GnomeCanvasPixbuf--height">height</link> arguments to
|
|
||||||
the desired values. The former two arguments control whether
|
|
||||||
the latter two are used when computing the final image's size;
|
|
||||||
they are both %FALSE by default so that the pixbuf item will
|
|
||||||
attain a size in units equal to the size in pixels of the
|
|
||||||
#GdkPixbuf that the item contains.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
The custom translation offsets are controlled by the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--x">x</link> and <link
|
|
||||||
linkend="GnomeCanvasPixbuf--y">y</link> arguments. The logical
|
|
||||||
upper-left vertex of the image will be translated by the
|
|
||||||
specified distance, aligned with the item's local coordinate
|
|
||||||
system.
|
|
||||||
</para>
|
|
||||||
</refsect2>
|
|
||||||
|
|
||||||
<refsect2>
|
|
||||||
<title>Absolute Pixel Scaling and Translation</title>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
The <ulink url="http://www.w3.org/Graphics/SVG/">Scalable Vector
|
|
||||||
Graphics</ulink> specification (SVG) of the <ulink
|
|
||||||
url="http://www.w3.org">World Wide Web Consortium</ulink> also
|
|
||||||
allows images to be translated and scaled by absolute pixel
|
|
||||||
values that are independent of an item's normal affine
|
|
||||||
transformation.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
Normally, the pixbuf item's translation and scaling arguments
|
|
||||||
are interpreted in units, so they will be modified by the item's
|
|
||||||
affine transformation. The <link
|
|
||||||
linkend="GnomeCanvasPixbuf--width-in-pixels">width_in_pixels</link>,
|
|
||||||
<link
|
|
||||||
linkend="GnomeCanvasPixbuf--height-in-pixels">height_in_pixels</link>,
|
|
||||||
<link
|
|
||||||
linkend="GnomeCanvasPixbuf--x-in-pixels">x_in_pixels</link>, and
|
|
||||||
<link
|
|
||||||
linkend="GnomeCanvasPixbuf--y-in-pixels">y_in_pixels</link>
|
|
||||||
object arguments can be used to modify this behavior. If one of
|
|
||||||
these arguments is %TRUE, then the corresponding scaling or
|
|
||||||
translation value will not be affected lengthwise by the pixbuf
|
|
||||||
item's affine transformation.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
For example, consider a pixbuf item whose size is (300, 200).
|
|
||||||
If the item is modified with a scaling transformation of (0.5,
|
|
||||||
2.0) but the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--width-in-pixels">width_in_pixels</link>
|
|
||||||
is set to %TRUE, then the item will appear to be (300, 400)
|
|
||||||
pixels in size. This means that in this case the item's affine
|
|
||||||
transformation only applies to the height value, while the width
|
|
||||||
value is kept in absolute pixels.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
Likewise, consider a pixbuf item whose (<link
|
|
||||||
linkend="GnomeCanvasPixbuf--x">x</link>, <link
|
|
||||||
linkend="GnomeCanvasPixbuf--y">y</link>) arguments are set to
|
|
||||||
(30, 40). If the item is then modified by the same scaling
|
|
||||||
transformation of (0.5, 2.0) but the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--y-in-pixels">y_in_pixels</link>
|
|
||||||
argument is set to %TRUE, then the image's upper-left corner
|
|
||||||
will appear to be at position (15, 40). In this case, the
|
|
||||||
affine transformation is applied only to the x offset, while the
|
|
||||||
y offset is kept in absolute pixels.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
In short, these arguments control whether a particular dimension
|
|
||||||
of a pixbuf item is scaled or not in the normal way by the
|
|
||||||
item's affine transformation.
|
|
||||||
</para>
|
|
||||||
</refsect2>
|
|
||||||
|
|
||||||
<refsect2>
|
|
||||||
<title>Resource Management</title>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
When you set the #GdkPixbuf structure that a #GnomeCanvasPixbuf
|
|
||||||
item will use by setting the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--pixbuf">pixbuf</link> argument, a
|
|
||||||
reference count will be added to that #GdkPixbuf structure.
|
|
||||||
When the pixbuf item no longer needs the #GdkPixbuf structure,
|
|
||||||
such as when the item is destroyed or when a new pixbuf
|
|
||||||
structure is passed to it, then the old #GdkPixbuf structure
|
|
||||||
will be automatically unreferenced.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
This means that if an application just needs to load a pixbuf
|
|
||||||
image and set it into a pixbuf canvas item, it can do the
|
|
||||||
following to ‘forget’ about the pixbuf structure:
|
|
||||||
|
|
||||||
<programlisting>
|
|
||||||
GdkPixbuf *pixbuf;
|
|
||||||
GnomeCanvasItem *item;
|
|
||||||
|
|
||||||
pixbuf = gdk_pixbuf_new_from_file ("foo.png");
|
|
||||||
g_assert (pixbuf != NULL);
|
|
||||||
|
|
||||||
item = gnome_canvas_item_new (gnome_canvas_root (my_canvas),
|
|
||||||
gnome_canvas_pixbuf_get_type (),
|
|
||||||
"pixbuf", pixbuf,
|
|
||||||
NULL);
|
|
||||||
gdk_pixbuf_unref (pixbuf);
|
|
||||||
</programlisting>
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
After this happens, the reference count of the pixbuf structure
|
|
||||||
will be 1: the gdk_pixbuf_new_from_file() function creates it
|
|
||||||
with a reference count of 1, then setting the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--pixbuf">pixbuf</link> argument of
|
|
||||||
the #GnomeCanvasPixbuf item increases it to 2, and then it is
|
|
||||||
decremented to 1 by the call to gdk_pixbuf_unref(). When the
|
|
||||||
canvas item is destroyed, it will automatically unreference the
|
|
||||||
pixbuf structure again, causing its reference count to drop to
|
|
||||||
zero and thus be freed.
|
|
||||||
</para>
|
|
||||||
</refsect2>
|
|
||||||
|
|
||||||
<!-- ##### SECTION See_Also ##### -->
|
|
||||||
<para>
|
|
||||||
#GnomeCanvas, #GdkPixbuf
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### MACRO GNOME_CANVAS_PIXBUF ##### -->
|
|
||||||
<para>
|
|
||||||
Casts a #GtkOjbect to a #GnomeCanvasPixbuf.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@obj: A GTK+ object.
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:pixbuf ##### -->
|
|
||||||
<para>
|
|
||||||
Contains a pointer to a #GdkPixbuf structure that will be used by
|
|
||||||
the pixbuf canvas item as an image source. When a pixbuf is set
|
|
||||||
its reference count is incremented; if the pixbuf item kept a
|
|
||||||
pointer to another #GdkPixbuf structure, the reference count of
|
|
||||||
this structure will be decremented. Also, the GdkPixbuf's
|
|
||||||
reference count will automatically be decremented when the
|
|
||||||
#GnomeCanvasPixbuf item is destroyed. When a pixbuf is queried, a
|
|
||||||
reference count will not be added to the return value; you must do
|
|
||||||
this yourself if you intend to keep the pixbuf structure around.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:width ##### -->
|
|
||||||
<para>
|
|
||||||
Indicates the width the pixbuf will be scaled to. This argument
|
|
||||||
will only be used if the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--width-set">width_set</link> argument
|
|
||||||
is %TRUE. If the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--width-in-pixels">width_in_pixels</link>
|
|
||||||
argument is %FALSE, the width will be taken to be in canvas units,
|
|
||||||
and thus will be scaled along with the canvas item's affine
|
|
||||||
transformation. If width_in_pixels is %TRUE, the width will be
|
|
||||||
taken to be in pixels, and will visually remain a constant size
|
|
||||||
even if the item's affine transformation changes.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:width_set ##### -->
|
|
||||||
<para>
|
|
||||||
Determines whether the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--width">width</link> argument is taken
|
|
||||||
into account when scaling the pixbuf item. If this argument is
|
|
||||||
%FALSE, then the width value of the pixbuf will be used instead.
|
|
||||||
This argument is %FALSE by default.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:width_in_pixels ##### -->
|
|
||||||
<para>
|
|
||||||
If this argument is %TRUE, then the width of the pixbuf will be
|
|
||||||
considered to be in pixels, that is, it will not be visually
|
|
||||||
scaled even if the item's affine transformation changes. If this
|
|
||||||
is %FALSE, then the width of the pixbuf will be considered to be
|
|
||||||
in canvas units, and so will be scaled normally by affine
|
|
||||||
transformations. The default is %FALSE.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:height ##### -->
|
|
||||||
<para>
|
|
||||||
Indicates the height the pixbuf will be scaled to. This argument
|
|
||||||
will only be used if the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--height-set">height_set</link> argument
|
|
||||||
is %TRUE. Works in the same way as the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--width">width</link> argument.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:height_set ##### -->
|
|
||||||
<para>
|
|
||||||
Determines whether the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--height">height</link> argument is
|
|
||||||
taken into account when scaling the pixbuf item. Works in the
|
|
||||||
same way as the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--width-set">width_set</link> argument.
|
|
||||||
The default is %FALSE.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:height_in_pixels ##### -->
|
|
||||||
<para>
|
|
||||||
Works in the same way as the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--width-in-pixels">width_in_pixels</link>
|
|
||||||
argument. The default is %FALSE.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:x ##### -->
|
|
||||||
<para>
|
|
||||||
Indicates the horizontal translation offset of the pixbuf item's
|
|
||||||
image. This offset may not actually appear horizontal, since it
|
|
||||||
will be affected by the item's affine transformation. The default
|
|
||||||
is 0.0.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:x_in_pixels ##### -->
|
|
||||||
<para>
|
|
||||||
If this argument is %TRUE, the pixbuf's translation with respect
|
|
||||||
to its logical origin in item-relative coordinates will be in
|
|
||||||
pixels, that is, the visible offset will not change even if the
|
|
||||||
item's affine transformation changes. If it is %FALSE, the
|
|
||||||
pixbuf's translation will be taken to be in canvas units, and thus
|
|
||||||
will change along with the item's affine transformation. The
|
|
||||||
default is %FALSE.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:y ##### -->
|
|
||||||
<para>
|
|
||||||
Indicates the vertical translation offset of the pixbuf item's
|
|
||||||
image. Works in the same way as the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--x">x</link> argument. The default is
|
|
||||||
0.0.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### ARG GnomeCanvasPixbuf:y_in_pixels ##### -->
|
|
||||||
<para>
|
|
||||||
Works in the same way as the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--x-in-pixels">x_in_pixels</link>
|
|
||||||
argument, but controls whether the <link
|
|
||||||
linkend="GnomeCanvasPixbuf--y">y</link> translation offset is
|
|
||||||
scaled or not. The default is %FALSE.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Local variables:
|
|
||||||
mode: sgml
|
|
||||||
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
|
||||||
End:
|
|
||||||
-->
|
|
75
docs/reference/gdk-pixbuf/tmpl/initialization_versions.sgml
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
<!-- ##### SECTION Title ##### -->
|
||||||
|
Initialization and Versions
|
||||||
|
|
||||||
|
<!-- ##### SECTION Short_Description ##### -->
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### SECTION Long_Description ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<!-- ##### SECTION See_Also ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_pixbuf_init ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_pixbuf_preinit ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@app:
|
||||||
|
@modinfo:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_pixbuf_postinit ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@app:
|
||||||
|
@modinfo:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### VARIABLE gdk_pixbuf_version ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### MACRO GDK_PIXBUF_VERSION ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### MACRO GDK_PIXBUF_MAJOR ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### MACRO GDK_PIXBUF_MINOR ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### MACRO GDK_PIXBUF_MICRO ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
|
@@ -1,5 +1,5 @@
|
|||||||
<!-- ##### SECTION Title ##### -->
|
<!-- ##### SECTION Title ##### -->
|
||||||
gdk-pixbuf-io
|
Module Interface
|
||||||
|
|
||||||
<!-- ##### SECTION Short_Description ##### -->
|
<!-- ##### SECTION Short_Description ##### -->
|
||||||
|
|
||||||
@@ -29,11 +29,29 @@ gdk-pixbuf-io
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
@pixbuf:
|
@pixbuf:
|
||||||
@user_data:
|
|
||||||
@x:
|
@x:
|
||||||
@y:
|
@y:
|
||||||
@width:
|
@width:
|
||||||
@height:
|
@height:
|
||||||
|
@user_data:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### USER_FUNCTION ModuleFrameDoneNotifyFunc ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@frame:
|
||||||
|
@user_data:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### USER_FUNCTION ModuleAnimationDoneNotifyFunc ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@pixbuf:
|
||||||
|
@user_data:
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### STRUCT GdkPixbufModule ##### -->
|
<!-- ##### STRUCT GdkPixbufModule ##### -->
|
||||||
@@ -49,6 +67,7 @@ gdk-pixbuf-io
|
|||||||
@begin_load:
|
@begin_load:
|
||||||
@stop_load:
|
@stop_load:
|
||||||
@load_increment:
|
@load_increment:
|
||||||
|
@load_animation:
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_get_module ##### -->
|
<!-- ##### FUNCTION gdk_pixbuf_get_module ##### -->
|
||||||
<para>
|
<para>
|
||||||
@@ -60,6 +79,15 @@ gdk-pixbuf-io
|
|||||||
@Returns:
|
@Returns:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_pixbuf_get_named_module ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@name:
|
||||||
|
@Returns:
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_load_module ##### -->
|
<!-- ##### FUNCTION gdk_pixbuf_load_module ##### -->
|
||||||
<para>
|
<para>
|
||||||
|
|
@@ -68,24 +68,6 @@ Functions to perform reference counting and memory management on a
|
|||||||
@data: User closure data.
|
@data: User closure data.
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### USER_FUNCTION GdkPixbufLastUnref ##### -->
|
|
||||||
<para>
|
|
||||||
A function of this type can be used to override the default
|
|
||||||
operation when a pixbuf loses its last reference, i.e. when
|
|
||||||
gdk_pixbuf_unref() is called on a #GdkPixbuf structure that has a
|
|
||||||
reference count of 1. This function should determine whether to
|
|
||||||
finalize the pixbuf by calling gdk_pixbuf_finalize(), or whether
|
|
||||||
to just resume normal execution. The last unref handler for a
|
|
||||||
#GdkPixbuf can be set using the
|
|
||||||
gdk_pixbuf_set_last_unref_handler() function. By default, pixbufs
|
|
||||||
will be finalized automatically if no last unref handler has been
|
|
||||||
defined.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@pixbuf: The pixbuf that is losing its last reference.
|
|
||||||
@data: User closure data.
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_ref ##### -->
|
<!-- ##### FUNCTION gdk_pixbuf_ref ##### -->
|
||||||
<para>
|
<para>
|
||||||
|
|
||||||
@@ -103,26 +85,3 @@ Functions to perform reference counting and memory management on a
|
|||||||
@pixbuf:
|
@pixbuf:
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_set_last_unref_handler ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@pixbuf:
|
|
||||||
@last_unref_fn:
|
|
||||||
@last_unref_fn_data:
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_finalize ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@pixbuf:
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Local variables:
|
|
||||||
mode: sgml
|
|
||||||
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
|
||||||
End:
|
|
||||||
-->
|
|
||||||
|
@@ -1,126 +0,0 @@
|
|||||||
<!-- ##### SECTION Title ##### -->
|
|
||||||
Rendering
|
|
||||||
|
|
||||||
<!-- ##### SECTION Short_Description ##### -->
|
|
||||||
Rendering a pixbuf to a GDK drawable.
|
|
||||||
|
|
||||||
<!-- ##### SECTION Long_Description ##### -->
|
|
||||||
<para>
|
|
||||||
The <application>gdk-pixbuf</application> library provides several
|
|
||||||
convenience functions to render pixbufs to GDK drawables. It uses
|
|
||||||
the GdkRGB to render the image data.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
At this point there is not a standard alpha channel extension for
|
|
||||||
the X Window System, so it is not possible to use full opacity
|
|
||||||
information when painting images to arbitrary drawables. The
|
|
||||||
<application>gdk-pixbuf</application> convenience functions will
|
|
||||||
threshold the opacity information to create a bi-level clipping
|
|
||||||
mask (black and white), and use that to draw the image onto a
|
|
||||||
drawable.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<important>
|
|
||||||
<para>
|
|
||||||
Since these functions use GdkRGB for rendering, you must
|
|
||||||
initialize GdkRGB before using any of them. You can do this by
|
|
||||||
calling gdk_rgb_init() near the beginning of your program.
|
|
||||||
</para>
|
|
||||||
</important>
|
|
||||||
|
|
||||||
<!-- ##### SECTION See_Also ##### -->
|
|
||||||
<para>
|
|
||||||
GdkRGB
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### ENUM GdkPixbufAlphaMode ##### -->
|
|
||||||
<para>
|
|
||||||
These values can be passed to
|
|
||||||
gdk_pixbuf_render_to_drawable_alpha() to control how the alpha
|
|
||||||
chanel of an image should be handled. This function can create a
|
|
||||||
bilevel clipping mask (black and white) and use it while painting
|
|
||||||
the image. In the future, when the X Window System gets an alpha
|
|
||||||
channel extension, it will be possible to do full alpha
|
|
||||||
compositing onto arbitrary drawables. For now both cases fall
|
|
||||||
back to a bilevel clipping mask.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@GDK_PIXBUF_ALPHA_BILEVEL: A bilevel clipping mask (black and white)
|
|
||||||
will be created and used to draw the image. Pixels below 0.5 opacity
|
|
||||||
will be considered fully transparent, and all others will be
|
|
||||||
considered fully opaque.
|
|
||||||
@GDK_PIXBUF_ALPHA_FULL: For now falls back to #GDK_PIXBUF_ALPHA_BILEVEL.
|
|
||||||
In the future it will do full alpha compositing.
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_render_to_drawable_alpha ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@pixbuf:
|
|
||||||
@drawable:
|
|
||||||
@src_x:
|
|
||||||
@src_y:
|
|
||||||
@dest_x:
|
|
||||||
@dest_y:
|
|
||||||
@width:
|
|
||||||
@height:
|
|
||||||
@alpha_mode:
|
|
||||||
@alpha_threshold:
|
|
||||||
@dither:
|
|
||||||
@x_dither:
|
|
||||||
@y_dither:
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_render_to_drawable ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@pixbuf:
|
|
||||||
@drawable:
|
|
||||||
@gc:
|
|
||||||
@src_x:
|
|
||||||
@src_y:
|
|
||||||
@dest_x:
|
|
||||||
@dest_y:
|
|
||||||
@width:
|
|
||||||
@height:
|
|
||||||
@dither:
|
|
||||||
@x_dither:
|
|
||||||
@y_dither:
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_render_threshold_alpha ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@pixbuf:
|
|
||||||
@bitmap:
|
|
||||||
@src_x:
|
|
||||||
@src_y:
|
|
||||||
@dest_x:
|
|
||||||
@dest_y:
|
|
||||||
@width:
|
|
||||||
@height:
|
|
||||||
@alpha_threshold:
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_render_pixmap_and_mask ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@pixbuf:
|
|
||||||
@pixmap_return:
|
|
||||||
@mask_return:
|
|
||||||
@alpha_threshold:
|
|
||||||
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Local variables:
|
|
||||||
mode: sgml
|
|
||||||
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
|
||||||
End:
|
|
||||||
-->
|
|
@@ -84,18 +84,15 @@ expose_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data)
|
|||||||
|
|
||||||
@GDK_INTERP_NEAREST: Nearest neighbor sampling; this is the fastest
|
@GDK_INTERP_NEAREST: Nearest neighbor sampling; this is the fastest
|
||||||
and lowest quality mode.
|
and lowest quality mode.
|
||||||
|
|
||||||
@GDK_INTERP_TILES: This is an accurate simulation of the PostScript
|
@GDK_INTERP_TILES: This is an accurate simulation of the PostScript
|
||||||
image operator without any interpolation enabled. Each pixel is
|
image operator without any interpolation enabled. Each pixel is
|
||||||
rendered as a tiny parallelogram of solid color, the edges of which
|
rendered as a tiny parallelogram of solid color, the edges of which
|
||||||
are implemented with antialiasing. It resembles nearest neighbor for
|
are implemented with antialiasing. It resembles nearest neighbor for
|
||||||
enlargement, and bilinear for reduction.
|
enlargement, and bilinear for reduction.
|
||||||
|
|
||||||
@GDK_INTERP_BILINEAR: Bilinear interpolation. For enlargement, it is
|
@GDK_INTERP_BILINEAR: Bilinear interpolation. For enlargement, it is
|
||||||
equivalent to point-sampling the ideal bilinear-interpolated image.
|
equivalent to point-sampling the ideal bilinear-interpolated image.
|
||||||
For reduction, it is equivalent to laying down small tiles and
|
For reduction, it is equivalent to laying down small tiles and
|
||||||
integrating over the coverage area.
|
integrating over the coverage area.
|
||||||
|
|
||||||
@GDK_INTERP_HYPER: This is the slowest and highest quality
|
@GDK_INTERP_HYPER: This is the slowest and highest quality
|
||||||
reconstruction function. It is derived from the hyperbolic filters in
|
reconstruction function. It is derived from the hyperbolic filters in
|
||||||
Wolberg's "Digital Image Warping", and is formally defined as the
|
Wolberg's "Digital Image Warping", and is formally defined as the
|
||||||
@@ -188,12 +185,11 @@ image (the filter is designed to be idempotent for 1:1 pixel mapping).
|
|||||||
@check_size:
|
@check_size:
|
||||||
@color1:
|
@color1:
|
||||||
@color2:
|
@color2:
|
||||||
@Returns:
|
@Returns: <!--
|
||||||
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Local variables:
|
Local variables:
|
||||||
mode: sgml
|
mode: sgml
|
||||||
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
||||||
End:
|
End:
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
||||||
|
@@ -29,6 +29,7 @@ Utility and miscellaneous convenience functions.
|
|||||||
@b:
|
@b:
|
||||||
@Returns:
|
@Returns:
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_pixbuf_copy_area ##### -->
|
<!-- ##### FUNCTION gdk_pixbuf_copy_area ##### -->
|
||||||
<para>
|
<para>
|
||||||
|
|
||||||
@@ -41,12 +42,11 @@ Utility and miscellaneous convenience functions.
|
|||||||
@height:
|
@height:
|
||||||
@dest_pixbuf:
|
@dest_pixbuf:
|
||||||
@dest_x:
|
@dest_x:
|
||||||
@dest_y:
|
@dest_y: <!--
|
||||||
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Local variables:
|
Local variables:
|
||||||
mode: sgml
|
mode: sgml
|
||||||
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
|
||||||
End:
|
End:
|
||||||
-->
|
-->
|
||||||
|
|
||||||
|
|
||||||
|
@@ -6,45 +6,145 @@ DOC_MODULE=gdk
|
|||||||
# The top-level SGML file.
|
# The top-level SGML file.
|
||||||
DOC_MAIN_SGML_FILE=gdk-docs.sgml
|
DOC_MAIN_SGML_FILE=gdk-docs.sgml
|
||||||
|
|
||||||
# We could alternatively use this for using installed headers.
|
# The directory containing the source code (if it contains documentation).
|
||||||
INCLUDE_DIR=`gtk-config --prefix`/include/gdk
|
DOC_SOURCE_DIR=$(top_srcdir)/gdk
|
||||||
|
|
||||||
|
# Extra options to supply to gtkdoc-fixref
|
||||||
|
FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html
|
||||||
|
|
||||||
|
# Header files to ignore when scanning
|
||||||
|
IGNORE_HFILES= \
|
||||||
|
gdkkeysyms.h \
|
||||||
|
gdkinternals.h \
|
||||||
|
gdkprivate.h \
|
||||||
|
gdkpoly-generic.h \
|
||||||
|
gdkregion-generic.h \
|
||||||
|
linux-fb \
|
||||||
|
nanox \
|
||||||
|
win32 \
|
||||||
|
x11
|
||||||
|
|
||||||
|
# Extra files to add when scanning
|
||||||
|
EXTRA_HFILES= \
|
||||||
|
$(top_srcdir)/gdk/x11/gdkx.h
|
||||||
|
|
||||||
|
tmpl_sources = \
|
||||||
|
tmpl/color_contexts.sgml \
|
||||||
|
tmpl/colors.sgml \
|
||||||
|
tmpl/cursors.sgml \
|
||||||
|
tmpl/dnd.sgml \
|
||||||
|
tmpl/drawing.sgml \
|
||||||
|
tmpl/event_structs.sgml \
|
||||||
|
tmpl/events.sgml \
|
||||||
|
tmpl/fonts.sgml \
|
||||||
|
tmpl/gcs.sgml \
|
||||||
|
tmpl/gdk-unused.sgml \
|
||||||
|
tmpl/general.sgml \
|
||||||
|
tmpl/images.sgml \
|
||||||
|
tmpl/input.sgml \
|
||||||
|
tmpl/input_contexts.sgml \
|
||||||
|
tmpl/input_devices.sgml \
|
||||||
|
tmpl/input_methods.sgml \
|
||||||
|
tmpl/keys.sgml \
|
||||||
|
tmpl/pango_interaction.sgml \
|
||||||
|
tmpl/pixbufs.sgml \
|
||||||
|
tmpl/pixmaps.sgml \
|
||||||
|
tmpl/properties.sgml \
|
||||||
|
tmpl/regions.sgml \
|
||||||
|
tmpl/rgb.sgml \
|
||||||
|
tmpl/selections.sgml \
|
||||||
|
tmpl/threads.sgml \
|
||||||
|
tmpl/visuals.sgml \
|
||||||
|
tmpl/windows.sgml \
|
||||||
|
tmpl/x_interaction.sgml
|
||||||
|
|
||||||
|
# Extra SGML files that are included by DOC_MAIN_SGML_FILE
|
||||||
|
content_files =
|
||||||
|
|
||||||
|
|
||||||
|
####################################
|
||||||
|
# Everything below here is generic #
|
||||||
|
####################################
|
||||||
|
|
||||||
TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
|
TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
|
||||||
|
|
||||||
scan:
|
EXTRA_DIST = \
|
||||||
gtkdoc-scan --module=$(DOC_MODULE) $(INCLUDE_DIR)/gdk.h $(INCLUDE_DIR)/gdktypes.h $(INCLUDE_DIR)/gdkrgb.h
|
$(DOC_MAIN_SGML_FILE) \
|
||||||
|
$(content_files) \
|
||||||
|
$(DOC_MODULE)-sections.txt \
|
||||||
|
$(DOC_MODULE)-overrides.txt
|
||||||
|
|
||||||
templates: scan
|
if ENABLE_GTK_DOC
|
||||||
gtkdoc-mktmpl --module=$(DOC_MODULE)
|
all-local: html/index.html
|
||||||
|
|
||||||
|
$(DOC_MODULE)-decl.txt:
|
||||||
|
$(MAKE) scan
|
||||||
|
|
||||||
|
$(tmpl_sources): $(DOC_MODULE)-decl.txt $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
|
||||||
|
$(MAKE) templates
|
||||||
|
|
||||||
|
sgml/$(DOC_MODULE)-doc.bottom: $(tmpl_sources) $(DOC_MODULE)-decl.txt
|
||||||
|
$(MAKE) sgml
|
||||||
|
|
||||||
|
html/index.html: sgml/$(DOC_MODULE)-doc.bottom $(DOC_MAIN_SGML_FILE) $(content_fiels)
|
||||||
|
$(MAKE) html
|
||||||
|
endif
|
||||||
|
|
||||||
|
scan:
|
||||||
|
-(cd $(srcdir) \
|
||||||
|
&& gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(EXTRA_HFILES))
|
||||||
|
|
||||||
|
templates:
|
||||||
|
cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE)
|
||||||
|
|
||||||
sgml:
|
sgml:
|
||||||
gtkdoc-mkdb --module=$(DOC_MODULE)
|
cd $(srcdir) \
|
||||||
|
&& gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR)
|
||||||
|
|
||||||
html:
|
html:
|
||||||
if ! test -d html ; then mkdir html ; fi
|
test -d $(srcdir)/html || mkdir $(srcdir)/html
|
||||||
-cd html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
|
-cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
|
||||||
|
@echo '-- Fixing Crossreferences'
|
||||||
|
gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
|
||||||
|
|
||||||
clean-local:
|
clean-local:
|
||||||
rm -f *~ *.bak *.hierarchy *.signals *.args *-unused.txt
|
rm -f *~ *.bak *.signals *-unused.txt
|
||||||
|
|
||||||
maintainer-clean-local: clean
|
maintainer-clean-local: clean
|
||||||
rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
|
cd $(srcdir) && rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
|
||||||
|
|
||||||
install-data-local:
|
install-data-local:
|
||||||
install -d -m 0755 $(TARGET_DIR)
|
$(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
|
||||||
install -m 0644 html/*.html $(TARGET_DIR)
|
(installfiles=`echo $(srcdir)/html/*.html`; \
|
||||||
install -m 0644 html/index.sgml $(TARGET_DIR)
|
if test "$$installfiles" = '$(srcdir)/html/*.html'; \
|
||||||
gtkdoc-fixxref --module=$(DOC_MODULE) --html-dir=$(HTML_DIR)
|
then echo '-- Nothing to install' ; \
|
||||||
|
else \
|
||||||
|
for i in $$installfiles; do \
|
||||||
|
echo '-- Installing '$$i ; \
|
||||||
|
$(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
|
||||||
|
done; \
|
||||||
|
echo '-- Installing $(srcdir)/html/index.sgml' ; \
|
||||||
|
$(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR); \
|
||||||
|
fi)
|
||||||
|
|
||||||
EXTRA_DIST = \
|
#
|
||||||
$(DOC_MAIN_SGML_FILE) \
|
# Require gtk-doc when making dist
|
||||||
$(DOC_MODULE)-sections.txt \
|
#
|
||||||
gdk-overrides.txt \
|
if ENABLE_GTK_DOC
|
||||||
gdk-decl.txt
|
dist-check-gtkdoc:
|
||||||
|
else
|
||||||
|
dist-check-gtkdoc:
|
||||||
|
@echo "*** gtk-doc must be installed and enabled in order to make dist
|
||||||
|
@false
|
||||||
|
endif
|
||||||
|
|
||||||
dist-hook:
|
dist-hook: dist-check-gtkdoc
|
||||||
|
mkdir $(distdir)/html
|
||||||
|
mkdir $(distdir)/sgml
|
||||||
mkdir $(distdir)/tmpl
|
mkdir $(distdir)/tmpl
|
||||||
cp -p tmpl/*.sgml $(distdir)/tmpl
|
-cp $(srcdir)/html/*.html $(srcdir)/html/*.css $(distdir)/html
|
||||||
|
-cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
|
||||||
|
-cp $(srcdir)/sgml/*.sgml $(distdir)/sgml
|
||||||
|
-cp $(srcdir)/sgml/*.bottom $(srcdir)/sgml/*.top $(distdir)/sgml
|
||||||
|
|
||||||
.PHONY : html sgml templates scan
|
.PHONY : html sgml templates scan
|
||||||
|
@@ -3,6 +3,7 @@
|
|||||||
<!entity gdk-Bitmaps-and-Pixmaps SYSTEM "sgml/pixmaps.sgml">
|
<!entity gdk-Bitmaps-and-Pixmaps SYSTEM "sgml/pixmaps.sgml">
|
||||||
<!entity gdk-Images SYSTEM "sgml/images.sgml">
|
<!entity gdk-Images SYSTEM "sgml/images.sgml">
|
||||||
<!entity gdk-GdkRGB SYSTEM "sgml/rgb.sgml">
|
<!entity gdk-GdkRGB SYSTEM "sgml/rgb.sgml">
|
||||||
|
<!entity gdk-Pixbufs SYSTEM "sgml/pixbufs.sgml">
|
||||||
<!entity gdk-Colormaps-and-Colors SYSTEM "sgml/colors.sgml">
|
<!entity gdk-Colormaps-and-Colors SYSTEM "sgml/colors.sgml">
|
||||||
<!entity gdk-Fonts SYSTEM "sgml/fonts.sgml">
|
<!entity gdk-Fonts SYSTEM "sgml/fonts.sgml">
|
||||||
<!entity gdk-Drawing-Primitives SYSTEM "sgml/drawing.sgml">
|
<!entity gdk-Drawing-Primitives SYSTEM "sgml/drawing.sgml">
|
||||||
@@ -13,6 +14,7 @@
|
|||||||
<!entity gdk-Properties-and-Atoms SYSTEM "sgml/properties.sgml">
|
<!entity gdk-Properties-and-Atoms SYSTEM "sgml/properties.sgml">
|
||||||
<!entity gdk-Input-Methods SYSTEM "sgml/input_methods.sgml">
|
<!entity gdk-Input-Methods SYSTEM "sgml/input_methods.sgml">
|
||||||
<!entity gdk-Input-Contexts SYSTEM "sgml/input_contexts.sgml">
|
<!entity gdk-Input-Contexts SYSTEM "sgml/input_contexts.sgml">
|
||||||
|
<!entity gdk-Pango-Interaction SYSTEM "sgml/pango_interaction.sgml">
|
||||||
<!entity gdk-Color-Contexts SYSTEM "sgml/color_contexts.sgml">
|
<!entity gdk-Color-Contexts SYSTEM "sgml/color_contexts.sgml">
|
||||||
<!entity gdk-Points-Rectangles-and-Regions SYSTEM "sgml/regions.sgml">
|
<!entity gdk-Points-Rectangles-and-Regions SYSTEM "sgml/regions.sgml">
|
||||||
<!entity gdk-Threads SYSTEM "sgml/threads.sgml">
|
<!entity gdk-Threads SYSTEM "sgml/threads.sgml">
|
||||||
@@ -23,14 +25,16 @@
|
|||||||
<!entity gdk-Cursors SYSTEM "sgml/cursors.sgml">
|
<!entity gdk-Cursors SYSTEM "sgml/cursors.sgml">
|
||||||
<!entity gdk-Input SYSTEM "sgml/input.sgml">
|
<!entity gdk-Input SYSTEM "sgml/input.sgml">
|
||||||
<!entity gdk-Drag-and-Drop SYSTEM "sgml/dnd.sgml">
|
<!entity gdk-Drag-and-Drop SYSTEM "sgml/dnd.sgml">
|
||||||
|
<!entity gdk-X-Window-System-Interaction SYSTEM
|
||||||
|
"sgml/x_interaction.sgml">
|
||||||
]>
|
]>
|
||||||
<book id="index">
|
<book id="index">
|
||||||
<bookinfo>
|
<bookinfo>
|
||||||
<title>GDK Reference Manual</title>
|
<title>GDK Reference Manual</title>
|
||||||
</bookinfo>
|
</bookinfo>
|
||||||
|
|
||||||
<chapter id="gdk">
|
<reference id="reference">
|
||||||
<title>GDK</title>
|
<title>API Reference</title>
|
||||||
&gdk-General;
|
&gdk-General;
|
||||||
|
|
||||||
&gdk-Points-Rectangles-and-Regions;
|
&gdk-Points-Rectangles-and-Regions;
|
||||||
@@ -40,6 +44,7 @@
|
|||||||
&gdk-Bitmaps-and-Pixmaps;
|
&gdk-Bitmaps-and-Pixmaps;
|
||||||
&gdk-GdkRGB;
|
&gdk-GdkRGB;
|
||||||
&gdk-Images;
|
&gdk-Images;
|
||||||
|
&gdk-Pixbufs;
|
||||||
|
|
||||||
&gdk-Colormaps-and-Colors;
|
&gdk-Colormaps-and-Colors;
|
||||||
&gdk-Color-Contexts;
|
&gdk-Color-Contexts;
|
||||||
@@ -66,7 +71,10 @@
|
|||||||
|
|
||||||
&gdk-Key-Values;
|
&gdk-Key-Values;
|
||||||
|
|
||||||
|
&gdk-Pango-Interaction;
|
||||||
&gdk-Input-Methods;
|
&gdk-Input-Methods;
|
||||||
&gdk-Input-Contexts;
|
&gdk-Input-Contexts;
|
||||||
</chapter>
|
|
||||||
|
&gdk-X-Window-System-Interaction;
|
||||||
|
</reference>
|
||||||
</book>
|
</book>
|
||||||
|
@@ -1,6 +1,13 @@
|
|||||||
|
|
||||||
# GdkPixmap, GdkBitmap and GdkDrawable are the same as GdkWindow.
|
# GdkPixmap, GdkBitmap and GdkDrawable are the same as GdkWindow.
|
||||||
<STRUCT>
|
<STRUCT>
|
||||||
|
<NAME>GdkWindow</NAME>
|
||||||
|
struct GdkPixmap
|
||||||
|
{
|
||||||
|
gpointer user_data;
|
||||||
|
};
|
||||||
|
</STRUCT>
|
||||||
|
<STRUCT>
|
||||||
<NAME>GdkPixmap</NAME>
|
<NAME>GdkPixmap</NAME>
|
||||||
struct GdkPixmap
|
struct GdkPixmap
|
||||||
{
|
{
|
||||||
@@ -21,3 +28,24 @@ struct GdkDrawable
|
|||||||
gpointer user_data;
|
gpointer user_data;
|
||||||
};
|
};
|
||||||
</STRUCT>
|
</STRUCT>
|
||||||
|
|
||||||
|
<MACRO>
|
||||||
|
<NAME>GDK_WINDOWING_X11</NAME>
|
||||||
|
#define GDK_WINDOWING_X11
|
||||||
|
</MACRO>
|
||||||
|
|
||||||
|
<MACRO>
|
||||||
|
<NAME>GDK_WINDOWING_WIN32</NAME>
|
||||||
|
#define GDK_WINDOWING_WIN32
|
||||||
|
</MACRO>
|
||||||
|
|
||||||
|
<MACRO>
|
||||||
|
<NAME>GDK_WINDOWING_NANOX</NAME>
|
||||||
|
#define GDK_WINDOWING_NANOX
|
||||||
|
</MACRO>
|
||||||
|
|
||||||
|
<MACRO>
|
||||||
|
<NAME>GDK_WINDOWING_FB</NAME>
|
||||||
|
#define GDK_WINDOWING_FB
|
||||||
|
</MACRO>
|
||||||
|
|
||||||
|
@@ -24,6 +24,7 @@ gdk_screen_height_mm
|
|||||||
|
|
||||||
<SUBSECTION>
|
<SUBSECTION>
|
||||||
gdk_pointer_grab
|
gdk_pointer_grab
|
||||||
|
GdkGrabStatus
|
||||||
gdk_pointer_ungrab
|
gdk_pointer_ungrab
|
||||||
gdk_pointer_is_grabbed
|
gdk_pointer_is_grabbed
|
||||||
|
|
||||||
@@ -46,13 +47,15 @@ gdk_set_use_xshm
|
|||||||
gdk_error_trap_push
|
gdk_error_trap_push
|
||||||
gdk_error_trap_pop
|
gdk_error_trap_pop
|
||||||
|
|
||||||
|
<SUBSECTION>
|
||||||
|
GDK_WINDOWING_X11
|
||||||
|
GDK_WINDOWING_WIN32
|
||||||
|
GDK_WINDOWING_NANOX
|
||||||
|
GDK_WINDOWING_FB
|
||||||
|
|
||||||
<SUBSECTION Private>
|
<SUBSECTION Private>
|
||||||
GdkStatus
|
GdkStatus
|
||||||
gdk_time_get
|
GDKVAR
|
||||||
gdk_timer_get
|
|
||||||
gdk_timer_set
|
|
||||||
gdk_timer_enable
|
|
||||||
gdk_timer_disable
|
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
@@ -71,6 +74,20 @@ gdk_pixmap_unref
|
|||||||
GdkBitmap
|
GdkBitmap
|
||||||
gdk_bitmap_ref
|
gdk_bitmap_ref
|
||||||
gdk_bitmap_unref
|
gdk_bitmap_unref
|
||||||
|
|
||||||
|
<SUBSECTION Standard>
|
||||||
|
GDK_PIXMAP
|
||||||
|
GDK_PIXMAP_GET_CLASS
|
||||||
|
GDK_PIXMAP_OBJECT
|
||||||
|
GDK_TYPE_PIXMAP
|
||||||
|
GDK_IS_PIXMAP
|
||||||
|
GDK_PIXMAP_CLASS
|
||||||
|
GDK_IS_PIXMAP_CLASS
|
||||||
|
|
||||||
|
<SUBSECTION Private>
|
||||||
|
gdk_pixmap_get_type
|
||||||
|
GdkPixmapObject
|
||||||
|
GdkPixmapObjectClass
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
@@ -81,10 +98,24 @@ gdk_image_new
|
|||||||
GdkImageType
|
GdkImageType
|
||||||
gdk_image_new_bitmap
|
gdk_image_new_bitmap
|
||||||
gdk_image_get
|
gdk_image_get
|
||||||
|
gdk_image_ref
|
||||||
|
gdk_image_unref
|
||||||
gdk_image_destroy
|
gdk_image_destroy
|
||||||
<SUBSECTION>
|
<SUBSECTION>
|
||||||
gdk_image_put_pixel
|
gdk_image_put_pixel
|
||||||
gdk_image_get_pixel
|
gdk_image_get_pixel
|
||||||
|
|
||||||
|
<SUBSECTION Standard>
|
||||||
|
GDK_IMAGE
|
||||||
|
GDK_TYPE_IMAGE
|
||||||
|
GDK_IS_IMAGE
|
||||||
|
GDK_IMAGE_CLASS
|
||||||
|
GDK_IMAGE_GET_CLASS
|
||||||
|
GDK_IS_IMAGE_CLASS
|
||||||
|
|
||||||
|
<SUBSECTION Private>
|
||||||
|
GdkImageClass
|
||||||
|
gdk_image_get_type
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
@@ -98,6 +129,7 @@ gdk_draw_rgb_image_dithalign
|
|||||||
gdk_draw_indexed_image
|
gdk_draw_indexed_image
|
||||||
gdk_draw_gray_image
|
gdk_draw_gray_image
|
||||||
gdk_draw_rgb_32_image
|
gdk_draw_rgb_32_image
|
||||||
|
gdk_draw_rgb_32_image_dithalign
|
||||||
GdkRgbDither
|
GdkRgbDither
|
||||||
|
|
||||||
<SUBSECTION>
|
<SUBSECTION>
|
||||||
@@ -109,16 +141,29 @@ GdkRgbCmap
|
|||||||
gdk_rgb_gc_set_foreground
|
gdk_rgb_gc_set_foreground
|
||||||
gdk_rgb_gc_set_background
|
gdk_rgb_gc_set_background
|
||||||
gdk_rgb_xpixel_from_rgb
|
gdk_rgb_xpixel_from_rgb
|
||||||
|
gdk_rgb_find_color
|
||||||
|
|
||||||
<SUBSECTION>
|
<SUBSECTION>
|
||||||
gdk_rgb_set_install
|
gdk_rgb_set_install
|
||||||
gdk_rgb_set_min_colors
|
gdk_rgb_set_min_colors
|
||||||
gdk_rgb_get_visual
|
gdk_rgb_get_visual
|
||||||
|
gdk_rgb_get_colormap
|
||||||
gdk_rgb_get_cmap
|
gdk_rgb_get_cmap
|
||||||
gdk_rgb_ditherable
|
gdk_rgb_ditherable
|
||||||
gdk_rgb_set_verbose
|
gdk_rgb_set_verbose
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
|
<SECTION>
|
||||||
|
<TITLE>Pixbufs</TITLE>
|
||||||
|
<FILE>pixbufs</FILE>
|
||||||
|
GdkPixbufAlphaMode
|
||||||
|
gdk_pixbuf_render_threshold_alpha
|
||||||
|
gdk_pixbuf_render_to_drawable
|
||||||
|
gdk_pixbuf_render_to_drawable_alpha
|
||||||
|
gdk_pixbuf_render_pixmap_and_mask
|
||||||
|
gdk_pixbuf_get_from_drawable
|
||||||
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
<TITLE>Colormaps and Colors</TITLE>
|
<TITLE>Colormaps and Colors</TITLE>
|
||||||
<FILE>colors</FILE>
|
<FILE>colors</FILE>
|
||||||
@@ -146,6 +191,18 @@ gdk_color_alloc
|
|||||||
gdk_color_change
|
gdk_color_change
|
||||||
gdk_color_equal
|
gdk_color_equal
|
||||||
gdk_color_hash
|
gdk_color_hash
|
||||||
|
|
||||||
|
<SUBSECTION Standard>
|
||||||
|
GDK_COLORMAP
|
||||||
|
GDK_COLORMAP_GET_CLASS
|
||||||
|
GDK_TYPE_COLORMAP
|
||||||
|
GDK_IS_COLORMAP
|
||||||
|
GDK_COLORMAP_CLASS
|
||||||
|
GDK_IS_COLORMAP_CLASS
|
||||||
|
|
||||||
|
<SUBSECTION Private>
|
||||||
|
GdkColormapClass
|
||||||
|
gdk_colormap_get_type
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
@@ -155,6 +212,7 @@ GdkFont
|
|||||||
GdkFontType
|
GdkFontType
|
||||||
gdk_font_load
|
gdk_font_load
|
||||||
gdk_fontset_load
|
gdk_fontset_load
|
||||||
|
gdk_font_from_description
|
||||||
gdk_font_ref
|
gdk_font_ref
|
||||||
gdk_font_unref
|
gdk_font_unref
|
||||||
gdk_font_id
|
gdk_font_id
|
||||||
@@ -176,6 +234,10 @@ gdk_string_height
|
|||||||
gdk_text_height
|
gdk_text_height
|
||||||
gdk_char_height
|
gdk_char_height
|
||||||
|
|
||||||
|
<SUBSECTION>
|
||||||
|
gdk_font_full_name_get
|
||||||
|
gdk_font_full_name_free
|
||||||
|
|
||||||
<SUBSECTION>
|
<SUBSECTION>
|
||||||
GdkWChar
|
GdkWChar
|
||||||
gdk_wcstombs
|
gdk_wcstombs
|
||||||
@@ -185,6 +247,19 @@ gdk_mbstowcs
|
|||||||
<SECTION>
|
<SECTION>
|
||||||
<TITLE>Drawing Primitives</TITLE>
|
<TITLE>Drawing Primitives</TITLE>
|
||||||
<FILE>drawing</FILE>
|
<FILE>drawing</FILE>
|
||||||
|
GdkDrawable
|
||||||
|
GdkDrawableClass
|
||||||
|
gdk_drawable_ref
|
||||||
|
gdk_drawable_unref
|
||||||
|
gdk_drawable_set_data
|
||||||
|
gdk_drawable_get_data
|
||||||
|
gdk_drawable_get_visual
|
||||||
|
gdk_drawable_set_colormap
|
||||||
|
gdk_drawable_get_colormap
|
||||||
|
gdk_drawable_get_depth
|
||||||
|
gdk_drawable_get_size
|
||||||
|
|
||||||
|
<SUBSECTION>
|
||||||
gdk_draw_point
|
gdk_draw_point
|
||||||
gdk_draw_points
|
gdk_draw_points
|
||||||
gdk_draw_line
|
gdk_draw_line
|
||||||
@@ -194,6 +269,9 @@ GdkSegment
|
|||||||
gdk_draw_rectangle
|
gdk_draw_rectangle
|
||||||
gdk_draw_arc
|
gdk_draw_arc
|
||||||
gdk_draw_polygon
|
gdk_draw_polygon
|
||||||
|
gdk_draw_glyphs
|
||||||
|
gdk_draw_layout_line
|
||||||
|
gdk_draw_layout
|
||||||
|
|
||||||
<SUBSECTION>
|
<SUBSECTION>
|
||||||
gdk_draw_string
|
gdk_draw_string
|
||||||
@@ -202,8 +280,17 @@ gdk_draw_text_wc
|
|||||||
|
|
||||||
<SUBSECTION>
|
<SUBSECTION>
|
||||||
gdk_draw_pixmap
|
gdk_draw_pixmap
|
||||||
|
gdk_draw_drawable
|
||||||
gdk_draw_image
|
gdk_draw_image
|
||||||
|
|
||||||
|
<SUBSECTION Standard>
|
||||||
|
GDK_DRAWABLE
|
||||||
|
GDK_DRAWABLE_GET_CLASS
|
||||||
|
GDK_TYPE_DRAWABLE
|
||||||
|
GDK_IS_DRAWABLE
|
||||||
|
GDK_DRAWABLE_CLASS
|
||||||
|
GDK_IS_DRAWABLE_CLASS
|
||||||
|
|
||||||
<SUBSECTION Private>
|
<SUBSECTION Private>
|
||||||
gdk_draw_bitmap
|
gdk_draw_bitmap
|
||||||
</SECTION>
|
</SECTION>
|
||||||
@@ -212,6 +299,7 @@ gdk_draw_bitmap
|
|||||||
<TITLE>Graphics Contexts</TITLE>
|
<TITLE>Graphics Contexts</TITLE>
|
||||||
<FILE>gcs</FILE>
|
<FILE>gcs</FILE>
|
||||||
GdkGC
|
GdkGC
|
||||||
|
GdkGCClass
|
||||||
GdkGCValues
|
GdkGCValues
|
||||||
GdkGCValuesMask
|
GdkGCValuesMask
|
||||||
|
|
||||||
@@ -222,9 +310,12 @@ gdk_gc_new_with_values
|
|||||||
gdk_gc_ref
|
gdk_gc_ref
|
||||||
gdk_gc_unref
|
gdk_gc_unref
|
||||||
gdk_gc_destroy
|
gdk_gc_destroy
|
||||||
|
gdk_gc_set_values
|
||||||
gdk_gc_get_values
|
gdk_gc_get_values
|
||||||
gdk_gc_set_foreground
|
gdk_gc_set_foreground
|
||||||
gdk_gc_set_background
|
gdk_gc_set_background
|
||||||
|
gdk_gc_set_rgb_fg_color
|
||||||
|
gdk_gc_set_rgb_bg_color
|
||||||
gdk_gc_set_font
|
gdk_gc_set_font
|
||||||
gdk_gc_set_function
|
gdk_gc_set_function
|
||||||
gdk_gc_set_fill
|
gdk_gc_set_fill
|
||||||
@@ -245,6 +336,17 @@ GdkCapStyle
|
|||||||
GdkJoinStyle
|
GdkJoinStyle
|
||||||
gdk_gc_set_dashes
|
gdk_gc_set_dashes
|
||||||
gdk_gc_copy
|
gdk_gc_copy
|
||||||
|
gdk_gc_set_colormap
|
||||||
|
gdk_gc_get_colormap
|
||||||
|
|
||||||
|
<SUBSECTION Standard>
|
||||||
|
GDK_GC
|
||||||
|
GDK_TYPE_GC
|
||||||
|
GDK_IS_GC
|
||||||
|
gdk_gc_get_type
|
||||||
|
GDK_GC_CLASS
|
||||||
|
GDK_GC_GET_CLASS
|
||||||
|
GDK_IS_GC_CLASS
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
@@ -283,6 +385,7 @@ gdk_window_new
|
|||||||
gdk_window_destroy
|
gdk_window_destroy
|
||||||
gdk_window_ref
|
gdk_window_ref
|
||||||
gdk_window_unref
|
gdk_window_unref
|
||||||
|
gdk_window_get_window_type
|
||||||
gdk_window_at_pointer
|
gdk_window_at_pointer
|
||||||
gdk_window_show
|
gdk_window_show
|
||||||
gdk_window_hide
|
gdk_window_hide
|
||||||
@@ -292,6 +395,7 @@ gdk_window_withdraw
|
|||||||
gdk_window_move
|
gdk_window_move
|
||||||
gdk_window_resize
|
gdk_window_resize
|
||||||
gdk_window_move_resize
|
gdk_window_move_resize
|
||||||
|
gdk_window_scroll
|
||||||
gdk_window_reparent
|
gdk_window_reparent
|
||||||
gdk_window_clear
|
gdk_window_clear
|
||||||
gdk_window_clear_area
|
gdk_window_clear_area
|
||||||
@@ -300,6 +404,22 @@ gdk_window_copy_area
|
|||||||
gdk_window_raise
|
gdk_window_raise
|
||||||
gdk_window_lower
|
gdk_window_lower
|
||||||
gdk_window_register_dnd
|
gdk_window_register_dnd
|
||||||
|
|
||||||
|
<SUBSECTION>
|
||||||
|
gdk_window_begin_paint_rect
|
||||||
|
gdk_window_begin_paint_region
|
||||||
|
gdk_window_end_paint
|
||||||
|
|
||||||
|
<SUBSECTION>
|
||||||
|
gdk_window_invalidate_rect
|
||||||
|
gdk_window_invalidate_region
|
||||||
|
gdk_window_get_update_area
|
||||||
|
gdk_window_freeze_updates
|
||||||
|
gdk_window_thaw_updates
|
||||||
|
gdk_window_process_all_updates
|
||||||
|
gdk_window_process_updates
|
||||||
|
|
||||||
|
<SUBSECTION>
|
||||||
gdk_window_set_user_data
|
gdk_window_set_user_data
|
||||||
gdk_window_set_override_redirect
|
gdk_window_set_override_redirect
|
||||||
gdk_window_add_filter
|
gdk_window_add_filter
|
||||||
@@ -334,6 +454,7 @@ GdkModifierType
|
|||||||
gdk_window_get_parent
|
gdk_window_get_parent
|
||||||
gdk_window_get_toplevel
|
gdk_window_get_toplevel
|
||||||
gdk_window_get_children
|
gdk_window_get_children
|
||||||
|
gdk_window_peek_children
|
||||||
gdk_window_get_events
|
gdk_window_get_events
|
||||||
gdk_window_set_events
|
gdk_window_set_events
|
||||||
gdk_window_set_icon
|
gdk_window_set_icon
|
||||||
@@ -346,8 +467,21 @@ GdkWMDecoration
|
|||||||
gdk_window_set_functions
|
gdk_window_set_functions
|
||||||
GdkWMFunction
|
GdkWMFunction
|
||||||
gdk_window_get_toplevels
|
gdk_window_get_toplevels
|
||||||
GdkDrawable
|
|
||||||
gdk_drawable_set_data
|
<SUBSECTION Standard>
|
||||||
|
GDK_WINDOW
|
||||||
|
GDK_WINDOW_GET_CLASS
|
||||||
|
GDK_WINDOW_OBJECT
|
||||||
|
GDK_TYPE_WINDOW
|
||||||
|
GDK_IS_WINDOW
|
||||||
|
GDK_WINDOW_CLASS
|
||||||
|
GDK_IS_WINDOW_CLASS
|
||||||
|
|
||||||
|
<SUBSECTION Private>
|
||||||
|
gdk_window_object_get_type
|
||||||
|
gdk_drawable_get_type
|
||||||
|
GdkWindowObject
|
||||||
|
GdkWindowObjectClass
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
@@ -370,8 +504,11 @@ GdkAtom
|
|||||||
GDK_NONE
|
GDK_NONE
|
||||||
gdk_text_property_to_text_list
|
gdk_text_property_to_text_list
|
||||||
gdk_free_text_list
|
gdk_free_text_list
|
||||||
|
gdk_text_property_to_utf8_list
|
||||||
gdk_string_to_compound_text
|
gdk_string_to_compound_text
|
||||||
gdk_free_compound_text
|
gdk_free_compound_text
|
||||||
|
gdk_utf8_to_string_target
|
||||||
|
gdk_utf8_to_compound_text
|
||||||
gdk_atom_intern
|
gdk_atom_intern
|
||||||
gdk_atom_name
|
gdk_atom_name
|
||||||
gdk_property_get
|
gdk_property_get
|
||||||
@@ -391,6 +528,19 @@ gdk_im_set_best_style
|
|||||||
<SUBSECTION>
|
<SUBSECTION>
|
||||||
gdk_im_begin
|
gdk_im_begin
|
||||||
gdk_im_end
|
gdk_im_end
|
||||||
|
|
||||||
|
<SUBSECTION Private>
|
||||||
|
gdk_iswalnum
|
||||||
|
gdk_iswspace
|
||||||
|
GDK_HAVE_WCHAR_H
|
||||||
|
GDK_HAVE_WCTYPE_H
|
||||||
|
</SECTION>
|
||||||
|
|
||||||
|
<SECTION>
|
||||||
|
<TITLE>Pango Interaction</TITLE>
|
||||||
|
<FILE>pango_interaction</FILE>
|
||||||
|
gdk_pango_context_get
|
||||||
|
gdk_pango_context_set_colormap
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
@@ -448,34 +598,36 @@ GdkRegion
|
|||||||
gdk_region_new
|
gdk_region_new
|
||||||
gdk_region_polygon
|
gdk_region_polygon
|
||||||
GdkFillRule
|
GdkFillRule
|
||||||
|
gdk_region_copy
|
||||||
|
gdk_region_rectangle
|
||||||
gdk_region_destroy
|
gdk_region_destroy
|
||||||
|
|
||||||
<SUBSECTION>
|
<SUBSECTION>
|
||||||
gdk_regions_intersect
|
gdk_region_get_clipbox
|
||||||
gdk_regions_union
|
|
||||||
gdk_regions_subtract
|
|
||||||
gdk_regions_xor
|
|
||||||
gdk_region_union_with_rect
|
|
||||||
gdk_region_offset
|
|
||||||
gdk_region_shrink
|
|
||||||
|
|
||||||
<SUBSECTION>
|
|
||||||
gdk_region_empty
|
gdk_region_empty
|
||||||
gdk_region_equal
|
gdk_region_equal
|
||||||
gdk_region_point_in
|
gdk_region_point_in
|
||||||
gdk_region_rect_in
|
gdk_region_rect_in
|
||||||
GdkOverlapType
|
GdkOverlapType
|
||||||
gdk_region_get_clipbox
|
|
||||||
|
<SUBSECTION>
|
||||||
|
gdk_region_offset
|
||||||
|
gdk_region_shrink
|
||||||
|
gdk_region_union_with_rect
|
||||||
|
gdk_region_intersect
|
||||||
|
gdk_region_union
|
||||||
|
gdk_region_subtract
|
||||||
|
gdk_region_xor
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
<TITLE>Threads</TITLE>
|
<TITLE>Threads</TITLE>
|
||||||
<FILE>threads</FILE>
|
<FILE>threads</FILE>
|
||||||
gdk_threads_mutex
|
|
||||||
GDK_THREADS_ENTER
|
GDK_THREADS_ENTER
|
||||||
GDK_THREADS_LEAVE
|
GDK_THREADS_LEAVE
|
||||||
gdk_threads_enter
|
gdk_threads_enter
|
||||||
gdk_threads_leave
|
gdk_threads_leave
|
||||||
|
gdk_threads_mutex
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
@@ -489,33 +641,44 @@ gdk_keyval_is_upper
|
|||||||
gdk_keyval_is_lower
|
gdk_keyval_is_lower
|
||||||
|
|
||||||
<SUBSECTION>
|
<SUBSECTION>
|
||||||
|
gdk_keyval_convert_case
|
||||||
gdk_keyval_to_upper
|
gdk_keyval_to_upper
|
||||||
gdk_keyval_to_lower
|
gdk_keyval_to_lower
|
||||||
|
|
||||||
|
<SUBSECTION>
|
||||||
|
gdk_keyval_to_unicode
|
||||||
|
gdk_unicode_to_keyval
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
<TITLE>Input Devices</TITLE>
|
<TITLE>Input Devices</TITLE>
|
||||||
<FILE>input_devices</FILE>
|
<FILE>input_devices</FILE>
|
||||||
GDK_CORE_POINTER
|
GdkDevice
|
||||||
gdk_input_list_devices
|
GdkInputSource
|
||||||
GdkDeviceInfo
|
GdkInputMode
|
||||||
GdkDeviceKey
|
GdkDeviceKey
|
||||||
|
GdkDeviceAxis
|
||||||
|
GdkAxisUse
|
||||||
|
gdk_devices_list
|
||||||
|
gdk_core_pointer
|
||||||
|
gdk_device_set_source
|
||||||
|
gdk_device_set_mode
|
||||||
|
gdk_device_set_key
|
||||||
|
gdk_device_set_axis_use
|
||||||
|
|
||||||
|
<SUBSECTION>
|
||||||
|
gdk_device_get_state
|
||||||
|
gdk_device_get_history
|
||||||
|
gdk_device_free_history
|
||||||
|
GdkTimeCoord
|
||||||
|
gdk_device_get_axis
|
||||||
|
|
||||||
|
<SUBSECTION>
|
||||||
gdk_input_set_extension_events
|
gdk_input_set_extension_events
|
||||||
GdkExtensionMode
|
GdkExtensionMode
|
||||||
gdk_input_set_source
|
|
||||||
GdkInputSource
|
|
||||||
gdk_input_set_mode
|
|
||||||
GdkInputMode
|
|
||||||
gdk_input_set_axes
|
|
||||||
GdkAxisUse
|
|
||||||
gdk_input_set_key
|
|
||||||
gdk_input_window_get_pointer
|
|
||||||
gdk_input_motion_events
|
|
||||||
GdkTimeCoord
|
|
||||||
|
|
||||||
<SUBSECTION Private>
|
<SUBSECTION Private>
|
||||||
gdk_input_init
|
GDK_MAX_TIMECOORD_AXES
|
||||||
gdk_input_exit
|
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
<SECTION>
|
<SECTION>
|
||||||
@@ -525,6 +688,8 @@ GdkEventType
|
|||||||
GdkEventMask
|
GdkEventMask
|
||||||
GDK_CURRENT_TIME
|
GDK_CURRENT_TIME
|
||||||
GDK_PRIORITY_EVENTS
|
GDK_PRIORITY_EVENTS
|
||||||
|
GDK_PRIORITY_REDRAW
|
||||||
|
|
||||||
|
|
||||||
<SUBSECTION>
|
<SUBSECTION>
|
||||||
gdk_events_pending
|
gdk_events_pending
|
||||||
@@ -535,6 +700,7 @@ gdk_event_put
|
|||||||
gdk_event_copy
|
gdk_event_copy
|
||||||
gdk_event_free
|
gdk_event_free
|
||||||
gdk_event_get_time
|
gdk_event_get_time
|
||||||
|
gdk_event_get_axis
|
||||||
|
|
||||||
<SUBSECTION>
|
<SUBSECTION>
|
||||||
gdk_event_handler_set
|
gdk_event_handler_set
|
||||||
@@ -559,6 +725,7 @@ GdkEvent
|
|||||||
GdkEventAny
|
GdkEventAny
|
||||||
GdkEventKey
|
GdkEventKey
|
||||||
GdkEventButton
|
GdkEventButton
|
||||||
|
GdkEventScroll
|
||||||
GdkEventMotion
|
GdkEventMotion
|
||||||
GdkEventExpose
|
GdkEventExpose
|
||||||
GdkEventVisibility
|
GdkEventVisibility
|
||||||
@@ -567,12 +734,14 @@ GdkEventFocus
|
|||||||
GdkEventConfigure
|
GdkEventConfigure
|
||||||
GdkEventProperty
|
GdkEventProperty
|
||||||
GdkEventSelection
|
GdkEventSelection
|
||||||
|
GdkNativeWindow
|
||||||
GdkEventDND
|
GdkEventDND
|
||||||
GdkEventProximity
|
GdkEventProximity
|
||||||
GdkEventClient
|
GdkEventClient
|
||||||
GdkEventNoExpose
|
GdkEventNoExpose
|
||||||
|
|
||||||
<SUBSECTION>
|
<SUBSECTION>
|
||||||
|
GdkScrollDirection
|
||||||
GdkVisibilityState
|
GdkVisibilityState
|
||||||
GdkCrossingMode
|
GdkCrossingMode
|
||||||
GdkNotifyType
|
GdkNotifyType
|
||||||
@@ -586,6 +755,8 @@ GdkCursor
|
|||||||
GdkCursorType
|
GdkCursorType
|
||||||
gdk_cursor_new
|
gdk_cursor_new
|
||||||
gdk_cursor_new_from_pixmap
|
gdk_cursor_new_from_pixmap
|
||||||
|
gdk_cursor_ref
|
||||||
|
gdk_cursor_unref
|
||||||
gdk_cursor_destroy
|
gdk_cursor_destroy
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
|
||||||
@@ -619,4 +790,76 @@ gdk_drag_context_unref
|
|||||||
GdkDragContext
|
GdkDragContext
|
||||||
GdkDragAction
|
GdkDragAction
|
||||||
gdk_drag_status
|
gdk_drag_status
|
||||||
|
|
||||||
|
<SUBSECTION Standard>
|
||||||
|
GDK_DRAG_CONTEXT
|
||||||
|
GDK_TYPE_DRAG_CONTEXT
|
||||||
|
GDK_IS_DRAG_CONTEXT
|
||||||
|
GDK_DRAG_CONTEXT_CLASS
|
||||||
|
GDK_DRAG_CONTEXT_GET_CLASS
|
||||||
|
GDK_IS_DRAG_CONTEXT_CLASS
|
||||||
|
|
||||||
|
<SUBSECTION Private>
|
||||||
|
GdkDragContextClass
|
||||||
|
gdk_drag_context_get_type
|
||||||
|
</SECTION>
|
||||||
|
|
||||||
|
<SECTION>
|
||||||
|
<TITLE>X Window System Interaction</TITLE>
|
||||||
|
<FILE>x_interaction</FILE>
|
||||||
|
GDK_GC_X11
|
||||||
|
GDK_GC_X11_GET_CLASS
|
||||||
|
GDK_ROOT_WINDOW
|
||||||
|
GDK_ROOT_PARENT
|
||||||
|
GDK_DISPLAY
|
||||||
|
GDK_WINDOW_XDISPLAY
|
||||||
|
GDK_WINDOW_XID
|
||||||
|
GDK_PIXMAP_XDISPLAY
|
||||||
|
GDK_PIXMAP_XID
|
||||||
|
GDK_DRAWABLE_XDISPLAY
|
||||||
|
GDK_DRAWABLE_XID
|
||||||
|
GDK_IMAGE_XDISPLAY
|
||||||
|
GDK_IMAGE_XIMAGE
|
||||||
|
GDK_GC_XDISPLAY
|
||||||
|
GDK_COLORMAP_XDISPLAY
|
||||||
|
GDK_COLORMAP_XCOLORMAP
|
||||||
|
GDK_VISUAL_XVISUAL
|
||||||
|
GDK_FONT_XDISPLAY
|
||||||
|
GDK_FONT_XFONT
|
||||||
|
GDK_GC_XGC
|
||||||
|
GDK_GC_GET_XGC
|
||||||
|
GDK_WINDOW_XWINDOW
|
||||||
|
gdk_screen
|
||||||
|
gdk_display_name
|
||||||
|
gdk_leader_window
|
||||||
|
gdk_selection_property
|
||||||
|
gdk_progclass
|
||||||
|
gdkx_visual_get
|
||||||
|
gdkx_colormap_get
|
||||||
|
gdk_get_client_window
|
||||||
|
gdk_pixmap_foreign_new
|
||||||
|
gdk_window_foreign_new
|
||||||
|
gdk_xid_table_lookup
|
||||||
|
gdk_window_lookup
|
||||||
|
gdk_pixmap_lookup
|
||||||
|
gdk_font_lookup
|
||||||
|
gdk_x11_get_server_time
|
||||||
|
|
||||||
|
<SUBSECTION Private>
|
||||||
|
GDK_TYPE_GC_X11
|
||||||
|
GDK_IS_GC_X11
|
||||||
|
gdk_gc_x11_get_type
|
||||||
|
GDK_GC_X11_CLASS
|
||||||
|
GDK_IS_GC_X11_CLASS
|
||||||
|
GdkGCX11
|
||||||
|
GdkGCX11Class
|
||||||
|
GdkGCXData
|
||||||
|
GdkColormapPrivateX11
|
||||||
|
GdkCursorPrivate
|
||||||
|
GdkFontPrivateX
|
||||||
|
GdkImagePrivateX11
|
||||||
|
GdkVisualPrivate
|
||||||
|
GdkICPrivate
|
||||||
|
gdk_display
|
||||||
|
gdk_root_window
|
||||||
</SECTION>
|
</SECTION>
|
||||||
|
@@ -109,6 +109,7 @@ pseudo-color colormaps.</entry>
|
|||||||
</tbody></tgroup></informaltable>
|
</tbody></tgroup></informaltable>
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
@parent_instance:
|
||||||
@size:
|
@size:
|
||||||
@colors:
|
@colors:
|
||||||
|
|
||||||
@@ -384,7 +385,8 @@ table that stores #GdkColor's.
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
@colora: a #GdkColor.
|
@colora: a #GdkColor.
|
||||||
@colorb: NOT USED.
|
|
||||||
@Returns: The hash function appled to @colora
|
@Returns: The hash function appled to @colora
|
||||||
|
<!-- # Unused Parameters # -->
|
||||||
|
@colorb: NOT USED.
|
||||||
|
|
||||||
|
|
||||||
|
@@ -20,6 +20,7 @@ standard and pixmap cursors.
|
|||||||
</para>
|
</para>
|
||||||
|
|
||||||
@type:
|
@type:
|
||||||
|
@ref_count:
|
||||||
|
|
||||||
<!-- ##### ENUM GdkCursorType ##### -->
|
<!-- ##### ENUM GdkCursorType ##### -->
|
||||||
<para>
|
<para>
|
||||||
@@ -89,11 +90,29 @@ The color does not have to be allocated first.
|
|||||||
@Returns: a new #GdkCursor.
|
@Returns: a new #GdkCursor.
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_cursor_destroy ##### -->
|
<!-- ##### FUNCTION gdk_cursor_ref ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@cursor:
|
||||||
|
@Returns:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_cursor_unref ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@cursor:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### MACRO gdk_cursor_destroy ##### -->
|
||||||
<para>
|
<para>
|
||||||
Destroys a cursor, freeing any resources allocated for it.
|
Destroys a cursor, freeing any resources allocated for it.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
<!-- # Unused Parameters # -->
|
||||||
@cursor: a #GdkCursor.
|
@cursor: a #GdkCursor.
|
||||||
|
|
||||||
|
|
||||||
|
@@ -146,6 +146,9 @@ the GTK+ documentation for more information.
|
|||||||
@GDK_DRAG_PROTO_XDND:
|
@GDK_DRAG_PROTO_XDND:
|
||||||
@GDK_DRAG_PROTO_ROOTWIN:
|
@GDK_DRAG_PROTO_ROOTWIN:
|
||||||
@GDK_DRAG_PROTO_NONE:
|
@GDK_DRAG_PROTO_NONE:
|
||||||
|
@GDK_DRAG_PROTO_WIN32_DROPFILES:
|
||||||
|
@GDK_DRAG_PROTO_OLE2:
|
||||||
|
@GDK_DRAG_PROTO_LOCAL:
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_drag_context_unref ##### -->
|
<!-- ##### FUNCTION gdk_drag_context_unref ##### -->
|
||||||
<para>
|
<para>
|
||||||
@@ -160,6 +163,7 @@ the GTK+ documentation for more information.
|
|||||||
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
@parent_instance:
|
||||||
@protocol:
|
@protocol:
|
||||||
@is_source:
|
@is_source:
|
||||||
@source_window:
|
@source_window:
|
||||||
|
@@ -25,6 +25,103 @@ more information.
|
|||||||
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
<!-- ##### STRUCT GdkDrawable ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@user_data:
|
||||||
|
|
||||||
|
<!-- ##### STRUCT GdkDrawableClass ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_drawable_ref ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@drawable:
|
||||||
|
@Returns:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_drawable_unref ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@drawable:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_drawable_set_data ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@drawable:
|
||||||
|
@key:
|
||||||
|
@data:
|
||||||
|
@destroy_func:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_drawable_get_data ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@drawable:
|
||||||
|
@key:
|
||||||
|
@Returns:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_drawable_get_visual ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@drawable:
|
||||||
|
@Returns:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_drawable_set_colormap ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@drawable:
|
||||||
|
@colormap:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_drawable_get_colormap ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@drawable:
|
||||||
|
@Returns:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_drawable_get_depth ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@drawable:
|
||||||
|
@Returns:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_drawable_get_size ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@drawable:
|
||||||
|
@width:
|
||||||
|
@height:
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_draw_point ##### -->
|
<!-- ##### FUNCTION gdk_draw_point ##### -->
|
||||||
<para>
|
<para>
|
||||||
Draws a point, using the foreground color and other attributes of the #GdkGC.
|
Draws a point, using the foreground color and other attributes of the #GdkGC.
|
||||||
@@ -157,6 +254,43 @@ polygon.
|
|||||||
@npoints: the number of points.
|
@npoints: the number of points.
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_draw_glyphs ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@drawable:
|
||||||
|
@gc:
|
||||||
|
@font:
|
||||||
|
@x:
|
||||||
|
@y:
|
||||||
|
@glyphs:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_draw_layout_line ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@drawable:
|
||||||
|
@gc:
|
||||||
|
@x:
|
||||||
|
@y:
|
||||||
|
@line:
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_draw_layout ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@drawable:
|
||||||
|
@gc:
|
||||||
|
@x:
|
||||||
|
@y:
|
||||||
|
@layout:
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_draw_string ##### -->
|
<!-- ##### FUNCTION gdk_draw_string ##### -->
|
||||||
<para>
|
<para>
|
||||||
Draws a string of characters in the given font or fontset.
|
Draws a string of characters in the given font or fontset.
|
||||||
@@ -200,11 +334,12 @@ If the font is a 1-byte font, the string is converted into 1-byte characters
|
|||||||
@text_length: the number of characters to draw.
|
@text_length: the number of characters to draw.
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_draw_pixmap ##### -->
|
<!-- ##### MACRO gdk_draw_pixmap ##### -->
|
||||||
<para>
|
<para>
|
||||||
Draws a pixmap, or a part of a pixmap, onto another drawable.
|
Draws a pixmap, or a part of a pixmap, onto another drawable.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
|
<!-- # Unused Parameters # -->
|
||||||
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
|
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
|
||||||
@gc: a #GdkGC.
|
@gc: a #GdkGC.
|
||||||
@src: the source #GdkPixmap to draw.
|
@src: the source #GdkPixmap to draw.
|
||||||
@@ -218,6 +353,22 @@ the right edge of the source pixmap.
|
|||||||
to the bottom edge of the source pixmap.
|
to the bottom edge of the source pixmap.
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ##### FUNCTION gdk_draw_drawable ##### -->
|
||||||
|
<para>
|
||||||
|
|
||||||
|
</para>
|
||||||
|
|
||||||
|
@drawable:
|
||||||
|
@gc:
|
||||||
|
@src:
|
||||||
|
@xsrc:
|
||||||
|
@ysrc:
|
||||||
|
@xdest:
|
||||||
|
@ydest:
|
||||||
|
@width:
|
||||||
|
@height:
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gdk_draw_image ##### -->
|
<!-- ##### FUNCTION gdk_draw_image ##### -->
|
||||||
<para>
|
<para>
|
||||||
Draws a #GdkImage onto a drawable.
|
Draws a #GdkImage onto a drawable.
|
||||||
|