Commit Graph

2240 Commits

Author SHA1 Message Date
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
Sebastian Wilhelmi
f9dfcb27b7 Call g_thread_impl_init(), as g_thread_init won't call it.
2001-01-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gthread/gthread-impl.c (g_thread_init_with_errorcheck_mutexes): Call
	g_thread_impl_init(), as g_thread_init won't call it.


	* glib/glib-sections.txt, glib/tmpl/threads.sgml: Added
	g_static_mutex_free

	* gthread.c, gthread.h: Added g_static_mutex_free to allow using
	GStaticMutexes with limited lifetime without leaking.

	* configure.in: GStaticMutex doesn't have to provide extra space
	for debugging information for G_ERRORCHECK_MUTEXES, as then the
	non-default implementation (runtime_mutex) is used anyway.
2001-01-30 14:16:56 +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
Tim Janik
782a8e2e7c got rid of outdated dmalloc support. provide g_try_malloc() and
Thu Dec 28 10:21:46 2000  Tim Janik  <timj@gtk.org>

        * gmem.[hc]: got rid of outdated dmalloc support. provide g_try_malloc()
        and g_try_realloc() which _may_ fail and return NULL.
        nuked g_mem_check(), provided GMemVTable for memory function
        virtualization, alterable at program startup with g_mem_set_vtable().
        provided glib_mem_profiler_table and g_mem_profile() to support limited
        profiling information out of the box (uses mprotect() for free()ed areas
        on linux).
        provide globally visible G_MEM_ALIGN.
        buncha cleanups.

        * docs/macros.txt: file to get a clue about the various configuration
        macros.

        * docs/debugging.txt: explain debugging traps.

        * configure.in: got rid of --enable-mem-check and --enable-mem-profile,
        define GLIB_SIZEOF_VOID_P and GLIB_SIZEOF_LONG. check malloc prototypes
        and define SANE_MALLOC_PROTOS is we can use them.
        <boy, is this file a mess>

        * gutils.c, gscanner.c: fix up compatibility warnings, use g_message().


Thu Dec 28 11:36:44 2000  Tim Janik  <timj@gtk.org>

        * gbsearcharray.c (upper_power2): disable G_BSEARCH_ALIGN_POWER2
        fucntionality if DISABLE_MEM_POOLS is defined.

        * gtype.c: honour DISABLE_MEM_POOLS.

        * gsignal.c (g_signal_init): flag signal key bsearch array with
        G_BSEARCH_ALIGN_POWER2 to avoid excessive growth time. honour
        DISABLE_MEM_POOLS.

        * gparam.h: added G_PARAM_READWRITE alias for (G_PARAM_READABLE |
                                                       G_PARAM_WRITABLE).
2000-12-29 02:16:51 +00:00
Ali Abdin
855e230f31 New gcompat.h header file as recommended by Havoc.
2000-12-24  Ali Abdin  <aliabdin@aucegypt.edu>

        * Makefile.am, gcompat.h, glib.h: New gcompat.h header file
          as recommended by Havoc.

        * gdate.c, gdate.h, testgdate.c,
          docs/reference/glib/glib-sections.txt,
          docs/reference/glib/tmpl/date.sgml, tests/date-test.c: Rename some
          of the gdate functions to use the '_get' in their name. Patch
          reviewed by Havoc.
2000-12-24 12:11:06 +00:00
Sebastian Wilhelmi
57a7a2b010 Determine the suffix of the shared librarries for this system. This is
2000-12-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* configure.in: Determine the suffix of the shared librarries for
	this system. This is done analogous to
	ltconfig.sh. G_MODULE_SUFFIX in glibconfig.h is set to either
	"sl", "dll", or (most often) "so".

	* tests/Makefile.am, tests/module-test.c,
	tests/libmoduletestplugin_a.c, tests/libmoduletestplugin_b.c:
	Added new testcase for gmodule. This is mostly copied from
	gmodule/testgmodule.c, but unlike that is is quiet. (Why BTW are
	some tests that verbose, not to say loquacious...)

	* gmodule.c: Make g_module_open more tolerant wrt to the module
	name. First it tries to open the module as named, if that fails,
	it checks, whether it is a libtool archive and parses it, if that
	fails it appends the systems shared library suffix
	(i.e. ".so") (if not already found) and tries again and if that
	fails it tries to append the ".la" libtool suffix (if not already
	found) and parses it.

	* gmodule.c: Lock recursive mutex during most module functions for
	safety.

	* gmodule-dl.c: Return an error from _g_module_symbol only, if
	dlerror says so. All other functions return an error as well, if
	dlerror returns NULL.

	* testgmodule.c: Thanks to the above change the #ifdefs have
	vanished.

	* glib/glib-sections.txt: Added G_MODULE_SUFFIX.

	* glib/tmpl/modules.sgml: Updated.
