summaryrefslogtreecommitdiff
path: root/NEWS
blob: 178070824c022cf6948345e9481cf9b43049761d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
Changes in gtkmm 2.2:

Highlights:
- New GTK+ 2.2 API wrapped:
  * Gtk::ListStore and TreeStore move(), reorder(), iter_is_valid() 
  methods added.
  * Gdk::DisplayManager, Display, and Screen added.

- Existing API improved:
  * atkmm rewritten and usable.
  * Gtk::Clipboard rewritten and now usable, with examples and documentation.
  * Gtk::TreeView drag-and-drop now usable, with examples, and documentation.
  * Gtk::TreeModelSort wrapped.
  * Gtk::Toolbar has a non-STL-style interface, like the other containers.
  * glibmm: Added string utility functions, get_appname(), file_open_tmp() 
    and file_open_contents(). Glib::Markup added - this is not a real XML 
    parser. 
  * Various bugfixes - see ChangeLog.

The following people made gtkmm 2.2 happen:
Ross Burton
Murray Cumming
Daniel Elstner
Walter H. van Holst
Mark Jones
Gary Peck
Daniel Sundberg
Naofumi Yasufuku



2.2.0:

* Added Gdk::Window::pointer_grab(), pointer_ungrab(), keyboard_grab()
  and keyboard_ungrab(). (Murray Cumming)

2.1.3:

* Changed library binary version so libtool knows that
  2.2 is API compatible with 2.0. We did this wrong in the past
  so people MUST do this:

    rm -rf <prefix>/lib/lib{glib,pango,atk,gdk,gtk}mm-[12].0.so.[345]*

  where <prefix> is something like /usr/local or /opt/gnome2
  This will remove previous bad versions of 2.1.x.
* atkmm: Lots of new interfaces wrapped. (Daniel Elstner).
* Gtk::TextView:: Fixed bytes/length confusion in TextBuffer's 
  insert_text callback. (Daniel Elstner)

Documentation:
  C->C++ docs conversion improved. (Daniel Elstner)

2.1.2:

* Gtk::Clipboard API finished, with examples, and a book chapter:
  http://www.gtkmm.org/gtkmm2/docs/tutorial/html/ch16.html
  (Murray Cumming, Daniel Elstner)
* Gtk::TreeView: Some drag-and-drop API improvements, with examples.
  (Murray Cumming)
* Gtk::TreeModelSort added. (Daniel Elstner)
* Glib::RefPtr: Added swap(). (Daniel Elstner)
* Gtk::ColorSelection: catch exceptions. (Daniel Elstner)
* Gdk::Pixmap: Prevent rare segfault in creation. (Daniel Elstner)
* Gtk::AccelGroup::activate(): Implemented as a wrapper of 
  gtk_accel_groups_activate().  (Daniel Elstner)
* Glib::file_open_tmp() and Glib::file_open_contents() implemented.
  (Daniel Elstner)
* win32: Glib::Dispatcher compilation fix. (Naofumi Yasufuku)

2.1.1:
* Gtk::Clipboard API usable, and demonstrated in examples/book/clipboard
  (Murray Cumming)
* new Gtk::ListStore and TreeStore move(), reorder(), iter_is_valid() 
  methods added. (Daniel Elstner)
* Gtk::FileSelection: get_history_pulldown() added. (Mark Jones)
* Added Gtk::Widget::modify_bg_pixmap(). (Daniel Elstner)
* Gtk::RcStyle: Added accessors for public struct fields. (Daniel Elstner)
* Gtk::Style: Added accessors. (Daniel Elstner)
* Gtk::ColorSelection: Added palette methods. (Daniel Elstner)
* Gtk::Label::get_layout(): Corrected refcounting (Daniel Elstner)
* Prevent leak when constructors throw exceptions. (Daniel Elstner)
* Added Glib::get_application_name() and set_application_name()
  (Daniel Elstner)
* spec file improved (Gary Peck)

* Documentation updated automatically from latest C API docs.
  (Daniel Elstner) 


2.1.0:

* atkmm: Major API corrections. It was unusable before, so we felt free to break 
  the API. (Daniel Elstner)
* Gtk::Clipboard: Now inherits from Glib::Object, so it should be used with 
  Glib::RefPtr<>. This was unusable before, so we felt free to break the API.
  (Murray Cumming)
* Gtk::TreeModel::RowReference: It's now a "boxed type" so it can be copied.
  (Murray Cumming)
* Gtk::TreeView: some convenience method overloads added. (Daniel Elstner)
* gdkmm: New classes and methods added, mostly to support multi-head.
  (Murray Cumming)
* gtkmm: New methods, for multi-head and some new TreeView methods.
  (Daniel Sundberg, Murray Cumming)
