2013-07-10 Kjell Ahlstedt Use std::memset() instead of GLIBMM_INITIALIZE_STRUCT. * glib/glibmm/utility.h: Add a comment that GLIBMM_INITIALIZE_STRUCT is deprecated. It generates compiler warnings when __STRICT_ANSI__ is defined. * glib/glibmm/value.cc: * glib/src/optiongroup.ccg: * tools/m4/class_boxedtype_static.m4: Replace GLIBMM_INITIALIZE_STRUCT by std::memset(). 2013-07-03 José Alburquerque Move to a generated ChangeLog. 2013-07-02 José Alburquerque Auto-generate the ChangeLog from the git log for 'make dist'. * Makefile.am: Include the dist-changelog.am file copied in build/ from mm-common so that the ChangeLog is automatically generated from the git commit messages on 'make dist'. 2013-06-30 José Alburquerque docextract_to_xml.py: Add '⇒' to the list of escape sequences. * tools/defs_gen/docextract_to_xml.py: It represents a right arrow and some C API documentation uses it. 2013-06-30 José Alburquerque gmmproc: Add _WRAP_ENUM_DOCS_ONLY() and simplify enum docs process. * tools/pm/DocsParser.pm (lookup_enum_documentation): Renamed from lookup_enum_description(). This subroutine now produces the entire Doxygen enum documentation block. (lookup_enum_value_documentation): Removed this subroutine because it's been merged into the above one. (convert_tags_to_doxygen): Don't convert the Doxygen @enum and @var tags because they appear in the enum documentation obtained from the subroutine above. * tools/pm/Enum.pm (build_element_list): Remove the lines that insert the Doxygen documentation individually for each of the members of the enum because the enum member documentation is already included by the lookup_enum_documentation() subroutine above. * tools/pm/Output.pm (output_wrap_enum): Modified to use the above lookup_enum_documentation() subroutine. (output_wrap_enum_docs_only): Added this subroutine that outputs an enum's Doxygen documentation block if the enum's documentation exists. This is useful for complexly defined C enums (using C macros, for example) that can't presently be wrapped with _WRAP_ENUM() and must be handwritten but outputting their documentation is still desired. (output_wrap_failed): Also produce the source file which caused a _WRAP_* to fail so that it is clear where the error is. * tools/pm/WrapParser.pm (parse_and_build_output): Also check for a _WRAP_ENUM_DOCS_ONLY() so it can be processed. (on_wrap_enum_docs_only): Called by the parse_and_build_output() subroutine above when a _WRAP_ENUM_DOCS_ONLY() is found. Bug #703155. 2013-06-27 Murray Cumming Revert "C++11: Use auto in examples." This reverts commit 9b0554e2c9deca2399e654e7984c9dfe3b67e387. This was not meant to be in the master branch. 2013-06-27 Murray Cumming tls_client test: Catch an exception * giomm_tls_client/main.c: Catch an exception because that is what actually happens when there is no internet connection. It still fails in that case, however. 2013-06-26 Murray Cumming C++11: Use auto in examples. 2013-06-10 José Alburquerque Gen Scripts: Minor clean up of the description of the scripts. * tools/gen_scripts/gio_generate_docs.sh: * tools/gen_scripts/gio_generate_enums.sh: * tools/gen_scripts/gio_generate_extra_defs.sh: * tools/gen_scripts/gio_generate_methods.sh: * tools/gen_scripts/glib_generate_docs.sh: * tools/gen_scripts/glib_generate_enums.sh: * tools/gen_scripts/glib_generate_extra_defs.sh: * tools/gen_scripts/glib_generate_methods.sh: 2013-06-09 José Alburquerque gmmproc: Use an environment variable for the return mismatches. * tools/gmmproc.in: Check for the GMMPROC_RETURN_MISMATCHES environment variable and use its value as the default for the internal boolean '$main::return_mismatches' variable which when true makes gmmproc report if the return type in a _WRAP_METHOD() does not match the C function return type. 2013-06-07 Kjell Ahlstedt gmmproc: Write glibmm version in generated files. * tools/gmmproc.in: Use autoconf's substitution variable @PACKAGE_VERSION@. * tools/m4/base.m4: _START() macro: Add argument glibmm_version. * tools/pm/Output.pm: output_temp_g1(): Add argument glibmm_version. The problems with gtkmm 2.24.3 (bug 697835 and bug 700495) show that it can be useful to easily see which version of gmmproc/glibmm has generated a file. 2013-06-06 José Alburquerque Gio::DBusInterfaceSkeleton: Constant corrections. * gio/src/dbusinterfaceskeleton.hg (get_info): Add a const get_info() method returning a constant InterfaceInfo and make the original one non-constant. (has_connection): Accept the Connection as constant because it should not be modified. * tools/m4/convert_gio.m4: Add a needed conversion. 2013-06-05 José Alburquerque giomm: Add the Gio::DBus::InterfaceSkeleton class. * gio/src/dbusinterfaceskeleton.{ccg,hg}: * gio/src/filelist.am: Add the sources wrapping the methods, properties and signals and list the sources in the list of files to be built. * gio/src/gio_signals.defs: * tools/extra_defs_gen/generate_defs_gio.cc: Add the GDBUSInterfaceSkeleton GType to the properties and signals defs generation tool and regenerate the .defs file. * tools/m4/convert_gio.m4: Add the conversions for the wrapped methods, properties and signals. 2013-06-05 Murray Cumming Add the configure.ac and NEWS changes from 3.6.2. 2013-06-05 José Alburquerque Add the configure.ac and NEWS changes from 3.6.1. 2013-06-04 Kjell Ahlstedt Glib::MainContext: Fix a small error in the documentation of acquire(). * glib/glibmm/main.h: Change "context is the owner" to "thread is the owner". 2013-06-04 Kjell Ahlstedt tests: Fix the glibmm_mainloop test. * tests/glibmm_mainloop/main.cc: Make it work as expected whichever thread executes first. 2013-06-02 Kjell Ahlstedt tests: Add the glibmm_mainloop test. * tests/glibmm_mainloop/main.cc: New file. Tests MainContext and MainLoop, including MainContext::invoke(). * tests/Makefile.am: Add glibmm_mainloop/test. Bug #668184. 2013-06-02 Kjell Ahlstedt Glib::MainContext: Add invoke(). * glib/glibmm/main.[h|cc]: Add Glib::MainContext::invoke(). Bug #668184. 2013-05-21 Kjell Ahlstedt Add missing includes in glibmm.h and bytearray.hg. * glib/glibmm.h: * glib/src/bytearray.hg: Add missing includes. 2013-05-21 Kjell Ahlstedt tools: Improve the testheaders.sh script. * tools/test_scripts/testheaders.sh: Stop if pkg-config fails. 2013-05-18 Kjell Ahlstedt tools: Add the testheaders.sh script. * tools/test_scripts/testheaders.sh: New file. Compiles each specified header file, one at a time. Bug #697835. 2013-05-18 Kjell Ahlstedt tools: Add the testmmh.sh script. * tools/test_scripts/testmmh.sh: New file. Checks if all header files are included in a mm.h file. Bug #699993. 2013-05-14 José Alburquerque Custom Interface Properties: Use base finalize function to free data. * glib/glibmm/class.cc (Class::clone_custom_type): Specify a custom base finalize function for the custom type which would free the properties data that might exist due to properties of implemented interfaces being overridden. This is better than having an interface finalize function because the custom type could implement several interfaces which would mean that the interface finalize function would execute more than once as opposed to just once for the base finalize function. * glib/glibmm/class.h (Class::interface_finalize_function): Replace with Class::custom_class_base_finalize_function(). * glib/glibmm/interface.cc (Interface_Class::add_interface): Do not specify a custom interface finalize function. (Interface::Interface(const Interface_Class&): Also initialize the property GValues using g_param_value_set_default() so that they are initialized with the default values of the properties and not just the default value of the GValue type. Bug #697229. 2013-05-07 José Alburquerque UnixSocketAddress: Add the "path-as-array" property. * gio/src/unixsocketaddress.hg: 2013-05-07 Michael Kruglos glibmm: Wrapped Base64 functionality from glib encoding and decoding are wrapped. step by step and in-place decoding are not wrapped. (they're too low level for C++, and they're available from the C library.) Bug #611589.