2.12.8: 2007-04-11 Armin Burgmeier * tools/m4/signal.m4: Ident refcomment with three spaces which is more adequate that no identation at all for most situations. * tools/pm/WrapParser.pm: Added peek_token() function which only returns the next token without removing it from the tokens array. Parse '/**' as a separate token and handle it in a special way so that when the final '*/' is encountered and _WRAP_SIGNAL follows, the comment is not terminated but continued by that automatically generated doxygen comment. * tools/pm/Output.pm: Added a merge_doxygen_comment_with_previous parameter in output_wrap_sig_decl(). If it is nonzero, the function assumes that there is already a comment open and continues to use it instead of opening a new comment by removing the leading '/**' from what get_refdoc_comment() returns. Bug #378810. 2007-04-06 Johannes Schmid * tools/generate_wrap_init.pl.in: Use _CLASS_DEPRECATE instead of just _DEPRECATE to known whether a whole class should be avoided in wrap_init. Otherwise every .hg file containing deprecated methods might get ignored. (Fixes Gtk::TextBuffer bug in maemo) 2007-03-19 Bradley Bell * glib/glibmm/helperlist.h: Change variable name to avoid warnings about a shadowed member. Bug #420316. 2007-03-19 Bradley Bell * glib/glibmm/utility.h: remove g_free prototype, include gmem.h instead, to avoid a warning about a redundant declaration. Bug #420339. 2007-03-17 Armin Burgmeier * tools/m4/signal.m4: * tools/m4/vfunc.m4: Use static_cast in vfuncs and signal handlers to cast the wrapper object to ObjectBase*. This is enough to check whether the object is from a derived type or not. A slow dynamic_cast has only to be performed if it is derived, and the C++ vfunc needs to be called. * glib/glibmm/objectbase.h: This requires ObjectBase::is_derived_ to be public, because it is called on a ObjectBase* rather than the actual type. This causes a slight speed up of vfuncs and default signal handler invokation. Also added commented-out inline versions of ObjectBase::_get_current_wrapper() and ObjectBase::is_derived(), which could be used in the generated code if we find that this has significant performance benefits. Note that these methods must be additional to the non-inline methods, because inline methods are not usually exported in the shared library.