2000-12-22 13:44:25 +00:00
Sebastian Wilhelmi
32241715f4 Updated G_RAND_DOUBLE_TRANSFORM to be more accurate. Redid g_rand_double()
2000-12-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* grand.c: Updated G_RAND_DOUBLE_TRANSFORM to be more
	accurate. Redid g_rand_double() such that it returns 52 bits after
	the point instead of 32 as before. That OTOH requires calling
	g_rand_int() twice. Overhauled g_rand_int_range(), which is easier
	now thanks to the new precision of g_rand_double(). Thanks to
	Sverre Johansen <sj@ifi.uio.no> for the hint.

	* grand.h: Added g_rand_boolean() and g_random_boolean()
	macros. While they could be omitted due to extreme simplicity,
	they make intention clearer in code and are therefore good to have.

	* grand.c, grand.h: Renamed all 'min' and 'max' parameters to'
	begin' and 'end' resp. to avoid making people think, that 'max' is
	included in the interval. 'end' now isn't, whereas 'begin'
	is. That's similar to the use in the STL.

	* glib/glib-sections.txt: Added g_rand_boolean and
	g_random_boolean macros.

	* glib/tmpl/random_numbers.sgml: Updated.
2000-12-19 15:57:53 +00:00
Tim Janik
e773d7dba6 fixed dealing with collection/lcopy of NULL values.
Mon Dec 11 04:44:11 2000  Tim Janik  <timj@gtk.org>

	* gboxed.c: fixed dealing with collection/lcopy of NULL values.

	* gclosure.h: removed insane ramblings, added G_CALLBACK() a casting
	convenience macro.

	* Makefile.am: cleanups, marshaller generation rules.

	* gmarshal.[hc]: new files with GRuntime standard marshallers.

	* glib-genmarshal.c: fix log domain, support gruntime standard
	marshallers, suport G_TYPE_PARAM, come with extern "C" and
	#include gmarshal.h.

	* glib-genmarshal.1: reflect glib-genmarshal.c updates.

	* gobject.[hc]: implement object constructor. rework parameter
	changed notification queueing, we support queue freezes now and
	don't dispatch from an idle handler anymore.
	parameter->property rename hassle.
	implemented ::properties_changed and ::notify::* signals for
	property change notification (the later supports property names
	as details). added signal connection and named data properties.
	(g_signal_connect_object): new function to setup while_alive
	connections.
	(g_object_class_install_property): sink properties now, since they
	are initially floating.
	(g_object_steal_data):
	(g_object_set_data_full):
	(g_object_set_data):
	(g_object_get_data): set/get data by using g_datalist_*() functions
	directly.
	(g_object_queue_param_changed): nuked.
	(g_object_freeze_notify): start queueing of property changes (freeze/
	thaw calls stack).
	(g_object_notify): announce changes of a certain property directly.
	(g_object_thaw_notify): process queue of property changes, therefore
	emitting GObject::notify::detail with detail being the changed
	properties names.
	(G_OBJECT_WARN_INVALID_PROPERTY_ID): saner macro variant of former
	G_WARN_INVALID_PARAM_ID().

	* gparam.[hc]: param specs are now initially floating and need to be
	sunken with g_param_spec_sink(), support G_TYPE_PARAM values.
	added G_PARAM_CONSTRUCT and G_PARAM_CONSTRUCT_ONLY parameter flags,
	required by GObjectClass.constructor().

	* gparamspecs.[hc]: added GParamSpecParam, GParamSpecPointer and
	GParamSpecCCallback, param specs for G_TYPE_PARAM, G_TYPE_POINTER
	and G_TYPE_CCALLBACK respectively.

	* gsignal.[hc]: cleanups.
	(signal_id_lookup): after walking the anchestry, try interfaces as well.
	(g_signal_new): new function to create signals from varargs type list.
	(g_signal_connect_closure): closure connection variant that works from
	signal name+detail.
	(g_signal_connect_data): c handler connection variant that works from
	signal name+detail.
	(g_signal_emit_valist): emit signal for an instance with paraneters
	collected from a va_list.
	(g_signal_emit): emit signal, taking parameters from varargs list.
	(g_signal_emit_by_name): same as g_signal_emit, working from
	signal name+detail.
	(signal_emit_R): return whether return_value needs to be altered.

	* gtype.[hc]: set log-domain to GRuntime, i'm slowly getting to all
	the points that need to reflect the upcoming rename.
	melt g_type_conforms_to() functionality into g_type_is_a(), as that
	is what we really want (liskov substitution principle).
	assorted changes to other files due to conforms_to->is_a.

	* gvalue.[hc]: implemented g_value_set_instance() that sets a value
	from an instantiatable type via the value_table's collect_value()
	function (based on an idea from James Henstridge <james@daa.com.au>).
	cleanups/fixes.

	* gvaluetypes.[hc]: implement G_TYPE_CCALLBACK and G_TYPE_PARAM.
