2006-12-29 Masao Mutoh <mutoh@highway.ne.jp> * src/lib/mkmf-gnome2.rb: Work ruby-1.8.4 or earlier again. by Kouhei Sutou. * src/rbglib.h: Increment minor version. 2006-12-28 Masao Mutoh <mutoh@highway.ne.jp> * src/lib/glib2.rb: Remove to support dropline GTK2-Runtime DLL. * src/lib/glib-mkenums.rb: Fixed a parse error on GLib-2.6. 2006-12-26 Kouhei Sutou <kou@cozmixng.org> * src/lib/glib-mkenums.rb: added a space before comment end mark. 2006-12-26 Masao Mutoh <mutoh@highway.ne.jp> * extconf.rb: Code cleanup. * src/lib/glib-mkenums.rb: Reimplement as a pure ruby library. * src/lib/mkmf-gnome2.rb: Work MinGW again. * src/rbglib_win32.c: Fix to compile problems. 2006-12-25 Kouhei Sutou <kou@cozmixng.org> * src/lib/glib2.rb (GLib.utf8_validate): removed needless code. 2006-12-24 Masao Mutoh <mutoh@highway.ne.jp> * src/rbglib_convert.c: GLib.utf8_validate becomes deprecated. Use GLib::UTF8.validate instead. * sample/bookmarkfile.rb: Add for GLib::BookmarkFile sample. 2006-12-23 Masao Mutoh <mutoh@highway.ne.jp> * src/rbglib_bookmarkfile.c: Add GLib::BookmarkFile * src/rbglib_win32.c: Code cleanup. Imprement all functions. 2006-12-21 Masao Mutoh <mutoh@highway.ne.jp> * src/rbglib_keyfile.c: Add GLib::Keyfile. * sample/keyfile.rb: Add a sample for GLib::KeyFile. 2006-12-16 Masao Mutoh <mutoh@highway.ne.jp> * src/rbgobj_closure.c: Fix warnings on x86_64. * src/rbglib_unicode.c: Code cleanup. * src/lib/glib-mkenums.rb: Make GLib::MkEnums. * src/lib/mkmf-gnome2.rb: Follow above change. 2006-12-11 Masao Mutoh <mutoh@highway.ne.jp> * src/rbglib_maincontext.c: Add GLib::Source.current for GLib-2.12. Add GLib::MainContext#owner? for GLib-2.10. GLib::Timeout#add_seconds, #source_new_seconds for GLib-2.14. 2006-12-10 Kouhei Sutou <kou@cozmixng.org> * src/rbglib_unicode.c: - GLib::Unicode::XXX -> GLib::Unicode::Type::XXX. - GLib::UnicodeBreak::XXX -> GLib::Unicode::BreakType::XXX. - GLib::UnicodeScript::XXX -> GLib::Unicode::Script::XXX. * tests/test_unicode.rb: followed the changes. * src/lib/glib2.rb: GLib.utf8_validate is deprecated. Use GLib::UTF8.validate instead. * src/rbglib_unicode.c: - moved GLib.unichar_* to GLib::UniChar.*. - moved GLib.unicode_* to GLib::Unicode.*. - moved GLib.utf8_* to GLib::UTF8.*. - moved GLib.utf16_* to GLib::UTF16.*. - moved GLib.ucs4_* to GLib::UCS4.*. - removed GLib::UNICODE_*. - removed GLib::UNICODE_BREAK_*. - removed GLib::NORMALIZE_*. * tests/test_unicode.rb: followed the changes. 2006-12-09 Kouhei Sutou <kou@cozmixng.org> * src/rbglib_unicode.c: - merged GLib.utf8_get_char_validate to GLib.utf8_get_char. - GLib.unichar_control? -> GLib.unichar.cntrl? - added GLib.utf8_reverse. * tests/test_unicode.rb: followed the changes. * src/rbglib_unicode.c, tests/test_unicode.rb: completed. 2006-12-08 Kouhei Sutou <kou@cozmixng.org> * src/rbglib_unicode.c: added. not completed yet. * src/rbglib.c: added Init_glib_unicode(). * tests/test_unicode.rb: added tests for Unicode related bindings. 2006-12-07 Kouhei Sutou <kou@cozmixng.org> * src/rbgobj_closure.c (rclosure_unref): set Qnil to disposed rclosure->rb_holder. 2006-12-07 Guillaume Cottenceau <gcottenc@gmail.com> * src/rbgobj_closure.c (rclosure_invalidate): don't check rclosure->rb_holder because the check isn't necessary. 2006-12-06 Kouhei Sutou <kou@cozmixng.org> * src/lib/glib-mkenums.rb: removed garbages. 2006-12-05 Kouhei Sutou <kou@cozmixng.org> * src/lib/glib-mkenums.rb: added. * src/lib/mkmf-gnome2.rb (glib_mkenums): added. * extconf.rb: used glib_mkenums. 2006-12-04 Kouhei Sutou <kou@cozmixng.org> * tests/runner.rb: used Test::Unit::Autorunner.run. * tests/test-glib2, tests/test-iocahnnel.rb: renamed to ... * tests/test_glib2, tests/test_iochannel.rb: ... them for adapting Test::Unit's default configurations. * tests/test-iochannel.txt, tests/test-iochannel-sjis.txt: removed needless files. * tests/runner.rb: setup $LOAD_PATH for test environment. * tests/test-iochannel.rb: rewrote with Tempfile. I want to suppress GLib-WARNING and GLib-CRITICAL messages but I don't know how to do the thing... * src/rbglib_iochannel.c: made "U" each time for avoiding GC problem. 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.