Commit Graph

94 Commits

Author SHA1 Message Date
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
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
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
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
2f0d40335b [GI] Add missing (transfer) annotations 2011-01-20 13:57:18 +01: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
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
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
Matthias Clasen
f53ad33994 Remove GtkObject completely 2010-09-26 22:18:19 -04:00
Matthias Clasen
54077d61e2 Add some element-type annotations to gtk apis 2010-09-17 09:26:39 -04:00
Javier Jardón
7e520d908a Fix some compilation warnings
GScanner token field is declared as GTokenType instead a guint
See Glib bug: https://bugzilla.gnome.org/show_bug.cgi?id=627890

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=627962
2010-09-13 03:28:36 +02:00
Colin Walters
913cdf3be7 GDK: Prefix key names with KEY_
The keysyms create a lot of potential namespace conflicts for
C, and are especially problematic for introspection, where we take
constants into the namespace, so GDK_Display conflicts with GdkDisplay.

For C application compatiblity, add gdkkeysyms-compat.h which uses
the old names.

Just one user in GTK+ continues to use gdkkeysyms-compat.h, which is
the gtkimcontextsimple.c, since porting that requires porting more
custom Perl code.
2010-09-08 18:51:44 -04:00
Javier Jardón
0a07e9733b gtk/: fully remove gtkalias hacks
https://bugzilla.gnome.org/show_bug.cgi?id=623845
2010-07-10 02:51:26 +02:00
Christian Dywan
de29ee15c6 Remove deprecated gtk_binding_entry functions 2010-05-03 01:39:49 +02:00
Torsten Schoenfeld
0addda2028 [docs] Add some 'Since: 2.4' tags
This patch adds Since: 2.4 tags to gtk_bindings_activate_event,
gtk_window_propagate_key_event and gtk_window_activate_key.

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

Signed-off-by: Javier Jardón <jjardon@gnome.org>
2009-12-18 21:00:10 +01:00
Matthias Clasen
4ed4252613 Undeprecate gtk_binding_entry_add_signall
svn path=/trunk/; revision=22314
2009-02-11 15:52:37 +00:00
Matthias Clasen
de1c0176af Doc fixes
svn path=/trunk/; revision=21967
2008-12-29 03:20:56 +00:00
Matthias Clasen
fe9e09a542 Improve deprecation annotations
svn path=/trunk/; revision=21814
2008-11-29 06:31:17 +00:00
Matthias Clasen
f4f22e1c37 More doc fixes
svn path=/trunk/; revision=21281
2008-09-04 04:29:33 +00:00
Matthias Clasen
73e2b962bc More doc fixes
svn path=/trunk/; revision=21280
2008-09-04 04:28:13 +00:00
Matthias Clasen
54806ebe41 More doc fixes
svn path=/trunk/; revision=21279
2008-09-04 04:27:14 +00:00
Michael Natterer
888c3a72b5 move the code of the deprecated gtk_binding_entry_clear() to a new private
2008-08-04  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkbindings.c: move the code of the deprecated
	gtk_binding_entry_clear() to a new private function
	gtk_binding_entry_clear_internal() and call it from
	gtk_binding_entry_clear().

	(_gtk_binding_entry_add_signall)
	(gtk_binding_parse_bind): use the new internal function in order
	to avoid our own deprecated public API.


svn path=/trunk/; revision=20963
2008-08-04 11:08:33 +00:00
Michael Natterer
8a1bdcbe4a use gtk_box_pack_start() instead of the deprecated
2008-07-21  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkbox.c (gtk_box_add): use gtk_box_pack_start() instead of
	the deprecated gtk_box_pack_start_defaults().

	* gtk/gtkbindings.c (gtk_binding_entry_add_signal)
	(gtk_binding_parse_signal): use _gtk_binding_entry_add_signall()
	instead of the deprecated gtk_binding_entry_add_signall().


svn path=/trunk/; revision=20885
2008-07-21 14:35:51 +00:00
Michael Natterer
7f00695920 remove _gtk_binding_signal_new().
2008-07-21  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkbindings.[ch]: remove _gtk_binding_signal_new().

	* gtk/gtkfilechooserdefault.c
	* gtk/gtkmenu.c
	* gtk/gtkmenushell.c
	* gtk/gtkscalebutton.c
	* gtk/gtktextview.c
	* gtk/gtktoolbar.c
	* gtk/gtkwidget.c: use g_signal_new_class_handler() instead. Add
	some missing I_() to the signal names.