2000-12-12 07:32:00 +00:00
Owen Taylor
e2fd4e2bd0 Major change in API for creating sources to handle multiple main loops
Tue Dec  5 12:23:04 2000  Owen Taylor  <otaylor@redhat.com>

        * gmain.[hc]: Major change in API for creating sources
	to handle multiple main loops (GMainContext *).

	GSources are now exposed as GSource * and implemented
	with structure derivation.

	* giochannel.[ch]: Changed vtable for GIOChannel to correspond
	to the new mainloop API, add g_io_channel_create_watch().

	* gtypes.h: Move GTimeVal here.

	* gthread.h: Remove gmain.h include to avoid circularity.

        * giounix.c: Update for new GMain API.

	* giowin32.c: Update for new GMain API. (No check for
	proper compilation or working.)

	* timeloop.c timeloop-basic.c: A benchmarking program for
	the main loop comparing the main loop against a
	hand-written (timeloop-basic.c) variant.

	* tests/mainloop-test.c: New torture test of mainloop.

	* docs/Changes-2.0.txt: Started. Added text about
	changes to GMain.

	* gmain.c (g_main_add_poll_unlocked): Initial fd->revents
	to zero. (#8482, Benjamin Kahn)
2000-12-05 20:45:33 +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
d27d94d46c removed stray files 2000-11-17 19:52:42 +00:00
Owen Taylor
8eb6625370 Move conversion functions into GConv section.
Mon Nov 13 00:18:55 2000  Owen Taylor  <otaylor@redhat.com>

        * glib/glib-sections.sgml: Move conversion functions
	into GConv section.

	* gobject/gobject-docs.sgml: Fix some malformed sgml.
2000-11-13 18:59:45 +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
Havoc Pennington
14c4da8cdd rename G_MARKUP_FOO to G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG
2000-11-05  Havoc Pennington  <hp@pobox.com>

* gmarkup.h: rename G_MARKUP_FOO to
G_MARKUP_DO_NOT_USE_THIS_UNSUPPORTED_FLAG

* gmarkup.c: don't start doc comments with "Returns"

2000-11-05  Havoc Pennington  <hp@pobox.com>

* glib/tmpl/markup.sgml: Write docs
2000-11-05 18:38:08 +00:00
Havoc Pennington
7e85ae4f28 remove parens from section name, confuses gtk-doc
2000-11-05  Havoc Pennington  <hp@pobox.com>

* glib/glib-sections.txt: remove parens from section name,
confuses gtk-doc

* glib/glib-docs.sgml: Add the new files here, doh.

* glib/tmpl/shell.sgml: add gshell.[hc] docs
2000-11-05 17:07:19 +00:00
Havoc Pennington
d4ff0ef999 Free the src error if the dest location is NULL - I'm pretty sure that's
2000-11-05  Havoc Pennington  <hp@pobox.com>

* gerror.c (g_propagate_error): Free the src error if the dest
location is NULL - I'm pretty sure that's what this function was
supposed to do.

2000-11-05  Havoc Pennington  <hp@pobox.com>

* glib/tmpl/error_reporting.sgml: fixes
2000-11-05 17:02:37 +00:00
Havoc Pennington
110c6cbac8 Added
2000-11-05  Havoc Pennington  <hp@pobox.com>

        * glib/tmpl/spawn.sgml, glib/tmpl/markup.sgml,
	glib/tmpl/fileutils.sgml: Added

	* glib/Makefile.am: Add new files

	* glib/glib-sections.txt: Add stuff from -unused

2000-11-05  Havoc Pennington  <hp@pobox.com>

* gutils.c (g_find_program_in_path): cleanup docs, sync param
names to those in the header

* gfileutils.c (g_mkstemp): clean up docs

* gshell.h: sync param names with param names in .c file

* gfileutils.h (enum GFileTest): remove trailing comma from last
member, confuses gtk-doc

* gmarkup.h: s/GMarkupErrorType/GMarkupError/g; to follow
convention
2000-11-05 16:38:16 +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
Sebastian Wilhelmi
e78311ff4e Remove superfluous GSearchFunc.
2000-11-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* glib/tmpl/glib-unused.sgml: Remove superfluous GSearchFunc.
2000-11-02 15:22:57 +00:00
Sebastian Wilhelmi
91b9b2dd12 Added documentation for asynchronous queues.
2000-11-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* glib/tmpl/async_queues.sgml, glib/glib-sections.txt: Added
	documentation for asynchronous queues.

	* gasyncqueue.c: Added inline documentation for asyncronous
	queues.
2000-11-02 14:54:52 +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
Sebastian Wilhelmi
b6eb9a2e7d This time the right fix.
2000-10-31  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* glib/tmpl/linked_lists_single.sgml: This time the right fix.

	* glib/tmpl/scanner.sgml, glib/tmpl/strings.sgml: Changed
	parameter names.

	* glib/tmpl/string_utils.sgml: Corrected the documentation of
	g_strescape and added those of g_strcompress.
2000-10-31 14:55:23 +00:00
Sebastian Wilhelmi
3de6638d23 Added documentation for G_MAXU(INT|SHORT|LONG).
2000-10-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* glib/tmpl/limits.sgml: Added documentation for
	G_MAXU(INT|SHORT|LONG).

	* glib/tmpl/macros_misc.sgml: Added documentation for
	G_G(U)INT(16|32|64)_FORMAT.

	* glib/tmpl/types.sgml: Mention G_MAXU(INT|SHORT|LONG) in
	documentation for gu(int|short|long).
2000-10-30 16:08:23 +00:00
Sebastian Wilhelmi
f8314fd1f7 second try.
second try.
2000-10-30 14:50:32 +00:00
Sebastian Wilhelmi
6ca80ce85f Move GCompareFunc to GList and introduce and document GEqualFunc in
2000-10-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* glib/glib-sections.txt, glib/tmpl/linked_lists_double.sgml,
	glib/tmpl/caches.sgml: Move GCompareFunc to GList and introduce
	and document GEqualFunc in GHashTable.

	* glib/tmpl/caches.sgml, glib/tmpl/hash_tables.sgml,
	glib/tmpl/relations.sgml : Changed to reflect the changed API
	(GCompareFunc -> GEqualFunc).

	* glib/tmpl/linked_lists_single.sgml, glib/tmpl/threads.sgml: Typo
	fixes.
2000-10-30 14:49:50 +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
830d808c5c publically define GSignalInvocationHint structure that gets passed in to
Fri Oct 27 16:33:41 2000  Tim Janik  <timj@gtk.org>

        * gsignal.[hc]: publically define GSignalInvocationHint structure
        that gets passed in to closure invocations. added signal details.
        renamed GSignalType to GSignalFlags to comply with conventions.
        quite some cleanups and minor fixes. avoid uneccessary handler list
        walks upon invokation of after handlers. relookup handler list for
        restarted emissions. preliminary abort normal handler invokation if
        after handler is encountered.

        * glib-genmarshal.c:
        * gclosure.[hc]: moved invocation_hint to the end of the
        g_closure_invoke() arguments as sugegsted by kenelson.
        also made it a gpointer to be more generic. the invocation_hint
        is a caller specific thing that can be used to pass additional
        data in to closure invocations as documented with the caller
        invoking the closure.
2000-10-27 16:48:11 +00:00
Sebastian Wilhelmi
e6dfecacc0 Removed the win32 limitation.
2000-10-27  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* glib/tmpl/misc_utils.sgml: Removed the win32 limitation.
2000-10-27 12:53:05 +00:00
Sebastian Wilhelmi
b6b00bab53 Document the recently deprecated functions as such.
2000-10-27  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* glib/glib-sections.txt, glib/tmpl/hash_tables.sgml,
	glib/tmpl/macros_misc.sgml, glib/tmpl/misc_utils.sgml,
	glib/tmpl/scanner.sgml: Document the recently deprecated functions
	as such.
2000-10-27 12:34:49 +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
1bfc515a37 Change ERROR_OTHER to ERROR_FAILED, add some dummy marking with _().
Mon Sep 11 10:03:24 2000  Owen Taylor  <otaylor@redhat.com>

	* glib.h convert.c (g_convert_with_fallback): Change
	ERROR_OTHER to ERROR_FAILED, add some dummy marking with _().

	* docs/reference/glib/glib-sections.txt
	docs/reference/glib/glib-docs.sgml Update for g_convert,
	g_unicode_validate.
2000-10-19 15:21:04 +00:00
Raja R Harinath
a626a650e5 gmodule: New variable. (dist-hook): Handle $(BUILT_EXTRA_DIST).
gmodule:
* Makefile.am (BUILT_EXTRA_DIST): New variable.
(dist-hook): Handle $(BUILT_EXTRA_DIST).

gobject:
* Makefile.am (BUILT_EXTRA_DIST): New variable.
(dist-hook): Handle $(BUILT_EXTRA_DIST).
(*): Remove traces of @STRIP_{BEGIN,END}@.

gthread:
* Makefile.am (BUILT_EXTRA_DIST): New variable.
(dist-hook): Handle $(BUILT_EXTRA_DIST).

docs/reference:
'make distcheck' fixes.
* glib/Makefile.am (EXTRA_DIST): Add $(DOC_MODULE)-decl.txt.
(html): Run 'gtkdoc-fixxref' in $(srcdir).
(dist-check-gtkdoc): Add missing quote.
(dist-hook): Copy in dependency order, so that none of the
makerules are fired in a tarball build.

* gobject/Makefile.am: Likewise.

toplevel:
Remove need for acconfig.h, and misc. cleanups.
* acglib.m4 (GLIB_SIZEOF): Add 'autoheader' comment to
AC_DEFINE_UNQUOTED.
(GLIB_BYTE_CONTENTS): Likewise.

* configure.in: Add 'autoheader' comments to all AC_DEFINE(...)
and AC_DEFINE_UNQUOTED(...) lines.
Replace AC_MSG_CHECKING/AC_CACHE_VAL with AC_CACHE_CHECK.
(AM_PROG_LIBTOOL): Move after AC_PROG_CC.

* acconfig.h: Empty out.

* Makefile.am (BUILT_EXTRA_DIST): New variable.  List 'dist'able
files that are created in the builddir.
(dist-hook): Handle those files.
(libglib_1_3_la_SOURCES): Remove @ALLOCA@.  @ALLOCA@ should only
be used in an _LDADD or _LIBADD, since it expands (if necessary)
to 'alloca.o'.

* tests/Makefile.am (BUILT_EXTRA_DIST): New variable.
(dist-hook): Handle $(BUILT_EXTRA_DIST).
2000-10-16 01:02:19 +00:00
Sebastian Wilhelmi
eb27cad0f0 Added inline documentation.
2000-10-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* grand.c: Added inline documentation.

	* docs/refernce/glib/glib-sections.txt: Added misc items.

	* docs/refernce/glib/tmpl/random_numbers.sgml: Documentation for
        the random number generator.
2000-10-13 13:52:47 +00:00
Sebastian Wilhelmi
5a2c122afd Revert unintended commit...
Revert unintended commit...
2000-10-12 15:41:37 +00:00
Sebastian Wilhelmi
8131a71780 .cvsignore updates
.cvsignore updates
2000-10-12 15:36:29 +00:00
Raja R Harinath
412710cbcd Forgot to commit this. 2000-10-09 18:02:36 +00:00
Raja R Harinath
c13ffbcd9e Don't set to $top_srcdir)/gobject.
* gobject/Makefile.am (DOC_SOURCE_DIR): Don't set to
$top_srcdir)/gobject.
2000-10-09 18:00:43 +00:00
Raja R Harinath
afd1d9c54f Don't set to $(top_srcdir).
* glib/Makefile.am (DOC_SOURCE_DIR): Don't set to $(top_srcdir).
2000-10-09 17:58:11 +00:00
Sebastian Wilhelmi
0c6a1ee531 Fixed #10086.
2000-10-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* glib-sections.txt, tmpl/modules.sgml: Fixed #10086.
2000-10-05 15:56:41 +00:00
Jonathan Blandford
b3ee868f94 Added function to keep symetry with g_node_insert_before. 2000-09-29
2000-09-29  Jonathan Blandford  <jrb@redhat.com>

	* gnode.c (g_node_insert_after): Added function to keep symetry
	with g_node_insert_before.
