2006-11-22  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_typeinterface.c: Fixed a bug when accessing the properties
	of GLib::Instantiatable. 

2006-11-05  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Set "0" to micro version of version 
	header if pkg-config --modversion doesn't have micro version.
	Bug #1590573.
	
2006-10-12  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_closure.c: improved alive check.

2006-09-26  Kouhei Sutou  <kou@cozmixng.org>

	* src/lib/mkmf-gnome2.rb: used $INCFLAGS instead of $CFLAGS.

2006-09-25  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_closure.c: improved closure handling. I hope this
	change fixes a closure related segmentation fault bug.
	- added available data marks and checked that marks.

2006-09-21  kangabroo

	* src/rbgobj_enums.c: fixed typo. bug #1561675.

2006-08-17  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_object.c: Compiled on GLib-2.8.x again. 

2006-07-09  Kouhei Sutou  <kou@cozmixng.org>

	* src/glib2.def, src/rbgobject.c, src/rbgobject.h
	(rbgobj_ruby_object_from_instance_with_unref):
	added convenience function.
	* src/rbglib.h (GOBJ2RVALU): added convenience macro.

	* src/rbgobj_object.c: implemented GLib::InitiallyUnowned.

	* src/rbglib.h (RVAL2CSTR2): added convenience macro.

2006-06-30  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_mainloop.c, rbgobject.h, glib2.def: Improve to support
	Win32. rbg_(set|remove)_internal_poll_func are externed.

2006-06-28  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Fixed wrong include path.
	* src/rbglib.h: Increment version info.

2006-06-18  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c: Fixed a problem when the object which extends Module
	can't access the instance methods. Reported by Laurent Sansonetti and Bug #1496185.

2006-06-17  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/type-register?.rb: Remove Gtk.init.
	* src/lib/glib2.rb: Added GLib.exit_application. This is called when it raises
	the exception in a callback proc and it isn't catched in the proc.
	* src/rbgutil.c: Added G_PROTECT_CALLBACK. You need to wrap the functions which
	run in the mainloop with this. This is based on rclosure_marshal_do() in
	src/rbgobj_closure.c.
	* src/rbgobj_closure.c: Apply above G_PROTECT_CALLBACK.
	* src/rbgutil.[ch]: Added GLIST2ARYF, GLIST2ARY2F, GSLIST2ARYF, GLIST2ARY2F. 
	 They free the list with g_list_free() or g_slist_free() internal.
	* src/glib2.def: Follow above changes.
	
2006-06-09  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgobj_object.c: Only let the GObject mark function retrieve
	object properties that it will actually mark. Which is currently just
	other GObjects

2006-06-05  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_closure.c, glib2.def: Works on Windows again.

2006-05-29  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobjvalue.c: Use g_type_set_qdata and g_type_get_qdata instead
	of ruby's hash table.

	* src/rbgobj_singal.c: new function gobj_sig_connect_impl
	extracted from gobj_sig_connect and gobj_sig_connect_after.

	* src/rbgobj_signal.c: Make eNoSignal and _signal_list to be static.

2006-05-27  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c: Remove GLib::Object#singleton_method_added.
	Now we can't define signal handlers by defining singleton methods.

	* src/rbgobj_typeinstance.c (each_cinfo): Fix to traverse ancestor's cinfo.

	* src/rbgobj_paramspecs.c, src/rbgobj_value.c: Use RVAL2GOBJ instead of
	rbgobj_param_spec_get_struct().
	* src/rbgobj_param.c: Rename rbgobj_param_spec_get_struct() to
	rbgobj_get_param_spec().

	* src/rbgobject.c: Remove rbgobj_ruby_object_from_instance_if_exist
	and add rbgobj_ruby_object_from_instance2.
	* src/rbgobject.c: Remove rbgobj_get_value_from_gobject_if_exist
	and extend rbgobj_get_value_from_gobject by adding one argument.
	* src/rbgobj_param.c: Remove rbgobj_get_value_from_param_spec_if_exist
	and extend rbgobj_get_value_from_param_spec by adding one argument.
	* src/rbgobject.h, src/global.h, src/glib2.def,
	src/rbgobj_typeinstance.c: Follow above changes.

	* src/rbgobj_typeinterface.c: New file.
	* src/rbgobj_type.c, src/rbgobject.c: separate some interface stuffs
	into src/rbgobj_typeinterface.c.

	* src/rbgobj_typeinstance.c: New file.
	* src/rbgobj_type.c, src/rbgobject.c, rbgobj_param.c: separate
	some cInstantiatable stuffs into rbgobj_typeinstance.c.
	* src/global.h: ditto.

	* src/rbgobj_closure.c: Revert changes of 2006-04-15.
	We shouldn't use Data_Make_Struct in rclosure_marshal since
	this function could be called from arbitrary threads.
	* src/rbgobj_closure.c: simplify codes a bit.

	* src/rbgobject.c, src/rbgobj_value.c, rbgobject.h, src/glib2.def:
	Add new APIs:
	void rbgobj_gc_mark_instance(gpointer instance) and
	void rbgobj_gc_mark_gvalue(GValue* value).

	* src/rbgobject.c: Change to call `mark` and `free` functions of all
	associated cinfo (not only direct one).

	* src/rbgobj_object.c: Register mark procedure which marks
	each property value. So that each property value is protected from GC
	whenever the owner is alive.

	* src/rbgobj_param.c:
	Add rbgobj_get_value_from_param_spec_if_exist.

	* tests/test-glib2.rb (test_inheritance_and_gc): call GC.start.

2006-05-27  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_maincontext.c: fixed idle/timeout callback memory leak.

	* src/rbgobject.c: added rbgobj_get_relative_removable.
	* src/rbgobject.h: ditto.
	* src/glib2.def: ditto.

	* src/rbglib_source.c: moved GLib::Source.remove to
	rbglib_maincontext.c

	* src/rbglib.c: initialize source before main_context.