* glibmm/stringutils.h: New utility functions. (Daniel Elstner)
* Gtk::Toolbar: Now has non-STL-style interface - e.g. append().
  (Murray Cumming)
* Glib::Markup added. You probably want to use a real XML parser instead.
  (Daniel Elstner)
* Spec file for RPMs corrected. (Walter H. van Holst)

Documentation:
* Widget-specific and Internationalization chapters completed.
* Book now has inline example code. (Murray Cumming, Daniel Elstner)
* New book/dialogs example. (Murray Cumming)
* examples: warnings fixed. (Daniel Elstner)

Also in 2.0.2:
* Lifetime fix: rare segfault involving destruction and hide() fixed.
  (Daniel Elstner)
* TreeView::append_editable(): Now works with bool model columns.
  (Murray Cumming)
* reference-counting fixed in some vfuncs. (Daniel Elstner)


gtkmm-2-0 branch created. This is HEAD, for gtkmm 2.2

2.0.1:

* Lifetime: Fixed segfault during destruction of non-scrollable children
  in ScrolledWindow. (Murray Cumming, Daniel Elstner)
* Signals: Honor the blocked flag of the SigC::Connection.
  (Daniel Elstner)
* Gtk::WindowGroup: Added missing create() method.
  (Daniel Elstner)
* Win32:
  - Uses -mms-bitfields option for use with GTK+ with MinGW gcc3
  - Temporarily #undef some badly named win32 macros.
  (Naofumi Yasufuku)

* Documentation:
  - Built HTML is now distributed in the tarball.
    (Murray Cumming, Daniel Elstner)
  - Documentation is installed in <prefix>/share/doc/gtkmm-2.0/
    (Daniel Elstner)
  - "Programming with gtkmm": widget-specific sections updated.
    (Murray Cumming)


2.0.0

* Now builds with gcc even with -Werror warnings. (Daniel Elstner)
* Various low-level cleanups/improvements. (Daniel Elstner)
* SUN-specific workarounds removed now that SUN fixed their
  compiler (Michael v. Szombathely)

API Changes:
* Gtk::Box::pack_start() and pack_end():
  removed default argument values for the bool, bool overloads,
  to improve type-safety of the more useful PackOptions overload.
  (Daniel Elstner)
* Gtk::Menu_Helpers::StockMenuElems can be used to create 
  submenus. (Christof Pettig)
* Gtk::AspectFrame: Added a constructor that uses AlignmentEnum.
  (Murray Cumming)
* Some minor Pango API corrections (Daniel Elstner)
* Glib::ustring::clear(): Added. (Daniel Elstner)
* Glib::Ascii::tolower() and Glib::Ascii::toupper() added.
  (Daniel Elstner)


Documentation:
* Book:
    Updated almost all widget-specific sections.
    Used links to reference docs and to example source code.
    Added screenshots.
* FAQ: Updated and converted to DocBook XML.
* examples: Rewrote many examples - see examples/book/
  (Murray Cumming)
* Glib::ustring non-standard methods documented.
  (Daniel Elstner)


2002-10-17: 1.3.26:

* GCC 2.95 build fixed. (Daniel Elstner)

2002-10-17: 1.3.25:

* Now requires libsigc++ 1.2.0
* Gtk::Entry::get_layout(): refcounting fixed. (Daniel Elstner)
* gcc 3.2 warnings fixes. (Daniel Elstner)
* Gtk::TextBuffer::iterator::operator bool() now works.
 (Daniel Elstner)

API changes:
* Gtk::TextBuffer:
  * create_mark() Added overload for anonymous marks.
  * iterator: Return values instead of references, for UTF8.
  * insert_interactive() and erase_interactive now return a pair, 
    with a bool to indicate success, like std::map::insert().
  * insert_range()renamed to insert().
  * insert_range_interactive() renamed to insert_interactive().
  * delete_text() renamed to erase()
  * delete_interactive_text() renamed to erase_interactive()
  * delete_selection() renamed to erase_selection().
  * insert_child_anchor() now returns an iterator.
  * signal_insert_text() renamed to signal_insert().
  * signal_delete_range() renamed to signal_erase().
  * assign(): New alias method for set_text().
  (Daniel Elstner)
* Gtk::TreeView:
  * Added scroll_to_row() and scroll_to_column()
  * Added unset_hadjustment(),unset_vadjustment(), and 
      unset_expander_column().
    Added set_cursor() overload taking a TreePath.
    * enable_drag_model_source() now takes a Gtk::TargetEntry instead
      of the C type.
  (Daniel Elstner)
* Glib::IOChannel StreamIOChannel: new wrappers.
  (Tassos Bassoukos, Martin Schulze, Daniel Elstner)
* Glib::IOSource: Added create() overload that takes IOChannel.
  (Martin Schulze).

