2.14.2: * Build: Hopefully fix the build on NetBSD-4.99.6/amd64. Bug #386990. (was already in 2.12.7) (Murray Cumming) * gmmproc: Added support for the new _CONFIGINCLUDE() macro. (Armin Burgmeier) 2.14.1: * Glib::wrap(): Don't fail when wrapping an interface that is implemented by an unrecognized type. gmmproc-generated code now uses the new wrap_auto_interface(), so newly-generated source code will require this latest glibmm version. * Increase version number check for glib. (Rémi Cardona) 2.14: Changes sinze 2.12: * New Regex class, allowing string searching with regular expressions. (Murray Cumming, Daniel Elstner) * New KeyFile class. (Rob Page, Jonathan Jongsma, Murray Cumming) * Main: Added SignalTimeout::connect_seconds(). (Murray Cumming) * OptionContext: Added get/set_summary(), get/set_description(), set_translation_domain() and set_translate_func(). (Jonathan Jongsma) * Added Glib::get_user_special_dir(), get_user_data_dir(), get_user_config_dir(), and get_user_cache_dir(). (Jonathan Jongsma, Murray Cumming) * Improved documentation. (Johannes Schmid, Jonathan Jongsma, Ralf Stephan) 2.14.0: * Regex: - Add escape_string(). - match_full(): Rename to match(). - match_all_full(): Rename to match_all(). - split_full(): Rename to split(). 2.13.9: * KeyFile: Added Added get_double(), set_double(), get_double_list() and set_double_list(). (Murray Cumming) 2.13.8: * OptionContext: Added get/set_summary(), get/set_description(), set_translation_domain(), and set_translate_func(). (Jonathon Jongsma) * Documenation: Added RegEx class documentation. (Johannes Schmid) Show new API in 2.14. 2.13.7: * Regex: Added a create() method and added default parameter values. Added a simple example. * Added SignalTimeout::connect_seconds(), in addition to the existing SignalTimeout::connect(), as a wrapper of g_timeout_add_seconds(). Improveed the documentation. * Added get_user_special_dir(). (Murray Cumming) 2.13.6: * Added Glib::Regex, an API for doing regular expression search/matching. This is not fully wrapped yet, but the simple versions of the API are there. We need to write an example for this. (Murray Cumming) 2.13.5: * Correctly ifdef-out initialization of deprecated classes. (Johannes Schmid, Openismus) * Build: Cope with newer m4 versions. (Yselkowitz) 2.13.4: * Correct initialization when using --disable-deprecated for reduced code-size on embedded devices. (Johannes Schmid, Openismus) * Glib::ObjectBase::is_derived_() is now public, though it is still only for internal use. This allows us to do some optimization of default signal handlers and vfuncs. (Armin Burgmeier, Openismus) * Options: Don't overwrite default arguments. This change was lost in March 2006, but now it is back. (Armin Burgmeier) * Dispatcher: Several minor implementation improvements. (Daniel Elstner) * ustring: Minor improvements. (Daniel Elstner) * Documentation: Actually use the signals documentation again. (Armin Burgmeier, Openismus) * Build: - Fix code generation when using the latest m4, and functions named mkstemp, as experienced on Ubuntu Feisty. Bug #397167 (Dodji Seketeli, Daniel Elstner) - helperlist.h: Avoid warnings about a shadowed member. Bug #420316 from Bradley Bell. - utility.h: Avoid a warning about a redundant declaration. Bug #420339 from Bradley Bell. 2.13.3: * Glib::ObjectBase::is_derived_() is now public, though it is still only for internal use. This allows us to do some optimization of default signal handlers and vfuncs. (Armin Burgmeier, Openismus) * Build: - helperlist.h: Avoid warnings about a shadowed member. Bug #420316 from Bradley Bell. - utility.h: Avoid a warning about a redundant declaration. Bug #420339 from Bradley Bell. * gmmproc improvements: - gmmproc: Allow () in property and signal docuemntation. - gmmproc: Do not try to remove a common prefix from the C enam values, if there is no common prefix. - enum.pl: Allow whitespace in front of an enum typedef. (Daniel Elstner) - enum.pl: Fix an infinite loop. * ObjectBase: Added connect_property_changed(), as an alternative to use when the property proxies are not available because GLIBMM_PROPERTIES_ENABLED is not defined. (Murray Cumming) * Value: When registering float parameters, use G_MAXFLOAT as the minimum, instead of G_MINFLOAT. Likewise for doubles. (Oliver Nittka) 2.13.2: *Build: - Fix for api-default-signal-handlers option. Bug #357830 (Matt Hoosier) - win32: Remove unused source file from Visual Studio project. (Cedric Gustin) 2.13.1: * KeyFile class added, wrapping GKeyFile, for parsing of .ini-style files. (Rob Page) * Added get_user_data_dir(), get_user_config_dir(), and get_user_cache_dir(). (Jonathon Jongsma) * Support optional ifdef parameters in the .hg macros, to allow, for instance the --enable-atk=no option, to disable the build and use of the atkmm API, for use in embedded environments. (Johannes Schimd, Murray Cuming, Openismus) * Documentation: - Small ustring reference documentation improvement. (Ralf Stephan) 2.12.0: Changes sinze 2.10: * Added the --enable-api-default-signal-handlers option, for use in embedded environments that have reduced resources. See configure --help for the other subsets. * Value: Added init(const GValue*), so we can copy GValue instances of any type at runtime. Needed by the new branch of libgdamm. 2.11.3: * Build: Added the --enable-api-default-signal-handlers option, for use in embedded environments that have reduced resources. See configure --help for the other subsets. 2.11.2: * Date: Fix implementation of Glib::Date::set_time_current() so that it doesn't set the date to Dec 31, 1969. (Jonathon Jongsma) * Value: Added init(const GValue*), so we can copy GValue instances of any type at runtime. Needed by the new branch of libgdamm. (Murray Cumming) * Added a #warning to warn about including X11/Xlib.h before a glibmm header, which would break things. Bug #316726 from Mert Tugcu and Javeed Shaikh. (Murray Cumming) * Build: - Quote some m4 macros to avoid warnings. Bugs (with patches) #347076 and #347077 (Kevin McBride). - Fix exporting of get/set_property() on mingw32-gcc. (Cedric Gustin) 2.10.1 * Windows Build: - Define GLIBMM_DLL when building with mingw32 or cygwin, because it is needed by gtkmm. Bug #309030 (Cedric Gustin) * OptionGroup: Allow default values, by not initializing them all. (Armin Burgmeier) * Slight code size reduction by marking private functions as static. (Murray Cumming) 2.10.0: * Windows Build: - ustring.h: Tag npos with GLIBMM_API, in order to dllexport it on win32. Bug #332438. - Updated MSVC++ build files and README, for MS Visual Studio 2005. (Cedric Gustin) * gmmproc code generator: - WRAP_METHOD() Take an extra optional argument: deprecated deprecationtext - so that we can insert the appropriate doxygen tag in the documentation, where the C documentation does not do it for us. 2.9.1: * Date: - Added set_time(time_t), set_time(GTimeVal), and deprecated set_time(GTime) - Added set_time_current(). (Murray Cumming) * Build: Added --enable-deprecated-api option. When set to disabled, it does not build deprecated API. This reduces the size of the library, and might be useful for embedded devices. (Murray Cumming) 2.8.2: * Solaris build fix: Correct the detection of make. (Mark Rouchal) 2.8.1: * Build: Check for glib 2.8. 2.8.0: API additions since glibmm 2.6: * GModule: Add BIND_LOCAL enum value. (Bug #172748 from Phillip Neiswanger). * MainContext Added signal_child_watch() and examples/child_watch. (Yair Hershkovitz) * OptionEntry: Added FLAG_NO_ARG, FLAG_FILENAME, FLAG_OPTIONAL_ARG, and FLAG_NOALIAS enum values. (Murray Cumming) 2.7.3: * Updated reference documentation from glib documentation. 2.7.2: * OptionEntry: Added FLAG_NO_ARG, FLAG_FILENAME, FLAG_OPTIONAL_ARG, and FLAG_NOALIAS enum values. * build_filename() and build_path(): Now use the implementation from glib. 2.7.1: * GModule: Add BIND_LOCAL enum value. (Bug #172748 from Phillip Neiswanger). * MainContext Added signal_child_watch() and examples/child_watch. (Yair Hershkovitz) * Fixes from 2.6.2. 2.6.1: * Interface::add_interface(): Disabled the check for a second call, introduced in 2.6.0, for now, because it stops some valid uses. (Bryan Forbes) 2.6.0: New stable version. Changes compare to glibmm 2.4.x: * Added Option, OptionContext, OptionGroup for parsing of command-line arguments. * Added filename_display_basename() and filename_display_name(). * Added setenv() and unsetenv(). * add_interface() methods will no longer give warnings if you call them twice. * gmmproc: - Now reuses C properties documentation. 2.5.6: * add_interface() methods will no longer give warnings if you call them twice. * gmmproc: Output properties documentation taken from the .defs. * examples now build on AIX. (Murray Cumming) * MSVC++ .Net 2003 build fix. (Cedric Gustin) 2.5.5: * Now builds with the following compilers, in addition to the existing GNU g++, and Intel compilers: - SUN Forte CC 5.5 - IBM AIX xlC v7 - Tru64 C++ V6.5-042 - IRIX MIPSpro 7.4.2m (Older versions of all these compilers might also work.) (Murray Cumming, www.thewrittenword.com) * Now builds with MSVC++ .Net 2003 (gtkmm 2.4 already did). (Cedric Gustin) 2.5.4: Options: * Added Option(GOptionGroup* cast_item) constructor, needed by Gtk::Main. * Added reference documentation. (Murray Cumming) 2.5.3: * Options: - Allow parsing of boolean arguments (arguments with no value). - Really use the short names. (Daniel Holbach, Murray Cumming) * Added filename_display_basename() and filename_display_name(). (Murray Cumming) * Added setenv() and unsetenv(). (Murray Cumming) * Use static keyword to prevent exporting private API. (Benoît Dejean) * input example: Improvements and simplification. (Chris Vine) 2.5.2: * OptionEntry: Remove useless enum. (Murray Cumming) * Documentation: - examples: Added iochannel_stream example. (Chris Vine) - reference: Generate more reference API from the C documentation, and try to use the libstdc++ doxygen tags file to link to their documentation. (Murray Cumming) 2.5.1: * OptionContext, OptionGroup, OptionEntry: Made the add_entry() methods type-safe and fixed several problems memory-management problems. This API is now worth looking at. 2.5.0: * Added OptionContext, OptionGroup, and OptionEntry classes, for parsing of command-line options. See examples/options/ 2.4.4: * Signals: Avoid crashes when disconnecting a signal when handling that signal. (Murray Cumming, Martin Schulze) * 2.4.3: * Minor improvements to reference documentation. (Daniel Elstner) * Minor Glib::Dispatcher improvements (Daniel Elstner) 2.4.2: * Glib::Dispatcher: win32 implementation rewritten, and hopefully, improved. (Daniel Elstner) * Glib::ustring: - Optimization and code-cleanup. (Daniel Elstner) - Added reference documentation for constuctors. (Murray Cumming) * Fixed some compiler warnings. (Daniel Elstner) * gmmproc: Some improvements for libgdamm. (Murray Cumming) 2.4.1: * Build fixes for gcc 3.4.0. * Doxygen not required when building from tarballs. (Murray Cumming) 2.4.0: Changes since 2.2.0: * Now separate from gtkmm, so you can use things like Glib::ustring without depending on gtkmm. This glibmm 2.4 API installs in parallel with gtkmm 2.0/2.2, so you can install applications which use either. * When using pkg-config, you should check for "glibmm-2.4". * Glib::ObjectBase inherits virtually from SigC::Object, allowing multiple inheritance with other classes that inherit from SigC::Object. * RefPtr: - is_null() was removed, to encourage you to use "== 0" instead. - operator=(CppObject*) was removed. * The gtkmmproc code-generator is now gmmproc, and has several improvements to support gtkmm 2.4. * Now uses improved libsigc++ 2.0 API. * Added i18n.h and i18n-lib.h, which include the relevant glib headers, which declare internationalization macros such as _(). * New methods: Glib::spawn_close_id(), Glib::MainLoop::depth(), Glib::Date::clamp_min(), Glib::Date::clamp_max(). * Improved documentation. 2.3.8: * Fix crash when using Glib::Main signals. (Martin Schulze) * Corrected the configure-time SUN compiler check. (Murray Cumming, Alexander Nedotsukov) 2.3.7: * Added configure macros to detect SUN compiler oddities. * Various SUN Forte C+ and g++ 3.4 (cvs) build fixes. (Murray Cumming) * gmmproc: Improved parsing of C docs. (Hagen Moebius) 2.3.6: * Added i18n.h and i18n-lib.h, which include the relevant glib headers, which declare internationalization macros such as _(). (Murray Cumming) * Added Glib::spawn_close_id(). (Murray Cumming) * Added Glib::MainLoop::depth(). (Murray Cumming) * Documentation: corrections to CHANGES (Martin Schulze). * gmmproc: Can now handle "const const_iterator& iter" parameter names without getting confused by 2 consts. (Murray Cumming) 2.3.5: * glibmm now uses libsigc++ 2 rather than libsigc++ 1.2. 2.3.4: * ListHandle/SListHandle (intermediate container types): - Added a const_cast<> to allow lists of const elements. * gmmproc: _WRAP_SIGNAL(): Added optional custom_c_callback parameter. (Murray Cumming) * WIN32: Build fixes, mostly merged from the 2.2 branch. (Cedric Gustin) 2.3.3: * gmmproc (code generator) - properties: Make read-only properties have const accessors, and add a second read-only const accessor for normal properties. Wrap construct-only properties as read-only, instead of ignoring them. - vfuncs: Really generate const vfuncs when requested. Put the method declaration directly into the .h file, so that the doxygen documentation can be next to it. - documentation: - Remove mergecdocs configure option - always merge the C docs, to avoid any risk of uploading or releasing empty documentation. Just delete the *_docs.xml files to make building from cvs faster. - Install a GLIBMM_CHECK_PERL() macro, for use by gtkmm and other *mm projects, to get the perl path needed by doxygen. - Install beautify_docs.pl so it can be reused in gtkmm and other *mm projects, instead of having lots of copies. * Glib::ObjectBase: The default constructor, never before used, now generates a custom GType, for use when creating new implementations of Glib::Interfaces - for instance, see the new custom tree model example in gtkmm. * Glib::Date: Added clamp_min() and clamp_max(). (Murray Cumming) * Documentation: - Added reference documentation for MainLoop, MainContext, Source, and Date. (Alberto Paro) 2.3.2: * gmmproc (code generator): - signal proxies have extra space to avoid << with templates. - Added WRAP_METHOD_DOCS_ONLY() for reusing documentation even when the method is hand-coded. - _WRAP_SIGNAL(): Added optional no_default_handler parameter, because some of the new GTK+ signals have no public default handler vfunc. * Added Glib::init(), for use by non-GUI apps which need to use Glib::wrap(). * PropertyProxy: Can now be used with Interfaces. * Documentation improvements, so that gtkmm docs link to glibmm docs. (Murray Cumming) 2.3.1: * gmmproc changes needed by gtkmm 2.3.0 (Murray Cumming) * examples updated and buildable and working, without gtkmm code. (J. Abelardo Gutierrez) Changes in glibmm 2.3.0: * Now separate from gtkmm, so you can use things like Glib::ustring without depending on gtkmm. This glibmm 2.4 API installs in parallel with gtkmm 2.0/2.2, so you can install this unstable library without the risk of breaking existing application. * This does not yet require glib 2.3 because there has been no tarball release of that yet. For now, you can use glibmm 2.3.0 with glib 2.2.x. * When using pkg-config, you should check for "glibmm-2.4". * Glib::ObjectBase inherits virtually from SigC::Object, allowing multiple inheritance with other classes that inherit from SigC::Object. * RefPtr: - is_null() was removed, to encourage you to use "== 0" instead. - operator=(CppObject*) was removed. * gtkmmproc is now gmmproc. * All the glibmm bugfixes in gtkmm 2.2.x.