ec811b31ed9b455a8f26a6cb333de49c99b6fd3e
[ardour.git] / libs / glibmm2 / NEWS
1 2.13.3:
2
3 * gmmproc improvements:
4   - gmmproc: Allow () in property and signal docuemntation.
5   - gmmproc: Do not try to remove a common prefix from the 
6   C enam values, if there is no common prefix.
7   - enum.pl: Allow whitespace in front of an enum typedef. 
8   (Daniel Elstner)
9   - enum.pl: Fix an infinite loop.
10
11 * ObjectBase: Added connect_property_changed(), 
12   as an alternative to use when the property proxies are not 
13   available because GLIBMM_PROPERTIES_ENABLED is not defined.
14   (Murray Cumming)
15 * Value: When registering float parameters, use 
16   G_MAXFLOAT as the minimum, instead of G_MINFLOAT.
17   Likewise for doubles.
18   (Oliver Nittka)
19
20 2.13.2:
21
22 *Build:
23  - Fix for api-default-signal-handlers option.
24    Bug #357830 (Matt Hoosier)
25  - win32: Remove unused source file from Visual Studio project.
26    (Cedric Gustin)
27
28 2.13.1:
29
30 * KeyFile class added, wrapping GKeyFile, 
31   for parsing of .ini-style files.
32   (Rob Page)
33 * Added get_user_data_dir(), get_user_config_dir(), and 
34   get_user_cache_dir().
35   (Jonathon Jongsma)
36 * Support optional ifdef parameters in the .hg macros, 
37   to allow, for instance the --enable-atk=no option, 
38   to disable the build and use of the atkmm API, 
39   for use in embedded environments.
40   (Johannes Schimd, Murray Cuming, Openismus)
41 * Documentation: 
42   - Small ustring reference documentation improvement.
43   (Ralf Stephan)
44
45 2.12.0:
46
47 Changes sinze 2.10:
48 * Added the --enable-api-default-signal-handlers option, for use in 
49   embedded environments that have reduced resources. See configure --help 
50   for the other subsets.
51 * Value: Added init(const GValue*), so we can copy GValue instances 
52   of any type at runtime. Needed by the new branch of libgdamm.
53
54 2.11.3:
55
56 * Build: Added the --enable-api-default-signal-handlers option, for use in 
57   embedded environments that have reduced resources. See configure --help 
58   for the other subsets.
59
60 2.11.2:
61
62 * Date: Fix implementation of Glib::Date::set_time_current() so
63   that it doesn't set the date to Dec 31, 1969.
64   (Jonathon Jongsma)
65 * Value: Added init(const GValue*), so we can copy GValue instances 
66   of any type at runtime. Needed by the new branch of libgdamm.
67   (Murray Cumming)
68 * Added a #warning to warn about including X11/Xlib.h before a glibmm header, 
69   which would break things. Bug #316726 from Mert Tugcu and Javeed Shaikh.
70   (Murray Cumming)
71 * Build: 
72   - Quote some m4 macros to avoid warnings. Bugs (with patches) #347076 
73   and #347077
74   (Kevin McBride).
75   - Fix exporting of get/set_property() on mingw32-gcc.
76   (Cedric Gustin)
77
78
79
80
81 2.10.1
82
83 * Windows Build:
84  - Define GLIBMM_DLL when building with mingw32 or cygwin, 
85    because it is needed by gtkmm. Bug #309030
86  (Cedric Gustin)
87 * OptionGroup: Allow default values, by not initializing them all.
88   (Armin Burgmeier)
89 * Slight code size reduction by marking private functions as static.
90   (Murray Cumming)
91
92 2.10.0:
93
94 * Windows Build:
95  - ustring.h: Tag npos with GLIBMM_API, in order to
96    dllexport it on win32. Bug #332438.
97  - Updated MSVC++ build files and README, for MS Visual Studio 2005.
98  (Cedric Gustin)
99 * gmmproc code generator: 
100  - WRAP_METHOD() Take an extra optional argument: deprecated deprecationtext - 
101   so that we can insert the appropriate doxygen tag in the documentation, where 
102   the C documentation does not do it for us.
103
104 2.9.1:
105
106 * Date:
107   - Added set_time(time_t), set_time(GTimeVal), and deprecated  
108     set_time(GTime)
109   - Added set_time_current().
110   (Murray Cumming)
111 * Build: Added --enable-deprecated-api  option. When set to disabled, 
112   it does not build deprecated API. This reduces the size of the 
113   library, and might be useful for embedded devices.
114   (Murray Cumming)
115
116 2.8.2:
117
118 * Solaris build fix: Correct the detection 
119   of make. (Mark Rouchal)
120
121 2.8.1:
122
123 * Build: Check for glib 2.8.
124
125 2.8.0:
126
127 API additions since glibmm 2.6:
128
129 * GModule: Add BIND_LOCAL enum value.
130   (Bug #172748 from Phillip Neiswanger).
131 * MainContext Added signal_child_watch()
132   and examples/child_watch.
133   (Yair Hershkovitz)
134 * OptionEntry: Added FLAG_NO_ARG, FLAG_FILENAME, 
135   FLAG_OPTIONAL_ARG, and FLAG_NOALIAS enum values.
136   (Murray Cumming)
137
138 2.7.3:
139
140 * Updated reference documentation from glib documentation.
141
142 2.7.2:
143
144 * OptionEntry: Added FLAG_NO_ARG, FLAG_FILENAME, 
145   FLAG_OPTIONAL_ARG, and FLAG_NOALIAS enum values.
146 * build_filename() and build_path(): Now use the implementation 
147   from glib.
148
149 2.7.1:
150
151 * GModule: Add BIND_LOCAL enum value.
152   (Bug #172748 from Phillip Neiswanger).
153 * MainContext Added signal_child_watch()
154   and examples/child_watch.
155   (Yair Hershkovitz)
156 * Fixes from 2.6.2.
157
158 2.6.1:
159
160 * Interface::add_interface(): Disabled the check for a second call, 
161   introduced in 2.6.0, for now, because it stops some valid uses.
162   (Bryan Forbes)
163
164 2.6.0:
165
166 New stable version. Changes compare to glibmm 2.4.x:
167
168 * Added Option, OptionContext, OptionGroup for parsing of command-line arguments.
169 * Added filename_display_basename() and filename_display_name().
170 * Added setenv() and unsetenv().
171 * add_interface() methods will no longer give warnings if you 
172   call them twice.
173 * gmmproc:
174   - Now reuses C properties documentation.
175
176 2.5.6:
177
178 * add_interface() methods will no longer give warnings if you 
179 call them twice.
180 * gmmproc: Output properties documentation taken from the .defs.
181 * examples now build on AIX.
182   (Murray Cumming)
183 * MSVC++ .Net 2003 build fix. (Cedric Gustin)
184
185 2.5.5:
186
187 * Now builds with the following compilers, in addition to 
188 the existing GNU g++, and Intel compilers:
189 - SUN Forte CC 5.5
190 - IBM AIX xlC v7
191 - Tru64 C++ V6.5-042
192 - IRIX MIPSpro 7.4.2m
193   (Older versions of all these compilers might also work.)
194   (Murray Cumming, www.thewrittenword.com)
195 * Now builds with MSVC++ .Net 2003 (gtkmm 2.4 already did).
196   (Cedric Gustin)
197   
198 2.5.4:
199
200 Options:
201 * Added Option(GOptionGroup* cast_item) constructor,
202   needed by Gtk::Main.
203 * Added reference documentation.
204 (Murray Cumming)
205
206 2.5.3:
207
208 * Options:
209   - Allow parsing of boolean arguments (arguments with no value).
210   - Really use the short names.  
211   (Daniel Holbach, Murray Cumming)
212 * Added filename_display_basename() and filename_display_name().
213   (Murray Cumming)
214 * Added setenv() and unsetenv(). (Murray Cumming)
215 * Use static keyword to prevent exporting private API.
216   (BenoĆ®t Dejean)
217 * input example: Improvements and simplification. (Chris Vine) 
218
219 2.5.2:
220
221 * OptionEntry: Remove useless enum. (Murray Cumming)
222 * Documentation:
223   - examples: Added iochannel_stream example. (Chris Vine)
224   - reference: Generate more reference API from the C documentation, and
225     try to use the libstdc++ doxygen tags file to link to their 
226     documentation. (Murray Cumming)
227
228 2.5.1:
229
230 * OptionContext, OptionGroup, OptionEntry: Made the add_entry() methods 
231   type-safe and fixed several problems memory-management problems. This 
232   API is now worth looking at.
233
234 2.5.0:
235
236 * Added OptionContext, OptionGroup, and OptionEntry classes, for
237   parsing of command-line options. See examples/options/
238
239 2.4.4:
240
241 * Signals: Avoid crashes when disconnecting a signal when handling that signal.
242   (Murray Cumming, Martin Schulze)
243
244 2.4.3:
245
246 * Minor improvements to reference documentation. (Daniel Elstner)
247 * Minor Glib::Dispatcher improvements (Daniel Elstner)
248
249 2.4.2:
250
251 * Glib::Dispatcher: win32 implementation rewritten, and hopefully, improved.
252   (Daniel Elstner)
253 * Glib::ustring:
254   - Optimization and code-cleanup. (Daniel Elstner)
255   - Added reference documentation for constuctors. (Murray Cumming)
256 * Fixed some compiler warnings.
257   (Daniel Elstner)
258 * gmmproc: Some improvements for libgdamm. (Murray Cumming)
259
260
261 2.4.1:
262
263 * Build fixes for gcc 3.4.0.
264 * Doxygen not required when building from tarballs.
265   (Murray Cumming)
266
267
268 2.4.0:
269
270 Changes since 2.2.0:
271
272 * 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.
273 * When using pkg-config, you should check for "glibmm-2.4".
274 * Glib::ObjectBase inherits virtually from SigC::Object, allowing multiple inheritance with other classes that inherit from SigC::Object.
275 * RefPtr:
276   - is_null() was removed, to encourage you to use "== 0" instead.
277   - operator=(CppObject*) was removed.
278 * The gtkmmproc code-generator is now gmmproc, and has several improvements to support gtkmm 2.4.
279 * Now uses improved libsigc++ 2.0 API.
280 * Added i18n.h and i18n-lib.h, which include the relevant
281   glib headers, which declare internationalization 
282   macros such as _().
283 * New methods:
284   Glib::spawn_close_id(), Glib::MainLoop::depth(),
285   Glib::Date::clamp_min(),  Glib::Date::clamp_max(). 
286 * Improved documentation.
287
288  
289 2.3.8:
290
291 * Fix crash when using Glib::Main signals.
292   (Martin Schulze)
293 * Corrected the configure-time SUN compiler check.
294   (Murray Cumming, Alexander Nedotsukov)
295
296 2.3.7:
297
298 * Added configure macros to detect SUN compiler oddities.
299 * Various SUN Forte C+ and g++ 3.4 (cvs) build fixes.
300   (Murray Cumming)
301 * gmmproc: Improved parsing of C docs.
302   (Hagen Moebius)
303
304 2.3.6:
305
306 * Added i18n.h and i18n-lib.h, which include the relevant
307   glib headers, which declare internationalization 
308   macros such as _(). (Murray Cumming)
309 * Added Glib::spawn_close_id(). (Murray Cumming)
310 * Added Glib::MainLoop::depth(). (Murray Cumming)
311 * Documentation: corrections to CHANGES (Martin Schulze).
312 * gmmproc: Can now handle "const const_iterator& iter"
313   parameter names without getting confused by 2 consts.
314   (Murray Cumming)
315
316 2.3.5:
317
318 * glibmm now uses libsigc++ 2 rather than libsigc++ 1.2.
319  
320 2.3.4:
321
322 * ListHandle/SListHandle (intermediate container types):
323   - Added a const_cast<> to allow lists of const elements.
324 * gmmproc: _WRAP_SIGNAL(): Added optional custom_c_callback 
325   parameter.
326   (Murray Cumming)
327 * WIN32: Build fixes, mostly merged from the 2.2 branch.
328   (Cedric Gustin) 
329  
330 2.3.3:
331
332 * gmmproc (code generator)
333   - properties: Make read-only properties have const accessors,
334     and add a second read-only const accessor for normal
335     properties. Wrap construct-only properties as read-only,
336     instead of ignoring them.
337   - vfuncs: Really generate const vfuncs when requested. Put
338     the method declaration directly into the .h file, so that
339     the doxygen documentation can be next to it.
340   - documentation:
341     - Remove mergecdocs configure option - always
342     merge the C docs, to avoid any risk of uploading or
343     releasing empty documentation. Just delete the *_docs.xml
344     files to make building from cvs faster.
345     - Install a GLIBMM_CHECK_PERL() macro, for use by gtkmm
346     and other *mm projects, to get the perl path needed by
347     doxygen.
348     - Install beautify_docs.pl so it can be reused in gtkmm
349     and other *mm projects, instead of having lots of copies.
350 * Glib::ObjectBase: The default constructor, never before used,
351   now generates a custom GType, for use when creating new
352   implementations of Glib::Interfaces - for instance, see the
353   new custom tree model example in gtkmm.
354 * Glib::Date: Added clamp_min() and clamp_max().
355   (Murray Cumming)
356
357 * Documentation:
358   - Added reference documentation for MainLoop, MainContext, 
359     Source, and Date. (Alberto Paro)
360   
361 2.3.2:
362
363 * gmmproc (code generator):
364   - signal proxies have extra space to avoid << with templates.
365   - Added WRAP_METHOD_DOCS_ONLY() for reusing documentation even
366     when the method is hand-coded.
367   - _WRAP_SIGNAL(): Added optional no_default_handler parameter,
368     because some of the new GTK+ signals have no public default 
369     handler vfunc.
370 * Added Glib::init(), for use by non-GUI apps which need to 
371   use Glib::wrap().
372 * PropertyProxy: Can now be used with Interfaces.
373 * Documentation improvements, so that gtkmm docs link to glibmm
374   docs.
375   (Murray Cumming)
376
377 2.3.1:
378
379 * gmmproc changes needed by gtkmm 2.3.0
380   (Murray Cumming)
381 * examples updated and buildable and working,
382   without gtkmm code.
383   (J. Abelardo Gutierrez)
384
385 Changes in glibmm 2.3.0:
386
387 * Now separate from gtkmm, so you can use things like Glib::ustring without depending on gtkmm.
388   This glibmm 2.4 API installs in parallel with gtkmm 2.0/2.2, so you can install this unstable library 
389   without the risk of breaking existing application.
390 * This does not yet require glib 2.3 because there has been no tarball release of that yet. For now, you
391   can use glibmm 2.3.0 with glib 2.2.x.
392 * When using pkg-config, you should check for "glibmm-2.4".
393 * Glib::ObjectBase inherits virtually from SigC::Object, allowing multiple inheritance with other
394   classes that inherit from SigC::Object.
395 * RefPtr:
396   - is_null() was removed, to encourage you to use "== 0" instead.
397   - operator=(CppObject*) was removed.
398 * gtkmmproc is now gmmproc.
399 * All the glibmm bugfixes in gtkmm 2.2.x.