* Documentation:
  * Book: Some Sections on common widgets updated and rearranged, 
    with screenshots. Example code is now linked instead of being
    inline.
  * examples:
      Several examples rewritten and moved into examples/book.
  (Murray Cumming)
  * demos: warnings in TextBuffer demo fixed. (Daniel Elstner)  

2002-10-09 1.3.24:

* Lifetime: On-stack child widgets are not destroyed during destruction of their
  containers. (Murray Cumming)
* Gtk::TextMark::get_iter(): Corrected reference counting (Mike McEwan)

API changes:
* Glib::Source: Can now wrap existing GSource objects.
  (Martin Schulze)
* Glib::TimeVal: Convenience methods added. (Stephan Puchegger)
* Glib::IConv: Added reset(). (Daniel Elstner)
* Glib::Dispatcher: new constructor accepts an arbitrary Glib::MainContext.
  (Stephan Puchegger)
* Gdk: Added screen_width() and screen_height(). (Murray Cumming)


2002-09-13 1.3.23:

Documentation:
* We now reuse ATK, GDK, and Pango reference documentation:
  e.g: http://www.gtkmm.org/gtkmm2/reference/html/namespacePango.html
  (Martin Schulze)
* README.SUN added (Michael v. Szombathely)

API breakage:
* pangomm: New classes, and some corrections to existing classes.
  (Martin Schulze)
  Excuse: Pangomm isn't used very much.
* Gtk::TreeView::set_column() takes a Widget& instead of a GtkWidget*.
  (Murray Cumming)
  Excuse: If anybody was using it already, they would have told us.
* Gtk::TextBuffer::get_text(): Added overload that takes no iterators.
  (Murray Cumming)
  Excuse: It's API addition.
* Gtk::Style: Wrapped GTK+ vfuncs.
  (Murray Cumming)
  Excuse: It's API addition.


2002-08-28 1.3.22:

* Win32:
  - Don't include strings.h on Win32.
  - Use -fnative-struct, as used by GTK+ DLLs.
  - Install win32 import libraries.
  (Naofumi Yasufuku)
  - Don't try to register non-wrapped classes. (Murray Cumming)

* Sun Forte build fixes. (Michael v. Szombathely)

API breakage:
* pangomm:
  - Added Rectangle, Language, Color, Item, Glyph, Attributes, Attr, AttrItem.
  - Used these wrappers in other class methods.
  - Added some wrapper methods.
  (Martin Schulze)
  Excuse for breakage: pangomm isn't used much directly so this shouldn't break much.
* Added Gdk::Window::set_cursor(void) to reset the cursor. (Murray Cumming)
  Excuse: It's additional API so it doesn't break anything.
 
2002-08-18 1.3.21:
* Lifecycle: Prevented double-destroying of GtkObjects. (Murray Cumming)
* Pango::Layout: Added constructor and create() method. (Martin Schulze)
* Gtk::Scale: set_draw_value() and get_draw_value() parameters are now bools.
  (Ole Laursen)

Documentation:
* Additions to PORTING. (Elke Meier).
* PORTING is now distributed. (Bradley Bell)
* docs/internal: Added documentation_generation.tx.t (Murray Cumming)
* More reference docs for Scale, VScale, and HScale. (Ole Laursen)


2002-08-14 1.3.20:
* Gtk::TreeView classes:
  - TreeView::append_column_editable() Workaround for gcc 2.95.3 compilation
    bug. (Martin Schulze)
  - TreeModel::foreach() return value marshalled properly. (Gergo Erdi)

* lifecyle: C++ deletion really destroys GtkObjects again. (Murray Cumming)
* Glib::Object: removed warnings when using libglademm. (Murray Cumming)
* Gtk::manage(): Now emits warnings when you try to use it on a top-level 
  Window. (Murray Cumming)

* examples:
  - Removed old menu and combo examples.
  - Corrected use of Gtk::manage() on top-level windows.
  - Added cleaner combo example in example/book/combo.
  - rulers fixed. (Martin Schulze)
   
* API changes:
  - Gtk::Combo: Added ComboDrowDown class - it wraps the deprecated GtkList
    widget that is used in the GtkCombo interface. gtkmm coders can now set
    individual item strings and use widgets for Combo items. See
    examples/book/combo. (Martin Schulze)
  - Gdk::Drawable: draw_rectangle() and draw_arc(): Changed filled arg from 
    int to bool. (Michael Koziarski)
  - Gdk::Color: *_p() renamed to get_*_p(). (Andreas Holzmann) 
  - Gtk::TextMark: Added get_iter() as a convenience. (Martin Schulze)
  - Gtk::TextBuffer: delete_at_cursor() and insert_at_cursor() return the 
    iterator, to be consistent with the other methods. (Martin Schulze)
  - Gtk::TextBuffer: paste_clipboard(), insert_child(), and 
    create_child_anchor() parameters are now const. (Martin Schulze)
  - Gtk::Bin::add_label(): Added override, using enum. (Gergo Erdi)
  - Gtk::IconFactory and Gtk::StockItem: Changed string parameters to
    Gtk::StockID to allow use of Gtk::BuiltinStockID. (Murray Cumming)


