Compare commits

..

225 Commits

Author SHA1 Message Date
CDT 1999 Shawn T. Amundson
003c5dccd0 Released GTK+ 1.2.6
Thu Oct  7 12:50:23 CDT 1999 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.2.6
1999-10-07 18:28:04 +00:00
Owen Taylor
95a5e5cd09 Fix a typo where gtkrc.vi_VN.tcvn5712 wasn't getting deleted, causing
Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am (install-data-local): Fix
	a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
	deleted, causing error messages on install.

Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
	the handle as well, since we now sometimes ignore
	exposes on the handle while resizing.
1999-10-07 15:26:07 +00:00
Jesus Bravo Alvarez
fe725cf7d9 Added Galician .po file 1999-10-06 22:45:46 +00:00
Owen Taylor
4a50847abd Fix stupid extra g_free introduced in one of the last one or two commits.
Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
	extra g_free introduced in one of the last one or two
	commits.
1999-10-06 21:53:32 +00:00
Owen Taylor
83f3b1e8e3 Fix typo from last commit. 1999-10-06 20:33:15 +00:00
Owen Taylor
fd37d2bdb0 Make naming of gtkrc files consistent, put each style that a gtkrc.* file
Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
	consistent, put each style that a gtkrc.* file creates
	in a unique namespace, remove old files before installing.
1999-10-06 20:30:11 +00:00
Sergey I. Panov
3b8ecf24f6 ru.po: Updated Russian translation 1999-10-05 18:52:42 +00:00
Manish Singh
91307e5e87 don't list gtkrc in gtkconf_DATA, it totally barfs
-Yosh
1999-10-05 18:42:52 +00:00
Owen Taylor
c2aaaf16f3 Free device->info.axes for core pointer.
Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkinputcommon.h (gdk_input_device_new): Free
	device->info.axes for core pointer.
1999-10-05 16:27:03 +00:00
Pablo Saratxaga
5bfdcc2c3e Added several gtkrc.* fiels for new charset encodings 1999-10-05 12:21:20 +00:00
Pablo Saratxaga
2dc5212004 added several gtkrc.* files 1999-10-05 12:18:22 +00:00
Sergey I. Panov
4478fefd28 ru.po: Updated Russian translation 1999-10-05 05:20:34 +00:00
Nam SungHyun
91da226af7 updated 1999-10-04 18:28:15 +00:00
Kjartan Maraas
f8ca8253f9 Added Ukrainian translation from Yuri Syrota <yuri@renome.rovno.ua>.
1999-09-28  Kjartan Maraas  <kmaraas@online.no>

	* uk.po: Added Ukrainian translation from Yuri
	Syrota <yuri@renome.rovno.ua>.
1999-10-01 22:58:15 +00:00
Owen Taylor
9b98ede875 Rename idle to idle_id, to deal with obsolete, broken C libraries.
Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/testgtk.c (destroy_idle_test): Rename idle to
	idle_id, to deal with obsolete, broken C libraries.
1999-09-30 17:50:50 +00:00
Owen Taylor
a97747dfc7 Get rid of stupid C unsigned integer bug. (Bug #2272)
Wed Sep 29 15:41:08 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktreeitem.c (gtk_tree_item_size_allocate):
	Get rid of stupid C unsigned integer bug.
	(Bug #2272)
1999-09-29 23:13:01 +00:00
Kjartan Maraas
5739ca8f3b Added Romainan translation from Dan Damian <dand@dnttm.ro>.
1999-09-28  Kjartan Maraas  <kmaraas@online.no>

	* ro.po: Added Romainan translation from Dan
	Damian <dand@dnttm.ro>.
1999-09-28 22:25:29 +00:00
Owen Taylor
9cc3eb8c0d Don't add in allocation->x/y twice!
Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
	allocation->x/y twice!

	* gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
	consistent with gtk_vscale_pos_trough().
1999-09-27 14:56:17 +00:00
Owen Taylor
6b5d56e39c We may be queueing a resize on a toplevel container between the time we
Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcontainer.c (gtk_container_queue_resize): We may
	be queueing a resize on a toplevel container between
	the time we show it and when we map it. So, we need
	to test GTK_WIDGET_VISIBLE() for toplevels, and only
	use GTK_WIDGET_DRAWABLE() for child windows.
1999-09-26 23:46:57 +00:00
Chyla Zbigniew
7a4bc2038f Updated Polish translation 1999-09-26 22:28:48 +00:00
Lauris Kaplinski
6b7f4bb036 updated Estonian tranlation 1999-09-26 20:45:39 +00:00
Elliot Lee
51bae3f9cd Make 'dist-hook' targets, which copy the .spec file into $(distdir),
Make 'dist-hook' targets, which copy the .spec file into $(distdir), depend upon the
.spec file, so that the .spec file will be regenerated when a previously-compiled tree
is 'dist'd with a new version number.
1999-09-24 16:18:02 +00:00
CDT 1999 Shawn T. Amundson
60a7c53123 Released GTK+ 1.2.5
Thu Sep 23 20:11:38 CDT 1999 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.2.5
1999-09-24 01:37:05 +00:00
Tim Janik
ee09d2e5da changed version from Gtk+-1.2.5-pre2, to Gtk+-1.2.5, interface age 0,
Fri Sep 24 02:00:21 1999  Tim Janik  <timj@gtk.org>

        * configure.in (GTK_VERSION): changed version from Gtk+-1.2.5-pre2,
        to Gtk+-1.2.5, interface age 0, binary age 5.
1999-09-24 00:12:30 +00:00
Owen Taylor
4eb1338d42 Add GDK_WLIBS to LDADDS (fixes bug #2144)
Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS
	(fixes bug #2144)
1999-09-23 23:19:35 +00:00
Tim Janik
8e8ac56db5 check for container DRAWABLE (instead of VISIBLE), so we don't queue
Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
        container DRAWABLE (instead of VISIBLE), so we don't queue
        resizes on non-toplevel containers.
1999-09-23 22:59:42 +00:00
Tim Janik
54a90a6c61 updates for real 1.2.5 1999-09-23 20:01:29 +00:00
Tim Janik
fc0117177c grr, even if Gdk doesn't handle CreateNotify itself, still put out a
Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
        handle CreateNotify itself, still put out a debuging message for
        --gdk-debug=events. made the ReparentNotify debugging message more
        verbose.
        wrap xcoords translation for ConfigureEvents into an error trap,
        a destroy event may already be pending, and in that case, the
        actuall coordinate values are not at all critical.
1999-09-23 19:48:16 +00:00
Vincent Renardias
8a7795d2db Updated for 1.2.5.
* Updated for 1.2.5.
1999-09-21 16:58:33 +00:00
Kjartan Maraas
2a0a33bc35 Updated Danish translation from Kenneth Christiansen <kenneth@ripen.dk>
1999-09-20  Kjartan Maraas  <kmaraas@online.no>

	* da.po: Updated Danish translation from Kenneth
	Christiansen <kenneth@ripen.dk>
1999-09-20 18:30:35 +00:00
Pablo Saratxaga
cd1c6de2ea added pt_BR.po file 1999-09-20 11:34:35 +00:00
Tim Janik
44a04ee211 released Gtk+-1.2.5-pre2, interface age 0, binary age 5.
Mon Sep 20 01:21:53 1999  Tim Janik  <timj@gtk.org>

        * released Gtk+-1.2.5-pre2, interface age 0, binary age 5.
1999-09-19 23:57:12 +00:00
Owen Taylor
b107653636 Make the data argument const guchar *.
Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkselection.[ch]: Make the data argument
	const guchar *.
1999-09-19 22:23:46 +00:00
Owen Taylor
90d2cae68c Stop leaking the color_hash all over the place. Simplify and improve the
Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkcc.c: Stop leaking the color_hash all over
	the place. Simplify and improve the logic.
1999-09-19 02:19:26 +00:00
Owen Taylor
369ea6013d Try to behave sensibly if the focus widget is the window itself. (Should
Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c: Try to behave sensibly if
	the focus widget is the window itself. (Should
	we allow this at all?)
1999-09-19 01:43:30 +00:00
Kjartan Maraas
175b04c33d Updated Danish translation from Kenneth Christiansen <kenneth@ripen.dk>.
1999-09-17  Kjartan Maraas  <kmaraas@online.no>

	* da.po: Updated Danish translation from Kenneth
	Christiansen <kenneth@ripen.dk>.
1999-09-17 19:35:50 +00:00
Tim Janik
389f174dad make gboolean args in prototypes and implementations consistent (Tomas
Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_set_sensitive):
        * gtk/gtknotebook.c (gtk_notebook_set_scrollable):
        * gtk/gtknotebook.c (gtk_notebook_set_show_border):
        * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
        in prototypes and implementations consistent (Tomas Ogren).

        * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
        for prototypes and function implementations consistent (reported
        by Tomas Ogren).

        * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
        before the widget is unparented (reported by damon).

        * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
        since we provide unsigned data anyways.
1999-09-17 09:03:44 +00:00
Owen Taylor
c98ffe744f Delay the call to gtk_tooltips_layout_text() until later.
Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
	the call to gtk_tooltips_layout_text() until later.

	* gtk/gtktooltips.c (gtk_tooltips_draw_tips):
	Call gtk_widget_ensure_style() before using the style.
1999-09-17 01:35:56 +00:00
Owen Taylor
661d0ad067 Added workaround for old widgets that don't propagate draws to all
Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_event): Added workaround
	for old widgets that don't propagate draws to all
	children. (Namely gnome-dock for gnome-libs <= 1.0.16)
1999-09-16 18:59:24 +00:00
Tim Janik
f04d58dd29 NEWS updates 1999-09-14 17:47:06 +00:00
Tim Janik
0ab9dddc34 slight version increment to 1.2.5-pre2.
Tue Sep 14 19:37:53 1999  Tim Janik  <timj@gtk.org>

        * configure.in (GTK_VERSION): slight version increment to 1.2.5-pre2.

Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
        for a redraw but just the widget that requested the resize.

Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c: added new widget level method
        gtk_container_set_reallocate_redraws() and a GtkContainer flag
        reallocate_redraws : 1 to reflect the setting, exported this through
        the argument system as a boolean ::reallocate_redraws.

        * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
        on the widget because the allocation changes, do so as well for
        widget->parent if the parent has reallocate_redraws set to TRUE.
        with that containers requesting reallocation redraws get automatically
        redrawn if their children changed allocation (this unfortunately
        affects also other children that didn't change allocation, but we
        cannot work around that before 1.3).

Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
        send_event set in debugging output.
        (gdk_compress_exposures): default initialize the event so we don't
        operate on bogus values (namely send_event).

        * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
        _and_ height are >0 (not _or_).

        * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
        instead of gtk_container_queue_resize(), which is a core gtk internal
        function (must have been on crack when i queued that).

        * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
        we can check more reliably if we want to discard expose events.
        * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
        flag.

        * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
        we simply trust these events. for deciding whether to discard exposes,
        check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
1999-09-14 17:43:56 +00:00
Owen Taylor
7347cd702f Ignore queues of areas that are completely off screen.
Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
	queues of areas that are completely off screen.

	* gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
	logic for handleboxes.

	* gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
	check on width/height.
1999-09-13 19:01:49 +00:00
Tim Janik
531f44bbdc backed out Raja's recent VPATH build "improvements", we are fine with
Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>

        * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
        we are fine with using $@ the way we do (if we actually encounter
        brokeness with $@ in VPATH builds because of additional path prefixes,
        we need to use $(@F) actually).
1999-09-13 11:13:07 +00:00
Tim Janik
d807397177 renamed two variables, hopefully didn't introduce short lived bugs, that
Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
        short lived bugs, that would allow language bindings to do surgeries
        to our guts.
1999-09-12 23:39:49 +00:00
Raja R Harinath
8014d7db5e Fix AC_DEFINEs.
* configure.in (wctype): Fix AC_DEFINEs.
1999-09-12 21:07:52 +00:00
Pablo Saratxaga
8cf06479ae updated danis hfile 1999-09-11 00:13:53 +00:00
Pablo Saratxaga
123914048c put Greek file from gtk+ HEAD cvs 1999-09-10 23:35:33 +00:00
Pablo Saratxaga
91645584a5 added Estonian language file 1999-09-10 19:45:35 +00:00
Owen Taylor
6362c20b8b Fix typo where comparison was being done against an uninitialized value
Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
	where comparison was being done against an uninitialized
	value causing intermittant results depending on
	compiler flags. Also make it clearer that we aren't
	ever initializing the child as 0x0 (though this will
	be caught in gtk_widget_size_allocate())
1999-09-10 19:19:00 +00:00
Owen Taylor
a88d8fff6d Move gtk_window_unset_transient_for() call after we do checks involving
Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_set_transient_for): Move
	gtk_window_unset_transient_for() call after we do checks
	involving the old transient parent.
	[ From Lance Capser <lmc@cyberhighway.net> ]
1999-09-10 14:00:45 +00:00
Tim Janik
61f9087af4 fixed "GNU Make" check to pass with new make version 3.77.95.
Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>

        * configure.in: fixed "GNU Make" check to pass with new make version
        3.77.95.
1999-09-08 07:03:00 +00:00
Raja R Harinath
2b2ee64b60 Go back to using `touch' to create an empty file.
* gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
an empty file.
1999-09-07 18:45:04 +00:00
Pablo Saratxaga
4767c40249 updated da file 1999-09-06 09:42:10 +00:00
Lars Hamann
844cbfb1ba return FALSE if node has no children. (Reported by: Chris Rogers
Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>

        * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
        no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
1999-09-05 22:22:27 +00:00
Kjartan Maraas
04d23ae07e Updated translation.
1999-09-04  Kjartan Maraas  <kmaraas@fib.hl.no>

	* no.po: Updated translation.
1999-09-04 08:40:46 +00:00
Raja R Harinath
59724766af Improve VPATH builds. `$@' is valid only in the build dir, not after we've
* gtk/Makefile.am (gen_sources): Improve VPATH builds.
`$@' is valid only in the build dir, not after we've done
`cd $srcdir'.  Also use `test -f' instead of less portable
`test -e'.
1999-09-03 22:59:25 +00:00
CDT 1999 Shawn T. Amundson
2c331c9fdf Released GTK+ 1.2.5-pre1 (test release)
Fri Sep  3 17:20:57 CDT 1999 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.2.5-pre1  (test release)
1999-09-03 22:47:09 +00:00
Owen Taylor
df57d883b3 Overview of Changes in GTK+ 1.2.5:
* new configure.in option --disable-rebuilds to completely disable
  rebuilds of autogenerated sources.
* check for 5.002 now, to avoid failing autogeneration build rules due
  to old perl versions.
* fonts (and fontsets) are cached now.
* more autogeneration make rules and dependancy fixups, we should be
  save with autogeneration up to make -j12 now ;)
* new window position GTK_WIN_POS_CENTER_ALWAYS, which will recenter the
  GtkWindow on every size change.
* major rework of window manager hints handling code, fixed a bunch of
  races with the new resizing code.
* the new wm hints and resizing code is absolutely perfect and bug free now,
  it only lacks testing ;)
* fixed up various rc style memory prolems.
* gtk_widget_modify_style() now properly changes the style of realized widgets
  and references the style passed into it. if people worked around this bug,
  this will introduce a slight memory leak in their code.
  The code should typically look like:
            GtkRcStyle *rc_style = gtk_rc_style_new ();
            [...]
            gtk_widget_modify_style (widget, rc_style);
            gtk_rc_style_unref (rc_style);
* fix problems with positioning menus offscreen.
* GtkText fixes for some crashes and drawing errors.
* Better handling for unexpected window destroys in GDK and GTK+.
  This should make it possible to use a GtkPlug and catch the
  case where its parent socket is randomly killed.
* FAQ updates.
* FileSelection i18n patches, RadioButton fixups.
* miscellaneous other bugs fixed.
1999-09-03 21:01:15 +00:00
Owen Taylor
c9dec55549 Rewrite for simplicity, and hopefully correctness. (Fixes bug #1322, which
Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c (correct_cache_insert): Rewrite
	 for simplicity, and hopefully correctness.
	 (Fixes bug #1322, which was a segfault when
	  on some insertions with the properties around
	  the insertion set up just wrong.)

	* gtk/gtktext.c (gtk_text_adjustment): When we receive
	 a "changed" signal, clamp the new value to the adjustment
	 bounds to avoid segfaulting if someone tries to change
	 the adjustment to a bogus value. (Bug #1795)
1999-09-03 20:45:35 +00:00
Owen Taylor
22a15408bb When we receive an unexpected destroy notify on one of our windows, don't
Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c: When we receive an unexpected
	destroy notify on one of our windows, don't just
	warn about it, also mark our windows as destroyed.

	* gtk/gtkmain.c: Ignore unexpected destroy notifies
	for children, for toplevel windows handle them
	like delete_event.

	* gtk/gtkplug.c: Add an unrealize handler so that
	we unref plug->socket_window when we are done
	with it.
1999-09-03 20:08:13 +00:00
Owen Taylor
3abc634152 Fix stupid signedness problem that was causing background to sometimes be
Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c (clear_area): Fix stupid signedness
	 problem that was causing background to sometimes
	 be misaligned.
1999-09-03 18:54:03 +00:00
Owen Taylor
ad9263ec39 [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>

	[ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]

	* gtk/gtkmenu.c (gtk_menu_position): Make
	 sure we never position menus with negative x, y,
	 since gtk_widget_set_uposition() can't handle that.

	* gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
	 Modify the positioning code a bit so that we always
	 put the top-left corner onscreen. (This is for
	 UI reasons, gtk_menu_position() now takes care of
	 gtk_widet_set_uposition() brokeness.)
1999-09-03 16:51:12 +00:00
Tim Janik
501c87a65d don't echo @GTK_VERSION@, but
Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>

        * gtk-config.in (--version): don't echo @GTK_VERSION@, but
        @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
        AM_PATH_GTK() macros don't get confused by the -pre1.
1999-09-03 14:08:51 +00:00
Tim Janik
f9c868233f changed version number to 1.2.5-pre1, interface age 0, binary age 5. we
Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>

        * configure.in: changed version number to 1.2.5-pre1,
        interface age 0, binary age 5. we still require Glib-1.2.4 though.

        * gtk/Makefile.am: fixed up things for -jx, x > 1.

        * NEWS: updates for 1.2.5.
1999-09-03 04:38:55 +00:00
Owen Taylor
0285d26804 Ref the RC style that is passed in. The lack of the ref before was a bug.
Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
	  RC style that is passed in. The lack of the ref
	  before was a bug. If people worked around this
	  bug, this will introduce a slight memory leak
	  in their code. The code should typically look like:

	    rc_style = gtk_rc_style_new ();
	    [...]
	    gtk_widget_modify_style (widget, rc_style);
	    gtk_rc_style_unref (rc_style);

	* gtk/gtkwidget.c (gtk_widget_modify_style): Reset
	  the style if it was already set.

	* gtk/gtkwidget.c (gtk_widget_set_name): Only set the
	  style if it was set before.
1999-09-03 03:57:14 +00:00
Owen Taylor
189706f619 Add name => font and name => fontset hashes. The name => fontset hash is a
Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkfont.c (gdk_font_hash_insert): Add
	  name => font and name => fontset hashes. The
	  name => fontset hash is a _big_ win since we
	  weren't previously caching fontsets at all and loading
	  fontsets is expensive. The name => font hash
	  is less of a win, but it does save us from doing
	  repeated XQueryFont calls on the same font.

	* gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
	  list so we can remove font/fontset from hash.
1999-09-03 03:56:34 +00:00
Chyla Zbigniew
b4def251f8 Updated polish translation 1999-09-03 02:55:23 +00:00
Owen Taylor
ddc6217c32 Remove useless and slightly confusing test. [ XInternAtom (,,TRUE) will
Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkproperty.c (gdk_atom_intern): Remove useless
	  and slightly confusing test. [ XInternAtom (,,TRUE)
	  will never return None ].

	* gtk/testgtk.c (main): Add a check to see if we
	  are being run from the correct directory and
	  to quit nicely if we are not.

	* gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
	  static.

	* configure.in (REBUILD): Change check for perl5
	  to check explicitely for v >= 5.002. (5.001
	  does not work with our scripts.)
1999-09-02 23:02:14 +00:00
Tim Janik
80ed2661c5 uncomma 1999-09-02 22:31:38 +00:00
Tim Janik
088428655b added GTK_WIN_POS_CENTER_ALWAYS.
Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.

        * gtk/gtkwindow.c:
        queue resizes unconditionally (gtk_widget_queue_resize will figure
        what to do if the window is not realized).
        (gtk_window_move_resize): only recenter the window
        for GTK_WIN_POS_CENTER_ALWAYS.
        (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
        the same way as GTK_WIN_POS_CENTER.

Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
        with (!(info->last_flags & GDK_HINT_POS)) instead of
        (!info->last_flags & GDK_HINT_POS).

        * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
        new_height unconditionally, because we use these values even if
        !default_size_changed && !hints_changed.
        comented the (default_size_changed || hints_changed) case with
        respect to resize rejects from the window manager.

        * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
        in the zvt condition hack, since this includes the window hints, set
        the hints after the handling_resize case.

        * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
        window is initially shown with to the geometry.
1999-09-02 21:15:01 +00:00
Tim Janik
be326a5a7c s/size_changed/default_size_changed/g so i know what's really going on
Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (gtk_window_move_resize):
        s/size_changed/default_size_changed/g so i know what's
        really going on (frying brain on smaller flame now).
1999-09-02 05:41:57 +00:00
Tim Janik
108d82e785 queue a new resize if we have size_changed upon handling_resize. this is a
Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
        we have size_changed upon handling_resize. this is a gross
        workaround for the broken zvt widget and should be removed in
        1.3 again (search for FIXME).
        Owen provided an accurate comment for this:

        /* We could be here for two reasons
         *  1) We coincidentally got a resize while handling
         *     another resize.
         *  2) Our computation of size_changed was completely
         *     screwed up, probably because one of our children
         *     is broken. It's probably a zvt widget.
         *
         * For 1), we could just go ahead and ask for the
         * new size right now, but doing that for 2)
         * might well be fighting the user (and can even
         * trigger a loop). Since we really don't want to
         * do that, we requeue a resize in hopes that
         * by the time it gets handled, the child has seen
         * the light and is willing to go along with the
         * new size. (this happens for the zvt widget, since
         * the size_allocate() above will have stored the
         * requisition corresponding to the new size in the
         * zvt widget)
         *
         * This doesn't buy us anything for 1), but it shouldn't
         * hurt us too badly, since it is what would have
         * happened if we had gotten the configure event before
         * the new size had been set.
         */
1999-09-02 04:01:11 +00:00
Owen Taylor
c431108d84 Don't omit setting the properties if flags == 0 - there may be an existing
Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_set_geometry_hints)
	  gdk/gdkwindow.c (gdk_window_set_hints):

	Don't omit setting the properties if flags == 0 -
	there may be an existing set of properties there
	already. (Very old bug. Would it be better to
	delete the property instead?)

	* gdk/gdkselection.c (gdk_selection_property_get): Fix
	  spelling error in comment.
1999-09-02 03:41:41 +00:00
Owen Taylor
bd2194afb1 deal properly with the fact that RC style lists may include rc styles more
Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c: deal properly with the fact that RC
	  style lists may include rc styles more than once.

	* gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
	  unused static function.

	* gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
	  stack of directories of RC files currently being
	  parsed and implicitely add them to pixmap path.

	  This fixes a bug where the directory would get
	  appended then overwritten by pixmap_path declarations.

	  (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)

	* gtk/gtkthemes.c (gtk_theme_engine_unref): Call
	  theme's exit function. (Patch from Peter Wainwright,
	  bug #1454)

	* gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
	  Add a destroy() handler to take care of removing
	  group for menu item. (Fixes bug #1197)

	* gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
	  in warning message.
1999-09-02 00:43:37 +00:00
Tim Janik
39fb4797ae don't require a server roundtrip to figure window's width and height,
Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
        roundtrip to figure window's width and height, since we know that
        anyways from widget->allocation.
1999-09-01 19:50:58 +00:00
Owen Taylor
10f1fff6ec Use gdk_error_trap_push() to avoid stomping over gdk_error_warnings.
Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
	  to avoid stomping over gdk_error_warnings.

	* gdk/gdkimage.c (gdk_image_new): compute image->bpp
	  as (bits_per_pixel + 7) / 8. This gives the same
	  result as before for multiples of 8, but actually
	  a "reasonable" value for 1bit or 4bit displays.
1999-09-01 17:59:50 +00:00
Owen Taylor
becd87fbd4 Compute the hints after we request the new size.
Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_move_resize): Compute
	  the hints after we request the new size.
1999-09-01 16:32:30 +00:00
Owen Taylor
55c0a94c2c Removed GTK_WIDGET_REALIZED() assertion - we can compute the hints before
Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwindow.c (gtk_window_compute_hints): Removed
	  GTK_WIDGET_REALIZED() assertion - we can compute the
	  hints before we are realized.

	* gtk/gtkwindow.c (gtk_window_move_resize): Reorder
	  hint changing so that we have a value of hints_changed
	  when we decide whether to constrain the window size.

	* gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.

	* gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
	change back to G_MAXINT.
1999-09-01 14:51:02 +00:00
Pablo Saratxaga
c64f52a36c added da file 1999-09-01 12:31:59 +00:00
Tim Janik
b2a084beb4 zero initialize new GtkWindowGeometryInfo, so fields like GdkGeometry
Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
        new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
        contain uncluttered values.
        (gtk_window_compute_hints): simply assert that window is realized
        and that geometry_info is valid, since we rely on this anyways.
        (gtk_window_constrain_size): major cleanups to the code.
        if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
        for the base size, instead of the minimums. use 32767 as max width
        and height (like in gtkwindow.c) instead of G_MAXINT.
1999-09-01 05:48:55 +00:00
Tim Janik
57485d9029 cleaned up the GtkContainer.need_resize flag handling mess, we only need
Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>

        * cleaned up the GtkContainer.need_resize flag handling mess, we
        only need to force resize requests when we were prematurely
        realized, or our widget tree was modified when we were temporarily
        hidden. handling these cases directly upon showing the window (i.e.
        while the GdkWindow is still unmapped) avoids the need to wait for
        a configure event response and therefore makes the GUI more snappier
        and avoids blank windows during the roundtrip.

        * gtk/gtkwidget.c:
        (gtk_widget_hide):
        (gtk_widget_show): don't queue resizes on toplevels, they know how
        to deal with matters.

        * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
        flag directly for not visible resize containers and spare us unecessary
        signal emissions.

        * gtk/gtkwindow.c:
        (gtk_window_realize): if we need to enforce premature size allocation,
        queue a container resize so we are correctly resized later on.
        (gtk_window_init):
        (gtk_window_size_request):
        don't freak around with the ->need_resize flag,
        gtk_container_queue_resize() will care about that.
        (gtk_window_show):
        handle initial resizing issues here, we can handle matters better in
        this place, especially since we know that our GdkWindow is still
        unmapped.
        (gtk_window_move_resize):
        don't care about ->need_resize at all.
        handle size changes properly that occoured while we waited for a
        configure event.
1999-09-01 02:58:05 +00:00
Owen Taylor
92671fe1f6 Move the hint setting code from gtk_widget_set_uposition to here; set the
Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.c (gtk_widget_set_uposition):
        * gtk/gtkwindow.[hc] (gtk_window_reposition):
        Move the hint setting code from gtk_widget_set_uposition
        to here; set the hints so that we respect any previously
        set geometry hints.

        * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
        change the window hints here or move the window here,
        let that happen in gtk_window_move_resize().
1999-09-01 01:13:10 +00:00
Tim Janik
5e049110f3 when discarding exposes due to already queued resizes (and therefore
Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
        to already queued resizes (and therefore redraws) on a widget, check
        its anchestry as well.

        * gtk/gtkcontainer.c:
        (gtk_container_queue_resize): clear resize widgets for resize
        containers before aborting prematurely. this is especially important
        for toplevels which may need imemdiate processing or their resize
        handler to be queued.
        (gtk_container_dequeue_resize_handler): added new internal function for
        gtkwindow.c.

        * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
        configure event, take possible changes in window position into account
        as well.
        if we request a new window size, queue up a resize handler that will
        last until the configure event response arrives.
        combined the ->need_resize case (initial show) with the general size
        (hints) changed case and added even more comments.
        if !auto_shrink, only revert to the old allocation if the new size
        is smaller than the current allocation.

Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
                           gtk_window_set_geometry_hints
                           gtk_window_set_default_size):
        When hints are set, queue a resize so that the hints will
        be eventually reset on the toplevel.

        * gtk/gtkwindow.c (gtk_window_show): Use
        gtk_window_compute_default_size(). Clear the need_resize flag
        on the initail map so that we don't unnecessarily trigger the
        resize code.

        * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
        into separate functions. Compare the hints we are setting
        with what we set last time so that we can accurately
        tell when we need to reset the hints.

        * gtk/gtkwindow.c (gtk_window_compute_default_size): New
        function to figure out the size from requisition
        and default_size.

        * gtk/gtkwindow.c (gtk_window_constrain_size): Function
        from fvwm to constrain a size to the geometry hints.

        * gtk/gtkwindow.c (gtk_window_compare_hints): New functio
        to compare two sets of geometry hints.

        * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
        from gtk_window_set_hints(), just compute the hints,
        don't set them.

        * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
        code from gtk_window_move_resize() to separate function,
        rationalize a bit.
1999-09-01 00:48:57 +00:00
Owen Taylor
d008fbb84d Missed file from last gtkrc commit. 1999-08-31 21:12:40 +00:00
Owen Taylor
b7fa562427 Move the ref_count member out of the GtkRcStyle structure into a new
Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>

	* gtkrc.h: Move the ref_count member out of the GtkRcStyle
	structure into a new private structure.

	* gtkrc.c: Split GtkRcStyle into public/private.
	In the private part, add a list of pointers to the
	RcStyle lists this RcStyle participates in.

	* gtkrc.c: When a RcStyle is free, remove all
	lists referencing it from the
	realized_style_ht hash, and free those lists.

	* gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
	gtk_rc_init(), since that adds the default styles
	to the list of parsed RC files again.

	* gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
1999-08-31 17:13:33 +00:00
Pablo Saratxaga
5bfd32fd64 a little patch to gtk/gtkfontsel.c to add the missing bit of i18n
support (displays font attributes translated)
1999-08-30 17:43:08 +00:00
Pablo Saratxaga
b977baed2b added eu and ga languages
merged with translations of gtk+ 1.3.0 when they were more up to date
1999-08-30 17:12:09 +00:00
BST 1999 Tony Gale
39024c05ae Minor FAQ Update
Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>

        * docs/gtkfaq.sgml: Minor FAQ Update
1999-08-29 12:30:32 +00:00
Tony Gale
8ec53bf61b Helps to commit the right version
Helps to commit the right version
1999-08-28 13:44:12 +00:00
BST 1999 Tony Gale
b6d42f7eb7 FAQ update
Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>

        * docs/gtkfaq.sgml: FAQ update
1999-08-28 13:27:40 +00:00
Raph Levien
7a73d7bd4d Comment fix (it was confusing for yosh). 1999-08-27 05:48:39 +00:00
Tim Janik
083941009f reactivated the sanity checks that ensure that a widget's allocation is at
Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
        checks that ensure that a widget's allocation is at least 1 in width
        and height. (GNOME note: this doesn't affect old panel code anymore,
        because GtkSocket will request width and height of at least 1 since
        Fri Jul 23).

        * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
        allocated yet (happens if the user realizes the window prematurely),
        size request and allocate it.
        (gtk_window_size_allocate): guard against guint underflows.
1999-08-26 12:44:07 +00:00
Lars Hamann
eb0859b277 reordered stamp-gtk.defs in gtk_built_sources, so gtk.defs gets built
Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>

        * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
        in gtk_built_sources, so gtk.defs gets built prior to all other
        sources.
1999-08-25 17:08:03 +00:00
Tim Janik
bb2b76689c evaluate $PERL for the perl version check. added --disable-rebuilds to
Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>

        * configure.in: evaluate $PERL for the perl version check. added
        --disable-rebuilds to give the user an option to completely disable
        any source autogeneration rules.
1999-08-25 13:52:36 +00:00
CDT 1999 Shawn T. Amundson
65725a25ff Released GTK+ 1.2.4
Mon Aug 23 15:05:17 CDT 1999  Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.2.4
1999-08-23 22:49:05 +00:00
Tim Janik
bd91541a01 evaluate $ac_make when checking for GNU Make.
Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>

        * configure.in: evaluate $ac_make when checking for GNU Make.
1999-08-23 21:20:22 +00:00
Tim Janik
2e6baef994 added some $(srcdir)/ prefixing 1999-08-23 20:39:17 +00:00
Tim Janik
6469f8473e small fix 1999-08-23 20:15:50 +00:00
Tim Janik
40d855bb0c invoke indent on gtkmarshal.*. rewrote source generation rules, use
Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>

        * gtk/Makefile.am:
        invoke indent on gtkmarshal.*.
        rewrote source generation rules, use COPYING as oldest source tag for
        a piggyback rule to generate all sources from (don't touch it ;).
        major cleanups, strip spaces on build rules for GNU Make.

        * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
        source and target files from commandline arguments. don't invoke indent.

        * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
        GNU Make.

        * docs/Makefile.am: added generation.txt.

        * Makefile.am: require automake 1.4, build README from README.in and
        INSTALL from INSTALL.in in dist-hook.

        * README.in:
        * INSTALL.in: new files to autogenerate README and INSTALL from.

        * gtk/COPYING:
        * gdk/COPYING: new files containing the GNU LESSER GENERAL PUBLIC
        LICENSE.

        * configure.in: figure wether we have GNU Make, version update to
        Gtk+ 1.2.4, interface age 2, binary age 4.

        * NEWS: updates.

        * docs/generation.txt: minor additions/corrections.
1999-08-23 19:35:22 +00:00
Manish Singh
fb44e1b6df rambopoo commit
-Yosh
1999-08-23 19:21:25 +00:00
Lars Hamann
0ab658cd10 queue_resize notebook after switch to avoid drawing problems. (Bug#856
Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
	notebook after switch to avoid drawing problems.
	(Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)

	(gtk_notebook_pages_allocate): don't map not visible tab_labels,
	show them instead.
	(Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
1999-08-22 12:53:04 +00:00
Tim Janik
f5891aa3bf we use window->need_resize from configure_event now, to indicate that the
Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c:
        we use window->need_resize from configure_event now, to indicate that
        the gtkwindow should keep its allocation (e.g. because the user resized
        the window through window manager handles). resize_count is now reliably
        used to figure whether we got the allocation we requested from the
        window manager.
        configure events get queued as resizes now, the real stuff (size
        computation and allocation) now only goes on in gtk_window_move_resize().
        GtkWindow's requisition now contains its *real* requisition (like all
        other widgets), *not* taking usize into account.
        geometry_info->last_{width|height} is now updated from set_hints() only
        so it always contains the last hints we set for the window manager.
        made some event handlers return TRUE instead of FALSE.
        the overall code should be much more straight forward now, and the
        significant code portions are accompanied by comments now.
        (gtk_window_set_hints):
        removed requisition argument and made it
        fetch the requisition through gtk_widget_get_child_requisition.
        we also don't move the gdkwindow here anymore, gtk_window_move_resize()
        does that now.
        (gtk_window_show):
        ensure that the widget is realized before calling
        gtk_container_check_resize() (and thus gtk_window_move_resize()), also
        ensure that we got properly size requested and allocated before
        realization.
        (gtk_window_configure_event):
        ignore plain window moves, or reallocate the widget tree through the
        resize queue otherwise.
        (gtk_window_move_resize):
        mostly rewrote this function to figure window manager hints more
        reliably, coalesce window moves and resizes to reduce configure events
        and do actuall size allocations.

Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
        that have a resize pending, because a redraw is already queued for them.

        * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
        discarding configure events.

        * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
        hack to clear resize_widgets.

        * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
        for resize containers prior to size allocation. (this is also a bit
        ugly, but avoids side effects for stopped emissions and is thus more
        reliable).
        (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.

        * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
        function from gtk_tooltips_expose, as we connect to ::expose_event
        *and* ::draw now.

Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
        that have a resize pending, because a redraw is already queued for them.

        * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
        discarding configure events.

        * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
        hack to clear resize_widgets.

        * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
        for resize containers prior to size allocation. (this is also a bit
        ugly, but avoids side effects for stopped emissions and is thus more
        reliable).
        (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.

        * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
        function from gtk_tooltips_expose, as we connect to ::expose_event
        *and* ::draw now.
1999-08-20 02:18:22 +00:00
Federico Mena Quintero
5568346aa2 Added missing sanity checks. (gtk_target_list_unref): Likewise.
1999-08-18  Federico Mena Quintero  <federico@redhat.com>

	* gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
	checks.
	(gtk_target_list_unref): Likewise.

	* gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
	refcount is greater than zero.

	* gdk/gdkwindow.c (gdk_window_unref): Likewise.

	* gdk/gdkfont.c (gdk_font_unref): Likewise.

	* gdk/gdkgc.c (gdk_gc_unref): Likewise.

	* gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.

	* gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
1999-08-18 20:21:07 +00:00
Owen Taylor
0f8e13ca60 guard against division by zero. (Fixes bug #1339)
Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
	guard against division by zero. (Fixes bug #1339)
1999-08-17 19:49:06 +00:00
Owen Taylor
8830e211f8 Prevent the trivial leak of information of allowing word motion when the
Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_move_{forward,backward}_word):
	Prevent the trivial leak of information of allowing
	word motion when the entry is not visible.
1999-08-17 14:58:50 +00:00
Owen Taylor
a6c5f95bac Propagate modality to error dialog as well as confirmation dialogs. (Bug
Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
	modality to error dialog as well as confirmation dialogs.
	(Bug #1803, reported by Rosanna Wing Sze Yuen)
1999-08-17 14:34:33 +00:00
BST 1999 Tony Gale
bae298ea0e FAQ Update
Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
        * docs/gtkfaq.sgml: FAQ Update
1999-08-11 12:39:49 +00:00
Owen Taylor
4139d6fc64 Honor tree->view_lines. (gtk-guy-990611-3.patch: Guy Harris
Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
	tree->view_lines.
	(gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)

	* gtk/Makefile.am (install-data-local): Solaris apparently
	has various troubles with ln -f; use rm first instead.
	(gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)

	* gdk/gdkproperty.c (gdk_property_get): Fix assumption
	that format 32 => sizeof(item) == 4. It really is
	sizeof(long).
1999-08-08 20:31:45 +00:00
Raja R Harinath
54b231b034 Don't mv' from builddir to srcdir, use cp' followed by rm' (the rm'
* gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
use `cp' followed by `rm' (the `rm' was already there).
1999-07-30 17:12:48 +00:00
Elliot Lee
0c39d9a4f3 . configure.in: Fix autoconf warnings about cross compilation by trying to
. configure.in: Fix autoconf warnings about cross compilation by trying to
  provide sane defaults for AC_TRY_RUN.
. docs/Makefile.am: Tell distcheck how to generate the .gif files.
. gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir), put them into
  $(srcdir) when generated. Also add a dependency of gtksignal.h on gtkmarshal.h
  for -j builds.
. gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
1999-07-30 16:14:09 +00:00
Elliot Lee
263a095543 Allow defining a CUSTOM_RELEASE at RPM build time 1999-07-29 20:09:24 +00:00
Owen Taylor
fe3173bd1a Added missing GDK_THREADS_{LEAVE,ENTER} pair. (From Paul Fisher
Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_main_iteration_do): Added missing
	GDK_THREADS_{LEAVE,ENTER} pair.
	(From Paul Fisher <pnfisher@redhat.com>)
1999-07-28 13:26:40 +00:00
Tim Janik
6eb649146c asure that the requested width and height are always >0 (owen).
Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
        width and height are always >0 (owen).
1999-07-23 00:36:33 +00:00
Tim Janik
b7b01fa9d3 typo 1999-07-22 22:15:46 +00:00
Tim Janik
4f490f626a backed out my recent change that assured that a widget's allocated with
Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
        change that assured that a widget's allocated with and height are
        always >1, since this breaks *buggy* panel code. unfortunately this
        back-breaks the gimp's color selector.

        * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
        allocation is always >0 in width and height, before sending the
        configure event; this is a *gross* hack to get the gimp back to work.

        * maked both cases with TODO-1.3
1999-07-22 22:11:47 +00:00
Owen Taylor
66a7a593e2 Don't display wrap indicators when text is not editable and word wrap is
Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktext.c: Don't display wrap indicators when
	text is not editable and word wrap is on.
1999-07-21 19:45:55 +00:00
Yukihiro Nakai
bd7c5b22be ja.po: Japanese translation update from Shirasaki Yasuhiro.
ja.po: Japanese translation update from Shirasaki Yasuhiro.
1999-07-21 08:52:49 +00:00
Tim Janik
32e24f9f32 special case option menus here as they are not derived from menu shell,
Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
        option menus here as they are not derived from menu shell, assure that
        the option menu has a menu we can add items to.
1999-07-21 06:27:12 +00:00
Tim Janik
f50fed4098 convert allocation-> width/height to (gint) before calculations and check
Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
        width/height to (gint) before calculations and check against < 0 to
        avoid guint wraparounds.
1999-07-20 21:59:11 +00:00
Tim Janik
13aa12ea14 ensure that the allocated width and height is never zero. sanity check
Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
        width and height is never zero. sanity check both dimensions against
        32767 and issue a warning if the allocation is greater than that.
1999-07-17 22:42:49 +00:00
Manish Singh
ca599d6060 libtool 1.3.3
-Yosh
1999-07-17 05:21:02 +00:00
Yukihiro Nakai
029baff26a ja.po: "Rename file" translation fixed.
ja.po: "Rename file"  translation fixed.
1999-07-13 05:02:51 +00:00
Tomas Ogren
79e872c851 Updated
1999-07-11  Tomas Ogren  <stric@ing.umu.se>

* sv.po: Updated
1999-07-10 22:28:42 +00:00
Owen Taylor
fa80ff6c59 Indicate that the --with-glib= configure time flag is unsupported.
Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>

	* INSTALL: Indicate that the --with-glib= configure
	time flag is unsupported.

	* configure.in: Some small fixups for libgno
1999-07-08 15:33:41 +00:00
Stuart Parmenter
58102a49f0 s/,/./ 1999-07-07 22:20:33 +00:00
Owen Taylor
d38f1248d1 Unlock around call to g_main_pending() as well.
Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_events_pending): Unlock around call
	to g_main_pending() as well.
1999-07-07 19:04:09 +00:00
Owen Taylor
8e401114ef Unlock around call to g_main_iteration() - since that will regrab GTK+
Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_main_iteration): Unlock around
	call to g_main_iteration() - since that will regrab
	GTK+ lock to process events.
1999-07-07 18:55:46 +00:00
Owen Taylor
46144b1be4 Added a file that gives documenation about the autogeneration process for
Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>

	* docs/generation.txt: Added a file that gives
	documenation about the autogeneration process for
	various autogenerated files.
1999-07-06 00:36:56 +00:00
Owen Taylor
af5243ab71 - Code cleanups - Instantaneously update on modifier key presses - Allow
Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c:
	- Code cleanups
	- Instantaneously update on modifier key presses
	- Allow cancellation of the drag with Escape.
1999-06-30 23:35:55 +00:00
Owen Taylor
37ad5eb7c0 Don't core dump at all on X IO errors, only core dump if --enable-debug
Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
	core dump at all on X IO errors, only core dump
	if --enable-debug for X errors.

Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/testgtk.c (create_handle_box): Set the policy
	to auto_shrink - otherwise the appearance is rather
	strange when flipping between horizontal and vertical.
1999-06-30 21:52:35 +00:00
Owen Taylor
d97fede574 Look for libgmodule in the right location.
Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>

	* configure.in (LIBS): Look for libgmodule in the
	right location.
1999-06-29 19:58:24 +00:00
Tim Janik
dc624c4dd8 add ::default_width and ::default_height arguments.
Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
        (gtk_window_set_default_size): don't change a value if it's < 0.
        queue a resize.

Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
1999-06-28 23:52:46 +00:00
Owen Taylor
43e80bc87a Don't add an extra "/" when concating "/" + filename. (From Matt Grossman
Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
	add an extra "/" when concating "/" + filename.
	(From Matt Grossman <mattg@oz.net>)
1999-06-28 16:08:28 +00:00
Owen Taylor
4c09ae6026 Reset clip mask for fg_gc if we set it for drawing pixmap.
Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
	for fg_gc if we set it for drawing pixmap.
1999-06-28 15:50:44 +00:00
Tim Janik
86e47a1efa removed old ""Got event for unknown window:" message. disabled
Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
        unknown window:" message. disabled ConfigureNotify discarding code,
        because it led to events being processed out of order.

Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.

        * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
        we export this function, supress error warnings and don't reset the
        error code in the first half of this function.

        * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
        code (instead of just -1) so gdk_error_trap_pop() reveals something
        actually informative about the error that happened.

        * gdk/*.c:
        don't rely on gdk_error_code being -1 if an error occoured, but just
        gdk_error_code != 0.

Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
        pointer *before* invoking the filter function, so we at least don't
        crash if a filter is removed that is currently executed. window filters
        *really* need to be made truely reentrant at some point.

Wed Jun 16 20:28:34 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkevents.c (gdk_event_translate): don't segfault for
        window==NULL in ConfigureNotify.

Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
        PropertyNotify debug messages.
1999-06-25 23:23:07 +00:00
Owen Taylor
b90f0c9ee7 Removed references to code examples in my directory on gtk.org as they
Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>

	* docs/gtk_tut.sgml: Removed references to
	code examples in my directory on gtk.org as
	they should all be in the tutorial now.

	* docs/gtk_tut.sgml: Added sources for dial-test
	and scribble-xinput programs that were previously
	missing.
1999-06-17 18:01:14 +00:00
Elliot Lee
e0bc92268b Add maintainers list 1999-06-15 17:20:46 +00:00
Tim Janik
94ba2610fe queue a resize.
Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
1999-06-11 03:36:07 +00:00
Tim Janik
b39b03d27d small fix 1999-06-09 09:08:22 +00:00
Tim Janik
611e6e20e7 mark certain functions as internal.
Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkaccelgroup.h: mark certain functions as internal.

Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
        expand behaviour changed.

        * gtk/gtklabel.c (gtk_label_set_pattern):
        (gtk_label_set_justify):
        (gtk_label_set_line_wrap):
        don't bother invoking queue_clear, the reallocation does
        that for us, always free_words so the upcoming resize will
        relayout the label's contents.

Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>

        * applied argument implementation patches from Elena Devdariani
        <elena@cogent.ca>.

        * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
        ::space_style, ::relief
        * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
        * gtk/gtkpreview.c: ::expand
        * gtk/gtkpaned.c: ::handle_size, ::gutter_size
        * gtk/gtknotebook.c: ::homogeneous
        * gtk/gtklabel.c: ::wrap
        * gtk/gtklist.c: ::selection_mode
        * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
        * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
        * gtk/gtkcolorsel.c: ::policy, ::use_opacity
        * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
        * gtk/gtkclist.c: ::sort_type
        * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
        * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
1999-06-09 09:07:42 +00:00
Owen Taylor
852baf9bfe Added entry about menu keyboard navigation, removed some finished items.
Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>

	* TODO: Added entry about menu keyboard navigation, removed
	some finished items.
1999-06-04 04:47:27 +00:00
Owen Taylor
2d19ab20f7 Removed ill-thought-out part of last comment.
Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.c: Removed ill-thought-out part of last
	comment.
1999-06-02 03:35:54 +00:00
Owen Taylor
f9aee08d6e Get the reference counting right when we have to attach a new style for a
Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.c (gtk_style_attach): Get the reference
	counting right when we have to attach a new style
	for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)

	* gtk/gtkstyle.c: Documented the refcounting
	peculularities of gtk_style_attach.
1999-06-02 03:29:39 +00:00
1
c084c71294 added return if fail for invalid window types.
1999-06-01    <timj@dhcpd7.redhat.com>

        * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
        window types.

        * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
        of GTK_TOPLEVEL for creating the window.
1999-06-01 17:26:26 +00:00
1
c288d2419e don't segfault when --gtk-module is the last argument (reported by Per
1999-06-01    <timj@dhcpd7.redhat.com>

        * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
        the last argument (reported by Per Winkvist).
1999-06-01 16:57:02 +00:00
Owen Taylor
8d32617d16 Standardize on func_dgettext not func_gettext, so that the checks for
Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>

	* acinclude.m4: Standardize on func_dgettext
	not func_gettext, so that the checks for dgettext
	actually are paid attention to.
1999-06-01 12:42:56 +00:00
Manish Singh
651a662ba5 blah
-Yosh
1999-05-29 18:19:56 +00:00
Manish Singh
1c2bde024e libtool 1.3.2
add Changes-1.2.txt to EXTRA_DIST

-Yosh
1999-05-29 18:19:22 +00:00
Owen Taylor
3680b735d7 Updates from Stanislav Brabec <utx@k332.feld.cvut.cz>.
Tue May 25 14:11:09 1999  Owen Taylor  <otaylor@redhat.com>

	* cs.po: Updates from Stanislav Brabec <utx@k332.feld.cvut.cz>.
1999-05-25 18:09:26 +00:00
Owen Taylor
9d40a0cd27 Fixes for invisible XOR lines (Frank Loemker
Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>

        Fixes for invisible XOR lines (Frank Loemker
	<floemker@TechFak.Uni-Bielefeld.DE>)

	* gtk/gtkclist.c (gtk_clist_realize): Always use
	a non-zero pixel for GDK_XOR.

	* gtk/gtkvpaned.c gtk/gtkhpaned.c:
	Use GDK_INVERT instead of GDK_XOR.
1999-05-25 17:25:07 +00:00
Lars Hamann
dc9569756e signal emit value_changed signals if h/voffsets differ from adjustment
Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
	signals if h/voffsets differ from adjustment values.
	Reportet by Jerome Bolliet <bolliet@in2p3.fr>
1999-05-12 20:29:31 +00:00
CDT 1999 Shawn T. Amundson
0ef2295c53 GTK+ is as easy as 1.2.3...
Mon May 10 22:20:06 CDT 1999 Shawn T. Amundson <amundson@gtk.org>

        * GTK+ is as easy as 1.2.3...
1999-05-11 04:50:54 +00:00
Tim Janik
519fed9991 propagate ::selection-done emissions up to the topmost menu shell.
Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
        ::selection-done emissions up to the topmost menu shell.
1999-05-11 02:19:37 +00:00
Owen Taylor
5e52b31fd7 Unset the user data on the window before destroying it.
Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
	the user data on the window before destroying it.

	* gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
	unrealize handler to take care of destroying
	notebook->panel properly.
	(Bug #1198 - Morten Welinder <terra@diku.dk>)

	* gtk/gtktext.c (expand_scratch_buffer): Fix reversal
	of g_new and g_realloc to stop memory leak. (Actually,
	we could just use g_realloc(), but I'm not 100% sure
	that is portable).
	(Bug #1196 - Morten Welinder <terra@diku.dk>)
1999-05-07 14:29:04 +00:00
Owen Taylor
bbe8b7ba61 Removed stray GtkPlugButton declaration.
Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkplug.h: Removed stray GtkPlugButton declaration.

	* gdk/gdkfont.c (gdk_text_measure): Fix the return value
        for fontsets.

	* gtk/gtkbutton.c (gtkbutton_expose): Fix warning
	with bin/button confusion.
1999-05-06 03:13:41 +00:00
Owen Taylor
f187c3bb24 Change G_MAXINT to 2^16 to alleviate overflow problems in various window
Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
	G_MAXINT to 2^16 to alleviate overflow problems in
	various window managers.
1999-05-06 03:12:08 +00:00
Owen Taylor
6227a115be Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>

        Patch from Sung-Hyun Nam <namsh@lgic.co.kr>

	* gdk/gdkim.c: Fix cut-and-paste errors for
	x/y and PreeditAttributes/StatusAttributes.
1999-05-06 03:11:38 +00:00
Tim Janik
2f80acc28e in the ItemFactory test, link radio items together, and show how
Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>

        * gtk/testgtk.c: in the ItemFactory test, link radio items together,
        and show how preselection of radio items is done.

Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtktreeitem.c (gtk_tree_item_set_subtree):
        * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
        * gtk/gtktoolbar.c (gtk_toolbar_insert_element):
        * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
        * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add):
        * gtk/gtktable.c (gtk_table_attach):
        * gtk/gtklist.c (gtk_list_insert_items):
        * gtk/gtkmenushell.c (gtk_menu_shell_insert):
        * gtk/gtknotebook.c (gtk_notebook_insert_page_menu):
        * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add):
        * gtk/gtkbin.c (gtk_bin_add):
        * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end):
        * gtk/gtkfixed.c (gtk_fixed_put):
        * gtk/gtklayout.c (gtk_layout_put):
        general fixups to container_add logic. always realize child if
        child->parent is realized, only map the child and queue a resize
        if child and child->parent are both visible.

Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
        instead of gtk_container_foreach to walk and unrealize children, so
        composite children get also unrealized.
        (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
        (gtk_widget_map): assert that the widget is visible (basic constrain).
        (gtk_widget_real_map): assert that the widget is realized (basic
        constrain).

Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
1999-05-06 02:59:18 +00:00
Owen Taylor
30d6a30b01 Initialize size_hints.x and size_hints.y because kwm brokenly pays
Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_set_geometry_hints):
	Initialize size_hints.x and size_hints.y because kwm
	brokenly pays attention to them.
	(Bug #1181 -  Lars Heete <hel@admin.de>)
1999-05-05 16:46:28 +00:00
Owen Taylor
7f9cb3548b Free the return value of gdk_list_visuals(). (Bug #1193 - Morten Welinder
Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the
	return value of gdk_list_visuals().
	(Bug #1193 - Morten Welinder <terra@diku.dk>)
1999-05-05 15:38:48 +00:00
Owen Taylor
17c8d9cd74 Add $INTLLIBS into $LIBS directly, rather than repeating the checks for
Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>

	* configure.in (LIBS): Add $INTLLIBS into $LIBS
	directly, rather than repeating the checks for
	gettext.

	* INSTALL: Added information about gettext and
	NLS support.

	* acinclude.m4 (LIBM): Check for dgettext, not
	just gettext. This should hopefully fix things wrt
	systems with old versions of GNU gettext installed.
1999-05-05 15:11:36 +00:00
Manish Singh
197950e184 cast the return value of XSetIMValues to (void *) when comparing to NULL,
* gdk/gdkim.c (gdk_im_real_open): cast the return value of
XSetIMValues to (void *) when comparing to NULL, to workaround
the problem of some compilers barfing since older X headers don't
have the prototype for it.

-Yosh
1999-05-04 18:18:06 +00:00
Owen Taylor
bbf7b3a60f Use width,height = 0, 0 to mean - here to edge of window, instead of -1,
Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use
	width,height = 0, 0 to mean - here to edge of window,
	instead of -1, -1, since the former is all we support.

Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (gtk_main): Correctly free list nodes
	when removing from quit_functions list.

Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
	for pseudocolor where colormap->colors was double
	allocated.

	* gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
	color value in the hash table with the pixel filled
	in so when we do later hash table lookups, the color
	value is correct.
1999-05-04 15:00:07 +00:00
Owen Taylor
498b5eca13 Add a gtkrc file for iso-8859-2 locales.
Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
	file for iso-8859-2 locales.

	* configure.in (ALL_LINGUAS): ALL_LINGUAS update.

Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
	 (Pointed out by andy@rz.uni-karlsruhe.de and others).
	 Remove some suspicious and useless lines.
1999-05-04 13:53:19 +00:00
Owen Taylor
658f736af1 Backmerge from HEAD sk.po sl.po zh_TW.Big5.po: New additions
Tue May  4 09:09:52 1999  Owen Taylor  <otaylor@redhat.com>

	* fi.wa wa.po ca.po: Backmerge from HEAD
	  sk.po sl.po zh_TW.Big5.po: New additions

	* pl.po: Backported updates from HEAD
1999-05-04 13:52:23 +00:00
Manish Singh
edf4aa4bcd check private->destroyed before making the call
* gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
making the call

-Yosh
1999-05-02 22:34:49 +00:00
Manish Singh
3046ab9f0f libtool 1.3 upgrade
-Yosh
1999-05-01 18:06:06 +00:00
Tim Janik
a654f96831 remove unused variable.
Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
1999-04-29 00:21:01 +00:00
Owen Taylor
ff01cccfb9 Fix leak pointed out by Morten Welinder <terra@diku.dk>.
Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
	pointed out by Morten Welinder <terra@diku.dk>.
1999-04-27 22:34:00 +00:00
Owen Taylor
0c177d15d1 When redrawing characters on non-visible entry, use appropriate '*'
Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable):
	 When redrawing characters on non-visible entry, use appropriate
	 '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
1999-04-27 22:33:02 +00:00
Lars Hamann
be0f11a4d2 compute destination cell from drag coordinates.
Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>

        * gtk/gtkclist.c (drag_dest_cell): compute destination cell
        from drag coordinates.
        (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
        use drag_dest_cell.

        * gtk/gtktree (drag_dest_cell)
        (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
        (Bug #1129)
1999-04-26 23:57:45 +00:00
Changwoo Ryu
ed0db4cd4f Updated.
1999-04-24  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>

	* ko.po: Updated.
1999-04-24 14:42:49 +00:00
Tim Janik
1cc01ceb59 fix (and foxy ;) 1999-04-22 16:05:14 +00:00
Tim Janik
caf95cd161 properly initialize translate_* fields. (gtk_item_factory_finalize):
Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
        translate_* fields.
        (gtk_item_factory_finalize): invoke translate_notify independant from
        translate_data.
        (gtk_item_factory_set_translate_func): likewise.
        (gtk_item_factory_destroy): only ifactory pointer from those widgets
        that belong to us (stupid me).
1999-04-21 22:25:48 +00:00
George Lebl
83c4021614 correctly remove the default filter from the list
Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>

        * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
          default filter from the list
1999-04-21 21:26:46 +00:00
Owen Taylor
fdb8efb35a Fixed leak of rc_style list when lookup succeeeds.
Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
	rc_style list when lookup succeeeds.
1999-04-21 17:12:43 +00:00
Drazen Kacar
9ad66ac6e8 Merged Croatian locale from HEAD. 1999-04-19 01:16:07 +00:00
Tomas Ogren
3834ea83c0 Add a / before the directory name to keep directory names from eachother.
1999-04-18  Tomas Ogren  <stric@ing.umu.se>

        * gtk/gtkrc.c: Add a / before the directory name to keep directory
        names from eachother. (Already fixed in 1.3.x)
1999-04-18 18:21:19 +00:00
Manish Singh
e3b8c8ba92 #include "gdkkeysyms.h" for gdk_XConvertCase #defines
* gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines

* gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
g_strdup_printf instead of calcing the length separately

-Yosh
1999-04-17 03:49:50 +00:00
Lars Hamann
e6828ec4e4 fixed undo_selection bug. fixed resync_selection bug.
Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkctree.c (resync_selection):
	* gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
	* gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
 	bug.
1999-04-14 23:33:07 +00:00
CDT 1999 Shawn T. Amundson
7ee4ba7781 Released GTK+ 1.2.2
Tue Apr 13 17:14:28 CDT 1999 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.2.2
1999-04-13 23:09:16 +00:00
Owen Taylor
3a03678080 removed some silly #ifdef HAVE_CONFIG that we don't do in many other
Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
	that we don't do in many other places. (Fixing duplicate
	#include of config.h)

	* gdk/gdkevents.c: include gdkinput.h _after_ config.h.
	Otherwise, #ifndef XINPUT_NONE check in the latter
	doesn't work. (Bug #546)
1999-04-13 06:55:55 +00:00
Tim Janik
badd841246 bumped version number to Gtk+ 1.2.2, interface 0, binary 2.
Sun Apr 11 15:08:27 1999  Tim Janik  <timj@gtk.org>

        * configure.in: bumped version number to Gtk+ 1.2.2, interface 0,
        binary 2.

        * NEWS: updates.

Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
        "None" case insensitive.
1999-04-11 15:01:30 +00:00
Owen Taylor
ffafb164d9 Add some missing GDK_THREADS_ENTER()/LEAVE around timeouts. (Patches from
Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
        Add some missing GDK_THREADS_ENTER()/LEAVE around
        timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
1999-04-09 23:34:05 +00:00
Tim Janik
8286bd2493 use gtk_widget_activate() rather than emit_by_name.
Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
        rather than emit_by_name.

        * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
        on the widget across multiple signal emissions.
        (gtk_editable_delete_text): same here.
        (gtk_editable_class_init): set widget_class->activate_signal after
        editable_signals[ACTIVATE] has been created.
1999-04-08 20:11:42 +00:00
Owen Taylor
ceb0f66e51 Don't clamp position here prematurely -- we might not have the right
Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
	position here prematurely -- we might not have the
	right ->min_position and ->max_position yet.
1999-04-08 03:06:03 +00:00
Owen Taylor
3de957405f Add error traps so if the other end of the connection dies, we survive.
Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
	Add error traps so if the other end of the connection
	dies, we survive.

	* gtk/gtkselection.c (gtk_selection_notify): Clean
	up properly when selection property retrieval fails.

	* gtk/gtkselection.c (gtk_selection_request): Correctly
	reject SelectionRequest notifies where the handler
	returns no data.
1999-04-06 21:00:45 +00:00
Owen Taylor
4361369939 Only unhighlight when we've previously highlighted.
Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
	when we've previously highlighted.

	* gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
	emit two "drag_leave" signals for Motif drops.

	* gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
	back the correct status messages when dropping from
	Motif onto a proxy window that is rejecting the
	drop.

	* gdk/gdkdnd.c (gdk_drag_motion): Separate out the
	dest_xid field into two fields - one for the window
	to send in messages, one to indicate the last looked
	up window for caching purposes. This is needed, so
	that Leave messages get the correct window.
1999-04-06 18:50:38 +00:00
Owen Taylor
0d353949e2 Check explicitly for the string "None" - it is in the XPM spec and some
Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check
	explicitly for the string "None" - it is in the XPM
	spec and some servers treat unknown colors in odd ways
	(like asking the user!)
1999-04-05 21:14:25 +00:00
Owen Taylor
80c5ac85d4 Fix warning created by people mucking around with the gsource API.
Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
	Fix warning created by people mucking around
	with the gsource API.

	* gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
	Change mapping between GIOCondition and GdkInputCondition
	to match the way the Linux kernel does it. This should
	fix problems where closed pipes were no longer signalling
	GDK_INPUT_READ on systems with a native poll().
1999-04-05 17:24:41 +00:00
Manish Singh
b44c5d0f0c made "->" into a "." of previous change so it compiles
* gdk/gdkevents.c: made "->" into a "." of previous change so
it compiles

* gtk/gtkfontsel.c: added braces enclosing an if-else construct

* autogen.sh: add --enable-maintainer-mode

* configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"

-Yosh
1999-04-02 01:17:12 +00:00
Federico Mena Quintero
7ac92e74e8 Set the window field of the event structure before calling user filters.
Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkevents.c (gdk_compress_exposures): Set the
	window field of the event structure before calling
	user filters.

1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gdk/gdk.c (gdk_init_check): Use False as the last argument to
	XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
1999-04-01 23:38:43 +00:00
Federico Mena Quintero
eaa98e5cfc Use False as the last argument to XInternAtom() here. This is a
1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gdk/gdk.c (gdk_init_check): Use False as the last argument to
	XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
1999-04-01 10:42:06 +00:00
Tim Janik
db496116d9 added functions from GLE, gtk_arg_reset() to free the value and reset type
Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
        the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
        to compare two argument values. added gtk_arg_to_valueloc() to set a
        variable from an arg through its location (pointer).

        * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
        gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
        as gfloat*, uchars are collected as guchar*, ints are collected as
        gint*, etc...
1999-03-30 18:28:38 +00:00
Owen Taylor
d32d93cc3c Include <string.h> instead of <strings.h>.
Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
	Include <string.h> instead of <strings.h>.

	* gtk/gtkstyle.c: Fix double include of gtkthemes.h
	(actually, a lot more duplicate includes occur if
	 you trace through the sequence of #include's)
	gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
1999-03-29 23:44:33 +00:00
Owen Taylor
da74d5d843 Free the value of the intermediate text property - prevents major memory
Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkim.c (gdk_mbstowcs): Free the value of the
	intermediate text property - prevents major memory
        leak when gdk_use_mb.
	gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
1999-03-29 22:38:18 +00:00
Owen Taylor
44dd4a430d Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>

        Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
	gtk-a-higuti-990322-[0-3]

	* gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
	sizeof(wchar_t) != sizeof (GdkWChar)

	* configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
	that was causing -DX_LOCALE not	to work.

	* gtk/gtkrc.c (gtk_rc_init):
	X_LOCALE will never have LC_MESSAGES defined

	* gdk/gdk.c (gdk_init_check):
	Remove --xim-preedit and --xim-status from argv properly.

	* gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
	that the client window is present on the X server
	before we pass it to the input method.
1999-03-29 22:20:41 +00:00
Owen Taylor
fcc38c19d8 Fix bug where if --display is specified on the command line, than the drag
Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
	if --display is specified on the command line, than
	the drag window will not be created on that display.

Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
	lookups with only_if_exists == TRUE were inserting
	bogus values into the atom cache.
1999-03-29 20:40:47 +00:00
Manish Singh
737580cc57 Shut up CVS
-Yosh
1999-03-28 01:07:21 +00:00
Kjartan Maraas
db025ebfb0 updated translation
1999-03-27  Kjartan Maraas  <kmaraas@online.no>

		* no.po: updated translation
1999-03-26 23:11:18 +00:00
Tim Janik
0ae73a09dd get $HOME from g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
        g_get_home_dir() (gtk-pmc-990123-0.patch.gz).

        * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
        left/right as well (gtk-michael-980726-0.patch.gz).

        * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
        for pointer values, use gchar instead of char. fixed uline allocation
        leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
        chunks instead of G_ALLOC_ONLY.
        (gtk_label_size_request): always alter requisition as passed and leave
        widget->requisition alone.
        (gtk_label_set_text): allow NULL strings.
        (gtk_label_new): likewise.
1999-03-25 13:39:54 +00:00
CST 1999 Shawn T. Amundson
2c659472e2 Released GTK+ 1.2.1
Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * Released GTK+ 1.2.1

        * INSTALL:
          README:
          sanity_check: Updated.

        * docs/gtk-config.1.in:
          docs/Makefile.am:
          configure.in: gtk-config is now generated.

        * docs/gtk-config.1: Removed, now generated.
1999-03-25 05:55:03 +00:00
Tim Janik
0720955e17 type/macro fixups.
Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkdrawingarea.[hc]: type/macro fixups.
1999-03-24 15:01:55 +00:00
Stefan Jeske
0c90498103 Added missing "%" to "prefix" 1999-03-24 09:43:05 +00:00
Kjartan Maraas
bab8d95583 1112: add missing . after @xref
1999-03-22  Kjartan Maraas  <kmaraas@online.no>

		* gtk.texi:1112: add missing . after @xref
1999-03-22 20:47:19 +00:00
Tim Janik
3f2cd052fd grrr, stupid cvs, try grasp the meaning of "abort"!
Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
        *and* mapped (i.e. drawable).
        (gtk_bin_expose): only send exposes to drawable children.

        * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
        (gtk_box_expose): only send exposes to drawable children.

        * gtk/gtkhscale.c (gtk_hscale_draw):
        * gtk/gtkvscale.c (gtk_vscale_draw):
        hm, this is an ugly one. we first compute the size of our trough area
        here (window relative) and then check intersection with the draw_area
        which is parent relative because we're a NO_WINDOW widget, so we need
        to offset the trough area by allocation.x and allocation.y before the
        check. (this must not be done for the background area though, since
        that's already computed parent relative).
1999-03-22 06:46:16 +00:00
Tim Janik
0362058f6e only redraw children that are visible *and* mapped (i.e. drawable).
Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
        *and* mapped (i.e. drawable).
        (gtk_bin_expose): only send exposes to drawable children.

        * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
        (gtk_box_expose): only send exposes to drawable children.

        * gtk/gtkhscale.c (gtk_hscale_draw):
        * gtk/gtkvscale.c (gtk_vscale_draw):
        hm, this is an ugly one. we first compute the size of our trough area
        here (window relative) and then check intersection with the draw_area
        which is widget relative, so we need to offset the trough area by
        allocation.x and allocation.y before the check. (this must not be done
        for the background area though, sicne that's already computed parent
        relative).
1999-03-22 06:35:54 +00:00
Lars Hamann
b59eefd649 unmap clist if neccessary, unrealize title buttons.
Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
	unrealize title buttons.
1999-03-21 23:57:07 +00:00
Manish Singh
287624f406 shut up cvs
-Yosh
1999-03-21 02:19:44 +00:00
Manish Singh
d4ecce94c8 acinclude.m4 config.guess config.sub ltconfig upgrade to libtool 1.2f
* acinclude.m4
* config.guess
* config.sub
* ltconfig
* ltmain.sh: upgrade to libtool 1.2f

* autogen.sh: libtool is not required to autogen gtk+

* acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly needed)

-Yosh
1999-03-20 00:48:13 +00:00
Lars Hamann
536673ad38 only connect/disconnect to GtkWidgetClass::event to block mouse events.
Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c (gtk_clist_column_title_passive)
	(gtk_clist_column_title_active):
	only connect/disconnect to GtkWidgetClass::event to block mouse events.

	* gtk/gtkclist.c (vertical_timeout) (horizontal_timeout):
	zero initialize event, removed superfluous gdk_window_get_pointer call

	* gtk/gtklist.c (gtk_list_vertical_timeout)
	(gtk_list_horizontal_timeout): removed superfluous
 	gdk_window_get_pointer call
1999-03-19 12:36:22 +00:00
Tim Janik
8b424288ba plugging problems reported by "Bruce Mitchener, Jr." <bruce@puremagic.com>
Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>

        * plugging problems reported by "Bruce Mitchener, Jr."
        <bruce@puremagic.com> due to a purify session.

        * gtk/gtkstyle.c:
        (gtk_style_ref):
        (gtk_style_unref): assert ref_count to be > 0.

        * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
        the requisition.
        (gtk_clist_set_shift): likewise.

        * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
        adjustments.

        * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
        then reset it to NULL.

        * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
        event before sending it and set send_event to TRUE (which needs to
        be done for *all* synthesized events).
        (gtk_list_vertical_timeout): likewise.

        * gdk/gdkcolor.c:
        (gdk_colors_free):
        (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
        key for g_hash_table_remove() in both functions, this prevents us
        from accessing possibly uninitialized portions of a GdkColor structure
        where we are only interested in its pixel value.

        * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
        leaks.

        * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
        to TRUE when synthesizing events.
1999-03-17 10:32:33 +00:00
Stuart Parmenter
f880eba7cd make sure gtk_style_copy copies theme information 1999-03-17 03:32:11 +00:00
Tim Janik
ac8d845b3d updates.
* NEWS: updates.
1999-03-17 02:38:38 +00:00
Tim Janik
b691a88e07 bumped version number to Gtk+1.2.1, interface 0, binary 1.
Wed Mar 17 00:44:23 1999  Tim Janik  <timj@gtk.org>

        * configure.in: bumped version number to Gtk+1.2.1, interface 0,
        binary 1.

        * gtk/gtkfeatures.h.in: added GTK_CHECK_VERSION(major,minor,micro)
        macro to test for specific gtk versions, e.g.
        #if GTK_CHECK_VERSION (1,2,1)
            gtk_menu_ensure_uline_accel_group (menu);
        #endif /* Gtk+1.2.1 */
        this macro will return whether the Gtk+ header files are from version
        major.minor.micro or _newer_, as opposed to gtk_check_version() which
        requires an exact match for binary compatibility.
1999-03-17 00:03:10 +00:00
Tim Janik
af138bc287 ensure the item factory class has been created.
Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>

	* gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
	item factory class has been created.
	(gtk_item_factory_parse_rc): likewise.

	* gtk/gtkmenu.c:
	keep proper references for old_active_menu_item.
	(gtk_menu_reparent): unset the usize of the new parent,
	so the menu can sanely be size requested and we don't get nasty screen
	artefacts upon next reparentation.
	(gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
	enter notify. only synthesize enter notifies if the pointer really is
	inside the event window.
	(gtk_menu_popdown): use gtk_menu_shell_deselect().
	(gtk_menu_popup): move the background setting stuff into
	gtk_menu_tearoff_bg_copy() so it can be called from other places as well.

	* gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
	gtk_menu_shell_select_item() to select the new item.
	(gtk_menu_shell_deselect): export this function, so gtkmenu.c can
	do the right thing for deselection as well.

Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>

	* gtk/gtkwidget.[hc]:
	(gtk_widget_accelerators_locked): return whether a widget's accelerators
	are locked.

        * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
	existing accelerators if the widget's accelerators are locked.

Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>

	* gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.

	* gtk/gtkmenu.c: truely forward key press and key release events to
	the menu widget from the toplevel or tearoff window. we can't simply
	connect to that, we need to stop further processing of the events as
	well.

Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>

	* gtk/gtkmenu.c:
	(gtk_menu_key_press): pass event->keyval, event->state to
	gtk_accelerator_valid, instead of event->keyval twice.
	refuse to install single letter accelerators for menus that use
	single letter shortcuts.

	* gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
	gtk_menu_ensure_uline_accel_group().

	* gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
	which will always return an uline accel group, made
	gtk_menu_get_uline_accel_group() return NULL if the group isn't
	yet created.
1999-03-16 22:37:32 +00:00
Lars Hamann
29ce61fcf3 added button_passive flag.
Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>

        * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.

        * gtk/gtkclist.c (gtk_clist_column_title_passive):
        Leave button sensitive, trap  button_press, button_release,
        motion_notify, enter_notify and leave_notify events instead.
        (gtk_clist_column_title_active): disconnect event handler.
        (gtk_clist_drag_data_get): fixed memory leak. Reported by
        Guillaume Laurent <glaurent@worldnet.fr>
1999-03-15 22:37:28 +00:00
George Lebl
69d2eba366 swap the gtk_drag_highlight_expose and gtk_drag_highlight_paint since it
Mon Mar 15 03:39:47 1999  George Lebl  <jirka@5z.com>

        * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
          gtk_drag_highlight_expose and gtk_drag_highlight_paint since
          it was connecting a void function to expose_event and the int
          returning function to the draw signal
1999-03-15 11:40:27 +00:00
Lars Hamann
efb837bdb6 fixed a few width/height mixups.
Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>

        * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
        width/height mixups.

        * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
        if needed.
1999-03-10 23:20:10 +00:00
Federico Mena Quintero
5db63aaa6d Significantly reduced the number of calls to gdk_draw_point() (and thus to
Wed Mar 10 02:07:31 1999  Tim Janik  <timj@gtk.org>

        * merged from 1.3:
1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>

        * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
        the number of calls to gdk_draw_point() (and thus to X) by
        clipping the points by hand.

        * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
        the clip parameter.
        (gtk_handle_box_paint): Only paint the handle if the expose area
        intersects it.
1999-03-10 01:14:38 +00:00
Tim Janik
7e8d27f327 unref the item factory after window's destruction.
Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>

        * gtk/testgtk.c (create_item_factory): unref the item factory after
        window's destruction.

        * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
        count on the menu shell around the menu item's activation, since the
        signal emission may cause menu shell destruction.

        * gtk/gtkitemfactory.c:
        the previous code leaked one accel group per menu. we use
        gtk_menu_get_uline_accel_group() now to fix that, and with that
        also create the underline accelerator group of the menus only if
        required (i.e. an underline accelerator has been specified).
        (gtk_item_factory_construct):
        (gtk_item_factory_create_item): removed code that would create an
        extra accel group for the menu (and leak references).
        (gtk_item_factory_create_item): adapted the underline accelerator
        installation code to properly feature gtk_menu_get_uline_accel_group().

        * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
        menu->accel_group, this may return NULL if the accelerator group
        hasn't been set yet.
        added gtk_menu_get_uline_accel_group() to retrive the underline
        accelerator group of the menu, this will be created on demand
        and proper care is taken about its reference count.

        * gtk/gtkitemfactory.h:
        * gtk/gtkitemfactory.c:
        dumped the approach of keeping a widgets by action list on the
        factory since the factory<->widget destroy negotiation didn't work
        and would be hard to get going at all. instead we keep a list of
        GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
        persistant throughout a program's life time).
        also, i removed the static const gchar *key_* variables, and made
        them inline strings (they weren't actually used anyways).
        (gtk_item_factory_add_item): update ifactory->items.
        (gtk_item_factory_destroy): destroy ifactory->items (and remove
        the item factory pointer from the remaining ifactory widgets).
        (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
        list to find the widget.
        (gtk_item_factory_get_item): new function that works around
        gtk_item_factory_get_widget() limitations, this function will only
        return menu items, even for <Branch> entries.
1999-03-10 01:00:04 +00:00
Tim Janik
8556b64654 first lookup the xfont ID in our font hash table, if we have a
Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>

        * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
        font hash table, if we have a GdkFontPrivate entry for this font
        already, simply increment its reference count, provided by Olaf Dietsche
        <olaf.dietsche+list.gtk@netcologne.de>.

        * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
        provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
1999-03-09 00:21:31 +00:00
Tim Janik
12d38df79e before adding a child to a conatiner, make sure it is (default)
Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtkcontainer.c:
        (gtk_container_add_with_args):
        (gtk_container_addv):
        (gtk_container_add): before adding a child to a conatiner, make sure
        it is (default) constructed, this is neccessary because under certain
        circumstances the child will get relized and mapped immediatedly, in
        which case it has to be constructed already.
1999-03-07 06:09:53 +00:00
Tim Janik
7699e34d83 count object_signal values > 1 as TRUE also.
Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
        values > 1 as TRUE also.
1999-03-01 18:51:07 +00:00
Tim Janik
14ff63b93d minor fix. 1999-02-27 00:35:08 +00:00
556 changed files with 90293 additions and 125767 deletions

11489
ChangeLog

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

53
INSTALL
View File

@@ -7,12 +7,12 @@ you got this package.
Simple install procedure
========================
% gzip -cd gtk+-1.2.0.tar.gz | tar xvf - # unpack the sources
% cd gtk+-1.2.0 # change to the toplevel directory
% ./configure # run the `configure' script
% make # build GTK
% gzip -cd gtk+-1.2.6.tar.gz | tar xvf - # unpack the sources
% cd gtk+-1.2.6 # change to the toplevel directory
% ./configure # run the `configure' script
% make # build GTK
[ Become root if necessary ]
% make install # install GTK
% make install # install GTK
The Nitty-Gritty
================
@@ -43,6 +43,13 @@ which form of support to use:
For more information, follow the link from http://www.gtk.org
* --disable-nls do not use Native Language Support
If this flag is not specified, GTK+ will try to find
and use the gettext() set of functions to provide translations
of the strings in the standard dialogs into the
user's native language.
* --enable-xim support XIM [default=yes]
Specifying --disable-xim will disable support for entering
@@ -50,7 +57,7 @@ internationalized text using X Input Methods. This will give some
slight savings in speed and memory use and might be necessary
with older versions of X.
* --with-locale=LOCALE locale name you want to use
* --with-locale=LOCALE locale name you want to use
The --with-locale options is used to determine if your operating
system has support for the locale you will be using. If not, X's
@@ -84,19 +91,43 @@ or,
setenv CFLAGS -O2 ; ./configure # csh and variants
Native-Language Support and gettext()
=====================================
Using an uninstalled copy of GLIB
=================================
To provide native-language support (NLS) GTK+ uses the
gettext() set of functions. These functions are found
in the C library on many systems, such as the Solaris
C library and the GNU C Library, version 2.
If your C library does not provide the necessary functionality,
you may wish to install the GNU gettext package. You'll
need version 0.10.35 or better. Version 0.10.35 is
available from ftp://alpha.gnu.org/pub/gnu
Generally, GTK+ will properly detect what is installed
on your system and enable or disable NLS as appropriate.
However, in rare cases, it may be necessary to disable
NLS manually to get GTK+ to compile. You can do this
by specifying the --disable-nls flag when configuring
GTK+.
Using an uninstalled copy of GLIB [ Unsupported ]
=================================================
You can compile GTK+ against a copy of GLIB that you have not
yet installed. To do this, give the --with-glib=DIR options
to ./configure. For instance:
./configure --with-glib=../glib-1.2.0
./configure --with-glib=../glib-1.2.6
This, however, will not work if you built GLIB with different
source and build directories.
It is recommended that you install GLIB before compiling
GTK+. The --with-glib option is not regularly tested
and may not function correctly. In addition,
inter-library dependencies won't be generated when
using --with-glib=.
Installation directories
========================
@@ -126,7 +157,7 @@ For complete details, see the file docs/gtk-config.txt
Notes for using XIM support for Japanese input
==============================================
* There is a bug in older versions of kinput2 that will cause GTK
* There is a bug in older versions of kinput2 that will cause GTK+
to hang when destroying a text entry. The latest versions of
kinput is available from:
@@ -138,7 +169,7 @@ C library multibyte functions. Unless your C library has support
for Japanese locales, this is incorrect, and will cause problems
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 problem may occur for other C libraries, and other operating
systems as well.)

187
INSTALL.in Normal file
View File

@@ -0,0 +1,187 @@
Prerequisites
=============
GTK+ requires the GLIB library, available at the same location as
you got this package.
Simple install procedure
========================
% gzip -cd gtk+-@GTK_VERSION@.tar.gz | tar xvf - # unpack the sources
% cd gtk+-@GTK_VERSION@ # change to the toplevel directory
% ./configure # run the `configure' script
% make # build GTK
[ Become root if necessary ]
% make install # install GTK
The Nitty-Gritty
================
The 'configure' script can be given a number of options to enable
and disable various features. For a complete list, type:
./configure --help
A few of the more important ones:
* --prefix=PREFIX install architecture-independent files in PREFIX
[ Defaults to /usr/local ]
* --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
[ Defaults to the value given to --prefix ]
* --with-xinput=[no/gxi/xfree] support XInput [default=no]
The --with-xinput flag specifies whether to compile with support
for the XInput extension (mainly used for graphics tablets), and
which form of support to use:
no : no support
gxi : Use generic XInput support
xfree : Use special features in the Wacom drivers in XFree86 3.3.1
and later.
For more information, follow the link from http://www.gtk.org
* --disable-nls do not use Native Language Support
If this flag is not specified, GTK+ will try to find
and use the gettext() set of functions to provide translations
of the strings in the standard dialogs into the
user's native language.
* --enable-xim support XIM [default=yes]
Specifying --disable-xim will disable support for entering
internationalized text using X Input Methods. This will give some
slight savings in speed and memory use and might be necessary
with older versions of X.
* --with-locale=LOCALE locale name you want to use
The --with-locale options is used to determine if your operating
system has support for the locale you will be using. If not, X's
built in locale support will be used.
Because of bugs in autoconf, it is necessary to specify this
option even if your LANG environment variable is correctly set.
This option does not determine which locale GTK will use at
runtime. That will be determined from the usual environment
variables. If you will be using multiple locales with GTK,
specify the one for which your operating system has the worst
support for the --with-locale option.
Options can be given to the compiler and linker by setting
environment variables before running configure. A few of the more
important ones:
CC : The C compiler to use
CPPFLAGS : Flags for the C preprocesser such as -I and -D
CFLAGS : C compiler flags
The most important use of this is to set the
optimization/debugging flags. For instance, to compile with no
debugging information at all, run configure as:
CFLAGS=-O2 ./configure # Bourne compatible shells (sh/bash/zsh)
or,
setenv CFLAGS -O2 ; ./configure # csh and variants
Native-Language Support and gettext()
=====================================
To provide native-language support (NLS) GTK+ uses the
gettext() set of functions. These functions are found
in the C library on many systems, such as the Solaris
C library and the GNU C Library, version 2.
If your C library does not provide the necessary functionality,
you may wish to install the GNU gettext package. You'll
need version 0.10.35 or better. Version 0.10.35 is
available from ftp://alpha.gnu.org/pub/gnu
Generally, GTK+ will properly detect what is installed
on your system and enable or disable NLS as appropriate.
However, in rare cases, it may be necessary to disable
NLS manually to get GTK+ to compile. You can do this
by specifying the --disable-nls flag when configuring
GTK+.
Using an uninstalled copy of GLIB [ Unsupported ]
=================================================
You can compile GTK+ against a copy of GLIB that you have not
yet installed. To do this, give the --with-glib=DIR options
to ./configure. For instance:
./configure --with-glib=../glib-@GTK_VERSION@
This, however, will not work if you built GLIB with different
source and build directories.
It is recommended that you install GLIB before compiling
GTK+. The --with-glib option is not regularly tested
and may not function correctly. In addition,
inter-library dependencies won't be generated when
using --with-glib=.
Installation directories
========================
The location of the installed files is determined by the --prefix
and --exec-prefix options given to configure. There are also more
detailed flags to control individual directories. However, the
use of these flags is not tested.
One particular detail to note, is that the architecture-dependent
include file glibconfig.h is installed in:
$exec_pref/lib/glib/include/
if you have a version in $prefix/include, this is out of date
and should be deleted.
A shell script gtk-config is created during the configure
process, and installed in the bin/ directory
($exec_prefix/bin). This is used to determine the location of GTK
when building applications. If you move GTK after installation,
it will be necessary to edit this file.
For complete details, see the file docs/gtk-config.txt
Notes for using XIM support for Japanese input
==============================================
* There is a bug in older versions of kinput2 that will cause GTK+
to hang when destroying a text entry. The latest versions of
kinput is available from:
ftp://ftp.sra.co.jp/pub/x11/kinput2
* The locale information file for the ja_JP EUC locale
distributed with some recent versions of X11 specifies to use the
C library multibyte functions. Unless your C library has support
for Japanese locales, this is incorrect, and will cause problems
for GTK's internationalization.
(In particular, this occurs with GNU libc 2.0 in which
the multibyte functions always translate to and from UTF-8; but
the problem may occur for other C libraries, and other operating
systems as well.)
To fix this, change the line:
use_stdc_env True
to
use_stdc_env False
in the file /usr/X11R6/lib/X11/locale/ja_JP/XLC_LOCALE.

1
MAINTAINERS Normal file
View File

@@ -0,0 +1 @@
Email: gtk-bugs@gimp.org

View File

@@ -1,10 +1,13 @@
## Process this file with automake to produce Makefile.in
## Makefile.am for GTK+
SRC_SUBDIRS = gdk gtk
SUBDIRS = po $(SRC_SUBDIRS) docs
bin_SCRIPTS = gtk-config
# require automake 1.4
AUTOMAKE_OPTIONS = 1.4
EXTRA_DIST = \
HACKING \
gtk+.spec.in \
@@ -97,8 +100,14 @@ EXTRA_DIST = \
examples/spinbutton/Makefile \
examples/find-examples.sh
dist-hook:
cp gtk+.spec $(distdir)
dist-hook: gtk+.spec
if test -e $(srcdir)/INSTALL.in && test -e $(srcdir)/README.in ; then \
CONFIG_FILES="INSTALL:$(srcdir)/INSTALL.in README:$(srcdir)/README.in" \
CONFIG_HEADERS= \
$(SHELL) config.status \
&& cp INSTALL README $(distdir) ; \
fi \
&& cp gtk+.spec $(distdir)
m4datadir = $(datadir)/aclocal
m4data_DATA = gtk.m4

96
NEWS
View File

@@ -1,3 +1,99 @@
Overview of Changes in GTK+ 1.2.6:
* container queue_resize fixes
* gtk[vh]scale: minor fixups
* rename idle to idle_id in testgtk to avoid conflicts with
broken libs
* More consistant naming of gtkrc files
* Added language support: ro, uk
Overview of Changes in GTK+ 1.2.5:
* more GtkCTree and GtkWindow bug fixes.
* more redraw/resize queue fixes, better expose event
discarding code.
* more miscellaneous bugs fixed
* new configure.in option --disable-rebuilds to completely disable
rebuilds of autogenerated sources.
* check for 5.002 now, to avoid failing autogeneration build rules due
to old perl versions.
* fonts (and fontsets) are cached now.
* more autogeneration make rules and dependancy fixups, we should be
save with autogeneration up to make -j12 now ;)
* new window position GTK_WIN_POS_CENTER_ALWAYS, which will recenter the
GtkWindow on every size change.
* major rework of window manager hints handling code, fixed a bunch of
races with the new resizing code.
* the new wm hints and resizing code is absolutely perfect and bug free now,
it only lacks testing ;)
* fixed up various rc style memory prolems.
* gtk_widget_modify_style() now properly changes the style of realized widgets
and references the style passed into it. if people worked around this bug,
this will introduce a slight memory leak in their code.
The code should typically look like:
GtkRcStyle *rc_style = gtk_rc_style_new ();
[...]
gtk_widget_modify_style (widget, rc_style);
gtk_rc_style_unref (rc_style);
* fix problems with positioning menus offscreen.
* GtkText fixes for some crashes and drawing errors.
* Better handling for unexpected window destroys in GDK and GTK+.
This should make it possible to use a GtkPlug and catch the
case where its parent socket is randomly killed.
* FAQ updates.
* FileSelection i18n patches, RadioButton fixups.
* many translation improvements.
* miscellaneous other bugs fixed.
Overview of Changes in GTK+ 1.2.4:
* DnD improvements (drags can be canceled with Esc now).
* suppressed configure event reordering in Gdk.
* rewrite of Gtk's configure event handling.
* major improvements for the object argument system (Elena Devdariani).
* major bugfixes for threading, GtkNotebook, GtkItemFactory, GtkCList and
GtkCTree.
* tutorial/FAQ updates, new file generation.txt on autogenerated sources.
* configure's --with-glib= is "officially" unsupported.
* upgrade to libtool 1.3.3.
* various buglets fixed.
Overview of Changes in GTK+ 1.2.3:
* Upgrade to libtool 1.3
* Check for dgettext (for systems with old versions of GNU Gettext)
* Many bug fixes (see ChangeLog for details)
Overview of Changes in GTK+ 1.2.2:
* Improved Dnd behaviour with Motif applications.
* Bug fixes for the Gtk selection code.
* Minor bug fixes to the Gdk Atom cache and Dnd code (with --display option).
* Bug fixes and leak plugs for the Gdk IM code.
* Added gtk_object_get() facility to retrive object arguments easily.
The var args list expects ("arg-name", &value) pairs.
* Fixed mapping for GdkInputCondition<->GIOCondition, this should fix
problems where closed pipes were no longer signalling GDK_INPUT_READ on
systems with a native poll().
* Some cleanups to GtkLabel's memory allocation code (shouldn't leak memory
anymore).
* We don't attempt to lookup xpm color "None" anymore, this should prevent
eXodus (commercial X windows server) from popping up a color dialog every
time a transparent pixmap is created.
* Fixed bug where Gtk timout/idle handlers would execute without the global
Gdk lock being held.
* Other minor bug fixes.
Overview of Changes in GTK+ 1.2.1:
* Many Bug fixes have been applied to the menu and accelerator code.
* GtkItemFactory can "adopt" foreign menu items now and manage their
accelerator installation. This is often required to get GtkItemFactory
like accelerator propagation between different windows with the same
menu heirarchy and for centralized parsing and saving of accelerators.
* GtkCList/GtkCTree buttons should always display correctly now.
* Miscellaneous other bug fixes.
What's New in GTK+ 1.2.0 (since 1.0.x):
* New widgets: GtkFontSelector, GtkPacker, GtkItemFactory, GtkCTree,

8
README
View File

@@ -1,7 +1,7 @@
General Information
===================
This is GTK+ version 1.2.0. GTK+, which stands for the Gimp ToolKit,
This is GTK+ version 1.2.6. GTK+, which stands for the Gimp ToolKit,
is a library for creating graphical user interfaces for the X Window
System. It is designed to be small, efficient, and flexible. GTK+ is
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.
Package: gtk+
Version: 1.2.0
Version: 1.2.6
[ Please substitute 1.2.0 with the version of GTK+ that
[ Please substitute 1.2.6 with the version of GTK+ that
you have installed ]
Then describe the bug. Include:
@@ -82,7 +82,7 @@ From: yourname@your.address.org
Subject: handlebox test in testgtk is misnamed.
Package: gtk+
Version: 1.2.0
Version: 1.2.6
When I run gtk/testgtk, the button "handle box"
is misnamed. There are multiple handle boxes in

101
README.in Normal file
View File

@@ -0,0 +1,101 @@
General Information
===================
This is GTK+ version @GTK_VERSION@. GTK+, which stands for the Gimp ToolKit,
is a library for creating graphical user interfaces for the X Window
System. It is designed to be small, efficient, and flexible. GTK+ is
written in C with a very object-oriented approach.
The official ftp site is:
ftp://ftp.gtk.org/pub/gtk
The official web site is:
http://www.gtk.org/
A mailing list is located at:
gtk-list@redhat.com
To subscribe: mail -s subscribe gtk-list-request@redhat.com < /dev/null
(Send mail to gtk-list-request@redhat.com with the subject "subscribe")
Installation
============
See the file 'INSTALL'
How to report bugs
==================
Bugs should be reported to the GNOME bug tracking
system. (http://bugs.gnome.org). To report a problem
about GTK+, send mail to submit@bugs.gnome.org.
The subject of the mail should describe your problem.
In the body of the mail, you should first include
a "pseudo-header" that gives the package and
version number. This should be separated by a blank
line from the actual headers.
Package: gtk+
Version: @GTK_VERSION@
[ Please substitute @GTK_VERSION@ with the version of GTK+ that
you have installed ]
Then describe the bug. Include:
* Information about your system. For instance:
- What operating system and version
- What version of X
- For Linux, what version of the C library
And anything else you think is relevant.
* How to reproduce the bug.
If you can reproduce it with the testgtk program that is built
in the gtk/ subdirectory, that will be most convenient. Otherwise,
please include a short test program that exhibits the behavior.
As a last resort, you can also provide a pointer to a larger piece
of software that can be downloaded.
(Bugs that can be reproduced within the GIMP are almost as good
as bugs that can be reproduced in testgtk. If you are reporting a
bug found with the GIMP, please include the version number of the GIMP
you are using)
* If the bug was a crash, the exact text that was printed out
when the crash occured.
* Further information such as stack traces may be useful, but
is not necessary. If you do send a stack trace, and the error
is an X error, it will be more useful if the stacktrace
is produced running the test program with the --sync command
line option.
An example of a bug report:
====
To: submit@bugs.gnome.org
From: yourname@your.address.org
Subject: handlebox test in testgtk is misnamed.
Package: gtk+
Version: @GTK_VERSION@
When I run gtk/testgtk, the button "handle box"
is misnamed. There are multiple handle boxes in
the demo, so it should be "handle boxes", to
be like "buttons" or "check buttons".
===
Patches
=======
Patches can be uploaded to the incoming/ directory on
ftp.gtk.org. Please follow the instructions there, and include
your name and email address in the README file.
If the patch fixes a bug, it is usually a good idea to include
all the information described in "How to Report Bugs".

View File

@@ -1,31 +0,0 @@
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
port, see http://www.gimp.org/tml/gimp/win32/ or
http://www.iki.fi/tml/gimp/win32/ .
To build GTk+ on Win32, you need either Microsoft compiler and tools,
or gcc-2.95 or later running under cygwin-b20.1. Compile in gdk\win32
and gtk with `nmake -f makefile.msc` or `make -f
makefile.cygwin`. Before doing a install, check the BIN definition in
gdk\win32\makefile.msc (or makefile.cygwin) and gtk\makefile.msc (or
makefile.cygwin).
See the README.win32 file in the GLib distribution for instructions
how to build with gcc.
The tablet support uses the Wintab API. The Wintab development kit can
be downloaded from http://www.pointing.com. If you don't care for
that, undefine HAVE_WINTAB in config.h.win32 before building.
GTk+ wants to be built with the GNU "intl" library for
internationalisation (i18n). Get the version ported to Win32 (not a
very big deal) from tml's web site mentioned above. We build the
"intl" library to a DLL called gnu-intl.dll to reduce name clash
risks. If you don't want any i18n stuff, undefine ENABLE_NLS,
HAVE_GETTEXT and HAVE_LIBINTL in the config.h.win32 file, and remove
references to the gnu-intl library from the makefiles.
Note that while the GNU gettext package is under the GPL, the "intl"
library part as distributed with GNU libc is under the LGPL (like GTk+
or GLib). We want the LGPL one, even if they are the same, more or
less.

16
TODO
View File

@@ -12,21 +12,14 @@ Outstanding items:
* Make all widget attributes configurable after the widget is created (timj).
* Radio buttons need to display CAN/HAS_DEFAULT correctly, if draw_inidicator
is TRUE.
is TRUE. (Radio buttons do not need to CAN_DEFAULT! OWT)
* gdk_expose_compress: ala-Xt, this would really help for opaque moves and
such
* More dialogs: Print, GtkFontSelector, maybe others...
* More dialogs: Print, maybe others...
* make the gtk_main callbacks consistent in their add/remove behaviour.
* Check return values on all calls to XIC[Get/Set]Values
* Rewrite the interface to the i18n stuff so GTK widgets don't need to
retrieve X values, and so they don't have to know the value of the
XNxxx character constants.
* The "--geometry" option should be supported
- Having gdk_init() parse the geometry option. (putting it into
@@ -70,6 +63,11 @@ Outstanding items:
cause confusing presses to be sent to containers that actually
want to get events on themselves.
* The menu code should skip separators during keyboard navigation,
whether they are sensitive or insensitive.
* OwnerButtonPressGrab needs to go!
Text/Edit widget:
Bugs:

View File

@@ -19,17 +19,14 @@
#undef GTK_COMPILED_WITH_DEBUGGING
#undef HAVE_CATGETS
#undef HAVE_DIRENT_H
#undef HAVE_GETTEXT
#undef HAVE_IPC_H
#undef HAVE_LC_MESSAGES
#undef HAVE_PWD_H
#undef HAVE_SHM_H
#undef HAVE_STPCPY
#undef HAVE_XSHM_H
#undef HAVE_SHAPE_EXT
#undef HAVE_SYS_SELECT_H
#undef HAVE_SYS_TIME_H
#undef HAVE_XCONVERTCASE
#undef NO_FD_SET

View File

@@ -473,22 +473,22 @@ AC_DEFUN(AM_GTK_WITH_NLS,
CATOBJEXT=NONE
AC_CHECK_HEADER(libintl.h,
[AC_CACHE_CHECK([for gettext in libc], gt_cv_func_gettext_libc,
[AC_TRY_LINK([#include <libintl.h>], [return (int) gettext ("")],
gt_cv_func_gettext_libc=yes, gt_cv_func_gettext_libc=no)])
[AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc,
[AC_TRY_LINK([#include <libintl.h>], [return (int) dgettext ("","")],
gt_cv_func_dgettext_libc=yes, gt_cv_func_dgettext_libc=no)])
if test "$gt_cv_func_gettext_libc" != "yes"; then
if test "$gt_cv_func_dgettext_libc" != "yes"; then
AC_CHECK_LIB(intl, bindtextdomain,
[AC_CACHE_CHECK([for gettext in libintl],
gt_cv_func_gettext_libintl,
[AC_CHECK_LIB(intl, gettext,
gt_cv_func_gettext_libintl=yes,
gt_cv_func_gettext_libintl=no)],
gt_cv_func_gettext_libintl=no)])
[AC_CACHE_CHECK([for dgettext in libintl],
gt_cv_func_dgettext_libintl,
[AC_CHECK_LIB(intl, dgettext,
gt_cv_func_dgettext_libintl=yes,
gt_cv_func_dgettext_libintl=no)],
gt_cv_func_dgettext_libintl=no)])
fi
if test "$gt_cv_func_gettext_libc" = "yes" \
|| test "$gt_cv_func_gettext_libintl" = "yes"; then
if test "$gt_cv_func_dgettext_libc" = "yes" \
|| test "$gt_cv_func_dgettext_libintl" = "yes"; then
AC_DEFINE(HAVE_GETTEXT)
AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
[test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
@@ -508,8 +508,8 @@ AC_DEFUN(AM_GTK_WITH_NLS,
fi
# Added by Martin Baulig 12/15/98 for libc5 systems
if test "$gt_cv_func_gettext_libc" != "yes" \
&& test "$gt_cv_func_gettext_libintl" = "yes"; then
if test "$gt_cv_func_dgettext_libc" != "yes" \
&& test "$gt_cv_func_dgettext_libintl" = "yes"; then
INTLLIBS=-lintl
LIBS=`echo $LIBS | sed -e 's/-lintl//'`
fi

View File

@@ -80,7 +80,7 @@ automake -a $am_opt
autoconf
cd $ORIGDIR
$srcdir/configure "$@"
$srcdir/configure --enable-maintainer-mode "$@"
echo
echo "Now type 'make' to compile $PROJECT."

View File

@@ -1,187 +0,0 @@
/* config.h.win32. Handcrafted for Microsoft C */
#if ! (defined(_MSC_VER) || defined(__GNUC__))
#error Unrecognized Win32 compiler, edit config.h.win32 by hand
#endif
/* Define if using alloca.c. */
/* #undef C_ALLOCA */
/* Define to empty if the keyword does not work. */
/* #undef const */
/* Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP systems.
This function is required for alloca.c support on those systems. */
/* #undef CRAY_STACKSEG_END */
/* Define if you have alloca, as a function or macro. */
#define HAVE_ALLOCA 1
#ifdef _MSC_VER
#define alloca _alloca
#elif defined (__GNUC__)
#define alloca __builtin_alloca
#endif
/* Define if you have <alloca.h> and it should be used (not on Ultrix). */
/* #undef HAVE_ALLOCA_H */
/* Define if you have a working `mmap' system call. */
/* #undef HAVE_MMAP */
/* Define to empty, or __inline if that's what your compiler wants. */
#define inline __inline
/* Define to `long' if <sys/types.h> doesn't define. */
/* #undef off_t */
/* Define if you need to in order for stat and other things to work. */
/* #undef _POSIX_SOURCE*/
/* Define as the return type of signal handlers (int or void). */
#define RETSIGTYPE void
/* Define to `unsigned' if <sys/types.h> doesn't define. */
/* #undef size_t */
/* If using the C implementation of alloca, define if you know the
direction of stack growth for your system; otherwise it will be
automatically deduced at run-time.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown
*/
/* #undef STACK_DIRECTION */
/* Define if you have the ANSI C header files. */
#define STDC_HEADERS 1
/* Other stuff */
#define ENABLE_NLS 1
#define GTK_COMPILED_WITH_DEBUGGING "minimum"
/* #undef HAVE_CATGETS */
/* #undef HAVE_DIRENT_H */
#define HAVE_GETTEXT 1
/* #undef HAVE_IPC_H */
/* #undef HAVE_LC_MESSAGES */
/* #undef HAVE_PWD_H */
/* #undef HAVE_SHM_H */
/* #undef HAVE_STPCPY */
/* #undef HAVE_XSHM_H */
#define HAVE_SHAPE_EXT 1
/* #undef HAVE_SYS_SELECT_H */
/* #undef HAVE_SYS_TIME_H */
/* #undef HAVE_XCONVERTCASE */
/* #undef NO_FD_SET */
/* #undef XINPUT_NONE */
/* #undef XINPUT_GXI */
/* #undef XINPUT_XFREE */
#define XINPUT_WIN32 1
/* Define as the return type of signal handlers (int or void). */
#define RETSIGTYPE void
/* Define if you have the __argz_count function. */
/* #undef HAVE___ARGZ_COUNT */
/* Define if you have the __argz_next function. */
/* #undef HAVE___ARGZ_NEXT */
/* Define if you have the __argz_stringify function. */
/* #undef HAVE___ARGZ_STRINGIFY */
/* Define if you have the broken_wctype function. */
/* #undef HAVE_BROKEN_WCTYPE */
/* Define if you have the dcgettext function. */
/* #undef HAVE_DCGETTEXT */
/* Define if you have the getcwd function. */
#define HAVE_GETCWD 1
/* Define if you have the getpagesize function. */
#define HAVE_GETPAGESIZE 1
/* Define if you have the lstat function. */
/* #undef HAVE_LSTAT */
/* Define if you have the munmap function. */
/* #undef HAVE_MUNMAP */
/* Define if you have the putenv function. */
#define HAVE_PUTENV 1
#define putenv _putenv
/* Define if you have the setenv function. */
/* #undef HAVE_SETENV */
/* Define if you have the setlocale function. */
#define HAVE_SETLOCALE 1
/* Define if you have the stpcpy function. */
/* #undef HAVE_STPCPY */
/* Define if you have the strcasecmp function. */
#define HAVE_STRCASECMP 1
#define strcasecmp _stricmp
/* Define if you have the strchr function. */
#define HAVE_STRCHR 1
/* Define if you have the strdup function. */
#define HAVE_STRDUP 1
/* Define if you have the <argz.h> header file. */
/* #undef HAVE_ARGZ_H */
/* Define if you have the <dirent.h> header file. */
/* #undef HAVE_DIRENT_H */
/* Define if you have the <limits.h> header file. */
#define HAVE_LIMITS_H 1
/* Define if you have the <locale.h> header file. */
#define HAVE_LOCALE_H 1
/* Define if you have the <malloc.h> header file. */
#define HAVE_MALLOC_H 1
/* Define if you have the <nl_types.h> header file. */
/* #undef HAVE_NL_TYPES_H */
/* Define if you have the <pwd.h> header file. */
/* #undef HAVE_PWD_H */
/* Define if you have the <string.h> header file. */
#define HAVE_STRING_H 1
/* Define if you have the <sys/param.h> header file. */
/* #undef HAVE_SYS_PARAM_H */
/* Define if you have the <sys/time.h> header file. */
/* #undef HAVE_SYS_TIME_H */
/* Define if you have the <unistd.h> header file. */
/* #undef HAVE_UNISTD_H */
/* Define if you have the <wchar.h> header file. */
#define HAVE_WCHAR_H 1
/* Define if you have the <wctype.h> header file. */
#ifdef _MSC_VER
#define HAVE_WCTYPE_H 1
#endif /* _MSC_VER */
/* Define if you have the i library (-li). */
/* #undef HAVE_LIBI */
/* Define if you have the intl library (-lintl). */
#define HAVE_LIBINTL 1
/* define if compiled symbols have a leading underscore */
/* #undef WITH_SYMBOL_UNDERSCORE */
/* Define if you have the Wintab programmer's kit */
#define HAVE_WINTAB 1

View File

@@ -28,10 +28,10 @@ AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl
# set GTK_BINARY_AGE and GTK_INTERFACE_AGE to 0.
#
GTK_MAJOR_VERSION=1
GTK_MINOR_VERSION=3
GTK_MICRO_VERSION=0
GTK_INTERFACE_AGE=0
GTK_BINARY_AGE=0
GTK_MINOR_VERSION=2
GTK_MICRO_VERSION=6
GTK_INTERFACE_AGE=1
GTK_BINARY_AGE=6
GTK_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$GTK_MICRO_VERSION
dnl
AC_DIVERT_POP()dnl
@@ -95,6 +95,7 @@ AC_ARG_ENABLE(xim, [ --enable-xim support XIM [default=yes]],
, enable_xim="yes")
AC_ARG_ENABLE(xim_inst, [ --disable-xim-inst does not use xim instantiate callback],
, enable_xim_inst="maybe")
AC_ARG_ENABLE(rebuilds, [ --disable-rebuilds disable all source autogeneration rules],,enable_rebuilds=yes)
AC_ARG_WITH(locale, [ --with-locale=LOCALE locale name you want to use ])
AC_ARG_WITH(xinput, [ --with-xinput=[no/gxi/xfree] support XInput ])
@@ -143,6 +144,9 @@ if test "x$GCC" = "xyes"; then
fi
changequote([,])dnl
# Honor aclocal flags
ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
# define a MAINT-like variable REBUILD which is set if Perl
# and awk are found, so autogenerated sources can be rebuilt
@@ -153,22 +157,32 @@ AC_CHECK_PROGS(PERL, perl5 perl)
AC_CHECK_PROG(INDENT, indent, indent)
REBUILD=\#
if test -n "$PERL" && perl -v | grep 'version 5.' > /dev/null ; then
if test -n "$AWK" ; then
REBUILD=
fi
if test "x$enable_rebuilds" = "xyes" && \
test -n "$PERL" && \
$PERL -e 'exit !($] >= 5.002)' > /dev/null 2>&1 && \
test -n "$AWK" ; then
REBUILD=
fi
AC_SUBST(REBUILD)
AC_CHECK_FUNCS(lstat)
AC_MSG_CHECKING(whether make is GNU Make)
STRIP_BEGIN=
STRIP_END=
if $ac_make --version 2>/dev/null | grep '^GNU Make ' >/dev/null ; then
STRIP_BEGIN='$(strip'
STRIP_END=')'
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
AC_SUBST(STRIP_BEGIN)
AC_SUBST(STRIP_END)
# i18n stuff
ALL_LINGUAS="ca cs da de el es et eu fr ga hr hu it ja ko nl no pl pt pt_BR ru sk sl sv wa zh_TW.Big5"
ALL_LINGUAS="ca cs da de el es et eu fi fr ga hr hu it ja ko nl no pl pt pt_BR ro ru sk sl sv uk wa zh_TW.Big5"
AM_GTK_GNU_GETTEXT
AC_CHECK_FUNC(gettext,
,
AC_CHECK_LIB(intl, gettext)
)
LIBS="$LIBS $INTLLIBS"
# AM_GTK_GNU_GETTEXT above substs $DATADIRNAME
# this is the directory where the *.{mo,gmo} files are installed
gtklocaledir='${prefix}/${DATADIRNAME}/locale'
@@ -191,25 +205,13 @@ AC_TRY_RUN([#include <math.h>
AC_MSG_RESULT()
CFLAGS=$gtk_save_CFLAGS
AC_MSG_WARN(
[No ANSI prototypes found in library. (-std1 didn't work.)])
)
[No ANSI prototypes found in library. (-std1 didn't work.)]),
true
),
AC_MSG_RESULT(none needed)
)
LIBS=$gtk_save_LIBS
MATH_LIB=-lm
GTK_LIBS_EXTRA=
AC_MSG_CHECKING(for the BeOS)
case $host in
*-*-beos*)
GTK_LIBS_EXTRA="-L\$(top_builddir_full)/gdk/.libs -lgdk"
MATH_LIB=
;;
default)
;;
esac
AC_SUBST(MATH_LIB)
AC_SUBST(GTK_LIBS_EXTRA)
dnl NeXTStep cc seems to need this
AC_MSG_CHECKING([for extra flags for POSIX compliance])
AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
@@ -230,9 +232,9 @@ fi
if test x$with_glib = x ; then
# Look for separately installed glib
AM_PATH_GLIB(1.3.0,,
AM_PATH_GLIB(1.2.4,,
AC_MSG_ERROR([
*** GLIB 1.3.0 or better is required. The latest version of GLIB
*** GLIB 1.2.4 or better is required. The latest version of GLIB
*** is always available from ftp://ftp.gtk.org/.]),
gmodule gthread)
@@ -285,10 +287,6 @@ AC_SUBST(glib_thread_cflags)
AC_SUBST(glib_thread_libs)
AC_SUBST(GLIB_DEPLIBS)
AC_CHECK_HEADERS(dirent.h, AC_DEFINE(HAVE_DIRENT_H))
AC_CHECK_HEADERS(pwd.h, AC_DEFINE(HAVE_PWD_H))
AC_CHECK_HEADERS(sys/time.h, AC_DEFINE(HAVE_SYS_TIME_H))
# Find the X11 include and library directories
AC_PATH_X
AC_PATH_XTRA
@@ -432,11 +430,12 @@ main ()
return setlocale (LC_ALL, "${with_locale}") == NULL;
}],
need_x_locale=no,
need_x_locale=yes)
need_x_locale=yes,
need_x_locale=no)
AC_MSG_RESULT($need_x_locale)
if test $need_x_locale = yes; then
GTK_LOCALE_CFLAGS="-DX_LOCALE"
GTK_LOCALE_FLAGS="-DX_LOCALE"
fi
# Checks for header files.
@@ -466,29 +465,30 @@ else
fi
fi
# `widechar' tests for gdki18n.h
# Duplicate `widechar' tests from `glib'.
# Check for wchar.h
AC_MSG_CHECKING(for wchar.h)
AC_TRY_CPP([#include <wchar.h>], gdk_wchar_h=yes, gdk_wchar_h=no)
if test $gdk_wchar_h = yes; then
AC_DEFINE(HAVE_WCHAR_H,1,[Have wchar.h include file])
AC_TRY_CPP([#include <wchar.h>], gtk_ok=yes, gtk_ok=no)
if test $gtk_ok = yes; then
AC_DEFINE(HAVE_WCHAR_H,1,[Define if wchar.h exists])
fi
AC_MSG_RESULT($gdk_wchar_h)
AC_MSG_RESULT($gtk_ok)
# Check for wctype.h (for iswalnum)
AC_MSG_CHECKING(for wctype.h)
AC_TRY_CPP([#include <wctype.h>], gdk_wctype_h=yes, gdk_wctype_h=no)
if test $gdk_wctype_h = yes; then
AC_DEFINE(HAVE_WCTYPE_H,1,[Have wctype.h include file])
AC_TRY_CPP([#include <wctype.h>], gtk_ok=yes, gtk_ok=no)
if test $gtk_ok = yes; then
AC_DEFINE(HAVE_WCTYPE_H,1,[Define if wctype.h exists])
fi
AC_MSG_RESULT($gdk_wctype_h)
AC_MSG_RESULT($gtk_ok)
# in Solaris 2.5, `iswalnum' is in -lw
GDK_WLIBS=
AC_CHECK_FUNC(iswalnum,,[AC_CHECK_LIB(w,iswalnum,GDK_WLIBS=-lw)])
# The following is necessary for Linux libc-5.4.38
oLIBS="$LIBS"
LIBS="$LIBS $GDK_WLIBS"
# The following is necessary for Linux libc-5.4.38
AC_MSG_CHECKING(if iswalnum() and friends are properly defined)
AC_TRY_LINK([#include <stdlib.h>],[
#if (defined(HAVE_WCTYPE_H) || defined(HAVE_WCHAR_H))
@@ -503,104 +503,28 @@ AC_TRY_LINK([#include <stdlib.h>],[
# define iswalnum(c) ((wchar_t)(c) <= 0xFF && isalnum(c))
#endif
iswalnum((wchar_t) 0);
], gdk_working_wctype=yes, gdk_working_wctype=no)
], gtk_ok=yes, gtk_ok=no)
LIBS="$oLIBS"
if test $gdk_working_wctype = no; then
AC_DEFINE(HAVE_BROKEN_WCTYPE,1,[Is the wctype implementation broken])
if test $gtk_ok = no; then
AC_DEFINE(HAVE_BROKEN_WCTYPE,1,[Define if the wctype function is broken])
GDK_WLIBS=
fi
AC_MSG_RESULT($gdk_working_wctype)
AC_MSG_RESULT($gtk_ok)
AC_SUBST(GDK_WLIBS)
AC_SUBST(GTK_DEBUG_FLAGS)
AC_SUBST(GTK_XIM_FLAGS)
AC_SUBST(GTK_LOCALE_FLAGS)
AC_OUTPUT_COMMANDS([
## Generate `gdk/gdkconfig.h' in two cases
## 1. `config.status' is run either explicitly, or via configure.
## Esp. not when it is run in `Makefile' to generate makefiles and
## config.h
## 2. CONFIG_OTHER is set explicitly
##
## Case 1 is difficult. We know that `automake' sets one of
## CONFIG_FILES or CONFIG_HEADERS to empty. This heuristic works
## only when AM_CONFIG_HEADER is set, however.
if test -n "${CONFIG_FILES}" && test -n "${CONFIG_HEADERS}"; then
# Both CONFIG_FILES and CONFIG_HEADERS are non-empty ==> Case 1
CONFIG_OTHER=${CONFIG_OTHER:-gdk/gdkconfig.h}
fi
case "$CONFIG_OTHER" in
*gdk/gdkconfig.h*)
echo creating gdk/gdkconfig.h
outfile=gdkconfig.h-tmp
cat > $outfile <<\_______EOF
/* gdkconfig.h
*
* This is a generated file. Please modify `configure.in'
*/
#ifndef GDKCONFIG_H
#define GDKCONFIG_H
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
_______EOF
cat >>$outfile <<_______EOF
$gdk_windowing
$gdk_wc
_______EOF
cat >>$outfile <<_______EOF
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif /* GDKCONFIG_H */
_______EOF
if cmp -s $outfile gdk/gdkconfig.h; then
echo gdk/gdkconfig.h is unchanged
rm -f $outfile
else
mv $outfile gdk/gdkconfig.h
fi ;;
esac
],[
# Currently we always use X11 on those systems where we run configure...
gdk_windowing='
#define GDK_WINDOWING GDK_WINDOWING_X11'
if test x$gdk_wchar_h = xyes; then
gdk_wc='
#define GDK_HAVE_WCHAR_H 1'
fi
if test x$gdk_wctype_h = xyes; then
gdk_wc="\$gdk_wc
#define GDK_HAVE_WCTYPE_H 1"
fi
if test x$gdk_working_wctype = xno; then
gdk_wc="\$gdk_wc
#define GDK_HAVE_BROKEN_WCTYPE 1"
fi
])
AC_OUTPUT([
gtk+.spec
docs/gtk-config.1
Makefile
gtk-config
po/Makefile.in
docs/Makefile
gdk/Makefile
gtk/Makefile
gtk/gtkcompat.h
gtk/gtkfeatures.h
], [chmod +x gtk-config])

View File

@@ -1,165 +0,0 @@
/* testpixbuf -- test program for gdk-pixbuf code
* Copyright (C) 1999 Mark Crichton, Larry Ewing
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library 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
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library 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 <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <gtk/gtk.h>
#include "gdk-pixbuf.h"
static void
quit_func (GtkWidget *widget, gpointer dummy)
{
gtk_main_quit ();
}
expose_func (GtkWidget *drawing_area, GdkEventExpose *event, gpointer data)
{
GdkPixBuf *pixbuf;
gint x1, y1, x2, y2;
pixbuf = (GdkPixBuf *)gtk_object_get_data(GTK_OBJECT(drawing_area), "pixbuf");
if (pixbuf->art_pixbuf->has_alpha){
gdk_draw_rgb_32_image (drawing_area->window,
drawing_area->style->black_gc,
event->area.x, event->area.y,
event->area.width,
event->area.height,
GDK_RGB_DITHER_MAX,
pixbuf->art_pixbuf->pixels
+ (event->area.y * pixbuf->art_pixbuf->rowstride)
+ (event->area.x * pixbuf->art_pixbuf->n_channels),
pixbuf->art_pixbuf->rowstride);
}else{
gdk_draw_rgb_image (drawing_area->window,
drawing_area->style->white_gc,
event->area.x, event->area.y,
event->area.width,
event->area.height,
GDK_RGB_DITHER_NORMAL,
pixbuf->art_pixbuf->pixels
+ (event->area.y * pixbuf->art_pixbuf->rowstride)
+ (event->area.x * pixbuf->art_pixbuf->n_channels),
pixbuf->art_pixbuf->rowstride);
}
}
config_func (GtkWidget *drawing_area, GdkEventConfigure *event, gpointer data)
{
GdkPixBuf *pixbuf, *spb;
pixbuf = (GdkPixBuf *)gtk_object_get_data(GTK_OBJECT(drawing_area), "pixbuf");
g_print("X:%d Y:%d\n", event->width, event->height);
if (((event->width) != (pixbuf->art_pixbuf->width)) ||
((event->height) != (pixbuf->art_pixbuf->height)))
gdk_pixbuf_scale(pixbuf, event->width, event->height);
}
void
new_testrgb_window (GdkPixBuf *pixbuf)
{
GtkWidget *window;
GtkWidget *vbox;
GtkWidget *button;
GtkWidget *drawing_area;
gint w, h;
w = pixbuf->art_pixbuf->width;
h = pixbuf->art_pixbuf->height;
window = gtk_widget_new (gtk_window_get_type (),
"GtkObject::user_data", NULL,
"GtkWindow::type", GTK_WINDOW_TOPLEVEL,
"GtkWindow::title", "testrgb",
"GtkWindow::allow_shrink", TRUE,
NULL);
gtk_signal_connect (GTK_OBJECT (window), "destroy",
(GtkSignalFunc) quit_func, NULL);
vbox = gtk_vbox_new (FALSE, 0);
drawing_area = gtk_drawing_area_new ();
gtk_drawing_area_size (GTK_DRAWING_AREA(drawing_area), w, h);
gtk_box_pack_start (GTK_BOX (vbox), drawing_area, TRUE, TRUE, 0);
gtk_signal_connect (GTK_OBJECT(drawing_area), "expose_event",
GTK_SIGNAL_FUNC(expose_func), NULL);
gtk_signal_connect (GTK_OBJECT(drawing_area), "configure_event",
GTK_SIGNAL_FUNC (config_func), NULL);
gtk_object_set_data (GTK_OBJECT(drawing_area), "pixbuf", pixbuf);
gtk_widget_show (drawing_area);
button = gtk_button_new_with_label ("Quit");
gtk_box_pack_start (GTK_BOX (vbox), button, FALSE, FALSE, 0);
gtk_signal_connect_object (GTK_OBJECT (button), "clicked",
(GtkSignalFunc) gtk_widget_destroy,
GTK_OBJECT (window));
gtk_widget_show (button);
gtk_container_add (GTK_CONTAINER (window), vbox);
gtk_widget_show (vbox);
gtk_widget_show (window);
}
int
main (int argc, char **argv)
{
int i;
int found_valid = FALSE;
GdkPixBuf *pixbuf;
gtk_init (&argc, &argv);
gdk_rgb_set_verbose (TRUE);
gdk_rgb_init ();
gtk_widget_set_default_colormap (gdk_rgb_get_cmap ());
gtk_widget_set_default_visual (gdk_rgb_get_visual ());
i = 1;
for (i = 1; i < argc; i++)
{
pixbuf = gdk_pixbuf_load_image (argv[i]);
pixbuf = gdk_pixbuf_rotate(pixbuf, 10.0);
if (pixbuf)
{
new_testrgb_window (pixbuf);
found_valid = TRUE;
}
}
if (found_valid)
gtk_main ();
return 0;
}

View File

@@ -18,3 +18,4 @@ Makefile.in
*.vrs
html
text
gtk-config.1

View File

@@ -101,36 +101,7 @@ FAQ_FILES=html/gtkfaq.html \
html/gtkfaq-7.html \
text/gtkfaq.txt
EXTRA_DIST = \
gtk-config.1 \
texinfo.tex \
macros.texi \
gtkdocs_fix \
gtkfaq.sgml \
gtk-config.txt \
gtk_tut.sgml \
gtk_tut_it.sgml \
gtk_tut_fr.sgml \
debugging.txt \
developers.txt \
refcounting.txt \
styles.txt \
text_widget.txt \
widget_system.txt \
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)
html/gtk_tut_table.gif: gdk.html gtk.html
.PHONY: html htmldir faq tutorial tutorial_it tutorial_fr files
@@ -195,3 +166,36 @@ files:
@files=`ls $(DISTFILES) 2> /dev/null `; for p in $$files; do \
echo $$p; \
done
EXTRA_DIST += \
Changes-1.2.txt \
debugging.txt \
developers.txt \
refcounting.txt \
styles.txt \
text_widget.txt \
widget_system.txt \
generation.txt \
gtk-config.txt \
gtk-config.1.in \
texinfo.tex \
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)

177
docs/generation.txt Normal file
View File

@@ -0,0 +1,177 @@
Overview:
========
This file describes the way that autogeneration
works within the GTK+ source code.
The following files in the gdk/ subdirectory
are autogenerated:
gdkkeysyms.h
gdkcursors.h
The following files in the gtk/ subdirectory
are autogenerated:
gtk.defs
Description of GTK+ types (and some functions) in a lisp-style
format.
gtktypebuiltins.h
Header file including declarations for internal types
gtktypebuiltins_vars.c
Variables for type values for internal types.
gtktypebuiltins_ids.c
Arrays holding information about each internal type.
gtktypebuiltins_evals.c
Arrays holding mapping between enumeration values
and strings.
gtkmarshal.c
gtkmarshal.h
Autogenerated signal marshallers
GDK
===
gdkkeysyms.h and gdkcursors.h are generated from
the corresponding header files
X11/cursorfont.h
X11/keysymdef.h
by some simple sed scripts. These are not actually
run automatically because we want all the keysyms
even on systems with a limited set.
So the Gdk rule to generate both files (X-derived-headers)
only needs to be rerun for every new release of the X Window
System.
GTK+ - type definitions
=======================
The type definitions are generated from several sources:
gtk-boxed.defs - definitions for boxed types
GTK+ header files
GDK header files
The makeenums.pl script does a heuristic parse of
the header files and extracts all enumerations declarations.
It also recognizes a number of pseudo-comments in the
header files:
Two of these apply to individual enumeration values:
/*< skip >*/
This enumeration value should be skipped.
/*< nick=NICK >*/
The nickname for this value should NICK instead of the
normally guessed value. For instance:
typedef enum {
GTK_TARGET_SAME_APP = 1 << 0, /*< nick=same-app >*/
GTK_TARGET_SAME_WIDGET = 1 << 1 /*< nick=same-widget >*/
} GtkTargetFlags;
makes the nicks "same-app" and "same-widget", instead of
"app" and "widget" that would normally be used.
The other two apply to entire enumeration declarations.
/*< prefix=PREFIX >*/
Specifies the prefix to be removed from the enumeration
values to generate nicknames.
/*< flags >*/
Specifies that this enumeration is used as a bitfield.
(makenums.pl normally guesses this from the presence of values
with << operators). For instance:
typedef enum /*< flags >*/
{
GDK_IM_PREEDIT_AREA = 0x0001,
GDK_IM_PREEDIT_CALLBACKS = 0x0002,
[ ... ]
} GdkIMStyle;
makeenums.pl can be run into two modes:
1) Generate the gtktypebuiltins_eval.c file (this
contains arrays holding the mapping of
string <=> enumeration value)
2) Generate the enumeration portion of gtk.defs.
The enumearation portion is added to the boxed type
declarations in gtk-boxed.defs to create gtk.defs.
The makeetypes.awk program takes the gtk.defs file, and
from that generates various files depending on the
third parameter passed to it:
macros: gtktypebuiltins.h
variables: gtktypebuiltins_vars.c
entries: gtktypebuiltins_ids.c
GTK+ - marshallers
==================
The files gtkmarshal.c and gtkmarshal.h include declarations
and definitions for the marshallers needed inside of
GTK+. The marshallers to be generated are listed in
the file gtkmashal.list, which is processed
by genmarshal.pl.
The format of this file is a list of lines:
<retval-type>:<arg1-type>,<arg2-type>,<arg3-type>
e.g.:
BOOL:POINTER,STRING,STRING,POINTER
A marshaller is generated for each line in the file.
The possible types are:
NONE
BOOL
CHAR
INT
UINT
LONG
ULONG
FLOAT
DOUBLE
STRING
ENUM
FLAGS
BOXED
POINTER
OBJECT
FOREIGN (gpointer data, GtkDestroyNotify notify)
C_CALLBACK (GtkFunction func, gpointer func_data)
SIGNAL (GtkSignalFunc f, gpointer data)
ARGS (gint n_args, GtkArg *args)
CALLBACK (GtkCallBackMarshal marshall,
gpointer data,
GtkDestroyNotify Notify)
Some of these types map to multiple return values - these
are marked above with the return types in parantheses.
NOTES
=====
When autogenerating GTK+ files, the autogenerated
files are often rebuild resulting in the same result.
To prevent unecessary rebuilds of the entire directory, some files
that multiple other source files depend on are not actually written
to directly. Instead, an intermediate file is written, which
is then compared to the old file, and only if it is different
is it copied into the final location.

View File

@@ -1,4 +1,4 @@
.TH GTK+ 1 "25 October 1998" Version 1.2.0
.TH GTK+ 1 "25 October 1998" Version @VERSION@
.SH NAME
gtk-config - script to get information about the installed version of GTK+
.SH SYNOPSIS

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +0,0 @@
Damon Chaplin <damon@karuna.freeserve.co.uk> and others.
See:
http://www.gtk.org/rdp/status.html
for a complete list.

View File

@@ -1,30 +0,0 @@
This work may be reproduced and distributed in whole or in part, in
any medium, physical or electronic, so as long as this copyright
notice remains intact and unchanged on all copies. Commercial
redistribution is permitted and encouraged, but you may not
redistribute, in whole or in part, under terms more restrictive than
those under which you received it. If you redistribute a modified or
translated version of this work, you must also make the source code to
the modified or translated version available in electronic form
without charge. However, mere aggregation as part of a larger work
shall not count as a modification for this purpose.
All code examples in this work are placed into the public domain,
and may be used, modified and redistributed without restriction.
BECAUSE THIS WORK IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE WORK, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
OTHER PARTIES PROVIDE THE WORK "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. SHOULD THE WORK PROVE DEFECTIVE, YOU ASSUME
THE COST OF ALL NECESSARY REPAIR OR CORRECTION.
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
AND/OR REDISTRIBUTE THE WORK AS PERMITTED ABOVE, BE LIABLE TO YOU
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
WORK, EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.

View File

@@ -1,105 +0,0 @@
1999-09-22 Damon Chaplin <damon@karuna.freeserve.co.uk>
* gtk/tmpl/*.sgml: ran make templates, to fix problems with structs.
* gtk/gtk-sections.txt: rearranged GtkCombo section.
* gtk/tmpl/gtkvseparator.sgml:
* gtk/tmpl/gtkhseparator.sgml:
* gtk/tmpl/gtkgc.sgml:
* gtk/tmpl/gtkfeatures.sgml:
* gtk/tmpl/gtktipsquery.sgml:
* gtk/tmpl/gtkitem.sgml:
* gtk/tmpl/gtkinvisible.sgml:
* gtk/tmpl/gtkgamma.sgml:
* gtk/tmpl/gtkdata.sgml:
* gtk/tmpl/gtkcurve.sgml:
* gtk/tmpl/gtkcombo.sgml:
* gtk/tmpl/gtkaccellabel.sgml: documented.
1999-09-20 Damon Chaplin <damon@karuna.freeserve.co.uk>
* gtk/gtk-docs.sgml: added role="no-toc" to the GTK+ Widgets & Objects
chapter since we've created our own special contents page.
1999-09-19 Damon Chaplin <damon@karuna.freeserve.co.uk>
* gtk/tmpl/gtkmarshal.sgml:
* gtk/tmpl/gtksignal.sgml: new sections from
David Benson <daveb@idealab.com>.
* gtk/gtk-sections.txt: rearranged signal sections, and made most
marshallers private. Moved GtkSignalRunType to signals section.
* gtk/tmpl/gtkradiobutton.sgml: new section from Lee Mallabone.
1999-09-17 Damon Chaplin <damon@karuna.freeserve.co.uk>
* gtk/gtk-docs.sgml: removed menu factory and debugging sections.
* gtk/gtk-sections.txt: made menu factory stuff private since it is
deprecated. Also made debugging stuff private since it is only useful
within GTK+.
1999-09-14 Damon Chaplin <damon@karuna.freeserve.co.uk>
* gtk/tmpl/gtkfilesel.sgml: fixed mismatched parentheses.
1999-09-02 Damon Chaplin <damon@karuna.freeserve.co.uk>
* gdk/tmpl/event_structs.sgml:
* gdk/tmpl/drawing.sgml: minor fixes.
1999-09-20 David C. Mason <dcm@redhat.com>
* gtk/tmpl/gtkimage.sgml: first pass at gtkimage... not complete
1999-08-28 Damon Chaplin <damon@karuna.freeserve.co.uk>
* gtk/tmpl/gtkbbox.sgml: new section from Lee Mallabone.
* gdk/gdk-sections.txt: rearranged rgb, regions, and drawing sections.
* gdk/tmpl/rgb.sgml: new section from Raph Levien, with a few changes
by me, including a little example app.
* gdk/tmpl/regions.sgml:
* gdk/tmpl/event_structs.sgml:
* gdk/tmpl/drawing.sgml: my first attempt.
* gdk/tmpl/cursors.sgml: tiny changes.
Tue Aug 17 09:14:01 1999 Owen Taylor <otaylor@redhat.com>
* gtk/tmpl/gtktypeutils.sgml: Fix corrupted end tag.
* gtk/tmpl/gtkselection.sgml gtk/tmpl/gtkrc.sgml
gtk/tmpl/gtkdnd.sgml gtk/tmpl/gtkarrow.sgml
gtk/tmpl/gtkpaned.sgml gtk/tmpl/gtkmisc.sgml
gtk/tmpl/gtkhandlebox.sgml gtk/tmpl/gtkctree.sgml:
Added missing close tags.
Thu Aug 19 14:43:08 1999 Owen Taylor <otaylor@redhat.com>
* gdk/tmpl/gcs.sgml gdk/gdk-sections.txt: Added section.
(Written a while ago but fell through the cracks)
* gtk/gtk-docs.sgml: Add a &hash; entity here as a
temporary hack. (There is no standard entity
for '#', and no way of escaping '#' in gtk-doc)
* gtk/tmpl/gtkrc.sgml: Use the above to fix up #rrggbb
string literals.
* gtk/tmpl/gtkdrawingarea.sgml: Fixed a couple
of errors in the example. (pointed out by
Nick Lamb)
Mon Aug 16 6:60:53 1999 Owen Taylor <otaylor@redhat.com>
* gdk/tmpl/properties.sgml
gdk/tmpl/selections.sgml
gdk/tmpl/input_devices.sgml: Documented
* gdk/gdk-sections.txt: Moved around types for
input devices properties and selections, marked
a few functions as private.

View File

@@ -1,62 +0,0 @@
This package contains the reference documentation
for GTK+. For more information about GTK+
see:
http://www.gtk.org
For information about contributing to the
GLib/GTK+ reference documentation project, see:
http://www.gtk.org/rdp/
The GTK+ reference documentation is freely redistributable,
see the file COPYING for details.
REQUIREMENTS
============
To build the documentation, you must have the gtk-doc
package installed. To rebuild the template files,
you must have the current version of the GTK+
header files installed.
BUILD
=====
First, run configure to generate the makefiles for this
module. There is one option specific to this package
--with-html-dir=DIR top of installed HTML documentation tree
The Makefiles in the gdk/ and gtk/ subdirs each define three targets:
templates:
Scan the headers and merge the results with the current
template files
sgml:
Generate SGML files using the DocBook DTD from
the template files
html:
Generate HTML from the SGML files.
To build the documentation, do:
make sgml
make html
You should only run the 'make templates' step if you
need to regenerate the templates for a more recent
version of the GTK+ sources.
INSTALLATION
============
make install

View File

@@ -1,39 +0,0 @@
Before making any changes to this module, please
contact:
Damon Chaplin <damon@karuna.freeserve.co.uk>
This will ensure that duplicate work does not occur,
and also make sure we know who has written what
parts of the documentation. See
http://www.gtk.org/rdp/
for more information.
By contributing work to the Reference Documentation
Project, you agree that it will be covered under the
license terms described in the file COPYING
included in this directory.
Other notes:
- Do not run 'make templates' unless you have
the latest cvs version of the gtk-1-2
branch of GTK+ and the latest CVS version
of gtk-doc.
(This is very important. Otherwise, the template
files may be come corrupted.)
Make sure that gtk-config --prefix points
to the correct version of GTK+.
- As always, ChangeLog entries should be made for
each commit. These can be really brief
"documented GHashTable"; but if you are editing
something someone else wrote, please be specific.
(Or better, send the changes to them for their
approval, first)

View File

@@ -1,6 +0,0 @@
Makefile
Makefile.in
sgml
html
gdk-decl-list.txt
gdk-unused.txt

View File

@@ -1,50 +0,0 @@
## Process this file with automake to produce Makefile.in
# The name of the module.
DOC_MODULE=gdk
# The top-level SGML file.
DOC_MAIN_SGML_FILE=gdk-docs.sgml
# We could alternatively use this for using installed headers.
INCLUDE_DIR=`gtk-config --prefix`/include/gdk
TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
scan:
gtkdoc-scan --module=$(DOC_MODULE) $(INCLUDE_DIR)/gdk.h $(INCLUDE_DIR)/gdktypes.h $(INCLUDE_DIR)/gdkrgb.h
templates: scan
gtkdoc-mktmpl --module=$(DOC_MODULE)
sgml:
gtkdoc-mkdb --module=$(DOC_MODULE)
html:
if ! test -d html ; then mkdir html ; fi
-cd html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
clean-local:
rm -f *~ *.bak *.hierarchy *.signals *.args *-unused.txt
maintainer-clean-local: clean
rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
install-data-local:
install -d -m 0755 $(TARGET_DIR)
install -m 0644 html/*.html $(TARGET_DIR)
install -m 0644 html/index.sgml $(TARGET_DIR)
gtkdoc-fixxref --module=$(DOC_MODULE) --html-dir=$(HTML_DIR)
EXTRA_DIST = \
$(DOC_MAIN_SGML_FILE) \
$(DOC_MODULE)-sections.txt \
gdk-overrides.txt \
gdk-decl.txt
dist-hook:
mkdir $(distdir)/tmpl
cp -p tmpl/*.sgml $(distdir)/tmpl
.PHONY : html sgml templates scan

File diff suppressed because it is too large Load Diff

View File

@@ -1,59 +0,0 @@
<!doctype book PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
<!entity gdk-General SYSTEM "sgml/general.sgml">
<!entity gdk-Bitmaps-and-Pixmaps SYSTEM "sgml/pixmaps.sgml">
<!entity gdk-Images SYSTEM "sgml/images.sgml">
<!entity gdk-GdkRGB SYSTEM "sgml/rgb.sgml">
<!entity gdk-Colormaps-and-Colors SYSTEM "sgml/colors.sgml">
<!entity gdk-Fonts SYSTEM "sgml/fonts.sgml">
<!entity gdk-Drawing-Primitives SYSTEM "sgml/drawing.sgml">
<!entity gdk-Graphics-Contexts SYSTEM "sgml/gcs.sgml">
<!entity gdk-Visuals SYSTEM "sgml/visuals.sgml">
<!entity gdk-Windows SYSTEM "sgml/windows.sgml">
<!entity gdk-Selections SYSTEM "sgml/selections.sgml">
<!entity gdk-Properties-and-Atoms SYSTEM "sgml/properties.sgml">
<!entity gdk-Input-Methods SYSTEM "sgml/input_methods.sgml">
<!entity gdk-Input-Contexts SYSTEM "sgml/input_contexts.sgml">
<!entity gdk-Color-Contexts SYSTEM "sgml/color_contexts.sgml">
<!entity gdk-Points-Rectangles-and-Regions SYSTEM "sgml/regions.sgml">
<!entity gdk-Threads SYSTEM "sgml/threads.sgml">
<!entity gdk-Key-Values SYSTEM "sgml/keys.sgml">
<!entity gdk-Input-Devices SYSTEM "sgml/input_devices.sgml">
<!entity gdk-Events SYSTEM "sgml/events.sgml">
<!entity gdk-Event-Structures SYSTEM "sgml/event_structs.sgml">
<!entity gdk-Cursors SYSTEM "sgml/cursors.sgml">
<!entity gdk-Input SYSTEM "sgml/input.sgml">
<!entity gdk-Drag-and-Drop SYSTEM "sgml/dnd.sgml">
]>
<book id="index">
<bookinfo>
<title>GDK Reference Manual</title>
</bookinfo>
<chapter id="gdk">
<title>GDK</title>
&gdk-General;
&gdk-Bitmaps-and-Pixmaps;
&gdk-Images;
&gdk-GdkRGB;
&gdk-Colormaps-and-Colors;
&gdk-Fonts;
&gdk-Drawing-Primitives;
&gdk-Graphics-Contexts;
&gdk-Visuals;
&gdk-Windows;
&gdk-Selections;
&gdk-Properties-and-Atoms;
&gdk-Input-Methods;
&gdk-Input-Contexts;
&gdk-Color-Contexts;
&gdk-Points-Rectangles-and-Regions;
&gdk-Threads;
&gdk-Key-Values;
&gdk-Input-Devices;
&gdk-Events;
&gdk-Event-Structures;
&gdk-Cursors;
&gdk-Input;
&gdk-Drag-and-Drop;
</chapter>
</book>

View File

@@ -1,23 +0,0 @@
# GdkPixmap, GdkBitmap and GdkDrawable are the same as GdkWindow.
<STRUCT>
<NAME>GdkPixmap</NAME>
struct GdkPixmap
{
gpointer user_data;
};
</STRUCT>
<STRUCT>
<NAME>GdkBitmap</NAME>
struct GdkBitmap
{
gpointer user_data;
};
</STRUCT>
<STRUCT>
<NAME>GdkDrawable</NAME>
struct GdkDrawable
{
gpointer user_data;
};
</STRUCT>

View File

@@ -1,588 +0,0 @@
<INCLUDE>gdk/gdk.h</INCLUDE>
<SECTION>
<TITLE>General</TITLE>
<FILE>general</FILE>
gdk_init
gdk_init_check
gdk_exit
GdkStatus
GDK_NONE
GDK_CURRENT_TIME
GDK_PRIORITY_EVENTS
gdk_set_locale
gdk_get_show_events
gdk_set_show_events
gdk_add_client_message_filter
gdk_set_sm_client_id
gdk_get_use_xshm
gdk_set_use_xshm
gdk_get_display
gdk_screen_width
gdk_screen_height
gdk_screen_width_mm
gdk_screen_height_mm
gdk_pointer_grab
gdk_pointer_ungrab
gdk_keyboard_grab
gdk_keyboard_ungrab
gdk_pointer_is_grabbed
gdk_flush
gdk_beep
gdk_key_repeat_disable
gdk_key_repeat_restore
gdk_error_trap_push
gdk_error_trap_pop
<SUBSECTION Private>
gdk_time_get
gdk_timer_get
gdk_timer_set
gdk_timer_enable
gdk_timer_disable
</SECTION>
<SECTION>
<TITLE>Bitmaps and Pixmaps</TITLE>
<FILE>pixmaps</FILE>
GdkPixmap
gdk_pixmap_new
gdk_bitmap_create_from_data
gdk_pixmap_create_from_data
gdk_pixmap_create_from_xpm
gdk_pixmap_colormap_create_from_xpm
gdk_pixmap_create_from_xpm_d
gdk_pixmap_colormap_create_from_xpm_d
gdk_pixmap_ref
gdk_pixmap_unref
GdkBitmap
gdk_bitmap_ref
gdk_bitmap_unref
</SECTION>
<SECTION>
<TITLE>Images</TITLE>
<FILE>images</FILE>
GdkImage
GdkImageType
gdk_image_new_bitmap
gdk_image_new
gdk_image_get
gdk_image_put_pixel
gdk_image_get_pixel
gdk_image_destroy
</SECTION>
<SECTION>
<TITLE>GdkRGB</TITLE>
<FILE>rgb</FILE>
gdk_rgb_init
<SUBSECTION>
gdk_draw_rgb_image
gdk_draw_rgb_image_dithalign
gdk_draw_indexed_image
gdk_draw_gray_image
gdk_draw_rgb_32_image
GdkRgbDither
<SUBSECTION>
gdk_rgb_cmap_new
gdk_rgb_cmap_free
GdkRgbCmap
<SUBSECTION>
gdk_rgb_gc_set_foreground
gdk_rgb_gc_set_background
gdk_rgb_xpixel_from_rgb
<SUBSECTION>
gdk_rgb_set_install
gdk_rgb_set_min_colors
gdk_rgb_get_visual
gdk_rgb_get_cmap
gdk_rgb_ditherable
gdk_rgb_set_verbose
</SECTION>
<SECTION>
<TITLE>Colormaps and Colors</TITLE>
<FILE>colors</FILE>
GdkColor
GdkColormap
gdk_colormap_new
gdk_colormap_ref
gdk_colormap_unref
gdk_colormap_get_system
gdk_colormap_get_system_size
gdk_colormap_change
gdk_colormap_alloc_colors
gdk_colormap_alloc_color
gdk_colormap_free_colors
gdk_colormap_get_visual
gdk_colors_store
gdk_color_copy
gdk_color_free
gdk_colors_alloc
gdk_colors_free
gdk_color_white
gdk_color_black
gdk_color_parse
gdk_color_alloc
gdk_color_change
gdk_color_equal
gdk_color_hash
</SECTION>
<SECTION>
<TITLE>Fonts</TITLE>
<FILE>fonts</FILE>
GdkFont
GdkFontType
gdk_font_load
gdk_fontset_load
gdk_font_ref
gdk_font_unref
gdk_font_id
gdk_font_equal
<SUBSECTION>
gdk_string_extents
gdk_text_extents
gdk_text_extents_wc
gdk_string_width
gdk_text_width
gdk_text_width_wc
gdk_char_width
gdk_char_width_wc
gdk_string_measure
gdk_text_measure
gdk_char_measure
gdk_string_height
gdk_text_height
gdk_char_height
</SECTION>
<SECTION>
<TITLE>Drawing Primitives</TITLE>
<FILE>drawing</FILE>
GdkFill
GdkLineStyle
GdkCapStyle
GdkJoinStyle
gdk_draw_point
gdk_draw_points
gdk_draw_line
gdk_draw_lines
gdk_draw_segments
GdkSegment
gdk_draw_rectangle
gdk_draw_arc
gdk_draw_polygon
<SUBSECTION>
gdk_draw_string
gdk_draw_text
gdk_draw_text_wc
<SUBSECTION>
gdk_draw_pixmap
gdk_draw_bitmap
gdk_draw_image
</SECTION>
<SECTION>
<TITLE>Graphics Contexts</TITLE>
<FILE>gcs</FILE>
GdkGC
GdkGCValues
GdkGCValuesMask
GdkFunction
gdk_gc_new
gdk_gc_new_with_values
gdk_gc_ref
gdk_gc_unref
gdk_gc_destroy
gdk_gc_get_values
gdk_gc_set_foreground
gdk_gc_set_background
gdk_gc_set_font
gdk_gc_set_function
gdk_gc_set_fill
gdk_gc_set_tile
gdk_gc_set_stipple
gdk_gc_set_ts_origin
gdk_gc_set_clip_origin
gdk_gc_set_clip_mask
gdk_gc_set_clip_rectangle
gdk_gc_set_clip_region
gdk_gc_set_subwindow
GdkSubwindowMode
gdk_gc_set_exposures
gdk_gc_set_line_attributes
gdk_gc_set_dashes
gdk_gc_copy
</SECTION>
<SECTION>
<TITLE>Visuals</TITLE>
<FILE>visuals</FILE>
GdkVisual
GdkVisualType
GdkByteOrder
gdk_query_depths
gdk_query_visual_types
gdk_list_visuals
gdk_visual_get_best_depth
gdk_visual_get_best_type
gdk_visual_get_system
gdk_visual_get_best
gdk_visual_get_best_with_depth
gdk_visual_get_best_with_type
gdk_visual_get_best_with_both
gdk_visual_ref
gdk_visual_unref
</SECTION>
<SECTION>
<TITLE>Windows</TITLE>
<FILE>windows</FILE>
GdkWindowAttr
GdkWindow
GdkWindowType
GdkWindowClass
GdkWindowAttributesType
GdkWindowHints
GdkGeometry
gdk_window_new
gdk_window_destroy
gdk_window_ref
gdk_window_unref
gdk_window_at_pointer
gdk_window_show
gdk_window_hide
gdk_window_is_visible
gdk_window_is_viewable
gdk_window_withdraw
gdk_window_move
gdk_window_resize
gdk_window_move_resize
gdk_window_reparent
gdk_window_clear
gdk_window_clear_area
gdk_window_clear_area_e
gdk_window_copy_area
gdk_window_raise
gdk_window_lower
gdk_window_register_dnd
gdk_window_set_user_data
gdk_window_set_override_redirect
gdk_window_add_filter
gdk_window_remove_filter
GdkFilterFunc
GdkFilterReturn
gdk_window_shape_combine_mask
gdk_window_set_child_shapes
gdk_window_merge_child_shapes
gdk_window_set_static_gravities
gdk_window_set_hints
gdk_window_set_title
gdk_window_set_background
gdk_window_set_back_pixmap
GDK_PARENT_RELATIVE
gdk_window_set_cursor
gdk_window_set_colormap
gdk_window_get_user_data
gdk_window_get_geometry
gdk_window_set_geometry_hints
gdk_window_get_position
gdk_window_get_root_origin
gdk_window_get_size
gdk_window_get_visual
gdk_window_get_colormap
gdk_window_get_type
gdk_window_get_origin
gdk_window_get_deskrelative_origin
gdk_window_get_pointer
GdkModifierType
gdk_window_get_parent
gdk_window_get_toplevel
gdk_window_get_children
gdk_window_get_events
gdk_window_set_events
gdk_window_set_icon
gdk_window_set_icon_name
gdk_window_set_transient_for
gdk_window_set_role
gdk_window_set_group
gdk_window_set_decorations
GdkWMDecoration
gdk_window_set_functions
GdkWMFunction
gdk_window_get_toplevels
GdkDrawable
gdk_drawable_set_data
</SECTION>
<SECTION>
<TITLE>Selections</TITLE>
<FILE>selections</FILE>
GdkSelection
GdkSelectionType
GdkTarget
gdk_selection_owner_set
gdk_selection_owner_get
gdk_selection_convert
gdk_selection_property_get
gdk_selection_send_notify
</SECTION>
<SECTION>
<TITLE>Properties and Atoms</TITLE>
<FILE>properties</FILE>
GdkAtom
gdk_text_property_to_text_list
gdk_free_text_list
gdk_string_to_compound_text
gdk_free_compound_text
gdk_atom_intern
gdk_atom_name
gdk_property_get
gdk_property_change
GdkPropMode
gdk_property_delete
</SECTION>
<SECTION>
<TITLE>Input Methods</TITLE>
<FILE>input_methods</FILE>
GdkIMStyle
GdkWChar
gdk_im_ready
gdk_im_begin
gdk_im_end
gdk_im_decide_style
gdk_im_set_best_style
gdk_wcstombs
gdk_mbstowcs
</SECTION>
<SECTION>
<TITLE>Input Contexts</TITLE>
<FILE>input_contexts</FILE>
GdkIC
GdkICAttr
GdkICAttributesType
gdk_ic_new
gdk_ic_destroy
gdk_ic_get_style
gdk_ic_set_attr
gdk_ic_get_attr
gdk_ic_get_events
gdk_ic_attr_new
gdk_ic_attr_destroy
</SECTION>
<SECTION>
<TITLE>Color Contexts</TITLE>
<FILE>color_contexts</FILE>
GdkColorContext
GdkColorContextDither
GdkColorContextMode
gdk_color_context_new
gdk_color_context_new_mono
gdk_color_context_free
gdk_color_context_get_pixel
gdk_color_context_get_pixels
gdk_color_context_get_pixels_incremental
gdk_color_context_query_color
gdk_color_context_query_colors
gdk_color_context_add_palette
gdk_color_context_init_dither
gdk_color_context_free_dither
gdk_color_context_get_pixel_from_palette
gdk_color_context_get_index_from_palette
</SECTION>
<SECTION>
<TITLE>Points, Rectangles and Regions</TITLE>
<FILE>regions</FILE>
GdkPoint
<SUBSECTION>
GdkRectangle
gdk_rectangle_intersect
gdk_rectangle_union
<SUBSECTION>
GdkRegion
gdk_region_new
gdk_region_polygon
GdkFillRule
gdk_region_destroy
<SUBSECTION>
gdk_regions_intersect
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_equal
gdk_region_point_in
gdk_region_rect_in
GdkOverlapType
gdk_region_get_clipbox
</SECTION>
<SECTION>
<TITLE>Threads</TITLE>
<FILE>threads</FILE>
gdk_threads_mutex
GDK_THREADS_ENTER
GDK_THREADS_LEAVE
gdk_threads_enter
gdk_threads_leave
</SECTION>
<SECTION>
<TITLE>Key Values</TITLE>
<FILE>keys</FILE>
gdk_keyval_name
gdk_keyval_from_name
<SUBSECTION>
gdk_keyval_is_upper
gdk_keyval_is_lower
<SUBSECTION>
gdk_keyval_to_upper
gdk_keyval_to_lower
</SECTION>
<SECTION>
<TITLE>Input Devices</TITLE>
<FILE>input_devices</FILE>
GDK_CORE_POINTER
gdk_input_list_devices
GdkDeviceInfo
GdkDeviceKey
gdk_input_set_extension_events
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>
gdk_input_init
gdk_input_exit
</SECTION>
<SECTION>
<TITLE>Events</TITLE>
<FILE>events</FILE>
GdkEventType
GdkEventMask
gdk_events_pending
gdk_event_peek
gdk_event_get
gdk_event_get_graphics_expose
gdk_event_put
gdk_event_copy
gdk_event_free
gdk_event_get_time
gdk_event_handler_set
gdk_event_send_client_message
GdkEventFunc
gdk_event_send_clientmessage_toall
</SECTION>
<SECTION>
<TITLE>Event Structures</TITLE>
<FILE>event_structs</FILE>
GdkEventAny
GdkEventExpose
GdkEventNoExpose
GdkEventVisibility
GdkVisibilityState
GdkEventMotion
GdkEventButton
GdkEventKey
GdkEventCrossing
GdkCrossingMode
GdkNotifyType
GdkEventFocus
GdkEventConfigure
GdkEventProperty
GdkPropertyState
GdkEventSelection
GdkEventProximity
GdkEventClient
GdkEventDND
GdkEvent
GdkXEvent
</SECTION>
<SECTION>
<TITLE>Cursors</TITLE>
<FILE>cursors</FILE>
GdkCursor
GdkCursorType
gdk_cursor_new
gdk_cursor_new_from_pixmap
gdk_cursor_destroy
</SECTION>
<SECTION>
<TITLE>Input</TITLE>
<FILE>input</FILE>
gdk_input_add_full
GdkInputCondition
GdkInputFunction
GdkDestroyNotify
gdk_input_add
gdk_input_remove
</SECTION>
<SECTION>
<TITLE>Drag and Drop</TITLE>
<FILE>dnd</FILE>
gdk_drag_get_selection
gdk_drag_abort
gdk_drop_reply
gdk_drag_context_new
gdk_drag_drop
gdk_drag_find_window
gdk_drag_context_ref
gdk_drag_begin
gdk_drag_motion
gdk_drop_finish
gdk_drag_get_protocol
GdkDragProtocol
gdk_drag_context_unref
GdkDragContext
GdkDragAction
gdk_drag_status
</SECTION>

View File

@@ -1,202 +0,0 @@
<!-- ##### SECTION Title ##### -->
Color Contexts
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GdkColorContext ##### -->
<para>
</para>
@visual:
@colormap:
@num_colors:
@max_colors:
@num_allocated:
@mode:
@need_to_free_colormap:
@std_cmap_atom:
@clut:
@cmap:
@color_hash:
@palette:
@num_palette:
@fast_dither:
<!-- ##### STRUCT GdkColorContextDither ##### -->
<para>
</para>
@fast_rgb:
@fast_err:
@fast_erg:
@fast_erb:
<!-- ##### ENUM GdkColorContextMode ##### -->
<para>
</para>
@GDK_CC_MODE_UNDEFINED:
@GDK_CC_MODE_BW:
@GDK_CC_MODE_STD_CMAP:
@GDK_CC_MODE_TRUE:
@GDK_CC_MODE_MY_GRAY:
@GDK_CC_MODE_PALETTE:
<!-- ##### FUNCTION gdk_color_context_new ##### -->
<para>
</para>
@visual:
@colormap:
@Returns:
<!-- ##### FUNCTION gdk_color_context_new_mono ##### -->
<para>
</para>
@visual:
@colormap:
@Returns:
<!-- ##### FUNCTION gdk_color_context_free ##### -->
<para>
</para>
@cc:
<!-- ##### FUNCTION gdk_color_context_get_pixel ##### -->
<para>
</para>
@cc:
@red:
@green:
@blue:
@failed:
@Returns:
<!-- ##### FUNCTION gdk_color_context_get_pixels ##### -->
<para>
</para>
@cc:
@reds:
@greens:
@blues:
@ncolors:
@colors:
@nallocated:
<!-- ##### FUNCTION gdk_color_context_get_pixels_incremental ##### -->
<para>
</para>
@cc:
@reds:
@greens:
@blues:
@ncolors:
@used:
@colors:
@nallocated:
<!-- ##### FUNCTION gdk_color_context_query_color ##### -->
<para>
</para>
@cc:
@color:
@Returns:
<!-- ##### FUNCTION gdk_color_context_query_colors ##### -->
<para>
</para>
@cc:
@colors:
@num_colors:
@Returns:
<!-- ##### FUNCTION gdk_color_context_add_palette ##### -->
<para>
</para>
@cc:
@palette:
@num_palette:
@Returns:
<!-- ##### FUNCTION gdk_color_context_init_dither ##### -->
<para>
</para>
@cc:
<!-- ##### FUNCTION gdk_color_context_free_dither ##### -->
<para>
</para>
@cc:
<!-- ##### FUNCTION gdk_color_context_get_pixel_from_palette ##### -->
<para>
</para>
@cc:
@red:
@green:
@blue:
@failed:
@Returns:
<!-- ##### FUNCTION gdk_color_context_get_index_from_palette ##### -->
<para>
</para>
@cc:
@red:
@green:
@blue:
@failed:
@Returns:

View File

@@ -1,390 +0,0 @@
<!-- ##### SECTION Title ##### -->
Colormaps and Colors
<!-- ##### SECTION Short_Description ##### -->
manipulation of colors and colormaps.
<!-- ##### SECTION Long_Description ##### -->
<para>
These functions are used to modify colormaps.
A colormap is an object that contains the mapping
between the color values stored in memory and
the RGB values that are used to display color
values. In general, colormaps only contain
significant information for pseudo-color visuals,
but even for other visual types, a colormap object
is required in some circumstances.
</para>
<para>
There are a couple of special colormaps that can
be retrieved. The system colormap (retrieved
with gdk_colormap_get_system()) is the default
colormap of the system. If you are using GdkRGB,
there is another colormap that is important - the
colormap in which GdkRGB works, retrieved with
gdk_rgb_get_cmap(). However, when using GdkRGB,
it is not generally necessary to allocate colors
directly.
</para>
<para>
In previous revisions of this interface, a number
of functions that take a #GdkColormap parameter
were replaced with functions whose names began
with "gdk_colormap_". This process will probably
be extended somewhat in the future -
gdk_color_white(), gdk_color_black(), and
gdk_color_change() will probably become aliases.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GdkColor ##### -->
<para>
The #GdkColor structure is used to describe an
allocated or unallocated color.
<informaltable pgwide=1 frame="none" role="struct">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry><structfield>pixel</structfield></entry>
<entry>For allocated colors, the value used to
draw this color on the screen.</entry>
</row>
<row>
<entry><structfield>red</structfield></entry>
<entry>The red component of the color. This is
a value between 0 and 65535, with 65535 indicating
full intensitiy.</entry>
</row>
<row>
<entry><structfield>green</structfield></entry>
<entry>the blue component of the color.</entry>
</row>
<row>
<entry><structfield>blue</structfield></entry>
<entry>the green component of the color..</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@pixel:
@red:
@green:
@blue:
<!-- ##### STRUCT GdkColormap ##### -->
<para>
The colormap structure contains the following public
fields.
<informaltable pgwide=1 frame="none" role="struct">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry><structfield>size</structfield></entry>
<entry>For pseudo-color colormaps, the number of colors
in the colormap..</entry>
</row>
<row>
<entry><structfield>colors</structfield></entry>
<entry>An array containing the current values in the
colormap. This can be used to map from pixel values
back to RGB values. This is only meaningful for
pseudo-color colormaps.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@size:
@colors:
<!-- ##### FUNCTION gdk_colormap_new ##### -->
<para>
Create a new colormap for the given visual.
</para>
@visual: a #GdkVisual.
@allocate: if %TRUE, the newly created colormap will be
a private colormap, and all colors in it will be
allocated for the applications use.
@Returns: the new #GdkColormap.
<!-- ##### FUNCTION gdk_colormap_ref ##### -->
<para>
Increase the reference count of a colormap.
</para>
@cmap: a #GdkColormap.
@Returns: @cmap
<!-- ##### FUNCTION gdk_colormap_unref ##### -->
<para>
Decrease the reference count of a colormap. If the
resulting reference count is zero, destroys the colormap.
</para>
@cmap: a #GdkColormap.
<!-- ##### FUNCTION gdk_colormap_get_system ##### -->
<para>
Returns the system's default colormap.
</para>
@Returns: the default colormap.
<!-- ##### FUNCTION gdk_colormap_get_system_size ##### -->
<para>
Returns the size of the system's default colormap.
(See the description of struct #GdkColormap for an
explanation of the size of a colormap.)
</para>
@Returns: the size of the system's default colormap.
<!-- ##### FUNCTION gdk_colormap_change ##### -->
<para>
Change the value of the first @ncolors in a private colormap
to match the values in the <structfield>colors</structfield>
array in the color map. This function is obsolete and
should not be used. See gdk_color_change().
</para>
@colormap: a #GdkColormap.
@ncolors: the number of colors to change.
<!-- ##### FUNCTION gdk_colormap_alloc_colors ##### -->
<para>
Allocates colors from a colormap.
</para>
@colormap: a #GdkColormap.
@colors: The color values to allocate. On return, the pixel
values for allocated colors will be filled in.
@ncolors: The number of colors in @colors.
@writeable: If %TRUE, the colors are allocated writeable
(their values can later be changed using gdk_color_change()).
Writeable colors cannot be shared between applications.
@best_match: If %TRUE, GDK will attempt to do matching against
existing colors if the colors cannot be allocated as
requested.
@success: An array of length @ncolors. On return, this
indicates whether the corresponding color in @colors was
sucessfully allocated or not.
@Returns: The number of colors that were not sucessfully
allocated.
<!-- ##### FUNCTION gdk_colormap_alloc_color ##### -->
<para>
Allocate a single color from a colormap.
</para>
@colormap: a #GdkColormap.
@color: the color to allocate. On return the
<structfield>pixel</structfield> field will be
filled in if allocation succeeds.
@writeable: If %TRUE, the color is allocated writeable
(their values can later be changed using gdk_color_change()).
Writeable colors cannot be shared between applications.
@best_match: If %TRUE, GDK will attempt to do matching against
existing colors if the color cannot be allocated as
requested.
@Returns: %TRUE if the allocation succeeded.
<!-- ##### FUNCTION gdk_colormap_free_colors ##### -->
<para>
Free previously allocated colors.
</para>
@colormap: a #GdkColormap.
@colors: the colors to free.
@ncolors: the number of colors in @colors.
<!-- ##### FUNCTION gdk_colormap_get_visual ##### -->
<para>
Return the visual for which a given colormap was created.
</para>
@colormap: a #GdkColormap.
@Returns: the visual of the colormap.
<!-- ##### FUNCTION gdk_colors_store ##### -->
<para>
Change the value of the first @ncolors colors in
a private colormap. This function is obsolete and
should not be used. See gdk_color_change().
</para>
@colormap: a #GdkColormap.
@colors: the new color values.
@ncolors: the number of colors to change.
<!-- ##### FUNCTION gdk_color_copy ##### -->
<para>
Make a copy of a color structure. The result
must be freed using gdk_color_free().
</para>
@color: a #GdkColor.
@Returns: a copy of @color.
<!-- ##### FUNCTION gdk_color_free ##### -->
<para>
Free a color structure created with
gdk_color_copy().
</para>
@color: a #GdkColor.
<!-- ##### FUNCTION gdk_colors_alloc ##### -->
<para>
Allocate colors from a colormap. This function
is obsolete. See gdk_colormap_alloc_colors().
For full documentation of the fields, see
the Xlib documentation for XAllocColorCells.
</para>
@colormap: a #GdkColormap.
@contiguous: if %TRUE, the colors should be allocated
in contiguous color cells.
@planes: an array in which to store the plane masks.
@nplanes: the number of planes to allocate. (Or zero,
to indicate that the color allocation should not be
planar.)
@pixels: an array into which to store allocated pixel
values.
@npixels: the number of pixels in each plane to allocate.
@Returns:
<!-- ##### FUNCTION gdk_colors_free ##### -->
<para>
Free colors allocated with gdk_colors_alloc(). This
function is obsolete. See gdk_colormap_free_colors().
</para>
@colormap: a #GdkColormap.
@pixels: the pixel values of the colors to free.
@npixels: the number of values in @pixels.
@planes: the plane masks for all planes to free, OR'd
together.
<!-- ##### FUNCTION gdk_color_white ##### -->
<para>
Return the white color for a given colormap. The resulting
value has already allocated been allocated.
</para>
@colormap: a #GdkColormap.
@color: the location to store the color.
@Returns: %TRUE if the allocation succeeded.
<!-- ##### FUNCTION gdk_color_black ##### -->
<para>
Return the black color for a given colormap. The resulting
value has already benn allocated.
</para>
@colormap: a #GdkColormap.
@color: the location to store the color.
@Returns: %TRUE if the allocation succeeded.
<!-- ##### FUNCTION gdk_color_parse ##### -->
<para>
Parse a textual specification of a color and fill in
the <structfield>red</structfield>,
<structfield>green</structfield>, and
<structfield>blue</structfield> fields of a
#GdkColor structure. The color is <emphasis>not</emphasis>
allocated, you must call gdk_colormap_alloc_color() yourself.
The text string can be in any of the forms accepted
by <function>XParseColor</function>; these include
name for a color from <filename>rgb.txt</filename>, such as
<literal>DarkSlateGray</literal>, or a hex specification
such as <literal>305050</literal>.
</para>
@spec: the string specifying the color.
@color: the #GdkColor to fill in
@Returns:
<!-- ##### FUNCTION gdk_color_alloc ##### -->
<para>
Allocate a single color from a colormap.
This function is obsolete. See gdk_colormap_alloc_color().
</para>
@colormap: a #GdkColormap.
@color: The color to allocate. On return, the
<structfield>pixel</structfield> field will be
filled in.
@Returns: %TRUE if the allocation succeeded.
<!-- ##### FUNCTION gdk_color_change ##### -->
<para>
Change the value of a color that has already
been allocated. If @colormap is not a private
colormap, then the color must have been allocated
using gdk_colormap_alloc_colors() with the
@writeable set to %TRUE.
</para>
@colormap: a #GdkColormap.
@color: a #GdkColor, with the color to change
in the <structfield>pixel</structfield> field,
and the new value in the remaining fields.
@Returns:
<!-- ##### FUNCTION gdk_color_equal ##### -->
<para>
Compare two colors.
</para>
@colora: a #GdkColor.
@colorb: another #GdkColor.
@Returns: %TRUE if the two colors compare equal
<!-- ##### FUNCTION gdk_color_hash ##### -->
<para>
A hash function suitable for using for a hash
table that stores #GdkColor's.
</para>
@colora: a #GdkColor.
@colorb: NOT USED.
@Returns: The hash function appled to @colora

View File

@@ -1,99 +0,0 @@
<!-- ##### SECTION Title ##### -->
Cursors
<!-- ##### SECTION Short_Description ##### -->
standard and pixmap cursors.
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GdkCursor ##### -->
<para>
</para>
@type:
<!-- ##### ENUM GdkCursorType ##### -->
<para>
The standard cursors available.
</para>
<!-- ##### FUNCTION gdk_cursor_new ##### -->
<para>
Creates a new standard cursor.
</para>
@cursor_type: the type of the cursor.
@Returns: a new #GdkCursor.
<!-- ##### FUNCTION gdk_cursor_new_from_pixmap ##### -->
<para>
Creates a new cursor from a given pixmap and mask. Both the pixmap and mask
must have a depth of 1 (i.e. each pixel has only 2 values - on or off).
The standard cursor size is 16 by 16 pixels.
</para>
<example><title>Creating a custom cursor.</title>
<programlisting>
/* This data is in X bitmap format, and can be created with the 'bitmap'
utility. */
#define cursor1_width 16
#define cursor1_height 16
static unsigned char cursor1_bits[] = {
0x80, 0x01, 0x40, 0x02, 0x20, 0x04, 0x10, 0x08, 0x08, 0x10, 0x04, 0x20,
0x82, 0x41, 0x41, 0x82, 0x41, 0x82, 0x82, 0x41, 0x04, 0x20, 0x08, 0x10,
0x10, 0x08, 0x20, 0x04, 0x40, 0x02, 0x80, 0x01};
static unsigned char cursor1mask_bits[] = {
0x80, 0x01, 0xc0, 0x03, 0x60, 0x06, 0x30, 0x0c, 0x18, 0x18, 0x8c, 0x31,
0xc6, 0x63, 0x63, 0xc6, 0x63, 0xc6, 0xc6, 0x63, 0x8c, 0x31, 0x18, 0x18,
0x30, 0x0c, 0x60, 0x06, 0xc0, 0x03, 0x80, 0x01};
GdkCursor *cursor;
GdkPixmap *source, *mask;
GdkColor fg = { 0, 65535, 0, 0 }; /* Red. */
GdkColor bg = { 0, 0, 0, 65535 }; /* Blue. */
source = gdk_bitmap_create_from_data (NULL, cursor1_bits,
cursor1_width, cursor1_height);
mask = gdk_bitmap_create_from_data (NULL, cursor1mask_bits,
cursor1_width, cursor1_height);
cursor = gdk_cursor_new_from_pixmap (source, mask, &amp;fg, &amp;bg, 8, 8);
gdk_pixmap_unref (source);
gdk_pixmap_unref (mask);
gdk_window_set_cursor (widget->window, cursor);
</programlisting>
</example>
@source: the pixmap specifying the cursor.
@mask: the pixmap specifying the mask, which must be the same size as @source.
@fg: the foreground color, used for the bits in the source which are 1.
The color does not have to be allocated first.
@bg: the background color, used for the bits in the source which are 0.
The color does not have to be allocated first.
@x: the horizontal offset of the 'hotspot' of the cursor.
@y: the vertical offset of the 'hotspot' of the cursor.
@Returns: a new #GdkCursor.
<!-- ##### FUNCTION gdk_cursor_destroy ##### -->
<para>
Destroys a cursor, freeing any resources allocated for it.
</para>
@cursor: a #GdkCursor.

View File

@@ -1,187 +0,0 @@
<!-- ##### SECTION Title ##### -->
Drag and Drop
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_drag_get_selection ##### -->
<para>
</para>
@context:
@Returns:
<!-- ##### FUNCTION gdk_drag_abort ##### -->
<para>
</para>
@context:
@time:
<!-- ##### FUNCTION gdk_drop_reply ##### -->
<para>
</para>
@context:
@ok:
@time:
<!-- ##### FUNCTION gdk_drag_context_new ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_drag_drop ##### -->
<para>
</para>
@context:
@time:
<!-- ##### FUNCTION gdk_drag_find_window ##### -->
<para>
</para>
@context:
@drag_window:
@x_root:
@y_root:
@dest_window:
@protocol:
<!-- ##### FUNCTION gdk_drag_context_ref ##### -->
<para>
</para>
@context:
<!-- ##### FUNCTION gdk_drag_begin ##### -->
<para>
</para>
@window:
@targets:
@Returns:
<!-- # Unused Parameters # -->
@actions:
<!-- ##### FUNCTION gdk_drag_motion ##### -->
<para>
</para>
@context:
@dest_window:
@protocol:
@x_root:
@y_root:
@suggested_action:
@possible_actions:
@time:
@Returns:
<!-- # Unused Parameters # -->
@action:
<!-- ##### FUNCTION gdk_drop_finish ##### -->
<para>
</para>
@context:
@success:
@time:
<!-- ##### FUNCTION gdk_drag_get_protocol ##### -->
<para>
</para>
@xid:
@protocol:
@Returns:
<!-- ##### ENUM GdkDragProtocol ##### -->
<para>
</para>
@GDK_DRAG_PROTO_MOTIF:
@GDK_DRAG_PROTO_XDND:
@GDK_DRAG_PROTO_ROOTWIN:
@GDK_DRAG_PROTO_NONE:
<!-- ##### FUNCTION gdk_drag_context_unref ##### -->
<para>
</para>
@context:
<!-- ##### STRUCT GdkDragContext ##### -->
<para>
</para>
@protocol:
@is_source:
@source_window:
@dest_window:
@targets:
@actions:
@suggested_action:
@action:
@start_time:
<!-- ##### ENUM GdkDragAction ##### -->
<para>
</para>
@GDK_ACTION_DEFAULT:
@GDK_ACTION_COPY:
@GDK_ACTION_MOVE:
@GDK_ACTION_LINK:
@GDK_ACTION_PRIVATE:
@GDK_ACTION_ASK:
<!-- ##### FUNCTION gdk_drag_status ##### -->
<para>
</para>
@context:
@action:
@time:

View File

@@ -1,320 +0,0 @@
<!-- ##### SECTION Title ##### -->
Drawing Primitives
<!-- ##### SECTION Short_Description ##### -->
functions for drawing points, lines, arcs, and text.
<!-- ##### SECTION Long_Description ##### -->
<para>
These functions provide support for drawing points, lines, arcs and text
onto what are called 'drawables'. Drawables, as the name suggests, are things
which support drawing onto them, and are either #GdkWindow or #GdkPixmap
objects.
</para>
<para>
Many of the drawing operations take a #GdkGC argument, which represents a
graphics context. This #GdkGC contains a number of drawing attributes such
as foreground color, background color and line width, and is used to reduce
the number of arguments needed for each drawing operation. See the
<link linkend="gdk-Graphics-Contexts">Graphics Contexts</link> section for
more information.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### ENUM GdkFill ##### -->
<para>
Used to specify the way in which drawing operations are performed.
See gdk_gc_set_fill().
</para>
@GDK_SOLID: graphics are drawn in a solid color, usually the foreground color
of the #GdkGC.
@GDK_TILED: graphics are drawn using a tile pixmap. See gdk_gc_set_tile().
@GDK_STIPPLED: graphics are drawn with a stipple (a pixmap with a depth of 1).
Bits set in the stipple are drawn in the foreground color. Bits not set in the
stipple are left as they are. See gdk_gc_set_stipple().
@GDK_OPAQUE_STIPPLED: graphics are drawn with a stipple, as in @GDK_STIPPLED,
except that the bits not set in the stipple are drawn in the background color
instead of being left as they are. See gdk_gc_set_stipple().
<!-- ##### ENUM GdkFillRule ##### -->
<para>
The method for determining which pixels are included in a region, when
creating a #GdkRegion from a polygon.
The fill rule is only relevant for polygons which overlap themselves.
</para>
@GDK_EVEN_ODD_RULE: areas which are overlapped an odd number of times are
included in the region, while areas overlapped an even number of times are not.
@GDK_WINDING_RULE: overlapping areas are always included.
<!-- ##### ENUM GdkLineStyle ##### -->
<para>
Used to specify how lines are drawn. See gdk_gc_set_line_attributes().
</para>
@GDK_LINE_SOLID: lines are drawn in a solid color, the foreground color.
@GDK_LINE_ON_OFF_DASH: dashed lines are drawn, with the pixels between the
dashes left as they are. The #GdkCapStyle is applied to each end of the dashes.
@GDK_LINE_DOUBLE_DASH: dashed lines are drawn, alternating between the
foreground and background colors. The %GDK_CAP_BUTT style is used where
dashes and gaps meet.
<!-- ##### ENUM GdkCapStyle ##### -->
<para>
Used to specify how the ends of lines and dashes are drawn.
See gdk_gc_set_line_attributes().
</para>
@GDK_CAP_NOT_LAST: this is equivalent to %GDK_CAP_BUTT, except that for a line
width of 0 the final endpoint is not drawn.
@GDK_CAP_BUTT: the ends of the line are square with no projection beyond the
endpoint.
@GDK_CAP_ROUND: the ends of the line are rounded using a circular arc centered
on the endpoint. This is equivalent to %GDK_CAP_BUTT when the line width is 0.
@GDK_CAP_PROJECTING: the ends of the line are square, but project beyond the
endpoint to a distance of half the line width.
This is equivalent to %GDK_CAP_BUTT when the line width is 0.
<!-- ##### ENUM GdkJoinStyle ##### -->
<para>
Used to specify how the the joins between lines are drawn.
See gdk_gc_set_line_attributes().
</para>
@GDK_JOIN_MITER: the ends of the lines are extended to meet at a point.
If the angle between the lines is less than 11 degrees, %GDK_JOIN_BEVEL is
used instead.
@GDK_JOIN_ROUND: the ends of the lines are rounded with a circular arc
centered on the joinpoint, with a diameter equal to the line width.
@GDK_JOIN_BEVEL: the lines have %GDK_CAP_BUTT cap styles, with the triangular
notch filled.
<!-- ##### FUNCTION gdk_draw_point ##### -->
<para>
Draws a point, using the foreground color and other attributes of the #GdkGC.
</para>
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
@gc: a #GdkGC.
@x: the x coordinate of the point.
@y: the y coordinate of the point.
<!-- ##### FUNCTION gdk_draw_line ##### -->
<para>
Draws a line, using the foreground color and other attributes of the #GdkGC.
</para>
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
@gc: a #GdkGC.
@x1: the x coordinate of the start point.
@y1: the y coordinate of the start point.
@x2: the x coordinate of the end point.
@y2: the y coordinate of the end point.
<!-- ##### FUNCTION gdk_draw_rectangle ##### -->
<para>
Draws a rectangular outline or filled rectangle, using the foreground color
and other attributes of the #GdkGC.
</para>
<note>
<para>
A rectangle drawn filled is 1 pixel smaller in both dimensions than a rectangle
outlined. Calling gdk_draw_rectangle (window, gc, TRUE, 0, 0, 20, 20) results
in a filled rectangle 20 pixels wide and 20 pixels high. Calling
gdk_draw_rectangle (window, gc, FALSE, 0, 0, 20, 20) results in an outlined
rectangle with corners at (0, 0), (0, 20), (20, 20), and (20, 0), which
makes it 21 pixels wide and 21 pixels high.
</para>
</note>
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
@gc: a #GdkGC.
@filled: TRUE if the rectangle should be filled.
@x: the x coordinate of the left edge of the rectangle.
@y: the y coordinate of the top edge of the rectangle.
@width: the width of the rectangle.
@height: the height of the rectangle.
<!-- ##### FUNCTION gdk_draw_arc ##### -->
<para>
Draws an arc or a filled 'pie slice'. The arc is defined by the bounding
rectangle of the entire ellipse, and the start and end angles of the part of
the ellipse to be drawn.
</para>
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
@gc: a #GdkGC.
@filled: TRUE if the arc should be filled, producing a 'pie slice'.
@x: the x coordinate of the left edge of the bounding rectangle.
@y: the y coordinate of the top edge of the bounding rectangle.
@width: the width of the bounding rectangle.
@height: the height of the bounding rectangle.
@angle1: the start angle of the arc, relative to the 3 o'clock position,
counter-clockwise, in 1/64ths of a degree.
@angle2: the end angle of the arc, in the same units as @angle1.
<!-- ##### FUNCTION gdk_draw_polygon ##### -->
<para>
Draws an outlined or filled polygon.
</para>
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
@gc: a #GdkGC.
@filled: TRUE if the polygon should be filled. The polygon is closed
automatically, connecting the last point to the first point if necessary.
@points: an array of #GdkPoint structures specifying the points making up the
polygon.
@npoints: the number of points.
<!-- ##### FUNCTION gdk_draw_string ##### -->
<para>
Draws a string of characters in the given font or fontset.
</para>
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
@font: a #GdkFont.
@gc: a #GdkGC.
@x: the x coordinate of the left edge of the text.
@y: the y coordinate of the baseline of the text.
@string: the string of characters to draw.
<!-- ##### FUNCTION gdk_draw_text ##### -->
<para>
Draws a number of characters in the given font or fontset.
</para>
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
@font: a #GdkFont.
@gc: a #GdkGC.
@x: the x coordinate of the left edge of the text.
@y: the y coordinate of the baseline of the text.
@text: the characters to draw.
@text_length: the number of characters of @text to draw.
<!-- ##### FUNCTION gdk_draw_text_wc ##### -->
<para>
Draws a number of wide characters using the given font of fontset.
If the font is a 1-byte font, the string is converted into 1-byte characters
(discarding the high bytes) before output.
</para>
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
@font: a #GdkFont.
@gc: a #GdkGC.
@x: the x coordinate of the left edge of the text.
@y: the y coordinate of the baseline of the text.
@text: the wide characters to draw.
@text_length: the number of characters to draw.
<!-- ##### FUNCTION gdk_draw_pixmap ##### -->
<para>
Draws a pixmap, or a part of a pixmap, onto another drawable.
</para>
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
@gc: a #GdkGC.
@src: the source #GdkPixmap to draw.
@xsrc: the left edge of the source rectangle within @src.
@ysrc: the top of the source rectangle within @src.
@xdest: the x coordinate of the destination within @drawable.
@ydest: the y coordinate of the destination within @drawable.
@width: the width of the area to be copied, or -1 to make the area extend to
the right edge of the source pixmap.
@height: the height of the area to be copied, or -1 to make the area extend
to the bottom edge of the source pixmap.
<!-- ##### FUNCTION gdk_draw_bitmap ##### -->
<para>
</para>
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
@gc:
@src:
@xsrc:
@ysrc:
@xdest:
@ydest:
@width:
@height:
<!-- ##### FUNCTION gdk_draw_image ##### -->
<para>
</para>
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
@gc:
@image:
@xsrc:
@ysrc:
@xdest:
@ydest:
@width:
@height:
<!-- ##### FUNCTION gdk_draw_points ##### -->
<para>
Draws a number of points, using the foreground color and other attributes of
the #GdkGC.
</para>
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
@gc: a #GdkGC.
@points: an array of #GdkPoint structures.
@npoints: the number of points to be drawn.
<!-- ##### FUNCTION gdk_draw_segments ##### -->
<para>
</para>
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
@gc:
@segs:
@nsegs:
<!-- ##### STRUCT GdkSegment ##### -->
<para>
</para>
@x1:
@y1:
@x2:
@y2:
<!-- ##### FUNCTION gdk_draw_lines ##### -->
<para>
Draws a series of lines connecting the given points.
The way in which joins between lines are draw is determined by the
#GdkCapStyle value in the #GdkGC. This can be set with
gdk_gc_set_line_attributes().
</para>
@drawable: a #GdkDrawable (a #GdkWindow or a #GdkPixmap).
@gc: a #GdkGC.
@points: an array of #GdkPoint structures specifying the endpoints of the
lines.
@npoints: the number of endpoints.

View File

@@ -1,296 +0,0 @@
<!-- ##### SECTION Title ##### -->
Event Structures
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<note>
<para>
A common mistake is to forget to set the event mask of a widget so that the
required events are received. See gtk_widget_set_events().
</para>
</note>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GdkEventAny ##### -->
<para>
Contains the fields which are common to all event structs.
Any event can safely be cast to a #GdkEventAny to access these fields.
</para>
@type: the type of the event.
@window: the window which received the event.
@send_event: TRUE if the event was sent explicitly (e.g. using XSendEvent).
<!-- ##### STRUCT GdkEventExpose ##### -->
<para>
</para>
@type:
@window:
@send_event:
@area:
@count:
<!-- ##### STRUCT GdkEventNoExpose ##### -->
<para>
</para>
@type:
@window:
@send_event:
<!-- ##### STRUCT GdkEventVisibility ##### -->
<para>
</para>
@type:
@window:
@send_event:
@state:
<!-- ##### ENUM GdkVisibilityState ##### -->
<para>
</para>
@GDK_VISIBILITY_UNOBSCURED:
@GDK_VISIBILITY_PARTIAL:
@GDK_VISIBILITY_FULLY_OBSCURED:
<!-- ##### STRUCT GdkEventMotion ##### -->
<para>
</para>
@type:
@window:
@send_event:
@time:
@x:
@y:
@pressure:
@xtilt:
@ytilt:
@state:
@is_hint:
@source:
@deviceid:
@x_root:
@y_root:
<!-- ##### STRUCT GdkEventButton ##### -->
<para>
Used for button press and button release events. The
<structfield>type</structfield> field will be one of %GDK_BUTTON_PRESS,
%GDK_2BUTTON_PRESS, %GDK_3BUTTON_PRESS, and %GDK_BUTTON_RELEASE.
</para>
<para>
Double and treble-clicks result in a sequence of events being received.
For double-clicks the order of events will be:
<orderedlist>
<listitem><para>%GDK_BUTTON_PRESS</para></listitem>
<listitem><para>%GDK_BUTTON_RELEASE</para></listitem>
<listitem><para>%GDK_BUTTON_PRESS</para></listitem>
<listitem><para>%GDK_2BUTTON_PRESS</para></listitem>
<listitem><para>%GDK_BUTTON_RELEASE</para></listitem>
</orderedlist>
Note that the first click is received just like a normal
button press, while the second click results in a %GDK_2BUTTON_PRESS being
received just after the %GDK_BUTTON_PRESS.
</para>
<para>
Treble-clicks are very similar to double-clicks, except that %GDK_3BUTTON_PRESS
is inserted after the third click. The order of the events is:
<orderedlist>
<listitem><para>%GDK_BUTTON_PRESS</para></listitem>
<listitem><para>%GDK_BUTTON_RELEASE</para></listitem>
<listitem><para>%GDK_BUTTON_PRESS</para></listitem>
<listitem><para>%GDK_2BUTTON_PRESS</para></listitem>
<listitem><para>%GDK_BUTTON_RELEASE</para></listitem>
<listitem><para>%GDK_BUTTON_PRESS</para></listitem>
<listitem><para>%GDK_3BUTTON_PRESS</para></listitem>
<listitem><para>%GDK_BUTTON_RELEASE</para></listitem>
</orderedlist>
</para>
@type: the type of the event.
@window: the window which received the event.
@send_event: TRUE if the event was sent explicitly (e.g. using XSendEvent).
@time: the time of the event in milliseconds. This wraps around roughly every
50 days.
@x: the x coordinate of the mouse relative to the window.
@y: the y coordinate of the mouse relative to the window.
@pressure: the pressure of the button press, intended for input devices such
as graphics tablets. It defaults to 0.5.
@xtilt:
@ytilt:
@state:
@button:
@source:
@deviceid:
@x_root: the x coordinate of the mouse relative to the root of the screen.
@y_root: the y coordinate of the mouse relative to the root of the screen.
<!-- ##### STRUCT GdkEventKey ##### -->
<para>
</para>
@type:
@window:
@send_event:
@time:
@state:
@keyval:
@length:
@string:
<!-- ##### STRUCT GdkEventCrossing ##### -->
<para>
</para>
@type:
@window:
@send_event:
@subwindow:
@time:
@x:
@y:
@x_root:
@y_root:
@mode:
@detail:
@focus:
@state:
<!-- ##### ENUM GdkCrossingMode ##### -->
<para>
</para>
@GDK_CROSSING_NORMAL:
@GDK_CROSSING_GRAB:
@GDK_CROSSING_UNGRAB:
<!-- ##### ENUM GdkNotifyType ##### -->
<para>
</para>
@GDK_NOTIFY_ANCESTOR:
@GDK_NOTIFY_VIRTUAL:
@GDK_NOTIFY_INFERIOR:
@GDK_NOTIFY_NONLINEAR:
@GDK_NOTIFY_NONLINEAR_VIRTUAL:
@GDK_NOTIFY_UNKNOWN:
<!-- ##### STRUCT GdkEventFocus ##### -->
<para>
</para>
@type:
@window:
@send_event:
@in:
<!-- ##### STRUCT GdkEventConfigure ##### -->
<para>
</para>
@type:
@window:
@send_event:
@x:
@y:
@width:
@height:
<!-- ##### STRUCT GdkEventProperty ##### -->
<para>
</para>
@type:
@window:
@send_event:
@atom:
@time:
@state:
<!-- ##### STRUCT GdkEventSelection ##### -->
<para>
</para>
@type:
@window:
@send_event:
@selection:
@target:
@property:
@requestor:
@time:
<!-- ##### STRUCT GdkEventProximity ##### -->
<para>
</para>
@type:
@window:
@send_event:
@time:
@source:
@deviceid:
<!-- ##### STRUCT GdkEventClient ##### -->
<para>
</para>
@type:
@window:
@send_event:
@message_type:
@data_format:
<!-- ##### STRUCT GdkEventDND ##### -->
<para>
</para>
@type:
@window:
@send_event:
@context:
@time:
@x_root:
@y_root:
<!-- ##### UNION GdkEvent ##### -->
<para>
</para>
<!-- ##### TYPEDEF GdkXEvent ##### -->
<para>
</para>

View File

@@ -1,185 +0,0 @@
<!-- ##### SECTION Title ##### -->
Events
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### ENUM GdkEventType ##### -->
<para>
</para>
@GDK_NOTHING:
@GDK_DELETE:
@GDK_DESTROY:
@GDK_EXPOSE:
@GDK_MOTION_NOTIFY:
@GDK_BUTTON_PRESS:
@GDK_2BUTTON_PRESS:
@GDK_3BUTTON_PRESS:
@GDK_BUTTON_RELEASE:
@GDK_KEY_PRESS:
@GDK_KEY_RELEASE:
@GDK_ENTER_NOTIFY:
@GDK_LEAVE_NOTIFY:
@GDK_FOCUS_CHANGE:
@GDK_CONFIGURE:
@GDK_MAP:
@GDK_UNMAP:
@GDK_PROPERTY_NOTIFY:
@GDK_SELECTION_CLEAR:
@GDK_SELECTION_REQUEST:
@GDK_SELECTION_NOTIFY:
@GDK_PROXIMITY_IN:
@GDK_PROXIMITY_OUT:
@GDK_DRAG_ENTER:
@GDK_DRAG_LEAVE:
@GDK_DRAG_MOTION:
@GDK_DRAG_STATUS:
@GDK_DROP_START:
@GDK_DROP_FINISHED:
@GDK_CLIENT_EVENT:
@GDK_VISIBILITY_NOTIFY:
@GDK_NO_EXPOSE:
<!-- ##### ENUM GdkEventMask ##### -->
<para>
</para>
@GDK_EXPOSURE_MASK:
@GDK_POINTER_MOTION_MASK:
@GDK_POINTER_MOTION_HINT_MASK:
@GDK_BUTTON_MOTION_MASK:
@GDK_BUTTON1_MOTION_MASK:
@GDK_BUTTON2_MOTION_MASK:
@GDK_BUTTON3_MOTION_MASK:
@GDK_BUTTON_PRESS_MASK:
@GDK_BUTTON_RELEASE_MASK:
@GDK_KEY_PRESS_MASK:
@GDK_KEY_RELEASE_MASK:
@GDK_ENTER_NOTIFY_MASK:
@GDK_LEAVE_NOTIFY_MASK:
@GDK_FOCUS_CHANGE_MASK:
@GDK_STRUCTURE_MASK:
@GDK_PROPERTY_CHANGE_MASK:
@GDK_VISIBILITY_NOTIFY_MASK:
@GDK_PROXIMITY_IN_MASK:
@GDK_PROXIMITY_OUT_MASK:
@GDK_SUBSTRUCTURE_MASK:
@GDK_ALL_EVENTS_MASK:
<!-- ##### FUNCTION gdk_events_pending ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_event_peek ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_event_get ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_event_get_graphics_expose ##### -->
<para>
</para>
@window:
@Returns:
<!-- ##### FUNCTION gdk_event_put ##### -->
<para>
</para>
@event:
<!-- ##### FUNCTION gdk_event_copy ##### -->
<para>
</para>
@event:
@Returns:
<!-- ##### FUNCTION gdk_event_free ##### -->
<para>
</para>
@event:
<!-- ##### FUNCTION gdk_event_get_time ##### -->
<para>
</para>
@event:
@Returns:
<!-- ##### FUNCTION gdk_event_handler_set ##### -->
<para>
</para>
@func:
@data:
@notify:
<!-- ##### FUNCTION gdk_event_send_client_message ##### -->
<para>
</para>
@event:
@xid:
@Returns:
<!-- ##### USER_FUNCTION GdkEventFunc ##### -->
<para>
</para>
@event:
@data:
<!-- ##### FUNCTION gdk_event_send_clientmessage_toall ##### -->
<para>
</para>
@event:

View File

@@ -1,581 +0,0 @@
<!-- ##### SECTION Title ##### -->
Fonts
<!-- ##### SECTION Short_Description ##### -->
loading and manipulating fonts
<!-- ##### SECTION Long_Description ##### -->
<para>
The GdkFont data type represents a font for drawing on
the screen. These functions provide support for
loading fonts, and also for determining the dimensions
of characters and strings when drawn with a particular
font.
</para>
<para>
Fonts in X are specified by a
<firstterm>X Logical Font Description</firstterm>.
The following description is considerably simplified.
For definitive information about XLFD's see the
X reference documentation. A X Logical Font Description (XLFD)
consists of a sequence of fields separated (and surrounded by) '-'
characters. For example, Adobe Helvetica Bold 12 pt, has the
full description:
<programlisting>
"-adobe-helvetica-bold-r-normal--12-120-75-75-p-70-iso8859-1"
</programlisting>
</para>
<para>
The fields in the XLFD are:
<informaltable pgwide=1 frame="none">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>Foundry</entry>
<entry>the company or organization where the font originated.</entry>
</row>
<row>
<entry>Family</entry>
<entry>the font family (a group of related font designs).</entry>
</row>
<row>
<entry>Weight</entry>
<entry>A name for the font's typographic weight
For example, 'bold' or 'medium').</entry>
</row>
<row>
<entry>Slant</entry>
<entry>The slant of the font. Common values are 'R' for Roman,
'I' for italoc, and 'O' for oblique.</entry>
</row>
<row>
<entry>Set Width</entry>
<entry>A name for the width of the font. For example,
'normal' or 'condensed'.</entry>
</row>
<row>
<entry>Add Style</entry>
<entry>Additional information to distinguish a font from
other fonts of the same family.</entry>
</row>
<row>
<entry>Pixel Size</entry>
<entry>The body size of the font in pixels.</entry>
</row>
<row>
<entry>Point Size</entry>
<entry>The body size of the font in 10ths of a point.
(A <firstterm>point</firstterm> is 1/72.27 inch) </entry>
</row>
<row>
<entry>Resolution X</entry>
<entry>The horizontal resolution that the font was designed for.</entry>
</row>
<row>
<entry>Resolution Y</entry>
<entry>The vertical resolution that the font was designed for .</entry>
</row>
<row>
<entry>Spacing</entry>
<entry>The type of spacing for the font - can be 'p' for proportional,
'm' for monospaced or 'c' for charcell.</entry>
</row>
<row>
<entry>Average Width</entry>
<entry>The average width of a glyph in the font. For monospaced
and charcell fonts, all glyphs in the font have this width</entry>
</row>
<row>
<entry>Charset Registry</entry>
<entry>The registration authority that owns the encoding for
the font. Together with the Charset Encoding field, this
defines the character set for the font.</entry>
</row>
<row>
<entry>Charset Encoding</entry>
<entry>An identifier for the particular character set encoding.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
<para>
When specifying a font via a X logical Font Description,
'*' can be used as a wildcard to match any portion of
the XLFD. For instance, the above example could
also be specified as
<programlisting>
"-*-helvetica-bold-r-normal--*-120-*-*-*-*-iso8859-1"
</programlisting>
It is generally a good idea to use wildcards for any
portion of the XLFD that your program does not care
about specifically, since that will improve the
chances of finding a matching font.
</para>
<para>
A <firstterm>fontset</firstterm> is a list of fonts
that is used for drawing international text that may
contain characters from a number of different character
sets. It is represented by a list of XLFD's.
</para>
<para>
The font for a given character set is determined by going
through the list of XLFD's in order. For each one, if
the registry and and encoding fields match the desired
character set, then that font is used, otherwise if
the XLFD contains wild-cards for the registry and encoding
fields, the registry and encoding for the desired character
set are subsituted in and a lookup is done. If a match is found
that font is used. Otherwise, processing continues
on to the next font in the list.
</para>
<para>
The functions for determining the metrics of a string
come in several varieties that can take a number
of forms of string input:
<variablelist>
<varlistentry>
<term>8-bit string</term>
<listitem><para>
When using functions like gdk_string_width() that
take a <type>gchar *</type>, if the font is of type
%GDK_FONT_FONT and is an 8-bit font, then each
<type>gchar</type> indexes the glyphs in the font directly.
</para></listitem>
</varlistentry>
<varlistentry>
<term>16-bit string</term>
<listitem><para>
For functions taking a <type>gchar *</type>, if the
font is of type %GDK_FONT_FONT, and is a 16-bit
font, then the <type>gchar *</type> argument is
interpreted as a <type>guint16 *</type> cast to
a <type>gchar *</type> and each <type>guint16</type>
indexes the glyphs in the font directly.
</para></listitem>
</varlistentry>
<varlistentry>
<term>Multibyte string</term>
<listitem><para>
For functions taking a <type>gchar *</type>, if the
font is of type %GDK_FONT_FONTSET, then the input
string is interpreted as a <firstterm>multibyte</firstterm>
encoded according to the current locale. (A multibyte
string is one in which each character may consist
of one or more bytes, with different lengths for different
characters in the string). They can be converted to and
from wide character strings (see below) using
gdk_wcstombs() and gdk_mbstowcs().) The string will
be rendered using one or more different fonts from
the fontset.
</para></listitem>
</varlistentry>
<varlistentry>
<term>Wide character string</term>
<listitem><para>
For a number of the text-measuring functions, GTK+
provides a variant (such as gdk_text_width_wc()) which
takes a <type>GdkWChar *</type> instead of a
<type>gchar *</type>. The input is then taken to
be a wide character string in the encoding of the
current locale. (A wide character string is a string
in which each character consists of several bytes,
and the width of each character in the string is
constant.)
</para></listitem>
</varlistentry>
</variablelist>
</para>
<para>
GDK provides functions to determine a number of different
measurements (metrics) for a given string. (Need diagram
here).
<variablelist>
<varlistentry>
<term>ascent</term>
<listitem><para>
The vertical distance from the origin of the drawing
opereration to the top of the drawn character.
</para></listitem>
</varlistentry>
<varlistentry>
<term>descent</term>
<listitem><para>
The vertical distance from the origin of the drawing
opereration to the bottom of the drawn character.
</para></listitem>
</varlistentry>
<varlistentry>
<term>left bearing</term>
<listitem><para>
The horizontal distance from the origin of the drawing
operation to the left-most part of the drawn character.
</para></listitem>
</varlistentry>
<varlistentry>
<term>right bearing</term>
<listitem><para>
The horizontal distance from the origin of the drawing
operation to the right-most part of the drawn character.
</para></listitem>
</varlistentry>
<varlistentry>
<term>width bearing</term>
<listitem><para>
The horizontal distance from the origin of the drawing
operation to the correct origin for drawing another
string to follow the current one. Depending on the
font, this could be greater than or less than the
right bearing.
</para></listitem>
</varlistentry>
</variablelist>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GdkFont ##### -->
<para>
The GdkFont structure represents a font or fontset. It
contains the following public fields. A new GdkFont
structure is returned by gdk_font_load() or gdk_fontset_load(),
and is reference counted with gdk_font_ref() and gdk_font_unref()
<informaltable pgwide=1 frame="none" role="struct">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry><structfield>type</structfield></entry>
<entry>a value of type #GdkFontType which indicates
whether this font is a single font or a fontset.</entry>
</row>
<row>
<entry><structfield>ascent</structfield></entry>
<entry>the maximum distance that the font, when drawn,
ascends above the baseline.</entry>
</row>
<row>
<entry><structfield>descent</structfield></entry>
<entry>the maximum distance that the font, when drawn,
descends below the baseline.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@type:
@ascent:
@descent:
<!-- ##### ENUM GdkFontType ##### -->
<para>
Indicates the type of a font. The possible values
are currently:
<informaltable pgwide=1 frame="none" role="enum">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>GDK_FONT_FONT</entry>
<entry>the font is a single font.</entry>
</row>
<row>
<entry>GDK_FONT_FONT</entry>
<entry>the font is a fontset.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@GDK_FONT_FONT:
@GDK_FONT_FONTSET:
<!-- ##### FUNCTION gdk_font_load ##### -->
<para>
Loads a font.
</para>
<para>
Currently, this function will always return a new
font, however, in the future, it may be changed to
look up the font in a cache. You should make no
assumptions about the initial reference count.
</para>
@font_name: a XLFD describing the font to load.
@Returns: a #GdkFont, or NULL if the font could not be loaded.
<!-- ##### FUNCTION gdk_fontset_load ##### -->
<para>
Loads a fontset.
</para>
<para>
Currently this function will always return a new
font, however, in the future, it may be changed to
look up the font in a cache. You should make no
assumptions about the initial reference count.
</para>
@fontset_name: a comma-separated list of XLFDs describing
the component fonts of the fontset to load.
@Returns: a #GdkFont, or NULL if the fontset could not be loaded.
<!-- ##### FUNCTION gdk_font_ref ##### -->
<para>
Increase the reference count of a count by one.
</para>
@font: a #GdkFont
@Returns: @font
<!-- ##### FUNCTION gdk_font_unref ##### -->
<para>
Decrease the reference count of a count by one.
If the result is zero, destroys the font.
</para>
@font: a #GdkFont
<!-- ##### FUNCTION gdk_font_id ##### -->
<para>
Returns the X Font ID for the given font.
</para>
@font: a #GdkFont.
@Returns: the numeric X Font ID
<!-- ##### FUNCTION gdk_font_equal ##### -->
<para>
Compares two fonts for equality. Single fonts compare equal
if they have the same X font ID. This operation does
not currently work correctly for fontsets.
</para>
@fonta: a #GdkFont.
@fontb: another #GdkFont.
@Returns: %TRUE if the fonts are equal.
<!-- ##### FUNCTION gdk_string_extents ##### -->
<para>
Returns the metrics of a NULL-terminated string.
</para>
@font: a #GdkFont.
@string: the NULL-terminated string to measure.
@lbearing: the left bearing of the string.
@rbearing: the right bearing of the string.
@width: the width of the string.
@ascent: the ascent of the string.
@descent: the descent of the string.
<!-- ##### FUNCTION gdk_text_extents ##### -->
<para>
Returns the metrics of a string.
</para>
@font: a #GdkFont
@text: the text to measure
@text_length: the length of the text in bytes. (If the
font is a 16-bit font, this is twice the length
of the text in characters.)
@lbearing: the left bearing of the string.
@rbearing: the right bearing of the string.
@width: the width of the string.
@ascent: the ascent of the string.
@descent: the descent of the string.
<!-- ##### FUNCTION gdk_text_extents_wc ##### -->
<para>
Returns the metrics of a string of wide characters.
</para>
@font: a #GdkFont
@text: the text to measure.
@text_length: the length of the text in character.
@lbearing: the left bearing of the string.
@rbearing: the right bearing of the string.
@width: the width of the string.
@ascent: the ascent of the string.
@descent: the descent of the string.
<!-- ##### FUNCTION gdk_string_width ##### -->
<para>
Determine the width of a NULL-terminated string.
(The distance from the origin of the string to the
point where the next string in a sequence of strings
should be drawn)
</para>
@font: a #GdkFont
@string: the NULL-terminated string to measure
@Returns: the width of the string in pixels.
<!-- ##### FUNCTION gdk_text_width ##### -->
<para>
Determine the width of a given string.
</para>
@font: a #GdkFont
@text: the text to measure.
@text_length: the length of the text in bytes.
@Returns: the width of the string in pixels.
<!-- ##### FUNCTION gdk_text_width_wc ##### -->
<para>
Determine the width of a given wide-character string.
</para>
@font: a #GdkFont
@text: the text to measure.
@text_length: the length of the text in characters.
@Returns: the width of the string in pixels.
<!-- ##### FUNCTION gdk_char_width ##### -->
<para>
Determine the width of a given character.
</para>
@font: a #GdkFont
@character: the character to measure.
@Returns: the width of the character in pixels.
<!-- ##### FUNCTION gdk_char_width_wc ##### -->
<para>
Determine the width of a given wide character. (Encoded
in the wide-character encoding of the current locale).
</para>
@font: a #GdkFont
@character: the character to measure.
@Returns: the width of the character in pixels.
<!-- ##### FUNCTION gdk_string_measure ##### -->
<para>
Determines the distance from the origin to the rightmost
portion of a NULL-terminated string when drawn. This is not the
correct value for determining the origin of the next
portion when drawing text in multiple pieces.
See gdk_string_width().
</para>
@font: a #GdkFont
@string: the NULL-terminated string to measure.
@Returns: the right bearing of the string in pixels.
<!-- ##### FUNCTION gdk_text_measure ##### -->
<para>
Determines the distance from the origin to the rightmost
portion of a string when drawn. This is not the
correct value for determining the origin of the next
portion when drawing text in multiple pieces.
See gdk_text_width().
</para>
@font: a #GdkFont
@text: the text to measure.
@text_length: the length of the text in bytes.
@Returns: the right bearing of the string in pixels.
<!-- ##### FUNCTION gdk_char_measure ##### -->
<para>
Determines the distance from the origin to the rightmost
portion of a character when drawn. This is not the
correct value for determining the origin of the next
portion when drawing text in multiple pieces.
</para>
@font: a #GdkFont
@character: the character to measure.
@Returns: the right bearing of the character in pixels.
<!-- ##### FUNCTION gdk_string_height ##### -->
<para>
Determines the total height of a given NULL-terminated
string. This value is not generally useful, because you
cannot determine how this total height will be drawn in
relation to the baseline. See gdk_string_extents().
</para>
@font: a #GdkFont
@string: the NULL-terminated string to measure.
@Returns: the height of the string in pixels.
<!-- ##### FUNCTION gdk_text_height ##### -->
<para>
Determines the total height of a given string.
This value is not generally useful, because you cannot
determine how this total height will be drawn in
relation to the baseline. See gdk_text_extents().
</para>
@font: a #GdkFont
@text: the text to measure.
@text_length: the length of the text in bytes.
@Returns: the height of the string in pixels.
<!-- ##### FUNCTION gdk_char_height ##### -->
<para>
Determines the total height of a given character.
This value is not generally useful, because you cannot
determine how this total height will be drawn in
relation to the baseline. See gdk_text_extents().
</para>
@font: a #GdkFont
@character: the character to measure.
@Returns: the height of the character in pixels.

View File

@@ -1,637 +0,0 @@
<!-- ##### SECTION Title ##### -->
Graphics Contexts
<!-- ##### SECTION Short_Description ##### -->
objects to encapsulate drawing properties.
<!-- ##### SECTION Long_Description ##### -->
<para>
All drawing operations in GDK take a
<firstterm>graphics context</firstterm> (GC) argument.
A graphics context encapsulates information about
the way things are drawn, such as the foreground
color or line width. By using graphics contexts,
the number of arguments to each drawing call is
greatly reduced, and communication overhead is
minimized, since identical arguments do not need
to be passed repeatedly.
</para>
<para>
Most values of a graphics context can be set at
creation time by using gdk_gc_new_with_values(),
or can be set one-by-one using functions such
as gdk_gc_set_foreground(). A few of the values
in the GC, such as the dash pattern, can only
be set by the latter method.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GdkGC ##### -->
<para>
The #GdkGC structure represents a graphics context.
It is an opaque structure with no user-visible
elements.
</para>
@dummy_var:
<!-- ##### STRUCT GdkGCValues ##### -->
<para>
The #GdkGCValues structure holds a set of values used
to create or modify a graphics context.
<informaltable pgwide=1 frame="none" role="struct">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>#GdkColor foreground;</entry>
<entry>the foreground color.</entry>
</row>
<row>
<entry>#GdkColor background;</entry>
<entry>the background color.</entry>
</row>
<row>
<entry>#GdkFont *font;</entry>
<entry>the default font..</entry>
</row>
<row>
<entry>#GdkFunction function;</entry>
<entry>the bitwise operation used when drawing.</entry>
</row>
<row>
<entry>#GdkFill fill;</entry>
<entry>the fill style.</entry>
</row>
<row>
<entry>#GdkPixmap *tile;</entry>
<entry>the tile pixmap.</entry>
</row>
<row>
<entry>#GdkPixmap *stipple;</entry>
<entry>the stipple bitmap.</entry>
</row>
<row>
<entry>#GdkPixmap *clip_mask;</entry>
<entry>the clip mask bitmap.</entry>
</row>
<row>
<entry>#GdkSubwindowMode subwindow_mode;</entry>
<entry>the subwindow mode.</entry>
</row>
<row>
<entry>#gint ts_x_origin;</entry>
<entry>the x origin of the tile or stipple.</entry>
</row>
<row>
<entry>#gint ts_y_origin;</entry>
<entry>the y origin of the tile or stipple.</entry>
</row>
<row>
<entry>#gint clip_x_origin;</entry>
<entry>the x origin of the clip mask.</entry>
</row>
<row>
<entry>#gint clip_y_origin;</entry>
<entry>the y origin of the clip mask.</entry>
</row>
<row>
<entry>#gint graphics_exposures;</entry>
<entry>whether graphics exposures are enabled.</entry>
</row>
<row>
<entry>#gint line_width;</entry>
<entry>the line width</entry>
</row>
<row>
<entry>#GdkLineStyle line_style;</entry>
<entry>the way dashed lines are drawn</entry>
</row>
<row>
<entry>#GdkCapStyle cap_style;</entry>
<entry>the way the ends of lines are drawn</entry>
</row>
<row>
<entry>#GdkJoinStyle join_style;</entry>
<entry>the way joins between lines are drawn</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@foreground:
@background:
@font:
@function:
@fill:
@tile:
@stipple:
@clip_mask:
@subwindow_mode:
@ts_x_origin:
@ts_y_origin:
@clip_x_origin:
@clip_y_origin:
@graphics_exposures:
@line_width:
@line_style:
@cap_style:
@join_style:
<!-- ##### ENUM GdkGCValuesMask ##### -->
<para>
A set of bit flags used to indicate which fields
#GdkGCValues structure are set.
</para>
@GDK_GC_FOREGROUND:
@GDK_GC_BACKGROUND:
@GDK_GC_FONT:
@GDK_GC_FUNCTION:
@GDK_GC_FILL:
@GDK_GC_TILE:
@GDK_GC_STIPPLE:
@GDK_GC_CLIP_MASK:
@GDK_GC_SUBWINDOW:
@GDK_GC_TS_X_ORIGIN:
@GDK_GC_TS_Y_ORIGIN:
@GDK_GC_CLIP_X_ORIGIN:
@GDK_GC_CLIP_Y_ORIGIN:
@GDK_GC_EXPOSURES:
@GDK_GC_LINE_WIDTH:
@GDK_GC_LINE_STYLE:
@GDK_GC_CAP_STYLE:
@GDK_GC_JOIN_STYLE:
<!-- ##### ENUM GdkFill ##### -->
<para>
Determines how primitives are drawn.
<informaltable pgwide=1 frame="none" role="enum">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>GDK_SOLID</entry>
<entry>draw with the foreground color.</entry>
</row>
<row>
<entry>GDK_TILED</entry>
<entry>draw with a tiled pixmap.</entry>
</row>
<row>
<entry>GDK_STIPPLED</entry>
<entry>draw using the stipple bitmap. Pixels corresponding
to bits in the stipple bitmap that are set will be drawn in the
foreground color; pixels corresponding to bits that are
not set will be left untouched.</entry>
</row>
<row>
<entry>GDK_OPAQUE_STIPPLED</entry>
<entry>draw using the stipple bitmap. Pixels corresponding
to bits in the stipple bitmap that are set will be drawn in the
foreground color; pixels corresponding to bits that are
not set will be drawn with the background color.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@GDK_SOLID:
@GDK_TILED:
@GDK_STIPPLED:
@GDK_OPAQUE_STIPPLED:
<!-- ##### ENUM GdkFunction ##### -->
<para>
Determines how the bit values for the source pixels are combined with
the bit values for destination pixels to produce the final result. The
sixteen values here correspond to the 16 different possible 2x2 truth
tables. Only a couple of these values are usually useful; for colored
images, only %GDK_COPY, %GDK_XOR and %GDK_INVERT are generally
useful. For bitmaps, %GDK_AND and %GDK_OR are also useful.
</para>
@GDK_COPY:
@GDK_INVERT:
@GDK_XOR:
@GDK_CLEAR:
@GDK_AND:
@GDK_AND_REVERSE:
@GDK_AND_INVERT:
@GDK_NOOP:
@GDK_OR:
@GDK_EQUIV:
@GDK_OR_REVERSE:
@GDK_COPY_INVERT:
@GDK_OR_INVERT:
@GDK_NAND:
@GDK_SET:
<!-- ##### ENUM GdkLineStyle ##### -->
<para>
Determines how lines are drawn.
<informaltable pgwide=1 frame="none" role="enum">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>GDK_LINE_SOLID</entry>
<entry>lines are drawn solid.</entry>
</row>
<row>
<entry>GDK_LINE_ON_OFF_DASH</entry>
<entry>even segments are drawn; odd segments are not drawn.</entry>
</row>
<row>
<entry>GDK_LINE_DOUBLE_DASH</entry>
<entry>even segments are normally. Odd segments are drawn
in the background color if the fill style is %GDK_SOLID,
or in the background color masked by the stipple if the
fill style is %GDK_STIPPLED.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@GDK_LINE_SOLID:
@GDK_LINE_ON_OFF_DASH:
@GDK_LINE_DOUBLE_DASH:
<!-- ##### ENUM GdkCapStyle ##### -->
<para>
Determines how the end of lines are drawn.
<informaltable pgwide=1 frame="none" role="struct">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>GDK_CAP_NOT_LAST</entry>
<entry>the same as %GDK_CAP_BUTT for lines of non-zero width.
for zero width lines, the final point on the line
will not be drawn.</entry>
</row>
<row>
<entry>GDK_CAP_BUTT</entry>
<entry>the ends of the lines are drawn squared off and extending
to the coordinates of the end point.</entry>
</row>
<row>
<entry>GDK_CAP_ROUND</entry>
<entry>the ends of the lines are drawn as semicircles with the
diameter equal to the line width and centered at the
end point.</entry>
</row>
<row>
<entry>GDK_CAP_PROJECTING</entry>
<entry>the ends of the lines are drawn squared off and extending
half the width of the line beyond the end point.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@GDK_CAP_NOT_LAST:
@GDK_CAP_BUTT:
@GDK_CAP_ROUND:
@GDK_CAP_PROJECTING:
<!-- ##### ENUM GdkJoinStyle ##### -->
<para>
Determines how the joins between segments of a polygon are drawn.
<informaltable pgwide=1 frame="none" role="struct">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>GDK_JOIN_MITER</entry>
<entry>the sides of each line are extended to meet at an angle.</entry>
</row>
<row>
<entry>GDK_JOIN_ROUND</entry>
<entry>the sides of the two lines are joined by a circular arc.</entry>
</row>
<row>
<entry>GDK_JOIN_BEVEL</entry>
<entry>the sides of the two lines are joined by a straight line which
makes an equal angle with each line.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@GDK_JOIN_MITER:
@GDK_JOIN_ROUND:
@GDK_JOIN_BEVEL:
<!-- ##### FUNCTION gdk_gc_new ##### -->
<para>
Create a new graphics context with default values.
</para>
@window: a #GdkDrawable. The created GC must always be used
with drawables of the same depth as this one.
@Returns: the new graphics context.
<!-- ##### FUNCTION gdk_gc_new_with_values ##### -->
<para>
Create a new GC with the given initial values.
</para>
@window: a #GdkDrawable. The created GC must always be used
with drawables of the same depth as this one.
@values: a structure containing initial values for the GC.
@values_mask: a bit mask indicating which fields in @values
are set.
@Returns: the new graphics context.
<!-- ##### FUNCTION gdk_gc_ref ##### -->
<para>
Increase the reference count on a graphics context.
</para>
@gc: a #GdkGC.
@Returns: @gc.
<!-- ##### FUNCTION gdk_gc_unref ##### -->
<para>
Decrease the reference count on a graphics context. If
the resulting reference count is zero, the graphics
context will be destroyed.
</para>
@gc: a #GdkGC.
<!-- ##### FUNCTION gdk_gc_destroy ##### -->
<para>
Identical to gdk_gc_unref(). This function is obsolete
and should not be used.
</para>
@gc: a #GdkGC.
<!-- ##### FUNCTION gdk_gc_get_values ##### -->
<para>
Retrieves the current values from a graphics context.
</para>
@gc: a #GdkGC.
@values: the #GdkGCValues structure in which to store the results.
<!-- ##### FUNCTION gdk_gc_set_foreground ##### -->
<para>
Sets the foreground color for a graphics context.
</para>
@gc: a #GdkGC.
@color: the new foreground color.
<!-- ##### FUNCTION gdk_gc_set_background ##### -->
<para>
Sets the background color for a graphics context.
</para>
@gc: a #GdkGC.
@color: the new background color.
<!-- ##### FUNCTION gdk_gc_set_font ##### -->
<para>
Sets the font for a graphics context. (Note that
all text-drawing functions in GDK take a @font
argument; the value set here is used when that
argument is %NULL.)
</para>
@gc: a #GdkGC.
@font: the new font.
<!-- ##### FUNCTION gdk_gc_set_function ##### -->
<para>
Determines how the current pixel values and the
pixel values being drawn are combined to produce
the final pixel values.
</para>
@gc: a #GdkGC.
@function:
<!-- ##### FUNCTION gdk_gc_set_fill ##### -->
<para>
Set the fill mode for a graphics context.
</para>
@gc: a #GdkGC.
@fill: the new fill mode.
<!-- ##### FUNCTION gdk_gc_set_tile ##### -->
<para>
Set a tile pixmap for a graphics context.
This will only be used if the fill mode
is %GDK_TILED.
</para>
@gc: a #GdkGC.
@tile: the new tile pixmap.
<!-- ##### FUNCTION gdk_gc_set_stipple ##### -->
<para>
Set the stipple bitmap for a graphics context. The
stipple will only be used if the fill mode is
%GDK_STIPPLED or %GDK_OPAQUE_STIPPLED.
</para>
@gc: a #GdkGC.
@stipple: the new stipple bitmap.
<!-- ##### FUNCTION gdk_gc_set_ts_origin ##### -->
<para>
Set the origin when using tiles or stipples with
the GC. The tile or stipple will be aligned such
that the upper left corner of the tile or stipple
will coincide with this point.
</para>
@gc: a #GdkGC.
@x: the x-coordinate of the origin.
@y: the y-coordinate of the origin.
<!-- ##### FUNCTION gdk_gc_set_clip_origin ##### -->
<para>
Sets the origin of the clip mask. The coordinates are
interpreted relative to the upper-left corner of
the destination drawable of the current operation.
</para>
@gc: a #GdkGC.
@x: the x-coordinate of the origin.
@y: the y-coordinate of the origin.
<!-- ##### FUNCTION gdk_gc_set_clip_mask ##### -->
<para>
Sets the clip mask for a graphics context from a bitmap.
The clip mask is interpreted relative to the clip
origin. (See gdk_gc_set_clip_origin()).
</para>
@gc: the #GdkGC.
@mask: a bitmap.
<!-- ##### FUNCTION gdk_gc_set_clip_rectangle ##### -->
<para>
Sets the clip mask for a graphics context from a
rectangle. The clip mask is interpreted relative to the clip
origin. (See gdk_gc_set_clip_origin()).
</para>
@gc: a #GdkGC.
@rectangle: the rectangle to clip to.
<!-- ##### FUNCTION gdk_gc_set_clip_region ##### -->
<para>
Sets the clip mask for a graphics context from a region structure.
The clip mask is interpreted relative to the clip origin. (See
gdk_gc_set_clip_origin()).
</para>
@gc: a #GdkGC.
@region: the #GdkRegion.
<!-- ##### FUNCTION gdk_gc_set_subwindow ##### -->
<para>
Sets how drawing with this GC on a window will affect child
windows of that window.
</para>
@gc: a #GdkGC.
@mode: the subwindow mode.
<!-- ##### ENUM GdkSubwindowMode ##### -->
<para>
Determines how drawing onto a window will affect child
windows of that window.
<informaltable pgwide=1 frame="none" role="enum">
<tgroup cols="2"><colspec colwidth="3*"><colspec colwidth="7*">
<tbody>
<row>
<entry>GDK_CLIP_BY_CHILDREN</entry>
<entry>only draw onto the window itself.</entry>
</row>
<row>
<entry>GDK_INCLUDE_INFERIORS</entry>
<entry>Draw onto the window and child windows.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@GDK_CLIP_BY_CHILDREN:
@GDK_INCLUDE_INFERIORS:
<!-- ##### FUNCTION gdk_gc_set_exposures ##### -->
<para>
Sets whether copying non-visible portions of a drawable
using this graphics context generate exposure events
for the corresponding regions of the destination
drawable. (See gdk_draw_pixmap()).
</para>
@gc: a #GdkGC.
@exposures: if %TRUE, exposure events will be generated.
<!-- ##### FUNCTION gdk_gc_set_line_attributes ##### -->
<para>
Sets various attributes of how lines are drawn. See
the corresponding members of GdkGCValues for full
explanations of the arguments.
</para>
@gc: a #GdkGC.
@line_width: the width of lines.
@line_style: the dash-style for lines.
@cap_style: the manner in which the ends of lines are drawn.
@join_style: the in which lines are joined together.
<!-- ##### FUNCTION gdk_gc_set_dashes ##### -->
<para>
Sets the way dashed-lines are drawn. Lines will be
drawn with alternating on and off segments of the
lengths specified in @dash_list. The manner in
which the on and off segments are drawn is determined
by the @line_style value of the GC. (This can
be changed with gdk_gc_set_line_attributes)
</para>
@gc: a #GdkGC.
@dash_offset: the
@dash_list: an array of dash lengths.
@n: the number of elements in @dash_list.
<!-- ##### FUNCTION gdk_gc_copy ##### -->
<para>
Copy the set of values from one graphics context
onto another graphics context.
</para>
@dst_gc: the destination graphics context.
@src_gc: the source graphics context.

View File

@@ -1,265 +0,0 @@
<!-- ##### SECTION Title ##### -->
General
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_init ##### -->
<para>
</para>
@argc:
@argv:
<!-- ##### FUNCTION gdk_init_check ##### -->
<para>
</para>
@argc:
@argv:
@Returns:
<!-- ##### FUNCTION gdk_exit ##### -->
<para>
</para>
@error_code:
<!-- ##### ENUM GdkStatus ##### -->
<para>
</para>
@GDK_OK:
@GDK_ERROR:
@GDK_ERROR_PARAM:
@GDK_ERROR_FILE:
@GDK_ERROR_MEM:
<!-- ##### MACRO GDK_NONE ##### -->
<para>
</para>
<!-- ##### MACRO GDK_CURRENT_TIME ##### -->
<para>
</para>
<!-- ##### MACRO GDK_PRIORITY_EVENTS ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_set_locale ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_get_show_events ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_set_show_events ##### -->
<para>
</para>
@show_events:
<!-- ##### FUNCTION gdk_add_client_message_filter ##### -->
<para>
</para>
@message_type:
@func:
@data:
<!-- ##### FUNCTION gdk_set_sm_client_id ##### -->
<para>
</para>
@sm_client_id:
<!-- ##### FUNCTION gdk_get_use_xshm ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_set_use_xshm ##### -->
<para>
</para>
@use_xshm:
<!-- ##### FUNCTION gdk_get_display ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_screen_width ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_screen_height ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_screen_width_mm ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_screen_height_mm ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_pointer_grab ##### -->
<para>
</para>
@window:
@owner_events:
@event_mask:
@confine_to:
@cursor:
@time:
@Returns:
<!-- ##### FUNCTION gdk_pointer_ungrab ##### -->
<para>
</para>
@time:
<!-- ##### FUNCTION gdk_keyboard_grab ##### -->
<para>
</para>
@window:
@owner_events:
@time:
@Returns:
<!-- ##### FUNCTION gdk_keyboard_ungrab ##### -->
<para>
</para>
@time:
<!-- ##### FUNCTION gdk_pointer_is_grabbed ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_flush ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_beep ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_key_repeat_disable ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_key_repeat_restore ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_error_trap_push ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_error_trap_pop ##### -->
<para>
</para>
@Returns:

View File

@@ -1,107 +0,0 @@
<!-- ##### SECTION Title ##### -->
Images
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GdkImage ##### -->
<para>
</para>
@type:
@visual:
@byte_order:
@width:
@height:
@depth:
@bpp:
@bpl:
@mem:
<!-- ##### ENUM GdkImageType ##### -->
<para>
</para>
@GDK_IMAGE_NORMAL:
@GDK_IMAGE_SHARED:
@GDK_IMAGE_FASTEST:
<!-- ##### FUNCTION gdk_image_new_bitmap ##### -->
<para>
</para>
@visual:
@data:
@width:
@height:
@Returns:
<!-- ##### FUNCTION gdk_image_new ##### -->
<para>
</para>
@type:
@visual:
@width:
@height:
@Returns:
<!-- ##### FUNCTION gdk_image_get ##### -->
<para>
</para>
@window:
@x:
@y:
@width:
@height:
@Returns:
<!-- ##### FUNCTION gdk_image_put_pixel ##### -->
<para>
</para>
@image:
@x:
@y:
@pixel:
<!-- ##### FUNCTION gdk_image_get_pixel ##### -->
<para>
</para>
@image:
@x:
@y:
@Returns:
<!-- ##### FUNCTION gdk_image_destroy ##### -->
<para>
</para>
@image:

View File

@@ -1,130 +0,0 @@
<!-- ##### SECTION Title ##### -->
Input
<!-- ##### SECTION Short_Description ##### -->
Callbacks on file descriptors.
<!-- ##### SECTION Long_Description ##### -->
<para>
The functions in this section are used to establish
callbacks when some condition becomes true for
a file descriptor. They are currently just wrappers around
the <link linkend="glib-IO-Channels">IO Channel</link>
facility.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
<variablelist>
<varlistentry>
<term><link linkend="glib-The-Main-Event-Loop">GLib Main Loop</link></term>
<listitem><para>The main loop in which input callbacks run.</para></listitem>
</varlistentry>
<varlistentry>
<term><link linkend="glib-IO-Channels">IO Channels</link></term>
<listitem><para>A newer and more flexible way of doing IO
callbacks.</para></listitem>
</varlistentry>
</variablelist>
</para>
<!-- ##### FUNCTION gdk_input_add_full ##### -->
<para>
Establish a callback when a condition becomes true on
a file descriptor.
</para>
@source: a file descriptor.
@condition: the condition.
@function: the callback function.
@data: callback data passed to @function.
@destroy: callback function to call with @data when the input
handler is removed.
@Returns: a tag that can later be used as an argument to
gdk_input_remove().
<!-- ##### ENUM GdkInputCondition ##### -->
<para>
A set of bit flags used to specify conditions for which
an input callback will be triggered. The three members
of this enumeration correspond to the @readfds,
@writefds, and @exceptfds arguments to the
<function>select</function> system call.
<informaltable pgwide=1 frame="none" role="enum">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>GDK_INPUT_READ</entry>
<entry>the file descriptor has become available for reading.
(Or, as is standard in Unix, a socket or pipe was closed
at the other end; this is the case if a subsequent read
on the file descriptor returns a count of zero.)</entry>
</row>
<row>
<entry>GDK_INPUT_WRITE</entry>
<entry>the file descriptor has become available for writing.</entry>
</row>
<row>
<entry>GDK_INPUT_EXCEPTION</entry>
<entry>an exception was raised on the file descriptor.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@GDK_INPUT_READ:
@GDK_INPUT_WRITE:
@GDK_INPUT_EXCEPTION:
<!-- ##### USER_FUNCTION GdkInputFunction ##### -->
<para>
A callback function that will be called when some condition
occurs.
</para>
@data: the user data passed to gdk_input_add() or gdk_input_add_full().
@source: the source where the condition occurred.
@condition: the triggering condition.
<!-- ##### USER_FUNCTION GdkDestroyNotify ##### -->
<para>
A callback function called when a piece of user data is
no longer being stored by GDK. Will typically free the
structure or object that @data points to.
</para>
@data: the user data.
<!-- ##### FUNCTION gdk_input_add ##### -->
<para>
Establish a callback when a condition becomes true on
a file descriptor.
</para>
@source: a file descriptor.
@condition: the condition.
@function: the callback function.
@data: callback data passed to @function.
@Returns: a tag that can later be used as an argument to
gdk_input_remove().
<!-- ##### FUNCTION gdk_input_remove ##### -->
<para>
Remove a callback added with gdk_input_add() or
gdk_input_add_full().
</para>
@tag: the tag returned when the callback was set up.

View File

@@ -1,154 +0,0 @@
<!-- ##### SECTION Title ##### -->
Input Contexts
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GdkIC ##### -->
<para>
</para>
<!-- ##### STRUCT GdkICAttr ##### -->
<para>
</para>
@style:
@client_window:
@focus_window:
@filter_events:
@spot_location:
@line_spacing:
@cursor:
@preedit_fontset:
@preedit_area:
@preedit_area_needed:
@preedit_foreground:
@preedit_background:
@preedit_pixmap:
@preedit_colormap:
@status_fontset:
@status_area:
@status_area_needed:
@status_foreground:
@status_background:
@status_pixmap:
@status_colormap:
<!-- ##### ENUM GdkICAttributesType ##### -->
<para>
</para>
@GDK_IC_STYLE:
@GDK_IC_CLIENT_WINDOW:
@GDK_IC_FOCUS_WINDOW:
@GDK_IC_FILTER_EVENTS:
@GDK_IC_SPOT_LOCATION:
@GDK_IC_LINE_SPACING:
@GDK_IC_CURSOR:
@GDK_IC_PREEDIT_FONTSET:
@GDK_IC_PREEDIT_AREA:
@GDK_IC_PREEDIT_AREA_NEEDED:
@GDK_IC_PREEDIT_FOREGROUND:
@GDK_IC_PREEDIT_BACKGROUND:
@GDK_IC_PREEDIT_PIXMAP:
@GDK_IC_PREEDIT_COLORMAP:
@GDK_IC_STATUS_FONTSET:
@GDK_IC_STATUS_AREA:
@GDK_IC_STATUS_AREA_NEEDED:
@GDK_IC_STATUS_FOREGROUND:
@GDK_IC_STATUS_BACKGROUND:
@GDK_IC_STATUS_PIXMAP:
@GDK_IC_STATUS_COLORMAP:
@GDK_IC_ALL_REQ:
@GDK_IC_PREEDIT_AREA_REQ:
@GDK_IC_PREEDIT_POSITION_REQ:
@GDK_IC_STATUS_AREA_REQ:
<!-- ##### FUNCTION gdk_ic_new ##### -->
<para>
</para>
@attr:
@mask:
@Returns:
<!-- ##### FUNCTION gdk_ic_destroy ##### -->
<para>
</para>
@ic:
<!-- ##### FUNCTION gdk_ic_get_style ##### -->
<para>
</para>
@ic:
@Returns:
<!-- ##### FUNCTION gdk_ic_set_attr ##### -->
<para>
</para>
@ic:
@attr:
@mask:
@Returns:
<!-- ##### FUNCTION gdk_ic_get_attr ##### -->
<para>
</para>
@ic:
@attr:
@mask:
@Returns:
<!-- ##### FUNCTION gdk_ic_get_events ##### -->
<para>
</para>
@ic:
@Returns:
<!-- ##### FUNCTION gdk_ic_attr_new ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_ic_attr_destroy ##### -->
<para>
</para>
@attr:

View File

@@ -1,301 +0,0 @@
<!-- ##### SECTION Title ##### -->
Input Devices
<!-- ##### SECTION Short_Description ##### -->
Functions for handling extended input devices.
<!-- ##### SECTION Long_Description ##### -->
<para>
In addition to the normal keyboard and mouse input devices, GTK+ also
contains support for <firstterm>extended input devices</firstterm>. In
particular, this support is targeted at graphics tablets. Graphics
tablets typically return sub-pixel positioning information and possibly
information about the pressure and tilt of the stylus. Under
X, the support for extended devices is done through the
<firstterm>XInput</firstterm> extension.
</para>
<para>
Because handling extended input devices may involve considerable
overhead, they need to be turned on for each #GdkWindow
individually using gdk_input_set_extension_events().
(Or, more typically, for GtkWidgets, using gtk_widget_set_extension_events()).
As an additional complication, depending on the support from
the windowing system, its possible that a normal mouse
cursor will not be displayed for a particular extension
device. If an application does not want to deal with displaying
a cursor itself, it can ask only to get extension events
from devices that will display a cursor, by passing the
%GDK_EXTENSION_EVENTS_CURSOR value to
gdk_input_set_extension_events(). Otherwise, the application
must retrieve the device information using gdk_input_list_devices(),
check the <structfield>has_cursor</structfield> field, and,
if it is %FALSE, draw a cursor itself when it receives
motion events.
</para>
<para>
Each pointing device is assigned a unique integer ID; events from a
particular device can be identified by the
<structfield>deviceid</structfield> field in the event structure. The
events generated by pointer devices have also been extended to contain
<structfield>pressure</structfield>, <structfield>xtilt</structfield>
and <structfield>ytilt</structfield> fields which contain the extended
information reported as additional <firstterm>valuators</firstterm>
from the device. The <structfield>pressure</structfield> field is a
a double value ranging from 0.0 to 1.0, while the tilt fields are
double values ranging from -1.0 to 1.0. (With -1.0 representing the
maximum title to the left or up, and 1.0 representing the maximum
tilt to the right or down.)
</para>
<para>
One additional field in each event is the
<structfield>source</structfield> field, which contains an
enumeration value describing the type of device; this currently
can be one of
%GDK_SOURCE_MOUSE,
%GDK_SOURCE_PEN,
%GDK_SOURCE_ERASER,
or %GDK_SOURCE_CURSOR. This field is present to allow simple
applications to (for instance) delete when they detect eraser
devices without having to keep track of complicated per-device
settings.
</para>
<para>
Various aspects of each device may be configured. The easiest way of
creating a GUI to allow the user to conifigure such a device
is to use to use the #GtkInputDialog widget in GTK+.
However, even when using this widget, application writers
will need to directly query and set the configuration parameters
in order to save the state between invocations of the application.
The configuration of devices is queried using gdk_input_list_devices.
Each device must is activated using gdk_input_set_mode(), which
also controls whether the device's range is mapped to the
entire screen or to a single window. The mapping of the valuators of
the device onto the predefined valuator types is set using
gdk_input_set_axes. And the source type for each device
can be set with gdk_input_set_source().
</para>
<para>
Devices may also have associated <firstterm>keys</firstterm>
or macro buttons. Such keys can be globally set to map
into normal X keyboard events. The mapping is set using
gdk_input_set_key().
</para>
<para>
The interfaces in this section will most likely be considerably
modified in the future to accomodate devices that may have different
sets of additional valuators than the pressure xtilt and ytilt.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### MACRO GDK_CORE_POINTER ##### -->
<para>
This macro contains an integer value representing
the device ID for the core pointer device.
</para>
<!-- ##### FUNCTION gdk_input_list_devices ##### -->
<para>
Lists all available input devices, along with their
configuration information.
</para>
@Returns: A #GList of #GdkDeviceInfo structures. This list
is internal data of GTK+ and should not be modified
or freed.
<!-- ##### STRUCT GdkDeviceInfo ##### -->
<para>
The #GdkDeviceInfo structure contains information about a
device. It has the following fields:
</para>
@deviceid: a unique integer ID for this device.
@name: the human-readable name for the device.
@source: the type of device.
@mode: a value indicating whether the device is enabled and
how the device coordinates map to the screen.
@has_cursor: if %TRUE, a cursor will be displayed indicating
the current on-screen location to the user. Otherwise,
the application is responsible for drawing a cursor
itself.
@num_axes: the number of axes for this device.
@axes: a pointer to an array of GdkAxisUse values which
give the mapping of axes onto the possible valuators
for a GDK device.
@num_keys: the number of macro buttons.
@keys: a pointer to an array of #GdkDeviceKey structures
which describe what key press events are generated
for each macro button.
<!-- ##### STRUCT GdkDeviceKey ##### -->
<para>
The #GdkDeviceKey structure contains information
about the mapping of one device macro button onto
a normal X key event. It has the following fields:
</para>
@keyval: the keyval to generate when the macro button is pressed.
If this is 0, no keypress will be generated.
@modifiers: the modifiers set for the generated key event.
<!-- ##### FUNCTION gdk_input_set_extension_events ##### -->
<para>
Turns extension events on or off for a particular window,
and specifies the event mask for extension events.
</para>
@window: a #GdkWindow.
@mask: the event mask
@mode: the type of extension events that are desired.
<!-- ##### ENUM GdkExtensionMode ##### -->
<para>
An enumeration used to specify which extension events
are desired for a particular widget.
</para>
@GDK_EXTENSION_EVENTS_NONE: no extension events are desired.
@GDK_EXTENSION_EVENTS_ALL: all extension events are desired.
@GDK_EXTENSION_EVENTS_CURSOR: extension events are desired only if a cursor
will be displayed for the device.
<!-- ##### FUNCTION gdk_input_set_source ##### -->
<para>
Sets the source type for a device.
</para>
@deviceid: the device to configure
@source: the new source type.
<!-- ##### ENUM GdkInputSource ##### -->
<para>
An enumeration describing the type of an input device
in general terms.
</para>
@GDK_SOURCE_MOUSE: the device is a mouse. (This will be reported for the core
pointer, even if it is something else, such as a trackball.)
@GDK_SOURCE_PEN: the device is a stylus of a graphics tablet or similar device.
@GDK_SOURCE_ERASER: the device is an eraser. Typically, this would be the other end
of a stylus on a graphics tablet.
@GDK_SOURCE_CURSOR: the device is a graphics tablet "puck" or similar device.
<!-- ##### FUNCTION gdk_input_set_mode ##### -->
<para>
Enables or disables a device, and determines how the
device maps onto the screen.
</para>
@deviceid: the device to configure.
@mode: the new mode.
@Returns: %TRUE if the device supports the given mode, otherwise
%FALSE and the device's mode is unchanged.
<!-- ##### ENUM GdkInputMode ##### -->
<para>
An enumeration that describes the mode of an input device.
</para>
@GDK_MODE_DISABLED: the device is disabled and will not report any events.
@GDK_MODE_SCREEN: the device is enabled. The device's coordinate space
maps to the entire screen.
@GDK_MODE_WINDOW: the device is enabled. The device's coordinate space
is mapped to a single window. The manner in which this window
is chosen is undefined, but it will typically be the same
way in which the focus window for key events is determined.
<!-- ##### FUNCTION gdk_input_set_axes ##### -->
<para>
Sets the mapping of the axes (valuators) of a device
onto the predefined valuator types that GTK+ understands.
</para>
@deviceid: the device to configure.
@axes: an array of GdkAxisUse. This length of this array
must match the number of axes for the device.
<!-- ##### ENUM GdkAxisUse ##### -->
<para>
An enumeration describing the way in which a device
axis (valuator) maps onto the predefined valuator
types that GTK+ understands.
</para>
@GDK_AXIS_IGNORE: the axis is ignored.
@GDK_AXIS_X: the axis is used as the x axis.
@GDK_AXIS_Y: the axis is used as the y axis.
@GDK_AXIS_PRESSURE: the axis is used for pressure information.
@GDK_AXIS_XTILT: the axis is used for x tilt information.
@GDK_AXIS_YTILT: the axis is used for x tilt information.
@GDK_AXIS_LAST: a constant equal to the numerically highest axis value.
<!-- ##### FUNCTION gdk_input_set_key ##### -->
<para>
Sets the key event generated when a macro button is pressed.
</para>
@deviceid: the device to configure.
@index: the index of the macro button.
@keyval: the key value for the #GdkKeypressEvent to generate.
(a value of 0 means no event will be generated.)
@modifiers: the modifier field for the generated
#GdkKeyPressEvent.
<!-- ##### FUNCTION gdk_input_window_get_pointer ##### -->
<para>
Returns information about the current position of the pointer
within a window, including extended device information.
Any of the return parameters may be %NULL, in which case,
they will be ignored.
</para>
@window: a #GdkWindow.
@deviceid: a device ID.
@x: location to store current x postion.
@y: location to store current y postion.
@pressure: location to store current pressure.
@xtilt: location to store current tilt in the x direction.
@ytilt: location to store current tilt in the y direction.
@mask: location to store the current modifier state.
<!-- ##### FUNCTION gdk_input_motion_events ##### -->
<para>
Retrieves the motion history for a given device/window pair.
</para>
@window: a #GdkWindow.
@deviceid: the device for which to retrieve motion history.
@start: the start time.
@stop: the stop time.
@nevents_return: location to store the number of events returned.
@Returns: a newly allocated array containing all the events
from @start to @stop. This array should be freed
with g_free() when you are finished using it.
<!-- ##### STRUCT GdkTimeCoord ##### -->
<para>
The #GdkTimeCoord structure stores a single event in a
motion history. It contains the following fields:
</para>
@time: The timestamp for this event.
@x: the x position.
@y: the y position.
@pressure: the pressure.
@xtilt: the tilt in the x direction.
@ytilt: the tilt in the y direction.

View File

@@ -1,101 +0,0 @@
<!-- ##### SECTION Title ##### -->
Input Methods
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### ENUM GdkIMStyle ##### -->
<para>
</para>
@GDK_IM_PREEDIT_AREA:
@GDK_IM_PREEDIT_CALLBACKS:
@GDK_IM_PREEDIT_POSITION:
@GDK_IM_PREEDIT_NOTHING:
@GDK_IM_PREEDIT_NONE:
@GDK_IM_PREEDIT_MASK:
@GDK_IM_STATUS_AREA:
@GDK_IM_STATUS_CALLBACKS:
@GDK_IM_STATUS_NOTHING:
@GDK_IM_STATUS_NONE:
@GDK_IM_STATUS_MASK:
<!-- ##### TYPEDEF GdkWChar ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_im_ready ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_im_begin ##### -->
<para>
</para>
@ic:
@window:
<!-- ##### FUNCTION gdk_im_end ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_im_decide_style ##### -->
<para>
</para>
@supported_style:
@Returns:
<!-- ##### FUNCTION gdk_im_set_best_style ##### -->
<para>
</para>
@best_allowed_style:
@Returns:
<!-- ##### FUNCTION gdk_wcstombs ##### -->
<para>
</para>
@src:
@Returns:
<!-- ##### FUNCTION gdk_mbstowcs ##### -->
<para>
</para>
@dest:
@src:
@dest_max:
@Returns:

View File

@@ -1,93 +0,0 @@
<!-- ##### SECTION Title ##### -->
Key Values
<!-- ##### SECTION Short_Description ##### -->
functions for manipulating keyboard codes.
<!-- ##### SECTION Long_Description ##### -->
<para>
Key values are the codes which are sent whenever a key is pressed or released.
They appear in the <structfield>keyval</structfield> field of the
#GdkEventKey structure, which is passed to signal handlers for the
"key-press-event" and "key-release-event" signals.
The complete list of key values can be found in the &lt;gdk/gdkkeysyms.h&gt;
header file.
</para>
<para>
Key values can be converted into a string representation using
gdk_keyval_name(). The reverse function, converting a string to a key value,
is provided by gdk_keyval_from_name().
</para>
<para>
The case of key values can be determined using gdk_keyval_is_upper() and
gdk_keyval_is_lower(). Key values can be converted to upper or lower case
using gdk_keyval_to_upper() and gdk_keyval_to_lower().
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_keyval_name ##### -->
<para>
Converts a key value into a symbolic name.
The names are the same as those in the &lt;gdk/gdkkeysyms.h&gt; header file
but without the leading "GDK_".
</para>
@keyval: a key value.
@Returns: a string containing the name of the key, or NULL if @keyval is not
a valid key. The string should not be modified.
<!-- ##### FUNCTION gdk_keyval_from_name ##### -->
<para>
Converts a key name to a key value.
</para>
@keyval_name: a key name.
@Returns: the corresponding key value, or %GDK_VoidSymbol if the key name is
not a valid key.
<!-- ##### FUNCTION gdk_keyval_is_upper ##### -->
<para>
Returns TRUE if the given key value is in upper case.
</para>
@keyval: a key value.
@Returns: TRUE if @keyval is in upper case, or if @keyval is not subject to
case conversion.
<!-- ##### FUNCTION gdk_keyval_is_lower ##### -->
<para>
Returns TRUE if the given key value is in lower case.
</para>
@keyval: a key value.
@Returns: TRUE if @keyval is in lower case, or if @keyval is not subject to
case conversion.
<!-- ##### FUNCTION gdk_keyval_to_upper ##### -->
<para>
Converts a key value to upper case, if applicable.
</para>
@keyval: a key value.
@Returns: the upper case form of @keyval, or @keyval itself if it is already
in upper case or it is not subject to case conversion.
<!-- ##### FUNCTION gdk_keyval_to_lower ##### -->
<para>
Converts a key value to lower case, if applicable.
</para>
@keyval: a key value.
@Returns: the lower case form of @keyval, or @keyval itself if it is already
in lower case or it is not subject to case conversion.

View File

@@ -1,196 +0,0 @@
<!-- ##### SECTION Title ##### -->
Bitmaps and Pixmaps
<!-- ##### SECTION Short_Description ##### -->
Offscreen drawables.
<!-- ##### SECTION Long_Description ##### -->
<para>
Pixmaps are offscreen drawables. They can be drawn upon with the
standard drawing primitives, then copied to another drawable (such as
a #GdkWindow) with gdk_pixmap_draw(). The depth of a pixmap
is the number of bits per pixels. Bitmaps are simply pixmaps
with a depth of 1. (That is, they are monochrome bitmaps - each
pixel can be either on or off).
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GdkPixmap ##### -->
<para>
An opaque structure representing an offscreen drawable.
Pointers to structures of type #GdkPixmap, #GdkBitmap,
and #GdkWindow, can often be used interchangeably.
The type #GdkDrawable refers generically to any of
these types.
</para>
@user_data:
<!-- ##### FUNCTION gdk_pixmap_new ##### -->
<para>
Create a new pixmap with a given size and depth.
</para>
@window: a #GdkWindow, used to determine default values for the
new pixmap. Can be %NULL if @depth is specified,
@width: The width of the new pixmap in pixels.
@height: The height of the new pixmap in pixels.
@depth: The depth (number of bits per pixel) of the new pixmap.
If -1, and @window is not %NULL, the depth of the new
pixmap will be equal to that of @window.
@Returns: the #GdkBitmap
<!-- ##### FUNCTION gdk_bitmap_create_from_data ##### -->
<para>
Creates a new bitmap from data in XBM format.
</para>
@window: a #GdkWindow, used to determine default values for the
new pixmap. Can be %NULL, in which case the root window is
used.
@data: a pointer to the XBM data.
@width: the width of the new pixmap in pixels.
@height: the height of the new pixmap in pixels.
@Returns: the #GdkBitmap
<!-- ##### FUNCTION gdk_pixmap_create_from_data ##### -->
<para>
Create a two-color pixmap from data in XBM data.
</para>
@window: a #GdkWindow, used to determine default values for the
new pixmap. Can be %NULL, if the depth is given.
@data: a pointer to the data.
@width: the width of the new pixmap in pixels.
@height: the height of the new pixmap in pixels.
@depth: the depth (number of bits per pixel) of the new pixmap.
@fg: the foreground color.
@bg: the background color.
@Returns: the #GdkPixmap
<!-- ##### FUNCTION gdk_pixmap_create_from_xpm ##### -->
<para>
Create a pixmap from a XPM file.
</para>
@window: a #GdkWindow, used to determine default values for the
new pixmap.
@mask: a pointer to a place to store a bitmap representing
the transparency mask of the XPM file. Can be %NULL,
in which case transparency will be ignored.
@transparent_color: the color to be used for the pixels
that are transparent in the input file. Can be %NULL,
in which case a default color will be used.
@filename: the filename of a file containing XPM data.
@Returns: the #GdkPixmap
<!-- ##### FUNCTION gdk_pixmap_colormap_create_from_xpm ##### -->
<para>
Create a pixmap from a XPM file using a particular colormap.
</para>
@window: a #GdkWindow, used to determine default values for the
new pixmap. Can be %NULL if @colormap is given.
@colormap: the #GdkColormap that the new pixmap will be use.
If omitted, the colormap for @window will be used.
@mask: a pointer to a place to store a bitmap representing
the transparency mask of the XPM file. Can be %NULL,
in which case transparency will be ignored.
@transparent_color: the color to be used for the pixels
that are transparent in the input file. Can be %NULL,
in which case a default color will be used.
@filename: the filename of a file containing XPM data.
@Returns: the #GdkPixmap.
<!-- ##### FUNCTION gdk_pixmap_create_from_xpm_d ##### -->
<para>
Create a pixmap from data in XPM format.
</para>
@window: a #GdkWindow, used to determine default values for the
new pixmap.
@mask: Pointer to a place to store a bitmap representing
the transparency mask of the XPM file. Can be %NULL,
in which case transparency will be ignored.
@transparent_color: This color will be used for the pixels
that are transparent in the input file. Can be %NULL
in which case a default color will be used.
@data: Pointer to a string containing the XPM data.
@Returns: the #GdkPixmap
<!-- ##### FUNCTION gdk_pixmap_colormap_create_from_xpm_d ##### -->
<para>
Create a pixmap from data in XPM format using a particular
colormap.
</para>
@window: a #GdkWindow, used to determine default values for the
new pixmap. Can be %NULL if @colormap is given.
@colormap: the #GdkColormap that the new pixmap will be use.
If omitted, the colormap for @window will be used.
@mask: a pointer to a place to store a bitmap representing
the transparency mask of the XPM file. Can be %NULL,
in which case transparency will be ignored.
@transparent_color: the color to be used for the pixels
that are transparent in the input file. Can be %NULL,
in which case a default color will be used.
@data: Pointer to a string containing the XPM data.
@Returns: the #GdkPixmap.
<!-- ##### FUNCTION gdk_pixmap_ref ##### -->
<para>
Increase the reference count of a pixmap.
</para>
@pixmap: a #GdkPixmap
@Returns: @pixmap
<!-- ##### FUNCTION gdk_pixmap_unref ##### -->
<para>
Decrease the reference count of a pixmap. If the resulting
reference count is zero, destroy the pixmap.
</para>
@pixmap: a #GdkPixmap
<!-- ##### STRUCT GdkBitmap ##### -->
<para>
An opaque structure representing an offscreen drawable of depth
1. Pointers to structures of type GdkPixmap, #GdkBitmap, and
#GdkWindow, can often be used interchangeably. The type #GdkDrawable
refers generically to any of these types.
</para>
@user_data:
<!-- ##### FUNCTION gdk_bitmap_ref ##### -->
<para>
Increase the reference count of a bitmap. An alias
for gdk_pixmap_ref().
</para>
@pixmap:
@Returns:
<!-- ##### FUNCTION gdk_bitmap_unref ##### -->
<para>
Decrease the reference count of a bitmap. An alias
for gdk_pixmap_unref().
</para>
@pixmap:

View File

@@ -1,218 +0,0 @@
<!-- ##### SECTION Title ##### -->
Properties and Atoms
<!-- ##### SECTION Short_Description ##### -->
functions to manipulate properties on windows.
<!-- ##### SECTION Long_Description ##### -->
<para>
Each window under X can have any number of associated
<firstterm>properties</firstterm> attached to it.
Properties are arbitrary chunks of data identified by
<firstterm>atom</firstterm>s. (An <firstterm>atom</firstterm>
is a numeric index into a string table on the X server. They are used
to transfer strings efficiently between clients without
having to transfer the entire string.) A property
has an associated type, which is also identified
using an atom.
</para>
<para>
A property has an associated <firstterm>format</firstterm>,
an integer describing how many bits are in each unit
of data inside the property. It must be 8, 16, or 32.
When data is transfered between the server and client,
if they are of different endianesses it will be byteswapped
as necessary according to the format of the property.
Note that on the client side, properties of format 32
will be stored with one unit per <emphasis>long</emphasis>,
even if a long integer has more than 32 bits on the platform.
(This decision was apparently made for Xlib to maintain
compatibility with programs that assumed longs were 32
bits, at the expense of programs that knew better.)
</para>
<para>
The functions in this section are used to add, remove
and change properties on windows, to convert atoms
to and from strings and to manipulate some types of
data commonly stored in X window properties.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### TYPEDEF GdkAtom ##### -->
<para>
A numeric type representing a string as an index into a table
of strings on the X server.
</para>
<!-- ##### FUNCTION gdk_text_property_to_text_list ##### -->
<para>
Convert a text string from the encoding as it is stored in
a property into an array of strings in the encoding of
the current local. (The elements of the array represent
the null-separated elements of the original text string.)
</para>
@encoding: an atom representing the encoding. The most common
values for this are <literal>STRING</literal>,
or <literal>COMPOUND_TEXT</literal>. This is
value used as the type for the property.
@format: the format of the property.
@text: the text data.
@length: the length of the property, in item.s
@list: location to store a terminated array of strings
in the encoding of the current locale. This
array should be freed using gdk_free_text_list().
@Returns: the number of strings stored in @list, or 0,
if the conversion failed.
<!-- ##### FUNCTION gdk_free_text_list ##### -->
<para>
Free the array of strings created by
gdk_text_property_to_text_list().
</para>
@list: the value stored in the @list parameter by
a call to gdk_text_property_to_text_list().
<!-- ##### FUNCTION gdk_string_to_compound_text ##### -->
<para>
Convert a string from the encoding of the current locale
into a form suitable for storing in a window property.
</para>
@str: a null-terminated string.
@encoding: location to store the encoding atom (to be used as the type for the property).
@format: location to store the format for the property.
@ctext: location to store newly allocated data for the property.
@length: location to store the length of @ctext in items.
@Returns: 0 upon sucess, non-zero upon failure.
<!-- ##### FUNCTION gdk_free_compound_text ##### -->
<para>
Free the data returned from gdk_string_to_compound_text().
</para>
@ctext: The pointer stored in @ctext from a call to gdk_string_to_compound_text().
<!-- ##### FUNCTION gdk_atom_intern ##### -->
<para>
Find or create an atom corresponding to a given string.
</para>
@atom_name: a string.
@only_if_exists: if %TRUE, do not create a new atom, but
just return the atom if it already exists.
@Returns: the atom corresponding to @atom_name, or, if
@only_if_exists is false, and an atom does not
already exists for the string, %GDK_NONE.
<!-- ##### FUNCTION gdk_atom_name ##### -->
<para>
Determine the string corresponding to an atom.
</para>
@atom: a #GdkAtom.
@Returns: a newly allocated string containing the string
corresponding to @atom. When you are done
with the return value, you should free it
using g_free().
<!-- ##### FUNCTION gdk_property_get ##### -->
<para>
Retrieves a portion of the contents of a property. If the
property does not exist, then the function returns FALSE,
and %GDK_NONE will be stored in @actual_property_type.
Note: the <function>XGetWindowProperty()</function>
function that gdk_property_get()
uses has a very confusing and complicated set of semantics.
Unfortunately, gdk_property_get() makes the situation
worse instead of better (the semantics should be considered
undefined), and also prints warnings to stderr in cases where it
should return a useful error to the program. You are advised to use
<function>XGetWindowProperty()</function>
directly until a replacement function for gdk_property_get()
is provided.
</para>
@window: a #GdkWindow.
@property: the property to retrieve.
@type: the desired property type, or 0, if any type of data
is acceptable. If this does not match the actual
type, then @actual_format and @actual_length will
be filled in, a warning will be printed to stderr
and no data will be returned.
@offset: the offset into the property at which to begin
retrieving data. (in 4 byte units!)
@length: the length of the data to delete. (in bytes, but
the actual retrieved length will be the next
integer multiple multiple of four greater than
this!)
@pdelete: if %TRUE, delete the property after retrieving the
data.
@actual_property_type: location to store the actual type of
the property.
@actual_format: location to store the actual format of the data.
@actual_length: location to store the length of the retrieved
data, in bytes.
@data: location to store a pointer to the data. The retrieved
data should be freed with g_free() when you are finished
using it.
@Returns: %TRUE if data was sucessfully received and stored
in @data, otherwise %FALSE.
<!-- ##### FUNCTION gdk_property_change ##### -->
<para>
Change the contents of a property on a window.
</para>
@window: a #GdkWindow.
@property: the property to change.
@type: the new type for the property. If @mode is
%GDK_PROP_MODE_REPLACE or %GDK_PROP_MODE_APPEND, then this
must match the existing type or an error will occur.
@format: the new format for the property. If @mode is
%GDK_PROP_MODE_REPLACE or %GDK_PROP_MODE_APPEND, then this
must match the existing format or an error will occur.
@mode: a value describing how the new data is to be combined
with the current data.
@data: the data
(a <literal>guchar *</literal>
<literal>gushort *</literal>, or
<literal>gulong *</literal>, depending on @format), cast to a
<literal>guchar *</literal>.
@nelements: the number of elements of size determined by the format,
contained in @data.
<!-- ##### ENUM GdkPropMode ##### -->
<para>
Describes how existing data is combined with new data when
using gdk_property_change().
</para>
@GDK_PROP_MODE_REPLACE: the new data replaces the existing data.
@GDK_PROP_MODE_PREPEND: the new data is prepended to the existing data.
@GDK_PROP_MODE_APPEND: the new data is appended to the existing data.
<!-- ##### FUNCTION gdk_property_delete ##### -->
<para>
Delete a property from a window.
</para>
@window: a #GdkWindow.
@property: the property to delete.

View File

@@ -1,247 +0,0 @@
<!-- ##### SECTION Title ##### -->
Points, Rectangles and Regions
<!-- ##### SECTION Short_Description ##### -->
simple graphical data types.
<!-- ##### SECTION Long_Description ##### -->
<para>
GDK provides the #GdkPoint, #GdkRectangle and #GdkRegion data types for
representing pixels and sets of pixels on the screen.
</para>
<para>
#GdkPoint is a simple structure containing an x and y coordinate of a point.
</para>
<para>
#GdkRectangle is a structure holding the position and size of a rectangle.
The intersection of two rectangles can be computed with
gdk_rectangle_intersect(). To find the union of two rectangles use
gdk_rectangle_union().
</para>
<para>
#GdkRegion is an opaque data type holding a set of arbitrary pixels, and is
usually used for clipping graphical operations (see gdk_gc_set_clip_region()).
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GdkPoint ##### -->
<para>
Defines the x and y coordinates of a point.
Note that both are defined as #gint16 values, so the coordinates are limited
to between -32,768 and 32,767.
</para>
@x: the x coordinate of the point.
@y: the y coordinate of the point.
<!-- ##### STRUCT GdkRectangle ##### -->
<para>
Defines the position and size of a rectangle.
</para>
@x: the x coordinate of the left edge of the rectangle.
@y: the y coordinate of the top of the rectangle.
@width: the width of the rectangle.
@height: the height of the rectangle.
<!-- ##### FUNCTION gdk_rectangle_intersect ##### -->
<para>
Calculates the intersection of two rectangles.
</para>
@src1: a #GdkRectangle.
@src2: a #GdkRectangle.
@dest: the intersection of @src1 and @src2.
@Returns: TRUE if the rectangles intersect.
<!-- ##### FUNCTION gdk_rectangle_union ##### -->
<para>
Calculates the union of two rectangles.
The union of rectangles @src1 and @src2 is the smallest rectangle which
includes both @src1 and @src2 within it.
</para>
@src1: a #GdkRectangle.
@src2: a #GdkRectangle.
@dest: the union of @src1 and @src2.
<!-- ##### STRUCT GdkRegion ##### -->
<para>
A GdkRegion represents a set of pixels on the screen.
The only user-visible field of the structure is the user_data member, which
can be used to attach arbitrary data to the #GdkRegion.
</para>
@user_data: arbitrary data attached to the #GdkRegion.
<!-- ##### FUNCTION gdk_region_new ##### -->
<para>
Creates a new empty #GdkRegion.
</para>
@Returns: a new empty #GdkRegion.
<!-- ##### FUNCTION gdk_region_destroy ##### -->
<para>
Destroys a #GdkRegion.
</para>
@region: a #GdkRegion.
<!-- ##### FUNCTION gdk_region_get_clipbox ##### -->
<para>
Returns the smallest rectangle which includes the entire #GdkRegion.
</para>
@region: a #GdkRegion.
@rectangle: returns the smallest rectangle which includes all of @region.
<!-- ##### FUNCTION gdk_region_empty ##### -->
<para>
Returns TRUE if the #GdkRegion is empty.
</para>
@region: a #GdkRegion.
@Returns: TRUE if @region is empty.
<!-- ##### FUNCTION gdk_region_equal ##### -->
<para>
Returns TRUE if the two regions are the same.
</para>
@region1: a #GdkRegion.
@region2: a #GdkRegion.
@Returns: TRUE if @region1 and @region2 are equal.
<!-- ##### FUNCTION gdk_region_point_in ##### -->
<para>
Returns TRUE if a point is in a region.
</para>
@region: a #GdkRegion.
@x: the x coordinate of a point.
@y: the y coordinate of a point.
@Returns: TRUE if the point is in @region.
<!-- ##### FUNCTION gdk_region_rect_in ##### -->
<para>
Tests whether a rectangle is within a region.
</para>
@region: a #GdkRegion.
@rect: a #GdkRectangle.
@Returns: GDK_OVERLAP_RECTANGLE_IN, GDK_OVERLAP_RECTANGLE_OUT, or
GDK_OVERLAP_RECTANGLE_PART, depending on whether the rectangle is inside,
outside, or partly inside the #GdkRegion, respectively.
<!-- ##### ENUM GdkOverlapType ##### -->
<para>
Specifies the possible values returned by gdk_region_rect_in().
</para>
@GDK_OVERLAP_RECTANGLE_IN: if the rectangle is inside the #GdkRegion.
@GDK_OVERLAP_RECTANGLE_OUT: if the rectangle is outside the #GdkRegion.
@GDK_OVERLAP_RECTANGLE_PART: if the rectangle is partly inside the #GdkRegion.
<!-- ##### FUNCTION gdk_region_polygon ##### -->
<para>
Creates a new #GdkRegion using the polygon defined by a number of points.
</para>
@points: an array of #GdkPoint structs.
@npoints: the number of elements in the @points array.
@fill_rule: specifies which pixels are included in the region when the polygon
overlaps itself.
@Returns: a new #GdkRegion based on the given polygon.
<!-- ##### FUNCTION gdk_region_offset ##### -->
<para>
Moves a region.
</para>
@region: a #GdkRegion.
@dx: the distance to move the region horizontally.
@dy: the distance to move the region vertically.
<!-- ##### FUNCTION gdk_region_shrink ##### -->
<para>
Resizes a region.
</para>
@region: a #GdkRegion.
@dx:
@dy:
<!-- ##### FUNCTION gdk_region_union_with_rect ##### -->
<para>
Returns the union of a region and a rectangle.
</para>
@region: a #GdkRegion.
@rect: a #GdkRectangle.
@Returns: the union of @region and @rect.
<!-- ##### FUNCTION gdk_regions_intersect ##### -->
<para>
Returns the intersection of two regions.
</para>
@source1: a #GdkRegion.
@source2: a #GdkRegion.
@Returns: the intersection of @source1 and @source2.
<!-- ##### FUNCTION gdk_regions_union ##### -->
<para>
Returns the union of two regions.
This is all pixels in either of @source1 or @source2.
</para>
@source1: a #GdkRegion.
@source2: a #GdkRegion.
@Returns: the union of @source1 and @source2.
<!-- ##### FUNCTION gdk_regions_subtract ##### -->
<para>
Subtracts one region from another.
The result is a region containing all the pixels which are in @source1, but
which are not in @source2.
</para>
@source1: a #GdkRegion.
@source2: a #GdkRegion to subtract from @source1.
@Returns: @source1 - @source2.
<!-- ##### FUNCTION gdk_regions_xor ##### -->
<para>
Returns the difference between the union and the intersection of two regions.
This is a region containing the pixels that are in one of the source regions,
but which are not in both.
</para>
@source1: a #GdkRegion.
@source2: a #GdkRegion.
@Returns: the difference between the union and the intersection of @source1
and @source2.

View File

@@ -1,450 +0,0 @@
<!-- ##### SECTION Title ##### -->
GdkRGB
<!-- ##### SECTION Short_Description ##### -->
displays RGB images (as well as grayscale and colormapped) to
the native window.
<!-- ##### SECTION Long_Description ##### -->
<para>
GdkRgb converts RGB, grayscale, and colormapped images into the native
window pixel format and displays them. It takes care of colormaps,
visuals, dithering, and management of the temporary buffers.
</para>
<para>
You must call gdk_rgb_init() before using any GdkRgb functionality. If
you fail to do so, expect coredumps. All Gtk+ widgets that use GdkRgb
(including #GtkPreview) call gdk_rgb_init() in their class_init method.
Thus, if you use GdkRgb only indirectly, you don't need to worry
about it.
</para>
<para>
GdkRgb tries to use the system default visual and colormap, but
doesn't always succeed. Thus, you have to be prepared to install the
visual and colormap generated by GdkRgb. The following code sequence
(before any widgets are created) should work in most applications:
</para>
<informalexample>
<programlisting>
gdk_rgb_init ();
gtk_widget_set_default_colormap (gdk_rgb_get_cmap ());
gtk_widget_set_default_visual (gdk_rgb_get_visual ());
</programlisting>
</informalexample>
<para>
You can also push the colormap and visual, but in general it doesn't
work unless the push wraps the window creation call. If you wrap the
push around a widget which is embedded in a window without the GdkRgb
colormap and visual, it probably won't work, and is likely to cause
colormap flashing, as well.
</para>
<para>
On 8-bit systems, the colormaps used by Imlib and GdkRgb may
conflict. There is no good general solution to this other than phasing
out the dependence on Imlib.
</para>
<para>
You can set the threshold for installing colormaps with
gdk_rgb_set_min_colors (). The default is 5x5x5 (125). If a colorcube
of this size or larger can be allocated in the default colormap, then
that's done. Otherwise, GdkRgb creates its own private colormap.
Setting it to 0 means that it always tries to use the default
colormap, and setting it to 256 means that it always creates a private
one. Note, however, that setting it to 0 doesn't let you get away with
ignoring the colormap and visual - a colormap is always created in
grayscale and direct color modes, and the visual is changed in cases
where a "better" visual than the default is available.
</para>
<example>
<title>A simple example program using GdkRGB.</title>
<programlisting>
#include &lt;gtk/gtk.h&gt;
#define IMAGE_WIDTH 256
#define IMAGE_HEIGHT 256
guchar rgbbuf[IMAGE_WIDTH * IMAGE_HEIGHT * 3];
gboolean on_darea_expose (GtkWidget *widget,
GdkEventExpose *event,
gpointer user_data);
int
main (int argc, char *argv[])
{
GtkWidget *window, *darea;
gint x, y;
guchar *pos;
gtk_init (&amp;argc, &amp;argv);
gdk_rgb_init ();
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
darea = gtk_drawing_area_new ();
gtk_drawing_area_size (GTK_DRAWING_AREA (darea), IMAGE_WIDTH, IMAGE_HEIGHT);
gtk_container_add (GTK_CONTAINER (window), darea);
gtk_signal_connect (GTK_OBJECT (darea), "expose-event",
GTK_SIGNAL_FUNC (on_darea_expose), NULL);
gtk_widget_show_all (window);
/* Set up the RGB buffer. */
pos = rgbbuf;
for (y = 0; y < IMAGE_HEIGHT; y++)
{
for (x = 0; x < IMAGE_WIDTH; x++)
{
*pos++ = x - x % 32; /* Red. */
*pos++ = (x / 32) * 4 + y - y % 32; /* Green. */
*pos++ = y - y % 32; /* Blue. */
}
}
gtk_main ();
return 0;
}
gboolean
on_darea_expose (GtkWidget *widget,
GdkEventExpose *event,
gpointer user_data)
{
gdk_draw_rgb_image (widget->window, widget->style->fg_gc[GTK_STATE_NORMAL],
0, 0, IMAGE_WIDTH, IMAGE_HEIGHT,
GDK_RGB_DITHER_MAX, rgbbuf, IMAGE_WIDTH * 3);
}
</programlisting>
</example>
<!-- ##### SECTION See_Also ##### -->
<para>
<variablelist>
<varlistentry>
<term>#GdkColor</term>
<listitem><para>The underlying Gdk mechanism for allocating
colors.</para></listitem>
</varlistentry>
</variablelist>
</para>
<!-- ##### STRUCT GdkRgbCmap ##### -->
<para>
A private data structure which maps color indices to actual RGB
colors. This is used only for gdk_draw_indexed_image().
</para>
<!-- ##### ENUM GdkRgbDither ##### -->
<para>
Selects whether or not GdkRgb applies dithering
to the image on display. There are three values:
</para>
<itemizedlist>
<listitem>
<para>
%GDK_RGB_DITHER_NONE: Never use dithering.
</para>
</listitem>
<listitem>
<para>
%GDK_RGB_DITHER_NORMAL: Use dithering in 8 bits per pixel (and below)
only.
</para>
</listitem>
<listitem>
<para>
%GDK_RGB_DITHER_MAX: Use dithering in 16 bits per pixel and below.
</para>
</listitem>
</itemizedlist>
<para>
Since GdkRgb currently only handles images with 8 bits per component,
dithering on 24 bit per pixel displays is a moot point.
</para>
<!-- ##### FUNCTION gdk_rgb_init ##### -->
<para>
Initializes GdkRgb statically. It may be called more than once with no
ill effects. It must, however, be called before any other GdkRgb
operations are performed.
</para>
<para>
The GdkRgb "context" is allocated statically. Thus, GdkRgb may be used
to drive only one visual in any given application. GdkRgb
automatically selects a best visual and sets its own colormap, if
necessary. gdk_rgb_get_visual() and gdk_rgb_get_cmap () retrieve
the chosen visual and colormap, respectively.
</para>
<!-- ##### FUNCTION gdk_rgb_cmap_new ##### -->
<para>
Creates a new #GdkRgbCmap structure. The cmap maps color indexes to
RGB colors. If @n_colors is less than 256, then images containing
color values greater than or equal to @n_colors will produce undefined
results, including possibly segfaults.
</para>
@colors: The colors, represented as 0xRRGGBB integer values.
@n_colors: The number of colors in the cmap.
@Returns: The newly created #GdkRgbCmap
<!-- ##### FUNCTION gdk_rgb_cmap_free ##### -->
<para>
Frees the memory associated with a #GdkRgbCmap created by gdk_rgb_cmap_new().
</para>
@cmap: The #GdkRgbCmap to free.
<!-- ##### FUNCTION gdk_rgb_gc_set_foreground ##### -->
<para>
Sets the foreground color in @gc to the specified color (or the
closest approximation, in the case of limited visuals).
</para>
@gc: The @GdkGC to modify.
@rgb: The color, represented as a 0xRRGGBB integer value.
<!-- ##### FUNCTION gdk_rgb_gc_set_background ##### -->
<para>
Sets the background color in @gc to the specified color (or the
closest approximation, in the case of limited visuals).
</para>
@gc: The @GdkGC to modify.
@rgb: The color, represented as a 0xRRGGBB integer value.
<!-- ##### FUNCTION gdk_draw_rgb_image ##### -->
<para>
Draws an RGB image in the drawable. This is the core GdkRgb
function, and likely the only one you will need to use other than the
initialization stuff.
</para>
<para>
The @rowstride parameter allows for lines to be aligned more flexibly.
For example, lines may be allocated to begin on 32-bit boundaries,
even if the width of the rectangle is odd. Rowstride is also useful
when drawing a subrectangle of a larger image in memory. Finally, to
replicate the same line a number of times, the trick of setting
@rowstride to 0 is allowed.
</para>
<para>
In general, for 0 &lt;= i &lt; @width and 0 &lt;= j &lt; height,
the pixel (x + i, y + j) is colored with red value @rgb_buf[@j *
@rowstride + @i * 3], green value @rgb_buf[@j * @rowstride + @i * 3 +
1], and blue value @rgb_buf[@j * @rowstride + @i * 3 + 2].
</para>
@drawable: The #GdkDrawable to draw in (usually a #GdkWindow).
@gc: The graphics context (all Gdk drawing operations require one; its
contents are ignored).
@x: The x coordinate of the top-left corner in the drawable.
@y: The y coordinate of the top-left corner in the drawable.
@width: The width of the rectangle to be drawn.
@height: The height of the rectangle to be drawn.
@dith: A #GdkRgbDither value, selecting the desired dither mode.
@rgb_buf: The pixel data, represented as packed 24-bit data.
@rowstride: The number of bytes from the start of one row in @rgb_buf to the
start of the next.
<!-- ##### FUNCTION gdk_draw_indexed_image ##### -->
<para>
Draws an indexed image in the drawable, using a #GdkRgbCmap to assign
actual colors to the color indices.
</para>
@drawable: The #GdkDrawable to draw in (usually a #GdkWindow).
@gc: The graphics context.
@x: The x coordinate of the top-left corner in the drawable.
@y: The y coordinate of the top-left corner in the drawable.
@width: The width of the rectangle to be drawn.
@height: The height of the rectangle to be drawn.
@dith: A #GdkRgbDither value, selecting the desired dither mode.
@buf: The pixel data, represented as 8-bit color indices.
@rowstride: The number of bytes from the start of one row in @buf to the
start of the next.
@cmap: The #GdkRgbCmap used to assign colors to the color indices.
<!-- ##### FUNCTION gdk_draw_gray_image ##### -->
<para>
Draws a grayscale image in the drawable.
</para>
@drawable: The #GdkDrawable to draw in (usually a #GdkWindow).
@gc: The graphics context.
@x: The x coordinate of the top-left corner in the drawable.
@y: The y coordinate of the top-left corner in the drawable.
@width: The width of the rectangle to be drawn.
@height: The height of the rectangle to be drawn.
@dith: A #GdkRgbDither value, selecting the desired dither mode.
@buf: The pixel data, represented as 8-bit gray values.
@rowstride: The number of bytes from the start of one row in @buf to the
start of the next.
<!-- ##### FUNCTION gdk_draw_rgb_32_image ##### -->
<para>
Draws a padded RGB image in the drawable. The image is stored as one
pixel per 32-bit word. It is laid out as a red byte, a green byte, a
blue byte, and a padding byte.
</para>
<para>
It's unlikely that this function will give significant performance
gains in practice. In my experience, the performance gain from having
pixels aligned to 32-bit boundaries is cancelled out by the increased
memory bandwidth.
</para>
@drawable: The #GdkDrawable to draw in (usually a #GdkWindow).
@gc: The graphics context.
@x: The x coordinate of the top-left corner in the drawable.
@y: The y coordinate of the top-left corner in the drawable.
@width: The width of the rectangle to be drawn.
@height: The height of the rectangle to be drawn.
@dith: A #GdkRgbDither value, selecting the desired dither mode.
@buf: The pixel data, represented as padded 32-bit data.
@rowstride: The number of bytes from the start of one row in @buf to the
start of the next.
<!-- ##### FUNCTION gdk_draw_rgb_image_dithalign ##### -->
<para>
Draws an RGB image in the drawable, with an adjustment for dither alignment.
</para>
<para>
This function is useful when drawing dithered images into a window
that may be scrolled. Pixel (x, y) will be drawn dithered as if its
actual location is (x + @xdith, y + @ydith). Thus, if you draw an
image into a window using zero dither alignment, then scroll up one
pixel, subsequent draws to the window should have @ydith = 1.
</para>
<para>
Setting the dither alignment correctly allows updating of small parts
of the screen while avoiding visible "seams" between the different
dither textures.
</para>
@drawable: The #GdkDrawable to draw in (usually a #GdkWindow).
@gc: The graphics context.
@x: The x coordinate of the top-left corner in the drawable.
@y: The y coordinate of the top-left corner in the drawable.
@width: The width of the rectangle to be drawn.
@height: The height of the rectangle to be drawn.
@dith: A #GdkRgbDither value, selecting the desired dither mode.
@rgb_buf: The pixel data, represented as packed 24-bit data.
@rowstride: The number of bytes from the start of one row in @rgb_buf to the
start of the next.
@xdith: An x offset for dither alignment.
@ydith: A y offset for dither alignment.
<!-- ##### FUNCTION gdk_rgb_xpixel_from_rgb ##### -->
<para>
Finds the X pixel closest in color to the @rgb color specified. This
value may be used to set the <structfield>pixel</structfield> field of
a #GdkColor struct.
</para>
@rgb: The color, represented as a 0xRRGGBB integer value.
@Returns: The X pixel value.
<!-- ##### FUNCTION gdk_rgb_set_verbose ##### -->
<para>
Sets the "verbose" flag. This is generally only useful for debugging.
</para>
@verbose: TRUE if verbose messages are desired.
<!-- ##### FUNCTION gdk_rgb_ditherable ##### -->
<para>
Determine whether the visual is ditherable. This function may be
useful for presenting a user interface choice to the user about which
dither mode is desired; if the display is not ditherable, it may make
sense to gray out or hide the corresponding UI widget.
</para>
@Returns: TRUE if the visual is ditherable.
<!-- ##### FUNCTION gdk_rgb_set_install ##### -->
<para>
If @install is TRUE, directs GdkRgb to always install a new "private"
colormap rather than trying to find a best fit with the colors already
allocated. Ordinarily, GdkRgb will install a colormap only if a
sufficient cube cannot be allocated.
</para>
<para>
A private colormap has more colors, leading to better quality display,
but also leads to the dreaded "colormap flashing" effect.
</para>
@install: TRUE to set install mode.
<!-- ##### FUNCTION gdk_rgb_set_min_colors ##### -->
<para>
Sets the minimum number of colors for the color cube. Generally,
GdkRgb tries to allocate the largest color cube it can. If it can't
allocate a color cube at least as large as @min_colors, it installs a
private colormap.
</para>
@min_colors: The minimum number of colors accepted.
<!-- ##### FUNCTION gdk_rgb_get_visual ##### -->
<para>
Gets the visual chosen by GdkRgb. This visual and the corresponding
colormap should be used when creating windows that will be drawn in by GdkRgb.
</para>
@Returns: The @GdkVisual chosen by GdkRgb.
<!-- ##### FUNCTION gdk_rgb_get_cmap ##### -->
<para>
Gets the colormap set by GdkRgb. This colormap and the corresponding
visual should be used when creating windows that will be drawn in by GdkRgb.
</para>
@Returns: The @GdkColormap set by GdkRgb.

View File

@@ -1,183 +0,0 @@
<!-- ##### SECTION Title ##### -->
Selections
<!-- ##### SECTION Short_Description ##### -->
functions for transfering data via the X selection mechanism.
<!-- ##### SECTION Long_Description ##### -->
<para>
The X selection mechanism provides a way to transfer
arbitrary chunks of data between programs.
A <firstterm>selection</firstterm> is a essentially
a named clipboard, identified by a string interned
as a #GdkAtom. By claiming ownership of a selection,
an application indicates that it will be responsible
for supplying its contents. The most common
selections are <literal>PRIMARY</literal> and
<literal>CLIPBOARD</literal>.
</para>
<para>
The contents of a selection can be represented in
a number of formats, called <firstterm>targets</firstterm>.
Each target is identified by an atom. A list of
all possible targets supported by the selection owner
can be retrieved by requesting the special target
<literal>TARGETS</literal>. When a selection is
retrieved, the data is accompanied by a type
(an atom), and a format (an integer, representing
the number of bits per item). See <xref
linkend="gdk-Properties-and-Atoms"> for more information.
</para>
<para>
The functions in this section only contain the lowlevel
parts of the selection protocol. A considerably more
complicated implementation is needed on top of this.
GTK+ contains such an implementation in the functions
in <literal>gtkselection.h</literal> and programmers
should use those functions instead of the ones presented
here. If you plan to implement selection handling
directly on top of the functions here, you should refer
to the X Inter-client Communication Conventions Manual
(ICCCM).
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### ENUM GdkSelection ##### -->
<para>
The #GdkSelection enumeration contains predefined
atom values for several common selections.
</para>
@GDK_SELECTION_PRIMARY: The primary X selection. Programs
typically claim this selection when the user
selects text and paste its contents in response
to a middle button press.
@GDK_SELECTION_SECONDARY: An additional X selection.
<!-- ##### ENUM GdkSelectionType ##### -->
<para>
The #GdkSelectionType enumeration contains predefined
atom values used to represent the types of data transferred
in response to a request for a target. See the
ICCCM for details about what data should be transferred
for each of these types. Other atoms can be used,
and the recommended practice for GTK+ is to to use mime
types for this purpose. However, supporting these types
may be useful for compatibility with older programs.
</para>
@GDK_SELECTION_TYPE_ATOM: An atom. (format 32)
@GDK_SELECTION_TYPE_BITMAP: A bitmap ID. (format 32)
@GDK_SELECTION_TYPE_COLORMAP: A colormap ID. (format 32)
@GDK_SELECTION_TYPE_DRAWABLE: A drawable ID. (format 32)
@GDK_SELECTION_TYPE_INTEGER: An integer. (format 32)
@GDK_SELECTION_TYPE_PIXMAP: A pixmap ID. (format 32)
@GDK_SELECTION_TYPE_WINDOW: A window ID. (format 32)
@GDK_SELECTION_TYPE_STRING: A string encoded
in ISO Latin-1. (With the additional of <symbol>TAB</symbol>
and <symbol>NEWLINE</symbol>.) (format 8)
<!-- ##### ENUM GdkTarget ##### -->
<para>
The #GdkTarget enumeration contains predefined atom values which are
used to describe possible targets for a selection. Other atoms can be
used, and the recommended practice for GTK+ is to to use mime types
for this purpose. However, supporting these types may be useful for
compatibility with older programs.
</para>
@GDK_TARGET_BITMAP: A bitmap ID.
@GDK_TARGET_COLORMAP: A colormap ID.
@GDK_TARGET_DRAWABLE: A drawable ID.
@GDK_TARGET_PIXMAP: A pixmap ID.
@GDK_TARGET_STRING: A string encoded in ISO Latin-1.
(With the additional of <symbol>TAB</symbol>
and <symbol>NEWLINE</symbol>.)
<!-- ##### FUNCTION gdk_selection_owner_set ##### -->
<para>
Set the owner of the given selection.
</para>
@owner: a #GdkWindow or NULL to indicate that the
the owner for the given should be unset.
@selection: an atom identifying a selection.
@time: timestamp to use when setting the selection.
If this is older than the timestamp given last
time the owner was set for the given selection, the
request will be ignored.
@send_event: if %TRUE, and the new owner is different
from the current owner, the current owner
will be sent a SelectionClear event.
@Returns: %TRUE if the selection owner was succesfully
changed to @owner, otherwise %FALSE.
<!-- ##### FUNCTION gdk_selection_owner_get ##### -->
<para>
Determine the owner of the given selection.
</para>
@selection: an atom indentifying a selection.
@Returns: if there is a selection owner for this window,
and it is a window known to the current process,
the #GdkWindow that owns the selection, otherwise
NULL. Note that the return value may be owned
by a different process if a foreign window
was previously created for that window, but
a new foreign window will never be created by
this call.
<!-- ##### FUNCTION gdk_selection_convert ##### -->
<para>
Retrieve the contents of a selection in a given
form.
</para>
@requestor: a #GdkWindow.
@selection: an atom identifying the selection to get the
contents of.
@target: the form in which to retrieve the selection.
@time: the timestamp to use when retrieving the
selection. The selection owner may refuse the
request if it did not own the selection at
the time indicated by the timestamp.
<!-- ##### FUNCTION gdk_selection_property_get ##### -->
<para>
Retrieve selection data that was stored by the selection
data in response to a call to gdk_selection_convert()
</para>
@requestor: the window on which the data is stored
@data: location to store a pointer to the retrieved data.
If the retrieval failed, NULL we be stored here, otherwise, it
will be non-NULL and the returned data should be freed with g_free()
when you are finished using it. The length of the
allocated memory is one more than the the length
of the returned data, and the final byte will always
be zero, to ensure null-termination of strings.
@prop_type: location to store the type of the property.
@prop_format: location to store the format of the property.
@Returns: the length of the retrieved data.
<!-- ##### FUNCTION gdk_selection_send_notify ##### -->
<para>
Send a response to SelectionRequest event.
</para>
@requestor: window to which to deliver response.
@selection: selection that was requested.
@target: target that was selected.
@property: property in which the selection owner stored the
data, or %GDK_NONE to indicate that the request
was rejected.
@time: timestamp.

View File

@@ -1,50 +0,0 @@
<!-- ##### SECTION Title ##### -->
Threads
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### VARIABLE gdk_threads_mutex ##### -->
<para>
</para>
<!-- ##### MACRO GDK_THREADS_ENTER ##### -->
<para>
</para>
<!-- ##### MACRO GDK_THREADS_LEAVE ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_threads_enter ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_threads_leave ##### -->
<para>
</para>

View File

@@ -1,391 +0,0 @@
<!-- ##### SECTION Title ##### -->
Visuals
<!-- ##### SECTION Short_Description ##### -->
manipulation of visuals.
<!-- ##### SECTION Long_Description ##### -->
<para>
The way that the data stored on the screen is stored
in memory can vary considerably between different X
servers; some X servers even support multiple formats
used simultaneously. An X <firstterm>visual</firstterm>
represents a particular format for screen data.
It includes information about the number of bits
used for each color, the way the bits are translated
into an RGB value for display, and the way the bits
are stored in memory.
</para>
<para>
There are several standard visuals. The visual returned
by gdk_visual_get_system() is the system's default
visual. gdk_rgb_get_visual() return the visual most
suited to displaying full-color image data. If you
use the calls in GdkRGB, you should create your windows
using this visual (and the colormap returned by
gdk_rgb_get_colormap()).
</para>
<para>
A number of functions are provided for determining
the "best" available visual. For the purposes of
making this determination, higher bit depths are
considered better, and for visuals of the same
bit depth, %GDK_VISUAL_PSEUDO_COLOR is preferred at
8bpp, otherwise, the visual types are ranked in the
order of (highest to lowest) %GDK_VISUAL_DIRECT_COLOR,
%GDK_VISUAL_TRUE_COLOR, %GDK_VISUAL_PSEUDO_COLOR,
%GDK_VISUAL_STATIC_COLOR, %GDK_VISUAL_GRAYSCALE,
then %GDK_VISUAL_STATIC_GRAY.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GdkVisual ##### -->
<para>
The GdkVisual structure contains information about
a particular visual. It contains the following
public fields.
<informaltable pgwide=1 frame="none" role="struct">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry><structfield>type</structfield></entry>
<entry>The type of this visual.</entry>
</row>
<row>
<entry><structfield>depth</structfield></entry>
<entry>The number of bits per pixel.</entry>
</row>
<row>
<entry><structfield>byte_order</structfield></entry>
<entry>The byte-order for this visual.</entry>
</row>
<row>
<entry><structfield>colormap_size</structfield></entry>
<entry>The number of entries in the colormap, for
visuals of type GDK_VISUAL_PSEUDO_COLOR or
GDK_VISUAL_GRAY_SCALE. For other visual types, it
is the number of possible levels per color component.
If the visual has different numbers of levels for
different components, the value of this field is
undefined.</entry>
</row>
<row>
<entry><structfield>bits_per_rgb</structfield></entry>
<entry>
The number of significant bits per red, green, or blue
when specifying colors for this visual. (For instance,
for gdk_colormap_alloc_color())
</entry>
</row>
<row>
<entry><structfield>red_mask</structfield></entry>
<entry>
A mask giving the bits in a pixel value that
correspond to the red field. Significant only for
%GDK_VISUAL_PSEUDOCOLOR and %GDK_VISUAL_DIRECTCOLOR.
</entry>
</row>
<row>
<entry><structfield>red_shift, red_prec</structfield></entry>
<entry>
The <structfield>red_shift</structfield> and
<structfield>red_prec</structfield> give an alternate presentation
of the information in <structfield>red_mask</structfield>.
<structfield>red_mask</structfield> is a contiguous sequence
of <structfield>red_prec</structfield> starting at bit
number <structfield>red_shift</structfield>. For example,
<xref linkend="rgbmask"> shows constructing a pixel value
out of three 16 bit color values.
</entry>
</row>
<row>
<entry><structfield>green_mask</structfield></entry>
<entry>
A mask giving the bits in a pixel value that
correspond to the green field.
</entry>
</row>
<row>
<entry><structfield>green_shift, green_prec</structfield></entry>
<entry>
The <structfield>green_shift</structfield> and
<structfield>green_prec</structfield> give an alternate presentation
of the information in <structfield>green_mask</structfield>.
</entry>
</row>
<row>
<entry><structfield>blue_mask</structfield></entry>
<entry>
A mask giving the bits in a pixel value that
correspond to the blue field.
</entry>
</row>
<row>
<entry><structfield>blue_shift, blue_prec</structfield></entry>
<entry>
The <structfield>blue_shift</structfield> and
<structfield>blue_prec</structfield> give an alternate presentation
of the information in <structfield>blue_mask</structfield>.
</entry>
</row>
</tbody></tgroup></informaltable>
</para>
<figure float="1" id="rgbmask">
<title>Constructing a pixel value from components</title>
<programlisting>
guint
pixel_from_rgb (GdkVisual *visual,
guchar r, guchar b, guchar g)
{
return ((r >> (16 - visual->red_prec)) << visual->red_shift) |
((g >> (16 - visual->green_prec)) << visual->green_shift) |
((r >> (16 - visual->blue_prec)) << visual->blue_shift);
}
</programlisting>
</figure>
@type:
@depth:
@byte_order:
@colormap_size:
@bits_per_rgb:
@red_mask:
@red_shift:
@red_prec:
@green_mask:
@green_shift:
@green_prec:
@blue_mask:
@blue_shift:
@blue_prec:
<!-- ##### ENUM GdkVisualType ##### -->
<para>
A set of values that describe the manner in which the
pixel values for a visual are converted into RGB
values for display.
<informaltable pgwide=1 frame="none" role="enum">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>GDK_VISUAL_STATIC_GRAY</entry>
<entry>Each pixel value indexes a grayscale value directly.</entry>
</row>
<row>
<entry>GDK_VISUAL_GRAYSCALE</entry>
<entry>Each pixel is an index into a color map that maps
pixel values into grayscale values. The color map can
be changed by an application.</entry>
</row>
<row>
<entry>GDK_VISUAL_STATIC_COLOR</entry>
<entry>Each pixel value is an index into a predefined,
unmodifiable color map that maps pixel values into
rgb values.</entry>
</row>
<row>
<entry>GDK_VISUAL_PSEUDO_COLOR</entry>
<entry>Each pixel is an index into a color map that maps
pixel values into rgb values. The color map can
be changed by an application.</entry>
</row>
<row>
<entry>GDK_TRUE_COLOR</entry>
<entry>Each pixel value directly contains red, green,
and blue components. The <structfield>red_mask</structfield>,
<structfield>green_mask</structfield>, and
<structfield>blue_mask</structfield> fields of the #GdkVisual
structure describe how the components are assembled into
a pixel value.
.</entry>
</row>
<row>
<entry>GDK_DIRECT_COLOR</entry>
<entry>Each pixel value contains red, green, and blue
components as for %GDK_TRUE_COLOR, but the components
are mapped via a color table into the final output
table instead of being converted directly..</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@GDK_VISUAL_STATIC_GRAY:
@GDK_VISUAL_GRAYSCALE:
@GDK_VISUAL_STATIC_COLOR:
@GDK_VISUAL_PSEUDO_COLOR:
@GDK_VISUAL_TRUE_COLOR:
@GDK_VISUAL_DIRECT_COLOR:
<!-- ##### ENUM GdkByteOrder ##### -->
<para>
A set of values describing the possible byte-orders
for storing pixel values in memory.
<informaltable pgwide=1 frame="none" role="enum">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>GDK_LSB_FIRST</entry>
<entry>The values are stored with the least-significant byte
first. For instance, the 32-bit value 0xffeecc would be stored
in memory as 0xcc, 0xee, 0xff, 0x00.</entry>
</row>
<row>
<entry>GDK_MSB_FIRST</entry>
<entry>The values are stored with the least-significant byte
first. For instance, the 32-bit value 0xffeecc would be stored
in memory as 0xff, 0xee, 0xcc, 0x00.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@GDK_LSB_FIRST:
@GDK_MSB_FIRST:
<!-- ##### FUNCTION gdk_query_depths ##### -->
<para>
Lists the available color depths. The returned values
are pointers to static storage and should not be
modified or freed.
</para>
@depths: a location to store a pointer to an array
holding the available color depths.
@count: a location to store the number of values in @depths.
<!-- ##### FUNCTION gdk_query_visual_types ##### -->
<para>
Lists the available visual types. The returned values
are pointers to static storage and should not be
modified or freed.
</para>
@visual_types: a location to store a pointer to an
array holding the available visual types.
@count: a location to store the number of values in @visual types.
<!-- ##### FUNCTION gdk_list_visuals ##### -->
<para>
Lists the available visuals.
</para>
@Returns: A #GList of the available visuals. The list
should be freed this list with g_list_free().
<!-- ##### FUNCTION gdk_visual_get_best_depth ##### -->
<para>
Returns the best available color depth.
</para>
@Returns: the best available color depth.
<!-- ##### FUNCTION gdk_visual_get_best_type ##### -->
<para>
Returns the best available visual type.
</para>
@Returns: the best available visual type.
<!-- ##### FUNCTION gdk_visual_get_system ##### -->
<para>
Returns the system's default visual.
</para>
@Returns: the system's default visual.
<!-- ##### FUNCTION gdk_visual_get_best ##### -->
<para>
Returns the best available visual.
</para>
@Returns: the best available visual.
<!-- ##### FUNCTION gdk_visual_get_best_with_depth ##### -->
<para>
Returns the best available visual with a certain depth.
</para>
@depth: the desired color depth
@Returns: the best available visual with @depth bits per pixel
or %NULL if no visuals with that type are available.
<!-- ##### FUNCTION gdk_visual_get_best_with_type ##### -->
<para>
Returns the best available visual of a certain visual type.
</para>
@visual_type: the desired visual type.
@Returns: the visual of the given type with the highest depth
or %NULL if no visuals of that type are available.
<!-- ##### FUNCTION gdk_visual_get_best_with_both ##### -->
<para>
Returns the best available visual
</para>
@depth: the desired visual type.
@visual_type: the desired depth.
@Returns: the best available visual with the given depth
and visual type, or %NULL if no matching visuals are
available.
<!-- ##### FUNCTION gdk_visual_ref ##### -->
<para>
In theory, increases the reference count of a visual. However,
the set of visuals is determined statically when GTK+ is
initialized, so this operation does nothing.
</para>
@visual: a #GdkVisual.
@Returns: @visual.
<!-- ##### FUNCTION gdk_visual_unref ##### -->
<para>
In theory, decreases the reference count of a visual. Like
gdk_visual_ref(), this operation does nothing.
</para>
@visual: a #GdkVisual.

View File

@@ -1,777 +0,0 @@
<!-- ##### SECTION Title ##### -->
Windows
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GdkWindowAttr ##### -->
<para>
</para>
@title:
@event_mask:
@x:
@y:
@width:
@height:
@wclass:
@visual:
@colormap:
@window_type:
@cursor:
@wmclass_name:
@wmclass_class:
@override_redirect:
<!-- ##### STRUCT GdkWindow ##### -->
<para>
</para>
@user_data:
<!-- ##### ENUM GdkWindowType ##### -->
<para>
</para>
@GDK_WINDOW_ROOT:
@GDK_WINDOW_TOPLEVEL:
@GDK_WINDOW_CHILD:
@GDK_WINDOW_DIALOG:
@GDK_WINDOW_TEMP:
@GDK_WINDOW_PIXMAP:
@GDK_WINDOW_FOREIGN:
<!-- ##### ENUM GdkWindowClass ##### -->
<para>
</para>
@GDK_INPUT_OUTPUT:
@GDK_INPUT_ONLY:
<!-- ##### ENUM GdkWindowAttributesType ##### -->
<para>
</para>
@GDK_WA_TITLE:
@GDK_WA_X:
@GDK_WA_Y:
@GDK_WA_CURSOR:
@GDK_WA_COLORMAP:
@GDK_WA_VISUAL:
@GDK_WA_WMCLASS:
@GDK_WA_NOREDIR:
<!-- ##### ENUM GdkWindowHints ##### -->
<para>
</para>
@GDK_HINT_POS:
@GDK_HINT_MIN_SIZE:
@GDK_HINT_MAX_SIZE:
@GDK_HINT_BASE_SIZE:
@GDK_HINT_ASPECT:
@GDK_HINT_RESIZE_INC:
<!-- ##### STRUCT GdkGeometry ##### -->
<para>
</para>
@min_width:
@min_height:
@max_width:
@max_height:
@base_width:
@base_height:
@width_inc:
@height_inc:
@min_aspect:
@max_aspect:
<!-- ##### FUNCTION gdk_window_new ##### -->
<para>
</para>
@parent:
@attributes:
@attributes_mask:
@Returns:
<!-- ##### FUNCTION gdk_window_destroy ##### -->
<para>
</para>
@window:
<!-- ##### FUNCTION gdk_window_ref ##### -->
<para>
</para>
@window:
@Returns:
<!-- ##### FUNCTION gdk_window_unref ##### -->
<para>
</para>
@window:
<!-- ##### FUNCTION gdk_window_at_pointer ##### -->
<para>
</para>
@win_x:
@win_y:
@Returns:
<!-- ##### FUNCTION gdk_window_show ##### -->
<para>
</para>
@window:
<!-- ##### FUNCTION gdk_window_hide ##### -->
<para>
</para>
@window:
<!-- ##### FUNCTION gdk_window_is_visible ##### -->
<para>
</para>
@window:
@Returns:
<!-- ##### FUNCTION gdk_window_is_viewable ##### -->
<para>
</para>
@window:
@Returns:
<!-- ##### FUNCTION gdk_window_withdraw ##### -->
<para>
</para>
@window:
<!-- ##### FUNCTION gdk_window_move ##### -->
<para>
</para>
@window:
@x:
@y:
<!-- ##### FUNCTION gdk_window_resize ##### -->
<para>
</para>
@window:
@width:
@height:
<!-- ##### FUNCTION gdk_window_move_resize ##### -->
<para>
</para>
@window:
@x:
@y:
@width:
@height:
<!-- ##### FUNCTION gdk_window_reparent ##### -->
<para>
</para>
@window:
@new_parent:
@x:
@y:
<!-- ##### FUNCTION gdk_window_clear ##### -->
<para>
</para>
@window:
<!-- ##### FUNCTION gdk_window_clear_area ##### -->
<para>
</para>
@window:
@x:
@y:
@width:
@height:
<!-- ##### FUNCTION gdk_window_clear_area_e ##### -->
<para>
</para>
@window:
@x:
@y:
@width:
@height:
<!-- ##### FUNCTION gdk_window_copy_area ##### -->
<para>
</para>
@window:
@gc:
@x:
@y:
@source_window:
@source_x:
@source_y:
@width:
@height:
<!-- ##### FUNCTION gdk_window_raise ##### -->
<para>
</para>
@window:
<!-- ##### FUNCTION gdk_window_lower ##### -->
<para>
</para>
@window:
<!-- ##### FUNCTION gdk_window_register_dnd ##### -->
<para>
</para>
@window:
<!-- ##### FUNCTION gdk_window_set_user_data ##### -->
<para>
</para>
@window:
@user_data:
<!-- ##### FUNCTION gdk_window_set_override_redirect ##### -->
<para>
</para>
@window:
@override_redirect:
<!-- ##### FUNCTION gdk_window_add_filter ##### -->
<para>
</para>
@window:
@function:
@data:
<!-- ##### FUNCTION gdk_window_remove_filter ##### -->
<para>
</para>
@window:
@function:
@data:
<!-- ##### USER_FUNCTION GdkFilterFunc ##### -->
<para>
</para>
@xevent:
@event:
@data:
@Returns:
<!-- ##### ENUM GdkFilterReturn ##### -->
<para>
</para>
@GDK_FILTER_CONTINUE:
@GDK_FILTER_TRANSLATE:
@GDK_FILTER_REMOVE:
<!-- ##### FUNCTION gdk_window_shape_combine_mask ##### -->
<para>
</para>
@window:
@shape_mask:
@offset_x:
@offset_y:
<!-- ##### FUNCTION gdk_window_set_child_shapes ##### -->
<para>
</para>
@window:
<!-- ##### FUNCTION gdk_window_merge_child_shapes ##### -->
<para>
</para>
@window:
<!-- ##### FUNCTION gdk_window_set_static_gravities ##### -->
<para>
</para>
@window:
@use_static:
@Returns:
<!-- ##### FUNCTION gdk_window_set_hints ##### -->
<para>
</para>
@window:
@x:
@y:
@min_width:
@min_height:
@max_width:
@max_height:
@flags:
<!-- ##### FUNCTION gdk_window_set_title ##### -->
<para>
</para>
@window:
@title:
<!-- ##### FUNCTION gdk_window_set_background ##### -->
<para>
</para>
@window:
@color:
<!-- ##### FUNCTION gdk_window_set_back_pixmap ##### -->
<para>
</para>
@window:
@pixmap:
@parent_relative:
<!-- ##### MACRO GDK_PARENT_RELATIVE ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_window_set_cursor ##### -->
<para>
</para>
@window:
@cursor:
<!-- ##### FUNCTION gdk_window_set_colormap ##### -->
<para>
</para>
@window:
@colormap:
<!-- ##### FUNCTION gdk_window_get_user_data ##### -->
<para>
</para>
@window:
@data:
<!-- ##### FUNCTION gdk_window_get_geometry ##### -->
<para>
</para>
@window:
@x:
@y:
@width:
@height:
@depth:
<!-- ##### FUNCTION gdk_window_set_geometry_hints ##### -->
<para>
</para>
@window:
@geometry:
@flags:
<!-- ##### FUNCTION gdk_window_get_position ##### -->
<para>
</para>
@window:
@x:
@y:
<!-- ##### FUNCTION gdk_window_get_root_origin ##### -->
<para>
</para>
@window:
@x:
@y:
<!-- ##### FUNCTION gdk_window_get_size ##### -->
<para>
</para>
@window:
@width:
@height:
<!-- ##### FUNCTION gdk_window_get_visual ##### -->
<para>
</para>
@window:
@Returns:
<!-- ##### FUNCTION gdk_window_get_colormap ##### -->
<para>
</para>
@window:
@Returns:
<!-- ##### FUNCTION gdk_window_get_type ##### -->
<para>
</para>
@window:
@Returns:
<!-- ##### FUNCTION gdk_window_get_origin ##### -->
<para>
</para>
@window:
@x:
@y:
@Returns:
<!-- ##### FUNCTION gdk_window_get_deskrelative_origin ##### -->
<para>
</para>
@window:
@x:
@y:
@Returns:
<!-- ##### FUNCTION gdk_window_get_pointer ##### -->
<para>
</para>
@window:
@x:
@y:
@mask:
@Returns:
<!-- ##### ENUM GdkModifierType ##### -->
<para>
</para>
@GDK_SHIFT_MASK:
@GDK_LOCK_MASK:
@GDK_CONTROL_MASK:
@GDK_MOD1_MASK:
@GDK_MOD2_MASK:
@GDK_MOD3_MASK:
@GDK_MOD4_MASK:
@GDK_MOD5_MASK:
@GDK_BUTTON1_MASK:
@GDK_BUTTON2_MASK:
@GDK_BUTTON3_MASK:
@GDK_BUTTON4_MASK:
@GDK_BUTTON5_MASK:
@GDK_RELEASE_MASK:
@GDK_MODIFIER_MASK:
<!-- ##### FUNCTION gdk_window_get_parent ##### -->
<para>
</para>
@window:
@Returns:
<!-- ##### FUNCTION gdk_window_get_toplevel ##### -->
<para>
</para>
@window:
@Returns:
<!-- ##### FUNCTION gdk_window_get_children ##### -->
<para>
</para>
@window:
@Returns:
<!-- ##### FUNCTION gdk_window_get_events ##### -->
<para>
</para>
@window:
@Returns:
<!-- ##### FUNCTION gdk_window_set_events ##### -->
<para>
</para>
@window:
@event_mask:
<!-- ##### FUNCTION gdk_window_set_icon ##### -->
<para>
</para>
@window:
@icon_window:
@pixmap:
@mask:
<!-- ##### FUNCTION gdk_window_set_icon_name ##### -->
<para>
</para>
@window:
@name:
<!-- ##### FUNCTION gdk_window_set_transient_for ##### -->
<para>
</para>
@window:
@leader:
<!-- ##### FUNCTION gdk_window_set_role ##### -->
<para>
</para>
@window:
@role:
<!-- ##### FUNCTION gdk_window_set_group ##### -->
<para>
</para>
@window:
@leader:
<!-- ##### FUNCTION gdk_window_set_decorations ##### -->
<para>
</para>
@window:
@decorations:
<!-- ##### ENUM GdkWMDecoration ##### -->
<para>
</para>
@GDK_DECOR_ALL:
@GDK_DECOR_BORDER:
@GDK_DECOR_RESIZEH:
@GDK_DECOR_TITLE:
@GDK_DECOR_MENU:
@GDK_DECOR_MINIMIZE:
@GDK_DECOR_MAXIMIZE:
<!-- ##### FUNCTION gdk_window_set_functions ##### -->
<para>
</para>
@window:
@functions:
<!-- ##### ENUM GdkWMFunction ##### -->
<para>
</para>
@GDK_FUNC_ALL:
@GDK_FUNC_RESIZE:
@GDK_FUNC_MOVE:
@GDK_FUNC_MINIMIZE:
@GDK_FUNC_MAXIMIZE:
@GDK_FUNC_CLOSE:
<!-- ##### FUNCTION gdk_window_get_toplevels ##### -->
<para>
</para>
@Returns:
<!-- ##### STRUCT GdkDrawable ##### -->
<para>
</para>
@user_data:
<!-- ##### FUNCTION gdk_drawable_set_data ##### -->
<para>
</para>
@drawable:
@key:
@data:
@destroy_func:

View File

@@ -1,6 +0,0 @@
Makefile
Makefile.in
sgml
html
gtk-decl-list.txt
gtk-unused.txt

View File

@@ -1,59 +0,0 @@
## Process this file with automake to produce Makefile.in
# The name of the module.
DOC_MODULE=gtk
# The top-level SGML file.
DOC_MAIN_SGML_FILE=gtk-docs.sgml
# We could alternatively use this for using installed headers.
INCLUDE_DIR=`gtk-config --prefix`/include/gtk
TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
CFLAGS=`gtk-config --cflags`
LDFLAGS=`gtk-config --libs`
scan:
CFLAGS=$(CFLAGS) LDFLAGS=$(LDFLAGS) gtkdoc-scanobj --module=$(DOC_MODULE)
gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers='gtkintl.h' $(INCLUDE_DIR)/*.h
templates: scan
gtkdoc-mktmpl --module=$(DOC_MODULE)
sgml:
gtkdoc-mkdb --module=$(DOC_MODULE)
html:
if ! test -d html ; then mkdir html ; fi
-cd html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
clean-local:
rm -f *~ *.bak *.hierarchy *.signals *.args *-unused.txt
maintainer-clean-local: clean
rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
install-data-local:
install -d -m 0755 $(TARGET_DIR)
install -m 0644 html/*.html $(TARGET_DIR)
install -m 0644 html/index.sgml $(TARGET_DIR)
gtkdoc-fixxref --module=$(DOC_MODULE) --html-dir=$(HTML_DIR)
EXTRA_DIST = \
$(DOC_MAIN_SGML_FILE) \
$(DOC_MODULE)-sections.txt \
gtk-overrides.txt \
gtk-decl.txt \
gtk.hierarchy \
gtk.signals \
gtk.args \
gtk.types \
objects_grouped.sgml
dist-hook:
mkdir $(distdir)/tmpl
cp -p tmpl/*.sgml $(distdir)/tmpl
.PHONY : html sgml templates scan

File diff suppressed because it is too large Load Diff

View File

@@ -1,293 +0,0 @@
<!doctype book PUBLIC "-//Davenport//DTD DocBook V3.0//EN" [
<!entity hash "#">
<!entity GtkAccelLabel SYSTEM "sgml/gtkaccellabel.sgml">
<!entity GtkAdjustment SYSTEM "sgml/gtkadjustment.sgml">
<!entity GtkAlignment SYSTEM "sgml/gtkalignment.sgml">
<!entity GtkArrow SYSTEM "sgml/gtkarrow.sgml">
<!entity GtkAspectFrame SYSTEM "sgml/gtkaspectframe.sgml">
<!entity GtkButtonBox SYSTEM "sgml/gtkbbox.sgml">
<!entity GtkBin SYSTEM "sgml/gtkbin.sgml">
<!entity GtkBox SYSTEM "sgml/gtkbox.sgml">
<!entity GtkButton SYSTEM "sgml/gtkbutton.sgml">
<!entity GtkCalendar SYSTEM "sgml/gtkcalendar.sgml">
<!entity GtkCheckButton SYSTEM "sgml/gtkcheckbutton.sgml">
<!entity GtkCheckMenuItem SYSTEM "sgml/gtkcheckmenuitem.sgml">
<!entity GtkCList SYSTEM "sgml/gtkclist.sgml">
<!entity GtkColorSelection SYSTEM "sgml/gtkcolorsel.sgml">
<!entity GtkColorSelectionDialog SYSTEM "sgml/gtkcolorseldlg.sgml">
<!entity GtkCombo SYSTEM "sgml/gtkcombo.sgml">
<!entity GtkContainer SYSTEM "sgml/gtkcontainer.sgml">
<!entity GtkCTree SYSTEM "sgml/gtkctree.sgml">
<!entity GtkCurve SYSTEM "sgml/gtkcurve.sgml">
<!entity GtkData SYSTEM "sgml/gtkdata.sgml">
<!entity GtkDialog SYSTEM "sgml/gtkdialog.sgml">
<!entity GtkDrawingArea SYSTEM "sgml/gtkdrawingarea.sgml">
<!entity GtkEditable SYSTEM "sgml/gtkeditable.sgml">
<!entity GtkEntry SYSTEM "sgml/gtkentry.sgml">
<!entity GtkEventBox SYSTEM "sgml/gtkeventbox.sgml">
<!entity GtkFileSelection SYSTEM "sgml/gtkfilesel.sgml">
<!entity GtkFixed SYSTEM "sgml/gtkfixed.sgml">
<!entity GtkFontSelection SYSTEM "sgml/gtkfontsel.sgml">
<!entity GtkFontSelectionDialog SYSTEM "sgml/gtkfontseldlg.sgml">
<!entity GtkFrame SYSTEM "sgml/gtkframe.sgml">
<!entity GtkGammaCurve SYSTEM "sgml/gtkgamma.sgml">
<!entity GtkHandleBox SYSTEM "sgml/gtkhandlebox.sgml">
<!entity GtkHButtonBox SYSTEM "sgml/gtkhbbox.sgml">
<!entity GtkHBox SYSTEM "sgml/gtkhbox.sgml">
<!entity GtkHPaned SYSTEM "sgml/gtkhpaned.sgml">
<!entity GtkHRuler SYSTEM "sgml/gtkhruler.sgml">
<!entity GtkHScale SYSTEM "sgml/gtkhscale.sgml">
<!entity GtkHScrollbar SYSTEM "sgml/gtkhscrollbar.sgml">
<!entity GtkHSeparator SYSTEM "sgml/gtkhseparator.sgml">
<!entity GtkImage SYSTEM "sgml/gtkimage.sgml">
<!entity GtkInputDialog SYSTEM "sgml/gtkinputdialog.sgml">
<!entity GtkInvisible SYSTEM "sgml/gtkinvisible.sgml">
<!entity GtkItem SYSTEM "sgml/gtkitem.sgml">
<!entity GtkItemFactory SYSTEM "sgml/gtkitemfactory.sgml">
<!entity GtkLabel SYSTEM "sgml/gtklabel.sgml">
<!entity GtkLayout SYSTEM "sgml/gtklayout.sgml">
<!entity GtkList SYSTEM "sgml/gtklist.sgml">
<!entity GtkListItem SYSTEM "sgml/gtklistitem.sgml">
<!entity GtkMenu SYSTEM "sgml/gtkmenu.sgml">
<!entity GtkMenuBar SYSTEM "sgml/gtkmenubar.sgml">
<!entity GtkMenuItem SYSTEM "sgml/gtkmenuitem.sgml">
<!entity GtkMenuShell SYSTEM "sgml/gtkmenushell.sgml">
<!entity GtkMisc SYSTEM "sgml/gtkmisc.sgml">
<!entity GtkNotebook SYSTEM "sgml/gtknotebook.sgml">
<!entity GtkObject SYSTEM "sgml/gtkobject.sgml">
<!entity GtkOptionMenu SYSTEM "sgml/gtkoptionmenu.sgml">
<!entity GtkPacker SYSTEM "sgml/gtkpacker.sgml">
<!entity GtkPaned SYSTEM "sgml/gtkpaned.sgml">
<!entity GtkPixmap SYSTEM "sgml/gtkpixmap.sgml">
<!entity GtkPlug SYSTEM "sgml/gtkplug.sgml">
<!entity GtkPreview SYSTEM "sgml/gtkpreview.sgml">
<!entity GtkProgress SYSTEM "sgml/gtkprogress.sgml">
<!entity GtkProgressBar SYSTEM "sgml/gtkprogressbar.sgml">
<!entity GtkRadioButton SYSTEM "sgml/gtkradiobutton.sgml">
<!entity GtkRadioMenuItem SYSTEM "sgml/gtkradiomenuitem.sgml">
<!entity GtkRange SYSTEM "sgml/gtkrange.sgml">
<!entity GtkRuler SYSTEM "sgml/gtkruler.sgml">
<!entity GtkScale SYSTEM "sgml/gtkscale.sgml">
<!entity GtkScrollbar SYSTEM "sgml/gtkscrollbar.sgml">
<!entity GtkScrolledWindow SYSTEM "sgml/gtkscrolledwindow.sgml">
<!entity GtkSeparator SYSTEM "sgml/gtkseparator.sgml">
<!entity GtkSocket SYSTEM "sgml/gtksocket.sgml">
<!entity GtkSpinButton SYSTEM "sgml/gtkspinbutton.sgml">
<!entity GtkStatusbar SYSTEM "sgml/gtkstatusbar.sgml">
<!entity GtkTable SYSTEM "sgml/gtktable.sgml">
<!entity GtkTearoffMenuItem SYSTEM "sgml/gtktearoffmenuitem.sgml">
<!entity GtkText SYSTEM "sgml/gtktext.sgml">
<!entity GtkTipsQuery SYSTEM "sgml/gtktipsquery.sgml">
<!entity GtkToggleButton SYSTEM "sgml/gtktogglebutton.sgml">
<!entity GtkToolbar SYSTEM "sgml/gtktoolbar.sgml">
<!entity GtkTooltips SYSTEM "sgml/gtktooltips.sgml">
<!entity GtkTree SYSTEM "sgml/gtktree.sgml">
<!entity GtkTreeItem SYSTEM "sgml/gtktreeitem.sgml">
<!entity GtkVButtonBox SYSTEM "sgml/gtkvbbox.sgml">
<!entity GtkVBox SYSTEM "sgml/gtkvbox.sgml">
<!entity GtkViewport SYSTEM "sgml/gtkviewport.sgml">
<!entity GtkVPaned SYSTEM "sgml/gtkvpaned.sgml">
<!entity GtkVRuler SYSTEM "sgml/gtkvruler.sgml">
<!entity GtkVScale SYSTEM "sgml/gtkvscale.sgml">
<!entity GtkVScrollbar SYSTEM "sgml/gtkvscrollbar.sgml">
<!entity GtkVSeparator SYSTEM "sgml/gtkvseparator.sgml">
<!entity GtkWidget SYSTEM "sgml/gtkwidget.sgml">
<!entity GtkWindow SYSTEM "sgml/gtkwindow.sgml">
<!entity gtk-General SYSTEM "sgml/gtkmain.sgml">
<!entity gtk-Feature-Test-Macros SYSTEM "sgml/gtkfeatures.sgml">
<!entity gtk-Graphics-Contexts SYSTEM "sgml/gtkgc.sgml">
<!entity gtk-Styles SYSTEM "sgml/gtkstyle.sgml">
<!entity gtk-Themes SYSTEM "sgml/gtkthemes.sgml">
<!entity gtk-Resource-Files SYSTEM "sgml/gtkrc.sgml">
<!entity gtk-Keyboard-Accelerators SYSTEM "sgml/gtkaccelgroup.sgml">
<!entity gtk-Selections SYSTEM "sgml/gtkselection.sgml">
<!entity gtk-Drag-and-Drop SYSTEM "sgml/gtkdnd.sgml">
<!entity gtk-Signals SYSTEM "sgml/gtksignal.sgml">
<!entity gtk-Signal-Marshallers SYSTEM "sgml/gtkmarshal.sgml">
<!entity gtk-Object-Properties SYSTEM "sgml/gtkarg.sgml">
<!entity gtk-Types SYSTEM "sgml/gtktypeutils.sgml">
<!entity gtk-Bindings SYSTEM "sgml/gtkbindings.sgml">
<!entity gtk-Standard-Enumerations SYSTEM "sgml/gtkenums.sgml">
<!entity gtk-Private-Information SYSTEM "sgml/gtkprivate.sgml">
<!entity index-Object-Tree SYSTEM "sgml/tree_index.sgml">
<!entity index-Objects-Grouped SYSTEM "objects_grouped.sgml">
]>
<book id="index">
<bookinfo>
<title>GTK+ Reference Manual</title>
</bookinfo>
<chapter id="gtk">
<title>GTK+ </title>
<para>
GTK+ is a multi-platform open source GUI Toolkit. Everything about
GTK+ from the object-oriented design to the Free Software LGPL
licensing allows you to code your project with the most freedom
possible. You can develop open software, free software, or even
commercial non-free software without having to spend a dime for
licenses or royalties.
</para>
<para>
GTK+ is a set of libraries to create graphical user interfaces. It
works on many Unix-like platforms, and a Windows version is in
development. GTK+ is released under the GNU Library General Public
License (GNU LGPL), which allows for flexible licensing of client
applications. GTK+ has a C-based object-oriented architecture that
allows for maximum flexibility. Bindings for other languages have
been written, including C++, Objective-C, Guile/Scheme, Perl, Python,
TOM, Ada95, Free Pascal, and Eiffel.
</para>
<para>
GTK+ consists of the following component libraries:
<variablelist>
<varlistentry>
<term>GLib</term>
<listitem><para>
Provides many useful data types, macros, type conversions,
string utilities and a lexical scanner. Includes Win32 support.
</para></listitem>
</varlistentry>
<varlistentry>
<term>GDK</term>
<listitem><para>
A wrapper for low-level windowing functions.
</para></listitem>
</varlistentry>
<varlistentry>
<term>GTK+</term>
<listitem><para>
An advanced widget set.
</para></listitem>
</varlistentry>
</variablelist>
</para>
&gtk-General;
&gtk-Feature-Test-Macros;
&gtk-Graphics-Contexts;
&gtk-Styles;
&gtk-Themes;
&gtk-Resource-Files;
&gtk-Keyboard-Accelerators;
&gtk-Selections;
&gtk-Drag-and-Drop;
&gtk-Signals;
&gtk-Signal-Marshallers;
&gtk-Object-Properties;
&gtk-Types;
&gtk-Bindings;
&gtk-Standard-Enumerations;
&gtk-Private-Information;
</chapter>
<chapter id="gtkobjects" role="no-toc">
<title>GTK+ Widgets and Objects</title>
&index-Objects-Grouped;
&GtkAccelLabel;
&GtkAdjustment;
&GtkAlignment;
&GtkArrow;
&GtkAspectFrame;
&GtkButtonBox;
&GtkBin;
&GtkBox;
&GtkButton;
&GtkCalendar;
&GtkCheckButton;
&GtkCheckMenuItem;
&GtkCList;
&GtkColorSelection;
&GtkColorSelectionDialog;
&GtkCombo;
&GtkContainer;
&GtkCTree;
&GtkCurve;
&GtkData;
&GtkDialog;
&GtkDrawingArea;
&GtkEditable;
&GtkEntry;
&GtkEventBox;
&GtkFileSelection;
&GtkFixed;
&GtkFontSelection;
&GtkFontSelectionDialog;
&GtkFrame;
&GtkGammaCurve;
&GtkHandleBox;
&GtkHButtonBox;
&GtkHBox;
&GtkHPaned;
&GtkHRuler;
&GtkHScale;
&GtkHScrollbar;
&GtkHSeparator;
&GtkImage;
&GtkInputDialog;
&GtkInvisible;
&GtkItem;
&GtkItemFactory;
&GtkLabel;
&GtkLayout;
&GtkList;
&GtkListItem;
&GtkMenu;
&GtkMenuBar;
&GtkMenuItem;
&GtkMenuShell;
&GtkMisc;
&GtkNotebook;
&GtkObject;
&GtkOptionMenu;
&GtkPacker;
&GtkPaned;
&GtkPixmap;
&GtkPlug;
&GtkPreview;
&GtkProgress;
&GtkProgressBar;
&GtkRadioButton;
&GtkRadioMenuItem;
&GtkRange;
&GtkRuler;
&GtkScale;
&GtkScrollbar;
&GtkScrolledWindow;
&GtkSeparator;
&GtkSocket;
&GtkSpinButton;
&GtkStatusbar;
&GtkTable;
&GtkTearoffMenuItem;
&GtkText;
&GtkTipsQuery;
&GtkToggleButton;
&GtkToolbar;
&GtkTooltips;
&GtkTree;
&GtkTreeItem;
&GtkVButtonBox;
&GtkVBox;
&GtkViewport;
&GtkVPaned;
&GtkVRuler;
&GtkVScale;
&GtkVScrollbar;
&GtkVSeparator;
&GtkWidget;
&GtkWindow;
</chapter>
<chapter id="gtk-index">
<title>Index</title>
<sect1>
<title>Object Hierarchy</title>
&index-Object-Tree;
</sect1>
</chapter>
</book>

View File

@@ -1,19 +0,0 @@
# These are manually-edited to override or add declarations to those scanned
# from the GTK header files.
# These haven't been given parameter names in the header files.
<USER_FUNCTION>
<NAME>GtkArgGetFunc</NAME>
<RETURNS>void</RETURNS>
GtkObject *object,
GtkArg *arg,
guint arg_id
</USER_FUNCTION>
<USER_FUNCTION>
<NAME>GtkArgSetFunc</NAME>
<RETURNS>void</RETURNS>
GtkObject *object,
GtkArg *arg,
guint arg_id
</USER_FUNCTION>

File diff suppressed because it is too large Load Diff

View File

@@ -1,846 +0,0 @@
<ARG>
<NAME>GtkAccelLabel::accel_widget</NAME>
<TYPE>GtkWidget</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkAlignment::xalign</NAME>
<TYPE>gfloat</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkAlignment::yalign</NAME>
<TYPE>gfloat</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkAlignment::xscale</NAME>
<TYPE>gfloat</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkAlignment::yscale</NAME>
<TYPE>gfloat</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkArrow::arrow_type</NAME>
<TYPE>GtkArrowType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkArrow::shadow_type</NAME>
<TYPE>GtkShadowType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkBox::spacing</NAME>
<TYPE>gint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkBox::homogeneous</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkButton::label</NAME>
<TYPE>GtkString</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkButton::relief</NAME>
<TYPE>GtkReliefStyle</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkCList::n_columns</NAME>
<TYPE>guint</TYPE>
<FLAGS>rwX</FLAGS>
</ARG>
<ARG>
<NAME>GtkCList::shadow_type</NAME>
<TYPE>GtkShadowType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkCList::selection_mode</NAME>
<TYPE>GtkSelectionMode</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkCList::row_height</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkCList::reorderable</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkCList::titles_active</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkCList::use_drag_icons</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkContainer::border_width</NAME>
<TYPE>gulong</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkContainer::resize_mode</NAME>
<TYPE>GtkResizeMode</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkContainer::child</NAME>
<TYPE>GtkWidget</TYPE>
<FLAGS>w</FLAGS>
</ARG>
<ARG>
<NAME>GtkCTree::n_columns</NAME>
<TYPE>guint</TYPE>
<FLAGS>rwX</FLAGS>
</ARG>
<ARG>
<NAME>GtkCTree::tree_column</NAME>
<TYPE>guint</TYPE>
<FLAGS>rwX</FLAGS>
</ARG>
<ARG>
<NAME>GtkCTree::indent</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkCTree::spacing</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkCTree::show_stub</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkCTree::line_style</NAME>
<TYPE>GtkCTreeLineStyle</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkCTree::expander_style</NAME>
<TYPE>GtkCTreeExpanderStyle</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkEditable::text_position</NAME>
<TYPE>gint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkEditable::editable</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkEntry::max_length</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkEntry::visibility</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkFrame::label</NAME>
<TYPE>GtkString</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkFrame::label_xalign</NAME>
<TYPE>gfloat</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkFrame::label_yalign</NAME>
<TYPE>gfloat</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkFrame::shadow</NAME>
<TYPE>GtkShadowType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkHandleBox::shadow</NAME>
<TYPE>GtkShadowType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkHScale::adjustment</NAME>
<TYPE>GtkAdjustment</TYPE>
<FLAGS>rwx</FLAGS>
</ARG>
<ARG>
<NAME>GtkHScrollbar::adjustment</NAME>
<TYPE>GtkAdjustment</TYPE>
<FLAGS>rwx</FLAGS>
</ARG>
<ARG>
<NAME>GtkLabel::label</NAME>
<TYPE>GtkString</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkLabel::pattern</NAME>
<TYPE>GtkString</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkLabel::justify</NAME>
<TYPE>GtkJustification</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkMenuBar::shadow</NAME>
<TYPE>GtkShadowType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkMisc::xalign</NAME>
<TYPE>gfloat</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkMisc::yalign</NAME>
<TYPE>gfloat</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkMisc::xpad</NAME>
<TYPE>gint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkMisc::ypad</NAME>
<TYPE>gint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkNotebook::page</NAME>
<TYPE>gint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkNotebook::tab_pos</NAME>
<TYPE>GtkPositionType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkNotebook::tab_border</NAME>
<TYPE>guint</TYPE>
<FLAGS>w</FLAGS>
</ARG>
<ARG>
<NAME>GtkNotebook::tab_hborder</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkNotebook::tab_vborder</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkNotebook::show_tabs</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkNotebook::show_border</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkNotebook::scrollable</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkNotebook::enable_popup</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkObject::user_data</NAME>
<TYPE>gpointer</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkObject::signal</NAME>
<TYPE>GtkSignal</TYPE>
<FLAGS>w</FLAGS>
</ARG>
<ARG>
<NAME>GtkObject::signal_after</NAME>
<TYPE>GtkSignal</TYPE>
<FLAGS>w</FLAGS>
</ARG>
<ARG>
<NAME>GtkObject::object_signal</NAME>
<TYPE>GtkSignal</TYPE>
<FLAGS>w</FLAGS>
</ARG>
<ARG>
<NAME>GtkObject::object_signal_after</NAME>
<TYPE>GtkSignal</TYPE>
<FLAGS>w</FLAGS>
</ARG>
<ARG>
<NAME>GtkPacker::spacing</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkPacker::default_border_width</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkPacker::default_pad_x</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkPacker::default_pad_y</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkPacker::default_ipad_x</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkPacker::default_ipad_y</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkProgress::activity_mode</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkProgress::show_text</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkProgress::text_xalign</NAME>
<TYPE>gfloat</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkProgress::text_yalign</NAME>
<TYPE>gfloat</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkProgressBar::adjustment</NAME>
<TYPE>GtkAdjustment</TYPE>
<FLAGS>rwx</FLAGS>
</ARG>
<ARG>
<NAME>GtkProgressBar::orientation</NAME>
<TYPE>GtkProgressBarOrientation</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkProgressBar::bar_style</NAME>
<TYPE>GtkProgressBarStyle</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkProgressBar::activity_step</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkProgressBar::activity_blocks</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkProgressBar::discrete_blocks</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkRadioButton::group</NAME>
<TYPE>GtkRadioButton</TYPE>
<FLAGS>w</FLAGS>
</ARG>
<ARG>
<NAME>GtkRange::update_policy</NAME>
<TYPE>GtkUpdateType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkScale::digits</NAME>
<TYPE>gint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkScale::draw_value</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkScale::value_pos</NAME>
<TYPE>GtkPositionType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkScrolledWindow::hadjustment</NAME>
<TYPE>GtkAdjustment</TYPE>
<FLAGS>rwx</FLAGS>
</ARG>
<ARG>
<NAME>GtkScrolledWindow::vadjustment</NAME>
<TYPE>GtkAdjustment</TYPE>
<FLAGS>rwx</FLAGS>
</ARG>
<ARG>
<NAME>GtkScrolledWindow::hscrollbar_policy</NAME>
<TYPE>GtkPolicyType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkScrolledWindow::vscrollbar_policy</NAME>
<TYPE>GtkPolicyType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkScrolledWindow::window_placement</NAME>
<TYPE>GtkCornerType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkSpinButton::adjustment</NAME>
<TYPE>GtkAdjustment</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkSpinButton::climb_rate</NAME>
<TYPE>gfloat</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkSpinButton::digits</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkSpinButton::snap_to_ticks</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkSpinButton::numeric</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkSpinButton::wrap</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkSpinButton::update_policy</NAME>
<TYPE>GtkSpinButtonUpdatePolicy</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkSpinButton::shadow_type</NAME>
<TYPE>GtkShadowType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkSpinButton::value</NAME>
<TYPE>gfloat</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkTable::n_rows</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkTable::n_columns</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkTable::row_spacing</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkTable::column_spacing</NAME>
<TYPE>guint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkTable::homogeneous</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkText::hadjustment</NAME>
<TYPE>GtkAdjustment</TYPE>
<FLAGS>rwx</FLAGS>
</ARG>
<ARG>
<NAME>GtkText::vadjustment</NAME>
<TYPE>GtkAdjustment</TYPE>
<FLAGS>rwx</FLAGS>
</ARG>
<ARG>
<NAME>GtkText::line_wrap</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkText::word_wrap</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkTipsQuery::emit_always</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkTipsQuery::caller</NAME>
<TYPE>GtkWidget</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkTipsQuery::label_inactive</NAME>
<TYPE>GtkString</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkTipsQuery::label_no_tip</NAME>
<TYPE>GtkString</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkToggleButton::active</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkToggleButton::draw_indicator</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkViewport::hadjustment</NAME>
<TYPE>GtkAdjustment</TYPE>
<FLAGS>rwx</FLAGS>
</ARG>
<ARG>
<NAME>GtkViewport::vadjustment</NAME>
<TYPE>GtkAdjustment</TYPE>
<FLAGS>rwx</FLAGS>
</ARG>
<ARG>
<NAME>GtkViewport::shadow_type</NAME>
<TYPE>GtkShadowType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkVScale::adjustment</NAME>
<TYPE>GtkAdjustment</TYPE>
<FLAGS>rwx</FLAGS>
</ARG>
<ARG>
<NAME>GtkVScrollbar::adjustment</NAME>
<TYPE>GtkAdjustment</TYPE>
<FLAGS>rwx</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::name</NAME>
<TYPE>GtkString</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::parent</NAME>
<TYPE>GtkContainer</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::x</NAME>
<TYPE>gint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::y</NAME>
<TYPE>gint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::width</NAME>
<TYPE>gint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::height</NAME>
<TYPE>gint</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::visible</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::sensitive</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::app_paintable</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::can_focus</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::has_focus</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::can_default</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::has_default</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::receives_default</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::composite_child</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::style</NAME>
<TYPE>GtkStyle</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::events</NAME>
<TYPE>GdkEventMask</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWidget::extension_events</NAME>
<TYPE>GdkEventMask</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWindow::type</NAME>
<TYPE>GtkWindowType</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWindow::title</NAME>
<TYPE>GtkString</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWindow::auto_shrink</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWindow::allow_shrink</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWindow::allow_grow</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWindow::modal</NAME>
<TYPE>gboolean</TYPE>
<FLAGS>rw</FLAGS>
</ARG>
<ARG>
<NAME>GtkWindow::window_position</NAME>
<TYPE>GtkWindowPosition</TYPE>
<FLAGS>rw</FLAGS>
</ARG>

View File

@@ -1,93 +0,0 @@
GtkObject
GtkWidget
GtkMisc
GtkLabel
GtkAccelLabel
GtkTipsQuery
GtkArrow
GtkImage
GtkPixmap
GtkContainer
GtkBin
GtkAlignment
GtkFrame
GtkAspectFrame
GtkButton
GtkToggleButton
GtkCheckButton
GtkRadioButton
GtkOptionMenu
GtkItem
GtkMenuItem
GtkCheckMenuItem
GtkRadioMenuItem
GtkTearoffMenuItem
GtkListItem
GtkTreeItem
GtkWindow
GtkColorSelectionDialog
GtkDialog
GtkInputDialog
GtkFileSelection
GtkFontSelectionDialog
GtkPlug
GtkEventBox
GtkHandleBox
GtkScrolledWindow
GtkViewport
GtkBox
GtkButtonBox
GtkHButtonBox
GtkVButtonBox
GtkVBox
GtkColorSelection
GtkGammaCurve
GtkHBox
GtkCombo
GtkStatusbar
GtkCList
GtkCTree
GtkFixed
GtkNotebook
GtkFontSelection
GtkPaned
GtkHPaned
GtkVPaned
GtkLayout
GtkList
GtkMenuShell
GtkMenu
GtkMenuBar
GtkPacker
GtkSocket
GtkTable
GtkToolbar
GtkTree
GtkCalendar
GtkDrawingArea
GtkCurve
GtkEditable
GtkEntry
GtkSpinButton
GtkText
GtkRuler
GtkHRuler
GtkVRuler
GtkRange
GtkScale
GtkHScale
GtkVScale
GtkScrollbar
GtkHScrollbar
GtkVScrollbar
GtkSeparator
GtkHSeparator
GtkVSeparator
GtkInvisible
GtkPreview
GtkProgress
GtkProgressBar
GtkData
GtkAdjustment
GtkTooltips
GtkItemFactory

File diff suppressed because it is too large Load Diff

View File

@@ -1,96 +0,0 @@
#include <gtk/gtk.h>
gtk_accel_label_get_type
gtk_adjustment_get_type
gtk_alignment_get_type
gtk_arrow_get_type
gtk_aspect_frame_get_type
gtk_bin_get_type
gtk_box_get_type
gtk_button_get_type
gtk_button_box_get_type
gtk_calendar_get_type
gtk_check_button_get_type
gtk_check_menu_item_get_type
gtk_clist_get_type
gtk_color_selection_get_type
gtk_color_selection_dialog_get_type
gtk_combo_get_type
gtk_container_get_type
gtk_ctree_get_type
gtk_curve_get_type
gtk_data_get_type
gtk_dialog_get_type
gtk_drawing_area_get_type
gtk_editable_get_type
gtk_entry_get_type
gtk_event_box_get_type
gtk_file_selection_get_type
gtk_fixed_get_type
gtk_font_selection_get_type
gtk_font_selection_dialog_get_type
gtk_frame_get_type
gtk_gamma_curve_get_type
gtk_handle_box_get_type
gtk_hbox_get_type
gtk_hbutton_box_get_type
gtk_hpaned_get_type
gtk_hruler_get_type
gtk_hscale_get_type
gtk_hscrollbar_get_type
gtk_hseparator_get_type
gtk_identifier_get_type
gtk_image_get_type
gtk_input_dialog_get_type
gtk_invisible_get_type
gtk_item_get_type
gtk_item_factory_get_type
gtk_label_get_type
gtk_layout_get_type
gtk_list_get_type
gtk_list_item_get_type
gtk_menu_get_type
gtk_menu_bar_get_type
gtk_menu_item_get_type
gtk_menu_shell_get_type
gtk_misc_get_type
gtk_notebook_get_type
gtk_object_get_type
gtk_option_menu_get_type
gtk_packer_get_type
gtk_paned_get_type
gtk_pixmap_get_type
gtk_plug_get_type
gtk_preview_get_type
gtk_progress_get_type
gtk_progress_bar_get_type
gtk_radio_button_get_type
gtk_radio_menu_item_get_type
gtk_range_get_type
gtk_ruler_get_type
gtk_scale_get_type
gtk_scrollbar_get_type
gtk_scrolled_window_get_type
gtk_separator_get_type
gtk_socket_get_type
gtk_spin_button_get_type
gtk_statusbar_get_type
gtk_table_get_type
gtk_tearoff_menu_item_get_type
gtk_text_get_type
gtk_tips_query_get_type
gtk_toggle_button_get_type
gtk_toolbar_get_type
gtk_tooltips_get_type
gtk_tree_get_type
gtk_tree_item_get_type
gtk_vbox_get_type
gtk_vbutton_box_get_type
gtk_viewport_get_type
gtk_vpaned_get_type
gtk_vruler_get_type
gtk_vscale_get_type
gtk_vscrollbar_get_type
gtk_vseparator_get_type
gtk_widget_get_type
gtk_window_get_type

View File

@@ -1,130 +0,0 @@
<informaltable pgwide=1 frame="none">
<tgroup cols="4">
<colspec colwidth="1*">
<colspec colwidth="1*">
<colspec colwidth="1*">
<colspec colwidth="1*">
<tbody><row>
<entry><literallayout>
<emphasis>Windows &amp; Dialogs</emphasis>
<link linkend="GtkWindow">GtkWindow</link>
<link linkend="GtkDialog">GtkDialog</link>
<link linkend="GtkColorSelectionDialog">GtkColorSelectionDialog</link>
<link linkend="GtkFileSelection">GtkFileSelection</link>
<link linkend="GtkFontSelectionDialog">GtkFontSelectionDialog</link>
<link linkend="GtkInputDialog">GtkInputDialog</link>
<emphasis>Containers</emphasis>
<link linkend="GtkHBox">GtkHBox</link>
<link linkend="GtkVBox">GtkVBox</link>
<link linkend="GtkTable">GtkTable</link>
<link linkend="GtkToolbar">GtkToolbar</link>
<link linkend="GtkHandleBox">GtkHandleBox</link>
<link linkend="GtkNotebook">GtkNotebook</link>
<link linkend="GtkFrame">GtkFrame</link>
<link linkend="GtkAspectFrame">GtkAspectFrame</link>
<link linkend="GtkFixed">GtkFixed</link>
<link linkend="GtkPacker">GtkPacker</link>
<link linkend="GtkLayout">GtkLayout</link>
<link linkend="GtkScrolledWindow">GtkScrolledWindow</link>
<link linkend="GtkViewport">GtkViewport</link>
<link linkend="GtkEventBox">GtkEventBox</link>
<link linkend="GtkAlignment">GtkAlignment</link>
<link linkend="GtkHButtonBox">GtkHButtonBox</link>
<link linkend="GtkVButtonBox">GtkVButtonBox</link>
<link linkend="GtkHPaned">GtkHPaned</link>
<link linkend="GtkVPaned">GtkVPaned</link>
</literallayout></entry>
<entry><literallayout>
<emphasis>Labels &amp; Buttons</emphasis>
<link linkend="GtkLabel">GtkLabel</link>
<link linkend="GtkAccelLabel">GtkAccelLabel</link>
<link linkend="GtkButton">GtkButton</link>
<link linkend="GtkCheckButton">GtkCheckButton</link>
<link linkend="GtkToggleButton">GtkToggleButton</link>
<link linkend="GtkRadioButton">GtkRadioButton</link>
<emphasis>Data Entry Widgets</emphasis>
<link linkend="GtkEntry">GtkEntry</link>
<link linkend="GtkText">GtkText</link>
<link linkend="GtkSpinButton">GtkSpinButton</link>
<link linkend="GtkOptionMenu">GtkOptionMenu</link>
<link linkend="GtkCombo">GtkCombo</link>
<link linkend="GtkHScale">GtkHScale</link>
<link linkend="GtkVScale">GtkVScale</link>
<emphasis>Lists &amp; Trees</emphasis>
<link linkend="GtkCList">GtkCList</link>
<link linkend="GtkCTree">GtkCTree</link>
<link linkend="GtkList">GtkList</link>
<link linkend="GtkListItem">GtkListItem</link>
<link linkend="GtkTree">GtkTree</link>
<link linkend="GtkTreeItem">GtkTreeItem</link>
<emphasis>Tooltips</emphasis>
<link linkend="GtkTooltips">GtkTooltips</link>
<link linkend="GtkTipsQuery">GtkTipsQuery</link>
</literallayout></entry>
<entry><literallayout>
<emphasis>Menus &amp; Menu Bars</emphasis>
<link linkend="GtkMenuBar">GtkMenuBar</link>
<link linkend="GtkMenu">GtkMenu</link>
<link linkend="GtkMenuItem">GtkMenuItem</link>
<link linkend="GtkCheckMenuItem">GtkCheckMenuItem</link>
<link linkend="GtkRadioMenuItem">GtkRadioMenuItem</link>
<link linkend="GtkTearoffMenuItem">GtkTearoffMenuItem</link>
<emphasis>Graphical Widgets</emphasis>
<link linkend="GtkDrawingArea">GtkDrawingArea</link>
<link linkend="GtkImage">GtkImage</link>
<link linkend="GtkPixmap">GtkPixmap</link>
<link linkend="GtkPreview">GtkPreview</link>
<link linkend="GtkCurve">GtkCurve</link>
<link linkend="GtkGammaCurve">GtkGammaCurve</link>
<emphasis>Misc. Widgets</emphasis>
<link linkend="GtkArrow">GtkArrow</link>
<link linkend="GtkCalendar">GtkCalendar</link>
<link linkend="GtkProgressBar">GtkProgressBar</link>
<link linkend="GtkStatusbar">GtkStatusbar</link>
<link linkend="GtkHRuler">GtkHRuler</link>
<link linkend="GtkVRuler">GtkVRuler</link>
<link linkend="GtkHScrollbar">GtkHScrollbar</link>
<link linkend="GtkVScrollbar">GtkVScrollbar</link>
<link linkend="GtkHSeparator">GtkHSeparator</link>
<link linkend="GtkVSeparator">GtkVSeparator</link>
<link linkend="GtkColorSelection">GtkColorSelection</link>
<link linkend="GtkFontSelection">GtkFontSelection</link>
</literallayout></entry>
<entry><literallayout>
<emphasis>Abstract Base Classes</emphasis>
<link linkend="GtkWidget">GtkWidget</link>
<link linkend="GtkObject">GtkObject</link>
<link linkend="GtkContainer">GtkContainer</link>
<link linkend="GtkBin">GtkBin</link>
<link linkend="GtkBox">GtkBox</link>
<link linkend="GtkButtonBox">GtkButtonBox</link>
<link linkend="GtkData">GtkData</link>
<link linkend="GtkEditable">GtkEditable</link>
<link linkend="GtkItem">GtkItem</link>
<link linkend="GtkMenuShell">GtkMenuShell</link>
<link linkend="GtkMisc">GtkMisc</link>
<link linkend="GtkPaned">GtkPaned</link>
<link linkend="GtkProgress">GtkProgress</link>
<link linkend="GtkRange">GtkRange</link>
<link linkend="GtkRuler">GtkRuler</link>
<link linkend="GtkScale">GtkScale</link>
<link linkend="GtkScrollbar">GtkScrollbar</link>
<link linkend="GtkSeparator">GtkSeparator</link>
<emphasis>Integrating with other X Applications</emphasis>
<link linkend="GtkPlug">GtkPlug</link>
<link linkend="GtkSocket">GtkSocket</link>
<emphasis>Misc. Objects</emphasis>
<link linkend="GtkAdjustment">GtkAdjustment</link>
<link linkend="GtkItemFactory">GtkItemFactory</link>
<link linkend="GtkInvisible">GtkInvisible</link>
</literallayout></entry>
</row>
</tbody></tgroup></informaltable>

View File

@@ -1,629 +0,0 @@
<!-- ##### SECTION ./tmpl/gtkmenufactory.sgml:Title ##### -->
Menu Factory
<!-- ##### FUNCTION gtk_marshal_NONE__INT_POINTER ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### STRUCT GtkMenuFactory ##### -->
<para>
</para>
@path:
@type:
@accel_group:
@widget:
@subfactories:
<!-- ##### FUNCTION gtk_marshal_BOOL__POINTER_INT_INT ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### MACRO gtk_marshal_NONE__UINT_STRING ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_marshal_NONE__INT_FLOAT ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_marshal_NONE__POINTER_INT_POINTER ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_marshal_INT__POINTER ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_menu_factory_find ##### -->
<para>
</para>
@factory:
@path:
@Returns:
<!-- ##### MACRO gtk_marshal_NONE__ENUM_FLOAT_BOOL ##### -->
<para>
</para>
<!-- ##### MACRO gtk_marshal_NONE__POINTER_STRING_STRING ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_marshal_NONE__INT_POINTER_INT_INT_INT_POINTER ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_marshal_BOOL__POINTER ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### MACRO gtk_marshal_NONE__UINT_POINTER_UINT_ENUM_ENUM_POINTER ##### -->
<para>
</para>
<!-- ##### ENUM GtkMenuFactoryType ##### -->
<para>
</para>
@GTK_MENU_FACTORY_MENU:
@GTK_MENU_FACTORY_MENU_BAR:
@GTK_MENU_FACTORY_OPTION_MENU:
<!-- ##### FUNCTION gtk_marshal_INT__POINTER_CHAR_CHAR ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_marshal_NONE__POINTER_INT_INT_POINTER_INT_INT ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_marshal_NONE__INT_FLOAT_BOOL ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_marshal_NONE__INT ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### MACRO gtk_marshal_NONE__BOXED ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_menu_factory_add_entries ##### -->
<para>
</para>
@factory:
@entries:
@nentries:
<!-- ##### STRUCT GtkMenuPath ##### -->
<para>
</para>
@path:
@widget:
<!-- ##### FUNCTION gtk_marshal_NONE__POINTER_INT ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### MACRO gtk_marshal_NONE__UINT_POINTER_UINT_UINT_ENUM ##### -->
<para>
</para>
<!-- ##### ARG GtkPreview:expand ##### -->
<para>
Determines the way that the the preview widget behaves
when the size it is allocated is larger than the requested
size. See gtk_preview_set_expand().
</para>
<!-- ##### MACRO gtk_marshal_NONE__STRING_INT_POINTER ##### -->
<para>
</para>
<!-- ##### MACRO gtk_marshal_NONE__POINTER_INT_INT_POINTER_UINT_UINT ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_marshal_BOOL__POINTER_INT_INT_INT ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_marshal_NONE__POINTER ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### SECTION ./tmpl/gtkmenufactory.sgml:Short_Description ##### -->
<!-- ##### MACRO gtk_marshal_BOOL__POINTER_STRING_STRING_POINTER ##### -->
<para>
</para>
<!-- ##### MACRO gtk_marshal_NONE__ENUM_FLOAT ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_marshal_NONE__INT_INT ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### MACRO gtk_marshal_NONE__POINTER_POINTER_UINT_UINT ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_menu_factory_remove_paths ##### -->
<para>
</para>
@factory:
@paths:
@npaths:
<!-- ##### FUNCTION gtk_menu_factory_destroy ##### -->
<para>
</para>
@factory:
<!-- ##### MACRO gtk_marshal_BOOL__POINTER_INT_INT_UINT ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_marshal_NONE__POINTER_POINTER ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_marshal_INT__INT ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### MACRO gtk_marshal_ENUM__ENUM ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_marshal_NONE__INT_POINTER_INT_INT_INT ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### MACRO GTK_NOTE ##### -->
<para>
</para>
@type:
@action:
<!-- ##### FUNCTION gtk_marshal_NONE__POINTER_INT_INT ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### MACRO gtk_marshal_NONE__POINTER_UINT ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_marshal_NONE__POINTER_POINTER_POINTER ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### SECTION ./tmpl/gtkmenufactory.sgml:See_Also ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_marshal_NONE__BOOL ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_marshal_NONE__POINTER_POINTER_INT_INT ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_marshal_BOOL__POINTER_POINTER_POINTER_POINTER ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### MACRO gtk_marshal_NONE__OBJECT ##### -->
<para>
</para>
<!-- ##### ENUM GtkDebugFlag ##### -->
<para>
</para>
@GTK_DEBUG_OBJECTS:
@GTK_DEBUG_MISC:
@GTK_DEBUG_SIGNALS:
@GTK_DEBUG_DND:
@GTK_DEBUG_PLUGSOCKET:
<!-- ##### ARG GtkHandleBox:snap_edge ##### -->
<para>
Determines the snap edge of a handlebox. The snap edge is
the edge of the detached child that must be aligned
with the corresponding edge of the "ghost" left
behind when the child was detached to reattach
the torn-off window. See gtk_handle_box_set_snap_edge().
</para>
<!-- ##### ARG GtkHandleBox:handle_position ##### -->
<para>
Determines the side of the handlebox where the handle is drawn.
</para>
<!-- ##### MACRO gtk_marshal_NONE__STRING ##### -->
<para>
</para>
<!-- ##### MACRO gtk_marshal_NONE__UINT ##### -->
<para>
</para>
<!-- ##### MACRO gtk_marshal_NONE__ENUM ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_marshal_NONE__C_CALLBACK_C_CALLBACK ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_menu_factory_new ##### -->
<para>
</para>
@type:
@Returns:
<!-- ##### SECTION ./tmpl/gtkdebug.sgml:Short_Description ##### -->
<!-- ##### FUNCTION gtk_marshal_NONE__INT_INT_POINTER ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_marshal_NONE__C_CALLBACK ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_marshal_BOOL__POINTER_POINTER_INT_INT ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_menu_factory_remove_entries ##### -->
<para>
</para>
@factory:
@entries:
@nentries:
<!-- ##### SECTION ./tmpl/gtkdebug.sgml:Long_Description ##### -->
<para>
</para>
<!-- ##### USER_FUNCTION GtkMenuCallback ##### -->
<para>
</para>
@widget:
@user_data:
<!-- ##### VARIABLE gtk_debug_flags ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_menu_factory_remove_subfactory ##### -->
<para>
</para>
@factory:
@subfactory:
@path:
<!-- ##### SECTION ./tmpl/gtkdebug.sgml:Title ##### -->
Debugging
<!-- ##### FUNCTION gtk_ruler_draw_pos ##### -->
<para>
</para>
@ruler: the gtkruler
<!-- ##### MACRO gtk_marshal_NONE__POINTER_UINT_UINT ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/gtkdebug.sgml:See_Also ##### -->
<para>
</para>
<!-- ##### MACRO gtk_marshal_NONE__POINTER_UINT_ENUM ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_marshal_NONE__NONE ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_marshal_BOOL__NONE ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_menu_factory_add_subfactory ##### -->
<para>
</para>
@factory:
@subfactory:
@path:
<!-- ##### STRUCT GtkMenuEntry ##### -->
<para>
</para>
@path:
@accelerator:
@callback:
@callback_data:
@widget:
<!-- ##### FUNCTION gtk_ruler_draw_ticks ##### -->
<para>
</para>
@ruler: the gtkruler
<!-- ##### SECTION ./tmpl/gtkmenufactory.sgml:Long_Description ##### -->
<para>
</para>

View File

@@ -1,314 +0,0 @@
<!-- ##### SECTION Title ##### -->
Keyboard Accelerators
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkAccelGroup ##### -->
<para>
</para>
@ref_count:
@lock_count:
@modifier_mask:
@attach_objects:
<!-- ##### STRUCT GtkAccelEntry ##### -->
<para>
</para>
@accel_group:
@accelerator_key:
@accelerator_mods:
@accel_flags:
@object:
@signal_id:
<!-- ##### FUNCTION gtk_accel_group_new ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gtk_accel_group_get_default ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gtk_accel_group_ref ##### -->
<para>
</para>
@accel_group:
@Returns:
<!-- ##### FUNCTION gtk_accel_group_unref ##### -->
<para>
</para>
@accel_group:
<!-- ##### FUNCTION gtk_accel_group_activate ##### -->
<para>
</para>
@accel_group:
@accel_key:
@accel_mods:
@Returns:
<!-- ##### FUNCTION gtk_accel_groups_activate ##### -->
<para>
</para>
@object:
@accel_key:
@accel_mods:
@Returns:
<!-- ##### FUNCTION gtk_accel_group_attach ##### -->
<para>
</para>
@accel_group:
@object:
<!-- ##### FUNCTION gtk_accel_group_detach ##### -->
<para>
</para>
@accel_group:
@object:
<!-- ##### FUNCTION gtk_accel_group_lock ##### -->
<para>
</para>
@accel_group:
<!-- ##### FUNCTION gtk_accel_group_unlock ##### -->
<para>
</para>
@accel_group:
<!-- ##### FUNCTION gtk_accel_group_get_entry ##### -->
<para>
</para>
@accel_group:
@accel_key:
@accel_mods:
@Returns:
<!-- ##### FUNCTION gtk_accel_group_lock_entry ##### -->
<para>
</para>
@accel_group:
@accel_key:
@accel_mods:
<!-- ##### FUNCTION gtk_accel_group_unlock_entry ##### -->
<para>
</para>
@accel_group:
@accel_key:
@accel_mods:
<!-- ##### FUNCTION gtk_accel_group_add ##### -->
<para>
</para>
@accel_group:
@accel_key:
@accel_mods:
@accel_flags:
@object:
@accel_signal:
<!-- ##### FUNCTION gtk_accel_group_remove ##### -->
<para>
</para>
@accel_group:
@accel_key:
@accel_mods:
@object:
<!-- ##### FUNCTION gtk_accel_group_handle_add ##### -->
<para>
</para>
@object:
@accel_signal_id:
@accel_group:
@accel_key:
@accel_mods:
@accel_flags:
<!-- ##### FUNCTION gtk_accel_group_handle_remove ##### -->
<para>
</para>
@object:
@accel_group:
@accel_key:
@accel_mods:
<!-- ##### FUNCTION gtk_accel_group_create_add ##### -->
<para>
</para>
@class_type:
@signal_flags:
@handler_offset:
@Returns:
<!-- ##### FUNCTION gtk_accel_group_create_remove ##### -->
<para>
</para>
@class_type:
@signal_flags:
@handler_offset:
@Returns:
<!-- ##### FUNCTION gtk_accel_group_marshal_add ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_accel_group_marshal_remove ##### -->
<para>
</para>
@object:
@func:
@func_data:
@args:
<!-- ##### FUNCTION gtk_accel_groups_from_object ##### -->
<para>
</para>
@object:
@Returns:
<!-- ##### FUNCTION gtk_accel_group_entries_from_object ##### -->
<para>
</para>
@object:
@Returns:
<!-- ##### FUNCTION gtk_accelerator_valid ##### -->
<para>
</para>
@keyval:
@modifiers:
@Returns:
<!-- ##### FUNCTION gtk_accelerator_parse ##### -->
<para>
</para>
@accelerator:
@accelerator_key:
@accelerator_mods:
<!-- ##### FUNCTION gtk_accelerator_name ##### -->
<para>
</para>
@accelerator_key:
@accelerator_mods:
@Returns:
<!-- ##### FUNCTION gtk_accelerator_set_default_mod_mask ##### -->
<para>
</para>
@default_mod_mask:
<!-- ##### FUNCTION gtk_accelerator_get_default_mod_mask ##### -->
<para>
</para>
@Returns:

View File

@@ -1,132 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkAccelLabel
<!-- ##### SECTION Short_Description ##### -->
a label which displays an accelerator key on the right of the text.
<!-- ##### SECTION Long_Description ##### -->
<para>
The #GtkAccelLabel widget is a subclass of #GtkLabel that also displays an
accelerator key on the right of the label text, e.g. 'Ctl+S'.
It is commonly used in menus to show the keyboard short-cuts for commands.
</para>
<para>
The accelerator key to display is not set explicitly.
Instead, the #GtkAccelLabel displays the accelerators which have been added to
a particular widget. This widget is set by calling
gtk_accel_label_set_accel_widget().
</para>
<para>
For example, a #GtkMenuItem widget may have an accelerator added to emit the
"activate" signal when the 'Ctl+S' key combination is pressed.
A #GtkAccelLabel is created and added to the #GtkMenuItem, and
gtk_accel_label_set_accel_widget() is called with the #GtkMenuItem as the
second argument. The #GtkAccelLabel will now display 'Ctl+S' after its label.
</para>
<para>
Note that creating a #GtkMenuItem with gtk_menu_item_new_with_label() (or
one of the similar functions for #GtkCheckMenuItem and #GtkRadioMenuItem)
automatically adds a #GtkAccelLabel to the #GtkMenuItem and calls
gtk_accel_label_set_accel_widget() to set it up for you.
</para>
<para>
A #GtkAccelLabel will only display accelerators which have GTK_ACCEL_VISIBLE
set (see #GtkAccelFlags).
A #GtkAccelLabel can display multiple accelerators and even signal names,
though it is almost always used to display just one accelerator key.
</para>
<example>
<title>Creating a simple menu item with an accelerator key.</title>
<programlisting>
GtkWidget *save_item;
GtkAccelGroup *accel_group;
/* Create a #GtkAccelGroup and add it to the window. */
accel_group = gtk_accel_group_new ();
gtk_window_add_accel_group (GTK_WINDOW (window), accel_group);
/* Create the menu item using the convenience function. */
save_item = gtk_menu_item_new_with_label ("Save");
gtk_widget_show (save_item);
gtk_container_add (GTK_CONTAINER (menu), save_item);
/* Now add the accelerator to the #GtkMenuItem. Note that since we called
gtk_menu_item_new_with_label() to create the #GtkMenuItem the
#GtkAccelLabel is automatically set up to display the #GtkMenuItem
accelerators. We just need to make sure we use GTK_ACCEL_VISIBLE here. */
gtk_widget_add_accelerator (save_item, "activate", accel_group,
GDK_s, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
</programlisting>
</example>
<!-- ##### SECTION See_Also ##### -->
<para>
<variablelist>
<varlistentry>
<term><link linkend="gtk-keyboard-accelerators">Keyboard Accelerators</link>
</term>
<listitem><para>installing and using keyboard short-cuts.</para></listitem>
</varlistentry>
<varlistentry>
<term>#GtkItemFactory</term>
<listitem><para>an easier way to create menus.</para></listitem>
</varlistentry>
</variablelist>
</para>
<!-- ##### STRUCT GtkAccelLabel ##### -->
<para>
The #GtkAccelLabel-struct struct contains private data only, and
should be accessed using the functions below.
</para>
<!-- ##### FUNCTION gtk_accel_label_new ##### -->
<para>
Creates a new #GtkAccelLabel.
</para>
@string: the label string.
@Returns: a new #GtkAccelLabel.
<!-- ##### FUNCTION gtk_accel_label_set_accel_widget ##### -->
<para>
Sets the widget whose accelerators are to be shown.
</para>
@accel_label: a #GtkAccelLabel.
@accel_widget: the widget whose accelerators are to be displayed.
<!-- ##### FUNCTION gtk_accel_label_get_accel_width ##### -->
<para>
Returns the width needed to display the accelerator key(s).
This is used by menus to align all of the #GtkMenuItem widgets, and shouldn't
be needed by applications.
</para>
@accel_label: a #GtkAccelLabel.
@Returns:
<!-- ##### FUNCTION gtk_accel_label_refetch ##### -->
<para>
Recreates the string representing the accelerator keys.
This should not be needed since the string is automatically updated whenever
accelerators are added or removed from the associated widget.
</para>
@accel_label: a #GtkAccelLabel.
@Returns: always returns FALSE.
<!-- ##### ARG GtkAccelLabel:accel_widget ##### -->
<para>
The widget whose accelerators are to be shown by the #GtkAccelLabel.
</para>

View File

@@ -1,154 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkAdjustment
<!-- ##### SECTION Short_Description ##### -->
a #GtkObject representing an adjustable bounded value.
<!-- ##### SECTION Long_Description ##### -->
<para>
The #GtkAdjustment object represents a value which has an associated lower
and upper bound, together with step and page increments, and a page size.
It is used within several GTK+ widgets, including
#GtkSpinButton, #GtkViewport, and #GtkRange (which is a base class for
#GtkHScrollbar, #GtkVScrollbar, #GtkHScale, and #GtkVScale).
</para>
<para>
The #GtkAdjustment object does not update the value itself. Instead
it is left up to the owner of the #GtkAdjustment to control the value.
</para>
<para>
The owner of the #GtkAdjustment typically calls the
gtk_adjustment_value_changed() and gtk_adjustment_changed() functions
after changing the value and its bounds. This results in the emission of the
&quot;value_changed&quot; or &quot;changed&quot; signal respectively.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkAdjustment ##### -->
<para>
The #GtkAdjustment-struct struct contains the following fields.
<informaltable pgwide=1 frame="none" role="struct">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>#gfloat lower;</entry>
<entry>the minimum value.</entry>
</row>
<row>
<entry>#gfloat upper;</entry>
<entry>the maximum value.</entry>
</row>
<row>
<entry>#gfloat value;</entry>
<entry>the current value.</entry>
</row>
<row>
<entry>#gfloat step_increment;</entry>
<entry>the increment to use to make minor changes to the value.
In a #GtkScrollbar this increment is used when the mouse is clicked on the
arrows at the top and bottom of the scrollbar, to scroll by a small amount.
</entry>
</row>
<row>
<entry>#gfloat page_increment;</entry>
<entry>the increment to use to make major changes to the value.
In a #GtkScrollbar this increment is used when the mouse is clicked in the
trough, to scroll by a large amount.
</entry>
</row>
<row>
<entry>#gfloat page_size;</entry>
<entry>the page size.
In a #GtkScrollbar this is the size of the area which is currently visible.
</entry>
</row>
</tbody></tgroup></informaltable>
</para>
<!-- ##### FUNCTION gtk_adjustment_new ##### -->
<para>
Creates a new #GtkAdjustment.
</para>
@value: the initial value.
@lower: the minimum value.
@upper: the maximum value.
@step_increment: the step increment.
@page_increment: the page increment.
@page_size: the page size.
@Returns: a new #GtkAdjustment.
<!-- ##### FUNCTION gtk_adjustment_set_value ##### -->
<para>
Sets the #GtkAdjustment value.
</para>
@adjustment: a #GtkAdjustment.
@value: the new value.
<!-- ##### FUNCTION gtk_adjustment_clamp_page ##### -->
<para>
Updates the #GtkAdjustment @value to ensure that the range between @lower
and @upper is in the current page (i.e. between @value and @value +
@page_size).
If the range is larger than the page size, then only the start of it will
be in the current page.
A &quot;changed&quot; signal will be emitted if the value is changed.
</para>
@adjustment: a #GtkAdjustment.
@lower: the lower value.
@upper: the upper value.
<!-- ##### FUNCTION gtk_adjustment_changed ##### -->
<para>
Emits a &quot;changed&quot; signal from the #GtkAdjustment.
This is typically called by the owner of the #GtkAdjustment after it has
changed any of the #GtkAdjustment fields other than the value.
</para>
@adjustment:
<!-- ##### FUNCTION gtk_adjustment_value_changed ##### -->
<para>
Emits a &quot;value_changed&quot; signal from the #GtkAdjusmtent.
This is typically called by the owner of the #GtkAdjustment after it has
changed the #GtkAdjustment value field.
</para>
@adjustment:
<!-- ##### SIGNAL GtkAdjustment::changed ##### -->
<para>
Emitted when one or more of the #GtkAdjustment fields have been changed,
other than the value field.
</para>
@adjustment: the object which received the signal.
<!-- ##### SIGNAL GtkAdjustment::value-changed ##### -->
<para>
Emitted when the #GtkAdjustment value field has been changed.
</para>
@adjustment: the object which received the signal.

View File

@@ -1,99 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkAlignment
<!-- ##### SECTION Short_Description ##### -->
a widget which controls the alignment and size of its child.
<!-- ##### SECTION Long_Description ##### -->
<para>
The #GtkAlignment widget controls the alignment and size of its child widget.
It has four settings: xscale, yscale, xalign, and yalign.
</para>
<para>
The scale settings are used to specify how much the child widget should
expand to fill the space allocated to the #GtkAlignment.
The values can range from 0 (meaning the child doesn't expand at all) to
1 (meaning the child expands to fill all of the available space).
</para>
<para>
The align settings are used to place the child widget within the available
area. The values range from 0 (top or left) to 1 (bottom or right).
Of course, if the scale settings are both set to 1, the alignment settings
have no effect.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkAlignment ##### -->
<para>
The #GtkAlignment-struct struct contains private data only, and should
be accessed using the functions below.
</para>
<!-- ##### FUNCTION gtk_alignment_new ##### -->
<para>
Creates a new #GtkAlignment.
</para>
@xalign: the horizontal alignment of the child widget, from 0 (left) to 1
(right).
@yalign: the vertical alignment of the child widget, from 0 (top) to 1
(bottom).
@xscale: the amount that the child widget expands horizontally to fill up
unused space, from 0 to 1.
A value of 0 indicates that the child widget should never expand.
A value of 1 indicates that the child widget will expand to fill all of the
space allocated for the #GtkAlignment.
@yscale: the amount that the child widget expands vertically to fill up
unused space, from 0 to 1. The values are similar to @xscale.
@Returns: the new #GtkAlignment.
<!-- ##### FUNCTION gtk_alignment_set ##### -->
<para>
Sets the #GtkAlignment values.
</para>
@alignment: a #GtkAlignment.
@xalign: the horizontal alignment of the child widget, from 0 (left) to 1
(right).
@yalign: the vertical alignment of the child widget, from 0 (top) to 1
(bottom).
@xscale: the amount that the child widget expands horizontally to fill up
unused space, from 0 to 1.
A value of 0 indicates that the child widget should never expand.
A value of 1 indicates that the child widget will expand to fill all of the
space allocated for the #GtkAlignment.
@yscale: the amount that the child widget expands vertically to fill up
unused space, from 0 to 1. The values are similar to @xscale.
<!-- ##### ARG GtkAlignment:xalign ##### -->
<para>
the horizontal alignment of the child widget, from 0 (left) to 1 (right).
</para>
<!-- ##### ARG GtkAlignment:yalign ##### -->
<para>
the vertical alignment of the child widget, from 0 (top) to 1 (bottom).
</para>
<!-- ##### ARG GtkAlignment:xscale ##### -->
<para>
the amount that the child widget expands horizontally to fill up
unused space, from 0 to 1.
A value of 0 indicates that the child widget should never expand.
A value of 1 indicates that the child widget will expand to fill all of the
space allocated for the #GtkAlignment.
</para>
<!-- ##### ARG GtkAlignment:yscale ##### -->
<para>
the amount that the child widget expands vertically to fill up
unused space, from 0 to 1. The values are similar to @xscale.
</para>

View File

@@ -1,147 +0,0 @@
<!-- ##### SECTION Title ##### -->
Object Properties
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkArgInfo ##### -->
<para>
</para>
@class_type:
@name:
@type:
@arg_flags:
@full_name:
@arg_id:
@seq_id:
<!-- ##### FUNCTION gtk_arg_new ##### -->
<para>
</para>
@arg_type:
@Returns:
<!-- ##### FUNCTION gtk_arg_copy ##### -->
<para>
</para>
@src_arg:
@dest_arg:
@Returns:
<!-- ##### FUNCTION gtk_arg_free ##### -->
<para>
</para>
@arg:
@free_contents:
<!-- ##### FUNCTION gtk_args_collect ##### -->
<para>
</para>
@object_type:
@arg_info_hash_table:
@arg_list_p:
@info_list_p:
@first_arg_name:
@var_args:
@Returns:
<!-- ##### FUNCTION gtk_args_collect_cleanup ##### -->
<para>
</para>
@arg_list:
@info_list:
<!-- ##### FUNCTION gtk_arg_get_info ##### -->
<para>
</para>
@object_type:
@arg_info_hash_table:
@arg_name:
@info_p:
@Returns:
<!-- ##### FUNCTION gtk_arg_type_new_static ##### -->
<para>
</para>
@base_class_type:
@arg_name:
@class_n_args_offset:
@arg_info_hash_table:
@arg_type:
@arg_flags:
@arg_id:
@Returns:
<!-- ##### FUNCTION gtk_args_query ##### -->
<para>
</para>
@class_type:
@arg_info_hash_table:
@arg_flags:
@n_args_p:
@Returns:
<!-- ##### FUNCTION gtk_arg_name_strip_type ##### -->
<para>
</para>
@arg_name:
@Returns:
<!-- ##### FUNCTION gtk_arg_info_equal ##### -->
<para>
</para>
@arg_info_1:
@arg_info_2:
@Returns:
<!-- ##### FUNCTION gtk_arg_info_hash ##### -->
<para>
</para>
@arg_info:
@Returns:

View File

@@ -1,89 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkArrow
<!-- ##### SECTION Short_Description ##### -->
produces an arrow pointing in one of the four cardinal directions.
<!-- ##### SECTION Long_Description ##### -->
<para>
GtkArrow should be used to draw simple arrows that need to point in
one of the four cardinal directions (up, down, left, or right). The
style of the arrow can be one of shadow in, shadow out, etched in, or
etched out. Note that these directions and style types may be
ammended in versions of Gtk to come.
</para>
<para>
GtkArrow will fill any space alloted to it, but since it is inherited
from #GtkMisc, it can be padded and/or aligned, to fill exactly the
space the programmer desires.
</para>
<para>
Arrows are created with a call to gtk_arrow_new(). The direction or
style of an arrow can be changed after creation by using gtk_arrow_set().
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
<variablelist>
<varlistentry>
<term>gtk_paint_arrow()</term>
<listitem><para>the function used internally to paint the arrow.</para></listitem>
</varlistentry>
</variablelist>
</para>
<!-- ##### STRUCT GtkArrow ##### -->
<para>
The #GtkArrow-struct containes the following fields.
(These fields should be considered read-only. They should never be set by
an application.)
<informaltable pgwide=1 frame="none" role="struct">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>#gint16 <structfield>arrow_type</structfield>;</entry>
<entry>the direction of the arrow, one of #GtkArrowType.</entry>
</row>
<row>
<entry>#gint16 <structfield>shadow_type</structfield>;</entry>
<entry>the style of the arrow, one of #GtkShadowType.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
<!-- ##### FUNCTION gtk_arrow_new ##### -->
<para>
Creates a new arrow widget.
</para>
@arrow_type: a valid #GtkArrowType.
@shadow_type: a valid #GtkShadowType.
@Returns: the new #GtkArrow widget.
<!-- ##### FUNCTION gtk_arrow_set ##### -->
<para>
Sets the direction and style of the #GtkArrow, @arrow.
</para>
@arrow: a widget of type #GtkArrow.
@arrow_type: a valid #GtkArrowType.
@shadow_type: a valid #GtkShadowType.
<!-- ##### ARG GtkArrow:arrow_type ##### -->
<para>
the arrow direction, one of #GtkArrowType.
</para>
<!-- ##### ARG GtkArrow:shadow_type ##### -->
<para>
the arrow style, one of #GtkShadowType.
</para>

View File

@@ -1,65 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkAspectFrame
<!-- ##### SECTION Short_Description ##### -->
A frame that constrains its child to a particular aspect ratio.
<!-- ##### SECTION Long_Description ##### -->
<para>
The #GtkAspectFrame is useful when you want
pack a widget so that it can resize but always retains
the same aspect ratio. For instance, one might be
drawing a small preview of a larger image. #GtkAspectFrame
derives from #GtkFrame, so it can draw a label and
a frame around the child. The frame will be
"shrink-wrapped" to the size of the child.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkAspectFrame ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_aspect_frame_new ##### -->
<para>
Create a new #GtkAspectFrame.
</para>
@label: Label text.
@xalign: Horizontal lignment of the child within the allocation of
the #GtkAspectFrame. This ranges from 0.0 (left aligned)
to 1.0 (right aligned)
@yalign: Vertical lignment of the child within the allocation of
the #GtkAspectFrame. This ranges from 0.0 (left aligned)
to 1.0 (right aligned)
@ratio: The desired aspect ratio.
@obey_child: If %TRUE, @ratio is ignored, and the aspect
ratio is taken from the requistion of the child.
@Returns: the new #GtkAspectFrame.
<!-- # Unused Parameters # -->
@ratio: The desired aspect ratio.
<!-- ##### FUNCTION gtk_aspect_frame_set ##### -->
<para>
Set parameters for an existing #GtkAspectFrame.
</para>
@aspect_frame: a #GtkAspectFrame
@xalign: Horizontal lignment of the child within the allocation of
the #GtkAspectFrame. This ranges from 0.0 (left aligned)
to 1.0 (right aligned)
@yalign: Vertical lignment of the child within the allocation of
the #GtkAspectFrame. This ranges from 0.0 (left aligned)
to 1.0 (right aligned)
@ratio: The desired aspect ratio.
@obey_child: If %TRUE, @ratio is ignored, and the aspect
ratio is taken from the requistion of the child.

View File

@@ -1,202 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkButtonBox
<!-- ##### SECTION Short_Description ##### -->
Base class for #GtkHButtonBox and #GtkVButtonBox
<!-- ##### SECTION Long_Description ##### -->
<para>
The primary purpose of this class is to keep track of the various properties
of #GtkHButtonBox and #GtkVButtonBox widgets.
</para>
<para>
gtk_button_box_get_child_size_default() retrieves the default minimum width and height
for widgets in any button box. gtk_button_box_set_child_size_default()
changes the default minimum child widget size.
</para>
<para>
gtk_button_box_get_child_size() retrieves the minimum width and height
for widgets in a given button box. gtk_button_box_set_child_size()
allows those properties to be changed.
</para>
<para>
gtk_button_box_get_child_ipadding_default() gets the default number of pixels of
horizontal and vertical padding that are applied to each button in every button box.
gtk_button_box_set_child_ipadding_default() allows these defaults to be
changed.
</para>
<para>
The internal padding of buttons can be retrieved and changed per button box using
gtk_button_box_get_child_ipadding() and gtk_button_box_set_child_ipadding()
respectively.
</para>
<para>
gtk_button_box_get_spacing() and gtk_button_box_set_spacing() retrieve and
change default number of pixels between buttons, respectively.
</para>
<para>
gtk_button_box_get_layout() and gtk_button_box_set_layout() retrieve and alter the method
used to spread the buttons in a button box across the container, respectively.
</para>
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
<variablelist>
<varlistentry>
<term>#GtkVButtonBox</term>
<listitem><para>Vertical sub-class of #GtkButtonBox.</para></listitem>
</varlistentry>
<varlistentry>
<term>#GtkHButtonBox</term>
<listitem><para>Horizontal sub-class of #GtkButtonBox.</para></listitem>
</varlistentry>
</variablelist>
</para>
<!-- ##### STRUCT GtkButtonBox ##### -->
<para>
This is a read-only struct; no members should be modified directly.
</para>
<!-- ##### MACRO GTK_BUTTONBOX_DEFAULT ##### -->
<para>
Used internally only.
</para>
<!-- ##### FUNCTION gtk_button_box_get_child_size_default ##### -->
<para>
Retrieves the default minimum width and height for all button boxes, and
places the values in @min_width and @min_height, respectively.
</para>
@min_width: the default minimum width of a child widget.
@min_height: the default minimum height of a child widget.
<!-- ##### FUNCTION gtk_button_box_get_child_ipadding_default ##### -->
<para>
The internal padding of a button is the amount of space between the outside
of the button and the widget it contains. This function gets the default
amount of horizontal and vertical padding, placing the results in @ipad_x
and @ipad_y, respectively.
</para>
@ipad_x: the default horizontal internal button padding.
@ipad_y: the default vertical internal button padding.
<!-- ##### FUNCTION gtk_button_box_set_child_size_default ##### -->
<para>
Sets the default size of child buttons.
</para>
@min_width: minimum default width for child buttons.
@min_height: minimum default height for child buttons.
<!-- ##### FUNCTION gtk_button_box_set_child_ipadding_default ##### -->
<para>
Sets the default number of pixels that pad each button in every button box.
</para>
@ipad_x: new default horizontal padding.
@ipad_y: new default vertical padding.
<!-- ##### FUNCTION gtk_button_box_get_spacing ##### -->
<para>
Retrieves how much space a button box is placing between each child button.
</para>
@widget: a #GtkButtonBox.
@Returns: the current spacing applied to the buttons in @widget.
<!-- ##### FUNCTION gtk_button_box_get_layout ##### -->
<para>
Retrieves the method being used to arrange the buttons in a button box.
</para>
@widget: a #GtkButtonBox.
@Returns: the method used to layout buttons in @widget.
<!-- ##### FUNCTION gtk_button_box_get_child_size ##### -->
<para>
Retrieves the current width and height of all child widgets in a button box.
@min_width and @min_height are filled with those values, respectively.
</para>
@widget: a #GtkButtonBox.
@min_width: the width of the buttons contained by @widget.
@min_height: the height of the buttons contained by @widget.
<!-- ##### FUNCTION gtk_button_box_get_child_ipadding ##### -->
<para>
Gets the default number of pixels that pad the buttons in a given button box.
</para>
@widget: a #GtkButtonBox.
@ipad_x: the horizontal padding used by buttons in @widget.
@ipad_y: the vertical padding used by buttons in @widget.
<!-- ##### FUNCTION gtk_button_box_set_spacing ##### -->
<para>
Sets the amount of spacing between buttons in a given button box.
</para>
@widget: a #GtkButtonBox.
@spacing: the number of pixels of spacing.
<!-- ##### FUNCTION gtk_button_box_set_layout ##### -->
<para>
Changes the way buttons are arranged in their container.
</para>
@widget: a #GtkButtonBox.
@layout_style: the new layout style.
<!-- ##### FUNCTION gtk_button_box_set_child_size ##### -->
<para>
Sets a new default size for the children of a given button box.
</para>
@widget: a #GtkButtonBox.
@min_width: a default width for buttons in @widget.
@min_height: a default height for buttons in @widget.
<!-- ##### FUNCTION gtk_button_box_set_child_ipadding ##### -->
<para>
Changes the amount of internal padding used by all buttons in a given button
box.
</para>
@widget: a #GtkButtonBox.
@ipad_x: the horizontal padding that should be used by each button in @widget.
@ipad_y: the vertical padding that should be used by each button in @widget.
<!-- ##### FUNCTION gtk_button_box_child_requisition ##### -->
<para>
This is an internally used function and should never be called from an
application.
</para>
@widget:
@nvis_children:
@width:
@height:

View File

@@ -1,42 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkBin
<!-- ##### SECTION Short_Description ##### -->
a container with just one child.
<!-- ##### SECTION Long_Description ##### -->
<para>
The #GtkBin widget is a container with just one child.
It is not very useful itself, but it is useful for deriving subclasses,
since it provides common code needed for handling a single child widget.
</para>
<para>
Many GTK+ widgets are subclasses of #GtkBin, including #GtkWindow, #GtkButton,
#GtkFrame, #GtkHandleBox, and #GtkScrolledWindow.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkBin ##### -->
<para>
The #GtkBin-struct struct contains the following fields.
(These fields should be considered read-only. They should never be set by
an application.)
<informaltable pgwide=1 frame="none" role="struct">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>#GtkWidget *child;</entry>
<entry>the child widget.</entry>
</row>
</tbody></tgroup></informaltable>
</para>

View File

@@ -1,243 +0,0 @@
<!-- ##### SECTION Title ##### -->
Bindings
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkPatternSpec ##### -->
<para>
</para>
@match_type:
@pattern_length:
@pattern:
@pattern_reversed:
@user_data:
@seq_id:
<!-- ##### FUNCTION gtk_pattern_spec_init ##### -->
<para>
</para>
@pspec:
@pattern:
<!-- ##### FUNCTION gtk_pattern_spec_free_segs ##### -->
<para>
</para>
@pspec:
<!-- ##### FUNCTION gtk_pattern_match ##### -->
<para>
</para>
@pspec:
@string_length:
@string:
@string_reversed:
@Returns:
<!-- ##### FUNCTION gtk_pattern_match_string ##### -->
<para>
</para>
@pspec:
@string:
@Returns:
<!-- ##### FUNCTION gtk_pattern_match_simple ##### -->
<para>
</para>
@pattern:
@string:
@Returns:
<!-- ##### STRUCT GtkBindingSet ##### -->
<para>
</para>
@set_name:
@priority:
@widget_path_pspecs:
@widget_class_pspecs:
@class_branch_pspecs:
@entries:
@current:
<!-- ##### STRUCT GtkBindingEntry ##### -->
<para>
</para>
@keyval:
@modifiers:
@binding_set:
@destroyed:
@in_emission:
@set_next:
@hash_next:
@signals:
<!-- ##### STRUCT GtkBindingSignal ##### -->
<para>
</para>
@next:
@signal_name:
@n_args:
@args:
<!-- ##### STRUCT GtkBindingArg ##### -->
<para>
</para>
@arg_type:
<!-- ##### FUNCTION gtk_binding_set_new ##### -->
<para>
</para>
@set_name:
@Returns:
<!-- ##### FUNCTION gtk_binding_set_by_class ##### -->
<para>
</para>
@object_class:
@Returns:
<!-- ##### FUNCTION gtk_binding_set_find ##### -->
<para>
</para>
@set_name:
@Returns:
<!-- ##### FUNCTION gtk_bindings_activate ##### -->
<para>
</para>
@object:
@keyval:
@modifiers:
@Returns:
<!-- ##### FUNCTION gtk_binding_set_activate ##### -->
<para>
</para>
@binding_set:
@keyval:
@modifiers:
@object:
@Returns:
<!-- ##### MACRO gtk_binding_entry_add ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_binding_entry_clear ##### -->
<para>
</para>
@binding_set:
@keyval:
@modifiers:
<!-- ##### FUNCTION gtk_binding_entry_add_signal ##### -->
<para>
</para>
@binding_set:
@keyval:
@modifiers:
@signal_name:
@n_args:
@Varargs:
<!-- ##### FUNCTION gtk_binding_set_add_path ##### -->
<para>
</para>
@binding_set:
@path_type:
@path_pattern:
@priority:
<!-- ##### FUNCTION gtk_binding_entry_remove ##### -->
<para>
</para>
@binding_set:
@keyval:
@modifiers:
<!-- ##### FUNCTION gtk_binding_entry_add_signall ##### -->
<para>
</para>
@binding_set:
@keyval:
@modifiers:
@signal_name:
@binding_args:
<!-- ##### FUNCTION gtk_binding_parse_binding ##### -->
<para>
</para>
@scanner:
@Returns:

View File

@@ -1,366 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkBox
<!-- ##### SECTION Short_Description ##### -->
a base class for box containers
<!-- ##### SECTION Long_Description ##### -->
<para>
GtkBox is an abstract widget which encapsulates functionallity for a
particular kind of container, one that organizes a variable number of
widgets into a rectangular area. GtkBox currently has two derived
classes, #GtkHBox and #GtkVBox.
</para>
<para>
The rectangular area of a GtkBox is organized into either a single row
or a single column of child widgets depending upon whether the box is
of type #GtkHBox or #GtkVBox, respectively. Thus, all children of a
GtkBox are allocated one dimension in common, which is the height of a
row, or the width of a column.
</para>
<para>
GtkBox uses a notion of <emphasis>packing</emphasis>. Packing refers to
adding widgets with reference to a particular position in a
#GtkContainer. For a GtkBox, there are two reference positions: the
<emphasis>start</emphasis> and the <emphasis>end</emphasis> of the box. For a
#GtkVBox, the start is defined as the top of the box and the end is
defined as the bottom. For a #GtkHBox the start is defined as the
left side and the end is defined as the right side.
</para>
<para>
Use repeated calls to gtk_box_pack_start() to pack widgets into a
GtkBox from start to end. Use gtk_box_pack_end() to add widgets from
end to start. You may intersperse these calls and add widgets from
both ends of the same GtkBox.
</para>
<para>
Use gtk_box_pack_start_defaults() or gtk_box_pack_end_defaults()
to pack widgets into a GtkBox if you do not need to specify the
<structfield>expand</structfield>, <structfield>fill</structfield>, or
<structfield>padding</structfield> attributes of the child to be
added.
</para>
<para>
Because GtkBox is a #GtkContainer, you may also use
gtk_container_add() to insert widgets into the box, and they will be
packed as if with gtk_box_pack_start_defaults(). Use
gtk_container_remove() to remove widgets from the GtkBox.
</para>
<para>
Use gtk_box_set_homogeneous() to specify whether or not all children
of the GtkBox are forced to get the same amount of space.
</para>
<para>
Use gtk_box_set_spacing() to determine how much space will be
minimally placed between all children in the GtkBox.
</para>
<para>
Use gtk_box_reorder_child() to move a GtkBox child to a different
place in the box.
</para>
<para>
Use gtk_box_set_child_packing() to reset the
<structfield>expand</structfield>, <structfield>fill</structfield>,
and <structfield>padding</structfield> attributes of any GtkBox child.
Use gtk_box_query_child_packing() to query these fields.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
<variablelist>
<varlistentry>
<term>#GtkHBox</term>
<listitem><para>a derived class that organizes widgets into a row.</para></listitem>
</varlistentry>
<varlistentry>
<term>#GtkVBox</term>
<listitem><para>a derived class that organizes widgets into a column.</para></listitem>
</varlistentry>
<varlistentry>
<term>#GtkFrame</term>
<listitem><para>a #GtkWidget useful for drawing a border around a GtkBox.</para></listitem>
</varlistentry>
<varlistentry>
<term>#GtkTable</term>
<listitem><para>a #GtkContainer for organizing widgets into a grid,
rather than independent rows or columns.</para></listitem>
</varlistentry>
<varlistentry>
<term>#GtkLayout</term>
<listitem><para>a #GtkContainer for organizing widgets into arbitrary
layouts.</para></listitem>
</varlistentry>
</variablelist>
</para>
<!-- ##### STRUCT GtkBox ##### -->
<para>
The #GtkBox-struct describes an instance of GtkBox and contains the following fields.
(These fields should be considered read-only. They should never be set by
an application.)
<informaltable pgwide=1 frame="none" role="struct">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>#GList * <structfield>children</structfield>;</entry>
<entry>a list of children belonging the GtkBox. The data is a list of
structures of type #GtkBoxChild-struct.</entry>
</row>
<row>
<entry>#gint16 <structfield>spacing</structfield>;</entry>
<entry>the number of pixels to put between children of the GtkBox, zero
by default. Use gtk_box_set_spacing() to set this field.</entry>
</row>
<row>
<entry>#guint <structfield>homogeneous</structfield>;</entry>
<entry>a flag that if %TRUE forces all children to get equal space in
the GtkBox; %FALSE by default. Use gtk_box_set_homogeneous() to set this
field.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
<!-- ##### STRUCT GtkBoxChild ##### -->
<para>
The #GtkBoxChild-struct holds a child widget of GtkBox and describes
how the child is to be packed into the GtkBox. Use
gtk_box_query_child_packing() and gtk_box_set_child_packing() to query
and reset the <structfield>padding</structfield>,
<structfield>expand</structfield>, <structfield>fill</structfield>,
and <structfield>pack</structfield> fields.
</para>
<para>
#GtkBoxChild-struct contains the following fields. (These fields
should be considered read-only. They should never be directly set by an
application.)
<informaltable pgwide=1 frame="none" role="struct">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>#GtkWidget * <structfield>widget</structfield>;</entry>
<entry>the child widget, packed into the GtkBox.</entry>
</row>
<row>
<entry>#guint16 <structfield>padding</structfield>;</entry>
<entry>the number of extra pixels to put between this child and its
neighbors, set when packed, zero by default.</entry>
</row>
<row>
<entry>#guint <structfield>expand</structfield>;</entry>
<entry>flag indicates whether extra space should be given to this
child. Any extra space given to the parent GtkBox is divided up among
all children with this attribute set to %TRUE; set when packed, %TRUE by
default.</entry>
</row>
<row>
<entry>#guint <structfield>fill</structfield>;</entry>
<entry>flag indicates whether any extra space given to this child due to its
<structfield>expand</structfield> attribute being set is actually
allocated to the child, rather than being used as padding
around the widget; set when packed, %TRUE by default.</entry>
</row>
<row>
<entry>#guint <structfield>pack</structfield>;</entry> <entry>one of
#GtkPackType indicating whether the child is packed with reference to
the start (top/left) or end (bottom/right) of the GtkBox.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@widget:
@padding:
@expand:
@fill:
@pack:
<!-- ##### FUNCTION gtk_box_pack_start ##### -->
<para>
Adds @child to @box, packed with reference to the start of @box. The
@child is packed after any other child packed with reference to the
start of @box.
</para>
@box: a #GtkBox.
@child: the #GtkWidget to be added to @box.
@expand: %TRUE if the new child is to be given extra space allocated to
@box. The extra space will be divided evenly between all children of
@box that use this option.
@fill: %TRUE if space given to @child by the @expand option is
actually allocated to @child, rather than just padding it. This
parameter has no effect if @expand is set to %FALSE. A child is
always allocated the full height of a #GtkHBox and the full width of a
#GtkVBox. This option affects the other dimension.
@padding: extra space in pixels to put between this child and its
neighbors, over and above the global amount specified by
<structfield>spacing</structfield> in #GtkBox-struct. If @child is a
widget at one of the reference ends of @box, then @padding pixels are also put
between @child and the reference edge of @box.
<!-- ##### FUNCTION gtk_box_pack_end ##### -->
<para>
Adds @child to @box, packed with reference to the end of @box. The
@child is packed after (away from end of) any other child packed with reference to the
end of @box.
</para>
@box: a #GtkBox.
@child: the #GtkWidget to be added to @box.
@expand: %TRUE if the new child is to be given extra space allocated to
@box. The extra space will be divided evenly between all children of
@box that use this option.
@fill: %TRUE if space given to @child by the @expand option is
actually allocated to @child, rather than just padding it. This
parameter has no effect if @expand is set to %FALSE. A child is
always allocated the full height of a #GtkHBox and the full width of a
#GtkVBox. This option affects the other dimension.
@padding: extra space in pixels to put between this child and its
neighbors, over and above the global amount specified by
<structfield>spacing</structfield> in #GtkBox-struct. If @child is a
widget at one of the reference ends of @box, then @padding pixels are also put
between @child and the reference edge of @box.
<!-- ##### FUNCTION gtk_box_pack_start_defaults ##### -->
<para>
Adds @widget to @box, packed with reference to the start of @box. The
child is packed after any other child packed with reference to the
start of @box.
</para>
<para>
Parameters for how to pack the child @widget,
<structfield>expand</structfield>, <structfield>fill</structfield>,
and <structfield>padding</structfield> in #GtkBoxChild-struct, are given their default
values, %TRUE, %TRUE, and 0, respectively.
</para>
@box: a #GtkBox.
@widget: the #GtkWidget to be added to @box.
<!-- ##### FUNCTION gtk_box_pack_end_defaults ##### -->
<para>
Adds @widget to @box, packed with reference to the end of @box. The
child is packed after (away from end of) any other child packed with
reference to the end of @box.
</para>
<para>
Parameters for how to pack the child @widget,
<structfield>expand</structfield>, <structfield>fill</structfield>,
and <structfield>padding</structfield> in #GtkBoxChild-struct, are given their default
values, %TRUE, %TRUE, and 0, respectively.
</para>
@box: a #GtkBox.
@widget: the #GtkWidget to be added to @box.
<!-- ##### FUNCTION gtk_box_set_homogeneous ##### -->
<para>
Sets the <structfield>homogeneous</structfield> field of
#GtkBox-struct, controlling whether or not all children of @box are
given equal space in the box.
</para>
@box: a #GtkBox.
@homogeneous: a boolean value, %TRUE to create equal allotments,
%FALSE for variable allotments.
<!-- ##### FUNCTION gtk_box_set_spacing ##### -->
<para>
Sets the <structfield>spacing</structfield> field of #GtkBox-struct,
which is the number of pixels to place between children of @box.
</para>
@box: a #GtkBox.
@spacing: the number of pixels to put between children.
<!-- ##### FUNCTION gtk_box_reorder_child ##### -->
<para>
Moves @child to a new @position in the list of @box children. The
list is the <structfield>children</structfield> field of
#GtkBox-struct, and contains both widgets packed #GTK_PACK_START as
well as widgets packed #GTK_PACK_END, in the order that these widgets
were added to @box.
</para>
<para>
A widget's position in the @box children list determines where the
widget is packed into @box. A child widget at some position in the
list will be packed just after all other widgets of the same packing
type that appear earlier in the list. A negative value of @position is
interpreted as position 0.
</para>
@box: a #GtkBox.
@child: the #GtkWidget to move.
@position: the new position for @child in the
<structfield>children</structfield> list of #GtkBox-struct, starting
from 0.
<!-- ##### FUNCTION gtk_box_query_child_packing ##### -->
<para>
Returns information about how @child is packed into @box.
</para>
@box: a #GtkBox.
@child: the #GtkWidget of the child to query.
@expand: the returned value of the <structfield>expand</structfield>
field in #GtkBoxChild-struct.
@fill: the returned value of the <structfield>fill</structfield> field
in #GtkBoxChild-struct.
@padding: the returned value of the <structfield>padding</structfield>
field in #GtkBoxChild-struct.
@pack_type: the returned value of the <structfield>pack</structfield>
field in #GtkBoxChild-struct.
<!-- ##### FUNCTION gtk_box_set_child_packing ##### -->
<para>
Sets the way @child is packed into @box.
</para>
@box: a #GtkBox.
@child: the #GtkWidget of the child to set.
@expand: the new value of the <structfield>expand</structfield> field
in #GtkBoxChild-struct.
@fill: the new value of the <structfield>fill</structfield> field in
#GtkBoxChild-struct.
@padding: the new value of the <structfield>padding</structfield>
field in #GtkBoxChild-struct.
@pack_type: the new value of the <structfield>pack</structfield> field
in #GtkBoxChild-struct.
<!-- ##### ARG GtkBox:spacing ##### -->
<para>
the minimum amount of space to put between children. Refers to the
<structfield>spacing</structfield> field of #GtkBox-struct.
</para>
<!-- ##### ARG GtkBox:homogeneous ##### -->
<para>
how to allocate space for children, equally or variably. Refers to
the <structfield>homogeneous</structfield> field of #GtkBox-struct.
</para>

View File

@@ -1,158 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkButton
<!-- ##### SECTION Short_Description ##### -->
A widget that creates a signal when clicked on.
<!-- ##### SECTION Long_Description ##### -->
<para>
The #GtkButton widget is generally used to attach a function to that
is called when the button is pressed. The various signals and how to use
them are outlined below.
</para>
<para>
The #GtkButton widget can hold any valid child widget. That is it can
hold most any other standard #GtkWidget. The most commonly used child is
the #GtkLabel.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkButton ##### -->
<para>
This should not be accessed directly. Use the accessor functions below.
</para>
<!-- ##### FUNCTION gtk_button_new ##### -->
<para>
Creates a new #GtkButton widget.
</para>
@Returns: The newly created #GtkButton widget.
<!-- ##### FUNCTION gtk_button_new_with_label ##### -->
<para>
Creates a #GtkButton widget with a #GtkLabel child containing the given
text.
</para>
@label: The text you want the #GtkLabel to hold.
@Returns: The newly created #GtkButton widget.
<!-- ##### FUNCTION gtk_button_pressed ##### -->
<para>
Emits a #GtkButton::pressed signal to the given #GtkButton.
</para>
@button: The #GtkButton you want to send the signal to.
<!-- ##### FUNCTION gtk_button_released ##### -->
<para>
Emits a #GtkButton::released signal to the given #GtkButton.
</para>
@button: The #GtkButton you want to send the signal to.
<!-- ##### FUNCTION gtk_button_clicked ##### -->
<para>
Emits a #GtkButton::clicked signal to the given #GtkButton.
</para>
@button: The #GtkButton you want to send the signal to.
<!-- ##### FUNCTION gtk_button_enter ##### -->
<para>
Emits a #GtkButton::enter signal to the given #GtkButton.
</para>
@button: The #GtkButton you want to send the signal to.
<!-- ##### FUNCTION gtk_button_leave ##### -->
<para>
Emits a #GtkButton::leave signal to the given #GtkButton.
</para>
@button: The #GtkButton you want to send the signal to.
<!-- ##### FUNCTION gtk_button_set_relief ##### -->
<para>
Sets the relief style of the edges of the given #GtkButton widget.
Three styles exist, GTK_RELIEF_NORMAL, GTK_RELIEF_HALF, GTK_RELIEF_NONE.
The default style is, as one can guess, GTK_RELIEF_NORMAL.
<!-- FIXME: put pictures of each style -->
</para>
@button: The #GtkButton you want to set relief styles of.
@newstyle: The GtkReliefStyle as described above.
<!-- ##### FUNCTION gtk_button_get_relief ##### -->
<para>
Returns the current relief style of the given #GtkButton.
</para>
@button: The #GtkButton you want the #GtkReliefStyle from.
@Returns: The current #GtkReliefStyle
<!-- ##### SIGNAL GtkButton::pressed ##### -->
<para>
Emitted when the button is initially pressed.
</para>
@button: the object which received the signal.
<!-- ##### SIGNAL GtkButton::released ##### -->
<para>
Emitted when a button which is pressed is released, no matter where the
mouse cursor is.
</para>
@button: the object which received the signal.
<!-- ##### SIGNAL GtkButton::clicked ##### -->
<para>
Emitted when a button clicked on by the mouse and the cursor stays on the
button. If the cursor is not on the button when the mouse button is released,
the signal is not emitted.
</para>
@button: the object which received the signal.
<!-- ##### SIGNAL GtkButton::enter ##### -->
<para>
Emitted when the mouse cursor enters the region of the button.
</para>
@button: the object which received the signal.
<!-- ##### SIGNAL GtkButton::leave ##### -->
<para>
Emitted when the mouse cursor leaves the region of the button.
</para>
@button: the object which received the signal.
<!-- ##### ARG GtkButton:label ##### -->
<para>
The text within the child #GtkLabel of the #GtkButton. Only useful if
there is actually a #GtkLabel inside of the #GtkButton.
</para>
<!-- ##### ARG GtkButton:relief ##### -->
<para>
The #GtkReliefStyle as outlined in gtk_button_set_relief().
</para>

View File

@@ -1,240 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkCalendar
<!-- ##### SECTION Short_Description ##### -->
display a calendar and/or allow the user to select a date.
<!-- ##### SECTION Long_Description ##### -->
<para>
#GtkCalendar is a widget that displays a calendar, one month at a time.
It can be created with gtk_calendar_new().
</para>
<para>
The month and year currently displayed can be altered with
gtk_calendar_select_month(). The exact day can be selected from the displayed
month using gtk_calendar_select_day().
</para>
<para>
FIXME: (check)To place a visual marker on a particular day, use
gtk_calendar_mark_day() and to remove the marker, gtk_calendar_unmark_day().
Alternative, all marks can be cleared with gtk_calendar_clear_marks().
</para>
<para>
The way in which the calendar itself is displayed can be altered using
gtk_calendar_display_options().
</para>
<para>
The selected date can be retrieved from a #GtkCalendar using
gtk_calendar_get_date().
</para>
<para>
If performing many 'mark' operations, the calendar can be frozen to prevent
flicker, using gtk_calendar_freeze(), and 'thawed' again using
gtk_calendar_thaw().
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkCalendar ##### -->
<para>
<structfield>num_marked_dates</structfield> is an integer containing the
number of days that have a mark over them.
</para>
<para>
<structfield>marked_date</structfield> is an array containing the day numbers
that currently have a mark over them.
</para>
<para>
<structfield>month</structfield>, <structfield>year</structfield>, and
<structfield>selected_day</structfield> contain the currently visible month,
year, and selected day respectively.
</para>
<para>
All of these fields should be considered read only, and everything in this
struct should only be modified using the functions provided below.
</para>
<!-- ##### ENUM GtkCalendarDisplayOptions ##### -->
<para>
<informaltable pgwide=1 frame="none" role="enum">
<tgroup cols="2"><colspec colwidth="*"><colspec colwidth="8*">
<tbody>
<row>
<entry>GTK_CALENDAR_SHOW_HEADING</entry>
<entry>Specifies that the month and year should be displayed.</entry>
</row>
<row>
<entry>GTK_CALENDAR_SHOW_DAY_NAMES</entry>
<entry>Specifies that three letter day descriptions should be present.</entry>
</row>
<row>
<entry>GTK_CALENDAR_NO_MONTH_CHANGE</entry>
<entry>Prevents the user from switching months with the calendar.</entry>
</row>
<row>
<entry>GTK_CALENDAR_SHOW_WEEK_NUMBERS</entry>
<entry>Displays each week numbers of the current year, down the left side of
the calendar.</entry>
</row>
<row>
<entry>GTK_CALENDAR_WEEK_START_MONDAY</entry>
<entry>Starts the calendar week on Monday, instead of the default Sunday.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
@GTK_CALENDAR_SHOW_HEADING:
@GTK_CALENDAR_SHOW_DAY_NAMES:
@GTK_CALENDAR_NO_MONTH_CHANGE:
@GTK_CALENDAR_SHOW_WEEK_NUMBERS:
@GTK_CALENDAR_WEEK_START_MONDAY:
<!-- ##### FUNCTION gtk_calendar_new ##### -->
<para>
Creates a new calendar. FIXME:default date.
</para>
@Returns: a #GtkCalendar.
<!-- ##### FUNCTION gtk_calendar_select_month ##### -->
<para>
Shifts the calendar to a different month.
</para>
@calendar: a #GtkCalendar.
@month: a month number.
@year: the year the month is in.
@Returns: FIXME.
<!-- ##### FUNCTION gtk_calendar_select_day ##### -->
<para>
Selects a day from the current month.
</para>
@calendar: a #GtkCalendar.
@day: the day number to select.
<!-- ##### FUNCTION gtk_calendar_mark_day ##### -->
<para>
</para>
@calendar:
@day:
@Returns:
<!-- ##### FUNCTION gtk_calendar_unmark_day ##### -->
<para>
</para>
@calendar:
@day:
@Returns:
<!-- ##### FUNCTION gtk_calendar_clear_marks ##### -->
<para>
</para>
@calendar:
<!-- ##### FUNCTION gtk_calendar_display_options ##### -->
<para>
</para>
@calendar:
@flags:
<!-- ##### FUNCTION gtk_calendar_get_date ##### -->
<para>
</para>
@calendar:
@year:
@month:
@day:
<!-- ##### FUNCTION gtk_calendar_freeze ##### -->
<para>
Locks the display of the calendar until it is thawed with gtk_calendar_thaw().
</para>
@calendar: a #GtkCalendar.
<!-- ##### FUNCTION gtk_calendar_thaw ##### -->
<para>
Defrosts a calendar; all the changes made since the last
gtk_calendar_freeze() are displayed.
</para>
@calendar: a #GtkCalendar.
<!-- ##### SIGNAL GtkCalendar::month-changed ##### -->
<para>
Emitted when the user clicks a button to change the selected month on a
calendar.
</para>
@calendar: the object which received the signal.
<!-- ##### SIGNAL GtkCalendar::day-selected ##### -->
<para>
Emitted when the user selects a day.
</para>
@calendar: the object which received the signal.
<!-- ##### SIGNAL GtkCalendar::day-selected-double-click ##### -->
<para>
</para>
@calendar: the object which received the signal.
<!-- ##### SIGNAL GtkCalendar::prev-month ##### -->
<para>
</para>
@calendar: the object which received the signal.
<!-- ##### SIGNAL GtkCalendar::next-month ##### -->
<para>
</para>
@calendar: the object which received the signal.
<!-- ##### SIGNAL GtkCalendar::prev-year ##### -->
<para>
</para>
@calendar: the object which received the signal.
<!-- ##### SIGNAL GtkCalendar::next-year ##### -->
<para>
</para>
@calendar: the object which received the signal.

View File

@@ -1,59 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkCheckButton
<!-- ##### SECTION Short_Description ##### -->
create widgets with a discrete toggle button.
<!-- ##### SECTION Long_Description ##### -->
<para>
A #GtkCheckButton places a discrete #GtkToggleButton next to a widget, (usually a #GtkLabel). See the section on #GtkToggleButton widgets for more information about toggle/check buttons.
</para>
<para>
The important signal ('toggled') is also inherited from #GtkToggleButton.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
<variablelist>
<varlistentry>
<term>#GtkCheckMenuItem</term>
<listitem><para>add check buttons to your menus.</para></listitem>
</varlistentry>
<varlistentry>
<term>#GtkButton</term>
<listitem><para>a more general button.</para></listitem>
</varlistentry>
<varlistentry>
<term>#GtkToggleButton</term>
<listitem><para>#GtkCheckButton's parent.</para></listitem>
</varlistentry>
<varlistentry>
<term>#GtkRadioButton</term>
<listitem><para>group check buttons together.</para></listitem>
</varlistentry>
</variablelist>
</para>
<!-- ##### STRUCT GtkCheckButton ##### -->
<para>
<structfield>toggle_button</structfield> is a #GtkToggleButton representing the actual toggle button that composes the check button.
</para>
<!-- ##### FUNCTION gtk_check_button_new ##### -->
<para>
Creates a new #GtkCheckButton.
</para>
@Returns: a #GtkWidget.
<!-- ##### FUNCTION gtk_check_button_new_with_label ##### -->
<para>
Creates a new #GtkCheckButton with a #GtkLabel to the right of it.
</para>
@label: the text for the check button.
@Returns: a #GtkWidget.

View File

@@ -1,108 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkCheckMenuItem
<!-- ##### SECTION Short_Description ##### -->
a menu item with a check box.
<!-- ##### SECTION Long_Description ##### -->
<para>
A #GtkCheckMenuItem is a menu item that maintains the state of a boolean
value in addition to a #GtkMenuItem's usual role in activating application
code.
</para>
<para>
A check box indicating the state of the boolean value is displayed
at the left side of the #GtkMenuItem. Activating the #GtkMenuItem
toggles the value.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkCheckMenuItem ##### -->
<para>
The #GtkCheckMenuItem-struct struct contains the following fields.
(These fields should be considered read-only. They should never be set by
an application.)
<informaltable pgwide=1 frame="none" role="struct">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>#guint active;</entry>
<entry>TRUE if the check box is active.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
<!-- ##### FUNCTION gtk_check_menu_item_new ##### -->
<para>
Creates a new #GtkCheckMenuItem.
</para>
@Returns: a new #GtkCheckMenuItem.
<!-- ##### FUNCTION gtk_check_menu_item_new_with_label ##### -->
<para>
Creates a new #GtkCheckMenuItem with a label.
</para>
@label: the string to use for the label.
@Returns: a new #GtkCheckMenuItem.
<!-- ##### MACRO gtk_check_menu_item_set_state ##### -->
<para>
This macro is provided to preserve compatibility with older code.
New code should use gtk_check_menu_item_set_active() function instead.
</para>
<!-- ##### FUNCTION gtk_check_menu_item_set_active ##### -->
<para>
Sets the active state of the menu item's check box.
</para>
@check_menu_item: a #GtkCheckMenuItem.
@is_active: boolean value indicating whether the check box is active.
<!-- ##### FUNCTION gtk_check_menu_item_set_show_toggle ##### -->
<para>
Controls whether the check box is shown at all times.
Normally the check box is shown only when it is active or while the
menu item is selected.
</para>
@menu_item: a #GtkCheckMenuItem.
@always: boolean value indicating whether to always show the check box.
<!-- ##### FUNCTION gtk_check_menu_item_toggled ##### -->
<para>
Emits the GtkCheckMenuItem::toggled signal.
</para>
@check_menu_item: a #GtkCheckMenuItem.
<!-- ##### SIGNAL GtkCheckMenuItem::toggled ##### -->
<para>
This signal is emitted when the state of the check box is changed.
</para>
<para>
A signal handler can examine the <structfield>active</structfield>
field of the #GtkCheckMenuItem-struct struct to discover the new state.
</para>
@checkmenuitem: the object which received the signal.

File diff suppressed because it is too large Load Diff

View File

@@ -1,73 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkColorSelection
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkColorSelection ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_color_selection_new ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gtk_color_selection_set_update_policy ##### -->
<para>
</para>
@colorsel:
@policy:
<!-- ##### FUNCTION gtk_color_selection_set_opacity ##### -->
<para>
</para>
@colorsel:
@use_opacity:
<!-- ##### FUNCTION gtk_color_selection_set_color ##### -->
<para>
</para>
@colorsel:
@color:
<!-- ##### FUNCTION gtk_color_selection_get_color ##### -->
<para>
</para>
@colorsel:
@color:
<!-- ##### SIGNAL GtkColorSelection::color-changed ##### -->
<para>
</para>
@colorselection: the object which received the signal.

View File

@@ -1,31 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkColorSelectionDialog
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkColorSelectionDialog ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_color_selection_dialog_new ##### -->
<para>
</para>
@title:
@Returns:

View File

@@ -1,204 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkCombo
<!-- ##### SECTION Short_Description ##### -->
a text entry field with a dropdown list.
<!-- ##### SECTION Long_Description ##### -->
<para>
The #GtkCombo widget consists of a single-line text entry field and a drop-down
list. The drop-down list is displayed when the user clicks on a small arrow
button to the right of the entry field.
</para>
<para>
The drop-down list is a #GtkList widget and can be accessed using the
<structfield>list</structfield> member of the #GtkCombo-struct.
List elements can contain arbitrary widgets, but if an element is not a
plain label, then you must use the gtk_list_set_item_string() function.
This sets the string which will be placed in the text entry field when the
item is selected.
</para>
<para>
By default, the user can step through the items in the list using the
arrow (cursor) keys, though this behaviour can be turned off with
gtk_combo_set_use_arrows().
</para>
<para>
Normally the arrow keys are only active when the contents of the text entry
field matches one of the items in the list. If the contents of the entry field
do not match any of the list items, then pressing the arrow keys does nothing.
However, by calling gtk_combo_set_use_arrows_always() you can specify that the
arrow keys are always active. If the contents of the entry field does not match
any of the items in the list, then pressing the up or down arrow key will set
the entry field to the last or first item in the list, respectively.
</para>
<example id="gtkcombo-simple-example">
<title>Creating a #GtkCombo widget with simple text items.</title>
<programlisting>
GtkWidget *combo;
GList *items = NULL;
items = g_list_append (items, "First Item");
items = g_list_append (items, "Second Item");
items = g_list_append (items, "Third Item");
items = g_list_append (items, "Fourth Item");
items = g_list_append (items, "Fifth Item");
combo = gtk_combo_new ();
gtk_combo_set_popdown_strings (GTK_COMBO (combo), items);
</programlisting>
</example>
<example>
<title>Creating a #GtkCombo widget with a complex item.</title>
<programlisting>
GtkWidget *combo, *item, *hbox, *arrow, *label;
combo = gtk_combo_new ();
item = gtk_list_item_new ();
gtk_widget_show (item);
/* You can put almost anything into the GtkListItem widget. Here we will use
a horizontal box with an arrow and a label in it. */
hbox = gtk_hbox_new (FALSE, 3);
gtk_container_add (GTK_CONTAINER (item), hbox);
gtk_widget_show (hbox);
arrow = gtk_arrow_new (GTK_ARROW_RIGHT, GTK_SHADOW_OUT);
gtk_widget_show (arrow);
gtk_box_pack_start (GTK_BOX (hbox), pixmap, FALSE, FALSE, 0);
label = gtk_label_new ("First Item");
gtk_widget_show (label);
gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
/* You must set the string to display in the entry field when the item is
selected. */
gtk_combo_set_item_string (GTK_COMBO (combo), GTK_ITEM (item), "1st Item");
/* Now we simply add the item to the combo's list. */
gtk_container_add (GTK_CONTAINER (GTK_COMBO (combo)->list), item);
</programlisting>
</example>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkCombo ##### -->
<para>
The #GtkFixedChild-struct struct contains the following fields.
(These fields should be considered read-only. They should never be set by
an application.)
<informaltable pgwide=1 frame="none" role="struct">
<tgroup cols="2"><colspec colwidth="2*"><colspec colwidth="8*">
<tbody>
<row>
<entry>#GtkWidget *entry;</entry>
<entry>the text entry field.</entry>
</row>
<row>
<entry>#GtkWidget *list;</entry>
<entry>the list shown in the drop-down window.</entry>
</row>
</tbody></tgroup></informaltable>
</para>
<!-- ##### FUNCTION gtk_combo_new ##### -->
<para>
Creates a new #GtkCombo.
</para>
@Returns: a new #GtkCombo.
<!-- ##### FUNCTION gtk_combo_set_popdown_strings ##### -->
<para>
Convenience function to set all of the items in the popup list.
(See the <link linkend="gtkcombo-simple-example">example</link> above.)
</para>
@combo: a #GtkCombo.
@strings: a list of strings.
<!-- ##### FUNCTION gtk_combo_set_value_in_list ##### -->
<para>
Specifies whether the value entered in the text entry field must match one of
the values in the list. If this is set then the user will not be able to
perform any other action until a valid value has been entered.
</para>
<para>
If an empty field is acceptable, the @ok_if_empty parameter should be TRUE.
</para>
@combo: a #GtkCombo.
@val: TRUE if the value entered must match one of the values in the list.
@ok_if_empty: TRUE if an empty value is considered valid.
<!-- ##### FUNCTION gtk_combo_set_use_arrows ##### -->
<para>
Specifies if the arrow (cursor) keys can be used to step through the items in
the list. This is on by default.
</para>
@combo: a #GtkCombo.
@val: TRUE if the arrow keys can be used to step through the items in the list.
<!-- ##### FUNCTION gtk_combo_set_use_arrows_always ##### -->
<para>
Specifies if the arrow keys will still work even if the current contents of the
#GtkEntry field do not match any of the list items.
</para>
@combo: a #GtkCombo.
@val:
<!-- ##### FUNCTION gtk_combo_set_case_sensitive ##### -->
<para>
Specifies whether the text entered into the #GtkEntry field and the text in
the list items is case sensitive.
</para>
<para>
This may be useful, for example, when you have called
gtk_combo_set_value_in_list() to limit the values entered, but you are not
worried about differences in case.
</para>
@combo: a #GtkCombo.
@val:
<!-- ##### FUNCTION gtk_combo_set_item_string ##### -->
<para>
Sets the string to place in the #GtkEntry field when a particular list item is
selected. This is needed if the list item is not a simple label.
</para>
@combo: a #GtkCombo.
@item: a #GtkItem which
@item_value: the string to place in the #GtkEntry when @item is selected.
<!-- ##### FUNCTION gtk_combo_disable_activate ##### -->
<para>
Stops the #GtkCombo widget from showing the popup list when the #GtkEntry
emits the "activate" signal, i.e. when the Return key is pressed.
This may be useful if, for example. you want the Return key to close a dialog
instead.
</para>
@combo: a #GtkCombo.

View File

@@ -1,404 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkContainer
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkContainer ##### -->
<para>
</para>
<!-- ##### MACRO GTK_IS_RESIZE_CONTAINER ##### -->
<para>
</para>
@widget:
<!-- ##### MACRO gtk_container_border_width ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_container_add ##### -->
<para>
</para>
@container:
@widget:
<!-- ##### FUNCTION gtk_container_remove ##### -->
<para>
</para>
@container:
@widget:
<!-- ##### FUNCTION gtk_container_set_resize_mode ##### -->
<para>
</para>
@container:
@resize_mode:
<!-- ##### FUNCTION gtk_container_check_resize ##### -->
<para>
</para>
@container:
<!-- ##### FUNCTION gtk_container_foreach ##### -->
<para>
</para>
@container:
@callback:
@callback_data:
<!-- ##### FUNCTION gtk_container_foreach_full ##### -->
<para>
</para>
@container:
@callback:
@marshal:
@callback_data:
@notify:
<!-- ##### FUNCTION gtk_container_children ##### -->
<para>
</para>
@container:
@Returns:
<!-- ##### FUNCTION gtk_container_focus ##### -->
<para>
</para>
@container:
@direction:
@Returns:
<!-- ##### FUNCTION gtk_container_set_focus_child ##### -->
<para>
</para>
@container:
@child:
<!-- ##### FUNCTION gtk_container_set_focus_vadjustment ##### -->
<para>
</para>
@container:
@adjustment:
<!-- ##### FUNCTION gtk_container_set_focus_hadjustment ##### -->
<para>
</para>
@container:
@adjustment:
<!-- ##### FUNCTION gtk_container_register_toplevel ##### -->
<para>
</para>
@container:
<!-- ##### FUNCTION gtk_container_unregister_toplevel ##### -->
<para>
</para>
@container:
<!-- ##### FUNCTION gtk_container_resize_children ##### -->
<para>
</para>
@container:
<!-- ##### FUNCTION gtk_container_child_type ##### -->
<para>
</para>
@container:
@Returns:
<!-- ##### FUNCTION gtk_container_add_child_arg_type ##### -->
<para>
</para>
@arg_name:
@arg_type:
@arg_flags:
@arg_id:
<!-- ##### FUNCTION gtk_container_query_child_args ##### -->
<para>
</para>
@class_type:
@arg_flags:
@nargs:
@Returns:
<!-- ##### FUNCTION gtk_container_child_getv ##### -->
<para>
</para>
@container:
@child:
@n_args:
@args:
<!-- ##### FUNCTION gtk_container_child_setv ##### -->
<para>
</para>
@container:
@child:
@n_args:
@args:
<!-- ##### FUNCTION gtk_container_add_with_args ##### -->
<para>
</para>
@container:
@widget:
@first_arg_name:
@Varargs:
<!-- ##### FUNCTION gtk_container_addv ##### -->
<para>
</para>
@container:
@widget:
@n_args:
@args:
<!-- ##### FUNCTION gtk_container_child_set ##### -->
<para>
</para>
@container:
@child:
@first_arg_name:
@Varargs:
<!-- ##### FUNCTION gtk_container_queue_resize ##### -->
<para>
</para>
@container:
<!-- ##### FUNCTION gtk_container_clear_resize_widgets ##### -->
<para>
</para>
@container:
<!-- ##### FUNCTION gtk_container_arg_set ##### -->
<para>
</para>
@container:
@child:
@arg:
@info:
<!-- ##### FUNCTION gtk_container_arg_get ##### -->
<para>
</para>
@container:
@child:
@arg:
@info:
<!-- ##### FUNCTION gtk_container_child_args_collect ##### -->
<para>
</para>
@object_type:
@arg_list_p:
@info_list_p:
@first_arg_name:
@args:
@Returns:
<!-- ##### FUNCTION gtk_container_child_arg_get_info ##### -->
<para>
</para>
@object_type:
@arg_name:
@info_p:
@Returns:
<!-- ##### FUNCTION gtk_container_forall ##### -->
<para>
</para>
@container:
@callback:
@callback_data:
<!-- ##### FUNCTION gtk_container_child_composite_name ##### -->
<para>
</para>
@container:
@child:
@Returns:
<!-- ##### FUNCTION gtk_container_get_toplevels ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gtk_container_set_border_width ##### -->
<para>
</para>
@container:
@border_width:
<!-- ##### SIGNAL GtkContainer::add ##### -->
<para>
</para>
@container: the object which received the signal.
@widget:
<!-- ##### SIGNAL GtkContainer::remove ##### -->
<para>
</para>
@container: the object which received the signal.
@widget:
<!-- ##### SIGNAL GtkContainer::check-resize ##### -->
<para>
</para>
@container: the object which received the signal.
<!-- ##### SIGNAL GtkContainer::focus ##### -->
<para>
</para>
@container: the object which received the signal.
@direction:
@Returns:
<!-- ##### SIGNAL GtkContainer::set-focus-child ##### -->
<para>
</para>
@container: the object which received the signal.
@widget:
<!-- ##### ARG GtkContainer:border_width ##### -->
<para>
</para>
<!-- ##### ARG GtkContainer:resize_mode ##### -->
<para>
</para>
<!-- ##### ARG GtkContainer:child ##### -->
<para>
</para>

File diff suppressed because it is too large Load Diff

View File

@@ -1,125 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkCurve
<!-- ##### SECTION Short_Description ##### -->
allows direct editing of a curve.
<!-- ##### SECTION Long_Description ##### -->
<para>
The #GtkCurve widget allows the user to edit a curve covering a range of
values. It is typically used to fine-tune color balances in graphics
applications like the Gimp.
</para>
<para>
The #GtkCurve widget has 3 modes of operation - spline, linear and free.
In spline mode the user places points on the curve which are automatically
connected together into a smooth curve. In linear mode the user places points
on the curve which are connected by straight lines. In free mode the user can
draw the points of the curve freely, and they are not connected at all.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
<variablelist>
<varlistentry>
<term>#GtkGammaCurve</term>
<listitem><para>a subclass for editing gamma curves.
</listitem>
</varlistentry>
</variablelist>
</para>
<!-- ##### STRUCT GtkCurve ##### -->
<para>
The #GtkCurve-struct struct contains private data only, and
should be accessed using the functions below.
</para>
<!-- ##### FUNCTION gtk_curve_new ##### -->
<para>
Creates a new #GtkCurve.
</para>
@Returns: a new #GtkCurve.
<!-- ##### FUNCTION gtk_curve_reset ##### -->
<para>
Resets the curve to a straight line from the minimum x & y values to the
maximum x & y values (i.e. from the bottom-left to the top-right corners).
The curve type is not changed.
</para>
@curve: a #GtkCurve.
<!-- ##### FUNCTION gtk_curve_set_gamma ##### -->
<para>
Recomputes the entire curve using the given gamma value.
A gamma value of 1 results in a straight line. Values greater than 1 result
in a curve above the straight line. Values less than 1 result in a curve
below the straight line. The curve type is changed to %GTK_CURVE_TYPE_FREE.
FIXME: Needs a more precise definition of gamma.
</para>
@curve: a #GtkCurve.
@gamma: the gamma value.
<!-- ##### FUNCTION gtk_curve_set_range ##### -->
<para>
Sets the minimum and maximum x & y values of the curve.
The curve is also reset with a call to gtk_curve_reset().
</para>
@curve: a #GtkCurve.
@min_x: the minimum x value.
@max_x: the maximum x value.
@min_y: the minimum y value.
@max_y: the maximum y value.
<!-- ##### FUNCTION gtk_curve_get_vector ##### -->
<para>
Returns a vector of points representing the curve.
</para>
@curve: a #GtkCurve.
@veclen: the number of points to calculate.
@vector: returns the points.
<!-- ##### FUNCTION gtk_curve_set_vector ##### -->
<para>
Sets the vector of points on the curve.
The curve type is set to %GTK_CURVE_TYPE_FREE.
</para>
@curve: a #GtkCurve.
@veclen: the number of points.
@vector: the points on the curve.
<!-- ##### FUNCTION gtk_curve_set_curve_type ##### -->
<para>
Sets the type of the curve. The curve will remain unchanged except when
changing from a free curve to a linear or spline curve, in which case the
curve will be changed as little as possible.
</para>
@curve: a #GtkCurve.
@type: the type of the curve.
<!-- ##### SIGNAL GtkCurve::curve-type-changed ##### -->
<para>
Emitted when the curve type has been changed.
The curve type can be changed explicitly with a call to
gtk_curve_set_curve_type(). It is also changed as a side-effect of
calling gtk_curve_reset() or gtk_curve_set_gamma().
</para>
@curve: the object which received the signal.

View File

@@ -1,38 +0,0 @@
<!-- ##### SECTION Title ##### -->
GtkData
<!-- ##### SECTION Short_Description ##### -->
abstract base class for objects containing data.
<!-- ##### SECTION Long_Description ##### -->
<para>
The #GtkData object is a very simple object intended to be used as a base
class for objects which contain data (i.e. the 'Model' in the object-oriented
Model/View/Controller framework).
</para>
<para>
Currently it is not very useful since all it provides is a "disconnect" signal.
This signal could be emitted by a #GtkData subclass to notify any 'Views'
that they should disconnect from the #GtkData (the 'Model'), possibly just
before the #GtkData is destroyed.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT GtkData ##### -->
<para>
The #GtkData-struct struct contains no public fields.
</para>
<!-- ##### SIGNAL GtkData::disconnect ##### -->
<para>
Emitted to notify any views on the #GtkData object to disconnect from it,
possibly because the #GtkData object is about to be destroyed.
</para>
@data: the object which received the signal.

View File

@@ -1,42 +0,0 @@
<!-- ##### SECTION Title ##### -->
Debugging
<!-- ##### SECTION Short_Description ##### -->
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### ENUM GtkDebugFlag ##### -->
<para>
</para>
@GTK_DEBUG_OBJECTS:
@GTK_DEBUG_MISC:
@GTK_DEBUG_SIGNALS:
@GTK_DEBUG_DND:
@GTK_DEBUG_PLUGSOCKET:
<!-- ##### VARIABLE gtk_debug_flags ##### -->
<para>
</para>
<!-- ##### MACRO GTK_NOTE ##### -->
<para>
</para>
@type:
@action:

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