2000-09-29  Jonathan Blandford  <jrb@redhat.com>

	* glib/tmpl/trees-nary.sgml: Add g_node_insert_after().
2000-09-29 23:13:02 +00:00
Owen Taylor
ddbb2ea440 Implement g_ucs4_to_utf8 which was in
Mon Sep 18 10:58:21 2000  Owen Taylor  <otaylor@redhat.com>

	* gutf8.c: Implement g_ucs4_to_utf8 which was in
2000-09-18 14:55:24 +00:00
Owen Taylor
a5c0df554e Some further makefile improvement.
Thu Sep  7 12:35:35 2000  Owen Taylor  <otaylor@redhat.com>

        * Some further makefile improvement.

	* Restore all the docs that mysteriously vanished earlier.
2000-09-07 16:36:56 +00:00
Havoc Pennington
29b652941c docs
2000-09-06  Havoc Pennington  <hp@redhat.com>

	* gerror.c: docs

	* docs/reference/glib/tmpl/error_reporting.sgml: docs
2000-09-06 23:30:21 +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
Owen Taylor
8cc4771fa2 Add gtk-doc checks for newly added docs/reference/ subdir.
Tue Sep  5 20:16:27 2000  Owen Taylor  <otaylor@redhat.com>

	* configure.in docs/Makefile.am: Add gtk-doc checks
	for newly added docs/reference/ subdir.
