2.24.1: * UnixOutputStream: Fix the constructor to use the correct property name. (Alex Vallee) Bug #615482 * Documentation: Strip out the gobject-introspection annotations, and use other improvements made to docextract_to_xml.py (José Alburquerque) * Fix the Windows MSVC build. (Armin Burgmeier) 2.24.0: * Changes in glibmm 2.24 compared to glibmm 2.22: Glib: * BalanceTree: New class, wrapping GTree. (Szilárd Pfeiffer, Jonathan Jongsma) * Fix ustring::format(non-const char*) and add regression test. (Debarshi Ray) Gio: * Added InetAddress, NetworkAddress, NetworkService, Resolver, Socket, SocketAddress, SocketAddressEnumerator, SocketClient, SocketConnectable, SocketConnection, SocketListener, SocketService, SrvTarget, TcpConnection, Threaded SocketService, UnixConnection (Jonanthan Jongsma) * AsyncResult: Add get_source_object_base(), deprecating get_source_object() because it usually can never work. (Murray Cumming, Daniel Elstner) Bug #608269 (Michael Hasselmann) * Cancellable: Added release_fd() and make_polldf(). File: - Added has_parent(), supports_thread_contexts(), start_mountable(), stop_mountable(), poll_mountable() - Aded create_file_readwrite(), create_file_readwrite_async(). - Added open_readwrite(), open_readwrite_async(), finish_readwrite(), r replace_readwrite(), replace_readwrite_async() and finish_replace_readwrite(). - unmount_mountable(), eject_mountable(): Add overrides with MountOperation parameters. * ThemedIcon: Added get_names(). (Murray Cumming) * NetworkService: Add domain property. (Krzesimir Nowak) 2.23.4 (unstable): Gio: * File: Add TypeTraits to fix Gtk::FileChooser::get_files() in gtkmm. (Jonathan Jongsma) Bug #590940 (Tomasz Jankowski) * MemoryInputStream: Correct data loss/corruption with binary data. (Alexey Kosilin) Bug #609552 (Holger Seelig) * ThemedIcon: Added get_names(). (Murray Cumming) Glib: * Fix ustring::format(non-const char*) and add regression test. (Debarshi Ray) Build: * tests: Reorder assignment to LDADD and giomm_ldadd in tests/Makefile.am to always use the built library, not the installed one. (David King) Bug #610854 (Pacho Ramos) 2.23.3 (unstable): Gio: * AsyncResult: Add get_source_object_base(), deprecating get_source_object() because it usually can never work. (Murray Cumming, Daniel Elstner) Bug #608269 (Michael Hasselmann) * File: Delete Gio::SlotFileProgress (and friends) at the correct time, fixing a crash. (Debarshi Ray) Bug #611521. * IOStream: get_input_stream(), get_output_stream(): Fix reference counting, fixing a crash. (Murray Cumming) Bug #607554 (michi7x7) * MemoryInputStream::add_data(): Minor documentation fix. (Michael Hasselmann) * MemoryOutputStream: Fix the constructor, so this really works. (Krzysztof Kosiński) Bug #605710 2.23.2 (unstable): Glib: * BalanceTree: New class, wrapping GTree. (Szilárd Pfeiffer, Jonathan Jongsma) * NodeTree: get_root() const correction. (Alexander Shaduri) Gio: * Cancellable: Added release_fd() and make_polldf(). * File: - Added has_parent(), supports_thread_contexts(), start_mountable(), stop_mountable(), poll_mountable() - Aded create_file_readwrite(), create_file_readwrite_async(). - Added open_readwrite(), open_readwrite_async(), finish_readwrite(), r replace_readwrite(), replace_readwrite_async() and finish_replace_readwrite(). - unmount_mountable(), eject_mountable(): Add overrides with MountOperation parameters. * NetworkService: Change hostname property to domain. (Krzesimir Nowak) * SocketConnection: Remove graceful-disconnect property. (Krzesimir Nowak) * UnixInputStream: Fix the constructor's implementation. Bug #608665 (Matt Marsh) * Windows: giomm.h: Don't include files on Windows that are not available on that platform. (Armin Burgmeier) 2.23.1 (unstable): This release adds the BalancedTree class (wrapping GTree) and fixes a number of bugs, including one where we were accidentally depending on an unreleased version of glib. Alexander Shaduri (1): Bug #594173 - NodeTree::get_root() violates const-correctness Daniel Elstner (1): Fine-tune Doxygen configuration to improve output Jonathon Jongsma (8): Add non-cancellable versions of a bunch of SocketClient functions wrap g_socket_connection_factory_create_connection() A bunch of minor doxygen cleanups around the tree Fix up some formatting issues for BalancedTree Rename btree.* to balancedtree.* Bug #606146 - Relax the glib requirement Bug 581811 - Gio::content_type_guess() miss the version with a NULL filename Krzesimir Nowak (1): Bug #606100 - Fix wrapping properties. Szilárd Pfeiffer (3): Implement GTree wrapper Implemented reference counting for BalancedTree. Fixed several bugs of balanced binary tree wrapper. 2.23.0 (unstable): This release adds API for the new Network I/O classes that were added in glib 2.22.x (e.g. Gio::Socket, Gio::Resolver, etc). Testing of this new API would be greatly appreciated. There are a few minor fixes in various other areas as well. Armin Burgmeier (2): Added new files to MSVC projects ifdef-out inclusion of files not available on Windows in giomm.h Jonathon Jongsma (18): Re-enable network IO stuff (GSocket, etc) Re-enable network IO stuff (Socket, Resolver, etc) Add socket-client example Add socket-server example Take an extra ref from the return of g_inet_socket_address_get_address Fix another bug in resolver example Regenerate gio_methods.defs, bump glib requirement Re-generate gio_docs.xml Wrap Gio::Mount::get_default_location() _IGNORE a couple API that we've implemented manually Wrap SocketClient, SocketConnection, TcpConnection, UnixConnection Wrap SocketListener Accidentally marked wrong SocketConnection as non-win32 Re-generate gio signal defs Wrap SocketService Wrap ThreadedSocketService Wrap missing properties of SocketClient, SocketConnection, SocketListener Add some more .gitignore stuff José Alburquerque (1): Make build successful when exceptions, vfuncs, etc. are disabled. Murray Cumming (1): Regex: Slight documentation improvement. 2.22.1 (stable): This is a quick follow-on release to fix a couple minor issues discovered in 2.22.0. The tarball has been re-generated with the latest mm-common to fix a devhelp installation issue. There is also a build fix for when building with exceptions disabled. Daniel Elstner (1): Fix KeyFile build with exceptions disabled 2.22.0 (stable): This it he first release in the stable 2.22 series. It is essentially equivalent to 2.21.5, but with a few build fixes, etc. Daniel Elstner (8): Re-enable input file line markers in gmmproc Fix broken test for empty _WRAP_METHOD argument Allow the C documentation to be overridden Slightly clean up gross Perl code in gmmproc.in Correctly quote the extracted comment for M4 Enable verbose output of autoreconf Do not complain about missing docs_override.xml Support Automake silent rules 2.21.5 (unstable): This release is a release candidate for 2.22.0. As such, some unfinished API has been disabled (notably the network IO classes that we were not able to finish in time). Also, a few documentation-related fixes. Daniel Elstner (5): Remove sigc from the Doxygen excluded symbols Sanitize the Glib::Cond usage example Officially deprecate GLIBMM_CHECK_PERL macro Delete obsolete MAINTAINERS file Implement Gio::Socket ctors using Gio::Initable Jonathon Jongsma (2): Add Network I/O classes to new documentation module disable network io stuff. punt to next release 2.21.4.2 (unstable): This release corrects a mistake in the build setup which prevented the installation of the gmmproc code generation support files. Daniel Elstner (1): Always build tools/ subdirectory (bgo #593518, Vincent Untz) 2.21.4.1 (unstable): Daniel Elstner (4): Reenable hierarchy graphs for each class Remove header and footer HTML fragments Use shared mm-common Doxygen style sheet 2.21.4 (unstable): Daniel Elstner (59): Transition to new mm-common build infrastructure José Alburquerque (1): Correct the if condition in Gio::MemoryInputStream::add_data(). 2.21.3 (unstable): David King (1): Only compile the properties example if properties are enabled. Jonathon Jongsma (10): fix release target to use correct tagging scheme Bug 587173 - Fails to install when bootstrapped with Automake 1.11 add _IGNORE() for a eject_with_operation() which is hand-written add get_start_stop_type() and Gio::DriveStartStopType enum add overloads for resolver methods without a cancellable object add async versions of Resolver methods Added a simple example showing how to resolve an internet address from a hostname Fix MemoryInputStream::addData (Bug #589683) Fix a build error in MemoryInputStream Add Glib::ObjectBase::freeze_notify()/thaw_notify. Fixes Bug #575533 José Alburquerque (1): Repair Glib::KeyFile docs with regard to exceptions. Bug# 587766. Krzesimir Nowak (1): Wrapped several ISO 8601 related functions. Murray Cumming (1): Corrected the ChangeLog to mention changes that I accidentally committed in last month, but which I did want to commit some time. 2.21.2 (unstable): Glib: Daniel Elstner (1): Treat empty Glib::spawn*() working dir as unset Jonathon Jongsma (1): Add OptionGroup::add_entry(.., double&) Gio: Daniel Elstner (1): Remove stray semicolons Jonathon Jongsma (9): Fix build with glib from master wrap a couple added GDrive methods Wrap g_drive_eject_with_operation() and related functions implement GDrive::stop-button signal implement Gio::InetAddress::get_native_size() Implement Gio::Mount::mount/eject_with_operation() implement Gio::Volume::eject_with_operation() fix accidental bug in Gio::Drive::eject() that the compiler warned me about implement Gio::VolumeMonitor::drive-stop-button 2.21.1 (unstable): Glib: * Date: Constructor: Check for invalid dates. (José Alburquerque) * Added Glib::ValueArray, for use in gstreamermm. (José Alburquerque) * Added Glib::file_set_contents(). (Jonathon Jongsma) * gmmproc: - Avoid problems with spaces in _DEFS() calls. (Hubert Figuiere) Bug #586785. - Improve guessing of the *_get_type() function names from enum names. (José Alburquerque) Bug #575870. Gio: * Cancellable: Added connect() and disconnect(). * Added FileIOStream. * Added InetAddress. * Added Initable. * Added IOStream. * Added NetworkAddress. * Added NetworkService. * Added Resolver * Added Socket. * Added SocketAddress. * Added SocketConnectable. * Added SrvTarget. (Jonathon Jongsma) * File::load_contents() Added overload without the etag_out parameter. (Hubert Figuiere) Bug #581349. Windows Build: * General Windows fixes. * Fix the build directly from git. (Armin Burgmeier) 2.20.0 (stable): * Documentation fixes (Daniel Elstner) 2.19.8 (unstable): (2.19.4 to 2.19.8 were skipped) * Added FILE_CREATE_REPLACE_DESTINATION enum value. * Added Error::TOO_MANY_OPEN_FILES error code. * Fix some compiler warnings about extra ;s. (Murray Cumming) 2.19.3 (unstable): * New API: * BufferedInputStream: buffer_size property * BufferedOutputStream: buffer_size, auto_grow properties * DataInputStream: byte_order, newline_type properties * DataOutputStream: byte_order property * FilterInputStream: close_base_stream property, get/set_close_base_stream() * FilterOutputStream: close_base_stream property, get/set_close_base_stream() * UnixInputStream: fd and close_fd properties, get_fd(), get/set_close_fd() * UnixOutputStream: fd and close_fd properties, get_fd(), get/set_close_fd() * Make licenses consistent with eachother (library gpl vs. lesser gpl, etc) (Deng Xiyue) * Fixed some problems when building with exceptions disabled (Murray Cumming) * Build fixes (Theppitak Karoonboonyanan) 2.19.2 (unstable): * File: Added make_directory_with_parents() method overload with no parameter. Bug #566003 (Philip Belemezov). * NoteTree: Do not use a non-ASCII dash character in a comment, to avoid the MSVC++ warning C4819 with Visual Studio 2008. (Tao Wang) Bug #568072 * spawn_*() functions: Added alternative API for when GLIBMM_EXCEPTIONS_ENABLED is not enabled. (Murray Cumming) Bug #565487 (Jonathon Jongsma) * uri_*() functions: Fix memory leak. (Jonathan Jongsma) Bug #566845 (Jason Kasper) * ustring: Add an overload which takes only a format string and no arguments to be substituted. (Daniel Elstner) Bug #506394. 2.19.1 (unstable): * Fix accidental ABI breakage in 2.19.0 caused by adding default handlers for new Gio::Drive signals 2.19.0 (unstable): * wrapped new glib 2.19.x API * Gio::AppInfo: get_commandline(), can_delete(), do_delete(), reset_type_associations(), launch_default_for_uri() * Gio::Drive: new signals changed, disconnected, and eject_button * Gio::Icon: create(std::string), to_string()(), * Gio::Mount: guess_content_type_sync(), is_shadowed(), shadow(), unshadow() * Gio::content_type_from_mine_type(); * Gio::DesktopAppInfo: create_from_keyfile() * Gio::Emblem: new class * Gio::EmblemedIcon: new class * Gio::MemoryOutputStream: new class * Bugs Fixed: * 555743 - warning in glibmm * 562716 - warning fixing cause more warnings. * 396963 - Add Glib::signal_idle().connect_once() * Thanks to contributions from Przemysław Grzegorczyk, Dave Foster, Hubert Figuiere, and Jonathon Jongsma for changes in this release 2.18.1 (stable): * Many windows build improvements * Bugs fixed: * 506410 - Call of overloaded Stringify is ambiguous * 529496 - Gio::Error::HOST_NOT_FOUND clashes with a netdb.h #define * 539891 - Can't use doxygen commands in *_override.xml * 555576 - name clash in fileinfo.h with winbase.h from VS2005 * 556315 - Extra defs generation utility forgets to generate signals for inter... * 556387 - FileEnumerator::next_file reference counting problems * Thanks to contributions from Armin Burgmeier, Jonathon Jongsma, José Alburquerque, Murray Cumming, and Szilárd Pfeiffer 2.18.0 (stable): * Bug #550789: Fixed a licensing issue with some of the tools distributed with the source tarball (Murray Cumming) 2.17.3 (unstable): * More Glib::NodeTree improvements (Szilárd Pfeiffer, Murray Cumming) * Windows build fixes (Armin Burgmeier) 2.17.2 (unstable): * Changes to API that was added in this unstable series: * Glib::Tree (wrapper around GNode) renamed to Glib::NodeTree to avoid confusion with GTree * pass the node to the traversal the callback (Szilárd Pfeiffer) * Move TraverseFlags inside the NodeTree class (Murray Cumming) * New API: * Added the drive_eject_button signal (Murray Cumming) * Bug Fixes: * #423990: glibmm et al don't recognize new GNU m4 (Damien Carbery) * #529496: Gio::Error::HOST_NOT_FOUND clashes with a netdb.h #define (Murray Cumming) * #523043: Initialization of Glib::ObjectBase for derived types should be mentioned in documentation (Moritz Ulrich) * #506410: Call of overloaded Stringify is ambiguous (Szilárd Pfeiffer, Murray Cumming) 2.17.1 (unstable): * New API: (Murray Cumming) * Gio::File: make_directory_with_parents(), query_file_type(), monitor(). * Gio::FileEnumerator: get_container(). * Gio::Mount: guess_content_type() and guess_content_type_finish(). * Gio:ThemedIcon: prepend_name(). * Gio::Volume: get_activation_root(). * Bug Fixes: * #512348: provide documentation about threadsafety of Glib::Thread::create() when the slot object is of type sigc::trackable (Chris Vine) * #538803: minor fixes to Glib::Tree (Levi Bard) * #540656: Pass NULL in a couple functions instead of an empty string allow files to be overwritten (Armin Burgmeier) * #540875: add documentation for Glib::OwnershipType (Johannes Schmid) * #542929: Fix some compiler warnings (Benjamin Herr) * Fix AppLaunchContext::get_display(), AppLaunchContext::get_startup_notify_id() to use a list of Gio::File, not filepath string. properly documented we know that this is correct. It's an API break but this function could nothave worked before. (Murray) * Bug #543292: Fix visual studio project file (Jens Georg) * Added Keyfile example (Murray Cumming) 2.17.0 (unstable): * Added copy constructor and assignment operator, made GDate constructor visible (José Alburquerque) * Added Glib::Tree, a wrapper for GNode, providing an N-ary tree container, more or less like a standard C++ container (Levi Bard) * Bug #529648 - give helpful warning message when library user forgets to initialize the library (Jonathon Jongsma) * Bug #529533 - Fix bug that prevented for Gio::Mount, Gio::Drive, and Gio::Volume from being wrapped for some backend implementations (Jonathon Jongsma) 2.16.2 (stable): * Bug 526831 – G_OPTION_REMAINING no longer works with OptionEntry (Murray Cumming) * Bug 527687 – ustring::erase(iterator) incorrect for non ascii character (Murray Cumming) * add API documentation for spawn_* functions (Murray Cumming) * fix possible memory leak in OptionEntr (Murray Cumming) 2.16.1 (stable): * Reference-counting bugfix in Gio::File::create() and Gio::File::replace() (Murray Cumming) * Include Gio::Error header in headers that have API that can throw this exception (Murray Cumming) * Improve documentation (Murray Cumming) * Build fixes for giomm on win32 (Jonathon Jongsma) * fix warning with g++ 4.3 (Tim Retout) 2.16.0 (stable): Changes compared to glibmm 2.14: * New Gio API. Check for giomm-2.4 with pkg-config to use this. (Marko Anastasov, Jonathon Jongsma, José Alburquerque, Murray Cumming) * New Glib::Checksum class. (Naveen Verma, Murray Cumming) * New uri helper functions: uri_unescape_string(), uri_parse_scheme(), uri_escape_string(). (Murray Cumming) 2.15.8 (unstable): * File: load_contents(), load_contents_finish(), load_partial_contents_finish(): Use char*& instead of char** for contents. Use std::string& instead of char** for etag_out. Added method overloads without cancellable. (Murray Cumming) * Improved documentation: Mention exceptions instead of errors. 2.15.7 (unstable): * File: - Added query_filesystem_info_async() and query_filesystem_info_finish() because these were added to the C API. (Murray Cumming) - Renamed contains_file() to file_has_prefix() because this was changed in the C API. (Wouter Bolsterlee) * ThemedIcon: Added append_name() because this was added to the C API. (Murray Cumming) Glib: * Renamed uri_get_scheme() to uri_parse_scheme() because this was changed in the C API. (Wouter Bolsterlee) Documentation: * Corrections to the .devhelp file generation. (Jonathon Jongsma. Bug #518673) 2.15.6 (unstable): Gio: * Removed most vfuncs, because they are not useful to application developers, and are a likely source of errors. (Murray Cumming) * DesktopAppInfo: - Added Added create(), create_from_file(), is_hidden() and set_desktop_env() Renamed new_from_file() to create_from_file(). (José Alburquerque) * File: equal(), get_relative_file(), contains_file(): Take const File parameters. * FileAttributeInfoList: Added dup(). * MemoryInputStream: Added add_data(const void* data, gssize len). * Mount: Really added signals. * MountOperation: Wrapped the ask-question signal. (Murray Cumming) * Volume: - Added should_automount(). (Marko Anastasov) - Really added signals. (Murray Cumming) * UnixOutputStream, DataOutputStream, DataInputStream: Made constructors protected. (Marko Anastasov) Documentation: * Install a devhelp file like the existing gtkmm one. (Jonathon Jongsma) 2.15.5 (unstable) Gio: * File, Mount, Volume: Updated for latest gio API changes, adding a MountFlags parameter to some methods. (Jonathon Jongsma) * Volume, VolumeMonitor, Added some vfuncs, though we might remove these later as they seem useless and likely to be sources of problems. (Murray Cumming) Glib: * Actually install gi18n-lib.h (Takao Fujiwara. Bug #515133) 2.15.4 (unstable): Glib: * AppInfo: Added vfuncs. (Jonathon Jongsma) * Added BufferedOutputStream, DataInputStream and DataOutputStream, and FilterOutputStream. (Jonathon Jongsma) * Cancellable: Added the signal. (Murray Cumming) * Added ContentType functions. (Jonathon Jongsma) * File: - Added overloads of create_file(), remove(), trash(), make_directory(), make_symbolic_link(), query_settable_attributes(), query_writable_namespaces(), query_filesystem_info(), query_default_handler() and mount_mountable(() without cancellable parameters. (Murray Cumming) - Added copy_attributes(), added mount_enclosing_volume(), mount_enclosing_volume_finish(), find_enclosing_mount(), and find_enclosing_mount_finish(). (Murray Cumming) - set_attributes_from_info(): Reordered parameters so we can have default values. (Murray Cumming) - Added copy_async(), with overloads without slot_progress. copy_finish(), query_default_handler(). (Marko Anastasov) - find_enclosing_mount(), append_to(): Reordered parameters and added overloads without cancellable. (Murray Cumming) - Added non-cancellable set_attribute_string(), set_attribute_byte_string(), set_attribute_{uint32, int32, uint64, int64}. (José Alburquerque) * Added FilenameCompleter. (Murray Cumming) * LoadableIcon: - Derive from Icon, and no longer derive FileIcon from Icon directly. (Murray Cumming) - Wrapped some vfuncs and some extra methods. (Jonathon Jongsma) * Added MemoryInputStream. (Jonathon Jongsma) * Added ThemedIcon (Murray Cumming) * Added UnixInputStream, UnixOutputStream, and DesktopAppInfo, available only on Unix/Linux. (José Alburquerque, Murray Cumming) * Volume: Added get_mount(), get_identifier(), enumerate_identifiers(). (Marko Anastasov) * VolumeMonitor: Added signals and properties. (Murray Cumming) Build: * Use local gmmproc files again, instead of only installed ones. (Murray Cumming) * Fix compile with GCC 4.3. (Kjartan Maraas) 2.15.3 (unstable): Gio: * FilterInputStream: Really wrap this. * VolumeMonitor: Workaround a crash in gio due to the eccentric use of the GType system to discover GVolumeMonitor implementations. See gio bug #511814. * Added Gio::Error exception. * Added more method overloads without optional parameters, and reordered more parameters to allow default values. (Murray Cumming) * giomm.h: Added includes. (Jonathan Jongsma) * Note that there are some examples in the gtkmm-documentation module. 2.15.2 (unstable): Glib: * Checksum: New class, wrapping GChecksum. (Naveen Verma. Bug #510235) * ObjectBase: Added connect_property_changed_with_return() because connect_property_changed() does not return a sigc::connection. Bug #433984 (Philip Langdale, Kalle Vahlman). * enums.pl .defs generator: Handle parantheses. (Marko Anastasov. Bug #498621) Gio: * Added FilterInputStream, Mount, FileMonitor, VolumeMonitor. (Marko Anastasov, Murray Cumming) * Many methods' parameters have been reordered so we can add default parameter values. * Many methods now have overloads with less parameters. (Murray Cumming, José Alburquerque, Marko Anastasov) 2.15.1 (unstable): Gio: * Actually build the giomm library. * Added API reference documentation. (Murray Cumming) * Added AppInfo and AppLaunchContext. * Drive: - Added poll_for_media() and poll_for_media_finish(). - Added capability-checking functions. (Marko Anastasov) * File: Renamed create() to create_file(), create_async() to create_file_async() and create_finish() to create_file_finish() to slightly reduce confusion with the static create*() methods. * FileInputStream, FileOutputStream: Derive from Seekable. (Murray Cumming) * FileInputStream, InputStream, Volume: Modified *_finish functions to take a const AsyncResult. (Marko Anastasov) * Added LoadableIcon. (Murray Cumming) * MountOperation: Added MountOperationResult enumeration and make reply() take this instead of a bool. (Jonathon Jongsma) (Murray Cumming) Glib: * Added uri_unescape_string(), uri_get_scheme() and uri_escape_string(). (Murray Cumming 2.15.0 (unstable): * New giomm library (check for giomm-2.4 with pkg-config) in the glibmm tarball. This wraps the new gio API in glib 2.15/16. However, this API could change considerably before the stable glibmm 2.16 is released. (Marko Anastasov) * ustring: - Added compose() to substitute placeholders in a format string, as an equivalent to sprintf(), to help internationalization/translation. - Added format() to simplify the common task of converting a value (such as a number) to a string, with optional stream formatting parmatters. This uses the regular C++ stream API in its implementation. (Daniel Elstner, Openismus) * Glib::RefPtr: Deprecate clear(), replacing it with reset(), because people often do treemodel.clear() when they mean treemodel->clear(). reset() is consistent with std::auto_ptr<>. But the method is still there so the compiler still can't help you to avoid the mistake. (Murray Cumming) * KeyFile: set_integer_list(), set_boolean_list(), set_double_list() actually work now without crashing. (Daniel Elstner, Openismus) * gmmproc: - Refuse to generate a wrapper for a construct-only property which is also write-only, and display a warning. (Daniel Elstner, bug #436789) - Added _DERIVES_INITIALLY_UNOWNED to sink floating references in constructor of classes that wrap GInitiallyUnowned-derived GTypes. Plus _INITIALLY_UNOWNED_SINK for hand-written constructors. (Murray Cumming) * Build: - Fix build for glib 2.15 by including gtestutils.h instead of gmessages.h to get g_assert(), though I am angry that this API break has been allowed. (Murray Cumming) - Fix build for pre-releases of gcc 4.3 - also an include issue. (Sebastien Bacher, #498438) 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.