2.3.1:

* Gtk:
  * Action, ToggleAction, RadioAction:
    - Added create() method overloads without stock_id.
    - ToggleAction::create() has extra bool is_active parameter.
  * EntryCompletion: Wrapped match_selected signal.
  * Expander: Added get/set_markup()
  * Menu: Added set_monitor()
  * Menu::AccelKey is now Gtk::AccelKey
  * MessageDialog: Added set_markup().
  * Added FileChooser (interface), FileChooserWidget, FileChooserDialog, FileFilter, with example.
  * ComboBox example
  * ComboBoxText now works, with example.
  * RadioToolButton: constructors properly implemented. (Murray Cumming, Billy O'Connor)
  * Toolbar: Old API deprecated. New API wrapped. Expect more change here.
  * TreeModel:: Add virtual iter_is_valid() method, now used by TreeModel::iterator operator bool().
  * TreeViewColumn: Added get_cell_position().
  * Widget: Wrapped get_accessible and screen_changed signals.
* Gdk:
  * Pixbuf: Added get_formats()

* Added Atk::init() and Pango::init(), to use when you don't want all of gtkmm.
* Documentation: Corrected installation and links with glibmm documentation.
* Deprecation: Define GTKMM_DISABLE_DEPRECATED to prevent use of deprecated API in your application. 
  (Murray Cumming)

2.3.0:

* Removed key-binding signals. (Murray Cumming)

* Use of Gdk::Device and Gtk::SelectionData instead of C equivalents
  (Murray Cumming)

* New classes:
  Gtk::
    Action, ActionGroup, CellLayout, ComboBox, ComboxText, ComboBoxEntry, ColorButton, EntryCompletion,
    Expander, FontButton, RadioAction, RadioToolButton, ToggleAction, ToggleToolButton, ToolItem, ToolButton,
    UIManager

* New API for existing classes:
  Gtk::Alignment: get/set_padding(). Useful for indenting Gtk::Frame contents.
  Gtk::Button: get/set_focus_on_click()
  Gtk::ButtonBox: get_child_secondary().
  Gtk::Calendar:
    - display_options() is now set_display_options().
    - New properties.
  Gtk::CheckMenuItem: get/set_draw_as_radio()
  Gtk::Entry: get/set_completion()
  Gtk::EventBox: get/set_visible_window(), get/set_above_child()
  Gtk::IconSource: get/set_icon_name()
  Gtk::Menu: attach()
  Gtk::MessageDialog:
    Constructors: Added bool use_markup paramater after message parameter.
      This is an API change, and I'd leak to hear suggestions for alternatives.
  Gtk::TextBuffer: select_range()
  Gtk::TextIter (also known as Gtk::TextBuffer::iterator):
    Added *_visible_* versions of forwards/backwards methods.
  Gtk::TextView:
  - get/set_overwrite(), get/set_accepts_tab()
  - Added WRAP_WORD_CHAR wrap mode.
  Gtk::TreeViewColumn (also known as Gtk::TreeView::Column):
    Added get/set_expand().
  Gtk::Widget:
  - queue_resize_no_redraw(), get/set__no_show_all()
  - Added unset_fg(), unset_bg(), unset_font(), unset_text(), unset_base().
  - Added add_modal_grab(), remove_modal_grab(), get_current_modal_grab().
    (Ole Laursen)
  - Added set_window() and set_allocation() for implementing new native widgets.
    (Detlef Reichl)
  Gtk::Window: set_default_icon(), set_keep_above(), set_keep_below()

  Gdk::Cursor: new constructor: Cursor(const Glib::RefPtr<Display>& display, const Glib::RefPtr<Pixbuf>& pixbuf, int x, int y)
  Gdk::Display: flush(), supports_cursor_alpha(), supports_cursor_color(), get_default_cursor_size(),
    get_maximal_cursor_size
  Gdk::PixbufLoader: create() now has extra bool mime_type parameter.
  Gdk::Window: set_keep_above(), set_keep_below().
  (Murray Cumming)
  

2.2.2:
 
 * OptionMenu: Fixed segfault when Menu remembers destroyed OptionMenu.
   (Murray Cumming)
 * Gtk::Image::get_pixbuf(): Fixed reference counting error.
   (Enrico Costanza)
 * Pango::AttrList::insert(), insert_before(), change()):  Pass a copy of
   the attribute parameter. (Martin Schulze)
 * Menu: Fixed memory leak when removing MenuItems.
   (Murray Cumming)
 * Build fixage (Enrico Scholz, Cedric Gustin)
 * Win32:
   - Dispatcher ported to Win32, we think.
     (Andrew Makeev, Cedric Gustin, Murray Cumming)
 * Examples:
   - Updated book/idle and book/timeout.
   (Gene Ruebsamen, Murray Cumming)  
 * Documentation:
   - Win32 installation instructions. (Gene Ruebsamen)
   - Glib::Module documented (Ross Burton)
   - Updated idle/timeout chapter. (Gene Ruebsamen)
   - Correct all automatic-from-GTK+ documentation that mentions
     _free() functions by mistake. (Murray Cumming)
   - Corrected typo in gtk_window_set_default(). (Oli Kessler)    
   - gobj() methods documented.
   - Documented Glib::ListHandle, Glib::ListHandle, Glib::SListHandle.
     (Murray Cumming)

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