2000-09-06 00:17:41 +00:00
Owen Taylor
19f04a9024 head -n 4 ChangeLog 2000-09-06 00:04:49 +00:00
Owen Taylor
9556b49053 Remove incomplete start of info file -
Sat Jul 15 23:49:03 2000  Owen Taylor  <otaylor@redhat.com>

	* glib/glib.texi: Remove incomplete start of info file -
2000-07-16 03:49:54 +00:00
Owen Taylor
eb023508ad Move glib-config to glib-config-2.0 move glib.m4 to glib-2.0.m4
Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>

	* configure.in Makefile.am glib-config.m4 glib.m4: Move
	glib-config to glib-config-2.0 move glib.m4 to
	glib-2.0.m4

	* Makefile.am gobject/Makefile.am gmodule/Makefile.am
	gthread/Makefile.am tests/Makefile.am: Change
	library names to libglib-1.3.la, etc, so that we
	can distinguish glib-1.2 and glib-2.0 on the linkline.

	* Makefile.am gobject/Makefile.am gmodule/Makefile.am:
	Move include files into /usr/include/glib-2.0.

Thu Jul  6 18:54:49 2000  Owen Taylor  <otaylor@redhat.com>

	* docs/Makefile.am (EXTRA_DIST): Remove info files
	from the build.