svn path=/trunk/; revision=20874
2008-07-21 09:48:20 +00:00
Cody Russell
57223c9a05 Revert name change
svn path=/trunk/; revision=20724
2008-07-01 22:57:50 +00:00
Cody Russell
fce9c8b7d4 Practically everything changed.
2008-06-30  Cody Russell  <bratsche@gnome.org>

        * Practically everything changed.

        Change	all references	of GIMP	Toolkit	(and variations	of it)
        to GTK+	Toolkit, showing no mercy at all to our	beloved
	ancestry. (#540529)


svn path=/trunk/; revision=20709
2008-06-30 23:01:56 +00:00
Johan Dahlin
d97cdbdf53 Include "config.h" instead of <config.h> Command used: find -name
2008-06-21  Johan Dahlin  <jdahlin@async.com.br>

    * *.[ch]: Include "config.h" instead of <config.h>
    Command used:
    find -name \*.[ch]|xargs perl -p -i -e 's/^#include <config.h>/#include "config.h"/g'
    Rubberstamped by Mitch and Tim


svn path=/trunk/; revision=20669
2008-06-22 14:28:52 +00:00
Michael Natterer
554e1eec70 s/GtkType/GType/
2008-06-17  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkbindings.c (gtk_binding_entry_add_signal):
	* gtk/gtktoolbutton.c (gtk_tool_button_get_type): 
	* examples/gtkdial/gtkdial.h (gtk_dial_get_type): 
	s/GtkType/GType/


svn path=/trunk/; revision=20436
2008-06-17 20:43:07 +00:00
Michael Natterer
f5f865d43c use gtk_binding_entry_clear() instead of gtk_binding_entry_add() (the
2008-06-16  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkbindings.c (_gtk_binding_entry_add_signall): use
	gtk_binding_entry_clear() instead of gtk_binding_entry_add()
	(the former is deprecated and #defined to gtk_binding_entry_clear)


svn path=/trunk/; revision=20408
2008-06-16 20:02:33 +00:00
Matthias Clasen
6608fbfd36 Small doc fixes
svn path=/trunk/; revision=18451
2007-07-12 00:57:23 +00:00
Matthias Clasen
45f6f399f5 Remove an obsolete comment
svn path=/trunk/; revision=17491
2007-03-12 05:41:53 +00:00
Tim Janik
f58c280d21 document gtk_binding_entry_skip().
Wed Oct 11 14:31:30 2006  Tim Janik  <timj@imendio.com>

        * docs/reference/gtk/gtk-sections.txt:
        * gtk/gtkbindings.c: document gtk_binding_entry_skip().
2006-10-11 12:32:26 +00:00
Tim Janik
ac1c7a0680 applied patch from Michael Natterer to move to inline docs. applied
Tue Oct 10 16:38:23 2006  Tim Janik  <timj@imendio.com>

        * gtk/tmpl/gtkbindings.sgml:
        * gtk/gtkbindings.c: applied patch from Michael Natterer to move to
        inline docs. applied wording fixes suggested by Martyn Russell.
2006-10-10 14:40:50 +00:00
Michael Natterer
a3b67535df added new scanner token "unbind" which gets rid of a key binding (in fact,
2006-10-05  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkrc.[ch]: added new scanner token "unbind" which gets
	rid of a key binding (in fact, it only lets it appear unbound).

	* gtk/gtkbindings.[ch] (struct GtkBindingEntry): added
	"guint marks_unbound : 1"

	(gtk_binding_entry_skip): new API which marks the entry as unbound.

	Changed code so it returns FALSE when "marks_unbound == TRUE" is
	encountered while activating bindings, effectively letting the
	binding appear unbound (regardless of still existing bindings in
	lower binding priority levels). Fixes bug #358329.

	(gtk_binding_entry_add)
	(gtk_binding_entry_clear)
	(gtk_binding_entry_add_signall)
	(gtk_binding_parse_binding): deprected these functions.

	(_gtk_binding_parse_binding)
	(_gtk_binding_entry_add_signall): new internal API.

	* gtk/gtk.symbols: changed accordingly.
2006-10-05 14:48:57 +00:00
Matthias Clasen
ac879843d0 Support subclasses in RC files. (#142417, Todd Berman, patch based on a
2006-03-23  Matthias Clasen  <mclasen@redhat.com>

	Support subclasses in RC files.  (#142417, Todd Berman, patch
	based on a patch by Benjamin Berg)

	* gtk/gtkrc.h:
	* gtk/gtkrc.c: Support <classname> elements in widget_class paths
	in rc files which match any classes derived from named class.

	(_gtk_rc_init): Use the new syntax in the default rc string.

	* gtk/gtkbindings.c: Support the new syntax for bindings too.

	* tests/testrc.c: Tests for widget_class path matching
2006-03-23 23:21:30 +00:00
Matthias Clasen
a5ed2693c0 Revert the last change.
2006-01-05  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkbindings.c (binding_signal_new): Revert the last change.
2006-01-05 15:56:14 +00:00
Rodrigo Moya
2ffc74793b allocate correct amount for signal and arguments.
2006-01-05  Rodrigo Moya <rodrigo@novell.com>

	* gtk/gtkbindings.c (binding_signal_new): allocate correct amount for
	signal and arguments.
2006-01-05 11:26:59 +00:00
Matthias Clasen
6441a62967 Revert questionable changes.
2006-01-04  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkbindings.h (struct _GtkBindingSignal): Revert questionable
	changes.

	* gtk/gtkbindings.c: Use the slice allocator and allocate signal
	and arguments in one block.
2006-01-05 04:21:09 +00:00
Rodrigo Moya
cfe00e5709 guard against multiplying by -1 (when n_args is 0).
2006-01-04  Rodrigo Moya <rodrigo@novell.com>

	* gtk/gtkbindings.c (binding_signal_new): guard against multiplying
	by -1 (when n_args is 0).
2006-01-04 12:38:06 +00:00
Matthias Clasen
c63a3dccab Make the args a flexible array inside the struct, and allocate them
2005-12-27  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkbindings.h (GtkBindingSignal):
	* gtk/gtkbindings.c (binding_signal_new): Make the
	args a flexible array inside the struct, and allocate them
	together.
2005-12-28 04:09:18 +00:00
Matthias Clasen
779c7ea8df Avoid copying the set_name by interning it.
2005-12-27  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkbindings.c (gtk_binding_set_new): Avoid copying
	the set_name by interning it.
2005-12-27 06:10:20 +00:00
Matthias Clasen
94eec04267 Intern some more strings.
2005-09-01  Matthias Clasen  <mclasen@redhat.com>

        * gdk/*.c: Intern some more strings.
        * gtk/gtkintl.h:
        * gtk/*.c: Define an I_() macro and use it instead of the
        bulky g_intern_static_string().
2005-09-01 05:11:46 +00:00
Matthias Clasen
cca8dd6347 Make PLT-reduction work with gcc4, and don't include everything in
2005-03-20  Matthias Clasen  <mclasen@redhat.com>

	Make PLT-reduction work with gcc4, and don't include
	everything in gdkalias.h:

	* gtk/grk.symbols: Group symbols by header and source file.
	* gtk/makegtkalias.pl: Protect definitions by the same
	preprocessor symbols used to guard the headers. Move
	the alias declarations to a separate file which is
	produced when calling makegtkalias.pl -def
	* gdk/Makefile.am (gtkaliasdef.c): Add a rule to generate
	this file.
	* gtk/*.c: Include gtkalias.h after the other headers,
	include gtkaliasdef.c at the bottom.
	* gtk/*.h: Small cleanups.
2005-03-20 07:01:23 +00:00
Matthias Clasen
6da29b43a6 gdk/gdkkeyuni.c gdk/gdkpixbuf-drawable.c gdk/gdkrgb.c gdk/x11/gdkdnd-x11.c
2005-03-01  Matthias Clasen  <mclasen@redhat.com>

	* gdk/gdkkeyuni.c
	* gdk/gdkpixbuf-drawable.c
	* gdk/gdkrgb.c
	* gdk/x11/gdkdnd-x11.c
	* gdk/x11/gdkevents-x11.c
	* gdk/x11/gdkproperty-x11.c
	* gdk/x11/gdkvisual-x11.c
	* gdk-pixbuf/gdk-pixbuf.c
	* gtk/gtkaction.c
	* gtk/gtkbindings.c
	* gtk/gtkcolorbutton.c
	* gtk/gtkcombo.c
	* gtk/gtkcontainer.c
	* gtk/gtkfilechooserdefault.c
	* gtk/gtkfilesel.c
	* gtk/gtkgamma.c
	* gtk/gtkiconview.c
	* gtk/gtkinputdialog.c
	* gtk/gtkitemfactory.c
	* gtk/gtkmenu.c
	* gtk/gtktextview.c
	* gtk/gtktooltips.c
	* gtk/gtktreedatalist.c
	* gtk/gtkuimanager.c
	* gtk/tree_minus.xpm
	* gtk/tree_plus.xpm
	* gtk/xdgmime/xdgmime.c
	* gtk/xdgmime/xdgmime.h:
	Move constant data to .rodata.
2005-03-01 06:25:55 +00:00