2002-08-06 1.3.19:
* Gtk::TreeView classes:
  - Added TreeModel::RowReference wrapper - it remains valid even when the 
    rows are sorted.
  - All methods that take a Model::iterator can also take a Model::Row.
    (Murray Cumming)
  - Added TreeView::append_column_editable() method. It creates columns whose
    cells automatically store new values in the model when they are edited.
    See documentation:
    http://www.gtkmm.org/gtkmm2/tutorial/html/ch10s02.html#id2837147
  - Added TreeModel::foreach() wrapper.
  - Added TreeView::remove_all_columns().
  - treestore demo: Parent rows don't show toggle cells anymore.
    (Daniel somebody)
* Box::pack_start() and pack_end() API:
  - Restore the old (bool, bool) methods as overload, so it's easier to 
    port to gtkmm2.
  - Changed the ORed flags to a simpler set of 3 mutually-exclusive enums.
  (Michael Babcock)
* Menu API:
  - Main Menu items are now accelerated automatically.
  - Popup menus need to be accelerated at the appropriate time - handy
    accelerate() overloads were created for this.
  - AccelMap: New wrapper.
   (Andreas Holzmann)
  - ImageMenuElem items now show their icons automatically.
   (Murray Cumming)
* Lifecycle:
  - Top-level windows are now properly destroyed, and definitely can't be
    manage()d.
  - Added test for this (Michael v. Szthombathely)
  - Prevented some double-destruction of signal connections.
  - Prevented recreation of 2nd C++ instances by Glib::wrap() during 
    destruction of the C instances.
  - Prevented calling of signal handlers of destroyed C++ instances.
  (Murray Cumming, Valgrind)
  - Corrected refounting of some get*() methods. (Christof Pettig)
* Sun Forte compiler fixes:
  - Examples use more lengthy code when Sun's compiler can't handle the 
    templated TreeView methods.
  - Explicit specification of templated Glib::wrap() specializations.
  (Michael v. Szthombathely, Murray Cumming)
* gcc 3.1 fixes (Jarek Dukat)
* Added vast number of const get_*() const overloads. (Jarek Dukat)
* Added alignment enum, used in overloads as an alternative to 0.5, 1.0, etc.
  (Murray Cumming)
* Gtk::Style: Added const overloads of get_*gc() methods. 
* Documentation:
  - Allow use of a local DocBook stylesheet, for people who aren't connected.
  (Marcelo E. Magallo)
  - Added Gtk::Main::run(window) overload reference docs.
    (Moreten Brix Pedersen)
  - Added RefPtr<> reference docs. (Ole Laursen)
  - Prevented reuse of C docs that talk about free-ing stuff. (Murray Cumming)
* autogen fix for GTKMM_VC_PERL_VERSION problem. (Marcel E. Magallo)
* Corrected library versioning of the internal gtk_extra_defs library.
  (Bradley Bell)
* FontSelection example fixed. (Morten Brix Pedersen)


2002-07-14 1.3.18:

* documentation:
    ( See http://www.gtkmm.org/gtkmm2/ )
    book: Added TreeView chapter.
          Added custom signals section.
          (Murray Cumming)
    reference: Added Menus and TextView groups.
               Added vast amounts of class documentation, and method
               documentation reused from GTK+.
               (Murray Cumming, James Henstridge, Morten Brix Pedersen)
    PORTING: Additions and clarifications. (Jarek Dukat, Morten Brix Pedersen)
    examples: Added menus and custom signals examples. (Murray Cumming)
              Corected original menu examples. (Liam Girdwood) 
    internals: Corrected _DEPS description. (Marcelo Magallon)
* Gtk::TreeView classes:
  - Models columns can be accessed by number, for dynamically-created models.
  - Added overrides to take TreeModel::Rows as well as TreeModel::iterators.
  - Row: Added operator bool(). 
  (Murray Cumming)
* Gtk::TextView classes 
   - Added TextBuffer:: typedefs for Tag, TagTable and Mark.
   - TextBuffer: insert() methods now return the new iterator instead of 
     modifying the input iterator, to be more STL-like.
   - Renamed get_start_iter() and get_end_iter() to begin() and end().
   - Made get() methods const.
   (Murray Cumming)
* Gtk::Table: The STL-style list now works. It probably never worked before, 
  even in gtkmm 1.2. (Murray Cumming)
* Gtk::RadioButton::Group: Simplified copying/passing semantics.
* Gtk::Menu: Show stock menu item icons. (Christof Petig)
* Glib::IConv: constructor handles errors and throws appropriate exceptions.
  (Jarek Dukat)
* Sun Forte compiler fixes. (Murray Cumming)
* vfunc wrapper generation simplification. (Murray Cumming)
* Gtk::Invisible: Correct constructor bug discovered by
  Tony <a_a_c@bellsouth.net> (Murray Cumming)
*  gcc 3.1 fixes. (Jarek Dukat, Gergo Erdi)
 

2002-06-22 1.3.17:

* Win32 support. (Cedric Gustin, Daniel Elstner)
* STL-style interfaces: Use of references rather than pointers as value types,
  to avoid double indirection when dereferencing iterators. (Martin Schulze)
* vfunc wrappers: All overrideable vfuncs now have the "_vfunc" suffix, and 
  they all have separate invoker methods, which are usually wrappers of the C 
  invoker functions. (Daniel Elstner)
* Gtk::Box STL-style interface uses Gtk::AttachOptions instead of bools,
  for consistency. (Jarek Dukat)
* Added examples/gdk, which shows gdkmm drawing code. (Alain Rouge)
* Added Gdk::RgbCMap wrapper. (Murray Cumming)
* Added Pango::GlyphString wrapper. (Murray Cumming)
* Many more get_*() methods are now const. (Jarek Dukat)
* Gtk::TextBuffer::create_mark() reference-count bug fixed. (Andrew E Makeev)
* Gdk::Drawable: Compilation fix for Sun's Forte compiler. (Michael v. Szombathely)
* Added Glib::Module wrapper. (Murray Cumming)
* Improved gtkmmproc documentation. (Murray Cumming)
* Distribute CHANGES files. (Morten Brix Pedersen)


2002-06-17: 1.3.16:

* Distribute cell renderer example header files.  Doh!  (Daniel Elstner)
* Rename several remove_foo() methods to unset_foo(), to avoid confusion with
  container operations.  (Daniel Elstner)
* Gtk::FileSelection::set_filename(): Change argument type to std::string, to
  follow the GTK+ inconsistency fix -- both get_filename() and set_filename()
  work with on-disk encoding now.  (Daniel Elstner)
* Glib::Mutex::Lock and friends: Replace the bool acquire_immediately
  parameter with overloaded ctors.  See the docs, it should be easier now.
  (Daniel Elstner)

2002-06-15: 1.3.15:

* Major low-level GObject changes to allow on-the-fly GType registration. This allows
  creation of custom TreeView CellRenderers in C++, and should allow implementation of
  GTK+ Interfaces in C++. See examples/cellrenderercustom/
  (Daniel Elstner)
* Gtk::Notebook: Restored the STL-style interface, but this time properly.
   (Martin Schulze)
* Gtk::TreeSortable: set_sort_func() now uses SigC C++ Slots instead of C callbacks.
   (Jarek Dukat)
* Glib::Dispatcher:  A special libsigc++ signal for easy inter-thread communication through
   a pipe. See examples/thread/dispatcher and
   http://www.gtkmm.org/gtkmm2/reference/html/classGlib_1_1Dispatcher.html#_details
  (Daniel Elstner)
* Added optimisation that allows us to use C++ types even in default signal handlers, so
  there should soon be no C types anywhere in the gtkmm interface. (Daniel Elstner)
* Added comments to the C<->C++ callback hookups. (Murray Cumming)
* Gtk::MenuShell and MenuBar implementation cleanup. (Daniel Elstner)
* Gdk::Pixmap/Bitmap implementation simplified. (Daniel Elstner)
* Gtk::Widget:
   - new enum Gtk::WidgetFlags.
   - width() renamed to get_width(). Likewise height().
  (Daniel Elstner)
* Gdk::Drawable: More use of C++ types, and constness fixes. (Daniel Elstner)
* Gtk::Style: Wrap gtk_paint_*() functions. (Daniel Elstner)
* Gtk::Stock:
  - Implement Gtk::Stock::add().
  - StockItem: Allow checking for null.
  (Daniel Elstner)
* Gtk::Paned::pack(): Uses the AttachOptions enum instead of unreadable bools.
  (Daniel Elstner)
* Removed need for wrap_specific_type(). (Daniel Elstner)
* Removed Gtk::Kit typedef. Just use Gtk::Main. (Daniel Elstner)

2002-05-12: 1.3.14:

* Gtk::TreeView and friends:
  - Namespaced TreeIter, TreePath, TreeViewColumn, etc, as TreeModel::iterator,
    TreeModel::Path, TreeView::Column, etc. (Murray Cumming)
  - Separated TreeModel::iterator into iterator and Row, obtained by 
    dereferencing the iterator. This is more STL-like. (Daniel Elstner)
  - Some Model methods moved to Row, and set_value()/get_value() replaced by
    array-style operator[]. (Daniel Elstner)
  - Added overrides to allow for simple model-to-view column mapping without
    repetitive specifying of TreeViewColumns and CellRenderers and attributes.
    Examples and demos therefore greatly simplified. (Murray Cumming)
  - TreeModel::iterator comparison problems fixed. (Daniel Elstner)
  - Added Path(iterator&) constructor.
  - All get_*() methods are now const. (Murray Cumming)
* Gtk::Box::pack_start() and pack_end(): Now uses AttachOptions flags instead
  of two bool paratemers, to make code more readable and to be consistent with 
  Gtk::Table::attach(). (Murray Cumming)
* Gtk::Notebook: STL-style interface remoeved because GTK+ doesn't expose 
  enough internals anymore. The simple append/prepend interface remains.
  (Murray Cumming)
* Some enums placed inside their related classes. (Daniel Elstner)
* Glib::FileError enums renamed to avoid clashes with C #defines on some 
  platforms (Daniel Elstner)
* Fixed refcount problem with manage() ed child widget destruction.
  (Murray Cumming)
* test suite started. (Daniel Elstner)
* Glib::Value and properties simplifications. (Daniel Elstner)
* Gtk::Dialog: Dialogs are now hidden when run() finishes. (Murray Cumming)

2002-05-01 gtkmm 1.3.13:

* Mostly just a release to sync with a new gnomemm release.
* Some glibmm code is now autogenerated with gtkmmproc (Daniel Elstner)
* Improvements to enum generation (Daniel Elstner)
* Improvements to glibmm character conversions (Daniel Elstner)
* gtk-demo segfault fixed. (Martin Schulze) 

2002-04-27 gtkmm 1.3.12:

* Many many fixes for Sun's Forte C++ compiler.
  (Michael v. Szombathel, Daniel Elstner, Murray Cumming)
* StockID API improved and used more consistently.
  (Martin Schultze, Daniel Elstner)
* Glib::ustring conversion improvements (Daniel Elstner)
* gtkmmproc improved for use in bonobomm. (Murray Cumming)
* Gdk::Point wrapper improved. (Martin Schulze)
* Gtk::Adjustment constructor fixed. (Murray Cumming)
* Gtk::TreeView:methods that took function pointers now take SigC::Slots.
  (Murray Cumming)
* Less #including of C headers in gtkmm headers, so less pollution of the 
  global namespace. (Murray Cumming)
* Menu API more complete and consistent. (Martin Schultze)
* Gtk::Dialog::get_action_area() now does. (Murray Cumming)
* GType changes to allow libglade/libglademm cooperation. (Murray Cumming)
* Reference documentation:
  - Stock IDs in HTML:
  http://gtkmm.org/gtkmm2/reference/html/namespaceGtk_1_1Stock.html#a6
  - Makefile dependencies fixed for faster docs building.
* General API review.

2002-04-13 gtkmm 1.3.11:

* gdkmm.h: No longer includes non-existent files. (Daniel Elstner)
* Build: Non-cvs users don't need perl. (Daniel Elstner)
* glibmm: pkg-config now reports libgobject for linking. (Murray Cumming).

2002-04-11 gtkmm 1.3.10:

* Now builds with {G,GDK,GTK}_DISABLE_DEPRECATED - some methods removed;
  entirely removed Gdk::Font and Gtk::Progress. (Daniel Elstner)
* Reference documentation:
  - Some automatic C->C++ conversion when reusing C reference documentation:
  - enums and flags grouped together.
  - html post-processed to produce "int& someint" instead of "int &someint".
  - Some example code merged into the refernce docs.
  (Daniel Elstner)
* Gtk::TreeView:
  - Gtk::TreeIter is a bit more like a STL iterator.
  - Gtk::ListStore has a more STL-like interface.
  - Gtk::TreeModelColumn - new class used to contain column type and number.
  - Gtk::TreeModelColumnRecord - new class to contain all TreeModelColumns.
  - examples/demos updated accordingly.
  (Daniel Elstner)
* gtkmm now uses its own enums, in the Gtk namespace. (Daniel Elstner)
* Gtk::ProgressBar: removed deprecated Adjustment stuff, leaving just the
  new fraction-orientated interface. (Daniel Elstner)
* Some .hg format changes needed by bonobomm. (Murray Cumming)
* new Glib::IOSource for watching file descriptor. (Martin Schultze)

2002-03-27 gtkmm 1.3.9:

* Custom Signal Proxies simplified, implementing only custom C callback
  functions and specifying them to the signal proxy constructors.
  (Daniel Elstner)
* Complete recoding of Boxed Types wrappers, not using generic _copy
  and _free methods functions when they aren't necessary, and sometimes
  inheriting directly from the underlying struct. (Daniel Elstner)
* gtk-demo compilation fixed. (Daniel Elstner)
* gtk-demo stock browser part rewritten and working. (Matthew Walton)
* Properly implemented enum and flags property proxies. (Daniel Elstner).
* Reference documentation:
  - some gtk+ docs are now merged in automatically, but we don't yet
    have acccess to the stuff in gtk+'s tmpl/*.sgml files.
    (Murray Cumming)
  - Added class documentation, based on docs in GTK+.
  - Custom headers and footers.  (Paolo Pinto)
* Added Gtk::TreeSortable, Gtk::TreeDragDest, and Gtk::TreeDragSource
  interface wrappers.  (Murray Cumming)
* Gdk::Pixbuf: render* method args are now const-correct, which allows
  casting of temporary instances. (Murray Cumming)
* Gtk::MessageDialog: changed argument order in constructors, to
  allow sensible defaults. (Murray Cumming)

2002-03-11 gtkmm 1.3.8:

* Generated C++ source code is now distributed, so that we can use extra 
  dependencies, such as perl modules, when generating the C++ source.
  (Daniel Elstner)
* Signals now use C++ types. We've said it before, but this time we meant it.
  (Murray Cumming)
* Added an exception hierarchy, used to wrap GError. Used in 
  Gdk::Pixbuf and demonstrated in demos/pixbuf-demo. (Daniel Elstner).
* Drag and Drop now wrapped, with examples, and the first draft of a chapter in
  the tutorial:
  http://gtkmm.sourceforge.net//gtkmm2/tutorial/html/ch12.html
  (Murray Cumming)
* Revised Gtk::Menu API - accelerators now work. (Andreas Holzmann)
* Glib::ustring can now be used directly with standard streams, converting 
  to the current locale where necessary. (Daniel Elstner)
* Added wrappers for glib conversion functions. (Daniel Elstner)
* Initial GtkClipboard wrapper. (Murray Cumming)
* Simplified checks for standard library features (Daniel Elstner)



2002-02-24 gtkmm-1.3.7:

* operator=() for BoxedTypes improved. (Daniel Elstner)
* pangomm api review, and use of generic intermediate ListHandle containers. 
  for method arguments instead of just std::list. (Gergo Erdi)
* Gdk::Cursor constructor now public. (Andreas Holzmann)
* property.get_value() improved. (Andreas Holzmann)
* New wrappers for Atk::Relation, Atk::RelationSet, and Atk::StateSet.
  (Murray Cumming)
* Glib::ustring documentation and case conversion methods.
  (Daniel Elstner)
* Improvements to ListHandle generic intermediate containers.
  (Daniel Elstner)
* Gtk::TreeModel: several methods now take C++ arguments instead of C types.
  (Murray Cumming)
* Build fails on failed m4 conversions. (Daniel Elstner)


2002-02-20 gtkmm-1.3.6:

No major changes - mostly just a workaround for gcc 2.95.4.

* gcc 2.95.4 seems to have a problem with a use 
of RefPtr::operator bool() in textbuffer.cc, so
we've used is_null() as a workaround. This is mysterious.
* configure.in mentioned a Makefile.am that isn't distributed. 
* Added examples/book, which will contain examples from the 

2002-02-18 gtkmm-1.3.5:
* Tutorial converted to latest DocBook XML, with some improvements of the text.
  (Murray Cumming)
* Examples can be built all at once. Some use of deprecated widgets removed.
  (Murray Cumming)
* Gdk::Cursor: Gdk::Color args are now const. (Andreas Holzmann)
* Toolbar: StockElem can now be used to add stock items to toolbars.
  (Andreas Holzmann)
* Gdk::Bitmap now derives from Gdk::Pixmap, allowing a Bitmap to be used 
  anywhere that a Pixmap can be used. This is the intention in GTK+. 
  (Murray Cumming, Andreas Holzmann)
* Gtk::TextBuffer improvements (Daniel Elstner)
* More wrapping of Atk::Object (Murray Cumming)
* Documentation overview page:
  http://gtkmm.sourceforge.net/gtkmm2/
  (Paulo Pinto) 

2002-01-26 gtkmm-1.3.4:

* Removed deprecated widgets such as CList, CTree, Text, etc. (Murray Cumming)
* Some exception handling: Use Glib::add_exception_handler() to specify a method to be called in the unlikely event that a signal handler throws an exception. If it's not used then gtkmm will report the problem and then segfault normally. Previously the exception would just be swallowed by the underlying C code and you'd have an uniformative segfault.
  (Karl Nelson)
* Menu Elements: Menu Elements can now be stored in STL containers. Fixed rare memory leak
  (Karl Nelson)
* Improved, clearer, more versatile intermediate handle types, for lists/vectors/arrays of strings/widgets etc.
  (Daniel Elstner)
* Improved reference documentation: Signal accessors show the names of the signal handler arguments, and Widgets, Containers, and Dialogs can be seen grouped toether on their own special pages.
  (Murray Cumming)
* Improved Gtk::TreeView and Gtk::TextView API, using more C++ types. (Murray Cumming, Daniel Elstner).


2002-01-10 gtkmm-1.3.3:

* Interface methods use C++ types:
    Interfaces now have a something_vfunc() which uses C types and which can be overridden to change the behaviour, and something() which uses C++ types and can be used to invoke the virtual function. This seems like the best mix of efficiency and convenience. (Murray Cumming)
* Property change notification:
    Added changed signal to property proxies. For instance, you can now do:
      something.property_example().signal_changed().connect( ... ).
   (Murray Cumming)
* Simplified inheritance hierarchy:
   Glib::ObjectBase derives from SigC::Object, thus Glib::Object no longer needs to derive from SigC::Object by using Multiple Inheritance. (Daniel Elstner)


2001-12-28 gtkmm-1.3.2:

* No more gint, gdouble, gfloat, glong:
   We use normal C++ types instead. (Murray Cumming)
* Signals are now used via accessors, and SigC::slot() requires a reference to the instance instead of a pointer.
    For instance,
    gtkmm 1.2: button.clicked.connect(SigC::slot(this, &Something::somemethod));
    gtkmm 1.3: button.signal_clicked().connect(SigC::slot(*this, &Something::somemethod));
  (Karl Nelson)
* Properties are used via accessors. For instance:
    someobject.property_something().set_value(2);
  (Karl Nelson)
* Removed any uses of Glib::nstring:
  We provide an additional method instead of allowing a null value. e.g. remove_something() instead of
  set_something(0). (Daniel Elstner)
* Improved gtkmmproc installation:
    For use by, for instance, libgnomeuimm and libgnomecanvasmm. (Murray Cumming)
* Menu wrappers updated for GTK+2. (Murray Cumming)
* Another gtkmmproc overhaul. It now detects more .defs format errors, warns about as yet unwrapped functions,
  and is faster. (Karl Nelson)
* More api review and fixes. (Murray Cumming, Daniel Elstner, Gergo Erdi, Karl Nelson)

Note also that we use a newer version of libsigc++-1.1 which contains some segfault-related fixes.


2001-11-28	gtkmm-1.3.1.

* Properties ( e.g. someobject.property_something.set_value(2); ) (Murray Cumming)
* ListHandler (Use almost any std container where GTK+ takes/returns a GList*) (Daniel Elstner)
* TreeView and TextView wrappers, including multiply-inherited 'Interface' classes, such as Gtk::TreeModel
  (Murray Cumming)
* gtk-demo: C++ version of the big new gtk+ demo that shows its own source code.
  This demonstrates TreeView, TextView, and Pango, among other things. (Murray Cumming)
* Reference documentation, using doxygen:
  http://gtkmm.sourceforge.net/gtkmm2/reference/html/
  (Murray Cumming)
* Gtk::Window no longer self-destructs. The bool return value of Gtk::Window::signal_delete_event now
  determines whether the window will be hidden, not whether it will be destroyed. (Daniel Elstner)
* Gtk::Main::run(Gtk::Window& window):
  Allows you to specify a main application window. The application will quit when that window is hidden.
  (Murray Cumming)
* Lots and lots of API review. See our progress here:
  http://cvs.gnome.org/bonsai/cvsblame.cgi?file=gtkmm-root/base/api_status.txt&rev=&root=/cvs/gnome
  (Murray Cumming, Daniel Elstner, Gergo Erdi)
* We can now use either automake 1.4p5 (like the rest of GNOME2) or automake 1.5 (Daniel Elstner)
* Glib::ustring, which interoperates with std::string now has even more of the std::string interace.
  (Daniel Elstner)
* Fixed the library names and the names reported by pkgconfig, for better co-existence with gtkmm 1.2.
  (Gergo Erdi)

Known problems:
  gtk-demo crashes on exit with warnings.
  gtk-demo "stock browser" doesn't work yet.
  Gtk::TreePath(ustring) constructor seems to have problems - see the TODO comments in demos/gtk-demo/example_treeview_editable_cells.cc



2001-10-26	gtkmm-1.3.0.

Initial release, introducing:
* Glib::ustring
* Glib::RefPtr
* signal_ prefix
* Renamed default signal handlers (on_ prefix).
* Rewritten gdkmm