Commit Graph

119 Commits

Author SHA1 Message Date
Tim Janik
bbc5a3adac changed collect_format, collect_value() and lcopy_format, lcopy_value() in
Sat Feb 17 04:55:35 2001  Tim Janik  <timj@gtk.org>

        * gtype.[hc]: changed collect_format, collect_value() and lcopy_format,
        lcopy_value() in the GTypeValueTable. the collect functions are now
        called only once per value, collect_format/lcopy_format are strings
        that enlist all necessary GTypeCValues to be varargs-collected.

        * gvalue.h: ranamed STATIC_TAG to G_VALUE_NOCOPY_CONTENTS to indicate that
        a value shouldn't copy its contents.

        * gvaluecollector.h: changed G_VALUE_COLLECT() and G_VALUE_LCOPY()
        macros to carry an additional argument (flags) that can be used
        to pass G_VALUE_NOCOPY_CONTENTS along to the collection functions.

        * *.c: adapted collect_value() and lcopy_value() functions to the new
        prototypes, support G_VALUE_NOCOPY_CONTENTS where apropriate.

        * gsignal.[hc]: introduced a G_SIGNAL_TYPE_STATIC_SCOPE flag that can
        be passed along (ORed) with the parameter types, indicating that the
        emission arguments are to be considered static for the scope of the
        emission. should be used with care and only if the caller knows that
        a parameter cannot be destroyed/freed from signal handlers connected
        to an emission.
2001-02-17 05:32:00 +00:00
Tim Janik
12a0d19c11 incorporated huge docu patch from Eric Lemings <eric.b.lemings@lmco.com>
Fri Feb 16 06:52:20 2001  Tim Janik  <timj@gtk.org>

        * gobject/tmpl/types.sgml: incorporated huge docu patch from Eric
        Lemings <eric.b.lemings@lmco.com> with a bunch of editing on my part.

Fri Feb 16 07:10:44 2001  Tim Janik  <timj@gtk.org>

        * gclosure.c:
        (g_closure_ref):
        (g_closure_sink): make closure sinking explicit.

        * gsignal.c:
        (g_signal_connect_data):
        (g_signal_connect_closure):
        (g_signal_connect_closure_by_id):
        (g_signal_newv): perform explicit closure sinking.

Thu Feb  8 00:31:45 2001  Tim Janik  <timj@gtk.org>

        * gtype.h: added G_TYPE_DEBUG_NONE for/from Eric Lemings ;)
2001-02-16 07:22:59 +00:00
Owen Taylor
d6fe9f43b3 The ultimate gtk-doc makefile.
Mon Feb 12 12:42:45 2001  Owen Taylor  <otaylor@redhat.com>

	* {glib,gobject}/Makefile.am: The ultimate gtk-doc makefile.
2001-02-12 17:43:44 +00:00
Tim Janik
22357542e9 s/glib_trap_/g_trap_/. add comments on g_trap_instance_signals,
Sun Feb  4 07:38:32 2001  Tim Janik  <timj@gtk.org>

        * docs/debugging.txt: s/glib_trap_/g_trap_/. add comments on
        g_trap_instance_signals, g_trace_instance_signals and
        GRUNTIME_DEBUG.

        * gmem.c: s/glib_trap_/g_trap_/.

Sun Feb  4 07:30:53 2001  Tim Janik  <timj@gtk.org>

        * gtype.[hc]: changed g_type_init() to take debugging flags
        initially, a combination of G_TYPE_DEBUG_OBJECTS and
        G_TYPE_DEBUG_SIGNALS. using the G_TYPE_ prefix is a bit odd
        here, but basically g_type_int() serves as initialization
        fucntion for all of GType, GObject, GSignal, so what the heck.

        * gobject.c: special case debugging code properly.
        changed glib_trap_object_ref to g_trap_object_ref.

        * gsignal.c: add signal emission debugging abilities, along with
        a new trap object g_trap_instance_signals.
2001-02-04 07:03:52 +00:00
Tim Janik
f0b9abe801 adapt to work with new CVS gtk-doc, leaving the old rules in place caused
Wed Jan 31 07:14:22 2001  Tim Janik  <timj@gtk.org>

        * gobject/Makefile.am: adapt to work with new CVS gtk-doc, leaving the old
        rules in place caused bogus recursions. main changes:
        - add to conditionalized section:
          all-local:
                $(MAKE) scan
                $(MAKE) templates
                $(MAKE) sgml
                $(MAKE) html.stamp
          html.stamp: sgml.stamp $(EXTRA_SGML_FILES)
                $(MAKE) html
          DOC_STAMPS= html.stamp sgml.stamp
        - change:
          maintainer-clean-local: clean
          -     cd $(srcdir) && rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
          +     cd $(srcdir) && rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt $(DOC_STAMPS)

        * glib/Makefile.am (maintainer-clean-local): dito.

Wed Jan 31 06:21:32 2001  Tim Janik  <timj@gtk.org>

        * gobject/tmpl/types.sgml: applied docu patch from Eric Lemings
        <eric.b.lemings@lmco.com>, did some more editing.