2006-05-26  Sjoerd Simons <sjoerd@luon.net>

	* src/rbgobj_closure.c: Ensure that a signal handler in ruby is always run in
	a ruby native thread. This allows signals coming from non-ruby native threads
	to be handled correctly. Needs ruby configured with --enable-pthread to work
	(otherwise the behaviour isn't changed)

2006-05-26  Sjoerd Simons <sjoerd@luon.net>

	* src/rbglib.h, src/global.h: Move the 64 bit integer 
	util functions to the public header

2006-05-27  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c: Fix the format string of rb_raise to match with
	actual arguments.

2006-05-26  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb, src/rbgobj_rbgobj_closure.c: fix compilation error on YARV.

2006-05-23  Sjoerd Simons

	* src/rbgobj_fundamental.c: Fixed typo.

2006-05-18  Kouhei Sutou  <kou@cozmixng.org>

	* src/lib/pkg-config.rb (PKGConfig#have_package): accepted 0.X.X
	version as check target version.

2006-05-17  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_strv.c: Removed GLib::Strv because they are useless.
	* src/rbgobj_valuearray.c: Removed GLib::ValueArray.
	
2006-05-17  Sjoerd Simons

	* src/rbgobj_valuearray.c: Added.
	* src/rbgobj_closure.c: Fixed crash when handling exception coming 
	from an signal handler.

2006-05-14  Sjoerd Simons

	* src/rbgobj_enums.c: Don't crash if a genum's nick is uninitialized.
	* src/rbglib_completion.c: Fixed GLib::Completion#remove_items. 
	* src/glib2.def, global.h, rbgobj_type.c, rbgobj_value.c,
	rbgobject.[ch], rbgobj_fundamental.c: Added to be able to
	add new fundamental object to Ruby/GLib2 such as GLib::Object,
	GLib::Boxed.

2006-04-20  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_closure.c (g_rclosure_attach): Fixed a bug
	GLib::Object.type_register doesn't work.
	* src/rbgobj_type.c: Fixed a bug GLib::MetaInterface#gtype doesn't
	work.

	* src/rbgobj_closure.c: Fixed a closure reference count bug.

2006-04-19  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_type.c (rbgobj_lookup_class): fixed typo.

2006-04-15  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_closure.c (rclosure_marshal, rclosure_marshal_body):
	Changed an argument type to VALUE from struct marshal_arg *.

2006-03-18  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_closure.c: Fixed memory leak. Held closure in each
	object instead of using global table to protect GRClosure from
	Ruby's GC. Each function using GRClosure needs to call
	g_rclosure_attach to protect GRClosure from Ruby's GC.

	* src/glib2.def: Added g_rclosure_attach.
	* src/rbgobject.h: ditto.

	* src/rbgobj_object.c: Called g_rclosure_attach.
	* src/rbgobj_signal.c: ditto.

2006-03-11  Joao Pedrosa 

	* src/rbglib_win32.c: Fix a typo on win32.

2006-02-08  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_win32.c: Supported GLib.win32_locale and
	GLib.win32_locale_filename_from_utf8.

	* src/rbglib_i18n.c: Supported GLib.language_names.

2006-01-14  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbglib_source.c: GLib::Source#remove -> GLib::Soruce.remove.

2005-12-17  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_signal.c: Fixed to use G_BLOCK_PROC.
	
2005-11-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_timer.c: Fix to compile on Cygwin.

2005-11-14  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Increment micro version.
	* src/rbgobject.h, glib2.def: Fixed problems on Win32.

2005-11-05  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.[ch]: Added G_CHILD_REMOVE_ALL.

2005-11-03  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_mainloop.c: rb_thread_wait_for waits 10ms instead of 100ms
	to avoid to lose any signals for Win32. Report by MIYAMUKO Katsuyuki.
	* src/rbgobject.[ch]: Added G_CHILD_SET, _UNSET, _ADD, _REMOVE.
	* src/rbgobj_object.c: Keeps ruby objects as instance variables
	of the object not to be GCed(GLib::Object#(set|get)_property).
	* src/rbgobject.c: Fixed memory leaks. Bug #1341573. Retrieve
	the code from 0.13.0. So, other libs need to support G_CHILD_*
	to avoid Tomasz's problem(2005-09-15).

2005-10-16  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Increment version information. 
	* src/rbglib_mainloop.c: Fixed to compile on Win32.

2005-10-15  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c, rbglib_timer.c, rbglib_completion.c,
	rbgobject.c, rbgobj_type.c, rbglib_messages.c: 
	Fixed a compilation errors/warnings under GTK+-2.0/Ruby-1.6. 
	* src/rbglib.c, src/rbglib_timer.c: Added GLib::Timer.
	* sample/timer.rb: Added.
	* src/rbglib_completion.c: Added GLib::Completion.
	* sample/completion.rb: Added.

2005-10-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.c: Added constants from "Limits of Basic Types",
	 "Numerical Definitions".
	* src/rbglib_shell.c: Added GLib::Shell.
	* sample/shell.rb: Added.

2005-10-08  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Added make_version_header.

2005-10-07  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_mainloop.c: Works with ruby threads and signal handlers.
	Reported by Bram Senders.

2005-10-05  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_enums.c: Supports spaces in nick names. 
	Reported by Detlef Reichl.

2005-10-04  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Fix a bug to compile
	Ruby-GNOME2 with Ruby/Cairo on Win32.
	* src/rbglib_utils.c: Fix a linking error on Win32.
	* extconf.rb: ditto.

2005-09-29  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.c: Added GLib::BUILD_VERSION.

2005-09-18  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c: Add GLib::MetaInterface#install_property, #property,
	#properties.
	* src/rbgobject.c: Doesn't wrap the set_foo functions 
	for construct only properties by Sven Herzberg [Bug #1192975]

2005-09-15  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Supports Ruby-GetText-Package.
	You can use GetText methods unless "require 'gettext'".
	And it works in English if the users don't have Ruby-GetText-Package.
	* src/rbgobject.c: Keep the ruby object when the GObject is removed by C side. 
	Tomasz Wegrzanowski.

2005-09-13  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c: Show Warning messages unless -d option.
	Pointed out by Guillaume Cottenceau.

2005-09-12  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.c (rbgobj_instance_from_ruby_object): Fixed the error messages
	"TypeError: fundamental type glong isn't supported" to 
	"TypeError:Fixnum isn't supported". Pointed out by Guillaume Cottenceau.

2005-09-08  Kouhei Sutou  <kou@cozmixng.org>

	* src/rbgobj_boxed.c (rbgobj_make_boxed): Return nil if boxed
	object is NULL.

2005608-21  Pascal Terjan <pterjan@linuxfr.org>

	* src/rbglib_utils.c: Added GLib.listenv and .host_name (2.8)

2005-07-30  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Increment version.
	* sample/type-register.rb: Fix a bug.

2005-07-27  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/pkg-config.rb: Added PKGConfig.name, .description,
	 .provides, .requires.

2005-07-26  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_iochannel.c, rbglib_maincontext.c: Works on Win32 again.

2005-07-24  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/pkg-config.rb: Added PKGConfig.list_all.

2005-07-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* extconf.rb, src/rbglib_maincontext.c, rbglib_iochannel.c: 
	Fix to work on ruby-1.6.8, GTK+-2.0.6. 
	* src/rbglib_iochannel.c, rbgobj_object.c: Fix a compiling warning. 

2005-07-15  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/iochannel.rb, timeout.rb: Modified header comments. 

2005-07-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/iochannel.rb: Added. 

2005-07-02  Masao Mutoh  <mutoh@highway.ne.jp>

	* tests/test-iochannel.*: Added tests for GLib::IOChannel. 

2005-06-30  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_iochannel.c: Rename GLib::IOChannel#fd => #fileno, #to_i. 
	Improved #seek.

2005-06-29  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_iochannel.c: Added GLib::IOChannel#each_char, #each, #each_line.

2005-06-28  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_iochannel.c: Rename GLib::IOChannel#read_chars => #read.
	Unify GLib::IOChannel#read_to_end => #read.

2005-06-26  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_iochannel.c: Rename GLib::IOChannel#read_unichar => #readchar.
	#read_line => #readline. Add #gets, #getc.

2005-06-16  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_strv.c: Fix double free error. 
	* src/rbglib_iochannel.c: Added GLib::IOChannel.
	* src/rbglib.c, rbgobject.h: ditto.

2005-03-24  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/spawn.rb: Add a comment. Bugs:1159417.
	* extconf.rb: Add require gtherad-2.0. Bugs: 1159413

2005-03-21  Vincent Isambart <isambart@netcourrier.com>

	* src/lib/pkg-config.rb: Renames the "libs" local variable to "libraries"
	to work ruby-1.9.x.

2005-03-14  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h, rbgobject.h: Move some macros/definitions to rbgobject.h
	Reported by Vincent Isambart.
	* src/rbglib_maincontext.c: Added GLib::MainContext#query. 

2005-03-13  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/idle.rb, timeout.rb, timeout2.rb: Added.
	* src/rbglib_pollfd.c: Added GLib::PollFD. 
	* src/rbglib_source.c: Added GLib::Source. 
	* src/rbglib_maincontext.c: Added GLib::MainContext#find_source,
	#add_poll, #remove_poll, GLib::Timeout, GLib::Idle, GLib::ChildWatch.
	* src/rbglib.[ch]: Support GLib::PollFD, GLib::Source.

2005-03-12  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_mainloop.c: Added GLib::MainLoop. 
	* src/rbglib_maincontext.c: Added GLib::MainContext. 
	* src/rbglib.[ch]: Support GLib::MainLoop, GLib::MainContext.

2005-03-06  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_threads.c, extconf.rb: Fix compiling problem on MSVC++.

2005-03-05  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/spawn.rb: Added.
	* README: Revised.

2005-02-26  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.c, rbglib_threads.c: Added GLib::Threads. 
	* src/lib/pkg-config.rb: Added PKGConfig.cflags_only_I, .cflags_only_other.
	* src/rbglib.h: Increment version information.

2005-02-26  KATO Kazuyoshi  <kzys@8-p.info>

	* src/rbgobj_type.c (rbgobj_lookup_class): Fixed a problem in Ruby 1.9.
	[ruby-list:40518] [ruby-dev:23690]

2005-02-22  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Removed to call GLib::Log.cancel_handler.

2005-02-17  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Don't remove Makefile with 'nmake clean'.

2005-02-15  Masao Mutoh  <mutoh@highway.ne.jp>

	* README, COPYING.LIB: Replace "GNU LIBRARY GENERAL PUBLIC LICENSE"
	to "GNU LESSER GENERAL PUBLIC LICENSE".

2005-02-09  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Fix the default error level.

2005-02-02  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c: Fix a compiling warning on Cygwin.

2005-02-01  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Change checking-rules order.
	Added GTK_BASE_PATH environment variable option for Win32.
	* src/rbglib.c, rbglib_convert.c, rbgutil.h, rbgobject.h: 
	Remove to include glib.h directly.

2005-01-31  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c: Fix segfault, and make it simple.
	Now it doesn't raise Exception, because of bad influence to
	other libs such as gnomeprint.

2005-01-30  Masao Mutoh  <mutoh@highway.ne.jp>

	* extconf.rb: Follow mkmf-gnome2.rb changes.
	* src/lib/pkgconfig.rb: Separated from mkmf-gnome2.rb.

2005-01-28  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_message.c, rbglib_spawn.c, rbgobject.c, rbgobj_boxed.c, 
	rbgobj_closure.c,rbgobj_enums.c,rbgobj_object.c, rbgobj_type.c, 
	src/lib/mkmf-gnome2.rb: Support MS VC++.
	* src/lib/mkmf-gnome2.rb: Added setup_win32, add_depend_package.
	* src/glib.def: Added rbgobj_register_class.

2005-01-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Remove $KCODE="U". Reported by Dafydd Harries.
	Added header information.

2005-01-09  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Improved error handling. 
	* src/rbglib_messages.c: ditto. 
	* src/rbgobj_strv.c: Added for GLib-2.4.x. Support GStrv as Array.
	* src/rbgobject.c: Support GStrv.

2004-11-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c, src/lib/glib2.rb: 
	Rewrite code to C for stablity.

2004-11-14  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Increment version information. 

2004-11-03  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c: Works again for ruby-1.8.x. 
	Reported by Kohei Sutou.

2004-10-31  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c: Check the paratmeter is Block or not. 

2004-10-22  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Added GLib.check_binding_version?
	* src/rbglib_utils.c: GLib.check_version: Use static variables
	instead of MACROS.
	GLib.check_version -> GLib.check_version?.
	* sample/utils.rb: ditto.

2004-10-20  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_convert.c: Implemented GLib::ConvertError. 

2004-10-18  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: Added PKGConfig.modversion, .check_version?.
	PKGConfig#have_package accept major, minor micro version to check 
	the module version correctly.
	Pointed out by Kouhei Sutou.

2004-10-17  Vincent Isambart <isambart@netcourrier.com>

	* src/lib/mkmf-gnome2.rb: Renamed add_uniq_to_objs to add_obj.

2004-10-17  Vincent Isambart <isambart@netcourrier.com>

	* src/lib/mkmf-gnome2.rb: Added the add_uniq_to_objs function.

2004-09-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Renamed GLib::Log.set_error_domain to 
	GLib::Log.set_log_domain.

2004-09-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Improved log handling.
	Define GLib::ERROR_DOMAIN, GLib::Object::LOG_DOMAIN, 
	GLib::Thread::LOG_DOMAIN, GLib::Module::LOG_DOMAIN.

2004-09-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Add GLib::Log.set_error_domain for improvement
	error handling.

2004-09-03  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/glib2.rb: Set $KCODE to "U".

2004-08-22  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_enums.c: makes rbgobj_define_const to a global function.
	* src/rbglib_error.c: Fix bugs. Re-implement rbgerr_define_gerror.

2004-08-19  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c: rbgobj_define_class() can define parent compulsorily.
	* src/rbgobj_param.c, rbgobj_object.c, rbgobj_boxed.c: Follow above change.

	* src/rbgerror.c, rbglib.h: Added. Replace rbgutil_gerror2exception.
	* src/rbgutil.[ch]: Removed rbgutil_gerror2exception.
	* src/rbgfileutils.c: Added for GLib::FileError.
	* src/rbgutil.c: Improved RAISE_GERROR.
	* src/rbglib.c, glib2.def: Follow these changes. 

2004-08-15  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Increment version number.

2004-08-07  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_spawn.c: Fix warnings. 
	* src/rbgobject.c: Fix a warning. 

2004-08-04  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Define GPid when GLib < 2.4.0.

2004-08-02  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_spawn.c: Change the parent of GLib::Spawn*Error to 
	StandardError from SystemCallError.
	Added GLib::Spawn#async_with_pipes, #async, #sync.
	Make uniform of the return values of GLib::Spawn#command_line_sync
	to #sync.

2004-08-01  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h, glib2.def: Export rbglib_spawn_error() 
	for Gdk::Screen#spawn_on_screen.
	Increment version.

2004-07-31  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.c: setlocale parameter was changed. 
	LC_CTYPE and LC_MESSAGES are set not LC_ALL.

2004-07-24  Masao Mutoh  <mutoh@highway.ne.jp>

	* tests/test-glib2.rb: Removed ^M. Pointed out by Laurent Sansonetti.
	* src/rbglib.c: Version informations use variables not macros. 
	Added GLib::INTERFACE_AGE, GLib::BINARY_AGE.
	Pointed out by Jeremy Henty

2004-05-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h. glib2.def: Fixed a problem with rbg_cstr2rval_with_free
	reported by Joao Pedrosa.

2004-05-16  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.c (rbgobj_define_property_accessor): Supports 
	interface properties (Since 2.4).
	* src/rbgobj_type.c (rbgobj_init_interface): ditto. 

2004-05-15  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.[ch]: Add CSTR2RVAL2 which free given char* area. 

2004-05-05  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbglib_spawn.c: Fixed a memory overflow bug in the
	  spawn_error table.
 
2004-05-01  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_spawn.c: Fix an initial error on some platforms 
	to restrict errno to exist the environment. 
	Reported by Laurent Sansonetti.
	
2004-04-30  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/utils.rb: Add a sample.
	* src/rbglib_utils.c: Add/Modify some methods.
	* src/lib/glib2.rb: Fix a bug which GLib.__add_one_arg_setter(klass) 
	doen't work for module function and moved from src/rbgutil.c.

2004-04-30  Pascal Terjan <pterjan@linuxfr.org>

	* src/rbglib_utils.c: Added.
	* src/rbglib.c: Follow rbglib_utils.c added.

2004-04-27  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c: Accept a ruby class when GType[...] is required.
	* sample/type-register2.rb: Added.
	* src/rbglib_spawn.c: Improve error classes.
	Separate module from GLib to GLib::Spawn.
	Add GLib::Spawn.close_pid.

2004-04-27  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>

	* src/rbglib_spawn.c: Added.
	* src/rbglib.c: Follow above changes.

2004-04-20  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c: Fix bugs, Add GLib::Log.log, set_fatal_mask, 
	set_always_fatal, some constants.
	* src/lib/glib2.rb: Add GLib::Log.error, message, critical, warning.

2004-04-15  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_convert.c: Add GLib.utf8_validate.
	* src/rbglib.c: Commented out Init_mem(), because of "cross-thread violation"
	with Gst::Thread.

2004-03-24  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.c: RAISE_GERROR() returns  error messages in UTF-8.

2004-03-14  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Increment version number.

2004-03-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c: Fix a compilation error on MinGW.

2004-03-07  Masao Mutoh  <mutoh@highway.ne.jp>

	* sample/type-register.rb: Omit a parameter for type_register.

2004-03-06  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h src/rbgobj_object.c src/rbgobj_paramspecs.c
	  src/rbgobj_signal.c src/rbgobj_type.c src/rbgobject.c
	  src/rbgobject.h src/rbgutil.c src/lib/mkmf-gnome2.rb: Update Copyright.
	* src/lib/mkmf-gnome2.rb: Work under ruby-1.8.1 or later on Cygwin.

2004-03-05  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_object.c: Fix a memleak for GLib::Object#properties. 
	* src/rbgobj_signal.c: Fix a memleak for GLib::Object#signals. 

2004-03-04  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.c: Work under ruby-1.6.8. 
	The idea is from Sasada Koichi.

2004-03-02  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: Increment version number.

2004-02-24  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.c: Remove id, send from prop_exclude_list. 

2004-02-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.h: Add G_DEF_CLASS3(). This is for real-gtype
	but its foo_get_type() isn't public method such as GdkScreenX11.
	* src/rbgobj_type.c: Add RGObjClassInfoDynamic and G_DEF_CLASS3().
	* src/glib2.def: ditto.

2004-02-22  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.c: prop_exclude_list defined as a static hash. 

2004-02-14  Vincent Isambart <isambart@netcourrier.com>

	* src/lib/mkmf-gnome2.rb: replaced PLATFORM with RUBY_PLATFORM

2004-02-01  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_paramspecs.c: Fix a bug for GLib::Param::Flags.new. 

2003-12-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_object.c: Fix a typo. Pointed out by Kazuhiro NISHIYAMA.

2003-12-21  Kenichi Komiya <kom@mail1.accsnet.ne.jp>

	* src/rbgobj_object.c: Check when the first argument is nil or Hash.

2003-11-22  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.h: increment RBGLIB_MICRO_VERSION.

2003-11-15  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_enums.c: disable range checks.

	* sample/type-register.rb: call GLib::Object#notify when a
	property is updated.

	* src/rbgobj_signal.c: remove GLib::MetaInterface#signal_override
	and GLib::Instantiatable#signal_chain_from_overridden.

2003-11-10  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.c: remove duplication of #include <locale.h>.

2003-11-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_enums.c, rbgobject.h: Add G_RENAME_NICK.

2003-11-07  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>	

	* sample/type-register.rb: remove Japanese comments.

	* src/rbglib.h: increment RBGLIB_MINOR_VERSION.

	* src/rbgobj_object.c: do not depend on C99, Thanks to Hiroshi
	IGARASHI.

	* src/rbgobj_object.c: remove unnecessary #endif, Thanks to Nobuyoshi
	Nakada.

2003-11-05  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* sample/type-register.rb: add new file.

	* rename test/test-glib2.rb to tests/test-glib2.rb.

	* src/rbgobj_object.c: rename GLib::Object.register_type to
	type_register and change its arguments.

	* src/rbgobj_object.c, src/rbgobj_signal.c, src/global.h: enable
	subtyping codes by default.

2003-10-29  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/global.h, src/rbgobj_object.c, src/rbgobj_signal.c: share a
	module which serves to hook 'super'.

	* src/rbgobj_signal.c: change prefix of default handler of signals
	from 'do_' to 'signal_do_'.

	* test/test-glib2.rb: new file.

2003-10-26  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (get_prop_func, set_prop_func): replace '-' with
	'_' from method name.

	* src/rbgobj_object.c (get_prop_func, set_prop_func): do not call
	#do_get_property and #do_set_property, but #foo and #foo=.

	* src/rbgobj_signal.c (gobj_s_signal_new): change the arity of
	GLib::Instantiatable#signal_new.

2003-10-24  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c (emit_body, chain_from_overridden_body):
	remove G_SIGNAL_TYPE_STATIC_SCOPE flag from parameters and
	return value.

2003-10-23  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_enum.c (rbgobj_get_enum, rbgobj_get_flags): check if the
	argument GType is subtype of GEnum or GFlags.

	* src/rbgobj_signal.c: new method
	GLib::Instantiatable#signal_has_handler_pending?.

	* src/rbgobj_signal.c (g_signal_handler_block,
	gobj_sig_handler_unblock, gobj_sig_handler_disconnect):
	use NUM2ULONG instead of NUM2INT.

2003-10-14  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_signal.c: Fix a segfault when GLib::Object#signal_emit 
	is called. 

2003-10-08  Laurent Sansonetti  <lrz@gnome.org>

	* src/rbgobj_param.c: Removed a compilation warning in function
	value_validate_ensure().

2003-10-05  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.c: call g_mem_set_vtable() to make glib to use
	ruby_xmalloc(), ruby_xrealloc(), ruby_xfree().

2003-09-26  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/lib/mkmf-gnome2.rb: append "-I$(sitearchdir)" to $CPPFLAGS not
	$CFLAGS. and stop overriding create_makefile().

2003-09-23  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c (gobj_s_signal_new): use #instance_method,
	UnboundMethod#bind and Method#call instead of #__send__.

	* src/rbgobj_signal.c (gobj_s_method_added): check GType.

2003-09-22  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c (gobj_s_sig_override): check if the class is
	registered.

	* src/rbgobj_signal.c (gobj_s_method_added): when a method named
	'do_<signal_name>' is defined then override default handler by the
	method.

2003-09-20  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c: override #append_features of interface modules to
	prevent including them into classes which is not subclass of
	GLib::Instantiatable.

2003-09-18  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_closure.c: implement GLib::Closure#invalidate.

	* src/rbgobj_closure.c: don't invoke Proc objects after ruby is
	terminated.

	* src/rbgobj_signal.c: implement GLib::MetaInterface#signal_override
	and GLib::Instantiatable#signal_chain_from_overridden experimentaly.

2003-09-06  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.c: define GLib::BINDING_VERSION.

	* src/lib/mkmf-gnome2.rb: use PKG_CONFIG environment variable.

2003-09-06  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/lib/mkmf_gnome2.rb: Pass "-l$(sitearchdir)" at last of $CFLAGS.

2003-09-03  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (register_type): if the super type is not defined
	by ruby, then include a new module that defines #initialize.

	* src/rbgobj_param.c (value_validate): use rb_ensure().

	* src/rbgobj_param.c: disable GLib::Param#value_defaults? since the
	name is bad.

2003-08-31  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_enum.c (enum_coerce): use NUM2INT not NUM2UINT.

	* src/rbgobj_paramspecs.c: delete unnecessary StringValue invocation.

	* src/rbgobj_paramspecs.c: use RVAL2GENUM and RVAL2GFLAGS.

2003-08-30  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/lib/glib2.rb: rescue LoadError and Win32::Registry::Error
	separately.

	* src/lib/glib2.rb: On mingw32 and mswin32 platform, require
	'win32/registry' unconditionaly and rescue LoadError.
	(proposed by TAMURA.KENICHI <sgs02516@nifty.com>)

	* src/rbgobj_enums.c: fixed rgbobj_get_enum - a VALUE was not
	converted to int before calling rbgobj_make_enum.
	(reported by Geoff Youngs <g@intersect-uk.co.uk>)

2003-08-29  Vincent Isambart <isambart@netcourrier.com>

	* src/rbgobj_enums.c: fixed rgbobj_get_flags - a VALUE was not
	converted to unsigned int before calling rbgobj_make_flags.

2003-08-28  Masao Mutoh  <mutoh@highway.ne.jp>

	* extconf.rb: Exit with 1 when the package is not found.

2003-08-25  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.h: new macros RVAL2GENUM(), RVAL2GFLAGS(),
	GENUM2RVAL() and  GFLAGS2RVAL().

	* src/rbgobj_signal.c: new exception class GLib::NoSignalError.

	* src/rbgobj_object.c: new exception class GLib::NoPropertyError.

	* src/lib/glib2.rb: append Dropline GTK2-Runtime DLL path into PATH
	environmental variable. (proposed by TAMURA.KENICHI <sgs02516@nifty.com>)

	* src/rbgobj_object.c: remove GLib::Object#property.

	* src/rbgobj_enums.c (rbgobj_get_enum, rbgobj_get_flags): 
	create temporary enum/flags object if the argument is an integer.
	this is to check if the integer is in the values avalable in the type.
	(proposed by Vincent Isambart <vincent.isambart@laposte.net>

	* src/rbgobject.c (rbgobj_initialize_object): raise RuntimeError
	if the argument is NULL. (proposed by Vincent Isambart
	<vincent.isambart@laposte.net>)

2003-08-21  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_boxed.c: define GLib::Boxed#initialize which simply raise
	TypeError.

	* src/rbglib2.rb: fix format of GLib::Flags#inspect.

	* src/glib2.def, src/global.h, src/rbgobj_enums.c, src/rbgobj_type.c,
	src/rbgobj_value.c, src/rbgobject.h, src/lib/glib2.rb: new classes
	GLib::Enum and GLib::Flags.

2003-08-17  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/lib/glib2.rb: add new file.

	* src/lib/mkmf-gnome2.rb (PKGConfig.have_package): don't use
	Array#quote. Because mkmf.rb of ruby-1.6 doesn't provide this method.

2003-08-16  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.h, src/rbgobj_type.c, let rbgobj_define_class() to
	take `const gchar*', not `gchar*'.

2003-08-14  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/lib/mkmf-gnome2.rb (PKGConfig.have_package): append linker
	flags other than -l and -L into $LDFLAGS.

2003-08-09  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c (gobj_sig_emit): fix to setup arg.self.

2003-08-09  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/depend: use old style
	* src/glib2.def: Add rbgobj_constant_remap.

2003-08-06  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_valuetypes.c: use GHashTable instead of Ruby's Hash
	for reference counting. Using Ruby's Hash may cause segmentaion fault
	when ruby exits.

	* src/rbgobj_closure.c: use GHashTable instead of Ruby's Hash
	for the same reason as src/rbgobj_valuetypes.c.

	* src/rbgobject.c (rbgobj_gobject_initialize): don't warn if the
	instance type is a subtype of the class type.

2003-08-03  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbgobj_valuetypes.c: Fix error for gcc 2.95.4.
	Reported by Hiroshi Igarashi.

2003-08-02  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/lib/mkmf-gnome2.rb (PKGConfig.have_package): use --libs-only-l
	and --libs-only-L instead of --libs.

2003-08-02  Masao Mutoh <mutoh@highway.ne.jp>

	* src/lib/mkmf-gnome2.rb: fix for other libraries can't compile
	in other directories.

2003-08-02  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (gobj_s_properties),
	src/rbgobj_signal.c (gobj_s_signals): recurse by default.

2003-08-01  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c: don't free RGObjClassInfo structure.

2003-07-28  Geoff Youngs  <g@intersect-uk.co.uk>
	* src/rbgobj_enums.c: add rbgobj_constant_* to allow renaming
	invalid constants.
	* src/rbgobject.h: add G_RENAME_CONSTANT

2003-07-26  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_closure.c (rclosure_marshal): don't stop jumps.
	This is a temporary solution for the Ruby-GNOME2 0.6 release.

2003-07-22  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbglib.h: add CBOOL2RVAL, RVAL2CBOOL.

	* src/lib/mkmf-gnome2.rb: Change include orders.

2003-07-21  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_enums.c (rbgobj_flags_add_constants): use UINT2NUM()
	instaed of INT2NUM().

	* src/rbgobj_object.c (gobj_smethod_added): use
	rbgobj_get_signal_func().

	* src/rbgobj_signal.c (gobj_s_signal_new): fix to treat accumulator
	correctly.

	* src/rbgobj_type.c: implement GLib::Type#<=>.

	* src/rbgobj_type.c: change superclass of GLib::Boxed from Data to
	Object.

	* src/global.h, rbgutil.c: add new functions generic_s_new(),
	generic_s_gtype() and generic_gtype().

	* rbgobj_boxed.c, rbgobj_type.c: use generic_s_new(),
	generic_s_gtype() and generic_gtype().

2003-07-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_closure.c: enhance warning message of rclosure_marshal() 
	which is used in GLib::Instantiatable#signal_connect().

2003-07-20  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c, src/rbgobj_type.c, src/global.h: enable
	rbgobj_define_action_methods() by default.
	This function defines methods that emit	action signals.

	Action signals are signals that may freely be emitted on alive
	objects from user code via g_signal_emit() and friends, without
	the need of being embedded into extra code that performs pre or
	post emission adjustments on the object. They can also be thought
	of as by third-party code generically callable object methods.

	* src/rbgobject.h, src/rbgobj_enum.c, src/glib2.def: add new function
	rbgobj_add_constants() and new macro G_DEF_CONSTANTS().

2003-07-18  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c (signal_add_emission_hook): fix to treat `detail'
	argument correctly.

2003-07-17  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_closure.c (rclosure_marshal): use rb_protect().

	* src/rbgobj_valuetypes.c (value_transform_ruby_any): use rb_protect().

	* src/rbgobject.c (rbgobj_gobject_new): use rb_ensure().

	* src/rbgobj_signal.c (gobj_sig_emit): use rb_ensure().

	* src/rbgobj_object.c (gobj_set_property):
	call rbgobj_rvalue_to_gvalue() even if the argument is nil.

	* src/rbgobj_signal.c: remove Dispatch Closure stuff.
	use g_rclosure_new() instead.

	* src/rbgobj_value.c (rbgobj_rvalue_to_gvalue): call #to_s only for
	Symbol->G_TYPE_STEING conversion.

	* src/rbgobject.c (rbgobj_gobject_initialize): check if the argument
	has expected GType.

	* src/rbgobject.c (rbgobj_get_gobject): raise TypeError instead of
	ArgumentError.

2003-07-16  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_boxed.c (boxed_to_ruby): convert NULL to nil.

	* src/rbgobj_object.c (register_type): change error message:
	"parent class" to "super class".

	* src/rbgobj_param.c: remove Param#default=.
	rename Param#defaults to Param#value_defaults?.
	rename Paramcompare to Param#value_compare.
	implement Param#value_validate, #value_convert, 
	(value_defaults) initialize tmp.

	* src/rbgobj_paramspecs.c: remove *#default and *#default_value.

	* src/rbgobj_type.c:
	(get_superclass): change to static function.
	(GLib::Type#initialize): check if the given integer is valid GType
	by using g_type_name().
	(GLib::Type#==, #<, #>, #<=, #>=): return nil when uncomparable.

2003-07-14  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/depend: use $(srcdir) to allow building in different directories.

	* src/rbgobj_param.c (inspect): change inspect format.

	* src/rbgobj_param.c: new methods:
	GLib::Param#owner, GLib::Param#readable?,
	GLib::Param#writable?, GLib::Param#construct?,
	GLib::Param#construct_only?, GLib::Param#lax_validation?,
	GLib::Param#private?, GLib::Param#readwrite?

	* src/rbgobj_paramspec.c: new methods:
	GLib::Param::Char#range, GLib::Param::UChar#range,
	GLib::Param::Int#range, GLib::Param::UInt#range,
	GLib::Param::Long#range, GLib::Param::ULong#range,
	GLib::Param::Int64#range, GLib::Param::UInt64#range,
	GLib::Param::Float#range, GLib::Param::Double#range

	* src/rbgobj_boxed.c: implement GLib::Boxed#inspect and
	GLib::Boxed#initialize_copy.
	(boxed_from_ruby): accept nil and set NULL.

	* src/rbgobj_signal.c: implement GLib::Signal#inspect and
	GLib::Signal#owner.
	(to_signal_id, to_gquark): removed.
	(gobj_s_signal_new, gobj_s_signal, gobj_sig_emit, gobj_sig_emit_stop):
	accept Symbol.
	(query_signal_id, query_signal_name, query_itype, query_return_type,
	query_signal_flags, query_param_types): fix argument declaration.

	* src/rbgobj_valuetypes.c: implement GLib::Pointer#inspect,
	GLib::Pointer#==, GLib::Pointer#eql? and GLib::Pointer#hash.

2003-07-13  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_value.c, rbgobj_type.c: 
	Accept rb_cObject as RBGOBJ_TYPE_RUBY_VALUE not G_TYPE_POINTER.

2003-07-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_value.c, rbgobj_value_types.c, rbgobj_type.c: 
	Accept rb_cObject as G_TYPE_POINTER.

2003-06-26  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.h: Define G_BLOCK_PROC for ruby-1.8.x.
	* src/*c: Use G_BLOCK_PROC instead of rb_f_lambda().
	* src/lib/mkmf-gnome2.rb: Check rb_block_proc().

2003-06-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.c: Add GLib::PRIORITY_*. 

2003-06-22  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib.c: Call setlocale(LC_NUMERIC, "C") for some locales 
	which doesn't use "." as decimal-point.
	Pointed out by Joao Pedrosa.

2003-05-27  Geoff Youngs  <g@intersect-uk.co.uk>

	* rbgobject.c - altered rbgobj_instance_from_ruby_object()
	and rbgobj_ruby_object_from_instance() to
	convert between NULL and nil automatically

2003-05-27  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/depend: Add a file.
	* src/lib/mkmf-gnome2.rb: Add a file(Move from ../).
	* extconf.rb: Follow above changes.

2003-05-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.c: klass.instance_methods to klass.instance_methods(false) 
	for ruby-1.8.x.
	* src/rbgobject.h, rbgobj_type.c: Remove rbgobj_exist_class().
	Use rb_const_define_at() instead. Pointed out by Masahiro Sakai.

2003-05-19  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c, rbgobject.h: Add rbgobj_exist_class(). 

2003-04-13  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c: fix so that GLib::Type#to_class can treat
	GEnum's descendants.

	* src/rbgobj_object.c: enable GLib::Object.new! by default

	* src/rbgobj_object.c (gobj_s_install_property): modify error message.

	* src/rbgobj_signal.c (gobj_s_signal_new): check if the class has a
	registerd type.

	* src/rbgobj_signal.c: implement GLib::Signal#{run_first?, run_last?,
	run_cleanup?, no_recurse?, detailed?, action?, no_hooks?}

2003-04-12  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (GLib::Object.new!): check if the class has a
	registered type.

	* src/rbgobj_object.c: implement GLib::Object.install_property

	* src/rbgobj_object.c: improve type registeration system.

	* src/rbgobj_paramspecs.c: fix to use appropriate GType.

	* src/rbgobj_type.c, src/rbgobject.h: Add a new function
	rbgobj_register_class() and rewring
	_register_fundamental_klass_to_gtype() and
	_register_fundamental_gtype_to_klass() with it.

2003-04-08  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>
	
	* src/rbgobj_type.c: fix typo. ( interfaced? => interface? )
	
	* src/rbgobj_type.c: implement GLib::Type#<, GLib::Type#>,
	GLib::Type#<= and GLib::Type#>=.

	* src/rbgobj_signal.c: Extend GLib::Instantiatable#signal_handler_block
	to take a block.

	* src/rbgobj_signal.c (gobj_s_signals): Fix memory leak.

	* src/rbgobj_object.c: Use RVAL2GTYPE().

	* src/rbgobj_type.c (interface_get_gtype): Use CLASS2GTYPE().

	* src/rbgobject.c (rbgobj_define_property_accessors): ditto

2003-04-07  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>
	
	* src/rbgobj_signal.c: Implement a new function
	rbgobj_define_action_methods() experimentaly.
	This function defines methods that emit	action signals.

	Action signals are signals that may freely be emitted on alive
	objects from user code via g_signal_emit() and friends, without
	the need of being embedded into extra code that performs pre or
	post emission adjustments on the object. They can also be thought
	of as by third-party code generically callable object methods.

	* src/rbgobj_signal.c: Extend GLib::Object.signals to
	GLib::Object.signals([inherited_too])

	* src/rbgobj_object.c: Extend GLib::Object.properties to
	GLib::Object.properties([inherited_too])

	* src/global.h, src/rbgobj_signal.c, rbgobj_type.c:
	gsub(/mInterfaceCommons/, 'mMetaInterface') and define
	GLib::MetaInterface.

	* src/rbgobj_paramspecs.c (GLib::Param::String#default_value): 
	use rbg_cstr2rval() instead of rb_str_new2(). Because we need to
	allow NULL.

	* src/rbgobj_type.c: simplify the format of GLib::Type#inspect

2003-04-06  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c: rename signal_emit_by_name and
	signal_emit_stop_by_name to signal_emit and signal_emit_stop
	respectively.

	* src/rbgobj_signal.c: remove Signal#signal_id, Signal#signal_name,
	Signal#signal_flags.

2003-04-05  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: add --enable-experimental option

	* src/rbgobj_signal.c (gobj_s_signal_new): implement accumulator stuff.

	* src/rbgobj_signal.c: code cleanup

	* src/rbgobj_signal.c: use signal_id as a key of signal_func_table.

	* src/rbgobj_signal.c: change rbgobj_get_signal_func() to static
	function.

	* src/rbgobj_signal.c: implement Signal#add_emission_hook and
	Signal#remove_emission_hook

2003-04-04  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (gobject_class_new): implement the function
	experimentaly.

	* src/rbgobj_object.c: abolish not_abstract_table and use
	RGObjClassInfo's `flags' field.	

	* src/rbgobj_boxed.c: abolish boxed_table and use RGObjClassInfo's
	`flags' field.	

	* src/rbgobject.c, src/rbgobject.h:
	add `flags' field to RGObjClassInfo.

	* src/rbgobj_type.c (rbgobj_lookup_class_by_gtype): code cleanup

2003-03-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_object.c: Add GLib::Object.destroyed?

2003-03-19  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/glib2.def: Add a file

2003-03-14  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib_messages.c: change rbglib_log_handler_procs to static
	variable.

2003-03-12  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib_convert.c: implement
	- uri = GLib.filename_to_uri(filename[, hostname])
	- filename, hostname = GLib.filename_from_uri(uri)

2003-03-07  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgutil.h: #include rbglib.h for RUBY_GLIB2_VAR.

	* src/rbglib.h, rbgutil.h: define RUBY_GLIB2_VAR macro, and
	use RUBY_GLIB2_VAR for defining 'exported' variables.

	* extconf.rb: append "-DRUBY_GLIB2_COMPILATION" to $defs.

2003-02-20  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: Check NODE_ATTRASGN only if try_compile is defined.

2003-02-17  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.h: Add rbgobj_signal_wrap() declaration.

	* src/rbgobject.h, src/global.h: Move declaration of
	rbgobj_define_property_accessors() from rbgobject.h to global.h

	* src/rbgobject.h: Remove rbgobj_define_signal_constants() declaration.
	This function no longer exists.

2003-02-16  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb, src/rbgutil.c:
	Check whether NODE_ATTRASGN is used in ruby. If NODE_ATTRASGN is
	used, G_DEF_SETTERS uses alias_method instead of generating wrapper
	methods.
	Patch from Nobuyoshi Nakada <nobu.nokada@softhome.net>

	* src/rbgobject.c (rbgobj_define_property_accessors): ditto

2003-02-15  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.c: make id_relatives be static variable.

2003-02-14  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.c, src/rbgutil.[ch]: code cleanups

	* src/rbgobj_boxed.c: make some functions to be static.

	* src/rbgobj_boxed.c: implement GLib::Boxed#{copy,clone}
	Suggested by KATO Kazuyoshi <kadu@zb.wakwak.com>

2003-02-13  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: follow changes of ../mkmf-gnome2.rb

2003-02-13  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_boxed.c: Don't free boxed object when it's not copied boxed object.
	* src/rbglib.c: Call setlocale() in Init_glib2(). 

2003-02-12  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: use ../mkmf-gnome2.rb

2003-02-11  KUBO Takehiro  <kubo@jiubao.org>

	* src/rbglib_convert.c: Add a file. Support string character set conversion.
	* src/rbglib.c: Follow above changes.

2003-02-09  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_object.c, rbgobject.h: Add rbgobj_add_abstract_but_create_instance_class() 
	for the classes which can create instance itself but define as an abstract 
	class in GTK+-2.2. (e.g. GdkGC).

2003-02-03  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.[ch]: change CSTR2RVAL's body to be a new function
	rbg_cstr2rval() to avoid unexprected side-effect of macro.

2003-02-03  Geoff Youngs  <g@intersect-uk.co.uk>

	* src/rbglib.h: a check for NULL strings in the CSTR2RVAL macro so that
	a NULL string translates to nil rather than raising an ArgumentError.

2003-02-02  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/*[ch], README: Update Copyright.

2003-01-31  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_boxed.c, rbgobject.h: Add rbgobj_boxed_not_copy_obj().
	Some boxed object shouldn't copy when gpoint convert to VALUE.

2002-12-28  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c (type_is_value_type): fix typo

2002-12-28  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_value.c rbgobj_gvalue_to_rvalue(), rbgobj_rvalue_to_gvalue():
	Change behavior of G_TYPE_INTERFACE(same as G_TYPE_OBJECT).

2002-12-26  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_boxed.c, rbgobj_type.c, rbgobj_param.c, rbgobj_object.c: 
	Apply rb_define_alloc_func() of ruby-1.8.x.

2002-12-21  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.c: Check 2nd argument is hash. 

2002-12-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.[ch]: Add G_SET_SYMBOL_PROPERTY(gtype, name).

2002-12-06  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c: Add rb_cSymbol as G_TYPE_STRING. 

2002-11-27  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* rbgobj_closure.c (rclosure_marshal): check if return_value's type
	is valid. Reported by Joshua Keith <joshuakeith@linuxmail.org>.

2002-11-24  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgutil.c: remove rbgutil_val2cstr().

	* src/rbglib.h: change StringValuePtr() definition to the same as
	ruby-1.7. and change RVAL2CSTR() to use the StringValuePtr().

2002-11-23  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_value.c: rbgobj_rvalue_to_gvalue() support Symbol value 
	when G_TYPE_STRING is required.

2002-11-22  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c, src/rbgobj_signal.c: change
	GLib::Instantiatable.signals and GLib::Object.properties to return
	array of strings. (instead of array of specific objects)
	* rbgobj_signal.c: disable some experimental code.

2002-11-20  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.c: Fix typos in error messages(GLib::GObject to GLib::Object).

2002-11-11  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_signal.c: BugFix of rbgobj_set/get_signal_func.

2002-11-10  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: stop appending '-g' to $CFLAGS.

2002-11-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* README: Add file.

2002-11-09  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_message.c: add file(Sorry I forgot it....)

2002-11-08  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbglib_messages.c: add file(methods are moved from Ruby/GTK). 
	* src/rbgobj_signal.c, rbgobj_closure.c, rbgobj_object.c, rbgobject.h: 
	add G_DEF_SIGNAL_FUNC. 
	
2002-11-06  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.c (G_DEF_SETTERS): don't override existent methods.

2002-11-02  KUBO Takehiro  <kubo@jiubao.org>

	* src/rbgutil.c, src/rbgutil.h: re-implement rbgutil_raise_gerror as
	macro and rename to RAISE_GERROR.
	add a new function rbgutil_gerror2exception()

2002-11-01  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.c, rbgobj_type.c: Remove rbgobj_define_signal_constants().

2002-10-30  KUBO Takehiro  <kubo@jiubao.org>

	* src/rbgutil.c, src/rbgutil.h: add rbgutil_raise_gerror().

2002-10-24  KUBO Takehiro  <kubo@jiubao.org>

	* src/rbgobj_signal.c (GLib::Instantiatable#signal_conect,
	#signal_connect_after): accept detailed signal.

2002-10-20  Masahro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c: use canonical property name as hash key for the
	hash for a special getter and setter of the property.

2002-10-18  Masahro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_closure.c, src/rbgobj_valuetypes.c: use Hash#delete
	instead of assigning nil.

2002-10-17  KUBO Takehiro  <kubo@jiubao.org>

	* rbgobj_object.c (gobj_set_property, gobj_get_property): fix a bug.

2002-10-14  Masahro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (GLib::Object.property): raise exception if the
	property doesn't exist.
	* src/rbgobj_param.c: rename GLib::ParamSpec to GLib::Param
	* src/rbgobj_signal.c (GLib::Instantiatable#signal_conect): accept
	symbol as signal name.
	* src/rbgobj_signal.c: rename
	GLib::Signal::Query to GLIb::Signal and
	GLib::Object.signal_list to GLIb::Object.signals and
	GLib::Object.signal_lookup to GLIb::Object.signal
	* src/rbgobj_object.c: rename
	GLib::Object.list_properties to GLIb::Object.properties and
	GLib::Object.find_property to GLIb::Object.property

2002-10-13  Masahro Sakai  <sakai@tom.sfc.keio.ac.jp>
	
	* src/rbgobj_valuetypes.c (rbgobj_ptr2cptr): check argument type
	* src/rbgobj_valuetypes.c: don't register some transformation function
	which may raise exception
	* src/rbgobj_object.c: add rbgobj_register_property_getter() and
	rbgobj_register_property_setter() for overwriting VALUE<=>GValue
	converter for property.

2002-10-10  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.[ch], src/rbglib.c: add G_DEF_SETTERS macro.

2002-10-07  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_value.c (rbgobj_gvalue_to_rvalue): return Qnil when the
	type of GValue is G_TYPE_STRING and the content is NULL.

2002-10-05  KUBO Takehiro  <kubo@jiubao.org>

	* src/rbgutil.h: add G_DEF_SETTER macro.

2002-10-02  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_boxed: implement GLib::Boxed::gtype & GLib::Boxed#gtype

2002-10-02  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_type.c: Add _register_fundamental_gtype_to_klass()/
	_register_fundamental_klass_to_gtype().

2002-10-02  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.h: define LONG2NUM and ULONG2NUM unless already defined.

2002-09-30  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgutil.[ch]: File added.
	* src/rbgobject.h, src/rbglib.[ch]: Support rbgutil.c.

2002-09-29  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_param.c (inspect): change format: including value type and
	owner type. excluding nick and blurb.
	* src/rbgobj_param.c (get_nick, get_blurb): return nil if the string
	is NULL.
	* src/rbgobj_signal.c: introduce GLIb::Signal::Query to wrap
	GSignalQuery.
	* src/rbgobj_type.c: define GLib::Interface and include it to each
	interface. This inclusion is intended to represent that interfaces
	are subtypes of GLib::Inteface.
	* src/rbgobj_object.c (gobj_s_find_property, gobj_set_property,
	gobj_get_property): accept Symbol as property name.
	* src/rbgobj_object.c: fix parameter number of GLib::Object.find_property

2002-09-29  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobj_closure.c, src/rbgobj_boxed.c, src/rbgobject.h:
	Change RVAL2BOXED(obj) to RVAL2BOXED(obj, gtype).

2002-09-25  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_closure.c (marker_remove): fix a bug which can cause
	segmentation fault on following rb_gc_mark().

2002-09-24  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c: allow GLib::Object#freeze_notify to take block.
	* src/rbgobj_param.c (rbgobj_get_value_from_param_spec): fixed
	* src/rbgobj_param.c: implement GLib::ParamSpec#inspect
	* src/rbgobj_object.c: implement GLib::Object.list_properties and
	GLib::Object.find_property
	* src/rbgobj_signal.c: implement signal_handler_is_connected?
	* src/*.c: untabify
	* src/rbgobj_boxed.c (boxed_free): don't call g_boxed_free() if not
	initilized.
	* src/rbgobj_closure.c: implement GLib::Closure

2002-09-23  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/*.c: introduce GLib::Instantiatable as a common superclass of 
	GLib::Object and GLib::ParamSpec. GLib:Instantiatable corresponds to
	GTypeInstance structure in C.
	* src/*.c: arrange APIs
	* src/rbgobject.c (rbgobj_define_signal_constants): stop calling
	g_class_ref(). Now caller must ensure that the class is initialized.

2002-09-23  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/*.c: introduce macro "RBGLIB_ENABLE_EXPERIMENTAL" to indicate
	experimental API.
	* src/rbgobj_signal.c: define constants
	* src/rbgobj_signal.c (signal_emit, signal_emit_stop): handles detail
	parameter.
	* src/rbgobject.c (rbgobj_gobject_new): check actual parameter size.

2002-09-21  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.c (rbgobj_define_property_accessors): when property
	name begins with 'is_', remove 'is_' from getter/setter name.
	* src/rbgobject.c (rbgobj_define_property_accessors): append '?' to
	the name of getter method of gboolean valued property.

2002-09-21  KUBO Takehiro  <kubo@jiubao.org>

	* src/rbgobj_object.c (gobj_set_property, gobj_get_property):
	accept nil as an argument of val. raise more kindly exception when
	property name was not found.

2002-09-18  KUBO Takehiro <kubo@jiubao.org>

	* src/rbgobject.c (rbgobj_gobject_new): fix size parameter of memset()
	* src/rbgobj_value.c (rbgobj_rvalue_to_gvalue): don't use
	g2r_func_table but r2g_func_table

2002-09-17  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.c (rbgobj_define_property_accessors): optimize a bit
	  by accumulating source string and call module_eval at once.

2002-09-16  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.c (rbgobj_define_property_accessors):
	  - Define not only 'hogehoge=' but alse 'set_hogehoge'
	  - Exclude properties which name is conflict with method of 'Object'
	  - Stop passing second and third argument of module_eval

2002-09-14  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/global.h, src/rbglib.h: Move StringValue, StringValuePtr 
	to src/rbglib.h(Because it'll be used by other Ruby-GNOME libraries).
	Add RVAL2CSTR, CSTR2RVAL macro.

2002-09-14  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: Append -fnative-struct to $CFLAGS when G_OS_WIN32 is defined

2002-09-13  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbgobject.h, src/rbgobj_object.c: Rename RBGOBJ_INITIALIZE to G_INITIALIZE.
	* src/rbgobject.h: Add G_RELATIVE, G_RELATIVE2, G_REMOVE_RELATIVE.

2002-09-13  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbobjmanager.[ch]: remove files.
	* src/rbglib.[ch]: remove Init_objmanager().

2002-09-03  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c: implement GLib::Object#signal_emit_by_name

2002-09-01  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_signal.c: fix GLib::Object#signal_emit.
	* src/rbgobj_signal.c: implement GLib::Object.signal_lookup and 
	GLib::Object.signal_list
	* src/rbgobj_signal.c: implement GLib::Object.signal_new.
	This is an experimental interface.
	* src/rbgobj_value.c (rbgobj_gvalue_to_rvalue, rbgobj_rvalue_to_gvalue): 
	fix error messsage and use g_warning().
	* src/utils_int64.c: use 0xffffffffL instead of G_MAXUINT
	* src/utils_int64.c, src/global.h, src/rbgobj_paramspecs.c,
	src/rbgobj_value.c: change prefix of int64 functions from 'rbgobj_' to
	'rbglib_'.
	* src/*.[ch]: add 'indent-tabs-mode: nil' to header 

2002-08-29  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbgobj_boxed.c: Add GLib::Boxed.new, GLib::Boxed#allocate.

2002-08-20  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbgobj_boxed.c: Add rbgobj_boxed_initialize(), rbgobj_boxed_create().
	Modify rbgobj_boxed_get().

	* src/rbgobject.[ch]: Support Boxed type in rbgobj_create_object(), 
	rbgobj_initialize_object().

2002-08-20  Masahiro Sakai  <s01397ms@sfc.keio.ac.jp>

	* src/utils_int64.c: rb_global_variable(&max_PRUint32)
	* src/rbgobj_param.c: rename rbgobj_get_value_from_paramspec to
	rbgobj_get_value_from_param_spec
	* src/rbgobj_param.c (gobj_get_gtype): use rbgobj_param_spec_get_struct
	instead of RVAL2GOBJ

2002-08-18  Masao Mutoh <mutoh@highway.ne.jp>

   * src/rbobjmanager.[ch]: Add file. Support RB_DEF_CLASS system.

2002-08-14  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: use $libs instead of $LDFLAGS
	* src/rbglib.c: define GLib::VERSION, GLib::(MAJOR|MINOR|MICRO)_VERSION
	* src/rbgobj_param.c: define GParamFlags constants
	* src/rbgobj_value.c (rbgobj_register_r2g_func): change argument.
	it now take GType as key instead of Ruby class.
	* src/rbgobject.c (rbgobj_add_relative, rbgobj_add_relative_removable,
	rbgobj_remove_relative): call rb_ivar_defined() before calling rb_ivar_get()
	* rbgobj_valuetypes.c, rbgobj_value.c: improve G_TYPE_POINTER handling

2002-08-10  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.[ch]: move id_relative_callbacks to gtk
	* src/rbgobj_closure.c, src/rbgobj_object.c, src/rbgobj_signal.c:
	use GVAL2RVAL
	* src/rbgobj_valuetypes.c: add file. implement RBGOBJ_TYPE_RUBY_VALUE
	to box Ruby object into GValue.
	* src/rbgobj_type.c, src/rbgobj_value.c, src/rbgobj_valuetypes.c:
	support G_TYPE_POINTER. This is a tentative implementation.
	* src/global.h: move "extern void Init_hoge();" stuff to where these
	functions are actually called.

2002-08-09  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/utils_int64.c (LL_L2UI): cast argument to guint32
	* src/utils_int64.c (RubyTo64BitInt): oops. convert max_PRUint32 to VALUE.
	* src/utils_int64.c: optimize

2002-08-09  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.c: use GQuark
	* src/rbgobj_type.c: fix allocation problem in ruby-1.7
	rb_obj_alloc() was used though GLib::Type#allocate wasn't implemented.
	this problem is pointed out by Masao Mutoh <mutoh@highway.ne.jp>.
	* src/rbgobj_object.c: rename GLib::GObject to GLib::Object
	* src/utils_int64.c: add file. support gint64/guint64.
	code is ripped from rbXPCOM-0.0.3.
	<URL:http://www.ruby-lang.org/en/raa-list.rhtml?name=rbXPCOM>
	Thanks to Kenichi Komiya <kom@mail1.accsnet.ne.jp>
	* src/rbgobj_param.c (value_set_default): initialize GValue with {0,}.
	* src/rbgobj_param.c (ParamSpec#value_type): returns GLib::Type
	* src/rbgobj_param.c (ParamSpec#owner_type): ditto
	* src/rbgobj_paramspecs.c: implement more functions
	* src/rbgobj_boxed.c: use rbgobj_type.c for class managiment
	* src/rbgobj_value.c: hardcode most converters.
	Now table-lookup is used only for G_TYPE_POINTER and G_TYPE_BOXED.
	* src/rbgobj_object.c, src/rbgobj_enum.c, src/rbgobj_param.c: ditto

2002-08-08  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c: more ruby-ish method naming.
	ie: "hoge?" rather than "is_hoge"?
	* src/rbgobj_type.c (rbgobj_lookup_class_by_gtype): enhancement for
	G_TYPE_PARAM
	* src/rbgobj_param.c, src/rbgobj_paramspec.c: rewrite for using above
	enhancement.

2002-08-07  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobject.c (rbgobj_gobject_new): take type argument as GType
	 instead of VALUE.
	* src/rbgobject.c (rbgobj_gobject_new): allow nil for construct parameter
	* src/rbgobj_object.c (is_gtkobject): add function
	* src/rbgobj_object.c (GObject.allocate): check abstract class
	* src/rbgobj_object.c (GObject#initialize): rewrite
	* src/rbgobj_type.c (rbgobj_lookup_class): use independent hash instead
	of instance variable. and abolish id_class_info.
	* src/rbgobj_type.c (rbgobj_lookup_class): search ancestor classes.
	* src/rbgobj_type.c: implement GLib::Type.

2002-08-06  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c: extend rbgobj_lookup_class_by_gtype() to deal
	interfaces
	* src/rbgobject.h: define macros: G_DEF_INTERFACE and G_DEF_INTERFACE2
	* src/rbgobj_typeplugin.c: file added
	* extconf.rb: use --msvc-syntax option for pkg-config if the compiler
	is MSVC++.

2002-08-06  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>
 
	* src/rbgobject.h: remove declaration of id_class_info and id_delete
	* src/rbgobject.h, src/rbgobj_object.c, src/rbgobj_signal.c:
	remove global variable rbgobj_cGObject.

2002-08-03  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbglib.[ch]: fix mGLib declaration and definition

2002-08-02  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c (rbgobj_lookup_class_by_gtype):
	enable calling of rbgobj_define_property_accessors() and
	rbgobj_define_signal_constants().

2002-08-02  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_type.c: abolish rbgobj_register_class()
	* src/rbgobj_type.c (rbgobj_lookup_class_by_gtype):
	now this function create a new class on demand.
	* src/rbgobj_type.c: abolish rbgobj_lookup_rbclass()
	* src/rbgobject.c: fix typo
	* src/rbgobject.c: add rbgobj_define_signal_constants()
	which define constants for signal names.

2002-08-01  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (_gobject_to_ruby): check NULL before calling
	GOBJ2RVAL().
	* src/rbgobj_signal.c (gobj_sig_connect): remove unused variable 'id'.
	* src/rbgobj_signal.c (gobj_sig_connect_after): ditto
	* src/rbgobj_object.c (gobj_smethod_added): fix bugs
	
2002-07-31  Masao Mutoh  <mutoh@highway.ne.jp>

	* src/rbgobject.c: devide from rbgobj_objectc[ch].
	* src/rbgobj_object.c, src/rbgobject.h: abolish rbgobj_force_get_gobject().
	* src/rbgobject.h: add G_DEF_CLASS(), G_DEF_CLASS2(), GTYPE2CLASS().
	* src/rbgobj_type.c: add rbgobj_define_class()

2002-07-31  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_closure.c: use g_closure_add_invalidate_notifier()
	instead of g_closure_add_finalize_notifier()
	* src/rbgobj_closure.c: fix g_closure_add_invalidate_notifier()'s
	argument order
	* src/rbgobj_signal.c: GObject#signal_connect now accept extra argument
	as Ruby/Gtk 1.
	* src/rbgobj_signal.c: implement GObject#signal_connect_after

2002-07-28  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c (gobj_s_gobject_new): refine GtkObject-specific
	stuff
	* src/rbgobj_object.c: implement GObject#freeze_notify, GObject#notify,
	GObject#thaw_notify
	* src/rbgobj_object.c (gobj_inspect): use g_strdup_printf() instead of
	ALLOCA_N() and sprintf()
	* src/rbgobj_type.c (rbgobj_register_class): add some check
	* src/*.c: replace rbgobj_get_value_from_gobject() with GOBJ2RVAL()
	* src/*.c: replace rbgobj_get_gobject() with RVAL2GOBJ()
	* src/rbgobj_object.c:
	  void rbgobj_define_property_acccessors(VALUE klass);
	is added. This function defines accessor methods for properties.
	* src/rbgobj_signal.c (gobj_sig_emit): call g_value_init()

2002-07-27  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c: abolish rbgobj_make_gobject_auto_type() and
	rbgobj_make_gobject()
	* src/rbgobj_boxed.c, src/rbgobj_enums.c, src/rbgobj_typemodule.c,
	src/rbgobj_signal.c: created
	* src/rbgobj_object.c: move signal stuff to src/rbgobj_signal.c

2002-07-27  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* src/rbgobj_object.c: implement GObject.gobject_new experimentaly.
	  example:
	   w = GLib::GObject.gobject_new("GtkWindow", "title" => "Hello World")

2002-07-26  Masahiro Sakai  <sakai@tom.sfc.keio.ac.jp>

	* extconf.rb: check allocation framework
	* src/rbgobj_object.c: introduce intermediate data structure (gobj_holder)
	for managing not only GObject*, but also class_info and ruby object itself.
	* src/rbgobj_object.c: abolish gobject_object_list_v and 
	gobject_object_list
	* src/rbgobj_object.c: use gobject_weak_ref() to observe an explicit
	disposition. (e.g. by gtk_object_destroy())
	* src/rbgobj_object.c: implement GObject#set_property and
	GObject#get_property
	* src/rbgobj_paramspecs.c: created

2002-06-23  Masahiro Sakai  <s01397ms@sfc.keio.ac.jp>

	* src/rbgobj_type.c (Init_gobject_gtype): call g_type_init().
	* src/rbgobj_object.c, src/gclosure.c: zero-fill GValue before
	using it.

2002-06-23  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbgobject.h: Fix parameter number of RBGOBJ_INITIALIZE().

2002-06-23  Masao Mutoh <mutoh@highway.ne.jp>

	* src/rbgobject.c: change rbgobj_set_gobject() to rbgobj_initialize_gobject().
	* src/rbgobject.h: create RBGOBJ_INITIALIZE().

2002-06-22  Masahiro Sakai  <s01397ms@sfc.keio.ac.jp>

	* src/rbgobject.h: create two macros; RVAL2GOBJ() and GOBJ2RVAL().
	* src/rbgobject.h, rbgobj_object.c: make rbgobj_make_gobject() and
	rbgobj_make_gobject_auto_type() be private.
	* src/rbgobj_object.c: remove gobj_mark() and clear_gobject().
	* src/rbglib.c: remove gError.

2002-06-20  Masahiro Sakai  <s01397ms@sfc.keio.ac.jp>

	* src/rbgobj_object.c, src/rbgobj_type.c, src/rbgobject.h:
	rename rbgobj_class_info to RGObjClassInfo.

2002-06-18  Masahiro Sakai  <s01397ms@sfc.keio.ac.jp>

	* src/*.c: conform to Ruby/GNOME2 coding-style.

2002-06-18  Masahiro Sakai  <s01397ms@sfc.keio.ac.jp>

	* extconf.rb: check whether package exists or not.
