Commit Graph

358 Commits

Author SHA1 Message Date
Tim Janik
999a87a19a provide a short-cut version for this macro in case
Tue Feb  3 21:24:01 2004  Tim Janik  <timj@gtk.org>

        * gtype.h (_G_TYPE_CVH): provide a short-cut version for
        this macro in case value->g_type==checked_type for gcc, similar
        to instance and class check short-cuts. this speeds up code that
        makes frequent use of G_VALUE_HOLDS_*() (e.g. setters/getters).

        * gtype.c (type_data_last_unref_Wm): don't call class-cache functions
        for the uncached case, this rendered g_type_class_unref_uncached()
        useless. pointed out by Stefan Westerfeld.
2004-02-03 20:30:23 +00:00
Tim Janik
82744debfe prefixed the parent_class variable defined by G_DEFINE_TYPE() with
Sat Jan 24 18:20:13 2004  Tim Janik  <timj@gtk.org>

        * gtype.h: prefixed the parent_class variable defined by G_DEFINE_TYPE()
        with type_name. removed type_parent_class argument
        from G_DEFINE_TYPE_EXTENDED().
2004-01-24 17:23:52 +00:00
Tor Lillqvist
2b7d6c5831 Add a missing entry.
2004-01-24  Tor Lillqvist  <tml@iki.fi>

	* gobject.def: Add a missing entry.
2004-01-24 03:56:36 +00:00
Manish Singh
b4e2d28850 wrap g_io_channel_ref in a function that returns the passed in GIOChannel,
Sun Jan 11 15:34:35 2004  Manish Singh  <yosh@gimp.org>

        * gsourceclosure.c: wrap g_io_channel_ref in a function that returns
        the passed in GIOChannel, so we aren't abusing GBoxedCopyFunc
        semantics. Fixes bug #131076.
2004-01-11 23:59:49 +00:00
Matthias Clasen
805ba95fb1 Document the lowercase_name trigraph option.
Sat Jan 10 23:55:42 2004  Matthias Clasen  <maclas@gmx.de>

	* glib-mkenums.1: Document the lowercase_name trigraph option.
2004-01-10 22:57:59 +00:00
Tim Janik
93ec5cfa66 made G_DEFINE_TYPE_INTERNAL() public by renaming it to
Sat Jan 10 02:43:20 2004  Tim Janik  <timj@gtk.org>

        * gtype.h: made G_DEFINE_TYPE_INTERNAL() public by renaming it to
        G_DEFINE_TYPE_EXTENDED() and moving it into the appropriate section.
