3 2007-10-22 Murray Cumming <murrayc@murrayc.com>
5 * Merged this change from 2007-03-03 from the glibmm-2-12 branch, which was
6 missing from this branch:
8 * glib/glibmmconfig.h.in:
11 * scripts/Makefile.am:
12 * scripts/c_std.m4: Added a test for the case that time_t is equivalent to
13 guint32, as seems to be the case on NetBSD-4.99.6/amd64, so we can ifdef-out
14 the (deprecated, anyway) Glib::Date::set_time(GTime) method when necessary, because
15 GTime is also equivalent to guint32.
18 2007-10-12 Armin Burgmeier <armin@openismus.com>
20 * tools/m4/base.m4: Added a new section called SECTION_HEADER_FIRST
21 that within the header file that is before any generated code (apart
22 from the include guards) and a _CONFIGINCLUDE macro that includes a
23 file within this section. This is intended to be used with
24 g*mmconfig.h so the *_DISABLE_DEPRECATED define is set for deprecated
25 classes also when included from other code.
29 2007-09-29 RĂ©mi Cardona <remi@gentoo.org>
32 increase the minimum glib requirements.
35 2007-10-02 Murray Cumming <murrayc@murrayc.com>
37 * glib/glibmm/wrap.cc:
38 * glib/glibmm/wrap.h: Replaced wrap_create_new_wrapper()
39 (introduced by the last commit) with wrap_create_new_wrapper(),
40 allowing us to check that the parent GType actually implements
41 the interface. This allows us to return a parent known type
42 if it implements the wanted interface.
44 2007-09-25 Murray Cumming <murrayc@murrayc.com>
46 * glib/glibmm/wrap.cc:
47 * glib/glibmm/wrap.h: Added wrap_auto_interface<>(), which should
48 be used by wrap() specializations for interfaces, so we create
49 instances of the interface even if the derived C type is unknown to
51 * glib/glibmm/signalproxy_connectionnode.h: Do not wrap.h from here
52 unnecessarily, to allow us to include objectbase.h in wrap.h,
53 needed by the new templated method.
54 * tools/m4/class_interface.m4: Use wrap_auto_interface<>()
55 instead of wrap_auto() for interfaces.
59 2007-09-06 Daniel Elstner <danielk@openismus.com>
61 * glib/src/regex.{ccg,hg} (Regex): Some cosmetic cleanup. Also
62 replace C-style casts in default argument values with static_cast<>.
63 (escape_string): Wrap missing function.
64 (match_full): Rename to and add as overloads of match().
65 (match_all_full): Rename to and add as overloads of match_all().
66 (split_full): Rename to and add as overloads of split().
68 This has freeze-break approval from the release team.
70 2007-08-16 Jonathon Jongsma <jjongsma@gnome.org>
72 * docs/reference/glibmm_footer.html_fragment,
73 docs/reference/glibmm_header.html_fragment: added <div> to doxygen header
74 and footer to make it easier to integrate with library.gnome.org, per a
75 request by Frederic Peters
79 2007-07-28 Murray Cumming <murrayc@murrayc.com>
81 * glib/src/keyfile.hg:
82 * glib/src/keyfile.ccg: Added a set_double() without the group_name
83 parameter, because the C function can take NULL.
84 * glib/src/glib_docs_override.xml: Corrected the documnentation for
85 g_keyfile_set/get_double() to mention 2.14, instead of 2.12,
86 because we only added these to glibmm in 2.14.
87 * glib/src/regex.hg: Correct the since documentation to be 2.14
89 * glib/src/iochannel.hg: read(): Corrected a parameter name to
90 match the generated documentation.
91 * glib/glibmm/miscutils.h: Fixed typos in the use of newin2p14.
93 2007-07-28 Murray Cumming <murrayc@murrayc.com>
95 * docs/Makefile_web.am_fragment: Corrected the rsync options, to
96 match those used by gtkmm, to fix the examples upload.
97 * glib/src/glib_docs.xml: Regenerated from the C documentation.
99 2007-07-14 Murray Cumming <murrayc@murrayc.com>
101 * glib/src/keyfile.ccg:
102 * glib/src/keyfile.hg: Added get_double(), set_double(), get_double_list()
103 and set_double_list().
107 2007-07-07 Jonathon Jongsma <jjongsma@gnome.org>
109 * glib/src/optioncontext.ccg:
110 * glib/src/optioncontext.hg: add some new API that was added in glib 2.12,
111 including get/set_summary(), get/set_description(), set_translation_domain(),
112 and set_translate_func().
113 * glib/src/glib_docs.xml: Regenerated with docextract_to_xml.py
114 * glib/src/glib_docs_override.xml: override docs for the new functions so
115 that they say that they were introduced in glibmm 2.14 instead of 2.12
117 2007-07-02 Johannes Schmid <johannes.schmid@openismus.com>
120 Added class documentation
122 2007-07-02 Murray Cumming <murrayc@murrayc.com>
124 * tools/pm/DocsParser.pm: convert_tags_to_doxygen():
125 Handle newin markers for 2.12 and a few after that.
126 * docs/reference/Doxyfile.in: Added ALIASES for newin2p12 and
131 2007-06-22 Murray Cumming <murrayc@murrayc.com>
133 * glib/glibmm/main.cc:
134 * glib/glibmm/main.h: Added SignalTimeout::connect_seconds()
135 as an equivalent for g_timeout_add_seconds() and took the improved
136 documentation from glib.
138 * glib/glibmm/miscutils.cc:
139 * glib/glibmm/miscutils.h: Added get_user_special_dir(), though we
140 should maybe wrap the enum.
141 Reimplemented many of the functions with the
142 convert_return_gchar_ptr_to_stdstring() and
143 convert_const_gchar_ptr_to_stdstring() functions to simplify them
144 and make them handle NULLs properly.
146 2007-06-22 Murray Cumming <murrayc@murrayc.com>
148 * glib/src/regex.ccg:
149 * glib/src/regex.hg: Added a create() method, and added some
150 more default parameter values to the methods.
153 * examples/Makefile.am:
154 * examples/regex/main.cc: Added a very simple example.
156 * glib/glibmm/value_custom.h: Put header guards around this, though
157 this should never be included directly anyway.
161 2007-06-17 Murray Cumming <murrayc@murrayc.com>
164 * glib/src/matchinfo.hg: Removed API that uses GMatchInfo, until we
165 wrap this properly, probably as a C++ iterator. This will avoid this
166 API accidentally being released as stable sometime.
168 2007-06-12 Murray Cumming <murrayc@murrayc.com>
170 * glib/src/glib_enums.defs: Regenerated with enums.pl
171 * glib/src/glib_functions.defs: Regenerated with h2defs.py
173 * glib/src/Makefile_list_of_hg.am_fragment:
174 * tools/m4/convert_glib.m4:
175 * glib/src/matchinfo.ccg:
176 * glib/src/matchinfo.hg:
177 * glib/src/regex.ccg:
178 * glib/src/regex.hg: Added the RegEx and MatchInfo classes.
179 These need some examples to test them. The MatchInfo class is
180 probably particularly broken at the moment. See the TODO comments.
182 * glib/glibmm.h: Added regex.h
184 2007-05-14 Murray Cumming <murrayc@murrayc.com>
186 * tools/m4/class_boxedtype.m4:
187 * tools/m4/class_gobject.m4:
188 * tools/m4/class_gtkobject.m4:
189 * tools/m4/class_interface.m4:
190 * tools/m4/class_opaque_copyable.m4:
191 * tools/m4/class_opaque_refcounted.m4: Explicitly mention Glib::wrap()
192 in the documentation for generated Glib::wrap() functions, because doxygen
193 does not show their namespace.
195 2007-05-04 Murray Cumming <murrayc@murrayc.com>
197 * tools/pm/Function.pm: When generating example prototypes for
198 signal handlers, prefix them with on_my_, to avoid confusion with
199 similarly named functions and with on_*() default signal handlers.
203 2007-04-30 Johannes Schmid <johannes.schmid@openismus.com>
205 * tools/generate_wrap_init.pl.in:
206 * tools/m4/class_gtkobject.m4:
207 Use _IS_DEPRECATED instead of _CLASS_DEPRECATED because
208 the latter confuses gmmproc.
209 We cannot just use _DEPRECATED because it will result
210 in incorrect handling of for example
211 #ifndef GTKMM_DISABLE_DEPRECATED
213 2007-04-24 Yselkowitz <yselkowitz@users.sourceforge.net>
215 * scripts/macros.m4: Check for both m4 and M4 in the GNU m4 output,
216 to fix the build on some platforms.
221 2007-04-11 Armin Burgmeier <armin@openismus.com>
223 * tools/pm/WrapParser.pm: Added peek_token() function which only
224 returns the next token without removing it from the tokens array.
225 Parse '/**' as a separate token and handle it in a special way so that
226 when the final '*/' is encountered and _WRAP_SIGNAL follows, the
227 comment is not terminated but continued by that automatically
228 generated doxygen comment.
230 * tools/pm/Output.pm: Added a merge_doxygen_comment_with_previous
231 parameter in output_wrap_sig_decl(). If it is nonzero, the function
232 assumes that there is already a comment open and continues to use it
233 instead of opening a new comment by removing the leading '/**' from
234 what get_refdoc_comment() returns. Bug #378810.
236 2007-04-06 Johannes Schmid <johannes.schmid@openismus.com>
238 * tools/generate_wrap_init.pl.in:
239 Use _CLASS_DEPRECATE instead of just _DEPRECATE to
240 known whether a whole class should be avoided in wrap_init.
241 Otherwise every .hg file containing deprecated methods
242 might get ignored. (Fixes Gtk::TextBuffer bug in maemo)
244 2007-03-19 Bradley Bell <btb@debian.org>
246 * glib/glibmm/helperlist.h: Change variable name to avoid
247 warnings about a shadowed member.
250 2007-03-19 Bradley Bell <btb@debian.org>
252 * glib/glibmm/utility.h: remove g_free prototype, include gmem.h
253 instead, to avoid a warning about a redundant declaration.
256 2007-03-17 Armin Burgmeier <armin@openismus.com>
258 * tools/m4/signal.m4:
260 Use static_cast in vfuncs and signal handlers to cast the
261 wrapper object to ObjectBase*. This is enough to check whether the object is
262 from a derived type or not. A slow dynamic_cast has only to be performed if it
263 is derived, and the C++ vfunc needs to be called.
264 * glib/glibmm/objectbase.h: This requires ObjectBase::is_derived_ to be public,
265 because it is called on a ObjectBase* rather than the actual type.
266 This causes a slight speed up of vfuncs and default signal handler invokation.
268 Also added commented-out inline versions of ObjectBase::_get_current_wrapper() and
269 ObjectBase::is_derived(), which could be used in the generated code if we find
270 that this has significant performance benefits. Note that these methods must be
271 additional to the non-inline methods, because inline methods are not usually exported in the
274 2007-02-10 Murray Cumming <murrayc@murrayc.com>
276 * examples/options/main.cc: Use a default value, to show that it
278 (This change, from 2006-03-30 was restored after being accidentally lost on Apr 12 2006)
280 2007-02-10 Armin Burgmeier <armin@arbur.net>
282 * glib/src/optiongroup.ccg: default_c_arg(): Set the initial
283 value of the C argument to the value the C++ argument has, to avoid
284 that glibmm resets arguments to zero that were not given on the
286 (This change, from 2006-03-30 was restored after being accidentally lost on Apr 12 2006)
288 2007-01-28 Daniel Elstner <daniel.kitta@gmail.com>
290 * tools/m4/ctor.m4: If the argument list is empty, call the non-
291 varargs overload of the Glib::ConstructParams constructor instead
292 of using an empty varargs list. This mistake was exposed thanks
293 to the recent addition of G_GNUC_NULL_TERMINATED to the varargs
294 constructor declaration. Fortunately it was harmless in this case.
295 Also use the opportunity to clean up the M4 code and prefix builtin
296 M4 macros with m4_, so that we may get rid of the unprefixed macros
299 Thu, 25 Jan 2007 23:13:05 +0100 Dodji Seketeli
302 prefix the builting mkstemp with 'm4' because otherwise,
303 m4 1.4.8 recognizes it as a builtin macro and expands it, leading
304 to compilation errors on some distros.
305 This should fix #397167. Thanks to Daniel Elstner for spotting this.
307 2007-01-20 Daniel Elstner <daniel.kitta@gmail.com>
309 * glib/glibmm/dispatcher.{cc,h}: Early spring cleaning. Also add
310 a paragraph about Dispatcher on win32 to the documentation.
311 (DispatchNotifyData): Remove the 'tag' member from the struct that
312 was always set to 0xdeadbeef in order to detect memory corruption.
313 This is pointless, as we already check the DispatchNotifier pointer
314 sent across the pipe, which is a far better indicator of corruption
316 (warn_failed_pipe_io): Remove the err_no parameter and retrieve
317 errno respectively GetLastError() within the function instead.
318 (DispatchNotifier::conn_io_handler_): Remove, as we now inherit
319 from sigc::trackable. I verified that this doesn't cause problems
320 with threading in this particular case.
321 (DispatchNotifier::DispatchNotifier): If creating the pipe failed
322 and exceptions are disabled, call at least warn_failed_pipe_io()
323 instead of doing nothing at all.
324 (DispatchNotifier::*): Rework the win32 implementation so that it
325 matches more closely the Dispatcher semantics on Unix. This still
326 needs testing by someone on win32, though. So far I only verified
327 that it compiles with dummy definitions of the win32 API. Also,
328 I accidentally located the real cause of the race condition Cedric
329 experienced in bug #109966. It was a bug in my patch, rather than
332 * examples/thread/dispatcher.cc: Cleanup. In particular, get rid
333 of the Glib::RefPtr<> abuse with non-Glib::Object types. I don't
334 believe we endorse such usage officially, so it shouldn't be in
337 2007-01-20 Daniel Elstner <daniel.kitta@gmail.com>
339 * glib/glibmm/miscutils.cc: Clean up the code a bit.
340 (get_application_name): Remove the code that checked the string for
341 valid UTF-8, and attempted conversion if not valid. I must have
342 been on crack when I wrote this, as the combination of conditions
343 that would cause the string to be invalid UTF-8 is quite unlikely.
344 If this is a valid concern at all, it should be filed as a GLib bug
345 and not worked around in glibmm.
346 (build_filename(const std::string&, const std::string&)): Just call
347 the plain g_build_filename() instead of building a temporary array
348 and passing that via ArrayHandle to the build_filename() overload
350 (build_path): Remove the already deactivated custom implementation
351 from the time before g_build_pathv() was added to GLib.
353 * glib/glibmm/object.{cc,h}: Improve/fix a couple of comments.
354 (ConstructParams::ConstructParams): Add G_GNUC_NULL_TERMINATED
355 function attribute to make the compiler complain if the variadic
356 argument list is not terminated by a NULL pointer.
358 * glib/glibmm/ustring.{cc,h} (utf8_find_last_of): Avoid applying
359 bitwise logical operators directly to (possibly signed) operands
360 of char type. In order to avoid relying on implementation-defined
361 behavior, make sure that the operands are of unsigned integer type.
362 (ustring::is_ascii): Likewise,
363 (ustring_Iterator<T>::operator--): Likewise.
364 (get_unichar_from_std_iterator): De-obfuscate this highly optimized
365 piece of code, as the current stable release of GCC (4.1.2-pre on
366 my system) generates better assembler output without the voodoo.
370 2006-11-28 Daniel Elstner <danielk@openismus.com>
372 * tools/pm/GtkDefs.pm (read_defs): Allow an empty pair of
373 parentheses in the innermost match. This fixes the problem of
374 gmmproc choking on "()" in the documentation strings. This would
375 still break on unmatched parentheses, though. Of course the
376 parser should just skip over quoted strings, but I wasn't able
378 * glib/src/glib_enums.defs (GNormalizeMode): Manually fix the
379 improperly parsed value of G_NORMALIZE_NFD. Fortunately this
380 doesn't change anything since the "#error" token was interpreted
381 as zero, which happens to be the right value.
382 * glib/src/glib_functions.defs (g_iconv): Manually convert to
383 a function definition, as it was improperly parsed as a method
384 with a zero-length name (!) of object GIConv. This fixes the
385 annoying gmmproc warning about an allegedly unwrapped method.
387 2006-11-28 Murray Cumming <murrayc@murrayc.com>
389 * glib/glibmm/propertyproxy_base.cc: Don't ifdef out
390 PropertyProxy_Base when properties are disabled. It is needed
391 for connect_property_changed().
393 2006-11-27 Daniel Elstner <danielk@openismus.com>
395 * tools/enum.pl (parse): Ignore whitespace in front of an enum
396 typedef. This fixes parsing of HildonTelephoneEditorFormat in
398 * tools/pm/Enum.pm (parse_values): Check whether the enumeration
399 constants actually have a common module prefix before attempting
400 to remove it. This fixes the incorrect parsing of inconsistently
401 named enums in hildon-libs.
403 2006-11-27 Daniel Elstner <danielk@openismus.com>
405 * tools/enum.pl (form_names): Break the loop if the length of the
406 common prefix reaches zero. This fixes the infinite loop when
407 processing the inconsistently named enumeration constants of the
410 2006-11-20 Murray Cumming <murrayc@murrayc.com>
412 * docs/reference/libstdc++.tag.xml: Updated from the libstdc++ site.
413 Note that the original does not have an .xml extension. This is is
414 lots bigger, but that should mean there is more documentation now.
416 2006-11-22 Oliver Nittka <oly@nittka.com>
418 * glib/src/value_basictypes.cc.m4: When registering float parameters,
419 use -G_MAXFLOAT instead of G_MINFLOAT. Since we first implemented this,
420 the glib documentation has been updated to make it cleare that this is
421 the real minimum and G_MINFLOAT is the minimum positive value.
422 Do the same for doubles too.
424 2006-11-10 Murray Cumming <murrayc@murrayc.com>
426 * tools/Makefile.am: Add enum.pl to the dist, so that it is in
427 tarballs. Someone saw it mentioned in the appendix, but could not
428 find it in the tarball.
430 2006-11-10 Murray Cumming <murrayc@murrayc.com>
432 * docs/reference/Doxyfile.in: Add PREDEFINES for the optional API,
433 so that the documentation shows the regular API.
435 2006-11-10 Murray Cumming <murrayc@murrayc.com>
437 * glib/glibmm/objectbase.cc:
438 * glib/glibmm/objectbase.h: Added connect_property_changed(),
439 as an alternative to use when the property proxies are not
440 available because GLIBMM_PROPERTIES_ENABLED is not defined.
441 SignalProxyProperty::connect(): Use notify::propertyname instead of
442 just notify, so do not have to check the property name later. This
443 should be more efficient (when this is used, rarely).
444 * glib/glibmm/propertyproxy_base.cc:
445 * glib/glibmm/propertyproxy_base.h: Move PropertyProxyConnectionNode
446 into the header, so we can reuse it for connect_property_changed().
448 2006-10-04 Murray Cumming <murrayc@murrayc.com>
450 * glib/glibmm/class.cc:
451 * glib/src/iochannel.ccg:
452 * glib/src/markup.ccg: Add a silly line to avoid unused parameters
453 when GLIBMM_EXCEPTIONS_ENABLED is not set.
454 * glib/glibmm/error.h: Do not use G_GNU_NO_RETURN on the version
455 of throw_exception() that returns, to avoid a warning.
457 2006-10-01 Murray Cumming <murrayc@murrayc.com>
461 * docs/Makefile_web.am_fragment:
462 * docs/images/Makefile.am:
463 * docs/reference/Makefile.am:
464 * docs/reference/README:
465 * examples/Makefile.am: Upload to the new hoster instead of to sourceforge.
466 Abstracted the host and path names into docs/Makefile_web.am_fragment to
471 2006-09-28 Cedric Gustin <cedric.gustin@gmail.com>
473 * MSVC_Net2003/glibmm/glibmm.vcproj: Remove sarray from list of
474 source and header files.
476 2006-09-26 Murray Cumming <murrayc@murrayc.com>
478 * glib/glibmmconfig.h.in: For win32, define
479 GLIBMM_ARG_ENABLE_API_DEFAULT_SIGNAL_HANDLERS to 1,
480 instead of just defining it to nothing.
481 * scripts/reduced.m4: In the AC_ARG_ENABLE() to
482 define (or not) GLIBMM_ARG_ENABLE_API_DEFAULT_SIGNAL_HANDLERS,
483 use api-default-signal-handlers as the first parameter
484 instead of api-exceptions (a copy/paste error), though it does
485 not seem to make any difference.
488 2006-09-23 Jonathon Jongsma <jonathon.jongsma@gmail.com>
490 * glib/src/keyfile.ccg, glib/src/keyfile.hg: added new files that were
491 missed from an earlier commit
495 2006-09-19 Ralf Stephan <ralf@ark.in-berlin.de>
497 * glib/glibmm/ustring.h:
498 ustring(const ustring& src, size_type i, size_type n=npos)
500 ustring(const char* src, size_type n) constructors:
501 In the reference documentation, mention explicitly that
502 n is the number of _UTF-8_ characters, rather than
503 ASCII characters (bytes).
505 2006-02-20 Rob Page <page.rob@gmail.com>
507 Wraps GKeyFile (Bug #330535)
508 * glib/glibmm.h: Added include of keyfile.h
509 * glib/glibmm/Makefile.am: Added keyfile.h
510 * glib/glibmm/containerhandle_shared.h: Added a TypeTraits
511 specialization for converting between bool and gboolean*.
512 * glib/src/Makefile_list_of_hg.am_fragment: Added keyfile.hg
514 * glib/src/keyfile.hg: KeyFile header
515 * glib/src/keyfile.ccg: KeyFile implementation
516 * tools/m4/convert_glib.m4: Added a conversion for KeyFileFlags
518 2006-09-14 Johannes Schmid <jhs@gnome.org>
520 * tools/m4/class_shared.m4: Change _IMPLEMENTS_INTERFACE to
521 _IMPLEMENTS_INTERFACE_CC so we can have more control over it,
522 by generating the _IMPLEMENTS_INTERFACE_CC from the WrapParser.pm.
523 * tools/m4/method.m4:
524 * tools/m4/signal.m4:
525 * tools/m4/vfunc.m4: Added optional parameters that result in
526 #ifdefs around methods, signals, vfuncs, etc.
527 * tools/pm/Output.pm: Addef ifdef() and endif().
528 output_wrap_vfunc_h(), output_wrap_vfunc_cc(),
529 output_wrap_default_signal_handler_h(),
530 output_wrap_default_signal_handler_cc(),
532 output_wrap_create(),
533 output_wrap_sig_decl(): Support optional ifdefs around
534 declarations and implementations, by calling ifdef() and endif(),
535 or by passing the extra argument to the m4 macros.
536 * tools/pm/WrapParser.pm: parse_and_build_output():
537 Parse _IMPLEMENTS_INTERFACE, and call the new on_implements_interface()
538 method, which uses the new output_implements_interface() method,
539 so it can have an optional ifdef parameter.
540 on_wrap_method(), on_wrap_create(), on_wrap_vfunc(), output_wrap_signal(),
541 output_wrap_vfunc(): Handle the optional ifdef (with a parameter) option
542 for the _WRAP*() macros.
544 This adds support for disabling certain features by using the new
545 "ifdef" argument for methods, vfuncs, signals and interfaces.
547 2006-09-05 Jonathon Jongsma <jonathon.jongsma@gmail.com>
549 * docs/reference/Makefile.am: rebuild docs when a .h files changes in
551 * glib/glibmm/miscutils.cc:
552 * glib/glibmm/miscutils.h: wrap g_get_user_data_dir(),
553 g_get_user_config_dir(), and g_get_user_cache_dir()
555 This is the HEAD branch, for new API. There is also a glib-2-12 branch for
556 maintenance of the stable API.
558 2006-08-18 Cedric Gustin <cedric.gustin@gmail.com>
560 * MSVC_Net2003/*.vcproj: Updated for glibmm-2.12.
566 2006-04-25 Murray Cumming <murrayc@murrayc.com>
569 * glib/glibmmconfig.h.in:
570 * scripts/reduced.m4: Added a --enable-api-default-signal-handlers option. This defines
571 GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED, which is used to #ifdef default signal handlers.
572 This saves on library code size (less code and API symbols) and application code size and
573 loading time (less virtual methods, which must be imported and resolved at load time) and
574 per-object memory size (smaller object sizes because of less virtual methods.)
575 * tools/m4/class_interface.m4:
576 * tools/m4/class_shared.m4: Put default signal handler code in #ifdefs.
580 2006-07-17 Murray Cumming <murrayc@murrayc.com>
582 * configure.in: Reverted the previous patch slightly to unbreak glibmmconfig.h.
586 2006-07-16 Murray Cumming <murrayc@murrayc.com>
588 * configure.in: Quote GLIBMM_*_VERSION to avoid m4 warnings. Patch from
589 Bug #347076 from Kevin McBride.
590 * scripts/sun.m4: Quote GLIBMM_PROG_CXX_SUN to avoid an m4 warning.
591 Patch from Bug #347077 from Kevin McBride.
593 2006-07-16 Jonathon Jongsma <jonathon.jongsma@gmail.com>
595 * glib/src/date.ccg: fix implementation of Glib::Date::set_time_current() so
596 that it doesn't set the date to Dec 31, 1969.
598 2006-06-19 Murray Cumming <murrayc@murrayc.com>
600 * glib/glibmm/object.h: Check whether DestroyNotify is defined, so we can warn about
601 including X11/Xlib.h before this header, which will break things.
602 Bug #316726 from Mert Tugcu and Javeed Shaikh.
604 2006-06-09 Cedric Gustin <cedric.gustin@gmail.com>
606 * glib/glibmm/objectbase.h : Inline the set_property and
607 get_property methods. This is required by mingw32-gcc as
608 ObjectBase is explicitly dllexported.
610 2006-06-05 Murray Cumming <murrayc@murrayc.com>
612 * glib/src/convert.ccg: When using --enable-api-exception=no, only try to get the Glib::Error
613 when the GError is not null.
615 2006-05-18 Murray Cumming <murrayc@murrayc.com>
617 * tools/m4/method.m4: _METHOD(): When using errthrow, actually print the function call even if
618 the return type is 0.
620 2006-05-16 Murray Cumming <murrayc@murrayc.com>
622 * tools/m4/method.m4: _METHOD(), _STATIC_METHOD(): Remove spaces before dnl statements,
623 to avoid unwanted indentation in .cc files.
625 2006-05-16 Murray Cumming <murrayc@murrayc.com>
627 * tools/m4/convert_base.m4: _CONVERT(): If the return type is void, use the unconverted
628 statement, not no statement. This prevents some void methods from being totally empty.
629 This was a (very bad) regression introduced by the optional API changed.
630 Bug #341895 from Philip Langdale.
631 * tools/m4/method.m4: _METHOD(), _STATIC_METHOD(): Attempt to remove unnecessary newlines,
632 though some indenting spaces slipped in instead. Must fix that.
634 2006-05-14 Murray Cumming <murrayc@murrayc.com>
636 * glib/glibmm/value.cc:
637 * glib/glibmm/value.h: Restored the init(GValue*) method that was lost when
638 merging changes from the glibmm-2-10 branch.
640 2006-05-09 Murray Cumming <murrayc@murrayc.com>
642 * glib/glibmm/ustring.cc:
644 * glib/src/convert.ccg:
645 * glib/src/convert.hg: Added #ifdefed versions for the case that
646 exceptions are disabled.
648 2006-05-10 Murray Cumming <murrayc@murrayc.com>
651 * scripts/reduced.m4: Moved --enable-deprecated-api macro into scripts/reduced.m4.
652 Added the --enable-api-exceptions macro that was missing from my last commit.
654 2006-04-05 Murray Cumming <murrayc@murrayc.com>
657 * scripts/reduced.m4: Added --enable-api-exceptions option. When this
658 is used, methods that would normally throw an exception will now take
659 an extra std::auto_ptr<Glib::Error> argument that should be checked with
661 * glib/glibmmconfig.h.in: Undef the GLIBMM_EXCEPTIONS_ENABLED,
662 so it will be defined.
663 * tools/m4/gerror.m4: throw_func() returns an auto_ptr of a
664 Glib::Error when exceptions are disabled.
665 * tools/m4/method.m4:
666 * tools/pm/Output.pm: on_wrap_method(): Added alternative API with
668 * tools/m4/signal.m4:
669 * tools/m4/signalproxy_custom.m4:
670 * tools/m4/vfunc.m4: Put #ifdefs around the exception re-throwing
672 * glib/glibmm/dispatcher.cc:
673 * glib/glibmm/dispatcher.h:
674 * glib/glibmm/error.cc:
675 * glib/glibmm/error.h:
676 * glib/glibmm/exceptionhandler.cc:
677 * glib/glibmm/exceptionhandler.h:
678 * glib/glibmm/main.cc:
679 * glib/glibmm/signalproxy.cc:
680 * glib/glibmm/streamiochannel.cc:
681 * glib/glibmm/stringutils.cc:
682 * glib/glibmm/threadpool.cc:
683 * glib/src/iochannel.ccg:
684 * glib/src/iochannel.hg:
685 * glib/src/markup.ccg:
686 * glib/src/spawn.ccg:
687 * glib/src/thread.ccg: Put #ifdefs around try/catch blocks, and
688 use alternative API when appropriate.
689 * examples/iochannel_stream/fdstream.cc:
690 * examples/markup/parser.cc:
691 * examples/options/main.cc: Adapted examples to
692 the alternative API, with #ifdefs
693 * tools/m4/convert_base.m4: Avoid any conversion if the result is
694 void, to allow _WRAP_METHOD() to ignore bool results, so we can
695 generate some methods that are currently hand-coded.
697 2006-05-09 Murray Cumming <murrayc@murrayc.com>
699 * glib/glibmm/value.cc:
700 * glib/glibmm/value.h: Added init(const GValue*), so that we can copy GValue instances
701 of any type at runtime. Needed by libgdamm, which returns const GValue* instances.
703 This is the HEAD branch, for API additions. See also the glibmm-2-10 branch.
707 2006-04-12 Murray Cumming <murrayc@murrayc.com>
709 * tools/m4/signalproxy_custom.m4: Remove this file because it is not installed and
710 does not seem to be used.
712 2006-04-12 Murray Cumming <murrayc@murrayc.com>
714 * tools/m4/signal.m4: Mark the (private) signal info callback functions as
715 static, to save on code size.
717 2006-04-12 Murray Cumming <murrayc@murrayc.com>
719 * tools/pm/WrapParser.pm: Parse a new optional constversion parameter for
720 _WRAP_METHOD(), to save on code size by just calling the non-const overload
721 instead of generating almost identical code.
722 * tools/m4/method.m4: _METHOD(): Take extra parameters for use when constversion is used.
723 * tools/pm/Output.pm: Send the extra parameters to _METHOD().
724 * docs/internal/using_gmmproc.txt: Documented the new constversion option.
726 2006-04-12 Murray Cumming <murrayc@murrayc.com>
728 * glib/glibmm/main.cc:
729 * glib/glibmm/objectbase.cc:
730 * glib/glibmm/property.cc:
731 * glib/glibmm/ustring.cc:
732 * glib/glibmm/value_custom.cc:
733 * glib/src/spawn.ccg: Mark private functions as
734 static, to stop them being exported in the API, to reduce the
735 library code size slightly.
736 * tools/m4/signal.m4: Make generated callback functions static, for
739 2006-04-07 Cedric Gustin <cedric.gustin@gmail.com>
741 * README.win32: Updated for Mingw-4.1.
743 2006-04-06 Cedric Gustin <cedric.gustin@gmail.com>
745 * MSVC_Net2003/*.vcproj: Embed the manifest file into executables
746 in the case of the Debug target.
747 * README.win32: Fixed a few typos.
748 * build_shared/Makefile_build.am_fragment: Add -DGLIBMM_BUILD to
749 the extra_defines compiler flags (switch between
750 dllexport/dllimport on win32).
751 * glib/glibmmconfig.h.in: Define GLIBMM_DLL when building with
752 mingw32/cygwin. This makes the GLIBMM_API tag (and GTKMM_API for
753 gtkmm) active with these two platforms, as required by bug
755 * glib/glibmm/object.h, glib/glibmm/objectbase.h : Tag the Object
756 and ObjectBase classes with GLIBMM_API to make Visual Studio happy.
760 2006-02-25 Murray Cumming <murrayc@murrayc.com>
762 * tools/pm/DocsParser.pm: looklookup_documentation(): Put the
763 @deprecated text immediately after the main description, before
764 the parameters, so that Doxygen actually uses it.
766 2006-02-25 Murray Cumming <murrayc@murrayc.com>
768 * tools/pm/DocsParser.pm: looklookup_documentation(): Accept an
769 extra deprecated_documentation parameter, to be appended to the
770 Doxygen documentation.
771 * tools/pm/Output.pm: output_wrap_meth(): Put the documentation
772 inside the deprecation #ifdef, for neatness.
773 * tools/pm/WrapParser.pm: on_wrap_method(): Read an optional string
774 after the optional deprecated parameter, used to say why the
775 method is deprecated, in case it was not deprecated by the C API,
776 in which case it would already have documentation for this.
778 2006-02-27 Cedric Gustin <cedric.gustin@gmail.com>
780 * README.win32: Updated for glibmm-2.8 (MS Visual Studio 2005).
781 * glib/glibmm/ustring.h: Tag npos with GLIBMM_API, in order to
782 dllexport it on win32. Bug #332438.
783 * MSVC_Net2003/*.vcproj: Updated for Visual Studio 2005. Added the
784 /vd2 compiler flag (Bug #158040).
785 * MSVC_Net2003/glibmm.sln: Updated for Visual Studio 2005.
786 * MSVC_Net2003/gendef/gendef.cc: Redirect output of dumpbin to a
788 * glib/glibmmconfig.h.in: Undefined
789 GLIBMM_HAVE_ALLOWS_STATIC_INLINE_NPOS for MSVC.
791 2006-02-03 Murray Cumming <murrayc@murrayc.com>
793 * docs/internal/using_gmmproc.txt: Section about regenerating .defs:
794 Repeat the hint about extra_defs_gen here.
796 2006-02-27 Cedric Gustin <cedric.gustin@gmail.com>
798 * glib/glibmm/ustring.h: Tag npos with GLIBMM_API, in order to
799 dllexport it on win32. Bug #332438.
801 2006-02-07 Rob Page <page.rob@gmail.com>
803 * glib/glibmm/ustring.h: fix a typo in the documentation for uppercase()
807 2006-01-28 Murray Cumming <murrayc@murrayc.com>
809 * glib/src/optiongroup.ccg: add_entry_with_wrapper(): Copy the
810 CppOptionEntry into the map _after_ setting entry_ so that we
811 really delete it in release_c_arg(), to avoid a memory leak.
813 2006-01-28 Rob Page <rob@gmail.com>
815 * docs/reference/glibmm_header.html_fragment: Fix the link
816 to the Main page. Bug #328299.
818 2006-01-27 Murray Cumming <murrayc@murrayc.com>
820 * glib/src/optionentry.ccg: Constructor: Avoid memory
821 leak caused by double instantiation of gobject_.
823 2005-12-16 Murray Cumming <murrayc@murrayc.com>
825 * glib/glibmm/object.h:
826 * glib/glibmm/objectbase.h: Hide some internal stuff
827 from Doxygen. Add/Improve the Doxygen documentation.
828 * glib/src/convert.hg: Correct the declaration of
829 filename_display_name() to match the implementation.
830 Previously this would have been unusable due to a linker
833 2005-11-30 Murray Cumming <murrayc@murrayc.com>
835 * docs/reference/Doxyfile.in: Define the @newin aliases,
837 * tools/pm/DocsParser.pm: Convert Since: in gtk-doc
838 text to @newin for our doxygen docs.
840 2005-11-29 Murray Cumming <murrayc.com>
842 * build_shared/Makefile_build.am_fragment:
843 * configure.in: Added --enable-use-deprecations,
844 defaulting to no (do not check for them), so that
845 the tarball will still build when newer versions
846 of glib deprecate some API.
847 * examples/Makefile.am_fragment: Use the
848 deprecation, if wanted.
850 2005-11-29 Murray Cumming <murrayc@murrayc.com>
852 * build_shared/Makefile_build.am_fragment:
853 * configure.in: Added --enable-deprecated-api
854 option. When set to disabled, it does not build
855 deprecated API. This reduces the size of the library,
856 and might be useful for embedded devices.
858 * glib/src/date.hg: Use _DEPRECATE_IFDEF_START/END
859 around the deprecated set_time() method.
861 2005-11-29 Murray Cumming <murrayc@murrayc.com>
863 * tools/m4/base.m4: Add
864 _DEPRECATE_IFDEF_START and _DEPRECATE_IFDEF_END
865 macros, to #ifdef-out generated methods.
866 Added _DEPRECATE_IFDEF_CLASS_START and
867 _DEPRECATE_IFDEF_CLASS_END for whole classes.
868 Put _DEPRECATE_IFDEF_CLASS* around all generated
869 code. It does nothing if the class is not deprecated.
870 * tools/m4/class_gtkobject.m4: Add _DEPRECATED macro,
871 used to mark a class as deprecated.
872 * tools/m4/method.m4: Take an extra parameter, to
873 optionally mark the method as deprecated, to add
874 #ifdefs around the code, with
875 _DEPRECATE_IFDEF_START/END
876 * tools/pm/Output.pm: _DEPRECATE_IFDEF_START/END
877 around the declarations of deprecated methods.
878 * tools/pm/WrapParser.pm: Check for an optional
879 deprecated parameter to _WRAP_METHOD().
880 * tools/m4/member.m4: Allow optional deprecated
881 method for _MEMBER_GET/SET*() to ifdef the code
883 * tools/generate_wrap_init.pl.in: Put an #ifdef
884 around use of deprecated classes.
886 2005-11-23 Murray Cumming <murrayc@murrayc.com>
888 * configure.in: Depend on glib 2.9, which
891 * glib/src/date.hg: Wrap glib_date_set_time_t()
892 and glib_date_set_time_val(). Deprecate
893 set_time(GTime) in favour of the new method
894 overloads. Added set_time_current(), wrapping the
895 case that the time_t is 0.
897 This is the HEAD branch, for new API, targetting glib 2.9. See also the
902 2005-11-23 Murray Cumming <murrayc@murrayc.com>
904 * glib/glibmm/containers.h: Do not use g_assert() in
905 a header, because g++ sometimes warns that it has
908 2005-10-29 Murray Cumming <murrayc@murrayc.com>
910 * scripts/macros.m4: AL_PROG_GNU_MAKE():
911 Use $MAKE-make instead of $ac_make, which
912 apparently fixes a build problem on some
913 Solaris systems. Thanks to Mark Rouchal in
918 2005-10-19 Murray Cumming <murrayc@murrayc.com>
920 * configure.in: Check for glib 2.8. Bug #317913.
924 Updated NEWS and increased version to 2.8.0.
928 2005-08-17 Murray Cumming <murrayc@murrayc.com>
930 * glib/src/glib_docs.xml: Regenerated with docextract_to_xml.py
931 * glib/src/glib_enums.defs: Regenerated with enums.pl
932 * glib/src/glib_functions.defs: Regenerated with h2defs.py
936 2005-07-16 Murray Cumming <murrayc@murrayc.com
938 * glib/glibmm/miscutils.cc: Reimplemented build_filename() and
939 build_path() with the new non-vararg functions in glib 2.7,
940 instead of implementing them in gtkmm.
941 * glib/src/glib_enums.defs: Regenerated with enums.pl
942 * glib/src/optionentry.hg: Added FLAG_NO_ARG, FLAG_FILENAME,
943 FLAG_OPTIONAL_ARG, and FLAG_NOALIAS enum values.
948 2005-06-08 Murray Cumming <murrayc@murrayc.com
950 * glib/glibmm/propertyproxy.h:
951 PropertyProxy_ReadOnly<>::get_value(),
952 PropertyProxy_WriteOnly<>::set_value(): Add implementations
953 instead of casting to unrelated PropertyProxy() and calling it
954 there. The AIX compiler did not like this hack. Bug #301610
956 2005-06-07 Cedric Gustin <cedric.gustin@swing.be>
958 * glib/glibmm/miscutils.cc: In get_home_dir, return an empty
959 string when HOME is not defined (Win9x). Bug #306310 from Michael
961 * glib/glibmm/miscutils.h: Updated docstring for the get_home_dir
964 2005-04-27 Murray Cumming <murrayc@murrayc.com>
966 * examples/child_watch/main.cc:
967 * examples/thread/dispatcher.cc:
968 * examples/thread/thread.cc:
969 * glib/glibmm/dispatcher.cc: Inherit signal handler objects from
970 sigc::trackable. This is necessary with some libsigc++ patches,
971 though not currently necessary with regular libsigc++.
973 2005-04-22 Murray Cumming <murrayc@murrayc.com>
975 * glib/src/gmodule_enums.defs: Regenerate with enums.pl
976 * glib/src/gmodule_functions.defs: Regenerate with h2defs.py
977 This adds the BIND_LOCAL enum value. Bug #172748 from
980 2005-04-05 Murray Cumming <murrayc@murrayc.com>
982 * tool/pm/Output.pm: output_wrap_property(): Do not add the
983 const read-only method override if the property can not be read. Be
984 careful because this removes a little API from generated code. You
985 should hand-code the wrongly-generated methods and mark them as
987 * glib/glibmm/refptr.h: Added cast_const<>, like the existing
988 cast_dynamic<> and cast_static.
990 2005-03-31 Murray Cumming <murrayc@murrayc.com>
992 * glib/src/glib_functions.defs: Updated with
995 2005-03-13 Yair Hershkovitz <yairhr@gmail.com>
997 * glib/glibmm/main.h,
998 glib/glibmm/main.cc: Added MainContext::signal_child_watch()
999 * examples/: Added child_watch/ example
1001 2005-03-11 Yair Hershkovitz <yairhr@gmail.com>
1003 * glib/glibmm/main.h, glib/glibmm/main.cc:
1004 Add Glib::SignalChildWatch class, Glib::signal_child_watch()
1006 This is the HEAD branch, for new API. Bug fixes that do not change or add
1007 API should also be applied to the glibmm-2-6 branch.
1009 2005-03-09 Cedric Gustin <cedric.gustin@swing.be>
1011 * MSVC_Net2003/Makefile.am: Add blank.cpp to EXTRA_DIST.
1012 * MSVC_Net2003/glibmm/glibmm.vcproj: Remove sarray.cc from the
1013 list of source files.
1014 * MSVC_Net2003/examples/*/*.vcproj,
1015 MSVC_Net2003/tests/glibmm_value/glibmmvalue.vcproj: Change name of
1016 PDB file to $(OutDir)/$(TargetName).pdb.
1020 2005-03-07 Murray Cumming <murrayc@murrayc.com>
1022 * glib/glibmm/interface.cc: Disable the new check for pre-existing
1023 interface implementations, because it checks all base gtypes and
1024 not just the current gtype. Bug #169442 by Bryan Forbes.
1030 2005-02-18 Murray Cumming <murrayc@murrayc.com>
1032 * glib/glibmm/interface.cc: Interface_Class:add_interface(), used by
1033 add_interface() methods of Interfaces: Do not add interfaces that
1034 have been added before, to avoid the warning from glib. This
1035 allows application code to be simpler.
1037 2005-02-18 Murray Cumming <murrayc@murrayc.com>
1039 * tools/pm/Output.pm: Add the documentation to the const property()
1040 accessor as well as the non-const one.
1042 2005-02-13 Murray Cumming <murrayc@murrayc.com>
1044 * tools/extra_defs_gen/generate_extra_defs.cc: Use
1045 g_param_spec_get_blurb() to output the documentation for the
1046 properties in the .defs file.
1047 * tools/m4/property.m4: Take an extra docs argument, and put it in the
1049 * tools/pm/Output.pm: Add the extra docs argument when calling the
1051 * tools/pm/Property.pm: Read in the new docs part of the .defs, and
1052 add a period at the end if neccessary.
1054 2005-02-01 Murray Cumming <murrayc@murrayc.com>
1056 * examples/threadpool.cc, dispatcher.cc, dispatcher2.cc: Removed the
1057 #ifdef for AIX, because sigc::bind now works on AIX.
1059 2005-01-27 Cedric Gustin <cedric.gustin@swing.be>
1061 * MSVC_Net2003/glibmm/glibmm.rc.in: Reverted to 2.4 for the
1062 library version number.
1066 2005-01-26 Cedric Gustin <cedric.gustin@swing.be>
1068 * MSVC_Net2003/glibmm/glibmm.vcproj: Reverted to 2.4 for the
1069 library version number.
1071 2005-01-24 Cedric Gustin <cedric.gustin@swing.be>
1073 * Makefile.am, configure.in: Added MSVC_Net2003 directory.
1074 * config.h.in: Added mkfifo #define (for mingw32).
1075 * glib/glibmmconfig.h.in: Added new #define's to MSVC section.
1076 * examples/iochannel_stream/Makefile.am: Do not build on win32
1077 with mingw32 (mkfifo not available).
1078 * scripts/cxx_std.m4: Fixed typo in AC_DEFINE macros.
1079 * build_shared/Makefile_build.am_fragment: Removed
1080 $(sublib_name)_COMPILATION variable (is useless now on
1081 cygwin/mingw as all symbols are dll exported).
1082 * MSVC_Net2003/*: Initial commit imported from glibmm-2-4 branch.
1083 * MSVC_Net2003/glibmm/Makefile.am: Rewrote rule for local copy of
1084 glibmmconfig.h (required for 'make distcheck').
1086 2005-01-21 Murray Cumming <murrayc@murrayc.com>
1088 * configure.in, scripts/cxx.m4, glibmm/glibmmconfig.h.in: Added new
1089 compiler tests to see whether extern "C" functions are put in the
1090 global namespace, even when we use extern "C" inside a namespace
1091 declaration. The AIX xlC compiler does this, but allows us to
1092 redeclare the namespace inside the extern "C" block.
1093 * glib/glibmm/property.h: Use the new
1094 #ifdef GLIBMM_MUST_REDECLARE_NAMESPACES_INSIDE_EXTERNC and redeclare
1095 the namespace when necessary.
1096 * examples/thread/dispatcher.cc, dispatcher2.cc: Use sigc::bind<1>
1097 instead of just sigc::bind<> because the AIX xlC compiler needs the
1098 extra hint. However, the linker then fails, so the use of sigc::bind
1099 is ifdefed out for _AIX. See the comments in the code.
1101 2005-01-21 Murray Cumming <murrayc@murrayc.com>
1103 * configure.in, scripts/cxx.m4, glibmm/glibmmconfig.h.in: Added new
1105 1. To see whether it allows use of non extern C functions
1106 as extern C callbacks, because the Tru64 compiler does not
1107 allow this, when using strict_ansi. We do not actually use this yet.
1108 2. To see whether it allows us to define a template that uses an
1109 undefined type, even if we do not use it before defining the type.
1110 Tru64 does not allow this. That's probably correct.
1111 * glib/glibmm/container.h: #ifdef out a dynamic_cast that Tru64
1112 does not allow, and which I can not think of a better place to put.
1113 See the comment in the code.
1114 * glib/glibmm/containerhandler_helpers.h: When the compiler does not
1115 alllow the GObject and GtkObject (dynamic_cast of) specializations
1116 here, then put them in glib/glibmm/object.h and
1117 gtkmm/gtk/src/object.hg instead.- needed by Tru64 compiler.
1118 * glib/glibmm/value.h, value_custom.[h|cc]: Conditionally moved
1119 the RefPtr Value specialization into object.h, as above.
1120 * glib/src/ optiongroup.ccg, spawn.ccg, thread.ccg: Make C callacks
1121 separate extern "C".
1122 * glib/src/optiongroup.ccg: Do not use the StringArrayHandle,
1123 because the Tru64 compiler has problems with it - see comments
1125 * glib/src/optionentry.hg: Remove the include of value.h, because
1126 it is not used and it causes a Tru64 compile error in
1127 optioncontext.cc because its templates are included before the
1128 types that the template uses.
1130 2005-01-19 Murray Cumming <murrayc@murrayc.com>
1132 * configure.in, scripts/cxx.m4, glibmm/glibmmconfig.h.in: Added a
1133 compiler test, because the IRIX MipsPro compiler does not allow the
1134 inline initialization of ustring::npos.
1135 * glib/glibmm/ustring.[h|cc]: When the compiler does not support the
1136 inline initialization of npos, initialize it in the .cc file.
1137 Declare partial specializations of the SequenceString inner class
1138 inside the class - needed by IRIX MipsPro compiler.
1140 2005-01-18 Murray Cumming <murrayc@murrayc.com>
1142 * glibmm/src/optiongroup.[hg|ccg]: CppOptionEntry::convert_c_to_cpp():
1143 Copy the strings to the vector in a loop, instead of using the
1144 ArrayHandle constructor, because that does not seem to work with the
1149 2005-01-10 Murray Cumming <murrayc@murrayc.com>
1151 * glibmm/src/optiongroup.[hg|ccg]: Added a castitem constructor
1152 that always takes ownership, needed by Gtk::Main. Added the new
1153 FLAG_REVERSE flag value. Added reference documentation.
1157 2005-01-09 Murray Cumming <murrayc@murrayc.com>
1159 * glib/glibmm/misc_utils.[h|cc]: Added setenv() and unsetenv(),
1160 wrapping new functions added in glib 2.4.
1161 * glib/src/convert.[hg|ccg]: Added filename_display_name() and
1162 filename_display_basename().
1164 2005-01-09 Murray Cumming <murrayc@murrayc.com>
1166 * glib/src/optionentry.ccg: Copy constructor: Copy the short name
1167 form the src, not from itself. Bug #16331 from Daniel Holbach.
1169 2005-01-09 Murray Cumming <murrayc@murrayc.com>
1171 * glib/src/optionentry.[hg|cc]: Add add_entry(entry, bool&), to wrap
1172 use of G_OPTION_ARG_NONE. Bug #163325 from Daniel Holbach.
1173 * examples/options/main.cc: Use the new add_entry() overload.
1175 2005-01-06 Benoît Dejean <TazForEver@dlfp.org>
1177 * glib/glibmm/dispatcher.cc:
1178 * glib/glibmm/error.cc:
1179 * glib/glibmm/exceptionhandler.cc:
1180 * glib/glibmm/main.cc:
1181 * glib/glibmm/threadpool.cc:
1182 * glib/glibmm/ustring.cc:
1183 * glib/glibmm/wrap.cc: Don't export private API.
1186 2005-01-04 Chris Vine <chris@cvine.freeserve.co.uk>
1188 * examples/iochannel_stream/: Provide a means of obtaining
1189 Glib::IOChannel error information from the streambuffer. Remove
1190 the code conversion option from the fdstream/fdstreambuf
1191 constructors and add comments in fdstream.h about code conversion
1192 and other matters. Add a detach() function and a destructor to
1193 fdstreambuf. Correct an error in fdstreambuf::xsgetn(). Include
1194 missing <string> header file in main.cc.
1198 2004-12-19 Murray Cumming <murrayc@murrayc.com>
1200 * examples/: Adapted and added iochannel_stream example from
1201 Chris Vine in bug #138259.
1203 2004-12-19 Murray Cumming <murrayc@murrayc.com>
1205 * glib/src/: Added glib_docs.xml, generated with docsextract_to_xml.py
1206 and glib_docs_override.xml, to generate some API reference from
1208 * glib/src/Makefile.am: Mention the new files.
1210 2004-12-19 Murray Cumming <murrayc@murrayc.com>
1212 * docs/reference/: Added a copy of the libstdc++ doxygen tags file,
1213 but it still does not seem to work, for example with std::vector<>
1216 2004-12-19 Murray Cumming <murrayc@murrayc.com>
1218 * docs/reference/Doxyfile.in: Use the libstdc++ TAG files, so that
1219 references to std:: classes take people to their docs.
1220 * glib/src/: Added glib_docs.xml and glib_docs_override.xml, and
1221 mentioned them in Makefile.am.
1223 2004-12-19 Murray Cumming <murrayc@murrayc.com>
1225 * glib/src/date.hg, glib/glibmm/main.h,
1226 glib/glibmm/signalproxy_connectionnode.h: Deal with some doxygen
1227 warnings about undocumented parameters.
1228 * glib/glibmm/ustring.h: Added documentation for the size() and
1231 2004-11-21 Murray Cumming <murrayc@murrayc.com>
1233 * glib/src/optionentry.[hg|ccg]: Removed OptionEntry enum and
1234 set_arg_data(), because they are not needed any more.
1238 2004-11-01 Murray Cumming <murrayc@murrayc.com>
1240 * glib/src/optiongroup.[hg|ccg]: Added add_entry() for vector<ustring>
1241 and add_entry_filename() for std::string and vector<std::string>.
1242 * examples/options/main.cc: Test these new methods.
1244 2004-10-30 Murray Cumming <murrayc@murrayc.com>
1246 * glib/src/optiongroup.[hg|ccg]: Added gobj_give_ownership().
1247 * glib/src/optioncontext.[hg|ccg]: add_group(), set_main_group(): Use
1248 gobj_give_ownership() because GOptionContext deletes the GOptionGroups
1251 2004-10-26 Murray Cumming <murrayc@murrayc.com>
1253 * glib/src/optionentry.hg: Remove accessors for arg and arg_data.
1254 * glib/src/optiongroup.[hg|ccg]: add_entry(): Remove arg_type parameter
1255 and instead add overrides which take specific C++ value types.
1256 Add CppOptionEntry inner class to hold information about each entry
1257 and its dynamically allocated C value.
1258 Add map_entries_ map to store them, so we can iterate over them during
1261 2004-10-21 Murray Cumming <murrayc@murrayc.com>
1263 * build_shared/Makefile_build.am_fragment: Patch from Roger Leigh in
1264 bug # 15589 to use PLATFORM_WIN32 rather than OS_WIN32 to enable
1265 -no-undefined. This allows glibmm to build in a cgwin environment,
1270 2004-10-17 Murray Cumming <murrayc@murrayc.com>
1272 * glib/src/optioncontext.[hg|ccg]: add_entry(): Fixed crash by
1273 creating a temporary array, with a nulled last item, which is what the
1274 C function wants. In callbacks, ignore the group parameter because our
1275 option group in the data parameter is the same, and does not require
1276 construction of a second C++ wrapper instance for the same C instance.
1277 * glib/src/optiongroup.[hg|ccg]: Removed the cast constructor, because
1278 it is not needed anymore, and there is no clear way to implement it.
1280 2004-10-14 Murray Cumming <murrayc@murrayc.com>
1282 * tools/pm/WrapParser.pm: on_wrap_property(): Convert property name to
1283 canonical form, so that we can recognise notifications of property
1284 value changes. Bug #152764.
1286 2004-10-07 Philip Langdale <plangdale@vmware.com>
1288 * glib/glibmm/signalproxy_connectionnode.cc: Remove unnecessary warning
1289 when notify() is called after destroy_notify_handler(). (bug #154498)
1291 2004-10-01 Murray Cumming <murrayc@murrayc.com>
1293 * glib/src/option*.[hg|ccg], examples/options/main.cc: Rethought the
1294 structure now that I see how the parts work together. Rearranged the
1295 example to show how the parsing can fill values in member variables
1296 of a derived OptionGroup class. However, 1. it crashes now, 2. we need
1297 extra code to map the GOption C types to suitable C++ types, probably
1298 by doing pre and post parsing to create temporary C types for the C++
1301 2004-09-27 Murray Cumming <murrayc@murrayc.com>
1303 * glib/src/option*.[hg|ccg]: Wrapped more methods, but I have still not
1305 * examples/options/: Started an example.
1307 2004-09-26 Murray Cumming <murrayc@murrayc.com>
1309 * glib/src/glib_functions.defs: Regenerated with h2defs.py
1310 * glib/src/: Added optionentry.[hg|ccg], optiongroup.[hg|ccg],
1311 optioncontext.[hg|ccg].
1313 2004-09-19 Murray Cumming <murrayc@murrayc.com>
1315 * This is the HEAD branch.
1317 2004-09-13 Cedric Gustin <cedric.gustin@swing.be>
1319 * examples/thread/dispatcher.cc: Fixed a race condition on win32
1320 that involved the combined use of auto_ptr and multithreading (bug
1325 2004-07-23 Martin Schulze <mschulze@cvs.gnome.org>
1327 * glib/glibmm/main.cc: Move deletion of SourceConnectionNode object
1328 into destroy_notify_callback() exclusively; do not delete from
1332 2004-07-10 Murray Cumming <murrayc@murrayc.com>
1334 * glib/glibmm/signalproxy_connectionnode.cc: notify(): Do not delete
1335 the connection after disconnecting it, because disconnecting it
1336 always causes disconnect_notify to be called, so just delete it there.
1337 This prevents double deletes and reading of deleting memory, found in
1340 2004-07-09 Murray Cumming <murrayc@murrayc.com>
1342 * glib/glibmm/signalproxy.h.m4: Added some documentation.
1344 2004-06-20 Daniel Elstner <daniel.elstner@gmx.net>
1346 * glib/glibmm/objectbase.cc: Spring cleaning.
1347 * glib/glibmm/object.cc: ditto.
1351 2004-06-18 Daniel Elstner <daniel.elstner@gmx.net>
1353 * scripts/macros.m4 (GTKMM_ARG_ENABLE_WARNINGS): Add
1354 -Wno-long-long to the list of tried warning flags.
1356 2004-06-16 Daniel Elstner <daniel.elstner@gmx.net>
1358 * glib/glibmm/dispatcher.cc (DispatchNotifier::create_pipe): There
1359 is no point in calling g_file_error_from_errno() on win32 since we
1360 have no real errno. Also fix the error text to say "event" rather
1363 2004-06-14 Daniel Elstner <daniel.elstner@gmx.net>
1365 * scripts/cxx.m4: Add a couple of casts to void in order to suppress
1366 warnings about unused variables. I still have no idea as to why the
1367 hardcore warning flags are remembered when running make distcheck...
1369 2004-06-14 Daniel Elstner <daniel.elstner@gmx.net>
1371 * examples/thread/dispatcher.cc: Explicitely join all threads.
1372 Hopefully that'll fix the crash on win32 (see bug #109966).
1374 2004-06-13 Daniel Elstner <daniel.elstner@gmx.net>
1376 * examples/thread/dispatcher*.cc (main): Remove unused parameter
1377 names to fix building with -Werror.
1379 2004-06-13 Daniel Elstner <daniel.elstner@gmx.net>
1381 * configure.in (GTKMM_ENABLE_DEBUG_REFCOUNTING): s/^GTK/GLIB/
1383 2004-06-08 Daniel Elstner <daniel.elstner@gmx.net>
1385 * build_shared/Makefile_build.am_fragment (all_includes): Remove
1386 left-over include paths for pango, atk, gdk and gtk.
1388 2004-06-07 Daniel Elstner <daniel.elstner@gmx.net>
1390 * glib/glibmm/stringutils.h: Replace a couple of double quotes with
1391 " to prevent doxygen from escaping the enclosed HTML entities.
1393 2004-06-04 Daniel Elstner <daniel.elstner@gmx.net>
1395 * glib/glibmm/ustring.h: Use /*! instead of /** to introduce
1396 doxygen comments in order to avoid cluttering the long method list
1397 of class Glib::ustring. Replace a few double quotes with "
1398 to prevent doxygen from escaping the enclosed HTML entities.
1402 2004-06-03 Daniel Elstner <daniel.elstner@gmx.net>
1404 * scripts/Makefile.am (EXTRA_DIST): Remove mkinstalldirs, because
1405 automake-1.8 doesn't use it anymore and prior versions should pick
1406 it up automatically anyway.
1408 2004-06-03 Daniel Elstner <daniel.elstner@gmx.net>
1410 * glib/glibmm/dispatcher.cc: Complete overhaul of the Win32
1411 implementation of Glib::Dispatcher. That is, mutex locking is
1412 done correctly now and dynamic memory allocation is no longer
1413 used, plus a few other cleanups. See reopened bug #109966.
1415 2004-06-03 Daniel Elstner <daniel.elstner@gmx.net>
1417 * glib/glibmm/signalproxy_connectionnode.cc
1418 (SignalProxyConnectionNode::SignalProxyConnectionNode):
1419 Reorder the initializer list to match the declaration order.
1421 (SignalProxyConnectionNode::notify): Add missing return 0.
1423 2004-05-26 Daniel Elstner <daniel.elstner@gmx.net>
1425 * glib/glibmm/ustring.{cc,h}: Globally apply some minor code
1426 cleanup and optimization tweaks.
1428 (get_unichar_from_std_iterator): Replace implementation with a
1429 hand-optimized and profiled variant that has been lurking in my
1430 local tree for quite some time, thus should be well tested.
1431 Also add the G_GNUC_PURE() attribute.
1433 (operator+): Explicitely instantiate and return a temporary string,
1434 instead of accessing the reference ustring::operator+=() returns.
1435 This quite often allows the compiler to eliminate the additional
1436 copy constructor invocation.
1438 2004-05-25 Murray Cumming <murrayc@murrayc.com>
1440 * configure.in, Makefile.am: Removed the glibmm.spec files, because
1441 it is broken and nobody has volunteered to fix it.
1443 2004-05-20 Daniel Elstner <daniel.elstner@gmx.net>
1445 * examples/thread/dispatcher.cc: Revert last commit because it's
1446 silly. To make the code truly exception-safe it would be necessary
1447 to either join all threads or to notify them, which is way beyond
1448 the scope of this example.
1450 2004-05-20 Daniel Elstner <daniel.elstner@gmx.net>
1452 * examples/thread/dispatcher.cc: Set a good example and
1453 be paranoid about possible memory leaks due to exeptions.
1455 2004-05-20 Daniel Elstner <daniel.elstner@gmx.net>
1457 * examples/thread/dispatcher.cc: Code cleanup. Most importantly,
1458 get rid of the locking around std::cout since it obfuscates the
1459 purpose of using Glib::Dispatcher.
1461 2004-05-13 Daniel Elstner <daniel.elstner@gmx.net>
1463 * glib/glibmm/object.{cc,h} (ConstructParams::ConstructParams):
1464 Implement the copy constructor in a way that actually works if used.
1465 Relying on the compiler to optimize it away is a bad idea. (#132300)
1467 2004-05-04 Murray Cumming <murrayc@murrayc.com>
1469 * glib/glibmm/ustring.h: Documented the constructors, based on
1470 the libstdc++ documentation, to make it clear that sizes are in
1471 characters rather than bytes.
1473 2004-05-01 Murray Cumming <murrayc@murrayc.com>
1475 * configure.in: Increase glib dependency to 2.4.0.
1477 2004-04-30 Murray Cumming <murrayc@murrayc.com>
1479 * tools/m4/gobject.m4: Allow use of _CUSTOM_DTOR(), needed by
1480 Gnome::Gda::Connection.
1484 2004-04-17 Murray Cumming <murrayc@murrayc.com>
1486 * docs/reference/Makefile.am: Make the generated html depend on the
1487 beautify_docs.pl.in source instead of the generated beautify_docs.pl,
1488 so that the html is not rebuilt from tarballs.
1490 2004-04-17 Murray Cumming <murrayc@murrayc.com>
1492 * glib/glibmm/container_handle.h: Reimplemented more of the
1493 to_cpp_type() methods without using dependent methods, so that they
1494 work with g++ 3.4 (cvs versions).
1498 2004-04-11 Murray Cumming <murrayc@murrayc.com>
1500 * tools/pm/WrapParser.pm, Output.pm, m4/signal.m4: Allow _WRAP_SIGNAL()
1501 to take an refreturn argument, so that Gtk::Widget::on_get_accessible()
1502 can do an extra ref before returning the Atk::Object.
1504 2004-04-09 Murray Cumming <murrayc@murrayc.com>
1506 * tools/pm/Output.pm: output_wrap_property(): Provide the actual
1507 property name as well as one with - replace with _, so we can
1508 test for the correct value in notification signal handler.
1509 * tools/m4/property.m4: Use the actual property name when calling
1514 2004-03-24 Murray Cumming <murrayc@murrayc.com>
1516 * scripts/cxx.m4: Corrected parentheses, which cause the docs to be
1517 written into config.h. Thanks to Alexander Nedotsukov.
1519 2004-03-23 Murray Cumming <murrayc@murrayc.com>
1521 * scripts/cxx.m4: Corrected the ambiguous const template test, which
1522 failed on all platforms because it generated bad code.
1524 2004-03-20 Martin Schulze <mschulze@cvs.gnome.org>
1526 * glibmm/main.cc: Bug fix in SourceConnectionNode::notify() (#137030).
1528 2004-03-18 Murray Cumming <murrayc@murrayc.com>
1530 * tools/generate_wrap_init.pl: Change a regex so that files are
1531 included without full path. Apparently this helps when building outside
1532 of the source directory, though I'm sceptical. By Victor Zverovich in
1537 2004-03-14 Murray Cumming <murrayc@murrayc.com>
1539 * scripts/sun.m4: Set the correct variable, so it is actually set in
1542 2004-03-14 Murray Cumming <murrayc@murrayc.com>
1543 * glib/glibmm/containerhandle_shared.h value.h: Used ifdef
1544 GLIBMM_HAVE_DISAMBIGUOUS_CONST_TEMPLATE_SPECIALIZATIONS to avoid
1545 problems with the SUN Forte compiler.
1547 2004-03-14 Murray Cumming <murrayc@murrayc.com>
1549 * scripts/cxx.m4: Added CAN_DISAMBIGUATE_CONST_TEMPLATE_SPECIALIZATIONS
1550 m4 macro to use in configure.in, to check for the SUN Forte problem -
1551 see the comments in cxx.m4.
1552 * scripts/sun.m4: Moved some brackets around to make the define
1555 2004-03-13 Murray Cumming <murrayc@murrayc.com>
1557 * glib/glibmm/containerhandle_shared.h: TypeTraits to_cpp_type()
1558 specializations: Use wrap_auto() directly instead of a specific
1559 wrap() overload that would be dependent. Needed for g++ 3.4.
1560 * glib/glibmm/containers.h: Same again.
1562 2004-03-13 Murray Cumming <murrayc@murrayc.com>
1564 * tools/m4/class_shared.m4: Remove the parent get_type() call from
1565 the Class::init() function, because it is optimised away, and g++ 3.4
1566 actually complains that it does nothing.
1567 * glib/glibmm/object.[h|cc]: Add a public ConstructParams copy
1568 constructor, needed by g++ 3.4. See comments in the code.
1569 * tests/glibmm_value/glibmm_value.cc: Instantiate instances of
1570 value types, to fix the g++ 3.4 build. I don't know what the code
1571 was meant to do before anyway.
1573 2004-03-11 Murray Cumming <murrayc@murrayc.com>
1575 * scripts/: Added sun.m4, copied from libsigc++-1.2/scripts and
1576 modified, so we can detect the SUN Forte compiler.
1577 * configure.in: Used the m4 macro.
1578 * glibmm/glibmm-config.h: Undef the GLIBMM_COMPILER_SUN_FORTE macro
1579 so that it will be defined if configure sets it.
1581 2004-03-09 Murray Cumming <murrayc@murrayc.com>
1583 * Some, but not all, SUN Forte build fixes:
1584 * tools/m4/convert_gdk.m4, convert_glib.m4: Use existing
1585 sun-specific conversion when converting from any
1586 RefPtr<const Something> to *Something.
1588 2004-04-08 Hagen Moebius <hagen.moebius@starschiffchen.de>
1590 * tools/pm/DocsParser.pm: Another change to give better warnings and
1591 errors at gmmproc-runtime. Further improvment of parsing parameter names
1592 to strip traling underscres. This not only for reference text, but for
1593 the parameter list also.
1595 2004-04-07 Hagen Moebius <hagen.moebius@starschiffchen.de>
1597 * tools/pm/DocsParser.pm: Allow overrides to only override
1598 part of the docs. Add a <mapping> tag to associate non-prefixed
1599 functions with classes. Improve parsing of parameter names so they
1600 can now have numbers in the names.
1604 2004-03-03 Murray Cumming <murrayc@murrayc.com>
1606 * Added glib/glibmm/i18n.h and i18n-lib.h which defines _() and friends
1607 for internationalization. See the comments in the header - you must
1608 include things in the right order.
1609 * glib/src/spawn.[hg|ccg]: Added spawn_close_id() as wrapper for
1611 * glib/glibmm/main.[h|cc]: Added MainLoop::depth() as wrapper for
1614 2004-03-02 Murray Cumming <murrayc@murrayc.com>
1616 * tools/pm/Function.pm: parse_param(): Only parse const as an
1617 individual part of the type name if it is followed by a space, so
1618 that we can have const const_iterator& types.
1620 2004-02-27 Martin Schulze <teebaum@cvs.gnome.org>
1622 * CHANGES: Fix typo reported by Chris Vine.
1624 2004-02-13 Martin Schulze <teebaum@cvs.gnome.org>
1626 * documentation fixes and corrections in the comments reflecting
1627 the shift to libsigc++ 2.
1628 * make all source files in example thread use libsigc++ 2 instead
1633 2004-02-10 Murray Cumming <murrayc@usa.net>
1635 * glibmm now uses libsigc++ 2 instead of libsigc++ 1.2. See bug
1636 #125061 for more details. We must update CHANGES later.
1640 2004-02-02 Murray Cumming <murrayc@usa.net>
1642 * glib/glibmm/containerhandle_shared.h: Traits<const T*>: Added
1643 const_cast, needed by TreeView::get_columns() const: bug #126721.
1645 2004-01-29 Murray Cumming <murrayc@usa.net>
1647 * tools/pm/Parser.pm, Output.pm, tools/m4/signal.m4: Add an optional
1648 custom_c_callback parameter to _WRAP_SIGNAL to allow special code
1649 for the SelectionData& output parameter in Gtk::Widget signals.
1650 Hopefully we won't need too many more of these hacks - the m4 is
1651 becoming very hard to read, with all these nested ifelse() statements.
1653 2004-01-27 Cedric Gustin <cedric.gustin@swing.be>
1655 * build_shared/Makefile_build.am_fragment: Added win32-specific
1656 --export-all-symbols to linker flags. This is backported from
1658 * README.win32: Updated text for glibmm-2.4.
1659 * tools/generate_wrap_init.pl.in: Replaced GTKMM_WIN32 by the
1660 standard G_OS_WIN32.
1664 2004-01-22 Murray Cumming <murrayc@usa.net>
1666 * glib/date.[hg|ccg]: Added clamp_min() and clamp_max() to wrap the
1667 case where g_date_clamp() takes null values.
1669 2004-01-18 Alberto Paro <alberto@paro.homeunxi.org>
1671 * glib/src/date.hg: documentated Glib::Date functions.
1672 * glib/glibmm/main.h: documentated Glib::MainLoop,Glib::MainContext
1673 and Glib::Source functions.
1675 2004-01-18 Murray Cumming <murrayc@usa.net>
1677 * tools/pm/Output.pm, tools/m4/property.m4: When the property is not
1678 read-only, add a second read-only propertyproxy for the same property,
1679 with a const accessor. This allows setting of properties in const
1680 methods. Make all read-only propertyproxies have const accessors.
1681 * glib/glibmm/propertyproxy.h: Added class documentation.
1682 * tools/pm/Output.pm: Declare _vfuncs as virtual methods - fixing
1683 an error in my last change.
1685 2004-01-16 Murray Cumming <murrayc@usa.net>
1687 * tools/pm/Output.pm, tools/m4/vfunc.m4:
1688 - Generate const vfuncs when requested with _WRAP_VFUNC().
1689 - Put the *_vfunc() decleraration directly into the header, where
1690 the _WRAP_VFUNC() macro appears, instead of in a separate section.
1691 This allows us to add doxygen documentation before the _WRAP_VFUNC()
1692 in the .hg file. However, we must check that all of our _WRAP_VFUNC()
1693 macros are in protected: sections.
1695 2004-01-12 Murray Cumming <murrayc@usa.net>
1697 * glib/glibmm/object.cc: Object::Object() default constructor.
1698 Remove the warning because we really need this to implement a custom
1699 TreeModel. Derive a new GType, as in the
1700 Object::Object(ConstructParams) constructor. Like that constructor,
1701 the default one also assumes that you have called a suitable
1702 ObjectBase constructor, such as ObejctBase(typeid(MyCustomClass)).
1704 2004-01-09 Murray Cumming <murrayc@usa.net>
1706 * tools/pm/Output.pm: output_wrap_property(): Allow construct-only
1707 properties to be wrapped, as read-only properties.
1709 2004-01-03 Murray Cumming <murrayc@usa.net>
1711 * tools/gmmproc.in, pm/WrapParser.pm, DocsParser.pm: Removed the
1712 mergecdocs option - because we always want to merge C docs, to avoid
1713 accidental upload of half-complete docs.
1715 2003-12-29 Murray Cumming <murrayc@usa.net>
1717 * Makefile.am: Add scripts and tests directories to SUBDIRS instead of
1718 DIST_SUBDIRS, so that their Makefile.am files are actually used.
1719 * scripts/macros.m4: renamed GTKMM_CHECK_PERL() to GLIBMM_CHECK_PERL()
1720 and install it as glibmm_check_perl.m4, so that other *mm projects
1721 can use it. They need the PERL_PATH for Doxygen.
1723 2003-12-22 Murray Cumming <murrayc@usa.net>
1725 * docs/reference: generate beautify_docs.pl from beautify_docs.pl.in,
1726 so it can have the perl path in it. Install it, so other *mm
1729 2003-12-13 Murray Cumming <murrayc@usa.net>
1731 * tools/m4/*.m4: Added fuller Doxygen documentation to all gobj() and
1732 wrap() methods. Doxygen should not emit warnings about these now.
1736 2003-11-29 Murray Cumming <murrayc@usa.net>
1738 * tools/m4/signal.m4: Add spaces inside signal_proxy template types,
1739 to avoid << and >> when using templated types.
1741 2003-11-27 Murray Cumming <murrayc@usa.net>
1743 * tools/pm/WrapParser.pm, Output.pm: Added WRAP_METHOD_DOCS_ONLY()
1745 * docs/internal/using_gmmproc.txt: Explained the new macro.
1747 2003-11-02 Murray Cumming <murrayc@usa.net>
1749 * glib/glibmm/: Added init.[h|cc] with Glib::init() so that the
1750 gnomemm init() methods do not need to initialize gtkmm.
1751 * tools/m4/class_gobject.m4, class_gtkobject.m4: Added
1752 _GMMPROC_PROTECTED_GCLASS macro, needed by libgnomecanvasmm. This
1753 was not previously properly merged from gtkmm2.
1754 * tools/m4/property.m4: Re-added PropertyProxy reference documentation
1755 that did not survive a previous merge from gtkmm2.
1757 2003-11-01 Murray Cumming <murrayc@usa.net>
1759 * glib/glibmm/propertyproxy.h, propertyproxy_base.[h|cc]: Now uses
1760 ObjectBase instead of Object, because glib can now have properties
1761 on interfaces. This is needed, for instance, by the GtkFileChooser
1762 interface wrapper in gtkmm.
1763 * glib/glibmm/object.h: Moved get/set_property() methods into
1764 ObjectBase, for the same reason.
1765 * tools/pm/WrapParser.pm, Output.pm: Added optional no_default_handler
1766 parameter to gmmproc _WRAP_SIGNAL() macro, for signals whose
1767 default signal handler is not in the klass struct and therefore
1768 can not be overridden.
1770 2003-10-31 Murray Cumming <murrayc@usa.net>
1772 * docs/Makefile_web.am_fragment: Corrected install location,
1773 so that links from the gtkmm docs work when they are installed.
1775 2003-10-30 Murray Cumming <murrayc@usa.net>
1777 * docs: Added images directory, copied from gtkmm, for the reference
1779 * configure.in: Mention docs/images/Makefile.
1780 * docs/reference/Doxyfile.in: Genereate glibmm_doxygen_tags instead
1781 of gtkmm_doxygen_tags.
1782 * docs/reference/Makefile.am: dist glibmm_doxygen_tags.
1783 * docs/reference: gtkmm*.html_fragment are now glibmm*.html_fragment.
1787 2003-10-23 Murray Cumming <murrayc@usa.net>
1789 * tools/pm/Output.pm: output_wrap_create(): Used
1790 args_types_and_names_with_default_values() intead of
1791 args_types_and_names(), so that create() functions .in .h files have
1792 the default values as specified in _WRAP_CREATE() in .hg files.
1793 * tools/pm/WrapParser.pm: on_ignore_signals(): Strip the quotes, to
1794 make _IGNORE_SIGNAL() really work in .hg files.
1796 2003-10-02 J. Abelardo Gutierrez <jabelardo@cantv.net>
1798 * examples/threads/dispatcher.cc
1799 examples/threads/dispatcher2.cc: fixed to cast out all gktmm code,
1800 now they only need glimm.
1801 * configure.in: Added examples/threads because they don't use gtkmm
1802 anymore. Now all examples/threads compiles and run just fine.
1806 2003-09-30 Murray Cumming <murrayc@usa.net>
1808 * configure.in: Removed examples/threads because we don't build or
1809 distribute it, because it doesn't build, because it uses gtkmm.
1811 2003-09-30 Murray Cumming <murrayc@usa.net>
1813 * glib/glibmm/object_base.h: ObjectBase inherits virtually from
1814 Sigc::Object. See bug #116280.
1816 2003-09-27 Cedric Gustin <cedric.gustin@swing.be>
1818 * glib/glibmm/threadpool.cc: Removed
1819 _GTKMMPROC_SIGNAL_H_AND_CC(#ifndef G_OS_WIN32) restrictions. These
1820 functions are now implemented in the latest (2.2.4) GTK+ on win32.
1821 * README.win32 : Updated list of unsupported functions.
1823 2003-08-20 Frank Naumann <fnaumann@freemint.de>
1825 * glib/src/thread.hg,
1826 glib/src/unicode.hg: Warning bugfix for VisualStudio .NET 2003;
1827 made wrapper functions returning bool from glib functions
1828 returning int (C lacks builtin type bool) explicit by adding
1829 an != 0 check. Otherwise VisualStudio .NET warn about implicit
1832 2003-07-26 Murray Cumming <murrayc@usa.net>
1834 * glib/glibmm/dispatcher.cc: Added #include <algorithm>, needed
1835 by MSVC++, as suggested by Frank Naumann in bug #118215.
1837 2003-05-31 Murray Cumming <murrayc@usa.net>
1839 * tools/gmmproc.in: Corrected location of installed .pm files. They
1840 are now in a glibmm-2.3 folder instead of a glibmm-2.4 folder.
1842 2003-05-14 Murray Cumming <murrayc@usa.net>
1844 * Applied some of MSVC++ .NET 2003 changes from jburris. For instance,
1845 use of Gtk:: prefix with manage, because MSVC++ can not guess it. Also
1846 corrected the out-of-sync protected/private modifiers in the private
1847 gtype classes and their prototypes.
1849 2003-05-09 Cedric Gustin <cedric.gustin@swing.be>
1851 * glib/glibmm/dispatcher.cc: small typo in G_OS_WIN32 condition.
1853 2003-05-07 Murray Cumming <murrayc@usa.net>
1855 * scripts/macros.m4: Made the --enable-debug-refcounting configure
1856 option set GLIBMM_* instead of GTKMM_*.
1858 2003-05-02 Murray Cumming <murrayc@usa.net>
1860 * tools/m4/*.m4: Added doxygen comments to gobj() methods.
1861 * examples/markup/parser.cc: Commented-out a std::right that gcc 2.93
1864 2003-04-23 Andrew Makeev
1866 * glib/glibmm/dispatcher.cc: Added some #ifdefed code to implement
1867 Glib::Dispatcher on WIN32. See comments with the code.
1869 2003-04-22 Murray Cumming <murrayc@usa.net>
1871 * Install headers in a glibmm-2.3 directory instead of glibmm-2.4,
1872 to be consistent with gtkmm 2.4.
1874 2003-04-21 Murray Cumming <murrayc@usa.net>
1876 * arrayhandle.h, listhandle, slisthandle.h:
1877 Glib::ListHandle, Glib::ListHandle, Glib::SListHandle: Added
1878 reference docs explaining that people can use STL containers.
1880 2003-04-21 Murray Cumming <murrayc@usa.net>
1882 * Removed examples/idle: It's now updated and in gtkmm/examples/book.
1884 2003-04-19 Murray Cumming <murrayc@usa.net>
1886 * tools/pm/GtkDefs.pm: get_unwrapped(): Changed some & to && to
1887 avoid warnings and because that is probably what they should be.
1889 * tools/m4/extra_defs_gen/generate_defs_glib.cc: Removed parameter
1890 names from main(), because they are not used. Avoid warning.
1892 2003-03-26 Ross Burton <ross@burtonini.com>
1894 * glib/src/module.hg: Added API documentation.
1896 2003-03-18 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
1898 * scripts/*.m4, configure.in:
1899 Added description to several AC_DEFINE statements to make 'autoheader'
1902 Added ACLOCAL_AMFLAGS to make 'autoreconf' work
1904 2003-03-18 Cedric Gustin <cgustin@ibelgique.com>
1906 * Makefile.am : removed examples from DIST_SUBDIRS
1908 2003-03-18 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
1910 * examples/Makefile.am_fragment: Added DESTDIR-support.
1912 2003-03-14 Cedric Gustin <cgustin@ibelgique.com>
1914 * Install examples. The are built by default too. Patch adapted for
1915 glibmm 2.4 by Murray Cumming.
1917 2003-03-04 Cedric Gustin <cgustin@ibelgique.com>
1919 * configure.in : Removed libstdc++ in LDFLAGS on win32. Latest
1920 libtool is taking care of it.
1921 * build_shared/Makefile_build.am_fragment,
1922 tools/extra_defs_gen/Makefile.am : Added
1923 --export-all-symbols linker flag on win32 (required by latest
1924 libtool to build DLLs).
1925 * build_shared/Makefile_gensrc.am_fragment : Modifiy rule that
1926 builds wrap_init.cc. wrap_init.cc now contains reference to all
1927 objects, event on win32. #ifdefs are included when needed.
1928 * README.win32 : updated for version 2.2. Added list of missing
1929 methods and signals on win32
1930 * tools/m4/base.m4 : Added _GTKMMPROC_SIGNAL_H_AND_CC macro.
1933 2003-03-14 Martin Schulze <MHL.Schulze@t-online.de>
1935 * docs/internal/using_gtkmmproc.txt: Correct name of
1936 [...]signals.defs generation utiliy.
1938 2003-01-30 Rick L Vinyard Jr <rvinyard@cs.nmsu.edu>
1940 * glib/src/thread.hg Cond: Add documentation
1942 2003-01-27 Murray Cumming <murrayc@usa.net>
1944 * glib/glibmm/refptr.h: Removed RefPtr<>::is_null() to encourage use
1945 of more pointer-like operator bool() instead. Wanted to remove clear()
1946 too, but there is no =0 equivalent yet.
1947 * tools/gmmproc.in: Change harcoded gtkmm-2.0/m4 path to glibmm-2.4/m4.
1949 2003-01-22 Murray Cumming <murrayc@usa.net>
1951 * GTKMM_ m4 tests and #defines are now prefixed with GLIBMM_
1953 2003-01-21 Murray Cumming <murrayc@usa.net>
1955 * tests/Makefile.am_fragment, examples/Makefile.am_fragment:
1956 Corrected LIBS and CFLAGS. Not all of these build because they
1957 use gtkmm stuff too. They need to be reduced to glibmm-only code.
1959 2003-01-21 Murray Cumming <murrayc@usa.net>
1961 * glib/Makefile.am, glib/glibmm/Makefile.am: Install headers in
1962 glibmm-2.4 directory rather than gtkmm-2.4
1964 2003-01-21 Murray Cumming <murrayc@usa.net>
1966 * configure.in: Use GLIBMM_* instead of GTKMM_* to avoid config.h
1967 clashes with gtkmm 2.4.
1968 * glib/glibmm-2.4.pc.in: Correct cflags - report 2.4 instead of 2.0.
1970 2003-01-21 Murray Cumming <murrayc@usa.net>
1972 * tools/extra_defs_gen/Makefile.am: Changed extra_defs library name
1973 from 2.4 to 2.3, so it can be unstable.
1975 2003-01-09 Daniel Elstner <daniel.elstner@gmx.net>
1977 * glib/glibmm/utility.h (GLIBMM_INITIALIZE_STRUCT): Replace
1978 __builtin_bzero() with __builtin_memset() because the former is
1979 deprecated. Also, it looks like GCC is able to optimize the 0 case
1980 so we don't lose anything here.
1982 2003-01-09 Daniel Elstner <daniel.elstner@gmx.net>
1984 * glib/glibmm/miscutils.cc (Glib::build_path): Reserve 256 bytes
1985 in advance to improve performance.
1987 2003-01-09 Daniel Elstner <daniel.elstner@gmx.net>
1989 * glib/glibmm/miscutils.{cc,h} (Glib::build_path): Fix to make it
1990 behave exactly like g_build_path(). (#102885, Jarek Dukat)
1992 (Glib::build_filename(const std::string&, const std::string&)):
1993 Implement in terms of Glib::build_path().
1995 2003-01-21 Murray Cumming <murrayc@usa.net>
1997 * Renamed gtkmmproc to gmmproc.
1999 2003-01-08 Murray Cumming <murrayc@usa.net>
2001 * glib/glibmm/refptr.h: Removed the operator=(CppObject*), as
2002 suggested in the TODO comment.
2004 2003-01-08 Murray Cumming <murrayc@usa.net>
2006 * make distcheck works.
2008 2003-01-08 Murray Cumming <murrayc@usa.net>
2010 * It now builds, though I haven' tried installing it. The
2011 library names and header directories should now all have 2.4
2012 instead of 2.0 in their name.
2014 glibmm was previously part of gtkmm2.