2000-07-14 19:22:54 +00:00
Damon Chaplin
0df07abdb1 updated g_strndup.
2000-07-01  Damon Chaplin  <damon@helixcode.com>

	* tmpl/string_utils.sgml: updated g_strndup.
2000-07-01 22:45:11 +00:00
Damon Chaplin
876a6767eb updated a bit more.
2000-06-11  Damon Chaplin  <damon@helixcode.com>

	* tmpl/messages.sgml: updated a bit more.
2000-06-11 18:32:13 +00:00
Damon Chaplin
2c4d8d1ae2 updated a few bits about log handlers & flags.
2000-06-11  Damon Chaplin  <damon@helixcode.com>

	* tmpl/messages.sgml: updated a few bits about log handlers & flags.
2000-06-11 17:28:20 +00:00
Damon Chaplin
186010f7ab updated.
2000-04-16  Damon Chaplin  <damon@helixcode.com>

        * tmpl/linked_lists_single.sgml:
        * tmpl/linked_lists_double.sgml:
        * tmpl/trees-nary.sgml: updated.

        * tmpl/modules.sgml: described g_module_build_path().

        * tmpl/date.sgml: made short description lower case and end in a '.'.

        * glib-sections.txt: rearranged GDate section.

        * tmpl/arrays.sgml:
        * tmpl/arrays_byte.sgml:
        * tmpl/arrays_pointer.sgml: updated.
2000-04-15 23:34:34 +00:00
Damon Chaplin
4a3f7e3b42 updated the g_source_remove_by_XXX() descriptions to note that only the
2000-02-21  Damon Chaplin  <damon@helixcode.com>

        * tmpl/main.sgml: updated the g_source_remove_by_XXX() descriptions
        to note that only the first source found is removed.
2000-02-21 21:08:17 +00:00
Damon Chaplin
86b2741c1e g_bit_nth_lsf/msf docs from Nils Rennebarth <nils@ipe.uni-stuttgart.de>,
2000-01-25  Damon Chaplin  <damon@karuna.freeserve.co.uk>

        * tmpl/misc_utils.sgml: g_bit_nth_lsf/msf docs from
         Nils Rennebarth <nils@ipe.uni-stuttgart.de>, and updates for
        GVoidFunc & GFreeFunc.
2000-01-27 22:14:26 +00:00
Sebastian Wilhelmi
d1bbb7f07f Removed G_THREADS_IMPL_NSPR. Shouldn't be used anyway.
1999-12-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* glib-sections.txt, tmpl/threads.sgml: Removed
	G_THREADS_IMPL_NSPR. Shouldn't be used anyway.

	* glib-overrides.txt: New file, that makes most of the thread
	related macros look like functions.

	* Makefile.am: Added glib-overrides.txt to EXTRA_DIST.

	* tmpl/threads.sgml: Minor updates.
1999-12-02 14:32:41 +00:00
Sebastian Wilhelmi
2e46a21fed Create docs/glib-config.1 from docs/glib-config.1.in. Makes 'make
1999-11-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* configure.in: Create docs/glib-config.1 from
	docs/glib-config.1.in. Makes 'make distcheck' happy (and me too).

	* glib-config.1: Removed from CVS, as it is a generated file.
