Compare commits

...

3204 Commits

Author SHA1 Message Date
Matthias Clasen
edf592024b Correct sonames appearing in the docs 2011-02-10 15:02:33 -05:00
Matthias Clasen
10b7f70bb2 Mention library soname change 2011-02-10 15:00:20 -05:00
Matthias Clasen
524ce69bcb Bump the version to 3.0.0
At the same time, change the library sonames for -3.0 to just -3.
This is necessary since the 2.99 releases installed libraries like
libgtk-3.0.so.0.9903.0, and we want to prevent the library version
number from jumping back. So 3.0 will have libgtk-3.so.0.0.0.
2011-02-10 14:41:02 -05:00
Matthias Clasen
c7d41ac54f Minor formatting tweak 2011-02-10 14:37:31 -05:00
Matthias Clasen
9455ce96ca Remove a long-unsupported script that does nothing 2011-02-10 14:31:31 -05:00
Murray Cumming
b91549a38a Add "extern C" declarations around AppChooser headers.
This is necessary to allow linking from code compiled as C++.
2011-02-10 10:02:38 +01:00
Matthias Clasen
3f1c95de8d Don't try to modify readonly strings
This was an oversight in the recent accel label improvement.
When we get an untranslated string back from gettext(), it is
not ok to replace '_' by ' ' in-place. Instead, do it while
appending to the GString.
https://bugzilla.gnome.org/show_bug.cgi?id=641912
2011-02-09 17:32:05 -05:00
Matthias Clasen
981cadb578 Make online references point to the right place 2011-02-09 16:54:19 -05:00
Matthias Clasen
13d249ae19 Change the title of the GDK docs to mention '3'
This is necessary in preparation for having 2.x and 3 docs
listed next to each other on library.gnome.org.
2011-02-09 16:44:19 -05:00
Carlos Garnacho
e1dbc871fe Change required glib version from "2.28" to "2.28.0"
Fixes the recent configure error:
  checking for GLIB - version >= 2.28... 2.28, bad version string

introduced by 95446c311
2011-02-09 20:08:35 +01:00
Carlos Garnacho
d1632f87d1 Avoid the need for cairo_push_group() in gtk_render_background()
This operation is potentially expensive, so the code has been
refurbished so avoid the cases it was needed for. Antialiased
cairo_clip() has been also reduced to transitions with surface
patterns involved.
2011-02-09 20:05:32 +01:00
Tristan Van Berkom
f2ff2138db Added padding to GtkTextLineDisplay struct for an addition of GdkRGBA pointer comming soon. 2011-02-10 04:04:31 +09:00
Javier Jardón
95446c311d configure.ac: Depend on stable versions of other libraries 2011-02-09 15:55:06 +00:00
Matthias Clasen
f0fabcd9e4 Quell another warning 2011-02-09 09:25:31 -05:00
Matthias Clasen
69745041f8 Add some more info for desktop app info
Small gotchas that can easily be avoided.
2011-02-09 09:01:16 -05:00
Matthias Clasen
8291530abf More GDK documentation tweaks 2011-02-09 02:44:19 -05:00
Garrett Regier
adef25626e Fix annotation that broke the docs
It was added in 0e795b67c3
and removed in f6cc08fa57.
2011-02-08 23:06:42 -08:00
Matthias Clasen
1f4bb70bac Give the GDK docs some love
Reorganize some sections, drop the largely redundant multihead
section, add some more information about multiple backends.
2011-02-09 01:32:24 -05:00
Matthias Clasen
7e7eaf315b Documentation tweaks 2011-02-09 00:21:37 -05:00
Matthias Clasen
5ada6ac197 Remove no-longer exported symbols from the symbol list 2011-02-08 23:21:40 -05:00
Matthias Clasen
49433673fc Don't export GtkModifierStyle symbols
This is not public API, so don't export it.
2011-02-08 23:21:39 -05:00
Matthias Clasen
861ba00166 Don't export gtk_cell_area_box_init_groups
That function can't be meant to be public, since it take
a GtkCellAreaBoxContext argument, which is not a public type.
2011-02-08 23:21:39 -05:00
Matthias Clasen
394ae46ec0 Add some missing symbols to the docs 2011-02-08 23:21:39 -05:00
Javier Jardón
32398f11fa README.in: Fix link to the migration guide 2011-02-09 01:10:38 +00:00
Matthias Clasen
f6cc08fa57 Remove annotation that breaks the docs
Before adding annotations, please check that gtk-doc can handle
them. Else they will be stripped out again.
2011-02-08 20:00:27 -05:00
Matthias Clasen
57d5328685 Add links to the migration guide 2011-02-08 19:07:46 -05:00
Matthias Clasen
83478ae3a3 Define the required introspection version in configure.ac 2011-02-08 18:40:08 -05:00
Matthias Clasen
e56de510c0 Update NEWS 2011-02-08 18:32:45 -05:00
Daniel Mustieles
a189d1e4a0 Updated Spanish translation 2011-02-08 21:01:05 +01:00
Matthias Clasen
d2bdd50a0b Extend the mixed-dependency check to modules as well
This helps prevent accidents with GTK_PATH.
2011-02-08 13:49:16 -05:00
Matthias Clasen
99b5af11e4 Add warnings about environment variables
These variables all get read by GTK 2.x as well, which makes
them dangerous at best.
2011-02-08 13:11:18 -05:00
Johan Dahlin
6a40c0f865 introspection: Remove redundant include
Gdk-3.0 is already included above via --include-uninstalled, so
don't also specify it in INCLUDES.  Doing so breaks if it isn't
installed already, since we try to find the gdk-3.0.pc.
2011-02-08 13:30:24 -02:00
Johan Dahlin
358a2b8675 Rename time to time_ to avoid a scanner warning 2011-02-08 13:29:57 -02:00
Johan Dahlin
60e0acfc11 Remove tab as it confused g-ir-scanner 2011-02-08 13:20:53 -02:00
Colin Walters
7711f9fad4 introspection: Remove redundant include
Gdk-3.0 is already included above via --include-uninstalled, so
don't also specify it in INCLUDES.  Doing so breaks if it isn't
installed already, since we try to find the gdk-3.0.pc.
2011-02-08 10:16:55 -05:00
Benjamin Otte
1483145806 API: image: Move private struct definitions into private header
They weren't privatized because the dnd code used them, too. But a
private header can allow the dnd code to be nasty, so go dnd code!
2011-02-08 08:58:49 +01:00
Benjamin Otte
c1f8330a28 gdk: Fix typo in documentation string 2011-02-08 08:58:49 +01:00
Carlos Garnacho
15fdf90265 doc: Add a note about prioritization of GtkStyleProviders
It was unclear in the docs what happened if
gtk_style_context_add_provider() and
gtk_style_context_add_provider_for_screen()
were used with the same priority.
2011-02-08 04:17:56 +01:00
Matthias Clasen
3a50b460c6 Update the context direction when emitting ::direction-changed
This makes the flipping example in testgtk work as expected again.
https://bugzilla.gnome.org/show_bug.cgi?id=632775
2011-02-07 20:37:09 -05:00
Matthias Clasen
208974636f Set the correct initial value for the direction property 2011-02-07 20:36:46 -05:00
Carlos Garnacho
2be692687f Fix color style properties lookup when the color resolution fails
The cached GValue ended up with a GtkSymbolicColor type, so
the contained value was bogus. Noticed by Mitch.
2011-02-07 19:56:17 +01:00
Matthias Clasen
23f9bdd586 Fix problems with state propagation
Sensitivity changes were not properly propagated down the
hierarchy. There were two issues here:

a) correctly identifying when a state change request affects
   sensitivity
b) not filtering out sensitivity in gtk_widget_propagate_state(),
  since gtk_widget_set_sensitivity() uses that to do its work

https://bugzilla.gnome.org/show_bug.cgi?id=641431
2011-02-07 11:27:50 -05:00
Tristan Van Berkom
1c20c93423 Optimize queue_resize_on_widget()
Optimized GtkSizeGroup code that is invoked for every queued resize
and every request that is not previously cached by trading qdata on
widgets for 3 extra bitfields on the GtkWidgetPrivate structure.
2011-02-08 00:39:51 +09:00
Javier Jardón
db97f8660a Use faster new G_VALUE_COLLECT_INIT variant instead G_VALUE_COLLECT
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=641621
2011-02-07 13:14:47 +00:00
Matthias Clasen
beb8c290d1 Always chain up in ::style-updated
This was not handled consistently, but the default handler
does useful things, so we should always chain up.
2011-02-07 07:30:37 -05:00
Javier Jardón
14eb34874a configure.ac: Remove some more obsolete macros
AC_TYPE_SIGNAL: obsolete when assuming C89 or better
AC_HEADER_SYS_WAIT: current systems are compatible with POSIX
2011-02-06 22:52:55 +00:00
Javier Jardón
8a965b9786 configure.ac: Use AC_COMPILE_IFELSE instead deprecated AC_TRY_COMPILE 2011-02-06 20:36:37 +00:00
Javier Jardón
c734bb8e83 configure.ac: Use AS_HELP_STRING instead deprecated AC_HELP_STRING 2011-02-06 20:36:37 +00:00
Javier Jardón
899019d56a configure.ac: Remove some obsolescent macros
AC_C_CONST: current C compilers support const
AC_TYPE_SYGNAL: obsolete when assuming C89 or better
AC_HEADER_STDC: current systems have conforming header files
2011-02-06 20:36:37 +00:00
Matthias Clasen
9bd175536b Add a testcase for state propagation problems 2011-02-06 14:14:48 -05:00
Kjartan Maraas
24c37e966c Updated Norwegian bokmål translation. 2011-02-06 19:14:53 +01:00
Hans Breuer
733731e80b No more gtk_plug_*/gtk_socket_* symbols on win32 2011-02-06 15:07:14 +01:00
Hans Breuer
b41ee31a16 win32: no more GdkNativeWindow and related changes
- replace GdkNativeWindow with HWND, remove type casts
 - no more GdkDisplayClass::get_drag_protocol but GdkWindowImpl::get_drag_protocol
 - remove *_client_message*()
2011-02-06 15:07:13 +01:00
Hans Breuer
f55ccce2d9 win32: msvc build update 2011-02-06 15:07:12 +01:00
Michael Natterer
e39e8acd67 gtk: gtk_cell_renderer_get_state(): check the widget's effective sensitivity 2011-02-06 14:47:58 +01:00
Michael Natterer
1c0f85a813 gtk: gtk_cell_renderer_get_state(): a row can be both selected and insensitive
so pull the SELECTED state flag out of the !sensitive branch. Also,
don't make FOCUSED depend on SELECTED here, it's up to the widget to
decide whether or not that is possible.
2011-02-06 14:45:49 +01:00
Piotr Drąg
1aaed01d4f Updated Polish translation 2011-02-06 14:11:57 +01:00
Michael Natterer
330158977d gtk: make the .trough background-color darker() as it was in GTK+ 2.x 2011-02-06 13:48:42 +01:00
Carlos Garnacho
42778894c0 s/state_changed/state_flags_changed/ in GtkComboBox 2011-02-06 11:21:42 +01:00
Carlos Garnacho
baa6343233 Handle insensitive cell renderer flags in gtk_cell_renderer_get_state() 2011-02-06 11:21:42 +01:00
Carlos Garnacho
217d3fd796 GtkStyleContext is meant to have a GdkScreen
It is used to get the default providers, without them
the style context can't do much. A check for NULL screen
is done before any sensitive call to
gtk_style_context_set_screen(), in the hope that any widget
will open the display before doing anything related to
styling. Fixes bug #641429, reported by Bastien Nocera.
2011-02-06 11:21:42 +01:00
Michael Natterer
f23585b7bb gtk: bail out in render_background_internal() if the extents are <= 0
otherwise we run into scaling the cairo_t into a borken state that's
not fixable by cairo_restore().
2011-02-06 11:17:59 +01:00
Michael Natterer
858ba35873 gtk: remove function gtk_entry_queue_draw() and call gtk_widget_queue_draw()
the old function was a leftover from when GtkEntry had a window
and was now invalidating the entire toplevel on each entry change.
2011-02-06 11:17:58 +01:00
Michael Natterer
c1bc521e92 gtk: get rid of two cases of invalidating the spinbutton when not needed 2011-02-06 11:17:58 +01:00
Fran Diéguez
69e4a3f235 Updated Galician translations 2011-02-06 00:26:36 +01:00
Matthias Clasen
bfaf472e70 Avoid tons of warnings from stylecontext initialization without screen
This reverts part of commit 4dc9b29.
2011-02-05 11:21:21 -05:00
Matthias Clasen
2e093cdc20 Demonstrate the problem with a workaround 2011-02-05 10:58:50 -05:00
Carlos Garnacho
c0ba1c96d4 Ensure gtk_render_background()/frame() yield the same shape
On rounded boxes the background and the frame wouldn't fit in
perfectly, leaving some visual noise in the corners. This is now
gone.
2011-02-05 15:26:40 +01:00
Carlos Garnacho
4c40349b92 Use cairo_push_group() to mix backgrounds during transitions
It also helps remove the cairo_clip() call to achieve the rounded
shape.
2011-02-05 15:26:40 +01:00
Michael Natterer
c990699922 gtk: don't style GtkLabel:selected's color separately
or labels in selected state will not have a different color. Reviewed
by Carlos.
2011-02-05 14:10:18 +01:00
Matthias Clasen
ceeb50be9a Don't leak a cell area context 2011-02-05 02:03:35 -05:00
Matthias Clasen
ab66ac50cf Migration guide additions
Some information about plugs and sockets, and event filters.
2011-02-05 01:56:19 -05:00
Matthias Clasen
19092fe44f Add a testcase for cell positions 2011-02-05 01:24:21 -05:00
Bastien Nocera
8f870ddcdc gtk-demo: Use symbolic icon that exists
For the Images test.
2011-02-05 03:20:27 +00:00
Matthias Clasen
5f04bf6429 Simple test for display-less widget creation 2011-02-04 22:06:25 -05:00
Matthias Clasen
4dc9b294d8 Don't assume a screen exists before realize()
Fix for https://bugzilla.gnome.org/show_bug.cgi?id=641429
2011-02-04 22:03:11 -05:00
Matthias Clasen
2b2e607492 Improve GtkApplication migration guide
As pointed out in bug 641517, the examples did not actually
do the same.
2011-02-04 21:21:14 -05:00
Matthias Clasen
3c1ff82b21 Fix a memory leak in GtkCSSProvider
Found by Felix Riemann
https://bugzilla.gnome.org/show_bug.cgi?id=641558
2011-02-04 21:13:56 -05:00
Matthias Clasen
eaba2cd468 XI2: translate group state back into core state
This is necessary to make the key event translation work
as expected.

https://bugzilla.gnome.org/show_bug.cgi?id=641367
2011-02-04 21:11:40 -05:00
Matthias Clasen
d4c1dbe3d7 Pass group state to _gdk_x11_device_xi2_translate_state
This will be necessary to make groups work with XI2.
2011-02-04 21:11:40 -05:00
Matthias Clasen
2c352f51a0 Share code to fill GdkEventKey.string
This code was duplicated between the core and XI2 device manager
implementations.
2011-02-04 21:11:40 -05:00
Khaled Hosny
4960a81082 Updated Arabic translation 2011-02-05 00:32:07 +02:00
Matthias Clasen
3cb758a7b9 Add an empty English translation for properties
Otherwise the build is unhappy about en in LINGUAS
2011-02-04 17:18:24 -05:00
Matthias Clasen
9a7708952c Add an English translation
Currently, this just includes translations for keysyms.
2011-02-04 15:35:44 -05:00
Matthias Clasen
b6783933c9 Strip XF86 prefix from untranslated keysyms
When we don't have translations, at least remove the
ugly XF86 prefix.
2011-02-04 15:34:36 -05:00
Matthias Clasen
08f90b71a2 Add translation entries for more common keysyms
In particular, the XF86 keysyms can benefit from a translation
that strips the prefix.
2011-02-04 15:33:36 -05:00
Matthias Clasen
9ba009a8eb Remove debug spew 2011-02-04 14:05:22 -05:00
Matthias Clasen
272aa7bc55 XI2: don't translate button releases as scroll events
This fixes scroll-by-2 sympoms seen in combo boxes.
https://bugzilla.gnome.org/show_bug.cgi?id=639846
2011-02-04 12:54:44 -05:00
Javier Jardón
03df034684 Remove latest bits of GtkItemFactory 2011-02-04 17:30:11 +00:00
Tristan Van Berkom
012bc98936 Fixed gtk_recent_chooser_menu_set_current_filter to update the local pointer.
Before this patch, unsetting the filter manually before disposing
the recent chooser menu (or unsetting the filter twice), would cause
warnings (or invalid memory accesses).
2011-02-05 01:00:55 +09:00
Yaron Shahrabani
86b5252a93 Updated Hebrew translation. 2011-02-04 09:10:23 +02:00
Matthias Clasen
99691ab7aa Protect against tree_view being NULL
This apparently happens when setting the "visible" property
from ui files.
https://bugzilla.gnome.org/show_bug.cgi?id=640801
2011-02-03 14:40:53 -05:00
Tristan Van Berkom
b51f3ffffc Added set_transient_for() implementation for GdkOffscreenWindow
Just a noop that is better than crashing in the case this is called
(it can be called for a toplevel GtkWindow that is parented into
another widget by setting gtk_widget_set_parent_window to an offscreen
window).
2011-02-03 23:52:12 +09:00
Laszlo Pandy
395b13bbce [GI] Add method annotation for gtk_grab_add and gtk_grab_remove. 2011-02-03 15:20:51 +01:00
Laszlo Pandy
295c2fe8d1 [GI] Add method annotations to remaining gtk_drag_* functions.
https://bugzilla.gnome.org/show_bug.cgi?id=639945
2011-02-03 15:10:43 +01:00
Tristan Van Berkom
d799d6d4f0 Fixing GtkColorButton to redraw itself when gtk_color_button_set_rgba() is called. 2011-02-03 23:02:15 +09:00
Tristan Van Berkom
b01fc35c18 Added default implementations of various GtkCellArea vfuncs.
Having default implementations on abstract classes that do nothing
or print errors make life easier for language bindings implementors,
inside GTK+ this makes little or no difference.
2011-02-03 19:03:49 +09:00
Tristan Van Berkom
ce000db7f6 Added default implementation of GtkCellRendererClass.get_request_mode()
Having default implementations on abstract classes that do nothing
or print errors make life easier for language bindings implementors,
inside GTK+ this makes little or no difference.
2011-02-03 19:01:55 +09:00
Matthias Clasen
7894ff4bcb Don't g_object_unref cairo surfaces
This was causing warnings when dragging text from labels.
2011-02-02 22:05:26 -05:00
Piotr Drąg
a7a606e61a Updated Polish translation 2011-02-02 18:06:02 +01:00
Piotr Drąg
0c2e2b17e4 Updated Polish translation 2011-02-02 18:06:02 +01:00
Martin Pitt
1bd36ce723 [GI] Annotate gtk_drag_{dest,source}* as methods
As these do not start with gtk_widget_*, the GI scanner does not recognize them
as methods. With the recently added (method) annotation [1] it is now possible
to mark them as proper methods of GtkWidget.

https://bugzilla.gnome.org/show_bug.cgi?id=639945

[1] http://git.gnome.org/browse/gobject-introspection/commit/?id=09bca85dd4
2011-02-02 17:51:48 +01:00
Changwoo Ryu
a1d5901e80 Updated Korean translation 2011-02-03 00:29:38 +09:00
Martin Pitt
0e795b67c3 [GI] Mark mis-detected constructors as such
constructors which take an object of the same class as its first argument are
mis-detected as method call with "self" argument by the GIR scanner. Using the
new (constructor) annotation from bug 561264, mark some of them as proper
constuctors, so that you can call them with NULL as first argument from
bindings; in particular, this fixes gdk_window_new() and the
gtk_radio_button_new_with*() constructors.
2011-02-02 15:11:06 +01:00
Matthias Clasen
3067ef4a9b Fix the build with --enable-gtk2-dependency 2011-02-02 01:30:21 -05:00
Tristan Van Berkom
2e34842b1a Fixed GtkCellLayout buildable implementation to set cell properties explicitly set to "" (i.e. explicitly set to nothing). 2011-02-02 15:22:31 +09:00
Tristan Van Berkom
fb3e221559 Fixed GtkContainer buildable implementation to set packing properties explicitly set to "" (i.e. explicitly set to nothing). 2011-02-02 15:22:31 +09:00
Matthias Clasen
8a2a148649 Don't build pixbuf engine, still
This was accidentally re-enabled together with the wimp.
2011-02-02 01:00:51 -05:00
Matthias Clasen
54c97f3ba2 Fix another GtkFixed regression, in gtk_fixed_forall()
b3f6f67c changed the loop from while() to for() in gtk_fixed_forall(),
but that's wrong since the callback can have side-effects on the list,
in case the current child gets removed. And that's the case when the
widget is destroyed.

Patch by Vincent Untz
https://bugzilla.gnome.org/show_bug.cgi?id=641196
2011-02-02 00:40:02 -05:00
Matthias Clasen
0ade265a69 Bump version 2011-02-02 00:36:41 -05:00
John Ralls
cfaed624be Update quartz to reflect deletion of GdkNativeWindow and client_message functions. 2011-02-01 13:53:00 -08:00
Matthias Clasen
24de7cd86f Add another bug ref 2011-02-01 14:11:20 -05:00
Vincent Untz
62d7593fc2 Fix crash in gtk_fixed_remove()
b3f6f67c changed the loop from while() to for(), but the line to move to
the next child was kept, so we could go past the end of the list.

https://bugzilla.gnome.org/show_bug.cgi?id=641176
2011-02-01 20:08:52 +01:00
Matthias Clasen
1b25489cba Remove accidentally exported symbol 2011-02-01 13:54:27 -05:00
Matthias Clasen
b0d48f66a1 Updates for 2.99.3 2011-02-01 13:39:41 -05:00
Benjamin Otte
5f594b613e API: gdk: Get rid of GdkNativeWindow
Also get rid of the GDK_NATIVE_WINDOW_POINTER define.
2011-02-01 18:51:57 +01:00
Benjamin Otte
7b5ad65e71 x11: Use Window isntead of GdkNativeWindow 2011-02-01 18:51:57 +01:00
Benjamin Otte
44c02fcbb1 API: gdk: Change get_drag_window() API
The previous function gdk_drag_get_protocol_for_display() took native
window handles, so it had to be changed. Because it didn't do what it
was named to do (it didn't return a protocol even though it was named
get_protocol) and because it doesn't operate on the display anymore but
on the actual window, it's now called gdk_window_get_drag_protocol().
2011-02-01 18:51:57 +01:00
Benjamin Otte
9210347600 API: gdk: Make GDK_DRAG_PROTOCOL_NONE equal to 0
THis way, we can do comparisons like "if (protocol)"
2011-02-01 18:51:57 +01:00
Benjamin Otte
5bc04bc07b API: gdk: Make GdkEventSelection.requestor a GdkWindow
instead of a GdkNativeWindow. Also change gdk_selection_notify() API to
take a GdkWindow to match this change.
2011-02-01 18:51:57 +01:00
Benjamin Otte
c2a5d715d5 x11: Use gdk_x11_window_foreign_new_for_display() unconditionally
gdk_x11_window_lookup_window() calls are done by this function alreayd,
so no need to do them manually.
2011-02-01 18:51:57 +01:00
Matthias Clasen
5441ecd350 Fix a warning 2011-02-01 09:48:32 -05:00
Matthias Clasen
38045e789c Remove a dead member
The client_pointer field in GdkX11DeviceManagerXI2 is not used anywhere.
2011-02-01 09:44:33 -05:00
Matthias Clasen
c79413a1df Make xim work with XI2
We cannot totally ignore core key events, since XFilterEvent generates
those at times and relies on them having an effect.
https://bugzilla.gnome.org/show_bug.cgi?id=640965
2011-02-01 09:42:53 -05:00
Matthias Clasen
8448780a6c Make treeview expanders work reliably
It turns out that the gtk_grab_remove() can trigger a do_prelight()
call, which may end up changing prelight_node, and then the state
gets messed up. Moving the grab removal until after we're done with
button_pressed_node and prlight_node makes expanders work reliably.

One thing that is still not right is that the expander doesn't get
prelight again after the animation is done, if you manage to release
without any additional motion events.

https://bugzilla.gnome.org/show_bug.cgi?id=641039
2011-02-01 01:32:02 -05:00
Benjamin Otte
c332ac207a gdk: Remove GdkEventClient
... and all APIs making use of it.

That code like it hasn't been touched in years, Google codesearch
didn't find any users and most importantly it's a horrendous API, so
let's just make it die instead of having to port it over to
non-GdkNativeWindow usage, which would be required for multi-backend
GDK.

http://mail.gnome.org/archives/gtk-devel-list/2011-January/msg00049.html
2011-02-01 06:33:02 +01:00
Benjamin Otte
040b21e7d7 tests: Remove refreh button from testtoolbar test
It didn't work and did that by using APIs that are about to go away.
2011-02-01 06:33:02 +01:00
Benjamin Otte
cf94070586 testgtk: Remove ability to reload all rc files
That ability didn't work for a while anyway, so removing client messages
doesn't hurt.
2011-02-01 06:33:02 +01:00
Benjamin Otte
9e401bef68 tests: Remove clientmessage test
Client messages will not be handled by GDK3 anymore, so no need to test
them.
2011-02-01 06:33:02 +01:00
Benjamin Otte
8ecd420ede x11: Do dnd event handling via gdk_window_add_filter() 2011-02-01 06:33:02 +01:00
Benjamin Otte
180cd853fc x11: Use macros for byte order to set byte order
No need to run sophisticated functions to guess it.
2011-02-01 06:33:02 +01:00
Benjamin Otte
609ddee632 x11: Register wm_protocols function with gdk_window_add_filter()
The client message code is about to go away, so we need to use a
different way to get at ClientMessage output.
2011-02-01 06:33:01 +01:00
Benjamin Otte
e67347a3c8 x11: Fill in event->any.window before calling filter functions
a) We advertise it for GdkFilterFunc
b) It's necessary to differentiate between different event types with
   multi-backend GTK.
2011-02-01 06:33:01 +01:00
Benjamin Otte
d217f4d09e x11: Handle motif client message filter just like xdnd filters 2011-02-01 06:33:01 +01:00
Benjamin Otte
14cb485d22 x11: Use event->any.window instead of any random member 2011-02-01 06:33:01 +01:00
Benjamin Otte
fac914d70c API: gtk: Remove client_event vfunc from GtkWidget
Also remove the (de-facto unused) implementation from GtkWindow that was
only used for sockets/plugs.
2011-02-01 06:33:01 +01:00
Matthias Clasen
b52db73f59 Deal gracefully with unowned selections
If a selection looses its owner without a replacement, owner is
None, which we did not handle very well.

https://bugzilla.gnome.org/show_bug.cgi?id=641042
2011-01-31 19:35:51 -05:00
Dan Winship
fc43e42bf2 Fix several bugs handling GtkTrayIcon symbolic colors
https://bugzilla.gnome.org/show_bug.cgi?id=641059
2011-01-31 19:13:29 -05:00
Matthias Clasen
6d218084c3 Clarify models vs callbacks in entry completion docs
See https://bugzilla.gnome.org/show_bug.cgi?id=641073
2011-01-31 19:01:16 -05:00
Kristian Rietveld
9dcdca2501 Don't use GTK_IS_PLUG for non-X11 backends 2011-02-01 00:26:04 +01:00
Kristian Rietveld
73afbc954a Check whether mask is NULL 2011-01-31 23:54:38 +01:00
Kristian Rietveld
119d29dcb9 Only include gtktrayicon.h when building for X11
GtkTrayIcon depends on GtkPlug which is X11-specific.  This fixes the
build for Quartz.
2011-01-31 23:54:38 +01:00
Matthias Clasen
726b0d8736 Bandaid fix for icon view subclassing
I've decided that it is isn't feasible to make cell areas runtime-settable
in the time we have left before 3.0, therefore, I'm going with the
approach to allow init() functions to instantiate the default cell area
and issue a warning if a construct property is ignored.

This is not ideal, but it keeps existing icon view and combo box
subclasses working.

https://bugzilla.gnome.org/show_bug.cgi?id=639139
2011-01-31 17:39:42 -05:00
Stefan Kost
1f3a5a8d92 Clarify key-{press,release}-event docs.
Mention key-repeat in key-press and fix a copy'n'paste in key-release docs.
2011-01-31 23:10:10 +02:00
Tristan Van Berkom
a37976dae0 Fixed GtkToolPalette ->forall implementation to be gtk_widget_destroy friendly
The forall() loop was buggy as it was skipping items in the list when
the current item gets removed from the groups array as a result of
calling the callback (causing memory leaks).
2011-02-01 05:02:56 +09:00
Tristan Van Berkom
ddb4b3ebe2 Added "shift" modifier versions of keybings for GtkFileChooser "folder-up"/"folder-down" bindings.
Also updated documentation, closes bug 322926
2011-02-01 05:02:56 +09:00
Daniel Mustieles
c01c018fde Updated Spanish translation 2011-01-31 19:33:55 +01:00
Matthias Clasen
30958ea8ad Fix a segfault in gtk_statusbar_remove_all
https://bugzilla.gnome.org/show_bug.cgi?id=640487
2011-01-31 11:50:23 -05:00
Emmanuele Bassi
d51c617e13 css-provider: Fix up the Switch style
As it was with the old style, when the Switch is in the "on" state the
trough should be using the selected background color.
2011-01-31 16:21:36 +00:00
Matthias Clasen
cb498c2101 Speed up expander animation
Go back to 200ms, which is what we had in GTK+ 2.x.
Themes can change this, of course.
2011-01-31 10:51:09 -05:00
Matthias Clasen
38f6065b2b Make GtkEntryCompletion::match-selected arguments consistent
For keynav, we were still passing it the filter model.
https://bugzilla.gnome.org/show_bug.cgi?id=640698
2011-01-31 10:48:40 -05:00
Matthias Clasen
fb860a9527 Add a note to ::fill and ::expand docs 2011-01-31 10:26:28 -05:00
Matthias Clasen
a26ffdc740 Prevent a segfault in GtkPlug
The grabbed_keys might be NULL, so deal with that.
https://bugzilla.gnome.org/show_bug.cgi?id=641023
2011-01-31 10:17:21 -05:00
Matthias Clasen
0208539c4b Remove RC file references from docs where appropriate 2011-01-31 09:34:46 -05:00
Matthias Clasen
677c8c2189 Remove references to RC files in the env var docs 2011-01-31 09:29:40 -05:00
Matthias Clasen
6a8d494ba1 Fix GTK_SPINNER_CLASS macro
https://bugzilla.gnome.org/show_bug.cgi?id=640999
2011-01-31 07:39:06 -05:00
Matthias Clasen
09a52de478 Add a missing id to the docs 2011-01-31 07:39:06 -05:00
Baurzhan Muftakhidinov
430f53bb52 Updated Kazakh translation 2011-01-31 16:22:38 +06:00
Benjamin Otte
9864445b1f API: gdk: Change GdkEventOwnerChange to not take GdkNativeWindow
Use GdkWindow instead. This requires calling
gdk_x11_window_foreign_new_for_display(), so might cause a slight
performance penalty, but is required to be portable.
2011-01-31 07:17:31 +01:00
Matthias Clasen
cfa6505504 Mention key themes in the migration guide 2011-01-30 23:53:19 -05:00
Matthias Clasen
175c57ebd7 Small optimization
We can use the fact that all involved strings are interned; also
deprecate gtk_binding_set_add_path() in the headers, too.
2011-01-30 23:35:25 -05:00
Matthias Clasen
f67ab808fd doc fixes 2011-01-30 23:35:25 -05:00
Matthias Clasen
b448bb81ce Move GtkBindings docs inline 2011-01-30 23:00:12 -05:00
Matthias Clasen
dcf3430e17 Add a gtkbindingsprivate.h header 2011-01-30 21:50:54 -05:00
Matthias Clasen
8bb0d552f1 Improve binding-set parser
Make gtk_binding_entry_add_signal_from_string() return the expected
token in case of parsing error, so that we can return a GError
instead of spewing. Also, add a separate scope for binding-set,
since allowing {} in identifiers in SCOPE_VALUE breaks the fact
that the ; after the last assignment in a rule is optional.
2011-01-30 21:27:56 -05:00
Matthias Clasen
a04e721473 Add binding-set tests 2011-01-30 21:27:55 -05:00
Matthias Clasen
2ea010bca0 Convert remaining rc files to css 2011-01-30 21:27:55 -05:00
Matthias Clasen
f16dbe0db3 Convert the mac key theme to css 2011-01-30 21:27:55 -05:00
Matthias Clasen
c770f441ca Convert the Emacs key theme to css 2011-01-30 21:27:55 -05:00
Matthias Clasen
bf9e59e392 Make documentation match behaviour 2011-01-30 21:27:55 -05:00
Carlos Garnacho
c0b8053089 Move key/theme CSS providers to GtkSettingsPrivate 2011-01-30 21:27:55 -05:00
Carlos Garnacho
a03e33b10b Parse the gtk-keys.css file in the GtkSettings::gtk-key-theme-name theme path 2011-01-30 21:25:42 -05:00
Carlos Garnacho
081d5b14da Add some bindings to testgtk.css for testing 2011-01-30 21:24:52 -05:00
Carlos Garnacho
c70b65f0eb Document @binding-set and the gtk-key-bindings css parser property 2011-01-30 21:24:52 -05:00
Carlos Garnacho
b5bee0a827 Remove unneeded code from GtkBindingSet 2011-01-30 21:24:52 -05:00
Carlos Garnacho
9a3466832c Hook up key bindings in CSS with key propagation.
This is done in the same place than it was done before the switch
to GtkStyleContext, the GtkBindingEntry has been slightly simplified
since it's now the GtkStyleContext which hands us the list
of binding sets applying to a widget, so no need to use the older
matching mechanisms.
2011-01-30 21:24:52 -05:00
Carlos Garnacho
d39f0411be Add the gtk-key-bindings CSS parser property.
This property takes a list of binding set names to have these
stored as a GPtrArray containing GtkBindingSets. this property
is handled so merging GtkStyleProperties will merge both
GtkBindingSet lists.
2011-01-30 21:24:51 -05:00
Carlos Garnacho
dbff92fd9f Add @binding-set rules to the CSS parser
these custom rules can be used to define key themes
as in the RC files, a series of bind/unbind rules
may be added then:

@binding foo-bar {
  bind "<alt>1" { "move-cursor" (visual-positions, 1, 0) };
  unbind "<ctl>d"
}
2011-01-30 21:24:51 -05:00
Carlos Garnacho
53ca6eb0b5 Add gtk_binding_entry_add_signal_from_string()
This function rescues part of the old parser (which
is now standalone) to load a bind/unbind definition
string into a GtkBindingSet.
2011-01-30 21:24:51 -05:00
Bastien Nocera
b98caf9385 GtkCssProvider: Take into account variant
When loading a theme, make sure we take into account the variant
so we don't use the plain version when the theme changes.

Also make sure to fallback to the plain theme when loading a variant
fails.

https://bugzilla.gnome.org/show_bug.cgi?id=640983
2011-01-30 21:22:12 -05:00
Bastien Nocera
7f3aa92086 GtkSettings: Fix theme not updating for dark theme
The theme was not updated when the "gtk-application-prefer-dark-theme"
GtkSettings property changed.

https://bugzilla.gnome.org/show_bug.cgi?id=640983
2011-01-30 20:48:29 -05:00
Jakob Kramer
c4cafd67c3 [l10n] Updated German translation 2011-01-30 20:49:34 +01:00
David Planella
23ac7efe03 Updated Catalan translation 2011-01-30 11:27:40 +01:00
Matthias Clasen
ec37512f64 Add a gtkscaleprivate.h header 2011-01-30 03:17:05 -05:00
Matthias Clasen
4a0aa41742 Add gtkorientableprivate.h header 2011-01-30 03:12:49 -05:00
Matthias Clasen
d463bbfdcd Some updates 2011-01-30 02:57:59 -05:00
Matthias Clasen
d4b218131d Drop 2.x release notes 2011-01-30 02:52:55 -05:00
Matthias Clasen
4b5b1ab43a Fix build
We must build gtk before gtk/tests
2011-01-30 02:49:31 -05:00
Matthias Clasen
b71134fc77 Drop unused theme-bits 2011-01-30 02:47:27 -05:00
Matthias Clasen
572441f94f Drop unused file circles.xml 2011-01-30 02:45:01 -05:00
Matthias Clasen
6c3ce36f63 Remove GTK+ 1 era xbm icons 2011-01-30 02:43:38 -05:00
Matthias Clasen
bcdfd15893 Remove some dead templates 2011-01-30 02:38:59 -05:00
Matthias Clasen
242c2a389d Whitespace fixes 2011-01-30 02:36:17 -05:00
Matthias Clasen
837c504a11 Move GtkPrintOperation docs inline 2011-01-30 02:34:59 -05:00
Matthias Clasen
701075b2c8 Nicer configure summary 2011-01-30 02:21:16 -05:00
Matthias Clasen
645650ae24 Silence unused variable warnings in the cups printbackend 2011-01-30 02:16:18 -05:00
Matthias Clasen
2ba878ca1b Silence unused variable warnings in gail 2011-01-30 02:14:08 -05:00
Matthias Clasen
cb6e036d67 More compiler warnings silenced 2011-01-30 01:59:12 -05:00
Matthias Clasen
2b631739c0 Fix another compiler warning about unused variables 2011-01-30 01:53:49 -05:00
Matthias Clasen
6dc142a50a Silence more compiler warnings 2011-01-30 01:52:55 -05:00
Matthias Clasen
5caa76c5df Fix compiler warnings about unused variables 2011-01-30 01:50:58 -05:00
Matthias Clasen
0c2e16f04b Include gtkx.h here
When building under X11, gtktypefuncs.c includes references to gdk
X11 backend functions, so we need to include the header.
2011-01-30 01:45:18 -05:00
Matthias Clasen
61f8dbc245 Silence compiler warnings 2011-01-30 01:40:51 -05:00
Matthias Clasen
b1be543ba5 Use free() to free XIButtonState.mask
XIQueryPointer() allocates it using malloc() (without any mention
in the documentation...).
2011-01-29 23:27:36 -05:00
Matthias Clasen
10b6afa1f5 Improve some deprecation notes 2011-01-29 23:09:51 -05:00
Matthias Clasen
cbc4e82314 Mention theme-specific settings in the migration guide 2011-01-29 22:59:32 -05:00
Matthias Clasen
02d952ca6d More documentation tweaks 2011-01-29 22:52:02 -05:00
Matthias Clasen
f6cd9c1553 Documentation tweaks 2011-01-29 22:47:33 -05:00
Matthias Clasen
bc58a60a0b Minor rewording in the tutorial 2011-01-29 22:44:29 -05:00
Matthias Clasen
d39f98fff4 Go back to using the image/* example 2011-01-29 22:42:14 -05:00
Paolo Borelli
350d0b54e3 Do not use old functions in the docs. 2011-01-29 21:32:56 +01:00
Matthias Clasen
f783a75d61 Add a gtkx.h header for X11-specific GTK+ api
This keeps us from pulling gdkx.h into gtk.h

https://bugzilla.gnome.org/show_bug.cgi?id=640902
2011-01-29 14:16:47 -05:00
Matthias Clasen
1641e71c9a Add a missing end tag 2011-01-29 13:40:19 -05:00
Luca Ferretti
66d4f07f29 Updated Italian translation 2011-01-29 15:55:20 +01:00
Carlos Garnacho
8a056d4774 Move "widget/window under device" accounting to be per-widget
This management is better done per-widget rather than per-screen,
as windows being destroyed won't trigger a leave notify for the
devices on top of it, and this information is too transitive
to keep weak refs and such.

This fixes the critical warning seen in gtk/tests/testing.
2011-01-29 14:45:05 +01:00
Paolo Borelli
55713025c0 Add padding to the themingengine class. 2011-01-29 14:34:29 +01:00
Paolo Borelli
001697a22a Move the get_cursor_color in GtkStyleContext
Move the private get_cursor_color method belongs to StyleContext. Change
the api so that retrieving both primary and secondary color is possible.
I left the method private for now, though it should probably be public
as all the other getters.
2011-01-29 13:13:42 +01:00
Paolo Borelli
9e20341775 Use GtkRGBA for the cursor color priv api. 2011-01-29 12:38:50 +01:00
Paolo Borelli
469f4592d4 Fix typo in calculating secondary cursor color 2011-01-29 12:24:37 +01:00
A S Alam
3f918a8b2d update Punjabi Translation by A S Alam 2011-01-29 07:56:20 +05:30
A S Alam
861dd0886c update Punjabi Translation by A S Alam 2011-01-29 07:33:39 +05:30
William Jon McCann
32f6070bc8 Don't call object notify for something that isn't a property 2011-01-28 17:00:59 -05:00
Krzesimir Nowak
d688343a31 Check if buffer is NULL after setting it to NULL, not before.
This catches cases when "notify::buffer" handler does not recreate
the buffer again, which could end in reference leak.

https://bugzilla.gnome.org/show_bug.cgi?id=634677
2011-01-28 20:49:47 +01:00
Daniel Mustieles
0e37b3e2b1 Updated Spanish translation 2011-01-28 20:04:18 +01:00
Matthias Clasen
d981b9ed61 Fix a doc typo 2011-01-28 11:10:07 -05:00
Matthias Clasen
6bbe86a763 Mention GtkEntryCompletion signal parameter change 2011-01-28 11:10:07 -05:00
Benjamin Otte
83927a61fc recentfilter: Fix gcc warnings
gtkrecentfilter.c:37:47: error: "/*" within comment
gtkrecentfilter.c:61:24: error: "/*" within comment
2011-01-28 17:06:07 +01:00
Benjamin Otte
ce33daaff6 gtk: gtkfilefilter.c:57:24: error: "/*" within comment 2011-01-28 17:06:07 +01:00
Benjamin Otte
ef1606604c x11: Use Window instead of GdkNativeWindow 2011-01-28 17:06:07 +01:00
Benjamin Otte
56c6c63cce plug: Move private functions to gtksocketprivate.h 2011-01-28 17:06:07 +01:00
Benjamin Otte
388f9fd181 tests: Use Window instead of GdkNativeWindow in testsocket example 2011-01-28 17:06:07 +01:00
Benjamin Otte
4aa67439f3 plug: Use Window instead of GdkNativeWindow 2011-01-28 17:06:07 +01:00
Benjamin Otte
ad1f9cc0c6 socket: Use Window instead of GdkNativeWindow 2011-01-28 17:06:07 +01:00
Benjamin Otte
1b18916a74 win32: Make GtkWin32EmbedWidget use HWND instead of GdkNativeWindow 2011-01-28 17:06:07 +01:00
Benjamin Otte
63aa56bcc4 window: Get rid of GdkNativeWindow usage
Make _gtk_window_add_embedded_xid() and
_gtk_window_remove_embedded_xid() take a Window.
2011-01-28 17:06:07 +01:00
Benjamin Otte
bd4ef49af9 API: x11: Add GDK_POINTER_TO_XID() and GDK_XID_TO_POINTER()
Previously people used GDK_GPOINTER_TO_NATIVE_WINDOW() for this, but
native windows are going away, so we need a replacement.
2011-01-28 17:06:07 +01:00
Benjamin Otte
e1f6a24da9 window: Make embedded xid specific to the X11 backend 2011-01-28 17:06:07 +01:00
Benjamin Otte
5a1755bc50 gtk: Prefix gtk_window_add_embedded_xid() with underscore
It's a private API after all.
Same thing for gtk_window_remove_embedded_xid().
2011-01-28 17:06:07 +01:00
Benjamin Otte
e339c6276d API: Don't export gtk_window_add_embedded_xid()
Same thing for gtk_window_remove_embedded_xid()
2011-01-28 17:06:07 +01:00
Benjamin Otte
b8895cf910 socket: Merge gtksocket-x11.c back into gtksocket.c 2011-01-28 17:06:07 +01:00
Benjamin Otte
1d80400478 plug: Merge gtkplug-x11.c back into gtkplug.c 2011-01-28 17:06:07 +01:00
Benjamin Otte
c7f0cffd8a plug/socket: Remove x11 checks and non-x11 code 2011-01-28 17:06:06 +01:00
Benjamin Otte
50e1589a19 plug/socket: Clarify docs about availablility of widgets 2011-01-28 17:06:06 +01:00
Benjamin Otte
89722d41c4 win32: Fix Makefile for plug/socket removal. 2011-01-28 17:06:06 +01:00
Benjamin Otte
8dc932bbe0 plug/socket: Remove plug/socket backend implementations for win32 and stub 2011-01-28 17:06:06 +01:00
Benjamin Otte
3860af516c plug/socket: Make GtkPlug and GtkSocket X11-specific
People agreed that it doesn't make sense to make an xembed
implementation like plug/socket does not make sense on anything but X11.
And as GdkNativeWindow is going away for multibackend portability
reasons, we'd either need API fixes in the plug-socket codee or
constrain the widgets to a single backend. We chose the latter.
2011-01-28 17:06:06 +01:00
Cosimo Cecchi
d254089308 mount-operation: don't show the dialog until the tree is populated
Otherwise it won't show up properly, and GTK+ will trigger a warning.
Don't know why this did not show up before.

https://bugzilla.gnome.org/show_bug.cgi?id=640744
2011-01-28 09:59:58 -05:00
Ignacio Casal Quinteiro
b7de18ab35 Remove gtk_paste_point_override mark if we don't insert any text.
This patch fixes bug #590459.
2011-01-28 13:26:00 +01:00
Murray Cumming
1cd82eff4b Move gtk_widget_reset_style() out of the deprecation ifdef.
This new function was not apparently meant to be inside the deprecation
guards.
2011-01-28 10:17:06 +01:00
Murray Cumming
3efc06a659 Tiny typo fix. 2011-01-28 10:10:23 +01:00
Tristan Van Berkom
5a5854f6f6 Add default class implementation of gtk_widget_get_request_mode().
Instead of checking if klass->get_request_mode is != NULL from
the gtk_widget_get_request_mode() api, this allows classes to
trust that there is a default implementation and chain up (specifically
added this for gtkmm wrapper objects).
2011-01-28 15:58:07 +09:00
Matthias Clasen
ea6e57412f Protect against giant title fonts
We don't want repeated calls to set_title_font to blow up the
font size ever more, so reset the font each time.

https://bugzilla.gnome.org/show_bug.cgi?id=640712
2011-01-27 23:23:43 -05:00
Matthias Clasen
ef7433e7f1 Make the places in the file chooser come up with a reasonable size 2011-01-27 21:50:00 -05:00
Matthias Clasen
b5c09b9e39 Fix the new filechooser buttons to work without symbolic icons 2011-01-27 21:04:32 -05:00
William Jon McCann
b64c6f2fd3 Use a toolbar with symbolic icons under scrolled lists 2011-01-27 20:24:57 -05:00
Daniel Mustieles
95ad67d927 Updated Spanish translation 2011-01-27 21:22:30 +01:00
Carlos Garnacho
ea7fd526f9 Remove GTK_RBNODE_IS_SEMI_[COLLAPSED|EXPANDED] flags.
These aren't used anymore.
2011-01-27 20:57:14 +01:00
Carlos Garnacho
3d57787d6e Set "cell" class and state before rendering a cellrenderer. 2011-01-27 20:57:13 +01:00
Carlos Garnacho
e3a77b9db8 Make GtkCellRendererAccel use GtkStyleContext 2011-01-27 20:57:13 +01:00
Carlos Garnacho
c59a05b0d4 Make GtkCellRendererPixbuf use GtkStyleContext 2011-01-27 20:57:13 +01:00
Carlos Garnacho
3285eff289 Make GtkCellRendererProgress use GtkStyleContext 2011-01-27 20:57:12 +01:00
Carlos Garnacho
9b091ae330 Make GtkCellRendererToggle use GtkStyleContext 2011-01-27 20:57:12 +01:00
Carlos Garnacho
7c2f35d7c1 Make GtkCellRendererText use GtkStyleContext 2011-01-27 20:57:12 +01:00
Carlos Garnacho
3efc1b0b4f Make GtkIconView use GtkStyleContext 2011-01-27 20:57:11 +01:00
Carlos Garnacho
08af1783c5 Make GtkTreeView use GtkStyleContext
Expander animation has been replaced by implicit animations
from the style context.

Column headers are also properly themed, GtkContainer::get_path_for_child()
is implemented and the treeview resets column buttons style on columns
being reordered.

The default CSS has changed to theme treeviews sensibly.
2011-01-27 20:57:11 +01:00
Carlos Garnacho
41d6837fa2 Make GtkCellArea use GtkStyleContext
gtk_cell_area_[gs]et_style_detail() is no longer needed, as
the passed widget's context would already have all necessary
info.
2011-01-27 19:32:07 +01:00
Carlos Garnacho
f96aae68f4 Add gtk_cell_renderer_get_state()
This is a helper function to help retrieve a GtkStateFlags
from a GtkCellRendererState, also given the cell renderer
and widget sensitivities.
2011-01-27 19:32:07 +01:00
Colin Walters
22527e802c Clarify documentation header about GTK+ 3 vs 2
I think it's confusing for a lot the developers out there who
may not even be aware of GTK+ 3 coming, if suddenly GTK+ 3 becomes
the "stable" version of "gtk" on library.gnome.org.  It may
not even be feasible for them to port to GTK+3 if it's not
shipped in the operating systems they're targeting (for example,
RHEL 6).

Since practically speaking, we expect people to consume GTK+ 2 for
several years at least, redirect these people to the right pages.

(I didn't attempt to explain the differences between the libraries
 here, but hopefully the major version difference is enough of a hint)

As a side effect, this makes the generated HTML look better; previously
it looked rather crappy, since the "for GTK &version;" was totally
offset and in a different group from the documentation title.
2011-01-27 11:32:55 -05:00
Tristan Van Berkom
031a092254 Added <mime-types> and <patterns> parsing support to GtkFileFilter. 2011-01-27 22:53:24 +09:00
Kjartan Maraas
9bd53091c0 Updated Norwegian bokmål translation. 2011-01-27 11:25:19 +01:00
Tristan Van Berkom
2944af00d0 Removed a useless redundant line of code in gtkcellview.c 2011-01-27 16:04:46 +09:00
Tristan Van Berkom
35e7e65bcb Added links to the GtkTextTagTable and GtkMenuToolButton GtkBuildable documentation from GtkBuilder documentation. 2011-01-27 16:04:46 +09:00
Matthias Clasen
008de2bafd Document new default handling 2011-01-27 00:32:07 -05:00
Matthias Clasen
064e48f846 Rename GTK_SETTINGS_SOURCE_RC_FILE to _THEME
This makes more sense, since we don't parse rc files anymore.
This is private api inside gtksettings.c, anyway.
2011-01-27 00:32:07 -05:00
Matthias Clasen
5501569354 Parse a per-theme settings.ini file
This lets themes override settings values again. We are using
the same priority that was used from the rc file parser, so things
are largely unchanged, relative to other settings sources.
2011-01-27 00:32:07 -05:00
Matthias Clasen
ea24fa62c8 Privately export css_provider_get_theme_dir 2011-01-27 00:32:07 -05:00
Matthias Clasen
368a5c8937 Break out into a separate function
Move key file parsing to gtk_settings_load_from_key_file(), in
preparation for loading per-theme files. Load key files from both
/etc and ~/.config, with the latter overriding the former. Support
parsing enum values.
2011-01-27 00:32:07 -05:00
Matthias Clasen
8f3a3fda0b First pass a parsing a keyfile for default settings 2011-01-27 00:32:07 -05:00
Fran Diéguez
0ba6c63e2d QA of Galician translations 2011-01-27 03:26:35 +01:00
Matthias Clasen
96af68529b Document that gtk_widget_queue_draw_area is in widget coordinates 2011-01-26 18:20:51 -05:00
Daniel Mustieles
3cdd865bb8 Updated Spanish translation 2011-01-26 20:48:29 +01:00
Khaled Hosny
64301167fe Updated Arabic translation 2011-01-26 17:55:45 +02:00
Tristan Van Berkom
93f825592e Added links to the GtkComboBox/GtkRecentFilter GtkBuildable documentation from GtkBuilder documentation. 2011-01-26 23:58:47 +09:00
Tristan Van Berkom
e7354bd3f3 Fixed GtkCellLayout to parse <cell-packing> property text accumulatively. 2011-01-26 23:55:01 +09:00
Tristan Van Berkom
5ebc6f4df2 Fixed GtkContainer to parse <packing> property text accumulatively. 2011-01-26 23:55:01 +09:00
Tristan Van Berkom
9487ce77c4 Changed GtkComboBoxText <items> builder parser to use g_string_append_len(). 2011-01-26 23:55:01 +09:00
Tristan Van Berkom
2081ade640 Changed GtkRecentFilter builder parsing to use g_string_append_len 2011-01-26 23:55:01 +09:00
Tristan Van Berkom
26b326b704 Fix GtkRecentFilter GtkBuildable parsing to handle incomming text accumulatively 2011-01-26 23:55:01 +09:00
Tristan Van Berkom
e8157126d8 Fix GtkComboBoxText GtkBuildable <items> parsing to handle incomming text accumulatively 2011-01-26 23:55:01 +09:00
Tristan Van Berkom
8397a79b7d Added a line to the documentation example of GtkRecentFilter 2011-01-26 23:55:01 +09:00
Tristan Van Berkom
a6a7b7e9cf Added GtkBuildable support for adding rules to GtkRecentFilter
Also added documentation section for this. Since the GtkRecentFilter
documentation was still living in sgml, as a side-effect I migrated these
docs to the gtkrecentfilter.[ch] sources.
2011-01-26 23:55:01 +09:00
Martin Pitt
d7b71be49b [GI] Fix gtk_tree_view_get_cursor() transfer annotation 2011-01-26 14:39:50 +01:00
Christian Dywan
205ee834ec State that _add_button functions return a "#GtkButton widget"
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=586635
2011-01-26 10:33:49 +01:00
Michael Natterer
3933f99ed7 gtk: add missing class padding
Sorry for this late ABI break, but the newly added style classes
definitely need padding, so I can just as well add missing padding
globally.
2011-01-25 22:29:00 +01:00
Carlos Garnacho
e521158973 Make gtk_widget_get_state() only handle GtkStateType values available in 2.x
GtkStateType was generally used as an index in GtkStyle color arrays, so
bigger values will cause invalid memory accesses in widgets that are still
doing that. this was seen in focused GtkIconViews for example
2011-01-25 13:36:13 +01:00
Chao-Hsiung Liao
42b6e47fca Updated Traditional Chinese translation (Hong Kong and Taiwan) 2011-01-25 19:23:35 +08:00
Matthias Clasen
7db4bee4b6 Clarify documentation about application vs window lifecycle
https://bugzilla.gnome.org/show_bug.cgi?id=639931
2011-01-24 22:20:35 -05:00
Matthias Clasen
9be8bbc9a0 Add gtk_app_chooser_button_get/set_heading 2011-01-24 19:25:08 -05:00
Carlos Garnacho
8fdd8dbc35 Do not modify associated device for non-master devices on dispose
Only master devices must modify the associated device to separate
a pointer/keyboard pair, slave devices must only call
_gdk_device_remove_slave().

Fixes bug 639767 - password not accepted in gnome-screensaver dialog,
reported by Frederic Crozat. On VT-switch, the X server removes its
grab on HW devices, the effect on clients is that slave devices
disappear, and these were mistakenly mangling the master device
hierarchy. so gdk_device_get_associated_device() on the client
pointer wouldn't return the paired keyboard anymore.

The final effect is that gtkplug-x11 wasn't setting a keyboard to
its generated events.
2011-01-24 19:55:41 +01:00
Carlos Garnacho
e3be6fc24f Unset border-width for treeview rows in default CSS
Fixes bug #640391 - Display lines between rows when window is focused.
Reported by Guillaume Desmottes.
2011-01-24 18:14:05 +01:00
Matthias Clasen
98346cc219 Avoid passing widgets around here
The style context is enough.
2011-01-24 07:46:15 -05:00
Matthias Clasen
b42b47e7d3 Port gtk_draw_insertion_cursor to GtkStyleContext 2011-01-24 00:24:12 -05:00
Matthias Clasen
6619aa58b1 Kill one more unused variable 2011-01-23 23:48:32 -05:00
Matthias Clasen
3413438d37 Don't leak CursorInfo structs 2011-01-23 23:20:57 -05:00
Matthias Clasen
d9fcc4c630 Silence new gcc warnings
gcc 4.6.0 has started to warn about set-but-unused variables.
So don't do that, then.
2011-01-23 21:51:38 -05:00
Carlos Garnacho
94c4a312c1 Add extra checks for GdkDevice functions that might fail on slave devices.
Documentation bits have been added as well.
2011-01-24 02:54:38 +01:00
Carlos Garnacho
5fd5872b37 Avoid toplevel tracking on slave device after ungrab
slave devices don't have coordinates themselves, as they depend
on a master, this only changes if they have a grab in effect,
so only keep toplevel tracking enabled in such situation. Fixes
Bug #640313 - BadDevice X error when ungrabbing a SLAVE device,
noticed by Jesse van den Kieboom.
2011-01-24 02:54:00 +01:00
Matthias Clasen
454c36523a Silence new gcc warnings
gcc 4.6.0 has started to warn about set-but-unused variables.
So don't do that, then.
2011-01-23 18:50:09 -05:00
Matthias Clasen
a12dad75a2 Split out private style context api into a private header 2011-01-23 18:29:28 -05:00
Carlos Garnacho
0cc2f93d5c Free button_state.mask after XIQueryPointer()
This function allocates the button mask, so free it after
use, or right before the next XIQueryPointer() call, as done
in gdk_x11_device_xi2_window_at_position().
2011-01-23 23:19:30 +01:00
Carlos Garnacho
b2b73a349e Fix valgrind warning about uninitialized value
mods_state->effective is not being set in XIQueryPointer() currently, so
use base|latched|locked instead, effective is nothing else than a shorthand
for these ORs, and these 3 values are set correctly anytime.
2011-01-23 23:14:53 +01:00
Benjamin Otte
51290e0a57 gdk: When reffing the impl surface, ref it from the impl window
This was causing surfaces to be created with the wrong size and that
caused broken clipping.

https://bugzilla.gnome.org/show_bug.cgi?id=640195
2011-01-23 21:41:01 +01:00
Carlos Garnacho
e3774b6ff2 Render check/radio buttons with border-color: @fg_color 2011-01-23 20:01:22 +01:00
Carlos Garnacho
13a3954ad4 GtkNotebook: only set/unset active flag on the tab label 2011-01-23 19:35:21 +01:00
Carlos Garnacho
b3ba85a01c Simplify GTK_STATE_FLAG_FOCUSED handling in state propagation.
Just unsetting it before propagating to the children suffices.
2011-01-23 19:34:50 +01:00
Carlos Garnacho
0c7772f0cf Do not unset sensitivity mistakenly in gtk_widget_set_state_flags()
together with commit 8903615a34, this finally fixes bug #640282.
Insensitivity is handled separatedly in _gtk_widget_update_state_flags(),
but the insensitive flag is mistakenly unset afterwards if clear is TRUE
in gtk_widget_set_state_flags().
2011-01-23 19:34:44 +01:00
Carlos Garnacho
a0e1fa9e77 Gtk(Toggle)Button: preserve untouched state flags when updating state.
Partly fixes bug #640282, noticed by Christian Persch. buttons were
clobbering the insensitive flag when updating their state.
2011-01-23 19:34:38 +01:00
Matthias Clasen
74f7e08811 Add a migration guide section about GdkDrawable
https://bugzilla.gnome.org/show_bug.cgi?id=640188
2011-01-23 12:27:18 -05:00
Chun-wei Fan
09244b7f1d Update Visual C++ 2008 Project Files Stuff
-Updated README.txt file in build/win32/vs9.
-Fix the gdk.vcprojin and gtk+.vsprops regarding include paths
 and copying of headers (missed header etc.)
2011-01-24 00:10:19 +08:00
Jorge González
f68faa3465 Updated Spanish translation 2011-01-23 15:10:51 +01:00
Kristjan SCHMIDT
73bfc16aa2 Updated Esperanto translation 2011-01-23 13:48:41 +01:00
Kjartan Maraas
db25eda122 Updated Norwegian bokmål translation 2011-01-23 11:41:44 +01:00
Aron Xu
644cc23fe0 Update Chinese (China) GTK+ po translation. 2011-01-23 08:37:09 +00:00
Matthias Clasen
eab3d94a43 Expose gtk-auto-mnemonics as an Xsetting 2011-01-22 23:48:39 -05:00
Matthias Clasen
9d34a9cc65 checksettings: succeed quietly 2011-01-22 23:47:01 -05:00
Matthias Clasen
09bf05bd57 Fix alignment problems with text cell renderers
When set to PANGO_ALIGN_CENTER, text was rendered off-center
by the amount of 'free space' that the PangoLayout left (ie
the x returned by pango_layout_get_pixel_extents).
2011-01-22 23:23:46 -05:00
Yaron Shahrabani
936f74c762 Updated Hebrew translation. 2011-01-23 02:40:52 +02:00
Jorge González
f60db29f82 Updated Spanish translation 2011-01-22 16:51:03 +01:00
Ivar Smolin
81fdf6619c [l10n] Updated Estonian translation 2011-01-22 11:53:00 +02:00
Federico Mena Quintero
a4a2d76182 bgo#639531 - [filechooser] Handle the case where the user types a nonexistent_subfolder/file.txt
The logic was to try to switch to that nonexistent folder and thus get
an error message presented.  However, no such message actually appears,
as the file chooser tries to switch to the closest parent folder that
actually exists, without bringing up an error message --- this is done
to cope with the case of the file chooser being started with a folder
that doesn't exist anymore.

Now, we just bring up an error message directly when we detect that
the user types a subfolder name that doesn't exist.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-01-21 17:08:10 -06:00
Federico Mena Quintero
84bf984f85 bgo#640161 - Maintain map/unmap invariants in GtkFileChooserDialog
We used to explicitly map and unmap the child GtkFileChooserWidget when
mapping and unmapping the dialog, respectively.  Now that GtkWidget actually
unmaps child widgets (instead of avoiding that), we can assume that the
child GtkFileChooserWidget will be unmapped when we wanted it to be.

This fixes a warning that happened with the new GtkWidget invariant checker,
as we were mapping our child widget before calling our parent class' ::map() handler.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-01-21 15:48:39 -06:00
Federico Mena Quintero
d07231cb7a bgo#626336 - Don't assume that GtkButton is activated only when a keyboard event is available
Buttons may also be activated at any time from gtk_widget_activate()
or related functions.  In that case, just do the 'show the button
as pushed for a short amount of time' trick, but don't actually
try to grab the keyboard device.

Signed-off-by: Federico Mena Quintero <federico@gnome.org>
2011-01-21 15:48:39 -06:00
William Jon McCann
120e289f56 Use actual app name in app choosers
Instead of using a strange composite of name and generic name.

https://bugzilla.gnome.org/show_bug.cgi?id=640005
2011-01-21 15:35:52 -05:00
Tomeu Vizoso
e2d42f3c4b [gi] Return value of gdk_window_new should have transfer full 2011-01-21 17:34:18 +01:00
Michael Natterer
5d3106275a gtk: no need to add GTK_STYLE_FLAG_FOCUSED to the widget's state flags
because they correctly contain that flag now if the widget has focus.
2011-01-21 15:38:52 +01:00
Carlos Garnacho
6e553324f9 Make gtk_widget_get_state_flags() avoid propagating the focused flag down the hierarchy
There is only one widget supposed to have the focused flag at a given time,
so avoid propagating the state down the hierarchy, the focused flag is now
also set in _gtk_widget_set_has_focus().
2011-01-21 15:25:29 +01:00
Michael Natterer
7fabfec533 gtk: save/restore the cairo_t around early upchaining in draw()
and don't save/restore the style context because that's the job of
each draw() implementation.
2011-01-21 15:06:43 +01:00
Michael Natterer
287a388415 gtk: remove unused "window" variable from gtk_entry_draw_frame() 2011-01-21 14:19:48 +01:00
Fridrich Štrba
a79f05c7be fix win32 build after removal of the colormap debug category 2011-01-21 11:20:16 +01:00
Sebastian Pölsterl
8effa1eb0e [gi] Added missing (allow-none) annotation to gdk_device_grab 2011-01-21 10:36:07 +01:00
Matthias Clasen
f941f7b123 Fix keynav issue in menu mode
Skipping insensitive and separator rows was broken in menu mode.
https://bugzilla.gnome.org/show_bug.cgi?id=639845
2011-01-20 23:40:14 -05:00
Benjamin Otte
d0ba16a3b2 assistant: Fix mapped invariants
gtk_widget_verify_invariants() was complaining, now it's silent.
2011-01-21 04:42:55 +01:00
Matthias Clasen
cfe909848d Avoid a warning if GtkCellView has no model 2011-01-20 22:35:09 -05:00
Matthias Clasen
46903a9100 Fix a crash during DND
https://bugzilla.gnome.org/show_bug.cgi?id=640105
2011-01-20 21:36:50 -05:00
William Jon McCann
6f4df09a04 When cancelling the app dialog return to the last item in combobox
https://bugzilla.gnome.org/show_bug.cgi?id=640011
2011-01-20 21:29:29 -05:00
Matthias Clasen
9532e96db4 Make GtkAppChooserButton work in modal context 2011-01-20 21:21:42 -05:00
Matthias Clasen
a7bcb8a4d7 Add a way to set the heading of GtkAppChooserDialog
The application can probably set a better string than the default
we construct, like 'Select an application for "software" files'.
2011-01-20 20:57:47 -05:00
Benjamin Otte
ec750bed0c gdk: Remove colormap debug category
We don't have colormaps anymore.
2011-01-21 02:54:09 +01:00
Benjamin Otte
7013406167 x11: Don't keep two lists of devices internally 2011-01-21 02:54:09 +01:00
Matthias Clasen
70879d345f Change the label of the GtkAppChooserDialog button
We are not "opening" an application, we are selecting it to
open a file. String change !
2011-01-20 19:59:55 -05:00
William Jon McCann
bbe56c1f9a Make the show more button follow the show-other property
Instead of show-all.

https://bugzilla.gnome.org/show_bug.cgi?id=640006
2011-01-20 19:45:22 -05:00
Matthias Clasen
5b7add024d Adapt gtk_icon_info_load_symbolic to librsvg limitations too
Pointed out by Owen Taylor.
2011-01-20 19:01:57 -05:00
William Jon McCann
f531787875 Don't reserve a column of space the for icons in app chooser button
In order to more consistently present the items regardless of
whether they have icons or not.
2011-01-20 15:48:00 -05:00
Johan Dahlin
56009e2226 Do not scan gtktextdisplay.h, avoids a scanner warning 2011-01-20 14:22:13 -02:00
William Jon McCann
deeac8caf3 Don't use an icon for Other Applications...
We only show icons in "menus" for nouns or dynamic objects.
2011-01-20 09:36:43 -05:00
Johan Dahlin
7ad7c61678 Mark api with xlib types as skipped
Since they'd need to have boxed type to be able to work
for introspection based bindings
2011-01-20 12:12:22 -02:00
Johan Dahlin
030b5ebf3e gtksettings: Add gtk-doc to silent an annotation warning 2011-01-20 12:12:22 -02:00
Johan Dahlin
766e1d35da Correct gtk-doc syntax and add missing (transfer) 2011-01-20 12:12:22 -02:00
Johan Dahlin
1e0327f844 Use identifier-prefix instead of deprecated strip-prefix 2011-01-20 12:12:22 -02:00
Johan Dahlin
b92df453c6 Remove property user_data which doesn't exist anymore 2011-01-20 12:12:22 -02:00
Pavel Holejsovsky
48ad65e1dd Bump required GObject-Introspection version to 0.10.1 2011-01-20 14:54:19 +01:00
Pavel Holejsovsky
374e76a19d [GI] Mark unintrospectable constructs as (skip)
Also adds 'Rename to:' annotation to some constructs replacing the
skipped ones.
2011-01-20 13:57:21 +01:00
Pavel Holejsovsky
2fb1c06402 [GI] Add missing (out) and (array) annotations 2011-01-20 13:57:20 +01:00
Pavel Holejsovsky
2f0d40335b [GI] Add missing (transfer) annotations 2011-01-20 13:57:18 +01:00
Pavel Holejsovsky
9b88eb356d [GI] Add missing (scope) annotations 2011-01-20 13:57:15 +01:00
Pavel Holejsovsky
3c8fc21e9b [GI] Fixes of existing incorrect annotations 2011-01-20 13:56:06 +01:00
Florian Müllner
497b66a5ab docs: Fix typo
s/gtk_builder_add_From_file/gtk_builder_add_from_file
2011-01-20 12:29:17 +01:00
Cosimo Cecchi
de6580b38d gail: fix the build 2011-01-20 12:00:27 +01:00
Steve Frécinaux
3f0d330a65 [GI] Fix transfer annotation on gtk_dialog_add_button()
The transfer annotation was (transfer full) but the caller actually
doesn't own a reference of the object. This made the pygobject test suite
crash because pygobject was trying to unref the returned GtkButton
instance.

https://bugzilla.gnome.org/show_bug.cgi?id=639949
2011-01-20 11:55:38 +01:00
Laszlo Pandy
75a05621bf [GI] Add annotation (type GdkModifierType) to state attributes in many GdkEvent structs.
The state attribute is available in GdkEventMotion, GdkEventButton,
GdkEventScroll, GdkEventKey and GdkEventCrossing. This type annotation
fixes the wrapping of this attribute in the GI PyGObject bindings.

https://bugzilla.gnome.org/show_bug.cgi?id=639929
2011-01-20 11:19:26 +01:00
Pavel Holejsovsky
9389054da2 [GI] Add (type) annotations to real types 2011-01-20 10:38:38 +01:00
Matthias Clasen
b29af18a26 Add a GtkBuilder section to the tutorial 2011-01-20 01:30:34 -05:00
Matthias Clasen
99812be7d7 Be more careful with private event data
When copying allocated events, also copy the source device.
When synthesizing double or triple clicks, copy the original
button press event including device information.

https://bugzilla.gnome.org/show_bug.cgi?id=639822
2011-01-19 22:52:55 -05:00
Matthias Clasen
6869ff26f3 Make GtkBorder style properties have a non-NULL default
https://bugzilla.gnome.org/show_bug.cgi?id=639625
2011-01-19 21:24:30 -05:00
Matthias Clasen
2f7245699b Add gtk_text_view_get_cursor_locations
In GTK 3.0 it's no longer possible to e.g. pop up something
at a text view's cursor (this wasn't exactly possible before
either without including gtktextlayout, but this is a quite
special need anyway).
2011-01-19 17:01:19 -05:00
Michael Kotsarinis
ba02ae72fa Updated Greek translation 2011-01-19 22:03:53 +02:00
Matthias Clasen
eb7e81ddd6 Use simplesect in the tutorial
This avoids blowing up the global toc even more.
2011-01-19 14:34:08 -05:00
Jorge González
8ed7494948 Updated Spanish translation 2011-01-19 19:37:26 +01:00
Michael Kotsarinis
889dc8111b Updated Greek translation 2011-01-19 20:30:31 +02:00
Michael Kotsarinis
e7e3702a22 Updated Greek translation 2011-01-19 20:24:06 +02:00
Matthias Clasen
0a5e8ce685 Mention type vs region ambiguity in the docs 2011-01-19 12:55:48 -05:00
Martin Pitt
d45a0114a5 Fix linking of drawing example
Commit 80e1340e introduced using a GDK method in examples/drawing.c, so
actually link that to GDK. Fixes build failure with --as-needed linker option
and gcc 4.5.
2011-01-19 15:40:46 +01:00
Sebastian Pölsterl
cbbfe48ee4 [GI] Added missing (transfer none) annotation to gtk_tree_view_get_path_at_pos 2011-01-19 15:09:05 +01:00
Trevor Saunders
f710cca49d gail now provides toolkit = gail as an AtkAttribute of all gtk objects.
https://bugzilla.gnome.org/show_bug.cgi?id=598952

https://bugzilla.gnome.org/show_bug.cgi?id=638920
2011-01-19 15:39:04 +08:00
Matthias Clasen
80e1340e51 Add a drawing example to the tutorial 2011-01-18 23:59:17 -05:00
Matthias Clasen
ceeaf183a1 Add a packing example to the tutorial 2011-01-18 23:59:17 -05:00
Matthias Clasen
ce1244fdd7 Add a paragraph explaining events and signals 2011-01-18 23:59:17 -05:00
Carlos Garnacho
0b7496558d Make GtkCssProvider deal with widget types not being in plain CamelCase
Fixes bug #Bug 639754, reported by Kjell Ahlstedt. gtkmm doesn't
use plain CamelCase for its widget type names, so in order to
distinguish widget type names from regions in the CSS parser,
the following checks are now done:

* if it contains an uppercase letter -> widget class (that should
  also work for gtkmm)

* if it's a string compound by lowercase letters and '-' -> it's
  a region, checks have been added in gtk_style_context_add_region()
  and gtk_widget_path_iter_add_region() to ensure this.
2011-01-19 04:28:49 +01:00
Carlos Garnacho
0c5ceaf757 Set horizontal/vertical style classes to GtkRanges 2011-01-19 04:28:49 +01:00
Carlos Garnacho
f430a306f7 Make GtkCheckButton/GtkRadioButton background white again 2011-01-19 04:28:49 +01:00
Carlos Garnacho
687ac4d4aa Don't displace background for spinbuttons in the theming engine
This is a leftover from the older GtkStyle code, this is handled
through CSS spacings instead.
2011-01-19 04:28:48 +01:00
A S Alam
474ed78b25 update Punjabi Translation 2011-01-19 08:40:52 +05:30
Yaron Shahrabani
da27cae045 Updated Hebrew translation. 2011-01-19 01:02:39 +02:00
Pavel Holejsovsky
a1c297a310 [GI] Cosmetic cleanups of annotations and doc comments
This change does not introduce any functionality change, mostly
cosmtic cleanups, like re-linebreak when introduced annotations messed
up indentation or whitespace errors fixes.
2011-01-18 17:31:59 +01:00
Pavel Holejsovsky
fe372ddf5e [GI] Add missing (allow-none) annotations 2011-01-18 17:30:43 +01:00
Pavel Holejsovsky
6d5cdad56e [GI] Annotate strings holding file paths as (type filename) 2011-01-18 17:29:40 +01:00
Pavel Holejsovsky
204d1fd0a6 [GI] Make argument names in vfunc decls consistent with invoker docs 2011-01-18 17:28:35 +01:00
Pavel Holejsovsky
729c823955 [GI] Mark callbacks' context parameter with (closure) annotation. 2011-01-18 17:20:32 +01:00
Bastien Nocera
714d9bc407 GtkImage: Add "use-fallback" property
So that icon-name and GIcon type of GtkImages can use automatic
fallback names.
2011-01-18 16:14:05 +00:00
Tristan Van Berkom
e6a51e4afb More accurate fix for GtkTreeMenu regression.
The previous fix rebuilds the root menu unconditionally,
this one only rebuilds the root menu if the root path
has indeed changed.

https://bugzilla.gnome.org/show_bug.cgi?id=639792
2011-01-19 00:43:08 +09:00
Sebastian Pölsterl
34b573b07c Fixed gtk_calendar_get_date annotations: Added missing (out) 2011-01-18 16:21:10 +01:00
Anders F Björklund
6095598c39 Consistently use PKG_CONFIG in macros 2011-01-18 09:55:35 -05:00
Matthias Clasen
bb7662392d Don't set the default display to NULL
This was causing segfaults if DISPLAY is unset
2011-01-18 09:36:59 -05:00
Matthias Clasen
fe687e760e Add testcases for opening display
More precisely, test that we can successfully fail to open
a display...
2011-01-18 09:36:24 -05:00
Martin Pitt
b208b9c0e9 Fix GtkIconView GI annotations
Add the missing (out) annotations, and a missing allow-none.
2011-01-18 12:32:52 +01:00
Yaron Shahrabani
ebb18e65c3 Updated Hebrew translation. 2011-01-18 12:56:57 +02:00
Matthias Clasen
64c79c15a6 Fix a combo refactor regression
https://bugzilla.gnome.org/show_bug.cgi?id=639792
2011-01-17 21:56:34 -05:00
Luca Ferretti
a29b4c6a51 Fix case (s/A/a) in translatable string (Select A Folder) 2011-01-17 21:43:33 +01:00
Garrett Regier
cb0fac73a5 Fix memory leak in gtk_window_group_list_windows 2011-01-17 08:23:59 -08:00
Martin Pitt
234b3b2c6f Annotate GtkIconView array arguments 2011-01-17 16:01:40 +01:00
Matthias Clasen
9f895aa3ad Make symbolic icons work again
Work around https://bugzilla.gnome.org/show_bug.cgi?id=639750
2011-01-17 09:57:35 -05:00
Matthias Clasen
77ff699226 Drop gtk-builder-convert
It will still be shipped in gtk 2.24.
2011-01-17 09:55:52 -05:00
Pavel Holejsovsky
09d395f629 Move GtkFileFilter docs inline 2011-01-17 15:27:06 +01:00
Pavel Holejsovsky
4dab3a601d Move GtkMenu docs inline 2011-01-17 15:27:04 +01:00
Pavel Holejsovsky
2bd38dc7f5 Move GtkFixed docs inline
Also remove incorrect documentation of opaque GtkFixed class struct.
2011-01-17 15:27:02 +01:00
Carlos Garnacho
2f207ca749 Make selectors with no explicit state from higher priority GtkStyleProviders override lower ones with a state.
This makes overriding information from the themes more intuitive
2011-01-17 04:44:29 +01:00
Carlos Garnacho
5f43a51a83 Make gtk_widget_get_path() also add all persistent style classes the widget has. 2011-01-17 04:44:03 +01:00
Carlos Garnacho
62fd79b224 Do not set junction sides to the entry frame in spinbuttons.
That's meant to be the outer frame, so no junction sides apply there
2011-01-17 04:43:52 +01:00
Carlos Garnacho
f482d4dc89 Ensure harder a GtkStyleContext has a theming engine anytime 2011-01-17 04:43:42 +01:00
Carlos Garnacho
07e62229da Make GtkFrame propagate the "frame" style class to its header label 2011-01-17 04:43:31 +01:00
Carlos Garnacho
0e77486e91 Make GtkEntry set the style context state. 2011-01-17 04:43:23 +01:00
Carlos Garnacho
e28a2695ac Improve progressbars theming.
Make progressbar itself have an outset border, and improve spacings.
2011-01-17 04:43:16 +01:00
Daniel Mustieles
c444ccf531 Updated Spanish translation 2011-01-16 21:25:10 +01:00
Daniel Mustieles
477ff06b25 Updated Spanish translation 2011-01-16 21:24:39 +01:00
Daniel Mustieles
837583eb36 Updated Spanish translation 2011-01-16 19:30:49 +01:00
Fran Diéguez
6893aa9c25 Updated Galician translations 2011-01-16 17:14:23 +01:00
Tristan Van Berkom
d9ebdb7610 Plugged memory leak in gdk_x11_device_manager_xi2_list_devices.
This was simply a misplaced 'g_list_copy()'.
2011-01-16 22:47:12 +09:00
Tristan Van Berkom
a530f88234 Plugged leaking PangoFontDescriptions in gtk_modifier_style_set_font(). 2011-01-16 21:14:00 +09:00
Tristan Van Berkom
9438107bff Plugged leak in gtkcssprovider.c
SelectorStyleInfo structs were never freed.
2011-01-16 20:52:43 +09:00
Tristan Van Berkom
c35fb706bd Plugged memory leak in gtk_style_finalize (destroy the ->background[] patterns). 2011-01-16 20:17:52 +09:00
Tristan Van Berkom
4a5c435e9a Plugging memory leak in GtkCellArea (free ->style_detail at finalize time). 2011-01-16 18:15:57 +09:00
Ivar Smolin
f793626a53 [l10n] Updated Estonian translation 2011-01-16 10:25:57 +02:00
Ivar Smolin
27e8df0c2c [l10n] Updated Estonian translation 2011-01-16 10:25:22 +02:00
Martin Pitt
85fe2ce17f Gtk{List,Tree}Store: Fix GI array annotations 2011-01-15 15:26:12 -06:00
Inaki Larranaga Murgoitio
9f78fd22bc Updated Basque language 2011-01-15 18:17:38 +01:00
Javier Jardón
46f0994417 docs: gtkwidget: Add some "Since: 3.0" 2011-01-15 16:43:49 +00:00
Tristan Van Berkom
ac61edb9fc Avoid calling gtk_widget_is_visible(NULL) in _gtk_notebook_get_tab_flags().
The tab can be NULL here when GtkNotebook:show-tabs is FALSE.
2011-01-15 21:34:49 +09:00
Kjartan Maraas
fed55eaf36 Updated Norwegian bokmål translation 2011-01-15 12:08:53 +01:00
Kjartan Maraas
77ad5096a9 Add missing files 2011-01-15 12:08:53 +01:00
Kjartan Maraas
4392c0e9b5 Updated Norwegian bokmål translation 2011-01-15 12:08:53 +01:00
Matthias Clasen
22876d789c Fix a typo 2011-01-15 00:39:29 -05:00
Matthias Clasen
cc92d6da03 Fix a typo 2011-01-15 00:16:51 -05:00
Matthias Clasen
ccc3d874ef Add accessors for GtkRange::round-digits
Patch by Christian Dywan,
https://bugzilla.gnome.org/show_bug.cgi?id=351755
2011-01-15 00:08:39 -05:00
Matthias Clasen
8e420bca02 Unify handling of prelighted icons
Make GtkEntry use gtk_render_icon_pixbuf for rendering the
icons, and move the working icon prelighting code from GtkEntry
to GtkThemingEngine.

https://bugzilla.gnome.org/show_bug.cgi?id=636691
2011-01-14 23:59:22 -05:00
Chun-wei Fan
e9319c6182 Merge ssh://git.gnome.org/git/gtk+ 2011-01-15 12:42:52 +08:00
Matthias Clasen
867dc0bd0d Avoid a critical warning during tab DND
https://bugzilla.gnome.org/show_bug.cgi?id=639380
2011-01-14 21:15:06 -05:00
Matthias Clasen
d790fd4fdd Update information about visuals
Based on a patch by Jasper St. Pierre,
https://bugzilla.gnome.org/show_bug.cgi?id=639520
2011-01-14 20:45:53 -05:00
Matthias Clasen
8f6a8441a2 Implement the editing-canceled property in GtkCellEditableEventBox
https://bugzilla.gnome.org/show_bug.cgi?id=639455
2011-01-14 20:24:26 -05:00
Matthias Clasen
1cba79677c Add --enable-gtk2-dependency option
This can be used to suppress building of gtk-update-icon-cache
in favor of using a preexisting version. Based on a patch by
Colin Walters,
https://bugzilla.gnome.org/show_bug.cgi?id=639471
2011-01-14 20:01:05 -05:00
Matthias Clasen
d8d31c60ca Drop never-updated revision attributes 2011-01-14 19:35:34 -05:00
Matthias Clasen
abc8ac1a8b Move GtkSelection docs inline
At the same time, move private selection API to gtkselectionprivate.h
2011-01-14 19:20:56 -05:00
Matthias Clasen
00a3685f41 Move GtkPrintJob docs inline 2011-01-14 18:39:01 -05:00
Matthias Clasen
6cf78a12c1 Move GtkTextTag docs inline 2011-01-14 17:49:48 -05:00
Matthias Clasen
06864ba656 Move GtkMenuShell docs inline 2011-01-14 16:59:29 -05:00
Sahran
35644cab9e Added UG translation 2011-01-14 22:46:35 +01:00
Fridrich Štrba
708357001a make the ms-windows engine compile again 2011-01-14 19:49:31 +01:00
Michael Natterer
6f4adebcef gtk: render GtkEventBox' background in the right state 2011-01-14 16:56:50 +01:00
Fran Diéguez
d0f51577a4 Updated Galician translations 2011-01-14 16:49:43 +01:00
Matthias Clasen
e62b68fe62 Add EXPORT_PACKAGES for the girs
This connects the girs to the pc file names.

https://bugzilla.gnome.org/show_bug.cgi?id=635287
2011-01-14 09:46:21 -05:00
Matthias Clasen
9d14edf760 Add --include-uninstalled for the gdk gir
https://bugzilla.gnome.org/show_bug.cgi?id=635287
2011-01-14 09:44:10 -05:00
Matthias Clasen
8ba35bc381 Add --warn-all to introspection scanner args
https://bugzilla.gnome.org/show_bug.cgi?id=635287
2011-01-14 09:32:26 -05:00
Colin Walters
890e4511aa GtkContainer: make "handle_border_width" member private
Otherwise in introspection we get a naming conflict between the
structure member and the method.

http://bugzilla.gnome.org/show_bug.cgi?id=639325
2011-01-14 09:29:33 -05:00
Matthias Clasen
92c8a3e0e1 Remove an overlooked instance of gdk drawing api 2011-01-13 23:42:12 -05:00
Matthias Clasen
985b0e57b2 Add a migration guide section about multiple backends 2011-01-13 23:40:47 -05:00
Matthias Clasen
04248fbd39 Update some outdated content in the question index
Based on a patch by Jasper St. Pierre
https://bugzilla.gnome.org/show_bug.cgi?id=639494
2011-01-13 23:10:25 -05:00
Matthias Clasen
b23839c7a5 Add an example for custom css 2011-01-13 22:19:58 -05:00
Matthias Clasen
9d85d87f05 Move GtkMenuBar docs inline
And remove some outdated content.
2011-01-13 22:11:22 -05:00
Matthias Clasen
df78c9ee66 Add some doc details
Mention symbolic color names in gtk_icon_info_load_symbolic_for_context()
2011-01-13 21:38:08 -05:00
Cosimo Cecchi
7e29fc5b42 gtkshow: don't call _get_display() on a NULL GdkScreen
gtk_show_uri() is documented to accept a NULL screen to mean the default
one. Calling gdk_screen_get_display() on a NULL object will cause
segfaults.
2011-01-13 16:18:59 +01:00
Tristan Van Berkom
04494c5df0 Making GtkCellLayout "no cell area yet" warning a g_critical instead. 2011-01-13 23:02:34 +09:00
Tristan Van Berkom
66593ef569 Added warnings to GtkCellLayout when api is accessed and there is no GtkCellArea to operate on. 2011-01-13 21:35:02 +09:00
Ivar Smolin
eaca2ea5e8 [l10n] Updated Estonian translation 2011-01-13 12:40:46 +02:00
Mahyar Moghimi
cbd313c237 correcting on off in gtkswitch according to bugreport:638232 2011-01-13 11:35:44 +03:30
Tristan Van Berkom
89eb869ecf Avoid crashes calling gdk_window_enable_synchronized_configure() on an offscreen window.
Just added gdk_offscreen_window_do_nothing() noop stub in that slot.
2011-01-13 17:03:14 +09:00
Matthias Clasen
290c34b232 Try harder to find a good display name for paper sizes
This was requested in https://bugzilla.gnome.org/show_bug.cgi?id=639186.
Also add some tests for GtkPaperSize.
2011-01-12 22:30:08 -05:00
Matthias Clasen
8709c86944 bump version 2011-01-12 19:56:22 -05:00
Matthias Clasen
03344207b9 Update NEWS 2011-01-12 19:06:48 -05:00
Matthias Clasen
76de8aa790 Move GtkTreeModel docs inline 2011-01-12 18:50:45 -05:00
Matthias Clasen
349c3a8839 Move enum docs inline
Based on a patch by Garrett Regier
https://bugzilla.gnome.org/show_bug.cgi?id=617324
2011-01-12 18:50:45 -05:00
Thomas Wood
0c6251d0d2 switch: allow the user to toggle the switch by clicking on the handle 2011-01-12 18:50:45 -05:00
Inaki Larranaga Murgoitio
49a6e0c2b6 Updated Basque language 2011-01-12 23:20:26 +01:00
Inaki Larranaga Murgoitio
e3304fe130 Updated Basque language 2011-01-12 23:18:55 +01:00
Inaki Larranaga Murgoitio
6a5d9b0bec Updated Basque language 2011-01-12 23:09:27 +01:00
Carlos Garnacho
e2e7075533 Redo patch in efae64b (Set vertical/horizontal class...)
Add a _gtk_orientable_set_style_classes() function so all
orientation changes to style happen in a single place.
2011-01-12 22:58:41 +01:00
Christian Persch
b6464b6c0a Add target version handling to gtk-builder-convert
When converting to gtk3, replace GtkComboBoxEntry with GtkComboxBox
has-entry=True, and remove the has-separator property from GtkDialogs.

Bug #639327.
2011-01-12 22:45:57 +01:00
Carlos Garnacho
efae64be66 Set vertical/horizontal class on all widgets overriding GtkOrientable::orientation
This is so g_object_set() on that property leaves widgets' style in
a meaningful state. Fully fixes bug 639157.
2011-01-12 22:28:43 +01:00
Carlos Garnacho
8ad724ebcc Deal with the abscence of horizontal/vertical class when rendering an expander 2011-01-12 22:07:34 +01:00
Carlos Garnacho
26db0b7276 Make GtkMenu(Shell) use GtkStyleContext
The default CSS has also been modified to theme these sensibly
2011-01-12 20:55:36 +01:00
Carlos Garnacho
4b61182521 Make GtkCheckMenuItem use GtkStyleContext 2011-01-12 20:54:35 +01:00
Carlos Garnacho
b7caeb7adb Fix rendering glitch in menu radiobuttons
The arcs needed a new subpath.
2011-01-12 20:54:35 +01:00
Carlos Garnacho
f4714ccae2 Make GtkTearoffMenuItem use GtkStyleContext 2011-01-12 20:54:35 +01:00
Carlos Garnacho
7f5349b75a Make GtkImageMenuItem use GtkStyleContext 2011-01-12 20:54:34 +01:00
Carlos Garnacho
c42f20efe3 Make GtkMenuItem use GtkStyleContext 2011-01-12 20:54:34 +01:00
Carlos Garnacho
6ff7a8daf2 Make GtkToolItemGroup use GtkStyleContext 2011-01-12 20:54:34 +01:00
Tristan Van Berkom
3492b1567d Fixed assertions in gtk_cell_renderer_get_aligned_area().
The assertions here were not accounting for the possiblility of
zero width visible renderers that are aligned completely to the
right (i.e. renderers with no content set for a said row).
2011-01-13 01:16:19 +09:00
Guillaume Desmottes
aa1f58b731 _gtk_cell_area_set_cell_data_func_with_proxy: set the proxy when creating a new CellInfo (#637965) 2011-01-12 14:33:27 +01:00
Benjamin Otte
2b0b08a861 stylecontext: Protect the cairo contexts with cairo_save/cairo_restore()
We don't want theme engines to mess up the context we are currently
drawing with.
2011-01-12 11:40:09 +01:00
Chun-wei Fan
f79266092b Update MSVC 2008 Project Files
-Update the project files to simplify them a bit after the seperation of
 GDK-Pixbuf (move GDK-Pixbuf includes into the property sheet, move the
 linking of Cairo/Pango/PangoCairo into the property sheet)--this is for
 all DLL/EXE Projects (GDK/GTK/gtk-demo)

-Update the GDK-Win32 project as the source files have changed
 significantly (especially as GDK3 was not compilable on Windows for a
 while--thanks to Hans Breuer for the help in the process-Bug 639127)

-Made up for missed headers in the "install" stage and removed the removed
 headers in the property sheet

-Updated GTK+ .def file generation as an extra macro is needed for that

-Updated gdk/Makefile.am for the generation of gdk.vcproj from gdk.vcprojin
2011-01-12 18:36:05 +08:00
Chun-wei Fan
479a08054b Update MSVC 2008 Project Files
-Update the project files to simplify them a bit after the seperation of
 GDK-Pixbuf (move GDK-Pixbuf includes into the property sheet, move the
 linking of Cairo/Pango/PangoCairo into the property sheet)--this is for
 all DLL/EXE Projects (GDK/GTK/gtk-demo)

-Update the GDK-Win32 project as the source files have changed
 significantly (especially as GDK3 was not compilable on Windows for a
 while--thanks to Hans Breuer for the help in the process-Bug 639127)

-Made up for missed headers in the "install" stage and removed the removed
 headers in the property sheet

-Updated GTK+ .def file generation as an extra macro is needed for that

-Updated gdk/Makefile.am for the generation of gdk.vcproj from gdk.vcprojin
2011-01-12 18:32:57 +08:00
Khaled Hosny
6d6b38cf78 Updated Arabic translation 2011-01-12 09:11:04 +02:00
Khaled Hosny
908b419260 Updated Arabic translation 2011-01-12 08:56:41 +02:00
Fridrich Štrba
2f3c3ca7d3 Fix windows build from git clean and a minor linking issue 2011-01-11 22:45:40 +01:00
Yaron Shahrabani
f0b05328a6 Updated Hebrew translation 2011-01-11 20:40:36 +02:00
Florian Müllner
5616ad0e19 [build] Add gtktextattributes.h
Commit 7fae37ecd5 factored out GtkTextAttributes, but did not add
the new header to the build system.
2011-01-11 18:10:26 +01:00
Fridrich Štrba
a606ea62a1 Fix win32 build 2011-01-11 17:28:37 +01:00
Benjamin Otte
7e33c009a0 gdk: Fix typo
<mclasen>: Comapny: kludge, with a k
2011-01-11 17:06:49 +01:00
Benjamin Otte
b05f54ff73 x11: Add --c-include for gdk/gdkx.h to Gdk-X11 gir build 2011-01-11 16:46:59 +01:00
Benjamin Otte
ebd5f8b10e gdk: Put stub gdkx.h into gdk/ dir
This is so we can include gdk/gdkx.h from inside GTK code.
2011-01-11 16:46:59 +01:00
Benjamin Otte
654aca5ccd gdk: Don't build X11 stuff into Gdk.gir 2011-01-11 16:46:59 +01:00
Benjamin Otte
268efbc0ef gdk: Add --c-include gdk/gdk.h to Gir build. 2011-01-11 16:46:59 +01:00
Benjamin Otte
a25813cc24 gtk: Add --c-include to gir build 2011-01-11 16:46:59 +01:00
Benjamin Otte
b30b33998f gtk: Prefix GtkCellAreaBoxContext symbols with an underscore
They are private.
2011-01-11 16:46:59 +01:00
Benjamin Otte
8899ab3f91 gtk: Remove private GtkCellAreaBoxContext symbols from gtk.symbols 2011-01-11 16:46:59 +01:00
Benjamin Otte
04c773c94d gtk: Rename private header to private name
gtk/gtkcellareaboxcontext.h -> gtk/gtkcellareaboxcontextprivate.h
2011-01-11 16:46:59 +01:00
Benjamin Otte
b43bafff52 textview: Move text attributes code into its own .c file 2011-01-11 16:46:59 +01:00
Benjamin Otte
7fae37ecd5 textview: Move GtkTextAttributes to its own header 2011-01-11 16:46:59 +01:00
Benjamin Otte
b40dc528f6 tests: Remove useless calls to gtk_widget_style_attach() 2011-01-11 16:46:59 +01:00
Christian Dywan
35d361fce9 2 to 3 migration should say gtk_widget_set_visual 2011-01-11 16:36:19 +01:00
Milan Bouchet-Valat
44da5a0094 Improve docs about GtkStyleContext padding/border/margin
GTK_STYLE_PROPERTY_BORDER_WIDTH is of style GtkBorder, not gint.

Also make it clearer what the definition and ordering of these 3
properties is. Reorder them in the header to be more logical.
2011-01-11 12:28:54 +01:00
Cosimo Cecchi
27ee3fec96 numerableicon: fix a typo in the gtk-doc annotation 2011-01-11 10:55:42 +01:00
Javier Jardón
df2a4a6131 docs: question_index: Do not reference deprecated API 2011-01-11 09:37:05 +00:00
Javier Jardón
44f16bfe6d docs: question_index: GtkComboBoxEntry no longer exists 2011-01-11 09:35:15 +00:00
Javier Jardón
1a79d9939c docs: question_index: Some documentation fixes 2011-01-11 09:31:08 +00:00
Matthias Clasen
62ba858582 Bump version 2011-01-10 23:36:47 -05:00
Matthias Clasen
6d9191f601 Revert accidental gtk.symbols changes 2011-01-10 22:59:13 -05:00
Matthias Clasen
a9a7eca7f3 Update NEWS 2011-01-10 22:19:12 -05:00
Sébastien Granjoux
8f6cd8d86d Fix bgo #638017 Crash in gtk_text_view_set_tabs() 2011-01-10 21:07:32 -05:00
Matthias Clasen
9b752aee1a Don't use deprecated style api 2011-01-10 20:33:13 -05:00
Carlos Garnacho
48a4f88ab1 Mark orientable widgets with the vertical/horizontal css classes
This can be used to theme widgets differently depending on the
orientation. Bug 639157, reported by Christian Dywan.
2011-01-10 23:53:29 +01:00
Carlos Garnacho
529fcc84cf Add missing CSS class defines to gtk3-sections.txt 2011-01-10 23:52:47 +01:00
Carlos Garnacho
4c4df23d12 GtkThemingEngine: Fix handles rendering
The wrong class was being used, so the theming engine didn't
match it properly.
2011-01-10 23:52:36 +01:00
Carlos Garnacho
d5b0ccacce GtkStyleContext: Do not cancel possibly unstarted transitions
It might happen that this overcautious check is done on an animation
that didn't have time to gather invalidation rectangles.
2011-01-10 23:52:21 +01:00
Carlos Garnacho
733cb5e43d Cleanup leftover code in gtkplug-x11
This code was part of the GdkDeviceManagerCore hack
2011-01-10 23:52:02 +01:00
Carlos Garnacho
42ad651914 Mark gtk_widget_style_attach() as deprecated.
This isn't needed anymore.
2011-01-10 23:51:48 +01:00
Carlos Garnacho
e426f76e57 Fix compiler warning. 2011-01-10 23:51:14 +01:00
Carlos Garnacho
fa2bfd93f8 Add gtk_widget_set_device_enabled()
This function is a more convenient variant than
gtk_widget_set_device_events(), as it will

1) perform changes down a widget hierarchy, to
all windows.
1) use the same event mask than gdk_window_get_events()
2011-01-10 23:01:02 +01:00
Carlos Garnacho
c94912afd5 GtkTextUtil: Fix typo
Use the right "context" object around in GtkStyleContext methods.
2011-01-10 23:01:01 +01:00
Paolo Borelli
a67507a53e Set the proper css class when getting attributes. 2011-01-10 21:58:29 +01:00
Hans Breuer
0a9abb0222 [portability] Use G_PI rather than M_PI 2011-01-10 21:39:34 +01:00
Hans Breuer
f605d3d698 Bug 639127 - Add missing gdkdisplaymanager-win32.c 2011-01-10 21:39:33 +01:00
Carlos Garnacho
de36dda925 Add gtk_style_context_scroll_animations()
This function will be needed in widgets like GtkTreeView,
since gdk_window_scroll() doesn't trigger the usual
mechanisms to update the invalidation area, this function
is needed together with it.
2011-01-10 20:49:41 +01:00
Carlos Garnacho
162380fca5 Make GtkCalendar use GtkStyleContext 2011-01-10 20:49:34 +01:00
Carlos Garnacho
12944d9c23 Do not set any padding for scrolled window children. 2011-01-10 20:49:27 +01:00
Carlos Garnacho
d9dab98ad6 GtkCssProvider: enable parsing negative GtkBorders
this can be used as in regular CSS under some situations,
so child items overlap the parent element's border.
2011-01-10 20:49:14 +01:00
Carlos Garnacho
2ec40cac8c Make GtkTextUtil use GtkStyleContext. 2011-01-10 20:48:59 +01:00
Paolo Borelli
c5a8584c3e CSS styles for the selection in a TextView.
https://bugzilla.gnome.org/show_bug.cgi?id=639106
2011-01-10 18:52:35 +01:00
Paolo Borelli
2290ec6bd8 Port GtkTextDisplay to StyleContext.
Use the new StyleContext and StateFlags to draw the text

https://bugzilla.gnome.org/show_bug.cgi?id=639105
2011-01-10 18:52:35 +01:00
Matthias Clasen
845d864a51 add gtknumerable.c to POTFILES.in 2011-01-10 12:06:31 -05:00
Yaakov Selkowitz
5caa2b58cb Fix remaining usage of g[dk]ktargetlib.
This is a follow-up to commit 07d49ee56a.

https://bugzilla.gnome.org/show_bug.cgi?id=639047
2011-01-10 11:53:26 -05:00
Matthias Clasen
efd0e6ec1f Add a setter for GtkWindow.has_user_ref_count
This is needed for some language bindings.

https://bugzilla.gnome.org/show_bug.cgi?id=638880
2011-01-10 11:49:06 -05:00
Matthias Clasen
061d48b68d More doc build fixes
Grr, our mixture of xml and plain text in long descriptions is
a mess.
2011-01-10 10:59:50 -05:00
Matthias Clasen
f758385353 Fix doc syntax 2011-01-10 09:47:09 -05:00
Javier Jardón
63bb0c73bc build: Use mkdir_p instead mkinstalldirs
As we don't use mkinstalldirs, $(mkinstalldirs) is simply an
alias for $(mkdir_p)
2011-01-10 13:55:29 +00:00
Tristan Van Berkom
3f911b2516 Fixed GtkEntry to report the proper default value for "primary/secondary-icon-activatable" 2011-01-10 22:26:46 +09:00
Tristan Van Berkom
2dafbba921 Added GtkBuildable support for specifying <items> in GtkComboBoxText. 2011-01-10 18:48:07 +09:00
Tristan Van Berkom
cfecb6bf10 Added GtkBuildable support to add "tag" children to GtkTextTagTable. 2011-01-10 18:48:07 +09:00
Tristan Van Berkom
03975b8e74 Added GtkBuilder support for "menu" child type of GtkMenuToolButton 2011-01-10 18:48:07 +09:00
Tristan Van Berkom
1fa280938b Fixed GtkCellAreaBox to not allocate invisible cells.
This was already done for the most part but not taken care
of for single cell groups (which is the most common case).
2011-01-10 18:47:55 +09:00
Tristan Van Berkom
34a7dbae3b Fixed GtkCellArea to never activate/start editing insensitive cells.
Included extension to tests/testtreeedit to show this is working properly.
2011-01-10 17:58:57 +09:00
Carlos Garnacho
5c3b49ab14 Ensure GtkStyleContext is generated on gtk_widget_render_icon_pixbuf()
This fixes some warnings seen when this is called early
on non yet styled widgets.
2011-01-10 03:50:02 +01:00
Carlos Garnacho
6f3706ac28 Make GtkViewport use GtkStyleContext 2011-01-10 03:50:02 +01:00
Carlos Garnacho
e6277d3b82 Add gtk_style_context_cancel_animations()
This function takes a region ID and cancels all animations
on or beneath that region (as in push/pop_animatable_region).

First user of this is GtkWidget itself, so unmapped widgets
have looping animations cancelled. Fixes bug #638119, reported
by Jesse van den Kieboom.
2011-01-10 03:50:01 +01:00
Carlos Garnacho
3dd838fe76 Make GtkLayout use GtkStyleContext 2011-01-10 03:50:01 +01:00
Carlos Garnacho
18502518f3 Make GtkImage use GtkStyleContext 2011-01-10 03:50:00 +01:00
Carlos Garnacho
4e73267325 Make GtkPrintUnixDialog use GtkStyleContext. 2011-01-10 03:50:00 +01:00
Carlos Garnacho
6fae7c9fa7 Make GtkFontSelection use GtkStyleContext 2011-01-10 03:50:00 +01:00
Carlos Garnacho
2f6514ce34 Make GtkHSV use GtkStyleContext
two custom classes replace the light/dark focus detail strings,
it doesn't make much sense to have a GTK_STYLE_CLASS_* for that.
2011-01-10 03:49:59 +01:00
Carlos Garnacho
27c5cc88f8 Make GtkColorSelection use GtkStyleContext 2011-01-10 03:49:59 +01:00
Carlos Garnacho
455c31d815 Make GtkColorButton use GtkStyleContext 2011-01-10 03:49:59 +01:00
Carlos Garnacho
e0e36b621f Update _gtk_button_paint() arguments to GtkStyleContext
The detail strings weren't in use anymore, and the state
argument is now a GtkStateFlags. GtkToggleButton has been
updated as well.
2011-01-10 03:49:59 +01:00
Carlos Garnacho
f506fc3e93 Remove recent GtkStyle usage in GtkWindow
GtkStyleContext API is used instead.
2011-01-10 03:49:59 +01:00
Fran Diéguez
e94b515171 Updated Galician translations 2011-01-10 00:03:19 +01:00
Paolo Borelli
ab656b3f7a Obtain the fg color from the renderer
prepare_run must have been called before draw_shape, so we can avoid
fiddling the the (deprecated) style and state and just use the color
alredy set on the renderer.

https://bugzilla.gnome.org/show_bug.cgi?id=639079
2011-01-09 21:59:50 +01:00
Paolo Borelli
fadca187f2 Remove stipple attributes
GtkTextView does not support them anymore.

https://bugzilla.gnome.org/show_bug.cgi?id=639030
2011-01-09 21:59:50 +01:00
Paolo Borelli
12c4730e6f Small cleanup in gailtextview code.
Fold gail_misc_add_to_attr_set into the only function calling it, which
avoids a useless big "switch" and results in much less code.

https://bugzilla.gnome.org/show_bug.cgi?id=639030
2011-01-09 21:59:50 +01:00
Yaron Shahrabani
89c8e2af2d Updated Hebrew translation 2011-01-09 21:04:58 +02:00
Fran Diéguez
e0d393dec8 Updated Galician translations 2011-01-09 16:42:40 +01:00
Milan Bouchet-Valat
f9e685e5c0 [Doc] gtk_symbolic_color_resolve()'s props arg can be NULL
Document this behavior and add annotations.
2011-01-08 17:30:45 +01:00
Jorge González
b761cadacc Updated Spanish translation, fixes bug #638991 2011-01-08 13:49:31 +01:00
Javier Jardón
cc0a65cb56 docs: Fix typo in GtkWidget geometry-management documentation
Reported by Andrew Cowie in
https://bugzilla.gnome.org/show_bug.cgi?id=638963
2011-01-08 10:56:59 +01:00
Tristan Van Berkom
1ff8df1e18 Adding missing gtk-doc annotations.
GtkProgressBar:show-text, GtkScrolledWindow:min-content-width/height
are new properties in 3.0.
2011-01-08 18:46:46 +09:00
Bruce Cowan
094d4c81be Updated British English translation 2011-01-07 23:25:18 +00:00
Carlos Garnacho
29b4baea97 Translate KeyPress/KeyRelease in gtkplug-x11
This makes XEmbed work properly again. Only event->key.group
and is_modifier are left blank at the moment. Exposing the
necessary XKB bits should be considered, but it's not urgent
for the current usecases.
2011-01-07 22:07:52 +01:00
Kristian Rietveld
4ed781778d Introduce gtk_tree_view_is_blank_at_pos()
This function is useful to figure out whether the tree view is "blank"
at a given location.  For such locations you might want to popup a
custom popup menu, clear the current selection or start rubber banding.
In the future, we are planning on updating GtkTreeView's user
interactions to take advantage of this new function.

Part of bug 350618.
2011-01-07 15:38:06 +01:00
Kristian Rietveld
688d053436 Fix gtk_tree_view_column_cell_get_position() 2011-01-07 15:38:06 +01:00
Andika Triwidada
c40c4a45e5 Updated Indonesian translation 2011-01-07 20:38:52 +07:00
Matthias Clasen
be632558dc Document that GtkModuleInit doesn't receive argv anymore 2011-01-07 08:12:07 -05:00
Ignacio Casal Quinteiro
8de4661d80 Set the style for .view so i.e the GtkTextView gets the right style. 2011-01-07 11:35:40 +01:00
Tristan Van Berkom
da41937b42 Removed special casing code in GtkCellLayout in favor of default implementation.
The fact that GtkCellLayout was checking "if (gtk_cell_layout_get_area (layout))"
and executing code contitionally from the apis instead of simply falling
back to the default implementation for these things was causing problems
in language bindings such as gtkmm... Regardless, the implementation
is cleaner this way too.
2011-01-07 18:08:51 +09:00
Tristan Van Berkom
685fe29473 Fixed documentation of gtk_cell_area_set_focus_cell(). 2011-01-07 16:21:51 +09:00
Emilio Pozuelo Monfort
ec15c405cf Support disabling X11 extensions
Based on a patch from Cyril Brulebois <kibi@debian.org>

https://bugzilla.gnome.org/show_bug.cgi?id=612918
2011-01-07 01:30:11 +00:00
Fran Diéguez
7fc09ee135 Updated Galician translations 2011-01-07 00:11:51 +01:00
Matthias Clasen
aead0b04df Forgotten documentation fix 2011-01-06 11:27:38 -05:00
Matthias Clasen
7f58c57606 Bump version 2011-01-06 11:27:15 -05:00
Matthias Clasen
6cdb6255af More documentation fixes 2011-01-06 09:44:08 -05:00
Matthias Clasen
f35c3fd5f7 Undoccommentize gtktreemenu.c 2011-01-06 09:00:53 -05:00
Matthias Clasen
6619ac35e3 Documentation fixes 2011-01-06 09:00:53 -05:00
Matthias Clasen
c396c52327 Documentation fixes 2011-01-06 08:12:01 -05:00
Matthias Clasen
dc3d70b4ec Add sufficient deps to make building from 'git clean' work 2011-01-06 07:44:44 -05:00
Matthias Clasen
5984fa0073 Fix introspection annotation syntax 2011-01-06 07:44:19 -05:00
Kizito Birabwa
2f09f800cc Updated Luganda translation 2011-01-06 10:23:59 +01:00
Matthias Clasen
7b88b29763 Add appchooser docs 2011-01-06 02:07:35 -05:00
Matthias Clasen
80a11b7483 Documentation polishing 2011-01-06 01:13:50 -05:00
Matthias Clasen
f2cde4cf3b Move the GtkApplication example to the right place 2011-01-06 01:13:50 -05:00
Matthias Clasen
39d0a8ac47 Update NEWS some more 2011-01-06 01:13:50 -05:00
Tristan Van Berkom
44a9b1c35e Fixed statement in gtkwindow.c when toplevelness changes.
Fixed a typo when checking if the heirarchy toplevel is a toplevel
before firing the hierarchy-changed signal.
2011-01-06 14:39:41 +09:00
Tristan Van Berkom
a28295a742 Dont show the GtkWindow when removing it from a parent and becomming a toplevel
Showing the window causes it to try to grab focus, this causes problems
when embedded toplevels run through dispose cycles.
2011-01-06 14:39:41 +09:00
Tristan Van Berkom
b8c8f2ccb1 Fixed conflict while rebasing master. 2011-01-06 14:39:41 +09:00
Tristan Van Berkom
72675f1f28 Changes to testtoplevelembed
- Made notebook tabs smaller
  - No need to hide/show toplevels after removing from a parent,
    if it's visible it will be automatically shown after removing
    outside of it's previous parent.
2011-01-06 14:39:41 +09:00
Tristan Van Berkom
53980aca9b Fixed GtkFileChooserDefault to handle cases of being in an embedded dialog.
This involves checking the toplevelness of new toplevels before connecting
but not the *old* ones for disconnecting signals. Also take care of handling
a row_reference that becomes invalid over the course of reparenting the
filechooser into another parent.
2011-01-06 14:39:40 +09:00
Tristan Van Berkom
93c8058582 Fixed GtkWindow/GtkWidget to properly emit hierarchy changed for embedded toplevels
Now GtkWindow takes some measures when setting toplevelness:

  - When a window becomes toplevel after being embedded it saves
    the visibility state and reshow's itself so that the window
    re-realizes and presents itself again automatically

  - When emitting hierarchy-changed, synthetically mark the toplevel
    as not anchored, this allows the hierarchy changed propagation to
    recurse properly.

GtkWidget also takes care to unset the parent window *after* unparenting
the widget and after emitting the heirarhcy changed that leaves a NULL
toplevel.

That means there are now 2 cycles of "hierarchy-changed" when removing
an embedded toplevel from a parent, first one that makes the new toplevel
a NULL one (since the toplevel flag is not yet restored), the second cycle
makes the removed window toplevel again when setting the parent window
to NULL.
2011-01-06 14:39:40 +09:00
Tristan Van Berkom
aa787c9dd1 Fixed focus handling on embedded windows.
Now GtkWindow chains up in focus vfuncs when non-toplevel, this
fixes focus in testtoplevelembed.
2011-01-06 14:39:40 +09:00
Tristan Van Berkom
387d745e0e Added buttons to notebook tabs in testtoplevelembed
Now you can remove and reembed the toplevels (deleting the
toplevels put them back in the notebook).
2011-01-06 14:39:40 +09:00
Tristan Van Berkom
2dfa855bc4 Moved location of unsetting parent window inside gtk_widget_unparent().
Make sure to do this after the widget is unrealized.
2011-01-06 14:39:40 +09:00
Tristan Van Berkom
fdba9f281d Fixed issues with "hierarchy-changed" signal.
GtkFileChooserDefault watches the toplevel and montitors "set-focus"
signal on it... however the connection needs to be remade when the
GtkFileChooserDialog is in an embedded toplevel.

Measure's taken: GtkWindow propagates hierarchy changes when
_gtk_window_set_is_toplevel() is called, gtk_widget_unparent()
unsets the widget's parent window earlier in the function so that
the possible hierarchy change is still able to properly access the hierarchy.

GtkFileChooserDefault checks if the "new" toplevel is indeed
gtk_widget_is_toplevel() but not the old one, GtkRange has been
updated to use gtk_widget_is_toplevel() inside it's hierarhcy_changed
vfunc, other classes already do this properly.
2011-01-06 14:39:40 +09:00
Tristan Van Berkom
69b1bfb17b Added tests/testtoplevelembed. 2011-01-06 14:39:40 +09:00
Tristan Van Berkom
addcc64b9c Slightly less special casing in GtkWindow for gtk_widget_is_toplevel()
Also take care of setting the resize-mode at realize time depending
on toplevelness.
2011-01-06 14:39:40 +09:00
Tristan Van Berkom
6299f61ee7 Added docs to gtk_widget_set_parent_window.
Also stop setting the resize mode of the window.
2011-01-06 14:39:40 +09:00
Tristan Van Berkom
8b4b62f00c Allow GtkWindow to be parented if gtk_widget_set_parent_window() is called on one
This patch makes gtk_widget_set_parent_window() undo the toplevelness
of a GtkWindow, GtkWindow then realizes itself as a normal child widget
and behaves like a normal GtkBin by checking gtk_widget_is_toplevel() in
several places (show/hide/map/unmap/draw/size_allocate/check_resize/configure_event).
2011-01-06 14:39:40 +09:00
Matthias Clasen
a601b43b83 Cosmetic changes 2011-01-06 00:14:02 -05:00
Tristan Van Berkom
4d8c7c5782 Ensure that GtkIconView items get redrawn when the focus cell changes.
Seems the redraw was not happenning from keynav when set_focus_cell()
was called because keynav already updates the focus-cell. Now we
just unconditionally redraw the focus item when set_focus_cell() is
called.
2011-01-06 13:51:49 +09:00
Tristan Van Berkom
bab0f5a5c1 Fixed GtkIconView keynav
Icon View was not initially setting focus on a cell when
focus initially comes into the view. Focusing into whatever
is the first cell in the cursor item when set_cursor_item
is called with a NULL cell fixes this.
2011-01-06 13:51:49 +09:00
Tristan Van Berkom
b7c25c41d6 Fixed gtkiconview dispose cycle to not fire warnings. 2011-01-06 13:51:49 +09:00
Tristan Van Berkom
56580d1b8b Restored the old GtkIconView guess for wrap-width/width size of text cell
GtkIconView sets the minimum width of the text cell to be at least 50
pixels and otherwise twice the width of the first pixbuf cell found
in the icon list.
2011-01-06 13:51:49 +09:00
Tristan Van Berkom
60e5fcf4db Made GtkIconView reset the context and invalidate all sizes when a row changes.
GtkIconView should have a "grow-only" mode to handle optimization to
only allow icons to grow in width when rows change, however since
GtkIconView still does not handle large numbers of rows for now we'll
just relayout the whole thing whenever a series of rows change.

Also fixed up to watch the context incase of implicit resets.
2011-01-06 13:51:49 +09:00
Tristan Van Berkom
6036c51d52 Removed gtk_icon_view_get_item_area()
Now use a GdkRectangle at the begining of the GtkIconViewItem
structure and just re-cast the struct to get the item area.
2011-01-06 13:51:49 +09:00
Tristan Van Berkom
d0f13ae52c Fixed GtkIconView buildable custom tag end to let cell layout properly
handle <cell-packing>
2011-01-06 13:51:48 +09:00
Tristan Van Berkom
01a35e4483 Added gtk_icon_view_new_with_area() 2011-01-06 13:51:48 +09:00
Tristan Van Berkom
a160358830 GtkIconView now uses a per-row GtkCellAreaContext to store the alignments
of each row.

GtkIconView now properly calculates the height of each row separately
using a separate GtkCellAreaContext stored in an array which it can
always easily index with the item->row index for all purposes.
2011-01-06 13:51:48 +09:00
Tristan Van Berkom
2d5eadb7f9 Alignments with variable row heights almost works perfectly.
However, I'm going to have to figure a way to store the alignments
for rows separately, this may involve using a separate GtkCellAreaContext
for each row, unfortunately.
2011-01-06 13:51:48 +09:00
Tristan Van Berkom
e51592c0b3 Experimenting with allocating the context a different height for each row. 2011-01-06 13:51:48 +09:00
Tristan Van Berkom
c77abe1f83 Committing working version of GtkIconView using GtkCellArea.
Some things still not sorted out, GtkCellAreaContext is not allocated
so icons dont recieve alignments yet, focus navigation is not exactly
what it used to be (maybe we can work around that by observing the
item orientation and explicitly setting focus to the same cell when
navigating in the wrong orientation).
2011-01-06 13:51:48 +09:00
Tristan Van Berkom
951ea857cc Initial messy commit of GtkIconView using GtkCellArea (nothing works yet). 2011-01-06 13:51:48 +09:00
Tristan Van Berkom
6d483ed930 Added GtkCellArea & GtkCellAreaContext to GtkIconView
First commit to icon-view-refactor, essentially only adds the
construct-only "cell-area" property and the context but doesnt
use it.
2011-01-06 13:51:48 +09:00
Szilárd Pfeiffer
8219ed3a26 Add gtk_tree_model_iter_previous() vfunc
https://bugzilla.gnome.org/show_bug.cgi?id=128058
2011-01-05 23:39:11 -05:00
Matthias Clasen
072023e57b Remove deprecated GtkSpinner style properties 2011-01-05 23:21:52 -05:00
Matthias Clasen
2b3b3934a4 Another NEWS update 2011-01-05 21:12:51 -05:00
A S Alam
f4cf52f2cc Translation: update Punjabi 2011-01-06 07:16:05 +05:30
Matthias Clasen
53b67b9a72 Drop the G_SEAL definition from gdkconfig.h
All sealed members removed. Yay!
2011-01-05 19:00:14 -05:00
Benjamin Otte
2e064b3378 tests: Port testsocket example to not use deprecated APIs 2011-01-05 23:50:22 +01:00
Benjamin Otte
8136481d75 tests: Fix compile warnings for people who don't read gcc output. 2011-01-05 23:50:22 +01:00
Benjamin Otte
96091a4d9c adjustment: Privateize sealed members 2011-01-05 23:50:22 +01:00
Benjamin Otte
e1cb1b89d8 testgtk: Update adjustment usage for sealing 2011-01-05 23:50:22 +01:00
Benjamin Otte
3d3358b561 testgtk: Rename "adj" variables to "adjustment" 2011-01-05 23:50:22 +01:00
Benjamin Otte
b533305728 tests: Update prop-editor adjustment usage for sealing 2011-01-05 23:50:22 +01:00
Benjamin Otte
d5f7b6cd64 gtk-demo: Undef GDK_DISABLE_DEPRECATED to make test compile 2011-01-05 23:50:22 +01:00
Benjamin Otte
e62b39c921 volumebutton: Update adjustment usage for sealing
Also rename all variables named "adj" to "adjustment", like they're
called everywhere else.
2011-01-05 23:50:22 +01:00
Benjamin Otte
f79c6baa66 scalebutton: Update adjustment usage for sealing
Also rename all variables named "adj" to "adjustment", like they're
called everywhere else.
2011-01-05 23:50:22 +01:00
Benjamin Otte
cc879a6028 textview: Update adjustment usage for sealing
Also rename all variables named "adj" to "adjustment", like they're
called everywhere else.
2011-01-05 23:50:22 +01:00
Benjamin Otte
cd80f49053 tests: Update adjustment usage for sealing 2011-01-05 23:50:22 +01:00
Benjamin Otte
a41402c455 combobox: Update adjustment usage for sealing 2011-01-05 23:50:22 +01:00
Benjamin Otte
e4442c010b examples: Update dial adjustment usage for sealing 2011-01-05 23:50:22 +01:00
Benjamin Otte
c731e1ce0a demos: Update testpixbuf-scale demo for adjustment sealing 2011-01-05 23:50:22 +01:00
Benjamin Otte
a28be2cc6c gail: Update adjustment usage for sealing 2011-01-05 23:50:22 +01:00
Benjamin Otte
801ba1c758 range: Update adjustment usage for sealing 2011-01-05 23:50:22 +01:00
Benjamin Otte
95e9f4c0c1 range: Rewrite attachment setters to use sealed API 2011-01-05 23:50:22 +01:00
Benjamin Otte
7210e6e1cd viewport: Update adjustment usage for sealing 2011-01-05 23:50:22 +01:00
Benjamin Otte
2b4bb071a3 viewport: Rewrite adjustment modification code for sealing 2011-01-05 23:50:21 +01:00
Benjamin Otte
a317499031 iconview: Update adjustment usage for sealing 2011-01-05 23:50:21 +01:00
Benjamin Otte
aa495f00b4 iconview: Use gtk_adjustment_configure() instead of g_object_set()
Simplifies code quite a bit apart from jsut making it more readable.
2011-01-05 23:50:21 +01:00
Benjamin Otte
3f1a65d6f5 iconview: Use set_[hv]adjustment_values() also when just changing upper
Simplifies the code quite a bit and the code is smart enough to not do
extra work if only one value changes.
2011-01-05 23:50:21 +01:00
Benjamin Otte
1af3a95e8c menu: Update adjustment usage for sealing 2011-01-05 23:50:21 +01:00
Benjamin Otte
8ea3372395 menu: Update adjustment usage for sealing
Call gtk_adjustment_set_value() instead of manually updating the value
in gtk_menu_scroll_to()
2011-01-05 23:50:21 +01:00
Benjamin Otte
f5a3af9b02 scrolledwindow: Update adjustment usage for sealing 2011-01-05 23:50:21 +01:00
Benjamin Otte
76b50a7eae spinbutton: Update adjustment usage for sealing
Also rename all variables named "adj" to "adjustment", like they're
called everywhere else.
2011-01-05 23:50:21 +01:00
Matthias Clasen
14a452ab50 More updates 2011-01-05 16:58:08 -05:00
Matthias Clasen
7799fbf239 Add GtkNumerableIcon
This is a subclass of GEmblemedIcon that can show a number or
short string as an emblem, overlayed on top of another emblem.

Written by Cosimo Cecchi
https://bugzilla.gnome.org/show_bug.cgi?id=637169
2011-01-05 16:33:15 -05:00
Tristan Van Berkom
9a80100e9a Fixed get_size() for GtkCellRendererText to clip to the input area
For ellipsize cells it's important to clip the result of get_size()
so that the returned required rectangle is indeed less than or equal
to the input rectangle... this is done so that GtkCellArea can accurately
paint focus on cells by calling gtk_cell_renderer_get_aligned_area().

Patch also adds assertions to gtk_cell_renderer_get_aligned_area() to
ensure this keeps working correctly.
2011-01-06 02:31:42 +09:00
Matthias Clasen
e41fb7703c Add padding to text attribute structs 2011-01-05 11:28:45 -05:00
Ivar Smolin
3d12aca2f9 [l10n] Updated Estonian translation 2011-01-05 18:14:40 +02:00
Matthias Clasen
67b8f22d8b Remove some dropped symbols from gtk3-sections.txt 2011-01-05 11:01:46 -05:00
Matthias Clasen
3109441c77 Update gtk symbols list 2011-01-05 11:01:45 -05:00
Milan Bouchet-Valat
d7af47d657 Fix doc about gtk_cell_layout_get_area()
Return value was copied and pasted from gtk_cell_layout_get_cells(),
which is obviously wrong.
2011-01-05 16:45:51 +01:00
Milan Bouchet-Valat
ebe9d075f4 Fix GtkCellArea:edit-widget to be of type GtkCellEditable
More correct, and consistent with gtk_cell_area_get_editable_widget().
2011-01-05 16:45:51 +01:00
Matthias Clasen
f377621eb7 Fix libgail-util doc build 2011-01-05 10:12:16 -05:00
Matthias Clasen
680b64d04a Fix some parameter name mismatches in the docs 2011-01-05 10:04:48 -05:00
Matthias Clasen
9f13312520 Fix file lists in the win32 backend 2011-01-05 09:58:46 -05:00
Matthias Clasen
1a8290f92c Update POTFILES some more 2011-01-05 09:43:45 -05:00
Matthias Clasen
57de2c84c4 Try again to fix the doc build 2011-01-05 09:38:36 -05:00
Matthias Clasen
2c9fad9ea8 Update POTFILES 2011-01-05 08:42:57 -05:00
Benjamin Otte
7d94127917 testutils: Update adjustment usage for sealing 2011-01-05 14:36:11 +01:00
Benjamin Otte
58fa980d12 textview: Update adjustment usage for sealing 2011-01-05 14:36:11 +01:00
Benjamin Otte
f65fa81e3a treeview: Update adjustment usage for sealing
Use getters instead of direct structure access.
2011-01-05 14:30:59 +01:00
Benjamin Otte
6ff585e189 treeview: Update adjustment usage for sealing
Use gtk_adjustment_set_upper() instead of doing its work manually.
2011-01-05 14:30:59 +01:00
Benjamin Otte
e93eb20794 treeview: Update adjustment usage for sealing
Use gtk_adjustment_configure() when toggling header visibility.
2011-01-05 14:30:58 +01:00
Benjamin Otte
bb64831987 tests: Update adjustment usage for sealing 2011-01-05 14:30:58 +01:00
Benjamin Otte
79cc672f3f toolitemgroup: Update adjustment usage for sealing 2011-01-05 14:30:58 +01:00
Benjamin Otte
c6697af962 layout: Update adjustment usage for sealing 2011-01-05 14:30:58 +01:00
Benjamin Otte
fdedc8e376 colorsel: Update adjustment usage for sealing 2011-01-05 14:30:58 +01:00
Benjamin Otte
beec484964 toolpalette: Update adjustment usage for sealing 2011-01-05 14:30:58 +01:00
Benjamin Otte
c43a31ea33 API: range: Remove update policy
It's unused and complicates code a lot. In particular, it breaks the
adjustment/range abstractions.
2011-01-05 14:30:58 +01:00
Matthias Clasen
e608cc4eaf Update gtk symbol list 2011-01-04 23:49:01 -05:00
Matthias Clasen
5c1502479a Fix gdk/abicheck.sh temporarily
The best fix for now is to just hardcode the X11 backend again
2011-01-04 23:40:41 -05:00
Matthias Clasen
c4f0bbb130 fix documentation build 2011-01-04 23:15:35 -05:00
Matthias Clasen
9ec7f51ac1 Update NEWS for 2.99 2011-01-04 22:49:54 -05:00
Matthias Clasen
c1773bf240 Bump version to 2.99 2011-01-04 22:01:48 -05:00
Matthias Clasen
369b64b427 Brush up configure output
Show used X extensions, print backends, etc.
Also make configure abort in some more cases when explicitly
enabled options are missing dependencies.
2011-01-04 21:57:21 -05:00
Matthias Clasen
c97652aeb4 Decouple GdkWindowCache life-cycle from GdkX11DragContext
By making window caches refcounted. This fixes problems with leaking
drag contexts, as experienced in
https://bugzilla.gnome.org/show_bug.cgi?id=637691
and
https://bugzilla.gnome.org/show_bug.cgi?id=144324

Based on a patch by drago01@gmail.com
2011-01-04 19:30:04 -05:00
Emilio Pozuelo Monfort
a108b2b08b Fix build when builddir != srcdir 2011-01-04 23:21:36 +00:00
Emilio Pozuelo Monfort
cfc70ca71b Fix introspection build when builddir != srcdir
So gdk/gdk.h can find gdk/gdkconfig.h, which is in $builddir
because it's generated.
2011-01-04 23:21:35 +00:00
Matthias Clasen
2690b8b924 Move GtkEntryCompletion docs inline
Based on a patch by Garrett Regier
https://bugzilla.gnome.org/show_bug.cgi?id=617322
2011-01-04 17:54:47 -05:00
Matthias Clasen
82c9013e01 Add gtkcellrenderer.sgml to .gitignore 2011-01-04 17:52:14 -05:00
Matthias Clasen
e9cc9d5c47 Small doc cleanups for GtkCellLayout 2011-01-04 17:42:30 -05:00
Matthias Clasen
b123bc41fd Move docs for gtkmain inline
At the same time, introduce a gtkmainprivate.h header
and various other cleanups.

Based on a patch by Tadej Borovšak.
https://bugzilla.gnome.org/show_bug.cgi?id=617471
2011-01-04 17:32:12 -05:00
Matthias Clasen
98440ad031 Remove gtktypeutils altogether
Based on patches by Javier Jardón.

https://bugzilla.gnome.org/show_bug.cgi?id=629955
2011-01-04 14:51:19 -05:00
Matthias Clasen
1283368b1b Remove GtkArg, GtkCallbackMarshal and GtkFunction
Based on a patch by Javier Jardón.

https://bugzilla.gnome.org/show_bug.cgi?id=629955
2011-01-04 13:49:37 -05:00
Javier Jardón
7e7d8c4ccc Remove deprecated gtk_quit_* API 2011-01-04 13:39:35 -05:00
Matthias Clasen
3e348181ed Move GtkExpander docs inline
Based on a patch by Garrett Regier.

https://bugzilla.gnome.org/show_bug.cgi?id=617327
2011-01-04 13:26:32 -05:00
Matthias Clasen
c770fdd08a Move GtkDrawingArea docs inline
Based on a patch by Garrett Regier.

https://bugzilla.gnome.org/show_bug.cgi?id=617315
2011-01-04 13:26:32 -05:00
Javier Jardón
72161a071f gtkmenuitem: Use private pointer instead G_TYPE_INSTANCE_GET_PRIVATE 2011-01-04 19:00:11 +01:00
Matthias Clasen
deab5ff1c9 Remove gtk_tree_menu_get_type from gtk3.types 2011-01-04 12:54:47 -05:00
Matthias Clasen
c009149670 Move GtkDialog docs inline
Based on a patch by Garrett Regier.

https://bugzilla.gnome.org/show_bug.cgi?id=617312
2011-01-04 12:54:47 -05:00
Javier Jardón
7245ca82f0 gtkmenu: Use private pointer instead G_TYPE_INSTANCE_GET_PRIVATE 2011-01-04 18:46:43 +01:00
Matthias Clasen
b5c6904c2f Drop explicit includes of gdkkeysyms.h
These are no longer needed. At the same time, port gtkimcontextsimpleseqs.h
to use the new GDK_KEY_ symbols.
2011-01-04 12:21:41 -05:00
Matthias Clasen
16877b4d7b Reduce includes of gtktypeutils.h to a minimum 2011-01-04 12:05:05 -05:00
Matthias Clasen
8bdb44fd47 Remove an outdated doc statement.
https://bugzilla.gnome.org/show_bug.cgi?id=553404
2011-01-04 11:55:56 -05:00
Matthias Clasen
e515bd4f71 Some more calendar doc additions
Proposed by Nikos Kouremenos

https://bugzilla.gnome.org/show_bug.cgi?id=321958
2011-01-04 11:44:09 -05:00
Matthias Clasen
336d355c2a Some documentation additions
Proposed by Bruno Piguet.

https://bugzilla.gnome.org/show_bug.cgi?id=559503
2011-01-04 11:36:42 -05:00
Matthias Clasen
bf2a6114ab Mention gvfs in the gtk_show_uri() docs
https://bugzilla.gnome.org/show_bug.cgi?id=622125
2011-01-04 11:25:40 -05:00
Matthias Clasen
ee89c605cf Some documentation improvements for gtk_init/gtk_parse_args
https://bugzilla.gnome.org/show_bug.cgi?id=562182
2011-01-04 11:18:42 -05:00
Matthias Clasen
0a069e1643 Document DESKTOP_STARTUP_ID use
Closes https://bugzilla.gnome.org/show_bug.cgi?id=165987
2011-01-04 10:58:04 -05:00
Szilárd Pfeiffer
f130db44ea gail: add/remove horizontal/vertical state based on orientation value
Now, these states are depending on the widget class.
2011-01-04 10:47:54 -05:00
Milan Bouchet-Valat
52e1722f35 GtkComboBox(Text): Add documentation about the entry 2011-01-04 10:36:08 -05:00
Matthias Clasen
06f6f7bd93 Move GtkEventBox docs inline
At the same time, add a private pointer, and generally clean
things up.
2011-01-04 10:33:33 -05:00
Tristan Van Berkom
68aa336f5f Removed TABs and trailing whitespace from GtkComboBox and GtkTreeMenu 2011-01-05 00:14:25 +09:00
Tristan Van Berkom
f5f822b91c Moved GtkMenuItem private functions to the private header. 2011-01-05 00:14:08 +09:00
Tristan Van Berkom
185744d402 Mentioned that GtkTreeMenu is based on some GtkComboBox code in the copyright header. 2011-01-04 23:37:14 +09:00
Tristan Van Berkom
4ff893979b Fixed conflicts after rebasing master into combo-refactor branch. 2011-01-04 23:37:14 +09:00
Tristan Van Berkom
d681aa7977 Fixed GtkComboBox to properly set tearoff state on delegate GtkTreeMenu.
This breakage was also the cause of not correctly positioning the child
menu over the selected item.
2011-01-04 23:37:13 +09:00
Tristan Van Berkom
80e427c857 Fixed gtktreemenu for new gtkcellareabox api. 2011-01-04 23:37:13 +09:00
Tristan Van Berkom
7b2d6e5cdf Make GtkTreeMenu a private class:
- Removed GtkTreeMenu from gtk-docs.sgml
  - Removed GtkTreeMenu from gtk3-sections.txt
  - Removed GtkTreeMenu from gtk.symbols
  - Make GtkTreeMenu apis prefixed with '_' (including _get_type()).
  - Updated GtkComboBox sources to use the private apis
  - Updated GtkCellView to not mention #GtkTreeMenu in gtk-doc statements
  - Updated tests/testtreemenu to not use a GtkTreeMenu but still
    show a very fancy GtkComboBox
  - Moved gtktreemenu.h to private headers section in the makefile.
  - Removed include of gtktreemenu.h from gtk.h
2011-01-04 23:37:13 +09:00
Tristan Van Berkom
6ae724c0d3 Added LISTMODE env var check to testcombo.c so that one can easily test listmode. 2011-01-04 23:37:13 +09:00
Tristan Van Berkom
57857f13df Added new constructors gtk_combo_box_new_with_area and gtk_combo_box_new_with_area_and_entry. 2011-01-04 23:37:13 +09:00
Tristan Van Berkom
b3ff60db71 Fixed GtkComboBox to let the cell-layout implementation handle <cell-packing> 2011-01-04 23:37:13 +09:00
Tristan Van Berkom
467fb0d7dc Fixed gtk_tree_menu_path_in_menu function which has been malfunctioning.
Now sensitivity is properly handled in the "apply-attributes" callback.
2011-01-04 23:37:12 +09:00
Tristan Van Berkom
01981311da Removed GtkComboBoxPrivate->minimum/natural_width members.
And updated gtk_combo_box_list_position() which is still waiting
for GtkTreeView to report natural width in order to properly do
non fixed width dropdown menus.
2011-01-04 23:37:12 +09:00
Tristan Van Berkom
ee02ac5863 Re-refactored GtkComboBox to not reorder the file.
Turns out reordering the file the way I did before put
me in an unmergable situation, now re-refactored the
combo and list-mode works again.
2011-01-04 23:37:12 +09:00
Tristan Van Berkom
f3de78a023 Fixing GtkComboBox breakage after merge, completing hand-merge of style-context GtkBorder issues (now it works again). 2011-01-04 23:37:11 +09:00
Tristan Van Berkom
0c9c031962 Fixing GtkCellView to not strcmp() in buildable_custom_tag_end()
GtkCellLayout function now returns boolean if one of the tags
it was interested in was handled.
2011-01-04 23:37:11 +09:00
Tristan Van Berkom
85609d124a Added clarification to the GtkCellView:cell-area-context documentation. 2011-01-04 23:37:11 +09:00
Tristan Van Berkom
613545f821 Fixed a broken gtk-doc statement in gtktreemenu.c 2011-01-04 23:37:11 +09:00
Tristan Van Berkom
1f1e94739b Added remaining missing gtk-doc statements for GtkCellView. 2011-01-04 23:37:11 +09:00
Tristan Van Berkom
e8503f600e Added GtkTreeMenu to gtk+ documentation and updated sections for newly added GtkCellView apis. 2011-01-04 23:37:11 +09:00
Tristan Van Berkom
7a673b2ed1 Added all documentation for new GtkTreeMenu 2011-01-04 23:37:10 +09:00
Tristan Van Berkom
f358dfbccc Added new symbols for GtkTreeMenu and added GtkCellView apis to gtk.symbols 2011-01-04 23:37:10 +09:00
Tristan Van Berkom
c8b63bfe03 Removed calls to gtk_cell_area_context_sum_*() since they went away. 2011-01-04 23:37:10 +09:00
Tristan Van Berkom
b57095412b Added aligned food menu test to testcombo.c 2011-01-04 23:37:10 +09:00
Tristan Van Berkom
15ac4be60f Fixed combo-refactor branch for recent switch to gtk_cell_area_context_reset() api. 2011-01-04 23:37:10 +09:00
Tristan Van Berkom
ab3b75aeb1 Adding a combo box to testtreemenu to show the GtkTreeMenu at work as a combo box delegate. 2011-01-04 23:37:10 +09:00
Tristan Van Berkom
1193c30e15 Revert "Added gtk_tree_menu_get_area()."
This reverts commit d32d7c8f9c4d2bcd7c5c206c09273ce67ed20df4.
2011-01-04 23:37:10 +09:00
Tristan Van Berkom
b32ee4fde3 Added orientation control to the treemenu test. 2011-01-04 23:37:09 +09:00
Tristan Van Berkom
bd1b4ddf75 Updated GtkCellView for new gtk_cell_area_context_allocate() api. 2011-01-04 23:37:09 +09:00
Tristan Van Berkom
26a6965d26 Aligned prototypes in gtkcellview.h 2011-01-04 23:37:09 +09:00
Tristan Van Berkom
f101bf4a2d Added gtk_tree_menu_get_area(). 2011-01-04 23:37:09 +09:00
Tristan Van Berkom
2e2eb786d3 Make GtkCellView orientable and only allocate the cell area in the orientable orientation (unless its a "fit-model" cellview which gets both). 2011-01-04 23:37:09 +09:00
Tristan Van Berkom
6ab29f5fd8 Removing apis from GtkCellView
APIS: gtk_cell_view_get_desired_width_of_row &
gtk_cell_view_get_desired_height_for_width_of_row were introduced in
3.0 only for use from GtkComboBox and now the refactored cellview
does this transparently and just requests the right thing through
GtkWidget apis.
2011-01-04 23:37:09 +09:00
Tristan Van Berkom
238bf5cbaa Oops one of my last commits disabled some tests, re-enabling them. 2011-01-04 23:37:09 +09:00
Tristan Van Berkom
caf1d57fd3 Fixed inserting and deleting rows for submenus of GtkTreeMenu 2011-01-04 23:37:08 +09:00
Tristan Van Berkom
4a5be7c74e Getting closer to updating the treemenu view properly from the model signals 2011-01-04 23:37:08 +09:00
Tristan Van Berkom
39cf1576d7 Fixed GtkCellView to always allocate when in fit-model mode. 2011-01-04 23:37:08 +09:00
Tristan Van Berkom
83c69f4cf3 Implementing GtkComboBox using GtkTreeMenu !
First iteration at implementing combo box using a delegate
treemenu, almost everything is working. Still need to finalize
sensitivity issues in GtkTreeMenu (and should go ahead and pass
through GtkComboBox code with a fine comb...).
2011-01-04 23:37:08 +09:00
Tristan Van Berkom
e1ecd34ce1 Added "fit-model" and "draw-sensitive" properties to GtkCellView
- "fit-model" decides that the cellview should request space for
   the entire treemodel, this ensures the cell view displayed on
   a combo box will not spuriously change size when the selected
   item changes.

 - "draw-sensitive" forces cell area to render cells sensitive
   even if they are insensitive in the model.
2011-01-04 23:37:08 +09:00
Tristan Van Berkom
d48690c32c Make GtkTreeMenu update menu item sensitivity when "apply-attributes" signal is fired for a row in the menu. 2011-01-04 23:37:08 +09:00
Tristan Van Berkom
84a726c3ce Support grid mode in GtkTreeMenu
Added properties "wrap-width", "row-span-column" and "column-span-column"
to allow grid style menus from treemodels. Handling row data changes
appropriately.
2011-01-04 23:37:07 +09:00
Tristan Van Berkom
e628345394 Fixed GtkCellView to call cell_view_set_model() and disconnect signals at dispose time. 2011-01-04 23:37:07 +09:00
Tristan Van Berkom
de59f05ccd Added gtk_tree_menu_set/get_tearoff to allow the root menu to have a tearoff item
Combo boxes expose an "add-tearoffs" feature to add a tearoff item to the root of the combo menu, added this feature to GtkTreeMenu to achieve this (and updated the testcase).
2011-01-04 23:37:07 +09:00
Tristan Van Berkom
3a56f8814f Reduced code size in GtkTreeMenu by only implementing GtkCellLayout->get_area method for the GtkCellLayout iface. 2011-01-04 23:37:07 +09:00
Tristan Van Berkom
b6b810ba51 Reduced code in GtkCellView by just implementing the GtkCellLayout->get_area method. 2011-01-04 23:37:06 +09:00
Tristan Van Berkom
438b0f7c9b Connected to GtkTreeModel signals in GtkTreeMenu
Now the GtkTreeMenu properly updates its hierarchy when the underlying
model data changes (row inserted/deleted or reordered). Also some unneeded
hackery was removed, all size calculations are delegated to the cellviews.
2011-01-04 23:37:06 +09:00
Tristan Van Berkom
88ec6a62ef GtkCellView now watches the "row-changed" signal.
When the "row-changed" signal on the model is trapped, if the row which
changed is the displayed row then the context is flushed and sizes are
recalculated for every area in the same context.
2011-01-04 23:37:06 +09:00
Tristan Van Berkom
9ffaae5022 Added GtkTreeMenuHeaderFunc to decide if a submenu gets a leaf header.
GtkComboBox needs treemenus to allow selection of all leafs including
rows which may have children, this allows the combobox or combobox user
to decide which row that has children can also be selectable as a header
leaf of the submenu. Test case testtreemenu updated to reflect this.
2011-01-04 23:37:06 +09:00
Tristan Van Berkom
6d8dfd5546 Fixed GtkCellView to not clear the layout when disposing
The layout belongs the underlying area which may be shared across
views and treemenus, let the cells be destroyed when the area is finally
destroyed.
2011-01-04 23:37:06 +09:00
Tristan Van Berkom
53bdca9dae Adding more "small" submenus to testtreemenu 2011-01-04 23:37:06 +09:00
Tristan Van Berkom
1cacae9cc4 Fixed trailing ';' on if statement in gtkmenuitem.c 2011-01-04 23:37:06 +09:00
Tristan Van Berkom
aef55bb629 Added submenus to tests/testtreemenu 2011-01-04 23:37:06 +09:00
Tristan Van Berkom
963db86d23 Fixed GtkTreeMenu to not infinitely recurse when building submenus.
GtkTreeMenu needs to only populate it's submenus when set_root()
is called, we were populating it when the model is set which cause
the tree to be infinitely populated as the root is NULL by default.

Also call gtk_menu_set_reserve_toggle_thingy (FALSE) to not reserve
space for the toggle size.
2011-01-04 23:37:06 +09:00
Tristan Van Berkom
c690402446 Fixed GtkMenuItem to reserve the actual arrow size and spacing
GtkMenuItem was reserving arrow size based on it's requested height,
now base the submenu arrow size on the actual arrow size and spacing.
2011-01-04 23:37:06 +09:00
Tristan Van Berkom
26c3f1a26d Adding GtkTreeMenu class.
Added GtkTreeMenu class to automatically render
a GtkTreeModel into a GtkMenu hierarchy (will be
used by GtkComboBox for its dropdown menus). Included
an accompanying testcase tests/testtreemenu
2011-01-04 23:37:06 +09:00
Tristan Van Berkom
f15a589651 Added gtk_menu_item_set/get_reserve_indicator.
This is needed by GtkTreeMenu to ensure that child menu items
reserve space for the submenu indicator even if they dont have
submenus... in this way we ensure the same size of all cell
areas in the menu items at allocation/request time.
2011-01-04 23:37:06 +09:00
Tristan Van Berkom
5e8e4429c7 Fixing GtkCellView PROP_CELL_AREA_CONTEXT property id
... and renaming some internal variables.
2011-01-04 23:37:06 +09:00
Tristan Van Berkom
988200800c Added gtk_cell_view_new_with_context(). 2011-01-04 23:37:06 +09:00
Tristan Van Berkom
b70589b6a4 Reimplemented GtkCellView using an internal GtkCellArea.
Added construct GtkCellArea and GtkCellAreaContext properties,
the context property allows putting multiple cellviews into the
same size request context.
2011-01-04 23:37:05 +09:00
Tristan Van Berkom
58cdd6d38e Removed GtkMenuItem->show_submenu_indicator flag
The show_submenu_indicator flag was explicitly set in various
places from GtkMenu/GtkMenuBar at request times, since the
GtkMenuItem already checks the parent type for GTK_IS_MENU_BAR()
in various places, removed this flag in favor of just checking
the parent type (only in the interest of better readable code).
2011-01-04 23:37:05 +09:00
Matthias Clasen
7352a166b6 Formatting fixes and whitespace cleanups 2011-01-04 02:21:38 -05:00
Matthias Clasen
32bfc980c1 Remove pack property altogether 2011-01-04 02:06:03 -05:00
Matthias Clasen
723fedef8b Remove pack consideration from tab drawing 2011-01-04 02:03:03 -05:00
Matthias Clasen
4ea886aea1 Don't consider pack when allocating tabs 2011-01-04 01:57:22 -05:00
Matthias Clasen
f9d6bc6cca Drop pack consideration from gtk_notebook_search_page 2011-01-04 01:39:18 -05:00
Matthias Clasen
a7bb193377 Drop internal function to find page position 2011-01-04 01:36:09 -05:00
Matthias Clasen
f838ecf9f0 Remove pack consideration from tab dnd 2011-01-04 01:35:52 -05:00
Matthias Clasen
88501d527d Remove pack consideration from tab reordering 2011-01-04 01:23:05 -05:00
Matthias Clasen
03b37a2e54 Remove pack arguments from some internal functions
This removes pack from gtk_notebook_{set,query}_tab_label_packing.
2011-01-04 01:11:28 -05:00
Matthias Clasen
08a99e9ab3 Remove the deprecated GtkNotebook:tab-pack child property 2011-01-04 00:57:34 -05:00
Matthias Clasen
98b140e7b5 Don't use GtkNotebook:tab-pack in testnotebookdnd 2011-01-04 00:55:50 -05:00
Matthias Clasen
c874bba0e1 GtkNotebook: fix reference to no-longer-exiting function in docs 2011-01-03 22:55:38 -05:00
Matthias Clasen
72b69ae2ed Don't use page_size in GtkSpinButton
It ought to be 0 anyway, but don't use it.

This puts bug 307963 to rest.
2011-01-03 21:51:58 -05:00
Matthias Clasen
a975d62071 Rename gtk-update-icon-cache and gtk-builder-convert back
In bug 635207, it was pointed out that it is a bad idea to
rename these tools purely in the name of parallel-installability,
since it forces dependencies to make a choice between running
gtk-update-icon-cache and gtk-update-icon-cache-3.0 (or both ?!).

So, we rename these utilities back to their un-suffixed names
and rely on distributors to resolve the conflict between GTK+ 2.x
and GTK+ 3.0 packages, which can be done e.g. by dropping the
utilities from the gtk3 packages and add a gtk3 -> gtk2 dependency.
2011-01-03 21:35:23 -05:00
Carlos Garnacho
7266d0f11f Make GtkPathBar use ::style-updated 2011-01-04 03:06:27 +01:00
Carlos Garnacho
c3b5b3531c GtkPaned: Remove unneeded call 2011-01-04 03:06:26 +01:00
Carlos Garnacho
f9a5c14ac0 Make GtkOffscreenWindow use GtkStyleContext 2011-01-04 03:06:26 +01:00
Carlos Garnacho
7e2dea1dff GtkNotebook: remove unneeded call 2011-01-04 03:06:25 +01:00
Carlos Garnacho
61691117dc GtkMisc: Remove unneeded calls 2011-01-04 03:06:24 +01:00
Carlos Garnacho
905604550a Make GtkMessageDialog use GtkStyleContext 2011-01-04 03:06:24 +01:00
Carlos Garnacho
166b709c7f Make GtkLinkButton use ::style-updated 2011-01-04 03:06:23 +01:00
Carlos Garnacho
80e115331c GtkInvisible: Avoid chaining up in ::style-updated 2011-01-04 03:06:22 +01:00
Carlos Garnacho
7b3de2d552 Make GtkHandleBox size request code use GtkStyleContext for padding 2011-01-04 03:06:22 +01:00
Carlos Garnacho
b062a583d3 Make GtkFixed use GtkStyleContext 2011-01-04 03:06:21 +01:00
Carlos Garnacho
14a5c0b9ff Make GtkFileChooser use GtkStyleContext 2011-01-04 03:06:21 +01:00
Carlos Garnacho
8e18c2cfd2 Make GtkFileChooserButton use ::style-updated 2011-01-04 03:06:21 +01:00
Carlos Garnacho
96d8f85dcc Make DnD code use GtkStyleContext for the highlight rectangle. 2011-01-04 03:06:20 +01:00
Carlos Garnacho
e02cbf4770 Make GtkEntryCompletion use GtkStyleContext 2011-01-04 03:06:20 +01:00
Carlos Garnacho
e4c509837f GtkEntry: get font description from GtkStyleContext 2011-01-04 03:06:20 +01:00
Carlos Garnacho
55145e0e4e GtkEntry: Remove unneeded calls 2011-01-04 03:06:19 +01:00
Carlos Garnacho
c180edd80c Make GtkDrawingArea use GtkStyleContext 2011-01-04 03:06:19 +01:00
Carlos Garnacho
552c4c78f6 GtkExpander: remove unneeded call 2011-01-04 03:06:19 +01:00
Carlos Garnacho
6c21f3d8e6 Remove unneeded/deprecated call from size requisition code 2011-01-04 03:06:19 +01:00
Carlos Garnacho
c296d11ac3 GtkToolItem: Remove unneeded call 2011-01-04 03:06:19 +01:00
Carlos Garnacho
be0ebc9f5a Make GtkDialog use ::style-updated 2011-01-04 03:06:18 +01:00
Carlos Garnacho
99791d183c Make GtkCellView use GtkStateFlags 2011-01-04 03:06:18 +01:00
Carlos Garnacho
554e649a68 Make GtkTooltip use GtkStyleContext 2011-01-04 03:06:17 +01:00
Carlos Garnacho
41389cb435 Make GtkWin32EmbedWidget use GtkStyleContext 2011-01-04 03:06:17 +01:00
Carlos Garnacho
665a94e0f3 Make GtkPlug use GtkStyleContext 2011-01-04 03:06:15 +01:00
Carlos Garnacho
81eb953206 Make GtkRecentChooser use GtkStyleContext 2011-01-04 03:06:14 +01:00
Carlos Garnacho
732730425a GtkSeparatorToolItem: remove unneeded call 2011-01-04 03:06:13 +01:00
Carlos Garnacho
ddd12f3f19 Make GtkSocket use GtkStyleContext 2011-01-04 03:06:12 +01:00
Carlos Garnacho
cb21085187 GtkSwitch: remove deprecated call. 2011-01-04 03:06:11 +01:00
Carlos Garnacho
f4cc2c6f17 GtkToolbar: remove deprecated call 2011-01-04 03:06:11 +01:00
Carlos Garnacho
a090de1780 Make GtkToolButton use ::style-updated 2011-01-04 03:06:10 +01:00
Carlos Garnacho
24db0283ad Update GtkTrayIcon to GtkStyleContext 2011-01-04 03:06:10 +01:00
Carlos Garnacho
dd8887c07d Compress all ::style-updated prior to ::realize
This is done to avoid early emission of this signal, that was
causing warnings during GtkDialog construction.
2011-01-04 03:06:09 +01:00
Carlos Garnacho
7981869308 Update GtkAssistant to GtkStyleContext 2011-01-04 03:06:08 +01:00
Carlos Garnacho
00a80c9bdc Update GtkAboutDialog to GtkStyleContext 2011-01-04 02:56:26 +01:00
Carlos Garnacho
804e8a0572 Update GtkToolPalette to GtkStyleContext. 2011-01-04 02:56:26 +01:00
Carlos Garnacho
badbef33ab GtkWindow: remove unneeded call
gtk_widget_style_attach() is no longer necessary.
2011-01-04 02:56:25 +01:00
Diego Escalante Urrelo
d0a3846eb1 gtkenums: add GTK_STATE_FLAG_NORMAL = 0
Allows a more readable omission of GtkStateFlag arguments.

Bug #638608
2011-01-03 20:37:35 -05:00
Matthias Clasen
83058bf2ca Use AM_V_GEN in a few more places
Based on a patch by Javier Jardón in

https://bugzilla.gnome.org/show_bug.cgi?id=621720
2011-01-03 20:33:36 -05:00
Matthias Clasen
411cda4ff4 Keep an explicit dep on cairo in the gdk pc file 2011-01-03 18:12:54 -05:00
Matthias Clasen
86a7ae67bc GtkColorButton: trivial doc and formatting fixes 2011-01-03 17:18:43 -05:00
Javier Jardón
55016f72f2 gtktexttag: Move public members to private header
And fix gail to not poke at GtkTextTag internals
2011-01-03 15:05:46 -05:00
Matthias Clasen
6a11c59290 Release GtkApplication earlier
GtkWindow was only releasing the application in finalize, causing
problems for language bindings. Now we release it already in destroy
(and then again in finalize for good measure).

https://bugzilla.gnome.org/show_bug.cgi?id=638580
2011-01-03 13:11:55 -05:00
Frederic Crozat
b673e5b1ee Scale down print dialog size
Shrink the preview display a little to make the print dialog
fit on a typical netbook screen.

https://bugzilla.gnome.org/show_bug.cgi?id=637958
2011-01-03 12:51:22 -05:00
Matthias Clasen
b555be06b7 Make styleexamples work
If we are keeping this code in source control, might as well
make it work.

https://bugzilla.gnome.org/show_bug.cgi?id=638179
2011-01-03 12:34:23 -05:00
Matthias Clasen
c7f39eb07e add gtk_selection_data_get_data_with_length API which can be bound
* gtk_selection_data_get_data can't be bound because we need to know the length
  of data inorder to marshal it

https://bugzilla.gnome.org/show_bug.cgi?id=635299
2011-01-03 12:13:30 -05:00
Julien Cristau
d211c8af6b gdk/x11: don't select RANDR events if the extension is missing
Prevents an Xlib warning on Xnest, or Xorg with xinerama, or other
non-RANDR-capable xserver.  Reintroduce a have_randr12 field in
GdkDisplayX11 to avoid having to call XRRQuery{Extension,Version} twice,
and don't select randr 1.2 events if that's false.

https://bugzilla.gnome.org/show_bug.cgi?id=634711

Signed-off-by: Julien Cristau <jcristau@debian.org>
2011-01-03 12:13:30 -05:00
Kristian Høgsberg
317f8baf60 configure.ac: Consolidate gdk backend specific checks and code
Only the big chunk of x11 checks is left further down in the file,
but that depends on variables and checks above it, so we'll leave that in
place for now.
2011-01-03 11:59:45 -05:00
Kristian Høgsberg
9c002cf2c1 Silence automake warnings
When commenting out a binary, also comment out the related variables.
Don't include Makefile.decl in gtk-doc Makefile.am's as they disagree
on assigning to EXTRA_DIST.
2011-01-03 11:59:45 -05:00
Kristian Høgsberg
cacee7e7a3 configure.ac: Support multiple GDK backends in one build 2011-01-03 11:59:45 -05:00
Benjamin Otte
ae7e5fc2d1 gdk: Simplify code
Move a previous vfunc into the only caller.
2011-01-03 17:44:24 +01:00
Benjamin Otte
6c39cade16 gdk: Get rid of GdkDisplayDeviceHooks
Move the only user to call the function directly and copy the called
function over.
2011-01-03 17:44:24 +01:00
Benjamin Otte
6e18276f52 gdk: Move get_device_state out of the display hooks
Previous callers now use _gdk_device_query_state() directly.
2011-01-03 17:44:24 +01:00
Benjamin Otte
2267602295 gdk: Simplify code
Fold the previous vfunc into the only caller.
2011-01-03 17:44:24 +01:00
Benjamin Otte
8d2104fdc9 gdk: Move window_get_device_position function out of the device hooks 2011-01-03 17:44:24 +01:00
Matthias Clasen
c07f9c040f Some configure.ac cleanups
Change from --with-xinput to --enable-xinput, and consistently
use AC_HELP_STRING. Also document the packagekit options in the
docs.
2011-01-03 11:29:26 -05:00
Benjamin Otte
d72d19d247 API: gdk: Remove gdk_display_set_device_hooks()
There's no usecase for them, so remove them before we have to commit to
keeping an API.

Make the hooks private for now, actually removing them will come in
followup patches.
2011-01-03 16:51:38 +01:00
Benjamin Otte
ff1ad99dce API: gdk: Remove gdk_display_set_pointer_hooks()
Its usecase was GERD - http://testbit.eu/~timj/historic/gerd/ - and that
project is long since dead.

I couldn't find any app using it after asking around and googling either.
2011-01-03 16:35:10 +01:00
Benjamin Otte
36a15720b1 API: gdk: Remove gdk_set_pointer_hooks()
Its usecase was GERD - http://testbit.eu/~timj/historic/gerd/ - and that
project is long since dead.

It has been superseded in GTK 2.2 by GdkDisplayPointerHooks anyway.
2011-01-03 16:25:18 +01:00
Benjamin Otte
d1ecd28695 cups: Someone can neither type, read compiler output and run tests.
Being able to do one of these would have caught this.
2011-01-03 16:25:18 +01:00
Matthias Clasen
7537907baf cups printbackend: create a pdf surface when appropriate
This should address bug 560177.
Based on a patch by Adrian Johnson.
2011-01-03 09:34:04 -05:00
Matthias Clasen
a493fad990 Remove gtk_printer_new from gtkprintbackend.h
The function has been in gtkprinter.h forever.
2011-01-03 08:14:34 -05:00
Adrian Johnson
ebcd0ba233 Set file GtkPrinter accepts_pdf/ps based on selected format 2011-01-03 08:14:34 -05:00
Adrian Johnson
856cc65f63 Set "accepts-pdf" property to true only if supported by the print backend 2011-01-03 08:14:34 -05:00
Carlos Garcia Campos
3fff4bd091 GtkRadioButton: Use "radio" style class instead of "check" 2011-01-03 13:09:00 +01:00
Matthias Clasen
83f5e4868c Drop no-longer-used migration docs 2011-01-02 23:57:03 -05:00
Nguyễn Thái Ngọc Duy
cf752786f3 gdkdnd-x11.c: fix building without HAVE_XCOMPOSITE
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
2011-01-02 23:40:00 -05:00
Nguyễn Thái Ngọc Duy
98a30bbf3e gdkcursor-x11.c: fix building without HAVE_XCURSOR
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
2011-01-02 23:39:55 -05:00
Matthias Clasen
85fe6cb2c4 Move GtkSpinButton docs inline
...and modernize the examples at the same time.

This fixes a problem pointed out in bug 638193.
2011-01-02 23:30:02 -05:00
Matthias Clasen
1a87dfdf6d Fix list handling in gdk_x1_display_init_input
Pointed out in bug 638386.
2011-01-02 21:41:30 -05:00
Kjartan Maraas
7ee697ab8d Updated Norwegian bokmål translation from Torstein Adolf Winterseth 2011-01-02 19:32:29 +01:00
Kjartan Maraas
8a9457cb80 Updated Norwegian bokmål translation from Torstein Adolf Winterseth 2011-01-02 19:31:56 +01:00
John Ralls
acf13456b1 Fix refresh of static autorelease_pool so that it doesn't happen in gtk-nested loops. 2011-01-02 10:23:20 -08:00
Hans Breuer
23506c0e44 c99ism: declaration in the mid of a block 2011-01-02 13:33:13 +01:00
Hans Breuer
53c1b21ffb win32: disable gdk_display_get_default ()->core_pointer
I neither know how to trigger this code nor what would be
the suggested replacement API. BUt it's the last thing stopping
me to compile GTK3 for win32.
2011-01-02 13:33:12 +01:00
Hans Breuer
5fe027500e win32: include gtkprivate.h for win32 GTK_DATA_PREFIX 2011-01-02 13:33:11 +01:00
Hans Breuer
d4c4db6a7c Avoid C99 sinf() 2011-01-02 13:33:10 +01:00
Hans Breuer
67b4eff921 win32: use GtkSocketPrivate 2011-01-02 13:33:09 +01:00
Hans Breuer
a2b1da064a win32: ported backend specific code to now backend specific API 2011-01-02 13:33:08 +01:00
Hans Breuer
cfeaba9d62 Protect Unix specific print functions with G_OS_UNIX
Although gtk.symbols seems to be unused on Unix now it still
must not contain unprotected Unix only functions, because they
can not be exported on win32.
2011-01-02 13:33:07 +01:00
Hans Breuer
95213b3f04 win32: update msvc build 2011-01-02 13:33:06 +01:00
Hans Breuer
1d838f586c win32: gdk3 resurrection
There are sure regressions but basic stuff seems to be working
again after all the API breakage done with comments like
"Win32 and Quartz need to be ported still."
2011-01-02 13:33:04 +01:00
Hans Breuer
fc122305d0 Protect inclusion of unistd.h 2011-01-02 13:29:23 +01:00
Hans Breuer
cdb998dea6 Fix line endings
The unix version had CrLf which results in modified by checkout
under windows.
2011-01-02 13:08:06 +01:00
Daniel Nylander
54cd607393 Updated Swedish translation 2010-12-31 01:42:34 +01:00
Daniel Nylander
ac8a10f6c4 Updated Swedish translation 2010-12-30 21:15:44 +01:00
Jorge González
3810e4da49 Updated Spanish translation 2010-12-29 22:51:20 +01:00
Fran Diéguez
a6168288f8 Solved bug 638231 in Galician translations 2010-12-29 13:05:44 +01:00
Tristan Van Berkom
c234313a25 Make GtkCheckButton's label left aligned by default.
Since we no longer limit the label's allocation to the minimum, now
we take a saner approach to left aligning the label.
2010-12-29 18:20:32 +09:00
Tristan Van Berkom
a6a97ad442 Fixed unused variable in GtkCheckButton. 2010-12-29 16:30:38 +09:00
Tristan Van Berkom
21aef5b77f Fixed generic height-for-width implementation of GtkBin to consider request adjustments
Since "->adjust_size_request()" was added, it became important for GtkBin's
generic height-for-width implementation to further check the requests
using this vfunc.
2010-12-29 16:26:05 +09:00
Tristan Van Berkom
f519da41cf Make GtkCheckButton allocate all remaining space to it's child instead
of limiting it to it's minimum size.

This fixes height-for-width labels inside a GtkCheckButton, for some
reason GtkCheckButton was limiting the child allocation to the child's
minimum request, probably for the sake of virtual left-alignment of
the child label to be beside the checkmark. This should be done by
other means if nescesarry.
2010-12-29 16:19:48 +09:00
Tristan Van Berkom
2fe4e6a815 Added proper height-for-width implementation to GtkAlignment.
For "padding" cases, it would be ok to fallback on GtkBin class
implementation of height-for-width. However in cases where the
user set's an xscale/yscale the GtkAlignment needs to take care
of properly adjusting the for_size when querying it's child.
2010-12-29 16:18:04 +09:00
Tristan Van Berkom
7fab89d93f Removed checks in gtksizerequest.c
Checks were in place to ensure that widgets never request taller
or wider than screen size. This was there to test a theory about
scrolled window children functioning correctly with dynamic content
however it breaks GtkViewport children which can generally return a
value taller than screen height intentionally, GtkViewport uses this
value to update the adjustments.
2010-12-29 16:12:11 +09:00
Carlos Garnacho
ac00e77e54 Make GtkToolbar use GtkStyleContext 2010-12-28 19:25:49 +01:00
Carlos Garnacho
a3a9c61a5a Make GtkHandleBox use GtkStyleContext 2010-12-28 19:25:49 +01:00
Carlos Garnacho
029fb53ac2 Make GtkSwitch use GtkStyleContext 2010-12-28 19:25:48 +01:00
Carlos Garnacho
18b333bfe7 Make GtkFileChooserEntry make GtkStyleContext 2010-12-28 19:25:48 +01:00
Carlos Garnacho
b2e8992291 Make GtkProgressBar use GtkStyleContext 2010-12-28 19:25:48 +01:00
Carlos Garnacho
e3457a83cf Make GtkScrolledWindow use GtkStyleContext 2010-12-28 19:25:48 +01:00
Carlos Garnacho
53a4feadf0 Make GtkEventBox use GtkStyleContext. 2010-12-28 19:25:47 +01:00
Carlos Garnacho
06462b98a0 Make GtkFrame use GtkStyleContext. 2010-12-28 19:18:57 +01:00
Carlos Garnacho
7a623988e5 Fix leak in GtkStyle. 2010-12-28 19:06:46 +01:00
Tristan Van Berkom
05254766c7 Avoid rendering frames when shadow type argument is GTK_SHADOW_NONE in
gtk_paint_* functions.
2010-12-28 23:15:39 +09:00
Ignacio Casal Quinteiro
9d64a5833d Fix docs. 2010-12-28 11:18:01 +01:00
Matthias Clasen
7032996c76 Remove bashisms from configure.ac
Pointed out by Koop Mast in
https://bugzilla.gnome.org/show_bug.cgi?id=637974
2010-12-27 19:24:05 -05:00
Benjamin Otte
42fbccd3d2 API: gdk: Remove gdk_device_set_source()
The source of a device is not changeable.
2010-12-27 20:08:50 +01:00
Benjamin Otte
e4cc259111 testgtk: Don't use deprecated APIs 2010-12-27 19:43:24 +01:00
Benjamin Otte
7ab7422821 testgtk: Use the relevant device to query the widget to snapshot
Also gets rid of deprecated functions.
2010-12-27 19:27:16 +01:00
Benjamin Otte
9746991548 API: gdk: Make gdk_display_get_window_at_device_position() a device API
It's now called gdk_device_get_window_at_position(). It doesn't make
sense to keep device-specific API part of the display.
2010-12-27 18:46:41 +01:00
Benjamin Otte
0c285341a9 API: gdk: gdk_display_get_device_state() => gdk_device_get_position()
The API was not display-specific, but belonged to the device. Also, we
didn't find a user of the modifier mask, so we dropped it.
2010-12-27 18:46:41 +01:00
Alejandro Piñeiro
586283ecbb [gail] Clean the code to check the redundan object on the show watcher
The watcher doesn't add a window if is a redundant object. This
patch fixes two things:

 * The check was made twice.
 * It uses a check with the string "redundant object", when the
   defined role ATK_ROLE_REDUNDANT_OBJECT is available
2010-12-27 16:23:55 +01:00
Alejandro Piñeiro
e1029b907c [gail] Proper connection to a toplevel window destroy signal
Only connect to the destroy of a toplevel window if it was
really added to the toplevel list of windows.

The destroy callback was added to remove the window from
the toplevel list. The callback doesn't cause a error,
but would iterate on the toplevel list without success.
2010-12-27 13:21:09 +01:00
Matthias Clasen
48b47971b5 Fix some issues with initial setup of GdkX11DisplayManager
We need to defer setting the default display until the
GdkDisplay is fully initialized. Also, short-circuit some
encoding conversions when creating windows, to avoid an
implicit dependency on the display being in the list of
displays yet.
2010-12-27 01:02:52 -05:00
Matthias Clasen
59ea137fa0 GtkTreeView: Don't use deprecated grab api 2010-12-26 23:40:59 -05:00
Matthias Clasen
51f7e42650 Remove pointless sealing from GtkTextMark 2010-12-26 23:17:10 -05:00
Matthias Clasen
0c4a0dae6d Remove pointless sealing from GtkTextChild 2010-12-26 22:58:57 -05:00
Matthias Clasen
9dee9a84d0 Removed sealed members from GtkMenuItem 2010-12-26 22:58:57 -05:00
A S Alam
05eb55dcfc update Punjabi Properities file 2010-12-27 07:30:19 +05:30
Benjamin Otte
45d98d108e tooltip: Don't use deprecated APIs 2010-12-27 01:05:40 +01:00
Benjamin Otte
a5f493bfad notebook: Use nondeprecated API to query coordinates 2010-12-27 00:50:30 +01:00
Benjamin Otte
9bab53f1bd hsv: Fix gcc warnings 2010-12-27 00:45:56 +01:00
Matthias Clasen
5bc0cf1a19 Fix some more typos 2010-12-25 00:29:23 -05:00
Matthias Clasen
8f816d7c3b Fix a few typos 2010-12-25 00:26:22 -05:00
Matthias Clasen
27ce9421d0 Fix up GDK docs 2010-12-25 00:02:39 -05:00
Matthias Clasen
436e75c34c Add deprecation guards for deprecated grab APIs 2010-12-24 20:01:24 -05:00
Matthias Clasen
bde1d072e5 Don't use gdk_{pointer,keyboard}_grab
Instead use gdk_device_grab.
2010-12-24 20:00:19 -05:00
Matthias Clasen
1d41b98cf8 Add deprecation guards for deprecated GdkAppLaunchContext API
Also adapt the docs to not use deprecated API.
2010-12-24 17:37:00 -05:00
Matthias Clasen
1e13b42b9b Avoid some gtk-doc warnings 2010-12-24 17:36:19 -05:00
Matthias Clasen
29eb3fba5f Fix gdk_x11_display_text_property_to_text_list
This was an incomplete attempt to get rid of the custom free function.
Lets just keep it for now. Bug 637849, patch by Dan Winship.

Also add a test case for this function.
2010-12-24 16:27:31 -05:00
Matthias Clasen
92f163d40a Consistently hide class structs
And, since we've decided to keep the structs private, there is
no point in having the standard GObject clas macros anymore either.
2010-12-24 15:54:12 -05:00
John Ralls
806b6dfa08 Rename GdkQuartzWindow.h and .c to GdkQuartzNSWindow.h and .c
Normally HFS+ (the MacOSX file system) isn't case-sensitive, so having both
GtkQuartzWindow.h and gtkquartzwindow.h causes the latter to overwrite the
former during git pull, breaking the build.
2010-12-24 11:29:08 -08:00
Carlos Garnacho
0f0512aee3 Use gtk_style_context_get_font() in GtkSpinButton 2010-12-24 20:20:40 +01:00
Carlos Garnacho
92102c3bf4 Make GtkSeparator use GtkStyleContext 2010-12-24 19:38:14 +01:00
Carlos Garnacho
7c35994bda Make GtkPaned use GtkStyleContext 2010-12-24 19:38:06 +01:00
Carlos Garnacho
760d6d1e78 Do not set "entry" class in spinbutton buttons.
Also, fix an unpaired gtk_style_context_save() call.
2010-12-24 19:37:56 +01:00
Carlos Garnacho
2bd221d215 Bug 637910 - GtkSpinner - does not animate
Fix widget-to-window coordinates translation in the
style context animation code.
2010-12-24 19:37:49 +01:00
Carlos Garnacho
7f099a9a23 Make GtkArrow use GtkStyleContext 2010-12-24 19:37:41 +01:00
Carlos Garnacho
e5e95934ba Fix color name (as of rgb.txt) parsing in symbolic colors
The end of the substring wasn't being detected properly.
2010-12-24 19:37:30 +01:00
Carlos Garnacho
1cecb10584 Make GtkAccelLabel use GtkStyleContext. 2010-12-24 19:37:20 +01:00
Javier Jardón
5e74427dee gailmenushell.c: Fix typo 2010-12-24 18:42:24 +01:00
Javier Jardón
03cddad42b build: Use autoreconf 2010-12-24 18:40:54 +01:00
Kristian Rietveld
c659542333 Check for NULL pointer 2010-12-24 14:45:47 +01:00
Javier Jardón
30cdab13fe docs: Add docs about how to get a GtkDevice
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=637895
2010-12-24 14:39:55 +01:00
Matthias Clasen
55ca24d1d4 Drop GtkThemeEngine
It is not used anymore.
2010-12-23 22:16:50 -05:00
Matthias Clasen
ca493cd20d Fix a few warnings 2010-12-23 22:11:50 -05:00
Matthias Clasen
7ff572dfd3 Add some missing includes 2010-12-23 22:11:28 -05:00
Matthias Clasen
1bcf8a0027 Remove sealed members from GtkSettings 2010-12-23 21:56:50 -05:00
Stef Walter
433a22cd11 Remove private header from gtkwindow.h
https://bugzilla.gnome.org/show_bug.cgi?id=637907
2010-12-23 19:23:48 -06:00
Matthias Clasen
7650482e46 Add sufficient API to make gail work
The accessible implementations should really be folded into
gtk proper. Until that happens, we need some more guts exposed...
2010-12-23 20:11:38 -05:00
Matthias Clasen
2ed81aa57c Remove sealed members from GtkMenuShell 2010-12-23 18:21:53 -05:00
Matthias Clasen
c5b020e628 Remove sealed members from GtkMenu 2010-12-23 15:51:20 -05:00
Jorge Gonzalez
65652d818d Updated Spanish translation 2010-12-23 20:47:02 +01:00
Gheyret T.Kenji
9b6a0a0e2b Added UG translation 2010-12-23 20:17:15 +01:00
Gheyret T.Kenji
80b534561b Added UG translation 2010-12-23 20:11:32 +01:00
Gheyret T.Kenji
4064a100f0 Added UG translation 2010-12-23 19:18:55 +01:00
Matthias Clasen
96d1c2c46e Reserve space for a pointer in GtkDrawingArea
It was pointed out that this will let us add a private pointer
without abi break in the future, should we ever need one.
2010-12-23 13:01:21 -05:00
Matthias Clasen
3e08a23237 Drop long-obsolete linux framebuffer APIs
The functions to set frames on windows stopped being interesting
when the linux framebuffer port was dropped, many years ago.

Similar functionality may come back with client-side decorations
in the future.
2010-12-23 12:59:49 -05:00
Kristian Rietveld
9ab2786991 GtkCellRendererText: use PANGO_PIXELS_CEIL for text_width
Usually pango_layout_get_pixel_extents() is used, which uses
PANGO_PIXELS_CEIL on the rectangle's width.  This commit makes the new
function gtk_cell_renderer_text_get_preferred_width() consistent with
this.

This fixes rounding errors on Mac OS X, where we were seeing tree views
with a double height for a single line of text, while the usual single
row height would have been sufficient.
2010-12-23 18:41:23 +01:00
Kristian Rietveld
31536736ea Hide GtkTreeViewColumn buttons when header_window is not visible 2010-12-23 18:19:56 +01:00
Kristian Rietveld
26173c7864 Delimit the other_entries array 2010-12-23 18:19:55 +01:00
Matthias Clasen
3a6800a898 Some small doc corrections 2010-12-23 11:18:50 -05:00
Matthias Clasen
1f9ce46906 Update keymap docs to match current behaviour
An overlooked API change in the gdk-backend work: many of the
keymap functions used to accept NULL to mean 'default keymap'.
They no longer do, so update the docs to match the new behaviour.
2010-12-23 10:06:08 -05:00
Kristian Rietveld
374f8e22aa quartz: internalize _gdk_quartz_window_set_needs_display_in_region 2010-12-23 14:17:42 +01:00
Kristian Rietveld
f0b8dcb4f3 quartz: move gdkgeometry-quartz into gdkwindow-quartz.c 2010-12-23 14:17:42 +01:00
Kristian Rietveld
deffbd9885 quartz: reorder gdkprivate-quartz.h and related clean up 2010-12-23 14:17:42 +01:00
Kristian Rietveld
ac6f50120b quartz: _gdk_quartz_visual -> gdk_quartz_visual 2010-12-23 14:17:42 +01:00
Kristian Rietveld
1e2907fa02 quartz: _gdk_quartz_screen -> gdk_quartz_screen 2010-12-23 14:17:42 +01:00
Kristian Rietveld
0736544174 quartz: _gdk_quartz_keymap -> gdk_quartz_keymap 2010-12-23 14:17:42 +01:00
Kristian Rietveld
0d8eeb924e quartz: _gdk_quartz_display -> gdk_quartz_display 2010-12-23 14:17:42 +01:00
Kristian Rietveld
07110a6170 quartz: we must provide a window on drag begin now 2010-12-23 14:17:42 +01:00
Kristian Rietveld
0840b25165 quartz: fix some more typos 2010-12-23 14:17:42 +01:00
Kristian Rietveld
1e814709d7 quartz: fix typo 2010-12-23 14:17:41 +01:00
Kristian Rietveld
fb8717f722 quartz: move utils to gdkutils-quartz.c 2010-12-23 14:17:41 +01:00
Kristian Rietveld
f15934bd66 quartz: remove gdkmain-quartz.c 2010-12-23 14:17:41 +01:00
Kristian Rietveld
caa9794af8 quartz: Clean up header files, use same arrangement as X11 backend 2010-12-23 14:17:41 +01:00
Erdal Ronahi
dd5a74dcbc Updated Kurdish translations 2010-12-23 14:14:10 +01:00
Matthias Clasen
af9d59aaca Allow inspection of construct-only object properties
The 'Properties' button here is not really modifying the property
in any way, so it doesn't make sense to disable it just because
the object can only be set at construction.

This lets us poke at e.g. the cell area of an icon view.
2010-12-23 00:43:50 -05:00
Brian Cameron
f90365d46b Fix spacing. 2010-12-22 21:58:40 -06:00
Brian Cameron
e88a44f4c9 Fix bug #637721, fix function prototype. 2010-12-22 21:57:12 -06:00
Matthias Clasen
d77dcfb9b2 Better fix for keynav dnd
With proper rounding, we can go back to a 'small step' of 1.
2010-12-22 22:33:40 -05:00
Matthias Clasen
7e0a30b752 Abort a drag when a keynav drop has not destination
This was claimed to cause problems for Chromium, see bug 599130.

Also work around apparent rounding errors in XIWarpDevice by
setting the 'small step' for keynav dnd to 2 instead of 1 - I notice
that a warp seems to sometimes warp a little less than I tell it to,
and if I tell it to only move by 1 pixel then moving less means
that you are stuck.
2010-12-22 21:47:14 -05:00
Matthias Clasen
9baf24f87e Add a default handler for drag_failed
And use it in notebook dnd.
2010-12-22 18:46:29 -05:00
Matthias Clasen
e6693ab840 Avoid invariant checking spew in gnome-shell
For normal toplevels, visible is tightly bound to mapped, but for
something like a toplevel that exists within a Clutter stage we
may want to make mapping dependenton external factors, so we shouldn't
actually checked that !mapped toplevels are !visible.

Pointed out by Owen Taylor,

https://bugzilla.gnome.org/show_bug.cgi?id=637834
2010-12-22 16:54:52 -05:00
Kristian Rietveld
197590258f quartz: Make keyboard input work again 2010-12-22 22:33:05 +01:00
Kristian Rietveld
48b6b939d3 Implement process_updates_recurse for GdkOffscreenWindow
Makes offscreen windows work again.
2010-12-22 20:41:39 +01:00
Matthias Clasen
03f7e26d26 Don't return PropertyNotify.state as modifier state
It isn't, it really is a GdkPropertyState.

Reported by Tim Janik in bug 633795.
2010-12-22 14:33:09 -05:00
Matthias Clasen
3adb7c7a49 Avoid a crash
pointed out in bug 533745
2010-12-22 14:08:03 -05:00
Javier Jardón
187762d8b3 docs: fix a typo 2010-12-22 17:05:50 +00:00
Kristian Rietveld
083c556e00 quartz: rename GdkDeviceManagerCore -> GdkQuartzDeviceManagerCore 2010-12-22 17:47:05 +01:00
Kristian Rietveld
59a3d9ae46 quartz: Rename GdkDeviceCore -> GdkQuartzDeviceCore 2010-12-22 17:47:05 +01:00
Kristian Rietveld
e2e4391992 quartz: commit forgotten file 2010-12-22 17:47:05 +01:00
Kristian Rietveld
2e7f14c90f quartz: GdkDeviceCore: check for NULL pointer 2010-12-22 17:47:04 +01:00
Kristian Rietveld
32731fcb07 quartz: register before/after process all updates 2010-12-22 17:47:04 +01:00
Kristian Rietveld
ab74358b82 quartz: set all methods on window class, not root window class 2010-12-22 17:47:04 +01:00
Kristian Rietveld
552e7be7e5 quartz: set window_type in display_class 2010-12-22 17:47:04 +01:00
Kristian Rietveld
b0ffe16f90 quartz: introduce GdkQuartzWindow (as a subclass of GdkWindow) 2010-12-22 17:47:04 +01:00
Kristian Rietveld
3bc60a8149 quartz: rename GdkQuartzWindow to GdkQuartzNSWindow 2010-12-22 17:47:04 +01:00
Kristian Rietveld
c6fad1d2cb quartz: fix typo 2010-12-22 17:47:04 +01:00
Kristian Rietveld
c87e878308 quartz: add new files to Makefile.am 2010-12-22 17:47:04 +01:00
Kristian Rietveld
e5695de12b GdkDisplayManager: register Quartz backend when applicable 2010-12-22 17:47:04 +01:00
Kristian Rietveld
5226ae3ecc quartz: create gdkdisplaymanager-quartz.h 2010-12-22 17:47:04 +01:00
Kristian Rietveld
f2883fe8eb quartz: gdkselection-quartz.c: fix typos 2010-12-22 17:47:04 +01:00
Kristian Rietveld
b638515ae0 quartz: re-introduce _gdk_quartz_display_list_devices 2010-12-22 17:47:03 +01:00
Kristian Rietveld
4c663f0474 gdkwindow-quartz: fix typo 2010-12-22 17:47:03 +01:00
Kristian Rietveld
4a6c50c298 gtkclipboard-quartz: use accessors and add missing include 2010-12-22 17:47:03 +01:00
Kristian Rietveld
44d9fb2d71 gtkdnd-quartz: use accessors and add missing include 2010-12-22 17:47:03 +01:00
Kristian Rietveld
7979be1430 quartz: gtkquartz.c: add missing include 2010-12-22 17:47:03 +01:00
Kristian Rietveld
9b4f5a424c gdk: Fix toplevel makefile to build non-x11 backends again 2010-12-22 17:47:03 +01:00
Kristian Rietveld
6b96c56976 quartz: remove duplicate definition of gdk_flush 2010-12-22 17:47:03 +01:00
Kristian Rietveld
8b4d583cd8 quartz: gdkkeys-quartz.c: remove duplicate function 2010-12-22 17:47:03 +01:00
Kristian Rietveld
3d02a14f4f quartz: remove duplicate functions from gdkmain-quartz.c 2010-12-22 17:47:03 +01:00
Kristian Rietveld
fbd9fd6a38 quartz: make gdkwindow-quartz.c build again 2010-12-22 17:47:03 +01:00
Kristian Rietveld
c14078f388 quartz: adapt gdkdisplay-quartz.c to new function names 2010-12-22 17:47:03 +01:00
Kristian Rietveld
5f782ed9e7 quartz: add prototype for _gdk_quartz_screen_new() 2010-12-22 17:47:03 +01:00
Kristian Rietveld
1b344ad8e4 quartz: convert GdkVisual 2010-12-22 17:47:02 +01:00
Kristian Rietveld
d024153c96 quartz: Fix screen implementation, rename to GdkQuartzScreen 2010-12-22 17:47:02 +01:00
Kristian Rietveld
cde6dade8f quartz: Port gdkkeys-quartz.c to new API 2010-12-22 17:47:02 +01:00
Kristian Rietveld
6fe3100f14 quartz: Remove gdkinput code 2010-12-22 17:47:02 +01:00
Kristian Rietveld
e4a0101542 quartz: gdkeventloop-quartz.c: fix 2010-12-22 17:47:02 +01:00
Kristian Rietveld
d0976d9f53 quartz: Fix gdkevents-quartz.c 2010-12-22 17:47:02 +01:00
Kristian Rietveld
b2844cb48b quartz: Make GdkQuartzDisplay compile 2010-12-22 17:47:02 +01:00
Kristian Rietveld
709b4d4346 quartz: Fix display manager, move over code from gdkmain-quartz.c 2010-12-22 17:47:02 +01:00
Kristian Rietveld
988b8bf96a quartz: gdkcursor-quartz.h: fix cut-n-paste error 2010-12-22 17:47:02 +01:00
Kristian Rietveld
98b8bf035f quartz: gdkdevice-core: fix up 2010-12-22 17:47:02 +01:00
Kristian Rietveld
da481666cd quartz: gdkdevice-core.c: use GdkQuartzCursor 2010-12-22 17:47:01 +01:00
Kristian Rietveld
62273fc08a quartz: add forgotten file (gdkdnd-quartz.h) 2010-12-22 17:47:01 +01:00
Kristian Rietveld
f4c0c47a1a quartz: move bits into gdkcursor-quartz.h (private header for now) 2010-12-22 17:47:01 +01:00
Kristian Rietveld
dff3973198 quartz: remove GdkCursorPrivate typedef 2010-12-22 17:47:01 +01:00
Kristian Rietveld
013cbea25f quartz: Remove API for extension checks 2010-12-22 17:47:01 +01:00
Kristian Rietveld
881ea6e06c quartz: convert GdkQuartzWindow to new drag context API 2010-12-22 17:47:01 +01:00
Kristian Rietveld
71404825c3 quartz: fix up GdkDragContext conversion 2010-12-22 17:47:01 +01:00
Kristian Rietveld
8cb301762a Fix typo 2010-12-22 17:47:01 +01:00
Kristian Rietveld
3ace122563 quartz: turn quartz GdkCursor into GObject 2010-12-22 17:47:01 +01:00
Matthias Clasen
bd1ff477ca Deal with property encoding functions for quartz 2010-12-22 17:47:01 +01:00
Matthias Clasen
de41790470 Implement selection related vfuncs for quartz 2010-12-22 17:47:01 +01:00
Matthias Clasen
762548d303 Implement selection owner vfuncs for quartz 2010-12-22 17:47:01 +01:00
Matthias Clasen
547d674ce5 Implement window property vfuncs for quartz 2010-12-22 17:47:01 +01:00
Matthias Clasen
168b3c13b7 Implement keyval vfuncs for quartz 2010-12-22 17:47:00 +01:00
Matthias Clasen
9ae2dc0deb Drop gdk_set_locale from quartz 2010-12-22 17:47:00 +01:00
Matthias Clasen
a1b300ecb6 Implement test vfuncs for quartz 2010-12-22 17:47:00 +01:00
Matthias Clasen
6eb2a3520c Implement atom-related vfuncs for quartz 2010-12-22 17:47:00 +01:00
Matthias Clasen
51f149df5e Implement get_keymap vfunc for quartz 2010-12-22 17:47:00 +01:00
Matthias Clasen
46352afa6f Implement create_window_impl vfunc for quartz 2010-12-22 17:47:00 +01:00
Matthias Clasen
57efe15bda Drop gdk_spawn functions
These have been removed since the implementation was just
a straight wrapper around g_spawn.
2010-12-22 17:47:00 +01:00
Matthias Clasen
9dbe3bd316 Drop unimplemented foreign window functions
These have been relegated to backend-specific
2010-12-22 17:47:00 +01:00
Matthias Clasen
b2ff02332f Implement event_data_{copy,free} for quartz 2010-12-22 17:47:00 +01:00
Matthias Clasen
4b92625fe0 Implement notify_startup_complete vfunc for quartz 2010-12-22 17:47:00 +01:00
Matthias Clasen
2f3c7da763 Remove a duplicate doc comment 2010-12-22 17:47:00 +01:00
Matthias Clasen
1a04631707 Implement get_next_serial for quartz 2010-12-22 17:47:00 +01:00
Matthias Clasen
dadbc63f1e gdk_display_warp_pointer is in the frontend now 2010-12-22 17:46:59 +01:00
Matthias Clasen
a1a0205dad Implment process_updates_recurse vfunc for quartz 2010-12-22 17:46:59 +01:00
Matthias Clasen
3232be603a Implement has_pending and queue_events vfuncs for quartz 2010-12-22 17:46:59 +01:00
Matthias Clasen
733c8fc8e7 Derive GdkDisplayManager for quartz 2010-12-22 17:46:59 +01:00
Matthias Clasen
8a9c604b8a Adapt quartz device code to new ways
We will need to rename the Core implementations in X11/Quartz
to not clash, later.
2010-12-22 17:46:59 +01:00
Matthias Clasen
e2fea748d6 Adapt quartz visual code to new ways
We may still need a subclass here later, not sure
2010-12-22 17:46:59 +01:00
Matthias Clasen
46e8aadaf8 Rename _gdk_dnd_init 2010-12-22 17:46:59 +01:00
Matthias Clasen
25271f5e9a Implement dnd vtables for quartz 2010-12-22 17:46:59 +01:00
Matthias Clasen
d2ce9ec3dc Convert a bunch of visual related calls to use the screen vtable, quartz 2010-12-22 17:46:59 +01:00
Matthias Clasen
41352f24d6 Convert all GdkScreen methods to vtable calls, quartz backend 2010-12-22 17:46:59 +01:00
Matthias Clasen
f43f259d49 Derive GdkKeymap for Quartz 2010-12-22 17:46:59 +01:00
Matthias Clasen
acd99409b8 Make display method vtable calls, quartz backend 2010-12-22 17:46:59 +01:00
Matthias Clasen
064bfceaad Convert all gdk_window methods to vtable calls in the quartz backend 2010-12-22 17:46:59 +01:00
Matthias Clasen
62cbc1acd4 continue to install gdk-$TARGET-3.0.pc 2010-12-22 11:39:58 -05:00
Matthias Clasen
05b43caf4c Add a section about gdk_spawn to migration guide 2010-12-22 11:13:31 -05:00
Tristan Van Berkom
e20503836c Fixed GtkGrid GtkContainerClass->forall() to not use a for loop.
This loop needs to be safe for removing children in a forall loop.
2010-12-22 21:25:53 +09:00
Matthias Clasen
367211ed7f Document WINDOWING macros 2010-12-22 01:43:57 -05:00
Matthias Clasen
3973ef760e Mention GDK_BACKEND in the docs 2010-12-22 01:32:18 -05:00
Matthias Clasen
fa59cc4652 Fix the X backend docs 2010-12-22 01:31:15 -05:00
Matthias Clasen
a6b05106a5 GtkAboutDialog: Be slightly more flexible when listing credits
Make sure we render credits ok that are occurring in the wild,
such as "Contact us at:", "<foo@bar>" or "guy1\nguy2\nguy3"

https://bugzilla.gnome.org/show_bug.cgi?id=637763
https://bugzilla.gnome.org/show_bug.cgi?id=637736
2010-12-22 01:03:58 -05:00
Matthias Clasen
4cc76927b1 Show translators properly in the new about dialog
translator-credits is a single string, typically with newline-
separated names.
2010-12-22 00:31:05 -05:00
Robert Ancell
2013e23c4b Use getters and setters for GtkPrintJob in gtkprintbackendtest.c 2010-12-22 15:36:47 +11:00
Robert Ancell
f4419be0d6 Fix DSO link issues 2010-12-22 15:01:50 +11:00
Matthias Clasen
e60eff282a Bump version 2010-12-21 20:17:35 -05:00
Matthias Clasen
83364e8529 Fix distcheck 2010-12-21 19:37:18 -05:00
Matthias Clasen
b824cdd6db Fix a blunder in grab handling
This was causing segfaults which would go away when compiled with
debug options.
2010-12-21 18:42:30 -05:00
Matthias Clasen
4b10167ce6 Set a default value for rgba style properties 2010-12-21 18:18:34 -05:00
Matthias Clasen
5b6bdcf016 Fix a tag mismatch in the docs 2010-12-21 18:18:34 -05:00
Mike Gorse
2a324ae304 Fix inclusion of gdkconfig.h 2010-12-21 18:18:07 -05:00
Matthias Clasen
4331d62567 Add gtkselectionprivate.h to Makefile 2010-12-21 17:57:40 -05:00
Matthias Clasen
fcbfa05347 Drop no-longer-existing header from Makefile 2010-12-21 17:36:50 -05:00
Matthias Clasen
3ca69937f4 Don't install headers twice 2010-12-21 16:37:16 -05:00
Matthias Clasen
9cdbb31c06 Update NEWS 2010-12-21 16:25:27 -05:00
Matthias Clasen
7b6d759b04 Temporarily disable combo box entry test
This one got broken by the treeview refactoring, I assume.
2010-12-21 14:43:17 -05:00
Matthias Clasen
940d123de5 Add gdk_disable_multidevice to headers 2010-12-21 14:33:56 -05:00
Owen W. Taylor
a2dddb1da0 Return an appropriate GtkStyle from gtk_rc_get_style_by_paths()
Always returning NULL (no match) from gtk_rc_get_style_by_paths()
means that looking up colors and style properties based on the
GtkStyle will give default values instead of themed values. We can
do better by returning a GtkStyle based on a GtkWidgetPath that we
figure out from the values passed in to get_style_by_paths().

https://bugzilla.gnome.org/show_bug.cgi?id=637520
2010-12-21 14:27:25 -05:00
Matthias Clasen
928fd84ebf Implement some more vfuncs in GdkOffscreenWindow 2010-12-21 14:20:19 -05:00
Matthias Clasen
82fe7594f9 More include shuffling; keep X extension headers to ourselves 2010-12-21 14:17:02 -05:00
Matthias Clasen
10a7f49fe7 Check the right library for symbols 2010-12-21 12:41:29 -05:00
Matthias Clasen
f9e876e265 Fix another typo 2010-12-21 12:32:34 -05:00
Matthias Clasen
b3bd184274 Fix a silly typo 2010-12-21 12:19:03 -05:00
Matthias Clasen
ecddaa7a8e Disable the GtkPlug xi2 hack more thoroughly 2010-12-21 12:07:10 -05:00
Matthias Clasen
106047ffa4 Detangle includes for GdkDeviceManager subclasses 2010-12-21 12:07:10 -05:00
Matthias Clasen
b1aaa10b6a Detangle includes for device subclasses 2010-12-21 12:07:10 -05:00
Matthias Clasen
e5090396bf Forgotten file 2010-12-21 12:07:10 -05:00
Matthias Clasen
bd36374413 Rename GdkAppLaunchContextX11 to GdkX11AppLaunchContext 2010-12-21 12:07:10 -05:00
Matthias Clasen
3fb8c3415b Rename GdkDragContextX11 to GdkX11DragContext 2010-12-21 12:07:09 -05:00
Matthias Clasen
fdfabea958 Don't export gdk_x11_cursor_finalize 2010-12-21 12:07:09 -05:00
Matthias Clasen
71a515ef17 Get abicheck to almost pass again 2010-12-21 12:07:09 -05:00
Matthias Clasen
b4802e3042 Rename x11-specific GdkDevice[Manager] implementations
Make them all fit in the gdk_x11_ prefix, and make the
get_type functions and standard macros available in headers.
2010-12-21 12:07:09 -05:00
Matthias Clasen
5cddc7ccbb Rename GdkDevice[Manager]Core to GdkX11Device[Manager]Core
This is mainly to avoid clash with the classes of the same
name in the quartz backend.
2010-12-21 12:07:09 -05:00
Matthias Clasen
e96c193d06 Rename GdkKeymapX11 to GdkX11Keymap
And add a gdkx11keys.h header file.
2010-12-21 12:07:09 -05:00
Matthias Clasen
146fd989d6 Rename GdkDisplayManagerX11 to GdkX11DisplayManager
And add a gdkx11displaymanager.h header file.
2010-12-21 12:07:09 -05:00
Benjamin Otte
36893a9ef8 gdk: Make GdkWindow abstract
This way backend implementors get an error if they don't set
display_class->window_type to their subclass. And that's exactly what we
want.
2010-12-21 12:07:09 -05:00
Benjamin Otte
dcb03b1085 gdk: Use G_DEFINE_TYPE for GdkWindow 2010-12-21 12:07:08 -05:00
Benjamin Otte
19699989e5 x11: Add a GdkX11Window class for X11 windows 2010-12-21 12:07:08 -05:00
Benjamin Otte
af7afbbe06 gdk: Allow display subclasses to override the type used for windows
We want to have different window types for different displays, so we can
write code like this:

  #if GDK_WINDOWING_X11
    if (GDK_IS_X11_WINDOW (window))
      {
        /* do x11 stuff */
      }
    else
  #endif
  #if GDK_WINDOWING_WAYLAND
    if (GDK_IS_WAYLAND_WINDOW (window))
      {
        /* do wayland stuff */
      }
    else
  #endif
      {
        /* do stuff for unsupported system */
    }

This requires different GdkWindow types and we currently don't have
that, as only the GdkWindowImpl differs. With this method, every backend
defines a custom type that's just a simple subclass of GdkWindow. This
way GdkWindow behaves like all the other types (visuals, screens,
displays) and we can write code like the above.
2010-12-21 12:07:08 -05:00
Benjamin Otte
3036922b3d gdk: Create windows via _gdk_display_create_window()
THe use of this function will become visible in the next commits. But
wrapping g_object_new() is a generally a good idea anyway.
2010-12-21 12:07:08 -05:00
Benjamin Otte
503087dfc9 x11: Export GdkX11Screen 2010-12-21 12:07:08 -05:00
Benjamin Otte
a8b69df376 x11: Rename GdkScreenX11 to GdkX11Screen 2010-12-21 12:07:08 -05:00
Benjamin Otte
b154d3abf6 x11: Export GdkX11Visual 2010-12-21 12:07:08 -05:00
Benjamin Otte
d185987ebd x11: Rename GdkVisualX11 to GdkX11Visual 2010-12-21 12:07:08 -05:00
Benjamin Otte
86e0a9aef7 x11: Have a proper GdkVisualX11Class struct 2010-12-21 12:07:08 -05:00
Benjamin Otte
21d8160c57 x11: Export GdkX11Cursor 2010-12-21 12:07:08 -05:00
Benjamin Otte
4848bf2719 x11: typedef GdkX11Display to GdkDisplay
This is for compatibility reasons. We want to change APIs that operate
on X11 objects to take the X11 objects as arguments. However, this would
break a lot of APIs and we'd like to avoid this, so we play this little
trick (we will use the same trick for the other X11 objects). Also,
gobject-introspection and other bindings can correctly attach the
functions to the correct types as it is the same scheme that GDK2 used
for pixmaps, windows and drawables.

For GTK 4, we will remove this trick, so apps should properly cast their
objects right now.
Unfortunately, I don't think there is a way to use
GDK_DISABLE_DEPRECATED or similar macros to check for proper type casts
while compiling ensure compatibility with future GDK versions. I'm free
to consider them though.
2010-12-21 12:07:07 -05:00
Benjamin Otte
eba4529246 x11: Export GdkX11Display 2010-12-21 12:07:07 -05:00
Benjamin Otte
4db086da4b x11: Rename GdkDisplayX11 to GdkX11Display
Also rename all the macros etc.
2010-12-21 12:07:07 -05:00
Benjamin Otte
8e2240f699 x11: Rename GdkDisplayX11 to GdkX11Display 2010-12-21 12:07:07 -05:00
Benjamin Otte
85bd61778f API: gdk: GDK_DISPLAY_OBJECT() => GDK_DISPLAY()
GDK_DISPLAY_OBJECT is now deprecated. No need to keep failures from
gtk1 around.
2010-12-21 12:07:07 -05:00
Benjamin Otte
04d1459fca x11: Move remaining APIs into gdkx11utils.h
Now gdkx.h is a clean header equivalent to gdk.h.
2010-12-21 12:07:07 -05:00
Benjamin Otte
dd177b5201 x11: Move atom API into gdkx11property.h 2010-12-21 12:07:07 -05:00
Benjamin Otte
ebe46e6f9d x11: Move selection-specific API into gdkx11selection.h 2010-12-21 12:07:07 -05:00
Benjamin Otte
7949073dd5 x11: Move display-specific APIs into gdkx11display.h 2010-12-21 12:07:06 -05:00
Benjamin Otte
6dfa90f57c x11: Move screen-specific API into gdkx11screen.h 2010-12-21 12:07:06 -05:00
Benjamin Otte
0ca6a7ab20 x11: Move visual-specific API into gdkx11visual.h 2010-12-21 12:07:06 -05:00
Benjamin Otte
55f3451754 x11: Move cursor API into gdkx11cursor.h 2010-12-21 12:07:06 -05:00
Benjamin Otte
124cf96850 x11: Split out public window API into gdkx11window.h 2010-12-21 12:07:06 -05:00
Benjamin Otte
66f7c3a562 API: gdk: gdk_display_warp_device() => gdk_device_warp()
warping devices has nothing to do with displays, so putting it there
seems weird.
2010-12-21 12:07:06 -05:00
Benjamin Otte
7a33592231 gdk: Move gdk_cursor_get_image() to the base class
.. and make it call a vfunc on the cursor
2010-12-21 12:07:06 -05:00
Benjamin Otte
60dc856daf x11: Remove duplicated docs
They're in gdk/gdkdisplay.c now.
2010-12-21 12:07:06 -05:00
Benjamin Otte
095d1905a9 x11: Don't keep the display around anymore
Use gdk_cursor_get_display() instead.
2010-12-21 12:07:06 -05:00
Benjamin Otte
4793bd3399 gdk: Move gdk_cursor_get_display() out of the backends
Now that we store the display inside the cursor, that change is obvious.
2010-12-21 12:07:05 -05:00
Benjamin Otte
7a14b30ea3 gdk: Make display a property of GdkCursor 2010-12-21 12:07:05 -05:00
Benjamin Otte
28b2d7e5da gdk: Make cursor-type a property of the cursor 2010-12-21 12:07:05 -05:00
Benjamin Otte
3e068e921f API: gdk: Deprecate gdk_cursor_ref() and gdk_cursor_unref()
Now that GdkCursor is a GObject, it doesn't need custom refcount
handling anymore.
2010-12-21 12:07:05 -05:00
Benjamin Otte
73d8ffd74f testgtk: Use g_object_unref instead of gdk_cursor_unref 2010-12-21 12:07:05 -05:00
Benjamin Otte
e622ae9a68 gtk-demo: Use g_object_unref instead of gdk_cursor_unref 2010-12-21 12:07:05 -05:00
Benjamin Otte
8f1f743903 gtk: Use g_object_unref instead of gdk_cursor_unref 2010-12-21 12:07:05 -05:00
Benjamin Otte
a9637f05b6 gdk: Use g_object_(un)ref instead of gdk_cursor_(un)ref 2010-12-21 12:07:05 -05:00
Benjamin Otte
768b425ce6 x11: Use g_object_(un)ref instead of gdk_cursor_(un)ref 2010-12-21 12:07:04 -05:00
Benjamin Otte
0b4913a166 gdk: Make GdkCursor a GObject
Also port the X11 implementation. Win32 and Quartz need to be ported
still.
2010-12-21 12:07:04 -05:00
Benjamin Otte
66e3894539 gdk: Move GdkCursor definition into a private header 2010-12-21 12:07:04 -05:00
Benjamin Otte
2eef91ad93 x11: Move GdkCursorPrivate into the C file 2010-12-21 12:07:04 -05:00
Benjamin Otte
8e3afc6e5a x11: Use public API to access cursor's xcursor 2010-12-21 12:07:04 -05:00
Matthias Clasen
3d5d558393 Downgrade some Since tags 2010-12-21 12:07:04 -05:00
Matthias Clasen
2650328ea8 Add win32 implementation for foreign window functions 2010-12-21 12:07:04 -05:00
Matthias Clasen
58529e69ec Drop sm_client_id implementation for Quartz 2010-12-21 12:07:04 -05:00
Matthias Clasen
10e23de49e Drop sm_client_id win32 implementation 2010-12-21 12:07:04 -05:00
Matthias Clasen
00e2b949eb Reinstate the correct field value 2010-12-21 12:07:03 -05:00
Matthias Clasen
572bb20011 Deal with property encoding functions
Move everything dealing with compound text to be X11 specific
Only gdk_text_property_to_utf8_list and gdk_utf8_to_string_target
are kept across backends, so add vfuncs for these.

Also, remove the non-multihead-safe variants of all these.
2010-12-21 12:07:03 -05:00
Matthias Clasen
61104d58ea Avoid unnecessary use of gdk conversion routines
We can use use gtk_selection_data_get_uris, instead of
manually doing the conversion ourselves.
2010-12-21 12:07:03 -05:00
Matthias Clasen
05497c799a Add a vfunc for gdk_selection_convert 2010-12-21 12:07:03 -05:00
Matthias Clasen
95868ef00b Add a vfunc for gdk_selection_property_get 2010-12-21 12:07:03 -05:00
Matthias Clasen
625b8305e9 Add a vfunc for gdk_selection_send_notify_for_display 2010-12-21 12:07:03 -05:00
Matthias Clasen
7e22cf7e50 Rename some private x11 backend functions to _gdk_x11 2010-12-21 12:07:03 -05:00
Matthias Clasen
cc03a6df79 Add vfuncs for get/set_selection_owner 2010-12-21 12:07:03 -05:00
Matthias Clasen
519f09f7f4 Add vfuncs for keyval and window property functions
The keyval functions should really be generic, and the window
property api should be completely revisited, but for now this
will allow us to proceed.
2010-12-21 12:07:03 -05:00
Matthias Clasen
fdabc9585d Drop g[dt]k_set_locale
These functions were essentially just calling setlocale anyway.
The X11 version was also setting a gdk_use_mb variable that
is not used anywhere.
2010-12-21 12:07:02 -05:00
Matthias Clasen
2211e52ec5 Don't use gtk_set_locale 2010-12-21 12:07:02 -05:00
Matthias Clasen
afa0ebf36b Add vfuncs for gdk_test apis 2010-12-21 12:07:02 -05:00
Matthias Clasen
28abd0c75f Add vfuncs for atoms 2010-12-21 12:07:02 -05:00
Matthias Clasen
62e9bb06a0 Add a vfunc for gdk_keymap_get_for_display 2010-12-21 12:07:02 -05:00
Matthias Clasen
a97b1891b3 Rename private keymap symbols to _gdk_x11_keymap... 2010-12-21 12:07:02 -05:00
Matthias Clasen
1d5afe4880 Rename the _gdk_xid_table functions 2010-12-21 12:07:02 -05:00
Matthias Clasen
55e1031e84 Remove gdk_net_wm_supports
This function is totally misnamed, only operates on the default
screen, and has a perfectly fine replacement in
gdk_x11_screen_supports_net_wm_hint.
2010-12-21 12:07:02 -05:00
Matthias Clasen
902fd60a86 Remove the --sync commandline option
Remove the --sync option and remove the possibility of backend-specific
commandline options altogether. --sync is being replaced by
a GDK_SYNCHRONIZE environment variable.
2010-12-21 12:07:02 -05:00
Matthias Clasen
b938e71e1d Remove unused _gdk_use_xshm global 2010-12-21 12:07:01 -05:00
Matthias Clasen
021f595a38 Rename _gdk_window_move_resize_child
Rename _gdk_window_move_resize_child and _gdk_window_process_expose
to _gdk_x11.
2010-12-21 12:07:01 -05:00
Matthias Clasen
214342eac5 Clean up gdkx.h a bit
Moving the direct-access redefinitions of various macros
to gdkprivate-x11.h and use that header throughout in x11/.

Also remove a workaround for a long-fixed X server bug.
2010-12-21 12:07:01 -05:00
Matthias Clasen
32e3dcfb47 drop dead function 2010-12-21 12:07:01 -05:00
Matthias Clasen
126212b470 Add a vfunc for _gdk_window_impl_new 2010-12-21 12:07:01 -05:00
Matthias Clasen
d5803fa9b2 Get rid of the _gdk_selection_property global 2010-12-21 12:07:01 -05:00
Matthias Clasen
185cdddb0d Rename _gdk_moveresize functions to _gdk_x11_moveresize 2010-12-21 12:07:01 -05:00
Matthias Clasen
19cf9309a5 Drop gdkx_visual_get
The function is badly named, not multihead-safe, basically unused,
and has a better replacement with gdk_x11_screen_lookup_visual.
2010-12-21 12:07:01 -05:00
Matthias Clasen
e11bbbf194 Rename _gdk_xgrab_ apis to _gdk_x11_window_ 2010-12-21 12:07:01 -05:00
Matthias Clasen
566abbad25 Rename _gdk_send_xevent to _gdk_x11_display_send_xevent 2010-12-21 12:07:00 -05:00
Matthias Clasen
28b7c6f05d Rename _gdk_event_mask_table to _gdk_x11_event_mask_table 2010-12-21 12:07:00 -05:00
Matthias Clasen
985eb14469 Multiple changes to reduce the amount of unprefixed symbols
The X11 backend exports a number of symbols which are _-prefixed
(so don't become part of the gdk api), but are not named in a
way to prevent accidental clashes between backends.

The one API change here is that the gdk_xid_table functions
have been removed - they did not server an purpose, since the
xid table only stores windows anyway, and we already have a
lookup-by-xid function for windows.
2010-12-21 12:07:00 -05:00
Benjamin Otte
33417c36f1 plug: Comment hack for xinput that used private x11 backend API 2010-12-21 12:07:00 -05:00
Matthias Clasen
624dc45755 Move event source apis to gdk_x11
Reduces the changes of cross-backend collisions
2010-12-21 12:07:00 -05:00
Matthias Clasen
25c66c11e2 Remove gdk_spawn functions
These functions were trivial g_spawn wrappers in all backends
except for X11, and they can be easily replaced by
g_app_info_create_for_commandline + GdkAppLaunchContext.
2010-12-21 12:07:00 -05:00
Matthias Clasen
ef85f112da Don't use gdk_spawn
Replace the sole use of gdk_spawn in GTK+ by GAppInfo.
2010-12-21 12:07:00 -05:00
Matthias Clasen
536a7c8abb Work around issues with events without screens
Just use the default display for copy/free of event data.
Maybe the vfuncs should be moved to GdkDisplayManager.
2010-12-21 12:07:00 -05:00
Matthias Clasen
6c16ddc2d3 Make GdkAppLaunchContext work again
We didn't set the display, ever. Add a construct-only property
for this purpose.
2010-12-21 12:07:00 -05:00
Matthias Clasen
fa33839d72 Consistently use per-display error traps in the X11 backend 2010-12-21 12:06:59 -05:00
Matthias Clasen
2d7583c0e3 Make gdk_window_{lookup,foreign_new}_for_display backend specific
At the same time, make GDK_IS_DISPLAY_X11 available in gdkx.h, and
add some exemplaric ifdefs to GTK+ code.
2010-12-21 12:06:59 -05:00
Matthias Clasen
39a71b8831 Add vfuncs for _gdk_windowing_event_data_{copy,free} 2010-12-21 12:06:59 -05:00
Matthias Clasen
968668629b Go back to installing libgdk.so 2010-12-21 12:06:59 -05:00
Matthias Clasen
5eb4506b94 Drop the --screen cmdline argument
Commandline arguments should go away altogether, but this one
goes first, since we then don't need to worry about
_gdk_windowing_substitute_screen_number anymore.
2010-12-21 12:06:59 -05:00
Matthias Clasen
beaa11be98 Add a vfunc for gdk_notify_startup_complete
At the same time, add a display api for this, since it really
is per-display.
2010-12-21 12:06:59 -05:00
Matthias Clasen
a251d3786b Remove sm-client-id related functions from headers 2010-12-21 12:06:59 -05:00
Matthias Clasen
2186203422 Remove unused get_offsets functions from headers 2010-12-21 12:06:59 -05:00
Matthias Clasen
224726f554 Remove gdk_windowing_{get_device_state,window_at_device_position}
The !trusted workaround code is pushed down into the GdkDevice
subclasses, and we use the device vfuncs directly in gdkdisplay.c
2010-12-21 12:06:59 -05:00
Matthias Clasen
9adb974155 Add a vfunc for _gdk_windowing_window_get_next_serial 2010-12-21 12:06:58 -05:00
Matthias Clasen
9635f09623 Move warp functions to the frontend
There were already GdkDevice vfuncs for this.
2010-12-21 12:06:58 -05:00
Matthias Clasen
4a74060d63 Make gdk_set_sm_client_id X11-specific
This is really not a cross-platform API
2010-12-21 12:06:58 -05:00
Matthias Clasen
ccb6edeb8b Add vfuncs for process_updates_recurse and the before and after hooks 2010-12-21 12:06:58 -05:00
Matthias Clasen
da216c0665 Add vfuncs for a bunch of cursor functionality to GdkDisplay 2010-12-21 12:06:58 -05:00
Javier Jardón
dfe6ba932c Don't access GdkDisplay fields directly
Use accessors instead.
2010-12-21 12:06:58 -05:00
Matthias Clasen
ea96e5e16f Explode gdkinternals.h into per-class private headers
At the same time, move some more class and instance structs
out of public headers.
2010-12-21 12:06:58 -05:00
Matthias Clasen
ff8a334725 Hide GdkDevice struct
Once its hidden, we can kill the GdkDevicePrivate struct too.
2010-12-21 12:06:58 -05:00
Matthias Clasen
b5df501296 Move destroy_foreign comment 2010-12-21 12:06:57 -05:00
Matthias Clasen
218fa6757a Weed out no longer needed declarations 2010-12-21 12:06:57 -05:00
Matthias Clasen
5fa8791c86 Add a vfunc for _gdk_events_queue 2010-12-21 12:06:57 -05:00
Matthias Clasen
ec9c97752d Work toward turning GdkDisplayManager into a backend singleton
This commit hides the GdkDisplayManager instance and class structs,
adds vfuncs for listing displays, opening displays, and getting and
setting the default display. The X11 backend has a derived
GdkDisplayManagerX11.

The gdk_display_manager_get() function is responsible for deciding on
which of the compiled in backends to use. Currently, it consults the
GDK_BACKEND environment variable and falls back to x11.
2010-12-21 12:06:57 -05:00
Matthias Clasen
fa4b54b6de Add per-target pc files back
Dropping those will be an unnecessary pain.
2010-12-21 12:06:57 -05:00
Matthias Clasen
9a1cc81acb Add a vfunc to replace _gdk_windowing_window_destroy_foreign
All backends updated.
2010-12-21 12:06:57 -05:00
Matthias Clasen
1e694b4dd8 Add a vfunc for gdk_window_set_composited 2010-12-21 12:06:57 -05:00
Matthias Clasen
7f6ac56e3c Add a vfunc for gdk_window_set_composited 2010-12-21 12:06:57 -05:00
Matthias Clasen
280e8329b4 Match parameters between headers and doc comment 2010-12-21 12:06:57 -05:00
Matthias Clasen
a169f6e32d Make GdkDevice parallel-implementable
Use the grab and ungrab vfuncs from the frontend instead of the
_gdk_windowing wrappers, and move some things around accordingly.
Again, only the X11 backend has been updated, other backends
need to be updated to match.
2010-12-21 12:06:56 -05:00
Matthias Clasen
c7559f57ed Hide GdkScreen too 2010-12-21 12:06:56 -05:00
Matthias Clasen
3412d7a23a Don't access GdkScreen fields 2010-12-21 12:06:56 -05:00
Matthias Clasen
d5c0b92d5d Hide GdkDeviceManager and GdkDeviceManagerClass
And nuke GdkDeviceManagerPrivate at the same time. Again a commit
that only deals with the X11 backend, other backends will need to
catch up.
2010-12-21 12:06:56 -05:00
Matthias Clasen
c6a5074295 Move GdkVisual parallel-implementable
It turned out no vfuncs were necessary. I've decided to move
the screen member up to GdkVisual, since it is the same in all
backends. The X11 backend subclasses now, to add the X members
that it needs to keep track of. GdkVisual and GdkVisualClass
are hidden now.
2010-12-21 12:06:56 -05:00
Matthias Clasen
23a2b42216 Fully initialize the ClientMessage struct
Otherwise we run into warnings from xdnd_status_filter
2010-12-21 12:06:56 -05:00
Matthias Clasen
8e1d320ce9 Rename _gdk_dnd_init
Nonstatic backend-specific functions need an x11 in their name.
2010-12-21 12:06:56 -05:00
Matthias Clasen
c53ec081ce Add vtables for DND
This commit hides GdkDragContext and GdkDragContextClass, adds
vfuncs for most drag context functionality, and turns the X11 DND
implementation into GdkDragContextX11. We also add vfuncs to
GdkDisplay for gdk_drag_get_protocol and to GdkWindow for
gdk_drag_begin, and implemenet them for X11.
Other backends need similar treatment and are broken now.
2010-12-21 12:06:56 -05:00
Matthias Clasen
3c47c8467c Remove some direct access to GdkDragContext members 2010-12-21 12:06:56 -05:00
Matthias Clasen
ae2c3a909c tests: Don't access GdkDragContext fields directly 2010-12-21 12:06:55 -05:00
Matthias Clasen
a843a9d614 Make abicheck work again 2010-12-21 12:06:55 -05:00
Matthias Clasen
06f75b3727 Make GdkAppLaunchContext display-dependent
Add a GdkDisplay::get_app_launch_context vfunc, and a
gdk_display_get_app_launch_context that for X11 returns a subclass.
For win32 and quartz, the implementations were trivial, so we
just return a new GdkAppLaunchContext without subclassing. Since
the type of the context now depends on the display,
gdk_app_launch_context_set_display is deprecated.
2010-12-21 12:06:55 -05:00
Matthias Clasen
de84a7b14f Move gdk_window_lookup to common code 2010-12-21 12:06:55 -05:00
Matthias Clasen
31cd046cd0 Move gdk_add_client_message_filter to common code 2010-12-21 12:06:55 -05:00
Matthias Clasen
8075cfd658 Move gdk_get_display to common code 2010-12-21 12:06:55 -05:00
Matthias Clasen
6465e8dd15 Reorganize pc files for a single library
After this commit, pc files no longer include the gdk backend in
their name, and we no longer install a pc file for gdk. There is
now a single gtk+-3.0.pc file. It turns out a separate gtk+-x11-3.0.pc
file is not necessary, since gdkx.h doesn't have a separate include
directory that would have to be added to Cflags.
2010-12-21 12:06:55 -05:00
Matthias Clasen
07d49ee56a Merge libgdk and libgtk
This commit does a number of things:
- remove some dead wchar configury from configure.ac and gdkconfig.h
- repurpose gdkconfig.h as header that contains GDK_WINDOWING_foo
  macros for each included backend, include it in gdk.h and install
  it in $includedir instead of below $libdir
- drop the backend from the library names
- build libgdk-3.0.la as a convenience lib and include it in libgtk-3.0.la
It does not yet enable building multiple backends at the same time.
2010-12-21 12:06:55 -05:00
Alexander Larsson
ae146a2817 Convert a bunch of visual related calls to use the screen vtable 2010-12-21 12:06:55 -05:00
Alexander Larsson
f52223f380 Convert all GdkScreen methods to vtable calls 2010-12-21 12:06:54 -05:00
Alexander Larsson
84c03b14e8 Move GdkScreenClass to internal header 2010-12-21 12:06:54 -05:00
Alexander Larsson
8c6162b50c Convert all gdk_keymap methods to vtable calls 2010-12-21 12:06:54 -05:00
Alexander Larsson
4ad948ec4a Move GdkKeymapClass definition to internal header
This lets us change this without affecting apps.
2010-12-21 12:06:54 -05:00
Alexander Larsson
5fda1669ea Make display method vtable calls 2010-12-21 12:06:54 -05:00
Alexander Larsson
f1c32f109d Hide GdkDisplayClass from public header
There is no need for apps to access this class, as its only implemented
in the gdk backends, and we want to be free to change it later.
2010-12-21 12:06:54 -05:00
Alexander Larsson
ac7d55c948 Convert all gdk_window methods to vtable calls 2010-12-21 12:06:54 -05:00
Tristan Van Berkom
49273f2277 Added "fixed-size" cell property to GtkCellAreaBox
Now a cell can either have a "fixed" size or it can have
an "aligned" starting point or both. "fixed" size cells take
no space when they are invisible.
2010-12-22 00:28:18 +09:00
Tristan Van Berkom
c8ae68c33d Fixed gtk_cell_layout_set_cell_data_func() to pass the correct layout object
Added _gtk_cell_area_set_cell_data_func_with_proxy() to be called by
gtk_cell_layout_set_cell_data_func() when the layouting object itself
is not the underlying cell area.
2010-12-22 00:28:18 +09:00
Michael Natterer
13f18567e9 gdk: return 0, not NULL from gdk_device_get_n_axes() 2010-12-21 15:16:35 +01:00
Carlos Garnacho
ac0353e08a Make gtk_style_context_get_* functions more robust
Even if the default CSS contains values for these, handle non-existing
values as queries might happen on an incomplete style.
2010-12-21 14:44:49 +01:00
Jesse van den Kieboom
e36ba3465b Added out annotations for gtk_icon_size_lookup/_for_settings
https://bugzilla.gnome.org/show_bug.cgi?id=637606
2010-12-21 13:24:12 +01:00
Jesse van den Kieboom
939f68a35e Added out annotations for gtk_accelerator_parse
https://bugzilla.gnome.org/show_bug.cgi?id=637606
2010-12-21 13:24:12 +01:00
Yaron Shahrabani
1bb68f0bc5 Updated Hebrew translation 2010-12-21 12:46:41 +02:00
Carlos Garnacho
e02b10046d Ensure widgets get a GtkStyle with its backing GtkStyleContext
Since the default style also has a backing context, it wasn't
being replaced after initialization.
2010-12-21 01:33:51 +01:00
Javier Jardón
33fd2104b7 docs: unmap signal will always be emitted when a widget is unmapped
Since commit 9552152dd9
2010-12-20 23:53:53 +00:00
Matthias Clasen
5c2f407935 Fix problems with window handling in GtkCalendar
After the window removal a while ago, the calendar main window
was not properly moved in size_allocate. Also, we ought to hide/show
the windows in map/unmap, not keep them visible at all times.

Bug 634657
2010-12-20 17:12:02 -05:00
Carlos Garnacho
17e97467df Strengthen checks in functions taking a GdkDevice
Docs have also been improved, to make explicit the device
type/source accepted.
2010-12-20 23:08:10 +01:00
Carlos Garcia Campos
0c518a81b8 printing: Set new print operation settings before emitting custom-widget-apply signal
So that custom settings can be added from the custom-widget-apply
callback.

https://bugzilla.gnome.org/show_bug.cgi?id=637069
2010-12-20 21:10:53 +01:00
Havoc Pennington
9552152dd9 Always emit unmap when a widget is unmapped
Previously, for performance reasons we would sometimes
skip invoking the unmap signal (and associated vfunc)
in favor of simply unrealizing. However, widgets then
had no way to clean stuff up when they were hidden
(but still inside a parent which was shown).

This patch also removes _gtk_tooltip_hide() which
was done in both unmap and unrealize in gtkwidget.c,
now can only be in unmap.

There are probably lots of things cleaned up in
unrealize that would now be better to move to unmap.

https://bugzilla.gnome.org/show_bug.cgi?id=629923
2010-12-20 13:04:45 -05:00
Havoc Pennington
b67c5af55b Add invariant that a child is unmapped if parent is unmapped
Requires fixes to GtkContainer and GtkWindow to unmap their
children, rather than just withdrawing or hiding the container
window.

Requires fix to GtkHandleBox to chain up to GtkContainer unmap.

Historically we avoided these unmaps for efficiency reasons,
but these days it's a bigger problem that there's no way
for child widgets to know that one of their ancestors has
become unmapped.
2010-12-20 12:58:04 -05:00
Havoc Pennington
23ce44c9fe Verify GtkWidget invariants if G_ENABLE_DEBUG is defined
These checks are a bit expensive so require --enable-debug=yes.
gtk_widget_verify_invariants() checks invariants mentioned
in docs/widget_system.txt in particular, and can verify
others in the future.

Some of the invariants in docs/widget_system.txt don't
in fact hold right now, so those are #if 0'd in this
patch pending someone fixing either the docs or the code.
2010-12-20 12:46:51 -05:00
Matthias Clasen
28cc7baef0 Make GtkEntry hide completely
When it was converted to no-window, we forgot to make it hide/show
its input window as necessary.
2010-12-20 12:28:05 -05:00
Matthias Clasen
335bfbc8fc Update GtkAboutDialog documentation
Also, remove some dead code, pointed out in bug 637608.
2010-12-20 11:40:39 -05:00
Carlos Garnacho
33cd32f796 Make gtk_style_new() use a backing GtkStyleContext
Fixes a bug in mutter where it would resort to a dummy style
to get iconview rubberband color.

Reported by Mathieu Bridon in
https://bugzilla.gnome.org/show_bug.cgi?id=637520
2010-12-20 17:18:35 +01:00
Matthias Clasen
5b299ce7af Remove reference to GTK2_RC_FILES from the docs
Pointed out in bug 637471.
2010-12-20 10:23:43 -05:00
Cosimo Cecchi
a5fe3fef7b appchooserdialog: use new GLib API to modify positioning
The dialog will always show up with the last selected application.
2010-12-20 16:08:21 +01:00
Matthias Clasen
183bf8ac9d Use g_strtod when converting strings for GtkCellRendererSpin
These strings are likely user-provided values, so we should
respect locale settings.

Reported in bug 637189.
2010-12-20 10:02:00 -05:00
Matthias Clasen
a9753ef5c6 Add a test for basic style properties 2010-12-20 08:19:23 -05:00
Carlos Garnacho
7030492a3b Disable XI2 in gtk_test_init()
gdk_test_simulate_*() uses XSendEvent, which doesn't currently work
with XI2/GenericEvents, so make tests use core events for the time
being. Luckily there's a lot more to test than low-level event
handling in these tests.
2010-12-20 13:55:38 +01:00
Carlos Garnacho
ca7fe1cb73 GtkStyleProperties: Assign default value for the font property
This fixes a failure when running make test, where style queries
happened before there was even an screen.
2010-12-20 13:55:37 +01:00
Ivar Smolin
3c8076f3dc [l10n] Updated Estonian translation 2010-12-20 13:54:25 +02:00
Javier Jardón
08af2cb488 gail: Fix a typo
This fixes commit d0b81b2148
2010-12-20 11:52:37 +00:00
Baurzhan Muftakhidinov
079b72574a Updates to Kazakh translation 2010-12-20 17:06:25 +06:00
Matthias Clasen
d4e9cd09ab Fix up symbol lists 2010-12-19 23:45:21 -05:00
Javier Jardón
26a304c54b Move GtkSelectionData to a private header 2010-12-19 20:48:20 +00:00
Mahyar Moghimi
39b85421f8 Updating Persian translations (minor change) 2010-12-19 13:42:39 +03:30
Nguyễn Thái Ngọc Duy
75970da97f po/vi.po: import some translations from Ubuntu/Maverick 2010-12-19 16:24:42 +07:00
Yaron Shahrabani
3573179ced Updated Hebrew translation 2010-12-19 09:09:16 +02:00
Javier Jardón
66e7915dc4 gtktreeselection: Move public members to a private structure 2010-12-19 05:01:22 +00:00
Javier Jardón
d0b81b2148 gail: Use accessor functions to access GtkTreeSelection 2010-12-19 04:56:32 +00:00
Javier Jardón
74a7bc3a77 gtk/gtktreeview.c: Use accessor to access GtkTreeSelection 2010-12-19 04:56:32 +00:00
Javier Jardón
e92da3e166 gtkcombobox.c: Use accessor functions to access GtkTreeSelection 2010-12-19 01:27:41 +00:00
Matthias Clasen
1b67d31bd9 Remove G_SEAL from private headers 2010-12-18 17:46:19 -05:00
Matthias Clasen
8105125369 Remove sealed members from GtkPrintJob
Also add accessors for these members, and use them in print backends.
2010-12-18 17:45:31 -05:00
Matthias Clasen
5863382e11 Don't use GtkSocket internals in gail 2010-12-18 17:39:42 -05:00
Matthias Clasen
eb11430228 Fix gdk symbols after recent changes 2010-12-18 17:39:42 -05:00
Matthias Clasen
5ee3a44415 Remove sealed members from GtkSocket 2010-12-18 17:39:41 -05:00
Jorge González
53845f0851 Updated Spanish translation 2010-12-18 14:39:36 +01:00
Carlos Garnacho
56c3d4b1be Remove dead Gtk[Rc]Style code
Most code in gtkrc.c has been turned into a no-op, but that one
reverting in public API (gtk_rc_scanner_new() and such). GtStyle
is also more shallow, now fully relies in the backing
GtkStyleContext and all connection to gtkrc.c has been removed.

GtkBinding has been also affected, there is no replacement yet
for custom keybindings in style files, so that piece of code that
hooked into gtkrc has been replaced by a FIXME so in the future
it may be added back.
2010-12-18 12:10:00 +01:00
Carlos Garnacho
d7dc12d301 Adapt gtk_widget_set_name() docs to style context. 2010-12-18 11:43:37 +01:00
Carlos Garnacho
bbc637f7fd GtkWindow: remove deprecated call.
gtk_style_context_reset_widgets() can be used now to reset all widgets
in a screen.
2010-12-18 11:43:37 +01:00
Matthias Clasen
b45e5fa51e Remove sealed members from GtkTreeModelSort 2010-12-17 23:49:27 -05:00
Matthias Clasen
121746605b Add the private struct in class_init 2010-12-17 21:50:18 -05:00
Matthias Clasen
881ea2881d Remove sealed members from GtkTreeStore 2010-12-17 21:45:20 -05:00
Matthias Clasen
60953ae0f4 Avoid accidental exports 2010-12-17 21:43:42 -05:00
Matthias Clasen
841edfe8c3 Remove an unused pointer from GtkDrawingArea
This is part of removing all sealed members from instance structures.
2010-12-17 20:54:13 -05:00
Matthias Clasen
7b665316cf Hide GtkWindowGroup members
In the process of removing all sealed members from headers.
At the same time, add a gtkwindowprivate.h header and move
all internal functions from gtkwindow.h there.
2010-12-17 20:41:16 -05:00
Matthias Clasen
a2dda0c2bb Trivial changes
Whitespace fixes, comment formatting, etc
2010-12-17 19:14:35 -05:00
Matthias Clasen
453bf477ed Don't query the position of keyboards
Turns out that this causes X errors with the XI2 implementation.
2010-12-17 18:41:24 -05:00
Matthias Clasen
8bc4e13c22 No links in title, please 2010-12-17 18:41:24 -05:00
Colin Walters
d08ff485f2 gdkwindow: Fix event unref iteration
We were double looping previously which caused a NULL deref.
2010-12-17 15:41:15 -05:00
Matthias Clasen
33fb60e050 Fix an escaping problem
& must be escaped as &amp; in examples.
2010-12-17 14:53:43 -05:00
Matthias Clasen
55a0f8700f Another doc format problem 2010-12-17 14:51:53 -05:00
Matthias Clasen
17c7bda6a3 Fix a doc comment format problem
Parameters / enum values come first, then the paragraph.
2010-12-17 14:50:55 -05:00
Matthias Clasen
5627ba161e More parameter name mismatches 2010-12-17 14:49:27 -05:00
Matthias Clasen
9d8682b9ac Fix a few parameter name mismatches 2010-12-17 14:46:18 -05:00
Matthias Clasen
b32f4ae7c4 Add deprecation guards for gtk_icon_set_render_icon 2010-12-17 14:31:44 -05:00
Matthias Clasen
55ffebe505 Avoid a gtk-doc warning 2010-12-17 14:27:48 -05:00
Matthias Clasen
4317ae32c3 Adjust symbol lists in the docs 2010-12-17 14:24:25 -05:00
Cosimo Cecchi
b792a31995 widgetpath: allow GTypes non-derived from GTK_TYPE_WIDGET
This makes things like GtkCellRenderer or GtkNumerableIcon more easily
themeable.

https://bugzilla.gnome.org/show_bug.cgi?id=637169
2010-12-17 18:30:57 +01:00
Colin Walters
806c04411d gdk: Fix GdkWindowFilter internal refcounting
Running gnome-shell under valgrind, I saw the attached invalid write.
Basically we can destroy a window during event processing, and the old
window_remove_filters simply called g_free() on the filter, ignoring
the refcount.  Then later in event processing we call filter->refcount--,
which is writing to free()d memory.

Fix this by centralizing list mutation and refcount handling inside
a new shared _gdk_window_filter_unref() function, and using that
everywhere.

==13876== Invalid write of size 4
==13876==    at 0x446B181: gdk_event_apply_filters (gdkeventsource.c:86)
==13876==    by 0x446B411: _gdk_events_queue (gdkeventsource.c:188)
==13876==    by 0x44437EF: gdk_display_get_event (gdkdisplay.c:410)
==13876==    by 0x446B009: gdk_event_source_dispatch (gdkeventsource.c:317)
==13876==    by 0x4AB7159: g_main_context_dispatch (gmain.c:2436)
==13876==    by 0x4AB7957: g_main_context_iterate.clone.5 (gmain.c:3087)
==13876==    by 0x4AB806A: g_main_loop_run (gmain.c:3295)
==13876==    by 0x8084D6B: main (main.c:722)
==13876==  Address 0x1658bcac is 12 bytes inside a block of size 16 free'd
==13876==    at 0x4005EAD: free (vg_replace_malloc.c:366)
==13876==    by 0x4ABE515: g_free (gmem.c:263)
==13876==    by 0x444BCC9: window_remove_filters (gdkwindow.c:1873)
==13876==    by 0x4454BA3: _gdk_window_destroy_hierarchy (gdkwindow.c:2043)
==13876==    by 0x447BF6E: gdk_window_destroy_notify (gdkwindow-x11.c:1115)
==13876==    by 0x43588E2: _gtk_socket_windowing_filter_func (gtksocket-x11.c:518)
==13876==    by 0x446B170: gdk_event_apply_filters (gdkeventsource.c:79)
==13876==    by 0x446B411: _gdk_events_queue (gdkeventsource.c:188)
==13876==    by 0x44437EF: gdk_display_get_event (gdkdisplay.c:410)
==13876==    by 0x446B009: gdk_event_source_dispatch (gdkeventsource.c:317)
==13876==    by 0x4AB7159: g_main_context_dispatch (gmain.c:2436)
==13876==    by 0x4AB7957: g_main_context_iterate.clone.5 (gmain.c:3087)

https://bugzilla.gnome.org/show_bug.cgi?id=637464
2010-12-17 12:07:37 -05:00
Kristian Rietveld
faf35d708b Fix size allocation for list mode combo box 2010-12-17 16:53:46 +01:00
Kristian Rietveld
21fc66f120 Set cell_view to NULL immediately after unparenting
This way we are sure no invalid pointer will be accessed in between.
2010-12-17 16:53:46 +01:00
Kristian Rietveld
81515f7183 Check if popup_window is mapped, not popup_widget
Before hide_all was used on popup_window, which means popup_widget
was also unmapped.  This is now no longer the case.  This fixes
subsequent pop ups for appears-as-list == 1.
2010-12-17 16:53:46 +01:00
Benjamin Otte
d50c582961 selection: constify GtkSelectionData getters 2010-12-17 16:47:57 +01:00
Carlos Garnacho
2c8c1c6df4 Remove *_set_extension_events() and old API to query devices.
The old functions to get core pointer and devices list are gone as
well. This slice is entirely replaced internally by multidevice
handling and may just go.
2010-12-17 16:25:14 +01:00
Bastien Nocera
23c1d1cbc9 gtk: Add symbolic property for GtkVolumeButton
When the application prefers symbolic icons, avoids
having to reimplement the button in the software itself.

https://bugzilla.gnome.org/show_bug.cgi?id=636969
2010-12-17 13:23:23 +00:00
Kjartan Maraas
668604dcfd Updated Norwegian bokmål translation 2010-12-17 13:09:58 +01:00
Tristan Van Berkom
df0d61e50d Fixed gtk_entry_set_icon_tooltip_text & markup to not crash
Setting this property before the icon is actually set was
resulting in a crash (found by way of Glade bug 606103).
2010-12-17 18:15:08 +09:00
Tristan Van Berkom
b11bb46a76 Fixed parameter names in gtkcellarea.h for gtk-doc parsing. 2010-12-17 15:35:21 +09:00
Tristan Van Berkom
941a0e95d7 Fixed documentation of GtkCellLayout <cell-packing>
Mention that it's safe to use <cell-packing> tag for any GtkCellLayout
in GTK+ since they *all* use an underlying GtkCellArea (at least they
will once the other branches land).
2010-12-17 15:26:28 +09:00
Tristan Van Berkom
71e7cd0ec4 Merge branch 'master' into treeview-refactor
Conflicts:
	tests/testtreeedit.c
2010-12-17 15:25:15 +09:00
Kristian Rietveld
735fa8b197 Avoid recursion in do_validate_rows()
I have never really liked the updates done to the adjustments in
do_validate_rows() and other validation functions.  But it is really
required.  I have to come up with a real solution to this one day.
2010-12-16 23:33:42 +01:00
Kristian Rietveld
88f8859f90 Should pass inner_area to cell in gtk_cell_area_activate_cell() 2010-12-16 22:42:10 +01:00
Kristian Rietveld
e3cab18354 Clip focus rectangle to background area 2010-12-16 12:33:00 +01:00
Kristian Rietveld
c01ad6f615 Fix background area calculation in RTL mode 2010-12-16 12:26:18 +01:00
Javier Jardón
e9a77a1535 docs: gtknotebook.c: Use accessor functions to access GtkSelectionData 2010-12-16 00:16:00 +00:00
Javier Jardón
cf9e9ff47f gtk/gtkclipboard.c: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:16 +00:00
Javier Jardón
e5a3b7edbf gtk/gtkcolorbutton.c: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:16 +00:00
Javier Jardón
1a2d9c368e gtk/gtkcolorsel.c: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:16 +00:00
Javier Jardón
a86d1fa7c3 gtk/gtkdnd.c: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:16 +00:00
Javier Jardón
499aa2b3b9 gtk/gtkfilechooserbutton.c: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:16 +00:00
Javier Jardón
c806c0821a gtk/gtkfilechooserdefault.c: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:16 +00:00
Javier Jardón
fbbe9f5191 gtk/gtkiconview.c: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:16 +00:00
Javier Jardón
8537163e20 gtk/gtklinkbutton.c: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:16 +00:00
Javier Jardón
ad4ac2182a gtk/gtknotebook.c: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:15 +00:00
Javier Jardón
1ceddae7da gtk/gtktextbuffer: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:15 +00:00
Javier Jardón
2b7afcdd79 gtk/gtktextview.c: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:15 +00:00
Javier Jardón
7c6012d933 gtk/gtktoolpalette.c: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:15 +00:00
Javier Jardón
640f85e568 gtk/gtktreednd.c: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:15 +00:00
Javier Jardón
1cfd78269e gtk/gtktreeview.c: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:15 +00:00
Javier Jardón
a66f095b62 demos/gtk-demo/clipboard.c: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:15 +00:00
Javier Jardón
7105e8e907 tests: Use accessor functions to access GtkSelectionData 2010-12-15 23:58:15 +00:00
Kristian Rietveld
a28c11a27f Clip to cell_area when rendering cell content
This fixes a GTK+ 3.0 regression.  In GTK+ 2, the render method
on GtkCellRenderer had a expose_area parameter, typically set to
cell_area.  This parameter was used for clipping cell content to be
rendered to the cell area (and thus clipping to within the focus
rectangle).  During the rendering clean up this parameter was removed
and no clipping put back into place.

Since expose_area was usually equal to cell_area anyway, it does not make
sense to reintroduce the expose_area parameter.  Instead, we do clipping at
two levels:
 - in gtk_cell_renderer_render() we clip to background_area.  We cannot
clip to cell_area here because we want to allow cell renderers to
render in the background area (e.g. background color/effect).
 - cell renderers should clip to clip_area when rendering cell
content individually (as they had to individually clip to expose_region
before).
2010-12-16 00:07:08 +01:00
Kristian Rietveld
c8d130efa7 Revisit "Handle clicks in indentation area"
Check (x, y) is inside background area.  If yes, continue processing
and clamp the coordinates into cell area.  This way we will properly
handle getting a cell (which is only used for setting the focus cell)
for clicks in the indentation area (in LTR and RTL mode) and clicks
in the focus rectangle area in case focus-line-width is large.
2010-12-15 23:55:26 +01:00
Jorge González
67f6a43702 Updated Spanish translation 2010-12-15 22:00:00 +01:00
Kristian Rietveld
5399f7b6e6 Make testtreeview handle RTL environment variable for testing 2010-12-15 21:36:47 +01:00
Kristian Rietveld
8e98333d8b RTL fix for gtk_tree_view_focus_to_cursor() 2010-12-15 21:31:35 +01:00
Kristian Rietveld
92e145e719 No need to correct direction for rtl, GtkCellArea takes care of that 2010-12-15 21:27:40 +01:00
Kristian Rietveld
0112c32c5b Make testcellarea handle RTL environment variable for testing 2010-12-15 21:22:35 +01:00
Kristian Rietveld
be39883de2 Correct calculation of the cell focus rectangle
The cell's focus rectangle is located around the cell's aligned area.
To get to the correct coordinates for this rectangle, we have to subtract
focus_line_width from the found aligned_area.
2010-12-15 21:17:27 +01:00
Carlos Garnacho
ec82d133b1 Remove debug messages from GdkDevice 2010-12-15 15:48:43 +01:00
Benjamin Otte
198fc0b774 tests: Hardcode testinput colors instead of trying to use GtkStyle
Makes it work with new themeing APIs.
2010-12-15 14:51:26 +01:00
Benjamin Otte
cae6021d3a tests: Make testiconview-keynav set its custom style using CSS. 2010-12-15 14:51:26 +01:00
Benjamin Otte
1b64655eb6 cssprovider: Explode if we fail to parse the default CSS
This can only happen if somebody really messed up with a checkin, and in
that case we want to explode early.
2010-12-15 14:51:26 +01:00
Benjamin Otte
9e393020c4 gail: Fix for new style code 2010-12-15 14:51:26 +01:00
Benjamin Otte
211ccb5c73 xim: Fix for new style code 2010-12-15 14:51:26 +01:00
Benjamin Otte
d3ed729643 gtkrc: Remove unused code
Makes gcc happy.
2010-12-15 14:51:26 +01:00
Benjamin Otte
e77ce71caa gtk-demo: gtk_widget_render_icon() => gtk_widget_render_icon_pixbuf() 2010-12-15 14:51:26 +01:00
Benjamin Otte
e274ac4b6c tests: gtk_widget_render_icon() => gtk_widget_render_icon_pixbuf() 2010-12-15 14:51:26 +01:00
Benjamin Otte
1312f774f5 tests: gtk_widget_render_icon() => gtk_widget_render_icon_pixbuf() 2010-12-15 14:51:26 +01:00
Benjamin Otte
7caec64bc3 tests: gtk_widget_render_icon() => gtk_widget_render_icon_pixbuf() 2010-12-15 14:51:26 +01:00
Benjamin Otte
6aa745b819 tests: gtk_widget_render_icon() => gtk_widget_render_icon_pixbuf() 2010-12-15 14:51:26 +01:00
Benjamin Otte
b0b9c9683b dnd-quartz: gtk_widget_render_icon() => gtk_widget_render_icon_pixbuf() 2010-12-15 14:51:25 +01:00
Benjamin Otte
88767b0af7 gdk: Don't use NULL for integers 2010-12-15 14:51:25 +01:00
Florian Müllner
ce5dae6702 Complete renaming of gdk_enable_multidevice()
The function was renamed in commit c4a5c2ed4, but some places were
missed, most notably the public header.
2010-12-15 13:05:11 +01:00
Benjamin Otte
544146b9be size-request: Clamp size requests to screen size
Size requests should only ever need to return the screen's width/height
and max. This way, potentially large widgets (tree view or icon view)
don't need to do so many computations, but can stop when their computed
size has reached the screen size.
2010-12-15 10:41:20 +01:00
Matthias Clasen
208d717fef Optimize gdk_window_set_shape_combine_region
When setting no shape on an unshaped window, nothing changes,
so return early instead of recomputing lots of visibility
information.

Pointed out by Owen Taylor in bug 637156.
2010-12-14 22:21:39 -05:00
Matthias Clasen
b7fd6f1e88 Remove gtk_widget_reset_shapes
See bug 637155.
2010-12-14 22:15:33 -05:00
Carlos Garnacho
f9ed6baeb4 Improve docs for gtk_widget_reset_style().
Document that it may be needed in containers when
children are reordered.
2010-12-15 03:33:01 +01:00
Carlos Garnacho
44a7ef7bec Add gdk_window_[gs]et_source_events()
This function will enable events for all devices of a given
GdkInputSource, either these available at the time of the call,
or these that are connected in the future.
2010-12-15 03:17:59 +01:00
Carlos Garnacho
be7de347bf xi2: Improve device hierarchy handling
The xi2 device manager now handles slaves being detached and/or
attached to a master.

gdk_device_list_slaves() has been added so it is possible to
know how slaves relate with masters. The other backends (X11 and not)
don't neeed to to anything special here since their hierarchy is
fully flat.
2010-12-15 03:17:59 +01:00
Carlos Garnacho
9f41101ccc Emit GdkDevice::changed when the slave device being used changes
When the slave device changes, the master takes the shape of the
new one, modifying its axes, this signal is more useful to catch
this situation than the n-axes property
2010-12-15 03:17:58 +01:00
Carlos Garnacho
f5a20ab65a Add gdk_event_[gs]et_source_device().
This function may be used to know the hardware device that triggered
an event, it could resort to the master device in the few cases there's
not a direct hardware device to relate to the event (i.e.: crossing events
due to grabs)
2010-12-15 03:17:58 +01:00
Carlos Garnacho
c4a5c2ed4b Enable XI2 by default
gdk_enable_multidevice() has been replaced with gdk_disable_multidevice(),
so applications may call that function if they want to go back at the
previous behavior.

There would be usually little reasons to call that function, unless the
application is doing X calls itself that count on old fashioned core
devices.
2010-12-15 03:17:58 +01:00
Carlos Garnacho
66800aa212 Make GtkTextView use GtkStyleContext
GtkTextAppearance still uses GdkColors, even though it could
switch to GdkRGBA with little hassle as it seems sheldomly used
out there.
2010-12-15 03:17:58 +01:00
Diego Escalante Urrelo
b0560107e9 docs: fix link failure on gtk-doc scanner binaries
Bug #637243
2010-12-14 20:31:14 -05:00
Diego Escalante Urrelo
02f92f29d5 gtkstylecontext: fix typos in annotations
Fixes Bug #637256
2010-12-15 00:46:25 +00:00
Benjamin Otte
9929743f24 docs: Redo drawing area drawing docs
They don't seem to have been updated for a long time...
2010-12-14 21:10:22 +01:00
Tristan Van Berkom
8ca6bbbfc0 Make GtkCellArea independantly GtkBuildable.
Simply use the GtkCellLayoutIface hooks for this.
2010-12-14 15:52:40 +09:00
William Jon McCann
96a4fc4e5b Update about dialog design to not use a swarm of dialogs
This is a modernization of the GtkAboutDialog look done
by William Jon McCann. The most noteworthy changes are:
- no more subdialogs
- show license short text in the main dialog
- less verbose email link formatting
- the dialog is modal to its transient parent
2010-12-14 00:15:21 -05:00
Carlos Garnacho
ee31a016ec Make GtkInfoBar use GtkStyleContext
All colors are defined now in the default css, and classes have
been added so the bars are fully themeable (as opposed to
gtk_widget_override_*, which require changing the color map itself)
2010-12-14 02:29:57 +01:00
Carlos Garnacho
fbb75b9b5d Add headers/docs changes for gtk_theming_engine_get_font()
Apparently I didn't git add enough...
2010-12-13 22:42:05 +01:00
Carlos Garnacho
afca06b362 Add getter for font description in GtkThemingEngine
This function is analogous to gtk_style_context_get_font().
2010-12-13 22:31:30 +01:00
Carlos Garnacho
a517cf1bed Make GtkExpander use GtkStyleContext 2010-12-13 22:31:30 +01:00
Carlos Garnacho
89e6cad92f GtkSpinButton: Use GtkStyleContext 2010-12-13 22:31:29 +01:00
Carlos Garnacho
c64a1891f8 Port GtkRange widgets to GtkStyleContext 2010-12-13 22:31:29 +01:00
Carlos Garnacho
3306305fe1 GtkNotebook: Use GtkStyleContext. 2010-12-13 22:31:29 +01:00
Carlos Garnacho
8b8eab1c81 GtkEntry: Use GtkStyleContext. 2010-12-13 22:31:28 +01:00
Carlos Garnacho
618b1a8b33 GtkCssProvider: Make selectors applying from the topmost widget rank higher
For example, for an entry within a notebook, previously these 2 rules would
have the same weight:

.entry {}
.notebook {}

Now ".entry" will rank higher than ".notebook" for the GtkEntry, further
specific selectors such as:

.notebook .entry {}

still get a higher score than the previous ones.
2010-12-13 22:31:28 +01:00
Carlos Garnacho
d80868aa68 GtkThemingEngine: Render tabs background in the correct direction.
The cairo context has been already rotated, so using GTK_JUNCTION_BOTTOM
is expected to be used there.
2010-12-13 22:31:28 +01:00
Carlos Garnacho
2371ed8b87 GtkThemingEngine: handle expander transitions to active, and rtl 2010-12-13 22:31:28 +01:00
Carlos Garnacho
1f697f2695 GtkThemingEngine: remove unused variable 2010-12-13 22:31:27 +01:00
Carlos Garnacho
99f59d8266 Fix coalescing of state animation areas for multiple window widgets.
Coordinates needed to be translated relative to the window position
in within the widget.
2010-12-13 22:31:27 +01:00
Paolo Borelli
f285a84bd6 Add convenience function for the font description. 2010-12-13 22:31:27 +01:00
Tristan Van Berkom
e2c8ecba30 Fixed an error in my last commit in gtk_cell_area_box_context_copy(). 2010-12-13 19:13:43 +09:00
Tristan Van Berkom
623abdedf6 Added gtk_entry_completion_new_with_area() 2010-12-13 15:58:07 +09:00
Tristan Van Berkom
96d636a780 Updated some docs and gtk.symbols file for new apis
Added gtk_cell_area_context_get_preferred_height_for_width and
width_for_height & gtk_cell_area_copy_context() to gtk.symbols
and gtk3-sections.txt (also finished up documenting those apis).
2010-12-13 15:43:58 +09:00
Tristan Van Berkom
41cd9d1394 Fixed gtk_cell_area_box_context_copy() to also copy it's allocations. 2010-12-13 15:37:12 +09:00
Kristian Rietveld
d743ecf82e Handle clicks in indentation area
For this case, we want to set focus on the first cell in the column.
2010-12-12 17:32:59 +01:00
Tristan Van Berkom
2e1e97305f Make GtkTreeView explicitly focus the first cell in the first column when grabbing focus
When focus is initially grabbed and there is no focus column, when selecting
the first column for focus, further explicitly focus into the first cell
using gtk_cell_area_focus().
2010-12-12 17:21:28 +01:00
Tristan Van Berkom
31226ebfb2 Fixed GtkTreeView to give focus back to the last focued cell when hitting
the edge.

When focusing left/right or up/down inside GtkCellArea, now we save what
was the last focused cell and if we hit the side (or top or bottom) of
the view we then restore focus to the last focused cell.
2010-12-12 17:21:28 +01:00
Tristan Van Berkom
7e526d57f0 Add an editable cell to testverticalcells showing functional vertical focus navigation. 2010-12-12 17:21:28 +01:00
Tristan Van Berkom
632f1f3ac4 Modified gtk_tree_view_move_cursor_up_down to move focus inside the cell area
This currently leaves us the problem of maintaining the right cell in
focus for horizontal areas, the solution for that comming in the
next patch.
2010-12-12 17:21:28 +01:00
Tristan Van Berkom
2752fd0f16 Removing gtk_tree_view_move_focus_column() and only calling gtk_cell_area_focus()
This function did alot of nothing, gtk_cell_area_focus() simply returns whether
the focus stays in the area (column) or not, seems not to cause regressions to
just call it directly instead.
2010-12-12 17:21:28 +01:00
Tristan Van Berkom
0431dd67f8 Added apis to GtkCellArea for GtkIconView purposes.
Added a few apis,

  - GtkCellAreaContext get_preferred_height_for_width &
    width for height apis and vfuncs, this lets the icon view
    request the collective (and aligned) height for width for
    a said row.

  - gtk_cell_area_copy_context() this creates a duplicate of
    an already created and requested context, this way the icon
    view uses a global context to request the widths of all rows
    and then makes a copy with all the stored alignments and
    uses a separate copy to calculate the height and alignments
    of each row separately.
2010-12-13 00:29:21 +09:00
Kristian Rietveld
ff39c76bfd Welcome _gtk_tree_view_column_get_cell_at_pos to the second dimension 2010-12-12 15:22:49 +01:00
Kristian Rietveld
cbfc3f5bf0 Make gtk_tree_view_get_cell_area() aware of row separators 2010-12-12 15:09:27 +01:00
Kristian Rietveld
8c743a0363 Add unit test for row separator height 2010-12-12 15:03:33 +01:00
Kristian Rietveld
d142d8bb6c Do not enforce a minimum of expander_size in gtk_tree_view_get_row_height
Instead this is now enforced in gtk_tree_view_get_cell_area_height().
There are rows for which a height in between 0 and expander_size is
allowed, for example separator rows.
2010-12-12 14:34:26 +01:00
Tristan Van Berkom
1c8093b65e Fixed some glitches in GtkCellAreaBox keynav from my last commit. 2010-12-12 20:40:34 +09:00
Tristan Van Berkom
89b3700b78 Make GtkCellAreaBox remember what was the last focus cell so that when
cycling focus from row to row for a horizontal area we can remember
where focus was the last time around.
2010-12-12 20:40:26 +09:00
Tristan Van Berkom
2f4e451075 Added "edit_only" argument to gtk_cell_area_activate()
This argument allows the caller to specify that only an editable
cell should start editing but an activatable cell should not toggle
it's state, this is important for public apis like
gtk_tree_view_set_cursor_on_cell() which are only intended to
programatically bring attention to the editing of a specific
row or cell but not actually change any data.

GtkTreeView & CellAreaScaffold updated for the last minute api change.
2010-12-12 17:15:46 +09:00
Tristan Van Berkom
46c49ee260 Removed the resetting_context flag from GtkTreeViewColumn private data
No longer need to detect if we're currently resetting the context since
the context properly now avoids re-triggering the reset by properly
avoiding to notify properties that dont change as a result of the reset.
2010-12-12 16:43:07 +09:00
Tristan Van Berkom
fa71b24e9a Fixed gtk_cell_area_context_real_reset() to only notify properties if they change. 2010-12-12 16:42:37 +09:00
Milan Bouchet-Valat
029083454b [GtkComboBoxText] Add checks for id-column/entry-text-column >= 0
If the GtkComboBoxText doesn't have id-column or entry-text-column
set for some reason (value -1), better warn and return. Else, unrelated
assertions fail, and warnings from gtk_tree_model_get_column_type()
are printed, which are not really obvious.

https://bugzilla.gnome.org/show_bug.cgi?id=637018
2010-12-11 19:10:51 +01:00
Matthias Clasen
3b90d877b7 Remove unused header 2010-12-10 23:39:10 -05:00
Matthias Clasen
948ab1a168 Don't access GdkVisual fields directly
Use accessors instead.
2010-12-10 02:32:18 -05:00
Matthias Clasen
83204928b9 Don't access GdkDragContext fields directly
Instead use the accessors.
2010-12-10 00:59:07 -05:00
Matthias Clasen
fe5e0e4502 Add some forgotten accessors for GdkDragContext
These fields are accessed in gtk.
2010-12-10 00:58:33 -05:00
Martyn Russell
bb87eada6b gtksearchenginetracker: Update to work with libtracker-sparql
libtracker-sparql is available in Tracker 0.9/0.10
2010-12-09 23:53:51 +00:00
Benjamin Otte
ddb5e12e61 docs: Reinstate pixbufs section in GDK docs
It was accidentally removed in 0775b0a858
2010-12-09 23:56:25 +01:00
Benjamin Otte
3070d6e3d5 Revert "docs: Reinstate pixbufs section in GDK docs"
I committed my whole working tee instead of just one file. Ooops.
This reverts commit ded14b2562.
2010-12-09 23:55:33 +01:00
Benjamin Otte
ded14b2562 docs: Reinstate pixbufs section in GDK docs
It was accidentally removed in 0775b0a858
2010-12-09 11:14:21 +01:00
Tristan Van Berkom
95ca1e241c Removed calculation of background area when about to edit a cell (no need to check the background area of the cell in this case). 2010-12-09 13:59:17 +09:00
Tristan Van Berkom
32d9396f00 Changed misleading variable name in gtk_cell_area_real_activate. 2010-12-09 13:59:04 +09:00
Guillaume Desmottes
107cebe546 gtk_css_provider_get_named: don't leak subpath (#636777) 2010-12-08 21:13:03 -05:00
Matthias Clasen
05abea6c4f Add missing include
See bug 636732
2010-12-08 11:49:48 -05:00
Marek Kasik
da85312097 Mark conflicts when printer has changed
Schedule marking of conflicts when printer has changed.
Map conflict warning immediately. (#635401)
2010-12-08 17:37:27 +01:00
Carlos Garcia Campos
24e832187f GtkCellRendererPixbuf: Use gtk_widget_render_icon_pixbuf()
Instead of gtk_widget_render_icon() which is now deprecated.
2010-12-08 17:16:02 +01:00
Carlos Garcia Campos
e779b8f249 GtkIconFactory: mention gtk_widget_render_icon_pixbuf() in docs
Instead of gtk_widget_render_icon() which is now deprecated.
2010-12-08 17:15:25 +01:00
Carlos Garcia Campos
3a3a4e8f3b GtkStatusIcon: Use gtk_widget_render_icon_pixbuf()
Instead of gtk_widget_render_icon() which is now deprecated.
2010-12-08 17:14:48 +01:00
Carlos Garcia Campos
2dde04140d GtkImage: Use gtk_widget_render_icon_pixbuf()
Instead of gtk_widget_render_icon() which is now deprecated.
2010-12-08 17:13:43 +01:00
Carlos Garcia Campos
e2100b13d0 GtkFileChooser: Use gtk_widget_render_icon_pixbuf()
Instead of gtk_widget_render_icon() which is now deprecated.
2010-12-08 17:12:59 +01:00
Carlos Garcia Campos
a5dba1670e GtkEntry: Use gtk_widget_render_icon_pixbuf()
Instead of gtk_widget_render_icon() which is now deprecated.
2010-12-08 17:12:14 +01:00
Carlos Garcia Campos
8017092977 dnd: Use gtk_widget_render_icon_pixbuf()
Instead of gtk_widget_render_icon() which is now deprecated.
2010-12-08 17:10:34 +01:00
Carlos Garcia Campos
5582bd23fb Add gtk_widget_render_icon_pixbuf() prototype to gtkwidget.h
And move gtk_widget_render_icon() to deprecation guards block
2010-12-08 16:46:57 +01:00
Paolo Borelli
61731c65aa Annotate ColorButton get_color and get_rgba. 2010-12-08 15:30:42 +01:00
Paolo Borelli
f5d7a63aff Fix gtk_builder_add_objects_from_file g-i annotation
Use the same annotation already used for add_objects_from_string
2010-12-08 15:15:50 +01:00
Tristan Van Berkom
f1c26dfdb2 Fixed gtk-docs typo in gtkcellarea.c 2010-12-08 22:31:33 +09:00
Tristan Van Berkom
40e9f91f43 Fixed foreach_alloc call from gtk_cell_area_real_render to pass the real background area. 2010-12-08 21:27:52 +09:00
Tristan Van Berkom
34f4b5c190 Added 'background_area' calculation to GtkCellAreaClass->foreach_alloc vfunc
This allows us to reduce code allocation code paths in subclasses, as
a result GtkCellArea implements the ->render() vfunc and the subclass
only decides the cell area and background area distributions in a single
code path.
2010-12-08 21:18:05 +09:00
Robert Ancell
6188ea608f Add missing X11/Xlib.h include required for X11/extensions/sync.h 2010-12-08 18:44:20 +11:00
Tristan Van Berkom
a47a557fc3 Merge branch 'master' into treeview-refactor 2010-12-08 15:24:49 +09:00
Milan Bouchet-Valat
13209a9a6c More annotations for GdkDisplay
Mostly (out), and a few (allow-none) for parameters.
2010-12-07 19:12:57 +01:00
Matthias Clasen
38321eacbf GtkStyleContext migration guide tweaks
Move the guide into the 2-to-3 guide, since it is something
you have to do when porting from 2 to 3. Also add an example
for handling of temporary state changes and some more text
about color handling.
2010-12-07 12:59:17 -05:00
Matthias Clasen
5ac194c2d7 Some doc additions 2010-12-07 09:55:30 -05:00
Tristan Van Berkom
fc5cabba90 Added minimum size parameter to GtkWidgetClass->adjust_size_allocation.
This allows us to add a check before executing
->get_preferred_height_for_width() to ensure we always
request for at least the minimum required size (and lets
us remove the warning in gtkcontainer.c telling implementors
to do this check manually from thier container implementations).
2010-12-07 23:47:40 +09:00
Cosimo Cecchi
503be10148 label: plug a memory leak 2010-12-07 10:13:32 +01:00
Cosimo Cecchi
6f67f5281f app-chooser-widget: plug a memory leak 2010-12-07 10:08:47 +01:00
Tristan Van Berkom
5fef00de2c Adding gtk_tree_view_column_new_with_area to gtk.symbols and gtk3-sections.txt. 2010-12-07 17:04:04 +09:00
Tristan Van Berkom
1b33698384 Revert "Temporary fix to make separator rows request enough space for the expander size."
This reverts commit 515af9ce70.
2010-12-07 14:09:26 +09:00
Tristan Van Berkom
515af9ce70 Temporary fix to make separator rows request enough space for the expander size.
This fix is incorrect, treeviews dont rely on the expander size for drawing
separator rows (added XXX comment in line), need to fix this somewhere else
2010-12-07 13:52:31 +09:00
Tristan Van Berkom
97e060b094 Fixed my mistake in validate_row (), now the height of treeviews in GtkEntryCompletion is correct again. 2010-12-07 13:52:18 +09:00
Matthias Clasen
509e0423e1 Bump version 2010-12-06 20:37:30 -05:00
Matthias Clasen
fae1e74812 More !srcdir fixes for the stylecontext test 2010-12-06 19:05:18 -05:00
Matthias Clasen
26f6b48ccb Update for the removal of gtk_decorated_window_ apis 2010-12-06 17:44:12 -05:00
Matthias Clasen
fe008de12c Fix POTFILES for recent changes 2010-12-06 14:35:13 -05:00
Matthias Clasen
f2ab9e497d Prepare the stylecontext test to run out-of-srcdir
This is necessary to make distcheck work.
2010-12-06 14:13:07 -05:00
Matthias Clasen
ad80cb6279 Allow + in identifiers
This is necessary since we treat paths as identifiers in
@import rules, and it is common to have a + in there (at least
when distchecking gtk+ ...)
2010-12-06 14:13:07 -05:00
Benjamin Otte
9b042e39ec gdk: Add section docs for GdkRGBA 2010-12-06 18:57:11 +01:00
Benjamin Otte
fc711434bc gtk: Remove old DirectFB code for drawing window decorations
I'm not sure it'd even compile.
2010-12-06 18:57:11 +01:00
Benjamin Otte
8f8aeb7dfe gdk: Remove GdkWindowObject typedef
It's unused by now.
2010-12-06 18:57:11 +01:00
Kjartan Maraas
48e92c6939 Updated Norwegian bokmål translation 2010-12-06 18:14:03 +01:00
Colin Walters
65e3c09139 introspection: Fix (out) for gdk_screen_get_monitor_geometry
Scanner doesn't detect this case correctly because it's a typedef;
work around it here by explicitly specifying that it's caller
allocates.  See bug 636393 for the scanner issue.
2010-12-06 11:42:47 -05:00
Colin Walters
66f0f55b62 configure: Drop AC_PREREQ back down to 2.62
Commit 39f5740763 bumped the
autoconf version to 2.64 with no explicit rationale.  It looks
to me like a copy-and-paste error.  Reverting back to 2.62 (the
previous version).  2.63 at least (RHEL6) works here.
2010-12-06 11:27:57 -05:00
Matthias Clasen
96139cbb00 Update NEWS for 2.91.6 2010-12-06 10:56:03 -05:00
Matthias Clasen
48dba326c2 Disable theme engines for now
They need to be ported to GtkThemingEngine.
2010-12-06 10:19:00 -05:00
Murray Cumming
d23fb64d97 Fix a typo to fix the build. 2010-12-06 16:01:55 +01:00
Matthias Clasen
5f75ffc974 Add gtk_widget_path_get_type to the headers
Bug 636591
2010-12-06 09:50:01 -05:00
Kristian Rietveld
fd6e57687d Port Quartz backend to latest rendering-cleanup changes 2010-12-06 14:15:47 +01:00
Matthias Clasen
3b753aa05e Fix Makefile syntax 2010-12-06 07:26:00 -05:00
Tristan Van Berkom
55bbe4a3a5 Adding gtk_tree_view_column_new_with_area().
Creates a treeviewcolumn using a specific GtkCellArea.
This patch also makes GtkEntryCompletion use the new api
instead of g_object_new().
2010-12-06 19:04:51 +09:00
Tristan Van Berkom
f08f1f92aa Fixed some nit-picking bugs in GtkCellArea
- Dont try fetching a cell renderer for an event when the event
    coordinate is outside the cell area allocation (can happen
    on the y axis, not all events are button events).
  - Dont remove focus-line-width (inner area) an extra time from
    GtkCellArea->event
  - Dont remove focus-line-width from the cell area at all for the
    editable widget... use the whole area including the focus line
    (compared with git master behaviour and now it looks right, check
    the multiline editable string in testtreeedit).
2010-12-06 17:27:03 +09:00
Tristan Van Berkom
0d0ec85877 Fixed GtkTreeViewColumn to reset the context when _gtk_tree_view_column_cell_set_dirty is called.
This fixes autosize columns... result can be viewable by checking
tests/testtreeview and setting the second column to autosize and then
expanding/colapsing some rows.
2010-12-06 17:03:53 +09:00
Tristan Van Berkom
bf1aa2ad87 Changed GtkTreeViewColumn->requested_width to ->padding
Now we bookkeep the treeview assigned padding asides from the
requested width stored in the GtkCellAreaContext, this removes
the need for bookkeeping the deepest expanded depth in gtktreeview.c

At allocation time, just remove the padding from the allocated width
of the column and feed the rest to the underlying cell area.
2010-12-06 16:31:07 +09:00
Tristan Van Berkom
a090d62339 Added expand controls to testtreeedit (now you can play with align & expand effects in cells there). 2010-12-06 16:30:18 +09:00
Tristan Van Berkom
9366a345b4 Fix GtkCellAreaBox allocate_cells_manually to handle undersized areas. 2010-12-06 16:29:40 +09:00
Tristan Van Berkom
c6572265cb Fixed gtk-doc statement in GtkCellArea header 2010-12-06 16:29:13 +09:00
Matthias Clasen
f1fafca6ca Make invalid stylesheets fail to parse again
The recent improvements to error reporting caused gtk_css_provider_load...
to always return TRUE and leave the error unset. Error messages were instead
dumped out with g_message, which is not helpful.

This commit changes things back to the way they were before:
If a GError is passed in, parsing will fail at the first error, reporting
it in the given GError. If no GError is passed in, we keep going and
just issue the warning messages. This fixes the parser tests.
2010-12-06 00:47:13 -05:00
Matthias Clasen
94c9eb72ce Don't use g_warning when loading an engine fails
This causes the tests to abort if clearlooks can't be found.
2010-12-06 00:44:01 -05:00
Tristan Van Berkom
2588165bfb Added gtk_cell_area_foreach_alloc() to further simplify GtkCellArea subclasses
gtk_cell_area_foreach_alloc() itterates over an allocated list of cells
and calls a callback with the cell's allocation until the callback returns
TRUE.
  - Removed vfunc get_cell_allocation() and implemented
    gtk_cell_area_get_cell_allocation() using foreach_alloc()
  - Added gtk_cell_area_get_cell_at_position() using foreach_alloc()
  - Removed GtkCellAreaBox ->event() implementation and implemented
    mouse "click" cell activation in GtkCellArea class directly using
    gtk_cell_area_get_cell_at_position().
2010-12-06 14:11:28 +09:00
Tristan Van Berkom
4b065f5389 Changed gtk_cell_area_forall to gtk_cell_area_foreach since thats more widely used semantics.
Also gave a boolean return value to the callback to allow breaking out of the loop.
2010-12-06 12:41:38 +09:00
Benjamin Otte
d378470e87 appchooser: Remove bogus function declaration 2010-12-06 01:30:19 +01:00
Benjamin Otte
6d6ee9a26a style: Remove unused code 2010-12-06 01:02:52 +01:00
Benjamin Otte
e4c9d1a321 gdk: Constify argument to gdk_rgba_copy() 2010-12-06 01:02:52 +01:00
Benjamin Otte
d55073fde6 gdk: Remove depth argument from GdkWindowImpl->get_geometry() 2010-12-06 01:02:52 +01:00
Benjamin Otte
645d0ac403 API: gdk: Remove depth argument from gdk_window_get_geometry()
We don't want to expose depth anymore. If you need it, query the visual.
2010-12-06 01:02:52 +01:00
Benjamin Otte
84fd9b166c gdk: Remove nonexisting function from internal header 2010-12-06 01:02:19 +01:00
Paolo Borelli
b36cb87df9 Use the new style context API in GtkButton
Mostly replaces gtk_widget_style_get with gtk_style_context_get_style
2010-12-05 23:12:32 +01:00
Paolo Borelli
4a7e746bbc Use the new style context API in GtkLabel. 2010-12-05 22:07:30 +01:00
Paolo Borelli
561346bd40 Remove unused function modify_color_property 2010-12-05 22:07:30 +01:00
Carlos Garnacho
4cca7554b8 GtkStyleContext: warn on meaningless coords in gtk_render_* calls 2010-12-05 20:19:55 +01:00
Carlos Garnacho
5361490db8 Bug 636511 - New style override functions do not work on textview
Emit ::style-set on overrider style changes, this is necessary
in the mean time so widgets not listening yet to ::style-updated
get the style changes.
2010-12-05 20:19:55 +01:00
Jorge González
059aa89cbd Updated Spanish translation 2010-12-05 18:33:31 +01:00
Kristian Rietveld
d28cbd6e6d Bring back _gtk_tree_view_column_get_cell_at_pos
The function has been re-implemented around GtkCellArea.  This commits
also brings back the invocation of this function in
gtk_tree_view_button_press().  I shouldn't have removed this.
2010-12-05 18:18:36 +01:00
Matthias Clasen
d5df33c75f Fix abi check after recent merges 2010-12-05 12:18:30 -05:00
Kristian Rietveld
2a6550176c Replace FIRST_PIXEL macros with something that's more clear 2010-12-05 18:04:07 +01:00
Kristian Rietveld
7fe950a745 Clean up and clarify row height calculations 2010-12-05 17:56:30 +01:00
Kristian Rietveld
924359c31d Clean up _gtk_tree_view_column_cell_event 2010-12-05 17:12:37 +01:00
Kristian Rietveld
6c73647727 Remove the need for _gtk_tree_view_column_get_focus_area 2010-12-05 17:10:21 +01:00
Kristian Rietveld
64ddd3f40f Clarify start_pos parameter gtk_tree_view_column_cell_get_position
By renaming it to x_offset.
2010-12-05 17:04:52 +01:00
Kristian Rietveld
77d972e436 Remove private accessor for focus column 2010-12-05 15:20:17 +01:00
Kristian Rietveld
0a1982aff3 Move _gtk_tree_view_column_cell_focus to gtktreeview.c 2010-12-05 15:18:13 +01:00
Kristian Rietveld
131783005e Use structure bitfield instead of GtkTreeViewFlags 2010-12-05 15:12:53 +01:00
Fran Diéguez
4701aeb3bc Updated Galician translations 2010-12-05 14:57:08 +01:00
Kristian Rietveld
73f99eda1d Turn TREE_VIEW_DRAW_EXPANDERS into an inline function 2010-12-05 14:47:51 +01:00
Kristian Rietveld
ebba08a842 Remove unused TREE_VIEW_COLUMN_REQUESTED_WIDTH macro 2010-12-05 14:42:40 +01:00
Kristian Rietveld
43de55d7a9 Turn TREE_VIEW_HEADER_HEIGHT into an inline function 2010-12-05 14:42:08 +01:00
Tristan Van Berkom
364fe807f4 Added g_getenv("RTL") to test rtl layouting. 2010-12-05 22:15:31 +09:00
Tristan Van Berkom
3ca2ec5d2d Fixed conflicts from rebasing GtkTreeViewColumn changes from treeview-refactor. 2010-12-05 22:15:19 +09:00
Tristan Van Berkom
847581b67c Adding testverticalcells.c.
This test displays a GtkTreeViewColumn rendering a vertically
oriented GtkCellArea along side a horizontally oriented column
in the same treeview.
2010-12-05 22:15:03 +09:00
Tristan Van Berkom
78979b2954 Removing hack and fixing gtk_tree_view_column_cell_get_size().
Now consult gtk_cell_area_context_get_preferred_height().

It can be that height-for-widths requested here were too large
when multiple cells are in play because of the alignments stored
in the context... removing the temporary focus-line-width hack.
2010-12-05 22:14:52 +09:00
Tristan Van Berkom
1b28d87253 Added GtkTreeViewColumn:cell-area construct-only property.
Allow feeding treeviewcolumn a custom cell-area (or not a custom one,
but allow sharing the cell-area with say, the combo-box area).

This patch also:

 - Fixes signal connections to the area (now they do eventually get
   disconnected at dispose time, they are handled regardless if a
   treeview is set but execute safely, at least there is only one
   connection/disconnection).

 - Fixes refcounting on the cell_area (GtkCellArea is GInitiallyUnowned).

 - Adds a constructor() in order to build the cell-area if one has
   not been provided by the caller before hand at g_object_new()
   construct time.
2010-12-05 22:14:40 +09:00
Tristan Van Berkom
0baee408f2 Fixed GtkTreeViewColumn allocation to only subtract the depth padding/indentation from the expander column. 2010-12-05 22:14:27 +09:00
Tristan Van Berkom
779125976c Changed GtkTreeView to bookkeep the deepest expanded depth instead of recalculating it at column allocation time. 2010-12-05 22:14:11 +09:00
Tristan Van Berkom
b54c004c6b Allocate proper inner cell area to the GtkTreeViewColumn.
This is a premature patch, it traverses the tree's expanded
rows and fetches the deepest depth every time we allocate a
column. The deepest depth should rather be cached and pushed
when a row expands, then recalculated when the deepest expanded
row collapses.
2010-12-05 22:13:58 +09:00
Tristan Van Berkom
81e1d02de3 Created _gtk_tree_view_column_request_width().
Removed gtk_tree_view_get_real_requested_width_from_column() from
gtktreeview.c in favor of this function in the treeviewcolumn domain
(since this function goes and checks treeviewcolumn internals, settings
and derives the real requested width, seems logical this should be done
by the treeviewcolumn instead).
2010-12-05 22:12:16 +09:00
Tristan Van Berkom
7b36405a94 Use gtk_tree_view_get_real_requested_width_from_column() all around
GtkTreeView duplicated the contents of this function word-for-word
inside gtk_tree_view_update_size().
2010-12-05 22:12:04 +09:00
Tristan Van Berkom
cf8299f098 Changed _gtk_tree_view_column_set_width for _gtk_tree_view_column_allocate
Now the GtkTreeViewColumn takes care of move/resizing its window and
allocating its button (except for the special case of current drag_column
where the column doesnt actually get reallocated).
2010-12-05 22:11:50 +09:00
Tristan Van Berkom
4038cd76b3 Removed GtkTreeViewPrivate from gtktreeprivate.h and added a few more accessors.
This actually much simplifies interaction with GtkTreeSelection
(at least reduces code size where dealing width the treeview anchor path).
2010-12-05 22:11:37 +09:00
Tristan Van Berkom
4b5c80dc0f Removed the private sharing of internal treeview macros from gtktreeprivate.h
Added them directly to gtktreeview.c.
2010-12-05 22:11:21 +09:00
Tristan Van Berkom
9f4f22faf1 Removed all variables from GtkTreeViewColumn and created GtkTreeViewColumnPrivate
Some details:
  - button_request was not needed, consult the minimum request of the button
  - gtk_tree_view_column_get_button() needed to be public as people can set
    tooltips on the button (and libgail accesses the button).
2010-12-05 22:11:08 +09:00
Kristian Rietveld
137f16c4c5 Do not bother starting a draw call if bar_size <= 0 2010-12-05 13:57:04 +01:00
Yaron Shahrabani
86c8ce1cc0 Updated Hebrew translation 2010-12-05 14:14:03 +02:00
Paolo Borelli
e0efd067e4 Avoid memory corruption in the color_properties hashtable. 2010-12-05 12:30:28 +01:00
Tristan Van Berkom
f24c21f1f0 Added proper handling of right to left layouting of cells to GtkCellAreaBox. 2010-12-05 15:24:19 +09:00
Tristan Van Berkom
c6e1463d1e Added different icon at the end of testtreeedit to see if RTL is actually working. 2010-12-05 15:24:05 +09:00
Tristan Van Berkom
7b61cd8257 Merge branch 'master' into treeview-refactor 2010-12-05 13:14:39 +09:00
Javier Jardón
d351b40a0b Add internal accessor for GtkEntry->is_cell_renderer
This fixes commit fb3429e507
2010-12-04 22:06:02 -05:00
Matthias Clasen
5fdc140dd8 Fix a segfault in gdk_window_beep
Not a good idea to cast an instance to a class...
2010-12-04 17:25:40 -05:00
Matthias Clasen
afcd50d607 Try again to fix the gdk symbol list
Grr, gdk_window_class_class_get_type should have been
gdk_window_window_class_get_type.
2010-12-04 16:32:02 -05:00
Matthias Clasen
144c3fd478 Fix gdk_rgba_parse call 2010-12-04 16:16:29 -05:00
Carlos Garnacho
37719380ae Fix call to gtk_widget_override_cursor() 2010-12-04 18:26:34 +01:00
Carlos Garnacho
3d28adf317 Make gtk_widget_override_cursor() take GdkRGBAs
Even though the style properties have the GdkColor type, the other
gtk_widget_override_* API takes RGBA colors, so it is consistent
now.
2010-12-04 17:49:28 +01:00
Tristan Van Berkom
0d786985a3 Merge branch 'master' into treeview-refactor
Conflicts:
	gtk/gtkmarshalers.list
	tests/Makefile.am
2010-12-05 00:36:37 +09:00
Paolo Borelli
cd76b057e9 Annotate gdk_window_get_geometry, get_position and get_origin 2010-12-04 15:47:50 +01:00
Carlos Garnacho
1c87180d5d GtkThemingEngine: Fix parameters for gtk_theming_engine_lookup_color() 2010-12-04 15:39:58 +01:00
Carlos Garnacho
8c02445bc5 testgtk: Fix gdk_rgba_parse() arguments. 2010-12-04 15:39:58 +01:00
Carlos Garnacho
0cba2dc726 GtkCssProvider: Improve error handling and reporting.
Nicer error reports are provided, and a GError can be spread from
anywhere in parsing, so over time more precise and meaningful
messages can be produced.
2010-12-04 15:39:57 +01:00
Carlos Garnacho
06d8676354 GtkThemingEngine: Be a bit more robust against missing essential properties. 2010-12-04 15:39:57 +01:00
Carlos Garcia Campos
07eeae1582 GtkWidget: add gtk_widget_render_icon_pixbuf()
and deprecate gtk_widget_render_icon()
2010-12-04 15:39:57 +01:00
Carlos Garcia Campos
905ba2f198 GtkIconFactory: add gtk_icon_set_render_icon_pixbuf()
and deprecate gtk_icon_set_render_icon().
2010-12-04 15:39:57 +01:00
Carlos Garcia Campos
b75972d0ce GtkStyle: set style context state before calling gtk_render_icon_pixbuf() 2010-12-04 15:39:56 +01:00
Carlos Garcia Campos
ca59b042df GtkStyle: make context property readable 2010-12-04 15:39:56 +01:00
Carlos Garcia Campos
15d997d58a GtkWidget: queue a resize when style context changed 2010-12-04 15:39:56 +01:00
Carlos Garcia Campos
f261d56da3 GtkStyleContext: invalidate icon caches when resetting widgets 2010-12-04 15:39:56 +01:00
Carlos Garcia Campos
3b3307b946 Use gtk_style_context_reset_widgets() instead of gtk_rc_reset_styles() 2010-12-04 15:39:56 +01:00
Carlos Garcia Campos
a8c8c23c77 GtkSettings: add _gtk_settings_get_screen() private method 2010-12-04 15:39:55 +01:00
Carlos Garnacho
47add6c7c3 Block direct #including in style headers 2010-12-04 15:39:55 +01:00
Carlos Garnacho
bacb7906f2 Add helper API for getting colors/borders in GtkStyleContext/GtkThemingEngine 2010-12-04 15:39:55 +01:00
Carlos Garnacho
3e8d138ed6 GtkStyleProperties: Refactor color/gradient resolution 2010-12-04 15:39:55 +01:00
Carlos Garnacho
9aca6c8071 GtkWidget: Add gtk_widget_override_cursor().
This function replaces gtk_widget_modify_cursor().
2010-12-04 15:39:54 +01:00
Carlos Garnacho
b0c87faa50 Add GtkModifierStyle as a private object
This object backs up gtk_widget_override_* operations. This object
is not meant to be public because any intention to modify widgets'
style in a themeable way should involve using regions/classes, so
they're modifiable through CSS. As such, the API is really
short-scoped.
2010-12-04 15:39:54 +01:00
Carlos Garnacho
0d2d60cf8a Gtk9Slice: Fix stretch rendering.
"Nearest" filter used when scaling the image, so image borders
aren't blurred.
2010-12-04 15:39:54 +01:00
Carlos Garnacho
afeac82fbd GtkThemingEngine: Add gtk_theming_engine_lookup_color()
It could also be handy for theme engines...
2010-12-04 15:39:53 +01:00
Carlos Garnacho
066f35bf28 Parse user CSS from $XDG_CONFIG_HOME/gtk-3.0/gtk.css 2010-12-04 15:39:53 +01:00
Carlos Garnacho
9bdb7e6945 GtkThemingEngine: Remove unused variables 2010-12-04 15:39:53 +01:00
Carlos Garnacho
901af8fec8 Fix compiler warnings. 2010-12-04 15:39:52 +01:00
Carlos Garnacho
cf0bd12e6c GtkStyleProperties: Turn border-width into a GtkBorder property.
All current users of this CSS property have been updated to deal
with a GtkBorder.

Also a 0 border width has been set in the default CSS to ensure
GtkStyleContext and GtkThemingEngine always provide a non-NULL
pointer for this property.
2010-12-04 15:39:52 +01:00
Carlos Garnacho
f7e7201f11 Fix docs typo. 2010-12-04 15:39:51 +01:00
Carlos Garnacho
daab45565a GtkCssProvider: Fix up state matching when looking up style properties. 2010-12-04 15:39:51 +01:00
Carlos Garnacho
297fa7a3dd GtkStyleProvider: Add GtkStateFlags parameter to get_style_property().
Widget style properties can now have different values depending on the
current state.
2010-12-04 15:39:51 +01:00
Carlos Garnacho
2ca905db5e GtkStyleContext: Handle directionality when picking next provider. 2010-12-04 15:39:50 +01:00
Carlos Garnacho
46de2130d3 GtkWidget: unset NULL properties when overriding style. 2010-12-04 15:39:50 +01:00
Carlos Garnacho
64b7d9e5c1 GtkThemingEngine: Render gradients in tabs.
Background will be actually rotated in tabs, so the "bottom" side coincides
with the junction point, this makes gradients work as expected in rotated tabs.
2010-12-04 15:39:50 +01:00
Carlos Garnacho
32c2b13969 GtkThemingEngine: split background rendering to a private function. 2010-12-04 15:39:50 +01:00
Carlos Garnacho
4c1a2426d4 GtkStyle: Commit a few typos when translating states. 2010-12-04 15:39:49 +01:00
Carlos Garcia Campos
4aaf193602 docs: gtk_style_context_get_screen() always returns a valid screen 2010-12-04 15:39:49 +01:00
Carlos Garcia Campos
7a5a622998 Check screen really changed before notifying it and invalidating the context 2010-12-04 15:39:49 +01:00
Carlos Garcia Campos
7abf76fbc1 Initialize screen of GtkStyleContext to default screen 2010-12-04 15:39:48 +01:00
Matthias Clasen
587c08a151 Add explanation to failing test 2010-12-04 15:39:48 +01:00
Matthias Clasen
12d6b5889d Add a testcase a problem with style property handling 2010-12-04 15:39:48 +01:00
Matthias Clasen
f86e8f7512 Allow images for background-image
In addition to -gtk-gradient(...), allow url(path), and create
a pattern from the image. Still to do: allow stretch/repeat options.
2010-12-04 15:39:48 +01:00
Matthias Clasen
ca143b1303 Add list of classes and regions to the docs 2010-12-04 15:39:48 +01:00
Matthias Clasen
897c370f5f Avoid compiler warnings 2010-12-04 15:39:47 +01:00
Matthias Clasen
5adfe6029d Don't add class "scrollbar" for every trough
Turns out "trough" as a detail string is used in a variety
of widgets, not all of which are scrollbars.
2010-12-04 15:39:47 +01:00
Matthias Clasen
2578f4f4c3 Trivial doc fixes 2010-12-04 15:39:47 +01:00
Matthias Clasen
e598f17871 Some header cleanups
Move GtkGradient to their own files, also move GtkBorder out of
gtkstyle.h, so that header can be all deprecated.
2010-12-04 15:39:47 +01:00
Matthias Clasen
1915a19503 Add deprecation notes 2010-12-04 15:39:46 +01:00
Matthias Clasen
f8a874abb1 Initial attempt at deprecating GtkStyle api
This will probably need some finetuning.
2010-12-04 15:39:46 +01:00
Matthias Clasen
e374f7e4b5 Forgotten files 2010-12-04 15:39:46 +01:00
Matthias Clasen
757837b611 Make tests compile without using GtkStyle api 2010-12-04 15:39:46 +01:00
Matthias Clasen
9b1118a35d Port gtk3-demo to GtkStyleContext 2010-12-04 15:39:46 +01:00
Matthias Clasen
bbca96044e Fix memory handling when dealing with colors 2010-12-04 15:39:45 +01:00
Matthias Clasen
ab0a8fc17f Improve the migration guide
Add some hints about dealing with colors.
2010-12-04 15:39:45 +01:00
Matthias Clasen
53c2114356 Deprecate gtk_icon_info_load_symbolic_for_style
We might end removing it altogether since it is a bit silly to have
Since: 3.0
Deprecated: 3.0
2010-12-04 15:39:45 +01:00
Carlos Garnacho
e9ef162d4c GtkSpinner: Use style context for rendering.
Animation is now handled by the theming layer, a looping animation
has been defined in the default CSS to handle active spinners.
2010-12-04 15:39:45 +01:00
Carlos Garnacho
3d956b10ee GtkStyleContext: handle prelight transitions 2010-12-04 15:39:44 +01:00
Carlos Garnacho
c90bee16ba GtkThemingEngine: Handle prelight transitions in render_layout() 2010-12-04 15:39:44 +01:00
Carlos Garnacho
e696c24f08 GtkThemingEngine: Also render topright and bottomleft corners if junction sides say so 2010-12-04 15:39:44 +01:00
Carlos Garnacho
11004ef61d Initialize all looping, active state transitions on map()
This allows widgets to gtk_widget_set_state_flags() before mapping
and have animations started anyway when this happens.
2010-12-04 15:39:44 +01:00
Carlos Garnacho
4027dceaa9 Add #define for the "spinner" style class 2010-12-04 15:39:44 +01:00
Carlos Garnacho
62e9188ff3 GtkStyleContext: store layout extents for animation purposes. 2010-12-04 15:39:43 +01:00
Carlos Garnacho
818aca5aee GtkStyleContext: Only allow looping transitions for states being turned on. 2010-12-04 15:39:43 +01:00
Carlos Garnacho
ad6da0cdb8 GtkStyleContext: Stop animations if the window is gone. 2010-12-04 15:39:43 +01:00
Carlos Garnacho
cc18d65986 GtkThemingEngine: render square corner if the gap is too close on render_frame_gap() 2010-12-04 15:39:43 +01:00
Matthias Clasen
f0eed4a5b1 Use gtk_icon_info_load_symbolic_for_context
gtk_icon_info_load_symbolic_for_style is going to be deprecated.
2010-12-04 15:39:43 +01:00
Matthias Clasen
f90881271f Add a GtkStyleContext-variant of symbolic icon loading 2010-12-04 15:39:42 +01:00
Matthias Clasen
091c882996 Some tweaks for the GtkStyleContext migration guide 2010-12-04 15:39:42 +01:00
Matthias Clasen
0f98b15090 Add illustration to gtk_render_handle docs 2010-12-04 15:39:42 +01:00
Matthias Clasen
3ddee2561b Small doc addition 2010-12-04 15:39:42 +01:00
Matthias Clasen
d1f1af202b Add a frame-gap illustration 2010-12-04 15:39:42 +01:00
Matthias Clasen
1391a61bc5 Improve frame-gap drawing
Instead of overdrawing the gap with bg-color, clip it away.
2010-12-04 15:39:42 +01:00
Matthias Clasen
54eadfcefd Fix another parameter mismatch 2010-12-04 15:39:42 +01:00
Matthias Clasen
4e3dabf582 Fix up symbol list for docs 2010-12-04 15:39:41 +01:00
Matthias Clasen
b51c0f826a fix parameter name mismatch 2010-12-04 15:39:41 +01:00
Matthias Clasen
8abe9f300c Forgotten file 2010-12-04 15:39:41 +01:00
Carlos Garnacho
9c0ef02ea5 GtkButton: Remove unneeded gtk_style_context_notify_state_change() calls
There is now code to handle this for one-item widgets (such as GtkButton)
in gtk_widget_set_state_flags()
2010-12-04 15:39:41 +01:00
Carlos Garnacho
2f0b5d8a9d GtkCheckButton: Look active when the pointer button is pressed and hovering 2010-12-04 15:39:41 +01:00
Carlos Garnacho
037c982824 GtkStyleContext: Handle empty areas when coalescing invalidation regions. 2010-12-04 15:39:41 +01:00
Carlos Garnacho
2fb9687f55 GtkToggleButton: Make it able to be prelight and active at the same time. 2010-12-04 15:39:40 +01:00
Carlos Garnacho
1d5a6b687e GtkComboBox: Use style context for rendering 2010-12-04 15:39:40 +01:00
Carlos Garnacho
c6b2e47931 Let gtk_widget_get_path() correct early calls during init(). 2010-12-04 15:39:40 +01:00
Carlos Garnacho
ebd8463007 GtkCssProvider: Handle unfocused label selections in default CSS. 2010-12-04 15:39:40 +01:00
Carlos Garnacho
90dd2eb42b GtkLabel: Use style context for rendering. 2010-12-04 15:39:40 +01:00
Carlos Garnacho
0fce9342ef GtkThemingEngine: Draw 3D-like effects on square frames with lines. 2010-12-04 15:39:40 +01:00
Carlos Garnacho
3138cc7677 GtkThemingEngine: Render rounded frames with light/shadow connections at 45° 2010-12-04 15:39:39 +01:00
Carlos Garnacho
95ae1a0aa6 GtkThemingEngine: don't overshoot when rendering frames. 2010-12-04 15:39:39 +01:00
Carlos Garnacho
e47c8e2490 GtkStyle: Return the default icon set if no context is attached. 2010-12-04 15:39:39 +01:00
Carlos Garnacho
5d496aa7f3 GtkStyle: Do not warn if attach count == 0
This is going go happen more and more often now, as realize handlers start
removing the gtk_widget_style_attach() calls.
2010-12-04 15:39:39 +01:00
Carlos Garnacho
6bf04fbd94 GtkCssProvider: Add a default border color for insensitive elements. 2010-12-04 15:39:39 +01:00
Matthias Clasen
e57e0e978d Illustrate extension rendering 2010-12-04 15:39:39 +01:00
Matthias Clasen
8589c5c65e Add slider illustration 2010-12-04 15:39:38 +01:00
Matthias Clasen
8d951476bf Add an activity example
This doesn't work, since it trips up on num-steps not being
available for GtkEventBox.
2010-12-04 15:39:38 +01:00
Matthias Clasen
7e96a51953 Add examples for frame rendering 2010-12-04 15:39:38 +01:00
Matthias Clasen
4c04d944e8 Atempt to fix stretched 9slice rendering 2010-12-04 15:39:38 +01:00
Matthias Clasen
30fe448750 Fix handling of junctions in frame drawing code 2010-12-04 15:39:38 +01:00
Matthias Clasen
e522381183 Add a background example to the docs 2010-12-04 15:39:38 +01:00
Matthias Clasen
d532c0e5c2 Test some wilder names for classes, etc 2010-12-04 15:39:37 +01:00
Matthias Clasen
391e445d11 Allow digits in selectors and values, where appropriate 2010-12-04 15:39:37 +01:00
Matthias Clasen
31368f16cb Add the style example code used to generate illustrations 2010-12-04 15:39:37 +01:00
Matthias Clasen
f13f315312 Some more images for gtk_render docs 2010-12-04 15:39:37 +01:00
Matthias Clasen
d4c70f214d Declare transition and border-image properties to be writeonly
We don't make the types of their values public, so getting their
values is useless and will leak.
2010-12-04 15:39:37 +01:00
Matthias Clasen
a5e10e9b26 Improve some gtk_render_ docs
With pictures !!
2010-12-04 15:39:36 +01:00
Matthias Clasen
d7a0fe5bf1 Document predefined style provider priorites
Also, rename GTK_STYLE_PROVIDER_PRIORITY_DEFAULT to _THEME and
use it for themes.
2010-12-04 15:39:35 +01:00
Matthias Clasen
a260059c7f Fix doc formatting 2010-12-04 15:39:35 +01:00
Matthias Clasen
d9b0da5b83 Fix resize grip drawing
There was some confusion about junctions...
2010-12-04 15:39:34 +01:00
Matthias Clasen
be0ed14cce Fix GtkRadioButton drawing 2010-12-04 15:39:34 +01:00
Matthias Clasen
fc10599ac8 Make unfocused selections visible in entries 2010-12-04 15:39:33 +01:00
Matthias Clasen
21a193ad02 Make expanders prelight 2010-12-04 15:39:33 +01:00
Matthias Clasen
8b6112b6e0 Rewrite GtkInfoBar color handling to bypass GtkStyle
This avoids a segfault that was happening due to the recursion
detection not working anymore with the old way of doing things.
2010-12-04 15:39:33 +01:00
Carlos Garnacho
d63615d9cc GtkCssProvider: Render inconsistent toggle buttons differently. 2010-12-04 15:39:32 +01:00
Carlos Garnacho
9b2f878b06 GtkCssProvider: do not use selected fg/bg in sliders or spinbutton buttons. 2010-12-04 15:39:32 +01:00
Carlos Garnacho
bcf1ee4825 GtkCssProvider: Use 1px border width for spinbutton buttons. 2010-12-04 15:39:32 +01:00
Carlos Garnacho
74b032b816 GtkCssProvider: Render radio and check boxes framess in menus. 2010-12-04 15:39:32 +01:00
Carlos Garnacho
b33d48a802 GtkCssProvider: use selected fg/bg for selected menu items in CSS. 2010-12-04 15:39:31 +01:00
Carlos Garnacho
85aa672ff7 GtkCssProvider: Draw frame around menubars and toolbars in default CSS. 2010-12-04 15:39:31 +01:00
Matthias Clasen
fea567bb9f More documentation reshuffling 2010-12-04 15:39:31 +01:00
Matthias Clasen
ace967a042 Tweak wording 2010-12-04 15:39:30 +01:00
Matthias Clasen
3a7f79e814 Document border images better 2010-12-04 15:39:30 +01:00
Matthias Clasen
953ac51fb8 Make url parsing work for slices
The border-image parsing code relies on parse_path_str to return
a meaningful end_ptr in case of success, too.
2010-12-04 15:39:29 +01:00
Matthias Clasen
28e549082c Fix Gtk9Slice creation 2010-12-04 15:39:29 +01:00
Matthias Clasen
69254c552a Allow / in values
Otherwise, using url(path) on the right-hand side of properties
is not going to work.
2010-12-04 15:39:28 +01:00
Matthias Clasen
7d6fb7b7e7 Add some images to the docs
Add graphs for the transition functions and gradient examples.
2010-12-04 15:39:28 +01:00
Matthias Clasen
b2d338d370 GtkWidgetPath documentation tweaks 2010-12-04 15:39:27 +01:00
Matthias Clasen
077270142f GtkStyleContext documentation tweaks 2010-12-04 15:39:27 +01:00
Matthias Clasen
bcf3de095f Document various style-related enums 2010-12-04 15:39:26 +01:00
Carlos Garnacho
11480c57f0 GtkStyleContext: Use correct type for animation duration. 2010-12-04 15:39:26 +01:00
Carlos Garnacho
32ccac94e0 GtkAnimationDescription: parse "loop" correctly.
This sscanf parsing needs to go...
2010-12-04 15:39:25 +01:00
Carlos Garnacho
0c1cfd8a34 GtkStyle: handle scales when translating the detail string. 2010-12-04 15:39:24 +01:00
Carlos Garnacho
71f187a84f GtkCssProvider: Handle progressbars. 2010-12-04 15:39:24 +01:00
Carlos Garnacho
f3445a2430 GtkCssProvider: Do not have border-color the same than active bg-color. 2010-12-04 15:39:24 +01:00
Carlos Garnacho
171157b0e4 GtkMenu: Use GtkStyleContext for rendering. 2010-12-04 15:39:23 +01:00
Carlos Garnacho
6fff76568c GtkMenuBar: Use GtkStyleContext for rendering. 2010-12-04 15:39:23 +01:00
Carlos Garnacho
0df9c70200 Use gtk_render_activity() when rendering progressbars through GtkStyle 2010-12-04 15:39:23 +01:00
Carlos Garnacho
ee37847952 GtkCssProvider: Use default value when handling "none".
This way the default value has a way to override other values in previous
GtkStyleProviders when merged.
2010-12-04 15:39:22 +01:00
Matthias Clasen
5e26fb75a0 Add GtkStyleProperties to the docs 2010-12-04 15:39:22 +01:00
Matthias Clasen
e2f91f7201 Documentation improvements
This patch adds more detail to the explanation of CSS, and also
adds documentation about which files are read.

We also make :focus an alternative to :focused (since :focus is
a standard CSS pseudo-class).
2010-12-04 15:39:22 +01:00
Matthias Clasen
42dd5b2e15 Adapt testgtk.css to parser changes 2010-12-04 15:39:21 +01:00
Carlos Garnacho
9567ed01e8 GtkCssProvider: Base prelight foreground on bg color.
Entries are also handled, so base/text colors are used.
2010-12-04 15:39:21 +01:00
Carlos Garnacho
de94d04fea GtkCssProvider: Make prelight a bit less light in default CSS. 2010-12-04 15:39:21 +01:00
Carlos Garnacho
bc3c9ce619 GtkStyle: Fix typo.
GtkStateType was being used in gtk_style_context_get(), instead of
GtkStateFlags, oops.
2010-12-04 15:39:20 +01:00
Carlos Garnacho
ead23cd0ce GtkThemingEngine: Make render_option() depend on border-style and border-color. 2010-12-04 15:39:20 +01:00
Carlos Garnacho
be4a616e6e GtkRadioButton: Use GtkStyleContext for rendering. 2010-12-04 15:39:20 +01:00
Carlos Garnacho
756e20f58c Make "button" class depend on mode for GtkToggleButtons 2010-12-04 15:39:20 +01:00
Carlos Garnacho
84d586043e Fix checkbuttons theming in CSS so it's more similar to 2.x 2010-12-04 15:39:19 +01:00
Carlos Garnacho
7478a77b04 GtkCheckButton: Use GtkStyleContext for rendering. 2010-12-04 15:39:19 +01:00
Carlos Garnacho
04783534ed GtkThemingEngine: Make render_check() depend on border-style and border-color. 2010-12-04 15:39:19 +01:00
Carlos Garnacho
f62583d30c GtkContainer: Also copy permanent container's classes on get_path_for_child()
This makes inheritance work for the simplest cases when style is defined
for classes.
2010-12-04 15:39:18 +01:00
Carlos Garnacho
6d1cf76822 GtkWidgetPath: Make iter API deal with gints.
now gtk_widget_path_iter_* takes gints instead of guints, and also accept
numbers == -1 or > path_length for the path head.
2010-12-04 15:39:18 +01:00
Carlos Garnacho
5f88997297 GtkWidgetPath: Make gtk_widget_path_prepend_type() return nothing.
It's senseless to always return 0
2010-12-04 15:39:18 +01:00
Carlos Garnacho
198bb314c7 GtkStyleContext: preserve state on save(). 2010-12-04 15:39:18 +01:00
Carlos Garnacho
1bfb169ce6 GtkThemingEngine: Documents that engines must only use this API.
It was a bit unclear in the documentation, even if it was from the
API POV.
2010-12-04 15:39:18 +01:00
Matthias Clasen
c5b38121ec Add tests for matching
These tests try to decipher how specificity works for selectors.
2010-12-04 15:39:17 +01:00
Matthias Clasen
e1819055b9 Copy GtkWidgetPaths correctly
The code was forgetting to copy class information.
2010-12-04 15:39:17 +01:00
Matthias Clasen
49fed3d7d7 More css parsing tests 2010-12-04 15:39:17 +01:00
Matthias Clasen
4135fbf4d6 A little closer to css
Declarations are ;-separated, but there is no ; required after
the last declaration. We harmlessly accept either.
2010-12-04 15:39:17 +01:00
Javier Jardón
295cf25d6b docs: Refer to gtk_paint_*() instead draw_*() vfuncs in the migration guide 2010-12-04 15:39:17 +01:00
Matthias Clasen
933440e1f1 Some css parsing tests 2010-12-04 15:39:16 +01:00
Matthias Clasen
0396550ece Work harder at parsing import statements
Also, turn g_warning() into g_message() for now, so that tests
don't abort. Eventually, this needs to all go into GErrors.
2010-12-04 15:39:16 +01:00
Matthias Clasen
11cd19987b Move import syntax closer to css
Css allows @import url ("foo.css") or @import "foo.css" or
@import url ('foo.css') but not @import url(foo.css) or @immport foo.css.
2010-12-04 15:39:16 +01:00
Matthias Clasen
f92c352f96 Some error reporting
When we take a GError argument, better use it.
2010-12-04 15:39:16 +01:00
Matthias Clasen
5f13b65065 Fix prototype of gtk_css_style_provider_load_from_data
GError arguments must be **.
2010-12-04 15:39:16 +01:00
Matthias Clasen
72f9a7940f Add an outline around menu popups 2010-12-04 15:39:15 +01:00
Matthias Clasen
c8e5d3b07b Transform the 'menu' detail string to the 'popup' class 2010-12-04 15:39:15 +01:00
Matthias Clasen
016a656923 Fix prelighting of inconsistent radio and check buttons 2010-12-04 15:39:15 +01:00
Matthias Clasen
b6776dc116 Fix the resize handle drawing 2010-12-04 15:39:15 +01:00
Matthias Clasen
627b33265b Handle float and uint style properties
These were giving errors in testgtk.
2010-12-04 15:39:15 +01:00
Matthias Clasen
f0eafe60f8 Remove debug output 2010-12-04 15:39:14 +01:00
Matthias Clasen
4e778d7371 Fix a typo 2010-12-04 15:39:14 +01:00
Matthias Clasen
512bc44dbc Make frames visible by default 2010-12-04 15:39:14 +01:00
Matthias Clasen
9ca66efe2c Fix a memory leak 2010-12-04 15:39:14 +01:00
Matthias Clasen
69f91fed94 Translate detail strings for radio buttons 2010-12-04 15:39:14 +01:00
Carlos Garnacho
25b6945971 GtkThemingEngine: remove unused code 2010-12-04 15:39:13 +01:00
Carlos Garnacho
892fe46324 Fix compile warnings 2010-12-04 15:39:13 +01:00
Carlos Garnacho
c9dc09e980 GtkStyleProvider: Pass a GParamSpec in get_style_property().
This is so we can know the owner type of the property, and matching
with the stored strings in GtkCssProvider is direct.
2010-12-04 15:39:13 +01:00
Carlos Garnacho
b613f1f1f2 GtkStyleContext: Also use screen providers for widget style properties. 2010-12-04 15:39:13 +01:00
Carlos Garnacho
13e186bbca Handle menuitem detail string better. 2010-12-04 15:39:13 +01:00
Carlos Garnacho
9a2d1e5433 GtkSettings: install theme CSS with a lower priority.
This is so GtkSettings has an opportunity to modify theme colors.
2010-12-04 15:39:12 +01:00
Carlos Garnacho
0057aa5445 Add corners to GtkJunctionSides, defining sides as 2 corners. 2010-12-04 15:39:12 +01:00
Matthias Clasen
eb8a1c4e33 Don't whine about expander-style missing
This check was lost in the GtkStyleContext porting.
2010-12-04 15:39:12 +01:00
Carlos Garnacho
43cff6f6f7 GtkCssProvider: theme notebooks. 2010-12-04 15:39:11 +01:00
Carlos Garnacho
6099399fa7 GtkThemingEngine: Use border settings on render_extension/frame_gap() 2010-12-04 15:39:11 +01:00
Carlos Garnacho
60a2e90df7 GtkStyle: transform tabs' detail string. 2010-12-04 15:39:10 +01:00
Carlos Garnacho
534942d994 GtkThemingEngine: Do not use possible reserved word. 2010-12-04 15:39:10 +01:00
Carlos Garnacho
5bf9f8c410 testgtk: Try to locate the right file. 2010-12-04 15:39:09 +01:00
Carlos Garnacho
d4aade109f Fix gtk_css_provider_get_named() docs. 2010-12-04 15:39:09 +01:00
Carlos Garnacho
c37797a10c GtkSettings: Keep right refcount of the theme provider. 2010-12-04 15:39:08 +01:00
Carlos Garnacho
611cb007b4 GtkSettings: Ensure the theme CSS is loaded on startup. 2010-12-04 15:39:08 +01:00
Carlos Garnacho
8243c3c025 GtkCssProvider: Fix typo in gtk_css_provider_get_named()
provider was being redefined in the inner block, so the loaded
provider didn't get to be returned.
2010-12-04 15:39:08 +01:00
Carlos Garnacho
a185954d7c Hardcode 3.0 version for style files and paths.
It's about time to start using the right paths.
2010-12-04 15:39:07 +01:00
Carlos Garnacho
37f9f491d2 Make testgtk load CSS for custom styling. 2010-12-04 15:39:07 +01:00
Carlos Garnacho
9ffaf1122d GtkCssProvider: Accept '%' in value strings. 2010-12-04 15:39:06 +01:00
Carlos Garnacho
64e798e190 Do not initialize RC subsystem. 2010-12-04 15:39:06 +01:00
Carlos Garnacho
62ee0956e3 GtkStyleProperties: Use GParamSpec for properties registration. 2010-12-04 15:39:06 +01:00
Carlos Garnacho
1c847d9c21 GtkCssProvider: Docs fix for -gtk-gradient() syntax. 2010-12-04 15:39:06 +01:00
Carlos Garnacho
bcf81a0e23 Handle looping transition animations. 2010-12-04 15:39:05 +01:00
Carlos Garnacho
1123159dc9 GtkCssProvider: Handle better wrong enum/flag values. 2010-12-04 15:39:05 +01:00
Carlos Garnacho
9bb96e271d GtkCssProviders: Parse GTypeFlags based values. 2010-12-04 15:39:05 +01:00
Carlos Garnacho
5cb6fed0bd GtkCssProvider: Add initial unit parsing logic
At the moment only "px" are supported, and such is the default
value when no unit is specified.
2010-12-04 15:39:05 +01:00
Carlos Garnacho
65abcb722e GtkCssProvider: Handle the "none" keyword to unset properties. 2010-12-04 15:39:05 +01:00
Carlos Garnacho
c57fdf4c75 GtkStyleContext: Resolve symbolic colors for widget style properties. 2010-12-04 15:39:04 +01:00
Carlos Garnacho
d865cf4b38 GtkStyleProperties: Handle GdkColor types.
Just in case.
2010-12-04 15:39:04 +01:00
Carlos Garnacho
8b9b9c22e7 GtkCssProvider: Also parse GdkColor values
This is necessary for widget style properties to work.
2010-12-04 15:39:04 +01:00
Carlos Garnacho
815e3499ae GtkCssProvider: Add lighter/darker color functions.
These behave the same than in GtkStyle.
2010-12-04 15:39:04 +01:00
Carlos Garnacho
cb2f9a86e5 GtkCssProvider: allow color names from rgb.txt when parsing colors. 2010-12-04 15:39:03 +01:00
Carlos Garnacho
44b1a6c852 GtkStyleContext: Add #define's for the default properties. 2010-12-04 15:39:03 +01:00
Carlos Garnacho
1be9d6ebc9 Document missing GtkStateType values.
The documentation has also moved to gtkenums.h.
2010-12-04 15:39:02 +01:00
Carlos Garnacho
1487b34679 Remove GTK_STATE_LAST.
It didn't turn out to be that useful, nor widely used.
2010-12-04 15:38:56 +01:00
Carlos Garnacho
1fb6cc8d77 Use the correct cairo-gobject.h include path. 2010-12-04 15:38:56 +01:00
Carlos Garnacho
2fe0a51ed0 Add gtk_render_icon_pixbuf() function to docs. 2010-12-04 15:38:56 +01:00
Carlos Garnacho
04fbb74388 Add GtkStyleContext migration docs. 2010-12-04 15:38:56 +01:00
Carlos Garnacho
fb97bd1f0a GtkThemingEngine: Document missing class vmethods. 2010-12-04 15:38:55 +01:00
Carlos Garnacho
4689b63739 GtkButton: Use GtkStyleContext for rendering. 2010-12-04 15:38:55 +01:00
Carlos Garnacho
dc2df7d178 GtkWindow: Use GtkStyleContext for rendering. 2010-12-04 15:38:55 +01:00
Carlos Garnacho
3f12fc2bd8 GtkStyleContext: Add gtk_style_context_set_background().
This function replaces gtk_style_set_background().
2010-12-04 15:38:54 +01:00
Carlos Garnacho
d9664021cc GtkWidget: Update pango context from style context's font description. 2010-12-04 15:38:49 +01:00
Carlos Garnacho
1cfeeadc70 GtkWidget: Ensure the style context always has an screen.
Things like font settings depend on the screen, and widgets
like GtkTextView trigger queries on widgets without screen
when the parent window is being destroyed.
2010-12-04 15:38:48 +01:00
Carlos Garnacho
48f239c1f2 Add CSS class defines for toolbars and docks. 2010-12-04 15:38:48 +01:00
Carlos Garnacho
99879d4a5f GtkStyle: translate a few more detail strings. 2010-12-04 15:38:48 +01:00
Carlos Garnacho
3848a58b17 GtkCssProvider: theme progressbars in default CSS. 2010-12-04 15:38:48 +01:00
Carlos Garnacho
0431239ead GtkThemingEngine: ensure 1px wide frames aren't painted between pixels. 2010-12-04 15:38:48 +01:00
Carlos Garnacho
f66275fa6a GtkThemingEngine: Use square cap for solid frames. 2010-12-04 15:38:47 +01:00
Carlos Garnacho
3d1403e684 GtkThemingEngine: ensure that background isn't rendered past the frame boundaries. 2010-12-04 15:38:47 +01:00
Carlos Garnacho
d6ba3b7d89 GtkThemingEngine: Get rid of obsolete code for tooltips. 2010-12-04 15:38:47 +01:00
Carlos Garnacho
661a13fe4d GtkStyleContext: Fix check for GtkIconSize in render_icon_pixbuf(). 2010-12-04 15:38:46 +01:00
Carlos Garnacho
405f2f306a GtkStyleContext: restore widget state too in restore(). 2010-12-04 15:38:45 +01:00
Carlos Garnacho
8b267a58da GtkCssProvider: Do not miss the last class name in concatenated classes.
Selectors like .menu.check or .entry.progressbar were being misparsed
and attributed to .menu and .entry.
2010-12-04 15:38:45 +01:00
Carlos Garnacho
d321713704 GtkStyle: transform window background detail string. 2010-12-04 15:38:44 +01:00
Carlos Garnacho
1ec47b20db GtkStyle: Transform menubar detail string. 2010-12-04 15:38:43 +01:00
Carlos Garnacho
46b8cc8686 GtkStyle: Transform menu accelerators string 2010-12-04 15:38:42 +01:00
Carlos Garnacho
4c898a3c7e GtkStyleContext: Define some more class names. 2010-12-04 15:38:42 +01:00
Carlos Garnacho
912ad78cc5 Remove GTK_REGION_DEFAULT
GTK_STYLE_CLASS_DEFAULT is preferred to match a default area, as
it doesn't make sense to have a per-region default.
2010-12-04 15:38:41 +01:00
Carlos Garnacho
271145645c GtkThemingEngine: Use GtkSymbolicColor for shades. 2010-12-04 15:38:41 +01:00
Carlos Garnacho
df95a74a27 GtkThemingEngine: Do not require a default value when registering properties
NULL should work for 0 for int/double/enum/... types and NULL for
pointer types, this should be sane enough to not require a default
value.
2010-12-04 15:38:40 +01:00
Carlos Garnacho
765f653df6 GtkSymbolicColor: Only require styleproperties when resolving named colors.
It is not necessary for resolving colors based on literals,
so be a bit less strict here.
2010-12-04 15:38:40 +01:00
Carlos Garnacho
525963d74d GtkSymbolicColor: convert to/from hls when shading.
This makes shading equal to GtkStyle's.
2010-12-04 15:38:39 +01:00
Carlos Garnacho
3ea9568c20 GtkSymbolicColor: Do not clamp shade/mix/alpha factors. 2010-12-04 15:38:39 +01:00
Carlos Garnacho
a23863211b GtkStyleContext: Add gtk_render_icon_pixbuf()
This function is similar to gtk_style_render_icon(), which is now
implemented on top of this one.
2010-12-04 15:38:38 +01:00
Carlos Garnacho
06c8857191 GtkThemingEngine: Fix compile warning. 2010-12-04 15:38:38 +01:00
Carlos Garnacho
605fa03248 Fix compile warning 2010-12-04 15:38:37 +01:00
Carlos Garnacho
f2c6c82ff0 GtkStatusIcon: update to use gtk_widget_override_symbolic_color(). 2010-12-04 15:38:37 +01:00
Carlos Garnacho
f383e6b0a2 GtkWidget: Add new set of methods to override style information.
gtk_widget_override_*() deprecates gtk_widget_modify_*(). There are
only functions to modify fg/bg/font/symbolic color, If anything more
fancy/complex is needed. There is the possibility of adding a
GtkStyleProvider yourself.
2010-12-04 15:38:36 +01:00
Carlos Garnacho
920637abef GtkStyle: Listen to context changes.
This way the GtkStyle is updated to the latest style info, actually
emitting ::style-set must be performed after invalidating the style
context.
2010-12-04 15:38:36 +01:00
Carlos Garnacho
33e95ae65f GtkStyleContext: Add the start of a default set of class names/regions. 2010-12-04 15:38:36 +01:00
Carlos Garnacho
071ccaf8a7 Theming documentation fixes
2 functions were not in -sections.txt, and GtkStyleSet was renamed
to GtkStyleProperties.
2010-12-04 15:38:35 +01:00
Carlos Garnacho
80e74d79bb GtkStyleContext: Fix merging of local and global providers. 2010-12-04 15:38:35 +01:00
Carlos Garnacho
fb8de847df GtkStyleProperties: Merge font descriptions on merge()
This is necessary so incomplete font descriptions are ensured to have
family and size.
2010-12-04 15:38:34 +01:00
Carlos Garnacho
af20ba6103 GtkSymbolicColor: Take const GdkRGBA in new_literal(). 2010-12-04 15:38:34 +01:00
Carlos Garnacho
2efa2947be Document gtk_render_* functions. 2010-12-04 15:38:34 +01:00
Carlos Garnacho
ebf5bd390f Add gtk_render_activity()
This method will render progress bars and spinners, these should
handle active and inconsistent states' animation progress in order
to perform animations.
2010-12-04 15:38:33 +01:00
Carlos Garnacho
af1f8701dc GtkThemingEngine: draw resize grip through render_handle().
GtkJunctionSides is used instead of GdkWindowEdge, GtkStyle
implementation has changed to use GtkStyleContext's.
2010-12-04 15:38:33 +01:00
Carlos Garnacho
227294a6aa GtkWidget: Trigger state change transitions on state flags change.
This makes state transitions automatic for non-complex widgets, complex
widgets such as GtkTreeView still need to notify state updates themselves.
2010-12-04 15:38:33 +01:00
Carlos Garnacho
c0d08ff627 GtkToolItemGroup: Set widget state as state flags. 2010-12-04 15:38:33 +01:00
Carlos Garnacho
1c2f27fe11 GtkToggleButton: Set widget state as state flags. 2010-12-04 15:38:32 +01:00
Carlos Garnacho
80d1ce9f67 GtkRadioButton: Set widget state as state flags. 2010-12-04 15:38:32 +01:00
Carlos Garnacho
517eaa55e5 GtkNotebook: Set widget state as state flags. 2010-12-04 15:38:32 +01:00
Carlos Garnacho
5f0f21aad3 GtkMenuItem: Set widget state as state flags. 2010-12-04 15:38:31 +01:00
Carlos Garnacho
9ae2e29f44 GtkMenu: Set widget state as state flags. 2010-12-04 15:38:31 +01:00
Carlos Garnacho
399499225e GtkExpander: Set widget state as state flags. 2010-12-04 15:38:31 +01:00
Carlos Garnacho
f7f5ac1b09 GtkEntry: Set widget state as state flags. 2010-12-04 15:38:31 +01:00
Carlos Garnacho
0e25b19515 GtkComboBox: Set widget state as state flags. 2010-12-04 15:38:30 +01:00
Carlos Garnacho
401b655307 GtkButton: Set widget state as state flags. 2010-12-04 15:38:30 +01:00
Carlos Garnacho
cd98204619 Implement widget states as a set of flags
gtk_widget_(set|unset|get)_state_flags() has been added, using GtkStateFlags
to represent the widget state. GtkStateType API has been implemented on top
of the new one.
2010-12-04 15:38:30 +01:00
Carlos Garnacho
34b91a74e5 Document missing value in GtkStateFlags 2010-12-04 15:38:30 +01:00
Carlos Garnacho
4acc20abc1 s/GtkStyleSet/GtkStyleProperties/
The former name had oddities such as gtk_style_set_set() and such,
so the new name is nicer in that regard and not much longer.
2010-12-04 15:38:29 +01:00
Carlos Garnacho
1bdd761c3f GtkWidget: Ensure name changes involve a style context update. 2010-12-04 15:38:29 +01:00
Carlos Garnacho
8ea649e0a0 Rely only on fg/bg colors.
"foreground-color" has been renamed to just "color" as in regular CSS,
and the "text-color" and "base-color" properties have been removed. The
default CSS has been changed to have widgets cope with this change.
2010-12-04 15:38:29 +01:00
Carlos Garnacho
7de2cf3286 GtkCssProvider: Fix parsing of concatenated classes.
Now selectors such as:

 GtkWidget#name.class1.class2
 #name.class1.class2
 .class1.class2

are parsed correctly, being meaningful for a widget defining several
classes.
2010-12-04 15:38:29 +01:00
Carlos Garnacho
a8a1d8cd01 GtkThemingEngine: Use ::name when registering style props. 2010-12-04 15:38:29 +01:00
Carlos Garnacho
90de318ab3 GtkThemingEngine: Add ::name construct only property
This property is to be set by theming engines, the name set will be favored
over the object type name when registering custom properties, making possible
something like:

-Clearlooks-border: blah;
2010-12-04 15:38:28 +01:00
Carlos Garnacho
c88e3bfc0c GtkStyleSet: Prevent from possible underflow. 2010-12-04 15:38:28 +01:00
Carlos Garnacho
51b742044a GtkCssProvider: Parse alpha() symbolic colors.
The "alpha" symbolic color modifies a passed color's alpha by a factor,
the syntax would accept things like:

background-color: alpha (@bg_color, 0.8);
foreground-color: alpha (shade (@fg_color, 0.8), 0.5);
2010-12-04 15:38:28 +01:00
Carlos Garnacho
ca44965f33 GtkSymbolicColor: Add gtk_symbolic_color_new_alpha()
This function modifies the alpha channel of a color, multiplying
it by a factor.
2010-12-04 15:38:28 +01:00
Carlos Garnacho
0bd81ef710 GtkCssProvider: Make default style depend more on custom colors. 2010-12-04 15:38:28 +01:00
Carlos Garnacho
5310ad8070 GtkStyle: Get to style GtkCellRendererText text. 2010-12-04 15:38:27 +01:00
Carlos Garnacho
6356f01b06 GtkThemingEngine: render 0-radius frames with 3D-like 45° corner effect 2010-12-04 15:38:27 +01:00
Carlos Garnacho
43f7fb8354 GtkThemingEngine: Clear the background for .background class 2010-12-04 15:38:27 +01:00
Carlos Garnacho
d565e15951 GtkStyle: translate active state in paint_flat_box(). 2010-12-04 15:38:27 +01:00
Carlos Garnacho
087249db07 GtkCssProvider: Update end string when misparsing symbolic colors. 2010-12-04 15:38:26 +01:00
Carlos Garnacho
7d441000f7 GtkCssProvider: Allow '\t' when parsing values. 2010-12-04 15:38:26 +01:00
Carlos Garnacho
4ca3b5071e GtkSymbolicColor: Initialize alpha when resolving shades. 2010-12-04 15:38:26 +01:00
Carlos Garnacho
975f133d63 GtkThemingEngine: Improve rendering of inset/outset borders. 2010-12-04 15:38:26 +01:00
Carlos Garnacho
39ce35dd75 GtkCssProvider: Improve default CSS. 2010-12-04 15:38:26 +01:00
Carlos Garnacho
6bd0865601 GtkStyle: Handle scrollbar buttons. 2010-12-04 15:38:25 +01:00
Carlos Garnacho
490d59f045 Do not shade alpha values. 2010-12-04 15:38:25 +01:00
Carlos Garnacho
3bfc59b9bb GtkStyle: Match "trough" and "slider" detail strings.
This is so scrollbars can be themed throught the "trough" and
"slider" classes.
2010-12-04 15:38:25 +01:00
Carlos Garnacho
4e02218f52 Use GdkRGBA all around in GtkStyleContext. 2010-12-04 15:38:25 +01:00
Carlos Garnacho
3a455ed8f9 GtkStyleSet: Register the border-style and border-color properties
This is also implemented in the theming engine, although the default
CSS should be using it in order to theme buttons, troughs, sliders
and such.
2010-12-04 15:38:25 +01:00
Carlos Garnacho
8d4ffedbf1 GtkStyleContext: '_' prefix the structs, gtk-doc prefers this. 2010-12-04 15:38:24 +01:00
Carlos Garnacho
770f050d8c GtkWidgetPath: turn into a boxed type. 2010-12-04 15:38:24 +01:00
Carlos Garnacho
c9a3da5025 GtkStyleContext: s/set/add/ and s/unset/remove/ for classes/regions.
Several classes and regions may be set to GtkStyleContext, so rename
the functions to be more intuitive.
2010-12-04 15:38:24 +01:00
Carlos Garnacho
161d5175e1 GtkThemingEngine: Honor border-radius in render_background(). 2010-12-04 15:38:24 +01:00
Carlos Garnacho
f7dd423862 GtkStyleSet: Register the "border-radius" property 2010-12-04 15:38:24 +01:00
Carlos Garnacho
32b50f2948 GtkStyleContext: Update function declaration in header. 2010-12-04 15:38:23 +01:00
Carlos Garnacho
0a0a1a20a7 GtkCssProvider: Make it able to parse enums. 2010-12-04 15:38:23 +01:00
Carlos Garnacho
d03caa4683 GtkCssProvider: Run through the widget path in the correct order.
Comparing a selector with a widget path was being done backwards since
the change to use GtkContainer::get_path_for_child().
2010-12-04 15:38:23 +01:00
Matthias Clasen
35a41bd801 Make loading of theming engines from modules work 2010-12-04 15:38:23 +01:00
Carlos Garnacho
d0f681e898 GtkStyleContext: Add gtk_style_context_new(). 2010-12-04 15:38:22 +01:00
Carlos Garnacho
c2f47063c3 GtkCssProvider: Parse default/sorted region flags. 2010-12-04 15:38:22 +01:00
Carlos Garnacho
4a9890e3ab GtkCssProvider: Parse missing widget states. 2010-12-04 15:38:22 +01:00
Carlos Garnacho
68bfb94f69 Change semantics of the methods to check whether an animation is running.
It actually messed up with the state being actually set, and having a
transition animation running for it. Now this dichotomy is removed, and
gtk_style_context_state_is_running() only checks whether an animation is
running, leaving state checking to flags & GTK_STATE_FLAG_*.
2010-12-04 15:38:22 +01:00
Carlos Garnacho
96c16e246c GtkStyleContext: Actually store region ID when starting an animation. 2010-12-04 15:38:21 +01:00
Carlos Garnacho
a79626b7fb Add theming docs
Both API and file format is documented, there's still missing
a migration doc though.
2010-12-04 15:38:21 +01:00
Carlos Garnacho
59b0fa8133 Remove GtkOrientation parameter from gtk_render_handle().
The case for paned can be guessed out from the height and width,
for handlebox the orientation parameter doesn't make much sense,
and this way it could also be used for resize grips.
2010-12-04 15:38:21 +01:00
Benjamin Berg
e8c103f652 Use cairo gobject support instead of a new boxed type. 2010-12-04 15:38:20 +01:00
Carlos Garnacho
88a3c2daae GtkGradient: Handle symbolic gradients.
The css parser has been modified to parse correctly radial gradients:

background-image: -gtk-gradient (radial,
                                 center center, 0,
                                 center center, 0.8,
                                 from (#000), to (#fff));

The theming engine has been modified to correctly animate these,
as well as transitions between different pattern types.
2010-12-04 15:38:20 +01:00
Carlos Garnacho
2e8b1cd358 Gtk9Slice: Fix stretch case. 2010-12-04 15:38:20 +01:00
Carlos Garnacho
a65d0d00c0 GtkWidget: Store GtkStyleContext in private struct. 2010-12-04 15:38:19 +01:00
Carlos Garnacho
5bbab9872d GtkStyleContext: Cache style properties accross class/region changes. 2010-12-04 15:38:19 +01:00
Carlos Garnacho
88b78953b6 GtkContainer: Add method to get the GtkWidgetPath for a child.
This is now used throughout in order to have the full path for a given widget,
including intermediate named regions, the default implementation just returns
the GtkContainer's path copy, no intermediate regions between.
2010-12-04 15:38:19 +01:00
Carlos Garnacho
c575733eda GtkStyleContext: Fix animation framework to work with the new draw() semantics.
Invalidation region coalescing now happens recursively as draw() runs, and the
widget's x/y as now drawing coordinates are 0,0 based.
2010-12-04 15:38:18 +01:00
Carlos Garnacho
f9788eb173 GtkCssProvider: Add support for @import rules
Now other CSS files can be referenced from the currently parsed file:

@import url (other-file.css);
@import url (/some/file.css);
2010-12-04 15:38:18 +01:00
Carlos Garnacho
0ef48c0bde GtkCssProvider: no need for resetting the parser prior to parsing data
This is done anyway on each iteration to parse_rule() in parse_stylesheet()
2010-12-04 15:38:18 +01:00
Carlos Garnacho
8e96e4e41f GtkCssProvider: improve file paths parser.
It will now return a full path, and check about the file being sane.
2010-12-04 15:38:18 +01:00
Carlos Garnacho
1772b00e85 GtkCssProvider: Transform custom colors to a @define-color rule.
Given there are other rules such as @import (which will be supported),
keep a sane namespace here, so for (re)defining a color name, in the CSS
file it will look like:

@define-color color-name #fff;
@define-color other-color mix (@color-name, #f00, 0.4);
2010-12-04 15:38:18 +01:00
Carlos Garnacho
a1a90396b7 GtkThemingEngine: Do not return a const GtkThemingEngine on load() 2010-12-04 15:38:18 +01:00
Carlos Garnacho
5c2cf1e934 Plug some leaks. 2010-12-04 15:38:18 +01:00
Carlos Garnacho
5c8a818671 Fix typo in the Gtk9Slice parser. 2010-12-04 15:38:17 +01:00
Carlos Garnacho
5b11d14a49 GtkButton: Notify on prelight state change. 2010-12-04 15:38:17 +01:00
Carlos Garnacho
908babd8ae GtkThemingEngine: Implement animations between gradients/colors. 2010-12-04 15:38:17 +01:00
Carlos Garnacho
d8187b34bb GtkSymbolicColor: Use G_DEFINE_BOXED_TYPE 2010-12-04 15:38:17 +01:00
Carlos Garnacho
7583f31609 GtkStyleContext: Store animation region for a bunch of paint operations. 2010-12-04 15:38:17 +01:00
Carlos Garnacho
fecc079087 GtkStyleContext: Invalidate whole window if no invalidation region is obtained. 2010-12-04 15:38:17 +01:00
Carlos Garnacho
20051e02eb GtkCssProvider: use mapped file to read CSS files. 2010-12-04 15:38:16 +01:00
Carlos Garnacho
80cf01c271 GtkCssProvider: unset filename on load_from_data() 2010-12-04 15:38:16 +01:00
Carlos Garnacho
96e5a02148 GtkThemingEngine: Use border-image to render borders if an image is available. 2010-12-04 15:38:16 +01:00
Carlos Garnacho
7ee564c7cd GtkCssProvider: Add a parser for 9slice typed properties.
The value it parses is similar to the border-image CSS3 property,
so strings like this will be accepted:

  border-image: url (foo.png) 4 3 4 3 repeat repeat;

the image path is relative to the parsed CSS file dirname if no
absolute path is provided.
2010-12-04 15:38:16 +01:00
Carlos Garnacho
f363e31a09 Register the border-image property
It will contain a 9-sliced image, so it can be rendered as rectangles with any
dimensions.
2010-12-04 15:38:16 +01:00
Carlos Garnacho
089f375cdb Add Gtk9Slice
This is a private boxed object to contain information about a border image
in order to render it in a size independent way.
2010-12-04 15:38:16 +01:00
Carlos Garnacho
cc68e62e24 GtkSettings: Add a new provider for the theme CSS file. 2010-12-04 15:38:16 +01:00
Carlos Garnacho
ac73a8f7a8 GtkStyleContext: Add gtk_style_context_reset_widgets()
This function recalculates the style for all widgets on a screen.
2010-12-04 15:38:15 +01:00
Carlos Garnacho
679ff63d5c GtkCssProvider: Add gtk_css_provider_get_named()
This functions loads a CSS file from a installed theme.
2010-12-04 15:38:15 +01:00
Carlos Garnacho
a07fe2c0e6 Add generic providers per-screen.
The providers are added as soon as gtk GtkSettings object for the screen
is created.
2010-12-04 15:38:15 +01:00
Carlos Garnacho
1e66155aec GtkStyleContext: invalidate context when setting the screen 2010-12-04 15:38:14 +01:00
Carlos Garnacho
8dfa0e03ea GtkWidget: Set style context's screen before the widget_path.
This is so the style context has all necessary information before
triggering a style change on setting the path.
2010-12-04 15:38:14 +01:00
Carlos Garnacho
49ac732a18 GtkStyleContext: Add gtk_style_context_[add|remove]_provider_for_screen()
These functions allow per-screen style providers. also, the changed signal
will be emitted whenever a style context changes.
2010-12-04 15:38:14 +01:00
Carlos Garnacho
f239704094 GtkWidget: Add gtk_widget_reset_style().
This function is analogous to gtk_widget_reset_rc_styles(),
updates style recursively on a widget.
2010-12-04 15:38:13 +01:00
Carlos Garnacho
3c390c9c8e GtkWidget: Add the style-updated signal
This signal is emitted whenever the widget's style changes.
2010-12-04 15:38:13 +01:00
Carlos Garnacho
77ccdfc94e GtkStyle: Protect against padding being NULL 2010-12-04 15:38:13 +01:00
Carlos Garnacho
9f84e101bf GtkStyleContext: Add gtk_style_context_invalidate().
This function will regenerate all styling information.
2010-12-04 15:38:12 +01:00
Carlos Garnacho
756bbf526f GtkStyleSet: Fix typo 2010-12-04 15:38:12 +01:00
Carlos Garnacho
58b6e538c9 GtkThemingEngine: use background-image in render_background() 2010-12-04 15:38:12 +01:00
Carlos Garnacho
2794e8d6dd GtkStyleSet: Register a "background-image" property.
Ironically, it currently just handles gradients, the name is to conform
to current CSS gradient implementation trends.
2010-12-04 15:38:12 +01:00
Carlos Garnacho
cf87923d1b GtkStyleSet: Handle GtkGradients as a replacement for cairo_pattern_t
The former will handle GtkSymbolicColors, which will be resolved and
cached at query time.
2010-12-04 15:38:12 +01:00
Carlos Garnacho
3fc5c87bcb GtkCssProvider: Add a parser for gradients. 2010-12-04 15:38:12 +01:00
Carlos Garnacho
142a72637d Add GtkGradient.
This type defines a gradient between 2 symbolic colors, with any number
of color stop between these. At the moment it has been put besides
GtkSymbolicColor, although should be completely private, it will likely
need extending in the future for radial gradients.

At some point, it maybe should also be used for images, so painting
both a gradient and an image is consistent.
2010-12-04 15:38:11 +01:00
Carlos Garnacho
74de1839a4 GtkStyleSet: Set an empty default_value if none is provided. 2010-12-04 15:38:11 +01:00
Carlos Garnacho
c908e263ac GtkCssProvider: strip whitespaces in symbolic color values. 2010-12-04 15:38:11 +01:00
Carlos Garnacho
f12d7409cc Allow linefeeds in property values. 2010-12-04 15:38:11 +01:00
Carlos Garnacho
02a30118c6 Add a boxed type for cairo_pattern_t. 2010-12-04 15:38:11 +01:00
Carlos Garnacho
621a95f515 GtkSettings: implement GtkStyleProvider 2010-12-04 15:38:11 +01:00
Carlos Garnacho
58a51bca97 GtkStyle: Fill in x/ythickness and font_desc from the style context. 2010-12-04 15:38:11 +01:00
Carlos Garnacho
643abe3127 GtkStyleSet: Register "margin" property. 2010-12-04 15:38:10 +01:00
Carlos Garnacho
585afafa39 Add basic parser for GtkBorder properties.
Different units aren't supported, it takes 1 to 4 integers representing
pixel distances.
2010-12-04 15:38:10 +01:00
Carlos Garnacho
846f67d805 GtkStyle: Allow GTK_ARROW_NONE. 2010-12-04 15:38:10 +01:00
Carlos Garnacho
7e7347d1a0 GtkNotebook: invert tab drawing order so region flags are set correctly. 2010-12-04 15:38:10 +01:00
Carlos Garnacho
78a98decae Get rid of GdkPangoRenderer code in GtkThemingEngine. 2010-12-04 15:38:10 +01:00
Carlos Garnacho
f058359182 Replace GdkRegion and GdkRectangle with their cairo counterparts. 2010-12-04 15:38:09 +01:00
Carlos Garnacho
c9d626523d Remove gtkalias from style context code. 2010-12-04 15:38:09 +01:00
Carlos Garnacho
9dfba95f09 GtkCssProvider: Add gtk_css_provider_load_from_path() 2010-12-04 15:38:09 +01:00
Carlos Garnacho
0ce649e965 Plug a bunch of leaks. 2010-12-04 15:38:09 +01:00
Carlos Garnacho
91904f6778 GtkButton: Notify on active state when (un)depressed 2010-12-04 15:38:09 +01:00
Carlos Garnacho
9b949479b3 GtkThemingEngine: Animate checkboxes activation. 2010-12-04 15:38:09 +01:00
Carlos Garnacho
7519ed278b GtkThemingEngine: Add progress arg to gtk_theming_engine_is_state_set() 2010-12-04 15:38:09 +01:00
Carlos Garnacho
3c07e3d3df GtkWidget: Update GtkStyleContext animation regions on allocation change. 2010-12-04 15:38:08 +01:00
Carlos Garnacho
61a0544b8b GtkStyleContext: Add animation machinery.
Animation regions are confined through gtk_style_context_[push|pop]_animatable_region,
anything that's painted between these calls will be invalidated if an animation starts
for any of the regions in the stack.

gtk_style_context_notify_state_change() may be called from widgets to indicate a
change for a given GtkStateType, in that case an animation will be started if there
is an animation description for the widget/state.
2010-12-04 15:37:38 +01:00
Carlos Garnacho
bbd0c5a2a2 GtkStyleContext: Declare gtk_style_context_list_classes() in header. 2010-12-04 15:37:38 +01:00
Carlos Garnacho
52baa7d51e GtkCssProvider: Parse properties of type GtkAnimationDescription. 2010-12-04 15:37:38 +01:00
Carlos Garnacho
114f30b772 GtkStyleSet: Register the "transition" property. 2010-12-04 15:37:38 +01:00
Carlos Garnacho
ed840e73e4 Add GtkAnimationDescription as a private boxed object.
This struct will be used to represent an animation in GtkStyleSet. It
will only be used internally in GtkStyleContext in order to trigger
animations, engines shouldn't need this.
2010-12-04 15:37:37 +01:00
Carlos Garnacho
2e2c07b695 Add GtkTimeline as a private object.
This will only be used internally by GtkStyleContext in order
to animate state changes. When a proper animation framework is
introduced in GTK+, it may be ditched.
2010-12-04 15:37:37 +01:00
Carlos Garnacho
4781f94de2 Move all theming stack to use GtkStateFlags.
This support goes from the theming engines, which are able to retrieve
style for different combined states to the CSS provider, where several
state pseudo-classes may be specified, such as:

GtkButton:active:prelight {}
2010-12-04 15:37:37 +01:00
Carlos Garnacho
2c7c4d9a51 GtkStyleContext: Return insertion position if not found when matching classes/regions 2010-12-04 15:37:37 +01:00
Carlos Garnacho
11ac0cb3e1 GtkStyle: set the active flag depending on shadow_type in draw_box(). 2010-12-04 15:37:37 +01:00
Carlos Garnacho
bccec3ef0c GtkCssProvider: Use class for tooltips. 2010-12-04 15:37:36 +01:00
Carlos Garnacho
74697d91fe GtkCssProvider: Parse and match class info. 2010-12-04 15:37:36 +01:00
Carlos Garnacho
27c91622f6 Set classes info in GtkWidgetPath. 2010-12-04 15:37:36 +01:00
Carlos Garnacho
2dabf20cfd GtkStyleContext: Add gtk_style_context_list_classes(). 2010-12-04 15:37:36 +01:00
Carlos Garnacho
8a1b6e8224 GtkWidgetPath: Add methods to include class info in paths. 2010-12-04 15:37:36 +01:00
Carlos Garnacho
a3637ec60d s/child class/region/ everywhere.
"Child class" is an invented term anyway, and it conceptually defines
identifiable regions in widgets.
2010-12-04 15:37:35 +01:00
Carlos Garnacho
198d75bea5 GtkStyleContext: Rename internal struct.
GtkStyleRegion has been renamed to GtkStyleInfo, as it doesn't really
have much to do with regions itself, the information it contains does.
This struct is used in save/restore.
2010-12-04 15:37:35 +01:00
Carlos Garnacho
e04dfd4d6d GtkThemingEngine: Add gtk_theming_engine_register_property().
This function may be used for custom property registration from
theming engines. The property names will have the
-${engine-type-name}-${prop-name} format, the parser has been
modified to allow properties with '-' as the first char.
2010-12-04 15:37:35 +01:00
Carlos Garnacho
d9e3782391 GtkStyleSet: Fix compiler warning. 2010-12-04 15:37:35 +01:00
Carlos Garnacho
355f0d69ab GtkStyleSet: Allow custom parsers on registered properties. 2010-12-04 15:37:35 +01:00
Carlos Garnacho
99224c9eec GtkCssProvider: Parse correctly widget types with a name.
There's now a distinction between:

GtkLabel#label-name: Label with name "label-name"
GtkWindow #label-name: Window containing a widget named "label-name"
2010-12-04 15:37:34 +01:00
Carlos Garnacho
56e4ffabea Compare widget names as GQuarks in style matching. 2010-12-04 15:37:34 +01:00
Carlos Garnacho
09d8592b5b GtkWidgetPath: Make API more consistent. 2010-12-04 15:37:34 +01:00
Carlos Garnacho
ad08330fae Compare region names as quarks in style matching. 2010-12-04 15:37:34 +01:00
Carlos Garnacho
d47d3d0200 GtkCssProvider: Set child combinators in default CSS. 2010-12-04 15:37:34 +01:00
Carlos Garnacho
5f77ead9c6 GtkCssProvider: Parse and compare widget names. 2010-12-04 15:37:33 +01:00
Carlos Garnacho
52878c45b5 GtkCssProvider: Don't jump too eagerly to the next element when comparing selectors. 2010-12-04 15:37:33 +01:00
Carlos Garnacho
85dbc71921 GtkCssProvider: Immediately bail out if GType couldn't be resolved. 2010-12-04 15:37:33 +01:00
Carlos Garnacho
9ebbc7b5c5 GtkCssProvider: Small optimization. 2010-12-04 15:37:33 +01:00
Sven Herzberg
c001833ed1 GtkCssProvider: don't ignore custom attributes
* gtk/gtkcssprovider.c: don't ignore custom attribites (which can be
  added by theme engines)
2010-12-04 15:37:33 +01:00
Sven Herzberg
27bc581dca GtkWidgetPath: properly use const
* gtk/gtkwidgetpath.c,
* gtk/gtkwidgetpath.h: use const where possible
2010-12-04 15:37:32 +01:00
Carlos Garnacho
b6226cb7b9 GtkThemingEngine: Render correctly spinbutton buttons. 2010-12-04 15:37:32 +01:00
Carlos Garnacho
dd8da82d1e GtkStyle: set junction details in spinbutton buttons. 2010-12-04 15:37:32 +01:00
Carlos Garnacho
8c117b1638 GtkThemingEngine: Add gtk_theming_engine_get_junction_sides(). 2010-12-04 15:37:31 +01:00
Carlos Garnacho
9108739c9b GtkStyleContext: Add gtk_style_context_[gs]et_junction_sides().
These functions will help widgets specify how does one element being painted
relate to other contiguous elements.
2010-12-04 15:37:31 +01:00
Carlos Garnacho
d9b42ce50f Add GtkJunctionSides flags. 2010-12-04 15:37:30 +01:00
Carlos Garnacho
143c4b3b60 GtkStyleContext: Add gtk_style_context_lookup_color().
gtk_style_lookup_color() now uses this function internally.
2010-12-04 15:37:30 +01:00
Carlos Garnacho
b4a24d6457 GtkStyleSet: Register the "border" property. 2010-12-04 15:37:29 +01:00
Carlos Garnacho
78cc97f7b3 GtkThemingEngine: fix typo in function declaration. 2010-12-04 15:37:28 +01:00
Carlos Garnacho
fcf12ff9b9 GtkThemingEngine: Add gtk_theming_engine_get_direction(). 2010-12-04 15:37:28 +01:00
Carlos Garnacho
978d97ea6f GtkWidget: Set style context direction. 2010-12-04 15:37:27 +01:00
Carlos Garnacho
dc216ffb00 GtkStyleContext: Add gtk_style_context_[gs]et_direction(). 2010-12-04 15:37:27 +01:00
Carlos Garnacho
e15dc89f89 GtkWidget: Add the default CSS provider to all style contexts. 2010-12-04 15:37:27 +01:00
Carlos Garnacho
85398fc05f GtkCssProvider: Add gtk_css_provider_get_default().
This method returns a GtkCssProvider with the default style information
loaded.
2010-12-04 15:37:26 +01:00
Carlos Garnacho
bd6751230a GtkStyle: Move gtk_render_* calls to default vmethod implementations. 2010-12-04 15:37:26 +01:00
Carlos Garnacho
9255e20bf8 GtkWidget: Create GtkStyle on top of GtkStyleContext. 2010-12-04 15:37:26 +01:00
Carlos Garnacho
6c549fecd3 GtkWidget: Construct style for partial widget hierarchies.
Some unparented widgets like to ask style details, so now the style is
constructed regardless of the parent being present or not, and then
reconstructed if the parent changes.
2010-12-04 15:37:25 +01:00
Carlos Garnacho
09d6c4ea52 GtkStyle: Optionally construct above a GtkStyleContext. 2010-12-04 15:37:25 +01:00
Carlos Garnacho
1e83e52b3d GtkThemingEngine: Add code to render GtkFrame frame with gap. 2010-12-04 15:37:24 +01:00
Carlos Garnacho
d858801ec3 GtkThemingEngine: Obey active/selected when rendering text. 2010-12-04 15:37:24 +01:00
Carlos Garnacho
5510f24cc1 GtkThemingEngine: Rip out focus rendering from old code. 2010-12-04 15:37:24 +01:00
Carlos Garnacho
eadaded374 GtkThemingEngine: Rip out expander rendering from old code. 2010-12-04 15:37:24 +01:00
Carlos Garnacho
d22f393be3 GtkThemingEngine: Render frames and spinbutton boxes properly. 2010-12-04 15:37:24 +01:00
Carlos Garnacho
7482b636e6 GtkThemingEngine: Improve background rendering.
Now active and selected states are taken into account, and GtkSpinButton
buttons are special cased.
2010-12-04 15:37:23 +01:00
Carlos Garnacho
911431c0b2 GtkThemingEngine: Improve pixel alignment in arrows. 2010-12-04 15:37:23 +01:00
Carlos Garnacho
c18ee462e3 GtkThemingEngine: Add methods to retrieve widget style properties. 2010-12-04 15:37:23 +01:00
Carlos Garnacho
0dc81b9a35 GtkStyleSet: Allow setting default value when registering properties.
This is now used for the "engine" keyword, where the default engine is used
if none is specified.
2010-12-04 15:37:23 +01:00
Carlos Garnacho
c712480912 GtkStyleContext: Add varargs functions for getting widget style properties. 2010-12-04 15:37:23 +01:00
Carlos Garnacho
5f2e8bc0d1 GtkStyleContext: Ensure style rebuilds after adding/removing classes. 2010-12-04 15:37:23 +01:00
Carlos Garnacho
7748b1d2de GtkStyleContext: ensure class lookup return the correct insertion position if not found. 2010-12-04 15:37:22 +01:00
Carlos Garnacho
0813a2283e GtkCssProvider: Allow '_' in the middle of symbolic color names. 2010-12-04 15:37:22 +01:00
Carlos Garnacho
227c500dce GtkThemingEngine: Improve slider rendering. 2010-12-04 15:37:22 +01:00
Carlos Garnacho
44373ec551 GtkThemingEngine: Cairo-ify frame rendering from GtkStyle. 2010-12-04 15:37:22 +01:00
Carlos Garnacho
8771f46dae GtkThemingEngine: Cairo-ify frame_gap rendering from GtkStyle. 2010-12-04 15:37:22 +01:00
Carlos Garnacho
7d2b51f147 GtkThemingEngine: Cairo-ify extension rendering from GtkStyle. 2010-12-04 15:37:21 +01:00
Carlos Garnacho
4772b67563 GtkThemingEngine: Make render_background use drawing primitives. 2010-12-04 15:37:21 +01:00
Carlos Garnacho
1b556aa4d1 GtkThemingEngine: Unify code to render lines. 2010-12-04 15:37:21 +01:00
Carlos Garnacho
75b059a3f2 GtkThemingEngine: Add cairo-ified rendering primitives.
Functions to add paths for lines, rectangle sides, and the gap side in notebooks
have been added.
2010-12-04 15:37:20 +01:00
Carlos Garnacho
5cdb3f0e90 GtkThemingEngine: Cairo-ify handle rendering from GtkStyle. 2010-12-04 15:37:20 +01:00
Carlos Garnacho
9261c2a9d7 GtkThemingEngine: Take option rendering from GtkStyle. 2010-12-04 15:37:20 +01:00
Carlos Garnacho
4e45e9099e GtkThemingEngine: Take checkbox rendering from GtkStyle. 2010-12-04 15:37:19 +01:00
Carlos Garnacho
27f5257d49 GtkStyleContext: Don crash on empty class sets. 2010-12-04 15:37:19 +01:00
Carlos Garnacho
038bcdcdb6 GtkThemingEngine: Use GdkPangoRenderer when painting layouts. 2010-12-04 15:37:19 +01:00
Carlos Garnacho
475f0fc266 GtkStyleContext: Add gtk_style_context_save/restore().
This API will be used to have savepoints when adding and removing
style classes information.
2010-12-04 15:37:18 +01:00
Carlos Garnacho
4a465d279d GtkThemingEngine: Add gtk_theming_engine_get_screen(). 2010-12-04 15:37:18 +01:00
Carlos Garnacho
5db7197c27 GtkWidget: Set screen info in GtkStyleContext. 2010-12-04 15:37:18 +01:00
Carlos Garnacho
758c3e18cc GtkStyleContext: Add gtk_style_context_[gs]et_screen() 2010-12-04 15:37:17 +01:00
Carlos Garnacho
41650933fd GtkStyleContext: Add priv pointer to object struct. 2010-12-04 15:37:17 +01:00
Carlos Garnacho
10f6c04f33 GtkStyleSet: Add priv pointer to object struct. 2010-12-04 15:37:17 +01:00
Carlos Garnacho
875237187c GtkCssProvider: Add priv pointer to object struct. 2010-12-04 15:37:17 +01:00
Carlos Garnacho
51a8f642da Fix include. 2010-12-04 15:37:16 +01:00
Carlos Garnacho
a256171d34 GtkStyleContext: Add gtk_style_context_lookup_icon_set(). 2010-12-04 15:37:16 +01:00
Carlos Garnacho
318e0f28ee GtkStyleProvider: Add gtk_style_provider_get_icon_factory().
With this, style providers have a way to override default icon theme.
2010-12-04 15:37:16 +01:00
Carlos Garnacho
be5d4adf6b GtkCssProvider: Allow symbolic colors when parsing style rules. 2010-12-04 15:37:15 +01:00
Carlos Garnacho
1de8f75517 GtkCssProvider: Parse color mappings.
These are of the form:

@color-a: #fff;
@color-b: mix (@color-a, #000, 0.5)
@color-c: shade (@color-b, 0.7)

In the stylesheet, arbitrary nesting of these commands is handled.
2010-12-04 15:37:15 +01:00
Carlos Garnacho
4ed96df96a GtkStyleSet: Optionally take GtkSymbolicColors.
gtk_style_set_set_property() now takes both GdkColor and GtkSymbolicColor
GValues, All accessors still return GdkColors, so any symbolic color will
be resolved and replaced in the styleset at that time.
2010-12-04 15:37:15 +01:00
Carlos Garnacho
b8fb2d1a36 GtkSymbolicColor: Add method to resolve to a GdkColor. 2010-12-04 15:37:15 +01:00
Carlos Garnacho
e2b8efcbec GtkStyleSet: Add API to map symbolic colors. 2010-12-04 15:37:15 +01:00
Carlos Garnacho
7094213df9 Add GtkSymbolicColor.
This is a small boxed struct used to store symbolic colors so they
can be resolved at a later point.
2010-12-04 15:37:14 +01:00
Carlos Garnacho
d748ea983d GtkWidgetPath: Add to gtkalias. 2010-12-04 15:37:14 +01:00
Carlos Garnacho
b50c88d170 GtkCssProvider: Plug memory leak. 2010-12-04 15:37:14 +01:00
Carlos Garnacho
2cd4ff4215 GtkCssProvider: Fix compile warning. 2010-12-04 15:37:14 +01:00
Carlos Garnacho
1d4687675f GtkCssProvider: set scanner->input_name. 2010-12-04 15:37:13 +01:00
Carlos Garnacho
6c91ba1cc2 GtkWidget: Do not reset GtkStyleContext per get_style_context(). 2010-12-04 15:37:13 +01:00
Carlos Garnacho
22bae20ce8 GtkWidget: Hook up widget style property querying to style context. 2010-12-04 15:37:13 +01:00
Carlos Garnacho
03370c6e0c GtkStyleContext: Add methods to get style property values. 2010-12-04 15:37:13 +01:00
Carlos Garnacho
bf12227435 GtkCssProvider: Implement GtkStyleProvider->get_style_property
Style properties in the resource files are something like:

-GtkComboBox-appears-as-string
-GtkEntry-icon-prelight

Following the usual naming spec for extensions to CSS.
2010-12-04 15:37:13 +01:00
Carlos Garnacho
37335fbb6f GtkWidgetPath: Add methods to check topmost widget type. 2010-12-04 15:37:12 +01:00
Carlos Garnacho
6990a01299 GtkStyleProvider: Add method to get widget style properties. 2010-12-04 15:37:12 +01:00
Carlos Garnacho
eaddc9f254 GtkCssProvider: refactor out selector matching. 2010-12-04 15:37:12 +01:00
Carlos Garnacho
eec75f1f59 GtkCssProvider: Ensure each scope has its parser config. 2010-12-04 15:37:12 +01:00
Carlos Garnacho
ff05cc4849 GtkCssProvider: Parse boolean values. 2010-12-04 15:37:12 +01:00
Carlos Garnacho
aa5ec97cac GtkCssProvider: Make additions to parse_value() less error prone. 2010-12-04 15:37:11 +01:00
Carlos Garnacho
814957021f Fix compile warning. 2010-12-04 15:37:11 +01:00
Carlos Garnacho
66d1cb8054 GtkStyleSet: Register GtkThemingEngine type.
This has been also hooked up to the CSS provider, which parses the "engine"
value to load the corresponding module.
2010-12-04 15:37:11 +01:00
Carlos Garnacho
327a9fc66a GtkWidget: Generate GtkWidgetPath on set_parent.
There's no need to wait for realize() to have the right widget style.
2010-12-04 15:37:11 +01:00
Carlos Garnacho
6906138e45 GtkStyleSet: Remove default value for registered properties.
This should be handled at a higher level, a single default value for all
states isn't that useful...
2010-12-04 15:37:10 +01:00
Carlos Garnacho
80e01becbe Fix compilation. 2010-12-04 15:37:10 +01:00
Carlos Garnacho
a323310c19 GtkNotebook: Set GtkChildClassFlags for tabs. 2010-12-04 15:37:10 +01:00
Carlos Garnacho
e899fdd973 GtkCssProvider: Set default value if no state pseudo-class is specified. 2010-12-04 15:37:10 +01:00
Carlos Garnacho
66accc4184 GtkStyleSet: Add gtk_style_set_set_default().
This will set the default value to a given property for all possible states,
such default value will only be used if the queried state doesn't have a
value itself.
2010-12-04 15:37:10 +01:00
Carlos Garnacho
bd9bd1310b GtkStyleContext: Fix compiler warning. 2010-12-04 15:37:09 +01:00
Carlos Garnacho
17908880b5 GtkStyle: Use new render methods underneath.
This commit should probably be squashed in the future, when GtkStyleContext
is on par with it, and GtkStyle is just a shallow object on top of
GtkStyleContext and calling it in the default implementation methods, so
all gtk_paint_* and gtk_draw_* would work.
2010-12-04 15:37:09 +01:00
Carlos Garnacho
f5adc2a1c3 Add region details in gtk_widget_get_path(). 2010-12-04 15:37:09 +01:00
Carlos Garnacho
cf27f6f1cf GtkStyleContext: fix typos in code.
The wrong list was being modified in gtk_style_context_set_child_class(),
and gtk_style_context_has_child_class() was checking for *flags != 0, not
flags != NULL.
2010-12-04 15:37:09 +01:00
Carlos Garnacho
104caa74f0 GtkStyleContext: Add gtk_style_context_list_child_classes(). 2010-12-04 15:37:09 +01:00
Carlos Garnacho
67c4f8d02e GtkCssProvider: Compare GtkWidgetPath regions with css. 2010-12-04 15:37:08 +01:00
Carlos Garnacho
977a972358 GtkCssProvider: fix parsing of consecutive pseudo-classes.
Now either of foo{}, foo:first-child{}, foo:nth-child(even):insensitive or
foo:active{} will be correctly parsed.
2010-12-04 15:37:08 +01:00
Carlos Garnacho
0be4659c5d GtkCssProvider: move to next selector element on match or child combinator. 2010-12-04 15:37:08 +01:00
Carlos Garnacho
bc0af3208d GtkCssProvider: free selector path on parse_rule(). 2010-12-04 15:37:08 +01:00
Carlos Garnacho
07171d5f68 GtkCssProvider: Add named regions to selector path. 2010-12-04 15:37:08 +01:00
Carlos Garnacho
707d5ae99c GtkCssProvider: Parse named regions. 2010-12-04 15:37:07 +01:00
Carlos Garnacho
11c874619b GtkWidgetPath: Add API for named regions. 2010-12-04 15:37:07 +01:00
Carlos Garnacho
71949e05c4 Refurbish GtkWidgetPath API.
The foreach() function is now gone, there's now API to get
GTypes and names from the position in the path.
2010-12-04 15:37:07 +01:00
Carlos Garnacho
f60e3f3a8a Move GtkChildClassFlags to gtkenums.h. 2010-12-04 15:37:06 +01:00
Carlos Garnacho
8c03503d16 GtkCssProvider: Add support for child/descendant combinators.
Now, selectors like:

  GtkWindow > GtkButton {}
  GtkNotebook > GtkLabel {}

will represent a direct parent/child relation between both elements, while

  GtkWindow GtkButton {}
  GtkNotebook GtkLabel {}

will allow intermediate children between these.
2010-12-04 15:37:06 +01:00
Carlos Garnacho
d691e79cbf GtkCssProvider: Fix typo freeing SelectorElements. 2010-12-04 15:37:05 +01:00
Carlos Garnacho
abbeb89b7c GtkCssProvider: Allow empty selector.
universal selector is implied, so things like this work:

:active {}
:insensitive{}
2010-12-04 15:37:05 +01:00
Carlos Garnacho
4c8353bcbf GtkCssProvider: Allow '*' selectors.
These would match a single widget of any type.
2010-12-04 15:37:04 +01:00
Carlos Garnacho
468f216b1c GtkCssProvider: Add state parsing.
Now state is now defined as a pseudoclass in the CSS format, selectors like:

GtkWidget:active { }
GtkButton:insensitive { }
GtkCalendar:prelight { } (also :hover is accepted)
...

define the style for the given state.
2010-12-04 15:37:03 +01:00
Carlos Garnacho
7dada9949d GtkWidget: Create GtkCssProvider for user modifications.
~/.gtk-X.0.css is checked, and added as a style resource if available.
2010-12-04 15:37:03 +01:00
Carlos Garnacho
82f485afd9 GtkStyleProvider: Add defines for most common priorities. 2010-12-04 15:37:02 +01:00
Carlos Garnacho
bccad0c65c Added GtkCssProvider.
GtkCssProvider is a GtkStyleProvider implementation which is able to read
CSS-like input to style widgets.

At the moment, only the basic parser features are available.
2010-12-04 15:37:02 +01:00
Carlos Garnacho
7c5c4d86ae Add GtkWidgetPath parameter to gtk_style_provider_get_style(). 2010-12-04 15:37:02 +01:00
Carlos Garnacho
9971f386b0 GtkStyleSet: Add method to lookup property default settings. 2010-12-04 15:37:01 +01:00
Carlos Garnacho
7647deb417 GtkStyleSet: Make property registration take const GValues. 2010-12-04 15:37:01 +01:00
Carlos Garnacho
fdcda4b356 GtkStyleContext: allow late set_path() calls.
Now the properties will only be regenerated whenever there's a GtkWidgetPath
to query about.
2010-12-04 15:37:00 +01:00
Carlos Garnacho
bdadcb568c GtkStyleContext: Fix compiler warning. 2010-12-04 15:37:00 +01:00
Carlos Garnacho
f984c39e93 GtkStyleContext: Fix typo. 2010-12-04 15:37:00 +01:00
Carlos Garnacho
f8c74ae54b GtkStyleContext: Add gtk_render_handle(). 2010-12-04 15:36:59 +01:00
Carlos Garnacho
9e5d9ff28d GtkThemingEngine: Add vmethod to render a handle area. 2010-12-04 15:36:59 +01:00
Carlos Garnacho
160821042c GtkStyleContext: Add gtk_render_extension(). 2010-12-04 15:36:59 +01:00
Carlos Garnacho
aa1d492fe9 GtkThemingEngine: Add vmethod to render an extension. 2010-12-04 15:36:58 +01:00
Carlos Garnacho
88492a50d6 GtkStyleContext: Add gtk_render_frame_gap(). 2010-12-04 15:36:58 +01:00
Carlos Garnacho
af1edc3d88 GtkThemingEngine: Add vmethod to render frames with a gap. 2010-12-04 15:36:58 +01:00
Carlos Garnacho
6a1b54f8bf GtkStyleContext: Add gtk_render_slider(). 2010-12-04 15:36:57 +01:00
Carlos Garnacho
2ebdf80adc GtkThemingEngine: Add vmethod to render sliders. 2010-12-04 15:36:57 +01:00
Carlos Garnacho
86727adc4d GtkStyleContext: Add gtk_render_line(). 2010-12-04 15:36:57 +01:00
Carlos Garnacho
b8f6617d99 GtkThemingEngine: Add vmethod to render lines. 2010-12-04 15:36:56 +01:00
Carlos Garnacho
f80fbbd829 GtkStyleContext: Add gtk_render_layout(). 2010-12-04 15:36:56 +01:00
Carlos Garnacho
92994a0129 GtkThemingEngine: Add vmethod to render layouts. 2010-12-04 15:36:56 +01:00
Carlos Garnacho
0486f5bbc0 GtkStyleContext: Add gtk_render_focus(). 2010-12-04 15:36:56 +01:00
Carlos Garnacho
8439537e2f GtkThemingEngine: Add vmethod to render focus indicator. 2010-12-04 15:36:55 +01:00
Carlos Garnacho
9c3b079c1c GtkStyleContext: Add gtk_render_expander(). 2010-12-04 15:36:55 +01:00
Carlos Garnacho
19fdaabf4c GtkThemingEngine: Add vmethod to render expanders. 2010-12-04 15:36:55 +01:00
Carlos Garnacho
b4c8eba480 GtkStyleContext: Add gtk_render_frame(). 2010-12-04 15:36:55 +01:00
Carlos Garnacho
48990bc71c GtkThemingEngine: Add vmethod to render frames. 2010-12-04 15:36:54 +01:00
Carlos Garnacho
25488633ec GtkStyleContext: Add gtk_render_background(). 2010-12-04 15:36:54 +01:00
Carlos Garnacho
13812de971 GtkThemingEngine: Add vmethod to render backgrounds. 2010-12-04 15:36:54 +01:00
Carlos Garnacho
01a8e06842 GtkStyleContext: Add gtk_render_arrow(). 2010-12-04 15:36:54 +01:00
Carlos Garnacho
b7ca7d19ee GtkThemingEngine: Add vmethod to render arrows. 2010-12-04 15:36:54 +01:00
Carlos Garnacho
1c15b140a9 GtkStyleContext: Add gtk_render_option(). 2010-12-04 15:36:53 +01:00
Carlos Garnacho
263f6de0e5 GtkThemingEngine: Add vmethod to render radio buttons. 2010-12-04 15:36:53 +01:00
Carlos Garnacho
401625b8b3 GtkStyleContext: Add gtk_render_check(). 2010-12-04 15:36:53 +01:00
Carlos Garnacho
acf4306bcd GtkThemingEngine: Add vmethod to render checkboxes. 2010-12-04 15:36:53 +01:00
Carlos Garnacho
bf7a9914dd GtkThemingEngine: Add accessors to style classes. 2010-12-04 15:36:53 +01:00
Carlos Garnacho
fe4a6cea73 GtkWidget: Add widget path to style context. 2010-12-04 15:36:53 +01:00
Carlos Garnacho
1d2aa61407 GtkStyleContext: Add child style classes.
Child style classes are like style classes, but with additional positional
information. This would be usually set by the parent container.
2010-12-04 15:36:52 +01:00
Carlos Garnacho
9a76d1a332 GtkStyleContext: Add style classes.
Style classes are the replacement of detail strings.
2010-12-04 15:36:52 +01:00
Carlos Garnacho
bd3b97d82b GtkStyleContext: Relate to a GtkThemingEngine. 2010-12-04 15:36:52 +01:00
Carlos Garnacho
0171c76871 GtkThemingEngine: Add module loading capabilities. 2010-12-04 15:36:52 +01:00
Carlos Garnacho
57be029b15 Add GtkThemingEngine.
GtkThemingEngine will be the theming engines base class, with default
implementations for all paint functions, and readonly access to the
related GtkStyleContext data.
2010-12-04 15:36:52 +01:00
Carlos Garnacho
b7e6ae3983 GtkStyleContext: Add gtk_style_context_[gs]et_path()
This relates a GtkStyleContext with a widget path, so
all style querying would happen based on it.
2010-12-04 15:36:52 +01:00
Carlos Garnacho
9794b6adf9 GtkWidget: Add gtk_widget_get_path().
This function composes and returns a GtkWidgetPath representing
the passed widget.
2010-12-04 15:36:52 +01:00
Carlos Garnacho
61360dfddf Add GtkWidgetPath.
GtkWidgetPath represents a widget path. It will mainly used by theming
engines to know detail about the widget hierarchy without actually
accessing the widget.
2010-12-04 15:36:51 +01:00
Carlos Garnacho
835cc7049c GtkStyleContext: Add getters and setter for state. 2010-12-04 15:36:51 +01:00
Carlos Garnacho
3f93c714ae GtkWidget: Add gtk_widget_get_style_context().
There will be one GtkStyleContext per widget, at the moment its
lifetime is tied to the widget's, but it could be narrowed down
to GTK_WIDGET_REALIZED.
2010-12-04 15:36:51 +01:00
Carlos Garnacho
2e96770e0b Add GtkStateFlags.
It basically represents GtkStateType as a flag set.
2010-12-04 15:36:50 +01:00
Carlos Garnacho
8a7e035ac7 GtkStateType: Add inconsistent and focused state. 2010-12-04 15:36:50 +01:00
Carlos Garnacho
b82355c76e GtkStyleContext: Fix typo. 2010-12-04 15:36:50 +01:00
Carlos Garnacho
28b7782d78 GtkStyleSet: Add method to register border property. 2010-12-04 15:36:50 +01:00
Carlos Garnacho
16484f8459 GtkStyleSet: Add method to register font properties. 2010-12-04 15:36:49 +01:00
Carlos Garnacho
1a3d964615 GtkStyleContext: Add methods to query composed style. 2010-12-04 15:36:49 +01:00
Carlos Garnacho
2da033b18c GtkStyleSet: Return default value if value is not set. 2010-12-04 15:36:49 +01:00
Carlos Garnacho
9fdcbd7a84 GtkStyleSet: Add valist and varargs getters/setters. 2010-12-04 15:36:48 +01:00
Carlos Garnacho
2bf7483e74 GtkStyleSet: Use property GQuark as store keys. 2010-12-04 15:36:48 +01:00
Carlos Garnacho
4c60de4783 GtkStyleSet: Add style property registration funcs.
Also some properties have been added as a default set.
2010-12-04 15:36:48 +01:00
Carlos Garnacho
2b425d89c8 Add GtkStyleContext.
GtkStyleContext will conglomerate the information of several
GtkStyleProviders for widgets and theme engines to query it.
2010-12-04 15:36:48 +01:00
Carlos Garnacho
530ae15f96 gtkstyleset.h: Add declaration for gtk_style_set_merge(). 2010-12-04 15:36:48 +01:00
Carlos Garnacho
f969470ad8 GtkStyleSet: Implement GtkStyleProvider.
As simple as it can get.
2010-12-04 15:36:47 +01:00
Carlos Garnacho
019fa73308 Add GtkStyleProvider, an interface to provide style details.
The get_style() function isn't final yet, further parameters
should be added to query details based on the widget hierarchy,
name, etc.
2010-12-04 15:36:47 +01:00
Carlos Garnacho
f601abd25f Add GtkStyleSet, a store of style properties.
At the moment there's only basic API for adding,
removing and clearing a property. There's also
API to merge 2 GtkStyleSets.
2010-12-04 15:36:47 +01:00
Carlos Garnacho
06288b5ae8 Add GTK_STATE_LAST to mark the end of GtkState enum. 2010-12-04 15:36:47 +01:00
Yaron Shahrabani
0d873a61e5 Updated Hebrew translation 2010-12-04 15:28:27 +02:00
Tristan Van Berkom
1d3961b342 Fixing gtk_cell_area_box_focus().
the ->focus() method was getting mixed up when more than
one cell was in the same group (not aligned), added the
proper check to break out of the loop on time.
2010-12-04 21:49:44 +09:00
Tristan Van Berkom
c4eff8b6b0 Added some "align" checkbuttons to show configurable cell alignments in testtreeedit. 2010-12-04 21:41:48 +09:00
Tristan Van Berkom
bbee4de33d Fixed typo in GtkCellArea docs. 2010-12-04 20:54:36 +09:00
Tristan Van Berkom
b0f849eafd Changed GTK_CELL_AREA_WARN_INVALID_CHILD_PROPERTY_ID for GTK_CELL_AREA_WARN_INVALID_CELL_PROPERTY_ID 2010-12-04 20:52:03 +09:00
Tristan Van Berkom
9c7e00f744 Fixing GtkTreeViewColumn to use the new _gtk_cell_layout_buildable_custom_tag_end correctly. 2010-12-04 17:10:31 +09:00
Tristan Van Berkom
84eb40b57e Added GtkEntryCompletion:cell-area construct property.
- Removed most of GtkCellLayout implementation in favor of ->get_area()
  - This allows GtkBuildable cell layout implementation to implement
    the child "cell-properties"
  - Also allows feeding a custom/different GtkCellArea implementation to
    layout cells.
  - Share the internal area with the created GtkTreeViewColumn.
2010-12-04 16:55:49 +09:00
Tristan Van Berkom
52ba4f49c5 Added boolean return to GtkCellLayout buildable custom tag end shared private function. 2010-12-04 16:53:28 +09:00
Tristan Van Berkom
c8c5ed8fa1 Removing hack and fixing gtk_tree_view_column_cell_get_size().
Now consult gtk_cell_area_context_get_preferred_height().

It can be that height-for-widths requested here were too large
when multiple cells are in play because of the alignments stored
in the context... removing the temporary focus-line-width hack.
2010-12-04 16:04:04 +09:00
Tristan Van Berkom
0f4a2d322b Fixed merge conflicts from cherry-pick of construct-only GtkTreeViewColumn:cell-area property. 2010-12-04 15:52:40 +09:00
Tristan Van Berkom
acc4dd2912 Added GtkTreeViewColumn:cell-area construct-only property.
Allow feeding treeviewcolumn a custom cell-area (or not a custom one,
but allow sharing the cell-area with say, the combo-box area).

This patch also:

 - Fixes signal connections to the area (now they do eventually get
   disconnected at dispose time, they are handled regardless if a
   treeview is set but execute safely, at least there is only one
   connection/disconnection).

 - Fixes refcounting on the cell_area (GtkCellArea is GInitiallyUnowned).

 - Adds a constructor() in order to build the cell-area if one has
   not been provided by the caller before hand at g_object_new()
   construct time.
2010-12-04 15:49:46 +09:00
Tristan Van Berkom
9c6a801f52 Migrated GtkCellLayout documentation into the source code.
Also added a section on specifying <cell-packing> properties
in the GtkCellLayout UI description.
2010-12-04 15:41:42 +09:00
Tristan Van Berkom
7e2571a358 Added "Cell Properties" section to the GtkCellArea documentation. 2010-12-04 15:02:53 +09:00
Tristan Van Berkom
2a41de70b1 Removing an unused variable from GtkCellRendererText->get_preferred_width() 2010-12-04 14:31:45 +09:00
Matthias Clasen
12e5e24c3e Another attempt to fix the gdk symbol list 2010-12-03 23:50:58 -05:00
Matthias Clasen
d998e7761c Update sections 2010-12-03 15:41:37 -05:00
Benjamin Otte
350fb1d55c API: gdk: Rename GdkWindowObjectClass to GdkWindowClass
Be consistent in the naming of objects.
2010-12-03 19:11:13 +01:00
Benjamin Otte
d916398dd2 API: Rename GdkWindowClass to GdkWindowWindowClass
We argued replacing GdkWindowClass with a input_only boolean, but this
is not doable in an API-stable way, so I decided against it.
2010-12-03 19:11:13 +01:00
Matthias Clasen
a996a309c7 One more forgotten symbol 2010-12-03 13:05:23 -05:00
Matthias Clasen
5687d7f880 Update gdk symbol list 2010-12-03 13:04:42 -05:00
Andrej Žnidaršič
3d81af670d Updated Slovenian translation 2010-12-03 18:10:08 +01:00
Matthias Clasen
17e2c5391c Fix up parameter mismatches in the docs
And other minor gdk doc fixes.
2010-12-03 09:07:06 -05:00
Matthias Clasen
4ef86fc500 Add annotation to gdk_screen_get_monitor_geometry
Pointed out by William Jon McCann.
2010-12-03 08:21:48 -05:00
Tristan Van Berkom
c5a60e035d Removed GtkCellAreaBoxPrivate from GtkCellAreaBox section. 2010-12-03 17:21:28 +09:00
Tristan Van Berkom
0fa7477091 Adding documentation for GtkCellAreaBox. 2010-12-03 17:13:31 +09:00
Tristan Van Berkom
9e3ebe4955 Marking GtkCellArea structure portions as /*< private >*/ 2010-12-03 17:12:59 +09:00
Tristan Van Berkom
4c165de31f Added gtk-doc to GtkCellArea & GtkCellAreaContext. 2010-12-03 16:29:11 +09:00
Tristan Van Berkom
b84f5aa4dd Added symbols from 'treeview-refactor' branch to gtk.symbols file. 2010-12-03 16:28:06 +09:00
Michael Natterer
e4cbe47a11 gtk: properly indent calls to gdk_threads_add_timeout() 2010-12-02 23:01:12 +01:00
Bastien Nocera
b1beaa2dea docs: Fix building with latest GDK changes 2010-12-02 21:01:53 +00:00
Matthias Clasen
f5c27476a5 Don't require a display for the color test
Its not really needed, and the build bot doesn't have X...
2010-12-02 16:00:15 -05:00
Benjamin Otte
fdb242ac6a gdk: Clean up Cairo code
Remove a bunch of code that is not required.
2010-12-02 20:21:05 +01:00
Benjamin Otte
0b6c184eaa label: Clarify docs for gtk_label_get_layout() 2010-12-02 20:21:05 +01:00
Benjamin Otte
f9a9567731 gdk: Replace direct calls of _gdk_event_func with _gdk_event_emit()
For now that function just calls the event func.
2010-12-02 20:21:05 +01:00
Benjamin Otte
b3e8504111 x11: Don't include gdkprivate.h in gdkx.h
It's private, mkay?
And include it directly where we need it anyway.
2010-12-02 20:21:05 +01:00
Benjamin Otte
a6b407cf4a gtk: Fix typos in comment 2010-12-02 20:21:05 +01:00
Benjamin Otte
8c6831ab5e gdk: Remove useless macros from gdkprivate.h 2010-12-02 20:21:05 +01:00
Benjamin Otte
f5be938840 gtk: Don't include private GDK headers
Use the function that exists for this purpose instead.
2010-12-02 20:21:05 +01:00
Benjamin Otte
585c489577 gdk: Remove GDK_PANGO_UNITS_OVERFLOWS() from internal headers
It's unused.
2010-12-02 20:21:05 +01:00
Benjamin Otte
4d1604c77d gdk: Move window beeps into GdkWindowImpl
One less magic function. Also refactored it to make it easier to
implement. It now returns TRUE if it beeped and FALSE if it failed to do
so. A default implementation exists that just returns FALSE for all the
backends that can't beep windows (read: everything but X11 with XKB -
and why on earth do keyboard libs implement beeping?)
2010-12-02 20:21:05 +01:00
Benjamin Otte
1269f8424f gdk: Make get_shape and get_input_shape vfuncs
Trying to get rid of all the _gdk_windowing_something() functions that
we expect backends to magically know about and instead put them in a
proper interface (mostly GdkWindowImplClass).
2010-12-02 20:21:04 +01:00
Benjamin Otte
218eea4378 gdk: Remove GdkDrawable
It's unused.
2010-12-02 20:21:04 +01:00
Benjamin Otte
b9fc6a0c03 gdk: Remove remaining includes of gdkdrawable.h 2010-12-02 20:21:04 +01:00
Benjamin Otte
4bfa4e0d86 gdk: Make GdkWindowImpl inherit from GObject 2010-12-02 20:21:04 +01:00
Benjamin Otte
3494f87a10 API: Remove GdkNoExposeEvent
It's not used by anyone and not supported by any backend but X11.
2010-12-02 20:21:04 +01:00
Benjamin Otte
98838df2db gdk: Make GdkWindow->impl a GdkWindowImpl 2010-12-02 20:21:04 +01:00
Benjamin Otte
e3013a5cf5 docs: Replace mentions of drawable with window in migration guide
No need to let gtk3-aware people learn about wonderous gtk2 terms when
they are migrating old code. ;)
2010-12-02 20:21:04 +01:00
Benjamin Otte
d03c94907a docs: Remove overrides for types that don't exist anymore 2010-12-02 20:21:04 +01:00
Benjamin Otte
ba20a00570 tests: Remove disabled testtext example 2010-12-02 20:21:04 +01:00
Benjamin Otte
804c2c8350 cellrenderer: Fix docs to say cairo_t instead of GdkDrawable 2010-12-02 20:21:04 +01:00
Benjamin Otte
17a0a467a1 gdk: Pass the GdkWindow to resize_cairo_surface vfunc
So it's in sync with all the other vfuncs.
2010-12-02 20:21:04 +01:00
Benjamin Otte
e4c27b0a59 API: GdkWindow no longer is a GdkDrawable
Also, name the get_type function properly.
2010-12-02 20:21:03 +01:00
Benjamin Otte
1ad7c5f8c5 x11: Remove unused GDK_DRAWABLE_XROOTWIN macro 2010-12-02 20:21:03 +01:00
Benjamin Otte
2408936bb5 x11: Remove duplicate definition of GDK_WINDOW_XID
Now, where did that come from?
2010-12-02 20:21:03 +01:00
Benjamin Otte
d1700d6e3c gdk: Move ref_cairo_surface from GdkDrawable to GdkWindowImpl
Also make it take the actual GdkWindow, not the implementation, like all
the other vfuncs do.
2010-12-02 20:21:03 +01:00
Benjamin Otte
62d004cf8f gdk: Remove _gdk_drawable_ref_cairo_surface()
Instead, call the vfunc directly from gdkWindow.c
2010-12-02 20:21:03 +01:00
Benjamin Otte
9d2abf81d2 x11: Remove outdated variable definition 2010-12-02 20:21:03 +01:00
Benjamin Otte
1215f70e23 gdk: Remove GdkDrawable->create_cairo_surface vfunc
It's unused.
2010-12-02 20:21:03 +01:00
Benjamin Otte
370d272b13 gdk: Remove _gdk_window_impl_get_type() function
It was only used in the backends, and they can use the correct type
directly.
2010-12-02 20:21:03 +01:00
Benjamin Otte
ac4609ecc9 x11: Fix in_rectangle computation
A point is not in a rectangle when it's at the x + width coordinate.
2010-12-02 20:21:03 +01:00
Benjamin Otte
1bb6f48bb3 gdk: Rename GdkWindowObject to GdkWindow
... and remove most of the casting that used to be necessary.
2010-12-02 20:21:03 +01:00
Benjamin Otte
7acb64f983 gdk: Make GdkWindowImpl a class, not an interface
It's a subclass of GdkDrawable and the baseclass for GdkWindowImplX11
etc now.
2010-12-02 20:21:02 +01:00
Benjamin Otte
b3bca70d5b gdk: Remove unused medialib code 2010-12-02 20:21:02 +01:00
Benjamin Otte
b1f6df8085 API: Remove gdkdrawable.h from public headers
It continues to exist as a private header.
2010-12-02 20:21:02 +01:00
Benjamin Otte
771fa78257 textbuffer: Remove check for GdkDrawable
This should only have been used for stipple patterns, and those are gone
now.
2010-12-02 20:21:02 +01:00
Benjamin Otte
cf6ce6e671 API: Decouple GdkWindow from GdkDrawable
Make GdkWindow no longer typedeffed to GdkDrawable, but instead make it
be its own (private) type.
2010-12-02 20:21:02 +01:00
Benjamin Otte
81605623e2 gdk: Use GdkDrawable for impl pointers
... instead of GdkWindow
2010-12-02 20:21:02 +01:00
Benjamin Otte
a7e6d6c4b4 gtk: Avoid GdkDrawable usage, including needless casts 2010-12-02 20:21:02 +01:00
Benjamin Otte
63808f90a2 gail: Avoid needless calls to GdkDrawable 2010-12-02 20:21:02 +01:00
Benjamin Otte
62622a94ae gdk: Pass Drawable as argument
We're not passing a GdKWindow here, but the implementation.
2010-12-02 20:21:02 +01:00
Benjamin Otte
072498ae87 gdk: Make _gdk_window_ref_cairo_surface() protected and use it
... instead of _gdk_drawable_ref_cairo_surface() where appropriate.
Also, don't implement the drawable->create_cairo_surface vfunc anymore.

This is in preparation for the split of GdkWindow from GdkDrawable.
2010-12-02 20:21:02 +01:00
Benjamin Otte
e724054d19 API: Remove GDK_WINDOW_XWINDOW() macro
Use GDK_WINDOW_XID() instead.

THis was done using sed, so there might be issues resulting to that.
Feel free to fix.
2010-12-02 20:20:56 +01:00
Benjamin Otte
18a6976e5a API: gdk: Don't track outstanding surfaces
You are not allowed to track surfaces from GDK or draw outside of expose
events. So we can remove ugly hacks needed previously. See
https://bugzilla.gnome.org/show_bug.cgi?id=606009 for the introduction
of this workaround.
2010-12-02 20:17:28 +01:00
Benjamin Otte
fe6f76a5a2 x11: Make wrapper member a GdkDrawable
This is in preparation for getting rid of GdkDrawable as a dependency of
GdkWindow.
2010-12-02 20:17:28 +01:00
Benjamin Otte
becaf660fc API: gdk_drawable_get_visible_region => gdk_window_get_visible_region
Also get rid of the GdkDrawable vfunc.
2010-12-02 20:17:28 +01:00
Benjamin Otte
6a3a89a621 API: gdk_drawable_get_clip_region() => gdk_window_get_clip_region()
Also remove the vfunc from GdkDrawableClass.
2010-12-02 20:17:28 +01:00
Benjamin Otte
97e6e9d212 API: Make gdk_cairo_create() take a GdkWindow
This is not strictly an API change as GdkDrawable is typedeffed to
GdkWindow, but it changes the header, so I'm marking it as such.
gdk_cairo_create() can only be used with windows these days, so it makes
sense to pass a window. With that, we can alseo remove the
set_cairo_clip() vfunc from GdkDrawable and implement it inside
gdkwindow.c.
2010-12-02 20:17:28 +01:00
Benjamin Otte
65dde2f92f API: Remove gdk_cairo_reset_clip()
You should not ever ever ever call cairo_reset_clip(). If you do, your
code is broken and you deserve everything you get.
And we should definitely not support this insanity.
2010-12-02 20:17:28 +01:00
Benjamin Otte
d154344a43 win32: Remove some unused defines 2010-12-02 20:17:28 +01:00
Benjamin Otte
88399c041c x11: Remove GdkDrawableImplX11
It's not use anymore, the whole functionality has been moved to
GdkWindowImplX11.
2010-12-02 20:17:27 +01:00
Benjamin Otte
3e6a4af6d3 x11: _gdk_x11_drawable_update_size() => _gdk_x11_window_update_size() 2010-12-02 20:17:27 +01:00
Benjamin Otte
bb79506665 x11: Move cairo_surface and wrapper members to GdkWindowImplX11 struct 2010-12-02 20:17:27 +01:00
Benjamin Otte
1c7f58fdb6 x11: Move xid member from GdkDrawableImplX11 to GdkWindowImplX11 2010-12-02 20:17:27 +01:00
Benjamin Otte
a3c5005eef x11: Use GDK_WINDOW_XID() instead of writing it out 2010-12-02 20:17:27 +01:00
Benjamin Otte
094b0eeb98 x11: Remove screen member from GdkDrawableImplX11 2010-12-02 20:17:27 +01:00
Benjamin Otte
5f12730599 x11: Get display from window, not from impl-drawable's screen 2010-12-02 20:17:27 +01:00
Benjamin Otte
cfa67127a1 x11: Get display from window, not from impl-drawable's screen 2010-12-02 20:17:27 +01:00
Benjamin Otte
dc7d8dae67 x11: Change GDK_WINDOW_SCREEN macro
on't look at GdkDrawableImplX11->screen, but call
gdk_window_get_screen() instead.
2010-12-02 20:17:27 +01:00
Benjamin Otte
5139eecc75 API: x11: Remove GDK_DRAWABLE_XID and GDK_DRAWABLE_XDISPLAY
Window equivalents exist and drawables are on their way out.
2010-12-02 20:17:27 +01:00
Benjamin Otte
3b8aea389d x11: Use window macros instead of drawable macros
GDK_WINDOW_XID() instead of GDK_DRAWABLE_XID()
GDK_WINDOW_XDISPLAY() instead of GDK_DRAWABLE_XDISPLAY()
2010-12-02 20:17:27 +01:00
Benjamin Otte
91679c384a API: Remove gdk_x11_drawable_get_xdisplay()
No need for the function. Macros exist to do the same thing.
2010-12-02 20:17:27 +01:00
Benjamin Otte
0841281b55 x11: Use window macros in test code 2010-12-02 20:17:27 +01:00
Benjamin Otte
28ba4c2146 im-xim: Use window macros instead of drawable macros 2010-12-02 20:17:27 +01:00
Benjamin Otte
3af4432c6f API: x11: Remove gdk_x11_window_get_drawable_impl()
It's not used anymore
2010-12-02 20:17:27 +01:00
Benjamin Otte
deffc9e39f API: x11: Change GDK_WINDOW_XDISPLAY() macro
Instead of lots of magic, we can go the usual way of requesting the
XDisplay of the window's display. So we do that.
2010-12-02 20:17:27 +01:00
Benjamin Otte
cf51750bf4 API: x11: gdk_drawable_get_xid => gdk_window_get_xid
Also moves the function implementations to gtkwindow-x11.c.
2010-12-02 20:17:27 +01:00
Jorge González
86390c99dd Updated Spanish translation 2010-12-02 19:28:16 +01:00
Jorge González
c5d1b36e87 Updated Spanish translation 2010-12-02 19:28:12 +01:00
Tristan Van Berkom
513546f3df Adding GtkCellArea to gtk-doc build (added to gtk3.types, gtk-docs.sgml and updated gtk3-sections.txt file). 2010-12-03 00:29:43 +09:00
Tristan Van Berkom
a7ad110fe9 Adding more documentation to GtkCellArea, documented GtkCellAreaClass structure. 2010-12-03 00:29:22 +09:00
Bastien Nocera
66122b369e gtk: Centre the text under the icon in GtkIconView
No point in setting the alignment to centre if we don't center it
within the cell itself.
2010-12-02 15:04:32 +00:00
Tristan Van Berkom
005964b22a Manually pulling back a GtkTreeViewColumn fix from treeview-refactor-staging
This fix has evolved in the staging branch since all column members are
on a private structure, but since it causes warnings when closing the
windows of the testcellarea test (because the combo-boxes use a treeviewcolumn)
I thought it nice for now to just manually include the fix.

The fix is just proper bookkeeping of delegate objects at dispose() time.
2010-12-02 17:42:46 +09:00
Tristan Van Berkom
cd09abf461 Changed tests/testcellarea.c (and scaffolding) to only reorient the GtkCellArea
It's a better test case if the scaffolding only displays the rows from top
to bottom and doesnt line up the cells from left to right (because it shows
that height-for-width still works with vertically oriented areas).
2010-12-02 17:10:10 +09:00
Tristan Van Berkom
2bf8f7eab9 Removed unused variable from GtkCellAreaBoxContext. 2010-12-02 17:09:44 +09:00
Tristan Van Berkom
03a72118ad Merge branch 'master' into treeview-refactor
Conflicts:
	tests/Makefile.am
2010-12-02 13:58:02 +09:00
Matthias Clasen
dd678ac323 Avoid a warning when finalizing toolbars
Recent changes cause disposing menus to emit ::deactivate. So better
disconnect the deactivate handler first.
2010-12-01 23:32:35 -05:00
Tristan Van Berkom
a9fd00a435 Fixed GtkCellAreaBoxContext for some typos introduced while removing GtkCellAreaContext->sum_preferred_width()/height() apis. 2010-12-02 13:19:37 +09:00
Cosimo Cecchi
6587652433 app-chooser-button: don't insert empty rows in the combobox 2010-12-01 20:18:12 +01:00
Cosimo Cecchi
b17f033857 app-chooser-button: add a note in the docs 2010-12-01 17:04:22 +01:00
Cosimo Cecchi
6e6379c633 app-chooser: add docs and symbols coverage for new API 2010-12-01 17:04:22 +01:00
Cosimo Cecchi
510d65ba08 app-chooser-button: add gtk_app_chooser_button_set_active_custom_item()
This allows to pre-select a custom item.
2010-12-01 17:04:22 +01:00
Cosimo Cecchi
9ffd1f7adb app-chooser-button: make sure to always get a valid iter
Even in case there are no installed applications for our content type.
2010-12-01 17:03:51 +01:00
Bastien Nocera
959fc60c47 gtk: Allow hiding the trough/slider in GtkScale
When setting a GtkRange's upper and lower values to the same
value, the slider will not be drawn any more.

https://bugzilla.gnome.org/show_bug.cgi?id=549720
2010-12-01 15:39:50 +00:00
Tristan Van Berkom
30561228ed Added some rules to GtkCellAreaBox for rendering the last cell.
- When we reach a cell that is out of the render area, break out
   of the loop (for columns user resized too small)
 - CLAMP the size of the last renderer to fit into the area
   (so that renderers get a chance to ellipsize when rendered
   with a space less than allocation, same reason as above).
 - Hand out remaining space in the render area to the last cell,
   this is for shallow rows in the expand column which may recieve
   more than the allocated width.
2010-12-01 22:56:06 +09:00
Ivar Smolin
926622e2dd [l10n] Updated Estonian translation 2010-12-01 13:17:39 +02:00
Mahyar Moghimi
80b1c80dbb Updating Persian translation 2010-12-01 14:19:46 +03:30
Mahyar Moghimi
b9bc2f1321 Updating Persian translation 2010-12-01 14:16:19 +03:30
Tristan Van Berkom
a852deeb03 Fixed GtkCellArea to always activate a cell at gtk_cell_area_activate() time even if no cells have focus. 2010-12-01 16:22:18 +09:00
Tristan Van Berkom
26ac551b74 Added special clause to GtkCellAreaBox focus navigation.
If the area has no activatable cells and has focus when
focus should be cycled, immediately focus out of the area
(because focus in that case is given to the entire area).
2010-12-01 15:18:40 +09:00
Emmanuele Bassi
b9859de917 switch: Fix the attribution line
Thomas Wood pointed out that the original MxGtkLightSwitch widget upon
which I based the behaviour of GtkSwitch was not written by him; the
original authors are:

  Joshua Lock
  Robert Staudinger
  Jussi Kukkonen

My apologies to all of them.
2010-11-30 21:54:48 +00:00
Matthias Clasen
bdeba634d9 Update checkmenuitem docs slightly 2010-11-30 11:36:34 -05:00
Cosimo Cecchi
117e88646f Merge branch 'open-with-dialog' 2010-11-30 17:31:59 +01:00
Cosimo Cecchi
4fe23cae78 app-chooser: other misc doc fixes 2010-11-30 17:27:53 +01:00
Cosimo Cecchi
960516bf33 app-chooser: add more symbols & docs 2010-11-30 16:30:33 +01:00
Cosimo Cecchi
cb916f2746 Merge branch 'master' into open-with-dialog
Conflicts:
	docs/reference/gtk/gtk3-sections.txt
	gtk/gtk.symbols
2010-11-30 16:27:28 +01:00
Guillaume Desmottes
8076dbfb5c gtkspinner: don't setup the timeout twice (#636129) 2010-11-30 15:59:49 +01:00
Cosimo Cecchi
5f942b1232 app-chooser-button: remove leftover typedef 2010-11-30 15:04:50 +01:00
Cosimo Cecchi
50e967d17b build: order new files alphabetically 2010-11-30 15:04:00 +01:00
Cosimo Cecchi
d8ef15c592 app-chooser: update docs 2010-11-30 15:03:33 +01:00
Ryan Lortie
922324553b Bug 619148 - "active ID" properties (GtkComboBox)
Based on a patch by Matthias, add an "active-id" property for
GtkComboBox and add some convenience API for GtkComboBoxText.

Also, add a test case to gtk-demo.
2010-11-30 00:29:16 -05:00
Emmanuele Bassi
781d4faf4c a11y: Use ATK macros and clean up/2 - GtkSpinner
ATK provides macros to the same effect as G_DEFINE_TYPE; using these
macros has the advantage of removing tons of duplicated code and
reducing the maintainership burden.

The widgets with inline accessibility implementation should switch to
these macros, and clean up the code.

https://bugzilla.gnome.org/show_bug.cgi?id=636060
2010-11-30 02:06:57 +00:00
Emmanuele Bassi
e7966a2c0c a11y: Use ATK macros and clean up/1 - GtkAssistant
ATK provides macros to the same effect as G_DEFINE_TYPE; using these
macros has the advantage of removing tons of duplicated code and
reducing the maintainership burden.

The widgets with inline accessibility implementation should switch to
these macros, and clean up the code.

https://bugzilla.gnome.org/show_bug.cgi?id=636060
2010-11-30 02:06:56 +00:00
Matthias Clasen
2fffce2c23 Forgotten changes 2010-11-29 16:47:45 -05:00
Javier Jardón
f07480eb44 GtkSwitch: Add missing "Since: 3.0" tags 2010-11-29 22:00:49 +01:00
Javier Jardón
e3556c7f3e configure: Fix typo 2010-11-29 21:33:43 +01:00
Andrej Žnidaršič
8caa0c8c36 Updated Slovenian translation 2010-11-29 21:27:47 +01:00
Matthias Clasen
c39a434281 Bump version 2010-11-29 14:48:24 -05:00
Matthias Clasen
2392dacb2b No more rulers 2010-11-29 13:56:27 -05:00
Matthias Clasen
4893d662a7 Clean up POTFILES.skip as well 2010-11-29 13:29:49 -05:00
Matthias Clasen
d79afd9a17 Update NEWS 2010-11-29 13:04:15 -05:00
Matthias Clasen
9c1e61e9aa Revert c00b85bf3f
This needs more work, currently we do dupe targets when copying
target entries in various places, and consequently free them
later. To do this correctly, the strings need to be interned
or something like that.
2010-11-29 13:00:04 -05:00
Matthias Clasen
670dfdb7cc Re-add some conditionals to symbols files
We need to keep the ifdefs for platform abi differences.
2010-11-29 12:47:44 -05:00
Cosimo Cecchi
51cb082022 app-chooser-online: rework of the online module
- the _get_default() method is now async
- the PackageKit module will return NULL in case PackageKit is not
  available in the session bus
- the dummy module doesn't exist anymore
- the dialog won't display the online button in case there's no module
  available
2010-11-29 18:10:06 +01:00
Matthias Clasen
6b5221380e remove some duplicate symbols 2010-11-29 12:04:38 -05:00
Matthias Clasen
a562646678 Add gdk_device_get_n_keys to symbol list 2010-11-29 11:49:11 -05:00
Matthias Clasen
6a3be062b3 Add GtkSwitch to POTFILES 2010-11-29 11:46:58 -05:00
Matthias Clasen
6210faa070 Updates 2010-11-29 11:43:45 -05:00
Matthias Clasen
2451e6f690 Small doc fixup 2010-11-29 11:25:10 -05:00
Matthias Clasen
99aa90b0bc Add GtkSwitch to the widget gallery 2010-11-29 11:23:07 -05:00
Matthias Clasen
0ca07a6df7 Add a GtkSwitch 2010-11-29 10:14:21 -05:00
Cosimo Cecchi
134e74177e app-chooser-button: tabs to spaces 2010-11-29 16:10:58 +01:00
Cosimo Cecchi
232a5c7b3b app-chooser-button: change the API approach for custom items
Introduce a 'custom-item-activated' on the widget, which behaves
similairly to GtkEntryCompletion::action-activated, i.e. is emitted when
a custom item is chosen from the dropdown list.
Clients can use the name provided when adding the item as a detail for
the signal, to get notified when that specific item is activated, or use
the signal without details to get notifications for all custom items.
2010-11-29 16:04:59 +01:00
Emmanuele Bassi
1f71d641e8 switch: Use ATK macros to reduce the amount of code
And the insanity.

Reviewed-by: Christian Persch <chpe@gnome.org>
2010-11-29 14:06:02 +00:00
Emmanuele Bassi
9ad31a5a21 switch: Use the right value for comparison 2010-11-29 13:23:28 +00:00
Emmanuele Bassi
ae95cdf8fc switch: Add accessibility implementation
Modelled on GailToggleButton.

https://bugzilla.gnome.org/show_bug.cgi?id=634987
2010-11-29 12:52:10 +00:00
Emmanuele Bassi
044040dfd1 docs: Add GtkSwitch to the API reference
https://bugzilla.gnome.org/show_bug.cgi?id=634987
2010-11-29 12:52:10 +00:00
Emmanuele Bassi
0cd0e4091f Add GtkSwitch, a "light-switch" like widget
The GtkSwitch widget is a simple UI control that has two states: on and
off. Toggling between the states is possible by clicking the widget or
by dragging the handle.

https://bugzilla.gnome.org/show_bug.cgi?id=634987
2010-11-29 12:52:10 +00:00
Theppitak Karoonboonyanan
7d0e356946 Updated Thai translation. 2010-11-29 18:56:35 +07:00
Cosimo Cecchi
8ae7993397 app-chooser-button: include gtk-docs for show-dialog-item 2010-11-29 12:25:52 +01:00
Cosimo Cecchi
06f501fa07 app-chooser-button: rename GtkAppChooserComboBox -> GtkAppChooserButton 2010-11-29 12:19:18 +01:00
Tristan Van Berkom
b39521dcf7 Make GtkTreeView tell the column about expand space instead of just assigning column->width.
Also modified the api to open up the way for treeview to tell the column
about how much of its size is really used to render the area.
2010-11-29 18:04:47 +09:00
Tristan Van Berkom
5729d2552b Fix GtkCellAreaBox to not paint a focus rectangle while a cell is currently being edited. 2010-11-29 16:49:34 +09:00
Tristan Van Berkom
626f27f7ed Changed cell area/renderer "can_focus" semantics to "is_activatable" across the board.
This is because focus in treeviews can be given to cells that cannot do anything
with activation (for better keynav), so we dissociate the concept of cell
activation and focusing.
2010-11-29 16:29:09 +09:00
Tristan Van Berkom
dbe026ed1e Fixed GtkCellAreaBox->focus() to not give focus to cells that are siblings of an intentional focus cell. 2010-11-29 16:20:01 +09:00
Tristan Van Berkom
5f427ff476 Make focus rectangle painted on all cells if the GtkCellAreaBox is requested to paint focus and none of the cells are activatable. 2010-11-29 16:14:46 +09:00
Tristan Van Berkom
87892261e0 Make editable widget fill the entire inner area of the edited cell
instead of just the aligned focus area to match previous behaviour
2010-11-29 16:03:53 +09:00
Tristan Van Berkom
865eb60d21 Fixed GtkCellLayout to pack cells via the api when parsing builder input. 2010-11-29 13:03:54 +09:00
Tristan Van Berkom
cad41833a2 Allow minimal implementation of GtkCellLayout
Since GtkCellArea delegate does all the work, cell layout widgets
who use a GtkCellArea internally only have to implement the _get_area()
method, this just reduces code to forward the calls over the the internal
cell area.
2010-11-29 13:03:41 +09:00
Tristan Van Berkom
d3aed12b65 Removed cell_layout implementation details in GtkTreeViewColumn in favor of cell_layout->get_area 2010-11-29 13:01:49 +09:00
Tristan Van Berkom
2394f5e49b Touching up GtkCellArea docs. 2010-11-29 11:02:29 +09:00
Tristan Van Berkom
9ee9081405 Added initial detailed docs for GtkCellArea. 2010-11-29 10:55:50 +09:00
Tristan Van Berkom
c1cbc8790e Removed gtk_cell_area_context_sum_preferred_width/height apis.
Turns out theres not much reason to do this in a separate api,
now we just sum up the sizes of aligned cell groups in GtkCellAreaContextBox
when pushing the group size.
2010-11-29 10:55:50 +09:00
Kristian Rietveld
217f688376 Remove obsolete code line 2010-11-28 21:14:33 +01:00
Kristian Rietveld
cbbff6c5e6 Add temporary hack to get the row heights right 2010-11-28 21:02:36 +01:00
Kristian Rietveld
6568b59e8a Remove unused retrieval of focus-line-width 2010-11-28 20:40:59 +01:00
Kristian Rietveld
7527350d69 validate_row no longer uses focus-line-width 2010-11-28 20:39:51 +01:00
Emmanuele Bassi
1779ae79a1 rgba: Invert the arguments and improve bindability
Since parse() is a method of the Gdk.RGBA class, the GdkRGBA pointer
should be the first argument, and the string the second one, to allow a
more natural binding.

https://bugzilla.gnome.org/show_bug.cgi?id=635879
2010-11-28 19:01:51 +00:00
Kristian Rietveld
6fe9df2f1d First go at migrating GtkTreeView(Column) to GtkCellArea
This is still very much a work in progress, but it renders and more or
less works.  I will be fixing up the details in the very near future.

Important: this commit breaks ABI as it modifies the GtkTreeViewColumn
structure in gtktreeviewcolumn.h.  This is a sealed structure that needs
to be moved to an internal header file, most likely gtktreeprivate.h.
2010-11-28 19:54:24 +01:00
Kristian Rietveld
05b217ab2a Allow non-editable cells to receive focus
Slight tweak for GtkTreeView, also non-editable cells must be able to receive
focus to get all keyboard navigation right.  This will be further tweaked
to get focus siblings to work like focus cells did in GtkTreeView before
refactoring.
2010-11-28 19:54:24 +01:00
Kristian Rietveld
354b3412dd Available extra space could be less than zero
The allocated size, or (horizontally speaking) for-width size, can be
smaller than the sum of all minimum widths.  For example when the user
is resizing tree view columns manually.
2010-11-28 19:54:18 +01:00
Matthias Clasen
b0bf2b5202 Avoid delays in starting applications
Only query file info once, and don't do it for non-native files, since
that may cause sync network IO.

Bug http://bugzilla.gnome.org/show_bug.cgi?id=635588
2010-11-27 23:12:09 -05:00
Matthias Clasen
289ad41bd1 Fix recursion in the GtkIconView accessible initialization
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=634474
2010-11-27 20:56:09 -05:00
Tristan Van Berkom
5df7dab3cf Changed all the flush apis on GtkCellAreaContext for a single "reset" api. 2010-11-27 16:05:14 +09:00
Tristan Van Berkom
cbc4416c8e Removing the height_for_width vfuncs on GtkCellAreaContextClass which I forgot to remove. 2010-11-27 15:40:45 +09:00
Tristan Van Berkom
e21c224f28 Fixing GtkCellAreaBox at render time to consider height-for-width when stacked vertically
Also bullet-proofing GtkCellAreaBoxContext at allocate time.
2010-11-26 23:44:22 +09:00
Spoiala Marian
ec78fb1821 Updated Romanian translation 2010-11-26 16:03:14 +02:00
Lucian Adrian Grijincu
7c4f20f4e3 Updated Romanian translation 2010-11-26 16:02:41 +02:00
Tristan Van Berkom
08cc318946 Fixed CellAreaScaffold for new gtk_cell_area_context_allocate() api. 2010-11-26 21:38:29 +09:00
Tristan Van Berkom
487223d480 Finally really support rendering of cells in an unallocated context.
What this means is basically that a vertically oriented GtkCellAreaBox
will render cells properly even if the height is not constant for every
for of data in the said GtkCellAreaContext (i.e. the height was not allocated
by gtk_cell_area_context_allocate).

This is done completely on the fly and so is much more heavy duty
at render time (considerably slower but not visibly noticable in
lightweight views like GtkTreeMenu). Note that cell alignments
are not possible in an unallocated orientation, each row of data
individually receives only enough space to render the independant
row and no space is reserved for alignments if the size is not
a constant size across rows in the same context.
2010-11-26 21:38:10 +09:00
Tristan Van Berkom
fa3c8f182e Revert "Removed tons of api that we dont absolutely need in GtkCellAreaContext:"
This reverts commit 5f7787ab2e.
2010-11-26 21:37:51 +09:00
Andika Triwidada
4df1214483 Updated Indonesian translation 2010-11-26 12:08:00 +07:00
Bastien Nocera
b850f8bf18 docs: Make docs build after GtkRuler removal 2010-11-26 00:47:55 +00:00
Lucian Adrian Grijincu
24862a5f60 Updated Romanian translation 2010-11-26 01:29:50 +02:00
Lucian Adrian Grijincu
d588f85cc8 Updated Romanian translation (remove windows line endings) 2010-11-26 01:25:14 +02:00
Spoiala Marian
e2e05e8bf3 Updated Romanian translation 2010-11-26 01:24:15 +02:00
Spoiala Marian
e2f6cf4561 Updated Romanian translation 2010-11-26 01:22:40 +02:00
Cosimo Cecchi
ef9543e978 tests: fix indentation 2010-11-25 17:32:13 +01:00
Cosimo Cecchi
67e842be87 app-chooser-combobox: add a method to trigger the GtkAppChooserDialog
It's an optional special item in the combobox, turned off by default.
2010-11-25 17:30:01 +01:00
Tristan Van Berkom
7fc7bd613b Changed GtkCellRendererText to request less than wrap-width if the text is smaller than the wrap-width (or width-chars). 2010-11-25 22:46:55 +09:00
Tristan Van Berkom
2dd2c7ce05 Added gtk_cell_renderer_get_aligned_area() and class vfunc.
Since a cell renderer might use more space than the natural
size when recieving expand space it's impossible to know how
much space is actually used to render content.

Adding this virtual method to allow text renderers to implement
it, the base default method uses height-for-width apis and aligns
the cell assuming the renderer uses a fixed size.

This commit removes the similar code from gtkcellarea and
subclasses.
2010-11-25 17:41:26 +09:00
Tristan Van Berkom
5f7787ab2e Removed tons of api that we dont absolutely need in GtkCellAreaContext:
- gtk_cell_area_context_get_height_for_width()
  - gtk_cell_area_context_get_width_for_height()
  - gtk_cell_area_context_push_height_for_width()
  - gtk_cell_area_context_push_width_for_height()
  - gtk_cell_area_context_flush_height_for_width()
  - gtk_cell_area_context_flush_width_for_height()
  - Contextual size changed signal

All of these are not really important for the CellArea to operate
and not of any real consequential value to the user (the user can
accumulate the returned values from height-for-width requests
and do as they please with it).
2010-11-25 16:36:46 +09:00
Tristan Van Berkom
9d0c2f6b37 Make GtkCellAreaBox handle rendering without a previous allocation in the orientation of choice.
This is so that treeviews can have some columns oriented vertically and
some horizontally, usually the column will only allocate the areas
width, having vertical columns without fixed row heights just means
it's slower to render.
2010-11-25 16:09:51 +09:00
Tristan Van Berkom
57a94bfb53 Merge branch 'master' into treeview-refactor 2010-11-25 15:07:47 +09:00
Tristan Van Berkom
eb5a500495 Changing GtkBox:fill child property default back to TRUE.
Since Havoc's patches introducing the GtkWidget halign/valign
properties, fill should always be TRUE. If the widget should
not fill its allocated space then it should set the halign or
valign properties for that purpose.

This also consequently fixes bug 634592.
2010-11-25 14:37:02 +09:00
Tristan Van Berkom
6716e7c3f1 Fixed GtkMenuShell to deactivate itself at dispose time
Since GdkDevice stuff, it seems that destroying an active
menu doesnt get rid of all the device grabery, this fixes
bug 635693.
2010-11-25 14:08:55 +09:00
Matthias Clasen
a498d9a9ba Coding style fixups
This commit adjusts the app chooser code to GTK+ coding style:
- line up prototypes
- remove some excess {}
- remove tabs and trailing whitespace
- add docs
2010-11-24 18:32:05 -05:00
Matthias Clasen
f64448473e Coding style fixes 2010-11-24 16:50:00 -05:00
Matthias Clasen
964b684455 Improve packing in testappchooser 2010-11-24 16:47:15 -05:00
Matthias Clasen
47308db2ba Fix reference counting for icons 2010-11-24 16:09:55 -05:00
Milan Bouchet-Valat
2e3935ba9d Fix missing (transfer) annotations in GDK
Mostly missing (transfer none).
2010-11-24 21:37:20 +01:00
Michael Natterer
c00b85bf3f Bug 565665 - GtkTargetEntry member target should be const char * 2010-11-24 21:01:45 +01:00
Michael Natterer
aaf8530177 gdk: remove GdkDeviceKey and GdkDeviceAxis from the public API
move GdkDeviceKey to gdkdevice.c because it's still used there, remove
GdkDeviceAxis entirely.
2010-11-24 20:28:19 +01:00
Michael Natterer
bdf18500ec gdk: gdk_device_get_n_keys() is now Since: 2.24 2010-11-24 20:16:25 +01:00
Cosimo Cecchi
183d75b812 app-chooser-combobox: make refresh properly work with custom items
The refresh implementation leaves the custom items in place, and just
refreshes the recommended applications.
2010-11-24 19:08:17 +01:00
Cosimo Cecchi
2a95707b4c app-chooser-combobox: add an initial implementation
GtkAppChooserCombobox is an implementation of GtkAppChooser inside a
combobox that shows recommended applications for a given content type.
2010-11-24 18:45:42 +01:00
Cosimo Cecchi
627f9b70a7 app-chooser-dialog: add a 'Forget Association' context menu item 2010-11-24 17:12:08 +01:00
Cosimo Cecchi
6b900cf276 app-chooser-widget: add a 'populate-popup' signal for context menus
This way applications can append items to the menu, which will
automatically show when there's more than one item in it.
2010-11-24 17:12:04 +01:00
Benjamin Otte
e0fb7a86e5 gtk: Remove GtkRuler
It is really bad code, mostly unused and no one stepped up to fix it.

Note that Gtk developers do not object to a ruler widget in priciple,
just to the current implementation. If someone wants to propose a sane
version, please don't hesitate.

https://bugzilla.gnome.org/show_bug.cgi?id=613942
2010-11-24 16:56:10 +01:00
Benjamin Otte
c5e25b1532 gtk: Remove unused variables from build scripts
ALL_FILES and INCLUDE_VARIABLES are unused
2010-11-24 16:40:40 +01:00
Benjamin Otte
0c0b1c3a46 gtk: Uncruftify gtk.symbols 2010-11-24 16:39:32 +01:00
Benjamin Otte
fd96b16c15 gdk: Remove unused macros from build
Both ALL_FILES and INCLUDE_VARIABLES don't exist anymore
2010-11-24 16:18:46 +01:00
Benjamin Otte
cca530070e gdk: Clean up gdk.symbols file
Remove all the macro madness and sort it alphabetically.
2010-11-24 16:15:47 +01:00
Cosimo Cecchi
783b36398e tests: remove radio mode from the test 2010-11-24 15:50:08 +01:00
Cosimo Cecchi
067b4ccb33 Revert "open-with-dialog: remove automatic setting of support-for-type"
This reverts commit 4cfe121296.

Conflicts:

	gtk/gtkappchooserdialog.c
2010-11-24 15:49:47 +01:00
Tor Lillqvist
4e59750ac0 No fsync on Windows 2010-11-24 14:36:29 +02:00
Tor Lillqvist
290ecb0aba Fix compilation breakage in gdk/win32 2010-11-24 14:26:53 +02:00
John Ralls
c0aae6644a Replace references to sealed GdkDevice private variables with accessor calls in quartz. 2010-11-23 16:53:45 -08:00
Mario Blättermann
38b8ab3002 [l10n] Updated German translation 2010-11-23 21:14:15 +01:00
Michael Natterer
fb5dd9f72f Move all GdkDevice members to private and add one missing accessor 2010-11-23 20:25:13 +01:00
Cosimo Cecchi
abf3b4af07 open-with-widget: make sure to escape the string we use for markup 2010-11-23 18:15:28 +01:00
Cosimo Cecchi
d0c35d63e0 Revert "open-with-widget: don't check if the app supports URIs/files"
This reverts commit b432242078.
2010-11-23 18:10:01 +01:00
Cosimo Cecchi
05bb715c51 app-chooser: rename GtkOpenWith to GtkAppChooser 2010-11-23 17:50:15 +01:00
Cosimo Cecchi
6f0a605891 open-with-dialog: don't show the 'Show More...' button in all mode 2010-11-23 16:53:23 +01:00
Cosimo Cecchi
b432242078 open-with-widget: don't check if the app supports URIs/files
Because some apps are broken wrt. this property.
2010-11-23 16:53:23 +01:00
Cosimo Cecchi
e861180a03 open-with-widget: add a show-default property 2010-11-23 16:53:23 +01:00
Cosimo Cecchi
0833894c38 open-with-widget: remove context menu
The widget should not modify itself the application list in any way.
2010-11-23 16:53:22 +01:00
Cosimo Cecchi
cb934ad868 open-with-widget: remove radio mode
It's not useful for now.
2010-11-23 16:53:22 +01:00
Cosimo Cecchi
9d550fe42a open-with-pk: don't show an error if no apps are found
gnome-packagekit already shows a message dialog for us.
2010-11-23 16:53:22 +01:00
Cosimo Cecchi
04eb875e86 open-with-diaolog: set the default text according to the dialog mode 2010-11-23 16:53:22 +01:00
Cosimo Cecchi
1be137ae9f open-with-widget: let the default fallback text be customizable
We'll set it from the dialog.
2010-11-23 16:53:22 +01:00
Cosimo Cecchi
44ef183fa1 tests: update to the new API 2010-11-23 16:53:22 +01:00
Cosimo Cecchi
2cb1b7e891 open-with: move the "Show more applications" button in the dialog
It doesn't really belong in the widget now that we have the new states.
2010-11-23 16:53:22 +01:00
Cosimo Cecchi
4cfe121296 open-with-dialog: remove automatic setting of support-for-type
We don't want to hardcode any kind of policy in these widgets/dialogs from
now on.
2010-11-23 16:53:22 +01:00
Cosimo Cecchi
3b6941f087 open-with: add a public _refresh() method
This can be useful now that we're splitting some items from the widget.
2010-11-23 16:53:22 +01:00
Cosimo Cecchi
f12ff4b676 open-with-widget: move to a property-based state
We can enable on-demand one of the three sections (recommended,
fallback, other apps) or use the special ALL property to display everything
uncategorized.

These properties are also easily bindable from outside.
2010-11-23 16:53:17 +01:00
Cosimo Cecchi
09b8d37b8a open-with-dialog: use misc_set_alignment instead of widget_set_halign 2010-11-23 16:51:41 +01:00
Cosimo Cecchi
e7194c31a7 open-with-pk: don't set error if the user cancelled the installation 2010-11-23 16:51:40 +01:00
Cosimo Cecchi
9df2c0910d open-with-dialog: integrate the online capability 2010-11-23 16:51:40 +01:00
Cosimo Cecchi
d4e1dd9734 open-with: add a PackageKit module for online lookup of applications
It's implemented with a GIOExtensionPoint, which has two
implementations:
- a dummy one, which just errors out
- a PackageKit one, which looks up for the specified content type using
  the PK DBus API and GDBus.

The PK module is optional, and can be compiled out at configure time.

TODO: a Win32 implementation of the module.
2010-11-23 16:51:40 +01:00
Cosimo Cecchi
86a8f99806 open-with-widget: don't forget to set the search column
Otherwise find-as-you-type won't work at all.
2010-11-23 16:51:40 +01:00
Cosimo Cecchi
4becd25bf5 open-with-widget: don't sort by name recommended apps 2010-11-23 16:51:40 +01:00
William Jon McCann
9bbbfe3aa8 Using italics here actually introduces more visual clutter than anything 2010-11-23 16:51:40 +01:00
William Jon McCann
370ecf0ee8 Use Related instead of the somewhat jargonny fallback 2010-11-23 16:51:40 +01:00
William Jon McCann
3c7e6cd49c Use other instead of more
More doesn't make sense when there are no apps in the list and
they aren't just more apps they are apps in another category.
2010-11-23 16:51:40 +01:00
William Jon McCann
8ea4faf0d3 The colon is a bit unneccessary and looks a bit ugly 2010-11-23 16:51:40 +01:00
William Jon McCann
1226070b93 Improve wording of no apps text 2010-11-23 16:51:40 +01:00
William Jon McCann
076e851c5f Add some window border to test open with 2010-11-23 16:51:40 +01:00
William Jon McCann
04452df476 Add a default file to open with test 2010-11-23 16:51:40 +01:00
William Jon McCann
d09550b2d2 Simplify title and heading 2010-11-23 16:51:40 +01:00
Cosimo Cecchi
8b16f73f88 open-with-widget: don't set border in the widget box 2010-11-23 16:51:40 +01:00
Cosimo Cecchi
9a1cd83933 open-with-widget: add support for fallback applications
Needs some new API in GIO, which is not yet merged.
2010-11-23 16:51:40 +01:00
Cosimo Cecchi
a443eb8602 open-with-dialog: remove old declarations 2010-11-23 16:51:40 +01:00
Cosimo Cecchi
1bb2a1b9ec open-with: remove obsolete code 2010-11-23 16:51:39 +01:00
Cosimo Cecchi
9150f6b13a open-with-widget: simplify code a bit 2010-11-23 16:51:39 +01:00
Cosimo Cecchi
a6a56d4194 open-with-widget: add a "Show more applications" button
So that we don't always show them all unconditionally in HEADINGS mode.
2010-11-23 16:51:39 +01:00
Cosimo Cecchi
7d8e7e5f1d open-with-widget: make the list more pretty
Use bigger icons, with bold names and italic descriptions next to them.
2010-11-23 16:51:39 +01:00
Cosimo Cecchi
9ffe52c049 open-with-dialog: don't ever show_all()
As there might be some elements in the widget that we don't want to
always show.
2010-11-23 16:51:39 +01:00
Cosimo Cecchi
254cc6aca6 open-with-widget: add a context menu for recommended entries
We can put "Forget association" there, which removes the application
from the recommended list.
2010-11-23 16:51:39 +01:00
Cosimo Cecchi
f8a6ac5429 tests: update to new API 2010-11-23 16:51:39 +01:00
Cosimo Cecchi
2f5073fbb3 open-with-dialog: remove the mode from the dialog, we won't use it anymore
According to the new design, the dialog should automatically do the
right thing wrt. app association and default handling.
2010-11-23 16:51:39 +01:00
Cosimo Cecchi
cf25ec8fa7 open-with: first attempt to split the dialog into a widget + interface
Like GtkFileChooser does; GtkOpenWith is a generic interface, which is
now implemented by both GtkOpenWithDialog and GtkOpenWithWidget (and in
the future also by GtkOpenWithComboBox).
2010-11-23 16:51:39 +01:00
Cosimo Cecchi
9d6055d0c8 tests: use new open with mode in the tests 2010-11-23 16:51:39 +01:00
Cosimo Cecchi
a4283d7bab open-with: turn the show_all_applications boolean into an enum
We have three modes of showing applications now:
- RECOMMENDED mode: shows only the recommended applications
- ALL mode: shows all applications, uncategorized
- HEADINGS: shows headings for recommended and other applications
  (default).
2010-11-23 16:51:39 +01:00
Cosimo Cecchi
77b5fcfa93 open-with: add docs and integrate with the build GTK+ conventions 2010-11-23 16:51:39 +01:00
Cosimo Cecchi
8c8f7f83ba open-with: add gtk_open_with_dialog_get_mode() 2010-11-23 16:51:39 +01:00
Cosimo Cecchi
df8ccfb800 open-with: change the API to make it symmetric for GFile or content-type
It's much more convenient this way.
2010-11-23 16:51:39 +01:00
Cosimo Cecchi
3a6b936573 tests: rewrite the GtkOpenWithDialog test to make it more interactive
Now you can play with all the options provided by GtkOpenWithDialog API.
2010-11-23 16:51:39 +01:00
Cosimo Cecchi
accb766db2 open-with: add misc utility API to the dialog
- _set/get_show_other_applications() is a way to only display
  recommended applications in the dialog
- _set/get_show_set_as_default_button() is a way to control the
  "Remember this application" checkbox

We also get rid of he "application-selected" signal, in favour of a
_get_selected_application() API inspired by GtkFileChooser.
2010-11-23 16:51:38 +01:00
Cosimo Cecchi
a8cf63cc84 open-with: add xpadding to the treeview renderers
We use a GtkCellRenderer hack for this.
2010-11-23 16:51:38 +01:00
Cosimo Cecchi
ee9a7a3baf open-with: cope with NULL GAppInfo
It's not that the GAppInfo can actually be NULL, but we use the store to
save headings too, which have no GAppInfo in their rows.
2010-11-23 16:51:38 +01:00
Cosimo Cecchi
1d67b4ac26 open-with: don't override the class signal handler, as it's RUN_LAST
And explain why in a comment; basically we want our handler to always
run before client code.
2010-11-23 16:51:38 +01:00
Cosimo Cecchi
c8ea415873 open-with: don't use gtk_misc_* functions
They're so passe'!
2010-11-23 16:51:38 +01:00
Cosimo Cecchi
3d044a7c3e open-with: add a "show-other-applications" property
This is useful for use-cases where showing a list of all the installed
applications can be confusing. We can control that with a property now.
2010-11-23 16:51:38 +01:00
Cosimo Cecchi
be18ca45f0 open-with: initial implementation of GtkOpenWithDialog 2010-11-23 16:51:38 +01:00
Tristan Van Berkom
e53dc3479f Added GtkCellAreaClass->apply_attributes()
Made gtk_cell_area_apply_attributes use a vfunc & signal so that
subclasses might do specialized things picking up attributes from the
model possibly for embedding widgets, and as specially for GtkTreeMenu
to connect to the signal and synchronize the menu sensitivity states
in a more convenient way than going through the GtkCellLayoutDataFunc.
2010-11-23 23:37:58 +09:00
Chris Kühl
fad1bc0de4 tests: Fixed argument naming inconsistancy 2010-11-23 10:49:44 +01:00
Tristan Van Berkom
d56babefb4 Removed cell margin apis and now deal with "focus-line-width". 2010-11-23 16:26:46 +09:00
Colin Walters
6c6b493926 iconcache: Ensure we don't lose data on power loss
fsync() should ensure our data hits disk; since corrupt icon
caches break all apps, we need to ensure it's valid.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=635307
2010-11-22 20:49:59 +01:00
William Jon McCann
323df2b280 Make gdk_event_apply_filters safe against changes in filter list
An event filter may add or remove filters itself.  This patch does
two things to address this case.  The first is to take a temporary
reference to the filter while it is being used.  The second is
to wait until after the filter function is run before determining
the next node in the list to process.  This guards against
changes to the next node.  It also does not run functions
that have been marked as removed.  Though I'm not sure if this
case can arise.

https://bugzilla.gnome.org/show_bug.cgi?id=635380
2010-11-22 13:16:24 -05:00
Javier Jardón
abe20a7c97 docs: Add private structures to private sections 2010-11-20 21:26:50 +01:00
Javier Jardón
a61d63d607 docs: Add new GtkAssitant API to gtk3-sections 2010-11-20 21:15:00 +01:00
Javier Jardón
5cd64fbd08 docs: Add the new GtkScrollablePolicy API to gtk3-sections 2010-11-20 21:14:41 +01:00
Gheyret T.Kenji
f350c4c1b2 Added UG translation 2010-11-20 11:56:21 +01:00
Kjartan Maraas
85e15a3880 Updated Norwegian bokmål translation 2010-11-20 11:50:08 +01:00
John (J5) Palmieri
f2a187f27a [gi] add array annotations for DnD related methods 2010-11-19 15:06:40 -05:00
Michael Natterer
bc0e6b2b21 gtk: remove GtkWidget::size-request
Fixes Bug 633324 - Stop invoking size-request completely
2010-11-19 19:38:48 +01:00
Martin Pitt
3431f7a2d7 GtkRadioButtons: Mark group arguments as "allow-none"
In the current introspection data, the various gtk_radio_button_new_*
constructors take an existing group or widget. These all allow passing a NULL
widget or group list, so that it becomes easy to build a radio button list in a
loop (pass in None the first time, and the previously created button in all
other iterations).

Add the missing "allow-none" tag to the introspection data, so that this will
also eventually work for GIR users. NB that it does not actually work for some
constructors yet (like new_with_label_from_widget()) due to
https://bugzilla.gnome.org/show_bug.cgi?id=561264.

https://bugzilla.gnome.org/show_bug.cgi?id=635253
2010-11-19 16:29:43 +01:00
Owen W. Taylor
a4d59f7415 Create the icon pixmap with the system visual
Since what we are doing is turning an icon with alpha into a
no-alpha icon + mask for legacy window managers, it makes more sense
to use the system visual than the window's visual, which might
be ARGB.

https://bugzilla.gnome.org/show_bug.cgi?id=634821
2010-11-19 09:29:43 -05:00
Evan Martin
d3f1312c98 docs: Copy GtkSizeGroup ownership discussion to GtkWindowGroup
The two behave identically, so the text is the same with s/size/window/.
2010-11-19 09:24:02 -05:00
Michael Natterer
c2fd7e8350 gtk: draw the frame around the spinbutton's buttons conditionally
(depending on GtkEntry::has-frame)
2010-11-19 14:55:47 +01:00
Javier Jardón
39f5740763 configure: define GTK+ version before AC_INIT
So the gtk_version varibale will be defined
2010-11-19 09:02:17 +01:00
Javier Jardón
4e3db2e3a8 gtkcombobox: Use accessor functions to access GtkTreeViewColumn 2010-11-19 08:38:12 +01:00
Javier Jardón
224ce2cf6c gtktreeview: Use accessor functions to access GtkTreeViewColumn 2010-11-19 08:38:12 +01:00
Javier Jardón
c4be956473 gtkentry: move public members to private structure 2010-11-19 08:38:12 +01:00
Javier Jardón
f2abd656f6 gail: Use accessor functions to access GtkEntry
Also, we can't access entry->preedit now. Commented that code until
some gail expert can fix it
2010-11-19 06:15:27 +01:00
Javier Jardón
8c941d2b4e Add _gtk_entry_get_im_context() internal accessor
It's needed by gtktreeview
2010-11-19 06:15:27 +01:00
Javier Jardón
fb3429e507 gtkcombobox: Do not access GtkEntry internals
It's not needed anymore
2010-11-19 06:15:27 +01:00
Javier Jardón
9fa0edd928 gail: we cant access button->in_button directly now.
Commented some code until some gail expert can fix this.
2010-11-19 06:15:27 +01:00
Javier Jardón
dec57f8ce9 Create a private header to access some GtkButton variables 2010-11-19 06:15:26 +01:00
Javier Jardón
c295ab0943 gtktbutton: Move public members to private structure 2010-11-19 06:15:26 +01:00
Javier Jardón
9f16f99358 docs: Improve cross-referencing in the migration guide 2010-11-19 04:44:42 +01:00
Javier Jardón
29fc179a89 gtkplug: Do not leak in gtk_plug_realize()
Indeed, we should check for window->wmclass_name

Reported by Guillaume Desmottes in bug
https://bugzilla.gnome.org/show_bug.cgi?id=635175
2010-11-18 17:52:18 +01:00
Tristan Van Berkom
c03a3ca601 Fixing GtkScrolledWindow inconsistent scrollbar visibility.
Also removing the hack to prevent hangs which is properly fixed by
the preceeding commit.
2010-11-19 00:53:19 +09:00
Tristan Van Berkom
f20ac5792f Fixing hangs with GtkScrolledWindow
Now gtk_widget_size_allocate() unsets the resize_needed flags
before returning, essentially this means that any widget that
has a queued resize and is allocated before resize time, including
queued resizes from inside a size_allocate() method will be
cancelled.
2010-11-19 00:53:13 +09:00
Michael Natterer
881282e055 gtk: honor entry->has_frame again draw the frame conditionally
when GtkEntry had visible windows, it was never noticed that we always
draw the frame, because the text_area window would cover it if
draw_frame was FALSE.
2010-11-18 01:06:57 +01:00
Michael Natterer
3ec8daa66c gtk: draw the progress only on the text area
so it doesn't extend under GtkSpinButton's buttons.
2010-11-18 01:06:57 +01:00
Javier Jardón
4782804b9d demos: Replace size_request by get_preferred_width/height 2010-11-17 23:58:53 +01:00
Javier Jardón
f427d6998d gtkoffscreenbox.c: Replace size_request by get_preferred_width/height 2010-11-17 23:58:53 +01:00
Javier Jardón
10d5686fe1 docs: Move Height-for-width geometry management virtual methods docs 2010-11-17 23:58:26 +01:00
Jordi Mas
ad2209135d Fix for Catalan translation 2010-11-16 19:39:20 -05:00
Federico Mena Quintero
b8cde53350 bgo#634558 - filechooser - Actually focus the Search entry when selecting the Search shortcut
Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-11-16 10:58:16 -06:00
John (J5) Palmieri
6ebc15028b [gi] add "array" annotations to GtkAboutDialog methods
* set_authors, set_documenters and  set_artists required the array annotation
  to work properly
2010-11-16 11:07:20 -05:00
Tristan Van Berkom
7105d02a13 Merge branch 'master' into treeview-refactor 2010-11-16 16:21:04 +09:00
Javier Jardón
446c0fd1ad gtkmain: Remove deprecated gtk_init_add() function
https://bugzilla.gnome.org/show_bug.cgi?id=629955
2010-11-16 16:20:49 +09:00
Javier Jardón
d5eee0d1bd Deprecate GtkCallbackMarshal and GtkFunction
As they're only used by already deprecated API

https://bugzilla.gnome.org/show_bug.cgi?id=629955
2010-11-16 16:20:49 +09:00
Javier Jardón
a512143bab GtkArg is deprecated since 2.2 2010-11-16 16:20:49 +09:00
Javier Jardón
a5ab0a4c84 docs: Add cross-reference in GtkAlign docs 2010-11-16 16:20:49 +09:00
Javier Jardón
8809e46a41 docs: Fix a typo in gtk_button_set_alignment() docs 2010-11-16 16:20:49 +09:00
Javier Jardón
70bb3776f0 docs: Remove template of unused functions 2010-11-16 16:20:49 +09:00
Javier Jardón
ccd740f1b6 docs: Move documentation to inline comments: event_structs
All the GDK documentation is now moved to inline comments
2010-11-16 16:20:49 +09:00
Javier Jardón
1cbba3fae2 docs: Move documentation to inline comments: x_interaction 2010-11-16 16:20:49 +09:00
Javier Jardón
7d12d2a649 docs: Move documentation to inline comments: drawing 2010-11-16 16:20:48 +09:00
Javier Jardón
dd2db852cc docs: Move documentation to inline comments: gdkthreads 2010-11-16 16:20:48 +09:00
Javier Jardón
7524d5fcbe docs: Move documentation to inline comments: gdkevents 2010-11-16 16:20:48 +09:00
Javier Jardón
4d6c033d16 docs: Move documentation to inline comments: properties 2010-11-16 16:20:48 +09:00
Javier Jardón
7090aa1e1b docs: Move documentation to inline comments: gdkselection 2010-11-16 16:20:48 +09:00
Javier Jardón
4593df1ef5 docs: Move documentation to inline comments: gdkvisual 2010-11-16 16:20:48 +09:00
Javier Jardón
2adf427467 docs: Move documentation to inline comments: gdkpango 2010-11-16 16:20:48 +09:00
Javier Jardón
1b5f0d5968 docs: Move documentation to inline comments: gdkcursor 2010-11-16 16:20:48 +09:00
Bastien Nocera
e85c0f63fb gdk: Add big fat warning about updating XSettings
There's a tool to see if we forgot to update the gdk_settings_map
array, or got the offsets wrong. Mention those above the XSettings
list.
2010-11-16 16:20:48 +09:00
Bastien Nocera
038fb4b7e9 gdk: Update gdk_settings_map for blink timeout to work
gdk_settings_map needs to be updated when gdk_settings_names is changed,
and it's easier to add the setting at the end, so we don't need to
recalculate everything.

Really fixing:
https://bugzilla.gnome.org/show_bug.cgi?id=634697
2010-11-16 16:20:48 +09:00
John (J5) Palmieri
0d07cba436 [gi] add "out" annotations to gtk_tree_store_sort_column_id params 2010-11-16 16:20:48 +09:00
Petr Kovar
1e3f7ba162 Update Czech translation 2010-11-16 16:20:48 +09:00
Javier Jardón
4f92875bb1 docs: gdkrgba: Add "Since: 3.0" tags 2010-11-16 16:20:47 +09:00
Javier Jardón
40b7a916a8 docs: Remove GdkPixmap template 2010-11-16 16:20:47 +09:00
Javier Jardón
2909edb3e7 docs: Move documentation to inline comments: general 2010-11-16 16:20:47 +09:00
Javier Jardón
145fe4bdc0 docs: Move documentation to inline comments: gdkkeys 2010-11-16 16:20:47 +09:00
Javier Jardón
0b61aaacd1 docs: move documentation to inline comments: gdktesting 2010-11-16 16:20:47 +09:00
Javier Jardón
209afbbf17 docs: Move documentation to inline comments: gdkscreen 2010-11-16 16:20:47 +09:00
Javier Jardón
1a1c4be6c3 docs: Move documentation to inline comments: gdkdisplaymanager 2010-11-16 16:20:47 +09:00
Javier Jardón
236f15c3a9 docs: Move documentation to inline comments: gdkdisplay 2010-11-16 16:20:47 +09:00
Javier Jardón
bb218b08e9 docs: Move documentation to inline comments: gdkapplaunchcontext 2010-11-16 16:20:47 +09:00
Jordi Mas
3166767c36 Fixes wrong translation for Catalan 2010-11-16 16:20:47 +09:00
Bruce Cowan
bad8d0b8e6 Updated British English translation 2010-11-16 16:20:47 +09:00
Carlos Garcia Campos
a00cd60540 docs: Mention that tooltip_column text should be escaped in GtkIconView 2010-11-16 16:20:46 +09:00
Javier Jardón
333ff7dbfc docs: Do not refer to deprecated GNOME2 porting guide
But to the related sections of Pango manual
2010-11-16 16:20:46 +09:00
Javier Jardón
abb98246ff docs: Update URL of some documentation links
http://developer.gnome.org -> http://library.gnome.org
2010-11-16 16:20:46 +09:00
Gheyret T.Kenji
cb1ef69b12 Added UG translation 2010-11-16 16:20:46 +09:00
Gabor Kelemen
1dd7424f0c Updated Hungarian translation 2010-11-16 16:20:46 +09:00
Tristan Van Berkom
b0919b2058 Added "cell-packing" property GtkBuildable parsing to GtkCellLayout
Added gtk_cell_layout_get_area() iface vfunc and use that to apply
packing cell properties to the child renderers when parsing from
GtkBuilder.
2010-11-16 15:11:18 +09:00
Javier Jardón
70d95f04e7 gtkmain: Remove deprecated gtk_init_add() function
https://bugzilla.gnome.org/show_bug.cgi?id=629955
2010-11-16 06:54:01 +01:00
Javier Jardón
77d6bd12b9 Deprecate GtkCallbackMarshal and GtkFunction
As they're only used by already deprecated API

https://bugzilla.gnome.org/show_bug.cgi?id=629955
2010-11-16 06:54:01 +01:00
Javier Jardón
5f3d819746 GtkArg is deprecated since 2.2 2010-11-16 06:43:16 +01:00
Javier Jardón
d45fd566b1 docs: Add cross-reference in GtkAlign docs 2010-11-16 03:51:53 +01:00
Javier Jardón
9e78176685 docs: Fix a typo in gtk_button_set_alignment() docs 2010-11-16 03:37:42 +01:00
Javier Jardón
2e2effbb6c docs: Remove template of unused functions 2010-11-15 21:08:19 +01:00
Javier Jardón
b204995c6d docs: Move documentation to inline comments: event_structs
All the GDK documentation is now moved to inline comments
2010-11-15 21:08:11 +01:00
Javier Jardón
e2cfecf813 docs: Move documentation to inline comments: x_interaction 2010-11-15 21:06:35 +01:00
Javier Jardón
a384b35bb5 docs: Move documentation to inline comments: drawing 2010-11-15 21:06:35 +01:00
Javier Jardón
b63800bd33 docs: Move documentation to inline comments: gdkthreads 2010-11-15 21:06:35 +01:00
Javier Jardón
4400f997a8 docs: Move documentation to inline comments: gdkevents 2010-11-15 21:06:35 +01:00
Javier Jardón
d2915ed9d1 docs: Move documentation to inline comments: properties 2010-11-15 21:06:34 +01:00
Javier Jardón
2f06ec02be docs: Move documentation to inline comments: gdkselection 2010-11-15 18:24:31 +01:00
Javier Jardón
6bfdecef7a docs: Move documentation to inline comments: gdkvisual 2010-11-15 18:24:31 +01:00
Javier Jardón
9a8fcfa65a docs: Move documentation to inline comments: gdkpango 2010-11-15 18:24:31 +01:00
Javier Jardón
cc13047315 docs: Move documentation to inline comments: gdkcursor 2010-11-15 18:24:31 +01:00
Bastien Nocera
157ec27a9a gdk: Add big fat warning about updating XSettings
There's a tool to see if we forgot to update the gdk_settings_map
array, or got the offsets wrong. Mention those above the XSettings
list.
2010-11-15 17:15:19 +00:00
Bastien Nocera
6b23787d5a gdk: Update gdk_settings_map for blink timeout to work
gdk_settings_map needs to be updated when gdk_settings_names is changed,
and it's easier to add the setting at the end, so we don't need to
recalculate everything.

Really fixing:
https://bugzilla.gnome.org/show_bug.cgi?id=634697
2010-11-15 17:15:19 +00:00
John (J5) Palmieri
a3da018a64 [gi] add "out" annotations to gtk_tree_store_sort_column_id params 2010-11-15 12:14:43 -05:00
Petr Kovar
f69a0354bb Update Czech translation 2010-11-15 06:07:55 +01:00
Javier Jardón
9677dc0b60 docs: gdkrgba: Add "Since: 3.0" tags 2010-11-15 06:04:06 +01:00
Javier Jardón
d8e74867e4 docs: Remove GdkPixmap template 2010-11-15 05:39:25 +01:00
Javier Jardón
1268c17983 docs: Move documentation to inline comments: general 2010-11-15 05:35:40 +01:00
Javier Jardón
2cd0302e64 docs: Move documentation to inline comments: gdkkeys 2010-11-15 05:19:33 +01:00
Javier Jardón
44ff1d86b4 docs: move documentation to inline comments: gdktesting 2010-11-15 04:12:57 +01:00
Javier Jardón
5f89dea7f1 docs: Move documentation to inline comments: gdkscreen 2010-11-15 04:12:57 +01:00
Javier Jardón
133dfe55f3 docs: Move documentation to inline comments: gdkdisplaymanager 2010-11-15 04:12:57 +01:00
Javier Jardón
ca480f3771 docs: Move documentation to inline comments: gdkdisplay 2010-11-15 03:37:21 +01:00
Tristan Van Berkom
4ceb25e011 More documentation in gtkcellarea.c 2010-11-15 11:23:55 +09:00
Javier Jardón
8ca6882e88 docs: Move documentation to inline comments: gdkapplaunchcontext 2010-11-15 03:18:45 +01:00
Jordi Mas
466931cb9a Fixes wrong translation for Catalan 2010-11-14 14:54:33 -05:00
Bruce Cowan
4083e49fe2 Updated British English translation 2010-11-14 14:35:29 +00:00
Tristan Van Berkom
92dc7f31d4 Cleaned up cell editing api in GtkCellArea
Now layouting widgets need only concern themselves with
the "add-editable" and "remove-editable" signals, also added
lots of gtk-doc comments.
2010-11-14 23:33:26 +09:00
Carlos Garcia Campos
3b90a21763 docs: Mention that tooltip_column text should be escaped in GtkIconView 2010-11-14 12:39:48 +01:00
Javier Jardón
ac94503180 docs: Do not refer to deprecated GNOME2 porting guide
But to the related sections of Pango manual
2010-11-14 01:56:14 +01:00
Javier Jardón
97862638ec docs: Update URL of some documentation links
http://developer.gnome.org -> http://library.gnome.org
2010-11-14 01:24:19 +01:00
Gheyret T.Kenji
0f3b0e14e4 Added UG translation 2010-11-13 22:39:03 +01:00
Gabor Kelemen
fab3fcf222 Updated Hungarian translation 2010-11-13 16:48:38 +01:00
Tristan Van Berkom
1bca6349fb Mass rename GtkCellAreaIter --> GtkCellAreaContext 2010-11-13 16:23:01 +09:00
Khaled Hosny
bef9559089 Updated Arabic translation 2010-11-13 15:23:34 +09:00
Javier Jardón
df5286f11e examples/gtkdial: Do not use size_request vfunc 2010-11-13 15:23:34 +09:00
Matthias Clasen
c68a4ad4f6 Fix a crash in gnome-terminal when using a compositor
In this case, gnome-terminal sets an RGBA visual on its window,
and we need to be careful when creating the icon pixmap, to create
the pixmap with the same depth as the visual, or we risk a BadMatch
from XRenderCreatePicture deep inside cairo.
2010-11-13 15:23:34 +09:00
Bastien Nocera
7d11c16b17 gdk: Add XSetting for "gtk-cursor-blink-timeout"
Otherwise the blink timeout is the one used by default in GTK+.

https://bugzilla.gnome.org/show_bug.cgi?id=634697
2010-11-13 15:23:34 +09:00
Matthias Clasen
ed0aff4792 Remove no longer existing files
The gdk-pixbuf VC project files are gone, so don't reference
them from Makefile.am anymore.
2010-11-13 15:23:33 +09:00
Matthias Clasen
52adead88f Really get rid of _gtk_cell_renderer_calc_offset 2010-11-13 15:23:33 +09:00
Owen W. Taylor
342d897b58 Pass the correct GDK library when working around Debian libtool
We need to link against gdk/libgdk-x11-3.0.la, not
gdk/x11/libgdk-x11.la, which is the convenience library containing
the backend functions.
2010-11-13 15:23:33 +09:00
Chao-Hsiung Liao
88c1543845 Updated Traditional Chinese translation (Hong Kong and Taiwan) 2010-11-13 15:23:33 +09:00
Murray Cumming
131da8507b gtk_dialog_get_content_area(): Fix the docs.
This returns a GtkBox now, not a GtkVBox.
Language bindings may need to adjust their APIs accordingly.
2010-11-13 15:23:32 +09:00
Murray Cumming
233afbdab1 gtkdialog.c: Remove trailing whitespace 2010-11-13 15:23:32 +09:00
Marek Kasik
0fe9e481dd Print files to Documents directory by default
Set default directory to G_USER_DIRECTORY_DOCUMENTS
when printing to file backend and fallback to the current
directory when it is not available (#633896).
2010-11-13 15:23:32 +09:00
Chun-wei Fan
9d52a9d920 gtk.vcprojin: include .rc file 2010-11-13 15:23:32 +09:00
Chun-wei Fan
cf34b804a4 gtk+.sln: Remove GDK-Pixbuf compilation stuff
GDK-Pixbuf is in a package of its own, so remove the project files from here
2010-11-13 15:23:32 +09:00
Chun-wei Fan
2d84d1cb38 gtk+.vsprops: Update for GTK-3.0
-removed headers that ceased to exist
-bump API version
-made up for new headers that is to be installed
-gtk-demo program and related sources/data copied to bin/gtk3-demo
2010-11-13 15:23:32 +09:00
Chun-wei Fan
14a40180cd gtklabel.c: Added hack for rint() 2010-11-13 15:23:31 +09:00
Chun-wei Fan
25c2f4b780 gtkwocket-win32.c Added missing include to avoid C4013 2010-11-13 15:23:31 +09:00
Chun-wei Fan
2e0278c752 gtk: fix C99-style variable declarations in various sources 2010-11-13 15:23:31 +09:00
John (J5) Palmieri
4e47110120 [introspection] mark invokers for gtkeditable vfuncs 2010-11-13 15:23:31 +09:00
John (J5) Palmieri
b17a25142f [introspection] add transfer none annotation to gdk_keyval_name return
* moved docs from .sgml file to th e.c file so we can add the annotation
2010-11-13 15:23:31 +09:00
Matthias Clasen
fdde029f06 bump version 2010-11-13 15:23:31 +09:00
Matthias Clasen
3e9d7a30b0 fix up accidental exports 2010-11-13 15:23:30 +09:00
Matthias Clasen
b2ed95dd11 Another attempt at scrolledwindow size allocation
Patches taken from bug 633278.
2010-11-13 15:23:30 +09:00
Colin Walters
2facb830fa introspection: Explicitly include libgdk-x11.la when scanning gtk
Debian changed the behavior of libtool to not follow dependencies
from .la files.  Fortunately, the scanner explicitly looks at the
.la files to see if they're really shared; if not it doesn't add
them to the .gir, so there's no cost.

https://bugzilla.gnome.org/show_bug.cgi?id=633405
2010-11-13 15:23:30 +09:00
Matthias Clasen
79042e31a6 Rewrap text in gtk-demo 2010-11-13 15:23:30 +09:00
Matthias Clasen
70e161d2a2 Fix the doc build 2010-11-13 15:23:30 +09:00
Matthias Clasen
0a015f1bdb Don't export _gtk_cell_renderer_calc_offset
This is just a private convenience function, and exporting _-prefixed
functions doesn't work with our libtool setup. Just do the 3 line
calculation in gail.
2010-11-13 15:23:29 +09:00
Tristan Van Berkom
e7c4ede64c Fixed some background area related bugs in CellAreaScaffold, cleanup testcellarea 2010-11-13 15:09:36 +09:00
Khaled Hosny
d129c2616b Updated Arabic translation 2010-11-13 03:20:47 +02:00
Javier Jardón
c466d5ee65 examples/gtkdial: Do not use size_request vfunc 2010-11-13 01:43:46 +01:00
Matthias Clasen
45498417c8 Fix a crash in gnome-terminal when using a compositor
In this case, gnome-terminal sets an RGBA visual on its window,
and we need to be careful when creating the icon pixmap, to create
the pixmap with the same depth as the visual, or we risk a BadMatch
from XRenderCreatePicture deep inside cairo.
2010-11-12 19:22:49 -05:00
Bastien Nocera
7a52b1df67 gdk: Add XSetting for "gtk-cursor-blink-timeout"
Otherwise the blink timeout is the one used by default in GTK+.

https://bugzilla.gnome.org/show_bug.cgi?id=634697
2010-11-12 19:11:21 +00:00
Tristan Van Berkom
eda16a096d Fixed some errors in testcellarea testcases. 2010-11-12 23:09:57 +09:00
Tristan Van Berkom
51b75ef44b Added tests to reflect proper treatment of background area.
CellAreaScaffold now also reflects how cell_area should be
passed to gtk_cell_area_activate() and gtk_cell_area_event()
and how the background area for gtk_cell_area_renderer() should
be created.
2010-11-12 21:55:28 +09:00
Tristan Van Berkom
47d55c4a4b Added orientation control to testcellarea's focus/editing test 2010-11-12 19:44:45 +09:00
Tristan Van Berkom
38666b406f Ironed out the kinks in editing apis for GtkCellArea
- Added gtk_cell_area_aligned_cell_area() to get the aligned
   internal area use by a cell (for focus painting and for
   event areas).

 - Provide the event area in "editing-started" signal

 - Fire "remove-editable" when editing is canceled by the user,
   an implementing layouting widget need only catch "editing-started"
   and "remove-editable" now.

 - CellAreaScaffold/testcellarea now edit textrenderers.
2010-11-12 19:25:07 +09:00
Tristan Van Berkom
7e821aa980 Distribute portions of GtkCellArea:render() background_area argument to cells
Also added gtk_cell_area_get/set_style_detail() to set the string to be
used by the area in gtk_paint_* functions.
2010-11-12 14:06:00 +09:00
Matthias Clasen
aff1ca2d5c Remove no longer existing files
The gdk-pixbuf VC project files are gone, so don't reference
them from Makefile.am anymore.
2010-11-11 14:12:04 -05:00
Matthias Clasen
5beb96e1db Really get rid of _gtk_cell_renderer_calc_offset 2010-11-11 14:09:29 -05:00
Tristan Van Berkom
33db66e728 Added event handling to GtkCellAreaBox
Now GtkCellAreaBox handles the click event to activate renderers
and checks if the area is in a sibling of a focus renderer, possibly
activating the proper focus sibling renderer.

Also GtkCellArea gains a "focus-changed" signal to allow it to
change the currently focused row according to the button events.
2010-11-11 18:13:54 +09:00
Tristan Van Berkom
f330b40521 GtkCellArea now paints focus on cells
Added concept of "Focus Siblings" to GtkCellArea so that some
static text/icon may be included in the focus/click area of
an activatable or editable cell, implemented focus drawing
as well, updated testcellarea to reflect the changes.
2010-11-11 16:13:06 +09:00
Owen W. Taylor
63913ffe54 Pass the correct GDK library when working around Debian libtool
We need to link against gdk/libgdk-x11-3.0.la, not
gdk/x11/libgdk-x11.la, which is the convenience library containing
the backend functions.
2010-11-10 17:10:45 -05:00
Tristan Van Berkom
524110f902 Focus driving in GtkCellArea now works.
- Fixed focus driving in GtkCellArea with refined apis
 - Added gtk_cell_area_activate() to be called when the area has focus
   (to activate or start editing the focused cell)
 - Added support for this in cellareascaffold
 - testcellarea now watches the "toggled" signal for a toggle renderer
   and updates the model state accordingly, this currently works with
   keyboard navigation, however focus is still not painted on cells.
2010-11-10 22:25:13 +09:00
Chao-Hsiung Liao
b96d100637 Updated Traditional Chinese translation (Hong Kong and Taiwan) 2010-11-10 19:37:39 +08:00
Murray Cumming
7c21974009 gtk_dialog_get_content_area(): Fix the docs.
This returns a GtkBox now, not a GtkVBox.
Language bindings may need to adjust their APIs accordingly.
2010-11-10 11:35:34 +01:00
Murray Cumming
ba4dde9b45 gtkdialog.c: Remove trailing whitespace 2010-11-10 11:35:09 +01:00
Tristan Van Berkom
4643d90c5f Committing new (and simplified) focus handling approach for GtkCellArea.
Also adding missing file cellareascaffold.h
2010-11-10 19:17:06 +09:00
Marek Kasik
bbd0e73c1b Print files to Documents directory by default
Set default directory to G_USER_DIRECTORY_DOCUMENTS
when printing to file backend and fallback to the current
directory when it is not available (#633896).
2010-11-10 10:48:17 +01:00
Chun-wei Fan
02cbc516eb gtk.vcprojin: include .rc file 2010-11-10 10:30:03 +08:00
Chun-wei Fan
7e47a5a18a gtk+.sln: Remove GDK-Pixbuf compilation stuff
GDK-Pixbuf is in a package of its own, so remove the project files from here
2010-11-10 10:28:02 +08:00
Chun-wei Fan
66edc82942 gtk+.vsprops: Update for GTK-3.0
-removed headers that ceased to exist
-bump API version
-made up for new headers that is to be installed
-gtk-demo program and related sources/data copied to bin/gtk3-demo
2010-11-10 10:25:05 +08:00
Chun-wei Fan
8c674c5d84 gtklabel.c: Added hack for rint() 2010-11-10 10:21:08 +08:00
Chun-wei Fan
086bfc723e gtkwocket-win32.c Added missing include to avoid C4013 2010-11-10 10:15:45 +08:00
Chun-wei Fan
ce3680fe15 Merge ssh://git.gnome.org/git/gtk+ 2010-11-10 10:14:13 +08:00
Chun-wei Fan
76dc9e6b53 gtk: fix C99-style variable declarations in various sources 2010-11-10 10:08:14 +08:00
John (J5) Palmieri
eb34f3350f [introspection] mark invokers for gtkeditable vfuncs 2010-11-09 21:00:14 -05:00
John (J5) Palmieri
cdf517d1c8 [introspection] add transfer none annotation to gdk_keyval_name return
* moved docs from .sgml file to th e.c file so we can add the annotation
2010-11-09 21:00:14 -05:00
Matthias Clasen
bc070b9d24 bump version 2010-11-09 15:24:50 -05:00
Matthias Clasen
6929db78a3 fix up accidental exports 2010-11-09 13:51:55 -05:00
Matthias Clasen
185bb2837b Another attempt at scrolledwindow size allocation
Patches taken from bug 633278.
2010-11-09 13:19:42 -05:00
Colin Walters
4acf92c08d introspection: Explicitly include libgdk-x11.la when scanning gtk
Debian changed the behavior of libtool to not follow dependencies
from .la files.  Fortunately, the scanner explicitly looks at the
.la files to see if they're really shared; if not it doesn't add
them to the .gir, so there's no cost.

https://bugzilla.gnome.org/show_bug.cgi?id=633405
2010-11-09 11:37:25 -05:00
Matthias Clasen
b3a4095d55 Rewrap text in gtk-demo 2010-11-09 11:20:17 -05:00
Matthias Clasen
6613fc7b36 Fix the doc build 2010-11-09 08:16:33 -05:00
Matthias Clasen
88366ad5fe Don't export _gtk_cell_renderer_calc_offset
This is just a private convenience function, and exporting _-prefixed
functions doesn't work with our libtool setup. Just do the 3 line
calculation in gail.
2010-11-09 08:15:06 -05:00
Matthias Clasen
c51bfe8757 Bump glib req. to 2.27.3 2010-11-09 16:18:16 +09:00
Chun-wei Fan
fb1a9d8c0d gdk.vcprojin: Include .rc file and fixed linker settings
-Added the missed gdk.rc file
-Made up for missed libraries required for link for configs other than Debug|win32
2010-11-09 16:18:16 +09:00
Chun-wei Fan
2fd00b9af3 gtk-demo.vcproj: set linker settings to be consistent
-Made up for the additional dependencies for setups other than Debug|Win32 (the correct setting)
-Made Subsystem="1" for all setups like Debug|Win32 (the correct setting)
2010-11-09 16:18:16 +09:00
Chun-wei Fan
5c52344551 gtk+.vsprops: Removed GdkPixbuf stuff and made up for missed headers
-Removed the GdkPixbuf stuff as it is now in a package of its own and added
 it as a dependent library here
-Made up for the headers missed in the installation stage for GTK+/GDK
2010-11-09 16:18:16 +09:00
Matthias Clasen
67112dae94 NEWS for 2.91.4 2010-11-09 16:18:15 +09:00
Matthias Clasen
f991f88d3f Fix entry completion window sizing
I don't think we are at the end of scrolledwindow tweaks yet,
but this will make things work for now, as they used to.

https://bugzilla.gnome.org/show_bug.cgi?id=633670
2010-11-09 16:18:15 +09:00
Ryan Lortie
3f2281f8c6 pixbuf engine: remove only use of GCache in Gtk
We'll be deprecating GCache in GLib soon.
2010-11-09 16:18:15 +09:00
Patrick Bernaud
8eb7181979 docs: Move documentation to inline comments: GtkPaned
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=634338

Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-09 16:18:15 +09:00
Patrick Bernaud
a00a0fb209 docs: Move documentation to inline comments: GtkProgressBar
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=634339

Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-09 16:18:15 +09:00
Patrick Bernaud
312fd9efc0 docs: Move documentation to inline comments: GtkPageSetup
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=634340

Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-09 16:18:15 +09:00
Tristan Van Berkom
f85938a211 Changed testcellarea
Changed testcellarea to watch the iter for size changes and queue resizes
instead of explicitly queueing resizes when controls change.
2010-11-09 14:09:47 +09:00
Tristan Van Berkom
e03b280757 Adding expand/align controls to testcellarea. 2010-11-09 13:50:53 +09:00
Tristan Van Berkom
c932beef4b Fixing GtkCellAreaBox to rebuild groups when align/expand child properties change. 2010-11-09 13:50:30 +09:00
Tristan Van Berkom
2a3ae8da3a Added orientation control on testcellarea test
shows vertical orientation of cells lined up horizontally instead
of horizontal orientation of cells stacked up vertically.
2010-11-09 13:23:12 +09:00
Tristan Van Berkom
368cded84d Fixed a bug in GtkCellAreaBoxIter when allocating vertically. 2010-11-09 13:22:44 +09:00
Matthias Clasen
f114efcd10 Bump glib req. to 2.27.3 2010-11-08 23:20:38 -05:00
Chun-wei Fan
3aabef6942 gdk.vcprojin: Include .rc file and fixed linker settings
-Added the missed gdk.rc file
-Made up for missed libraries required for link for configs other than Debug|win32
2010-11-09 12:13:17 +08:00
Chun-wei Fan
2fccd515f6 gtk-demo.vcproj: set linker settings to be consistent
-Made up for the additional dependencies for setups other than Debug|Win32 (the correct setting)
-Made Subsystem="1" for all setups like Debug|Win32 (the correct setting)
2010-11-09 12:06:34 +08:00
Chun-wei Fan
1b3cc80df8 gtk+.vsprops: Removed GdkPixbuf stuff and made up for missed headers
-Removed the GdkPixbuf stuff as it is now in a package of its own and added
 it as a dependent library here
-Made up for the headers missed in the installation stage for GTK+/GDK
2010-11-09 11:40:51 +08:00
Matthias Clasen
f718f1bee6 NEWS for 2.91.4 2010-11-08 21:20:02 -05:00
Matthias Clasen
1ddf183bac Fix entry completion window sizing
I don't think we are at the end of scrolledwindow tweaks yet,
but this will make things work for now, as they used to.

https://bugzilla.gnome.org/show_bug.cgi?id=633670
2010-11-08 18:39:02 -05:00
Ryan Lortie
3ecc361f97 pixbuf engine: remove only use of GCache in Gtk
We'll be deprecating GCache in GLib soon.
2010-11-08 18:17:48 -05:00
Patrick Bernaud
76ba033f59 docs: Move documentation to inline comments: GtkPaned
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=634338

Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-08 23:22:03 +01:00
Patrick Bernaud
6a93e3bbe1 docs: Move documentation to inline comments: GtkProgressBar
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=634339

Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-08 23:21:57 +01:00
Patrick Bernaud
692024940c docs: Move documentation to inline comments: GtkPageSetup
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=634340

Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-08 23:21:49 +01:00
Tristan Van Berkom
85d6aa1627 Added test and scaffolding widget for GtkCellArea. 2010-11-09 01:26:38 +09:00
Tristan Van Berkom
e5e507e1d4 Added GtkCellArea classes to gtk.h and fixed a remainig rendering bug. 2010-11-09 01:25:45 +09:00
Tristan Van Berkom
92b9f432dd Fixed initial bugs in GtkCellArea implementation, starting to render
Tested all of this with some scaffolding code, test case comming soon.
2010-11-08 17:43:27 +09:00
Tristan Van Berkom
0336838366 Implemented focus handling in GtkCellAreaBox
Now when the GtkCellAreaBox receives key events it cycles
the currently focused cell to the next focusable cell in the box
while observing the navigation direction, it then emits "focus-leave"
when hitting the boundries of the area.
2010-11-08 11:31:03 +09:00
Tristan Van Berkom
09e3d9d3aa Added gtk_cell_area_stop_editing to allow explicit stopping of cell editing. 2010-11-08 11:31:03 +09:00
Tristan Van Berkom
cbe1154e51 Added gtk_cell_area_activate_cell() and some cell editing management
Now:
  - The current edit cell and editable widget in use can be fetched
    with properties and accessors
  - gtk_cell_area_activate_cell() handles bookkeeping of the currently
    edited cell, starting the editing of a cell, activating a cell etc
  - Exported signals are available on GtkCellArea: "editing-started",
    "editing-canceled", "editing-done", "remove-editable".
  - Upon receiving GDK_KEY_Escape current editing gets canceled.
2010-11-08 11:31:03 +09:00
Hans Breuer
017f637a76 Bug 609622 - disappearing statusicon
Windows 7 is managing status icon visibility across process lifetime,
which did not work with GTK+ create icons. Apparently the mechanism
does not require use of new API (like suggested by MSDN), but it is
enough to give a "unique" tooltip at creation time.
Formerly this initial tooltip was not set at all, later setting via
gtk_status_icon_set_tooltip_text() is not enough, but luckily
different follow-up tooltips don't disturb the intended behavior.
(cherry picked from commit ae0544c636)
(cherry picked from commit 8a9d458baf)
2010-11-08 11:31:03 +09:00
Hans Breuer
0b749700e6 Update msvc build 2010-11-08 11:31:03 +09:00
Matthias Clasen
e5c0d40d94 Make GtkFileChooserButton behave as expected when expanding 2010-11-08 11:31:03 +09:00
Ivar Smolin
c4a54055fe [l10n] Updated Estonian translation 2010-11-08 11:31:02 +09:00
Garrett Regier
c65a617bd7 docs: Move documentation to inline comments: GtkCellView
Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-08 11:31:02 +09:00
Garrett Regier
24c3b956f3 docs: Move documentation to inline comments: GtkCellRendererText
Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-08 11:31:02 +09:00
Javier Jardón
322db81256 docs: Move documentation to inline comments: GtkCellRenderer 2010-11-08 11:31:02 +09:00
Javier Jardón
b1112cb87c docs: Move documentation to inline comments: GtkSettings 2010-11-08 11:31:02 +09:00
Garrett Regier
bf17f3f32c docs: Move documentation to inline comments: GtkColorSelection
Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-08 11:31:02 +09:00
Garrett Regier
46627d008f docs: Move documentation to inline comments: GtkLayout
Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-08 11:31:02 +09:00
Kizito Birabwa
e1e90c6f9c Added Luganda translation 2010-11-08 11:31:02 +09:00
Tor Lillqvist
a446664c25 Add _gtk_cell_renderer_calc_offset 2010-11-08 11:31:02 +09:00
Tor Lillqvist
bd8464834c Fix build breakage and avoid a warning 2010-11-08 11:31:02 +09:00
Tor Lillqvist
7754bf1a63 Avoid a compiler warning 2010-11-08 11:31:02 +09:00
Tor Lillqvist
c418de1672 Drop unused static function 2010-11-08 11:31:02 +09:00
Javier Jardón
a31142a8fa docs: move documentation to inline comments: GtkColorButton 2010-11-08 11:31:01 +09:00
Javier Jardón
65834294a5 docs: move documentation to inline comments: GtkTreeView 2010-11-08 11:31:01 +09:00
Javier Jardón
0331e1fab7 docs: Move documentation to inline comments: GtkTextView 2010-11-08 11:31:01 +09:00
Matthias Clasen
3b541bcfd4 GtkApplication: rewrite example application
The intended way of using GtkApplication is mainly by subclassing,
so make the example do that.
2010-11-08 11:31:01 +09:00
Matthias Clasen
9157e15653 GtkApplication: drop Quit from the docs
GtkApplication does not currently implement any default actions.
2010-11-08 11:31:01 +09:00
Javier Jardón
a62b185e29 docs: move documentation to inline comments: GtkEntry 2010-11-08 11:31:01 +09:00
Javier Jardón
dfeff671c4 docs: Fix generation of GtkGrid documentation 2010-11-08 11:31:01 +09:00
Cosimo Cecchi
99144330a0 tests: fix the build
gtk_box_new() changed API recently.
2010-11-08 11:31:01 +09:00
Cosimo Cecchi
1433ea24b5 icon-theme: always force icon sizes for emblems
https://bugzilla.gnome.org/show_bug.cgi?id=634060
2010-11-08 11:31:01 +09:00
Cosimo Cecchi
c068e988a1 tests: add a test for pixbufs implementing the GIcon interface
https://bugzilla.gnome.org/show_bug.cgi?id=634060
2010-11-08 11:31:01 +09:00
Cosimo Cecchi
4239e49982 icon-theme: support pixbufs implementing the GIcon interface
https://bugzilla.gnome.org/show_bug.cgi?id=634060
2010-11-08 11:31:01 +09:00
Cosimo Cecchi
cb51ad606f gtkwindow: properly set the window icon list (#631331)
This was probably a rendering-cleanup regression.
2010-11-08 11:31:01 +09:00
Hans Breuer
9452b271a0 Bug 609622 - disappearing statusicon
Windows 7 is managing status icon visibility across process lifetime,
which did not work with GTK+ create icons. Apparently the mechanism
does not require use of new API (like suggested by MSDN), but it is
enough to give a "unique" tooltip at creation time.
Formerly this initial tooltip was not set at all, later setting via
gtk_status_icon_set_tooltip_text() is not enough, but luckily
different follow-up tooltips don't disturb the intended behavior.
(cherry picked from commit ae0544c636)
(cherry picked from commit 8a9d458baf)
2010-11-07 23:58:29 +01:00
Hans Breuer
dc40e17af8 Update msvc build 2010-11-07 23:35:04 +01:00
Matthias Clasen
9dfeee8127 Make GtkFileChooserButton behave as expected when expanding 2010-11-07 11:22:07 -05:00
Ivar Smolin
5400ec8168 [l10n] Updated Estonian translation 2010-11-07 10:50:45 +02:00
Garrett Regier
3aad9f6617 docs: Move documentation to inline comments: GtkCellView
Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-06 18:21:36 +01:00
Garrett Regier
d5593dec9e docs: Move documentation to inline comments: GtkCellRendererText
Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-06 18:21:36 +01:00
Javier Jardón
6cfd907290 docs: Move documentation to inline comments: GtkCellRenderer 2010-11-06 18:21:35 +01:00
Javier Jardón
c418ea89e5 docs: Move documentation to inline comments: GtkSettings 2010-11-06 18:21:35 +01:00
Garrett Regier
aa4c96544b docs: Move documentation to inline comments: GtkColorSelection
Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-06 17:42:00 +01:00
Garrett Regier
65536550c5 docs: Move documentation to inline comments: GtkLayout
Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-11-06 17:42:00 +01:00
Kizito Birabwa
a9a7b60898 Added Luganda translation 2010-11-06 16:41:54 +01:00
Tor Lillqvist
8f98c7f68c Add _gtk_cell_renderer_calc_offset 2010-11-06 14:12:14 +02:00
Tor Lillqvist
58ed78cbe0 Fix build breakage and avoid a warning 2010-11-06 13:13:59 +02:00
Tor Lillqvist
1e9c091457 Avoid a compiler warning 2010-11-06 13:13:37 +02:00
Tor Lillqvist
6e56d05cbc Drop unused static function 2010-11-06 13:13:10 +02:00
Javier Jardón
c08e7f01fe docs: move documentation to inline comments: GtkColorButton 2010-11-06 03:26:14 +01:00
Javier Jardón
5efde9d6d0 docs: move documentation to inline comments: GtkTreeView 2010-11-06 03:26:14 +01:00
Javier Jardón
f90bdb33c8 docs: Move documentation to inline comments: GtkTextView 2010-11-06 03:26:14 +01:00
Matthias Clasen
04ba8ef77a GtkApplication: rewrite example application
The intended way of using GtkApplication is mainly by subclassing,
so make the example do that.
2010-11-05 16:26:51 -04:00
Matthias Clasen
ef3cc732cb GtkApplication: drop Quit from the docs
GtkApplication does not currently implement any default actions.
2010-11-05 16:26:51 -04:00
Javier Jardón
0e0c4ee129 docs: move documentation to inline comments: GtkEntry 2010-11-05 20:49:20 +01:00
Javier Jardón
cf71dbde90 docs: Fix generation of GtkGrid documentation 2010-11-05 17:28:18 +01:00
Cosimo Cecchi
c69075f170 tests: fix the build
gtk_box_new() changed API recently.
2010-11-05 17:01:34 +01:00
Cosimo Cecchi
a994a9f945 icon-theme: always force icon sizes for emblems
https://bugzilla.gnome.org/show_bug.cgi?id=634060
2010-11-05 16:28:32 +01:00
Cosimo Cecchi
fcfd494b78 tests: add a test for pixbufs implementing the GIcon interface
https://bugzilla.gnome.org/show_bug.cgi?id=634060
2010-11-05 16:28:32 +01:00
Cosimo Cecchi
5071aa72ad icon-theme: support pixbufs implementing the GIcon interface
https://bugzilla.gnome.org/show_bug.cgi?id=634060
2010-11-05 16:28:32 +01:00
Cosimo Cecchi
f437507d4d gtkwindow: properly set the window icon list (#631331)
This was probably a rendering-cleanup regression.
2010-11-05 16:26:30 +01:00
Tristan Van Berkom
631bdc438c Made progress on focus handling.
- Added vfunc to get the allocation of a cell inside an area
 - Superclass GtkCellArea handles activation of focused cells
   by handling key events (as well as editing of editable cells)
 - Added signal "editing-started" to GtkCellArea to signal that
   editing has started (generally signaled from inside event handling)
 - Added properties "focus-cell" and "edited-cell"
2010-11-05 22:19:50 +09:00
Tristan Van Berkom
1ad5fa3e7a Committing half-way done focus work. 2010-11-05 22:19:50 +09:00
Murray Cumming
ce815afece GtkWidget/GtkContainer: Slight fixes to geometry-management docs.
Replace it's with its in several places.
Replace some , with .
Replace some ; with .
Fix some plurals.
Other minor corrections.
2010-11-05 22:19:50 +09:00
Murray Cumming
b8bcbd1376 GtkWidget: Document the size-request signal deprecation.
Hopefully my text is correct.
2010-11-05 22:19:50 +09:00
Matthias Clasen
a83b0b68ce Handle empty button boxes gracefully
https://bugzilla.gnome.org/show_bug.cgi?id=633915
2010-11-05 22:19:50 +09:00
Christian Dywan
7ca240916f Only show Desktop in file chooser button if there is one
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=632894
2010-11-05 22:19:50 +09:00
Owen W. Taylor
d2b64a1db2 Switch to CSS interpretation of rgb() and rgba() colors
CSS3 defines a somewhat odd syntax for rgba() colors - the rgb values
are integers from 0 to 255 or percentages and the a value is a
float from 0 to 1. To avoid increasing the total amount of confusion
in the world, make gdk_rgb_to_string() and gdk_rgb_parse() follow
this syntax rather than using floats for r, g, and b.

https://bugzilla.gnome.org/show_bug.cgi?id=633762
2010-11-05 22:19:50 +09:00
Ryan Lortie
4bdff81f2e gtktoolitemgroup: don't use GTimeSpec
Use gint64 time instead.
2010-11-05 22:19:49 +09:00
Javier Jardón
65e045f5f4 Revert "Move the /*< private >*/ at the correct position"
All the object structures is opaque
This reverts commit c59ca4f6b9.
2010-11-05 22:19:49 +09:00
Javier Jardón
dadf5c331a docs: Improve cross-referencing on GtkGrid docs 2010-11-05 22:19:49 +09:00
Javier Jardón
7dd52d7b60 docs: Fix gtk-doc markup in GtkWidget docs 2010-11-05 22:19:49 +09:00
Takayuki KUSANO
77be5690fd Updated Japanese translation 2010-11-05 22:19:49 +09:00
Murray Cumming
32b21694ef Fix tiny documetnation typo. 2010-11-05 22:19:49 +09:00
Murray Cumming
d1829ecd74 GtkWidget/GtkContainer: Slight fixes to geometry-management docs.
Replace it's with its in several places.
Replace some , with .
Replace some ; with .
Fix some plurals.
Other minor corrections.
2010-11-04 16:37:54 +01:00
Murray Cumming
897a333744 GtkWidget: Document the size-request signal deprecation.
Hopefully my text is correct.
2010-11-04 16:11:25 +01:00
Matthias Clasen
10f0e991da Handle empty button boxes gracefully
https://bugzilla.gnome.org/show_bug.cgi?id=633915
2010-11-03 23:01:09 -04:00
Christian Dywan
1c14268687 Only show Desktop in file chooser button if there is one
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=632894
2010-11-03 19:19:19 +01:00
Owen W. Taylor
5daab52661 Switch to CSS interpretation of rgb() and rgba() colors
CSS3 defines a somewhat odd syntax for rgba() colors - the rgb values
are integers from 0 to 255 or percentages and the a value is a
float from 0 to 1. To avoid increasing the total amount of confusion
in the world, make gdk_rgb_to_string() and gdk_rgb_parse() follow
this syntax rather than using floats for r, g, and b.

https://bugzilla.gnome.org/show_bug.cgi?id=633762
2010-11-03 13:41:45 -04:00
Ryan Lortie
fbdcf193ae gtktoolitemgroup: don't use GTimeSpec
Use gint64 time instead.
2010-11-03 08:26:27 -04:00
Javier Jardón
1f1e7c37ad Revert "Move the /*< private >*/ at the correct position"
All the object structures is opaque
This reverts commit c59ca4f6b9.
2010-11-03 03:38:06 +01:00
Javier Jardón
4e0a50db9e docs: Improve cross-referencing on GtkGrid docs 2010-11-03 03:31:57 +01:00
Javier Jardón
dab457fbc6 docs: Fix gtk-doc markup in GtkWidget docs 2010-11-03 03:31:46 +01:00
Takayuki KUSANO
b80322ba93 Updated Japanese translation 2010-11-03 09:02:19 +09:00
Murray Cumming
764f627733 Fix tiny documetnation typo. 2010-11-02 10:43:42 +01:00
Tristan Van Berkom
832c123fd2 Extended gtk_cell_area_apply_attributes() to account for expander/expanded cells
The state of expanded cells must come from the view, since these states
can vary across views accessing the same model (also "finished up" the
applying of attributes code).
2010-11-02 18:01:03 +09:00
Murray Cumming
73e45cef9d GtkScrollable: Improve the documentation text. 2010-11-02 17:51:07 +09:00
Murray Cumming
d3aa89fc11 GtkScrollable: Improve the documentation text. 2010-11-02 09:23:24 +01:00
Tristan Van Berkom
7ddf87f9ef Account for the possibility of invisible cells in GtkCellAreaBox/Iter
Also changed the GtkCellAreaBox to keep groups in an array
instead of a list, for this code it's generally more useful
this way (and more optimized).
2010-11-02 16:51:06 +09:00
Tristan Van Berkom
e3b75cb053 Adding tentative implementation of GtkCellAreaBox->grab_focus(). 2010-11-02 12:04:38 +09:00
Murray Cumming
0583288dd9 Removed a trailing enum comma. 2010-11-02 12:04:38 +09:00
Ignacio Casal Quinteiro
997835af83 Normalize boolean. 2010-11-02 12:04:38 +09:00
Ignacio Casal Quinteiro
bea2487d83 Do not use gbooleans to save some bits. 2010-11-02 12:04:38 +09:00
Matthias Clasen
afa282f009 Bump version 2010-11-02 12:04:38 +09:00
Paolo Borelli
5e90bb269d Get rid of unused shaped_object list in _GtkTextLineDisplay
https://bugzilla.gnome.org/show_bug.cgi?id=631076
2010-11-02 12:04:37 +09:00
Matthias Clasen
053171c530 Update NEWS 2010-11-02 12:04:37 +09:00
Matthias Clasen
bb0ff159cb GtkToolitemGroup: Use monotonic clock for animation timeout 2010-11-02 12:04:37 +09:00
Ignacio Casal Quinteiro
ed62f93439 Add caseless unit tests for textiter. 2010-11-02 12:04:37 +09:00
Ignacio Casal Quinteiro
794e0446e9 Add case insensitive to GtkTextIter. Fixes bug #61852.
This code has been taken from GtkSourceView so also kudos to Paolo Maggi
and Paolo Borelli for helping with this patch.
2010-11-02 12:04:37 +09:00
Paolo Borelli
3511215730 Fix backward search bug exposed by the unit test
When searching with multiple lines first_line_start/end were initialized
to the last line start/end iters
2010-11-02 12:04:37 +09:00
Ignacio Casal Quinteiro
a2360f979a Add unit tests for textiter. 2010-11-02 12:04:37 +09:00
Matthias Clasen
ac3258b07d Avoid exporting an extra symbol 2010-11-02 12:04:37 +09:00
Matthias Clasen
31b0c1ad35 Fix make check 2010-11-02 12:04:37 +09:00
Paolo Borelli
002704fe25 Move the /*< private >*/ at the correct position 2010-11-02 12:04:37 +09:00
Matthias Clasen
673e660edc NEWS for 2.91.3 2010-11-02 12:04:37 +09:00
Ivar Smolin
cba8cd8c59 [l10n] Updated Estonian translation 2010-11-02 12:04:36 +09:00
Matthias Clasen
a8ade90b4f Fix a typo 2010-11-02 12:04:36 +09:00
Matthias Clasen
0c8df06f73 Mention actions in the libunique migration guide 2010-11-02 12:04:36 +09:00
Matthias Clasen
71d6a289fc Fix interaction between scrolling menus and automatic mnemonics
https://bugzilla.gnome.org/show_bug.cgi?id=612611
2010-11-02 12:04:36 +09:00
Michael Natterer
ca6398a649 gtk: remove all border_width handling from the button box
and let GtkContainer do the job; fixes doubled border widths. GtkBox
did already delegate border handling to Gtkcontainer, which interacted
badly with a subclass that didn't.
2010-11-02 12:04:36 +09:00
Michael Natterer
8dd7023b52 gtk: fix automatic width of spin buttons which have no width in chars set 2010-11-02 12:04:35 +09:00
Michael Natterer
8979855f60 tests: missed these two gtk_box_new() which sneaked in by rebasing... 2010-11-02 12:04:35 +09:00
Matthias Clasen
c70f3e26d2 GtkAssistant: Mention custom pages in the introduction 2010-11-02 12:04:35 +09:00
Michael Natterer
260ccdfebe gtk: remove "gboolean homogeneous" from gtk_box_new()
Because it's FALSE in virtually all use cases.
2010-11-02 12:04:35 +09:00
Matthias Clasen
c50f790417 Add content size test for scrolled window 2010-11-02 12:04:35 +09:00
Bastien Nocera
76a0b9e5fa GtkAssistant: Add custom page type
The custom page type will not show any buttons by default, and
it is left to the application to add its own buttons instead.

The _next_page() and _previous_page() functions can be used
for the back and forward buttons used by the application.

https://bugzilla.gnome.org/show_bug.cgi?id=576498
2010-11-02 12:04:34 +09:00
Bastien Nocera
ef2fe67832 GtkAssistant: Add more details about buttons shown
Add more documentation about which buttons will be shown for which
type of GtkAssistant page.

https://bugzilla.gnome.org/show_bug.cgi?id=576498
2010-11-02 12:04:34 +09:00
Matthias Clasen
75fd27e920 Improve GtkAssistant docs 2010-11-02 12:04:34 +09:00
Martin Nordholts
0feb08a4bb Handle NULL intp in test_increment_intp()
Support passing NULL for &int to gtk_test_display_button_window() so
we can use that function also when we are not interested in counting
clicks.
2010-11-02 12:04:34 +09:00
Murray Cumming
c4714662b1 Removed a trailing enum comma. 2010-11-01 23:09:21 +01:00
Ignacio Casal Quinteiro
d8d73163fd Normalize boolean. 2010-11-01 22:59:21 +01:00
Ignacio Casal Quinteiro
37dc91f012 Do not use gbooleans to save some bits. 2010-11-01 22:43:35 +01:00
Matthias Clasen
586c5f0bb0 Bump version 2010-11-01 13:13:04 -04:00
Paolo Borelli
5dddcb1fa5 Get rid of unused shaped_object list in _GtkTextLineDisplay
https://bugzilla.gnome.org/show_bug.cgi?id=631076
2010-11-01 17:09:58 +01:00
Matthias Clasen
450b1f4322 Update NEWS 2010-11-01 11:44:30 -04:00
Matthias Clasen
69c7213ba9 GtkToolitemGroup: Use monotonic clock for animation timeout 2010-11-01 11:43:15 -04:00
Ignacio Casal Quinteiro
1fad7eaf85 Add caseless unit tests for textiter. 2010-11-01 15:21:53 +01:00
Ignacio Casal Quinteiro
2f98a1c8b3 Add case insensitive to GtkTextIter. Fixes bug #61852.
This code has been taken from GtkSourceView so also kudos to Paolo Maggi
and Paolo Borelli for helping with this patch.
2010-11-01 15:21:48 +01:00
Paolo Borelli
42910194a9 Fix backward search bug exposed by the unit test
When searching with multiple lines first_line_start/end were initialized
to the last line start/end iters
2010-11-01 15:21:43 +01:00
Ignacio Casal Quinteiro
be703155aa Add unit tests for textiter. 2010-11-01 15:21:39 +01:00
Matthias Clasen
9ff207bd25 Avoid exporting an extra symbol 2010-11-01 09:17:21 -04:00
Matthias Clasen
816f08872a Fix make check 2010-11-01 09:17:21 -04:00
Paolo Borelli
c59ca4f6b9 Move the /*< private >*/ at the correct position 2010-11-01 14:15:03 +01:00
Matthias Clasen
8eee2f9bce NEWS for 2.91.3 2010-11-01 08:14:19 -04:00
Tristan Van Berkom
e94a177774 Added cell focus apis to GtkCellArea. 2010-11-01 16:01:25 +09:00
Ivar Smolin
b2ff82d0a3 [l10n] Updated Estonian translation 2010-11-01 08:19:38 +02:00
Tristan Van Berkom
54004237be Added GtkCellRendererState flags to GtkCellArea->event/render() methods 2010-11-01 12:39:00 +09:00
Matthias Clasen
750a9f3225 Fix a typo 2010-10-31 22:16:41 -04:00
Matthias Clasen
a3f19ddae8 Mention actions in the libunique migration guide 2010-10-31 22:14:53 -04:00
Matthias Clasen
54a5e37136 Fix interaction between scrolling menus and automatic mnemonics
https://bugzilla.gnome.org/show_bug.cgi?id=612611
2010-10-31 15:53:07 -04:00
Michael Natterer
d1a58b78be gtk: remove all border_width handling from the button box
and let GtkContainer do the job; fixes doubled border widths. GtkBox
did already delegate border handling to Gtkcontainer, which interacted
badly with a subclass that didn't.
2010-10-31 20:16:19 +01:00
Michael Natterer
476b4c248c gtk: fix automatic width of spin buttons which have no width in chars set 2010-10-31 20:03:55 +01:00
Michael Natterer
240e1b4b59 tests: missed these two gtk_box_new() which sneaked in by rebasing... 2010-10-31 20:01:28 +01:00
Matthias Clasen
c6a379dc62 GtkAssistant: Mention custom pages in the introduction 2010-10-31 14:34:35 -04:00
Michael Natterer
3a0afce509 gtk: remove "gboolean homogeneous" from gtk_box_new()
Because it's FALSE in virtually all use cases.
2010-10-31 19:22:28 +01:00
Matthias Clasen
81d7dd0774 Add content size test for scrolled window 2010-10-31 14:10:41 -04:00
Bastien Nocera
cbbfd7beb6 GtkAssistant: Add custom page type
The custom page type will not show any buttons by default, and
it is left to the application to add its own buttons instead.

The _next_page() and _previous_page() functions can be used
for the back and forward buttons used by the application.

https://bugzilla.gnome.org/show_bug.cgi?id=576498
2010-10-31 16:08:46 +00:00
Bastien Nocera
b5abd10940 GtkAssistant: Add more details about buttons shown
Add more documentation about which buttons will be shown for which
type of GtkAssistant page.

https://bugzilla.gnome.org/show_bug.cgi?id=576498
2010-10-31 16:08:46 +00:00
Tristan Van Berkom
9c4eb3d431 Changed GtkCellArea margin-left/right... for cell-margin-left/right...
The rationale here is that every cell in an area needs to have space
reserved around it, requests have to be fully margin inclusive...
cells need to have the full size fed as the "background area" and
the "cell area" has margins removed... This will be used by GtkTreeViewColumn
to set the focus line width so that cells can paint a background on the
full background, then render themselves into the cell area... and parents
can go ahead and draw focus and other indicators on the background area
but outside of the cell area.
2010-10-31 22:50:53 +09:00
Tristan Van Berkom
163c3c8852 Added margins to the cell area
Added margin properties to the cell area, margins will be removed
from the area given to ->render() when creating the inner cell area.
2010-10-31 18:55:51 +09:00
Tristan Van Berkom
25b00759c5 Implemented cell packing properties on GtkCellAreaBox 2010-10-31 17:45:29 +09:00
Tristan Van Berkom
01d2eddf03 Added GTK_CELL_AREA_WARN_INVALID_CHILD_PROPERTY_ID to gtkcellarea.h 2010-10-31 17:45:06 +09:00
Tristan Van Berkom
d781c226da Implemented "cell properties" on the GtkCellArea
Added cell "packing" properties for generic configuration
of child cells inside an area.
2010-10-31 17:13:15 +09:00
Tristan Van Berkom
6da74b6e1e Finished up allocation of cells.
Added get_allocated_cells() which returns a practical list
of cells with allocation for render/event time, this abstracts
whether the cells are individually aligned or aligned into groups,
when there are groups of cells before an alignment, those groups
get allocated on the fly for render time.
2010-10-31 15:22:39 +09:00
Tristan Van Berkom
e494f102cf Cleaned up GtkCellAreaIter implementation to use arrays to store grouped cell information. 2010-10-31 13:06:10 +09:00
Matthias Clasen
c5e9526faf Improve GtkAssistant docs 2010-10-30 21:30:23 -04:00
Martin Nordholts
cdda7f9151 Handle NULL intp in test_increment_intp()
Support passing NULL for &int to gtk_test_display_button_window() so
we can use that function also when we are not interested in counting
clicks.
2010-10-31 00:49:38 +02:00
Tristan Van Berkom
b12e7a8115 Adding GtkCellAreaIter arg to GtkCellArea->render/->event 2010-10-30 23:48:52 +09:00
Tristan Van Berkom
972e077966 Fixed hangs in TextView and ToolPalette
Fixed the hangs by adding a ->inside_allocation flag and avoiding to
queue resizes while inside the allocation loop. The extra queue'd resizes
were causing the scrolled window size_allocate() to perform the guess
again and again thus causing an infinite loop.
2010-10-30 23:37:24 +09:00
Tristan Van Berkom
a3b4681f9f Fixing typo in scrolled window
Seems with GtkScrollable interface we were setting the hadjustment as
the vadjustment, thanks to Cosimo Cecchi who debugged this and finally
found the typo.
2010-10-30 23:37:24 +09:00
Tristan Van Berkom
ae71cf7209 Fixed hangs in TextView and ToolPalette
Fixed the hangs by adding a ->inside_allocation flag and avoiding to
queue resizes while inside the allocation loop. The extra queue'd resizes
were causing the scrolled window size_allocate() to perform the guess
again and again thus causing an infinite loop.
2010-10-30 23:10:43 +09:00
Tristan Van Berkom
338001ae48 Fixing typo in scrolled window
Seems with GtkScrollable interface we were setting the hadjustment as
the vadjustment, thanks to Cosimo Cecchi who debugged this and finally
found the typo.
2010-10-30 23:09:14 +09:00
Tristan Van Berkom
ea6df20bbb Added the majority of the allocate machinery to GtkCellAreaIter[Box]. 2010-10-30 23:06:26 +09:00
Tristan Van Berkom
86fb6ab216 Fixed GtkCellAreaIter to notify invalidation of sizes on flush
Also fixed GtkCellAreaBox to track the iters it creates and flush
them when the overall layout configuration changes (add/remove/reorder/
spacing changed etc).
2010-10-30 21:40:22 +09:00
Javier Jardón
1dc7e3d885 Emphasize that GtkBox and GtkTable can be replaced by GtkGrid 2010-10-30 17:37:04 +09:00
Javier Jardón
c15ef6405c Use gtk_box_new() instead gtk_[v|h]box_new() 2010-10-30 17:37:03 +09:00
Javier Jardón
ae1d1fd048 docs: remove template of deprecated gtkcombo widget 2010-10-30 17:37:03 +09:00
Matthias Clasen
1469c3fd69 Migration guide additions
Add some information about expand flags and the scrollable interface.
2010-10-30 17:37:03 +09:00
Christian Persch
71b8875d2b Make gdk_rgba_to_string() take a const GdkRGBA
https://bugzilla.gnome.org/show_bug.cgi?id=633216
2010-10-30 17:37:03 +09:00
Matthias Clasen
0aa94bb946 Fix initial size allocation with child widgets
On some cases, it would take a resize of the window for children
to 'jump into place'.

https://bugzilla.gnome.org/show_bug.cgi?id=633500
2010-10-30 17:37:03 +09:00
Javier Jardón
6c301d4b0a Use gtk_scrollbar_new() instead gtk_[v|h]scrollbar_new() 2010-10-30 17:37:03 +09:00
Javier Jardón
234553c093 Use gtk_scale_new() instead gtk_[v|h]scale_new() 2010-10-30 17:37:03 +09:00
Javier Jardón
d03d2943d2 Use gtk_scale_new_with_range() instead gtk_[v|h]scale_new_with_range() 2010-10-30 17:37:03 +09:00
Javier Jardón
cdf4b4bbd5 Use gtk_paned_new() instead gtk_[v|h]paned_new() 2010-10-30 17:37:03 +09:00
Javier Jardón
524e704147 Use gtk_ruler_new() instead gtk_[v|h]ruler_new() 2010-10-30 17:37:02 +09:00
Javier Jardón
821c3c6578 Use gtk_separator_new() instead gtk_[v|h]separator_new() 2010-10-30 17:37:02 +09:00
Javier Jardón
2615ebf37e Use gtk_button_box_new() instead gtk_[v|h]_button_box_new() 2010-10-30 17:37:02 +09:00
Michael Natterer
34627a6371 gtk: remove declarations of removed internal functions 2010-10-30 17:37:02 +09:00
Matthias Clasen
ef03dc3fc6 Don't set get_preferred_width_for_height to NULL
The size request machinery expects that it is non-NULL.
2010-10-30 17:37:02 +09:00
Matthias Clasen
70bef431b0 GtkComboBox: Add a constructor that takes a model and adds an entry
https://bugzilla.gnome.org/show_bug.cgi?id=633050
2010-10-30 17:37:02 +09:00
Javier Jardón
d0974d4f02 Re-enable deprecation guards 2010-10-30 17:37:02 +09:00
Carles Ferrando
92431720dc Updated Catalan (Valencian) translation 2010-10-30 17:37:02 +09:00
Carlos Garnacho
18797dfa9a Use the client pointer for events with no device.
The core pointer is sort of meaningless in a multidevice environment,
the client pointer is used instead to fake a GdkDevice on events that
don't have one.
2010-10-30 17:37:02 +09:00
Owen W. Taylor
2d65bd08c3 Remove unused GdkDeviceManager variable
gdk_display_get_device_manager() was called but the device manager
not used.
2010-10-30 17:37:02 +09:00
Matthias Clasen
ac0b97aa23 ifdef X-specific stuff
gdk_x11_ APIs can only be used inside #ifdef GDK_WINDOWING_X11.
2010-10-30 17:37:01 +09:00
Matthias Clasen
22d01c45cc GtkButtonBox doesn't do height-for-width
GtkButtonBox doesn't do height-for-width, therefore we should
explicitly set these methods to NULL instead of hoping that the
inherited GtkBox implementations work ok.
2010-10-30 17:37:01 +09:00
John (J5) Palmieri
1448111a58 [introspection] annotate delete_text invoker to match do_delete_text v-method 2010-10-30 17:37:01 +09:00
Vincent Untz
e0d1652a99 Port tests to GtkScrollable API instead of deprecated GtkLayout API
https://bugzilla.gnome.org/show_bug.cgi?id=633374
2010-10-30 17:37:01 +09:00
Tristan Van Berkom
3b1c301a66 Made GtkCellAreaBox:align-cells a packing property per cell
Implemented all request apis on GtkCellAreaBox considering
alignment of groups of cells (some cells can be aligned while
others fill space smartly).
2010-10-30 17:35:22 +09:00
Ignacio Casal Quinteiro
211c39c500 Remove useless vars. 2010-10-30 17:35:22 +09:00
Tristan Van Berkom
89cc46374d Fire a warning if there are any handlers connected to the deprecated "size-request" signal. 2010-10-30 17:35:22 +09:00
Tristan Van Berkom
731853a7ec Added a runtime warning if any class is implementing the ->size_request() vfunc. 2010-10-30 17:35:22 +09:00
Tristan Van Berkom
b277ba4238 Make GtkPathBar use set_size_request() instead of the "size-request" signal. 2010-10-30 17:35:22 +09:00
Tristan Van Berkom
05ca7e14b0 Removed size_request from GtkToolItemGroup
Ofcourse GtkToolPalette needs real migration to height-for-width
apis, this patch just removes the need for the size_request
signal and vfunc.
2010-10-30 17:35:21 +09:00
Tristan Van Berkom
3265d46c9d Use gtk_widget_set_size_request() instead of handling "size-request" signals. 2010-10-30 17:35:21 +09:00
Matthias Clasen
d02443d57c Add a migration guide section on size_request 2010-10-30 17:35:21 +09:00
Matthias Clasen
9c128ed442 Fix the build 2010-10-30 17:35:21 +09:00
Matthias Clasen
eb60282b1b Fix gtk_fixed_get_preferred_width
When dealing with widths, use x, not y.
Spotted by Ignacio Casal Quintero.
2010-10-30 17:35:21 +09:00
Bastien Nocera
2a37d949ba gtk: Fix crasher when loading symbolic icons
If the style didn't include symbolic colors for either success,
warning or error, gtk_icon_info_load_symbolic_for_style() would crash.

Instead, make sure we don't try to use the colors if they're not
available, and fallback on default colors inside
_gtk_icon_info_load_symbolic_internal().
2010-10-30 17:35:20 +09:00
Owen W. Taylor
d8fdbd8b72 GtkSocket: Add error trap around call to XFixesChangeSaveSet()
Previously any X error from XFixesChangeSaveSet() was being eaten
by the subsequent error trap when sending a client message. With
asynchronous error traps, that side effect no longer occurs, so
we need to add a proper error trap around the call to
XFixesChangeSaveSet().

https://bugzilla.gnome.org/show_bug.cgi?id=633274
2010-10-30 17:35:20 +09:00
Tristan Van Berkom
d86164f90d Revert "Removed size_request from GtkTextView"
This reverts commit 87dfa724eb.

I pushed this to the wrong branch, ouch sorry.
2010-10-30 17:35:20 +09:00
Matthias Clasen
2d4f3e1365 Remove size_request from GtkSocket
This is only preliminary, GtkSocket can do minimal/natural width
properly, there's code for that in the extended-layout branch.
2010-10-30 17:35:20 +09:00
Matthias Clasen
965b3af8a1 Don't g_free gslice-allocated structures
This was causing memory corruption when removing remote plugs from
sockets.
2010-10-30 17:35:20 +09:00
Matthias Clasen
3cdf3bc46c Remove size_request from GtkScale 2010-10-30 17:35:20 +09:00
Tristan Van Berkom
e573a455bb Removed size_request from GtkTearoffMenuItem 2010-10-30 17:35:20 +09:00
Tristan Van Berkom
292f32dde8 Fixed remaining call to ->size_request in GtkTextView. 2010-10-30 17:35:20 +09:00
Matthias Clasen
ebcb6e6b94 Remove size_request from GtkSeparatorToolItem 2010-10-30 17:35:20 +09:00
Matthias Clasen
5e0451de3a Use correct icon name in testtoolbar 2010-10-30 17:35:20 +09:00
Tristan Van Berkom
0db2b334b0 Removed size_request from GtkTextView 2010-10-30 17:35:19 +09:00
Matthias Clasen
9f074f8612 Remove size_request from gtkToolItem 2010-10-30 17:35:19 +09:00
Tristan Van Berkom
0b3e2ffee6 Removing size_request from GtkToolPalette
Note GtkToolPalette is internally height-for-width, it needs to
be refactored to cooperate with GTK+'s height-for-width geometry
management properly.
2010-10-30 17:35:19 +09:00
Matthias Clasen
bf75f63f49 Remove size_request from GtkToolbar
This is just a bandaid fix, the toolbar should really return proper
min/natural sizes, so that we can handle the overflow properly.
2010-10-30 17:35:19 +09:00
Matthias Clasen
f3d5e20cff Remove size_request from GtkTable 2010-10-30 17:35:19 +09:00
Tristan Van Berkom
cd2a7a899f Removing size_request from GtkTreeview.
This should be implemented as propery height-for-width by
the treeview-refactor branch. This commit includes a FIXME
comment that scroll adjustments should not be updated from
inside size requests but only after receiving an allocation.
2010-10-30 17:35:19 +09:00
Matthias Clasen
113362b169 Remove size_request from GtkRuler 2010-10-30 17:35:19 +09:00
Matthias Clasen
7f8d92f02c Remove size_request from GtkPathBar 2010-10-30 17:35:19 +09:00
Matthias Clasen
70c81d6651 Remove size_request from GtkSeparator 2010-10-30 17:35:19 +09:00
Matthias Clasen
4927c16486 Remove size_request from GtkRange 2010-10-30 17:35:19 +09:00
Matthias Clasen
53744b6daf Fix a typo 2010-10-30 17:35:19 +09:00
Matthias Clasen
6b5debcaca Remove size_request from GtkPaned
This is not the final word; GtkPaned should really implement
height-for-width, but I didn't have time to complete that now.
2010-10-30 17:35:18 +09:00
Ivar Smolin
c823f33516 [l10n] Updated Estonian translation 2010-10-30 17:35:18 +09:00
Tristan Van Berkom
34e1cd373b Removed size_request from GtkOffscreenWindow 2010-10-30 17:35:18 +09:00
Tristan Van Berkom
af0c4bc656 Removed size_request from GtkNotebook 2010-10-30 17:35:18 +09:00
Tristan Van Berkom
e9f541dc51 Removed size_request from GtkMenuBar 2010-10-30 17:35:18 +09:00
Tristan Van Berkom
0f9c04769b Removed size_request from GtkImageMenuItem 2010-10-30 17:35:18 +09:00
Tristan Van Berkom
8565b86223 Removed size_request from GtkIconView. 2010-10-30 17:35:18 +09:00
Tristan Van Berkom
399f353427 Remove size_request from GtkHandleBox 2010-10-30 17:35:18 +09:00
Tristan Van Berkom
16512bd9d3 Fixed unused variable in get_preferred_height(). 2010-10-30 17:35:18 +09:00
Matthias Clasen
f336754a8f Remove size_request from GtkSpinButton 2010-10-30 17:35:18 +09:00
Matthias Clasen
eca2d782ce Remove size_request from GtkProgressBar 2010-10-30 17:35:17 +09:00
Matthias Clasen
f83403098d Remove size_reuqest from GtkImage 2010-10-30 17:35:17 +09:00
Matthias Clasen
d4a07d5661 Remove size_request from GtkLayout 2010-10-30 17:35:17 +09:00
Matthias Clasen
381cd8b07c Remove size_request from GtkHSV 2010-10-30 17:35:17 +09:00
Matthias Clasen
b3f6f67c33 Remove size_request from GtkFixed 2010-10-30 17:35:17 +09:00
Matthias Clasen
e165c6c884 Remove size_request from GtkEntry 2010-10-30 17:35:17 +09:00
Matthias Clasen
2e4e7264e6 Remove size_request from GtkCheckButton 2010-10-30 17:35:17 +09:00
Matthias Clasen
23a9127765 Remove size_request from GtkCalendar 2010-10-30 17:35:17 +09:00
Matthias Clasen
2078db969c Remove size_request from GtkButtonBox 2010-10-30 17:35:17 +09:00
Matthias Clasen
42de07f2f3 Remove size_request from GtkAssistant 2010-10-30 17:35:17 +09:00
Javier Jardón
65dd3460ce Fix gtk-doc markup: /* <private> */ should be /*< private >*/ 2010-10-30 17:35:17 +09:00
Javier Jardón
73bac5af3b Emphasize that GtkBox and GtkTable can be replaced by GtkGrid 2010-10-30 06:53:44 +02:00
Javier Jardón
a9894d4cf4 Use gtk_box_new() instead gtk_[v|h]box_new() 2010-10-30 05:22:58 +02:00
Javier Jardón
b2207f6730 docs: remove template of deprecated gtkcombo widget 2010-10-30 05:03:02 +02:00
Matthias Clasen
9795bd4c8c Migration guide additions
Add some information about expand flags and the scrollable interface.
2010-10-29 22:48:26 -04:00
Christian Persch
edec3e12dd Make gdk_rgba_to_string() take a const GdkRGBA
https://bugzilla.gnome.org/show_bug.cgi?id=633216
2010-10-29 21:16:52 -04:00
Matthias Clasen
630b2c58b4 Fix initial size allocation with child widgets
On some cases, it would take a resize of the window for children
to 'jump into place'.

https://bugzilla.gnome.org/show_bug.cgi?id=633500
2010-10-29 21:15:13 -04:00
Javier Jardón
570b90e218 Use gtk_scrollbar_new() instead gtk_[v|h]scrollbar_new() 2010-10-30 02:26:24 +02:00
Javier Jardón
217036975a Use gtk_scale_new() instead gtk_[v|h]scale_new() 2010-10-30 02:26:24 +02:00
Javier Jardón
8177ad320e Use gtk_scale_new_with_range() instead gtk_[v|h]scale_new_with_range() 2010-10-30 02:26:23 +02:00
Javier Jardón
b3a7d401a1 Use gtk_paned_new() instead gtk_[v|h]paned_new() 2010-10-30 02:26:23 +02:00
Javier Jardón
f00f120fd7 Use gtk_ruler_new() instead gtk_[v|h]ruler_new() 2010-10-30 02:26:23 +02:00
Javier Jardón
8d008790be Use gtk_separator_new() instead gtk_[v|h]separator_new() 2010-10-30 02:26:23 +02:00
Javier Jardón
e31304fb7b Use gtk_button_box_new() instead gtk_[v|h]_button_box_new() 2010-10-30 02:26:23 +02:00
Michael Natterer
8154a5930d gtk: remove declarations of removed internal functions 2010-10-29 20:24:41 +02:00
Matthias Clasen
b2397d3d7e Don't set get_preferred_width_for_height to NULL
The size request machinery expects that it is non-NULL.
2010-10-29 12:58:24 -04:00
Matthias Clasen
ac3fe174f7 GtkComboBox: Add a constructor that takes a model and adds an entry
https://bugzilla.gnome.org/show_bug.cgi?id=633050
2010-10-29 12:28:42 -04:00
Javier Jardón
8b512bd9dd Re-enable deprecation guards 2010-10-29 05:10:52 +02:00
Carles Ferrando
a4d9d2c3d4 Updated Catalan (Valencian) translation 2010-10-29 01:37:58 +01:00
Carlos Garnacho
b1dec866e5 Use the client pointer for events with no device.
The core pointer is sort of meaningless in a multidevice environment,
the client pointer is used instead to fake a GdkDevice on events that
don't have one.
2010-10-28 23:01:16 +02:00
Owen W. Taylor
398728feb5 Remove unused GdkDeviceManager variable
gdk_display_get_device_manager() was called but the device manager
not used.
2010-10-28 16:43:55 -04:00
Matthias Clasen
7da5cd5fe6 ifdef X-specific stuff
gdk_x11_ APIs can only be used inside #ifdef GDK_WINDOWING_X11.
2010-10-28 14:27:04 -04:00
Matthias Clasen
7018c2acc7 GtkButtonBox doesn't do height-for-width
GtkButtonBox doesn't do height-for-width, therefore we should
explicitly set these methods to NULL instead of hoping that the
inherited GtkBox implementations work ok.
2010-10-28 14:25:50 -04:00
John (J5) Palmieri
a863697784 [introspection] annotate delete_text invoker to match do_delete_text v-method 2010-10-28 13:25:10 -04:00
Vincent Untz
4f9f52a6ea Port tests to GtkScrollable API instead of deprecated GtkLayout API
https://bugzilla.gnome.org/show_bug.cgi?id=633374
2010-10-28 12:18:28 -04:00
Ignacio Casal Quinteiro
60feed7360 Remove useless vars. 2010-10-28 11:54:05 +02:00
Tristan Van Berkom
c41ec57fb0 Fire a warning if there are any handlers connected to the deprecated "size-request" signal. 2010-10-28 16:00:19 +09:00
Tristan Van Berkom
18f46adb7d Added a runtime warning if any class is implementing the ->size_request() vfunc. 2010-10-28 15:41:00 +09:00
Tristan Van Berkom
2f3e51389e Merge branch 'kill-size-request' 2010-10-28 15:30:32 +09:00
Tristan Van Berkom
7af16e8d91 Make GtkPathBar use set_size_request() instead of the "size-request" signal. 2010-10-28 15:17:06 +09:00
Tristan Van Berkom
1523509467 Removed size_request from GtkToolItemGroup
Ofcourse GtkToolPalette needs real migration to height-for-width
apis, this patch just removes the need for the size_request
signal and vfunc.
2010-10-28 15:16:06 +09:00
Tristan Van Berkom
6e22c646c6 Use gtk_widget_set_size_request() instead of handling "size-request" signals. 2010-10-28 14:56:04 +09:00
Matthias Clasen
df4c566220 Add a migration guide section on size_request 2010-10-27 15:55:33 -04:00
Matthias Clasen
48d0be545c Fix the build 2010-10-27 13:01:21 -04:00
Matthias Clasen
a84b81d4fe Fix gtk_fixed_get_preferred_width
When dealing with widths, use x, not y.
Spotted by Ignacio Casal Quintero.
2010-10-27 12:53:47 -04:00
Bastien Nocera
94c8390ad7 gtk: Fix crasher when loading symbolic icons
If the style didn't include symbolic colors for either success,
warning or error, gtk_icon_info_load_symbolic_for_style() would crash.

Instead, make sure we don't try to use the colors if they're not
available, and fallback on default colors inside
_gtk_icon_info_load_symbolic_internal().
2010-10-27 17:52:30 +01:00
Owen W. Taylor
cb287cde00 GtkSocket: Add error trap around call to XFixesChangeSaveSet()
Previously any X error from XFixesChangeSaveSet() was being eaten
by the subsequent error trap when sending a client message. With
asynchronous error traps, that side effect no longer occurs, so
we need to add a proper error trap around the call to
XFixesChangeSaveSet().

https://bugzilla.gnome.org/show_bug.cgi?id=633274
2010-10-27 12:40:59 -04:00
Tristan Van Berkom
d13bf0801d Revert "Removed size_request from GtkTextView"
This reverts commit 87dfa724eb.

I pushed this to the wrong branch, ouch sorry.
2010-10-28 01:40:51 +09:00
Matthias Clasen
e3bf39b2e6 Remove size_request from GtkSocket
This is only preliminary, GtkSocket can do minimal/natural width
properly, there's code for that in the extended-layout branch.
2010-10-27 11:18:47 -04:00
Matthias Clasen
f5207ab647 Don't g_free gslice-allocated structures
This was causing memory corruption when removing remote plugs from
sockets.
2010-10-27 11:18:46 -04:00
Matthias Clasen
fb0a72dc0f Remove size_request from GtkScale 2010-10-27 11:18:46 -04:00
Tristan Van Berkom
a41436c40f Removed size_request from GtkTearoffMenuItem 2010-10-27 23:59:43 +09:00
Tristan Van Berkom
c33a2b7237 Fixed remaining call to ->size_request in GtkTextView. 2010-10-27 23:34:58 +09:00
Tristan Van Berkom
1132f54dcc Removing size_request from GtkTextView 2010-10-27 23:25:05 +09:00
Matthias Clasen
8f9807ac15 Remove size_request from GtkSeparatorToolItem 2010-10-27 10:17:58 -04:00
Matthias Clasen
cb34d4036d Use correct icon name in testtoolbar 2010-10-27 10:14:25 -04:00
Tristan Van Berkom
87dfa724eb Removed size_request from GtkTextView 2010-10-27 22:59:49 +09:00
Matthias Clasen
17c1bb4e52 Remove size_request from gtkToolItem 2010-10-27 09:54:44 -04:00
Tristan Van Berkom
7a85a31cc4 Removing size_request from GtkToolPalette
Note GtkToolPalette is internally height-for-width, it needs to
be refactored to cooperate with GTK+'s height-for-width geometry
management properly.
2010-10-27 22:51:35 +09:00
Matthias Clasen
1205f5a230 Remove size_request from GtkToolbar
This is just a bandaid fix, the toolbar should really return proper
min/natural sizes, so that we can handle the overflow properly.
2010-10-27 09:41:37 -04:00
Matthias Clasen
f7740fe580 Remove size_request from GtkTable 2010-10-27 09:33:41 -04:00
Tristan Van Berkom
add32bab71 Removing size_request from GtkTreeview.
This should be implemented as propery height-for-width by
the treeview-refactor branch. This commit includes a FIXME
comment that scroll adjustments should not be updated from
inside size requests but only after receiving an allocation.
2010-10-27 22:28:41 +09:00
Matthias Clasen
1184295620 Remove size_request from GtkRuler 2010-10-27 09:23:07 -04:00
Matthias Clasen
fc081e7847 Remove size_request from GtkPathBar 2010-10-27 09:13:26 -04:00
Matthias Clasen
7947f1933e Remove size_request from GtkSeparator 2010-10-27 08:33:42 -04:00
Matthias Clasen
d95f8ae2e2 Remove size_request from GtkRange 2010-10-27 08:10:40 -04:00
Matthias Clasen
2b728f66a8 Fix a typo 2010-10-27 07:57:19 -04:00
Matthias Clasen
9b60d27b83 Remove size_request from GtkPaned
This is not the final word; GtkPaned should really implement
height-for-width, but I didn't have time to complete that now.
2010-10-27 07:55:27 -04:00
Ivar Smolin
d8051d1f94 [l10n] Updated Estonian translation 2010-10-27 11:22:06 +03:00
Tristan Van Berkom
80ac6c9701 Removed size_request from GtkOffscreenWindow 2010-10-27 14:43:30 +09:00
Tristan Van Berkom
9a80908c91 Removed size_request from GtkNotebook 2010-10-27 14:35:04 +09:00
Tristan Van Berkom
2dca7ad91d Removed size_request from GtkMenuBar 2010-10-27 14:30:07 +09:00
Tristan Van Berkom
c8c3cf9beb Removed size_request from GtkImageMenuItem 2010-10-27 14:12:41 +09:00
Tristan Van Berkom
814cd2c3ff Removed size_request from GtkIconView. 2010-10-27 14:11:36 +09:00
Tristan Van Berkom
7e3e0636aa Remove size_request from GtkHandleBox 2010-10-27 13:56:46 +09:00
Tristan Van Berkom
393bd507bb Fixed unused variable in get_preferred_height(). 2010-10-27 13:56:13 +09:00
Matthias Clasen
ac1bb229d1 Remove size_request from GtkSpinButton 2010-10-26 23:46:06 -04:00
Matthias Clasen
e45e9b187b Remove size_request from GtkProgressBar 2010-10-26 23:30:48 -04:00
Matthias Clasen
4ca87168d4 Remove size_reuqest from GtkImage 2010-10-26 23:16:40 -04:00
Matthias Clasen
86cb8d02d3 Remove size_request from GtkLayout 2010-10-26 23:08:15 -04:00
Matthias Clasen
909a005cb2 Remove size_request from GtkHSV 2010-10-26 23:08:01 -04:00
Matthias Clasen
58354f2036 Remove size_request from GtkFixed 2010-10-26 23:07:56 -04:00
Matthias Clasen
2432bf4a58 Remove size_request from GtkEntry 2010-10-26 21:41:13 -04:00
Matthias Clasen
3bb3dc72e3 Remove size_request from GtkCheckButton 2010-10-26 21:29:58 -04:00
Matthias Clasen
f85543af98 Remove size_request from GtkCalendar 2010-10-26 21:06:40 -04:00
Matthias Clasen
8178e6016a Remove size_request from GtkButtonBox 2010-10-26 20:57:40 -04:00
Matthias Clasen
d08e8aac62 Remove size_request from GtkAssistant 2010-10-26 20:57:23 -04:00
Javier Jardón
e0e6d5b4df Fix gtk-doc markup: /* <private> */ should be /*< private >*/ 2010-10-26 18:35:04 +02:00
Tristan Van Berkom
abcfd2d5ef Merge branch 'master' into treeview-refactor 2010-10-27 01:06:58 +09:00
Tristan Van Berkom
695e427522 Added most of the request code for GtkCellAreaBox
Added the following to GtkCellAreaBox:
   - GtkCellAreaBox:spacing property defines spacing between cells
   - GtkCellAreaBox:align-cells property defines whether cells should
     be aligned with cells in adjacent rows.
   - Implementations for get_preferred_width / get_preferred_height
   - Implementations for get_preferred_height_for_width and the other
     when the box is oriented in the easy way (i.e. height_for_width()
     implemented for a vertical box, no virtual allocations done yet).
2010-10-27 01:01:58 +09:00
Fran Diéguez
fca72da479 Updated galician translations 2010-10-26 17:00:40 +02:00
Matthias Clasen
b69232e51b Stop calling GtkWidget parameters 'request'
There were at least a few places where we were using GTK_WIDGET()
on something that was already a GtkWidget*, just because it was
named wrong.
2010-10-26 10:53:46 -04:00
Tristan Van Berkom
11f8dfe3f4 Finished up initial revision of GtkCellAreaBoxIter
The interaction between this class and GtkCellAreaBox could
use some optimization, maybe the cells and their sizes should
be returned as a list and iterated over at the same time as
requesting sizes instead of the hash table approach currently
taken, however the code is clean this way for now.
2010-10-26 23:01:17 +09:00
Tristan Van Berkom
97e3ccc58b Added GtkCellAreaBox subclass to handle alignments of cells across rows inside a GtkCellAreaBox. 2010-10-26 18:22:59 +09:00
Tristan Van Berkom
b5e529f578 Added GtkCellAreaIter class
Added base class to hold alignment and overall size request information
while itterating over the size requests of various rows of a GtkTreeModel,
updated GtkCellArea/GtkCellAreaBox classes accordingly.
2010-10-26 17:14:20 +09:00
Yaron Shahrabani
bb77ea4a2c Update properties Hebrew translation. 2010-10-26 08:32:32 +02:00
Xan Lopez
9c7016ab87 gtkcomboboxtext: remove unused variable 2010-10-26 15:18:35 +09:00
Javier Jardón
5aea672e00 gtk.symbols: Add scrollable policy API 2010-10-26 06:07:43 +02:00
Javier Jardón
8dd7ae38f9 gtkfilechooserentry: Use accessor functions to access GtkEntry 2010-10-26 06:07:43 +02:00
Javier Jardón
0b72acf78d gtkspinbutton: Use accessor functions to access GtkEntry 2010-10-26 06:07:42 +02:00
Javier Jardón
f5615022a7 Use accessor functions to access GtkButton 2010-10-26 06:07:42 +02:00
Javier Jardón
8991603c88 gtktogglebutton: move public members to private structure 2010-10-26 06:07:42 +02:00
Javier Jardón
49446ed57c gtktogglebutton: Add _gtk_toggle_button_set_active private accessor
It's needed by gtkradiobutton
2010-10-26 06:07:42 +02:00
Javier Jardón
a93e79f8d2 gtkradiobutton: Use accessor functions to access GtkToggleButton 2010-10-26 06:07:42 +02:00
Javier Jardón
783d18650b gtkcheckbutton: Use accessor functions to access GtkToggleButton 2010-10-26 06:07:42 +02:00
Javier Jardón
356cfaa084 gtktoggletoolbutton: Use accessor functions to access GtkToggleButton 2010-10-26 06:07:42 +02:00
Javier Jardón
fda588d10d gail: use accessor functions to access GtkToggleButton 2010-10-26 06:07:33 +02:00
Javier Jardón
49c409c498 tests: use accessor functions to access GtkToogleButton 2010-10-26 05:02:19 +02:00
Tristan Van Berkom
8679563247 Merge branch 'master' into treeview-refactor 2010-10-26 11:37:27 +09:00
Tristan Van Berkom
209715f0ef Missed adding the scrolled window test in previous commit, added scrolled window test. 2010-10-26 11:35:04 +09:00
Tristan Van Berkom
3fe0fb4ed9 Added GtkScrollablePolicy property to scrollable interface
This patch adds the GtkScrollablePolicy type property to GtkScrollable
and implements it in all subclasses. GtkScrolledWindow observes this
property to make a good guess about when to show/hide scrollbars for
height-for-width content.

Most scrollable children do not do height-for-width *yet* but
most certainly will (toolpalette, treeview, iconview, textview
widgets all TODO), for scrollable widgets that do have a minimum
and natural size, it's important for them to observe the state
of this property in order to properly drive the scroll adjustments
according to the desired GtkScrollablePolicy. This patch makes
GtkViewport do this.

Patch also adds tests/testscrolledwindow.c to display the effects
of this property.
2010-10-26 10:15:56 +09:00
Matthias Clasen
04c1337bda Bump version 2010-10-25 18:32:37 -04:00
Matthias Clasen
a7285e6435 Include gdkrgba.h 2010-10-25 14:35:19 -04:00
Matthias Clasen
7bbaa56f53 More updates 2010-10-25 13:59:49 -04:00
Matthias Clasen
c406b6ed22 Add new GdkRGBA apis to gtk.symbols 2010-10-25 13:49:37 -04:00
Matthias Clasen
9c60da8978 Add new GdkRGBA api to symbol list 2010-10-25 13:44:43 -04:00
=Christian Persch
d3f1745493 Use g_ascii_strto[u]ll instead of strto[u]l
We don't want GtkBuilder input to be locale-dependent.

Bug #632503
2010-10-25 12:22:20 -04:00
Matthias Clasen
377e7179b8 Add tests for GdkRGBA serialization
In particular, test that serialization is not dependent on the
locale.
2010-10-25 12:10:48 -04:00
Matthias Clasen
366a37d8c1 Add some GdkRGBA tests 2010-10-25 12:01:11 -04:00
Matthias Clasen
503698f587 Support resetting cell renderer colors with NULL again
This functionality was lost when GdkRGBA was introduced.

Bug 632936
2010-10-25 11:17:24 -04:00
Jorge González
546be63ecc Updated Spanish translation 2010-10-25 16:26:28 +02:00
Richard Hughes
1d7aabee69 Fix make distcheck as gtkcomboboxentry does not exist anymore 2010-10-25 10:20:10 +01:00
Fran Diéguez
4a63814815 Updated Galician translations 2010-10-25 01:13:13 +02:00
Ignacio Casal Quinteiro
fdea6c5c19 Fix typo. 2010-10-24 22:51:51 +02:00
Matthias Clasen
52a7553b2c GtkCalendar: turn into a no-window widget
After these changes, GtkCalendar only has a few input-only windows
left for catching input events. All drawing goes to the parent
window now.
2010-10-24 14:43:05 -04:00
Matthias Clasen
bcb23945f6 Bring back lost functionality
Double-click to mark/unmark was lost a while ago.

Also add easy RTL testing.
2010-10-24 14:43:04 -04:00
Matthias Clasen
6153feb3b6 Fill out the bug section 2010-10-24 14:43:04 -04:00
Tristan Van Berkom
fe3f948d0a Implemented GtkCellLayoutIface->reorder on GtkCellAreaBox. 2010-10-24 20:08:21 +09:00
Tristan Van Berkom
468a1d3e7c Implemented basic child list handling on GtkCellAreaBox
Added the child list to GtkCellAreaBox, added _pack_start() and
_pack_end() apis to GtkCellAreaBox since they are appropriate there
and implemented GtkCellLayoutIface to override the _pack_start()/end()
methods (since the base GtkCellArea class simply forwards these apis
to the generic ->add() api on the base class).
2010-10-24 20:01:04 +09:00
Tristan Van Berkom
0722fbe7c8 Removed attribute handling from class vfuncs of GtkCellArea.
Now GtkCellArea handles attribute connections in the base class,
subclasses only need to add/remove the renderers, render them,
do geometry and handle events.
2010-10-24 19:20:10 +09:00
Khaled Hosny
5e163f79d0 Updated Arabic translation 2010-10-24 12:04:02 +02:00
Tristan Van Berkom
0e3179b669 Merge branch 'master' into treeview-refactor 2010-10-24 15:49:18 +09:00
Tristan Van Berkom
0d7fdfb36e Merge branch 'master' into treeview-refactor 2010-10-24 15:48:46 +09:00
Tristan Van Berkom
45e42ca2d2 Implemented remaining portions of GtkCellLayout iface
Now GtkCellArea provides a generic way of applying attributes
from a GtkTreeModel/GtkTreeIter, GtkCellArea bookkeeps a hashtable
of GtkCellLayoutDataFunc's and completely abstracts the applying
of data to cells... GtkCellArea implementations need only to bookkeep
the added renderers and attributes (probably we can abstract the
attribute bookkeeping in the base class as well).

Things starting to take a good and practical shape.
2010-10-24 15:44:48 +09:00
Matthias Clasen
520a6aeb8f Fix up docs 2010-10-23 23:41:08 +02:00
Matthias Clasen
d7653e7c0c Add a unique->GtkApplication migration guide 2010-10-23 22:51:38 +02:00
Matthias Clasen
1be9b7f782 Some GtkApplication cleanups
Remove no-longer-needed vfuncs, no longer existing functions,
and improve the docs here and there.
2010-10-23 21:24:24 +02:00
Matthias Clasen
3e594dd845 Fix doc build 2010-10-23 21:23:22 +02:00
Matthias Clasen
7651c231e0 Revert the id-column patch
It didn't quite turn out as I wanted it.
I'll put it in bug 619148 for now.
2010-10-23 19:34:20 +02:00
Tristan Van Berkom
051dcde4bf Fixed fallout from GtkScrollable patches.
The scrollable patch removed set_scroll_adjustments (NULL, NULL) from
gtk_tree_view_init() which ensured the treeview would have adjustments
at all times, this patch adds set_v/hadjustment (NULL) to _init to ensure
the same thing (without it, there are crashes when trying to access the
adjustments notably from set_headers_visible() in gedit).
2010-10-23 22:53:06 +09:00
Jorge González
ff5972c4cd Updated Spanish translation 2010-10-23 14:25:35 +02:00
Tristan Van Berkom
ed63ae2bd3 Fixed push/pop_recursion_check() to not fire warnings for expected code.
I.e. Since we are now calling get_preferred_width() to ensure a good 'for_size'
for get_height_for_width() we need to avoid warning about this internal expected
recursion.
2010-10-23 20:03:41 +09:00
Tristan Van Berkom
741d10ca4f Adding initial code skeleton for GtkCellAreaBox. 2010-10-23 17:01:58 +09:00
Tristan Van Berkom
8885320d21 Merge branch 'master' into treeview-refactor 2010-10-23 13:25:45 +09:00
Javier Jardón
0dd5eb4b61 docs: GtkComboBoxText: more fixes 2010-10-23 03:03:50 +02:00
Javier Jardón
d94adcf643 docs: Some fixes in GtkComboboxText notations 2010-10-23 03:01:35 +02:00
Yaron Shahrabani
f89aaf9091 Updated Hebrew translation. 2010-10-23 02:40:54 +02:00
Matthias Clasen
a94db5b3b9 Fix distcheck 2010-10-23 02:31:30 +02:00
Matthias Clasen
ae6ba3adeb NEWS for 2.91.2 2010-10-23 02:31:30 +02:00
Matthias Clasen
9fb36fff36 Add a way to associate numeric ids with combobox values
This will let us use combo boxes as property editors for
GSettings enmerations easily.
2010-10-23 02:31:30 +02:00
Javier Jardón
38dbb84095 gtkadjustment: Move documentation to inline comments 2010-10-23 00:31:37 +02:00
Javier Jardón
96f2f2ff5b gtkscrollbar: Move documentation to inline comments 2010-10-23 00:31:37 +02:00
Javier Jardón
ec0c739520 gtktreemodelfilter: Move documentation to inline comments 2010-10-23 00:31:37 +02:00
Javier Jardón
8d3b36d534 gtktreeselection: Move documentation to inline comments 2010-10-23 00:31:37 +02:00
Javier Jardón
e51daa79fe gtktreesortable: Move documentation to inline comments 2010-10-23 00:31:37 +02:00
Javier Jardón
16cf23959f gtktreeviewcolumn: Move documentation to inline comments 2010-10-23 00:31:36 +02:00
Javier Jardón
8f766d36f4 gtktreestore: Move documentation to inline comments 2010-10-23 00:31:36 +02:00
Carlos Garnacho
d2781bc74b GtkBuilder: Prepare for parsing GdkRGBA types. 2010-10-22 20:14:57 +02:00
Carlos Garnacho
d1140d0b1e GtkCellRendererText: Add [foreground|background]-rgba properties
These properties use GdkRGBA to render the cell renderer's content.
Note that Pango attributes are used to render the foreground color,
so the alpha value is currently ignored.
2010-10-22 20:14:57 +02:00
Carlos Garnacho
5fbf20c2d8 GtkCellRenderer: Add ::cell-background-rgba property
This property uses GdkRGBA in order to render the cell renderer's
background.
2010-10-22 20:14:57 +02:00
Carlos Garnacho
1bbbd005a4 GtkColorButton: Add API to deal with GdkRGBA. 2010-10-22 20:14:57 +02:00
Carlos Garnacho
cb5b74e9c6 GtkColorSelection: Add API to deal with GdkRGBA.
The hook to change the global palette is still unchanged, it is quite
tied to GdkColor and the color format used to store the palette in
GtkSettings.
2010-10-22 20:14:56 +02:00
Carlos Garnacho
e351a48d6a Make gtk_icon_info_load_symbolic() Take GdkRGBA colors. 2010-10-22 20:14:56 +02:00
Carlos Garnacho
684c9415ee GtkCellView: Add gtk_cell_view_set_background_rgba()
A ::background-rgba property was also added, this API is meant
to replace the gtk_cell_view_set_background_color() call.
2010-10-22 20:14:56 +02:00
Carlos Garnacho
ce06043f17 GdkWindow: Add gdk_window_set_background_rgba()
This new function takes a GdkRGBA in order to set the background to
an alpha color. Keep in mind that RGBA visuals and a composited environment
are still necessary to have an alpha background displayed.
2010-10-22 20:14:56 +02:00
Carlos Garnacho
5a5f8081f0 Add GdkRGBA struct to supersede GdkColor
GdkRGBA is a boxed struct similar to GdkColor, with the difference
that it stores alpha information as well, and colors are stored in
[0..1] doubles, in the cairo spirit.

gdk_cairo_set_source_rgba() has been also added to allow easier handling
of this new type.
2010-10-22 20:14:56 +02:00
Matthias Clasen
c750003168 Point to GtkGrid from the GtkBox and GtkTable docs 2010-10-22 19:59:29 +02:00
Matthias Clasen
d2eac1bf81 Remove some warnings 2010-10-22 19:28:32 +02:00
Matthias Clasen
09ec50af90 Remove GtkScrollablePolicy again
This was a miscommunication, the properties need to live elsewhere.
2010-10-22 19:24:03 +02:00
Matthias Clasen
0d9ebb501d Move min-display-width/height to GtkScrolledWindow
It is just too annoying to have to implement these properties in
every scrollable. Instead, we now have ::min-content-height/width
in GtkScrolledWindow.

We also add GtkScrollablePolicy to determine how to size the
scrollable content.
2010-10-22 19:21:17 +02:00
Emmanuele Bassi
ce5a29bc38 recent-manager: Coalesce multiple changes
Since the ::changed implementation of GtkRecentManager implies a
synchronous write operation, when we receive multiple requests to emit a
::changed signal we might end up blocking.

This change coalesces multiple ::changed emission requests using the
following sequence:

  • the first request will install a timeout in 250 ms, which will
    emit the ::changed signal

  • each further request while the timeout has not been emitted
    will increase a counter

      ‣ if the counter reaches 250 before the timeout has been
        emitted, then the RecentManager will remove the timeout
        source and force a signal emission and reset the counter

This sequence should guarantee that frequent ::changed emission requests
are coalesced, and also guarantee that we don't let them dangle for too
long.

https://bugzilla.gnome.org/show_bug.cgi?id=616997
2010-10-22 18:08:48 +01:00
Christian Dywan
5ef2b46d64 Don't declare various unused variables in gtk_grid_set_orientation 2010-10-22 19:05:40 +02:00
Alberto Garcia
d6a73fd5b0 Assign all g_signal_connect() and friends to gulong variables
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=87821
2010-10-22 18:58:47 +02:00
Javier Jardón
56d5b45443 GtkExpander: avoid use of gtk_get_event_widget()
We can compare the window to the window instead of the widget to the widget.
2010-10-22 18:21:44 +02:00
Javier Jardón
8999053b5f docs: Add gtk-doc notation
to emphasize that GtkMisc and GtkAdjustment are not encouraged in new code
2010-10-22 17:59:38 +02:00
Michael Natterer
1f77384ab3 gtk: undef DISABLE_DEPRECATED around including our own header
so we can see our own deprecated API and don't get warnings.
2010-10-22 17:10:49 +02:00
Michael Natterer
3dc1f09772 gtk: use the new scrollable API to get to the scroll adjustments 2010-10-22 17:10:49 +02:00
Richard Hughes
585d7192fd Fix make dist now that gtkcomboboxentry does not exist 2010-10-22 16:07:55 +01:00
Tristan Van Berkom
d26ac6421b Fixed problems with combination of height-for-width apis and
alignment/margin vfuncs adjust_size_request/allocation

Now get_height_for_width() will internally update the for_width
before passing it to the real height_for_width() vfunc, allowing
margins and extra space for alignments to be stripped, thus requesting
sufficient height for greater than natural widths (and also accounting
for margins properly). Test case adjusted in testadjustsize to ensure
proper behavior.
2010-10-23 00:11:37 +09:00
Michael Natterer
a46dec176e gtk: use the new scrollable API to get scroll adjustments 2010-10-22 17:03:21 +02:00
Michael Natterer
8e7aed9489 gtk: fix tool palette scroll adjustment setting
Create a new adjustment if there was *no* adjustment passed in, not
the other way around. Also remove unused function
gtk_tool_palette_set_adjustment().
2010-10-22 17:01:58 +02:00
Michael Natterer
6d2e4c26bd gtk: return 0 not NULL from functions returning gint 2010-10-22 16:54:45 +02:00
Matthias Clasen
8cd13d09e8 Discourage use of GtkMisc and GtkAlignment 2010-10-22 16:52:08 +02:00
Matthias Clasen
a9204e65dd Remove child flipping from GtkGrid
We decided that this is not really the right thing to do, for one
thing, because it doesn't flip ::expand and ::margin properties
of children.
2010-10-22 16:43:45 +02:00
Matthias Clasen
8f0ae8e8a3 Add GtkGrid
GtkGrid is a container similar to GtkTable, without legacy
properties and unnecessary restrictions.
It does height-for-width geometry management.
2010-10-22 16:42:50 +02:00
Matthias Clasen
c10127156f Make the docs build 2010-10-22 16:42:50 +02:00
Matthias Clasen
a7465c3479 Fix a typo 2010-10-22 16:42:50 +02:00
Michael Natterer
ba9efeda4b gtk: add gtk_entry_get_text_area() and gtk_entry_get_icon_area()
as replacement for the removed get_foo_window() functions, so draw()
callbacks can figure where to paint.
2010-10-22 14:48:08 +02:00
Christian Persch
95610f2a14 recent-chooser: Use gtk_recent_info_get_gicon()
https://bugzilla.gnome.org/show_bug.cgi?id=617174
2010-10-22 12:20:55 +01:00
Christian Persch
b0fe3e49bb Add gtk_recent_info_get_gicon()
https://bugzilla.gnome.org/show_bug.cgi?id=617174
2010-10-22 11:58:00 +01:00
Emmanuele Bassi
27b71e0143 recent-manager: Fix the documentation
The default RecentManager is not destroyed at the end of the process.

https://bugzilla.gnome.org/show_bug.cgi?id=602794
2010-10-22 11:54:53 +01:00
Emmanuele Bassi
03fc0dd5ca recent-manager: Add RecentInfo.create_app_info()
A simple wrapper that makes it possible to create a GAppInfo from a
GtkRecentInfo blob.
2010-10-22 11:54:53 +01:00
Emmanuele Bassi
06758f1ab5 recent-manager: Move the file under XDG_USER_DATA
Do not use $HOME/.recently-used.xbel any more. No migration path is
included: we're breaking API anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=524304
2010-10-22 11:53:09 +01:00
Tadej Borovšak
55196a705f Add GtkScrollable interface
The GtkScrollable interface provides "hadjustment" and "vadjustment"
properties that are used by GtkScrolledWindow. It replaces
the ::set_scroll_adjustment signal. The scrollable interface
also has ::min-display-width/height properties that can be
used to control the minimally visible part inside a scrolled window.
2010-10-22 11:03:45 +02:00
Tristan Van Berkom
705e7ee100 Added GtkCellArea to the build
Starting to form a good api, implemented most of GtkCellLayout iface
on the base class routing the apis through the new class vfuncs.
2010-10-22 16:41:52 +09:00
Tristan Van Berkom
86b3c1b65e Enhanced GtkWidget documentation with regards to height-for-width geometry management. 2010-10-21 22:53:06 +09:00
Tristan Van Berkom
8bb20925ed Adding vague initial draft of GtkCellArea to the codebase (treeview-refactor branch). 2010-10-21 22:46:10 +09:00
Benjamin Otte
5e8baa5f63 container: Fix typo that caused madness
Interestingly, this typo has been causing madness since 2 months, but
Mitch complained only today.
2010-10-21 15:31:07 +02:00
Benjamin Otte
e428a0937a configure: Enable silent rules by default
Go Hackfest!
2010-10-21 15:08:46 +02:00
Benjamin Otte
e6f95e9316 entry: No, you can not haz ununused variables 2010-10-21 15:08:14 +02:00
Christian Dywan
5862075e9d comboboxtext: Add gtk_combo_box_text_remove_all()
https://bugzilla.gnome.org/show_bug.cgi?id=324899
2010-10-21 14:30:11 +02:00
Benjamin Otte
707d05bac0 progressbar: Remove declaration of nonexisting function 2010-10-21 14:30:11 +02:00
Benjamin Otte
715f57790b socket: Fix compiler issues 2010-10-21 14:30:11 +02:00
Matthias Clasen
596da84312 Make GtkEntry a no-window widget
Use input-only windows for capturing input, and just draw onto
the parent window. This allows themes to make entries with rounded
corners. Patch by Boram Park.

https://bugzilla.gnome.org/show_bug.cgi?id=632736
2010-10-21 13:17:33 +02:00
Michael Natterer
e4654327df gtk: change GtkIconView to "support" actual trees
Remove the check for GTK_TREE_MODEL_LIST_ONLY and make the view
display only the first level of the tree, ignoring all insert, remove
etc. events on the model's branches. This enables generic application
code which always produces GtkTreeStores (also for flat lists) to
display grids of these flat trees.
2010-10-21 12:57:55 +02:00
Matthias Clasen
331323e5c7 Make GtkSpinButton a no-window widget
We still retain an input-only window here for now, but all
the painting is done to the parent window.
2010-10-21 11:41:20 +02:00
Matthias Clasen
f4d57dbe98 Make GtkProgressBar a no-window widget
It doesn't really have a good reason for having a window.
2010-10-21 11:40:46 +02:00
Matthias Clasen
0a3fa74a52 Properly propagate expand flags
When showing a widget that already has need_compute_expand set,
we need to queue the recomputation on the parent.
2010-10-21 11:14:26 +02:00
Ryan Lortie
c7e1f567b6 GtkButton: avoid use of gtk_get_event_widget()
We can compare the window to the window instead of the widget to the
widget.
2010-10-21 00:37:29 +02:00
Ryan Lortie
56d2590b49 GtkIMContextSimple: avoid gdk_window_get_user_data
We lookup a widget to call a function on GtkWidget that ends up just
performing an operation directly on the GdkWindow again anyway
(beeping).  There's already fallback code at the point of the call that
does exactly that anyway, so just do that all of the time.
2010-10-20 23:58:20 +02:00
Javier Jardón
3fcec464ac gtk.symbols: Add missing GtkApplication api 2010-10-20 20:46:48 +02:00
Michael Natterer
0f2d1547f8 gdk: add alpha to the offscreen window's surface if its visual is RGBA 2010-10-20 17:44:23 +02:00
Michael Natterer
c2f29f2cef gtk: clean up GtkWidget signals
- add slots for damage-event, move-focus and keynav-failed
- reorder signals a bit so related stuff is grouped together
- some indentation fixes in the GtkWidgetClass
- remove the move-focus compat hack from GtkTextView
- turn the move-focus compat hack in GtkWindow into properly
  implementing GtkWidget::move-focus()
2010-10-20 17:02:38 +02:00
Emmanuele Bassi
ef9a6f205c Re-add copyright notice
https://bugzilla.gnome.org/show_bug.cgi?id=632677
2010-10-20 12:05:23 +01:00
Richard Hughes
55f76d8bee Do not install the hello-world and window-default example programs 2010-10-20 11:57:58 +01:00
Michael Natterer
283f7ddd6c tests: gdk_device_get_history() takes "gint *n_events" again, not guint 2010-10-20 12:50:21 +02:00
Emmanuele Bassi
2cc059a0e7 Split off gtkprivate.h
The gtkprivate.h header contains GtkWidget-specific private symbols that
are not useful except in a handful of cases. Basically everything
includes gtkprivate.h for the GTK_PARAM_* macros.

https://bugzilla.gnome.org/show_bug.cgi?id=632539
2010-10-20 10:34:26 +01:00
Emmanuele Bassi
9b34bf17e5 build: Do not install gtkprivate.h
This is a private header file, and it should *not* be installed. It
should also not be scanned by the introspection machinery.

https://bugzilla.gnome.org/show_bug.cgi?id=632539
2010-10-20 10:34:25 +01:00
Emmanuele Bassi
9f9edb662e settings: Move setting property registration in gtksettings.c
Some GtkSettings property are registered by other classes. This leads
to the "interesting" issue that setting GtkSettings:gtk-button-images
requires that the GtkButton class is referenced first - or that a
GtkButton is created.

https://bugzilla.gnome.org/show_bug.cgi?id=632538
2010-10-20 10:34:25 +01:00
Javier Jardón
9f035742e3 gtkapplication: fix docs 2010-10-20 11:07:11 +02:00
Matthias Clasen
0219eea4d7 Remove GtkComboBoxEntry and the combo box text api 2010-10-20 11:02:03 +02:00
Ryan Lortie
c5ebb61b6f GtkApplication: add gtk_application_get_windows()
Return a GList of the GtkWindow objects for each window that has the
application set as its "application" property.
2010-10-19 21:10:02 +02:00
Javier Jardón
9b3ee686ea Completely remove gtk_widget_hide_all
This completes commit d1a9d764a8
2010-10-19 20:25:33 +02:00
Matthias Clasen
d1a9d764a8 Remove gtk_widget_hide_all()
it's useless and a trap for programmers

https://bugzilla.gnome.org/show_bug.cgi?id=438318
2010-10-19 19:31:38 +02:00
Matthias Clasen
4824a73084 Add padding to class structs 2010-10-19 19:07:36 +02:00
Matthias Clasen
921f069269 Remove the outdated faq
It mainly contains information that is already covered in the
API docs, or is outdated, or refers to no longer existing widgets.
2010-10-19 18:22:08 +02:00
Kristian Rietveld
6e4643de14 Make gdk_pixbuf_get_from_surface() accept negative src_x,y coordinates 2010-10-19 14:07:39 +02:00
Kristian Rietveld
046ca498de dnd-quartz: get hot spot from device offset for surface and use this 2010-10-19 14:07:39 +02:00
Kristian Rietveld
8ac7f64123 dnd-quartz: take hot spot into account when setting up drag 2010-10-19 14:07:39 +02:00
Michael Natterer
a1134e5622 gdk: change signature of gdk_device_get_history() back to what it used to be
"n_events" went back from guint to gint.
2010-10-19 13:30:42 +02:00
Jorge González
e09e8718f8 Updated Spanish translation 2010-10-19 12:39:25 +02:00
krishnababu k
7eb42bbc7f Updated Telugu Translations 2010-10-19 15:57:59 +05:30
Javier Jardón
04900c8caa docs: Update templates 2010-10-19 03:31:02 +02:00
Javier Jardón
bf4ee1b52b configure.ac: Update Glib required version to 2.27.1 2010-10-19 03:06:49 +02:00
Ryan Lortie
ab5fb5dee5 GtkApplication rewrite 2010-10-19 01:31:09 +02:00
Benjamin Otte
ff142ac2ef gtk: Add gtk_widget_queue_draw_region()
People were requesting it and it mirrors the behavior of GdkWindow.
2010-10-18 19:22:44 +02:00
Benjamin Otte
9e31ef616d cups: Add hack to work around gcc warning
gcc warns if you switch on values that are not part of the enum you're
switching on. So handle those cases in the default handler by using if
statments.

PS: Someone file a bug against cups about this?
2010-10-18 19:22:44 +02:00
Benjamin Otte
3b8a264a5e print: Make things compile again
Remove workaround for entries - the general codepath should just work.
2010-10-18 19:22:44 +02:00
Benjamin Otte
3a55137709 selection: Hi, I can't get my code right
Also, I refuse to compile with -Werror, so I don't notice.
2010-10-18 19:22:44 +02:00
Benjamin Otte
6e90804b30 notebook: Hi, I can't get my function prototypes right
Also, I refuse to compile with -Werror
2010-10-18 19:22:43 +02:00
Benjamin Otte
e0d7da3c8c x11: Set GDK_PIXBUF_ENABLE_BACKEND before including files
Otherwise we get an undefined gdk_pixbuf_set_option().
2010-10-18 19:22:43 +02:00
Benjamin Otte
206b41c6f6 widget: Remove special case in gtk_widget_queue_draw_area()
This path would only do anything where widget->window was not located at
widget->allocation.x/y but at a different position. This should never
happen in the real world. But if it does, GTK3 will break for you.
Better fix your widget.
2010-10-18 19:22:43 +02:00
Colin Walters
d34b9ed192 introspection: Filter out all headers ending in "private"
We were including at least "gtkprivate.h" before.
2010-10-18 13:02:41 -04:00
Ryan Lortie
8cca398a2f Gdk X11: Add setter for startup notify ID
For launch requests coming in over DBus.
2010-10-18 17:21:22 +02:00
Matthias Clasen
b613cc6478 Don't add a second cell renderer
When has-entry is TRUE, GtkComboBox already adds a cell renderer
for the text column, so avoid adding a second one in GtkComboBoxText.

https://bugzilla.gnome.org/show_bug.cgi?id=632381
2010-10-18 08:13:41 -04:00
Jorge González
8d456e3c50 Updated Spanish translation 2010-10-18 11:32:45 +02:00
Christian Dywan
6db62c6617 Use new GtkComboBoxEntry in all tests 2010-10-18 09:13:44 +02:00
Christian Dywan
f891c58432 Don't use old GtkComboBoxEntry in gail
Use gtk_combo_box_get_has_entry instead.
2010-10-18 09:13:44 +02:00
Christian Dywan
ba32934ea6 Add gtk_combo_box_{get,set}_popup_fixed_width to gtk.symbols 2010-10-18 09:13:44 +02:00
Kristian Rietveld
cc22469b69 Icon view must layout before the draw handler is called
gtk_icon_view_layout(), which can resize the bin window and thus
underlying surfaces, could be called from gtk_icon_view_draw().  So
we have to make sure that layouting is done before the draw handler is
called.  We use the same construction as in tree view here, the layout
idle handler is installed with a higher priority than
GDK_PRIORITY_REDRAW and we wrap the call to gdk_window_process_updates()
in a new function that will flush the layout queue beforehand.
2010-10-17 10:30:46 +02:00
Kristian Rietveld
f27d7bdea5 Implement gtk_drag_set_icon_surface in gtkdnd-quartz 2010-10-17 10:30:46 +02:00
Kristian Rietveld
d2c6533107 Fix typo in docs 2010-10-17 10:30:46 +02:00
Kristian Rietveld
47969615b2 Use cairo_surface_destroy instead of g_object_unref 2010-10-17 10:30:46 +02:00
Takayuki KUSANO
b06f05e72c Updated Japanese translation 2010-10-17 15:12:27 +09:00
Tristan Van Berkom
31abdf723a Allow GtkComboBox popup to be wider than the combo itself.
This patch adds a GtkComboBox:popup-fixed-width to decide if the
popup's width should be a fixed width matching the combo's allocated width.

The patch includes a kindof hack to work around treeviews currently
not supporting height-for-width geometry (for list-mode only), this
hack can be safely removed once treeviews start reporting natural
widths properly.
2010-10-17 14:11:27 +09:00
Matthias Clasen
17cd0db6a8 Fix some GtkComboBoxText problems
We must use entry-text-column explicitly to 0, since it defaults to -1.
2010-10-16 08:17:34 -04:00
Matthias Clasen
a62e1b95bc Fix some GtkComboBoxText problems 2010-10-16 08:16:55 -04:00
Kjartan Maraas
098d23c096 Updated Norwegian bokmål translation 2010-10-16 12:22:01 +02:00
Javier Jardón
f2ae6814e7 docs: Remove template about deprecated GtkItemFactory 2010-10-16 05:24:24 +02:00
Matthias Clasen
963f6c587a Bump version to 2.91.2 2010-10-15 22:38:37 -04:00
Matthias Clasen
2dd3317522 More distcheck fixes 2010-10-15 21:55:17 -04:00
Matthias Clasen
c6c1871734 Add filechooser settings gschema to EXTRA_DIST 2010-10-15 21:20:13 -04:00
Matthias Clasen
bd7e3852ac More examples removal 2010-10-15 20:59:38 -04:00
Matthias Clasen
9ae2c1fcf9 Drop crazy listing of all example files
This will likely mean that the old examples will not appear in the
tarball until they have been integrated in the new 'getting started'
docs.
2010-10-15 20:53:07 -04:00
Matthias Clasen
39529dcfed Fix make distcheck 2010-10-15 20:48:37 -04:00
Matthias Clasen
4869aeb28d Update POTFILES.in 2010-10-15 20:20:25 -04:00
Matthias Clasen
a0aed8402b Remove a private symbol from gtk.symbols 2010-10-15 20:14:11 -04:00
Matthias Clasen
4f9175d7fc Temporarily disable test involving file choosers
After the filechooser got converted to use gsettings, it can no
longer be used uninstalled, breaking make distcheck here.

Also disable the treeview-scrolling tests, since they are failing
here.
2010-10-15 20:14:11 -04:00
Matthias Clasen
f87b26a653 Fix up symbol lists 2010-10-15 20:14:11 -04:00
Javier Jardón
45c463e376 GtkComboBoxText: Use gtk_combo_box_text_remove instead gtk_combo_box_text_remove_text 2010-10-16 02:07:38 +02:00
Matthias Clasen
2dbfca9d02 Update NEWS for 2.91.1 2010-10-15 19:01:36 -04:00
Matthias Clasen
88d74e23fa Remove tutorial from configure.ac 2010-10-15 18:18:58 -04:00
Marek Kasik
95e69afea8 Parse lpoptions correctly
Parse options job-sheets, job-hold-until and sides correctly.
Add get_lpoption_name() for translation of lpoption names to
gtk option names. Usable for options which values don't need
conversion (e.g. number-up, number-up-layout, job-billing
and job-priority).
Rename array option_names to ppd_option_names to reflect its
purpose better. Rename get_option_name() to get_ppd_option_name()
because of the same reason.
2010-10-15 17:01:16 -04:00
Christian Dywan
d70b7f49b6 Use property system to coerce model data to G_TYPE_STRING
Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=423201
2010-10-15 17:00:13 -04:00
Matthias Clasen
50cbd23d5b docs: cross-reference to GtkComboBoxText 2010-10-15 16:58:28 -04:00
Matthias Clasen
3e9bdf6fd9 Add docs for GtkComboBoxText 2010-10-15 16:58:27 -04:00
Matthias Clasen
3e2a259a78 docs: fix a cross-reference 2010-10-15 16:58:27 -04:00
Matthias Clasen
43250e8faf Deprecate the old combobox text convenience api 2010-10-15 16:58:27 -04:00
Javier Jardón
e7f51ef6a4 Use the new GtkComboBoxText API
Also remove mentions of the old text convenience API from the docs,
and point to GtkComboBoxText instead.
2010-10-15 16:58:27 -04:00
Matthias Clasen
99cfbecf46 Add gtk_combo_box_text_new_with_entry
Also, make use of the configured entry_text_column.
2010-10-15 16:58:26 -04:00
Matthias Clasen
8353754c17 docs: adjust Since tags 2010-10-15 16:58:26 -04:00
Christian Dywan
a16722fc3a Use text column value in GtkComboBoxText 2010-10-15 16:58:26 -04:00
Christian Dywan
7a5a5e9c5d Added GtkComboBoxText api
This is a derived class of GtkComboBox to replace the
gtk_combo_box_*_text() convenience API.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=612396

Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-10-15 16:58:26 -04:00
John Ralls
27ad64dccf Bug 631719 - Restore second, more important, call to set label from the menu item. 2010-10-15 13:14:19 -07:00
Javier Jardón
80d3f1fcda docs: update OSX port project page 2010-10-15 20:55:32 +02:00
Alberto Garcia
8d05e74212 Make gtk_accelerator_get_default_mod_mask() return a GdkModifierType
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=313350
2010-10-15 14:46:22 -04:00
Christian Persch
b5621b3c89 Take cursor hotspot from pixbuf if available
Allow -1 for the hotspot coordinates in gdk_cursor_new_from_pixbuf,
if the pixbuf contains the x_hot/y_hot options with appropriate values.

Bug #632140.
2010-10-15 14:38:21 -04:00
Javier Jardón
cbc358ead8 docs: Document GtkScrolledWindow's signals
Based on a patch by Björn Lindqvist
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=351247
2010-10-15 20:34:07 +02:00
Matthias Clasen
921fc8807c Deprecate gtk_init_add, gtk_remove_add and friends
This functions are going to be removed in GTK+ 3.

https://bugzilla.gnome.org/show_bug.cgi?id=629955
2010-10-15 14:13:32 -04:00
Colin Walters
18578b33c5 Add boxed type and constructor
This allows bindings to sanely construct these.

https://bugzilla.gnome.org/show_bug.cgi?id=632095
2010-10-15 13:54:37 -04:00
Matthias Clasen
f87023d8ee Forgotten file 2010-10-15 13:07:08 -04:00
Matthias Clasen
0ff28d72f6 examples: build examples that are included in the docs
We build the examples that are included in the 'getting started'
chapter of the docs to prevent them from bitrotting. Also
remove the awk scripts used to extract the old examples from
the tutorial, since the tutorial is gone. I'm still leaving
the examples themeselves in place, for possible inclusion in
'getting started' later on.
2010-10-15 13:02:50 -04:00
Matthias Clasen
ef7fddac3b docs: Drop the old tutorial
The tutorial is outdated, essentially stuck at GTK+ 2.0.
At this point, it is more misleading than helpful.
2010-10-15 13:02:50 -04:00
Matthias Clasen
28cb8583c3 docs: move some tutorial content to the reference
We add a "Getting started" chapter that will grow into a
(hopefully) non-outdated, maintained tutorial. For now, it
includes two minimal examples by xincluding them.
2010-10-15 13:02:50 -04:00
Emmanuele Bassi
f085c8b272 docs: Move the introduction of the tutorial in the reference
The tutorial should just go away, but some of its contents can be moved
to the API reference as chapters.

https://bugzilla.gnome.org/show_bug.cgi?id=632059
2010-10-15 13:02:50 -04:00
Benjamin Otte
22d28ef47d x11: Don't set ParentRelative if the parent's visual is different
It's like 82e6e32c, but when a pattern is given as argument.

https://bugzilla.gnome.org/show_bug.cgi?id=632218
2010-10-15 17:10:05 +02:00
Matthias Clasen
56e797397b Improve GtkBox and GtkTable docs a bit
This adds some details gleaned from the tutorial, before its
impending demise.
2010-10-15 10:58:35 -04:00
Emmanuele Bassi
17ffcb0cc6 link-button: Add ::activate-link signal
We cannot use the GtkButton::clicked signal to override the default
behavior of GtkLinkButton (i.e. call gtk_show_uri()), because
GtkButton::clicked is registered as a RUN_FIRST signal, which obviously
prevents any other signal handler connected to it to stop the
propagation before the class handler has a chance to run.

For this reason we can add a GtkLinkButton::activate-link signal, which
will be emitted by the default GtkButton::clicked signal handler; the
::activate-link signal has a boolean return value, which allows simpler
code for stopping the propagation to the next signal handler.

https://bugzilla.gnome.org/show_bug.cgi?id=632150
2010-10-15 10:36:01 +01:00
Tristan Van Berkom
d7c7f010b0 Removed screwy GtkScrolledWindow logic
Removed portion of scrolled-window that observes user-set
size request data (aux_info->width/height) on the child directly
in order to derive it's minimum possible size... if the scrolled
window has (auto/always) scrollbars in a said orientation; only
request enough space for the scrollbars (bug 631976).
2010-10-15 14:14:14 +09:00
Matthias Clasen
479dc131ee Implement get_preferred_width/height in GtkEventBox
And drop size_request.
2010-10-14 23:04:24 -04:00
Matthias Clasen
aaf0f0f5c3 Use gtk_container_handle_border_width() in GtkEventBox 2010-10-14 22:34:39 -04:00
Matthias Clasen
bda1f35585 Inclusion cleanups in sources
Try to do inclusions in the same sequence, more or less.
2010-10-14 22:09:36 -04:00
Matthias Clasen
88ef199ed7 Inclusion cleanups in headers 2010-10-14 22:08:53 -04:00
Matthias Clasen
9d644e9d2d Make gdk.h an include-only header
Move declarations to other headers, and introduce some new ones:
gdkmain.h, gdkrectangle.h, gdkthreads.h.
2010-10-14 22:08:48 -04:00
Matthias Clasen
e613d26448 Drop dead gxid_proto.h header
This header is no longer used.
2010-10-14 22:08:26 -04:00
Matthias Clasen
9ff4f0819f Some GDK documentation fixes 2010-10-14 21:45:56 -04:00
Fridrich Štrba
733f1710c6 Enable the build of MS Windows engine again
The MS Windows engine compiles anew, so enable it so that one can fix remaining issues
2010-10-14 20:56:30 +02:00
Federico Mena Quintero
85e47b5c4e Part of bgo#613728 - [GtkTreeView] Focus the list, not the headers, when Tab-focusing
The idea is that it is way more common to want to manipulate the
actual list, rather than the headers.  Once you Tab into the treeview
(and the list part gets the focus), you can use Shift-Tab to focus
the headers.

This means that some hysteresis is added to the focus chain, but
it makes the treeview a lot more convenient to focus with the keyboard.

Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-10-14 13:17:46 -05:00
Kristian Rietveld
5cbb309841 Initialize device_cursor hash table before creating impl window 2010-10-14 18:01:51 +02:00
Kristian Rietveld
aeec832f0e Do not call validate_visible_area() from the draw method
Because validate_visible_area() can modify the window size (and thus
the underlying surface), it should not be called from within the draw
method.  Given that the presize handler is run with a higher priority
than redraw, and the presize handler will validate the visible area,
there should not be cases wherein the draw method is called and
validate_visible_area() has not been run yet.

However, one such a case was gdk_window_process_updates(), which would
trigger the draw method at some point.  We now work around this
by factoring this in a new gtk_tree_view_bin_process_updates() function
that will run the presize handler first if needed.

Note: for other platforms, it might still be the case that the draw
method is called and validate_visible_area() has not been run yet.
(For example the Mac backend calls gdk_window_process_updates() from
the drawRect method, and the redraw-in-idle handling thus works
differently).  This does not seem to be a problem now, if
it will be in the future we need to take care of that then.
2010-10-14 17:26:17 +02:00
Kristian Rietveld
4fc31dd87a Add test for bug 163214 2010-10-14 16:47:00 +02:00
Kristian Rietveld
51820d3e34 Add test for bug 111500
This test is constructed in such a way that it breaks when you
(currently!) do not trigger a size-request from validate_visible_area.
Especially row expansion appears to have a need for this currently.
2010-10-14 16:47:00 +02:00
Kristian Rietveld
e774e235d7 Add unit test for bug 93584 2010-10-14 16:47:00 +02:00
Kristian Rietveld
359818d6b7 Also test scrolling to a new row in a mixed height model 2010-10-14 16:47:00 +02:00
Martin Schlemmer
3d31254fd9 Trying to fix MS Windows engine 2010-10-14 14:20:04 +02:00
Matthias Clasen
34b117865a Initialize variables
valgrind was complaining about uninitialized values here, and
sure enough, gdkdevice-xi.c doesn't set device position.
2010-10-14 08:14:33 -04:00
Benjamin Otte
407b73dd80 build: Require cairo-gobject for GDK
With the new signal added, GDK now also requires cairo-gobject.
2010-10-14 13:53:23 +02:00
Michael Natterer
4ca2632d42 gdk: add slots for all GdkWindowObject signals
Also add padding for future extension.
2010-10-14 13:43:08 +02:00
Michael Natterer
9d9742f1e5 Bug 631599 - Allow to use arbitrary surfaces for offscreen windows
Add signal GdkWindow::create-surface which allows to use any
surface type as storage for offscreen windows.

Test the new signal in tests/gdkoffscreenbox.c
2010-10-14 13:25:23 +02:00
Michael Natterer
10c76c1c95 gtk: add cast to fix warning in my last commit 2010-10-14 11:35:30 +02:00
Cody Russell
44cb3bcfed Implement style_set() for GtkWindow to resize window grips when the style changes. 2010-10-13 23:04:11 -05:00
Tristan Van Berkom
9612c64817 Deprecate GtkComboBoxEntry in favor of added properties to GtkComboBox
GtkComboBox now sports a construct-only "has-entry" property which
decides if it uses a GtkEntry to allow additional user input. Also
it has a new "entry-text-column" to fetch strings for the entry
from the model.

This patch deprecates the GtkComboBoxEntry and updates the rest of GTK+
to use the new semantics on GtkComboBox instead.

GtkComboBoxEntry will be removed altogether before GTK+ 3, in a
later commit.
2010-10-13 21:52:27 -04:00
Matthias Clasen
7c8ee80c5a Add new API to docs and symbol list 2010-10-13 11:24:56 -04:00
Matthias Clasen
7791013754 Support GtkWidget expand properties in GtkNotebook
We expand a tab if either tab-expand is set, or the generic widget
expand property in the correct direction is set. And we do not
propagate expand flags from tab labels to the notebook, only
the expand flags from the pages.
2010-10-13 10:49:06 -04:00
Matthias Clasen
48de50df89 Support GtkWidget expand properties in GtkTable
We expand a child when it either has the table-specific expand flag
or the generic expand property set. Override compute_expand so that
it also takes the table-specific expand flags of children into
account.

https://bugzilla.gnome.org/show_bug.cgi?id=628902
2010-10-13 10:49:06 -04:00
Matthias Clasen
29ce9e679a Add a GtkTable testcase 2010-10-13 10:49:06 -04:00
Havoc Pennington
8abb18f910 Support GtkWidget expand properties in GtkBox
This consists of:
* expand a child if either child->expand || gtk_widget_get_expand(child)
* override compute_expand so that child->expand will cause us to
  return TRUE for gtk_widget_get_expand()

https://bugzilla.gnome.org/show_bug.cgi?id=628902
2010-10-13 10:49:06 -04:00
Havoc Pennington
7597a35477 add tests/testexpand.c used to test the expand props on GtkWidget
There are two colored boxes with toggle buttons nested
inside several GtkBox. Toggling these to expand mode
should automatically propagate expansion up through
the several GtkBox such that resizing the window
results in resizing the colored boxes.

https://bugzilla.gnome.org/show_bug.cgi?id=628902
2010-10-13 10:49:04 -04:00
Havoc Pennington
031856eb33 Add horizontal and vertical expand flags, compute_expand() to GtkWidget
GtkWidget now has flags for horizontal and vertical expand, and
a compute_expand() method. compute_expand() is used by containers
to set a default expand flag. (If a widget has expand set explicitly,
it always overrides the results of compute_expand.)

GtkContainer has a default implementation of compute_expand which
simply walks over all child widgets and sets expand=TRUE
if any child is expanding.

The overall effect is that you only have to set expand on
leaf nodes in the widget tree, while previously you had to
set expand all the way up the tree as you packed every
container. Also, now containers need not have their own child
properties for expand.

For old containers which do have "expand" child properties,
they should override compute_expand and include the child
properties in whether the container is expand=TRUE.
Also, the old container should use
"child_prop_expand || gtk_widget_compute_expand()" everywhere
it previously used simply "child_prop_expand"

https://bugzilla.gnome.org/show_bug.cgi?id=628902
2010-10-13 10:40:07 -04:00
Matthias Clasen
7d5a85c3ad Some more resize grip cleanups
Don't recompute hints whenever we determine the drag edge, and
take the drag edge into account when deciding whether to show
the grip.
2010-10-13 10:39:09 -04:00
Matthias Clasen
9e661ed0e9 Unify handling of GtkWindow::resizable property 2010-10-13 10:23:51 -04:00
Matthias Clasen
b36819957f Remove GtkWrapBox from the docs, too 2010-10-13 10:21:04 -04:00
Matthias Clasen
dbdc9c99e5 Make GtkRecentManager use standard icon names for themed icons 2010-10-13 10:18:03 -04:00
Matthias Clasen
f8b8c95f45 Some resize grip cleanups
Safe space in the private struct, always set the cursor when we
update visibility, since the cursor depends on resizability conditions
too. And don't set the shape needlessly.
2010-10-13 09:51:54 -04:00
Tristan Van Berkom
e3cc39cb98 Removed all traces of GtkWrapBox from GTK+. 2010-10-13 22:26:44 +09:00
Matthias Clasen
5e1d8814ca Don't start a drag if we are not resizable
This was caused by get_drag_edge() returning -1 to mean 'no drag',
but callers didn't really pay attention. Change get_drag_edge()
to return a boolean instead.
2010-10-13 08:31:06 -04:00
Christian Persch
803233cc14 Use GSettings for the filechooser settings
Bug #630850.
2010-10-13 14:31:07 +02:00
Jorge González
a2e88f9b80 Updated Spanish translation 2010-10-13 14:26:30 +02:00
Jorge González
3b7cbaa47f Updated Spanish translation 2010-10-13 01:25:28 +02:00
Jorge González
af31afb906 Updated Spanish translation 2010-10-12 21:56:42 +02:00
Michael Natterer
6bdc9b7f8a Bug 563002 - Doesn't call 'update-preview' on set_filename
Call gtk_tree_view_set_cursor() in addition to
gtk_tree_selection_select_iter() when selecting the file in
show_and_select_files() so the preview update machinery gets
triggered.
(cherry picked from commit 795c8070db)
2010-10-12 21:27:21 +02:00
Matej Urbančič
4469d2cde1 Updated Slovenian translation 2010-10-12 20:09:27 +02:00
Kristian Rietveld
25bf8ba4de Don't check resize-grip-visible in default values unit test
The value for this property is determined at runtime.
2010-10-12 19:12:44 +02:00
Kristian Rietveld
d7c3d378eb Disable resize grip on spin button test
Otherwise, the resize grip obscures the decrement button causing the
test to fail.
2010-10-12 19:12:44 +02:00
Kristian Rietveld
c143105ae9 Fix scrolled window policy so the size allocation does not "flap" 2010-10-12 19:12:44 +02:00
Kristian Rietveld
65c3fc9953 Handle off-by-one errors due to rounding 2010-10-12 19:12:44 +02:00
Kristian Rietveld
b58e3bb30c Use double iso. float since that is what GtkAdjustment uses 2010-10-12 19:12:44 +02:00
Kristian Rietveld
e732c16aab Use GtkAdjustment accessors to properly compress changed signals 2010-10-12 19:12:44 +02:00
Matthias Clasen
c7e024d160 Rework GdkPangoRenderer example to use existing api 2010-10-12 11:29:56 -04:00
Matthias Clasen
abb25b7895 docs: add a longdesc for X-specifics 2010-10-12 11:29:56 -04:00
Matthias Clasen
0a8abdcdf6 docs: Update cairo-related docs 2010-10-12 11:29:55 -04:00
Matthias Clasen
d8700a02f1 docs: Remove mentions of GdkPixmap from cursor docs 2010-10-12 11:29:55 -04:00
Matthias Clasen
ec7c2acf7b Move GdkVisualType docs inline 2010-10-12 11:29:55 -04:00
Matthias Clasen
4d63d96762 docs: Correct some link targets 2010-10-12 11:29:55 -04:00
Jorge González
2853db41f8 Updated Spanish translation 2010-10-12 17:16:12 +02:00
Tor Lillqvist
eae3183f1c Add two new functions to gtk.symbols 2010-10-12 14:39:30 +03:00
Michael Natterer
bef6c0a4a3 Bug 631599 - Allow to use arbitrary surfaces for offscreen windows
As a first step, create surfaces lazily and factor surface creation
out to a single function.
2010-10-12 11:34:20 +02:00
Tristan Van Berkom
e85dad38e2 Added logic to GtkScrolledWindow when allocating height-for-width children.
This patch makes the scrolled window reconsider allocating the child
the full width or height (depending on the child's request mode) without
a scrollbar. For instance when the child is height-for-width; the child
will first be tested if the content's height for full allocated width
(without a vscrollbar) will allow the contents height for that width
to fit the allocated height.

Patch is a simplified version of code inspected in st-scroll-view.c.
Note that this patch assumes children will begin to scroll only after
reaching their minimum size; adding a property to the future
GtkScrollableIface to decide whether to scroll-to-minimum or scroll-to-natural
will effect this code (it should then reconsider whether the child
will scroll below the natural size instead of the minimum).

Patch addresses bug 629778.
2010-10-12 17:16:32 +09:00
Tristan Van Berkom
0e0d938cc3 Make GtkScrolledWindow offload border-width calculations to GtkContainerClass. 2010-10-12 17:10:55 +09:00
Matthias Clasen
f106d369a7 Don't link to old stuff 2010-10-12 01:10:32 -04:00
Matthias Clasen
5a6ea62125 Add a missing close tag 2010-10-12 01:05:39 -04:00
Matthias Clasen
b23dc8477f Remove a note about GTK 1.2 api 2010-10-12 00:57:13 -04:00
Matthias Clasen
36f1d08bce Fix a trivial typo 2010-10-12 00:50:18 -04:00
Matthias Clasen
6899956770 Reorder some sections 2010-10-12 00:47:49 -04:00
Matthias Clasen
cf1745a935 Remove mentions of dialog separator from the docs 2010-10-12 00:38:04 -04:00
Matthias Clasen
82712a150a Some documentation updates 2010-10-12 00:33:38 -04:00
Matthias Clasen
e0c2a4e10f Inspect geometry when setting resize grip cursors
We want to use the same cursor as metacity when the window is only
resizable in one dimension.
2010-10-11 23:26:58 -04:00
Owen W. Taylor
a4a7a611f2 GtkWindow: Allow setting size from geometry
If you set a geometry widget via gtk_window_set_geometry_hints() it
becomes very hard to compute appropriate toplevel sizes in pixels
to make the window a particular size. Synthesizing strings and passing
them to gtk_window_parse_geometry() is possible, but to avoid
avoid such ugliness, add functions:

 gtk_window_set_default_geometry()
 gtk_window_resize_to_geometry()

That act like gtk_window_set_default_size() and
gtk_window_resize() but are in terms of the resize increments of the
geometry widget.

https://bugzilla.gnome.org/show_bug.cgi?id=631796
2010-10-11 14:06:16 -04:00
Owen W. Taylor
519d758711 Warn when calling gtk_window_parse_geometry() on an empty window
gtk_window_parse_geometry() gets the size of the window in order
to interpret the position of the window; calling it before, say,
calling gtk_widget_show_all() on a window is a subtle trap, so
add a warning in the case we can easily detect.

https://bugzilla.gnome.org/show_bug.cgi?id=631794
2010-10-11 14:06:03 -04:00
Owen W. Taylor
88cf547029 Fix handling of the geometry widget
The geometry widget feature of gtk_window_set_geometry_hints() has
never really worked right because the calculation that GTK+ did to
compute the base size of the window only worked when the geometry
widget had a larger minimum size than anything else in the window.

Setup:
* Move the GtkSizeGroup private functions to a new private header
  gtksizegroup-private.h
* Add the possibilty to pass flags to _gtk_size_group_queue_resize(),
  with the flag GTK_QUEUE_RESIZE_INVALIDATE_ONLY to suppress adding
  the widget's toplevel to the resize queue.
* _gtk_container_resize_invalidate() is added to implement that feature
* _gtk_widget_override_size_request()/_gtk_widget_restore_size_request()
  allow temporarily forcing a large minimum size on the geometry
  widget without creating resize loops.

GtkWindow:
* Compute the extra width/height around the geometry widget
  correctly; print a warning if the computation fails.
* Always make the minimum size at least the natural minimum
  size of the toplevel; GTK+ now fails badly with underallocation.
* Always set the base size hint; we were failing to set it
  properly when the specified minimum size was overriden, but
  it's harmless to always set it.

Tests:
* New test 'testgeometry' that replaces the 'gridded geometry' test
  from testgtk. The new test is roughly similar but creates a bunch
  of windows showing different possibilities.
* The testgtk test is removed. No need to have both.

https://bugzilla.gnome.org/show_bug.cgi?id=68668
2010-10-11 14:05:29 -04:00
Tristan Van Berkom
c250a7e673 Added documentation to GtkContainer about implementing containers using height-for-width apis. 2010-10-12 00:47:43 +09:00
Vincent Untz
4490aeddf7 build: Distribute README.multipress
https://bugzilla.gnome.org/show_bug.cgi?id=631872
2010-10-11 15:21:56 +02:00
Fran Diéguez
70228649ee Updated Galician translations 2010-10-11 10:22:04 +02:00
Ivar Smolin
4588408268 [l10n] Updated Estonian translation 2010-10-11 09:40:35 +03:00
Javier Jardón
c2ab54a31f docs: Move documentation do inline comments: GtkContainer 2010-10-11 05:13:45 +02:00
Javier Jardón
cabc386252 docs: Improve reference crossing in GtkWidget docs 2010-10-11 05:04:20 +02:00
Xan Lopez
71b4d83144 Plug memory leak in GtkWindow
1,936 (112 direct, 1,824 indirect) bytes in 4 blocks are definitely lost in loss record 13,453 of 13,673
    at 0x4005BDC: malloc (vg_replace_malloc.c:195)
    by 0x69615A1: cairo_region_create (cairo-region.c:196)
    by 0x683BFBF: gdk_cairo_region_create_from_surface (gdkcairo.c:455)
    by 0x670C882: set_grip_shape (gtkwindow.c:5020)
    by 0x670CFBF: resize_grip_create_window (gtkwindow.c:5271)
    by 0x670C466: gtk_window_realize (gtkwindow.c:4902)

Signed-off-by: Benjamin Otte <otte@redhat.com>
2010-10-11 02:33:25 +02:00
Xan Lopez
3f3d33ee6c Plug leak in gdkcairo.c
1,968 (1,236 direct, 732 indirect) bytes in 1 blocks are definitely lost in loss record 11,816 of 11,947
   at 0x4025BDC: malloc (vg_replace_malloc.c:195)
   by 0x6950676: _context_get (cairo.c:250)
   by 0x6950940: cairo_create (cairo.c:370)
   by 0x685CD1E: _gdk_cairo_surface_extents (gdkcairo.c:381)
   by 0x685CEDA: gdk_cairo_region_create_from_surface (gdkcairo.c:433)

Signed-off-by: Benjamin Otte <otte@redhat.com>
2010-10-11 02:33:09 +02:00
Javier Jardón
ee58c6c37d docs: Move documentation to inline comments: GtkScrolledWindow 2010-10-11 02:17:08 +02:00
Javier Jardón
9009683247 docs: Region returned by gdk_cairo_region_create_from_surface() should be freed 2010-10-11 02:17:08 +02:00
Gil Forcada
0afd8be7ef Updated Catalan translation 2010-10-10 23:22:40 +02:00
Simos Xenitellis
120a1006da l10n: Updated Greek translation for gtk+ properties 2010-10-10 21:18:39 +03:00
Jorge González
6c258b863d Updated Spanish translation 2010-10-09 14:26:20 +02:00
A S Alam
ff2476152b updating translation for Punjabi 2010-10-09 08:27:32 +05:30
Matthias Clasen
9d750ad13e Fix a problem with 'resize grip avoidance' in scrollbars
We need to be a little more careful when determining the overlap
between the new allocation and the grip area. This was causing
vertical scrollbars in evince to overlap with the grip.
2010-10-08 22:04:33 -04:00
Matthias Clasen
2f8f0d8eab Check for grip_window != NULL in gtk_window_draw
This is safer, since GtkWindow subclasses may override realize
and end up with has_resize_grip == TRUE, but grip_window still
being NULL - as is the case with GtkPlug.
2010-10-08 20:19:24 -04:00
William Jon McCann
de3e703444 gail: GtkTreeViewColumn doesn't have a destroy signal anymore
Replace with g_object_set_qdata_full usage.
2010-10-08 19:57:06 -04:00
William Jon McCann
f8b573766d Don't assume widgets are containers when walking the focus tree
This causes problems for links in labels.
2010-10-08 19:27:35 -04:00
Colin Walters
6c537bd0bf autogen: Explicitly allow libtool > 2.2
Apparently 2.4 is out, I'm not aware of a reason we shouldn't
allow it.
2010-10-08 16:46:50 -04:00
Matthias Clasen
31a45c957c Fix grip window positioning
We need to position the grip window in size_allocate after all,
otherwise the grip ends up in the wrong place when the window
is realized early.

Also, avoid shadowing a variable.
2010-10-08 14:21:11 -04:00
Matthias Clasen
0ebf090d9e Don't show resize grips on override-redirect window 2010-10-08 14:01:46 -04:00
Matthias Clasen
9b9ccb56b1 Make GtkPaned use gtk_container_class_handle_border_width 2010-10-08 11:11:33 -04:00
Matthias Clasen
f7418b1652 Make GtkPaned use gtk_container_class_handle_border_width 2010-10-08 10:45:24 -04:00
Matthias Clasen
c113b8e229 Make GtkPathBar use gtk_container_class_handle_border_width 2010-10-08 10:27:00 -04:00
Tristan Van Berkom
5a7cfa7fb9 Migrated old GtkSizeRequestIface documentation to GtkWidget and added notes to gtk_widget_get_preferred_size(). 2010-10-08 23:18:05 +09:00
Christian Dywan
e9a7a2104b Use and print note for key only if there are credentials
Otherwise key might be printed uninitialized.
2010-10-08 16:03:49 +02:00
Tristan Van Berkom
3267cd08e9 Removed call to get_preferred_size (widget, NULL, NULL);
This was another case of making sure size-request was called
before other code was doing get_child_requisition(), now caching
is done via the same api so no need for that line.
2010-10-08 22:33:21 +09:00
Tristan Van Berkom
480b9f6b11 Removed needless initial size request of children
Old code was probably doing size-request on all children initially,
and then calling get_child_requisition() in other passes, now these
are cached after the first request anyway.
2010-10-08 22:33:21 +09:00
Tristan Van Berkom
c1e9f4a798 Removed needless size-requesting of children (child sizes are ignored at request time). 2010-10-08 22:33:21 +09:00
Matthias Clasen
2e98e37fe4 Make GtkTable use gtk_container_handle_border_width 2010-10-08 09:28:00 -04:00
Matthias Clasen
f8490e425f Add a migration guide section about resize grips 2010-10-08 02:18:15 -04:00
Matthias Clasen
8ed725bad8 Get scrollbars out of the way of the window's resize grip
If there are both horizontal and vertical scrollbars, there is
an unused 'corner' into which the resize grip fits. Individual
scrollbars need to be shortened and moved to make room for the
resize grip.
2010-10-08 02:14:19 -04:00
Matthias Clasen
b04bceb47e Remove resize grip handling from GtkStatusbar
We remove the resize grip from GtkStatusbar, but keep the code
that makes the content avoid the grip, and adapt it to GtkWindow
grips.

The gtk_status_bar_set/get_has_resize_grip() functions and related
properties are removed.
2010-10-08 02:14:19 -04:00
Cody Russell
fe9a45c413 Remove uses of gtk_statusbar_set_has_resize_grip()
This function is going away.
2010-10-08 02:14:19 -04:00
Matthias Clasen
f9265ea3b8 Fix resize grip drawing in GtkAssistant
Chain up in the draw() implementation of GtkAssistant to let
GtkWindow draw the resize grip. This avoids black resize grips
in GtkAssistant windows.
2010-10-08 02:14:19 -04:00
Matthias Clasen
f6347baf64 Add resize grips to GtkWindow
Allow any window to display a resize grip, in the south-east or
south-west corner, depending on text direction. This is implemented
as a shaped window that gets overlayed on top of whatever content
is there. We add api that allows widgets to avoid the resize grip,
if desired.

The ::has-resize-grip property controls if a window may display
a resize grip. It will only be displayed if the window is resizable
and not maximized.

The size and visual appearance of the resize grip is under theme
control, using the resize-grip-width/height style properties and
the paint_resize_grip style function.
2010-10-08 02:14:10 -04:00
Matthias Clasen
368f0d0843 Fix export of a few (currently unused) configure variables
Turns out that autoconf eats all the m4_define magic before
AC_INIT.
2010-10-07 07:50:30 -04:00
William Jon McCann
cadbdd32ba gail: don't try to get stock id from images that aren't stock
Fixes assertion caused by 41d2a4d059
2010-10-07 02:52:35 -04:00
Tor Lillqvist
bbf189ca0d Gail needs _gtk_cell_renderer_calc_offset 2010-10-07 01:28:48 +03:00
Tor Lillqvist
3c4d1cc856 Bypass the ms-windows engine for now
It requires massive changes to build again. I started, but gave
up. More insight is needed.
2010-10-07 01:28:47 +03:00
Tor Lillqvist
e346d26f70 Make it compile again for Windows 2010-10-07 01:28:47 +03:00
Stef Walter
4196f56de9 Remove reference to hooks in gtk_about_dialog_set_website() docs.
Signed-off-by: Javier Jardón <jjardon@gnome.org>
2010-10-06 23:54:35 +02:00
Federico Mena Quintero
e17b9ae8ba Filechooser - In OPEN or SAVE mode, typing a plain folder name should switch to it
If you type 'subfolder/' and hit Enter, the file chooser will switch you to
it.  But if you type just 'subfolder' without the trailing slash, apps would
receive *that* filename (e.g. file:///foo/bar/subfolder) as the response, and
they would likely print an error that they can't open that file (as it is
a folder).  So, we change the file chooser's current folder to that subfolder
in this case.

Signed-off-by: Federico Mena Quintero <federico@novell.com>
2010-10-06 13:10:16 -05:00
Benjamin Otte
e3e243688a widget: Fix GtkWidget::draw docs
width and height have been gone for a while...
2010-10-06 12:53:33 +02:00
1266 changed files with 243886 additions and 384451 deletions

18
HACKING
View File

@@ -1,9 +1,9 @@
If you want to hack on the GTK+ project, you'll need to have
the following packages installed:
- GNU autoconf 2.54
- GNU automake 1.7
- GNU libtool 1.4
- GNU autoconf 2.62
- GNU automake 1.11
- GNU libtool 2.2
- indent (GNU indent 1.9.1 is known good)
- GNU gettext 10.40
@@ -13,16 +13,16 @@ fine GNU mirrors. Beta software can be found at alpha.gnu.org.
Up-to-date instructions about developing GNOME applications and libraries
can be found here:
http://developer.gnome.org
http://library.gnome.org/devel/
Information about using git with GNOME can be found here:
http://live.gnome.org/Git
In order to get GIT gtk+ installed on your system, you need to have
the most recent GIT versions of glib, pango, and atk installed as well.
The installation process of these libraries is similar to that of gtk+, but
needs to be fulfilled prior to installation of gtk+.
In order to get GIT GTK+ installed on your system, you need to have
the most recent GIT versions of GLib, Pango, and ATK installed as well.
The installation process of these libraries is similar to that of GTK+,
but needs to be fulfilled prior to installation of GTK+.
If at all possible, please use GIT to get the latest development version of
gtk+ and glib. You can do the following to get glib and gtk+ from GIT:
@@ -37,7 +37,7 @@ have a gnome account, you want to use the following instead:
$ git clone ssh://<username>@git.gnome.org/git/gtk+
To compile the GIT version of gtk+ on your system, you will need to take
To compile the GIT version of GTK+ on your system, you will need to take
several steps to setup the tree for compilation. You can do all these
steps at once by running:

View File

@@ -9,27 +9,26 @@ GTK+ requires the following packages:
GdkPixbuf @GDK_PIXBUF_REQUIRED_VERSION@, ATK @ATK_REQUIRED_VERSION@
and cairo @CAIRO_REQUIRED_VERSION@.
- gobject-introspection 0.9.3 or newer.
- gobject-introspection @INTROSPECTION_REQUIRED_VERSION@ or newer.
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+
% 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+
% make install # install GTK+
The Details
===========
Complete information about installing GTK+ and related libraries can be found
in the file:
Complete information about installing GTK+ and related libraries
can be found in the file:
docs/reference/gtk/html/gtk-building.html
Or online at:
http://developer.gnome.org/doc/API/2.0/gtk/gtk-building.html
http://library.gnome.org/devel/gtk/stable/gtk-building.html

View File

@@ -1,7 +1,7 @@
## Makefile.am for GTK+
include $(top_srcdir)/Makefile.decl
SRC_SUBDIRS = gdk gtk modules demos tests perf
SRC_SUBDIRS = gdk gtk modules demos tests perf examples
SUBDIRS = po po-properties $(SRC_SUBDIRS) docs m4macros build
ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
@@ -31,80 +31,8 @@ EXTRA_DIST += \
gtk-zip.sh.in \
sanitize-la.sh \
po/README.translators \
po/po2tbl.sed.in \
examples/aspectframe/Makefile \
examples/aspectframe/aspectframe.c \
examples/Makefile \
examples/README.1ST \
examples/extract.awk \
examples/extract.sh \
examples/arrow/Makefile \
examples/arrow/arrow.c \
examples/base/Makefile \
examples/base/base.c \
examples/buttonbox/Makefile \
examples/buttonbox/buttonbox.c \
examples/buttons/Makefile \
examples/buttons/buttons.c \
examples/buttons/info.xpm \
examples/calendar/Makefile \
examples/calendar/calendar.c \
examples/entry/Makefile \
examples/entry/entry.c \
examples/eventbox/Makefile \
examples/eventbox/eventbox.c \
examples/gtkdial/Makefile \
examples/gtkdial/dial_test.c \
examples/gtkdial/gtkdial.c \
examples/gtkdial/gtkdial.h \
examples/helloworld/Makefile \
examples/helloworld/helloworld.c \
examples/helloworld2/Makefile \
examples/helloworld2/helloworld2.c \
examples/label/Makefile \
examples/label/label.c \
examples/menu/Makefile \
examples/menu/menu.c \
examples/notebook/Makefile \
examples/notebook/notebook.c \
examples/packbox/Makefile \
examples/packbox/packbox.c \
examples/paned/Makefile \
examples/paned/paned.c \
examples/progressbar/Makefile \
examples/progressbar/progressbar.c \
examples/radiobuttons/Makefile \
examples/radiobuttons/radiobuttons.c \
examples/rangewidgets/Makefile \
examples/rangewidgets/rangewidgets.c \
examples/rulers/Makefile \
examples/rulers/rulers.c \
examples/scribble-simple/Makefile \
examples/scribble-simple/scribble-simple.c \
examples/scribble-xinput/Makefile \
examples/scribble-xinput/scribble-xinput.c \
examples/scrolledwin/Makefile \
examples/scrolledwin/scrolledwin.c \
examples/selection/Makefile \
examples/selection/gettargets.c \
examples/selection/setselection.c \
examples/statusbar/Makefile \
examples/statusbar/statusbar.c \
examples/table/Makefile \
examples/table/table.c \
examples/tictactoe/Makefile \
examples/tictactoe/tictactoe.c \
examples/tictactoe/tictactoe.h \
examples/tictactoe/ttt_test.c \
examples/wheelbarrow/Makefile \
examples/wheelbarrow/wheelbarrow.c \
examples/fixed/fixed.c \
examples/fixed/Makefile \
examples/frame/frame.c \
examples/frame/Makefile \
examples/spinbutton/spinbutton.c \
examples/spinbutton/Makefile \
examples/find-examples.sh
po/po2tbl.sed.in
MAINTAINERCLEANFILES = \
$(srcdir)/INSTALL \
$(srcdir)/README \
@@ -119,47 +47,45 @@ MAINTAINERCLEANFILES = \
$(srcdir)/install-sh \
$(srcdir)/ltmain.sh \
$(srcdir)/missing \
$(srcdir)/mkinstalldirs \
$(srcdir)/omf.make \
$(srcdir)/xmldocs.make \
$(srcdir)/gtk-doc.make \
$(srcdir)/ChangeLog \
`find "$(srcdir)" -type f -name Makefile.in -print`
GDKTARGET=@gdktarget@
## Copy .pc files to target-specific names
gtk+-$(GDKTARGET)-3.0.pc: gtk+-3.0.pc
rm -f gtk+-$(GDKTARGET)-3.0.pc && \
cp gtk+-3.0.pc gtk+-$(GDKTARGET)-3.0.pc
gtk+-x11-3.0.pc gtk+-win32-3.0.pc gtk+-quartz-3.0.pc: gtk+-3.0.pc
rm -f $@ && \
cp gtk+-3.0.pc $@
gdk-$(GDKTARGET)-3.0.pc: gdk-3.0.pc
rm -f gdk-$(GDKTARGET)-3.0.pc && \
cp gdk-3.0.pc gdk-$(GDKTARGET)-3.0.pc
gdk-x11-3.0.pc gdk-win32-3.0.pc gdk-quartz-3.0.pc: gdk-3.0.pc
rm -f $@ && \
cp gdk-3.0.pc $@
gtk+-$(GDKTARGET)-3.0-uninstalled.pc: gtk+-3.0-uninstalled.pc
rm -f gtk+-$(GDKTARGET)-3.0-uninstalled.pc && \
cp gtk+-3.0-uninstalled.pc gtk+-$(GDKTARGET)-3.0-uninstalled.pc
gdk-$(GDKTARGET)-3.0-uninstalled.pc: gdk-3.0-uninstalled.pc
rm -f gdk-$(GDKTARGET)-3.0-uninstalled.pc && \
cp gdk-3.0-uninstalled.pc gdk-$(GDKTARGET)-3.0-uninstalled.pc
gtk+-*-3.0-uninstalled.pc: gtk+-3.0-uninstalled.pc
rm -f $@ && \
cp gtk+-3.0-uninstalled.pc $@
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = gdk-$(GDKTARGET)-3.0.pc gtk+-$(GDKTARGET)-3.0.pc gail-3.0.pc
pkgconfig_DATA = gdk-3.0.pc gtk+-3.0.pc gail-3.0.pc
pkgconfig_DATA += ${GDK_BACKENDS:%=gtk+-%-3.0.pc}
pkgconfig_DATA += ${GDK_BACKENDS:%=gdk-%-3.0.pc}
if OS_UNIX
pkgconfig_DATA += gtk+-unix-print-3.0.pc
endif
DISTCLEANFILES = \
gtk+-unix-print-3.0.pc \
gtk+-$(GDKTARGET)-3.0.pc \
gdk-$(GDKTARGET)-3.0.pc \
gail-3.0.pc \
gtk+-$(GDKTARGET)-3.0-uninstalled.pc \
gdk-$(GDKTARGET)-3.0-uninstalled.pc \
gail-3.0-uninstalled.pc \
DISTCLEANFILES = \
gtk+-unix-print-3.0.pc \
gtk+-3.0.pc \
gtk+-x11-3.0.pc \
gdk-3.0.pc \
gdk-x11-3.0.pc \
gail-3.0.pc \
gtk+-3.0-uninstalled.pc \
gail-3.0-uninstalled.pc \
config.lt
distclean-local:
@@ -168,8 +94,7 @@ distclean-local:
fi
ChangeLog:
@echo Creating $@
@if test -d "$(srcdir)/.git"; then \
$(AM_V_GEN) if test -d "$(srcdir)/.git"; then \
(GIT_DIR=$(top_srcdir)/.git ./missing --run git log GTK_2_16_0^^.. --stat) | fmt --split-only > $@.tmp \
&& mv -f $@.tmp $@ \
|| ($(RM) $@.tmp; \
@@ -181,20 +106,7 @@ ChangeLog:
echo A git checkout and git-log is required to generate this file >> $@); \
fi
## copy the default target for this platform to gdk-3.0.pc and gtk+-3.0.pc
DEFAULT_GDKTARGET=x11
install-data-hook:
(cd $(DESTDIR)$(pkgconfigdir) && \
test -f gdk-$(DEFAULT_GDKTARGET)-3.0.pc && \
test -f gtk+-$(DEFAULT_GDKTARGET)-3.0.pc && \
rm -f gdk-3.0.pc && cp -f gdk-$(DEFAULT_GDKTARGET)-3.0.pc gdk-3.0.pc && \
rm -f gtk+-3.0.pc && cp -f gtk+-$(DEFAULT_GDKTARGET)-3.0.pc gtk+-3.0.pc) || \
(cd $(DESTDIR)$(pkgconfigdir) && \
rm -f gdk-3.0.pc && cp -f gdk-$(GDKTARGET)-3.0.pc gdk-3.0.pc && \
rm -f gtk+-3.0.pc && cp -f gtk+-$(GDKTARGET)-3.0.pc gtk+-3.0.pc)
uninstall-local:
rm -f $(DESTDIR)$(pkgconfigdir)/gdk-3.0.pc
rm -f $(DESTDIR)$(pkgconfigdir)/gtk+-3.0.pc
dist-hook:

View File

@@ -17,9 +17,15 @@ XIDS = 101 102 103 104 105 106 107 197 199 211 223 227 293 307 308 309 310 311 \
1008 1009 4703 4721 4723 4729 4733 4751 9973 9974 9975 9976 9977 9978 9979 \
9980 9981 9982 9983 9984 9985 9986 9987 9988 9989 9990 9991 9992 9993 9994 \
9995 9996 9997 9998 9999
if USE_X11
SKIP_GDKTARGET = \
test "$(gdktarget)" != "x11" \
&& echo "Gtk+Tests:INFO: Skipping GUI tests for non-X11 target."
false
else
SKIP_GDKTARGET = \
echo "Gtk+Tests:INFO: Skipping GUI tests for non-X11 target."
endif
XVFB_START = \
${XVFB} -help 2>/dev/null 1>&2 \
&& XID=`for id in $(XIDS) ; do test -e /tmp/.X$$id-lock || { echo $$id; exit 0; }; done; exit 1` \

693
NEWS
View File

@@ -1,3 +1,696 @@
Overview of Changes in GTK+ 3.0.0
=================================
* Library sonames have been changed from libgdk-3.0 and libgtk-3.0
to libgdk-3 and libgtk-3.
* Bugs fixed:
632775 Back / Forward button's icons don't respect RTL settings
639846 GdkEventScroll events are sent twice
639945 Gtk.Widget does not have drag_* methods (but in pygtk it did)
640801 Crash gtk_tree_view_reset_header_styles at gtktreeview.c:11871
641196 Fix another GtkFixed regression, in gtk_fixed_forall()
641302 show something nicer than XF86AudioMute etc
641367 [region] gnome-applications ignore layout switching
641409 not chaining up in ::style-updated
641429 Errors creating a GtkWidget without a display
641431 Apply button goes grey after two mode switching
641517 "Migrating from libunique to GtkApplication" examples do not do...
641558 GtkCssProvider leaks path string
641621 Use faster new G_VALUE_COLLECT_INIT variant instead...
641640 Update autotools configuration
* Translation updates:
Arabic
English
Galician
Hebrew
Korean
Norwegian bokmål
Polish
Overview of Changes in GTK+ 2.99.3
==================================
* This release adds some forgotten padding to class structs,
and thus breaks ABI for a last time before 3.0
* Many Introspection annotation improvements
* We no longer build the gtk-update-icon-cache utility, and
use a preexisting one, if --enable-gtk2-dependency is passed
to configure
* GtkBuilder can now fill GtkComboBoxText and GtkMenToolButton
widgets with data, as well as GtkFileFilters and GtkTextTagTables
* GtkImage now has a ::use-fallback property to allow generic
fallback with GIcons and icon-names (e.g. for symbolic icons)
* There's a new gtk_text_view_get_cursor_locations() to enable
popup-at-cursor functionality
* The application chooser widgets can now set a custom
dialog heading
* The file chooser and application chooser widgets have received
minor visual improvements
* gtk-auto-mnemonics is now backed by an XSetting
* Defaults for GtkSettings, as well as theme-specific settings,
are now read from key files
* Key themes are now supported again, their syntax has been changed
to be CSS-like
* More objects use GtkStyleContext directly now:
GtkTreeView
GtkIconView
GtkCellArea
GtkCellRendererText
GtkCellRendererPixbuf
GtkCellRendererAccel
GtkCellRendererProgress
* GtkPlug and GtkSocket have been reduced to X11-specific API, and
using them requires including the <gtk/gtkx.h> header, and uses
of GdkNativeWindow in their APIs have been replaced by the X11
Window type.
A number of other API changes were necessary in GDK to ensure
that multiple GDK backends can coexist:
- GdkNativeWindow has been dropped
- The GdkEventOwnerChange owner field is a GdkWindow now
- The GdkEventSelection requestor field is a GdkWindow now
- The GtkWidget::client_event vfunc is gone
- GdkEventClient is gone, together with related API:
gdk_add_client_message_filter
gdk_display_add_client_message_filter
gdk_screen_broadcast_client_message
gdk_event_send_client_message
gdk_event_send_client_message_for_display
gdk_event_send_clientmessage_toall
- gdk_drag_get_protocol_for_display has been changed to
gdk_window_get_drag_protocol
* Migration guide and tutorial and other documentation improvements
* Bug fixes
322926 FileChooser: Alt-Shift-Down should work like Alt-Down
351755 GTK_RANGE (range) -> round_digits should be exposed...
586635 gtk_info_bar_add_button() should return GtkButton*
590459 Text is sometimes not pasted at the right location
598952 Implement object attribute to expose toolkit/source
626336 Warning when activating GtkButton outside of an event...
634677 assertion in finalize assuring that buffer is NULL...
635287 Specify packages when generating GIR
636691 Rendering icons with prelight state doesn't...
638920 gail should provide toolkit as an AtkAttribute
639139 Subclassing GtkIconView broken lately in master
639186 gtk_paper_size_new fails to recognize valid name
639325 Generated introspection broken
639380 Critical warnings when detaching tab
639455 accel cell renderer critical warning
639520 Update docs about colormap to use visual instead.
639531 No error is given when attempting to save to "nonexistent...
639625 Crashes on dereferencing a NULL GtkBorder.
639750 Support css3 colors
639754 Must widget class names begin with uppercase letter?
639767 password not accepted in gnome-screensaver dialog
639792 Regional panel: "Add" dialog: combos not sorted
639822 Synthesized button2/button3 does not transfer source_device
639845 insensitive and separator items in comboboxes not working...
639931 gtk_application_add_window() docs should mention window destr...
639949 pygobject leaks references on GtkWindows
640005 removable media dialog should use app names
640006 choose app dialog shows other apps by default
640011 Selects application on cancel
640105 Crash showing a offscreen window with a textview inside
640161 GtkFileChooserWidget 0xbbf6c0 is mapped but visible=1...
640188 gdk_pixbuf_get_from_drawable missing from migration guide
640195 gdk_cairo_create gets cairo context with badly clipped...
640282 insensitive, active check button becomes sensitive
640313 BadDevice X error when ungrabbing a SLAVE device
640391 Display lines between rows when window is focused
640487 crash on gtk_statusbar_remove_all()
640698 Incompatibility in 'matched-selected' signal invocation
640712 GtkAssistant fonts are too big
640744 mount-operation: don't show the dialog until the tree...
640902 X11 headers included by default in public headers
640965 XCompose does not work with GTK+ 2.99.x
640983 GtkSettings: Fix theme not updating for dark theme
640999 GtkSpinner Class check macro is invalid
641023 assertion `hash_table != NULL' failed in gtkplug.c
641039 Cannot expand/collapse nodes by mouse
641042 assertion `G_IS_OBJECT (object) in gdkevents.c
641059 Fix several bugs handling GtkTrayIcon symbolic colors
641073 Please be consistent with GtkEntryCompletion
641176 Fix crash in gtk_fixed_remove()
* Translation updates
Arabic
Basque
Catalan
Chinese
Esperanto
Estonian
Galician
German
Greek
Hebrew
Italian
Kazakh
Norwegian bokmål
Persian
Punjabi
Spanish
Uighur
Overview of Changes in GTK+ 2.99.2
==================================
* More widget are using GtkStyleContext directly:
GtkToolItemGroup, GtkMenuItem, GtkImageMenuItem, GtkMenu,
GtkTearoffMenuItem, GtkCheckMenuItem, GtkMenuShell
* gtk-builder-convert now accepts a --target-version option
* Bug fixes:
637965 GtkTreeCellDataFunc called with a wrong column arguments
639127 Misc Win32 GDK building problems
639157 GtkOrientable should add/remove "horizontal" and "vert...
639209 Allow toggling the GtkSwitch by clicking the handle
639286 include gtk/gtktextattributes.h not installed
639327 gtk-builder-convert needs to convert gtkcomboboxentry...
* Translation updates:
Arabic
Basque
Hebrew
Overview of Changes from GTK+ 2.99.0 to 2.99.1
==============================================
* More widgets are using GtkStyleContext directly:
GtkColorButton, GtkColorSelection, GtkHSV,
GtkFontSelection, GtkPrintUnixDialog, GtkImage,
GtkLayout, GtkViewport, GtkTextDisplay, GtkTextUtil,
GtkCalendar
* GtkBuilder support has been added for setting menus
on GtkMenuToolButtons and for adding tags to
GtkTextTagTable as well as adding items to
GtkComboBoxText
* Bug fixes:
350618 start rubber banding on "white space"
612918 Support disabling X11 extensions
635687 problem with pygtk or gtk with gtk.Plug and gtk.Socket...
638017 GtkTextView: Crash in gtk_text_view_set_tabs()
638119 GtkSpinner animation not correctly stopped...
638880 Need a setter for has_user_ref_count
639030 Small cleanup in gailtextview code.
639047 Fix remaining usage of g[dk]ktargetlib.
639079 Obtain the fg color from the renderer
639105 Port GtkTextDisplay to StyleContext.
639106 New CSS style misses distinction between "selected focused"...
639127 Misc Win32 GDK building problems
639157 GtkOrientable should add/remove "horizontal" and "vertical"...
* Translation updates:
British English
Galician
Hebrew
Indonesian
Spanish
Overview of Changes from GTK+ 2.91.7 to 2.99.0
==============================================
* Deprecations and removals:
- Long-obsolete linuxfb-related GtkWindow APIs have been dropped
- All remaining G_SEALed struct members have been removed
- GtkThemeEngine has been removed
- gdk_display_get_window_at_device_position() has been renamed to
gdk_device_get_window_at_position()
- gdk_display_get_device_state() has been renamed to
gdk_device_get_position()
- gdk_device_set_source() has been dropped
- gdk_set_pointer_hooks(), gdk_display_set_pointer_hooks() and
gdk_display_set_device_hooks() have been removed
- The deprecated GtkNotebook:tab-pack child property has been removed
- The deprecated gtk_quit_add() functions have been removed
- The GtkRange update-policy facility has been removed
* The gtk-update-icon-cache and gtk-builder-convert utilities have
been renamed back to their un-suffixed names. Distributions will
have to resolve the conflict between GTK+ 2.x and 3.0 packages
by dropping one set of the utilities and adding a dependency.
* It is now possible to include multiple GDK backends in a single
library. The --with-gdk-backend option has been split into separate
--enable-{x11,win32,quartz}-backend options.
* The GDK Quartz backend has been ported to the new GDK backend API
* A number of widgets have been ported to use GtkStyleContext directly:
GtkAccelLabel, GtkArrow, GtkSeparator, GtkSpinButton, GtkMessageDialog,
GtkFrame, GtkEventBox, GtkScrolledWindow, GtkProgressBar, GtkEntry,
GtkFileChooserEntry, GtkSwitch, GtkHandleBox, GtkToolbar, GtkFixed,
GtkToolPalette, GtkAboutDialog, GtkAssistant, GtkTrayIcon, GtkPaned,
GtkToolButton, GtkSocket, GtkRecentChooser, GtkTooltip, GtkPathBar,
GtkWin32EmbedWidget, GtkCellView, GtkDialog, GtkDrawingArea, GtkPlug,
GtkEntryCompletion, GtkFileChooserButton, GtkFileChooser, GtkHandleBox,
GtkLinkButton, GtkOffscreenWindow
* Various problems with width-for-height geometry management have been
fixed in GtkAlignment, GtkCheckButton, GtkBin
* The GtkComboBox, GtkIconView and GtkCellView widgets have been ported
to use GtkCellArea for their cell layouts
* The cups print backend can now send print jobs directly in PDF if
cups supports it
* GtkNumerableIcon is a variant of GEmblemedIcon for using numbers
as emblems
* Bugs fixed:
144324 Leaking dnd contexts with XDnD
165987 unsets DESKTOP_STARTUP_ID
307963 GtkSpinButton clamps value with the wrong maximum.
321958 gtk.Calendar Notes should also say the format of year
533745 Segfault on gdk.DragContext.drag_get_selection()
553404 Out-of-date comment in gtk_text_view_add_child_in_window()
559503 Description should mention gregorian
560177 Applications should send print jobs to CUPS in PDF format...
562182 gtk_init() docs inaccurate
599130 Ending a drag using space or enter doesn't always cause a...
617312 Move documentation to inline comments: GtkDialog
617315 Move documentation to inline comments: GtkDrawingArea
617322 Move documentation to inline comments: GtkEntryCompletion
617327 Move documentation to inline comments: GtkExpander
617471 Migrate API docs from templates to source files...
621720 Use $(AM_V_GEN) to silent the build a bit.
622125 Note that gtk_show_uri needs gvfs to spawn URLs
629955 Deprecate/remove gtk_main and gtk_init_add/remove* API
633795 gdk_event_get_state wrongly extracts GDK_PROPERTY_NOTIFY...
634711 Xlib warning when RANDR is missing
635299 add gtk_selection_data_get_data_with_length API...
637691 Eating events breaks proxied DND
637721 gtk 2.91.6 issue with gtkcellrendererprogress
637736 [GtkAboutDialog] Newlines are ignored in translator-credits
637763 [GtkAboutDialog] no longer display contact link
637834 gtk_widget_verify_invariants: relax toplevel checks
637849 Shell segfaults when unicode characters after U+00FF...
637895 gdk_pointer_grab() deprecated comment is not helpful enough
637907 gtkwindow.h includes a private header
637910 GtkSpinner - does not animate
637958 print dialog doesn't fit on netbook screen size
637974 Gtk+ 2.91.7 build of introspection fails
638179 in draw signal handle call gtk_style_context_add_provider...
638193 GtkSpinButton documentation out of date
638231 GtkSwitch states translation
638386 gdk_x11_display_init_input careless
638580 'application' window's property released too late
638608 gtkenums: add GTK_STATE_FLAG_NORMAL = 0
* Updated translations:
Estonian
Kurdish
Norwegian bokmål
Punjabi
Spanish
Swedish
Uighur
Overview of Changes from GTK+ 2.91.6 to 2.91.7
==============================================
* The treeview-refactor branch has been merged, bringing more
flexible cell arrangement with GtkCellArea, GtkCellAreaBox, etc
* The gdk-backend branch has been merged. This branch cleans up the
internal frontend/backend separation in GDK, with the ultimate goal
of allowing to build a single gdk library that contains multiple
backends (interesting combinations are x11+wayland or quartz+x11).
For now, GDK is still restricted to a single backend, but
as a first step, the libraries no longer include the backend name
in their soname, but are just libgdk-3.0.so and libgtk-3.0.so.
Only the x11 backend has been kept up to date with this cleanup
work, other backends are broken in this release.
* Deprecations and removals:
- G_SEALed struct members have been removed from GtkWindowGroup,
GtkDrawingArea, GtkTreeStore, GtkTreeModelSort, GtkTreeSelection,
GtkSocket, GtkPrintJob, GtkSelectionData
- Input device handling:
- gdk_display_list_devices, gdk_display_get_core_pointer,
gdk_input_set_extension_events, gtk_widget_set_extension_events,
gdk_devices_list have been removed
- gdk_display_warp_device has been replaced by gdk_device_warp
- gdk_enable_multidevice has been replaced by gdk_disable_multidevice
- Drag-and-Drop:
gdk_drag_context_new, gdk_drag_find_window and gdk_drag_get_protocol
have been removed
- Property handling:
Functions that deal with X11-specific encodings such as Compound Text
have been moved to backend-specific API:
gdk_string_to_compound_text[_for_display],
gdk_utf8_to_compound_text[_for_display], gdk_free_compound_text,
gdk_text_property_to_text_list[_for_display], gdk_free_text_list,
gdk_text_property_to_utf8_list
- Foreign windows:
Functions for dealing with GdkWindow wrappers around foreign
windows have been moved to backend-specific API.
- Application launching:
The gdk_spawn_* APIs have been removed, since they were trivial
wrappers around g_spawn_* on most platforms and can be replaced
by GIO GAppInfo APIs.
- Misc. other functions: gdk_net_wm_supports, gdk_set_locale,
gdkx_visual_get have been either removed, gdk_set_sm_client_id
has been moved to backend-specific API.
* A number of GTK+ widgets have been ported to use GtkStyleContext
directly for rendering
* The tracker search backend for the file chooser has been updated
to work with libtracker-sparql as available in tracker >= 0.9
* The GtkAboutDialog has been given a facelift. It no longer
opens second-level dialogs
* The GDK X11 backend now uses XI2 (including multi-device capabilities)
by default. Use gdk_disable_multidevice() to switch back to the
XI1/Core implementation
* Bug fixes:
629923 Consider always calling unmap() when unsetting MAPPED flag
634657 Dynamically attached calendar does not respond to mouse clicks
635401 Setting conflict warning does not disappear when conflict is fixed
636732 Gtk+ fails to build
636777 Leak in gtk_css_provider_get_named
637018 Add checks for id-column/entry-text-column >= 0
637069 Custom print settings set in custom-widget-apply are lost
637155 Remove vestiges of support for themes using XSHAPE
637156 Optimize gtk_widget_shape_combine_region (widget, NULL, ...)
637189 gtk_cell_renderer_spin_start_editing uses g_ascii_strtod but...
637243 docs: fix link failure on gtk-doc scanner binaries
637256 gtkstylecontext: fix typos in annotations
637464 Fix GdkWindowFilter internal refcounting
637471 GTK2_RC_FILES should be renamed to GTK3_RC_FILES
637520 Gtk+ seems to have broken Mutter
637606 Missing out annotations for gtk_accelerator_parse and...
637608 Problems with the new AboutDialog
* Translation updates:
Estonian
Hebrew
Kazakh
Norwegian bokmål
Persian
Spanish
Vietnamese
Overview of Changes from GTK+ 2.91.5 to 2.91.6
==============================================
* Deprecations, cleanups and API changes:
- GdkDrawable and some X11-specific APIs have been removed
- GtkStyle and GtkRcStyle have been deprecated
- The GdkWindowClass enumeration is now GdkWindowWindowClass
- gdk_window_get_geometry lost its depth argument
- The old, unused gtk_decorated_window_... functions have
been removed.
* GtkComboBox has gained an 'active id' property that is
intended for easy binding to settings
* GtkAppChooser: A new family of widgets that allow choosing
an application to open a file. This is strongly based on
the corresponding nautilus dialog, which it is replacing.
* The GtkStyleContext branch has been merged, changing the APIs
that are used to do themed drawing, and the theme engine interfaces.
Among the new classes are GtkStyleContext (replacing GtkStyle) and
GtkCssProvider (replacing the gtkrc parser). The migration guide
contains a chapter about porting from GtkStyle to GtkStyleContext.
* Bugs fixed:
549720 Add a way to hide GtkScale's slider
582557 need open with dialog box to use with IBM's Lotus Notes...
619148 "active ID" properties (GtkComboBox)
636060 use ATK_DEFINE_TYPE where possible
636129 invalid uninstantiatable type `(null)' in cast to `GtkSpinner'
636388 gtk3-demo craches (segfault) when pressing a key in the textarea...
636511 New style override functions do not work on textview
* Updated translations:
Estonian
Galician
Hebrew
Persian
Slovenian
Spanish
Overview of Changes from GTK+ 2.91.4 to 2.91.5
==============================================
* GtkSwitch: a new widget that provides switch-like on/off functionality
* Deprecations and cleanups:
- GtkCallbackMarshal and GtkFunction have been deprecated
- gtk_init_add has been removed
- The ::size-request signal has been removed
- GtkRuler has been removed
* The default value for the GtkBox::fill property has been changed
back to TRUE
* Bugs fixed:
613942 Deprecate GtkRuler, GtkVruler and GtkHRuler
629955 Deprecate / remove gtk_main and gtk_init_add / remove* API
633324 Stop invoking size-request completely
633896 Printing: Use XDG_DOCUMENTS_DIR as the default location...
634474 infinite loop in gtk_icon_view_accessible_set_adjustment
634558 Selecting "Search" should focus text box for keyboard entry
634592 GtkNotebook doesn't expand (in a typical GtkDialog)
634697 gdk: Add XSetting for "gtk-cursor-blink-timeout"
634821 Fix a BadMatch when create an icon pixmap for an ARGB visual
634987 add a switch widget
635175 Leak in gtk_plug_realize
635253 GtkRadioButton constructors don't mark group as "allow-none"
635307 iconcache: Ensure we don't lose data on power loss
635380 gdk_event_apply_filters is unsafe against changes in filter list
635588 clicking URL to be opened freezes the application for 3-5 seconds
635693 Bad pointer grab bug with GtkMenu/GtkComboBox
635879 Change the gdk_rgba_parse() function to be usable from bindings
* Updated translations:
Arabic
British English
Catalan
Czech
German
Hungarian
Indonesian
Norwegian bokmål
Romanian
Thai
Uyghur
Overview of Changes from GTK+ 2.91.3 to 2.91.4
==============================================
* Bugs fixed:
609622 disappearing statusicon
631331 window icons don't work anymore
632894 Only show Desktop in file chooser button if there is one
633670 Child minimum/natural size is not respected by GtkScrolledWindow
633762 Correctly convert colors to CSS and deal with librsvg limitations
633915 gtk_button_box_child_requisition() mishandles size allocations
634060 Support for GIcon pixbufs
634338 Move GtkPaned documentation to inline comments
634339 Move GtkProgressBar documentation to inline comments
634340 Move GtkPageSetup documentation to inline comments
* Translation updates
Japanese
Estonian
Overview of Changes from GTK+ 2.91.2 to 2.91.3
==============================================
* The scrollable interface has gained some extra properties
to influence scrolling behaviour: [hv]scroll-policy
* The size_request vfunc and signal have been deprecated and
are no longer used inside GTK+ itself
* GtkAssistant has added a custom page type that gives full
control of button visibility
* The homogeneous parameter has been removed from gtk_box_new
* Bugs fixed:
61852 GtkTextBuffer needs a case insensitive search
576498 GtkAssistant seals members without adding accessors
612611 auto-mnemonics breaks menu scrolling
633050 need gtk_combo_box_new_with_model_and_entry
633216 Make gdk_rgba_to_string() take a const GdkRGBA
633274 Add error trap around call to XFixesChangeSaveSet()
633374 Port tests to GtkScrollable API...
633500 statusbar labels behind resize grip on startup
* Updated translations:
Catalan (Valencian)
Estonian
Galician
Hebrew
Overview of Changes from GTK+ 2.91.1 to 2.91.2
==============================================
* GtkApplication has been rewritten. It mostly relies on GApplication
API now. Remaining functions include gtk_application_new() and
gtk_window_set_application()
* A GtkScrollable interface has been added and implemented by all
scrollable widgets. GtkScrolledWindow has ::min-display-width/height
properties to control the minimal size of the content area.
* GtkComboBox changes:
- Popups can be wider than the combo box itself
- The deprecated GtkComboBoxEntry subclass has been removed
- The deprecated combo box text convenience API has been removed
* GtkRecentManager changes:
- Store xbel file in XDG_USER_DATA
- Add gtk_recent_info_create_app_info()
- Add gtk_recent_info_get_gicon()
- Coalesce multiple changes
* GtkIconView allows tree models (ignoring anything below the root level)
* GtkProgressBar, GtkSpinButton, GtkEntry and GtkCalendar no longer have
their own input-output window
* gtk_widget_hide_all() has been removed
* GtkGrid: A legacy-free, height-for-width grid container
* GDK gained a GdkRGBA color struct containing 4 doubles, and various
GdkColor APIs have GdkRGBA counterparts now.
* Bugs fixed:
324899 GtkComboBoxText needs API to remove all items
438318 Deprecate and remove hide_all()
524304 Use XDG_USER_DATA to store the recent files
617174 gtkrecentinfo & GIcon
632381 gtk_combo_box_text_new_with_entry() adds two text cell renderers
632538 Move setting property registration in gtksettings.c
632539 Do not install gtkprivate.h
632677 restore copyright header
632736 change the window class of entry from INPUT_OUTPUT to INPUT_ONLY
632936 gtkcellrenderer gdkrgba changes not correct
* Translation updates:
Arabic
Galician
Hebrew
Japanese
Norwegian bokmål
Spanish
Telugu
Overview of Changes from GTK+ 2.91.0 to 2.91.1
==============================================
* GTK+ can now add a resize grip to any window. The resize
grip functionality in GtkStatusbar has been removed.
* A very old bug in the handling of geometry widgets has
been fixed, and a way to set geometry in terms of the
geometry widget has been added: gtk_window_resize_to_geometry()
* The GtkFileChooser now uses GSettings to store its settings
instead of the keyfile ~/.config/gtk-2.0/gtkfilechooser.ini
* GtkWrapBox has been dropped from GTK+ again. The widget
will be available in libegg until clear use cases have
been established.
* GtkWidget now has horizontal and vertical expand flags, in
the form of ::hexpand and ::vexpand properties. These flags
are intended to obsolete most custom container-specific
expand child properties, over time.
Expandability is inherited up the widget hierarchy.
* GtkComboBoxEntry has been deprecated in favor of a
::has-entry property on GtkComboBox.
* The GtkComboBox text convenience API (gtk_combo_box_new_text(), etc)
has been deprecated in favor of a new GtkComboBoxText class.
* GtkLinkButton has gained a ::activate-link signal that
can be used to suppress the default behavior.
* The very outdated tutorial has been dropped from the GTK+ distribution,
and a new 'Getting started' section has been added to the API
documentation that will accumulate tutorial material over time.
* Bugs fixed:
68668 Fix handling of geometry widget
313350 Return type of gtk_accelerator_get_default_mod_mask...
351247 GtkScrolledWindow is mis documented
423201 gtk_combo_box_entry_active_changed does not transform...
563002 Doesn't call 'update-preview' on set_filename
612396 Implement GtkComboBoxText subclass to supersede "text"...
613728 Rationalize GtkTreeView focus
628902 use expand flags to determine window resizability
629722 save_entry_get_info_cb() doesn't behave correctly
629778 Scrolled window does not behave properly with height-for...
629955 Deprecate / remove gtk_main and gtk_init_add / remove* API
630850 Use GSettings for the filechooser settings
630900 GtkCellRendererClass: unify const of GdkRectangle args
631203 Scrolling in GtkTextView can use 100% cpu
631311 Obvious fix for nasty crash in menu code
631473 Fix GTK+3 documentation
631475 Two old GDK_foo key macros left in gdk/quartz/gdkkeys-quartz.c
631599 Allow to use arbitrary surfaces for offscreen windows
631719 Action-based menu accelerators don't synch with GtkMenuItem
631794 Warn when calling gtk_window_parse_geometry() on an empty...
631976 Remove GtkWidgetAuxInfo from GtkScrolledWindow
632059 Move the introduction of the tutorial in the reference
632095 GtkTargetEntry: Add boxed type and constructor
632140 optionally take hotspot coordinates from the pixbuf...
632218 BadMatch when starting gnome-shell
* New or updated translations:
Catalan
Estonian
Galician
Greek
Kazakh
Kikongo
Lithuanian
Punjabi
Slovenian
Spanish
Overview of Changes from GTK+ 2.90.7 to 2.91.0
==============================================

436
README.in
View File

@@ -27,434 +27,20 @@ Installation
See the file 'INSTALL'
Release notes for 2.20
======================
* GtkStatusbar now has a message area (see gtk_status_bar_get_message_area)
which makes it easy to place additional widgets inside the statusbar
frame or to replace the label widgets. Previously, this was only possible
by accessing the innards of the statusbar widget directly. Applications
which are doing so may need some adjustments, since the addition of the
message area changed the internal widget hierarchy.
* GtkBuilder no longer sets the "name" property of widgets to the ID
attribute of the <object>. Use gtk_buildable_get_name() instead of
gtk_widget_get_name() to obtain the ID.
* GTK+ now includes introspection data, as a consequence, it gained a
dependency on gobject-introspection. It is possible to build without
introspection by passing --disable-introspection to configure.
Release notes for 2.18
======================
* gtk_tooltip_set_custom now accept a NULL custom_widget to unset the
old custom_widget. Custom_widget does not get destroyed when the
tooltip goes away.
* JPEG2000 support is no longer enabled by default. It must be
explicitly turned on, by passing --with-libjasper to configure.
* GDK has been reworked to implement 'client-side windows'. This offers
exciting new possibilities, such as transformed, offscreen rendering,
but it breaks some long-standing assumptions that applications may
have about GDK windows. Setting the environment variable
GDK_NATIVE_WINDOWS makes GDK create a native X11 window for each
GDK window, which might make problematic applications work better.
* GTK+ calls signal (SIGPIPE, SIG_IGN) during initialization, to ignore
SIGPIPE signals, since these are almost never wanted in graphical
applications. If you do need to handle SIGPIPE for some reason, reset
the handler after gtk_init(), but notice that other libraries (e.g.
libdbus or gvfs) might do similar things.
Release notes for 2.16
======================
* Password entries now display a caps-lock warning. This can be turned off
with the caps-lock-warning property.
* Various orientation-related functions have been deprecated in favour
of the new GtkOrientable interface: gtk_scale_button_get_orientation,
gtk_scale_button_set_orientation, gtk_toolbar_set_orientation.
* The action-proxy interaction has been changed. Widgets that operate as
proxies have to implement the GtkActivatable interface now. GtkActivatable
implementation are responsible for syncing their appearance with the
action and for activating the action. All GTK+ widgets that are commonly
used as proxies implement the GtkActivatable interface.
* The handling of keyboard shortcuts has been changed, to help with a
longstanding complaint about the way GTK+ handles multiple layouts. GTK+
now only uses keys from groups other than the current group if they are
not present in the current group.
Release notes for 2.14
======================
* gtkitemfactory.h is now completely deprecated.
As gtkactiongroup.h and gtkstock.h no longer include the gtkitemfactory.h
header, this might break application using gtk_item_factory_* symbols
without including gtkitemfactory.h - even though this behaviour has never
been supported in the first place.
* The GtkFileSystem semi-private interface has been removed.
The GTK+ filechooser implementation now uses GIO directly, which has
rendered external filesystem implementations unnecessary. Consequently,
the GtkFileSystem interface is no longer available, nor the filechooser
will load any GtkFileSystem implementation.
* GtkComboBox now renders the popdown button insensitive when
the model is empty. Applications which want to populate the list
only before displaying it can set gtk_combo_box_set_button_sensitivity
to GTK_SENSITIVITY_ON, so that the button is always sensitive or
GTK_SENSITIVITY_OFF to make it insensitive respectively.
* GtkAdjustment now enforces that values are restricted to the
range [lower, upper - page_size]. This has always been the documented
behaviour, and the recommended practice is to set page_size to 0
when using adjustments for simple scalar values, like in a slider
or spin button.
* gdk-pixbuf will use GIO for mime type detection if possible. For
this to work, shared-mime-info needs to be installed and XDG_DATA_DIRS
set accordingly at configure time. Otherwise, gdk-pixbuf falls
back to its built-in sniffing implementation.
Release notes for 2.12
======================
* gtk_about_dialog_get/set_name() were deprecated in favour of
gtk_about_dialog_get/set_program_name(), the GtkAboutDialog now uses the
"program-name" property instead of the conflicting "name" property.
* The gdk-pixbuf tiff loader now requires libtiff 3.6.0 or later.
* Support for Windows 9x/ME has officially been removed. It hasn't worked
since 2.6 anyway.
* The GtkTextBufferTargetInfo enumeration values have been changed from
G_MAXUINT-0, G_MAXUINT-1, G_MAXUINT-2, etc, to -1, -2, -3 to stay within
ANSI C limits.
* A change in the handling of _NET_WM_USER_TIME properties on toplevel
windows can cause deadlock problems with window managers that are using
GDK for drawing decorations. In particular, metacity <= 2.18.0 is affected
by this. The problem has been fixed in metacity 2.18.1.
* Semi-private GtkTextLayout api has changed: new GtkTextLayout method
invalidate_cursors(), and new functions gtk_text_layout_invalidate_cursors()
and gtk_text_layout_cursors_changed(), which should be used in place of
gtk_text_layout_invalidate() and gtk_text_layout_changed() if invalidation
is due to marks moved or changed selection; new GtkTextLineDisplay structure
member. Source compatibility is preserved; binary compatibility may break
only if GtkTextLineDisplay structure was created on stack or as a part
of another structure (in particular GnomeCanvas and its clones do not need
recompiling).
* Another new signal has been added to GtkNotebook. The new signal
is called create-window, so this name can no longer be used for signals
in objects derived from GtkNotebook.
* The gtk_notebook_set/get_group_id() functions were found to be insufficient
and have been deprecated in favour of gtk_notebook_set/get_group().
* The move-focus signal has been moved to GtkWidget, to unify the
various implementations of this signal in specific widgets. Great care
has been taken to make sure that all code using this signal continues
to work.
* An unused and hardly visible GtkFrame has been removed from the menu
widget hierarchy when GtkComboBox::appears-as-list style property is
set. Any RC file applying a different style to any widget below the
widget path "gtk-combobox-popup-window.GtkFrame" should take into
account that the frame no longer exists.
* The external print preview application used by GtkPrintOperationPreview
is now passed the print settings on the command line with the
--print-settings parameter pointing to a temp file containing the
settings. The preview application assumes ownership of the file and
should delete it once it does not need it anymore. The --print-settings
commandline option is understood by Evince 0.9.0 and newer. To use a
different print preview application, change the gtk-print-preview-command
setting in your gtkrc file, e.g. gtk-print-preview-command = "ggv %f"
* GtkMenuShell is now defined as an abstract type. It was already
documented as an abstract class, and there is little reason to
instantiate it.
* The GtkTooltips struct (this is the old tooltips API) is now considered
private. Code that used to access this struct, in particular the
tips_data_list field, will need to change. All of the old tooltips
API has been deprecated in favour of a new implementation and
API. This affects all of the gtk_tooltips_ functions, and functions
which take a GtkTooltips argument, such as gtk_tool_item_set_tooltip()
and gtk_menu_tool_button_set_arrow_tooltip().
* The memory management of the GtkRecentManager object has been changed,
as using the screen didn't guarantee that the singleton instance was
correctly destroyed. The screen-related functions have been deprecated,
and should not be used anymore; the GtkRecentManager instance returned by
the gtk_recent_manager_get_default() function is guaranteed to be valid
for the entire lifetime of an application.
* A number of interfaces that have been superseded by newer interfaces for
a long time have finally been deprecated. This includes
gtk_widget_ref/unref(), gtk_rc_style_ref/unref() and the old file selector.
* The various coordinate systems in use in GtkTreeView widgets have
been clarified in the documentation, and in the cause of doing so,
the functions gtk_tree_view_widget_to_tree_coords() and
gtk_tree_view_tree_to_widget_coords() have been deprecated in
favour of a new family of gtk_tree_view_convert_ functions.
* gtk_menu_item_remove_submenu() has been deprecated in favour of
gtk_menu_item_set_submenu (..., NULL).
* gtk_default_draw_check() has been fixed to really decrease the
indicator size by one pixel to ensure an odd size instead of
accidentially increasing it.
Consequently, gtk_cell_renderer_toggle_render() could be fixed to
not subtract 1 from the size passed to gtk_paint_option(), which
was just a workaround for above off-by-two for even sizes (theme
engines now get the real indicator size passed).
The default toggle size of GtkCheckMenuItem and GtkCellRendererToggle
has been changed to 13 to be consistent with GtkCheckButton.
The only visible change with default settings is that the indicator in
GtkCellRendererToggle has changed its size from 11 to 13 and is now
consistent with menus and toggle buttons.
* GTK+ has always required that gtk_init() (or a variant thereof) is
called before any other GTK+ function. Some applications call functions
like gtk_clipboard_get() to check if they need to call gtk_init(),
anyway. A change in GLib 2.14 has recently broken this unsupported
practise. It is worth pointing out that calling gtk_init() twice
does no harm.
Release notes for 2.10
======================
* The hexadecimal Unicode input feature has been reworked. It no longer
blocks the use of the sixteen Ctrl-Shift-<hex digit> key sequences. Now
it only uses Ctrl-Shift-u.
* A memory leak in GtkStyle handling has been fixed. This may expose bugs
in third-party widgets which forget to call gtk_style_attach() in their
realize functions.
* Range widgets like GtkScrollbar now render their arrows insensitive
when the slider is at the end. Applications which react to arrow
clicks even if the slider is at the end may want to use the new
gtk_range_set_[upper/lower]_stepper_sensitivity() functions to
prevent the arrows from being rendered insensitive.
* GtkObject now uses the "floating reference" support in GObject.
GTK_OBJECT_IS_FLOATING() will still work, but direct checking
of the GTK_FLOATING flag will no longer detect the floating
reference. Details about floating references can be found in the docs:
http://developer.gnome.org/doc/API/2.0/gobject/gobject-The-Base-Object-Type.html#floating-ref
* Accelerators like (_F) are now stripped from labels when they are
displayed in toolbars. If this is not wanted, the feature can be
suppressed by inserting a Unicode control character, e.g ZWNJ.
* The pixbuf theme engine can now customize expanders (in GtkTreeView
and GtkExpander) and resize grips, using the new EXPANDER and
RESIZE_GRIP function values.
* Dialogs created by gtk_about_dialog_new() no longer hide automatically
when the user clicks close. It is the applications responsibility to
hide or destroy the dialog.
* Several new signals have been added to GtkNotebook. Care has been taken
to choose signal names which do not collide with signals added by well-known
derived classes. The names which can no longer be used for signals in
objects derived from GtkNotebook are page-reordered, page-removed and
page-added.
* Due to the interface changes in the file chooser backend interface,
the GTK+ ABI version has been bumped to 2.10.0. Third-party filesystem
backends have to be ported to the new interface, other modules, such as
theme engines, input method modules or pixbuf loaders have to be rebuilt
so that they are installed in the right place for GTK+ to find them.
Release notes for 2.8
Release notes for 3.0
=====================
* GTK+ 2.8 and Pango 1.10 require the cairo library.
* GTK+ 3 is a major new version of GTK+, which is parallel installable
with GTK+ 2.x. For information about porting applications from GTK+ 2.x
to GTK+ 3, see the file:
* The default theme has been renamed to "Raleigh". Existing configurations
specifying the "Default" theme name should still work.
docs/reference/gtk/html/migrating.html
* The GtkTreeView::enable-search property has been changed to control
only typeahead search, not the C-f keybinding to start an interactive
search. To turn off interactive searching completely, you have to
set GtkTreeView::search-column to -1.
Or online at:
* The restriction on using the same cell renderer in multiple columns
of a GtkTreeView is now more strictly enforced.
http://library.gnome.org/devel/gtk/3.0/migrating.html
* In GTK+ 2.8, GtkCalendar uses nl_langinfo() (if available) to determine
the first day of the week. Thus, it is possible to select the first day
of the week independently from the language, by setting LC_TIME.
* In GTK+ 2.8, the gtk-update-icon-cache utility includes image data
in the icon caches, which will make the icon cache files larger than
the one produced by GTK+ 2.6. This change will reduce the memory
overhead of icon themes at runtime, since all GTK+ applications can
share the image data in memory.
* In 2.8, GDK emits GdkEventGrabBroken events when a keyboard or pointer
grab is broken. On X11, this can happen if the same application grabs
again, or if the window used for the grab becomes unviewable. It happens
more often on Win32. Applications which use grabs should pay attention
to these events and do the necessary cleanups when the grab is lost.
* The GIOChannel code for sockets on win32 has been rewritten.
Applications who make non-trivial use of GIOChannels on win32 should
be watched for possible problems.
* GLib 2.8 uses atomic operations to implement reference counting, thus
g_object_ref/unref, g_closure_ref/sink/unref and g_iochannel_ref/unref
can be used without locking in multithreaded applications. Note that
other modifications, like concurrent setting of properties still require
locking.
* g_convert() and related character set conversion functions have been
fixed to emit pending shift states and to not cache iconv descriptors
across multiple calls, since that is problematic for some encodings.
Note that these functions are not suitable for streaming conversions;
use g_iconv() to do streaming conversion.
Release notes for 2.6
=====================
* GTK+ 2.6 supports clipboard persistency. To make use of this feature,
a clipboard manager following the specification at
http://www.freedesktop.org/wiki/Standards/clipboard-manager-spec
must be running. A sample implementation of such a clipboard manager
is available at
http://people.imendio.com/andersca/archives/clipboard-manager-0.3.tar.gz
Applications can use the function gdk_display_supports_clipboard_persistence()
to find out if clipboard persistence is available.
* Notification on clipboard ownership changes via GdkOwnerChange events
requires the XFIXES X extension. Applications can use the function
gdk_display_supports_selection_notification() to find out if ownerchip
change notification is available.
* The icon theme code in GTK+ 2.6 follows the freedesktop.org icon theme
specification. Setting the XDG_DATA_DIRS environtment variable may be
necessary if your icons aren't installed in the default location
/usr/share/icons.
* The icon theme code in GTK+ 2.6 can make use of mmap()able cache files
to avoid a lot of disk searching overhead. GTK+ includes a utility named
gtk-update-icon-cache to generate these cache files. For further details,
see the gtk-update-icon-cache man page or the GTK+ documentation.
* To reduce code size and improve efficiency, GTK+, when compiled
with the GNU toolchain, has separate internal and external entry
points for exported functions. The internal names, which begin with
IA__, may be seen when debugging a GTK+ program.
* The following functions have been deprecated in GTK+ 2.6:
gdk_pango_context_set_colormap
gtk_cell_renderer_editing_canceled
* The new GtkFileChooser widget emphasizes simplicity and thus does
not provide a navigation entry by default when opening files.
Experienced command line users will likely want to make heavy use of
the location dialog brought up by the Control-L key shortcut.
* The GTK+ libraries use an '_' prefix to indicate private symbols that
must not be used by applications. On some platforms, symbols beginning
with prefixes such as _gtk, _gdk, and _pango will be exported
from the library, on others not. In no case can applications
use these private symbols. In addition to that, GTK+ 2.6 makes several
symbols private which were not in any installed header files and
were never intended to be exported.
* The gdk_pixbuf_xlib library included in the contrib/ directory
and the framebuffer GDK backend included in the gdk/linux-fb directory
of GTK+ are provided on an as-is basis and have not been tested at all.
No guarantees about the degree of workingness or about future
compatibility are provided.
* On Unix, the assumption of GLib and GTK+ by default is that filenames on
the filesystem are encoded in UTF-8 rather than the encoding of the locale;
the GTK+ developers consider that having filenames whose interpretation
depends on the current locale is fundamentally a bad idea.
If you have filenames encoded in the encoding of your locale, then you
may want to set the G_FILENAME_ENCODING environment variable:
G_FILENAME_ENCODING=@locale
export G_FILENAME_ENCODING
(Earlier versions of GLib 2.x required a different environment variable
setting; G_BROKEN_FILENAMES=1 to achieve the same effect; this
is still supported, but G_FILENAME_ENCODING is preferred.)
Best integration of GTK+ 2.6 with the environment is achieved by
using a UTF-8 locale.
On Windows, filenames passed to GTK+ should always be in UTF-8, as
in GLib 2.6. This is different than in previous versions of GTK+
where the system codepage was used. As in GLib, for DLL ABI
stability, applications built against previous versions of GTK+ will
use entry points providing the old semantics.
When compiling against GTK+ 2.6, applications intended to be
portable to Windows must take the UTF-8 file name encoding into
consideration, and use the gstdio wrappers to access files whose
names have been constructed from strings returned from GTK+ or GLib.
How to report bugs
==================
Bugs should be reported to the GNOME bug tracking system.
(http://bugzilla.gnome.org, product gtk+.) You will need to create an
account for yourself.
In the bug report please 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 one of the tests or demos built with GTK+,
such as demos/gtk-demo/gtk-demo, that would 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.
* 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.
Patches
=======
Patches should also be submitted to bugzilla.gnome.org. If the patch
fixes an existing bug, add the patch as an attachment to that bug
report.
Otherwise, enter a new bug report that describes the patch, and attach
the patch to that bug report.
Patches should be in unified diff form. (The -up option to GNU diff.)
* Note that the library sonames in this release have been changed from
libgtk-3.0 and libgdk-3.0 to libgtk-3 and libgdk-3, to prevent the
library versions from going backwards, compared to the 2.90/91/99
releases. Applications will have to be recompiled.

View File

@@ -85,7 +85,7 @@ LDFLAGS="-L/devel/dist/${ARCH}/${LIBPNG}/lib \
LIBS=-lintl \
CFLAGS=-O2 \
./configure \
--with-gdktarget=win32 \
--enable-win32-backend \
--disable-gdiplus \
--with-included-immodules \
--without-libjasper \

View File

@@ -1,130 +1,32 @@
#!/bin/sh
# Run this to generate all the initial makefiles, etc.
srcdir=`dirname $0`
test -z "$srcdir" && srcdir=.
test -n "$srcdir" || srcdir=`dirname "$0"`
test -n "$srcdir" || srcdir=.
ORIGDIR=`pwd`
cd $srcdir
PROJECT=Gtk+
TEST_TYPE=-d
FILE=gdk
olddir=`pwd`
cd "$srcdir"
DIE=0
have_libtool=false
if libtoolize --version < /dev/null > /dev/null 2>&1 ; then
libtool_version=`libtoolize --version |
head -1 |
sed -e 's/^\(.*\)([^)]*)\(.*\)$/\1\2/g' \
-e 's/^[^0-9]*\([0-9.][0-9.]*\).*/\1/'`
case $libtool_version in
2.2*)
have_libtool=true
;;
esac
fi
if $have_libtool ; then : ; else
echo
echo "You must have libtool 2.2 installed to compile $PROJECT."
echo "Install the appropriate package for your distribution,"
echo "or get the source tarball at http://ftp.gnu.org/gnu/libtool/"
DIE=1
fi
(gtkdocize --version) < /dev/null > /dev/null 2>&1 || {
echo
echo "You must have gtk-doc installed to compile $PROJECT."
echo "Install the appropriate package for your distribution,"
echo "or get the source tarball at http://ftp.gnome.org/pub/GNOME/sources/gtk-doc/"
DIE=1
}
(autoconf --version) < /dev/null > /dev/null 2>&1 || {
echo
echo "You must have autoconf installed to compile $PROJECT."
echo "Install the appropriate package for your distribution,"
echo "or get the source tarball at http://ftp.gnu.org/gnu/autoconf/"
DIE=1
}
if automake-1.11 --version < /dev/null > /dev/null 2>&1 ; then
AUTOMAKE=automake-1.11
ACLOCAL=aclocal-1.11
else if automake-1.10 --version < /dev/null > /dev/null 2>&1 ; then
AUTOMAKE=automake-1.10
ACLOCAL=aclocal-1.10
GTKDOCIZE=`which gtkdocize`
if test -z $GTKDOCIZE; then
echo "*** No GTK-Doc found, please install it ***"
exit 1
else
echo
echo "You must have automake 1,10.x or 1.11.x installed to compile $PROJECT."
echo "Install the appropriate package for your distribution,"
echo "or get the source tarball at http://ftp.gnu.org/gnu/automake/"
DIE=1
gtkdocize || exit $?
fi
fi
if test "$DIE" -eq 1; then
exit 1
fi
test $TEST_TYPE $FILE || {
echo "You must run this script in the top-level $PROJECT directory"
exit 1
}
# NOCONFIGURE is used by gnome-common; support both
if ! test -z "$AUTOGEN_SUBDIR_MODE"; then
NOCONFIGURE=1
fi
if test -z "$NOCONFIGURE"; then
if test -z "$*"; then
echo "I am going to run ./configure with no arguments - if you wish "
echo "to pass any to it, please specify them on the $0 command line."
fi
fi
if test -z "$ACLOCAL_FLAGS"; then
acdir=`$ACLOCAL --print-ac-dir`
m4list="glib-2.0.m4 glib-gettext.m4"
for file in $m4list
do
if [ ! -f "$acdir/$file" ]; then
echo "WARNING: aclocal's directory is $acdir, but..."
echo " no file $acdir/$file"
echo " You may see fatal macro warnings below."
echo " If these files are installed in /some/dir, set the ACLOCAL_FLAGS "
echo " environment variable to \"-I /some/dir\", or install"
echo " $acdir/$file."
echo ""
fi
done
fi
rm -rf autom4te.cache
# README and INSTALL are required by automake, but may be deleted by clean
# up rules. to get automake to work, simply touch these here, they will be
# regenerated from their corresponding *.in files by ./configure anyway.
touch README INSTALL
gtkdocize || exit $?
$ACLOCAL -I m4 $ACLOCAL_FLAGS || exit $?
libtoolize --force || exit $?
autoheader || exit $?
$AUTOMAKE --add-missing || exit $?
autoconf || exit $?
cd $ORIGDIR || exit $?
if test -z "$NOCONFIGURE"; then
$srcdir/configure --enable-maintainer-mode $AUTOGEN_CONFIGURE_ARGS "$@" || exit $?
echo
echo "Now type 'make' to compile $PROJECT."
AUTORECONF=`which autoreconf`
if test -z $AUTORECONF; then
echo "*** No autoreconf found, please install it ***"
exit 1
else
autoreconf --force --install --verbose || exit $?
fi
cd "$olddir"
test -n "$NOCONFIGURE" || "$srcdir/configure" "$@"

View File

@@ -4,9 +4,6 @@ EXTRA_DIST += \
README.txt \
gtk+.sln \
gtk+.vsprops \
gdk-pixbuf.vcproj \
gdk-pixbuf-csource.vcproj \
gdk-pixbuf-query-loaders.vcproj \
gdk-win32.vcproj \
gdk.vcproj \
gdk.vcprojin \

View File

@@ -6,17 +6,18 @@ first need to use some Unix-like environment or manual work to expand
the files needed, like config.h.win32.in into config.h.win32 and the
.vcprojin files here into corresponding actual .vcproj files.
You will need the parts from below in the GTK+ stack: pango, atk and
glib. External dependencies are at least zlib, libpng, proxy-libintl,
fontconfig, freetype, expat. See the corresponding README.txt file in
glib for details where to unpack them.
You will need the parts from below in the GTK+ stack: gdk-pixbuf, pango,
atk and glib. External dependencies are at least zlib, libpng,
proxy-libintl, fontconfig, freetype, expat. See the corresponding
README.txt file in glib for details where to unpack them.
The "install" project will copy build results and headers into their
appropriate location under <root>\vs9\<PlatformName>. For instance,
built DLLs go into <root>\vs9\<PlatformName>\bin, built LIBs into
<root>\vs9\<PlatformName>\lib and GTK+ headers into
<root>\vs9\<PlatformName>\include\gtk-2.0. This is then from where
<root>\vs9\<PlatformName>\include\gtk-3.0. This is then from where
project files higher in the stack are supposed to look for them, not
from a specific GLib source tree.
--Tor Lillqvist <tml@iki.fi>
--Updated by Chun-wei Fan <fanc999 --at-- yahoo --dot-- com --dot-- tw>

View File

@@ -1,166 +0,0 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9,00"
Name="gdk-pixbuf-csource"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}"
RootNamespace="gdkpixbufcsource"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="_CRT_NONSTDC_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="_CRT_NONSTDC_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|Win32"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="_CRT_NONSTDC_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|x64"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="_CRT_NONSTDC_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-csource.c" />
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@@ -1,166 +0,0 @@
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gdk-pixbuf-query-loaders"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}"
RootNamespace="gdkpixbufqueryloaders"
Keyword="Win32Proj"
TargetFrameworkVersion="131072"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="_DEBUG;GDK_PIXBUF_COMPILATION;GDK_PIXBUF_ENABLE_BACKEND;$(GtkPrefixDefine);$(GdkPixbufLibdirDefine)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="_DEBUG;GDK_PIXBUF_COMPILATION;GDK_PIXBUF_ENABLE_BACKEND"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|Win32"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="GDK_PIXBUF_COMPILATION;GDK_PIXBUF_ENABLE_BACKEND"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|x64"
ConfigurationType="1"
InheritedPropertySheets=".\gtk+.vsprops"
CharacterSet="2"
WholeProgramOptimization="1"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="GDK_PIXBUF_COMPILATION;GDK_PIXBUF_ENABLE_BACKEND"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
CompileAs="1"
/>
<Tool
Name="VCLinkerTool"
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File RelativePath="..\..\..\gdk-pixbuf\queryloaders.c" />
</Filter>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
</Files>
<Globals>
</Globals>
</VisualStudioProject>

View File

@@ -1,258 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
Name="gdk_pixbuf"
ProjectGUID="{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}"
RootNamespace="gdk_pixbuf"
Keyword="Win32Proj"
TargetFrameworkVersion="0"
>
<Platforms>
<Platform
Name="Win32"
/>
<Platform
Name="x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name="Debug|Win32"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="_DEBUG;$(GdkPixbufDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="4"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="libpng.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk-pixbuf.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-$(GtkApiVersion).lib"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Release|Win32"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="$(GdkPixbufDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCManagedResourceCompilerTool"
/>
<Tool
Name="VCResourceCompilerTool"
/>
<Tool
Name="VCPreLinkEventTool"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="libpng.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk-pixbuf.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(TargetDir)$(ProjectName)-$(GtkApiVersion).lib"
TargetMachine="1"
/>
</Configuration>
<Configuration
Name="Debug|x64"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
Optimization="0"
PreprocessorDefinitions="_DEBUG;$(GdkPixbufDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="libpng.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk-pixbuf.def"
GenerateDebugInformation="true"
SubSystem="2"
ImportLibrary="$(TargetDir)$(ProjectName)-$(GtkApiVersion).lib"
TargetMachine="17"
/>
</Configuration>
<Configuration
Name="Release|x64"
InheritedPropertySheets=".\gtk+.vsprops"
ConfigurationType="2"
CharacterSet="2"
>
<Tool
Name="VCPreBuildEventTool"
/>
<Tool
Name="VCCLCompilerTool"
PreprocessorDefinitions="$(GdkPixbufDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
WarningLevel="3"
DebugInformationFormat="3"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="libpng.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk-pixbuf.def"
GenerateDebugInformation="true"
SubSystem="2"
OptimizeReferences="2"
EnableCOMDATFolding="2"
ImportLibrary="$(TargetDir)$(ProjectName)-$(GtkApiVersion).lib"
TargetMachine="17"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<Filter
Name="Header Files"
Filter="h;hpp;hxx;hm;inl;inc;xsd"
UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
>
</Filter>
<Filter
Name="Resource Files"
Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx"
UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
>
<File
RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf.symbols"
>
<FileConfiguration
Name="Debug|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk-pixbuf.def"
CommandLine="$(GtkGenerateGdkPixbufDef)"
Outputs="$(IntDir)\gdk-pixbuf.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Debug|x64"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk-pixbuf.def"
CommandLine="$(GtkGenerateGdkPixbufDef)"
Outputs="$(IntDir)\gdk-pixbuf.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|Win32"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk-pixbuf.def"
CommandLine="$(GtkGenerateGdkPixbufDef)"
Outputs="$(IntDir)\gdk-pixbuf.def"
/>
</FileConfiguration>
<FileConfiguration
Name="Release|x64"
>
<Tool
Name="VCCustomBuildTool"
Description="Generating gdk-pixbuf.def"
CommandLine="$(GtkGenerateGdkPixbufDef)"
Outputs="$(IntDir)\gdk-pixbuf.def"
/>
</FileConfiguration>
</File>
</Filter>
<Filter
Name="Source Files"
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-aliasdef.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-animation.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-data.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-enum-types.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-io.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-loader.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-scale.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-scaled-anim.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-simple-anim.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixbuf-util.c" />
<File RelativePath="..\..\..\gdk-pixbuf\gdk-pixdata.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-ani.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-ani-animation.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-utils.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-animation.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-bmp.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-emf.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-gif.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-ico.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-jpeg.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-tiff.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gdip-wmf.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-gif-animation.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-icns.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-pcx.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-png.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-pnm.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-ras.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-tga.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-wbmp.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-xbm.c" />
<File RelativePath="..\..\..\gdk-pixbuf\io-xpm.c" />
<File RelativePath="..\..\..\gdk-pixbuf\pixops\pixops.c" />
</Filter>
</Files>
</VisualStudioProject>

View File

@@ -31,7 +31,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="_DEBUG;$(GdkDefines);INSIDE_GDK_WIN32"
MinimalRebuild="true"
BasicRuntimeChecks="3"
@@ -52,7 +52,7 @@
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GdkDefines);INSIDE_GDK_WIN32"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
@@ -72,7 +72,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="_DEBUG;$(GdkDefines);INSIDE_GDK_WIN32"
MinimalRebuild="true"
BasicRuntimeChecks="3"
@@ -93,7 +93,7 @@
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GdkDefines);INSIDE_GDK_WIN32"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
@@ -122,29 +122,24 @@
Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
<File RelativePath="..\..\..\gdk\win32\gdkapplaunchcontext-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkcolor-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkcursor-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkdevice-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkdevice-wintab.c" />
<File RelativePath="..\..\..\gdk\win32\gdkdevicemanager-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkdisplay-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkdnd-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkdrawable-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkevents-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkfont-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkgc-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkgeometry-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkglobals-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkim-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkinput-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkinput.c" />
<File RelativePath="..\..\..\gdk\win32\gdkkeys-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkmain-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkpixmap-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkproperty-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkscreen-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkselection-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkspawn-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdktestutils-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkvisual-win32.c" />
<File RelativePath="..\..\..\gdk\win32\gdkwin32displaymanager.c" />
<File RelativePath="..\..\..\gdk\win32\gdkwin32id.c" />
<File RelativePath="..\..\..\gdk\win32\gdkwindow-win32.c" />
</Filter>

View File

@@ -31,7 +31,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="_DEBUG;$(GdkDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
@@ -42,7 +42,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib imm32.lib"
AdditionalDependencies="imm32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk.def"
@@ -63,7 +63,7 @@
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GdkDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
@@ -72,7 +72,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib"
AdditionalDependencies="imm32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk.def"
@@ -96,7 +96,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="_DEBUG;$(GdkDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
@@ -107,7 +107,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib"
AdditionalDependencies="imm32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk.def"
@@ -128,7 +128,7 @@
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GdkDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
@@ -137,7 +137,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib"
AdditionalDependencies="imm32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gdk.def"
@@ -208,6 +208,7 @@
/>
</FileConfiguration>
</File>
<File RelativePath="..\..\..\gdk\win32\rc\gdk.rc" />
</Filter>
<Filter
Name="Source Files"
@@ -215,6 +216,7 @@
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
>
#include "libgdk.sourcefiles"
<File RelativePath="..\..\..\gdk\gdkkeynames.c" />
</Filter>
</Files>
</VisualStudioProject>

View File

@@ -1,43 +1,25 @@
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdk-pixbuf", "gdk-pixbuf.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdk-pixbuf-csource", "gdk-pixbuf-csource.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdk-pixbuf-query-loaders", "gdk-pixbuf-query-loaders.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdk-win32", "gdk-win32.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gdk", "gdk.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FA}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gtk", "gtk.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gtk-demo", "gtk-demo.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "install", "install.vcproj", "{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FB}"
ProjectSection(ProjectDependencies) = postProject
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F5}
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC} = {FC5AADB5-95CD-4BF0-BA8B-0C16FE7073FC}
@@ -51,30 +33,6 @@ Global
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F6}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F8}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Debug|x64.ActiveCfg = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Debug|x64.Build.0 = Debug|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Release|Win32.ActiveCfg = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Release|Win32.Build.0 = Release|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Release|x64.ActiveCfg = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F9}.Release|x64.Build.0 = Release|x64
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|Win32.ActiveCfg = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|Win32.Build.0 = Debug|Win32
{FC5AADB5-95CD-4BF0-BA8B-0C16FE7073F7}.Debug|x64.ActiveCfg = Debug|x64

View File

@@ -8,13 +8,13 @@
>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..;$(GlibEtcInstallRoot)\lib\glib-2.0\include;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\include;$(GlibEtcInstallRoot)\include\cairo;$(GlibEtcInstallRoot)\include\atk-1.0;$(GlibEtcInstallRoot)\include\pango-1.0"
AdditionalIncludeDirectories="..\..\..;$(GlibEtcInstallRoot)\lib\glib-2.0\include;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\include;$(GlibEtcInstallRoot)\include\cairo;$(GlibEtcInstallRoot)\include\atk-1.0;$(GlibEtcInstallRoot)\include\pango-1.0;$(GlibEtcInstallRoot)\include\GdkPixbuf-2.0"
PreprocessorDefinitions="HAVE_CONFIG_H;G_DISABLE_DEPRECATED;G_DISABLE_SINGLE_INCLUDES;ATK_DISABLE_SINGLE_INCLUDES;GDK_PIXBUF_DISABLE_SINGLE_INCLUDES;GTK_DISABLE_SINGLE_INCLUDES"
ForcedIncludeFiles="msvc_recommended_pragmas.h"
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="gio-2.0.lib gmodule-2.0.lib gobject-2.0.lib glib-2.0.lib intl.lib"
AdditionalDependencies="gdk_pixbuf-2.0.lib pangocairo-1.0.lib pango-1.0.lib cairo.lib gio-2.0.lib gmodule-2.0.lib gobject-2.0.lib glib-2.0.lib intl.lib"
AdditionalLibraryDirectories="$(GlibEtcInstallRoot)\lib"
/>
<Tool
@@ -24,9 +24,7 @@ if exist ..\..\..\config.h goto DONE_CONFIG_H&#x0D;&#x0A;
copy ..\..\..\config.h.win32 ..\..\..\config.h&#x0D;&#x0A;
:DONE_CONFIG_H&#x0D;&#x0A;
if exist ..\..\..\gdk\gdkconfig.h goto DONE_GDKCONFIG_H&#x0D;&#x0A;
copy ..\..\..\gdk\gdkconfig.h.win32 ..\..\..\gdk\gdkconfig.h&#x0D;&#x0A;
:DONE_GDKCONFIG_H&#x0D;&#x0A;
"
/>
<UserMacro
@@ -45,18 +43,6 @@ copy ..\..\..\gdk\gdkconfig.h.win32 ..\..\..\gdk\gdkconfig.h&#x0D;&#x0A;
Name="GtkPrefixDefine"
Value="GTK_PREFIX=\&quot;$(GtkDummyPrefix)\&quot;"
/>
<UserMacro
Name="GdkPixbufIncludedLoaderDefines"
Value="INCLUDE_ani;INCLUDE_icns;INCLUDE_pcx;INCLUDE_ras;INCLUDE_tga;INCLUDE_png;INCLUDE_pnm;INCLUDE_wbmp;INCLUDE_xbm;INCLUDE_xpm;INCLUDE_gdiplus"
/>
<UserMacro
Name="GdkPixbufDefines"
Value="GDK_PIXBUF_COMPILATION;GDK_PIXBUF_ENABLE_BACKEND;$(GtkPrefixDefine);$(GdkPixbufIncludedLoaderDefines)"
/>
<UserMacro
Name="GdkPixbufLibdirDefine"
Value="PIXBUF_LIBDIR=\&quot;$(GtkDummyPrefix)/lib/gtk-$(GtkApiVersion)/$(GtkBinaryVersion)/loaders\&quot;"
/>
<UserMacro
Name="GdkDefines"
Value="GDK_COMPILATION;G_LOG_DOMAIN=\&quot;Gdk\&quot;"
@@ -75,53 +61,45 @@ copy ..\..\..\gdk\gdkconfig.h.win32 ..\..\..\gdk\gdkconfig.h&#x0D;&#x0A;
echo on&#x0D;&#x0A;
mkdir $(OutDir)\bin&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\*.dll $(OutDir)\bin&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\*.exe $(OutDir)\bin&#x0D;&#x0A;
mkdir $(OutDir)\bin\gtk3-demo&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\*.exe $(OutDir)\bin\gtk3-demo&#x0D;&#x0A;
copy ..\..\..\demos\gtk-demo\*.c $(OutDir)\bin\gtk3-demo&#x0D;&#x0A;
copy ..\..\..\demos\gtk-demo\*.h $(OutDir)\bin\gtk3-demo&#x0D;&#x0A;
copy ..\..\..\demos\gtk-demo\*.ui $(OutDir)\bin\gtk3-demo&#x0D;&#x0A;
copy ..\..\..\demos\gtk-demo\*.jpg $(OutDir)\bin\gtk3-demo&#x0D;&#x0A;
copy ..\..\..\demos\gtk-demo\*.png $(OutDir)\bin\gtk3-demo&#x0D;&#x0A;
copy ..\..\..\demos\gtk-demo\*.gif $(OutDir)\bin\gtk3-demo&#x0D;&#x0A;
mkdir $(OutDir)\lib&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\*-$(GtkApiVersion).lib $(OutDir)\lib&#x0D;&#x0A;
mkdir $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-animation.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-core.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-enum-types.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-features.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-io.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-loader.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-marshal.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-simple-anim.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf-transform.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixbuf.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
copy ..\..\..\gdk-pixbuf\gdk-pixdata.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk-pixbuf&#x0D;&#x0A;
mkdir $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdk.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkapplaunchcontext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkcairo.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkcolor.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkcursor.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkdevice.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkdevicemanager.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkdisplay.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkdisplaymanager.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkdnd.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkdrawable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkenumtypes.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkevents.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkfont.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkgc.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdki18n.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkinput.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkkeys.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkkeysyms.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkmain.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkpango.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkpixbuf.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkpixmap.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkprivate.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkproperty.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkregion.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkrgb.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkrectangle.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkrgba.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkscreen.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkselection.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkspawn.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdktestutils.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkthreads.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdktypes.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\gdkvisual.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
copy ..\..\..\gdk\win32\gdkwin32.h $(OutDir)\include\gtk-$(GtkApiVersion)\gdk&#x0D;&#x0A;
@@ -131,6 +109,7 @@ mkdir $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtk.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkaboutdialog.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkaccelgroup.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkaccelgroupprivate.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkaccellabel.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkaccelmap.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkaccessible.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
@@ -139,6 +118,11 @@ copy ..\..\..\gtk\gtkactiongroup.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x
copy ..\..\..\gtk\gtkactivatable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkadjustment.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkalignment.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkappchooser.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkappchooserbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkappchooserdialog.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkappchooserwidget.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkapplication.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkarrow.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkaspectframe.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkassistant.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
@@ -146,10 +130,14 @@ copy ..\..\..\gtk\gtkbbox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0
copy ..\..\..\gtk\gtkbin.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkbindings.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkbox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkborder.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkbuildable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkbuilder.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcalendar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellarea.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellareabox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellareacontext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcelleditable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcelllayout.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellrenderer.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
@@ -158,22 +146,20 @@ copy ..\..\..\gtk\gtkcellrenderercombo.h $(OutDir)\include\gtk-$(GtkApiVersion)\
copy ..\..\..\gtk\gtkcellrendererpixbuf.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellrendererprogress.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellrendererspin.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellrendererspinner.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellrenderertext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellrenderertoggle.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcellview.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcheckbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcheckmenuitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkclipboard.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkclist.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcolorbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcolorsel.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcolorseldialog.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcombo.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcombobox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcomboboxentry.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcomboboxtext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcontainer.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkctree.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcurve.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkcssprovider.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkdebug.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkdialog.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkdnd.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
@@ -190,18 +176,16 @@ copy ..\..\..\gtk\gtkfilechooserbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\
copy ..\..\..\gtk\gtkfilechooserdialog.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfilechooserwidget.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfilefilter.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfilesel.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfixed.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfontbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkfontsel.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkframe.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkgamma.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkgc.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkgradient.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkgrid.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhandlebox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhbbox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhbox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhpaned.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhruler.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhscale.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhscrollbar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkhseparator.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
@@ -216,18 +200,12 @@ copy ..\..\..\gtk\gtkimcontextsimple.h $(OutDir)\include\gtk-$(GtkApiVersion)\gt
copy ..\..\..\gtk\gtkimmodule.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkimmulticontext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkinfobar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkinputdialog.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkinvisible.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkitemfactory.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtklabel.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtklayout.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtklinkbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtklist.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtklistitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkliststore.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmain.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmarshal.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmenu.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmenubar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmenuitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
@@ -238,22 +216,18 @@ copy ..\..\..\gtk\gtkmisc.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0
copy ..\..\..\gtk\gtkmodules.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkmountoperation.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtknotebook.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkobject.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkoldeditable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkoptionmenu.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtknumerableicon.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkoffscreenwindow.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkorientable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkpagesetup.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkpaned.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkpapersize.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkpixmap.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkplug.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkpreview.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkprintcontext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkprintoperation.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkprintoperationpreview.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkprintsettings.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkprivate.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkprogress.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkprogressbar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkradioaction.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkradiobutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
@@ -268,9 +242,9 @@ copy ..\..\..\gtk\gtkrecentchoosermenu.h $(OutDir)\include\gtk-$(GtkApiVersion)\
copy ..\..\..\gtk\gtkrecentchooserwidget.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkrecentfilter.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkrecentmanager.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkruler.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkscale.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkscalebutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkscrollable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkscrollbar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkscrolledwindow.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkselection.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
@@ -279,18 +253,24 @@ copy ..\..\..\gtk\gtkseparatormenuitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\
copy ..\..\..\gtk\gtkseparatortoolitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtksettings.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkshow.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtksignal.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtksizegroup.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtksizerequest.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtksocket.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkspinbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkspinner.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkstatusbar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkstatusicon.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkstock.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkstyle.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkstylecontext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkstyleproperties.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkstyleprovider.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkswitch.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtksymboliccolor.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktearoffmenuitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktestutils.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktextattributes.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktextbuffer.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktextbufferrichtext.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktextchild.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
@@ -301,19 +281,18 @@ copy ..\..\..\gtk\gtktextmark.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;
copy ..\..\..\gtk\gtktexttag.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktexttagtable.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktextview.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktipsquery.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkthemingengine.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktoggleaction.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktogglebutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktoggletoolbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktoolbar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktoolbutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktoolitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktoolitemgroup.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktoolpalette.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktoolshell.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktooltip.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktooltips.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktree.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreednd.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreeitem.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreemodel.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreemodelfilter.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreemodelsort.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
@@ -323,7 +302,6 @@ copy ..\..\..\gtk\gtktreestore.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D
copy ..\..\..\gtk\gtktreeview.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktreeviewcolumn.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktypebuiltins.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtktypeutils.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkuimanager.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvbbox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvbox.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
@@ -331,30 +309,26 @@ copy ..\..\..\gtk\gtkversion.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&
copy ..\..\..\gtk\gtkviewport.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvolumebutton.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvpaned.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvruler.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvscale.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvscrollbar.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkvseparator.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkwidget.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkwidgetpath.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
copy ..\..\..\gtk\gtkwindow.h $(OutDir)\include\gtk-$(GtkApiVersion)\gtk&#x0D;&#x0A;
mkdir $(OutDir)\lib\gtk-$(GtkApiVersion)\include&#x0D;&#x0A;
copy ..\..\..\gdk\gdkconfig.h $(OutDir)\lib\gtk-$(GtkApiVersion)\include&#x0D;&#x0A;
copy ..\..\..\gdk\gdkconfig.h $(OutDir)\include\gtk-3.0\gdk&#x0D;&#x0A;
copy $(ConfigurationName)\$(PlatformName)\bin\*-$(GtkApiVersion).lib $(OutDir)\lib&#x0D;&#x0A;
"
/>
<UserMacro
Name="GtkGenerateGdkPixbufDef"
Value="echo EXPORTS &gt;&quot;$(IntDir)\gdk-pixbuf.def&quot; &amp;&amp; cl /EP -DG_OS_WIN32 -DINCLUDE_VARIABLES -DALL_FILES -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= ..\..\..\gdk-pixbuf\gdk-pixbuf.symbols &gt;&gt;&quot;$(IntDir)\gdk-pixbuf.def&quot;"
/>
<UserMacro
Name="GtkGenerateGdkDef"
Value="echo EXPORTS &gt;&quot;$(IntDir)\gdk.def&quot; &amp;&amp; cl /EP -DGDK_WINDOWING_WIN32 -DALL_FILES -DG_GNUC_CONST= ..\..\..\gdk\gdk.symbols &gt;&gt;&quot;$(IntDir)\gdk.def&quot;"
/>
<UserMacro
Name="GtkGenerateGtkDef"
Value="echo EXPORTS &gt;&quot;$(IntDir)\gtk.def&quot; &amp;&amp; cl /EP -DINCLUDE_VARIABLES -DG_OS_WIN32 -DALL_FILES -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_PRINTF=;G_GNUC_PRINTF ..\..\..\gtk\gtk.symbols &gt;&gt;&quot;$(IntDir)\gtk.def&quot;"
Value="echo EXPORTS &gt;&quot;$(IntDir)\gtk.def&quot; &amp;&amp; cl /EP -DGDK_WINDOWING_WIN32 -DINCLUDE_VARIABLES -DG_OS_WIN32 -DALL_FILES -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_PRINTF=;G_GNUC_PRINTF ..\..\..\gtk\gtk.symbols &gt;&gt;&quot;$(IntDir)\gtk.def&quot;"
/>
<UserMacro
Name="GtkLibtoolCompatibleDllPrefix"
@@ -370,17 +344,17 @@ copy $(ConfigurationName)\$(PlatformName)\bin\*-$(GtkApiVersion).lib $(OutDir)\l
/>
<UserMacro
Name="GtkSeparateVS9DllSuffix"
Value="-2-vs9"
Value="-3-vs9"
/>
<!-- Change these two to GtkLibtoolCompatibleDllPrefix and
GtkLibtoolCompatibleDllSuffix if that is what you want -->
<UserMacro
Name="GtkDllPrefix"
Value="$(GtkLibtoolCompatibleDllPrefix)"
Value="$(GtkSeparateVS9DllPrefix)"
/>
<UserMacro
Name="GtkDllSuffix"
Value="$(GtkLibtoolCompatibleDllSuffix)"
Value="$(GtkSeparateVS9DllSuffix)"
/>
<UserMacro
Name="GlibEtcInstallRoot"

View File

@@ -31,7 +31,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions="_DEBUG;$(GtkPrefixDefine)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
@@ -43,7 +43,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib pango-1.0.lib pangocairo-1.0.lib"
AdditionalDependencies=""
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="1"
@@ -64,7 +64,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions="_DEBUG;$(GtkPrefixDefine)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
@@ -76,9 +76,10 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies=""
LinkIncremental="2"
GenerateDebugInformation="true"
SubSystem="2"
SubSystem="1"
RandomizedBaseAddress="1"
DataExecutionPrevention="0"
TargetMachine="17"
@@ -96,7 +97,7 @@
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions="$(GtkPrefixDefine)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
@@ -106,9 +107,10 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies=""
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
RandomizedBaseAddress="1"
@@ -128,7 +130,7 @@
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions="$(GtkPrefixDefine)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
@@ -138,9 +140,10 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies=""
LinkIncremental="1"
GenerateDebugInformation="true"
SubSystem="2"
SubSystem="1"
OptimizeReferences="2"
EnableCOMDATFolding="2"
RandomizedBaseAddress="1"

View File

@@ -31,7 +31,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gtk"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gtk"
PreprocessorDefinitions="_DEBUG;$(GtkDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
@@ -42,7 +42,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib atk-1.0.lib pango-1.0.lib pangocairo-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
AdditionalDependencies="atk-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gtk.def"
@@ -63,7 +63,7 @@
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GtkDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
@@ -72,7 +72,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib atk-1.0.lib pango-1.0.lib pangocairo-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
AdditionalDependencies="atk-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gtk.def"
@@ -96,7 +96,7 @@
<Tool
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="_DEBUG;$(GtkDefines)"
MinimalRebuild="true"
BasicRuntimeChecks="3"
@@ -107,7 +107,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib atk-1.0.lib pango-1.0.lib pangocairo-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
AdditionalDependencies="atk-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gtk.def"
@@ -128,7 +128,7 @@
/>
<Tool
Name="VCCLCompilerTool"
AdditionalIncludeDirectories="..\..\..\gdk-pixbuf;..\..\..\gdk;..\..\..\gdk\win32"
AdditionalIncludeDirectories="..\..\..\gdk;..\..\..\gdk\win32"
PreprocessorDefinitions="$(GtkDefines)"
RuntimeLibrary="2"
UsePrecompiledHeader="0"
@@ -137,7 +137,7 @@
/>
<Tool
Name="VCLinkerTool"
AdditionalDependencies="cairo.lib atk-1.0.lib pango-1.0.lib pangocairo-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
AdditionalDependencies="atk-1.0.lib pangowin32-1.0.lib imm32.lib winspool.lib comctl32.lib"
OutputFile="$(OutDir)\$(GtkDllPrefix)$(ProjectName)-win32$(GtkDllSuffix).dll"
LinkIncremental="2"
ModuleDefinitionFile="$(IntDir)\gtk.def"
@@ -208,6 +208,7 @@
/>
</FileConfiguration>
</File>
<File RelativePath="..\..\..\gtk\gtk-win32.rc" />
</Filter>
<Filter
Name="Source Files"

View File

@@ -276,12 +276,6 @@
/* Whether to load modules via .la files rather than directly */
/* #undef USE_LA_MODULES */
/* Define to 1 if medialib is available and should be used */
/* #undef USE_MEDIALIB */
/* Define to 1 if medialib 2.5 is available */
/* #undef USE_MEDIALIB25 */
/* Define to 1 if XXM is available and should be used */
#ifndef _MSC_VER
# define USE_MMX 1

File diff suppressed because it is too large Load Diff

View File

@@ -11,14 +11,13 @@ INCLUDES = \
$(GTK_DEBUG_FLAGS) \
$(GTK_DEP_CFLAGS)
DEPS = \
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib)
DEPS = \
$(top_builddir)/gtk/libgtk-3.la
LDADDS = \
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib) \
$(GTK_DEP_LIBS) \
LDADDS = \
$(top_builddir)/gtk/libgtk-3.la \
$(top_builddir)/gdk/libgdk-3.la \
$(GTK_DEP_LIBS) \
$(MATH_LIB)
noinst_PROGRAMS = \

View File

@@ -55,13 +55,12 @@ INCLUDES = \
$(GTK_DEP_CFLAGS)
DEPS = \
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib)
$(top_builddir)/gtk/libgtk-3.la
LDADDS = \
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib) \
$(GTK_DEP_LIBS) \
$(top_builddir)/gtk/libgtk-3.la \
$(top_builddir)/gdk/libgdk-3.la \
$(GTK_DEP_LIBS) \
-lm
bin_PROGRAMS = gtk3-demo

View File

@@ -384,23 +384,6 @@ mark_set_callback (GtkTextBuffer *buffer,
update_statusbar (buffer, GTK_STATUSBAR (data));
}
static void
update_resize_grip (GtkWidget *widget,
GdkEventWindowState *event,
GtkStatusbar *statusbar)
{
if (event->changed_mask & (GDK_WINDOW_STATE_MAXIMIZED |
GDK_WINDOW_STATE_FULLSCREEN))
{
gboolean maximized;
maximized = event->new_window_state & (GDK_WINDOW_STATE_MAXIMIZED |
GDK_WINDOW_STATE_FULLSCREEN);
gtk_statusbar_set_has_resize_grip (statusbar, !maximized);
}
}
GtkWidget *
do_appwindow (GtkWidget *do_widget)
{
@@ -569,12 +552,6 @@ do_appwindow (GtkWidget *do_widget)
statusbar,
0);
g_signal_connect_object (window,
"window_state_event",
G_CALLBACK (update_resize_grip),
statusbar,
0);
update_statusbar (buffer, GTK_STATUSBAR (statusbar));
}

View File

@@ -94,7 +94,7 @@ create_page1 (GtkWidget *assistant)
GtkWidget *box, *label, *entry;
GdkPixbuf *pixbuf;
box = gtk_hbox_new (FALSE, 12);
box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 12);
gtk_container_set_border_width (GTK_CONTAINER (box), 12);
label = gtk_label_new ("You must fill out this entry to continue:");
@@ -110,7 +110,7 @@ create_page1 (GtkWidget *assistant)
gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), box, "Page 1");
gtk_assistant_set_page_type (GTK_ASSISTANT (assistant), box, GTK_ASSISTANT_PAGE_INTRO);
pixbuf = gtk_widget_render_icon (assistant, GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DIALOG, NULL);
pixbuf = gtk_widget_render_icon_pixbuf (assistant, GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DIALOG);
gtk_assistant_set_page_header_image (GTK_ASSISTANT (assistant), box, pixbuf);
g_object_unref (pixbuf);
}
@@ -121,7 +121,7 @@ create_page2 (GtkWidget *assistant)
GtkWidget *box, *checkbutton;
GdkPixbuf *pixbuf;
box = gtk_vbox_new (12, FALSE);
box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 12);
gtk_container_set_border_width (GTK_CONTAINER (box), 12);
checkbutton = gtk_check_button_new_with_label ("This is optional data, you may continue "
@@ -133,7 +133,7 @@ create_page2 (GtkWidget *assistant)
gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), box, TRUE);
gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), box, "Page 2");
pixbuf = gtk_widget_render_icon (assistant, GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DIALOG, NULL);
pixbuf = gtk_widget_render_icon_pixbuf (assistant, GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DIALOG);
gtk_assistant_set_page_header_image (GTK_ASSISTANT (assistant), box, pixbuf);
g_object_unref (pixbuf);
}
@@ -152,7 +152,7 @@ create_page3 (GtkWidget *assistant)
gtk_assistant_set_page_complete (GTK_ASSISTANT (assistant), label, TRUE);
gtk_assistant_set_page_title (GTK_ASSISTANT (assistant), label, "Confirmation");
pixbuf = gtk_widget_render_icon (assistant, GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DIALOG, NULL);
pixbuf = gtk_widget_render_icon_pixbuf (assistant, GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_DIALOG);
gtk_assistant_set_page_header_image (GTK_ASSISTANT (assistant), label, pixbuf);
g_object_unref (pixbuf);
}

View File

@@ -18,9 +18,9 @@ create_bbox (gint horizontal,
frame = gtk_frame_new (title);
if (horizontal)
bbox = gtk_hbutton_box_new ();
bbox = gtk_button_box_new (GTK_ORIENTATION_HORIZONTAL);
else
bbox = gtk_vbutton_box_new ();
bbox = gtk_button_box_new (GTK_ORIENTATION_VERTICAL);
gtk_container_set_border_width (GTK_CONTAINER (bbox), 5);
gtk_container_add (GTK_CONTAINER (frame), bbox);
@@ -63,13 +63,13 @@ do_button_box (GtkWidget *do_widget)
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
main_vbox = gtk_vbox_new (FALSE, 0);
main_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_add (GTK_CONTAINER (window), main_vbox);
frame_horz = gtk_frame_new ("Horizontal Button Boxes");
gtk_box_pack_start (GTK_BOX (main_vbox), frame_horz, TRUE, TRUE, 10);
vbox = gtk_vbox_new (FALSE, 0);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 10);
gtk_container_add (GTK_CONTAINER (frame_horz), vbox);
@@ -92,7 +92,7 @@ do_button_box (GtkWidget *do_widget)
frame_vert = gtk_frame_new ("Vertical Button Boxes");
gtk_box_pack_start (GTK_BOX (main_vbox), frame_vert, TRUE, TRUE, 10);
hbox = gtk_hbox_new (FALSE, 0);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 10);
gtk_container_add (GTK_CONTAINER (frame_vert), hbox);

View File

@@ -27,6 +27,9 @@
* - Using GtkDialog
*/
#include <string.h>
#undef GDK_DISABLE_DEPRECATED
#include <gtk/gtk.h>
#include "demo-common.h"
@@ -151,7 +154,7 @@ query_for_toplevel (GdkScreen *screen,
toplevel = NULL;
}
gdk_cursor_unref (cursor);
g_object_unref (cursor);
gtk_widget_destroy (popup);
gdk_flush (); /* Really release the grab */
@@ -357,7 +360,7 @@ create_frame (ChangeDisplayInfo *info,
*frame = gtk_frame_new (title);
hbox = gtk_hbox_new (FALSE, 8);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 8);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 8);
gtk_container_add (GTK_CONTAINER (*frame), hbox);
@@ -375,7 +378,7 @@ create_frame (ChangeDisplayInfo *info,
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (*tree_view));
gtk_tree_selection_set_mode (selection, GTK_SELECTION_BROWSE);
*button_vbox = gtk_vbox_new (FALSE, 5);
*button_vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5);
gtk_box_pack_start (GTK_BOX (hbox), *button_vbox, FALSE, FALSE, 0);
if (!info->size_group)
@@ -624,7 +627,7 @@ do_changedisplay (GtkWidget *do_widget)
content_area = gtk_dialog_get_content_area (GTK_DIALOG (info->window));
vbox = gtk_vbox_new (FALSE, 5);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);

View File

@@ -77,8 +77,8 @@ get_image_pixbuf (GtkImage *image)
return g_object_ref (gtk_image_get_pixbuf (image));
case GTK_IMAGE_STOCK:
gtk_image_get_stock (image, &stock_id, &size);
return gtk_widget_render_icon (GTK_WIDGET (image),
stock_id, size, NULL);
return gtk_widget_render_icon_pixbuf (GTK_WIDGET (image),
stock_id, size);
default:
g_warning ("Image storage type %d not handled",
gtk_image_get_storage_type (image));
@@ -125,7 +125,7 @@ drag_data_received (GtkWidget *widget,
{
GdkPixbuf *pixbuf;
if (selection_data->length > 0)
if (gtk_selection_data_get_length (selection_data) > 0)
{
pixbuf = gtk_selection_data_get_pixbuf (selection_data);
gtk_image_set_from_pixbuf (GTK_IMAGE (data), pixbuf);
@@ -210,7 +210,7 @@ do_clipboard (GtkWidget *do_widget)
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
vbox = gtk_vbox_new (FALSE, 0);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (window), vbox);
@@ -219,7 +219,7 @@ do_clipboard (GtkWidget *do_widget)
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
hbox = gtk_hbox_new (FALSE, 4);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 4);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 8);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
@@ -236,7 +236,7 @@ do_clipboard (GtkWidget *do_widget)
label = gtk_label_new ("\"Paste\" will paste the text from the clipboard to the entry");
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
hbox = gtk_hbox_new (FALSE, 4);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 4);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 8);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
@@ -253,7 +253,7 @@ do_clipboard (GtkWidget *do_widget)
label = gtk_label_new ("Images can be transferred via the clipboard, too");
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
hbox = gtk_hbox_new (FALSE, 4);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 4);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 8);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);

View File

@@ -9,35 +9,37 @@
static GtkWidget *window = NULL;
static GtkWidget *da;
static GdkColor color;
static GdkRGBA color;
static GtkWidget *frame;
/* Expose callback for the drawing area
/* draw callback for the drawing area
*/
static gboolean
draw_callback (GtkWidget *widget,
draw_callback (GtkWidget *widget,
cairo_t *cr,
gpointer data)
{
GtkStyle *style;
GtkStyleContext *context;
GdkRGBA *bg;
style = gtk_widget_get_style (widget);
gdk_cairo_set_source_color (cr, &style->bg[GTK_STATE_NORMAL]);
context = gtk_widget_get_style_context (widget);
gtk_style_context_get (context, 0, "background-color", &bg, NULL);
gdk_cairo_set_source_rgba (cr, bg);
cairo_paint (cr);
gdk_rgba_free (bg);
return TRUE;
}
static void
change_color_callback (GtkWidget *button,
gpointer data)
gpointer data)
{
GtkWidget *dialog;
GtkColorSelection *colorsel;
GtkColorSelectionDialog *selection_dialog;
gint response;
dialog = gtk_color_selection_dialog_new ("Changing color");
gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (window));
@@ -45,20 +47,19 @@ change_color_callback (GtkWidget *button,
selection_dialog = GTK_COLOR_SELECTION_DIALOG (dialog);
colorsel = GTK_COLOR_SELECTION (gtk_color_selection_dialog_get_color_selection (selection_dialog));
gtk_color_selection_set_previous_color (colorsel, &color);
gtk_color_selection_set_current_color (colorsel, &color);
gtk_color_selection_set_previous_rgba (colorsel, &color);
gtk_color_selection_set_current_rgba (colorsel, &color);
gtk_color_selection_set_has_palette (colorsel, TRUE);
response = gtk_dialog_run (GTK_DIALOG (dialog));
if (response == GTK_RESPONSE_OK)
{
gtk_color_selection_get_current_color (colorsel,
&color);
gtk_widget_modify_bg (da, GTK_STATE_NORMAL, &color);
gtk_color_selection_get_current_rgba (colorsel, &color);
gtk_widget_override_background_color (da, 0, &color);
}
gtk_widget_destroy (dialog);
}
@@ -68,57 +69,57 @@ do_colorsel (GtkWidget *do_widget)
GtkWidget *vbox;
GtkWidget *button;
GtkWidget *alignment;
if (!window)
{
color.red = 0;
color.blue = 65535;
color.blue = 1;
color.green = 0;
color.alpha = 1;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "Color Selection");
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
G_CALLBACK (gtk_widget_destroyed), &window);
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
vbox = gtk_vbox_new (FALSE, 8);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (window), vbox);
/*
* Create the color swatch area
*/
frame = gtk_frame_new (NULL);
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_IN);
gtk_box_pack_start (GTK_BOX (vbox), frame, TRUE, TRUE, 0);
da = gtk_drawing_area_new ();
g_signal_connect (da, "draw",
G_CALLBACK (draw_callback), NULL);
g_signal_connect (da, "draw", G_CALLBACK (draw_callback), NULL);
/* set a minimum size */
gtk_widget_set_size_request (da, 200, 200);
/* set the color */
gtk_widget_modify_bg (da, GTK_STATE_NORMAL, &color);
gtk_widget_override_background_color (da, 0, &color);
gtk_container_add (GTK_CONTAINER (frame), da);
alignment = gtk_alignment_new (1.0, 0.5, 0.0, 0.0);
button = gtk_button_new_with_mnemonic ("_Change the above color");
gtk_container_add (GTK_CONTAINER (alignment), button);
gtk_box_pack_start (GTK_BOX (vbox), alignment, FALSE, FALSE, 0);
g_signal_connect (button, "clicked",
G_CALLBACK (change_color_callback), NULL);
G_CALLBACK (change_color_callback), NULL);
}
if (!gtk_widget_get_visible (window))

View File

@@ -65,8 +65,8 @@ create_stock_icon_store (void)
{
if (stock_id[i])
{
pixbuf = gtk_widget_render_icon (cellview, stock_id[i],
GTK_ICON_SIZE_BUTTON, NULL);
pixbuf = gtk_widget_render_icon_pixbuf (cellview, stock_id[i],
GTK_ICON_SIZE_BUTTON);
gtk_stock_lookup (stock_id[i], &item);
label = strip_underscore (item.label);
gtk_list_store_append (store, &iter);
@@ -238,12 +238,12 @@ is_capital_sensitive (GtkCellLayout *cell_layout,
}
static void
fill_combo_entry (GtkWidget *entry)
fill_combo_entry (GtkWidget *combo)
{
gtk_combo_box_append_text (GTK_COMBO_BOX (entry), "One");
gtk_combo_box_append_text (GTK_COMBO_BOX (entry), "Two");
gtk_combo_box_append_text (GTK_COMBO_BOX (entry), "2\302\275");
gtk_combo_box_append_text (GTK_COMBO_BOX (entry), "Three");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), "One");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), "Two");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), "2\302\275");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo), "Three");
}
@@ -281,18 +281,18 @@ G_DEFINE_TYPE_WITH_CODE (MaskEntry, mask_entry, GTK_TYPE_ENTRY,
static void
mask_entry_set_background (MaskEntry *entry)
{
static const GdkColor error_color = { 0, 65535, 60000, 60000 };
static const GdkRGBA error_color = { 1.0, 0.9, 0.9, 1.0 };
if (entry->mask)
{
if (!g_regex_match_simple (entry->mask, gtk_entry_get_text (GTK_ENTRY (entry)), 0, 0))
{
gtk_widget_modify_base (GTK_WIDGET (entry), GTK_STATE_NORMAL, &error_color);
gtk_widget_override_color (GTK_WIDGET (entry), 0, &error_color);
return;
}
}
gtk_widget_modify_base (GTK_WIDGET (entry), GTK_STATE_NORMAL, NULL);
gtk_widget_override_color (GTK_WIDGET (entry), 0, NULL);
}
@@ -345,7 +345,7 @@ do_combobox (GtkWidget *do_widget)
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
vbox = gtk_vbox_new (FALSE, 2);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 2);
gtk_container_add (GTK_CONTAINER (window), vbox);
/* A combobox demonstrating cell renderers, separators and
@@ -354,7 +354,7 @@ do_combobox (GtkWidget *do_widget)
frame = gtk_frame_new ("Some stock icons");
gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, FALSE, 0);
box = gtk_vbox_new (FALSE, 0);
box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_set_border_width (GTK_CONTAINER (box), 5);
gtk_container_add (GTK_CONTAINER (frame), box);
@@ -395,7 +395,7 @@ do_combobox (GtkWidget *do_widget)
frame = gtk_frame_new ("Where are we ?");
gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, FALSE, 0);
box = gtk_vbox_new (FALSE, 0);
box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_set_border_width (GTK_CONTAINER (box), 5);
gtk_container_add (GTK_CONTAINER (frame), box);
@@ -424,11 +424,11 @@ do_combobox (GtkWidget *do_widget)
frame = gtk_frame_new ("Editable");
gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, FALSE, 0);
box = gtk_vbox_new (FALSE, 0);
box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_set_border_width (GTK_CONTAINER (box), 5);
gtk_container_add (GTK_CONTAINER (frame), box);
combo = gtk_combo_box_entry_new_text ();
combo = gtk_combo_box_text_new_with_entry ();
fill_combo_entry (combo);
gtk_container_add (GTK_CONTAINER (box), combo);
@@ -437,7 +437,26 @@ do_combobox (GtkWidget *do_widget)
gtk_container_remove (GTK_CONTAINER (combo), gtk_bin_get_child (GTK_BIN (combo)));
gtk_container_add (GTK_CONTAINER (combo), entry);
/* A combobox with string IDs */
frame = gtk_frame_new ("String IDs");
gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, FALSE, 0);
box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_set_border_width (GTK_CONTAINER (box), 5);
gtk_container_add (GTK_CONTAINER (frame), box);
combo = gtk_combo_box_text_new ();
gtk_combo_box_text_append (GTK_COMBO_BOX_TEXT (combo), "never", "Not visible");
gtk_combo_box_text_append (GTK_COMBO_BOX_TEXT (combo), "when-active", "Visible when active");
gtk_combo_box_text_append (GTK_COMBO_BOX_TEXT (combo), "always", "Always visible");
gtk_container_add (GTK_CONTAINER (box), combo);
entry = gtk_entry_new ();
g_object_bind_property (combo, "active-id",
entry, "text",
G_BINDING_BIDIRECTIONAL);
gtk_container_add (GTK_CONTAINER (box), entry);
}
if (!gtk_widget_get_visible (window))

View File

@@ -54,7 +54,7 @@ interactive_dialog_clicked (GtkButton *button,
content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog));
hbox = gtk_hbox_new (FALSE, 8);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 8);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 8);
gtk_box_pack_start (GTK_BOX (content_area), hbox, FALSE, FALSE, 0);
@@ -120,24 +120,25 @@ do_dialog (GtkWidget *do_widget)
frame = gtk_frame_new ("Dialogs");
gtk_container_add (GTK_CONTAINER (window), frame);
vbox = gtk_vbox_new (FALSE, 8);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (frame), vbox);
/* Standard message dialog */
hbox = gtk_hbox_new (FALSE, 8);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 8);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
button = gtk_button_new_with_mnemonic ("_Message Dialog");
g_signal_connect (button, "clicked",
G_CALLBACK (message_dialog_clicked), NULL);
gtk_box_pack_start (GTK_BOX (hbox), button, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox), gtk_hseparator_new (), FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox), gtk_separator_new (GTK_ORIENTATION_HORIZONTAL),
FALSE, FALSE, 0);
/* Interactive dialog*/
hbox = gtk_hbox_new (FALSE, 8);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 8);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
vbox2 = gtk_vbox_new (FALSE, 0);
vbox2 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
button = gtk_button_new_with_mnemonic ("_Interactive Dialog");
g_signal_connect (button, "clicked",

View File

@@ -193,7 +193,7 @@ close_window (void)
window = NULL;
if (surface)
g_object_unref (surface);
cairo_surface_destroy (surface);
surface = NULL;
}
@@ -216,7 +216,7 @@ do_drawingarea (GtkWidget *do_widget)
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
vbox = gtk_vbox_new (FALSE, 8);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (window), vbox);

View File

@@ -332,7 +332,7 @@ do_editable_cells (GtkWidget *do_widget)
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
vbox = gtk_vbox_new (FALSE, 5);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5);
gtk_container_add (GTK_CONTAINER (window), vbox);
gtk_box_pack_start (GTK_BOX (vbox),
@@ -365,7 +365,8 @@ do_editable_cells (GtkWidget *do_widget)
gtk_container_add (GTK_CONTAINER (sw), treeview);
/* some buttons */
hbox = gtk_hbox_new (TRUE, 4);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 4);
gtk_box_set_homogeneous (GTK_BOX (hbox), TRUE);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
button = gtk_button_new_with_label ("Add item");

View File

@@ -34,7 +34,7 @@ do_entry_buffer (GtkWidget *do_widget)
content_area = gtk_dialog_get_content_area (GTK_DIALOG (window));
vbox = gtk_vbox_new (FALSE, 5);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5);
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);

View File

@@ -61,7 +61,7 @@ do_entry_completion (GtkWidget *do_widget)
content_area = gtk_dialog_get_content_area (GTK_DIALOG (window));
vbox = gtk_vbox_new (FALSE, 5);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5);
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);

View File

@@ -35,7 +35,7 @@ do_expander (GtkWidget *do_widget)
content_area = gtk_dialog_get_content_area (GTK_DIALOG (window));
vbox = gtk_vbox_new (FALSE, 5);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5);
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);

View File

@@ -300,7 +300,7 @@ do_iconview (GtkWidget *do_widget)
GtkWidget *tool_bar;
GtkToolItem *home_button;
vbox = gtk_vbox_new (FALSE, 0);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_add (GTK_CONTAINER (window), vbox);
tool_bar = gtk_toolbar_new ();

View File

@@ -335,7 +335,7 @@ do_images (GtkWidget *do_widget)
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
vbox = gtk_vbox_new (FALSE, 8);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (window), vbox);
@@ -432,7 +432,7 @@ do_images (GtkWidget *do_widget)
gtk_container_add (GTK_CONTAINER (align), frame);
gtk_box_pack_start (GTK_BOX (vbox), align, FALSE, FALSE, 0);
gicon = g_themed_icon_new_with_default_fallbacks ("battery-critical-charging-symbolic");
gicon = g_themed_icon_new_with_default_fallbacks ("battery-caution-charging-symbolic");
image = gtk_image_new_from_gicon (gicon, GTK_ICON_SIZE_DIALOG);
gtk_container_add (GTK_CONTAINER (frame), image);

View File

@@ -44,7 +44,7 @@ do_infobar (GtkWidget *do_widget)
g_signal_connect (window, "destroy", G_CALLBACK (gtk_widget_destroyed), &window);
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
vbox = gtk_vbox_new (FALSE, 0);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_add (GTK_CONTAINER (window), vbox);
bar = gtk_info_bar_new ();
@@ -81,7 +81,7 @@ do_infobar (GtkWidget *do_widget)
frame = gtk_frame_new ("Info bars");
gtk_box_pack_start (GTK_BOX (vbox), frame, FALSE, FALSE, 8);
vbox2 = gtk_vbox_new (FALSE, 8);
vbox2 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox2), 8);
gtk_container_add (GTK_CONTAINER (frame), vbox2);

View File

@@ -266,7 +266,7 @@ do_list_store (GtkWidget *do_widget)
G_CALLBACK (gtk_widget_destroyed), &window);
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
vbox = gtk_vbox_new (FALSE, 8);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8);
gtk_container_add (GTK_CONTAINER (window), vbox);
label = gtk_label_new ("This is the bug list (note: not based on real data, it would be nice to have a nice ODBC interface to bugzilla or so, though).");

View File

@@ -751,7 +751,7 @@ create_text (GtkTextBuffer **buffer,
if (is_source)
{
font_desc = pango_font_description_from_string ("monospace");
gtk_widget_modify_font (text_view, font_desc);
gtk_widget_override_font (text_view, font_desc);
pango_font_description_free (font_desc);
gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (text_view),
@@ -954,7 +954,7 @@ main (int argc, char **argv)
g_signal_connect_after (window, "destroy",
G_CALLBACK (gtk_main_quit), NULL);
hbox = gtk_hbox_new (FALSE, 0);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
gtk_container_add (GTK_CONTAINER (window), hbox);
tree = create_tree ();

View File

@@ -14,15 +14,15 @@ PERL = perl
################################################################
# Possibly override versions from build/win32/module.defs
GTK_VER = @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@
GDK_PIXBUF_VER = @GDK_PIXBUF_MAJOR@.@GDK_PIXBUF_MINOR@
GTK_VER = 2.0
GDK_PIXBUF_VER = 2.0
GDK_LIBS = ../../gdk/gdk-win32-$(GTK_VER).lib
GTK_LIBS = ../../gtk/gtk-win32-$(GTK_VER).lib
GDK_PIXBUF_LIBS = ../../gdk-pixbuf/gdk_pixbuf-$(GDK_PIXBUF_VER).lib
INCLUDES = -FImsvc_recommended_pragmas.h -I . -I ../.. -I ../../gdk -I ../../gdk-pixbuf -I ../../gtk
DEPCFLAGS = $(PANGO_CFLAGS) $(GLIB_CFLAGS) $(LIBICONV_CFLAGS) $(INTL_CFLAGS) $(ATK_CFLAGS)
DEPCFLAGS = $(PANGO_CFLAGS) $(GLIB_CFLAGS) $(LIBICONV_CFLAGS) $(INTL_CFLAGS) $(ATK_CFLAGS) $(CAIRO_CFLAGS)
LDFLAGS = /link /machine:ix86 $(LINKDEBUG)
DEFINES = -DG_LOG_DOMAIN=\"GtkDemo\" -DGTK_VERSION=\"$(GTK_VER)\" \
-DDEMOCODEDIR=\".\"
@@ -90,5 +90,6 @@ OBJECTS = \
main.obj \
gtk-demo.exe : demos.h $(OBJECTS)
$(CC) $(CFLAGS) -Fegtk-demo.exe $(OBJECTS) $(GTK_LIBS) $(GDK_LIBS) $(GDK_PIXBUF_LIBS) $(PANGO_LIBS) $(GLIB_LIBS) $(LDFLAGS)
$(CC) $(CFLAGS) -Fegtk-demo.exe $(OBJECTS) $(GTK_LIBS) $(GDK_LIBS) $(GDK_PIXBUF_LIBS) \
$(CAIRO_LIBS) $(PANGOCAIRO_LIBS) $(PANGO_LIBS) $(GLIB_LIBS) $(LDFLAGS)

View File

@@ -146,11 +146,11 @@ do_menus (GtkWidget *do_widget)
gtk_container_set_border_width (GTK_CONTAINER (window), 0);
box = gtk_hbox_new (FALSE, 0);
box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
gtk_container_add (GTK_CONTAINER (window), box);
gtk_widget_show (box);
box1 = gtk_vbox_new (FALSE, 0);
box1 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_add (GTK_CONTAINER (box), box1);
gtk_widget_show (box1);
@@ -176,7 +176,7 @@ do_menus (GtkWidget *do_widget)
gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem);
gtk_widget_show (menuitem);
box2 = gtk_vbox_new (FALSE, 10);
box2 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 10);
gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
gtk_box_pack_start (GTK_BOX (box1), box2, FALSE, TRUE, 0);
gtk_widget_show (box2);

View File

@@ -39,8 +39,12 @@ void gtk_rotated_bin_set_angle (GtkRotatedBin *bin,
static void gtk_rotated_bin_realize (GtkWidget *widget);
static void gtk_rotated_bin_unrealize (GtkWidget *widget);
static void gtk_rotated_bin_size_request (GtkWidget *widget,
GtkRequisition *requisition);
static void gtk_rotated_bin_get_preferred_width (GtkWidget *widget,
gint *minimum,
gint *natural);
static void gtk_rotated_bin_get_preferred_height (GtkWidget *widget,
gint *minimum,
gint *natural);
static void gtk_rotated_bin_size_allocate (GtkWidget *widget,
GtkAllocation *allocation);
static gboolean gtk_rotated_bin_damage (GtkWidget *widget,
@@ -148,7 +152,8 @@ gtk_rotated_bin_class_init (GtkRotatedBinClass *klass)
widget_class->realize = gtk_rotated_bin_realize;
widget_class->unrealize = gtk_rotated_bin_unrealize;
widget_class->size_request = gtk_rotated_bin_size_request;
widget_class->get_preferred_width = gtk_rotated_bin_get_preferred_width;
widget_class->get_preferred_height = gtk_rotated_bin_get_preferred_height;
widget_class->size_allocate = gtk_rotated_bin_size_allocate;
widget_class->draw = gtk_rotated_bin_draw;
@@ -225,7 +230,7 @@ gtk_rotated_bin_realize (GtkWidget *widget)
{
GtkRotatedBin *bin = GTK_ROTATED_BIN (widget);
GtkAllocation allocation;
GtkStyle *style;
GtkStyleContext *context;
GdkWindow *window;
GdkWindowAttr attributes;
gint attributes_mask;
@@ -285,10 +290,9 @@ gtk_rotated_bin_realize (GtkWidget *widget)
g_signal_connect (bin->offscreen_window, "from-embedder",
G_CALLBACK (offscreen_window_from_parent), bin);
gtk_widget_style_attach (widget);
style = gtk_widget_get_style (widget);
gtk_style_set_background (style, window, GTK_STATE_NORMAL);
gtk_style_set_background (style, bin->offscreen_window, GTK_STATE_NORMAL);
context = gtk_widget_get_style_context (widget);
gtk_style_context_set_background (context, window);
gtk_style_context_set_background (context, bin->offscreen_window);
gdk_window_show (bin->offscreen_window);
}
@@ -404,6 +408,30 @@ gtk_rotated_bin_size_request (GtkWidget *widget,
requisition->height = border_width * 2 + h;
}
static void
gtk_rotated_bin_get_preferred_width (GtkWidget *widget,
gint *minimum,
gint *natural)
{
GtkRequisition requisition;
gtk_rotated_bin_size_request (widget, &requisition);
*minimum = *natural = requisition.width;
}
static void
gtk_rotated_bin_get_preferred_height (GtkWidget *widget,
gint *minimum,
gint *natural)
{
GtkRequisition requisition;
gtk_rotated_bin_size_request (widget, &requisition);
*minimum = *natural = requisition.height;
}
static void
gtk_rotated_bin_size_allocate (GtkWidget *widget,
GtkAllocation *allocation)
@@ -513,12 +541,11 @@ gtk_rotated_bin_draw (GtkWidget *widget,
}
if (gtk_cairo_should_draw_window (cr, bin->offscreen_window))
{
gtk_paint_flat_box (gtk_widget_get_style (widget), cr,
GTK_STATE_NORMAL, GTK_SHADOW_NONE,
widget, "blah",
0, 0,
gdk_window_get_width (bin->offscreen_window),
gdk_window_get_height (bin->offscreen_window));
gtk_render_background (gtk_widget_get_style_context (widget),
cr,
0, 0,
gdk_window_get_width (bin->offscreen_window),
gdk_window_get_height (bin->offscreen_window));
if (bin->child)
gtk_container_propagate_draw (GTK_CONTAINER (widget),
@@ -546,7 +573,7 @@ do_offscreen_window (GtkWidget *do_widget)
if (!window)
{
GtkWidget *bin, *vbox, *scale, *button;
GdkColor black;
GdkRGBA black;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
@@ -556,12 +583,13 @@ do_offscreen_window (GtkWidget *do_widget)
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
gdk_color_parse ("black", &black);
gtk_widget_modify_bg (window, GTK_STATE_NORMAL, &black);
gdk_rgba_parse (&black, "black");
gtk_widget_override_background_color (window, 0, &black);
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
vbox = gtk_vbox_new (0, FALSE);
scale = gtk_hscale_new_with_range (0, G_PI/2, 0.01);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
scale = gtk_scale_new_with_range (GTK_ORIENTATION_HORIZONTAL,
0, G_PI/2, 0.01);
gtk_scale_set_draw_value (GTK_SCALE (scale), FALSE);
button = gtk_button_new_with_label ("A Button");

View File

@@ -35,8 +35,12 @@ GtkWidget* gtk_mirror_bin_new (void);
static void gtk_mirror_bin_realize (GtkWidget *widget);
static void gtk_mirror_bin_unrealize (GtkWidget *widget);
static void gtk_mirror_bin_size_request (GtkWidget *widget,
GtkRequisition *requisition);
static void gtk_mirror_bin_get_preferred_width (GtkWidget *widget,
gint *minimum,
gint *natural);
static void gtk_mirror_bin_get_preferred_height (GtkWidget *widget,
gint *minimum,
gint *natural);
static void gtk_mirror_bin_size_allocate (GtkWidget *widget,
GtkAllocation *allocation);
static gboolean gtk_mirror_bin_damage (GtkWidget *widget,
@@ -86,7 +90,8 @@ gtk_mirror_bin_class_init (GtkMirrorBinClass *klass)
widget_class->realize = gtk_mirror_bin_realize;
widget_class->unrealize = gtk_mirror_bin_unrealize;
widget_class->size_request = gtk_mirror_bin_size_request;
widget_class->get_preferred_width = gtk_mirror_bin_get_preferred_width;
widget_class->get_preferred_height = gtk_mirror_bin_get_preferred_height;
widget_class->size_allocate = gtk_mirror_bin_size_allocate;
widget_class->draw = gtk_mirror_bin_draw;
@@ -163,7 +168,7 @@ gtk_mirror_bin_realize (GtkWidget *widget)
{
GtkMirrorBin *bin = GTK_MIRROR_BIN (widget);
GtkAllocation allocation;
GtkStyle *style;
GtkStyleContext *context;
GdkWindow *window;
GdkWindowAttr attributes;
gint attributes_mask;
@@ -223,10 +228,9 @@ gtk_mirror_bin_realize (GtkWidget *widget)
g_signal_connect (bin->offscreen_window, "from-embedder",
G_CALLBACK (offscreen_window_from_parent), bin);
gtk_widget_style_attach (widget);
style = gtk_widget_get_style (widget);
gtk_style_set_background (style, window, GTK_STATE_NORMAL);
gtk_style_set_background (style, bin->offscreen_window, GTK_STATE_NORMAL);
context = gtk_widget_get_style_context (widget);
gtk_style_context_set_background (context, window);
gtk_style_context_set_background (context, bin->offscreen_window);
gdk_window_show (bin->offscreen_window);
}
@@ -323,6 +327,30 @@ gtk_mirror_bin_size_request (GtkWidget *widget,
requisition->height = border_width * 2 + child_requisition.height * 2 + 10;
}
static void
gtk_mirror_bin_get_preferred_width (GtkWidget *widget,
gint *minimum,
gint *natural)
{
GtkRequisition requisition;
gtk_mirror_bin_size_request (widget, &requisition);
*minimum = *natural = requisition.width;
}
static void
gtk_mirror_bin_get_preferred_height (GtkWidget *widget,
gint *minimum,
gint *natural)
{
GtkRequisition requisition;
gtk_mirror_bin_size_request (widget, &requisition);
*minimum = *natural = requisition.width;
}
static void
gtk_mirror_bin_size_allocate (GtkWidget *widget,
GtkAllocation *allocation)
@@ -422,12 +450,11 @@ gtk_mirror_bin_draw (GtkWidget *widget,
}
else if (gtk_cairo_should_draw_window (cr, bin->offscreen_window))
{
gtk_paint_flat_box (gtk_widget_get_style (widget), cr,
GTK_STATE_NORMAL, GTK_SHADOW_NONE,
widget, "blah",
0, 0,
gdk_window_get_width (bin->offscreen_window),
gdk_window_get_height (bin->offscreen_window));
gtk_render_background (gtk_widget_get_style_context (widget),
cr,
0, 0,
gdk_window_get_width (bin->offscreen_window),
gdk_window_get_height (bin->offscreen_window));
if (bin->child)
gtk_container_propagate_draw (GTK_CONTAINER (widget),
@@ -461,13 +488,13 @@ do_offscreen_window2 (GtkWidget *do_widget)
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
vbox = gtk_vbox_new (0, FALSE);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
bin = gtk_mirror_bin_new ();
group = gtk_size_group_new (GTK_SIZE_GROUP_VERTICAL);
hbox = gtk_hbox_new (FALSE, 6);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
backbutton = gtk_button_new ();
gtk_container_add (GTK_CONTAINER (backbutton),
gtk_image_new_from_stock (GTK_STOCK_GO_BACK, 4));

View File

@@ -153,14 +153,14 @@ do_panes (GtkWidget *do_widget)
gtk_window_set_title (GTK_WINDOW (window), "Panes");
gtk_container_set_border_width (GTK_CONTAINER (window), 0);
vbox = gtk_vbox_new (FALSE, 0);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_add (GTK_CONTAINER (window), vbox);
vpaned = gtk_vpaned_new ();
vpaned = gtk_paned_new (GTK_ORIENTATION_VERTICAL);
gtk_box_pack_start (GTK_BOX (vbox), vpaned, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER(vpaned), 5);
hpaned = gtk_hpaned_new ();
hpaned = gtk_paned_new (GTK_ORIENTATION_HORIZONTAL);
gtk_paned_add1 (GTK_PANED (vpaned), hpaned);
frame = gtk_frame_new (NULL);

View File

@@ -18,17 +18,17 @@ const char text[] = "I ♥ GTK+";
static void
fancy_shape_renderer (cairo_t *cr,
PangoAttrShape *attr,
gboolean do_path,
gpointer data)
PangoAttrShape *attr,
gboolean do_path,
gpointer data)
{
double x, y;
cairo_get_current_point (cr, &x, &y);
cairo_translate (cr, x, y);
cairo_scale (cr,
(double) attr->ink_rect.width / PANGO_SCALE,
(double) attr->ink_rect.height / PANGO_SCALE);
(double) attr->ink_rect.width / PANGO_SCALE,
(double) attr->ink_rect.height / PANGO_SCALE);
switch (GPOINTER_TO_UINT (attr->data))
{
@@ -36,9 +36,9 @@ fancy_shape_renderer (cairo_t *cr,
{
cairo_move_to (cr, .5, .0);
cairo_line_to (cr, .9, -.4);
cairo_curve_to (cr, 1.1, -.8, .5, -.9, .5, -.5);
cairo_curve_to (cr, .5, -.9, -.1, -.8, .1, -.4);
cairo_close_path (cr);
cairo_curve_to (cr, 1.1, -.8, .5, -.9, .5, -.5);
cairo_curve_to (cr, .5, -.9, -.1, -.8, .1, -.4);
cairo_close_path (cr);
}
break;
}
@@ -60,8 +60,8 @@ create_fancy_attr_list_for_layout (PangoLayout *layout)
/* Get font metrics and prepare fancy shape size */
metrics = pango_context_get_metrics (pango_layout_get_context (layout),
pango_layout_get_font_description (layout),
NULL);
pango_layout_get_font_description (layout),
NULL);
ascent = pango_font_metrics_get_ascent (metrics);
logical_rect.x = 0;
logical_rect.width = ascent;
@@ -77,9 +77,9 @@ create_fancy_attr_list_for_layout (PangoLayout *layout)
PangoAttribute *attr;
attr = pango_attr_shape_new_with_data (&ink_rect,
&logical_rect,
GUINT_TO_POINTER (g_utf8_get_char (p)),
NULL, NULL);
&logical_rect,
GUINT_TO_POINTER (g_utf8_get_char (p)),
NULL, NULL);
attr->start_index = p - text;
attr->end_index = attr->start_index + strlen (HEART);
@@ -93,7 +93,7 @@ create_fancy_attr_list_for_layout (PangoLayout *layout)
static gboolean
rotated_text_draw (GtkWidget *widget,
cairo_t *cr,
gpointer data)
gpointer data)
{
#define RADIUS 150
#define N_WORDS 5
@@ -119,8 +119,8 @@ rotated_text_draw (GtkWidget *widget,
height = gtk_widget_get_allocated_height (widget);
device_radius = MIN (width, height) / 2.;
cairo_translate (cr,
device_radius + (width - 2 * device_radius) / 2,
device_radius + (height - 2 * device_radius) / 2);
device_radius + (width - 2 * device_radius) / 2,
device_radius + (height - 2 * device_radius) / 2);
cairo_scale (cr, device_radius / RADIUS, device_radius / RADIUS);
/* Create and a subtle gradient source and use it. */
@@ -132,8 +132,8 @@ rotated_text_draw (GtkWidget *widget,
/* Create a PangoContext and set up our shape renderer */
context = gtk_widget_create_pango_context (widget);
pango_cairo_context_set_shape_renderer (context,
fancy_shape_renderer,
NULL, NULL);
fancy_shape_renderer,
NULL, NULL);
/* Create a PangoLayout, set the text, font, and attributes */
layout = pango_layout_new (context);
@@ -181,16 +181,17 @@ do_rotated_text (GtkWidget *do_widget)
PangoLayout *layout;
PangoAttrList *attrs;
const GdkColor white = { 0, 0xffff, 0xffff, 0xffff };
const GdkRGBA white = { 1.0, 1.0, 1.0, 1.0 };
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "Rotated Text");
gtk_window_set_default_size (GTK_WINDOW (window), 4 * RADIUS, 2 * RADIUS);
g_signal_connect (window, "destroy", G_CALLBACK (gtk_widget_destroyed), &window);
box = gtk_hbox_new (TRUE, 0);
box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
gtk_box_set_homogeneous (GTK_BOX (box), TRUE);
gtk_container_add (GTK_CONTAINER (window), box);
/* Add a drawing area */
@@ -199,10 +200,10 @@ do_rotated_text (GtkWidget *do_widget)
gtk_container_add (GTK_CONTAINER (box), drawing_area);
/* This overrides the background color from the theme */
gtk_widget_modify_bg (drawing_area, GTK_STATE_NORMAL, &white);
gtk_widget_override_background_color (drawing_area, 0, &white);
g_signal_connect (drawing_area, "draw",
G_CALLBACK (rotated_text_draw), NULL);
G_CALLBACK (rotated_text_draw), NULL);
/* And a label */
@@ -214,8 +215,8 @@ do_rotated_text (GtkWidget *do_widget)
/* Set up fancy stuff on the label */
layout = gtk_label_get_layout (GTK_LABEL (label));
pango_cairo_context_set_shape_renderer (pango_layout_get_context (layout),
fancy_shape_renderer,
NULL, NULL);
fancy_shape_renderer,
NULL, NULL);
attrs = create_fancy_attr_list_for_layout (layout);
gtk_label_set_attributes (GTK_LABEL (label), attrs);
pango_attr_list_unref (attrs);

View File

@@ -266,7 +266,7 @@ do_search_entry (GtkWidget *do_widget)
content_area = gtk_dialog_get_content_area (GTK_DIALOG (window));
vbox = gtk_vbox_new (FALSE, 5);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5);
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
@@ -274,7 +274,7 @@ do_search_entry (GtkWidget *do_widget)
gtk_label_set_markup (GTK_LABEL (label), "Search entry demo");
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
hbox = gtk_hbox_new (FALSE, 10);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 10);
gtk_box_pack_start (GTK_BOX (vbox), hbox, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER (hbox), 0);

View File

@@ -25,10 +25,10 @@ create_combo_box (const char **strings)
GtkWidget *combo_box;
const char **str;
combo_box = gtk_combo_box_new_text ();
combo_box = gtk_combo_box_text_new ();
for (str = strings; *str; str++)
gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), *str);
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo_box), *str);
gtk_combo_box_set_active (GTK_COMBO_BOX (combo_box), 0);
@@ -118,7 +118,7 @@ do_sizegroup (GtkWidget *do_widget)
content_area = gtk_dialog_get_content_area (GTK_DIALOG (window));
vbox = gtk_vbox_new (FALSE, 5);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5);
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);

View File

@@ -50,12 +50,12 @@ do_spinner (GtkWidget *do_widget)
content_area = gtk_dialog_get_content_area (GTK_DIALOG (window));
vbox = gtk_vbox_new (FALSE, 5);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5);
gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
/* Sensitive */
hbox = gtk_hbox_new (FALSE, 5);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5);
spinner = gtk_spinner_new ();
gtk_container_add (GTK_CONTAINER (hbox), spinner);
gtk_container_add (GTK_CONTAINER (hbox), gtk_entry_new ());
@@ -63,7 +63,7 @@ do_spinner (GtkWidget *do_widget)
spinner_sensitive = spinner;
/* Disabled */
hbox = gtk_hbox_new (FALSE, 5);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5);
spinner = gtk_spinner_new ();
gtk_container_add (GTK_CONTAINER (hbox), spinner);
gtk_container_add (GTK_CONTAINER (hbox), gtk_entry_new ());

View File

@@ -166,9 +166,9 @@ create_model (void)
}
g_free (sizes);
info.small_icon = gtk_widget_render_icon (window, info.id,
size,
NULL);
info.small_icon = gtk_widget_render_icon_pixbuf (window,
info.id,
size);
if (size != GTK_ICON_SIZE_MENU)
{
@@ -417,7 +417,7 @@ do_stock_browser (GtkWidget *do_widget)
g_signal_connect (window, "destroy", G_CALLBACK (gtk_widget_destroyed), &window);
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
hbox = gtk_hbox_new (FALSE, 8);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 8);
gtk_container_add (GTK_CONTAINER (window), hbox);
sw = gtk_scrolled_window_new (NULL, NULL);
@@ -486,7 +486,7 @@ do_stock_browser (GtkWidget *do_widget)
frame = gtk_frame_new ("Selected Item");
gtk_container_add (GTK_CONTAINER (align), frame);
vbox = gtk_vbox_new (FALSE, 8);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 4);
gtk_container_add (GTK_CONTAINER (frame), vbox);

View File

@@ -184,7 +184,8 @@ do_textscroll (GtkWidget *do_widget)
G_CALLBACK (gtk_widget_destroyed), &window);
gtk_window_set_default_size (GTK_WINDOW (window), 600, 400);
hbox = gtk_hbox_new (TRUE, 6);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);
gtk_box_set_homogeneous (GTK_BOX (hbox), TRUE);
gtk_container_add (GTK_CONTAINER (window), hbox);
create_text_view (hbox, TRUE);

View File

@@ -30,99 +30,99 @@ create_tags (GtkTextBuffer *buffer)
* new copies of the same tags for every buffer.
*
* Tags are assigned default priorities in order of addition to the
* tag table. That is, tags created later that affect the same text
* tag table. That is, tags created later that affect the same text
* property affected by an earlier tag will override the earlier
* tag. You can modify tag priorities with
* gtk_text_tag_set_priority().
*/
gtk_text_buffer_create_tag (buffer, "heading",
"weight", PANGO_WEIGHT_BOLD,
"size", 15 * PANGO_SCALE,
NULL);
"weight", PANGO_WEIGHT_BOLD,
"size", 15 * PANGO_SCALE,
NULL);
gtk_text_buffer_create_tag (buffer, "italic",
"style", PANGO_STYLE_ITALIC, NULL);
"style", PANGO_STYLE_ITALIC, NULL);
gtk_text_buffer_create_tag (buffer, "bold",
"weight", PANGO_WEIGHT_BOLD, NULL);
"weight", PANGO_WEIGHT_BOLD, NULL);
gtk_text_buffer_create_tag (buffer, "big",
/* points times the PANGO_SCALE factor */
"size", 20 * PANGO_SCALE, NULL);
/* points times the PANGO_SCALE factor */
"size", 20 * PANGO_SCALE, NULL);
gtk_text_buffer_create_tag (buffer, "xx-small",
"scale", PANGO_SCALE_XX_SMALL, NULL);
"scale", PANGO_SCALE_XX_SMALL, NULL);
gtk_text_buffer_create_tag (buffer, "x-large",
"scale", PANGO_SCALE_X_LARGE, NULL);
"scale", PANGO_SCALE_X_LARGE, NULL);
gtk_text_buffer_create_tag (buffer, "monospace",
"family", "monospace", NULL);
"family", "monospace", NULL);
gtk_text_buffer_create_tag (buffer, "blue_foreground",
"foreground", "blue", NULL);
"foreground", "blue", NULL);
gtk_text_buffer_create_tag (buffer, "red_background",
"background", "red", NULL);
"background", "red", NULL);
gtk_text_buffer_create_tag (buffer, "big_gap_before_line",
"pixels_above_lines", 30, NULL);
"pixels_above_lines", 30, NULL);
gtk_text_buffer_create_tag (buffer, "big_gap_after_line",
"pixels_below_lines", 30, NULL);
"pixels_below_lines", 30, NULL);
gtk_text_buffer_create_tag (buffer, "double_spaced_line",
"pixels_inside_wrap", 10, NULL);
"pixels_inside_wrap", 10, NULL);
gtk_text_buffer_create_tag (buffer, "not_editable",
"editable", FALSE, NULL);
"editable", FALSE, NULL);
gtk_text_buffer_create_tag (buffer, "word_wrap",
"wrap_mode", GTK_WRAP_WORD, NULL);
"wrap_mode", GTK_WRAP_WORD, NULL);
gtk_text_buffer_create_tag (buffer, "char_wrap",
"wrap_mode", GTK_WRAP_CHAR, NULL);
"wrap_mode", GTK_WRAP_CHAR, NULL);
gtk_text_buffer_create_tag (buffer, "no_wrap",
"wrap_mode", GTK_WRAP_NONE, NULL);
"wrap_mode", GTK_WRAP_NONE, NULL);
gtk_text_buffer_create_tag (buffer, "center",
"justification", GTK_JUSTIFY_CENTER, NULL);
"justification", GTK_JUSTIFY_CENTER, NULL);
gtk_text_buffer_create_tag (buffer, "right_justify",
"justification", GTK_JUSTIFY_RIGHT, NULL);
"justification", GTK_JUSTIFY_RIGHT, NULL);
gtk_text_buffer_create_tag (buffer, "wide_margins",
"left_margin", 50, "right_margin", 50,
NULL);
"left_margin", 50, "right_margin", 50,
NULL);
gtk_text_buffer_create_tag (buffer, "strikethrough",
"strikethrough", TRUE, NULL);
"strikethrough", TRUE, NULL);
gtk_text_buffer_create_tag (buffer, "underline",
"underline", PANGO_UNDERLINE_SINGLE, NULL);
"underline", PANGO_UNDERLINE_SINGLE, NULL);
gtk_text_buffer_create_tag (buffer, "double_underline",
"underline", PANGO_UNDERLINE_DOUBLE, NULL);
"underline", PANGO_UNDERLINE_DOUBLE, NULL);
gtk_text_buffer_create_tag (buffer, "superscript",
"rise", 10 * PANGO_SCALE, /* 10 pixels */
"size", 8 * PANGO_SCALE, /* 8 points */
NULL);
"rise", 10 * PANGO_SCALE, /* 10 pixels */
"size", 8 * PANGO_SCALE, /* 8 points */
NULL);
gtk_text_buffer_create_tag (buffer, "subscript",
"rise", -10 * PANGO_SCALE, /* 10 pixels */
"size", 8 * PANGO_SCALE, /* 8 points */
NULL);
"rise", -10 * PANGO_SCALE, /* 10 pixels */
"size", 8 * PANGO_SCALE, /* 8 points */
NULL);
gtk_text_buffer_create_tag (buffer, "rtl_quote",
"wrap_mode", GTK_WRAP_WORD,
"direction", GTK_TEXT_DIR_RTL,
"indent", 30,
"left_margin", 20,
"right_margin", 20,
NULL);
"wrap_mode", GTK_WRAP_WORD,
"direction", GTK_TEXT_DIR_RTL,
"indent", 30,
"left_margin", 20,
"right_margin", 20,
NULL);
}
static void
@@ -156,90 +156,99 @@ insert_text (GtkTextBuffer *buffer)
scaled = gdk_pixbuf_scale_simple (pixbuf, 32, 32, GDK_INTERP_BILINEAR);
g_object_unref (pixbuf);
pixbuf = scaled;
/* get start of buffer; each insertion will revalidate the
* iterator to point to just after the inserted text.
*/
gtk_text_buffer_get_iter_at_offset (buffer, &iter, 0);
gtk_text_buffer_insert (buffer, &iter, "The text widget can display text with all kinds of nifty attributes. It also supports multiple views of the same buffer; this demo is showing the same buffer in two places.\n\n", -1);
gtk_text_buffer_insert (buffer, &iter,
"The text widget can display text with all kinds of nifty attributes. "
"It also supports multiple views of the same buffer; this demo is "
"showing the same buffer in two places.\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"Font styles. ", -1,
"heading", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Font styles. ", -1,
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter, "For example, you can have ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"italic", -1,
"italic", NULL);
gtk_text_buffer_insert (buffer, &iter, ", ", -1);
"italic", -1,
"italic", NULL);
gtk_text_buffer_insert (buffer, &iter, ", ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"bold", -1,
"bold", NULL);
"bold", -1,
"bold", NULL);
gtk_text_buffer_insert (buffer, &iter, ", or ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"monospace (typewriter)", -1,
"monospace", NULL);
"monospace (typewriter)", -1,
"monospace", NULL);
gtk_text_buffer_insert (buffer, &iter, ", or ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"big", -1,
"big", NULL);
"big", -1,
"big", NULL);
gtk_text_buffer_insert (buffer, &iter, " text. ", -1);
gtk_text_buffer_insert (buffer, &iter, "It's best not to hardcode specific text sizes; you can use relative sizes as with CSS, such as ", -1);
gtk_text_buffer_insert (buffer, &iter,
"It's best not to hardcode specific text sizes; you can use relative "
"sizes as with CSS, such as ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"xx-small", -1,
"xx-small", NULL);
"xx-small", -1,
"xx-small", NULL);
gtk_text_buffer_insert (buffer, &iter, " or ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"x-large", -1,
"x-large", NULL);
gtk_text_buffer_insert (buffer, &iter, " to ensure that your program properly adapts if the user changes the default font size.\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Colors. ", -1,
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter, "Colors such as ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"a blue foreground", -1,
"blue_foreground", NULL);
gtk_text_buffer_insert (buffer, &iter, " or ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"a red background", -1,
"red_background", NULL);
gtk_text_buffer_insert (buffer, &iter, " or even ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"a blue foreground on red background", -1,
"blue_foreground",
"red_background",
NULL);
gtk_text_buffer_insert (buffer, &iter, " (select that to read it) can be used.\n\n", -1);
"x-large", -1,
"x-large", NULL);
gtk_text_buffer_insert (buffer, &iter,
" to ensure that your program properly adapts if the user changes the "
"default font size.\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Underline, strikethrough, and rise. ", -1,
"heading", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Colors. ", -1,
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter, "Colors such as ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"Strikethrough", -1,
"strikethrough", NULL);
"a blue foreground", -1,
"blue_foreground", NULL);
gtk_text_buffer_insert (buffer, &iter, " or ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"a red background", -1,
"red_background", NULL);
gtk_text_buffer_insert (buffer, &iter, " or even ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"a blue foreground on red background", -1,
"blue_foreground",
"red_background",
NULL);
gtk_text_buffer_insert (buffer, &iter, " (select that to read it) can be used.\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"Underline, strikethrough, and rise. ", -1,
"heading", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"Strikethrough", -1,
"strikethrough", NULL);
gtk_text_buffer_insert (buffer, &iter, ", ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"underline", -1,
"underline", NULL);
"underline", -1,
"underline", NULL);
gtk_text_buffer_insert (buffer, &iter, ", ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"double underline", -1,
"double_underline", NULL);
"double underline", -1,
"double_underline", NULL);
gtk_text_buffer_insert (buffer, &iter, ", ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"superscript", -1,
"superscript", NULL);
"superscript", -1,
"superscript", NULL);
gtk_text_buffer_insert (buffer, &iter, ", and ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"subscript", -1,
"subscript", NULL);
"subscript", -1,
"subscript", NULL);
gtk_text_buffer_insert (buffer, &iter, " are all supported.\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Images. ", -1,
"heading", NULL);
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter, "The buffer can have images in it: ", -1);
gtk_text_buffer_insert_pixbuf (buffer, &iter, pixbuf);
gtk_text_buffer_insert_pixbuf (buffer, &iter, pixbuf);
@@ -247,70 +256,126 @@ insert_text (GtkTextBuffer *buffer)
gtk_text_buffer_insert (buffer, &iter, " for example.\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Spacing. ", -1,
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter, "You can adjust the amount of space before each line.\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"This line has a whole lot of space before it.\n", -1,
"big_gap_before_line", "wide_margins", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"You can also adjust the amount of space after each line; this line has a whole lot of space after it.\n", -1,
"big_gap_after_line", "wide_margins", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"You can also adjust the amount of space between wrapped lines; this line has extra space between each wrapped line in the same paragraph. To show off wrapping, some filler text: the quick brown fox jumped over the lazy dog. Blah blah blah blah blah blah blah blah blah.\n", -1,
"double_spaced_line", "wide_margins", NULL);
gtk_text_buffer_insert (buffer, &iter, "Also note that those lines have extra-wide margins.\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Editability. ", -1,
"heading", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"This line is 'locked down' and can't be edited by the user - just try it! You can't delete this line.\n\n", -1,
"not_editable", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Wrapping. ", -1,
"heading", NULL);
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter,
"This line (and most of the others in this buffer) is word-wrapped, using the proper Unicode algorithm. Word wrap should work in all scripts and languages that GTK+ supports. Let's make this a long paragraph to demonstrate: blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"This line has character-based wrapping, and can wrap between any two character glyphs. Let's make this a long paragraph to demonstrate: blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah\n\n", -1,
"char_wrap", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"This line has all wrapping turned off, so it makes the horizontal scrollbar appear.\n\n\n", -1,
"no_wrap", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Justification. ", -1,
"heading", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"\nThis line has center justification.\n", -1,
"center", NULL);
"You can adjust the amount of space before each line.\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"This line has right justification.\n", -1,
"right_justify", NULL);
"This line has a whole lot of space before it.\n", -1,
"big_gap_before_line", "wide_margins", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"You can also adjust the amount of space after each line; "
"this line has a whole lot of space after it.\n", -1,
"big_gap_after_line", "wide_margins", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"\nThis line has big wide margins. Text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text text.\n", -1,
"wide_margins", NULL);
"You can also adjust the amount of space between wrapped lines; "
"this line has extra space between each wrapped line in the same "
"paragraph. To show off wrapping, some filler text: the quick "
"brown fox jumped over the lazy dog. Blah blah blah blah blah "
"blah blah blah blah.\n", -1,
"double_spaced_line", "wide_margins", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "Internationalization. ", -1,
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter,
"You can put all sorts of Unicode text in the buffer.\n\nGerman (Deutsch S\303\274d) Gr\303\274\303\237 Gott\nGreek (\316\225\316\273\316\273\316\267\316\275\316\271\316\272\316\254) \316\223\316\265\316\271\316\254 \317\203\316\261\317\202\nHebrew \327\251\327\234\327\225\327\235\nJapanese (\346\227\245\346\234\254\350\252\236)\n\nThe widget properly handles bidirectional text, word wrapping, DOS/UNIX/Unicode paragraph separators, grapheme boundaries, and so on using the Pango internationalization framework.\n", -1);
"Also note that those lines have extra-wide margins.\n\n", -1);
gtk_text_buffer_insert (buffer, &iter, "Here's a word-wrapped quote in a right-to-left language:\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter, "\331\210\331\202\330\257 \330\250\330\257\330\243 \330\253\331\204\330\247\330\253 \331\205\331\206 \330\243\331\203\330\253\330\261 \330\247\331\204\331\205\330\244\330\263\330\263\330\247\330\252 \330\252\331\202\330\257\331\205\330\247 \331\201\331\212 \330\264\330\250\331\203\330\251 \330\247\331\203\330\263\331\212\331\210\331\206 \330\250\330\261\330\247\331\205\330\254\331\207\330\247 \331\203\331\205\331\206\330\270\331\205\330\247\330\252 \331\204\330\247 \330\252\330\263\330\271\331\211 \331\204\331\204\330\261\330\250\330\255\330\214 \330\253\331\205 \330\252\330\255\331\210\331\204\330\252 \331\201\331\212 \330\247\331\204\330\263\331\206\331\210\330\247\330\252 \330\247\331\204\330\256\331\205\330\263 \330\247\331\204\331\205\330\247\330\266\331\212\330\251 \330\245\331\204\331\211 \331\205\330\244\330\263\330\263\330\247\330\252 \331\205\330\247\331\204\331\212\330\251 \331\205\331\206\330\270\331\205\330\251\330\214 \331\210\330\250\330\247\330\252\330\252 \330\254\330\262\330\241\330\247 \331\205\331\206 \330\247\331\204\331\206\330\270\330\247\331\205 \330\247\331\204\331\205\330\247\331\204\331\212 \331\201\331\212 \330\250\331\204\330\257\330\247\331\206\331\207\330\247\330\214 \331\210\331\204\331\203\331\206\331\207\330\247 \330\252\330\252\330\256\330\265\330\265 \331\201\331\212 \330\256\330\257\331\205\330\251 \331\202\330\267\330\247\330\271 \330\247\331\204\331\205\330\264\330\261\331\210\330\271\330\247\330\252 \330\247\331\204\330\265\330\272\331\212\330\261\330\251. \331\210\330\243\330\255\330\257 \330\243\331\203\330\253\330\261 \331\207\330\260\331\207 \330\247\331\204\331\205\330\244\330\263\330\263\330\247\330\252 \331\206\330\254\330\247\330\255\330\247 \331\207\331\210 \302\273\330\250\330\247\331\206\331\203\331\210\330\263\331\210\331\204\302\253 \331\201\331\212 \330\250\331\210\331\204\331\212\331\201\331\212\330\247.\n\n", -1,
"rtl_quote", NULL);
gtk_text_buffer_insert (buffer, &iter, "You can put widgets in the buffer: Here's a button: ", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"Editability. ", -1,
"heading", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"This line is 'locked down' and can't be edited by the user - just "
"try it! You can't delete this line.\n\n", -1,
"not_editable", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"Wrapping. ", -1,
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter,
"This line (and most of the others in this buffer) is word-wrapped, "
"using the proper Unicode algorithm. Word wrap should work in all "
"scripts and languages that GTK+ supports. Let's make this a long "
"paragraph to demonstrate: blah blah blah blah blah blah blah blah "
"blah blah blah blah blah blah blah blah blah blah blah\n\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"This line has character-based wrapping, and can wrap between any two "
"character glyphs. Let's make this a long paragraph to demonstrate: "
"blah blah blah blah blah blah blah blah blah blah blah blah blah blah "
"blah blah blah blah blah\n\n", -1, "char_wrap", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"This line has all wrapping turned off, so it makes the horizontal "
"scrollbar appear.\n\n\n", -1, "no_wrap", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"Justification. ", -1,
"heading", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"\nThis line has center justification.\n", -1,
"center", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"This line has right justification.\n", -1,
"right_justify", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"\nThis line has big wide margins. Text text text text text text text "
"text text text text text text text text text text text text text text "
"text text text text text text text text text text text text text text "
"text.\n", -1, "wide_margins", NULL);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"Internationalization. ", -1,
"heading", NULL);
gtk_text_buffer_insert (buffer, &iter,
"You can put all sorts of Unicode text in the buffer.\n\nGerman "
"(Deutsch S\303\274d) Gr\303\274\303\237 Gott\nGreek "
"(\316\225\316\273\316\273\316\267\316\275\316\271\316\272\316\254) "
"\316\223\316\265\316\271\316\254 \317\203\316\261\317\202\nHebrew "
"\327\251\327\234\327\225\327\235\nJapanese "
"(\346\227\245\346\234\254\350\252\236)\n\nThe widget properly handles "
"bidirectional text, word wrapping, DOS/UNIX/Unicode paragraph separators, "
"grapheme boundaries, and so on using the Pango internationalization "
"framework.\n", -1);
gtk_text_buffer_insert (buffer, &iter,
"Here's a word-wrapped quote in a right-to-left language:\n", -1);
gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
"\331\210\331\202\330\257 \330\250\330\257\330\243 "
"\330\253\331\204\330\247\330\253 \331\205\331\206 "
"\330\243\331\203\330\253\330\261 \330\247\331\204\331\205\330\244\330\263\330\263\330\247\330\252 "
"\330\252\331\202\330\257\331\205\330\247 \331\201\331\212 "
"\330\264\330\250\331\203\330\251 \330\247\331\203\330\263\331\212\331\210\331\206 "
"\330\250\330\261\330\247\331\205\330\254\331\207\330\247 "
"\331\203\331\205\331\206\330\270\331\205\330\247\330\252 "
"\331\204\330\247 \330\252\330\263\330\271\331\211 \331\204\331\204\330\261\330\250\330\255\330\214 "
"\330\253\331\205 \330\252\330\255\331\210\331\204\330\252 "
"\331\201\331\212 \330\247\331\204\330\263\331\206\331\210\330\247\330\252 "
"\330\247\331\204\330\256\331\205\330\263 \330\247\331\204\331\205\330\247\330\266\331\212\330\251 "
"\330\245\331\204\331\211 \331\205\330\244\330\263\330\263\330\247\330\252 "
"\331\205\330\247\331\204\331\212\330\251 \331\205\331\206\330\270\331\205\330\251\330\214 "
"\331\210\330\250\330\247\330\252\330\252 \330\254\330\262\330\241\330\247 "
"\331\205\331\206 \330\247\331\204\331\206\330\270\330\247\331\205 "
"\330\247\331\204\331\205\330\247\331\204\331\212 \331\201\331\212 "
"\330\250\331\204\330\257\330\247\331\206\331\207\330\247\330\214 "
"\331\210\331\204\331\203\331\206\331\207\330\247 \330\252\330\252\330\256\330\265\330\265 "
"\331\201\331\212 \330\256\330\257\331\205\330\251 \331\202\330\267\330\247\330\271 "
"\330\247\331\204\331\205\330\264\330\261\331\210\330\271\330\247\330\252 "
"\330\247\331\204\330\265\330\272\331\212\330\261\330\251. \331\210\330\243\330\255\330\257 "
"\330\243\331\203\330\253\330\261 \331\207\330\260\331\207 "
"\330\247\331\204\331\205\330\244\330\263\330\263\330\247\330\252 "
"\331\206\330\254\330\247\330\255\330\247 \331\207\331\210 "
"\302\273\330\250\330\247\331\206\331\203\331\210\330\263\331\210\331\204\302\253 "
"\331\201\331\212 \330\250\331\210\331\204\331\212\331\201\331\212\330\247.\n\n", -1,
"rtl_quote", NULL);
gtk_text_buffer_insert (buffer, &iter,
"You can put widgets in the buffer: Here's a button: ", -1);
anchor = gtk_text_buffer_create_child_anchor (buffer, &iter);
gtk_text_buffer_insert (buffer, &iter, " and a menu: ", -1);
anchor = gtk_text_buffer_create_child_anchor (buffer, &iter);
@@ -321,8 +386,12 @@ insert_text (GtkTextBuffer *buffer)
gtk_text_buffer_insert (buffer, &iter, " finally a text entry: ", -1);
anchor = gtk_text_buffer_create_child_anchor (buffer, &iter);
gtk_text_buffer_insert (buffer, &iter, ".\n", -1);
gtk_text_buffer_insert (buffer, &iter, "\n\nThis demo doesn't demonstrate all the GtkTextBuffer features; it leaves out, for example: invisible/hidden text, tab stops, application-drawn areas on the sides of the widget for displaying breakpoints and such...", -1);
gtk_text_buffer_insert (buffer, &iter,
"\n\nThis demo doesn't demonstrate all the GtkTextBuffer features; "
"it leaves out, for example: invisible/hidden text, tab stops, "
"application-drawn areas on the sides of the widget for displaying "
"breakpoints and such...", -1);
/* Apply word_wrap tag to whole buffer */
gtk_text_buffer_get_bounds (buffer, &start, &end);
@@ -348,7 +417,7 @@ attach_widgets (GtkTextView *text_view)
GtkTextIter iter;
GtkTextBuffer *buffer;
int i;
buffer = gtk_text_view_get_buffer (text_view);
gtk_text_buffer_get_start_iter (buffer, &iter);
@@ -358,7 +427,7 @@ attach_widgets (GtkTextView *text_view)
{
GtkTextChildAnchor *anchor;
GtkWidget *widget;
anchor = gtk_text_iter_get_child_anchor (&iter);
if (i == 0)
@@ -371,23 +440,23 @@ attach_widgets (GtkTextView *text_view)
}
else if (i == 1)
{
widget = gtk_combo_box_new_text ();
widget = gtk_combo_box_text_new ();
gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Option 1");
gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Option 2");
gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Option 3");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (widget), "Option 1");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (widget), "Option 2");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (widget), "Option 3");
}
else if (i == 2)
{
widget = gtk_hscale_new (NULL);
widget = gtk_scale_new (GTK_ORIENTATION_HORIZONTAL, NULL);
gtk_range_set_range (GTK_RANGE (widget), 0, 100);
gtk_widget_set_size_request (widget, 70, -1);
}
else if (i == 3)
{
gchar *filename = demo_find_file ("floppybuddy.gif", NULL);
widget = gtk_image_new_from_file (filename);
g_free (filename);
gchar *filename = demo_find_file ("floppybuddy.gif", NULL);
widget = gtk_image_new_from_file (filename);
g_free (filename);
}
else if (i == 4)
{
@@ -421,20 +490,20 @@ do_textview (GtkWidget *do_widget)
GtkWidget *view2;
GtkWidget *sw;
GtkTextBuffer *buffer;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_widget_get_screen (do_widget));
gtk_window_set_default_size (GTK_WINDOW (window),
450, 450);
450, 450);
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
G_CALLBACK (gtk_widget_destroyed), &window);
gtk_window_set_title (GTK_WINDOW (window), "TextView");
gtk_container_set_border_width (GTK_CONTAINER (window), 0);
vpaned = gtk_vpaned_new ();
vpaned = gtk_paned_new (GTK_ORIENTATION_VERTICAL);
gtk_container_set_border_width (GTK_CONTAINER(vpaned), 5);
gtk_container_add (GTK_CONTAINER (window), vpaned);
@@ -446,19 +515,19 @@ do_textview (GtkWidget *do_widget)
view1 = gtk_text_view_new ();
buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (view1));
view2 = gtk_text_view_new_with_buffer (buffer);
sw = gtk_scrolled_window_new (NULL, NULL);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
gtk_paned_add1 (GTK_PANED (vpaned), sw);
gtk_container_add (GTK_CONTAINER (sw), view1);
sw = gtk_scrolled_window_new (NULL, NULL);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
gtk_paned_add2 (GTK_PANED (vpaned), sw);
gtk_container_add (GTK_CONTAINER (sw), view2);
@@ -468,7 +537,7 @@ do_textview (GtkWidget *do_widget)
attach_widgets (GTK_TEXT_VIEW (view1));
attach_widgets (GTK_TEXT_VIEW (view2));
gtk_widget_show_all (vpaned);
}
@@ -492,25 +561,25 @@ recursive_attach_view (int depth,
{
GtkWidget *child_view;
GtkWidget *event_box;
GdkColor color;
GdkRGBA color;
GtkWidget *align;
if (depth > 4)
return;
child_view = gtk_text_view_new_with_buffer (gtk_text_view_get_buffer (view));
/* Event box is to add a black border around each child view */
event_box = gtk_event_box_new ();
gdk_color_parse ("black", &color);
gtk_widget_modify_bg (event_box, GTK_STATE_NORMAL, &color);
gdk_rgba_parse (&color, "black");
gtk_widget_override_background_color (event_box, 0, &color);
align = gtk_alignment_new (0.5, 0.5, 1.0, 1.0);
gtk_container_set_border_width (GTK_CONTAINER (align), 1);
gtk_container_add (GTK_CONTAINER (event_box), align);
gtk_container_add (GTK_CONTAINER (align), child_view);
gtk_text_view_add_child_at_anchor (view, event_box, anchor);
recursive_attach_view (depth + 1, GTK_TEXT_VIEW (child_view), anchor);
@@ -533,21 +602,21 @@ easter_egg_callback (GtkWidget *button,
gtk_window_present (GTK_WINDOW (window));
return;
}
buffer = gtk_text_buffer_new (NULL);
gtk_text_buffer_get_start_iter (buffer, &iter);
gtk_text_buffer_insert (buffer, &iter,
"This buffer is shared by a set of nested text views.\n Nested view:\n", -1);
"This buffer is shared by a set of nested text views.\n Nested view:\n", -1);
anchor = gtk_text_buffer_create_child_anchor (buffer, &iter);
gtk_text_buffer_insert (buffer, &iter,
"\nDon't do this in real applications, please.\n", -1);
view = gtk_text_view_new_with_buffer (buffer);
recursive_attach_view (0, GTK_TEXT_VIEW (view), anchor);
g_object_unref (buffer);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
@@ -563,7 +632,7 @@ easter_egg_callback (GtkWidget *button,
g_object_add_weak_pointer (G_OBJECT (window), window_ptr);
gtk_window_set_default_size (GTK_WINDOW (window), 300, 400);
gtk_widget_show_all (window);
}

View File

@@ -41,7 +41,7 @@ canvas_item_new (GtkWidget *widget,
GdkPixbuf *pixbuf;
stock_id = gtk_tool_button_get_stock_id (button);
pixbuf = gtk_widget_render_icon (widget, stock_id, GTK_ICON_SIZE_DIALOG, NULL);
pixbuf = gtk_widget_render_icon_pixbuf (widget, stock_id, GTK_ICON_SIZE_DIALOG);
if (pixbuf)
{
@@ -438,7 +438,7 @@ do_toolpalette (GtkWidget *do_widget)
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
/* Add widgets to control the ToolPalette appearance: */
box = gtk_vbox_new (FALSE, 6);
box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6);
gtk_container_add (GTK_CONTAINER (window), box);
/* Orientation combo box: */
@@ -507,7 +507,7 @@ do_toolpalette (GtkWidget *do_widget)
gtk_box_pack_start (GTK_BOX (box), combo_style, FALSE, FALSE, 0);
/* Add hbox */
hbox = gtk_hbox_new (FALSE, 5);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5);
gtk_box_pack_start (GTK_BOX (box), hbox, TRUE, TRUE, 0);
/* Add and fill the ToolPalette: */

View File

@@ -402,7 +402,7 @@ do_tree_store (GtkWidget *do_widget)
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
vbox = gtk_vbox_new (FALSE, 8);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (window), vbox);

View File

@@ -196,7 +196,7 @@ do_ui_manager (GtkWidget *do_widget)
g_error_free (error);
}
box1 = gtk_vbox_new (FALSE, 0);
box1 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_add (GTK_CONTAINER (window), box1);
gtk_box_pack_start (GTK_BOX (box1),
@@ -209,11 +209,11 @@ do_ui_manager (GtkWidget *do_widget)
gtk_box_pack_start (GTK_BOX (box1), label, TRUE, TRUE, 0);
separator = gtk_hseparator_new ();
separator = gtk_separator_new (GTK_ORIENTATION_HORIZONTAL);
gtk_box_pack_start (GTK_BOX (box1), separator, FALSE, TRUE, 0);
box2 = gtk_vbox_new (FALSE, 10);
box2 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 10);
gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
gtk_box_pack_start (GTK_BOX (box1), box2, FALSE, TRUE, 0);

View File

@@ -323,7 +323,7 @@ do_image (const char *filename)
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
vbox = gtk_vbox_new (FALSE, 8);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (window), vbox);
@@ -384,7 +384,7 @@ do_nonprogressive (const gchar *filename)
gtk_container_set_border_width (GTK_CONTAINER (window), 8);
vbox = gtk_vbox_new (FALSE, 8);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 8);
gtk_container_add (GTK_CONTAINER (window), vbox);

View File

@@ -350,7 +350,7 @@ main (int argc, char **argv)
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_main_quit), NULL);
hbox = gtk_hbox_new (FALSE, 0);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), hbox);
tree = create_tree ();

View File

@@ -365,7 +365,7 @@ main (int argc, char **argv)
g_signal_connect (window, "destroy",
G_CALLBACK (close_app), NULL);
vbox = gtk_vbox_new (FALSE, 0);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_add (GTK_CONTAINER (window), vbox);
drawing_area = gtk_drawing_area_new ();

View File

@@ -24,9 +24,9 @@ set_interp_type (GtkWidget *widget, gpointer data)
void
overall_changed_cb (GtkAdjustment *adjustment, gpointer data)
{
if (adjustment->value != overall_alpha)
if (gtk_adjustment_get_value (adjustment) != overall_alpha)
{
overall_alpha = adjustment->value;
overall_alpha = gtk_adjustment_get_value (adjustment);
gtk_widget_queue_draw (darea);
}
}
@@ -98,15 +98,15 @@ main(int argc, char **argv)
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_main_quit), NULL);
vbox = gtk_vbox_new (FALSE, 0);
vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
gtk_container_add (GTK_CONTAINER (window), vbox);
combo_box = gtk_combo_box_new_text ();
combo_box = gtk_combo_box_text_new ();
gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), "NEAREST");
gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), "BILINEAR");
gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), "TILES");
gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), "HYPER");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo_box), "NEAREST");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo_box), "BILINEAR");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo_box), "TILES");
gtk_combo_box_text_append_text (GTK_COMBO_BOX_TEXT (combo_box), "HYPER");
gtk_combo_box_set_active (GTK_COMBO_BOX (combo_box), 1);
@@ -117,7 +117,7 @@ main(int argc, char **argv)
alignment = gtk_alignment_new (0.0, 0.0, 0.0, 0.5);
gtk_box_pack_start (GTK_BOX (vbox), alignment, FALSE, FALSE, 0);
hbox = gtk_hbox_new (FALSE, 4);
hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 4);
gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
label = gtk_label_new ("Overall Alpha:");
@@ -127,7 +127,7 @@ main(int argc, char **argv)
g_signal_connect (adjustment, "value_changed",
G_CALLBACK (overall_changed_cb), NULL);
hscale = gtk_hscale_new (adjustment);
hscale = gtk_scale_new (GTK_ORIENTATION_HORIZONTAL, adjustment);
gtk_scale_set_digits (GTK_SCALE (hscale), 0);
gtk_box_pack_start (GTK_BOX (hbox), hscale, TRUE, TRUE, 0);

View File

@@ -1,7 +1,7 @@
## Process this file with automake to produce Makefile.in
include $(top_srcdir)/Makefile.decl
SUBDIRS = tutorial faq reference tools
SUBDIRS = reference tools
EXTRA_DIST += \
CODING-STYLE \

View File

@@ -1,44 +0,0 @@
include $(top_srcdir)/Makefile.decl
EXTRA_DIST += \
gtk-faq.sgml
if HAVE_DOCBOOK
html:
if test -w $(srcdir); then \
(cd $(srcdir); \
db2html gtk-faq.sgml; \
test -d html && rm -r html; \
mv gtk-faq html); \
fi
pdf:
if test -w $(srcdir); then \
(cd $(srcdir); db2pdf gtk-faq.sgml); \
fi
all-local: html
dist-hook: html
cp -Rp $(srcdir)/html $(distdir)
else
html:
echo "***"
echo "*** Warning: FAQ not built"
echo "***"
pdf:
echo "***"
echo "*** Warning: FAQ not built"
echo "***"
dist-hook:
echo "***"
echo "*** Warning: FAQ not built"
echo "*** DISTRIBUTION IS INCOMPLETE"
echo "***"
endif
.PHONY: html
-include $(top_srcdir)/git.mk

File diff suppressed because it is too large Load Diff

View File

@@ -1,5 +1,4 @@
## Process this file with automake to produce Makefile.in
include $(top_srcdir)/Makefile.decl
AUTOMAKE_OPTIONS = 1.6
@@ -13,130 +12,127 @@ DOC_MAIN_SGML_FILE=gdk-docs.sgml
SCAN_OPTIONS=--deprecated-guards="GDK_ENABLE_BROKEN|GDK_DISABLE_DEPRECATED"
# The directory containing the source code. Relative to $(srcdir)
DOC_SOURCE_DIR=../../../gdk
DOC_SOURCE_DIR=../../../gdk ../../../gdk/x11
# Used for dependencies
HFILE_GLOB=$(top_srcdir)/gdk/*.h $(top_srcdir)/gdk/x11/gdkx.h
CFILE_GLOB=$(top_srcdir)/gdk/*.c
# Header files to ignore when scanning
IGNORE_HFILES= \
IGNORE_HFILES= \
gdkintl.h \
gdkmarshalers.h \
gdkkeysyms.h \
gdkinternals.h \
gdkprivate.h \
gdkpoly-generic.h \
gdk*private.h \
keyname-table.h \
win32 \
win32 \
x11 \
quartz
# Extra files to add when scanning (relative to $srcdir)
EXTRA_HFILES= \
../../../gdk/x11/gdkx.h
../../../gdk/x11/gdkx.h
# CFLAGS and LDFLAGS for compiling scan program. Only needed
# if $(DOC_MODULE).types is non-empty.
INCLUDES = \
-I$(top_srcdir) \
-I$(top_builddir) \
-I$(top_builddir)/gdk \
INCLUDES = \
-I$(top_srcdir) \
-I$(top_builddir) \
-I$(top_builddir)/gdk \
$(GTK_DEBUG_FLAGS) \
$(GDK_DEP_CFLAGS)
GTKDOC_LIBS = $(top_builddir)/gdk/$(gdktargetlib)
GTKDOC_LIBS = $(top_builddir)/gdk/libgdk-3.la $(GDK_DEP_LIBS)
# Extra options to supply to gtkdoc-mkdb
MKDB_OPTIONS=--sgml-mode --output-format=xml --name-space=gdk
# Extra SGML files that are included by DOC_MAIN_SGML_FILE
content_files = \
version.xml \
multihead.sgml
version.xml
# Images to copy into HTML directory
HTML_IMAGES = \
HTML_IMAGES = \
images/rotated-text.png \
\
images/X_cursor.png \
images/arrow.png \
images/based_arrow_down.png \
images/based_arrow_up.png \
images/boat.png \
images/bogosity.png \
images/bottom_left_corner.png \
images/bottom_right_corner.png \
images/bottom_side.png \
images/bottom_tee.png \
images/box_spiral.png \
images/center_ptr.png \
images/circle.png \
images/clock.png \
images/coffee_mug.png \
images/cross.png \
images/cross_reverse.png \
images/crosshair.png \
images/diamond_cross.png \
images/dot.png \
images/dotbox.png \
images/double_arrow.png \
images/draft_large.png \
images/draft_small.png \
images/draped_box.png \
images/exchange.png \
images/fleur.png \
images/gobbler.png \
images/gumby.png \
images/hand1.png \
images/hand2.png \
images/heart.png \
images/icon.png \
images/iron_cross.png \
images/left_ptr.png \
images/left_side.png \
images/left_tee.png \
images/leftbutton.png \
images/ll_angle.png \
images/lr_angle.png \
images/man.png \
images/middlebutton.png \
images/mouse.png \
images/pencil.png \
images/pirate.png \
images/plus.png \
images/question_arrow.png \
images/right_ptr.png \
images/right_side.png \
images/right_tee.png \
images/rightbutton.png \
images/rtl_logo.png \
images/sailboat.png \
images/sb_down_arrow.png \
images/sb_h_double_arrow.png \
images/sb_left_arrow.png \
images/sb_right_arrow.png \
images/sb_up_arrow.png \
images/sb_v_double_arrow.png \
images/shuttle.png \
images/sizing.png \
images/spider.png \
images/spraycan.png \
images/star.png \
images/target.png \
images/tcross.png \
images/top_left_arrow.png \
images/top_left_corner.png \
images/top_right_corner.png \
images/top_side.png \
images/top_tee.png \
images/trek.png \
images/ul_angle.png \
images/umbrella.png \
images/ur_angle.png \
images/watch.png \
images/xterm.png
images/X_cursor.png \
images/arrow.png \
images/based_arrow_down.png \
images/based_arrow_up.png \
images/boat.png \
images/bogosity.png \
images/bottom_left_corner.png \
images/bottom_right_corner.png \
images/bottom_side.png \
images/bottom_tee.png \
images/box_spiral.png \
images/center_ptr.png \
images/circle.png \
images/clock.png \
images/coffee_mug.png \
images/cross.png \
images/cross_reverse.png \
images/crosshair.png \
images/diamond_cross.png \
images/dot.png \
images/dotbox.png \
images/double_arrow.png \
images/draft_large.png \
images/draft_small.png \
images/draped_box.png \
images/exchange.png \
images/fleur.png \
images/gobbler.png \
images/gumby.png \
images/hand1.png \
images/hand2.png \
images/heart.png \
images/icon.png \
images/iron_cross.png \
images/left_ptr.png \
images/left_side.png \
images/left_tee.png \
images/leftbutton.png \
images/ll_angle.png \
images/lr_angle.png \
images/man.png \
images/middlebutton.png \
images/mouse.png \
images/pencil.png \
images/pirate.png \
images/plus.png \
images/question_arrow.png \
images/right_ptr.png \
images/right_side.png \
images/right_tee.png \
images/rightbutton.png \
images/rtl_logo.png \
images/sailboat.png \
images/sb_down_arrow.png \
images/sb_h_double_arrow.png \
images/sb_left_arrow.png \
images/sb_right_arrow.png \
images/sb_up_arrow.png \
images/sb_v_double_arrow.png \
images/shuttle.png \
images/sizing.png \
images/spider.png \
images/spraycan.png \
images/star.png \
images/target.png \
images/tcross.png \
images/top_left_arrow.png \
images/top_left_corner.png \
images/top_right_corner.png \
images/top_side.png \
images/top_tee.png \
images/trek.png \
images/ul_angle.png \
images/umbrella.png \
images/ur_angle.png \
images/watch.png \
images/xterm.png
# Extra options to supply to gtkdoc-fixref
FIXXREF_OPTIONS= \

View File

@@ -6,55 +6,44 @@
]>
<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">
<bookinfo>
<title>GDK Reference Manual</title>
<title>GDK 3 Reference Manual</title>
<releaseinfo>
for GDK &version;
The latest version of this documentation can be found on-line at
<ulink role="online-location" url="http://library.gnome.org/devel/gdk/unstable/">http://library.gnome.org/devel/gdk/unstable/</ulink>.
This document is for the GDK 3 library, version &version;
The latest version can be found online at
<ulink role="online-location" url="http://library.gnome.org/devel/gdk3/unstable/">http://library.gnome.org/devel/gdk3/unstable/</ulink>.
If you are looking for the older GDK 2 series of libraries,
they can be found under their version numbers; for example,
2.24 is available at
<ulink role="online-location" url="http://library.gnome.org/devel/gdk/2.24/">http://library.gnome.org/devel/gdk/2.24/</ulink>.
</releaseinfo>
</bookinfo>
<reference id="reference">
<title>API Reference</title>
<xi:include href="xml/general.xml" />
<xi:include href="multihead.sgml" />
<xi:include href="xml/gdkdisplay.xml" />
<xi:include href="xml/gdkdisplaymanager.xml" />
<xi:include href="xml/gdkdisplay.xml" />
<xi:include href="xml/gdkscreen.xml" />
<xi:include href="xml/gdkdevicemanager.xml" />
<xi:include href="xml/gdkdevice.xml" />
<xi:include href="xml/regions.xml" />
<xi:include href="xml/drawing.xml" />
<xi:include href="xml/pixbufs.xml" />
<xi:include href="xml/colors.xml" />
<xi:include href="xml/rgba_colors.xml" />
<xi:include href="xml/visuals.xml" />
<xi:include href="xml/fonts.xml" />
<xi:include href="xml/cursors.xml" />
<xi:include href="xml/windows.xml" />
<xi:include href="xml/events.xml" />
<xi:include href="xml/event_structs.xml" />
<xi:include href="xml/keys.xml" />
<xi:include href="xml/selections.xml" />
<xi:include href="xml/dnd.xml" />
<xi:include href="xml/properties.xml" />
<xi:include href="xml/threads.xml" />
<xi:include href="xml/input.xml" />
<xi:include href="xml/gdkdevicemanager.xml" />
<xi:include href="xml/pango_interaction.xml" />
<xi:include href="xml/cairo_interaction.xml" />
<xi:include href="xml/x_interaction.xml" />
<xi:include href="xml/gdkapplaunchcontext.xml" />
<xi:include href="xml/gdktesting.xml" />
</reference>

View File

@@ -1,27 +1,4 @@
# GdkPixmap, GdkBitmap and GdkDrawable are the same as GdkWindow.
<STRUCT>
<NAME>GdkWindow</NAME>
struct GdkPixmap
{
gpointer user_data;
};
</STRUCT>
<STRUCT>
<NAME>GdkPixmap</NAME>
struct GdkPixmap
{
gpointer user_data;
};
</STRUCT>
<STRUCT>
<NAME>GdkDrawable</NAME>
struct GdkDrawable
{
gpointer user_data;
};
</STRUCT>
# GdkAtom is an opaque typedef
<STRUCT>
<NAME>GdkAtom</NAME>

View File

@@ -8,8 +8,6 @@ gdk_init
gdk_init_check
gdk_parse_args
gdk_get_display_arg_name
gdk_set_locale
gdk_set_sm_client_id
gdk_notify_startup_complete
gdk_notify_startup_complete_with_id
@@ -63,7 +61,6 @@ GdkStatus
GDKVAR
gdk_axis_use_get_type
gdk_byte_order_get_type
gdk_cap_style_get_type
gdk_crossing_mode_get_type
gdk_cursor_type_get_type
gdk_drag_action_get_type
@@ -79,17 +76,14 @@ gdk_input_mode_get_type
gdk_input_source_get_type
gdk_modifier_type_get_type
gdk_notify_type_get_type
gdk_overlap_type_get_type
gdk_property_state_get_type
gdk_prop_mode_get_type
gdk_scroll_direction_get_type
gdk_setting_action_get_type
gdk_status_get_type
gdk_subwindow_mode_get_type
gdk_visibility_state_get_type
gdk_visual_type_get_type
gdk_window_attributes_type_get_type
gdk_window_class_get_type
gdk_window_edge_get_type
gdk_window_hints_get_type
gdk_window_state_get_type
@@ -122,23 +116,16 @@ gdk_display_sync
gdk_display_flush
gdk_display_close
gdk_display_is_closed
gdk_display_list_devices
gdk_display_get_event
gdk_display_peek_event
gdk_display_put_event
gdk_display_add_client_message_filter
gdk_display_has_pending
gdk_display_set_double_click_time
gdk_display_set_double_click_distance
gdk_display_get_pointer
gdk_display_get_device_state
gdk_display_list_devices
gdk_display_get_window_at_pointer
gdk_display_get_window_at_device_position
GdkDisplayPointerHooks
gdk_display_set_pointer_hooks
GdkDisplayDeviceHooks
gdk_display_set_device_hooks
gdk_display_warp_pointer
gdk_display_warp_device
gdk_display_supports_cursor_color
gdk_display_supports_cursor_alpha
gdk_display_get_default_cursor_size
@@ -151,7 +138,11 @@ gdk_display_store_clipboard
gdk_display_supports_shapes
gdk_display_supports_input_shapes
gdk_display_supports_composite
gdk_display_get_app_launch_context
gdk_display_notify_startup_complete
<SUBSECTION Standard>
GDK_DISPLAY
GDK_DISPLAY_OBJECT
GDK_IS_DISPLAY
GDK_TYPE_DISPLAY
@@ -173,7 +164,8 @@ gdk_display_manager_get
gdk_display_manager_get_default_display
gdk_display_manager_set_default_display
gdk_display_manager_list_displays
gdk_display_get_core_pointer
gdk_display_manager_open_display
<SUBSECTION Standard>
GDK_DISPLAY_MANAGER
GDK_DISPLAY_MANAGER_CLASS
@@ -211,7 +203,6 @@ gdk_screen_get_monitor_at_window
gdk_screen_get_monitor_height_mm
gdk_screen_get_monitor_width_mm
gdk_screen_get_monitor_plug_name
gdk_screen_broadcast_client_message
gdk_screen_get_setting
gdk_screen_get_font_options
gdk_screen_set_font_options
@@ -219,10 +210,6 @@ gdk_screen_get_resolution
gdk_screen_set_resolution
gdk_screen_get_active_window
gdk_screen_get_window_stack
<SUBSECTION Spawning>
gdk_spawn_on_screen
gdk_spawn_on_screen_with_pipes
gdk_spawn_command_line_on_screen
<SUBSECTION Standard>
GDK_SCREEN
@@ -257,25 +244,26 @@ gdk_color_to_string
<SUBSECTION Standard>
GDK_TYPE_COLOR
<SUBSECTION Private>
gdk_color_get_type
</SECTION>
<SECTION>
<TITLE>Drawing Primitives</TITLE>
<FILE>drawing</FILE>
GdkDrawable
gdk_drawable_get_clip_region
gdk_drawable_get_visible_region
<TITLE>RGBA Colors</TITLE>
<FILE>rgba_colors</FILE>
GdkRGBA
gdk_rgba_copy
gdk_rgba_free
gdk_rgba_parse
gdk_rgba_equal
gdk_rgba_hash
gdk_rgba_to_string
<SUBSECTION Standard>
GDK_DRAWABLE
GDK_DRAWABLE_GET_CLASS
GDK_TYPE_DRAWABLE
GDK_IS_DRAWABLE
GDK_DRAWABLE_CLASS
GDK_IS_DRAWABLE_CLASS
GDK_TYPE_RGBA
<SUBSECTION Private>
GdkDrawableClass
gdk_rgba_get_type
</SECTION>
<SECTION>
@@ -324,7 +312,7 @@ gdk_visual_get_type
<FILE>windows</FILE>
GdkWindow
GdkWindowType
GdkWindowClass
GdkWindowWindowClass
GdkWindowHints
GdkGeometry
GdkGravity
@@ -382,9 +370,11 @@ gdk_window_constrain_size
gdk_window_beep
<SUBSECTION>
gdk_window_get_clip_region
gdk_window_begin_paint_rect
gdk_window_begin_paint_region
gdk_window_end_paint
gdk_window_get_visible_region
<SUBSECTION>
gdk_window_invalidate_rect
@@ -421,6 +411,7 @@ gdk_window_merge_child_input_shapes
gdk_window_set_static_gravities
gdk_window_set_title
gdk_window_set_background
gdk_window_set_background_rgba
gdk_window_set_background_pattern
gdk_window_get_background_pattern
GDK_PARENT_RELATIVE
@@ -473,10 +464,8 @@ gdk_window_get_device_cursor
gdk_window_set_device_cursor
gdk_window_get_device_events
gdk_window_set_device_events
<SUBSECTION>
GdkPointerHooks
gdk_set_pointer_hooks
gdk_window_get_source_events
gdk_window_set_source_events
<SUBSECTION>
gdk_offscreen_window_get_surface
@@ -499,7 +488,6 @@ GDK_TYPE_FILTER_RETURN
GDK_TYPE_GRAVITY
GDK_TYPE_MODIFIER_TYPE
GDK_TYPE_WINDOW_ATTRIBUTES_TYPE
GDK_TYPE_WINDOW_CLASS
GDK_TYPE_WINDOW_EDGE
GDK_TYPE_WINDOW_HINTS
GDK_TYPE_WINDOW_TYPE
@@ -508,12 +496,11 @@ GDK_TYPE_WM_DECORATION
GDK_TYPE_WM_FUNCTION
<SUBSECTION Private>
gdk_window_object_get_type
gdk_drawable_get_type
GdkWindowObject
GdkWindowObjectClass
gdk_window_get_type
gdk_window_window_class_get_type
GdkWindowClass
GdkWindowImpl
GdkWindowImplIface
GdkWindowImplClass
GdkWindowRedirect
gdk_window_impl_get_type
gdk_window_freeze_toplevel_updates_libgtk_only
@@ -556,17 +543,8 @@ GdkAtom
GDK_ATOM_TO_POINTER
GDK_POINTER_TO_ATOM
GDK_NONE
gdk_text_property_to_text_list
gdk_text_property_to_text_list_for_display
gdk_free_text_list
gdk_text_property_to_utf8_list
gdk_text_property_to_utf8_list_for_display
gdk_string_to_compound_text
gdk_string_to_compound_text_for_display
gdk_free_compound_text
gdk_utf8_to_string_target
gdk_utf8_to_compound_text
gdk_utf8_to_compound_text_for_display
gdk_atom_intern
gdk_atom_intern_static_string
gdk_atom_name
@@ -595,11 +573,11 @@ gdk_window_create_similar_surface
gdk_cairo_create
gdk_cairo_get_clip_rectangle
gdk_cairo_set_source_color
gdk_cairo_set_source_rgba
gdk_cairo_set_source_pixbuf
gdk_cairo_set_source_window
gdk_cairo_rectangle
gdk_cairo_region
gdk_cairo_reset_clip
gdk_cairo_region_create_from_surface
</SECTION>
@@ -632,10 +610,6 @@ gdk_threads_add_timeout
gdk_threads_add_timeout_full
gdk_threads_add_timeout_seconds
gdk_threads_add_timeout_seconds_full
<SUBSECTION Private>
gdk_threads_lock
gdk_threads_unlock
</SECTION>
<SECTION>
@@ -685,25 +659,17 @@ gdk_keymap_get_type
</SECTION>
<SECTION>
<TITLE>GdkDeviceManager</TITLE>
<FILE>gdkdevicemanager</FILE>
GdkDeviceManager
<TITLE>GdkDevice</TITLE>
<FILE>gdkdevice</FILE>
GdkDevice
GdkDeviceType
GdkInputSource
GdkInputMode
GdkDeviceKey
GdkDeviceAxis
GdkAxisUse
GdkDeviceType
GdkGrabOwnership
gdk_enable_multidevice
gdk_device_manager_get_display
gdk_device_manager_list_devices
gdk_device_manager_get_client_pointer
<SUBSECTION>
gdk_device_get_name
gdk_device_set_source
gdk_device_get_source
gdk_device_set_mode
gdk_device_get_mode
@@ -712,10 +678,13 @@ gdk_device_get_key
gdk_device_set_axis_use
gdk_device_get_axis_use
gdk_device_get_associated_device
gdk_device_list_slave_devices
gdk_device_get_device_type
gdk_device_get_display
gdk_device_get_has_cursor
gdk_device_get_n_axes
gdk_device_get_n_keys
gdk_device_warp
<SUBSECTION>
gdk_device_grab
@@ -723,6 +692,8 @@ gdk_device_ungrab
<SUBSECTION>
gdk_device_get_state
gdk_device_get_position
gdk_device_get_window_at_position
gdk_device_get_history
gdk_device_free_history
GdkTimeCoord
@@ -730,14 +701,6 @@ gdk_device_get_axis
gdk_device_list_axes
gdk_device_get_axis_value
<SUBSECTION>
gdk_input_set_extension_events
GdkExtensionMode
<SUBSECTION>
gdk_devices_list
gdk_device_get_core_pointer
<SUBSECTION Standard>
GDK_TYPE_AXIS_USE
GDK_TYPE_EXTENSION_MODE
@@ -745,12 +708,6 @@ GDK_TYPE_INPUT_MODE
GDK_TYPE_INPUT_SOURCE
GDK_TYPE_DEVICE_TYPE
GDK_TYPE_GRAB_OWNERSHIP
GDK_DEVICE_MANAGER
GDK_DEVICE_MANAGER_CLASS
GDK_DEVICE_MANAGER_GET_CLASS
GDK_IS_DEVICE_MANAGER
GDK_IS_DEVICE_MANAGER_CLASS
GDK_TYPE_DEVICE_MANAGER
GDK_DEVICE
GDK_DEVICE_CLASS
GDK_DEVICE_GET_CLASS
@@ -760,15 +717,33 @@ GDK_TYPE_DEVICE
<SUBSECTION Private>
GdkDeviceClass
GdkDevicePrivate
GdkDeviceManagerClass
GdkDeviceManagerPrivate
gdk_device_get_type
gdk_device_manager_get_type
gdk_device_type_get_type
GDK_MAX_TIMECOORD_AXES
</SECTION>
<SECTION>
<TITLE>GdkDeviceManager</TITLE>
<FILE>gdkdevicemanager</FILE>
GdkDeviceManager
gdk_disable_multidevice
gdk_device_manager_get_display
gdk_device_manager_list_devices
gdk_device_manager_get_client_pointer
<SUBSECTION Standard>
GDK_DEVICE_MANAGER
GDK_DEVICE_MANAGER_CLASS
GDK_DEVICE_MANAGER_GET_CLASS
GDK_IS_DEVICE_MANAGER
GDK_IS_DEVICE_MANAGER_CLASS
GDK_TYPE_DEVICE_MANAGER
<SUBSECTION Private>
GdkDeviceManagerClass
gdk_device_manager_get_type
</SECTION>
<SECTION>
<TITLE>Events</TITLE>
<FILE>events</FILE>
@@ -778,7 +753,6 @@ GDK_CURRENT_TIME
GDK_PRIORITY_EVENTS
GDK_PRIORITY_REDRAW
<SUBSECTION>
gdk_events_pending
gdk_event_peek
@@ -801,12 +775,6 @@ gdk_events_get_distance
gdk_event_handler_set
GdkEventFunc
<SUBSECTION>
gdk_event_send_client_message
gdk_event_send_client_message_for_display
gdk_event_send_clientmessage_toall
gdk_add_client_message_filter
<SUBSECTION>
gdk_get_show_events
gdk_set_show_events
@@ -814,6 +782,8 @@ gdk_event_set_screen
gdk_event_get_screen
gdk_event_get_device
gdk_event_set_device
gdk_event_get_source_device
gdk_event_set_source_device
<SUBSECTION>
gdk_setting_get
@@ -841,11 +811,8 @@ GdkEventFocus
GdkEventConfigure
GdkEventProperty
GdkEventSelection
GdkNativeWindow
GdkEventDND
GdkEventProximity
GdkEventClient
GdkEventNoExpose
GdkEventWindowState
GdkEventSetting
GdkEventOwnerChange
@@ -904,30 +871,31 @@ gdk_cursor_get_type
<SECTION>
<TITLE>Drag and Drop</TITLE>
<FILE>dnd</FILE>
GdkDragContext
gdk_drag_get_selection
gdk_drag_abort
gdk_drop_reply
gdk_drag_context_new
gdk_drag_drop
gdk_drag_find_window
gdk_drag_find_window_for_screen
gdk_drag_context_get_source_window
gdk_drag_begin
gdk_drag_begin_for_device
gdk_drag_motion
gdk_drop_finish
gdk_drag_get_protocol
gdk_drag_get_protocol_for_display
GdkDragProtocol
GdkDragContext
GdkDragAction
gdk_drag_status
gdk_drag_drop_succeeded
gdk_window_get_drag_protocol
gdk_drag_context_get_actions
gdk_drag_context_get_suggested_action
gdk_drag_context_get_selected_action
gdk_drag_context_list_targets
gdk_drag_context_get_device
gdk_drag_context_set_device
gdk_drag_context_get_source_window
gdk_drag_context_get_dest_window
gdk_drag_context_get_protocol
<SUBSECTION Standard>
GDK_DRAG_CONTEXT
@@ -949,38 +917,21 @@ gdk_drag_context_get_type
<TITLE>X Window System Interaction</TITLE>
<FILE>x_interaction</FILE>
GDK_ROOT_WINDOW
GDK_WINDOW_XDISPLAY
GDK_WINDOW_XID
GDK_DISPLAY_XDISPLAY
GDK_DRAWABLE_XDISPLAY
GDK_DRAWABLE_XID
GDK_SCREEN_XDISPLAY
GDK_SCREEN_XNUMBER
GDK_SCREEN_XSCREEN
GDK_CURSOR_XCURSOR
GDK_CURSOR_XDISPLAY
GDK_WINDOW_XWINDOW
gdkx_visual_get
gdk_window_foreign_new
gdk_window_foreign_new_for_display
gdk_xid_table_lookup
gdk_xid_table_lookup_for_display
gdk_window_lookup
gdk_window_lookup_for_display
GDK_POINTER_TO_XID
GDK_XID_TO_POINTER
gdk_x11_lookup_xdisplay
gdk_x11_get_server_time
gdk_net_wm_supports
gdk_x11_screen_supports_net_wm_hint
gdk_x11_screen_get_window_manager_name
gdk_x11_screen_get_monitor_output
gdk_x11_screen_lookup_visual
gdk_x11_window_set_user_time
gdk_x11_window_move_to_current_desktop
gdk_x11_display_get_user_time
gdk_x11_cursor_get_xcursor
gdk_x11_cursor_get_xdisplay
gdk_x11_display_broadcast_startup_message
gdk_x11_display_get_startup_notification_id
gdk_x11_display_set_startup_notification_id
gdk_x11_display_get_xdisplay
gdk_x11_display_grab
gdk_x11_display_ungrab
@@ -989,15 +940,24 @@ gdk_x11_display_error_trap_pop
gdk_x11_display_error_trap_pop_ignored
gdk_x11_display_set_cursor_theme
gdk_x11_register_standard_event_type
gdk_x11_drawable_get_xdisplay
gdk_x11_drawable_get_xid
gdk_x11_screen_get_screen_number
gdk_x11_screen_get_xscreen
gdk_x11_screen_get_window_manager_name
gdk_x11_screen_get_monitor_output
gdk_x11_screen_lookup_visual
gdk_x11_screen_supports_net_wm_hint
gdk_x11_window_foreign_new_for_display
gdk_x11_window_lookup_for_display
gdk_x11_window_get_xid
gdk_x11_window_set_user_time
gdk_x11_window_move_to_current_desktop
gdk_x11_get_default_root_xwindow
gdk_x11_get_default_screen
gdk_x11_get_default_xdisplay
gdk_x11_grab_server
gdk_x11_screen_get_screen_number
gdk_x11_screen_get_xscreen
gdk_x11_ungrab_server
gdk_x11_cursor_get_xcursor
gdk_x11_cursor_get_xdisplay
gdk_x11_visual_get_xvisual
gdk_x11_atom_to_xatom
gdk_x11_atom_to_xatom_for_display
@@ -1007,11 +967,30 @@ gdk_x11_get_xatom_by_name
gdk_x11_get_xatom_by_name_for_display
gdk_x11_get_xatom_name
gdk_x11_get_xatom_name_for_display
gdk_x11_set_sm_client_id
gdk_x11_display_text_property_to_text_list
gdk_x11_free_text_list
gdk_x11_display_string_to_compound_text
gdk_x11_display_utf8_to_compound_text
gdk_x11_free_compound_text
<SUBSECTION Private>
GDK_HAVE_WCHAR_H
GDK_HAVE_WCTYPE_H
gdk_x11_window_get_drawable_impl
gdk_x11_app_launch_context_get_type
gdk_x11_cursor_get_type
gdk_x11_device_core_get_type
gdk_x11_device_manager_core_get_type
gdk_x11_device_manager_xi2_get_type
gdk_x11_device_manager_xi_get_type
gdk_x11_device_xi2_get_type
gdk_x11_device_xi_get_type
gdk_x11_display_get_type
gdk_x11_display_manager_get_type
gdk_x11_drag_context_get_type
gdk_x11_keymap_get_type
gdk_x11_screen_get_type
gdk_x11_visual_get_type
gdk_x11_window_get_type
gdk_window_impl_x11_get_type
</SECTION>
<SECTION>
@@ -1033,7 +1012,6 @@ GDK_IS_APP_LAUNCH_CONTEXT
GDK_IS_APP_LAUNCH_CONTEXT_CLASS
GDK_TYPE_APP_LAUNCH_CONTEXT
GdkAppLaunchContextClass
GdkAppLaunchContextPrivate
<SUBSECTION Private>
gdk_app_launch_context_get_type
</SECTION>

View File

@@ -1,10 +1,13 @@
#include <gdk/gdk.h>
gdk_display_get_type
gdk_display_manager_get_type
gdk_screen_get_type
gdk_drawable_get_type
gdk_window_object_get_type
gdk_keymap_get_type
gdk_app_launch_context_get_type
gdk_cursor_get_type
gdk_device_get_type
gdk_device_manager_get_type
gdk_display_get_type
gdk_display_manager_get_type
gdk_drag_context_get_type
gdk_keymap_get_type
gdk_screen_get_type
gdk_visual_get_type
gdk_window_get_type

View File

@@ -1,128 +0,0 @@
<?xml version="1.0"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
]>
<refentry id="multihead" revision="1 May 2002">
<refmeta>
<refentrytitle>Multi-head Support Overview</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>GDK Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>Multi-head Support Overview</refname>
<refpurpose>Overview of GdkDisplay and GdkScreen</refpurpose>
</refnamediv>
<refsect1>
<title>Overview</title>
<para>
Multihead support is based around two main object types:
<itemizedlist>
<listitem><para>GdkDisplay</para></listitem>
<listitem><para>GdkScreen</para></listitem>
</itemizedlist>
</para>
<para>
<link linkend="gdk-GdkDisplay">GdkDisplay</link> objects are the GDK
representation of the X Display which can be described as <emphasis>a
workstation consisting of a keyboard a pointing device (such as a
mouse) and one or more screens</emphasis>.
It is used to open and keep track of various <link
linkend="gdk-GdkScreen">GdkScreen</link> objects currently
instanciated by the application. It is also used to grab and release
the keyboard and the mouse pointer.
</para>
<para>
<link linkend="gdk-GdkScreen">GdkScreen</link> objects are the GDK
representation of a physical screen. It is used throughout GDK and GTK+
to specify which screen the top level windows are to be displayed on.
It is also used to query the screen specification and default settings such as
the default colormap (<link linkend="gdk-screen-get-default-colormap">gdk_screen_get_default_colormap</link>()),
the screen width (<link linkend="gdk-screen-get-width">gdk_screen_get_width</link>()), etc.
</para>
<para>
The following code samples demonstrate common usage of the objects described above.
</para>
<example>
<title>Testing the number of screen on the current display</title>
<programlisting><!--
-->gint num_screen = 0;
gchar *displayname = NULL;
GdkScreen **screen_list;
GdkDisplay *display;
gtk_init (&amp;argc, &amp;argv);
display = gdk_display_get_default ();
num_screen = gdk_display_get_n_screens (display);
displayname = gdk_display_get_name (display);
if (num_screen &lt;= 1)
{
printf ("This Xserver (%s) manages only one screen. exiting...\n",
displayname);
exit (1);
}
else
{
printf ("This Xserver (%s) manages %d screens.\n", displayname,
num_screen);
}<!--
--> </programlisting>
</example>
<example>
<title>Opening a second display</title>
<programlisting><!--
-->gchar *second_screen_name;
GdkDisplay *second_display;
GdkScreen *second_screen;
GtkWidget *window;
gtk_init (&amp;argc, &amp;argv);
/* screen2_name needs to be initialized before calling
/* gdk_display_new() */
second_display = gdk_display_new (&amp;argc, &amp;argv, second_screen_name);
if (second_display)
second_screen = gdk_display_get_default_screen (second_display);
else
{
g_print ("Can't open display :\n\t%s\n\n",
second_screen_name);
exit (1);
}
/* now GdkScreen can be assigned to GtkWindows */
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (window, second_screen);<!--
--></programlisting>
</example>
</refsect1>
<refsect1>
<title>See Also</title>
<para>
<variablelist>
<varlistentry>
<term><link linkend="gdk-GdkDisplay">GdkDisplay</link></term>
<listitem><para>the GDK Object used to represent and manipulate display
related data</para></listitem>
</varlistentry>
<varlistentry>
<term><link linkend="gdk-GdkScreen">GdkScreen</link></term>
<listitem><para>the GDK Object used to represent and query screen related
data</para></listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
</refentry>
<!--
Local variables:
mode: sgml
sgml-parent-document: ("gdk-docs.sgml" "book" "refentry" "")
End:
-->

View File

@@ -1,6 +1,23 @@
cairo_interaction.sgml
colors.sgml
cursors.sgml
dnd.sgml
drawing.sgml
events.sgml
event_structs.sgml
gdkapplaunchcontext.sgml
gdkdisplay.sgml
gdkdisplaymanager.sgml
gdkscreen.sgml
gdktesting.sgml
general.sgml
keys.sgml
pango_interaction.sgml
properties.sgml
pixbufs.sgml
regions.sgml
selections.sgml
threads.sgml
visuals.sgml
windows.sgml
x_interaction.sgml

View File

@@ -1,214 +0,0 @@
<!-- ##### SECTION Title ##### -->
Cursors
<!-- ##### SECTION Short_Description ##### -->
Standard and pixmap cursors
<!-- ##### SECTION Long_Description ##### -->
<para>
These functions are used to create and destroy cursors.
There is a number of standard cursors, but it is also
possible to construct new cursors from pixmaps and
pixbufs. There may be limitations as to what kinds of
cursors can be constructed on a given display, see
gdk_display_supports_cursor_alpha(),
gdk_display_supports_cursor_color(),
gdk_display_get_default_cursor_size() and
gdk_display_get_maximal_cursor_size().
</para>
<para>
Cursors by themselves are not very interesting, they must be be
bound to a window for users to see them. This is done with
gdk_window_set_cursor() or by setting the cursor member of the
#GdkWindowAttr struct passed to gdk_window_new().
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### STRUCT GdkCursor ##### -->
<para>
A <type>GdkCursor</type> structure represents a cursor.
</para>
<!-- ##### ENUM GdkCursorType ##### -->
<para>
The standard cursors available.
</para>
@GDK_X_CURSOR: <inlinegraphic format="PNG" fileref="X_cursor.png"></inlinegraphic>
@GDK_ARROW: <inlinegraphic format="PNG" fileref="arrow.png"></inlinegraphic>
@GDK_BASED_ARROW_DOWN: <inlinegraphic format="PNG" fileref="based_arrow_down.png"></inlinegraphic>
@GDK_BASED_ARROW_UP: <inlinegraphic format="PNG" fileref="based_arrow_up.png"></inlinegraphic>
@GDK_BOAT: <inlinegraphic format="PNG" fileref="boat.png"></inlinegraphic>
@GDK_BOGOSITY: <inlinegraphic format="PNG" fileref="bogosity.png"></inlinegraphic>
@GDK_BOTTOM_LEFT_CORNER: <inlinegraphic format="PNG" fileref="bottom_left_corner.png"></inlinegraphic>
@GDK_BOTTOM_RIGHT_CORNER: <inlinegraphic format="PNG" fileref="bottom_right_corner.png"></inlinegraphic>
@GDK_BOTTOM_SIDE: <inlinegraphic format="PNG" fileref="bottom_side.png"></inlinegraphic>
@GDK_BOTTOM_TEE: <inlinegraphic format="PNG" fileref="bottom_tee.png"></inlinegraphic>
@GDK_BOX_SPIRAL: <inlinegraphic format="PNG" fileref="box_spiral.png"></inlinegraphic>
@GDK_CENTER_PTR: <inlinegraphic format="PNG" fileref="center_ptr.png"></inlinegraphic>
@GDK_CIRCLE: <inlinegraphic format="PNG" fileref="circle.png"></inlinegraphic>
@GDK_CLOCK: <inlinegraphic format="PNG" fileref="clock.png"></inlinegraphic>
@GDK_COFFEE_MUG: <inlinegraphic format="PNG" fileref="coffee_mug.png"></inlinegraphic>
@GDK_CROSS: <inlinegraphic format="PNG" fileref="cross.png"></inlinegraphic>
@GDK_CROSS_REVERSE: <inlinegraphic format="PNG" fileref="cross_reverse.png"></inlinegraphic>
@GDK_CROSSHAIR: <inlinegraphic format="PNG" fileref="crosshair.png"></inlinegraphic>
@GDK_DIAMOND_CROSS: <inlinegraphic format="PNG" fileref="diamond_cross.png"></inlinegraphic>
@GDK_DOT: <inlinegraphic format="PNG" fileref="dot.png"></inlinegraphic>
@GDK_DOTBOX: <inlinegraphic format="PNG" fileref="dotbox.png"></inlinegraphic>
@GDK_DOUBLE_ARROW: <inlinegraphic format="PNG" fileref="double_arrow.png"></inlinegraphic>
@GDK_DRAFT_LARGE: <inlinegraphic format="PNG" fileref="draft_large.png"></inlinegraphic>
@GDK_DRAFT_SMALL: <inlinegraphic format="PNG" fileref="draft_small.png"></inlinegraphic>
@GDK_DRAPED_BOX: <inlinegraphic format="PNG" fileref="draped_box.png"></inlinegraphic>
@GDK_EXCHANGE: <inlinegraphic format="PNG" fileref="exchange.png"></inlinegraphic>
@GDK_FLEUR: <inlinegraphic format="PNG" fileref="fleur.png"></inlinegraphic>
@GDK_GOBBLER: <inlinegraphic format="PNG" fileref="gobbler.png"></inlinegraphic>
@GDK_GUMBY: <inlinegraphic format="PNG" fileref="gumby.png"></inlinegraphic>
@GDK_HAND1: <inlinegraphic format="PNG" fileref="hand1.png"></inlinegraphic>
@GDK_HAND2: <inlinegraphic format="PNG" fileref="hand2.png"></inlinegraphic>
@GDK_HEART: <inlinegraphic format="PNG" fileref="heart.png"></inlinegraphic>
@GDK_ICON: <inlinegraphic format="PNG" fileref="icon.png"></inlinegraphic>
@GDK_IRON_CROSS: <inlinegraphic format="PNG" fileref="iron_cross.png"></inlinegraphic>
@GDK_LEFT_PTR: <inlinegraphic format="PNG" fileref="left_ptr.png"></inlinegraphic>
@GDK_LEFT_SIDE: <inlinegraphic format="PNG" fileref="left_side.png"></inlinegraphic>
@GDK_LEFT_TEE: <inlinegraphic format="PNG" fileref="left_tee.png"></inlinegraphic>
@GDK_LEFTBUTTON: <inlinegraphic format="PNG" fileref="leftbutton.png"></inlinegraphic>
@GDK_LL_ANGLE: <inlinegraphic format="PNG" fileref="ll_angle.png"></inlinegraphic>
@GDK_LR_ANGLE: <inlinegraphic format="PNG" fileref="lr_angle.png"></inlinegraphic>
@GDK_MAN: <inlinegraphic format="PNG" fileref="man.png"></inlinegraphic>
@GDK_MIDDLEBUTTON: <inlinegraphic format="PNG" fileref="middlebutton.png"></inlinegraphic>
@GDK_MOUSE: <inlinegraphic format="PNG" fileref="mouse.png"></inlinegraphic>
@GDK_PENCIL: <inlinegraphic format="PNG" fileref="pencil.png"></inlinegraphic>
@GDK_PIRATE: <inlinegraphic format="PNG" fileref="pirate.png"></inlinegraphic>
@GDK_PLUS: <inlinegraphic format="PNG" fileref="plus.png"></inlinegraphic>
@GDK_QUESTION_ARROW: <inlinegraphic format="PNG" fileref="question_arrow.png"></inlinegraphic>
@GDK_RIGHT_PTR: <inlinegraphic format="PNG" fileref="right_ptr.png"></inlinegraphic>
@GDK_RIGHT_SIDE: <inlinegraphic format="PNG" fileref="right_side.png"></inlinegraphic>
@GDK_RIGHT_TEE: <inlinegraphic format="PNG" fileref="right_tee.png"></inlinegraphic>
@GDK_RIGHTBUTTON: <inlinegraphic format="PNG" fileref="rightbutton.png"></inlinegraphic>
@GDK_RTL_LOGO: <inlinegraphic format="PNG" fileref="rtl_logo.png"></inlinegraphic>
@GDK_SAILBOAT: <inlinegraphic format="PNG" fileref="sailboat.png"></inlinegraphic>
@GDK_SB_DOWN_ARROW: <inlinegraphic format="PNG" fileref="sb_down_arrow.png"></inlinegraphic>
@GDK_SB_H_DOUBLE_ARROW: <inlinegraphic format="PNG" fileref="sb_h_double_arrow.png"></inlinegraphic>
@GDK_SB_LEFT_ARROW: <inlinegraphic format="PNG" fileref="sb_left_arrow.png"></inlinegraphic>
@GDK_SB_RIGHT_ARROW: <inlinegraphic format="PNG" fileref="sb_right_arrow.png"></inlinegraphic>
@GDK_SB_UP_ARROW: <inlinegraphic format="PNG" fileref="sb_up_arrow.png"></inlinegraphic>
@GDK_SB_V_DOUBLE_ARROW: <inlinegraphic format="PNG" fileref="sb_v_double_arrow.png"></inlinegraphic>
@GDK_SHUTTLE: <inlinegraphic format="PNG" fileref="shuttle.png"></inlinegraphic>
@GDK_SIZING: <inlinegraphic format="PNG" fileref="sizing.png"></inlinegraphic>
@GDK_SPIDER: <inlinegraphic format="PNG" fileref="spider.png"></inlinegraphic>
@GDK_SPRAYCAN: <inlinegraphic format="PNG" fileref="spraycan.png"></inlinegraphic>
@GDK_STAR: <inlinegraphic format="PNG" fileref="star.png"></inlinegraphic>
@GDK_TARGET: <inlinegraphic format="PNG" fileref="target.png"></inlinegraphic>
@GDK_TCROSS: <inlinegraphic format="PNG" fileref="tcross.png"></inlinegraphic>
@GDK_TOP_LEFT_ARROW: <inlinegraphic format="PNG" fileref="top_left_arrow.png"></inlinegraphic>
@GDK_TOP_LEFT_CORNER: <inlinegraphic format="PNG" fileref="top_left_corner.png"></inlinegraphic>
@GDK_TOP_RIGHT_CORNER: <inlinegraphic format="PNG" fileref="top_right_corner.png"></inlinegraphic>
@GDK_TOP_SIDE: <inlinegraphic format="PNG" fileref="top_side.png"></inlinegraphic>
@GDK_TOP_TEE: <inlinegraphic format="PNG" fileref="top_tee.png"></inlinegraphic>
@GDK_TREK: <inlinegraphic format="PNG" fileref="trek.png"></inlinegraphic>
@GDK_UL_ANGLE: <inlinegraphic format="PNG" fileref="ul_angle.png"></inlinegraphic>
@GDK_UMBRELLA: <inlinegraphic format="PNG" fileref="umbrella.png"></inlinegraphic>
@GDK_UR_ANGLE: <inlinegraphic format="PNG" fileref="ur_angle.png"></inlinegraphic>
@GDK_WATCH: <inlinegraphic format="PNG" fileref="watch.png"></inlinegraphic>
@GDK_XTERM: <inlinegraphic format="PNG" fileref="xterm.png"></inlinegraphic>
@GDK_LAST_CURSOR: last cursor type
@GDK_BLANK_CURSOR: Blank cursor. Since 2.16
@GDK_CURSOR_IS_PIXMAP: type of cursors constructed with
gdk_cursor_new_from_pixbuf()
<!-- ##### FUNCTION gdk_cursor_new ##### -->
<para>
</para>
@cursor_type:
@Returns:
<!-- ##### FUNCTION gdk_cursor_new_from_pixbuf ##### -->
<para>
</para>
@display:
@pixbuf:
@x:
@y:
@Returns:
<!-- ##### FUNCTION gdk_cursor_new_from_name ##### -->
<para>
</para>
@display:
@name:
@Returns:
<!-- ##### FUNCTION gdk_cursor_new_for_display ##### -->
<para>
</para>
@display:
@cursor_type:
@Returns:
<!-- ##### FUNCTION gdk_cursor_get_display ##### -->
<para>
</para>
@cursor:
@Returns:
<!-- ##### FUNCTION gdk_cursor_get_image ##### -->
<para>
</para>
@cursor:
@Returns:
<!-- ##### FUNCTION gdk_cursor_get_cursor_type ##### -->
<para>
</para>
@cursor:
@Returns:
<!-- ##### FUNCTION gdk_cursor_ref ##### -->
<para>
</para>
@cursor:
@Returns:
<!-- ##### FUNCTION gdk_cursor_unref ##### -->
<para>
</para>
@cursor:

View File

@@ -1,111 +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>
<para id="pango-data-structures">
Some of the drawing operations take Pango data structures like #PangoContext,
#PangoLayout or #PangoLayoutLine as arguments. If you're using GTK+, the ususal
way to obtain these structures is via gtk_widget_create_pango_context() or
gtk_widget_create_pango_layout().
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### STRUCT GdkDrawable ##### -->
<para>
An opaque structure representing an object that can be
drawn onto. This can be a #GdkPixmap, a #GdkBitmap,
or a #GdkWindow.
</para>
<!-- ##### FUNCTION gdk_drawable_get_screen ##### -->
<para>
</para>
@drawable:
@Returns:
<!-- ##### FUNCTION gdk_drawable_get_visual ##### -->
<para>
</para>
@drawable:
@Returns:
<!-- ##### FUNCTION gdk_drawable_set_colormap ##### -->
<para>
</para>
@drawable:
@colormap:
<!-- ##### FUNCTION gdk_drawable_get_depth ##### -->
<para>
</para>
@drawable:
@Returns:
<!-- ##### FUNCTION gdk_drawable_get_size ##### -->
<para>
</para>
@drawable:
@width:
@height:
<!-- ##### FUNCTION gdk_drawable_get_clip_region ##### -->
<para>
</para>
@drawable:
@Returns:
<!-- ##### FUNCTION gdk_drawable_get_visible_region ##### -->
<para>
</para>
@drawable:
@Returns:

View File

@@ -1,548 +0,0 @@
<!-- ##### SECTION Title ##### -->
Event Structures
<!-- ##### SECTION Short_Description ##### -->
Data structures specific to each type of event
<!-- ##### SECTION Long_Description ##### -->
<para>
The event structs contain data specific to each type of event in GDK.
</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>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### UNION GdkEvent ##### -->
<para>
The #GdkEvent struct contains a union of all of the event structs,
and allows access to the data fields in a number of ways.
</para>
<para>
The event type is always the first field in all of the event structs, and
can always be accessed with the following code, no matter what type of event
it is:
<informalexample>
<programlisting>
GdkEvent *event;
GdkEventType type;
type = event->type;
</programlisting>
</informalexample>
</para>
<para>
To access other fields of the event structs, the pointer to the event can be
cast to the appropriate event struct pointer, or the union member name can be
used. For example if the event type is %GDK_BUTTON_PRESS then the x coordinate
of the button press can be accessed with:
<informalexample>
<programlisting>
GdkEvent *event;
gdouble x;
x = ((GdkEventButton*)event)->x;
</programlisting>
</informalexample>
or:
<informalexample>
<programlisting>
GdkEvent *event;
gdouble x;
x = event->button.x;
</programlisting>
</informalexample>
</para>
<!-- ##### STRUCT GdkEventAny ##### -->
<para>
Contains the fields which are common to all event structs.
Any event pointer can safely be cast to a pointer 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
<function>XSendEvent</function>).
<!-- ##### STRUCT GdkEventKey ##### -->
<para>
Describes a key press or key release event.
</para>
@type: the type of the event (%GDK_KEY_PRESS or %GDK_KEY_RELEASE).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using
<function>XSendEvent</function>).
@time: the time of the event in milliseconds.
@state: a bit-mask representing the state of the modifier keys (e.g. Control,
Shift and Alt) and the pointer buttons. See #GdkModifierType.
@keyval: the key that was pressed or released. See the
<filename>&lt;gdk/gdkkeysyms.h&gt;</filename>
header file for a complete list of GDK key codes.
@length: the length of @string.
@string: a string containing the an approximation of the text that
would result from this keypress. The only correct way to handle text
input of text is using input methods (see #GtkIMContext), so this
field is deprecated and should never be used.
(gdk_unicode_to_keyval() provides a non-deprecated way of getting
an approximate translation for a key.) The string is encoded in the encoding
of the current locale (Note: this for backwards compatibility:
strings in GTK+ and GDK are typically in UTF-8.) and NUL-terminated.
In some cases, the translation of the key code will be a single
NUL byte, in which case looking at @length is necessary to distinguish
it from the an empty translation.
@hardware_keycode: the raw code of the key that was pressed or released.
@group: the keyboard group.
@is_modifier: a flag that indicates if @hardware_keycode is mapped to a
modifier. Since 2.10
<!-- ##### 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 triple-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>
Triple-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>
<para>
For a double click to occur, the second button press must occur within 1/4 of
a second of the first. For a triple click to occur, the third button press
must also occur within 1/2 second of the first button press.
</para>
@type: the type of the event (%GDK_BUTTON_PRESS, %GDK_2BUTTON_PRESS,
%GDK_3BUTTON_PRESS or %GDK_BUTTON_RELEASE).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using
<function>XSendEvent</function>).
@time: the time of the event in milliseconds.
@x: the x coordinate of the pointer relative to the window.
@y: the y coordinate of the pointer relative to the window.
@axes: @x, @y translated to the axes of @device, or %NULL if @device is
the mouse.
@state: a bit-mask representing the state of the modifier keys (e.g. Control,
Shift and Alt) and the pointer buttons. See #GdkModifierType.
@button: the button which was pressed or released, numbered from 1 to 5.
Normally button 1 is the left mouse button, 2 is the middle button,
and 3 is the right button. On 2-button mice, the middle button can often
be simulated by pressing both mouse buttons together.
@device: the device where the event originated.
@x_root: the x coordinate of the pointer relative to the root of the screen.
@y_root: the y coordinate of the pointer relative to the root of the screen.
<!-- ##### STRUCT GdkEventScroll ##### -->
<para>
Generated from button presses for the buttons 4 to 7. Wheel mice are
usually configured to generate button press events for buttons 4 and 5
when the wheel is turned.
</para>
@type: the type of the event (%GDK_SCROLL).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using
<function>XSendEvent</function>).
@time: the time of the event in milliseconds.
@x: the x coordinate of the pointer relative to the window.
@y: the y coordinate of the pointer relative to the window.
@state: a bit-mask representing the state of the modifier keys (e.g. Control,
Shift and Alt) and the pointer buttons. See #GdkModifierType.
@direction: the direction to scroll to (one of %GDK_SCROLL_UP,
%GDK_SCROLL_DOWN, %GDK_SCROLL_LEFT and %GDK_SCROLL_RIGHT).
@device: the device where the event originated.
@x_root: the x coordinate of the pointer relative to the root of the screen.
@y_root: the y coordinate of the pointer relative to the root of the screen.
<!-- ##### STRUCT GdkEventMotion ##### -->
<para>
Generated when the pointer moves.
</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
<function>XSendEvent</function>).
@time: the time of the event in milliseconds.
@x: the x coordinate of the pointer relative to the window.
@y: the y coordinate of the pointer relative to the window.
@axes: @x, @y translated to the axes of @device, or %NULL if @device is
the mouse.
@state: a bit-mask representing the state of the modifier keys (e.g. Control,
Shift and Alt) and the pointer buttons. See #GdkModifierType.
@is_hint: set to 1 if this event is just a hint, see the %GDK_POINTER_MOTION_HINT_MASK
value of #GdkEventMask.
@device: the device where the event originated.
@x_root: the x coordinate of the pointer relative to the root of the screen.
@y_root: the y coordinate of the pointer relative to the root of the screen.
<!-- ##### STRUCT GdkEventExpose ##### -->
<para>
Generated when all or part of a window becomes visible and needs to be
redrawn.
</para>
@type: the type of the event (%GDK_EXPOSE or %GDK_DAMAGE).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using
<function>XSendEvent</function>).
@area: bounding box of @region.
@region: the region that needs to be redrawn.
@count: the number of contiguous %GDK_EXPOSE events following this one.
The only use for this is "exposure compression", i.e. handling all contiguous
%GDK_EXPOSE events in one go, though GDK performs some exposure compression
so this is not normally needed.
<!-- ##### STRUCT GdkEventVisibility ##### -->
<para>
Generated when the window visibility status has changed.
</para>
@type: the type of the event (%GDK_VISIBILITY_NOTIFY).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using
<function>XSendEvent</function>).
@state: the new visibility state (%GDK_VISIBILITY_FULLY_OBSCURED,
%GDK_VISIBILITY_PARTIAL or %GDK_VISIBILITY_UNOBSCURED).
<!-- ##### STRUCT GdkEventCrossing ##### -->
<para>
Generated when the pointer enters or leaves a window.
</para>
@type: the type of the event (%GDK_ENTER_NOTIFY or %GDK_LEAVE_NOTIFY).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using
<function>XSendEvent</function>).
@subwindow: the window that was entered or left.
@time: the time of the event in milliseconds.
@x: the x coordinate of the pointer relative to the window.
@y: the y coordinate of the pointer relative to the window.
@x_root: the x coordinate of the pointer relative to the root of the screen.
@y_root: the y coordinate of the pointer relative to the root of the screen.
@mode: the crossing mode (%GDK_CROSSING_NORMAL, %GDK_CROSSING_GRAB,
%GDK_CROSSING_UNGRAB, %GDK_CROSSING_GTK_GRAB, %GDK_CROSSING_GTK_UNGRAB or
%GDK_CROSSING_STATE_CHANGED). %GDK_CROSSING_GTK_GRAB, %GDK_CROSSING_GTK_UNGRAB,
and %GDK_CROSSING_STATE_CHANGED were added in 2.14 and are always synthesized,
never native.
@detail: the kind of crossing that happened (%GDK_NOTIFY_INFERIOR,
%GDK_NOTIFY_ANCESTOR, %GDK_NOTIFY_VIRTUAL, %GDK_NOTIFY_NONLINEAR or
%GDK_NOTIFY_NONLINEAR_VIRTUAL).
@focus: %TRUE if @window is the focus window or an inferior.
@state: a bit-mask representing the state of the modifier keys (e.g. Control,
Shift and Alt) and the pointer buttons. See #GdkModifierType.
<!-- ##### STRUCT GdkEventFocus ##### -->
<para>
Describes a change of keyboard focus.
</para>
@type: the type of the event (%GDK_FOCUS_CHANGE).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using <function>XSendEvent</function>).
@in: %TRUE if the window has gained the keyboard focus, %FALSE if it has lost
the focus.
<!-- ##### STRUCT GdkEventConfigure ##### -->
<para>
Generated when a window size or position has changed.
</para>
@type: the type of the event (%GDK_CONFIGURE).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using <function>XSendEvent</function>).
@x: the new x coordinate of the window, relative to its parent.
@y: the new y coordinate of the window, relative to its parent.
@width: the new width of the window.
@height: the new height of the window.
<!-- ##### STRUCT GdkEventProperty ##### -->
<para>
Describes a property change on a window.
</para>
@type: the type of the event (%GDK_PROPERTY_NOTIFY).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using <function>XSendEvent</function>).
@atom: the property that was changed.
@time: the time of the event in milliseconds.
@state: whether the property was changed (%GDK_PROPERTY_NEW_VALUE) or
deleted (%GDK_PROPERTY_DELETE).
<!-- ##### STRUCT GdkEventSelection ##### -->
<para>
Generated when a selection is requested or ownership of a selection
is taken over by another client application.
</para>
@type: the type of the event (%GDK_SELECTION_CLEAR, %GDK_SELECTION_NOTIFY or
%GDK_SELECTION_REQUEST).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using <function>XSendEvent</function>).
@selection: the selection.
@target: the target to which the selection should be converted.
@property: the property in which to place the result of the conversion.
@time: the time of the event in milliseconds.
@requestor: the native window on which to place @property.
<!-- ##### TYPEDEF GdkNativeWindow ##### -->
<para>
Used to represent native windows (<type>Window</type>s for the X11 backend,
<type>HWND</type>s for Win32).
</para>
<!-- ##### STRUCT GdkEventDND ##### -->
<para>
Generated during DND operations.
</para>
@type: the type of the event (%GDK_DRAG_ENTER, %GDK_DRAG_LEAVE,
%GDK_DRAG_MOTION, %GDK_DRAG_STATUS, %GDK_DROP_START or %GDK_DROP_FINISHED).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using <function>XSendEvent</function>).
@context: the #GdkDragContext for the current DND operation.
@time: the time of the event in milliseconds.
@x_root: the x coordinate of the pointer relative to the root of the screen,
only set for %GDK_DRAG_MOTION and %GDK_DROP_START.
@y_root: the y coordinate of the pointer relative to the root of the screen,
only set for %GDK_DRAG_MOTION and %GDK_DROP_START.
<!-- ##### STRUCT GdkEventProximity ##### -->
<para>
Proximity events are generated when using GDK's wrapper for the
XInput extension. The XInput extension is an add-on for standard X
that allows you to use nonstandard devices such as graphics tablets.
A proximity event indicates that the stylus has moved in or out of
contact with the tablet, or perhaps that the user's finger has moved
in or out of contact with a touch screen.
</para>
@type: the type of the event (%GDK_PROXIMITY_IN or %GDK_PROXIMITY_OUT).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using <function>XSendEvent</function>).
@time: the time of the event in milliseconds.
@device: the device where the event originated.
<!-- ##### STRUCT GdkEventClient ##### -->
<para>
An event sent by another client application.
</para>
@type: the type of the event (%GDK_CLIENT_EVENT).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using <function>XSendEvent</function>).
@message_type: the type of the message, which can be defined by the
application.
@data_format: the format of the data, given as the number of bits in each
data element, i.e. 8, 16, or 32. 8-bit data uses the b array of the data
union, 16-bit data uses the s array, and 32-bit data uses the l array.
<!-- ##### STRUCT GdkEventNoExpose ##### -->
<para>
Generated when the area of a #GdkDrawable being copied was completely available.
</para>
<para>
FIXME: add more here.
</para>
@type: the type of the event (%GDK_NO_EXPOSE).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using <function>XSendEvent</function>).
<!-- ##### STRUCT GdkEventWindowState ##### -->
<para>
Generated when the state of a toplevel window changes.
</para>
@type: the type of the event (%GDK_WINDOW_STATE).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using <function>XSendEvent</function>).
@changed_mask: mask specifying what flags have changed.
@new_window_state: the new window state, a combination of #GdkWindowState bits.
<!-- ##### STRUCT GdkEventSetting ##### -->
<para>
Generated when a setting is modified.
</para>
@type: the type of the event (%GDK_SETTING).
@window: the window which received the event.
@send_event: %TRUE if the event was sent explicitly (e.g. using <function>XSendEvent</function>).
@action: what happened to the setting (%GDK_SETTING_ACTION_NEW,
%GDK_SETTING_ACTION_CHANGED or %GDK_SETTING_ACTION_DELETED).
@name: the name of the setting.
<!-- ##### STRUCT GdkEventOwnerChange ##### -->
<para>
Generated when the owner of a selection changes. On X11, this information is
only available if the X server supports the XFIXES extension.
</para>
@type: the type of the event (%GDK_OWNER_CHANGE).
@window: the window which received the event
@send_event: %TRUE if the event was sent explicitly (e.g. using <function>XSendEvent</function>).
@owner: the new owner of the selection
@reason: the reason for the ownership change as a #GdkOwnerChange value
@selection: the atom identifying the selection
@time: the timestamp of the event
@selection_time: the time at which the selection ownership was taken over
@Since: 2.6
<!-- ##### STRUCT GdkEventGrabBroken ##### -->
<para>
Generated when a pointer or keyboard grab is broken. On X11, this happens
when the grab window becomes unviewable (i.e. it or one of its ancestors
is unmapped), or if the same application grabs the pointer or keyboard
again. Note that implicit grabs (which are initiated by button presses)
can also cause #GdkEventGrabBroken events.
</para>
@type: the type of the event (%GDK_GRAB_BROKEN)
@window: the window which received the event, i.e. the window
that previously owned the grab
@send_event: %TRUE if the event was sent explicitly (e.g. using <function>XSendEvent</function>).
@keyboard: %TRUE if a keyboard grab was broken, %FALSE if a pointer
grab was broken
@implicit: %TRUE if the broken grab was implicit
@grab_window: If this event is caused by another grab in the same
application, @grab_window contains the new grab window. Otherwise
@grab_window is %NULL.
@Since: 2.8
<!-- ##### ENUM GdkScrollDirection ##### -->
<para>
Specifies the direction for #GdkEventScroll.
</para>
@GDK_SCROLL_UP: the window is scrolled up.
@GDK_SCROLL_DOWN: the window is scrolled down.
@GDK_SCROLL_LEFT: the window is scrolled to the left.
@GDK_SCROLL_RIGHT: the window is scrolled to the right.
<!-- ##### ENUM GdkVisibilityState ##### -->
<para>
Specifies the visiblity status of a window for a #GdkEventVisibility.
</para>
@GDK_VISIBILITY_UNOBSCURED: the window is completely visible.
@GDK_VISIBILITY_PARTIAL: the window is partially visible.
@GDK_VISIBILITY_FULLY_OBSCURED: the window is not visible at all.
<!-- ##### ENUM GdkCrossingMode ##### -->
<para>
Specifies the crossing mode for #GdkEventCrossing.
</para>
@GDK_CROSSING_NORMAL: crossing because of pointer motion.
@GDK_CROSSING_GRAB: crossing because a grab is activated.
@GDK_CROSSING_UNGRAB: crossing because a grab is deactivated.
@GDK_CROSSING_GTK_GRAB: crossing because a GTK+ grab is activated.
@GDK_CROSSING_GTK_UNGRAB: crossing because a GTK+ grab is deactivated.
@GDK_CROSSING_STATE_CHANGED: crossing because a GTK+ widget changed state (e.g.
sensitivity).
<!-- ##### ENUM GdkNotifyType ##### -->
<para>
Specifies the kind of crossing for #GdkEventCrossing.
</para>
<para>
See the X11 protocol specification of <type>LeaveNotify</type> for
full details of crossing event generation.
</para>
@GDK_NOTIFY_ANCESTOR: the window is entered from an ancestor or
left towards an ancestor.
@GDK_NOTIFY_VIRTUAL: the pointer moves between an ancestor and an
inferior of the window.
@GDK_NOTIFY_INFERIOR: the window is entered from an inferior or
left towards an inferior.
@GDK_NOTIFY_NONLINEAR: the window is entered from or left towards
a window which is neither an ancestor nor an inferior.
@GDK_NOTIFY_NONLINEAR_VIRTUAL: the pointer moves between two windows
which are not ancestors of each other and the window is part of
the ancestor chain between one of these windows and their least
common ancestor.
@GDK_NOTIFY_UNKNOWN: an unknown type of enter/leave event occurred.
<!-- ##### ENUM GdkPropertyState ##### -->
<para>
Specifies the type of a property change for a #GdkEventProperty.
</para>
@GDK_PROPERTY_NEW_VALUE: the property value was changed.
@GDK_PROPERTY_DELETE: the property was deleted.
<!-- ##### ENUM GdkWindowState ##### -->
<para>
Specifies the state of a toplevel window.
</para>
@GDK_WINDOW_STATE_WITHDRAWN: the window is not shown.
@GDK_WINDOW_STATE_ICONIFIED: the window is minimized.
@GDK_WINDOW_STATE_MAXIMIZED: the window is maximized.
@GDK_WINDOW_STATE_STICKY: the window is sticky.
@GDK_WINDOW_STATE_FULLSCREEN: the window is maximized without decorations.
@GDK_WINDOW_STATE_ABOVE: the window is kept above other windows.
@GDK_WINDOW_STATE_BELOW: the window is kept below other windows.
<!-- ##### ENUM GdkSettingAction ##### -->
<para>
Specifies the kind of modification applied to a setting in a #GdkEventSetting.
</para>
@GDK_SETTING_ACTION_NEW: a setting was added.
@GDK_SETTING_ACTION_CHANGED: a setting was changed.
@GDK_SETTING_ACTION_DELETED: a setting was deleted.
<!-- ##### ENUM GdkOwnerChange ##### -->
<para>
Specifies why a selection ownership was changed.
</para>
@GDK_OWNER_CHANGE_NEW_OWNER: some other app claimed the ownership
@GDK_OWNER_CHANGE_DESTROY: the window was destroyed
@GDK_OWNER_CHANGE_CLOSE: the client was closed

View File

@@ -1,430 +0,0 @@
<!-- ##### SECTION Title ##### -->
Events
<!-- ##### SECTION Short_Description ##### -->
Functions for handling events from the window system
<!-- ##### SECTION Long_Description ##### -->
<para>
This section describes functions dealing with events from the window system.
</para>
<para>
In GTK+ applications the events are handled automatically in
gtk_main_do_event() and passed on to the appropriate widgets, so these
functions are rarely needed. Though some of the fields in the
<link linkend="gdk-Event-Structures">Event Structures</link> are useful.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
<variablelist>
<varlistentry>
<term><link linkend="gdk-Event-Structures">Event Structures</link></term>
<listitem><para>
The structs used for each type of event.
</para></listitem>
</varlistentry>
</variablelist>
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### ENUM GdkEventType ##### -->
<para>
Specifies the type of the event.
</para>
<para>
Do not confuse these events with the signals that GTK+ widgets emit.
Although many of these events result in corresponding signals being emitted,
the events are often transformed or filtered along the way.
</para>
@GDK_NOTHING: a special code to indicate a null event.
@GDK_DELETE: the window manager has requested that the toplevel window be
hidden or destroyed, usually when the user clicks on a special icon in the
title bar.
@GDK_DESTROY: the window has been destroyed.
@GDK_EXPOSE: all or part of the window has become visible and needs to be
redrawn.
@GDK_MOTION_NOTIFY: the pointer (usually a mouse) has moved.
@GDK_BUTTON_PRESS: a mouse button has been pressed.
@GDK_2BUTTON_PRESS: a mouse button has been double-clicked (clicked twice
within a short period of time). Note that each click also generates a
%GDK_BUTTON_PRESS event.
@GDK_3BUTTON_PRESS: a mouse button has been clicked 3 times in a short period
of time. Note that each click also generates a %GDK_BUTTON_PRESS event.
@GDK_BUTTON_RELEASE: a mouse button has been released.
@GDK_KEY_PRESS: a key has been pressed.
@GDK_KEY_RELEASE: a key has been released.
@GDK_ENTER_NOTIFY: the pointer has entered the window.
@GDK_LEAVE_NOTIFY: the pointer has left the window.
@GDK_FOCUS_CHANGE: the keyboard focus has entered or left the window.
@GDK_CONFIGURE: the size, position or stacking order of the window has changed.
Note that GTK+ discards these events for %GDK_WINDOW_CHILD windows.
@GDK_MAP: the window has been mapped.
@GDK_UNMAP: the window has been unmapped.
@GDK_PROPERTY_NOTIFY: a property on the window has been changed or deleted.
@GDK_SELECTION_CLEAR: the application has lost ownership of a selection.
@GDK_SELECTION_REQUEST: another application has requested a selection.
@GDK_SELECTION_NOTIFY: a selection has been received.
@GDK_PROXIMITY_IN: an input device has moved into contact with a sensing
surface (e.g. a touchscreen or graphics tablet).
@GDK_PROXIMITY_OUT: an input device has moved out of contact with a sensing
surface.
@GDK_DRAG_ENTER: the mouse has entered the window while a drag is in progress.
@GDK_DRAG_LEAVE: the mouse has left the window while a drag is in progress.
@GDK_DRAG_MOTION: the mouse has moved in the window while a drag is in
progress.
@GDK_DRAG_STATUS: the status of the drag operation initiated by the window
has changed.
@GDK_DROP_START: a drop operation onto the window has started.
@GDK_DROP_FINISHED: the drop operation initiated by the window has completed.
@GDK_CLIENT_EVENT: a message has been received from another application.
@GDK_VISIBILITY_NOTIFY: the window visibility status has changed.
@GDK_NO_EXPOSE: indicates that the source region was completely available
when parts of a drawable were copied. This is not very useful.
@GDK_SCROLL: the scroll wheel was turned
@GDK_WINDOW_STATE: the state of a window has changed. See #GdkWindowState
for the possible window states
@GDK_SETTING: a setting has been modified.
@GDK_OWNER_CHANGE: the owner of a selection has changed. This event type
was added in 2.6
@GDK_GRAB_BROKEN: a pointer or keyboard grab was broken. This event type
was added in 2.8.
@GDK_DAMAGE: the content of the window has been changed. This event type
was added in 2.14.
@GDK_EVENT_LAST: marks the end of the GdkEventType enumeration. Added in 2.18
<!-- ##### ENUM GdkEventMask ##### -->
<para>
A set of bit-flags to indicate which events a window is to receive.
Most of these masks map onto one or more of the #GdkEventType event types
above.
</para>
<para>
%GDK_POINTER_MOTION_HINT_MASK is a special mask which is used to reduce the
number of %GDK_MOTION_NOTIFY events received. Normally a %GDK_MOTION_NOTIFY
event is received each time the mouse moves. However, if the application
spends a lot of time processing the event (updating the display, for example),
it can lag behind the position of the mouse. When using
%GDK_POINTER_MOTION_HINT_MASK, fewer %GDK_MOTION_NOTIFY events will be sent,
some of which are marked as a hint (the is_hint member is %TRUE).
To receive more motion events after a motion hint event, the application
needs to asks for more, by calling gdk_event_request_motions().
</para>
@GDK_EXPOSURE_MASK: receive expose events
@GDK_POINTER_MOTION_MASK: receive all pointer motion events
@GDK_POINTER_MOTION_HINT_MASK: see the explanation above
@GDK_BUTTON_MOTION_MASK: receive pointer motion events while any button is pressed
@GDK_BUTTON1_MOTION_MASK: receive pointer motion events while 1 button is pressed
@GDK_BUTTON2_MOTION_MASK: receive pointer motion events while 2 button is pressed
@GDK_BUTTON3_MOTION_MASK: receive pointer motion events while 3 button is pressed
@GDK_BUTTON_PRESS_MASK: receive button press events
@GDK_BUTTON_RELEASE_MASK: receive button release events
@GDK_KEY_PRESS_MASK: receive key press events
@GDK_KEY_RELEASE_MASK: receive key release events
@GDK_ENTER_NOTIFY_MASK: receive window enter events
@GDK_LEAVE_NOTIFY_MASK: receive window leave events
@GDK_FOCUS_CHANGE_MASK: receive focus change events
@GDK_STRUCTURE_MASK: receive events about window configuration change
@GDK_PROPERTY_CHANGE_MASK: receive property change events
@GDK_VISIBILITY_NOTIFY_MASK: receive visibility change events
@GDK_PROXIMITY_IN_MASK: receive proximity in events
@GDK_PROXIMITY_OUT_MASK: receive proximity out events
@GDK_SUBSTRUCTURE_MASK: receive events about window configuration changes of
child windows
@GDK_SCROLL_MASK: receive scroll events
@GDK_ALL_EVENTS_MASK: the combination of all the above event masks.
<!-- ##### MACRO GDK_CURRENT_TIME ##### -->
<para>
Represents the current time, and can be used anywhere a time is expected.
</para>
<!-- ##### MACRO GDK_PRIORITY_EVENTS ##### -->
<para>
This is the priority that events from the X server are given in the
<link linkend="glib-The-Main-Event-Loop">GLib Main Loop</link>.
</para>
<!-- ##### MACRO GDK_PRIORITY_REDRAW ##### -->
<para>
This is the priority that the idle handler processing window updates
is given in the <link linkend="glib-The-Main-Event-Loop">GLib Main Loop</link>.
</para>
<!-- ##### FUNCTION gdk_events_pending ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_event_peek ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_event_get ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_event_put ##### -->
<para>
</para>
@event:
<!-- ##### FUNCTION gdk_event_new ##### -->
<para>
</para>
@type:
@Returns:
<!-- ##### FUNCTION gdk_event_copy ##### -->
<para>
</para>
@event:
@Returns:
<!-- ##### FUNCTION gdk_event_free ##### -->
<para>
</para>
@event: a #GdkEvent.
<!-- ##### FUNCTION gdk_event_get_time ##### -->
<para>
</para>
@event:
@Returns:
<!-- ##### FUNCTION gdk_event_get_state ##### -->
<para>
</para>
@event:
@state:
@Returns:
<!-- ##### FUNCTION gdk_event_get_axis ##### -->
<para>
</para>
@event:
@axis_use:
@value:
@Returns:
<!-- ##### FUNCTION gdk_event_get_coords ##### -->
<para>
</para>
@event:
@x_win:
@y_win:
@Returns:
<!-- ##### FUNCTION gdk_event_get_root_coords ##### -->
<para>
</para>
@event:
@x_root:
@y_root:
@Returns:
<!-- ##### FUNCTION gdk_event_request_motions ##### -->
<para>
</para>
@event:
<!-- ##### FUNCTION gdk_events_get_angle ##### -->
<para>
</para>
@event1:
@event2:
@angle:
@Returns:
<!-- ##### FUNCTION gdk_events_get_center ##### -->
<para>
</para>
@event1:
@event2:
@x:
@y:
@Returns:
<!-- ##### FUNCTION gdk_events_get_distance ##### -->
<para>
</para>
@event1:
@event2:
@distance:
@Returns:
<!-- ##### FUNCTION gdk_event_handler_set ##### -->
<para>
</para>
@func:
@data:
@notify:
<!-- ##### USER_FUNCTION GdkEventFunc ##### -->
<para>
Specifies the type of function passed to gdk_event_handler_set() to handle
all GDK events.
</para>
@event: the #GdkEvent to process.
@data: user data set when the event handler was installed with
gdk_event_handler_set().
<!-- ##### FUNCTION gdk_event_send_client_message ##### -->
<para>
</para>
@event:
@winid:
@Returns:
<!-- ##### FUNCTION gdk_event_send_client_message_for_display ##### -->
<para>
</para>
@display:
@event:
@winid:
@Returns:
<!-- ##### FUNCTION gdk_event_send_clientmessage_toall ##### -->
<para>
</para>
@event:
<!-- ##### FUNCTION gdk_add_client_message_filter ##### -->
<para>
</para>
@message_type:
@func:
@data:
<!-- ##### FUNCTION gdk_get_show_events ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_set_show_events ##### -->
<para>
</para>
@show_events:
<!-- ##### FUNCTION gdk_event_set_screen ##### -->
<para>
</para>
@event:
@screen:
<!-- ##### FUNCTION gdk_event_get_screen ##### -->
<para>
</para>
@event:
@Returns:
<!-- ##### FUNCTION gdk_event_get_device ##### -->
<para>
</para>
@event:
@Returns:
<!-- ##### FUNCTION gdk_event_set_device ##### -->
<para>
</para>
@event:
@device:
<!-- ##### FUNCTION gdk_setting_get ##### -->
<para>
</para>
@name:
@value:
@Returns:

View File

@@ -1,986 +0,0 @@
<!-- ##### SECTION ./tmpl/color_contexts.sgml:Long_Description ##### -->
<para>
The #GdkColorContext type is used for allocating groups of colors.
</para>
<para>
It is now deprecated in favor of the gdk_colormap_*() functions described in
the <link linkend="gdk-Colormaps-and-Colors">Colormaps and Colors</link>
section.
</para>
<!-- ##### SECTION ./tmpl/color_contexts.sgml:See_Also ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/color_contexts.sgml:Short_Description ##### -->
routines for allocating colors (deprecated).
<!-- ##### SECTION ./tmpl/color_contexts.sgml:Title ##### -->
Color Contexts
<!-- ##### SECTION ./tmpl/input_contexts.sgml:Long_Description ##### -->
<para>
A #GdkIC input context is used for each user interface element which supports
internationalized text input. See the
<link linkend="gdk-Input-Methods">Input Methods</link> section for an overview
of how internationalized text input works in GTK+.
</para>
<!-- ##### SECTION ./tmpl/input_contexts.sgml:See_Also ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/input_contexts.sgml:Short_Description ##### -->
internationalized text input properties.
<!-- ##### SECTION ./tmpl/input_contexts.sgml:Title ##### -->
Input Contexts
<!-- ##### SECTION ./tmpl/input_methods.sgml:Long_Description ##### -->
<para>
Input Methods provide a way for complex character sets to be used in GTK+.
Languages such as Chinese, Japanese, and Korean (often abbreviated to CJK)
use a large number of ideographs, making it impossible to support all
characters with a simple keyboard. Instead, text is usually
<emphasis>pre-edited</emphasis> using a phonetic alphabet and then
<emphasis>composed</emphasis> to form the ideographs.
</para>
<para>
GTK+ makes use of the input method mechanism provided by the X Windows
platform. When a GTK+ application is started, it opens a connection to the
input method appropriate for the current locale (if any).
</para>
<para>
Widgets which handle textual input, such as #GtkEntry, need to do a number of
things to support internationalized text input:
<variablelist>
<varlistentry>
<term>When the widget is realized:</term>
<listitem><para>Check if an input method is being used with gdk_im_ready().
If it is, create a new <link linkend="gdk-Input-Contexts">Input Context</link>
using gdk_ic_new(). Find out which events the
<link linkend="gdk-Input-Contexts">Input Context</link> needs to receive
with gdk_ic_get_events(), and make sure that the widget's window receives
these events using gdk_window_set_events().
</para></listitem>
</varlistentry>
<varlistentry>
<term>When the widget's size, state or cursor position changes:</term>
<listitem><para>
Update the appropriate
<link linkend="gdk-Input-Contexts">Input Context</link> attributes
using gdk_ic_set_attr().
</para></listitem>
</varlistentry>
<varlistentry>
<term>When the keyboard focus enters or leaves the widget:</term>
<listitem><para>
Call gdk_im_begin() or gdk_im_end() to start or finish editing the text.
</para></listitem>
</varlistentry>
<varlistentry>
<term>When the widget receives a key_press event:</term>
<listitem><para>
The <structfield>string</structfield> and <structfield>length</structfield>
fields of the #GdkEventKey struct should be used to insert the composed text
into the widget.
</para></listitem>
</varlistentry>
<varlistentry>
<term>When the widget is unrealized:</term>
<listitem><para>
Destroy the <link linkend="gdk-Input-Contexts">Input Context</link>.
</para></listitem>
</varlistentry>
</variablelist>
</para>
<para>
See the XLib reference manual for more detailed information on input methods,
and the #GtkEntry and #GtkText widgets for some example code.
</para>
<!-- ##### SECTION ./tmpl/input_methods.sgml:See_Also ##### -->
<para>
<variablelist>
<varlistentry>
<term><link linkend="gdk-Input-Contexts">Input Contexts</link></term>
<listitem><para>
Used for each widget that handles internationalized text input using the
global input method.
</para></listitem>
</varlistentry>
</variablelist>
</para>
<!-- ##### SECTION ./tmpl/input_methods.sgml:Short_Description ##### -->
support for internationalized text input.
<!-- ##### SECTION ./tmpl/input_methods.sgml:Title ##### -->
Input Methods
<!-- ##### MACRO GDK_CORE_POINTER ##### -->
<para>
This macro contains an integer value representing
the device ID for the core pointer device.
</para>
<!-- ##### MACRO GDK_GC_X11 ##### -->
<para>
</para>
@object:
<!-- ##### MACRO GDK_GC_X11_GET_CLASS ##### -->
<para>
</para>
@obj:
<!-- ##### MACRO GDK_WINDOWING_FB ##### -->
<para>
This macro is defined if GDK is configured to use the Linux framebuffer backend.
</para>
<!-- ##### MACRO GDK_WINDOWING_NANOX ##### -->
<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:
<!-- ##### STRUCT GdkDeviceClass ##### -->
<para>
</para>
<!-- ##### 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 GdkDrawableClass ##### -->
<para>
</para>
<!-- ##### STRUCT GdkGCClass ##### -->
<para>
</para>
<!-- ##### STRUCT GdkIC ##### -->
<para>
The #GdkIC struct is an opaque structure representing an input context
for use with the global <link linkend="gdk-Input-Methods">Input Method</link>.
</para>
<!-- ##### STRUCT GdkICAttr ##### -->
<para>
The #GdkICAttr struct is used when getting and setting attributes of the
input context. It is used together with a #GdkICAttributesType mask which
specifies which of the fields are being set or returned.
</para>
@style: the pre-edit and status style. This attribute is required when
creating the #GdkIC, and cannot be changed.
@client_window: the #GdkWindow in which the input method will display its
pre-edit and status areas or create subwindows.
The preedit_area and status_area attributes are specified relative to this
window. This attribute is required when creating the #GdkIC, and cannot be
changed.
@focus_window: the #GdkWindow which is to be used when editing text.
gdk_im_begin() sets this attribute before starting the text input process,
so it is normally not necessary to set it elsewhere.
@filter_events: the mask of events that the input method requires.
See the gdk_ic_get_events() function. This attribute is read-only and is
never changed.
@spot_location: the position of the insertion cursor, for use with the
%GDK_IM_PREEDIT_POSITION style. The y coordinate specifies the baseline of
the text.
@line_spacing: the line spacing to be used in the pre-edit and status areas
when displaying multi-line text.
@cursor: the cursor to use in the input method's windows.
If this attribute isn't set it is determined by the input method.
@preedit_fontset: the font to use for the pre-edit area.
If this attribute isn't set it is determined by the input method.
@preedit_area: the area in which the input method will display pre-editing
data, used for the %GDK_IM_PREEDIT_POSITION and %GDK_IM_PREEDIT_AREA styles.
@preedit_area_needed: the area that the input method requests for displaying
pre-editing data, used for the %GDK_IM_PREEDIT_POSITION and
%GDK_IM_PREEDIT_AREA styles.
@preedit_foreground: the foreground color to use for the pre-edit area.
This color must already be allocated in the preedit_colormap.
If this attribute isn't set it is determined by the input method.
@preedit_background: the background color to use for the pre-edit area.
This color must already be allocated in the preedit_colormap.
If this attribute isn't set it is determined by the input method.
@preedit_pixmap: the background pixmap to use for the pre-edit area.
If this attribute isn't set it is determined by the input method.
@preedit_colormap: the colormap the input method should use to allocate colors.
The default value is the colormap of client_window.
@status_fontset: the font to use for the status area.
If this attribute isn't set it is determined by the input method.
@status_area: the are that the input method will display status information in.
This is used for the %GDK_IM_STATUS_AREA style.
@status_area_needed: the size that the input method requests for displaying
status information, for the %GDK_IM_STATUS_AREA style.
@status_foreground: the foreground color to use for the status area.
This color must already be allocated in the status_colormap.
If this attribute isn't set it is determined by the input method.
@status_background: the background color to use for the status area.
This color must already be allocated in the status_colormap.
If this attribute isn't set it is determined by the input method.
@status_pixmap: the background pixmap to use for the status area.
If this attribute isn't set it is determined by the input method.
@status_colormap: the colormap the input method should use to allocate colors.
The default value is the colormap of client_window.
<!-- ##### ENUM GdkICAttributesType ##### -->
<para>
The #GdkICAttributesType contains a set of bit-flags which are used to
specify which of the attributes in a #GdkICAttr are being set or returned.
</para>
<para>
It also contains several combinations of the flags which specify required
attributes for the various styles:
<variablelist>
<varlistentry>
<term>%GDK_IC_ALL_REQ:</term>
<listitem><para>
the set of attributes required for all styles.
</para></listitem>
</varlistentry>
<varlistentry>
<term>%GDK_IC_PREEDIT_AREA_REQ:</term>
<listitem><para>
the set of additional attributes required for the
%GDK_IM_PREEDIT_AREA pre-edit style.
</para></listitem>
</varlistentry>
<varlistentry>
<term>%GDK_IC_PREEDIT_POSITION_REQ:</term>
<listitem><para>
the set of additional attributes required for the
%GDK_IM_PREEDIT_POSITION pre-edit style.
</para></listitem>
</varlistentry>
<varlistentry>
<term>%GDK_IC_STATUS_AREA_REQ:</term>
<listitem><para>
the set of additional attributes required for the
%GDK_IM_STATUS_AREA status style.
</para></listitem>
</varlistentry>
</variablelist>
</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:
<!-- ##### ENUM GdkIMStyle ##### -->
<para>
A set of bit-flags used to specify the input method styles which are supported
or which are currently in use. The flags can be divided into 2 groups, the
pre-edit flags and the status flags.
</para>
<para>
The pre-edit flags specify how pre-editing data is displayed.
For example, this could display the text being typed in the phonetic
alphabet before it is composed and inserted as an ideograph.
</para>
<para>
The status flags specify how status information is displayed.
The status information can be thought of as an extension of the
standard keyboard mode indicators, such as the Caps Lock indicator.
</para>
<note>
<para>
The %GDK_IM_PREEDIT_CALLBACKS and %GDK_IM_STATUS_CALLBACKS styles are not
currently supported in GTK+.
</para>
</note>
@GDK_IM_PREEDIT_AREA: The application provides the input method with an area
in which to perform <emphasis>off-the-spot</emphasis> pre-editing.
@GDK_IM_PREEDIT_CALLBACKS: The application registers a number of callback
functions which are used to display pre-editing data.
@GDK_IM_PREEDIT_POSITION: The application provides the input method with the
position of the insertion cursor, for <emphasis>over-the-spot</emphasis>
pre-editing. The input method creates its own window over the widget to
display the pre-editing data.
@GDK_IM_PREEDIT_NOTHING: The input method uses the root X window to perform
pre-editing, so the application does not need to do anything.
@GDK_IM_PREEDIT_NONE: No pre-editing is done by the input method, or no
pre-editing data needs to be displayed.
@GDK_IM_PREEDIT_MASK: A bit-mask containing all the pre-edit flags.
@GDK_IM_STATUS_AREA: The application provides the input method with an area
in which to display status information.
@GDK_IM_STATUS_CALLBACKS: The applications registers a number of callback
functions which are used to display status information.
@GDK_IM_STATUS_NOTHING: The input method uses the root X window to display
status information, so the application does not need to do anything.
@GDK_IM_STATUS_NONE: The input method does not display status information.
@GDK_IM_STATUS_MASK: A bit-mask containing all the status flags.
<!-- ##### STRUCT GdkKeyInfo ##### -->
<para>
</para>
@keycode:
@group:
@level:
<!-- ##### STRUCT GdkKeymapClass ##### -->
<para>
</para>
<!-- ##### ENUM GdkPixbufAlphaMode ##### -->
<para>
</para>
@GDK_PIXBUF_ALPHA_BILEVEL:
@GDK_PIXBUF_ALPHA_FULL:
<!-- ##### STRUCT GdkWindowRedirect ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_color_context_add_palette ##### -->
<para>
</para>
@cc:
@palette:
@num_palette:
@Returns:
<!-- ##### FUNCTION gdk_color_context_free ##### -->
<para>
</para>
@cc:
<!-- ##### FUNCTION gdk_color_context_free_dither ##### -->
<para>
</para>
@cc:
<!-- ##### FUNCTION gdk_color_context_get_index_from_palette ##### -->
<para>
</para>
@cc:
@red:
@green:
@blue:
@failed:
@Returns:
<!-- ##### FUNCTION gdk_color_context_get_pixel ##### -->
<para>
</para>
@cc:
@red:
@green:
@blue:
@failed:
@Returns:
<!-- ##### FUNCTION gdk_color_context_get_pixel_from_palette ##### -->
<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_init_dither ##### -->
<para>
</para>
@cc:
<!-- ##### 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_query_color ##### -->
<para>
</para>
@cc:
@color:
@Returns:
<!-- ##### FUNCTION gdk_color_context_query_colors ##### -->
<para>
</para>
@cc:
@colors:
@num_colors:
@Returns:
<!-- ##### VARIABLE gdk_core_pointer ##### -->
<para>
</para>
<!-- ##### VARIABLE gdk_display_name ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_display_set_sm_client_id ##### -->
<para>
</para>
@display:
@sm_client_id:
<!-- ##### FUNCTION gdk_font_full_name_free ##### -->
<para>
Frees a full font name obtained from gdk_font_full_name_get().
</para>
@name: a full font name.
<!-- ##### FUNCTION gdk_font_full_name_get ##### -->
<para>
Returns a comma-separated list of XLFDs for the
fonts making up a given #GdkFont.
</para>
@font: a #GdkFont
@Returns: a newly-allocated string containing a list of XLFDs,
should be freed with gdk_font_full_name_free() when no longer needed.
<!-- ##### FUNCTION gdk_get_client_window ##### -->
<para>
</para>
@dpy:
@win:
@Returns:
<!-- ##### FUNCTION gdk_get_default_display ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_get_default_screen ##### -->
<para>
</para>
@Returns:
<!-- ##### FUNCTION gdk_ic_attr_destroy ##### -->
<para>
Destroys the given #GdkICAttr struct, freeing the allocated memory.
</para>
@attr: a #GdkICAttr struct.
<!-- ##### FUNCTION gdk_ic_attr_new ##### -->
<para>
Creates a new #GdkICAttr struct, with all fields set to 0.
The #GdkICAttr struct should be freed with gdk_ic_attr_destroy() when no
longer needed.
</para>
@Returns: a new #GdkICAttr struct.
<!-- ##### FUNCTION gdk_ic_destroy ##### -->
<para>
Destroys the input context.
</para>
@ic: a #GdkIC.
<!-- ##### FUNCTION gdk_ic_get_attr ##### -->
<para>
Gets attributes of a #GdkIC.
</para>
@ic: a #GdkIC.
@attr: a #GdkICAttr struct to contain the returned attributes.
@mask: a #GdkICAttributesType mask specifying which attributes to get.
@Returns: a #GdkICAttributesType mask specifying which of the attributes
were not retrieved succesfully.
<!-- ##### FUNCTION gdk_ic_get_events ##### -->
<para>
Returns the mask of events that the input method needs to function properly.
This is typically called in a widget's realize method after creating the
#GdkIC. The returned event mask is then combined with the widget's
own event mask and applied using gdk_window_set_events().
</para>
@ic: a #GdkIC.
@Returns: the mask of events that the input method needs to function
properly.
<!-- ##### FUNCTION gdk_ic_get_style ##### -->
<para>
Returns the pre-edit and status style of the #GdkIC.
</para>
@ic: a #GdkIC.
@Returns: the pre-edit and status style of the #GdkIC.
<!-- ##### FUNCTION gdk_ic_new ##### -->
<para>
Creates a new #GdkIC using the given attributes.
</para>
@attr: a #GdkICAttr struct containing attributes to use for the input context.
@mask: a #GdkICAttributesType mask specifying which of the attributes in @attr
are set.
@Returns: a new #GdkIC.
<!-- ##### FUNCTION gdk_ic_set_attr ##### -->
<para>
Sets attributes of the #GdkIC.
</para>
<para>
Note that the GDK_IC_STYLE and GDK_IC_CLIENT_WINDOW attributes can only be set
when creating the #GdkIC, and the GDK_IC_FILTER_EVENTS attribute is read-only.
</para>
@ic: a #GdkIC.
@attr: a #GdkICAttr struct containing attributes to use for the input context.
@mask: a #GdkICAttributesType mask specifying which of the attributes in @attr
are set.
@Returns: a #GdkICAttributesType mask indicating which of the attributes
were not set successfully.
<!-- ##### FUNCTION gdk_im_begin ##### -->
<para>
Starts editing, using the given input context and #GdkWindow.
This should be called when the widget receives the input focus, typically in
the widget's focus_in_event method.
</para>
@ic: a #GdkIC.
@window: the #GdkWindow which will be receiving the key press events.
<!-- ##### FUNCTION gdk_im_decide_style ##### -->
<para>
Decides which input method style should be used, by comparing the styles given
in @supported_style with those of the available input method.
</para>
@supported_style: styles which are supported by the widget.
@Returns: the best style in @supported_style that is also supported by the
available input method.
<!-- ##### FUNCTION gdk_im_end ##### -->
<para>
Stops editing using the input method.
This should be called when the widget loses the input focus, typically in
the widget's focus_out_event method.
</para>
<!-- ##### FUNCTION gdk_im_ready ##### -->
<para>
Checks if an input method is to be used for the current locale.
If GTK+ has been compiled without support for input methods, or the current
locale doesn't need an input method, then this will return FALSE.
</para>
@Returns: TRUE if an input method is available and should be used.
<!-- ##### FUNCTION gdk_im_set_best_style ##### -->
<para>
Sets the best pre-edit and/or status style which should be used.
This will affect the style chosen in gdk_im_decide_style().
</para>
<para>
The order of the pre-edit styles is (from worst to best):
%GDK_IM_PREEDIT_NONE, %GDK_IM_PREEDIT_NOTHING, %GDK_IM_PREEDIT_AREA,
%GDK_IM_PREEDIT_POSITION, %GDK_IM_PREEDIT_CALLBACKS.
The order of the status styles is:
%GDK_IM_STATUS_NONE, %GDK_IM_STATUS_NOTHING, %GDK_IM_STATUS_AREA,
%GDK_IM_STATUS_CALLBACKS.
</para>
<para>
So, for example, to set the best allowed pre-edit style to %GDK_IM_PREEDIT_AREA
you would do this:
<informalexample>
<programlisting>
gdk_im_set_best_style (GDK_IM_PREEDIT_AREA);
</programlisting>
</informalexample>
Or to set the best allowed pre-edit style to %GDK_IM_PREEDIT_POSITION and the
best allowed status style to %GDK_IM_STATUS_NOTHING you can do this:
<informalexample>
<programlisting>
gdk_im_set_best_style (GDK_IM_PREEDIT_POSITION | GDK_IM_STATUS_NOTHING);
</programlisting>
</informalexample>
</para>
@best_allowed_style: a bit-mask with the best pre-edit style and/or the best
status style to use. If 0 is used, then the current bit-mask of all allowed
styles is returned.
@Returns: a bit-mask of all the styles allowed.
<!-- ##### 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.
<!-- ##### 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.
<!-- ##### 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.
<!-- ##### 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_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.
<!-- ##### FUNCTION gdk_input_set_source ##### -->
<para>
Sets the source type for a device.
</para>
@deviceid: the device to configure
@source: the new source type.
<!-- ##### 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.
<!-- ##### VARIABLE gdk_leader_window ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_open_display ##### -->
<para>
</para>
@display_name:
@Returns:
<!-- ##### FUNCTION gdk_pixbuf_set_as_cairo_source ##### -->
<para>
</para>
@pixbuf:
@cr:
@pixbuf_x:
@pixbuf_y:
<!-- ##### VARIABLE gdk_progclass ##### -->
<para>
</para>
<!-- ##### MACRO 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.
<!-- ##### VARIABLE gdk_screen ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_screen_close ##### -->
<para>
</para>
@screen:
<!-- ##### FUNCTION gdk_screen_get_window_at_pointer ##### -->
<para>
</para>
@screen:
@win_x:
@win_y:
@Returns:
<!-- ##### FUNCTION gdk_screen_use_virtual_screen ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### VARIABLE gdk_selection_property ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_set_default_display ##### -->
<para>
</para>
@display:
<!-- ##### FUNCTION gdkx_visual_get_for_screen ##### -->
<para>
</para>
@screen:
@xvisualid:
@Returns:

View File

@@ -1,110 +0,0 @@
<!-- ##### SECTION Title ##### -->
Application launching
<!-- ##### SECTION Short_Description ##### -->
Startup notification for applications
<!-- ##### SECTION Long_Description ##### -->
<para>
GdkAppLaunchContext is an implementation of #GAppLaunchContext that
handles launching an application in a graphical context. It provides
startup notification and allows to launch applications on a specific
screen or workspace.
</para>
<example>
<title>Launching an application</title>
<programlisting>
GdkAppLaunchContext *context;
context = gdk_app_launch_context_new (<!-- -->);
gdk_app_launch_context_set_screen (my_screen);
gdk_app_launch_context_set_timestamp (event-&gt;time);
if (!g_app_info_launch_default_for_uri ("http://www.gtk.org", context, &amp;error))
g_warning ("Launching failed: %s\n", error-&gt;message);
g_object_unref (context);
</programlisting>
</example>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### TYPEDEF GdkAppLaunchContext ##### -->
<para>
An opaque structure representing an application launch context.
</para>
<!-- ##### FUNCTION gdk_app_launch_context_new ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_app_launch_context_set_display ##### -->
<para>
</para>
@context:
@display:
<!-- ##### FUNCTION gdk_app_launch_context_set_screen ##### -->
<para>
</para>
@context:
@screen:
<!-- ##### FUNCTION gdk_app_launch_context_set_desktop ##### -->
<para>
</para>
@context:
@desktop:
<!-- ##### FUNCTION gdk_app_launch_context_set_timestamp ##### -->
<para>
</para>
@context:
@timestamp:
<!-- ##### FUNCTION gdk_app_launch_context_set_icon ##### -->
<para>
</para>
@context:
@icon:
<!-- ##### FUNCTION gdk_app_launch_context_set_icon_name ##### -->
<para>
</para>
@context:
@icon_name:

View File

@@ -1,502 +0,0 @@
<!-- ##### SECTION Title ##### -->
GdkDisplay
<!-- ##### SECTION Short_Description ##### -->
Controls the keyboard/mouse pointer grabs and a set of <type>GdkScreen</type>s
<!-- ##### SECTION Long_Description ##### -->
<para>
#GdkDisplay objects purpose are two fold:
<itemizedlist>
<listitem><para>To grab/ungrab keyboard focus and mouse pointer</para></listitem>
<listitem><para>To manage and provide information about the #GdkScreen(s)
available for this #GdkDisplay
</para></listitem>
</itemizedlist>
</para>
<para>
#GdkDisplay objects are the GDK representation of the X Display which can be
described as <emphasis>a workstation consisting of a keyboard a pointing
device (such as a mouse) and one or more screens</emphasis>.
It is used to open and keep track of various #GdkScreen objects currently
instanciated by the application. It is also used to grab and release the keyboard
and the mouse pointer.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### STRUCT GdkDisplay ##### -->
<para>
The <structname>GdkDisplay</structname> struct is the GDK representation
of an X display. All its fields are private and should not be accessed directly.
</para>
@Since: 2.2
<!-- ##### SIGNAL GdkDisplay::closed ##### -->
<para>
</para>
@gdkdisplay: the object which received the signal.
@arg1:
<!-- ##### SIGNAL GdkDisplay::opened ##### -->
<para>
</para>
@gdkdisplay: the object which received the signal.
<!-- ##### FUNCTION gdk_display_open ##### -->
<para>
</para>
@display_name:
@Returns:
<!-- ##### FUNCTION gdk_display_get_default ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_display_get_name ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_get_n_screens ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_get_screen ##### -->
<para>
</para>
@display:
@screen_num:
@Returns:
<!-- ##### FUNCTION gdk_display_get_default_screen ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_get_device_manager ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_pointer_ungrab ##### -->
<para>
</para>
@display:
@time_:
<!-- ##### FUNCTION gdk_display_keyboard_ungrab ##### -->
<para>
</para>
@display:
@time_:
<!-- ##### FUNCTION gdk_display_pointer_is_grabbed ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_device_is_grabbed ##### -->
<para>
</para>
@display:
@device:
@Returns:
<!-- ##### FUNCTION gdk_display_beep ##### -->
<para>
</para>
@display:
<!-- ##### FUNCTION gdk_display_sync ##### -->
<para>
</para>
@display:
<!-- ##### FUNCTION gdk_display_flush ##### -->
<para>
</para>
@display:
<!-- ##### FUNCTION gdk_display_close ##### -->
<para>
</para>
@display:
<!-- ##### FUNCTION gdk_display_is_closed ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_list_devices ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_get_event ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_peek_event ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_put_event ##### -->
<para>
</para>
@display:
@event:
<!-- ##### FUNCTION gdk_display_add_client_message_filter ##### -->
<para>
</para>
@display:
@message_type:
@func:
@data:
<!-- ##### FUNCTION gdk_display_set_double_click_time ##### -->
<para>
</para>
@display:
@msec:
<!-- ##### FUNCTION gdk_display_set_double_click_distance ##### -->
<para>
</para>
@display:
@distance:
<!-- ##### FUNCTION gdk_display_get_pointer ##### -->
<para>
</para>
@display:
@screen:
@x:
@y:
@mask:
<!-- ##### FUNCTION gdk_display_get_device_state ##### -->
<para>
</para>
@display:
@device:
@screen:
@x:
@y:
@mask:
<!-- ##### FUNCTION gdk_display_get_window_at_pointer ##### -->
<para>
</para>
@display:
@win_x:
@win_y:
@Returns:
<!-- ##### FUNCTION gdk_display_get_window_at_device_position ##### -->
<para>
</para>
@display:
@device:
@win_x:
@win_y:
@Returns:
<!-- ##### STRUCT GdkDisplayPointerHooks ##### -->
<para>
A table of pointers to functions for getting quantities related to
the current pointer position. Each #GdkDisplay has a table of this type,
which can be set using gdk_display_set_pointer_hooks().
</para>
<para>
This is only useful for such low-level tools as an event recorder.
Applications should never have any reason to use this facility
</para>
@get_pointer: Obtains the current pointer position and modifier state.
The position is given in coordinates relative to the window containing
the pointer, which is returned in @window.
@window_get_pointer: Obtains the window underneath the mouse pointer.
Current pointer position and modifier state are returned in @x, @y and
@mask. The position is given in coordinates relative to @window.
@window_at_pointer: Obtains the window underneath the mouse pointer,
returning the location of that window in @win_x, @win_y. Returns %NULL
if the window under the mouse pointer is not known to GDK (for example,
belongs to another application).
@Since: 2.2
<!-- ##### FUNCTION gdk_display_set_pointer_hooks ##### -->
<para>
</para>
@display:
@new_hooks:
@Returns:
<!-- ##### STRUCT GdkDisplayDeviceHooks ##### -->
<para>
</para>
@get_device_state:
@window_get_device_position:
@window_at_device_position:
<!-- ##### FUNCTION gdk_display_set_device_hooks ##### -->
<para>
</para>
@display:
@new_hooks:
@Returns:
<!-- ##### FUNCTION gdk_display_warp_pointer ##### -->
<para>
</para>
@display:
@screen:
@x:
@y:
<!-- ##### FUNCTION gdk_display_warp_device ##### -->
<para>
</para>
@display:
@device:
@screen:
@x:
@y:
<!-- ##### FUNCTION gdk_display_supports_cursor_color ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_supports_cursor_alpha ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_get_default_cursor_size ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_get_maximal_cursor_size ##### -->
<para>
</para>
@display:
@width:
@height:
<!-- ##### FUNCTION gdk_display_get_default_group ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_supports_selection_notification ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_request_selection_notification ##### -->
<para>
</para>
@display:
@selection:
@Returns:
<!-- ##### FUNCTION gdk_display_supports_clipboard_persistence ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_store_clipboard ##### -->
<para>
</para>
@display:
@clipboard_window:
@time_:
@targets:
@n_targets:
<!-- ##### FUNCTION gdk_display_supports_shapes ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_supports_input_shapes ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_supports_composite ##### -->
<para>
</para>
@display:
@Returns:

View File

@@ -1,90 +0,0 @@
<!-- ##### SECTION Title ##### -->
GdkDisplayManager
<!-- ##### SECTION Short_Description ##### -->
Maintains a list of all open <type>GdkDisplay</type>s
<!-- ##### SECTION Long_Description ##### -->
<para>
The purpose of the #GdkDisplayManager singleton object is to offer
notification when displays appear or disappear or the default display
changes.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### STRUCT GdkDisplayManager ##### -->
<para>
The <structname>GdkDisplayManager</structname> struct has no interesting
fields.
</para>
@Since: 2.2
<!-- ##### SIGNAL GdkDisplayManager::display-opened ##### -->
<para>
</para>
@gdkdisplaymanager: the object which received the signal.
@arg1:
<!-- ##### ARG GdkDisplayManager:default-display ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_display_manager_get ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_display_manager_get_default_display ##### -->
<para>
</para>
@display_manager:
@Returns:
<!-- ##### FUNCTION gdk_display_manager_set_default_display ##### -->
<para>
</para>
@display_manager:
@display:
<!-- ##### FUNCTION gdk_display_manager_list_displays ##### -->
<para>
</para>
@display_manager:
@Returns:
<!-- ##### FUNCTION gdk_display_get_core_pointer ##### -->
<para>
</para>
@display:
@Returns:

View File

@@ -1,433 +0,0 @@
<!-- ##### SECTION Title ##### -->
GdkScreen
<!-- ##### SECTION Short_Description ##### -->
Object representing a physical screen
<!-- ##### SECTION Long_Description ##### -->
<para>
#GdkScreen objects are the GDK representation of a physical screen. It is used
throughout GDK and GTK+ to specify which screen the top level windows
are to be displayed on.
It is also used to query the screen specification and default settings such as
the default colormap (gdk_screen_get_default_colormap()),
the screen width (gdk_screen_get_width()), etc.
</para>
<para>Note that a screen may consist of multiple monitors which are merged to
form a large screen area.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### STRUCT GdkScreen ##### -->
<para>
This is a currently just a placeholder typedef for the first argument of
the @window_at_pointer function in #GdkPointerHooks. It will be used
when GDK gets multihead support.
</para>
@Since: 2.2
<!-- ##### SIGNAL GdkScreen::composited-changed ##### -->
<para>
</para>
@gdkscreen: the object which received the signal.
<!-- ##### SIGNAL GdkScreen::monitors-changed ##### -->
<para>
</para>
@gdkscreen: the object which received the signal.
<!-- ##### SIGNAL GdkScreen::size-changed ##### -->
<para>
</para>
@gdkscreen: the object which received the signal.
<!-- ##### ARG GdkScreen:font-options ##### -->
<para>
</para>
<!-- ##### ARG GdkScreen:resolution ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_screen_get_default ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_default_colormap ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_set_default_colormap ##### -->
<para>
</para>
@screen:
@colormap:
<!-- ##### FUNCTION gdk_screen_get_system_colormap ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_system_visual ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_rgba_colormap ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_rgba_visual ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_is_composited ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_root_window ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_display ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_number ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_width ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_height ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_width_mm ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_height_mm ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_list_visuals ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_toplevel_windows ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_make_display_name ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_n_monitors ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_primary_monitor ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_monitor_geometry ##### -->
<para>
</para>
@screen:
@monitor_num:
@dest:
<!-- ##### FUNCTION gdk_screen_get_monitor_at_point ##### -->
<para>
</para>
@screen:
@x:
@y:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_monitor_at_window ##### -->
<para>
</para>
@screen:
@window:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_monitor_height_mm ##### -->
<para>
</para>
@screen:
@monitor_num:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_monitor_width_mm ##### -->
<para>
</para>
@screen:
@monitor_num:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_monitor_plug_name ##### -->
<para>
</para>
@screen:
@monitor_num:
@Returns:
<!-- ##### FUNCTION gdk_screen_broadcast_client_message ##### -->
<para>
</para>
@screen:
@event:
<!-- ##### FUNCTION gdk_screen_get_setting ##### -->
<para>
</para>
@screen:
@name:
@value:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_font_options ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_set_font_options ##### -->
<para>
</para>
@screen:
@options:
<!-- ##### FUNCTION gdk_screen_get_resolution ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_set_resolution ##### -->
<para>
</para>
@screen:
@dpi:
<!-- ##### FUNCTION gdk_screen_get_active_window ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_screen_get_window_stack ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_spawn_on_screen ##### -->
<para>
</para>
@screen:
@working_directory:
@argv:
@envp:
@flags:
@child_setup:
@user_data:
@child_pid:
@error:
@Returns:
<!-- ##### FUNCTION gdk_spawn_on_screen_with_pipes ##### -->
<para>
</para>
@screen:
@working_directory:
@argv:
@envp:
@flags:
@child_setup:
@user_data:
@child_pid:
@standard_input:
@standard_output:
@standard_error:
@error:
@Returns:
<!-- ##### FUNCTION gdk_spawn_command_line_on_screen ##### -->
<para>
</para>
@screen:
@command_line:
@error:
@Returns:

View File

@@ -1,59 +0,0 @@
<!-- ##### SECTION Title ##### -->
Testing
<!-- ##### SECTION Short_Description ##### -->
Test utilities
<!-- ##### SECTION Long_Description ##### -->
<para>
The functions in this section are intended to be used in test programs.
They allow to simulate some user input.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### FUNCTION gdk_test_render_sync ##### -->
<para>
</para>
@window:
<!-- ##### FUNCTION gdk_test_simulate_button ##### -->
<para>
</para>
@window:
@x:
@y:
@button:
@modifiers:
@button_pressrelease:
@Returns:
<!-- ##### FUNCTION gdk_test_simulate_key ##### -->
<para>
</para>
@window:
@x:
@y:
@keyval:
@modifiers:
@key_pressrelease:
@Returns:

View File

@@ -1,342 +0,0 @@
<!-- ##### SECTION Title ##### -->
General
<!-- ##### SECTION Short_Description ##### -->
Library initialization and miscellaneous functions
<!-- ##### SECTION Long_Description ##### -->
<para>
This section describes the GDK initialization functions and miscellaneous
utility functions.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### FUNCTION gdk_init ##### -->
<para>
Initializes the GDK library and connects to the X server.
If initialization fails, a warning message is output and the application
terminates with a call to <literal>exit(1)</literal>.
</para>
<para>
Any arguments used by GDK are removed from the array and @argc and @argv are
updated accordingly.
</para>
<para>
GTK+ initializes GDK in gtk_init() and so this function is not usually needed
by GTK+ applications.
</para>
@argc: the number of command line arguments.
@argv: the array of command line arguments.
<!-- ##### FUNCTION gdk_init_check ##### -->
<para>
Initializes the GDK library and connects to the X server, returning %TRUE on
success.
</para>
<para>
Any arguments used by GDK are removed from the array and @argc and @argv are
updated accordingly.
</para>
<para>
GTK+ initializes GDK in gtk_init() and so this function is not usually needed
by GTK+ applications.
</para>
@argc: the number of command line arguments.
@argv: the array of command line arguments.
@Returns: %TRUE if initialization succeeded.
<!-- ##### FUNCTION gdk_parse_args ##### -->
<para>
</para>
@argc:
@argv:
<!-- ##### FUNCTION gdk_get_display_arg_name ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_set_locale ##### -->
<para>
Initializes the support for internationalization by calling the <function>setlocale()</function>
system call. This function is called by gtk_set_locale() and so GTK+
applications should use that instead.
</para>
<para>
The locale to use is determined by the <envar>LANG</envar> environment variable,
so to run an application in a certain locale you can do something like this:
<informalexample>
<programlisting>
export LANG="fr"
... run application ...
</programlisting>
</informalexample>
</para>
<para>
If the locale is not supported by X then it is reset to the standard "C"
locale.
</para>
@void:
@Returns: the resulting locale.
<!-- ##### FUNCTION gdk_set_sm_client_id ##### -->
<para>
</para>
@sm_client_id:
<!-- ##### FUNCTION gdk_notify_startup_complete ##### -->
<para>
</para>
@void:
<!-- ##### FUNCTION gdk_notify_startup_complete_with_id ##### -->
<para>
</para>
@startup_id:
<!-- ##### FUNCTION gdk_get_program_class ##### -->
<para>
Gets the program class. Unless the program class has explicitly
been set with gdk_set_program_class() or with the <option>--class</option>
commandline option, the default value is the program name (determined
with g_get_prgname()) with the first character converted to uppercase.
</para>
@void:
@Returns: the program class.
<!-- ##### FUNCTION gdk_set_program_class ##### -->
<para>
Sets the program class. The X11 backend uses the program class to set
the class name part of the <literal>WM_CLASS</literal> property on
toplevel windows; see the ICCCM.
</para>
@program_class: a string.
<!-- ##### FUNCTION gdk_get_display ##### -->
<para>
Gets the name of the display, which usually comes from the <envar>DISPLAY</envar>
environment variable or the <option>--display</option> command line option.
</para>
@void:
@Returns: the name of the display.
<!-- ##### FUNCTION gdk_flush ##### -->
<para>
Flushes the X output buffer and waits until all requests have been processed
by the server. This is rarely needed by applications. It's main use is for
trapping X errors with gdk_error_trap_push() and gdk_error_trap_pop().
</para>
@void:
<!-- ##### FUNCTION gdk_screen_width ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_screen_height ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_screen_width_mm ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_screen_height_mm ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_pointer_grab ##### -->
<para>
Grabs the pointer (usually a mouse) so that all events are passed to this
application until the pointer is ungrabbed with gdk_pointer_ungrab(), or
the grab window becomes unviewable.
This overrides any previous pointer grab by this client.
</para>
<para>
Pointer grabs are used for operations which need complete control over mouse
events, even if the mouse leaves the application.
For example in GTK+ it is used for Drag and Drop, for dragging the handle in
the #GtkHPaned and #GtkVPaned widgets, and for resizing columns in #GtkCList
widgets.
</para>
<para>
Note that if the event mask of an X window has selected both button press and
button release events, then a button press event will cause an automatic
pointer grab until the button is released.
X does this automatically since most applications expect to receive button
press and release events in pairs.
It is equivalent to a pointer grab on the window with @owner_events set to
%TRUE.
</para>
<para>
If you set up anything at the time you take the grab that needs to be cleaned
up when the grab ends, you should handle the #GdkEventGrabBroken events that
are emitted when the grab ends unvoluntarily.
</para>
@window: the #GdkWindow which will own the grab (the grab window).
@owner_events: if %FALSE then all pointer events are reported with respect to
@window and are only reported if selected by @event_mask. If %TRUE then pointer
events for this application are reported as normal, but pointer events outside
this application are reported with respect to @window and only if selected by
@event_mask. In either mode, unreported events are discarded.
@event_mask: specifies the event mask, which is used in accordance with
@owner_events. Note that only pointer events (i.e. button and motion events)
may be selected.
@confine_to: If non-%NULL, the pointer will be confined to this
window during the grab. If the pointer is outside @confine_to, it will
automatically be moved to the closest edge of @confine_to and enter
and leave events will be generated as necessary.
@cursor: the cursor to display while the grab is active. If this is %NULL then
the normal cursors are used for @window and its descendants, and the cursor
for @window is used for all other windows.
@time_: the timestamp of the event which led to this pointer grab. This usually
comes from a #GdkEventButton struct, though %GDK_CURRENT_TIME can be used if
the time isn't known.
@Returns: %GDK_GRAB_SUCCESS if the grab was successful.
<!-- ##### ENUM GdkGrabStatus ##### -->
<para>
Returned by gdk_pointer_grab() and gdk_keyboard_grab() to indicate
success or the reason for the failure of the grab attempt.
</para>
@GDK_GRAB_SUCCESS: the resource was successfully grabbed.
@GDK_GRAB_ALREADY_GRABBED: the resource is actively grabbed by another client.
@GDK_GRAB_INVALID_TIME: the resource was grabbed more recently than the
specified time.
@GDK_GRAB_NOT_VIEWABLE: the grab window or the @confine_to window are not
viewable.
@GDK_GRAB_FROZEN: the resource is frozen by an active grab of another client.
<!-- ##### FUNCTION gdk_pointer_ungrab ##### -->
<para>
</para>
@time_:
<!-- ##### FUNCTION gdk_pointer_is_grabbed ##### -->
<para>
</para>
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_set_double_click_time ##### -->
<para>
</para>
@msec:
<!-- ##### FUNCTION gdk_keyboard_grab ##### -->
<para>
Grabs the keyboard so that all events are passed to this
application until the keyboard is ungrabbed with gdk_keyboard_ungrab().
This overrides any previous keyboard grab by this client.
</para>
<para>
If you set up anything at the time you take the grab that needs to be cleaned
up when the grab ends, you should handle the #GdkEventGrabBroken events that
are emitted when the grab ends unvoluntarily.
</para>
@window: the #GdkWindow which will own the grab (the grab window).
@owner_events: if %FALSE then all keyboard events are reported with respect to
@window. If %TRUE then keyboard events for this application are reported as
normal, but keyboard events outside this application are reported with respect
to @window. Both key press and key release events are always reported,
independant of the event mask set by the application.
@time_: a timestamp from a #GdkEvent, or %GDK_CURRENT_TIME if no timestamp is
available.
@Returns: %GDK_GRAB_SUCCESS if the grab was successful.
<!-- ##### FUNCTION gdk_keyboard_ungrab ##### -->
<para>
</para>
@time_:
<!-- ##### FUNCTION gdk_beep ##### -->
<para>
</para>
@void:
<!-- ##### MACRO GDK_WINDOWING_X11 ##### -->
<para>
This macro is defined if GDK is configured to use the X11 backend.
</para>
<!-- ##### MACRO GDK_WINDOWING_WIN32 ##### -->
<para>
This macro is defined if GDK is configured to use the win32 backend.
</para>

View File

@@ -1,357 +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 <filename>&lt;gdk/gdkkeysyms.h&gt;</filename>
header file.
</para>
<para>
Key values are regularly updated from the upstream X.org X11 implementation,
so new values are added regularly. They will be prefixed with GDK_KEY_ rather
than XF86XK_ or XK_ (for older symbols).
</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>
<para>
When it makes sense, key values can be converted to and from
Unicode characters with gdk_keyval_to_unicode() and gdk_unicode_to_keyval().
</para>
<para id="key-group-explanation">
One #GdkKeymap object exists for each user display. gdk_keymap_get_default()
returns the #GdkKeymap for the default display; to obtain keymaps for other
displays, use gdk_keymap_get_for_display(). A keymap
is a mapping from #GdkKeymapKey to key values. You can think of a #GdkKeymapKey
as a representation of a symbol printed on a physical keyboard key. That is, it
contains three pieces of information. First, it contains the hardware keycode;
this is an identifying number for a physical key. Second, it contains the
<firstterm>level</firstterm> of the key. The level indicates which symbol on the
key will be used, in a vertical direction. So on a standard US keyboard, the key
with the number "1" on it also has the exclamation point ("!") character on
it. The level indicates whether to use the "1" or the "!" symbol. The letter
keys are considered to have a lowercase letter at level 0, and an uppercase
letter at level 1, though only the uppercase letter is printed. Third, the
#GdkKeymapKey contains a group; groups are not used on standard US keyboards,
but are used in many other countries. On a keyboard with groups, there can be 3
or 4 symbols printed on a single key. The group indicates movement in a
horizontal direction. Usually groups are used for two different languages. In
group 0, a key might have two English characters, and in group 1 it might have
two Hebrew characters. The Hebrew characters will be printed on the key next to
the English characters.
</para>
<para>
In order to use a keymap to interpret a key event, it's necessary to first
convert the keyboard state into an effective group and level. This is done via a
set of rules that varies widely according to type of keyboard and user
configuration. The function gdk_keymap_translate_keyboard_state() accepts a
keyboard state -- consisting of hardware keycode pressed, active modifiers, and
active group -- applies the appropriate rules, and returns the group/level to be
used to index the keymap, along with the modifiers which did not affect the
group and level. i.e. it returns "unconsumed modifiers." The keyboard group may
differ from the effective group used for keymap lookups because some keys don't
have multiple groups - e.g. the Enter key is always in group 0 regardless of
keyboard state.
</para>
<para>
Note that gdk_keymap_translate_keyboard_state() also returns the keyval, i.e. it
goes ahead and performs the keymap lookup in addition to telling you which
effective group/level values were used for the lookup. #GdkEventKey already
contains this keyval, however, so you don't normally need to call
gdk_keymap_translate_keyboard_state() just to get the keyval.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### STRUCT GdkKeymap ##### -->
<para>
A <structname>GdkKeymap</structname> defines the translation from keyboard state
(including a hardware key, a modifier mask, and active keyboard group)
to a keyval. This translation has two phases. The first phase is
to determine the effective keyboard group and level for the keyboard
state; the second phase is to look up the keycode/group/level triplet
in the keymap and see what keyval it corresponds to.
</para>
<!-- ##### SIGNAL GdkKeymap::direction-changed ##### -->
<para>
</para>
@keymap: the object which received the signal.
<!-- ##### SIGNAL GdkKeymap::keys-changed ##### -->
<para>
</para>
@keymap: the object which received the signal.
<!-- ##### SIGNAL GdkKeymap::state-changed ##### -->
<para>
</para>
@gdkkeymap: the object which received the signal.
<!-- ##### STRUCT GdkKeymapKey ##### -->
<para>
A <structname>GdkKeymapKey</structname> is a hardware key that can
be mapped to a keyval.
</para>
@keycode: the hardware keycode. This is an identifying number for a
physical key.
@group: indicates movement in a horizontal direction. Usually groups are used
for two different languages. In group 0, a key might have two English
characters, and in group 1 it might have two Hebrew characters. The Hebrew
characters will be printed on the key next to the English characters.
@level: indicates which symbol on the key will be used, in a vertical direction. So on a standard US keyboard, the key with the number "1" on it also has the
exclamation point ("!") character on it. The level indicates whether to use
the "1" or the "!" symbol. The letter keys are considered to have a lowercase
letter at level 0, and an uppercase letter at level 1, though only the
uppercase letter is printed.
<!-- ##### FUNCTION gdk_keymap_get_default ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_keymap_get_for_display ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_keymap_lookup_key ##### -->
<para>
</para>
@keymap:
@key:
@Returns:
<!-- ##### FUNCTION gdk_keymap_translate_keyboard_state ##### -->
<para>
</para>
@keymap:
@hardware_keycode:
@state:
@group:
@keyval:
@effective_group:
@level:
@consumed_modifiers:
@Returns:
<!-- ##### FUNCTION gdk_keymap_get_entries_for_keyval ##### -->
<para>
</para>
@keymap:
@keyval:
@keys:
@n_keys:
@Returns:
<!-- ##### FUNCTION gdk_keymap_get_entries_for_keycode ##### -->
<para>
</para>
@keymap:
@hardware_keycode:
@keys:
@keyvals:
@n_entries:
@Returns:
<!-- ##### FUNCTION gdk_keymap_get_direction ##### -->
<para>
Returns the direction of the keymap.
</para>
@keymap: a #GdkKeymap or %NULL to use the default keymap.
Returns: %PANGO_DIRECTION_LTR or %PANGO_DIRECTION_RTL.
@Returns: the direction of the keymap.
<!-- ##### FUNCTION gdk_keymap_have_bidi_layouts ##### -->
<para>
</para>
@keymap:
@Returns:
<!-- ##### FUNCTION gdk_keymap_get_caps_lock_state ##### -->
<para>
</para>
@keymap:
@Returns:
<!-- ##### FUNCTION gdk_keymap_get_num_lock_state ##### -->
<para>
</para>
@keymap:
@Returns:
<!-- ##### FUNCTION gdk_keymap_add_virtual_modifiers ##### -->
<para>
</para>
@keymap:
@state:
<!-- ##### FUNCTION gdk_keymap_map_virtual_modifiers ##### -->
<para>
</para>
@keymap:
@state:
@Returns:
<!-- ##### FUNCTION gdk_keyval_name ##### -->
<para>
Converts a key value into a symbolic name.
The names are the same as those in the <filename>&lt;gdk/gdkkeysyms.h&gt;</filename> header file
but without the leading "GDK_KEY_".
</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_convert_case ##### -->
<para>
</para>
@symbol:
@lower:
@upper:
<!-- ##### 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.
<!-- ##### 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_unicode ##### -->
<para>
</para>
@keyval:
@Returns:
<!-- ##### FUNCTION gdk_unicode_to_keyval ##### -->
<para>
</para>
@wc:
@Returns:

View File

@@ -1,162 +0,0 @@
<!-- ##### SECTION Title ##### -->
Pango Interaction
<!-- ##### SECTION Short_Description ##### -->
Using Pango in GDK
<!-- ##### SECTION Long_Description ##### -->
<para>
Pango is the text layout system used by GDK and GTK+. The functions
and types in this section are used to render Pango objects to GDK.
drawables, and also extend the set of Pango attributes to include
stippling and embossing.
</para>
<para>
Creating a #PangoLayout object is the first step in rendering text,
and requires getting a handle to a #PangoContext. For GTK+ programs,
you'll usually want to use gtk_widget_get_pango_context(), or
gtk_widget_create_pango_layout(), rather than using the lowlevel
gdk_pango_context_get_for_screen(). Once you have a #PangoLayout, you
can set the text and attributes of it with Pango functions like
pango_layout_set_text() and get its size with pango_layout_get_size().
(Note that Pango uses a fixed point system internally, so converting
between Pango units and pixels using <link
linkend="PANGO-SCALE-CAPS">PANGO_SCALE</link> or the PANGO_PIXELS() macro.)
</para>
<para>
Rendering a Pango layout is done most simply with gdk_draw_layout();
you can also draw pieces of the layout with gdk_draw_layout().
#GdkPangoRenderer is a subclass of #PangoRenderer that is used internally
to implement these functions. Using it directly or subclassing it can be
useful in some cases. See the #GdkPangoRenderer documentation for details.
</para>
<example id="rotated-example">
<title>Using #GdkPangoRenderer to draw transformed text</title>
<!-- Note that this example is basically the same as
demos/gtk-demo/rotated_text.c -->
<programlisting>
#define RADIUS 100
#define N_WORDS 10
#define FONT "Sans Bold 18"
GdkScreen *screen = gdk_drawable_get_screen (drawable);
PangoRenderer *renderer;
GdkGC *gc;
PangoMatrix matrix = PANGO_MATRIX_INIT;
PangoContext *context;
PangoLayout *layout;
PangoFontDescription *desc;
double device_radius;
int width, height;
int i;
/* Get the default renderer for the screen, and set it up for drawing */
renderer = gdk_pango_renderer_get_default (screen);
gdk_pango_renderer_set_drawable (GDK_PANGO_RENDERER (renderer), drawable);
gc = gdk_gc_new (drawable);
gdk_pango_renderer_set_gc (GDK_PANGO_RENDERER (renderer), gc);
/* Set up a transformation matrix so that the user space coordinates for
* where we are drawing are [-RADIUS, RADIUS], [-RADIUS, RADIUS]
* We first center, then change the scale */
gdk_drawable_get_size (drawable, &amp;width, &amp;height);
device_radius = MIN (width, height) / 2.;
pango_matrix_translate (&amp;matrix,
device_radius + (width - 2 * device_radius) / 2,
device_radius + (height - 2 * device_radius) / 2);
pango_matrix_scale (&amp;matrix, device_radius / RADIUS, device_radius / RADIUS);
/* Create a PangoLayout, set the font and text */
context = gdk_pango_context_get_for_screen (screen);
layout = pango_layout_new (context);
pango_layout_set_text (layout, "Text", -1);
desc = pango_font_description_from_string (FONT);
pango_layout_set_font_description (layout, desc);
pango_font_description_free (desc);
/* Draw the layout N_WORDS times in a circle */
for (i = 0; i &lt; N_WORDS; i++)
{
GdkColor color;
PangoMatrix rotated_matrix = matrix;
int width, height;
double angle = (360. * i) / N_WORDS;
/* Gradient from red at angle == 60 to blue at angle == 300 */
color.red = 65535 * (1 + cos ((angle - 60) * M_PI / 180.)) / 2;
color.green = 0;
color.blue = 65535 - color.red;
gdk_pango_renderer_set_override_color (GDK_PANGO_RENDERER (renderer),
PANGO_RENDER_PART_FOREGROUND, &amp;color);
pango_matrix_rotate (&amp;rotated_matrix, angle);
pango_context_set_matrix (context, &amp;rotated_matrix);
/* Inform Pango to re-layout the text with the new transformation matrix */
pango_layout_context_changed (layout);
pango_layout_get_size (layout, &amp;width, &amp;height);
pango_renderer_draw_layout (renderer, layout,
- width / 2, - RADIUS * PANGO_SCALE);
}
/* Clean up default renderer, since it is shared */
gdk_pango_renderer_set_override_color (GDK_PANGO_RENDERER (renderer),
PANGO_RENDER_PART_FOREGROUND, NULL);
gdk_pango_renderer_set_drawable (GDK_PANGO_RENDERER (renderer), NULL);
gdk_pango_renderer_set_gc (GDK_PANGO_RENDERER (renderer), NULL);
/* free the objects we created */
g_object_unref (layout);
g_object_unref (context);
g_object_unref (gc);
</programlisting>
</example>
<figure>
<title>Output of <xref linkend="rotated-example"/></title>
<graphic fileref="rotated-text.png" format="PNG"/>
</figure>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### FUNCTION gdk_pango_layout_get_clip_region ##### -->
<para>
</para>
@layout:
@x_origin:
@y_origin:
@index_ranges:
@n_ranges:
@Returns:
<!-- ##### FUNCTION gdk_pango_layout_line_get_clip_region ##### -->
<para>
</para>
@line:
@x_origin:
@y_origin:
@index_ranges:
@n_ranges:
@Returns:

View File

@@ -1,60 +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). 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>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### 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>
<!-- ##### FUNCTION gdk_pixmap_new ##### -->
<para>
Create a new pixmap with a given size and depth.
</para>
@drawable: A #GdkDrawable, 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 @drawable is not %NULL, the depth of the new
pixmap will be equal to that of @drawable.
@Returns: the #GdkPixmap
<!-- ##### TYPEDEF 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>

View File

@@ -1,357 +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 transferred 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>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### STRUCT GdkAtom ##### -->
<para>
An opaque type representing a string as an index into a table
of strings on the X server.
</para>
<!-- ##### MACRO GDK_ATOM_TO_POINTER ##### -->
<para>
Converts a #GdkAtom into a pointer type.
</para>
@atom: a #GdkAtom.
<!-- ##### MACRO GDK_POINTER_TO_ATOM ##### -->
<para>
Extracts a #GdkAtom from a pointer. The #GdkAtom must have been
stored in the pointer with GDK_ATOM_TO_POINTER().
</para>
@ptr: a pointer containing a #GdkAtom.
<!-- ##### MACRO GDK_NONE ##### -->
<para>
A null value for #GdkAtom, used in a similar way as <literal>None</literal>
in the Xlib API.
</para>
<!-- ##### FUNCTION gdk_text_property_to_text_list ##### -->
<para>
Converts 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 nul-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 items.
@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_text_property_to_text_list_for_display ##### -->
<para>
</para>
@display:
@encoding:
@format:
@text:
@length:
@list:
@Returns:
<!-- ##### FUNCTION gdk_free_text_list ##### -->
<para>
Frees 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_text_property_to_utf8_list ##### -->
<para>
</para>
@encoding:
@format:
@text:
@length:
@list:
@Returns:
<!-- ##### FUNCTION gdk_text_property_to_utf8_list_for_display ##### -->
<para>
</para>
@display:
@encoding:
@format:
@text:
@length:
@list:
@Returns:
<!-- ##### FUNCTION gdk_string_to_compound_text ##### -->
<para>
Converts a string from the encoding of the current locale
into a form suitable for storing in a window property.
</para>
@str: a nul-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_string_to_compound_text_for_display ##### -->
<para>
</para>
@display:
@str:
@encoding:
@format:
@ctext:
@length:
@Returns:
<!-- ##### FUNCTION gdk_free_compound_text ##### -->
<para>
Frees 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_utf8_to_string_target ##### -->
<para>
</para>
@str:
@Returns:
<!-- ##### FUNCTION gdk_utf8_to_compound_text ##### -->
<para>
</para>
@str:
@encoding:
@format:
@ctext:
@length:
@Returns:
<!-- ##### FUNCTION gdk_utf8_to_compound_text_for_display ##### -->
<para>
</para>
@display:
@str:
@encoding:
@format:
@ctext:
@length:
@Returns:
<!-- ##### FUNCTION gdk_atom_intern ##### -->
<para>
Finds or creates an atom corresponding to a given string.
</para>
@atom_name: a string.
@only_if_exists: if %TRUE, GDK is allowed to not create a new atom, but
just return %GDK_NONE if the requested atom doesn't already
exists. Currently, the flag is ignored, since checking the
existance of an atom is as expensive as creating it.
@Returns: the atom corresponding to @atom_name.
<!-- ##### FUNCTION gdk_atom_intern_static_string ##### -->
<para>
</para>
@atom_name:
@Returns:
<!-- ##### FUNCTION gdk_atom_name ##### -->
<para>
Determines 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.
</para>
<note>
<para>
The XGetWindowProperty() 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
XGetWindowProperty() directly until a replacement function for
gdk_property_get()
is provided.
</para>
</note>
@window: a #GdkWindow.
@property: the property to retrieve.
@type: the desired property type, or %GDK_NONE, 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 retrieve in bytes. Data is
considered to be retrieved in 4 byte chunks, so @length
will be rounded up to the next highest 4 byte boundary
(so be careful not to pass a value that might overflow
when rounded up).
@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 return format of the
data; either 8, 16 or 32 bits.
@actual_length: location to store the length of the retrieved data, in
bytes. Data returned in the 32 bit format is stored
in a long variable, so the actual number of 32 bit
elements should be be calculated via
@actual_length/sizeof(glong) to ensure portability to
64 bit systems.
@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 successfully received and stored
in @data, otherwise %FALSE.
<!-- ##### FUNCTION gdk_property_change ##### -->
<para>
Changes 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_PREPEND 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_PREPEND 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>
Deletes a property from a window.
</para>
@window: a #GdkWindow.
@property: the property to delete.

View File

@@ -1,279 +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 <link linkend="gdk-Properties-and-Atoms">Properties and Atoms</link>
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>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### MACRO GDK_SELECTION_PRIMARY ##### -->
<para>
A #GdkAtom representing the <literal>PRIMARY</literal> selection.
</para>
<!-- ##### MACRO GDK_SELECTION_SECONDARY ##### -->
<para>
A #GdkAtom representing the <literal>SECONDARY</literal> selection.
</para>
<!-- ##### MACRO GDK_SELECTION_CLIPBOARD ##### -->
<para>
A #GdkAtom representing the <literal>CLIPBOARD</literal> selection.
</para>
<!-- ##### MACRO GDK_TARGET_BITMAP ##### -->
<para>
A #GdkAtom representing the <literal>BITMAP</literal> selection target.
</para>
<!-- ##### MACRO GDK_TARGET_COLORMAP ##### -->
<para>
A #GdkAtom representing the <literal>COLORMAP</literal> selection target.
</para>
<!-- ##### MACRO GDK_TARGET_DRAWABLE ##### -->
<para>
A #GdkAtom representing the <literal>DRAWABLE</literal> selection target.
</para>
<!-- ##### MACRO GDK_TARGET_PIXMAP ##### -->
<para>
A #GdkAtom representing the <literal>PIXMAP</literal> selection target.
</para>
<!-- ##### MACRO GDK_TARGET_STRING ##### -->
<para>
A #GdkAtom representing the <literal>STRING</literal> selection target.
</para>
<!-- ##### MACRO GDK_SELECTION_TYPE_ATOM ##### -->
<para>
A #GdkAtom representing the <literal>ATOM</literal> selection type.
</para>
<!-- ##### MACRO GDK_SELECTION_TYPE_BITMAP ##### -->
<para>
A #GdkAtom representing the <literal>BITMAP</literal> selection type.
</para>
<!-- ##### MACRO GDK_SELECTION_TYPE_COLORMAP ##### -->
<para>
A #GdkAtom representing the <literal>COLORMAP</literal> selection type.
</para>
<!-- ##### MACRO GDK_SELECTION_TYPE_DRAWABLE ##### -->
<para>
A #GdkAtom representing the <literal>DRAWABLE</literal> selection type.
</para>
<!-- ##### MACRO GDK_SELECTION_TYPE_INTEGER ##### -->
<para>
A #GdkAtom representing the <literal>INTEGER</literal> selection type.
</para>
<!-- ##### MACRO GDK_SELECTION_TYPE_PIXMAP ##### -->
<para>
A #GdkAtom representing the <literal>PIXMAP</literal> selection type.
</para>
<!-- ##### MACRO GDK_SELECTION_TYPE_WINDOW ##### -->
<para>
A #GdkAtom representing the <literal>WINDOW</literal> selection type.
</para>
<!-- ##### MACRO GDK_SELECTION_TYPE_STRING ##### -->
<para>
A #GdkAtom representing the <literal>STRING</literal> selection type.
</para>
<!-- ##### FUNCTION gdk_selection_owner_set ##### -->
<para>
Sets 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 successfully
changed to @owner, otherwise %FALSE.
<!-- ##### FUNCTION gdk_selection_owner_set_for_display ##### -->
<para>
</para>
@display:
@owner:
@selection:
@time_:
@send_event:
@Returns:
<!-- ##### FUNCTION gdk_selection_owner_get ##### -->
<para>
Determines 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_owner_get_for_display ##### -->
<para>
</para>
@display:
@selection:
@Returns:
<!-- ##### FUNCTION gdk_selection_convert ##### -->
<para>
Retrieves 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>
</para>
@requestor:
@data:
@prop_type:
@prop_format:
@Returns:
<!-- ##### FUNCTION gdk_selection_send_notify ##### -->
<para>
Sends 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.
<!-- ##### FUNCTION gdk_selection_send_notify_for_display ##### -->
<para>
</para>
@display:
@requestor:
@selection:
@target:
@property:
@time_:

View File

@@ -1,381 +0,0 @@
<!-- ##### SECTION Title ##### -->
Threads
<!-- ##### SECTION Short_Description ##### -->
Functions for using GDK in multi-threaded programs
<!-- ##### SECTION Long_Description ##### -->
<para>
For thread safety, GDK relies on the thread primitives in GLib,
and on the thread-safe GLib main loop.
</para>
<para>
GLib is completely thread safe (all global data is automatically
locked), but individual data structure instances are not automatically
locked for performance reasons. So e.g. you must coordinate
accesses to the same #GHashTable from multiple threads.
</para>
<para>
GTK+ is "thread aware" but not thread safe &mdash; it provides a
global lock controlled by gdk_threads_enter()/gdk_threads_leave()
which protects all use of GTK+. That is, only one thread can use GTK+
at any given time.
</para>
<para>
Unfortunately the above holds with the X11 backend only. With the
Win32 backend, GDK calls should not be attempted from multiple threads
at all.
</para>
<para>
You must call g_thread_init() and gdk_threads_init() before executing
any other GTK+ or GDK functions in a threaded GTK+ program.
</para>
<para>
Idles, timeouts, and input functions from GLib, such as g_idle_add(), are
executed outside of the main GTK+ lock.
So, if you need to call GTK+ inside of such a callback, you must surround
the callback with a gdk_threads_enter()/gdk_threads_leave() pair or use
gdk_threads_add_idle_full() which does this for you.
However, event dispatching from the mainloop is still executed within
the main GTK+ lock, so callback functions connected to event signals
like GtkWidget::button-press-event, do not need thread protection.
</para>
<para>
In particular, this means, if you are writing widgets that might
be used in threaded programs, you <emphasis>must</emphasis> surround
timeouts and idle functions in this matter.
</para>
<para>
As always, you must also surround any calls to GTK+ not made within
a signal handler with a gdk_threads_enter()/gdk_threads_leave() pair.
</para>
<para>
Before calling gdk_threads_leave() from a thread other
than your main thread, you probably want to call gdk_flush()
to send all pending commands to the windowing system.
(The reason you don't need to do this from the main thread
is that GDK always automatically flushes pending commands
when it runs out of incoming events to process and has
to sleep while waiting for more events.)
</para>
<para>A minimal main program for a threaded GTK+ application
looks like:</para>
<informalexample>
<programlisting role="C">
int
main (int argc, char *argv[])
{
GtkWidget *window;
g_thread_init (NULL);
gdk_threads_init (<!-- -->);
gdk_threads_enter (<!-- -->);
gtk_init (&amp;argc, &amp;argv);
window = create_window (<!-- -->);
gtk_widget_show (window);
gtk_main (<!-- -->);
gdk_threads_leave (<!-- -->);
return 0;
}
</programlisting>
</informalexample>
<para>
Callbacks require a bit of attention. Callbacks from GTK+ signals
are made within the GTK+ lock. However callbacks from GLib (timeouts,
IO callbacks, and idle functions) are made outside of the GTK+
lock. So, within a signal handler you do not need to call
gdk_threads_enter(), but within the other types of callbacks, you
do.
</para>
<para>Erik Mouw contributed the following code example to
illustrate how to use threads within GTK+ programs.
</para>
<informalexample>
<programlisting role="C">
/*-------------------------------------------------------------------------
* Filename: gtk-thread.c
* Version: 0.99.1
* Copyright: Copyright (C) 1999, Erik Mouw
* Author: Erik Mouw &lt;J.A.K.Mouw@its.tudelft.nl&gt;
* Description: GTK threads example.
* Created at: Sun Oct 17 21:27:09 1999
* Modified by: Erik Mouw &lt;J.A.K.Mouw@its.tudelft.nl&gt;
* Modified at: Sun Oct 24 17:21:41 1999
*-----------------------------------------------------------------------*/
/*
* Compile with:
*
* cc -o gtk-thread gtk-thread.c `gtk-config --cflags --libs gthread`
*
* Thanks to Sebastian Wilhelmi and Owen Taylor for pointing out some
* bugs.
*
*/
&num;include &lt;stdio.h&gt;
&num;include &lt;stdlib.h&gt;
&num;include &lt;unistd.h&gt;
&num;include &lt;time.h&gt;
&num;include &lt;gtk/gtk.h&gt;
&num;include &lt;glib.h&gt;
&num;include &lt;pthread.h&gt;
&num;define YES_IT_IS (1)
&num;define NO_IT_IS_NOT (0)
typedef struct
{
GtkWidget *label;
int what;
} yes_or_no_args;
G_LOCK_DEFINE_STATIC (yes_or_no);
static volatile int yes_or_no = YES_IT_IS;
void destroy (GtkWidget *widget, gpointer data)
{
gtk_main_quit (<!-- -->);
}
void *argument_thread (void *args)
{
yes_or_no_args *data = (yes_or_no_args *)args;
gboolean say_something;
for (;;)
{
/* sleep a while */
sleep(rand(<!-- -->) / (RAND_MAX / 3) + 1);
/* lock the yes_or_no_variable */
G_LOCK(yes_or_no);
/* do we have to say something? */
say_something = (yes_or_no != data->what);
if(say_something)
{
/* set the variable */
yes_or_no = data->what;
}
/* Unlock the yes_or_no variable */
G_UNLOCK (yes_or_no);
if (say_something)
{
/* get GTK thread lock */
gdk_threads_enter (<!-- -->);
/* set label text */
if(data->what == YES_IT_IS)
gtk_label_set_text (GTK_LABEL (data->label), "O yes, it is!");
else
gtk_label_set_text (GTK_LABEL (data->label), "O no, it isn't!");
/* release GTK thread lock */
gdk_threads_leave (<!-- -->);
}
}
return NULL;
}
int main (int argc, char *argv[])
{
GtkWidget *window;
GtkWidget *label;
yes_or_no_args yes_args, no_args;
pthread_t no_tid, yes_tid;
/* init threads */
g_thread_init (NULL);
gdk_threads_init (<!-- -->);
gdk_threads_enter (<!-- -->);
/* init gtk */
gtk_init(&amp;argc, &amp;argv);
/* init random number generator */
srand ((unsigned int) time (NULL));
/* create a window */
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (window, "destroy", G_CALLBACK (destroy), NULL);
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
/* create a label */
label = gtk_label_new ("And now for something completely different ...");
gtk_container_add (GTK_CONTAINER (window), label);
/* show everything */
gtk_widget_show (label);
gtk_widget_show (window);
/* create the threads */
yes_args.label = label;
yes_args.what = YES_IT_IS;
pthread_create (&amp;yes_tid, NULL, argument_thread, &amp;yes_args);
no_args.label = label;
no_args.what = NO_IT_IS_NOT;
pthread_create (&amp;no_tid, NULL, argument_thread, &amp;no_args);
/* enter the GTK main loop */
gtk_main (<!-- -->);
gdk_threads_leave (<!-- -->);
return 0;
}
</programlisting>
</informalexample>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### MACRO GDK_THREADS_ENTER ##### -->
<para>
This macro marks the beginning of a critical section in which GDK and
GTK+ functions can be called safely and without causing race
conditions. Only one thread at a time can be in such a critial
section. The macro expands to a no-op if #G_THREADS_ENABLED has not
been defined. Typically gdk_threads_enter() should be used instead of
this macro.
</para>
<!-- ##### MACRO GDK_THREADS_LEAVE ##### -->
<para>
This macro marks the end of a critical section
begun with #GDK_THREADS_ENTER.
</para>
<!-- ##### FUNCTION gdk_threads_init ##### -->
<para>
</para>
@void:
<!-- ##### FUNCTION gdk_threads_enter ##### -->
<para>
This macro marks the beginning of a critical section in which GDK and
GTK+ functions can be called safely and without causing race
conditions. Only one thread at a time can be in such a critial
section.
</para>
@void:
<!-- ##### FUNCTION gdk_threads_leave ##### -->
<para>
Leaves a critical region begun with gdk_threads_enter().
</para>
@void:
<!-- ##### FUNCTION gdk_threads_set_lock_functions ##### -->
<para>
</para>
@enter_fn:
@leave_fn:
<!-- ##### FUNCTION gdk_threads_add_idle ##### -->
<para>
</para>
@function:
@data:
@Returns:
<!-- ##### FUNCTION gdk_threads_add_idle_full ##### -->
<para>
</para>
@priority:
@function:
@data:
@notify:
@Returns:
<!-- ##### FUNCTION gdk_threads_add_timeout ##### -->
<para>
</para>
@interval:
@function:
@data:
@Returns:
<!-- ##### FUNCTION gdk_threads_add_timeout_full ##### -->
<para>
</para>
@priority:
@interval:
@function:
@data:
@notify:
@Returns:
<!-- ##### FUNCTION gdk_threads_add_timeout_seconds ##### -->
<para>
</para>
@interval:
@function:
@data:
@Returns:
<!-- ##### FUNCTION gdk_threads_add_timeout_seconds_full ##### -->
<para>
</para>
@priority:
@interval:
@function:
@data:
@notify:
@Returns:

View File

@@ -1,283 +0,0 @@
<!-- ##### SECTION Title ##### -->
Visuals
<!-- ##### SECTION Short_Description ##### -->
Low-level display hardware information
<!-- ##### SECTION Long_Description ##### -->
<para>
A #GdkVisual describes a particular video hardware display format. 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. For example, a piece of display hardware might support 24-bit color,
16-bit color, or 8-bit color; meaning 24/16/8-bit pixel sizes. For a given
pixel size, pixels can be in different formats; for example the "red" element
of an RGB pixel may be in the top 8 bits of the pixel, or may be in the lower
4 bits.
</para>
<para>
There are several standard visuals. The visual returned
by gdk_screen_get_system_visual() is the system's default
visual.
</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>
#GdkColormap
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### STRUCT GdkVisual ##### -->
<para>
The <type>GdkVisual</type> structure contains information about
a particular visual.
</para>
<example 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 &gt;&gt; (16 - visual-&gt;red_prec)) &lt;&lt; visual-&gt;red_shift) |
((g &gt;&gt; (16 - visual-&gt;green_prec)) &lt;&lt; visual-&gt;green_shift) |
((r &gt;&gt; (16 - visual-&gt;blue_prec)) &lt;&lt; visual-&gt;blue_shift);
}
</programlisting>
</example>
@parent_instance: inherited portion from #GObject
<!-- ##### 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.
</para>
@GDK_VISUAL_STATIC_GRAY: Each pixel value indexes a grayscale value directly.
@GDK_VISUAL_GRAYSCALE: 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.
@GDK_VISUAL_STATIC_COLOR: Each pixel value is an index into a predefined,
unmodifiable color map that maps pixel values into RGB values.
@GDK_VISUAL_PSEUDO_COLOR: 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.
@GDK_VISUAL_TRUE_COLOR: 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.
@GDK_VISUAL_DIRECT_COLOR: Each pixel value contains red, green, and blue
components as for %GDK_VISUAL_TRUE_COLOR, but the components are mapped via a
color table into the final output table instead of being converted directly.
<!-- ##### ENUM GdkByteOrder ##### -->
<para>
A set of values describing the possible byte-orders
for storing pixel values in memory.
</para>
@GDK_LSB_FIRST: 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.
@GDK_MSB_FIRST: The values are stored with the most-significant byte
first. For instance, the 32-bit value 0xffeecc would be stored
in memory as 0x00, 0xcc, 0xee, 0xff.
<!-- ##### FUNCTION gdk_query_depths ##### -->
<para>
</para>
@depths:
@count:
<!-- ##### FUNCTION gdk_query_visual_types ##### -->
<para>
</para>
@visual_types:
@count:
<!-- ##### FUNCTION gdk_list_visuals ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_visual_get_bits_per_rgb ##### -->
<para>
</para>
@visual:
@Returns:
<!-- ##### FUNCTION gdk_visual_get_blue_pixel_details ##### -->
<para>
</para>
@visual:
@mask:
@shift:
@precision:
<!-- ##### FUNCTION gdk_visual_get_byte_order ##### -->
<para>
</para>
@visual:
@Returns:
<!-- ##### FUNCTION gdk_visual_get_colormap_size ##### -->
<para>
</para>
@visual:
@Returns:
<!-- ##### FUNCTION gdk_visual_get_depth ##### -->
<para>
</para>
@visual:
@Returns:
<!-- ##### FUNCTION gdk_visual_get_green_pixel_details ##### -->
<para>
</para>
@visual:
@mask:
@shift:
@precision:
<!-- ##### FUNCTION gdk_visual_get_red_pixel_details ##### -->
<para>
</para>
@visual:
@mask:
@shift:
@precision:
<!-- ##### FUNCTION gdk_visual_get_visual_type ##### -->
<para>
</para>
@visual:
@Returns:
<!-- ##### FUNCTION gdk_visual_get_best_depth ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_visual_get_best_type ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_visual_get_system ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_visual_get_best ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_visual_get_best_with_depth ##### -->
<para>
</para>
@depth:
@Returns:
<!-- ##### FUNCTION gdk_visual_get_best_with_type ##### -->
<para>
</para>
@visual_type:
@Returns:
<!-- ##### FUNCTION gdk_visual_get_best_with_both ##### -->
<para>
</para>
@depth:
@visual_type:
@Returns:
<!-- ##### FUNCTION gdk_visual_get_screen ##### -->
<para>
</para>
@visual:
@Returns:

View File

@@ -1,660 +0,0 @@
<!-- ##### SECTION Title ##### -->
X Window System Interaction
<!-- ##### SECTION Short_Description ##### -->
X backend-specific functions
<!-- ##### SECTION Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### SECTION Stability_Level ##### -->
<!-- ##### SECTION Image ##### -->
<!-- ##### MACRO GDK_ROOT_WINDOW ##### -->
<para>
Obtains the Xlib window id of the root window of the current screen.
</para>
<!-- ##### MACRO GDK_DISPLAY ##### -->
<para>
The current display.
</para>
@Returns: an Xlib <type>Display*</type>.
<!-- ##### MACRO GDK_WINDOW_XDISPLAY ##### -->
<para>
Returns the display of a #GdkWindow.
</para>
@win: a #GdkWindow.
@Returns: an Xlib <type>Display*</type>.
<!-- ##### MACRO GDK_WINDOW_XID ##### -->
<para>
Returns the X window belonging to a #GdkWindow.
</para>
@win: a #GdkWindow.
@Returns: the Xlib <type>Window</type> of @win.
<!-- ##### MACRO GDK_PIXMAP_XDISPLAY ##### -->
<para>
Returns the display of a #GdkPixmap.
</para>
@pix: a #GdkPixmap.
@Returns: an Xlib <type>Display*</type>.
<!-- ##### MACRO GDK_PIXMAP_XID ##### -->
<para>
Returns the X pixmap belonging to a #GdkPixmap.
</para>
@pix: a #GdkPixmap.
@Returns: the Xlib <type>XPixmap</type> of @win.
<!-- ##### MACRO GDK_DISPLAY_XDISPLAY ##### -->
<para>
Returns the display of a #GdkDisplay.
</para>
@display: a #GdkDisplay.
<!-- ##### MACRO GDK_DRAWABLE_XDISPLAY ##### -->
<para>
Returns the display of a #GdkDrawable.
</para>
@win: a #GdkDrawable.
@Returns: an Xlib <type>Display*</type>.
<!-- ##### MACRO GDK_DRAWABLE_XID ##### -->
<para>
Returns the X resource (window or pixmap) belonging to a #GdkDrawable.
</para>
@win: a #GdkDrawable.
@Returns: the ID of @win's X resource.
<!-- ##### MACRO GDK_COLORMAP_XDISPLAY ##### -->
<para>
Returns the display of a #GdkColormap.
</para>
@cmap: a #GdkColormap.
@Returns: an Xlib <type>Display*</type>.
<!-- ##### MACRO GDK_COLORMAP_XCOLORMAP ##### -->
<para>
Returns the X colormap belonging to a #GdkColormap.
</para>
@cmap: a #GdkColormap.
@Returns: an Xlib <type>Colormap</type>.
<!-- ##### MACRO GDK_SCREEN_XDISPLAY ##### -->
<para>
Returns the display of a #GdkScreen.
</para>
@screen: a #GdkScreen.
@Returns: an Xlib <type>Display*</type>.
<!-- ##### MACRO GDK_SCREEN_XNUMBER ##### -->
<para>
Returns the index of a #GdkScreen.
</para>
@screen: a #GdkScreen
@Returns: the position of @screen among the screens of
its display.
<!-- ##### MACRO GDK_SCREEN_XSCREEN ##### -->
<para>
Returns the screen of a #GdkScreen.
</para>
@screen: a #GdkScreen
@Returns: an Xlib <type>Screen*</type>.
<!-- ##### MACRO GDK_VISUAL_XVISUAL ##### -->
<para>
Returns the X visual belonging to a #GdkVisual.
</para>
@vis: a #GdkVisual.
@Returns: an Xlib <type>Visual*</type>.
<!-- ##### MACRO GDK_CURSOR_XCURSOR ##### -->
<para>
Returns the X cursor belonging to a #GdkCursor.
</para>
@cursor: a #GdkCursor.
@Returns: an Xlib <type>Cursor</type>.
<!-- ##### MACRO GDK_CURSOR_XDISPLAY ##### -->
<para>
Returns the display of a #GdkCursor.
</para>
@cursor: a #GdkCursor.
@Returns: an Xlib <type>Display*</type>.
<!-- ##### MACRO GDK_WINDOW_XWINDOW ##### -->
<para>
Another name for GDK_DRAWABLE_XID().
</para>
<!-- ##### FUNCTION gdkx_visual_get ##### -->
<para>
</para>
@xvisualid:
@Returns:
<!-- ##### FUNCTION gdk_pixmap_foreign_new ##### -->
<para>
</para>
@anid:
@Returns:
<!-- ##### FUNCTION gdk_pixmap_foreign_new_for_display ##### -->
<para>
</para>
@display:
@anid:
@Returns:
<!-- ##### FUNCTION gdk_pixmap_foreign_new_for_screen ##### -->
<para>
</para>
@screen:
@anid:
@width:
@height:
@depth:
@Returns:
<!-- ##### FUNCTION gdk_window_foreign_new ##### -->
<para>
</para>
@anid:
@Returns:
<!-- ##### FUNCTION gdk_window_foreign_new_for_display ##### -->
<para>
</para>
@display:
@anid:
@Returns:
<!-- ##### FUNCTION gdk_xid_table_lookup ##### -->
<para>
</para>
@xid:
@Returns:
<!-- ##### FUNCTION gdk_xid_table_lookup_for_display ##### -->
<para>
</para>
@display:
@xid:
@Returns:
<!-- ##### FUNCTION gdk_window_lookup ##### -->
<para>
</para>
@anid:
@Returns:
<!-- ##### FUNCTION gdk_window_lookup_for_display ##### -->
<para>
</para>
@display:
@anid:
@Returns:
<!-- ##### FUNCTION gdk_pixmap_lookup ##### -->
<para>
</para>
@anid:
@Returns:
<!-- ##### FUNCTION gdk_pixmap_lookup_for_display ##### -->
<para>
</para>
@display:
@anid:
@Returns:
<!-- ##### FUNCTION gdk_x11_lookup_xdisplay ##### -->
<para>
</para>
@xdisplay:
@Returns:
<!-- ##### FUNCTION gdk_x11_get_server_time ##### -->
<para>
</para>
@window:
@Returns:
<!-- ##### FUNCTION gdk_net_wm_supports ##### -->
<para>
</para>
@property:
@Returns:
<!-- ##### FUNCTION gdk_x11_screen_supports_net_wm_hint ##### -->
<para>
</para>
@screen:
@property:
@Returns:
<!-- ##### FUNCTION gdk_x11_screen_get_window_manager_name ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_x11_screen_get_monitor_output ##### -->
<para>
</para>
@screen:
@monitor_num:
@Returns:
<!-- ##### FUNCTION gdk_x11_screen_lookup_visual ##### -->
<para>
</para>
@screen:
@xvisualid:
@Returns:
<!-- ##### FUNCTION gdk_x11_window_set_user_time ##### -->
<para>
</para>
@window:
@timestamp:
<!-- ##### FUNCTION gdk_x11_window_move_to_current_desktop ##### -->
<para>
</para>
@window:
<!-- ##### FUNCTION gdk_x11_display_get_user_time ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_x11_colormap_foreign_new ##### -->
<para>
</para>
@visual:
@xcolormap:
@Returns:
<!-- ##### FUNCTION gdk_x11_colormap_get_xcolormap ##### -->
<para>
</para>
@colormap:
@Returns:
<!-- ##### FUNCTION gdk_x11_colormap_get_xdisplay ##### -->
<para>
</para>
@colormap:
@Returns:
<!-- ##### FUNCTION gdk_x11_cursor_get_xcursor ##### -->
<para>
</para>
@cursor:
@Returns:
<!-- ##### FUNCTION gdk_x11_cursor_get_xdisplay ##### -->
<para>
</para>
@cursor:
@Returns:
<!-- ##### FUNCTION gdk_x11_display_broadcast_startup_message ##### -->
<para>
</para>
@display:
@message_type:
@Varargs:
<!-- ##### FUNCTION gdk_x11_display_get_startup_notification_id ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_x11_display_get_xdisplay ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_x11_display_grab ##### -->
<para>
</para>
@display:
<!-- ##### FUNCTION gdk_x11_display_ungrab ##### -->
<para>
</para>
@display:
<!-- ##### FUNCTION gdk_x11_display_set_cursor_theme ##### -->
<para>
</para>
@display:
@theme:
@size:
<!-- ##### FUNCTION gdk_x11_register_standard_event_type ##### -->
<para>
</para>
@display:
@event_base:
@n_events:
<!-- ##### FUNCTION gdk_x11_drawable_get_xdisplay ##### -->
<para>
</para>
@drawable:
@Returns:
<!-- ##### FUNCTION gdk_x11_drawable_get_xid ##### -->
<para>
</para>
@drawable:
@Returns:
<!-- ##### FUNCTION gdk_x11_get_default_root_xwindow ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_x11_get_default_screen ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_x11_get_default_xdisplay ##### -->
<para>
</para>
@void:
@Returns:
<!-- ##### FUNCTION gdk_x11_grab_server ##### -->
<para>
</para>
@void:
<!-- ##### FUNCTION gdk_x11_screen_get_screen_number ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_x11_screen_get_xscreen ##### -->
<para>
</para>
@screen:
@Returns:
<!-- ##### FUNCTION gdk_x11_ungrab_server ##### -->
<para>
</para>
@void:
<!-- ##### FUNCTION gdk_x11_visual_get_xvisual ##### -->
<para>
</para>
@visual:
@Returns:
<!-- ##### FUNCTION gdk_x11_atom_to_xatom ##### -->
<para>
</para>
@atom:
@Returns:
<!-- ##### FUNCTION gdk_x11_atom_to_xatom_for_display ##### -->
<para>
</para>
@display:
@atom:
@Returns:
<!-- ##### FUNCTION gdk_x11_xatom_to_atom ##### -->
<para>
</para>
@xatom:
@Returns:
<!-- ##### FUNCTION gdk_x11_xatom_to_atom_for_display ##### -->
<para>
</para>
@display:
@xatom:
@Returns:
<!-- ##### FUNCTION gdk_x11_get_xatom_by_name ##### -->
<para>
</para>
@atom_name:
@Returns:
<!-- ##### FUNCTION gdk_x11_get_xatom_by_name_for_display ##### -->
<para>
</para>
@display:
@atom_name:
@Returns:
<!-- ##### FUNCTION gdk_x11_get_xatom_name ##### -->
<para>
</para>
@xatom:
@Returns:
<!-- ##### FUNCTION gdk_x11_get_xatom_name_for_display ##### -->
<para>
</para>
@display:
@xatom:
@Returns:

View File

@@ -1,5 +1,4 @@
## Process this file with automake to produce Makefile.in
include $(top_srcdir)/Makefile.decl
AUTOMAKE_OPTIONS = 1.6
@@ -22,6 +21,8 @@ CFILE_GLOB=$(top_srcdir)/gtk/*.c
# Header files to ignore when scanning
IGNORE_HFILES= \
fnmatch.h \
gtk9slice.h \
gtkanimationdescription.h \
gtkdebug.h \
gtkbuilderprivate.h \
gtkdndcursors.h \
@@ -77,6 +78,7 @@ IGNORE_HFILES= \
gtktexttagprivate.h \
gtktexttypes.h \
gtktextutil.h \
gtktimeline.h \
gtkthemes.h \
gtktrayicon.h \
gtktreedatalist.h \
@@ -104,8 +106,8 @@ CPPFLAGS += \
-UGTK_DISABLE_SINGLE_INCLUDES
GTKDOC_LIBS = \
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib)
$(top_builddir)/gtk/libgtk-3.la \
$(GTK_DEP_LIBS)
# Extra options to supply to gtkdoc-mkdb
@@ -121,6 +123,8 @@ content_files = \
glossary.xml \
migrating-2to3.xml \
migrating-checklist.sgml \
migrating-GtkApplication.xml \
migrating-GtkStyleContext.xml \
objects_grouped.sgml \
osx.sgml \
question_index.sgml \
@@ -130,18 +134,22 @@ content_files = \
windows.sgml \
x11.sgml \
gtk-query-immodules-3.0.xml \
gtk-update-icon-cache-3.0.xml \
gtk-builder-convert-3.0.xml \
visual_index.xml
gtk-update-icon-cache.xml \
visual_index.xml \
getting_started.xml \
overview.xml
expand_content_files = \
drawing-model.xml \
getting_started.xml \
glossary.xml \
migrating-2to3.xml \
migrating-checklist.sgml \
tree_widget.sgml \
migrating-GtkApplication.xml \
migrating-GtkStyleContext.xml \
question_index.sgml \
text_widget.sgml \
question_index.sgml
tree_widget.sgml
# Images to copy into HTML directory
HTML_IMAGES = \
@@ -266,6 +274,8 @@ HTML_IMAGES = \
$(top_srcdir)/gtk/stock-icons/24/gtk-page-setup.png \
$(srcdir)/images/aboutdialog.png \
$(srcdir)/images/accel-label.png \
$(srcdir)/images/appchooserbutton.png \
$(srcdir)/images/appchooserdialog.png \
$(srcdir)/images/assistant.png \
$(srcdir)/images/button.png \
$(srcdir)/images/check-button.png \
@@ -315,7 +325,38 @@ HTML_IMAGES = \
$(srcdir)/images/layout-rlbt.png \
$(srcdir)/images/layout-rltb.png \
$(srcdir)/images/layout-tblr.png \
$(srcdir)/images/layout-tbrl.png
$(srcdir)/images/layout-tbrl.png \
$(srcdir)/images/window-default.png \
$(srcdir)/images/hello-world.png \
$(srcdir)/images/grid-packing.png \
$(srcdir)/images/drawing.png \
$(srcdir)/images/switch.png \
$(srcdir)/images/linear.png \
$(srcdir)/images/ease.png \
$(srcdir)/images/ease-in-out.png \
$(srcdir)/images/ease-in.png \
$(srcdir)/images/ease-out.png \
$(srcdir)/images/gradient1.png \
$(srcdir)/images/gradient2.png \
$(srcdir)/images/gradient3.png \
$(srcdir)/images/gradient4.png \
$(srcdir)/images/border1.png \
$(srcdir)/images/border2.png \
$(srcdir)/images/border3.png \
$(srcdir)/images/slices.png \
$(srcdir)/images/checks.png \
$(srcdir)/images/options.png \
$(srcdir)/images/arrows.png \
$(srcdir)/images/expanders.png \
$(srcdir)/images/background.png \
$(srcdir)/images/frames.png \
$(srcdir)/images/frame-gap.png \
$(srcdir)/images/sliders.png \
$(srcdir)/images/focus.png \
$(srcdir)/images/handles.png \
$(srcdir)/images/extensions.png \
$(srcdir)/images/numerableicon.png \
$(srcdir)/images/numerableicon2.png
# Extra options to supply to gtkdoc-fixref
FIXXREF_OPTIONS=--extra-dir=../gdk/html \
@@ -334,8 +375,7 @@ EXTRA_DIST += version.xml.in
man_MANS = \
gtk-query-immodules-3.0.1 \
gtk-update-icon-cache-3.0.1 \
gtk-builder-convert-3.0.1
gtk-update-icon-cache.1
if ENABLE_MAN

View File

@@ -2,7 +2,7 @@
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
]>
<refentry id="gtk-building" revision="6 Sept 2001">
<refentry id="gtk-building">
<refmeta>
<refentrytitle>Compiling the GTK+ libraries</refentrytitle>
<manvolnum>3</manvolnum>
@@ -30,7 +30,7 @@ How to compile GTK+ itself
your operating system will be available, either from your
operating system vendor or from independent sources. If such a
set of packages is available, installing it will get you
programming wih GTK+ much faster than building it yourself. In
programming with GTK+ much faster than building it yourself. In
fact, you may well already have GTK+ installed on your system
already.
</para>
@@ -45,7 +45,7 @@ How to compile GTK+ itself
</para>
<para>
If you are building GTK+ from the distributed source packages,
then won't need these tools installed; the necessary pieces
then you won't need these tools installed; the necessary pieces
of the tools are already included in the source packages. But
it's useful to know a bit about how packages that use these
tools work. A source package is distributed as a
@@ -57,14 +57,15 @@ How to compile GTK+ itself
tar xvfj gtk+-3.0.0.tar.bz2
</programlisting>
<para>
In the toplevel of the directory that is created, there will be
In the toplevel directory that is created, there will be
a shell script called <filename>configure</filename> which
you then run to take the template makefiles called
<filename>Makefile.in</filename> in the package and create
makefiles customized for your operating system. The <filename>configure</filename>
script can be passed various command line arguments to determine how
the package is built and installed. The most commonly useful
argument is the <systemitem>--prefix</systemitem> argument which
makefiles customized for your operating system.
The <filename>configure</filename> script can be passed
various command line arguments to determine how the package
is built and installed. The most commonly useful argument is
the <systemitem>--prefix</systemitem> argument which
determines where the package is installed. To install a package
in <filename>/opt/gtk</filename> you would run configure as:
</para>
@@ -171,7 +172,7 @@ How to compile GTK+ itself
such as high level data types, Unicode manipulation, and
an object and type system to C programs. It is available
from the <ulink url="ftp://ftp.gtk.org/pub/glib/">GTK+
FTP site.</ulink>
FTP site</ulink>.
</para>
</listitem>
<listitem>
@@ -179,7 +180,7 @@ How to compile GTK+ itself
<ulink url="http://www.pango.org">Pango</ulink> is a library
for internationalized text handling. It is available from
the <ulink url="ftp://ftp.gtk.org/pub/pango/">GTK+ FTP
site.</ulink>.
site</ulink>.
</para>
</listitem>
<listitem>
@@ -188,7 +189,7 @@ How to compile GTK+ itself
interfaces allowing accessibility technologies such as
screen readers to interact with a graphical user interface.
It is available from the <ulink
url="ftp://ftp.gtk.org/pub/atk/">GTK+ FTP site.</ulink>
url="ftp://ftp.gtk.org/pub/atk/">GTK+ FTP site</ulink>.
</para>
</listitem>
<listitem>
@@ -210,22 +211,6 @@ How to compile GTK+ itself
message translation databases.
</para>
</listitem>
<listitem>
<para>
The <ulink url="http://en.wikipedia.org/wiki/Libjpeg">JPEG</ulink>,
<ulink url="http://www.libpng.org">PNG</ulink>, and
<ulink url="http://www.libtiff.org">TIFF</ulink> image
loading libraries are needed to compile GTK+. You probably
already have these libraries installed, but if not, the
versions you need are available in the
<filename>dependencies</filename> directory on the the
<ulink url="ftp://ftp.gtk.org/pub/gtk/v2.10/dependencies/">GTK+
FTP site.</ulink>. (Before installing these libraries
from source, you should check if your operating system
vendor has prebuilt packages of these libraries that you
don't have installed.)
</para>
</listitem>
<listitem>
<para>
The libraries from the X window system are needed to build
@@ -246,10 +231,16 @@ How to compile GTK+ itself
<para>
<ulink url="http://www.cairographics.org">Cairo</ulink>
is a graphics library that supports vector graphics and image
compositing. Both Pango and GTK+ use cairo for much of their
compositing. Both Pango and GTK+ use cairo for all of their
drawing.
</para>
</listitem>
<listitem>
<para>
The GdkPixbuf library provides facilities for loading
images in a variety of file formats.
</para>
</listitem>
<listitem>
<para>
<ulink url="http://live.gnome.org/GObjectIntrospection">gobject-introspection</ulink>
@@ -289,8 +280,8 @@ How to compile GTK+ itself
<literal>make install</literal> mentioned above. If you're
lucky, this will all go smoothly, and you'll be ready to
<link linkend="gtk-compiling">start compiling your own GTK+
applications</link>. You can test your GTK+ installation
by running the <command>gtk-demo</command> program that
applications</link>. You can test your GTK+ installation
by running the <command>gtk3-demo</command> program that
GTK+ installs.
</para>
<para>
@@ -318,53 +309,76 @@ How to compile GTK+ itself
<cmdsynopsis>
<command>configure</command>
<sbr/>
<group>
<arg>--disable-modules</arg>
<arg>--enable-modules</arg>
</group>
<sbr/>
<group>
<arg>--with-included-immodules=MODULE1,MODULE2,...</arg>
</group>
<sbr/>
<group>
<arg>--enable-debug=[no|minimum|yes]</arg>
<arg>--enable-debug=[no/minimum/yes]</arg>
</group>
<sbr/>
<group>
<arg>--disable-Bsymbolic</arg>
<arg>--enable-Bsymbolic</arg>
</group>
<group>
<arg>--disable-shm</arg>
<arg>--enable-shm</arg>
</group>
<sbr/>
<group>
<arg>--disable-xkb</arg>
<arg>--enable-xkb</arg>
</group>
<sbr/>
<group>
<arg>--disable-xinerama</arg>
<arg>--enable-xinerama</arg>
</group>
<sbr/>
<group>
<arg>--disable-gtk-doc</arg>
<arg>--enable-gtk-doc</arg>
</group>
<sbr/>
<group>
<arg>--disable-cups</arg>
<arg>--enable-cups</arg>
</group>
<sbr/>
<group>
<arg>--disable-papi</arg>
<arg>--enable-papi</arg>
</group>
<sbr/>
<group>
<arg>--with-xinput=[no|yes]</arg>
<arg>--enable-xinput</arg>
<arg>--disable-xinput</arg>
</group>
<sbr/>
<group>
<arg>--with-gdktarget=[x11|win32|quartz]</arg>
<arg>--enable-packagekit</arg>
<arg>--disable-packagekit</arg>
</group>
<sbr/>
<group>
<arg>--disable-introspection</arg>
<arg>--enable-x11-backend</arg>
<arg>--disable-x11-backend</arg>
<arg>--enable-win32-backend</arg>
<arg>--disable-win32-backend</arg>
<arg>--enable-quartz-backend</arg>
<arg>--disable-quartz-backend</arg>
</group>
<sbr/>
<group>
<arg>--enable-introspection=[no/auto/yes]</arg>
</group>
<sbr/>
<group>
<arg>--enable-gtk2-dependency</arg>
<arg>--disable-gtk2-dependency</arg>
</group>
</cmdsynopsis>
</para>
@@ -375,14 +389,14 @@ How to compile GTK+ itself
<para>
Normally GTK+ will try to build the input method modules
as little shared libraries that are loaded on
demand. The <systemitem>--disable-modules</systemitem>
argument indicates that they should all be built statically
into the GTK+ library instead. This is useful for
people who need to produce statically-linked binaries. If
neither <systemitem>--disable-modules</systemitem> nor
<systemitem>--enable-modules</systemitem> is specified, then
the <command>configure</command> script will try to
as little shared libraries that are loaded on demand.
The <systemitem>--disable-modules</systemitem> argument
indicates that they should all be built statically
into the GTK+ library instead. This is useful for
people who need to produce statically-linked binaries.
If neither <systemitem>--disable-modules</systemitem> nor
<systemitem>--enable-modules</systemitem> is specified,
then the <command>configure</command> script will try to
auto-detect whether shared modules work on your system.
</para>
</formalpara>
@@ -392,7 +406,8 @@ How to compile GTK+ itself
<para>
This option allows you to specify which input method modules you
want to include.
want to include directly into the GTK+ shared library, as opposed
to building them as loadable modules.
</para>
</formalpara>
@@ -400,10 +415,9 @@ How to compile GTK+ itself
<title><systemitem>--enable-debug</systemitem></title>
<para>
Turns on various amounts of debugging support. Setting this to 'no'
disables g_assert(), g_return_if_fail(), g_return_val_if_fail() and
all cast checks between different object types. Setting it to 'minimum'
disables only cast checks. Setting it to 'yes' enables
Turns on various amounts of debugging support. Setting this to
'no' disables g_assert(), g_return_if_fail(), g_return_val_if_fail() and all cast checks between different object types. Setting it
to 'minimum' disables only cast checks. Setting it to 'yes' enables
<link linkend="GTK-Debug-Options">runtime debugging</link>.
The default is 'minimum'.
Note that 'no' is fast, but dangerous as it tends to destabilize
@@ -420,6 +434,8 @@ How to compile GTK+ itself
<para>
The option <systemitem>--disable-Bsymbolic</systemitem>
turns off the use of the -Bsymbolic-functions linker flag.
This is only necessary if you want to override GTK+ functions
by using <envar>LD_PRELOAD</envar>.
</para>
</formalpara>
@@ -448,17 +464,6 @@ How to compile GTK+ itself
</para>
</formalpara>
<formalpara>
<title><systemitem>--disable-shm</systemitem> and
<systemitem>--enable-shm</systemitem></title>
<para>
These options can be used to control whether GTK+ will use shared
memory to communicate with the X server when possible.
The default is 'yes'.
</para>
</formalpara>
<formalpara>
<title><systemitem>--disable-xkb</systemitem> and
<systemitem>--enable-xkb</systemitem></title>
@@ -484,6 +489,21 @@ How to compile GTK+ itself
</para>
</formalpara>
<formalpara>
<title><systemitem>--disable-xinput</systemitem> and
<systemitem>--enable-xinput</systemitem></title>
<para>
Controls whether GTK+ is built with support for the XInput
or XInput2 extension. These extensions provide an extended
interface to input devices such as graphics tablets.
When this support is compiled in, specially written
GTK+ programs can get access to subpixel positions,
multiple simultaneous input devices, and extra "axes"
provided by the device such as pressure and tilt
information.
</para>
</formalpara>
<formalpara>
<title><systemitem>--disable-gtk-doc</systemitem> and
<systemitem>--enable-gtk-doc</systemitem></title>
@@ -528,33 +548,54 @@ How to compile GTK+ itself
</formalpara>
<formalpara>
<title><systemitem>--with-xinput</systemitem></title>
<title><systemitem>--disable-packagekit</systemitem> and
<systemitem>--enable-packagekit</systemitem></title>
<para>
Controls whether GTK+ is built with support for the XInput
or XInput2 extension. These extensions provide an extended
interface to input devices such as graphics tablets.
When this support is compiled in, specially written
GTK+ programs can get access to subpixel positions,
multiple simultaneous input devices, and extra "axes"
provided by the device such as pressure and tilt
information.
By default the <command>configure</command> script will try
to build the PackageKit support for the open-with dialog if
the PackageKit libraries are found.
These options can be used to explicitly control whether
PackageKit support should be built.
</para>
</formalpara>
<formalpara>
<title><systemitem>--with-gdktarget</systemitem></title>
<title><systemitem>--enable-x11-backend</systemitem>,
<systemitem>--disable-x11-backend</systemitem>,
<systemitem>--enable-win32-backend</systemitem>,
<systemitem>--disable-win32-backend</systemitem>,
<systemitem>--enable-quartz-backend</systemitem>,
and <systemitem>--disable-quartz-backend</systemitem></title>
<para>
Toggles between the supported backends for GDK.
The default is x11, unless the platform is Windows, in which
case the default is win32. Other supported backends are
the quartz backend for OS X.
Enables specific backends for GDK. If none of these options
are given, the x11 backend will be enabled by default,
unless the platform is Windows, in which case the default is
win32. If any backend is explicitly enabled or disabled, no
other platform will be enabled automatically. Other
supported backends are the quartz backend for OS X.
</para>
</formalpara>
<formalpara>
<title><systemitem>--disable-introspection</systemitem></title>
<title><systemitem>--enable-introspection</systemitem></title>
<para>
Build without introspection support.
Build with or without introspection support.
The default is 'auto'.
</para>
</formalpara>
<formalpara>
<title><systemitem>--enable-gtk2-dependency</systemitem> or
<systemitem>--disable-gtk2-dependency</systemitem></title>
<para>
Whether to rely on an exiting gtk-update-icon-cache utility
instead of building our own. Distributions which are shipping
both GTK+ 2.x and GTK+ 3 may want to use this option to
avoid file conflicts between these packages.
The default is to build gtk-update-icon-cache.
</para>
</formalpara>
</refsect1>

View File

@@ -2,7 +2,7 @@
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
]>
<refentry id="gtk-compiling" revision="4 Feb 2001">
<refentry id="gtk-compiling">
<refmeta>
<refentrytitle>Compiling GTK+ Applications</refentrytitle>
<manvolnum>3</manvolnum>
@@ -32,7 +32,7 @@ your system may be different):
$ pkg-config --cflags gtk+-3.0
-pthread -I/usr/include/gtk-3.0 -I/usr/lib64/gtk-3.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12
$ pkg-config --libs gtk+-3.0
-pthread -lgtk-x11-3.0 -lgdk-x11-3.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-3.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0
-pthread -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lglib-2.0
</programlisting>
</para>
<para>
@@ -69,24 +69,5 @@ define the preprocessor symbol GDK_MULTIDEVICE_SAFE by using the command
line option <literal>-DGTK_MULTIDEVICE_SAFE=1</literal>.
</para>
<para>
The recommended way of using GTK+ has always been to only include the
toplevel headers <filename>gtk.h</filename>, <filename>gdk.h</filename>,
<filename>gdk-pixbuf.h</filename>.
If you want to make sure that your program follows this recommended
practise, you can define the preprocessor symbols GTK_DISABLE_SINGLE_INCLUDES
and GDK_PIXBUF_DISABLE_SINGLE_INCLUDES to make GTK+ generate an error
when individual headers are directly included.
There are some exceptions: <filename>gdkkeysyms.h</filename> is not included in
<filename>gdk.h</filename> because the file is quite large; see
<link linkend="gdk-Keyboard-Handling">Key Values documentation</link>.
<filename>gdkx.h</filename> must be included independently because It's
platform-specific; see
<link linkend="gdk-X-Window-System-Interaction">X Window System Interaction</link>
documentation.
The same for <filename>gtkunixprint.h</filename> if you use the non-portable
<link linkend="GtkPrintUnixDialog">GtkPrintUnixDialog</link> API.
</para>
</refsect1>
</refentry>

View File

@@ -0,0 +1,237 @@
<?xml version="1.0"?>
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
]>
<chapter id="gtk-getting-started" xmlns:xi="http://www.w3.org/2003/XInclude">
<title>Getting Started with GTK+</title>
<para>This chapter is contains some tutorial information to get you
started with GTK+ programming. It assumes that you have GTK+, its
dependencies and a C compiler installed and ready to use. If you
need to build GTK+ itself first, refer to the
<link linkend="gtk-compiling">Compiling the GTK+ libraries</link>
section in this reference.</para>
<simplesect>
<title>Basics</title>
<para>To begin our introduction to GTK, we'll start with the simplest
program possible. This program will create an empty 200x200 pixel
window:</para>
<para>
<inlinegraphic fileref="window-default.png" format="PNG"></inlinegraphic>
</para>
<informalexample><programlisting>
<xi:include href="../../../../examples/window-default.c" parse="text">
<xi:fallback>FIXME: MISSING XINCLUDE CONTENT</xi:fallback>
</xi:include>
</programlisting></informalexample>
<para>You can compile the program above with GCC using:</para>
<para><literallayout>
<literal>gcc `pkg-config --cflags gtk+-3.0` -o window-default window-default.c `pkg-config --libs gtk+-3.0`</literal>
</literallayout></para>
<note><para>For more information on how to compile a GTK+ application, please
refer to the <link linkend="gtk-compiling">Compiling GTK+ Applications</link>
section in this reference.</para></note>
<para>All GTK+ applications will, of course, include
<filename>gtk/gtk.h</filename>, which declares functions, types and
macros required by GTK+ applications.</para>
<warning><para>Even if GTK+ installs multiple header files, only the
top-level <filename>gtk/gtk.h</filename> header can be directly included
by third party code. The compiler will abort with an error if any other
header is directly included.</para></warning>
<para>We then proceed into the <function>main</function>() function of the
application, and we declare a <varname>window</varname> variable as a pointer
of type #GtkWidget.</para>
<para>The following line will call gtk_init(), which
is the initialization function for GTK+; this function will set up GTK+,
the type system, the connection to the windowing environment, etc. The
gtk_init() takes as arguments the pointers to the command line arguments
counter and string array; this allows GTK+ to parse specific command line
arguments that control the behavior of GTK+ itself. The parsed arguments
will be removed from the array, leaving the unrecognized ones for your
application to parse.</para>
<note><para>For more information on which command line arguments GTK+
recognizes, please refer to the <link linkend="gtk-running">Running GTK+
Applications</link> section in this reference.</para></note>
<para>The call to gtk_window_new() will create a new #GtkWindow and store
it inside the <varname>window</varname> variable. The type of the window
is %GTK_WINDOW_TOPLEVEL, which means that the #GtkWindow will be managed
by the windowing system: it will have a frame, a title bar and window
controls, depending on the platform.</para>
<para>In order to terminate the application when the #GtkWindow is
destroyed, we connect the #GtkWidget::destroy signal to the gtk_main_quit()
function. This function will terminate the GTK+ main loop started by calling
gtk_main() later. The #GtkWidget::destroy signal is emitted when a widget is
destroyed, either by explicitly calling gtk_widget_destroy() or when the
widget is unparented. Top-level #GtkWindow<!-- -->s are also destroyed when
the Close window control button is clicked.</para>
<para>#GtkWidget<!-- -->s are hidden by default. By calling gtk_widget_show()
on a #GtkWidget we are asking GTK+ to set the visibility attribute so that it
can be displayed. All this work is done after the main loop has been
started.</para>
<para>The last line of interest is the call to gtk_main(). This function will
start the GTK+ main loop and will block the control flow of the
main() until the gtk_main_quit() function is called.</para>
<para>While the program is running, GTK+ is receiving
<firstterm>events</firstterm>. These are typically input events caused by
the user interacting with your program, but also things like messages from
the window manager or other applications. GTK+ processes these and as a
result, <firstterm>signals</firstterm> may be emitted on your widgets.
Connecting handlers for these signals is how you normally make your
program do something in response to user input.</para>
<para>The following example is slightly more complex, and tries to
showcase some of the capabilities of GTK+.</para>
<para>In the long tradition of programming languages and libraries,
it is called <emphasis>Hello, World</emphasis>.</para>
<para>
<inlinegraphic fileref="hello-world.png" format="PNG"></inlinegraphic>
</para>
<example id="gtk-getting-started-hello-world">
<title>Hello World in GTK+</title>
<programlisting>
<xi:include href="../../../../examples/hello-world.c" parse="text">
<xi:fallback>FIXME: MISSING XINCLUDE CONTENT</xi:fallback>
</xi:include>
</programlisting>
</example>
</simplesect>
<simplesect>
<title>Packing</title>
<para>When creating an application, you'll want to put more than one widget
inside a window. Our first helloworld example only used one widget so we
could simply use a gtk_container_add() call to "pack" the widget into the
window. But when you want to put more than one widget into a window, it
it becomes important to control how each widget is positioned and sized.
This is where packing comes in.</para>
<para>GTK+ comes with a large variety of <firstterm>layout containers</firstterm>
whose purpose it is to control the layout of the child widgets that are
added to them. See <xref linkend="LayoutContainers"/> for an overview.</para>
<para>The following example shows how the GtkGrid container lets you
arrange several buttons:</para>
<para>
<inlinegraphic fileref="grid-packing.png" format="PNG"></inlinegraphic>
</para>
<example id="gtk-getting-started-grid-packing">
<title>Packing buttons</title>
<programlisting>
<xi:include href="../../../../examples/grid-packing.c" parse="text">
<xi:fallback>FIXME: MISSING XINCLUDE CONTENT</xi:fallback>
</xi:include>
</programlisting>
</example>
</simplesect>
<simplesect>
<title>Drawing</title>
<para>Many widgets, like buttons, do all their drawing themselves. You
just tell them the label you want to see, and they figure out what font
to use, draw the button outline and focus rectangle, etc. Sometimes, it
is necessary to do some custom drawing. In that case, a #GtkDrawingArea
might be the right widget to use. It offers a canvas on which you can
draw by connecting to the #GtkWidget::draw signal.
</para>
<para>The contents of a widget often need to be partially or fully redrawn,
e.g. when another window is moved and uncovers part of the widget, or
when tie window containing it is resized. It is also possible to explicitly
cause part or all of the widget to be redrawn, by calling
gtk_widget_queue_draw() or its variants. GTK+ takes care of most of the
details by providing a ready-to-use cairo context to the ::draw signal
handler.</para>
<para>The following example shows a ::draw signal handler. It is a bit
more complicated than the previous examples, since it also demonstrates
input event handling by means of ::button-press and ::motion-notify
handlers.</para>
<para>
<inlinegraphic fileref="drawing.png" format="PNG"></inlinegraphic>
</para>
<example id="gtk-getting-started-drawing">
<title>Drawing in response to input</title>
<programlisting>
<xi:include href="../../../../examples/drawing.c" parse="text">
<xi:fallback>FIXME: MISSING XINCLUDE CONTENT</xi:fallback>
</xi:include>
</programlisting>
</example>
</simplesect>
<simplesect>
<title>Building interfaces</title>
<para>When construcing a more complicated user interface, with dozens
or hundreds of widgets, doing all the setup work in C code is
cumbersome, and making changes becomes next to impossible.</para>
<para>Thankfully, GTK+ supports the separation of user interface
layout from your business logic, by using UI descriptions in an
XML format that can be parsed by the #GtkBuilder class.</para>
<example>
<title>Packing buttons with GtkBuilder</title>
<programlisting>
<xi:include href="../../../../examples/builder.c" parse="text">
<xi:fallback>FIXME: MISSING XINCLUDE CONTENT</xi:fallback>
</xi:include>
</programlisting>
The builder.ui file looks like this:
<programlisting>
<xi:include href="../../../../examples/builder.ui" parse="text">
<xi:fallback>FIXME: MISSING XINCLUDE CONTENT</xi:fallback>
</xi:include>
</programlisting>
</example>
<para>Note that GtkBuilder can also be used to construct objects
that are not widgets, such as tree models, adjustments, etc.
That is the reason the method we use here is called
gtk_builder_get_object() and returns a GObject* instead of a
GtkWidget*.</para>
<para>Normally, you would pass a full path to
gtk_builder_add_from_file() to make the execution of your program
independent of the current directory. A common location to install
UI descriptions and similar data is
<filename>/usr/share/<replaceable>appname</replaceable></filename>.
</para>
<para>It is also possible to embed the UI description in the source
code as a string and use gtk_builder_add_from_string() to load it.
But keeping the UI description in a separate file has several
advantages: It is then possible to make minor adjustments to the UI
without recompiling your program, and, more importantly, graphical
UI editors such as <ulink url="http://glade.gnome.org">glade</ulink>
can load the file and allow you to create and modify your UI by
point-and-click.</para>
</simplesect>
</chapter>

View File

@@ -1,61 +0,0 @@
<refentry id="gtk-builder-convert">
<refmeta>
<refentrytitle>gtk-builder-convert-3.0</refentrytitle>
<manvolnum>1</manvolnum>
</refmeta>
<refnamediv>
<refname>gtk-builder-convert-3.0</refname>
<refpurpose>Glade file conversion utility</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>gtk-builder-convert-3.0</command>
<arg choice="opt">--skip-windows</arg>
<arg choice="opt">--root <replaceable>name</replaceable></arg>
<arg choice="req">input</arg>
<arg choice="req">output</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1><title>Description</title>
<para><command>gtk-builder-convert-3.0</command> converts glade files
into XML files which can be loaded with GtkBuilder.
</para>
<para>
It expects the name of a glade file as the first argument, and writes
its output the file specified as the second argument.
</para>
</refsect1>
<refsect1><title>Options</title>
<variablelist>
<varlistentry>
<term>--skip-windows</term>
<term>-w</term>
<listitem><para>Convert everything but GtkWindow subclasses.</para></listitem>
</varlistentry>
<varlistentry>
<term>--root</term>
<term>-r</term>
<listitem><para>Convert only the widget named <replaceable>name</replaceable>
and its children.</para></listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1><title>Bugs</title>
<para>
Toolbars are not handled.
</para>
<para>
Support for accessibility is not yet implemented.
</para>
<para>
The script requires a python interpreter to run.
</para>
</refsect1>
</refentry>

View File

@@ -3,115 +3,27 @@
"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
<!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'">
<!ENTITY version SYSTEM "version.xml">
<!ENTITY pi "&#960;">
<!ENTITY solidus "&#8260;">
]>
<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">
<bookinfo>
<title>GTK+ Reference Manual</title>
<title>GTK+ 3 Reference Manual</title>
<releaseinfo>
for GTK+ &version;
The latest version of this documentation can be found on-line at
<ulink role="online-location" url="http://library.gnome.org/devel/gtk/unstable/">http://library.gnome.org/devel/gtk/unstable/</ulink>.
This document is for the GTK+ 3 library, version &version;.
The latest version can be found online at
<ulink role="online-location" url="http://library.gnome.org/devel/gtk3/unstable/">http://library.gnome.org/devel/gtk3/unstable/</ulink>.
If you are looking for the older GTK+ 2 series of libraries,
they can be found under their version numbers; for example,
2.24 is available at
<ulink role="online-location" url="http://library.gnome.org/devel/gtk/2.24/">http://library.gnome.org/devel/gtk/2.24/</ulink>.
</releaseinfo>
</bookinfo>
<part id="gtk">
<title>GTK+ Overview</title>
<partintro>
<para>
GTK+ is a library for creating graphical user interfaces. It
works on many UNIX-like platforms, Windows, and on framebuffer
devices. 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+ depends on the following libraries:
<variablelist>
<varlistentry>
<term>GLib</term>
<listitem><para>
A general-purpose utility library, not specific to graphical user interfaces.
GLib provides many useful data types, macros, type conversions,
string utilities, file utilities, a main loop abstraction, and so on.
</para></listitem>
</varlistentry>
<varlistentry>
<term>GObject</term>
<listitem><para>A library that provides a type system, a collection of
fundamental types including an object type, a signal system.
</para></listitem>
</varlistentry>
<varlistentry>
<term>GIO</term>
<listitem><para>A modern, easy-to-use VFS API including abstractions for
files, drives, volumes, stream IO, as well as network programming and
DBus communication.
</para></listitem>
</varlistentry>
<varlistentry>
<term>cairo</term>
<listitem><para>Cairo is a 2D graphics library with support for multiple
output devices.
</para></listitem>
</varlistentry>
<varlistentry>
<term>Pango</term>
<listitem><para>
Pango is a library for internationalized text handling. It centers
around the #PangoLayout object, representing a paragraph of text.
Pango provides the engine for #GtkTextView, #GtkLabel, #GtkEntry, and
other widgets that display text.
</para></listitem>
</varlistentry>
<varlistentry>
<term>ATK</term>
<listitem><para>
ATK is the Accessibility Toolkit. It provides a set of generic
interfaces allowing accessibility technologies to interact with a
graphical user interface. For example, a screen reader uses ATK to
discover the text in an interface and read it to blind users. GTK+
widgets have built-in support for accessibility using the ATK
framework.
</para></listitem>
</varlistentry>
<varlistentry>
<term>GdkPixbuf</term>
<listitem><para>
This is a small library which allows you to create #GdkPixbuf
("pixel buffer") objects from image data or image files.
Use a #GdkPixbuf in combination with #GtkImage to display images.
</para></listitem>
</varlistentry>
<varlistentry>
<term>GDK</term>
<listitem><para>
GDK is the abstraction layer that allows GTK+ to support multiple
windowing systems. GDK provides drawing and window system facilities
on X11, Windows, and the Linux framebuffer device.
</para></listitem>
</varlistentry>
<varlistentry>
<term>GTK+</term>
<listitem><para>
The GTK+ library itself contains <firstterm>widgets</firstterm>,
that is, GUI components such as #GtkButton or #GtkTextView.
</para></listitem>
</varlistentry>
</variablelist>
</para>
</partintro>
<xi:include href="overview.xml"/>
<xi:include href="xml/getting_started.xml"/>
<xi:include href="building.sgml" />
<xi:include href="compiling.sgml" />
<xi:include href="running.sgml" />
@@ -127,24 +39,37 @@ that is, GUI components such as #GtkButton or #GtkTextView.
<part id="gtkbase">
<title>GTK+ Core Reference</title>
<xi:include href="xml/gtkmain.xml" />
<xi:include href="xml/gtkfeatures.xml" />
<xi:include href="xml/gtkaccelgroup.xml" />
<xi:include href="xml/gtkaccelmap.xml" />
<xi:include href="xml/gtkclipboard.xml" />
<xi:include href="xml/gtkdnd.xml" />
<xi:include href="xml/gtkicontheme.xml" />
<xi:include href="xml/gtkstock.xml" />
<xi:include href="xml/gtkiconfactory.xml" />
<xi:include href="xml/gtkrc.xml" />
<xi:include href="xml/gtksettings.xml" />
<xi:include href="xml/gtkbindings.xml" />
<xi:include href="xml/gtkenums.xml" />
<xi:include href="xml/gtkstyle.xml" />
<xi:include href="xml/gtkselection.xml" />
<xi:include href="xml/gtkfeatures.xml" />
<xi:include href="xml/gtktesting.xml" />
<xi:include href="xml/filesystem.xml" />
</part>
<part id="theming">
<title>Theming in GTK+</title>
<xi:include href="xml/gtkstylecontext.xml" />
<xi:include href="xml/gtkcssprovider.xml" />
<xi:include href="xml/gtkstyleprovider.xml" />
<xi:include href="xml/gtkstyleproperties.xml" />
<xi:include href="xml/gtkthemingengine.xml" />
<xi:include href="xml/gtkwidgetpath.xml" />
<xi:include href="xml/gtksymboliccolor.xml" />
<xi:include href="xml/gtkgradient.xml" />
<xi:include href="xml/gtkicontheme.xml" />
<xi:include href="xml/gtkiconfactory.xml" />
<xi:include href="xml/gtknumerableicon.xml" />
<xi:include href="xml/gtkrc.xml" />
<xi:include href="xml/gtkstyle.xml" />
</part>
<part id="gtkobjects">
<title>GTK+ Widgets and Objects</title>
@@ -191,6 +116,7 @@ that is, GUI components such as #GtkButton or #GtkTextView.
<xi:include href="xml/gtklinkbutton.xml" />
<xi:include href="xml/gtkscalebutton.xml" />
<xi:include href="xml/gtkvolumebutton.xml" />
<xi:include href="xml/gtkswitch.xml" />
</chapter>
<chapter id="NumericEntry">
@@ -230,6 +156,9 @@ that is, GUI components such as #GtkButton or #GtkTextView.
<xi:include href="xml/gtktreemodelsort.xml" />
<xi:include href="xml/gtktreemodelfilter.xml" />
<xi:include href="xml/gtkcelllayout.xml" />
<xi:include href="xml/gtkcellarea.xml" />
<xi:include href="xml/gtkcellareabox.xml" />
<xi:include href="xml/gtkcellareacontext.xml" />
<xi:include href="xml/gtkcellrenderer.xml" />
<xi:include href="xml/gtkcelleditable.xml" />
<xi:include href="xml/gtkcellrendereraccel.xml" />
@@ -247,7 +176,7 @@ that is, GUI components such as #GtkButton or #GtkTextView.
<chapter id="MenusAndCombos">
<title>Menus, Combo Box, Toolbar</title>
<xi:include href="xml/gtkcombobox.xml" />
<xi:include href="xml/gtkcomboboxentry.xml" />
<xi:include href="xml/gtkcomboboxtext.xml" />
<xi:include href="xml/gtkmenu.xml" />
<xi:include href="xml/gtkmenubar.xml" />
<xi:include href="xml/gtkmenuitem.xml" />
@@ -297,6 +226,7 @@ that is, GUI components such as #GtkButton or #GtkTextView.
<chapter id="LayoutContainers">
<title>Layout Containers</title>
<xi:include href="xml/gtkgrid.xml" />
<xi:include href="xml/gtkalignment.xml" />
<xi:include href="xml/gtkaspectframe.xml" />
<xi:include href="xml/gtkbox.xml" />
@@ -305,7 +235,6 @@ that is, GUI components such as #GtkButton or #GtkTextView.
<xi:include href="xml/gtkbbox.xml" />
<xi:include href="xml/gtkhbbox.xml" />
<xi:include href="xml/gtkvbbox.xml" />
<xi:include href="xml/gtkwrapbox.xml" />
<xi:include href="xml/gtkfixed.xml" />
<xi:include href="xml/gtkpaned.xml" />
<xi:include href="xml/gtkhpaned.xml" />
@@ -315,7 +244,6 @@ that is, GUI components such as #GtkButton or #GtkTextView.
<xi:include href="xml/gtktable.xml" />
<xi:include href="xml/gtkexpander.xml" />
<xi:include href="xml/gtkorientable.xml" />
<xi:include href="xml/gtksizerequest.xml" />
</chapter>
<chapter id="Ornaments">
@@ -332,6 +260,7 @@ that is, GUI components such as #GtkButton or #GtkTextView.
<xi:include href="xml/gtkhscrollbar.xml" />
<xi:include href="xml/gtkvscrollbar.xml" />
<xi:include href="xml/gtkscrolledwindow.xml" />
<xi:include href="xml/gtkscrollable.xml" />
</chapter>
<chapter id="Printing">
@@ -365,12 +294,12 @@ that is, GUI components such as #GtkButton or #GtkTextView.
<chapter id="AbstractObjects">
<title>Abstract Base Classes</title>
<xi:include href="xml/gtkbin.xml" />
<xi:include href="xml/gtkwidget.xml" />
<xi:include href="xml/gtkcontainer.xml" />
<xi:include href="xml/gtkbin.xml" />
<xi:include href="xml/gtkmenushell.xml" />
<xi:include href="xml/gtkmisc.xml" />
<xi:include href="xml/gtkrange.xml" />
<xi:include href="xml/gtkwidget.xml" />
<xi:include href="xml/gtkimcontext.xml" />
</chapter>
@@ -380,13 +309,6 @@ that is, GUI components such as #GtkButton or #GtkTextView.
<xi:include href="xml/gtksocket.xml" />
</chapter>
<chapter id="SpecialObjects">
<title>Special-purpose features</title>
<xi:include href="xml/gtkruler.xml" />
<xi:include href="xml/gtkhruler.xml" />
<xi:include href="xml/gtkvruler.xml" />
</chapter>
<chapter id="RecentDocuments">
<title>Recently Used Documents</title>
<xi:include href="xml/gtkrecentmanager.xml" />
@@ -397,6 +319,14 @@ that is, GUI components such as #GtkButton or #GtkTextView.
<xi:include href="xml/gtkrecentfilter.xml" />
</chapter>
<chapter id="ApplicationChoosing">
<title>Choosing from installed applications</title>
<xi:include href="xml/gtkappchooser.xml" />
<xi:include href="xml/gtkappchooserbutton.xml" />
<xi:include href="xml/gtkappchooserdialog.xml" />
<xi:include href="xml/gtkappchooserwidget.xml" />
</chapter>
<chapter id="Builder">
<title>Interface builder</title>
<xi:include href="xml/gtkbuildable.xml" />
@@ -424,13 +354,14 @@ that is, GUI components such as #GtkButton or #GtkTextView.
<xi:include href="xml/migrating-checklist.sgml" />
<xi:include href="xml/migrating-2to3.xml" />
<xi:include href="xml/migrating-GtkApplication.xml" />
<xi:include href="xml/migrating-GtkStyleContext.xml" />
</part>
<part>
<title>GTK+ Tools</title>
<xi:include href="gtk-query-immodules-3.0.xml" />
<xi:include href="gtk-update-icon-cache-3.0.xml" />
<xi:include href="gtk-builder-convert-3.0.xml" />
<xi:include href="gtk-update-icon-cache.xml" />
</part>
<xi:include href="glossary.xml" />

View File

@@ -2,16 +2,17 @@
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
]>
<refentry id="gtk-query-immodules">
<refentry id="gtk-query-immodules-3.0">
<refmeta>
<refentrytitle>gtk-query-immodules-3.0</refentrytitle>
<manvolnum>1</manvolnum>
<refentrytitle>gtk-query-immodules-3.0</refentrytitle>
<manvolnum>1</manvolnum>
<refmiscinfo class="manual">User Commands</refmiscinfo>
</refmeta>
<refnamediv>
<refname>gtk-query-immodules-3.0</refname>
<refpurpose>Input method module registration utility</refpurpose>
<refname>gtk-query-immodules-3.0</refname>
<refpurpose>Input method module registration utility</refpurpose>
</refnamediv>
<refsynopsisdiv>
@@ -38,8 +39,8 @@ may be absolute or relative paths.
</para>
<para>
Normally, the output of <command>gtk-query-immodules-3.0</command> is written
to <filename><replaceable>libdir</replaceable>gtk-3.0/3.0.0/immodules.cache</filename>, where GTK+ looks for it by default. If it is written to some other
location, the environment variable <link linkend="GTK_IM_MODULE_FILE"><envar>GTK_IM_MODULE_FILE</envar></link>
to <filename><replaceable>libdir</replaceable>/gtk-3.0/3.0.0/immodules.cache</filename>, where GTK+ looks for it by default. If it is written to some other
location, the environment variable <link linkend="gtk-im-module-file"><envar>GTK_IM_MODULE_FILE</envar></link>
can be set to point GTK+ at the file.
</para>
</refsect1>
@@ -56,7 +57,7 @@ can be set to point GTK+ at the file.
<refsect1><title>Environment</title>
<para>
The environment variable <link linkend="GTK_PATH"><envar>GTK_PATH</envar></link>
The environment variable <link linkend="gtk-path"><envar>GTK_PATH</envar></link>
can be used to prepend directories to the input method module path.
</para>
</refsect1>

View File

@@ -5,43 +5,45 @@
<refentry id="gtk-update-icon-cache">
<refmeta>
<refentrytitle>gtk-update-icon-cache-3.0</refentrytitle>
<manvolnum>1</manvolnum>
<refentrytitle>gtk-update-icon-cache</refentrytitle>
<manvolnum>1</manvolnum>
<refmiscinfo class="manual">User Commands</refmiscinfo>
</refmeta>
<refnamediv>
<refname>gtk-update-icon-cache-3.0</refname>
<refpurpose>Icon theme caching utility</refpurpose>
<refname>gtk-update-icon-cache</refname>
<refpurpose>Icon theme caching utility</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>gtk-update-icon-cache-3.0</command>
<command>gtk-update-icon-cache</command>
<arg choice="opt">--force</arg>
<arg choice="opt">--ignore-theme-index</arg>
<arg choice="opt">--index-only</arg>
<arg choice="opt">--source<arg>name</arg></arg>
<arg choice="opt">--source <arg choice="plain"><replaceable>NAME</replaceable></arg></arg>
<arg choice="opt">--quiet</arg>
<arg choice="opt">--validate</arg>
<arg choice="req">iconpath</arg>
<arg choice="plain"><replaceable>PATH</replaceable></arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1><title>Description</title>
<para>
<command>gtk-update-icon-cache-3.0</command> creates mmap()able cache
<command>gtk-update-icon-cache</command> creates mmapable cache
files for icon themes.
</para>
<para>
It expects to be given the path to a icon theme directory containing an
<filename>index.theme</filename>, e.g. <filename>/usr/share/icons/hicolor</filename>,
and writes a <filename>icon-theme.cache</filename> containing cached
information about the icons in the directory tree below the given directory.
It expects to be given the <replaceable>PATH</replaceable> to a icon theme
directory containing an <filename>index.theme</filename>, e.g.
<filename>/usr/share/icons/hicolor</filename>, and writes a
<filename>icon-theme.cache</filename> containing cached information about
the icons in the directory tree below the given directory.
</para>
<para>
GTK+ can use the cache files created by <command>gtk-update-icon-cache-3.0</command>
GTK+ can use the cache files created by <command>gtk-update-icon-cache</command>
to avoid a lot of system call and disk seek overhead when the application
starts. Since the format of the cache files allows them to be mmap()ed
starts. Since the format of the cache files allows them to be mmaped
shared between multiple applications, the overall memory consumption is
reduced as well.
</para>
@@ -59,8 +61,8 @@
<varlistentry>
<term>--ignore-theme-index</term>
<term>-t</term>
<listitem><para>Don't check for the existence of 'index.theme' in the icon
theme directory. Without this option, <command>gtk-update-icon-cache-3.0</command>
<listitem><para>Don't check for the existence of <filename>index.theme</filename>
in the icon theme directory. Without this option, <command>gtk-update-icon-cache</command>
refuses to create an icon cache in a directory which does not appear to
be the toplevel directory of an icon theme.
</para></listitem>
@@ -77,7 +79,7 @@
<term>--source</term>
<term>-c</term>
<listitem><para>Output a C header file declaring a constant
<replaceable>name</replaceable> with the contents of the icon
<replaceable>NAME</replaceable> with the contents of the icon
cache.</para></listitem>
</varlistentry>
@@ -104,5 +106,3 @@ None known yet.
</refsect1>
</refentry>

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
#include <gtk/gtk.h>
#include <gtk/gtkx.h>
#include <gtk/gtkunixprint.h>
gtk_about_dialog_get_type
@@ -11,6 +11,10 @@ gtk_action_group_get_type
gtk_activatable_get_type
gtk_adjustment_get_type
gtk_alignment_get_type
gtk_app_chooser_get_type
gtk_app_chooser_button_get_type
gtk_app_chooser_dialog_get_type
gtk_app_chooser_widget_get_type
gtk_application_get_type
gtk_arrow_get_type
gtk_aspect_frame_get_type
@@ -22,6 +26,9 @@ gtk_buildable_get_type
gtk_button_box_get_type
gtk_button_get_type
gtk_calendar_get_type
gtk_cell_area_get_type
gtk_cell_area_box_get_type
gtk_cell_area_context_get_type
gtk_cell_editable_get_type
gtk_cell_layout_get_type
gtk_cell_renderer_accel_get_type
@@ -40,9 +47,10 @@ gtk_clipboard_get_type
gtk_color_button_get_type
gtk_color_selection_dialog_get_type
gtk_color_selection_get_type
gtk_combo_box_entry_get_type
gtk_combo_box_get_type
gtk_combo_box_text_get_type
gtk_container_get_type
gtk_css_provider_get_type
gtk_dialog_get_type
gtk_drawing_area_get_type
gtk_editable_get_type
@@ -61,11 +69,11 @@ gtk_font_button_get_type
gtk_font_selection_dialog_get_type
gtk_font_selection_get_type
gtk_frame_get_type
gtk_grid_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
@@ -93,6 +101,7 @@ gtk_message_dialog_get_type
gtk_misc_get_type
gtk_mount_operation_get_type
gtk_notebook_get_type
gtk_numerable_icon_get_type
gtk_offscreen_window_get_type
gtk_orientable_get_type
gtk_page_setup_get_type
@@ -120,9 +129,9 @@ gtk_recent_chooser_dialog_get_type
gtk_recent_chooser_menu_get_type
gtk_recent_chooser_widget_get_type
gtk_recent_manager_get_type
gtk_ruler_get_type
gtk_scale_button_get_type
gtk_scale_get_type
gtk_scrollable_get_type
gtk_scrollbar_get_type
gtk_scrolled_window_get_type
gtk_separator_get_type
@@ -135,7 +144,10 @@ gtk_spin_button_get_type
gtk_spinner_get_type
gtk_statusbar_get_type
gtk_status_icon_get_type
gtk_switch_get_type
gtk_style_get_type
gtk_style_context_get_type
gtk_style_provider_get_type
gtk_table_get_type
gtk_tearoff_menu_item_get_type
gtk_text_buffer_get_type
@@ -145,6 +157,7 @@ gtk_text_mark_get_type
gtk_text_tag_get_type
gtk_text_tag_table_get_type
gtk_text_view_get_type
gtk_theming_engine_get_type
gtk_toggle_action_get_type
gtk_toggle_button_get_type
gtk_toggle_tool_button_get_type
@@ -169,11 +182,9 @@ gtk_vbutton_box_get_type
gtk_viewport_get_type
gtk_volume_button_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
gtk_window_group_get_type
gtk_wrap_box_get_type

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

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