Wed Jan 31 06:19:49 2001  Tim Janik  <timj@gtk.org>

        * gparam.h: gtk-doc sucks for not dealing with #define inside enums.

        * gtype.[hc]: added G_TYPE_FLAG_RESERVED_ID_BIT, a bit in the type
        number that's supposed to be left untouched (preserved mainly
        for the signal code).

        * *.c: added thread safety code, based on an old patch from sebastian.
        the remaining thread safety issues are now datalists on pspecs (to be
        solved im gdataset.c) and gvalue.c where locking concerns value exchange
        functionality only, and that's soon to be revised.
2001-01-31 06:27:41 +00:00
Tim Janik
5f130a176c minor markup cleanups 2001-01-09 15:29:15 +00:00
Tim Janik
05122f2861 added some function documentations.
Tue Jan  9 03:10:38 2001  Tim Janik  <timj@gtk.org>

        * gobject/tmpl/types.sgml: added some function documentations.

        * gobject/gobject-sections.txt: buncha fixups.
2001-01-09 02:18:57 +00:00
Owen Taylor
29cff66fc1 Updated.
Fri Jan  5 15:47:10 2001  Owen Taylor  <otaylor@redhat.com>

	* glib/glib-sections.txt glib/tmpl/* glib/Makefile.am: Updated.
2001-01-05 20:48:43 +00:00
Tim Janik
8ee6344419 we can't grow _cv_ variables by using a backticked expr that refers back
Fri Dec 29 14:53:18 2000  Tim Janik  <timj@gtk.org>

        * configure.in: we can't grow _cv_ variables by using a backticked
        expr that refers back to the variable (glib_cv_sizeof_system_thread for
        G_THREAD_USE_PID_SURROGATE), that'd keep the variable growing every time
        it's evaluated. quantum states, anyone?)
2000-12-29 15:11:03 +00:00
Owen Taylor
5791ec5b85 add images
Tue Dec  5 15:41:23 2000  Owen Taylor  <otaylor@redhat.com>

        * glib/Makefile.am glib/mainloop-states*: add images

	* glib/glib-sections.txt: Updated

	* glib/tmpl/main.sgml: More documentation, move function
	docs to .c file.
2000-12-05 20:43:58 +00:00
Tim Janik
55bdf1322b indentation fixes 2000-11-21 05:57:14 +00:00
Owen Taylor
975d1e3e4d Updates added
Sun Nov  5 13:24:50 2000  Owen Taylor  <otaylor@redhat.com>

	* gobject/Makefile.am gobject/gobject-sections.sgml: Updates
	* gobject/tmpl/g{boxed,type{plugin,module}}.sgml: added
2000-11-11 00:03:57 +00:00
Tim Janik
3cc60a9ab1 prefix internal functions with '_'. renamed g_signal_connect_closure() to
Fri Nov  3 07:35:00 2000  Tim Janik  <timj@gtk.org>

        * gsignal.[hc]: prefix internal functions with '_'. renamed
        g_signal_connect_closure() to g_signal_connect_closure_by_id().
        added g_signal_parse_name() to retrive signal_id and detail quark
        from a signal name (internal).

Fri Nov  3 07:33:15 2000  Tim Janik  <timj@gtk.org>

        * gobject/gobject-docs.sgml: added &gobject-closures; section.

        * gobject/Makefile.am (tmpl_sources): add tmpl/clsoures.sgml

        * gobject/gobject-sections.txt: added Closure section.

        * gobject/tmpl/closures.sgml: new file with template description
        for GClosure functions.
2000-11-03 08:18:09 +00:00
Tim Janik
cfe0780d3e destroy all signals that the finalized obejct type introduced.
Wed Nov  1 03:36:54 2000  Tim Janik  <timj@gtk.org>

        * gobject.c (g_object_base_class_finalize): destroy all signals that
        the finalized obejct type introduced.

        * gsignal.c (g_signals_destroy): don't require itype to have
        signals.

        * gobject.c (g_object_do_finalize): make sure all signal handlers
        are destroyed.

        * gsignal.[hc]:
        (g_signal_handler_find): only match on non-0 masks.
        (g_signal_handlers_block_matched):
        (g_signal_handlers_unblock_matched):
        (g_signal_handlers_disconnect_matched): new functions to block/unblock
        or disconnect handlers in groups.
2000-11-01 03:03:04 +00:00
Tim Janik
d42361a6e3 start at general description.
Mon Oct 30 11:13:12 2000  Tim Janik  <timj@gtk.org>

        * gobject/tmpl/signals.sgml: start at general description.

        * gobject/gobject-docs.sgml: added introduction.
2000-10-30 10:14:47 +00:00
Tim Janik
817110279d opened up a new section on signals.
Mon Oct 30 06:01:43 2000  Tim Janik  <timj@gtk.org>

        * gobject/gobject-sections.txt: opened up a new section on signals.

Mon Oct 30 05:52:45 2000  Tim Janik  <timj@gtk.org>

        * gsignal.c (g_signal_list_ids): get rid of inline documentation owen
        added, the doc system would ignore it anyways (for some reason not
        aparent to me).
2000-10-30 05:03:19 +00:00
Tim Janik
ee23c09e83 added newly added gobject/ headers.
Tue Oct 24 22:09:14 2000  Tim Janik  <timj@gtk.org>

        * glib-object.h: added newly added gobject/ headers.

        * gmesage.c: print g_message() output to stderr instead of stdout.

Wed Oct 25 20:27:02 2000  Tim Janik  <timj@gtk.org>

        * gtype.c (g_type_free_instance): for the moment, freeing object
        structures will fill their memory portion with 0xAA. there's a
        FIXME there, remove this line at a later point.

Tue Oct 24 23:10:26 2000  Tim Janik  <timj@gtk.org>

        * glib-genmarshal.1:
        * glib-genmarshal.c: added publically installed marshaller generator.

        * gtype.h: added G_TYPE_INSTANCE_GET_INTERFACE() to retrive a certain
        interface VTable from instances.

Mon Oct 23 08:28:15 2000  Tim Janik  <timj@gtk.org>

        * gobject.[hc]: new functions for closure maintenance:
        (g_object_watch_closure): maintain validity of the object and
        the closure for objects that are used as data part of a closure.
        (g_cclosure_new_object): convenience function to create C closures
        that have an object as data argument.
        (g_closure_new_object): convenience function to create closures
        that have an object as data argument.

        * gclosure.[hc]: implementation of GClosure mechanism.
        a closure is basically an encapsulation of a callback function
        and its environment. ideally, most places supporting callback
        functions will simply take a GClosure* pointer and thus unify
        callback environments wrg destroy notification etc.
        GClosure provides destroy notifiers for arbitrary data pointers,
        reference counting, invalidation notification (it can be invalidated
        which is merely a deactivate state) and a marshallinbg abstraction.
        GCClosure is also provided in these files, they present a specialized
        GClosure implementation for C language callbacks.

        * genum.c: macro cleanups.

        * gboxed.[hc]: new files, for boxed type abstraction.
        (g_boxed_copy): copy a boxed structure
        (g_boxed_free): free a boxed structure
        (g_value_set_boxed):
        (g_value_get_boxed): standard GValue functions for boxed types
        (g_boxed_type_register_static): convenience function for easy
        introduction of new G_TYPE_BOXED derivatives.

        * gparam.[hc]: introduced g_param_type_register_static(), a short hand
        for creation of new GParamSpec derived types.

        * gtype.[hc]: many fixes, introduced ability to flag individual
        type nodes as ABSTRACT upon registration, added value_peek_pointer()
        to the value table to peek at GValue contents as a pointer for types
        that support this. fixed up GValue checks.

        * gvalue.[hc]: added g_value_fits_pointer() and g_value_get_as_pointer()
        to peek at the value contents as pointer.

        * *.[hc]: adaptions to type macro fixes and changes in the type
        registration API.

        * many const corrections over the place.

Sat Oct 21 02:49:56 2000  Tim Janik  <timj@gtk.org>

        * gtype.c (g_type_conforms_to): this function basically behaves like
        and is_a check, except that it _additionally_ features interfaces
        for instantiatable types. enforce this in the second branch as well
        (`type' conforms_to `type') even if `type' is not an interface type.

Fri Oct 20 15:31:04 2000  Tim Janik  <timj@gtk.org>

        * gvaluetypes.[hc]: added G_TYPE_POINTER implementation from jrb.

        * gtype.[hc]:
        * gobject.c:
        * gvaluetypes.c: added GTypeValueTable.value_peek_pointer and
        suitable implementations of this for G_TYPE_STRING, G_TYPE_OBJECT
        and G_TYPE_POINTER.

Mon Aug 21 04:13:37 2000  Tim Janik  <timj@gtk.org>

        * gbsearcharray.[hc]: long standing needed generic implementation
        of a binary searchable, sorted and dynamically sized array.
2000-10-25 20:36:35 +00:00
Owen Taylor
98dbc6a710 Improve separation of generic non-generic parts and dependencies.
Wed Sep  6 10:59:45 2000  Owen Taylor  <otaylor@redhat.com>

	* gobject/Makefile.am glib/Makefile.am: Improve
	separation of generic non-generic parts and dependencies.
2000-09-06 15:01:07 +00:00
Owen Taylor
60d032a622 Split GObject docs away from the remainder of the docs.
Wed Sep  6 00:30:09 2000  Owen Taylor  <otaylor@redhat.com>

	* glib/* gobject/*: Split GObject docs away from
	the remainder of the docs.

	* glib/Makefile.am gobject/Makefile.am: Rework
	to have reasonable dependencies. (No dependencies
	on the files actually in the source directories,
	so to get it going, you have to do 'make scan',
	but after that, things should work OK.)
2000-09-06 04:32:45 +00:00