1999-11-09 14:45:59 +00:00
Owen Taylor
36a4ad3713 Updates to .cvsignore. 1999-08-17 12:40:49 +00:00
Owen Taylor
0abbf9b6fb Added missing </para> Added missing </para> Added missing </para> Added
Tue Aug 17 08:42:17 1999  Owen Taylor  <otaylor@redhat.com>

	* tmpl/datasets.sgml: Added missing </para>
	* tmpl/timers.sgml: Added missing </para>
	* tmpl/misc_utils.sgml: Added missing </para>
	* tmpl/linked_lists_double.sgml: Added missing </para>
	* tmpl/linked_lists_single.sgml: Added missing </para>
	* tmpl/threads.sgml: Removed extra <para>s.
	* tmpl/main.sgml: Added missing </para>
1999-08-17 12:39:52 +00:00
Owen Taylor
495c25fd80 A few more notes about mechanism and policy. 1999-08-16 18:38:22 +00:00
Owen Taylor
3ae5f29ce1 Added some simple build instructions.
Wed Aug 18 23:38:52 1999  Owen Taylor  <otaylor@redhat.com>

	* README: Added some simple build instructions.

Added a .cvsignore
1999-08-16 18:28:01 +00:00
Owen Taylor
9231462089 Initial revision 1999-08-16 17:58:30 +00:00
Tim Janik
87c7aeb93b 18:36. incorporated proposed cleanups from gtk-devel-list.
Sat Jul 24 20:11:35 1999  Tim Janik  <timj@gtk.org>

        * merged GLib 1.3.0 with glib-1.2.3 from Fri Jul 16 22:18:36.
        * incorporated proposed cleanups from gtk-devel-list.

        * bumped version number to GLib-1.3.1

        * glib.h:
        * gqueue.c:
        * gstring.c:
        * glist.c:
        removed string tokenisation (we got g_strsplit() and g_strjoin()
        already) and readline functions.
        s/g_list_delete/g_list_delete_link.
        implemented g_slist_delete_link.
        removed notion of g_ATEXIT() macro in glib.h, this is an *internal*
        macro, g_atexit() is provided for public consumption.
        added GTrashStack inline utility functions.
        reimplement double eneded queues.
        removed GStack implementation, people can use a queue or a (singly)
        linked list for this task.
        deprecated g_strescape(), we need the SunOS variants here.

        * gdate.c: added DEBUG_MSG() macro to wrap old messages.

        * *.*: CVS merges.

        * upgrade to libtool 1.3.3.
1999-07-24 18:50:58 +00:00
Shawn Amundson
bbc2cc4e0e Increment some version numbers, add warning to configure.
Increment some version numbers, add warning to configure.

-Shawn
amundson@gtk.org
1999-04-09 02:16:39 +00:00
Shawn Amundson
a66533dbfa Increment version to 1.2.0.
Increment version to 1.2.0.

-Shawn
amundson@gtk.org
1999-02-25 21:34:25 +00:00
CST 1999 Shawn T. Amundson
95a5574cf4 version=1.1.16
Tue Feb 16 14:08:59 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * NEWS
          README
          INSTALL
          config.h.win32
          configure.in
          glib.spec
          glibconfig.h.win32
          docs/glib-config.1: version=1.1.16

        * Released GLib 1.1.16
1999-02-16 21:20:13 +00:00
PST 1999 Shawn T. Amundson
3d2943e0cf version=1.1.15
Thu Feb  4 01:45:01 PST 1999 Shawn T. Amundson <amundson@gtk.org>

        * ChangeLog
          NEWS
          README
          configure.in
          glib.spec
          docs/glib-config.1: version=1.1.15

        * Released GLib 1.1.15
1999-02-04 12:59:35 +00:00
Manish Singh
e4489fad96 Removed autogened files, add -a to automake
-Yosh
1999-01-31 20:29:09 +00:00
CST 1999 Shawn T. Amundson
0fc0cf6635 version=1.1.14
Wed Jan 27 23:21:50 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * INSTALL
          NEWS
          README
          configure.in
          glib.spec
          docs/glib-config.1: version=1.1.14

        * Released GLib 1.1.14
1999-01-28 08:13:30 +00:00
Manish Singh
9d71cc7f50 Xsed isn't valid here, don't use it
* acinclude.m4: Xsed isn't valid here, don't use it

* ltmain.sh
* ltconfig: better file magic regexp for Linux libs

* gmodule/Makefile.am: arg, noinst_LTLIBRARIES doesn't make shared
libs, revert my previous change to this file

* docs/texinfo.tex: add it so automake doesn't whine

-Yosh
1999-01-28 04:43:35 +00:00
CST 1999 Shawn T. Amundson
a478fc7a3f Released GLib 1.1.13
Sun Jan 17 17:13:54 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * Released GLib 1.1.13

        * README:
          INSTALL:
          docs/glib-config: ver=1.1.13