2004-01-10 01:46:23 +00:00
Matthias Clasen
b4f769efaf Add a boxed type for nul-terminated string arrays. (#110528)
Fri Jan  9 23:41:00 2004  Matthias Clasen  <maclas@gmx.de>

	* gboxed.h:
	* gboxed.c (g_strv_get_type): Add a boxed type for nul-terminated
	string arrays.  (#110528)
2004-01-09 22:39:55 +00:00
Tim Janik
ba482c66c3 added convenience macros G_IMPLEMENT_INTERFACE() and G_DEFINE_TYPE() plus
Fri Jan  9 15:34:15 2004  Tim Janik  <timj@gtk.org>

        * gtype.h: added convenience macros G_IMPLEMENT_INTERFACE() and
        G_DEFINE_TYPE() plus variants.
2004-01-09 14:40:31 +00:00
Murray Cumming
10bacd6058 Added a lowercase_name option, to be used next to the enum declaration,
2003-12-30  Murray Cumming  <murrayc@usa.net>

        * gobject/glib-mkenums.in: Added a lowercase_name option, to be used
        next to the enum declaration, where the flag option is already used,
        when it is not possible to guess where to put the underscores in the
        _get_type() function name, for instance for GNOMEVFSURIHide.
2003-12-30 10:42:57 +00:00
Matthias Clasen
07cbd50ea8 Don't acquire a read lock here. (#106433, Owen Taylor)
Fri Dec 26 01:34:01 2003  Matthias Clasen  <maclas@gmx.de>

	* gtype.c (g_type_class_peek_parent): Don't acquire a read lock
	here.  (#106433, Owen Taylor)
2003-12-26 00:36:56 +00:00
Matthias Clasen
d9d15e8f28 Use g_assert() instead of g_return_val_if_fail(), suggested by Sheldon
Wed Dec 17 23:29:17 2003  Matthias Clasen  <maclas@gmx.de>

	* gvalue.c (g_value_peek_pointer): Use g_assert() instead of
	g_return_val_if_fail(), suggested by Sheldon Simms.
2003-12-17 22:29:07 +00:00
Hans Breuer
4bd0876b62 gobject.def : update externals
2003-12-13  Hans Breuer  <hans@breuer.org>

	gobject.def : update externals
2003-12-13 14:35:21 +00:00
Owen Taylor
f2241f6e87 === Released 2.3.1 ===
Mon Dec  8 12:02:40 2003  Owen Taylor  <otaylor@redhat.com>

        * === Released 2.3.1 ===

        * NEWS: Further updates for 2.3.1.
2003-12-08 17:18:42 +00:00
Tim Janik
aa63f7e373 fix g_object_set() whithin _init() implementations not working for
Sat Nov 29 14:57:20 2003  Tim Janik  <timj@gtk.org>

        * gobject.c: fix g_object_set() whithin _init() implementations
        not working for construct-only properties.
        (g_object_init): make the object enter a construct_objects list.
        (g_object_newv): remove object from construct_objects after creation.
        (g_object_set_valist):
        (g_object_set_property): allow construct-only properties for
        objects which are in construct_objects.
2003-11-29 14:00:06 +00:00
Tim Janik
0642df0ab3 variant of class_peek() which works for static types only.
Thu Nov 27 17:53:52 2003  Tim Janik  <timj@gtk.org>

        * gtype.[hc]:
        (g_type_class_peek_static): variant of class_peek() which works for
        static types only.

        * gobject.c:
        (g_object_do_class_init): make ::notify a run-action signal.
        (g_object_newv): use g_type_class_peek_static() by default to
        speed up common code path (trades two write-locks for one read-lock).
        (g_object_disconnect):
        (g_object_connect): allow signal specification words to be
        seperated by '-'.
        (g_object_set_valist):
        (g_object_new_valist): don't leak values.
        (g_object_get_property): check property for readability.
        (g_object_set_property): check property for writability and to
        not be construct-only.
        (g_object_set_valist): check property to not be construct-only.
2003-11-27 17:08:06 +00:00
Matthias Clasen
0aeb066667 Add /*< public >*/ and /*< private >*/ markers for documentation purposes.
Tue Oct 21 23:17:06 2003  Matthias Clasen  <maclas@gmx.de>

	* genums.h (struct _GEnumClass):
	* genums.h (struct _GFlagsClass):
	* gtypemodule.h (struct _GTypeModuleClass):
	* gtypemodule.h (struct _GTypeModule): Add /*< public >*/
	and /*< private >*/ markers for documentation purposes.
2003-10-28 22:26:18 +00:00
Matthias Clasen
eb9b3fbdeb 100% 2003-10-24 23:10:37 +00:00
Owen Taylor
6f5794fad0 Add a new GParamSpecOverride type that is a pointer to a different
Tue Oct 14 17:40:19 2003  Owen Taylor  <otaylor@redhat.com>

        * gparamspecs.[ch]: Add a new GParamSpecOverride type
        that is a pointer to a different paramspec in a parent
        class or interface.

        * gparam.[ch]: Add g_paramspec_get_redirect_target()
        which follows GParamSpecOverride to the real property.
        Make g_param_spec_pool_list() hand redirections,
        properties on interfaces.

        * gobject.[ch] gobjectnotifyqueue.c: Add
        g_object_interface_install_property,
        g_object_interface_find_property,
        g_object_interface_list_properties(). Redirect virtually all
        publically exposed GParamSpec's to the redirect target if
        any. (->constructor is the exception.)
        (#105894)
2003-10-21 19:12:27 +00:00
Matthias Clasen
4a29291187 Documentation additions. 2003-10-20 20:07:45 +00:00
Matthias Clasen
0cbbe0bcdf Add /*< public >*/ and /*< private >*/ markers for documentation purposes.
Sat Oct 18 01:30:47 2003  Matthias Clasen  <maclas@gmx.de>

	* gtypeplugin.h (struct _GTypePluginClass): Add /*< public >*/
	and /*< private >*/ markers for documentation purposes.

	* gobject/tmpl/gboxed.sgml:
	* gobject/tmpl/gtypeplugin.sgml:
	* gobject/tmpl/enumerations_flags.sgml: Additions.
2003-10-17 23:33:03 +00:00
Tim Janik
96a7e24043 fix post class_init interface initialization logic for child types.
Thu Oct  2 07:37:12 2003  Tim Janik  <timj@gtk.org>

        * gtype.c: fix post class_init interface initialization logic
        for child types.
2003-10-02 05:41:04 +00:00
Owen Taylor
1083b5a43d Add g_type_add/remove_interface_check(), which allows inserting a
Thu Oct  2 01:16:50 2003  Owen Taylor  <otaylor@redhat.com>

        * gtype.[ch]: Add g_type_add/remove_interface_check(),
        which allows inserting a post-interface-initialization
        check.

        * testgobject.c: Fix a deprecated usage.
2003-10-02 05:24:21 +00:00
Owen Taylor
2aa3d50768 Add g_type_default_interface_ref/peek/unref for accessing the default
Mon Sep 29 10:51:01 2003  Owen Taylor  <otaylor@redhat.com>

        * gtype.[ch]: Add g_type_default_interface_ref/peek/unref
        for accessing the default vtable of an interface.
2003-09-29 14:52:42 +00:00
Owen Taylor
61d764c54e You can have instance_real_class_bsa be non-NULL, but still the class not
Fri Sep 26 17:24:53 2003  Owen Taylor  <otaylor@redhat.com>

        * gtype.c (g_type_instance_get_private): You can
        have instance_real_class_bsa be non-NULL, but still
        the class not be in the bsa. (Found by Kris Rietveld)
2003-09-26 21:26:42 +00:00
Matthias Clasen
1e469f37b9 Don't generate code using deprecated APIs. (#122292, Christian Persch)
2003-09-15  Matthias Clasen  <maclas@gmx.de>

	* glib-genmarshal.c (complete_out_arg): Don't generate code
	using deprecated APIs.  (#122292, Christian Persch)
2003-09-14 22:05:36 +00:00
Owen Taylor
a5186a88bc Add bug reference to ChangeLog 2003-09-12 20:38:35 +00:00
Owen Taylor
32bc3c4197 Add g_signal_accumulator_true_handled(), to do TRUE-stops-emit signals.
Fri Sep 12 16:31:40 2003  Owen Taylor  <otaylor@redhat.com>

        * gsignal.[ch]: Add g_signal_accumulator_true_handled(), to
        do TRUE-stops-emit signals.

        * Makefile.am: Move testoverride.c and testifaceinit.c to
        tests/gobject.
2003-09-12 20:33:31 +00:00
Matthias Clasen
c3acb9da0c Make the g_value_set_x_take_ownership() functions "official" part of the
2003-09-12  Matthias Clasen  <maclas@gmx.de>

	Make the g_value_set_x_take_ownership() functions "official"
	part of the API (#100948):

	* gvaluetypes.[hc]: Add g_value_take_string() (synonym to the
	now deprecated g_value_set_string_take_ownership()).

	* gparam.[hc]: Add g_value_take_param() (synonym to the
	now deprecated g_value_set_param_take_ownership()).

	* gobject.[hc]: Add g_value_take_object() (synonym to the
	now deprecated g_value_set_object_take_ownership()).

	* gboxed.[hc]: Add g_value_take_boxed() (synonym to the
	now deprecated g_value_set_boxed_take_ownership()).

	* gobject/gobject-sections.txt: Add new g_value_take_x() functions.

	* gobject/tmpl/param_value_types.sgml: Document new g_value_take_x()
	functions.  (#100948)
2003-09-12 20:11:38 +00:00
Tim Janik
558507bc5a added support for a "default vtable" per interface, that interface vtables
Tue Sep  2 19:37:21 2003  Tim Janik  <timj@gtk.org>

        * gtype.[hc]: added support for a "default vtable" per interface,
        that interface vtables are initialized from.
        the default vtable is initialized and finalized through class_init,
        class_finalize and class_data from the interfaces GTypeInfo struct.
        (type_data_last_unref_Wm): unload child plugin before unreffing
        parent type.

        testifaceinit.c: minor fixups. fixed up base_init() assertions, since
        with a default vtable, base_init() may be called multiple times.
        added default initializer to iface1.
2003-09-02 17:57:22 +00:00
Tim Janik
de059b53bc fix iterating over fundamental types.
Tue Sep  2 14:53:41 2003  Tim Janik  <timj@gtk.org>

        * gobject-query.c (main): fix iterating over fundamental types.

        * gtype.c: applied patch from owen which keeps internal
        class initialization state to maintain class and interface
        initialization happen in the order of:
        1. class' base_init
        2. interface' base_init
        =  interfaces added after here are immediately base_init-ialized
        3. class_init
        4. Interface_init
        =  interfaces added here are immediately Interface_init-ialized
2003-09-02 12:58:23 +00:00
Manish Singh
056041aab9 removed stray change from previous commit.
Wed Aug 27 19:53:26 2003  Manish Singh  <yosh@gimp.org>

        * gobject.c: removed stray change from previous commit.
2003-08-28 02:55:58 +00:00
Manish Singh
7dbe422777 shut up cvs 2003-08-28 02:20:17 +00:00
Owen Taylor
6bd3d8bcf6 Add a detailed test case for interface initialization, testing the ability
Wed Aug 27 01:25:40 2003  Owen Taylor  <otaylor@redhat.com>

        * Makefile.am testifaceinit.c: Add a detailed test case
        for interface initialization, testing the ability to
        add interfaces during class initialization and the ordering
        of interface base_init, class init, and interface_init.
        (Expected to fail at the moment.)
2003-08-27 05:28:39 +00:00
Manish Singh
d2cd289bf2 fix typo in last commit, cast to GTypeValueTable * to get rid of const
Mon Aug 25 14:51:46 2003  Manish Singh  <yosh@gimp.org>

        * gtypemodule.c (g_type_module_register_type): fix typo in last
        commit, cast to GTypeValueTable * to get rid of const warning.
2003-08-25 22:02:22 +00:00
Owen Taylor
cd91400c1c add bug number 2003-08-25 18:42:38 +00:00
Owen Taylor
5e88cedf02 Clarify docs on the return. Fix a memory leak if a type with a value table
Mon Aug 25 14:16:48 2003  Owen Taylor  <otaylor@redhat.com>

        * gtypemodule.c (g_type_module_register_type): Clarify
        docs on the return. Fix a memory leak if a type with a
        value table is reloaded.
2003-08-25 18:23:58 +00:00
Tim Janik
105adb9a35 check private instance data after initialization.
Tue Aug 19 05:21:04 2003  Tim Janik  <timj@gtk.org>

        * testgobject.c (main): check private instance data after
        initialization.

        * gtype.c: for instances with private data, store the real class
        pointer in a bsearch array during class initialization.
        (g_type_instance_get_private): fetch the real class of
        an instance from the bsearch array if necessary.
2003-08-19 03:25:46 +00:00
Tim Janik
6d6e68f3e4 adapt to new gbsearcharray.h code. (g_value_register_transform_func): turn
Tue Aug 19 04:08:14 2003  Tim Janik  <timj@gtk.org>

        * gvalue.c: adapt to new gbsearcharray.h code.
        (g_value_register_transform_func): turn transform function
        replacement into a valid operation.

        * gsignal.c: adapt to new gbsearcharray.h code.

        * gboxed.c: adapt to new gbsearcharray.h code.
2003-08-19 02:15:40 +00:00
Tim Janik
779c44cdfb added optimizations to skip NOP signal emissions.
Tue Aug 19 01:31:28 2003  Tim Janik  <timj@gtk.org>

        * gsignal.c: added optimizations to skip NOP signal emissions.
2003-08-18 23:32:17 +00:00
Tor Lillqvist
a44c1da1c4 glib/Makefile.am gmodule/Makefile.am gobject/Makefile.am Use srcdir also
2003-08-13  Tor Lillqvist  <tml@iki.fi>

	* glib/Makefile.am
	* gmodule/Makefile.am
	* gobject/Makefile.am
	* gthread/Makefile.am: Use srcdir also in references to the .def
	files. (#118885, Jeff Bonggren)
2003-08-13 00:24:21 +00:00
Matthias Clasen
29606d90b0 Improve the wording of the warning for invalid
values.  (#117246, Mariano Suarez-Alvarez)
2003-08-08 19:47:35 +00:00
Owen Taylor
b9312d57c5 Add check for instance private usage within in instance_init. (Currently
Wed Aug  6 09:57:14 2003  Owen Taylor  <otaylor@redhat.com>

        * testgobject.c (test_signal_accumulator): Add check
        for instance private usage within in instance_init.
        (Currently will fail.)
2003-08-06 14:33:20 +00:00
Hans Breuer
66d742f8cf updated externals
2003-07-20  Hans Breuer  <hans@breuer.org>

	* gobject.def : updated externals
2003-07-20 15:53:58 +00:00
Soeren Sandmann
6e2d715fd8 Only access node->data->instance when the node is instantiable.
Tue Jul  8 22:29:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtype.c (type_class_init_Wm): Only access node->data->instance
	when the node is instantiable.
2003-07-08 20:12:05 +00:00
Owen Taylor
2d9b959c98 Initialize node->data->instance.private_size here rather than in
Tue Jul  8 14:55:27 2003  Owen Taylor  <otaylor@redhat.com>

        * gtype.c (type_class_init_Wm): Initialize
        node->data->instance.private_size here rather than
        in type_data_make_W() since the class init for the parent
        class may have changed pnode->data->instance.private_size.
        (#116921, reported by Soeren Sandmann)
2003-07-08 18:59:04 +00:00
Matthias Clasen
e5d032a68c forgotten ChangeLog 2003-06-17 23:10:04 +00:00
Matthias Clasen
54f796b1b6 New macros to check for XML catalog contents and path, borrowed from
2003-06-17  Matthias Clasen  <maclas@gmx.de>

	* acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
	macros to check for XML catalog contents and path, borrowed from
	gtk-doc.
	* configure.in: New option --enable-man to enable regeneration of
	man pages from Docbook, if the necessary tools are found.

	* gobject/Makefile.am: Add rule to regenerate man pages from
	Docbook.
	(man_MANS): Add glib-mkenums.1, glib-genmarshal.1 and gobject-query.1.
	(content_files): Add glib-mkenums.xml, glib-genmarshal.xml and
	gobject-query.xml.

	* gobject/glib-mkenums.xml:
	* gobject/glib-genmarshal.xml:
	* gobject/gobject-query.xml: New refentries.

	* gobject/glib-mkenums.1:
	* gobject/glib-genmarshal.1:
	* gobject/gobject-query.1: Man pages generated from the .xml
	sources.

	* gobject/gobject-docs.sgml: Include glib-mkenums.xml,
	glib-genmarshal.xml and gobject-query.xml.

	* glib/Makefile.am: Add rule to regenerate man pages from
	Docbook.
	(man_MANS): Add glib-gettextize.1.
	(content_files): Add glib-gettextize.xml.

	* glib/glib-gettextize.xml: New refentry.

	* glib/glib-gettextize.1: Man page generated from the .xml source.

	* glib/glib-docs.sgml: Include glib-gettextize.xml.
2003-06-17 23:08:37 +00:00
Owen Taylor
68e49c7811 Order refs/unrefs so setting the same object back is safe. (#112861,
Fri May 30 14:42:24 2003  Owen Taylor  <otaylor@redhat.com>

        * gobject.c (g_value_set_object): Order refs/unrefs
        so setting the same object back is safe. (#112861,
        Morten Welinder)
2003-05-30 18:44:57 +00:00
Matthias Clasen
6710fd6e06 Optimize the common cases (init == NULL or init == "") a bit. replace uses
2003-03-30  Matthias Clasen  <maclas@gmx.de>

	* glib/gstring.c (g_string_new): Optimize the common cases
	(init == NULL or init == "") a bit.
	* glib/gmarkup.c, glib/gmessages.c, glib/gscanner.c,
	glib/gshell.c, glib/gspawn-win32-helper.c, glib/gspawn-win32.c,
	glib/gspawn.c, gobject/gvaluetransform.c: replace uses of
	g_string_new ("") by g_string_new (NULL).  (#106973, Morten Welinder)
2003-03-30 22:02:20 +00:00
Sven Neumann
537c81b30b removed leftover debugging message (bug #109093).
2003-03-24  Sven Neumann  <sven@gimp.org>

	* gtype.c (type_data_finalize_class_ifaces_Wm): removed leftover
	debugging message (bug #109093).
2003-03-24 16:59:09 +00:00