1999-01-17 23:38:55 +00:00
CST 1999 Shawn T. Amundson
887c4449d9 Released GLib 1.1.12
Mon Jan  4 02:58:13 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * Released GLib 1.1.12

        * INSTALL:
          NEWS:
          README:
          configure.in:
          glib.spec:
          docs/glib-config.1: version=1.1.12

        * tests/Makefile.am: fixed so it works properly with
          builddir and srcdir.
1999-01-04 10:07:44 +00:00
CST 1998 Shawn T. Amundson
c3dc4fafbf Released GLib 1.1.11
Wed Dec 30 18:24:57 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GLib 1.1.11

        * INSTALL:
          NEWS:
          README:
          configure.in:
          docs/glib-config.1: version=1.1.11
1998-12-31 02:21:53 +00:00
CST 1998 Shawn T. Amundson
b13a3368b3 Released GLib 1.1.10
Wed Dec 23 00:43:25 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GLib 1.1.10

        * INSTALL:
          NEWS:
          README:
          configure.in:
          docs/glib-config.1: version=1.1.10
1998-12-24 14:55:56 +00:00
Elliot Lee
c250dff3f6 Now passes 'make distcheck'.
Now passes 'make distcheck'.
1998-12-22 22:16:16 +00:00
Elliot Lee
27adb362e5 Work with builddir != srcdir
Work with builddir != srcdir
1998-12-22 22:10:42 +00:00
CST 1998 Shawn T. Amundson
d9fca59e2a Released GLib 1.1.9
Wed Dec 16 23:04:26 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GLib 1.1.9

        * INSTALL:
          NEWS:
          README:
          configure.in:
          glib.spec:
          docs/glib-config.1: version=1.1.9
1998-12-17 05:16:29 +00:00
Sebastian Wilhelmi
2e57a36438 Updated to reflect the existence of gthread.
1998-12-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* docs/glib-config.1: Updated to reflect the existence of gthread.

	* gmain.c (g_main_poll_add_unlocking): Changed
	g_main_poll_add_unlocked to g_main_poll_add_unlocking to match
	semantic, (indeed, main_loop must be locked, when calling this
	function). Removed the unlocking from the end of that function, as
	that is not right. Made a 'HOLDS' comment above the function.
1998-12-16 09:34:30 +00:00
CST 1998 Shawn T. Amundson
06600bd0e6 Released GLib 1.1.8
Tue Dec 15 23:16:05 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GLib 1.1.8
1998-12-16 05:18:43 +00:00
CST 1998 Shawn T. Amundson
1f199b4e7b Released GLib 1.1.7
Thu Dec 10 21:49:39 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GLib 1.1.7

        * INSTALL:
          NEWS:
          README:
          configure.in:
          glib.spec:
          docs/glib-config.1: Increased version to 1.1.7
1998-12-11 06:10:08 +00:00
CST 1998 Shawn T. Amundson
e37b4d00a4 NEWS: README: glib.spec: docs/glib-config.1: Incremented versions to
Tue Dec  1 23:01:44 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * INSTALL:
          NEWS:
          README:
          glib.spec:
          docs/glib-config.1: Incremented versions to 1.1.6.
1998-12-02 05:30:22 +00:00
CST 1998 Shawn T. Amundson
3556db2054 NEWS: README: configure.in: glib.spec: Updated to version 1.1.5
Sat Nov 21 14:57:39 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * INSTALL:
          NEWS:
          README:
          configure.in:
          glib.spec: Updated to version 1.1.5

        * Released GLib 1.1.5
1998-11-23 01:37:32 +00:00
Gregory McLean
4d8c3570b9 Removed per request.
-- Greg
1998-11-19 20:29:20 +00:00
EST 1998 Gregory McLean
24273ca743 Batch of new documentation that should be easier to maintain and extend.
Wed Nov 11 18:11:24 EST 1998 Gregory McLean <gregm@comstar.net>

        * docs/*.sgml : Batch of new documentation that should be easier
        to maintain and extend. Plus generate whatever sort of doc file
        you would like. I didn't change the Makefile stuff as I'm not sure
        what default doc type people want. Oh and this is all DocBook format.
        Enjoy!
1998-11-11 23:19:57 +00:00
CST 1998 Shawn T. Amundson
c3d01e7332 Released GLib 1.1.4
Sun Oct 25 01:24:01 CST 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GLib 1.1.4

        * docs/Makefile.am:
        * docs/.cvsignore
        * docs/glib-config.1:
        * docs/glib.texi: Moved docs from gtk and created glib-config.1
        from gtk-config.1 in gtk

        * configure.in:
        * Makefile.am:
        * sanity_check: added in docs directory, change rule 'release'
        to 'snapshot' and created a new 'release' rule for doing the
        distribution.  Added in a 'sanity' rule.

        * NEWS:
        * README:
        * INSTALL: Updated for the release
1998-10-25 08:20:31 +00:00