3 * Documentation: Improved the devhelp file to
4 - show the full method name, including the class name.
5 - really jump to the method's anchor on the page.
6 (Jonathon Jongsma) Bug #488261
7 * Build: Fix the win32 build.
12 * IconView: set_cursor(): Actually implement this.
14 * LinkButton: Correct the implementation of the
15 constructor that takes just the URI. Bug #492200
17 * Build: Fix the build on MacOS X. Bug #493057.
22 * PrintOperation: Corrected a reference-counting problem that caused
27 Changes since gtkmm 2.10:
30 * New classes: Builder, RecentAction, Tooltip, VolumeButton.
31 * Deprecated the Tooltips class.
32 * AboutDialog: Added set/get_program_name() and deprecated
34 * Action: Action: Added create_menu().
35 * Calendar: Added a get_date() method using Glib::Date.
36 * CellLayout: Added get_cells().
37 * CellRendererProgress: Added pulse, text-xalign, and
38 text-yalign properties.
39 * Entry: Added set_cursor_hadjustment(), get_cursor_hadjustment().
40 * EntryCompletion: Added set_inline_selection() and
41 get_inline_selection(), and Added cursor_on_match signal.
42 * IconTheme: Added choose_icon(), list_contexts().
43 * IconView: Added set_tooltip_item(), set_tooltip_cell(),
44 get_tooltip_context_path() and get_tooltip_context_iter(),
45 convert_widget_to_bin_window_coords()
46 * LinkButton: Added set_uri_hook() and unset_uri_hook().
47 * MenuToolButton: Added set_arrow_tooltip_text() and
48 set_arrow_tooltip_markup().
49 * Notebook: Added set/get_group() and deprecated set/get_group_id().
50 * PageSetup: Added to_file(), to_key_file().
51 * PaperSize: Added get_paper_sizes(), get_capabilities().
52 * Printer: Added list_papers().
53 * PrintSettings: Added to_file(), to_key_file().
54 * Range: Added set_show_fill_level(), get_show_fill_level(),
55 set_restrict_to_fill_level(), get_restrict_to_fill_level(),
56 set_fill_level(), get_fill_level().
57 * RecentAction: Added class.
58 * ScaleButton: Added class.
59 * StatusIcon: Added set_screen() and get_screen() and
60 popup_menu_at_position().
61 Added popup and activate signals.
62 * Stock IDs: Added DISCARD, ORIENTATION_PORTRAIT,
63 ORIENTATION_LANDSCAPE, ORIENTATION_REVERSE_LANDSCAPE,
64 ORIENTATION_REVERSE_PORTRAIT, SELECT_ALL
65 * Style: Added attach() detach().
66 * TextBuffer: Addded add_mark(), and cursor-position property.
67 * TextMark: Added constructor and create() method, though these
68 are usually created via TextBuffer.
69 * Toolbar: Added set_icon_size(), unset_icon_size().
70 * TreeView: Added is_rubber_banding_active(),
71 convert_widget_to_tree_coords(),
72 convert_tree_to_widget_coords(), convert_widget_to_bin_window_coords(),
73 convert_bin_window_to_widget_coords(), convert_tree_to_bin_window_coords(),
74 convert_bin_window_to_tree_coords(),
75 set_tooltip_row(), set_tooltip_cell(), set_tooltip_column(),
76 get_tooltip_column(), get_tooltip_context_path() and
77 get_tooltip_context_iter().
78 * Widget: Added keynav_failed(), error_bell(),
79 modify_cursor(), unset_cursor(),
80 set_has_tooltip(), get_has_tooltip().
81 * Window: Added set_opacity(), get_opacity(),
82 set_default_icon_name(), set_accept_focus(),
83 get_accept_focus(), set_focus_on_map() and get_focus_on_map().
86 * Display: Added supports_shapes(), supports_input_shapes(),
89 - Added constructors that do not take dest_x
90 and dest_y (which are ignored in this case).
91 * Screen: Added is_composited(), set_font_options(),
92 get_font_options(), set_resolution(), get_resolution(),
94 * Window: Added set_composited(), input_shape_combine_mask(),
95 input_shape_combine_region(), set_child_input_shapes(),
96 merge_child_input_shapes(), get_type_hint(), set_startup_id(), beep(),
100 * Color: Added to_string().
101 * Context: Added set_base_gravity(), get_base_gravity(),
102 get_gravity(), set_gravity_hint(), get_gravity_hint().
103 * FontDescription: Added set_gravity() and get_gravity().
104 * FontFace: Added is_synthesized().
105 * GlyphString: Added get_width().
106 * Layout: Added is_wrapped(), is_ellipsized() and
107 get_unknown_glyphs_count().
109 Thanks to Marko Anastasov, Murray Cumming, Daniel Elstner,
110 Jonathon Jongsma, Johannes Schmid, and Kalle Vahlman.
114 * RecentAction: Rearrange the constructor parameters, to match the other Action classes.
115 Added more default parameters.
119 * Gdk::Cairo::set_source_color(), set_source_pixbuf(), set_source_pixmap():
120 Deprecated the existing versions of these methods and added overloads that
121 take a const RefPtr& instead.
123 * Deprecated Gdk::Cairo::rectangle(), replacing it with add_rectangle_to_path().
124 and deprecated Gdk::Cairo::region(), replacing it with add_region_to_path(),
125 because these names are clearer.
127 * Documentation: Tutorial: DrawingArea: Corrected a mention of
128 PixBuf to Pixbuf. Bug #465961 (Jonathan Jongsma)
132 * Some build fixes for some compilers/setups.
134 * Documentation markup change for future appearance
135 in library.gnome.org. (Jonathon Jongsma)
141 - Added constructors that do not take dest_x
142 and dest_y (which are ignored in this case).
143 - get_formats(): Corrected the reference counting.
146 * Color: Added to_string().
147 * Context: Added set_base_gravity(), get_base_gravity(),
148 get_gravity(), set_gravity_hint(), get_gravity_hint().
149 * FontDescription: Added set_gravity() and get_gravity().
150 * FontFace: Added is_synthesized().
151 * GlyphString: Added get_width().
152 * Layout: Added is_wrapped(), is_ellipsized() and
153 get_unknown_glyphs_count().
156 * Builder: Removed get_type_from_name().
158 - set_tooltip_item(), set_tooltip_cell():
159 Use Tooltip only via a RefPtr.
161 - Added get_tooltip_context_path()
162 and get_tooltip_context_iter().
164 * LinkButton: Added set_uri_hook() and unset_uri_hook().
165 * PrintJob: Added a const version of get_surface()
166 * PrintSettings: Corrected the typedef for SlotForeach -
167 the ustring&s should be const. I do not believe that anybody could
168 have been using this, so I think it is OK to change it.
169 * Tooltip: Added set_tip_area().
171 - Added convert_widget_to_tree_coords(),
172 convert_tree_to_widget_coords(), convert_widget_to_bin_window_coords(),
173 convert_bin_window_to_widget_coords(), convert_tree_to_bin_window_coords(),
174 convert_bin_window_to_tree_coords(),
175 set_tooltip_row(), set_tooltip_cell(), set_tooltip_column(),
176 get_tooltip_column().
178 - Added get_tooltip_context_path() and get_tooltip_context_iter().
180 * Widget: Added keynav_failed(), error_bell(),
181 modify_cursor(), unset_cursor(),
182 set_has_tooltip(), get_has_tooltip().
185 - Corrected lots of API reference documentation.
186 (Murray Cumming, Marko Anastasov, Jonathan Jongsma)
187 - Added a Tooltip example. (Marko Anastasov)
192 * Color: Added to_string().
193 * Context: Added set_base_gravity(), get_base_gravity(),
194 get_gravity(), set_gravity_hint(), get_gravity_hint().
195 * FontDescription: Added set_gravity() and get_gravity().
196 * FontFace: Added is_synthesized().
197 * GlyphString: Added get_width().
198 * Layout: Added is_wrapped(), is_ellipsized() and
199 get_unknown_glyphs_count().
203 * Screen: Added is_composited(), set_font_options(),
204 get_font_options(), set_resolution(), get_resolution(),
209 Added set_tooltip_item(), set_tooltip_cell(),
210 convert_widget_to_bin_window_coords().
211 * MenuToolButton.hg: Added set_arrow_tooltip_text() and
212 set_arrow_tooltip_markup().
213 * StatusIcon: Added set_screen() and get_screen().
215 * TextBuffer: Addded cursor-position property.
217 * TreeVIew: Added is_rubber_banding_active()
223 * Added Builder, which will eventually replace use of libglade.
225 * Added Tooltip, which replaces the deprecated Tooltips class.
227 * RecentAction: Added constructor and create() method and an example.
229 * Documentation: Added lots of class overview documentation.
235 * Action: Added create_menu().
236 * CellRendererProgress: Added pulse, text-xalign, and
237 text-yalign properties.
239 * DragContext::get_targets(), SelectionData::get_targets():
240 Use the correct intermediate return type, to correct memory
241 management problems. This technically breaks ABI of these two
242 functions, but we believe that it was impossible to use them before,
243 so no applications should be broken by this improvement.
244 (Murray Cummng, Daniel Elstner) Bug #399403 (Yannick Guesnet)
245 * EntryCompletion: Added set_inline_selection() and
246 get_inline_selection().
247 Added cursor_on_match signal, though without a default signal
248 handlers, to preserve ABI.
249 Added inline-selection property.
250 * Notebook: Added const versions of get_n_pages() and page_num(),
251 deprecating the non-const methods. Bug #442284 (Tomasz Ostrowski).
252 * Printer: Added list_papers().
253 * Range: Added set_show_fill_level(), get_show_fill_level(),
254 set_restrict_to_fill_level(), get_restrict_to_fill_level(),
255 set_fill_level(), get_fill_level().
256 Added show-fill-level, restrict-to-fill-level, and
257 fill-level properties.
258 * RecentAction: Added class.
259 * ScaleButton: Added class.
260 * VolumeButton: Added class.
261 * Stock IDs: Added DISCARD, ORIENTATION_PORTRAIT,
262 ORIENTATION_LANDSCAPE, ORIENTATION_REVERSE_LANDSCAPE,
263 ORIENTATION_REVERSE_PORTRAIT, SELECT_ALL
266 * Build fix when disabling properties.
269 - Improved gmmproc chapter.
271 - Improved internationalization chapter.
277 * Display: Added supports_shapes(), supports_input_shapes(),
278 supports_composite().
279 * Window: Added set_composited(), input_shape_combine_mask(),
280 input_shape_combine_region(), set_child_input_shapes(),
281 merge_child_input_shapes(), get_type_hint(), set_startup_id(), beep(),
285 * AboutDialog: Added set/get_program_name() and deprecated
288 * CellLayout: Added get_cells().
289 * Entry: Added set_cursor_hadjustment(), get_cursor_hadjustment().
290 * IconTheme: Added choose_icon(), list_contexts().
291 * Notebook: Added set/get_group() and deprecated set/get_group_id().
292 * PageSetup: Added to_file(), to_key_file().
293 * PaperSize: Added get_paper_sizes().
295 * PrintSettings: Added to_file(), to_key_file().
297 * TextBuffer: Added add_mark().
298 * TextMark.ccg: Added constructor and create() method, though these
299 are usually created via TextBuffer.
300 * Toolbar: Added set_icon_size(), unset_icon_size().
302 - Added set_opacity(), get_opacity().
303 - Added transient_for, and opacity properties.
307 * Fixed some wrong mentions of g_free().
313 * Calendar: Added a get_date() method using Glib::Date.
314 (Johannes Schmid) Bug #350584
316 - Added popup and activate signals
317 (without default signal handlers, to preserve ABI) though we
318 still cannot get any answer from the GTK+ maintainers about whether
319 these are public API.
320 - Added popup_menu_at_position().
322 * Style: Added attach() detach().
323 (Jonathan Jongsma) Bug #351336
325 - Added set_default_icon_name()
326 (Johannes Schmid) Bug #364395 (Yuriy Syrota)
327 - Added set_accept_focus(), get_accept_focus(),
328 set_focus_on_map() and get_focus_on_map().
329 (Murray Cumming) Bug #421936
332 - Book: Improvements to allow easier pdf generation.
334 - Book: More help with headers and linking, also for libglademm.
336 - Examples: custom/custom_widget/: Now uses cairo instead of the
337 GDK drawing functions.
342 * RadioAction: Correct a reference-counting error in the "changed" signal.
343 (Armin Burgmeier, Openismus)
344 Bug #350734 (Johnathon Jongsma, "pjdavis" Paul Davis)
345 * RecentManager: Allow Gtk::RecentManager::Data to be instantiated, for use with
346 the full version of add_item(). (Armin Burgmeier, Openismus)
347 Bug #388086 (Grant Patterson)
348 * Menu: Fix memory problems during destruction by handling attached widgets as
349 we already handle child widgets. (Johannes Schmid, Openismus)
350 Bug #339791 ("pjdavis" Paul Davis, Andrew E. Makeev)
351 * Correctly ifdef-out initialization of deprecated classes.
352 (Johannes Schmid, Openismus)
353 * Build: Cope with newer m4 versions. (Yselkowitz)
355 FAQ: Emphasize that libglademm is preferred to glademm. (Marko Anastasov)
360 * Depend on glibmm 2.10.9, which has some slight performance optimization for
361 default signal handlers and vfuncs.
362 (Murray Cumming, openismus)
363 * TreeView: Fix memory leak in get_cursor().
364 Bug #417539 (Andrew E. Makeev)
365 * IconTheme::get_example_icon_name() documentation fix.
370 * ActionGroup::add(): Avoid a problem on 64-bit systems due to 0/NULL confusion.
373 - Updated the Internationalization chapter. (Marko Anastasov)
374 - Added appendix about Visual Studio 2005. (Alan Ott, bug #409102)
378 * Main: Cleanup data structures in the destructor, preventing leaks, and allowing
379 a second instantiation. (Bug #383340 from Christopher Raine).
380 * Build: Fix build with SUN Workshop 11
381 (Marko Anastasov, Bug #395572 from Tim Mooney)
383 - glade/libglade tutorial section: Clarification.
384 (Martin Nordholts, Bug #387708)
385 - Added SizeGroup documentation.
390 * Gdk::Drawable::create_cairo_context(),
391 Gtk::PrintContext::get_cairo_context(),
392 Gtk::PrintJob::get_surface(): Fix memory leak caused by doing
394 Bug #362181 from austinf.
398 * UIManager: Fix crash when built without exceptions support.
400 * Style: lookup_icon_set(): Memory-management correction.
401 Bug #374094 (patch from Nate Nielsen)
403 - Windows: Do not check for gtk+-unix-print-2.0 on as it is not
404 always included in GTK installers and/or binary archives (like in Tor's binaries).
405 Bug #371882 from Alexis Wilke.
411 - Omit the atkmm dependency from the gtkmm pkg-config .pc file
412 when atkmm was optionally disabled. (Rémi Cardona)
413 Bug #366930 from John N. Laliberte.
414 - Added --enable-api-maemo-extensions configure option,
415 to optionally provide C++ wrappers for the additional GtkTextBuffer
416 functions in the Maemo version of GTK+.
417 (Johannes Schmid, Murray Cumming)
420 - Drawable: Add comment paragraph about using cairo.
425 * Adjustment: Preventing the value from being ignored.
426 Bug #369335 from Daniel Holbach, via Vincent Levesque,
427 with help from Paul Davis.
430 Fix an odd build problem with gcc 3.3.6.
431 Bug #352226. (Thomas Zajic)
433 - Explain the optional (at build-time) API for
434 reduced resources environments.
435 - Correct the links to the Memory Management and libglademm chapters.
436 - Drawable::get_image(), Container::remove(), Widget::add_mnemonic_label:
437 avoid mentioning a functions that do not exist in gtkmm.
438 Bug #358268 from Evgeny Rippi, and Nickolai Dobrynin.
442 * Added --enable-atk=no option, to disable the build and use
443 of the atkmm API, for use in embedded environments.
444 (Johannes Schimd, Murray Cuming, Openismus)
446 - Book: Added Plug and Socket chapter to book, with example.
451 * Button: fix typo in get_image_position()
452 * Added MSVC support for 2.10
458 gtkmm now depends on cairomm.
460 * AccelMap: Added lookup_entry() (Paul Davis)
461 * Button: Added get/set_image_position().
462 * Added CellRendererAccel (Murray Cumming)
463 * Added CellRendererSpin (Marko Anastasov)
464 * CellRendererToggle: Added "indicator-size" property.
465 * Clipboard: Added request_rich_text(), wait_for_rich_text(),
466 and wait_rich_text_is_available().
468 - Added get/set_inner_border().
469 - Added xalign and truncate-multiline properties.
470 * FileChooserButton: Added set/get_focus_on_click()
471 * MessageDialog: Added properties.
472 * Menu: Add attach_to_widget() overload without a destroy callback.
473 * Label: Added get/set_line_wrap_mode() and property.
475 * Added ListViewText very simple text-based convenience class for TextView.
476 (J. Baltasar GarcÃa Perez-Schofield)
477 * MenuShell: Added get/set_take_focus() and property.
478 * MessageDialog: Added set_image() and property.
480 - Added page_reordered, page_removed, and
482 - Added set_group_id(), get_group_id(),
483 get_tab_reorderable(), set_tab_reorderable(),
484 get_tab_detachable(), set_tab_detachable().
485 * Added Printing support, via PrintOperation, PrintContext, PrintJob, PrintSettings,
486 Printer, PageSetup. (Marko Anastasov, Murray Cumming)
487 * Added Recent Files support, via RecentChooser, RecentChooserWidget, RecentChooserMenu,
488 RecentChooserDialog, RecentInfo, RecentManager
489 (Armin Burgmeier, Marko Anastasov, Jonathon Jongsma)
490 * RadioAction: Added set_current_value().
491 * Range: Added get/set_lower_stepper_sensitivity(),
492 get/set_upper_stepper_sensitivity() and properties.
493 * SectionData: Added Added targets_include_uri.
494 * SizeGroup: Added get_widgets().
496 - Added overload set_bg_pixmap() that takes const Pixmap.
498 - Added Added lookup_color().
499 * SelectionData: Added targets_include_rich_text().
500 * SizeGroup: Added get/set_ignore_hidden().
501 * SpinButton: Added "wrapped" signal, without a default signal handler, to
502 preserve ABI. (Murray Cumming)
503 * ToggleButton: Added constructor that takes a stock item.
505 - Added get/set_rubber_banding(),
506 get/set_grid_lines(), get/set_enable_tree_lines(),
507 get_search_entry(), set_search_position_func(),
508 get_headers_clickable().
509 - Added properties for show-expanders, level-indentation,
510 rubber-banding, enable-grid-lines, and enable-tree-lines.
513 - Added composited_changed signal. (Murray Cumming)
514 - Added input_shape_combine_mask(). (Marko Anastasov)
515 - Added is_composited(), input_shape_combine_mask(),
516 unset_input_shape_combine_mask(), and the "composited_changed" signal.
518 - Added get_action().
519 - Made map() public, because custom containers sometimes
520 (e.g. GtkNotebook) need to call it on their child widgets,
521 though we are not sure when.
522 * Window: Added get_group(), and get/set_deletable(),
527 * AttrList: Added operator bool.
528 * Context: Added get_matrix(), update_from_cairo_context(),
529 set_cairo_font_options(), set_cairo_font_options(), get_font_options(),
530 set_resolution(), get_resolution().
531 * Font: Added describe_with_absolute_size(), get_font_map().
532 * FontDescription: Added set_absolute_size(), get_size_is_absolute().
533 * Layout: Added get_font_description(), index_to_line_x(),
534 create(Cairo::Context), update_from_cairo_context(),
535 add_to_cairo_context().
536 * LayoutLine: Added show_in_cairo_context(), add_to_cairo_context().
538 * Renderer: Added get_matrix().
542 * GC: Added set_clip_rectangle() overload that takes const argument.
543 (Michael J M Thompson)
544 * Added static functions for using Cairo, in general.h.
548 * Stylesheet improvements, to improve the appearance. (Jonathon Jongsma)
549 * Printing Chapter, with example (Marko Anastasov)
550 * Recent Files chapter, with example (Armin Burgmeier, Jonathon Jongsma)
551 * "Wrapping C libraries" appendix (Murray Cumming)
552 * DrawingArea chapter updated for Cairo. (Jonathan Jongsma)
553 * Added ComboBox chapter and removed Combo section. (Murray Cumming)
554 * Improved RadioButton example. (Pierre Thierry)
555 * Added an example that uses events_pending()
556 to update the UI (Gareth Foster, Murray Cumming)
557 * Added IconView example. (R. Douglas Barbieri)
559 Win32 build: Plug and Socket added. (Cedric Gustin)
561 Other bug fixes from Paul Davis, Gezim Hoxha.
567 * FontButton: Fix the constructor that takes a font_name.
569 * PrintOperationPreview: Fix some reference-counting issues to
570 fix a crash. (Marko Anastasov)
571 * RecentManager: Fix get_items() memory management.
574 * Recent Files chapter: Started this chapter, with a screenshot.
578 * printing/advanced: Various bugfixing, though it might
579 still have problems on amd64. Do test. See bug #347857.
580 (Marko Anastasov, Murray Cumming)
581 * recent files: Actually show a dialog, and add _mnemonics to
588 * PrintOperation: get_print_settings(): Ref the return to avoid a crash.
590 * RecentManager: Change add_fullI to add_item(), overloading according to the
591 parameters. (Jonathon Jongsma)
592 * SpinButton: Added "wrapped" signal, without a default signal handler, to
593 preserve ABI. (Murray Cumming)
595 - Correct the new composited_changed signal to avoid breaking ABI.
597 Bug #348241 from Daniel Holbach.
598 - Fixed a typo so that input_shape_combine_mask() is really wrapped.
600 * Build: Build with the new glibmm --enable-api-default-signal-handlers=no
601 option for reduced-resources embedded devices. (Murray Cumming)
604 * Printing examples: Use the new gdkmm cairo methods instead of the
605 C functions. (Marko Anastasov)
610 * Printing API mostly finished. (Marko Anastasov)
611 * TextBuffer: Added register_serialize_tagset(), unregister_serialize_format(),
612 unregister_deserialize_format(), set_can_create_tags(), get_can_create_tags(),
613 get_serialize_formats(), get_deserialize_formats(). There's more to do.
615 * ToggleButton: Added constructor that takes a stock item.
616 * Widget: Added is_composited(), input_shape_combine_mask(),
617 unset_input_shape_combine_mask(), and the "composited_changed" signal.
621 * Added Printing chapter and printing example. (Marko Anastasov)
622 * Added "Wrapping C libraries" appendix. (Murray Cumming)
623 * Style updated to match the new website. (Jonathon Jongsma)
628 * Notebook: Added page_reordered, page_removed, and
630 * PrintContext: Renamed the const get_cairo()
631 to get_cairo_context(), to match the original.
632 * PrintOperation: run(): Added a default value.
634 * SelectionData: Added targets_include_rich_text().
635 * SizeGroup: Added get/set_ignore_hidden().
636 * StatusIcon: Added size_changed signal.
640 * Add links to gtkmm_hello and gnomemm_hello programs.
641 * Fixed the sentence explaining disconnect() in the Timeouts chapter.
642 * Typo correction in the Clipboard chapter
648 * Label: Added get/set_line_wrap_mode() and property.
649 * MenuShell: Added get/set_take_focus() and property.
650 * MessageDialog: Added set_image() and property.
651 * StatusIcon: Added get_geometry().
652 * TreeView: Added get/set_rubber_banding(),
653 get/set_grid_lines(), get/set_enable_tree_lines().
654 Added properties for show-expanders, level-indentation,
655 rubber-banding, enable-grid-lines, and enable-tree-lines.
657 * PrintJob: send_job(): No longer throws an exception.
658 * PrintUnixDialog: Added add_custom_tab() overload that takes a ustring.
659 * Printer: Added get_job_count(), and enumerate_printers(), and others.
661 - Put the standard settings in a member class so they can be
662 used as Gtk::PrintSettings::Keys::SOMETHING.
663 - Remove get/set_print_to_file().
664 * PrintOperation: Added a version of run() without the Window parameter.
665 * PrintOperationPreview: New class.
666 (Most printing stuff: Marko Anastasov)
671 * Assistant: Added update_buttons_state().
672 * Button: Added get/set_image_position().
673 * Clipboard: Added request_rich_text(), wait_for_rich_text(),
674 and wait_rich_text_is_available().
675 * Entry: Added get/set_inner_border().
676 * Notebook: Added set_group_id(), get_group_id(),
677 get_tab_reorderable(), set_tab_reorderable(),
678 get_tab_detachable(), set_tab_detachable().
680 * PrintContext: Added set_cairo_context().
682 - run(): Added PrintOperationAction parameter.
683 - Removed set_show_dialog(), set_pdf_target(),
684 set_track_print_status(), run_async().
685 - Added set_export_filename(), set_track_print_status(),
686 set_show_progress(), set_allow_async(), set_custom_tab_label().
687 * Fixed warnings (Elijah Newren, Jonathon Jongsma)
690 * Context: Added get_matrix().
691 * Font: Added describe_with_absolute_size(), get_font_map().
692 * FontDescription: Added set_absolute_size(), get_size_is_absolute().
693 * Layout: Added get_font_description(), index_to_line_x().
694 * Renderer: Added get_matrix().
701 - Added set_track_print_status() and cancel(), paginate signal.
703 - get_cairo() renamed to get_cairo_context(),
704 - get_fontmap() renamed to get_pango_fontmap(),
705 - create_context() renamed to create_pango_context(),
706 - create_layout() renamed to create_pango_layout().
709 - Added set/get_track_print_status().
713 * Added CairoFontMap. (Might be removed later)
714 * Context: Added update_from_cairo_context(),
715 set_cairo_font_options(), set_cairo_font_options(), get_font_options(),
716 set_resolution(), get_resolution().
717 * Layout: Added create(Cairo::Context), update_from_cairo_context(),
718 add_to_cairo_context().
719 * LayoutLine: Added show_in_cairo_context(), add_to_cairo_context().
724 * Fixed regressions from 2.9.1 and 2.8.6:
725 - Regenerated with latest glibmm to fix several empty methods.
726 - ActionGroup:add(): Fix crash in alternate property get.
727 - Gdk::PixbufLoader: Correct the vfunc sequence to avoid the ABI break.
729 * Added Printer, PrintJob, PageSetupUnixDialog, PrintUnixDialog
731 * Table: Fix crash in Table_Helpers::TableList.erase(). Bug #341962
734 - Fix stylesheet installation.
740 * Fixed a typo to fix the build when not disabling exceptions.
745 * Depends on cairomm.
746 * gtkmm.h: Include menutoolbutton.h and tearoffmenuitem.h.
747 (Michael J M Thomson)
748 * Added ListViewText very simple text-based convenience class for TextView.
749 (J. Baltasar GarcÃa Perez-Schofield)
751 - Assistant, CellRendererAccel, LinkButton, StatusIcon.
752 (Murray Cumming, Armin Burgmeier)
753 - CellRendererSpin (Marko Anastasov)
754 - PageSetup, PaperSize, PrintContext, PrintOperation, PrintSettings
756 - RecentChooser, RecentChooserWidget, RecentChooserMenu,
757 RecentChooserDialog. (Armin Burgmeier)
758 - RecentInfo, RecentManager (Marko Anastasov)
759 * AccelMap: Added lookup_entry() (Paul Davis)
760 * CellRendererToggle: Added "indicator-size" property.
761 * Entry: Added xalign and truncate-multiline properties.
762 * FileChooserButton: Added set/get_focus_on_click()
763 * MessageDialog: Added properties.
764 * Menu: Add attach_to_widget() overload without a destroy callback.
765 * RadioAction: Added set_current_value().
766 * Range: Added get/set_lower_stepper_sensitivity(),
767 get/set_upper_stepper_sensitivity() and properties.
768 * SectionData: Added Added targets_include_uri.
769 * SizeGroup: Added get_widgets().
770 * Style: Added overload set_bg_pixmap() that takes const Pixmap.
772 * TextBuffer: Added get_has_selection() and
773 property. Added text property.
774 * TextBuffer: Added const overloads of get_text() and get_slice().
775 * TreeModel: Added rows_reordered() overload without the iter.
776 * TreeView: get_search_entry(), set_search_position_func(),
777 get_headers_clickable().
778 * Style: Added Added lookup_color().
780 - Added get_action().
781 - Made map() public, because custom containers sometimes
782 (e.g. GtkNotebook) need to call it on their child widgets,
783 though we are not sure when.
784 * Window: Added get_group(), and get/set_deletable(),
787 * Win32 build: Plug and Socket added. (Cedric Gustin)
788 * Fix the build when using --enable-api-properties, --enable-api-vfuncs, or
789 --enable-api-exceptions when configuring glibmm.
790 When using these, the API, and any API generated by gmmproc, will be
791 changed. This allows users of embedded platforms to reduce the code size of *mm
792 libraries and *mm-using applications, at the small cost of losing some rarely-used
793 API. Alternatives exist for that API, as show in the examples.
796 * GC: Added set_clip_rectangle() overload that takes const argument.
797 (Michael J M Thompson)
798 * Added static functions for using Cairo, in general.h.
802 * AttrList: Added operator bool.
806 - DrawingArea: Updated for Cairo.
807 - HTML appearance greatly improved.
808 - Updated screenshots.
810 - Added ComboBox chapter and removed
811 Combo section. (Murray Cumming)
812 - Improved RadioButton example. (Pierre Thierry)
814 - Added RadioButton::get/set/reset_group()
816 - Add documentation for manage().
818 - Improved Box documentation. (Pierre Thierry)
820 - Added an example that uses events_pending()
821 to update the UI (Gareth Foster, Murray Cumming)
822 - Added IconView example. (R. Douglas Barbieri)
826 * Build: Check for GTK+ 2.8.
827 * ScrolledWindow: get_*scrollbar_visible():
828 get_hscrollbar_visible() returned
829 vscrollbar_visible() and vice-versa. Fixed.
830 Bug #317309 (Bartek Kostrzewa)
831 * UIManager: get_action_groups():
832 Memory management fix.
833 Bug #31865 (Colin Law)
834 * Fix SUN Solaris Forte build problem.
835 Bug #314283 (Felipe Zipitria)
836 * Documentation corrections.
837 Bug #311176 (Marco Scholten)
841 API additions since 2.6:
844 * AboutDialog: Added set/get_wrap_license() and property.
845 * CellRenderer: Added "sensitive" property.
846 * ComboBoxText, ComboBoxEntryText:
847 - Deprecated clear() in favour of new clear_items() method,
848 because clear() exists in the base CellLayout class and is
850 - Added remove_text() to remove items one at a time.
851 * Dialog: Added get_response_for_widget().
852 * EntryCompletion: Added properties, get/set_popup_set_width(),
853 get/set_popup_single_width().
854 * FileChooser: Added get/set_do_overwrite_confirmation(
855 * Iconview: Added get_item_at_pos(), get_visible_range(), get/set_cursor(),
857 * TreeRowReference: Added get_model().
859 - Added unset_model().
860 - Added const versions of get_path_at_pos(),
861 get_cell_area(), get_background_area(), get_visible_rect(),
862 widget_to_tree_coords(), tree_to_widget_coords().
863 - Added get_visible_range().
864 * TreeView::Column: Added queue_resize().
865 * Sizegroup: Added ignore_hidden property.
866 * Stock: Added FULLSCREEN, LEAVE_FULLSCREEN, and INFO stock items.
867 * Widget: Added drag_source_set_icon(const Glib::ustring& icon_name).
869 - Added urgency_hint property, and get/set_urgency_hint().
870 Added present(timestamp) overload.
873 * Colormap: Deprecated alloc_colors() and free_colors().
874 Add free_color() for use with alloc_color().
875 * Cursor: Added get_image() and a Cursor(name) constructor.
876 * DragContext:Added set_icon(const Glib::ustring& name).
877 * Pixbuf: Added a save_to_buffer() overload without the options
879 * Window: Added move_region().
881 (Murray Cumming, Jonathon (Jongsma), Ishmal, Daniel Glöckner, Alexander Nedotsukov, Philip Langdale, The Written Word)
886 * Generated properties accessors.
888 * Settings::get_default(): Do not generate
889 a second wrapper. (Regis Duchesne)
890 * TreeView: Added unset_model().
891 * SUN Forte and Tru64 build fixes.
893 * Documentation fixes. (Jonathon Jongsma)
898 * FileChooser: Added get/set_do_overwrite_confirmation().
899 * TreeRowReference: Added get_model().
900 * TreeView: Added const versions of get_path_at_pos(),
901 get_cell_area(), get_background_area(), get_visible_rect(),
902 widget_to_tree_coords(), tree_to_widget_coords().
903 Added get_visible_range().
904 * TreeView::Column: Added queue_resize().
906 * PixbufLoader:create_with_type(): Really return the
907 created GdkPixbufLoader.
909 * Provide an extra hint to work around a DLL export/import bug
910 with MSVC++ and TreeViewColumn (Ishmal)
915 Build fix: Removed an extra; that caused a warning.
918 * Pixbuf: Added a save_to_buffer() overload without the options
924 * Colormap: Deprecated alloc_colors() and free_colors().
925 Add free_color() for use with alloc_color().
926 * Cursor: Added get_image() and a Cursor(name) constructor.
927 * DragContext:Added set_icon(const Glib::ustring& name).
928 * Window: Added move_region().
931 * AboutDialog: Added set/get_wrap_license() and property.
932 * CellRenderer: Added "sensitive" property.
933 * ComboBoxText, ComboBoxEntryText:
934 - Deprecated clear() in favour of new clear_items() method,
935 because clear() exists in the base CellLayout class and is
937 - Added remove_text() to remove items one at a time.
938 * Dialog: Added get_response_for_widget().
939 * EntryCompletion: Added properties, get/set_popup_set_width(),
940 get/set_popup_single_width().
941 * Iconview: Added get_item_at_pos(), get_visible_range(), get/set_cursor(),
943 * Sizegroup: Added ignore_hidden property.
944 * Stock: Added FULLSCREEN, LEAVE_FULLSCREEN, and INFO stock items.
945 * Widget: Added drag_source_set_icon(const Glib::ustring& icon_name).
946 * Window: Added urgency_hint property, and get/set_urgency_hint().
947 Added present(timestamp) overload.
950 gtkmm 2.7 wraps new API in GTK+ 2.7, and is API/ABI-compatibile with gtkmm 2.4 and 2.6.
951 The new API is unstable, until this become the API/ABI-stable gtkmm 2.8 when
952 GTK+ 2.7 becomes the API-stable GTK+ 2.8.
956 * CellRenderer: Prevent an infinite loop.
958 * MSVC++ .Net 2003 build fixes. (Cedric Gustin)
960 - Hide deprecated widgets from the list of widgets.
962 - Correct the description of the IO input example.
968 gtkmm 2.6 wraps new API in GTK+ 2.6, and is API/ABI-compatibile with gtkmm 2.4.
970 Changes compared to gtkmm 2.4.x:
973 * New widgets: AboutDialog, CellRendererCombo,
974 CellRendererProgress, CellView, FileChooserButton, IconView,
976 * Action: Added get_accel_path(), set_visible().
977 * ActionGroup: Added translate_string().
978 * Button: Added set/get_image().
980 - Added editing_started signal.
981 - Added stop_editing() which replaces the
982 now-deprecated editing_cancelled()
983 * CellRendererText: Added language, ellipsize, and
984 ellipsize-set properties.
986 * - Added set_image(), wait_is_image_available(),
987 wait_for_image(), request_image(), wait_is_target_available(),
988 set_can_store(), and store().
990 - Added get_wrap_width(), get_row_span_column(),
991 get_column_span_column(), get_add_tearoffs(), set_add_tearoffs(),
992 get_focus_on_click(), set_focus_on_click(),
993 get_popup_accessible(), unset_row_separator_func().
994 * ComboBoxEntry: Added get_entry().
995 * ComboBoxText: Added set_active_text(), clear().
997 - Added set_secondary_text() for HIG-compliant dialogs.
998 - Added set_alternative_button_order().
999 * Entry: Added layout_index_to_text_index() and
1000 text_index_to_layout_index().
1001 * EntryCompletion: Added insert_prefix(), set_inline_completion(),
1002 get_inline_completion(), set_popup_completion(),
1003 get_popup_completion(), get_text_column()
1005 - Added FileChooserError exception class.
1006 - Added get/set_show_hidden().
1007 * FileChooserButton: Added get/set_width_chars().
1008 * FileFilter: Added add_pixbuf_formats().
1010 - Added get_icon_sizes().
1011 - Added IconThemeError exception class.
1012 * Image: Added set_from_icon_name(), get/set_pixel_size(),
1014 * Label: Added get/set_max_chars_width(), set/get_single_line_mode(),
1015 get/set_width_chars(), get/set_ellipsize().
1016 * Main: Added Main constructor that takes a Glib:: OptionContext,
1017 and add_gtk_option_group(option_context).
1018 * MessageDialog: Added set_secondary_text().
1019 * PixbufLoader: Added size_prepared signal.
1020 * Plug: Added default constructor.
1021 * ProgressBar: Added set/get_ellipsize().
1022 * SelectionData: Added targets_include_image(), get/set_pixbuf(),
1024 * Scale: Now works with libglademm.
1025 * Style: Added create() method.
1026 * TextView: Added get_iter_at_position().
1027 * TreeSortable: Added DEFAULT_UNSORTED_COLUMN_ID constant.
1028 * TreeView: Added get/set_fixed_height_mode(), get/set_hover_selection(),
1029 get/set_hover_expand(),
1030 * TreeModel::itereator: Add forward_search() and backward_search()
1031 overloads without the limit argument.
1032 * IconInfo: Added operator bool(), needed to check
1033 the result of IconTheme::lookup_icon().
1034 * Label: Added get/set_angle().
1035 * TreeView: Added append_column_numeric(), and
1036 append_column_numeric_editable().
1037 * Widget: Made set_parent(), and unparent() public instead
1038 of protected. Added a size_request() overload which is const
1039 and returns a value.
1040 * Window: Added drag_dest_add_text_targets(),
1041 drag_dest_add_uri_targets(), drag_dest_add_image_targets(),
1042 drag_source_add_text_targets(), drag_source_add_uri_targets(),
1043 and drag_source_add_image_targets().
1046 - Extra reference documentation.
1047 - Properties are now documented.
1050 * Display: Added supports_selection_notification(),
1051 request_selection_notification(), supports_clipboard_persistance(),
1054 - Added rotate_simple(), flip(), save_to_buffer().
1055 - Added create_from_file() overload that takes
1057 * PixbufFormat: Added is_scalable(), is_disabled(),
1058 set_disabled(), get_license().
1059 * Window: Added enable_synchronized_configure(),
1060 configure_finished(), set_focus_on_map().
1063 * New classes: Renderer
1064 * Color: Added operator bool().
1065 * Context: Added get/set_matrix(), get_font_map().
1066 * FontMetrics: Added get_underline_position(),
1067 get_underline_thickness(), get_strikethrough_position(),
1068 get_strikethrough_thickness().
1069 * Layout: Added get/set_ellipsize().
1072 * Relation: Added add_target().
1073 * RelationSet.hg: add_relation_by_type().
1074 * Text: Added get_range_extents(), get_bounded_ranges().
1076 gtkmm 2.6 is the result of hard work from the following developers:
1077 Murray Cumming, Bryan Forbes, and Albert Chin, Cedric Gustin, Roger Leigh, Ronald Lembcke, Gene Ruebsamen, Claudio Saavedra, Marco Scholten, Roel Vanhout, Chris Vine.
1082 * Gdk::DragContext: Avoid infinite loop. (Ronald Lembcke)
1083 * Gtk::TargetList: Fix typo to ctually define this. (Ronald Lembcke).
1084 * Examples now build with the IRIX MipsPro, and AIX compilers.
1085 * Check for the correct atk version in configure.
1088 - Properties are now documented, using the text from the
1090 - Added MessageDialog documentation.
1091 - Added CellRendererText::edited() documentation. (Antonio Coralles)
1092 - examples: book/treeview/editable_cells/:
1093 Demonstrated data-entry validation.
1098 * Now builds with the following compilers, in addition to
1099 the existing GNU g++, and Intel compilers:
1102 - Tru64 C++ V6.5-042
1103 - IRIX MIPSpro 7.4.2m
1104 (Older versions of all these compilers might also work.)
1105 (Murray Cumming, www.thewrittenword.com)
1106 * Now builds with MSVC++ .Net 2003 (gtkmm 2.4 already did).
1110 * Plug: Added default constructor. (Bryan Forbes)
1113 - examples/book/custom/custom_widget/:
1114 Now it works. (Marco Scholten)
1119 * Remove default signal handlers for new signals in 2.6,
1120 because adding virtual methods to existing classes would
1121 break ABI. (Murray Cumming, Bryan Forbes)
1122 * Stock: Wrapped several new stock items. (Bryan Forbes)
1123 * AboutDialog: Added logo_icon_name property. (Murray Cumming)
1124 * Clipboard: Added set_can_store() overload that takes no
1125 arguments. (Murray Cumming)
1126 * ComboBox: Added unset_row_separator_func(). (Murray Cumming)
1127 * FileChooserDialog:
1128 - Inherit from FileChooser interface. (Murray Cumming)
1129 - Added constructors which allow specifying backend. (Bryan Forbes)
1130 * IconView: Added the properties. (Murray Cumming)
1131 * Main: Added Main constructor that takes a Glib::OptionContext(),
1132 and Main::add_gtk_option_group(option_context).
1133 (Murray Cumming, Bryan Forbes)
1134 * TreeIter: Add forward_search() and backward_search()
1135 overloads without the limit argument.
1136 (Rob Page, Murray Cumming)
1139 * Color: Added operator bool().
1140 * Renderer: Added get_color().
1144 * Added some reference documenation for the new classes,
1145 plus several older classes.
1146 * Corrected documentation tarball and the link to it.
1148 - Added book/dialogs/aboutdialog example.
1149 - Added book/buttons/filechooserbutton example.
1150 - Used ProgressCellRenderer in book/treeview/list example.
1156 * Action: Added get_accel_path(). (Murray Cumming)
1157 * CellRendererText: Added language, ellipsize, and
1158 ellipsize-set properties. (Bryan Forbes)
1159 * TreeView: Added hover_expand and hover_selection
1163 * Display: Added supports_selection_notification(),
1164 request_selection_notification(), supports_clipboard_persistance(),
1166 * Pixbuf: Added rotate_simple(), flip(), save_to_buffer().
1167 * PixbufFormat: Added is_scalable(), is_disabled(),
1168 set_disabled(), get_license().
1169 * Window: Added enable_synchronized_configure(),
1170 configure_finished(), set_focus_on_map().
1173 * Relation: Added add_target().
1174 * RelationSet.hg: add_relation_by_type().
1175 * Text: Added get_range_extents(), get_bounded_ranges().
1180 * Builds against the final GTK+ 2.6 API.
1183 * CellRenderer.hg: Added stop_editing() which replaces the
1184 now-deprecated editing_cancelled().
1185 * CellView: Inherit from CellLayout. Removed set_value().
1186 Added convenience constructors.
1187 * FileChooserButton.hg: Added action parameters to constructors.
1188 * IconView: Added get/set_columns(), get/set_item_width(),
1189 get/set_spacing(), get/set_row_spacing(), get/set_column_spacing(),
1191 * Label: Added get/set_max_chars_width(), and property.
1192 * TextView: Added get_iter_at_position().
1195 * Pixbuf: Added create_from_file() overload that takes
1196 height and width. (Murray Cumming)
1199 * Reference API: Re-extracted C docs, so that the new API
1200 will be automatically documented. (Murray Cumming)
1202 - input: Use Glib::IOChannel. (Claudio Saavedra)
1207 * Button: Added set/get_image().
1208 * CellView: Removed set_cell_data().
1209 * Dialog: Added set_alternative_button_order().
1210 * FileChooserButton:
1211 - Now inherits from HBox, not Button.
1212 - Removed get/set_active().
1213 * IconInfo: Added operator bool(), needed to check
1214 the result of IconTheme::lookup_icon().
1215 * Label: Added get/set_angle().
1216 * TreeView: Added append_column_numeric(), and append_column_numeric_editable(),
1217 which allow more control over the formatting of numeric data than
1218 append_column() and append_column_editable().
1223 * Context: Added get/set_matrix().
1224 * FontMetrics.hg: Added get_underline_position(),
1225 get_underline_thickness(), get_strikethrough_position(),
1226 get_strikethrough_thickness().
1230 * example/book/input/: This now works. (Chris Vine)
1232 - TreeView selection: Use selected_foreach_iter()
1233 instead of selected_foreach(). (Teus Benschop)
1234 - Fixed some typos. (Claudio Saavedra)
1241 - Added more get and set methods and properties.
1243 * ActionGroup: Added translate_string().
1244 * Added CellRendererCombo, with example.
1245 * Added CellRendererProgress.
1246 * Clipboard: Added set_image(), wait_is_image_available(),
1247 wait_for_image(), request_image(),
1248 wait_is_target_available(), set_can_store(), and store()
1249 * ComboBoxEntry: Added get_entry().
1250 * ComboBoxText: Added set_active_text(), clear().
1251 * Dialog: Added alternative_button_order().
1252 * FileChooser: Added FileChooserError exception class.
1253 * FileChooserButton: Added get/set_width_chars().
1254 * FileFilter: Added add_pixbuf_formats().
1256 - Added get_icon_sizes().
1257 - Added IconThemeError exception class.
1259 - Added get_selected_items(), foreach().
1260 - Added set_text_column(), and set_pixbuf_column() overrides
1261 that take ModelColumns instead of ints.
1263 * Image: Added set_from_icon_name(), get/set_pixel_size(),
1265 * Label: Added set/get_single_line_mode(), get/set_width_chars().
1266 * MessageDialog: Added set_secondary_text().
1267 * Added MenuToolButton.
1268 * PixbufLoader: Added size_prepared signal.
1269 * ProgressBar: Added set/get_ellipsize().
1270 * SelectionData: Added targets_include_image(), get/set_pixbuf(),
1272 * Style: Added create() method.
1273 * Widget: Made set_parent(), and unparent() public instead
1274 of protected. Added a size_request() overload which is const
1275 and returns a value.
1276 * Window: Added drag_dest_add_text_targets(),
1277 drag_dest_add_uri_targets(), drag_dest_add_image_targets(),
1278 drag_source_add_text_targets(), drag_source_add_uri_targets(),
1279 and drag_source_add_image_targets().
1282 * Context: Added get_font_map().
1285 - Partly-updated "input" example. Bug
1286 - Added IconView and CellRendererCombo examples.
1291 gtkmm 2.5 wraps new API in GTK+ 2.5, and is API/ABI-compatibile with gtkmm 2.4.
1292 The new API is unstable, until this become the API/ABI-stable gtkmm 2.6 when
1293 GTK+ 2.5 becomes the API-stable GTK+ 2.6.
1295 * Pango: Layout: Added set_ellipsize(), get_ellipsize(), and
1298 - Added IconView, FileChooserButton, and CellView widgets.
1299 - Action: Added set_visible().
1300 - Entry: Added layout_index_to_text_index() and
1301 text_index_to_layout_index().
1302 - EntryCompletion: Added insert_prefix(), set_inline_completion(),
1303 get_inline_completion(), set_popup_completion(), get_popup_completion(),
1305 - CellRenderer: Added editing_started signal.
1306 - ComboBox: Added get_wrap_width(), get_row_span_column(),
1307 get_column_span_column(), get_add_tearoffs(), set_add_tearoffs(),
1308 get_focus_on_click(), set_focus_on_click(), get_popup_accessible().
1309 - Label: Added set_ellipsize(), get_ellipsize().
1310 - FileChooser: Added set_show_hidden(), get_show_hidden().
1311 - TreeSortable: Added DEFAULT_UNSORTED_COLUMN_ID constant.
1312 - TreeView: Added set_fixed_height_mode(), get_fixed_height_mode(),
1313 set_hover_selection(), get_hover_selection(), set_hover_expand(),
1319 * Gtk::Settings::get_default(): Correct reference-count error.
1321 * Gtk::ActionGroup, EntryCompletion, UIManager: Make constructors
1322 protected instead of private (Christopher Palm).
1323 * Examples: TreeView:
1324 - Added popup example, from gtkmm 2.2.
1325 - drag_and_drop: Correct vfuncs.
1327 - libglademm memory management.
1328 - Tell people to check pkg-config for 2.4, not 2.2.
1329 - Gtk::TreeSortable: Document sort function return value.
1334 * More gcc 3.4 build fixes. (Daniel Elstner)
1335 * Gtk::StockItem: Use the global translation domain when no other
1336 translation domain has been specified. (Daniel Elstner)
1337 * Gtk::Action, ToggleAction, RadioAction, IconTheme: Constructors are now
1338 protected so that you can derive from these classes.
1339 * Gtk::Container: Avoid warning about unimplemented GtkContainer::remove
1340 vfunc when deriving directly from Gtk::Container.
1345 * Win32: gdkmm: Link against the correct libpangomm library.
1347 * Gtk::TreeModel::iterator: Correct the operator--() implementation, so that
1348 it actually works. Remember, this is very slow compared to operator++().
1350 * Gtk::ComboBoxText, Gtk::ComboBoxEntryText: Implement the constructors that
1358 * ComboBox::get_active(): Properly initialize the iterator.
1360 * ComboBoxTextEntry: Don't add the text column twice. (Teemu Tervo)
1361 * ComboBoxText, ComboBoxEntryText::get_active_text(): Fix potential
1362 crash. (Murray Cumming)
1363 * TreeView::get_path_at_pos(): Correct memory mangement.
1364 (Murray Cumming, David)
1365 * Use GTHREAD_CFLAGS when appropriate. (Daniel Elstner)
1366 * gtkmm.h: Add comboboxentry.h and comboboxentrytext.h.
1369 Reference Documentation:
1370 * FileChooser: Mention the need to convert to UTF8. (Daniel Elstner)
1375 * Build fixes for gcc 3.4.0. (Murray Cumming)
1376 * Install gdkmmconfig.h in the correct place.
1378 * Install atkmm/private headers in the correct place.
1379 (Alexander Nedotsukov)
1381 Changes in gtkmm 2.4:
1385 There are several new widgets/classes, with examples:
1388 FileChooser, FileChooserWidget, FileChooserDialog, FileFilter.
1390 * Action-based Toolbar/Menu API:
1391 UIManager, Action, ToggleAction, RadioAction.
1394 ComboBox, ComboBoxEntry, ComboBoxText, CellLayout.
1396 * Auto-complete for Entry:
1399 * Other new classes:
1400 IconInfo, IconTheme TargetList.
1402 * New ATK, Pango, and GDK API wrapped.
1404 - Existing API improved:
1405 * Use of improved libsigc++ 2 API.
1406 * Removed useless key-binding signals.
1407 * Alignment: Added set/get_padding().
1408 * Entry: Added set/get_alignment().
1409 * Settings: New properties.
1410 * ListStore/TreeStores: Added insert_after(), which should be faster than insert().
1411 * TreeView: Added move_column_to_start()
1412 * TreeModel: Deriving is now easier, because the virtual functions now use C++ types.
1413 * TreeModel::iterator: Added operator--(), which is slow.
1414 * See the NEWS file for detailed API changes.
1415 * Various bugfixes - see ChangeLog.
1417 The following people made gtkmm 2.4 happen:
1420 Bryan Forbes (lots of very significant work)
1441 - Action: Added set_sensitive() and set_tooltip(). (Murray Cumming)
1442 - Settings: Added some properties. (Bryan Forbes)
1443 - TargetList: Added a create() method. (Bryan Forbes)
1444 - TreeModel: Rename 2 of the foreach() methods, to foreach_iter() and foreach_path(),
1445 because they are ambiguous with libsigc++ 2. (Murray Cumming)
1446 - ListStore/TreeStore: Added insert_after(), because it is apparently faster with
1447 many rows. (Murray Cumming)
1448 - IconTheme: Corrected refcounting of get_default() and get_for_screen().
1456 - create_tool_item(), create_menu(), and create_icon() return specific types.
1458 - Constructors: Give 0 instead of "" to GTK+ for empty strings, to make
1459 stock items work. (Murray Cumming)
1460 - Container: Keep managed child widgets alive when remove()ing them.
1462 - IconTheme: Wrapped the changed signal. (Murray Cumming)
1463 - FileFilter: It's a Gtk::Object, not a Glib::Object. (Murray Cumming)
1464 - TreeView: Added move_column_to_start(). (Andrew E. Makeev)
1465 - UIManager: Fixed typo in disconnect_proxy signal name. (Bryan Forbes)
1466 - many: Do the extra reference for several get_*() methods.
1467 (Bryan Forbes, Murray Cumming)
1471 - Reference documentation: Corrected some mention of null parameters, and g_free(),
1472 in generated-from-C docs. (Murray Cumming)
1473 - Book: Corrected typos and updated libsigc++ syntax. (Elijah Newren)
1474 - FAQ: Don't mention gtkmm 1.2 so much. (Elijah Newren)
1475 - Examples: Adde book/menus_and_toolbars, to show UIManager. (Murray Cumming)
1481 - Partial Sun Forte C++ build fixes.
1482 (Murray Cumming, Michael v.Szombathely)
1483 - gcc 3.4 (cvs) build fixes
1484 (Murray Cumming, Matthew Tuck)
1485 - win32 (cygwin) build fixes:
1487 - Doxygen is, again, not required when building from tarballs.
1490 * Gtk: RadioButton, RadioMenuItem: Added group_changed signal.
1494 _Lots_ of added, and improved reference documentation.
1500 - ComboBox: Added popup() and popdown(). (Murray Cumming)
1501 - ComboBoxEntry: Added a set_text_column() overload that takes a
1502 ModelColumnBase instead of an int.
1503 - Added ComboBoxEntryText, like ComboBoxText. (Murray Cumming)
1504 - Entry: Added set/get_alignment().
1506 - Removed set_folder_mode() and get_folder_mode(),
1507 which are no longer in GTK+. (Bryan Forbes)
1508 - Added set/get_preview_label(). (Murray Cumming)
1509 - Added IconInfo, TargetList (Bryan Forbes)
1510 - IconTheme: methods now use IconInfo. (Bryan Forbes)
1511 - Added Gtk::Stock::DIALOG_AUTHENTICATION stock item.
1513 - Scale: Added get_layout() and get_layout_offsets().
1515 - Added append(), prepend(), insert() overloads which take
1516 slots, so that signal connecting requires less code.
1517 - Removed old STL-style API, because the APIs do not
1518 co-exist well together at the GTK+ level.
1520 - TreePath: Corrected template typo found by gcc 3.4
1522 - Widget: Added add_mnemonic_labels(), remove_mnemonic_label(),
1523 list_mnemonic_labels(), draw_insertion_cursor().
1525 - Window: Added "role" property. (Bryan Forbes)
1527 - Several const corrections. (Murray Cumming)
1528 - Fixes to the libsigc++2 port. (Martin Schulze, Bryan Forbes)
1529 - Added --enable-examples configure option. (Bryan Forbes)
1532 - Added some TreeView reference documentation.
1536 - Drawable::draw_glyphs() now takes a c++ Pango::GlyphString.
1539 - get_children() now returns a C++ container instead of a GList.
1541 - get_internal_paint_info() now takes C++ parameters.
1543 - removed peek_children() because it's the same as get_children().
1547 - FontFace: Added list_sizes().
1548 - AttrIter: Added get_attrs().
1549 - FontFamily: Added is_monospace().
1550 - FontSet: Added foreach()
1551 - Language: Added includes_script().
1552 - Layout: Added set/get_auto_dir().
1557 - Now uses libsigc++ 2 (Murray Cumming)
1558 - Frame: Methods use C++ Gtk::Allocation instead of C GtkAllocation.
1560 - Added IconTheme. (Bryan Forbes).
1561 - Added TargetList. (Bryan Forbes)
1562 - TargetEntry: Use a C++ TargetFlags enum instead of the C enum.
1565 - drag_dest_find_target(), drag_dest_get_target_list(), drag_begin():
1566 Use C++ TargetList instead of C GtkTargetList. (Bryan Forbes)
1567 - Use C++ Gtk::Allocation instead of GtkAllocation, and
1568 Gtk::Requisition instead of GtkRequisition in methods.
1570 - Socket: Use C++ Gdk::NativeWindow type for method parametrs.
1574 - Colormap: Use C++ Gdk::Color instead of C GdkColor for method parameters
1576 - Device: Use C++ InputSource enum instead of the C GdkInputSource enum.
1578 - Display: Use ustring for target parameters instead of GdkAtom.
1580 - Added C++ NativeWindow typedef and used it instead of GdkNativeWindow
1583 * examples: book/dialogs/filechooser: Added buttons.
1588 - CellLayout: signals take a C++ CellRenderer* instead of a C
1591 - signal_drag_data_get and signal_selection_get now use the C++
1593 - Methods now take C++ Gdk::Region& instead of C GdkRegion*.
1594 - SelectionData: Added set() method overload with fewer parameters.
1595 - TreeDragSource: The drag_get_data vfunc now uses the C++
1597 - TreeIter (TreeModel::iterator): Added operator--().
1598 - Added const version of many ListHandle<> get_*() methods.
1604 * AccelMap: Added lock_path() and unlock_path().
1605 * Button: Added get/set_alignment().
1606 * CellLayout: Added reorder().
1607 * Clipboard: Added wait_for_targets(), and a simpler request_targets().
1608 * MenuShell: Added cancel().
1609 * ListStore, TreeStore: Added set_model_columns() for use by derived
1611 * TreeModel: vfuncs now use C++ types, and are documented.
1612 * TreeModelFilter: Wrapped set_modify_func().
1613 * Window: Added get_group() and set_accept_focus().
1616 * Colormap: Added get_system().
1617 * Device: Added get_name(), get_source(), get_mode() and get_has_cursor()
1618 * Display: Added set_double_click_distance() and get_default_group().
1619 * DragContext: Added get_targets().
1620 * Added rgb_*() methods.
1623 * LayoutLine: Added get_length(), get_start_index(), and get_layout().
1626 * Added Document, Hyperlink, Hypertext, and StreamableContent classes.
1629 * Atk::Text build fix for Intel compiler. (Takashi Takekawa)
1632 * devhelp file now installs correctly, with working hyperlinks.
1633 * Documented Gtk::AccelMap methods.
1634 * Documented Atk classes.
1635 * TreeView, TextView, and associated classes are almost fully documented.
1639 - build fix. (Billy O'Connor)
1640 - spec file fix. (Eric Bourque)
1646 * Action, ToggleAction, RadioAction:
1647 - Added create() method overloads without stock_id.
1648 - ToggleAction::create() has extra bool is_active parameter.
1649 * EntryCompletion: Wrapped match_selected signal.
1650 * Expander: Added get/set_markup()
1651 * Menu: Added set_monitor()
1652 * Menu::AccelKey is now Gtk::AccelKey
1653 * MessageDialog: Added set_markup().
1654 * Added FileChooser (interface), FileChooserWidget, FileChooserDialog, FileFilter, with example.
1656 * ComboBoxText now works, with example.
1657 * RadioToolButton: constructors properly implemented. (Murray Cumming, Billy O'Connor)
1658 * Toolbar: Old API deprecated. New API wrapped. Expect more change here.
1659 * TreeModel:: Add virtual iter_is_valid() method, now used by TreeModel::iterator operator bool().
1660 * TreeViewColumn: Added get_cell_position().
1661 * Widget: Wrapped get_accessible and screen_changed signals.
1663 * Pixbuf: Added get_formats()
1665 * Added Atk::init() and Pango::init(), to use when you don't want all of gtkmm.
1666 * Documentation: Corrected installation and links with glibmm documentation.
1667 * Deprecation: Define GTKMM_DISABLE_DEPRECATED to prevent use of deprecated API in your application.
1672 * Removed key-binding signals. (Murray Cumming)
1674 * Use of Gdk::Device and Gtk::SelectionData instead of C equivalents
1679 Action, ActionGroup, CellLayout, ComboBox, ComboxText, ComboBoxEntry, ColorButton, EntryCompletion,
1680 Expander, FontButton, RadioAction, RadioToolButton, ToggleAction, ToggleToolButton, ToolItem, ToolButton,
1683 * New API for existing classes:
1684 Gtk::Alignment: get/set_padding(). Useful for indenting Gtk::Frame contents.
1685 Gtk::Button: get/set_focus_on_click()
1686 Gtk::ButtonBox: get_child_secondary().
1688 - display_options() is now set_display_options().
1690 Gtk::CheckMenuItem: get/set_draw_as_radio()
1691 Gtk::Entry: get/set_completion()
1692 Gtk::EventBox: get/set_visible_window(), get/set_above_child()
1693 Gtk::IconSource: get/set_icon_name()
1696 Constructors: Added bool use_markup paramater after message parameter.
1697 This is an API change, and I'd leak to hear suggestions for alternatives.
1698 Gtk::TextBuffer: select_range()
1699 Gtk::TextIter (also known as Gtk::TextBuffer::iterator):
1700 Added *_visible_* versions of forwards/backwards methods.
1702 - get/set_overwrite(), get/set_accepts_tab()
1703 - Added WRAP_WORD_CHAR wrap mode.
1704 Gtk::TreeViewColumn (also known as Gtk::TreeView::Column):
1705 Added get/set_expand().
1707 - queue_resize_no_redraw(), get/set__no_show_all()
1708 - Added unset_fg(), unset_bg(), unset_font(), unset_text(), unset_base().
1709 - Added add_modal_grab(), remove_modal_grab(), get_current_modal_grab().
1711 - Added set_window() and set_allocation() for implementing new native widgets.
1713 Gtk::Window: set_default_icon(), set_keep_above(), set_keep_below()
1715 Gdk::Cursor: new constructor: Cursor(const Glib::RefPtr<Display>& display, const Glib::RefPtr<Pixbuf>& pixbuf, int x, int y)
1716 Gdk::Display: flush(), supports_cursor_alpha(), supports_cursor_color(), get_default_cursor_size(),
1717 get_maximal_cursor_size
1718 Gdk::PixbufLoader: create() now has extra bool mime_type parameter.
1719 Gdk::Window: set_keep_above(), set_keep_below().
1725 * OptionMenu: Fixed segfault when Menu remembers destroyed OptionMenu.
1727 * Gtk::Image::get_pixbuf(): Fixed reference counting error.
1729 * Pango::AttrList::insert(), insert_before(), change()): Pass a copy of
1730 the attribute parameter. (Martin Schulze)
1731 * Menu: Fixed memory leak when removing MenuItems.
1733 * Build fixage (Enrico Scholz, Cedric Gustin)
1735 - Dispatcher ported to Win32, we think.
1736 (Andrew Makeev, Cedric Gustin, Murray Cumming)
1738 - Updated book/idle and book/timeout.
1739 (Gene Ruebsamen, Murray Cumming)
1741 - Win32 installation instructions. (Gene Ruebsamen)
1742 - Glib::Module documented (Ross Burton)
1743 - Updated idle/timeout chapter. (Gene Ruebsamen)
1744 - Correct all automatic-from-GTK+ documentation that mentions
1745 _free() functions by mistake. (Murray Cumming)
1746 - Corrected typo in gtk_window_set_default(). (Oli Kessler)
1747 - gobj() methods documented.
1748 - Documented Glib::ListHandle, Glib::ListHandle, Glib::SListHandle.
1751 Changes in gtkmm 2.2:
1754 - New GTK+ 2.2 API wrapped:
1755 * Gtk::ListStore and TreeStore move(), reorder(), iter_is_valid()
1757 * Gdk::DisplayManager, Display, and Screen added.
1759 - Existing API improved:
1760 * atkmm rewritten and usable.
1761 * Gtk::Clipboard rewritten and now usable, with examples and documentation.
1762 * Gtk::TreeView drag-and-drop now usable, with examples, and documentation.
1763 * Gtk::TreeModelSort wrapped.
1764 * Gtk::Toolbar has a non-STL-style interface, like the other containers.
1765 * glibmm: Added string utility functions, get_appname(), file_open_tmp()
1766 and file_open_contents(). Glib::Markup added - this is not a real XML
1768 * Various bugfixes - see ChangeLog.
1770 The following people made gtkmm 2.2 happen:
1784 * Added Gdk::Window::pointer_grab(), pointer_ungrab(), keyboard_grab()
1785 and keyboard_ungrab(). (Murray Cumming)
1789 * Changed library binary version so libtool knows that
1790 2.2 is API compatible with 2.0. We did this wrong in the past
1791 so people MUST do this:
1793 rm -rf <prefix>/lib/lib{glib,pango,atk,gdk,gtk}mm-[12].0.so.[345]*
1795 where <prefix> is something like /usr/local or /opt/gnome2
1796 This will remove previous bad versions of 2.1.x.
1797 * atkmm: Lots of new interfaces wrapped. (Daniel Elstner).
1798 * Gtk::TextView:: Fixed bytes/length confusion in TextBuffer's
1799 insert_text callback. (Daniel Elstner)
1802 C->C++ docs conversion improved. (Daniel Elstner)
1806 * Gtk::Clipboard API finished, with examples, and a book chapter:
1807 http://www.gtkmm.org/gtkmm2/docs/tutorial/html/ch16.html
1808 (Murray Cumming, Daniel Elstner)
1809 * Gtk::TreeView: Some drag-and-drop API improvements, with examples.
1811 * Gtk::TreeModelSort added. (Daniel Elstner)
1812 * Glib::RefPtr: Added swap(). (Daniel Elstner)
1813 * Gtk::ColorSelection: catch exceptions. (Daniel Elstner)
1814 * Gdk::Pixmap: Prevent rare segfault in creation. (Daniel Elstner)
1815 * Gtk::AccelGroup::activate(): Implemented as a wrapper of
1816 gtk_accel_groups_activate(). (Daniel Elstner)
1817 * Glib::file_open_tmp() and Glib::file_open_contents() implemented.
1819 * win32: Glib::Dispatcher compilation fix. (Naofumi Yasufuku)
1822 * Gtk::Clipboard API usable, and demonstrated in examples/book/clipboard
1824 * new Gtk::ListStore and TreeStore move(), reorder(), iter_is_valid()
1825 methods added. (Daniel Elstner)
1826 * Gtk::FileSelection: get_history_pulldown() added. (Mark Jones)
1827 * Added Gtk::Widget::modify_bg_pixmap(). (Daniel Elstner)
1828 * Gtk::RcStyle: Added accessors for public struct fields. (Daniel Elstner)
1829 * Gtk::Style: Added accessors. (Daniel Elstner)
1830 * Gtk::ColorSelection: Added palette methods. (Daniel Elstner)
1831 * Gtk::Label::get_layout(): Corrected refcounting (Daniel Elstner)
1832 * Prevent leak when constructors throw exceptions. (Daniel Elstner)
1833 * Added Glib::get_application_name() and set_application_name()
1835 * spec file improved (Gary Peck)
1837 * Documentation updated automatically from latest C API docs.
1843 * atkmm: Major API corrections. It was unusable before, so we felt free to break
1844 Â the API. (Daniel Elstner)
1845 * Gtk::Clipboard: Now inherits from Glib::Object, so it should be used with
1846 Â Glib::RefPtr<>. This was unusable before, so we felt free to break the API.
1848 * Gtk::TreeModel::RowReference: It's now a "boxed type" so it can be copied.
1850 * Gtk::TreeView: some convenience method overloads added. (Daniel Elstner)
1851 * gdkmm: New classes and methods added, mostly to support multi-head.
1853 * gtkmm: New methods, for multi-head and some new TreeView methods.
1854 Â (Daniel Sundberg, Murray Cumming)
1855 * glibmm/stringutils.h: New utility functions. (Daniel Elstner)
1856 * Gtk::Toolbar: Now has non-STL-style interface - e.g. append().
1858 * Glib::Markup added. You probably want to use a real XML parser instead.
1860 * Spec file for RPMs corrected. (Walter H. van Holst)
1863 * Widget-specific and Internationalization chapters completed.
1864 * Book now has inline example code. (Murray Cumming, Daniel Elstner)
1865 * New book/dialogs example. (Murray Cumming)
1866 * examples: warnings fixed. (Daniel Elstner)
1869 * Lifetime fix: rare segfault involving destruction and hide() fixed.
1871 * TreeView::append_editable(): Now works with bool model columns.
1873 * reference-counting fixed in some vfuncs. (Daniel Elstner)
1876 gtkmm-2-0 branch created. This is HEAD, for gtkmm 2.2
1880 * Lifetime: Fixed segfault during destruction of non-scrollable children
1881 in ScrolledWindow. (Murray Cumming, Daniel Elstner)
1882 * Signals: Honor the blocked flag of the SigC::Connection.
1884 * Gtk::WindowGroup: Added missing create() method.
1887 - Uses -mms-bitfields option for use with GTK+ with MinGW gcc3
1888 - Temporarily #undef some badly named win32 macros.
1892 - Built HTML is now distributed in the tarball.
1893 (Murray Cumming, Daniel Elstner)
1894 - Documentation is installed in <prefix>/share/doc/gtkmm-2.0/
1896 - "Programming with gtkmm": widget-specific sections updated.
1902 * Now builds with gcc even with -Werror warnings. (Daniel Elstner)
1903 * Various low-level cleanups/improvements. (Daniel Elstner)
1904 * SUN-specific workarounds removed now that SUN fixed their
1905 compiler (Michael v. Szombathely)
1908 * Gtk::Box::pack_start() and pack_end():
1909 removed default argument values for the bool, bool overloads,
1910 to improve type-safety of the more useful PackOptions overload.
1912 * Gtk::Menu_Helpers::StockMenuElems can be used to create
1913 submenus. (Christof Pettig)
1914 * Gtk::AspectFrame: Added a constructor that uses AlignmentEnum.
1916 * Some minor Pango API corrections (Daniel Elstner)
1917 * Glib::ustring::clear(): Added. (Daniel Elstner)
1918 * Glib::Ascii::tolower() and Glib::Ascii::toupper() added.
1924 Updated almost all widget-specific sections.
1925 Used links to reference docs and to example source code.
1927 * FAQ: Updated and converted to DocBook XML.
1928 * examples: Rewrote many examples - see examples/book/
1930 * Glib::ustring non-standard methods documented.
1936 * GCC 2.95 build fixed. (Daniel Elstner)
1940 * Now requires libsigc++ 1.2.0
1941 * Gtk::Entry::get_layout(): refcounting fixed. (Daniel Elstner)
1942 * gcc 3.2 warnings fixes. (Daniel Elstner)
1943 * Gtk::TextBuffer::iterator::operator bool() now works.
1948 * create_mark() Added overload for anonymous marks.
1949 * iterator: Return values instead of references, for UTF8.
1950 * insert_interactive() and erase_interactive now return a pair,
1951 with a bool to indicate success, like std::map::insert().
1952 * insert_range()renamed to insert().
1953 * insert_range_interactive() renamed to insert_interactive().
1954 * delete_text() renamed to erase()
1955 * delete_interactive_text() renamed to erase_interactive()
1956 * delete_selection() renamed to erase_selection().
1957 * insert_child_anchor() now returns an iterator.
1958 * signal_insert_text() renamed to signal_insert().
1959 * signal_delete_range() renamed to signal_erase().
1960 * assign(): New alias method for set_text().
1963 * Added scroll_to_row() and scroll_to_column()
1964 * Added unset_hadjustment(),unset_vadjustment(), and
1965 unset_expander_column().
1966 Added set_cursor() overload taking a TreePath.
1967 * enable_drag_model_source() now takes a Gtk::TargetEntry instead
1970 * Glib::IOChannel StreamIOChannel: new wrappers.
1971 (Tassos Bassoukos, Martin Schulze, Daniel Elstner)
1972 * Glib::IOSource: Added create() overload that takes IOChannel.
1976 * Book: Some Sections on common widgets updated and rearranged,
1977 with screenshots. Example code is now linked instead of being
1980 Several examples rewritten and moved into examples/book.
1982 * demos: warnings in TextBuffer demo fixed. (Daniel Elstner)
1986 * Lifetime: On-stack child widgets are not destroyed during destruction of their
1987 containers. (Murray Cumming)
1988 * Gtk::TextMark::get_iter(): Corrected reference counting (Mike McEwan)
1991 * Glib::Source: Can now wrap existing GSource objects.
1993 * Glib::TimeVal: Convenience methods added. (Stephan Puchegger)
1994 * Glib::IConv: Added reset(). (Daniel Elstner)
1995 * Glib::Dispatcher: new constructor accepts an arbitrary Glib::MainContext.
1997 * Gdk: Added screen_width() and screen_height(). (Murray Cumming)
2003 * We now reuse ATK, GDK, and Pango reference documentation:
2004 e.g: http://www.gtkmm.org/gtkmm2/reference/html/namespacePango.html
2006 * README.SUN added (Michael v. Szombathely)
2009 * pangomm: New classes, and some corrections to existing classes.
2011 Excuse: Pangomm isn't used very much.
2012 * Gtk::TreeView::set_column() takes a Widget& instead of a GtkWidget*.
2014 Excuse: If anybody was using it already, they would have told us.
2015 * Gtk::TextBuffer::get_text(): Added overload that takes no iterators.
2017 Excuse: It's API addition.
2018 * Gtk::Style: Wrapped GTK+ vfuncs.
2020 Excuse: It's API addition.
2026 - Don't include strings.h on Win32.
2027 - Use -fnative-struct, as used by GTK+ DLLs.
2028 - Install win32 import libraries.
2030 - Don't try to register non-wrapped classes. (Murray Cumming)
2032 * Sun Forte build fixes. (Michael v. Szombathely)
2036 - Added Rectangle, Language, Color, Item, Glyph, Attributes, Attr, AttrItem.
2037 - Used these wrappers in other class methods.
2038 - Added some wrapper methods.
2040 Excuse for breakage: pangomm isn't used much directly so this shouldn't break much.
2041 * Added Gdk::Window::set_cursor(void) to reset the cursor. (Murray Cumming)
2042 Excuse: It's additional API so it doesn't break anything.
2045 * Lifecycle: Prevented double-destroying of GtkObjects. (Murray Cumming)
2046 * Pango::Layout: Added constructor and create() method. (Martin Schulze)
2047 * Gtk::Scale: set_draw_value() and get_draw_value() parameters are now bools.
2051 * Additions to PORTING. (Elke Meier).
2052 * PORTING is now distributed. (Bradley Bell)
2053 * docs/internal: Added documentation_generation.tx.t (Murray Cumming)
2054 * More reference docs for Scale, VScale, and HScale. (Ole Laursen)
2058 * Gtk::TreeView classes:
2059 - TreeView::append_column_editable() Workaround for gcc 2.95.3 compilation
2060 bug. (Martin Schulze)
2061 - TreeModel::foreach() return value marshalled properly. (Gergo Erdi)
2063 * lifecyle: C++ deletion really destroys GtkObjects again. (Murray Cumming)
2064 * Glib::Object: removed warnings when using libglademm. (Murray Cumming)
2065 * Gtk::manage(): Now emits warnings when you try to use it on a top-level
2066 Window. (Murray Cumming)
2069 - Removed old menu and combo examples.
2070 - Corrected use of Gtk::manage() on top-level windows.
2071 - Added cleaner combo example in example/book/combo.
2072 - rulers fixed. (Martin Schulze)
2075 - Gtk::Combo: Added ComboDrowDown class - it wraps the deprecated GtkList
2076 widget that is used in the GtkCombo interface. gtkmm coders can now set
2077 individual item strings and use widgets for Combo items. See
2078 examples/book/combo. (Martin Schulze)
2079 - Gdk::Drawable: draw_rectangle() and draw_arc(): Changed filled arg from
2080 int to bool. (Michael Koziarski)
2081 - Gdk::Color: *_p() renamed to get_*_p(). (Andreas Holzmann)
2082 - Gtk::TextMark: Added get_iter() as a convenience. (Martin Schulze)
2083 - Gtk::TextBuffer: delete_at_cursor() and insert_at_cursor() return the
2084 iterator, to be consistent with the other methods. (Martin Schulze)
2085 - Gtk::TextBuffer: paste_clipboard(), insert_child(), and
2086 create_child_anchor() parameters are now const. (Martin Schulze)
2087 - Gtk::Bin::add_label(): Added override, using enum. (Gergo Erdi)
2088 - Gtk::IconFactory and Gtk::StockItem: Changed string parameters to
2089 Gtk::StockID to allow use of Gtk::BuiltinStockID. (Murray Cumming)
2093 * Gtk::TreeView classes:
2094 - Added TreeModel::RowReference wrapper - it remains valid even when the
2096 - All methods that take a Model::iterator can also take a Model::Row.
2098 - Added TreeView::append_column_editable() method. It creates columns whose
2099 cells automatically store new values in the model when they are edited.
2101 http://www.gtkmm.org/gtkmm2/tutorial/html/ch10s02.html#id2837147
2102 - Added TreeModel::foreach() wrapper.
2103 - Added TreeView::remove_all_columns().
2104 - treestore demo: Parent rows don't show toggle cells anymore.
2106 * Box::pack_start() and pack_end() API:
2107 - Restore the old (bool, bool) methods as overload, so it's easier to
2109 - Changed the ORed flags to a simpler set of 3 mutually-exclusive enums.
2112 - Main Menu items are now accelerated automatically.
2113 - Popup menus need to be accelerated at the appropriate time - handy
2114 accelerate() overloads were created for this.
2115 - AccelMap: New wrapper.
2117 - ImageMenuElem items now show their icons automatically.
2120 - Top-level windows are now properly destroyed, and definitely can't be
2122 - Added test for this (Michael v. Szthombathely)
2123 - Prevented some double-destruction of signal connections.
2124 - Prevented recreation of 2nd C++ instances by Glib::wrap() during
2125 destruction of the C instances.
2126 - Prevented calling of signal handlers of destroyed C++ instances.
2127 (Murray Cumming, Valgrind)
2128 - Corrected refounting of some get*() methods. (Christof Pettig)
2129 * Sun Forte compiler fixes:
2130 - Examples use more lengthy code when Sun's compiler can't handle the
2131 templated TreeView methods.
2132 - Explicit specification of templated Glib::wrap() specializations.
2133 (Michael v. Szthombathely, Murray Cumming)
2134 * gcc 3.1 fixes (Jarek Dukat)
2135 * Added vast number of const get_*() const overloads. (Jarek Dukat)
2136 * Added alignment enum, used in overloads as an alternative to 0.5, 1.0, etc.
2138 * Gtk::Style: Added const overloads of get_*gc() methods.
2140 - Allow use of a local DocBook stylesheet, for people who aren't connected.
2141 (Marcelo E. Magallo)
2142 - Added Gtk::Main::run(window) overload reference docs.
2143 (Moreten Brix Pedersen)
2144 - Added RefPtr<> reference docs. (Ole Laursen)
2145 - Prevented reuse of C docs that talk about free-ing stuff. (Murray Cumming)
2146 * autogen fix for GTKMM_VC_PERL_VERSION problem. (Marcel E. Magallo)
2147 * Corrected library versioning of the internal gtk_extra_defs library.
2149 * FontSelection example fixed. (Morten Brix Pedersen)
2155 ( See http://www.gtkmm.org/gtkmm2/ )
2156 book: Added TreeView chapter.
2157 Added custom signals section.
2159 reference: Added Menus and TextView groups.
2160 Added vast amounts of class documentation, and method
2161 documentation reused from GTK+.
2162 (Murray Cumming, James Henstridge, Morten Brix Pedersen)
2163 PORTING: Additions and clarifications. (Jarek Dukat, Morten Brix Pedersen)
2164 examples: Added menus and custom signals examples. (Murray Cumming)
2165 Corected original menu examples. (Liam Girdwood)
2166 internals: Corrected _DEPS description. (Marcelo Magallon)
2167 * Gtk::TreeView classes:
2168 - Models columns can be accessed by number, for dynamically-created models.
2169 - Added overrides to take TreeModel::Rows as well as TreeModel::iterators.
2170 - Row: Added operator bool().
2172 * Gtk::TextView classes
2173 - Added TextBuffer:: typedefs for Tag, TagTable and Mark.
2174 - TextBuffer: insert() methods now return the new iterator instead of
2175 modifying the input iterator, to be more STL-like.
2176 - Renamed get_start_iter() and get_end_iter() to begin() and end().
2177 - Made get() methods const.
2179 * Gtk::Table: The STL-style list now works. It probably never worked before,
2180 even in gtkmm 1.2. (Murray Cumming)
2181 * Gtk::RadioButton::Group: Simplified copying/passing semantics.
2182 * Gtk::Menu: Show stock menu item icons. (Christof Petig)
2183 * Glib::IConv: constructor handles errors and throws appropriate exceptions.
2185 * Sun Forte compiler fixes. (Murray Cumming)
2186 * vfunc wrapper generation simplification. (Murray Cumming)
2187 * Gtk::Invisible: Correct constructor bug discovered by
2188 Tony <a_a_c@bellsouth.net> (Murray Cumming)
2189 * gcc 3.1 fixes. (Jarek Dukat, Gergo Erdi)
2194 * Win32 support. (Cedric Gustin, Daniel Elstner)
2195 * STL-style interfaces: Use of references rather than pointers as value types,
2196 to avoid double indirection when dereferencing iterators. (Martin Schulze)
2197 * vfunc wrappers: All overrideable vfuncs now have the "_vfunc" suffix, and
2198 they all have separate invoker methods, which are usually wrappers of the C
2199 invoker functions. (Daniel Elstner)
2200 * Gtk::Box STL-style interface uses Gtk::AttachOptions instead of bools,
2201 for consistency. (Jarek Dukat)
2202 * Added examples/gdk, which shows gdkmm drawing code. (Alain Rouge)
2203 * Added Gdk::RgbCMap wrapper. (Murray Cumming)
2204 * Added Pango::GlyphString wrapper. (Murray Cumming)
2205 * Many more get_*() methods are now const. (Jarek Dukat)
2206 * Gtk::TextBuffer::create_mark() reference-count bug fixed. (Andrew E Makeev)
2207 * Gdk::Drawable: Compilation fix for Sun's Forte compiler. (Michael v. Szombathely)
2208 * Added Glib::Module wrapper. (Murray Cumming)
2209 * Improved gtkmmproc documentation. (Murray Cumming)
2210 * Distribute CHANGES files. (Morten Brix Pedersen)
2215 * Distribute cell renderer example header files. Doh! (Daniel Elstner)
2216 * Rename several remove_foo() methods to unset_foo(), to avoid confusion with
2217 container operations. (Daniel Elstner)
2218 * Gtk::FileSelection::set_filename(): Change argument type to std::string, to
2219 follow the GTK+ inconsistency fix -- both get_filename() and set_filename()
2220 work with on-disk encoding now. (Daniel Elstner)
2221 * Glib::Mutex::Lock and friends: Replace the bool acquire_immediately
2222 parameter with overloaded ctors. See the docs, it should be easier now.
2227 * Major low-level GObject changes to allow on-the-fly GType registration. This allows
2228 creation of custom TreeView CellRenderers in C++, and should allow implementation of
2229 GTK+ Interfaces in C++. See examples/cellrenderercustom/
2231 * Gtk::Notebook: Restored the STL-style interface, but this time properly.
2233 * Gtk::TreeSortable: set_sort_func() now uses SigC C++ Slots instead of C callbacks.
2235 * Glib::Dispatcher: A special libsigc++ signal for easy inter-thread communication through
2236 a pipe. See examples/thread/dispatcher and
2237 http://www.gtkmm.org/gtkmm2/reference/html/classGlib_1_1Dispatcher.html#_details
2239 * Added optimisation that allows us to use C++ types even in default signal handlers, so
2240 there should soon be no C types anywhere in the gtkmm interface. (Daniel Elstner)
2241 * Added comments to the C<->C++ callback hookups. (Murray Cumming)
2242 * Gtk::MenuShell and MenuBar implementation cleanup. (Daniel Elstner)
2243 * Gdk::Pixmap/Bitmap implementation simplified. (Daniel Elstner)
2245 - new enum Gtk::WidgetFlags.
2246 - width() renamed to get_width(). Likewise height().
2248 * Gdk::Drawable: More use of C++ types, and constness fixes. (Daniel Elstner)
2249 * Gtk::Style: Wrap gtk_paint_*() functions. (Daniel Elstner)
2251 - Implement Gtk::Stock::add().
2252 - StockItem: Allow checking for null.
2254 * Gtk::Paned::pack(): Uses the AttachOptions enum instead of unreadable bools.
2256 * Removed need for wrap_specific_type(). (Daniel Elstner)
2257 * Removed Gtk::Kit typedef. Just use Gtk::Main. (Daniel Elstner)
2261 * Gtk::TreeView and friends:
2262 - Namespaced TreeIter, TreePath, TreeViewColumn, etc, as TreeModel::iterator,
2263 TreeModel::Path, TreeView::Column, etc. (Murray Cumming)
2264 - Separated TreeModel::iterator into iterator and Row, obtained by
2265 dereferencing the iterator. This is more STL-like. (Daniel Elstner)
2266 - Some Model methods moved to Row, and set_value()/get_value() replaced by
2267 array-style operator[]. (Daniel Elstner)
2268 - Added overrides to allow for simple model-to-view column mapping without
2269 repetitive specifying of TreeViewColumns and CellRenderers and attributes.
2270 Examples and demos therefore greatly simplified. (Murray Cumming)
2271 - TreeModel::iterator comparison problems fixed. (Daniel Elstner)
2272 - Added Path(iterator&) constructor.
2273 - All get_*() methods are now const. (Murray Cumming)
2274 * Gtk::Box::pack_start() and pack_end(): Now uses AttachOptions flags instead
2275 of two bool paratemers, to make code more readable and to be consistent with
2276 Gtk::Table::attach(). (Murray Cumming)
2277 * Gtk::Notebook: STL-style interface remoeved because GTK+ doesn't expose
2278 enough internals anymore. The simple append/prepend interface remains.
2280 * Some enums placed inside their related classes. (Daniel Elstner)
2281 * Glib::FileError enums renamed to avoid clashes with C #defines on some
2282 platforms (Daniel Elstner)
2283 * Fixed refcount problem with manage() ed child widget destruction.
2285 * test suite started. (Daniel Elstner)
2286 * Glib::Value and properties simplifications. (Daniel Elstner)
2287 * Gtk::Dialog: Dialogs are now hidden when run() finishes. (Murray Cumming)
2289 2002-05-01 gtkmm 1.3.13:
2291 * Mostly just a release to sync with a new gnomemm release.
2292 * Some glibmm code is now autogenerated with gtkmmproc (Daniel Elstner)
2293 * Improvements to enum generation (Daniel Elstner)
2294 * Improvements to glibmm character conversions (Daniel Elstner)
2295 * gtk-demo segfault fixed. (Martin Schulze)
2297 2002-04-27 gtkmm 1.3.12:
2299 * Many many fixes for Sun's Forte C++ compiler.
2300 (Michael v. Szombathel, Daniel Elstner, Murray Cumming)
2301 * StockID API improved and used more consistently.
2302 (Martin Schultze, Daniel Elstner)
2303 * Glib::ustring conversion improvements (Daniel Elstner)
2304 * gtkmmproc improved for use in bonobomm. (Murray Cumming)
2305 * Gdk::Point wrapper improved. (Martin Schulze)
2306 * Gtk::Adjustment constructor fixed. (Murray Cumming)
2307 * Gtk::TreeView:methods that took function pointers now take SigC::Slots.
2309 * Less #including of C headers in gtkmm headers, so less pollution of the
2310 global namespace. (Murray Cumming)
2311 * Menu API more complete and consistent. (Martin Schultze)
2312 * Gtk::Dialog::get_action_area() now does. (Murray Cumming)
2313 * GType changes to allow libglade/libglademm cooperation. (Murray Cumming)
2314 * Reference documentation:
2315 - Stock IDs in HTML:
2316 http://gtkmm.org/gtkmm2/reference/html/namespaceGtk_1_1Stock.html#a6
2317 - Makefile dependencies fixed for faster docs building.
2318 * General API review.
2320 2002-04-13 gtkmm 1.3.11:
2322 * gdkmm.h: No longer includes non-existent files. (Daniel Elstner)
2323 * Build: Non-cvs users don't need perl. (Daniel Elstner)
2324 * glibmm: pkg-config now reports libgobject for linking. (Murray Cumming).
2326 2002-04-11 gtkmm 1.3.10:
2328 * Now builds with {G,GDK,GTK}_DISABLE_DEPRECATED - some methods removed;
2329 entirely removed Gdk::Font and Gtk::Progress. (Daniel Elstner)
2330 * Reference documentation:
2331 - Some automatic C->C++ conversion when reusing C reference documentation:
2332 - enums and flags grouped together.
2333 - html post-processed to produce "int& someint" instead of "int &someint".
2334 - Some example code merged into the refernce docs.
2337 - Gtk::TreeIter is a bit more like a STL iterator.
2338 - Gtk::ListStore has a more STL-like interface.
2339 - Gtk::TreeModelColumn - new class used to contain column type and number.
2340 - Gtk::TreeModelColumnRecord - new class to contain all TreeModelColumns.
2341 - examples/demos updated accordingly.
2343 * gtkmm now uses its own enums, in the Gtk namespace. (Daniel Elstner)
2344 * Gtk::ProgressBar: removed deprecated Adjustment stuff, leaving just the
2345 new fraction-orientated interface. (Daniel Elstner)
2346 * Some .hg format changes needed by bonobomm. (Murray Cumming)
2347 * new Glib::IOSource for watching file descriptor. (Martin Schultze)
2349 2002-03-27 gtkmm 1.3.9:
2351 * Custom Signal Proxies simplified, implementing only custom C callback
2352 functions and specifying them to the signal proxy constructors.
2354 * Complete recoding of Boxed Types wrappers, not using generic _copy
2355 and _free methods functions when they aren't necessary, and sometimes
2356 inheriting directly from the underlying struct. (Daniel Elstner)
2357 * gtk-demo compilation fixed. (Daniel Elstner)
2358 * gtk-demo stock browser part rewritten and working. (Matthew Walton)
2359 * Properly implemented enum and flags property proxies. (Daniel Elstner).
2360 * Reference documentation:
2361 - some gtk+ docs are now merged in automatically, but we don't yet
2362 have acccess to the stuff in gtk+'s tmpl/*.sgml files.
2364 - Added class documentation, based on docs in GTK+.
2365 - Custom headers and footers. (Paolo Pinto)
2366 * Added Gtk::TreeSortable, Gtk::TreeDragDest, and Gtk::TreeDragSource
2367 interface wrappers. (Murray Cumming)
2368 * Gdk::Pixbuf: render* method args are now const-correct, which allows
2369 casting of temporary instances. (Murray Cumming)
2370 * Gtk::MessageDialog: changed argument order in constructors, to
2371 allow sensible defaults. (Murray Cumming)
2373 2002-03-11 gtkmm 1.3.8:
2375 * Generated C++ source code is now distributed, so that we can use extra
2376 dependencies, such as perl modules, when generating the C++ source.
2378 * Signals now use C++ types. We've said it before, but this time we meant it.
2380 * Added an exception hierarchy, used to wrap GError. Used in
2381 Gdk::Pixbuf and demonstrated in demos/pixbuf-demo. (Daniel Elstner).
2382 * Drag and Drop now wrapped, with examples, and the first draft of a chapter in
2384 http://gtkmm.sourceforge.net//gtkmm2/tutorial/html/ch12.html
2386 * Revised Gtk::Menu API - accelerators now work. (Andreas Holzmann)
2387 * Glib::ustring can now be used directly with standard streams, converting
2388 to the current locale where necessary. (Daniel Elstner)
2389 * Added wrappers for glib conversion functions. (Daniel Elstner)
2390 * Initial GtkClipboard wrapper. (Murray Cumming)
2391 * Simplified checks for standard library features (Daniel Elstner)
2395 2002-02-24 gtkmm-1.3.7:
2397 * operator=() for BoxedTypes improved. (Daniel Elstner)
2398 * pangomm api review, and use of generic intermediate ListHandle containers.
2399 for method arguments instead of just std::list. (Gergo Erdi)
2400 * Gdk::Cursor constructor now public. (Andreas Holzmann)
2401 * property.get_value() improved. (Andreas Holzmann)
2402 * New wrappers for Atk::Relation, Atk::RelationSet, and Atk::StateSet.
2404 * Glib::ustring documentation and case conversion methods.
2406 * Improvements to ListHandle generic intermediate containers.
2408 * Gtk::TreeModel: several methods now take C++ arguments instead of C types.
2410 * Build fails on failed m4 conversions. (Daniel Elstner)
2413 2002-02-20 gtkmm-1.3.6:
2415 No major changes - mostly just a workaround for gcc 2.95.4.
2417 * gcc 2.95.4 seems to have a problem with a use
2418 of RefPtr::operator bool() in textbuffer.cc, so
2419 we've used is_null() as a workaround. This is mysterious.
2420 * configure.in mentioned a Makefile.am that isn't distributed.
2421 * Added examples/book, which will contain examples from the
2423 2002-02-18 gtkmm-1.3.5:
2424 * Tutorial converted to latest DocBook XML, with some improvements of the text.
2426 * Examples can be built all at once. Some use of deprecated widgets removed.
2428 * Gdk::Cursor: Gdk::Color args are now const. (Andreas Holzmann)
2429 * Toolbar: StockElem can now be used to add stock items to toolbars.
2431 * Gdk::Bitmap now derives from Gdk::Pixmap, allowing a Bitmap to be used
2432 anywhere that a Pixmap can be used. This is the intention in GTK+.
2433 (Murray Cumming, Andreas Holzmann)
2434 * Gtk::TextBuffer improvements (Daniel Elstner)
2435 * More wrapping of Atk::Object (Murray Cumming)
2436 * Documentation overview page:
2437 http://gtkmm.sourceforge.net/gtkmm2/
2440 2002-01-26 gtkmm-1.3.4:
2442 * Removed deprecated widgets such as CList, CTree, Text, etc. (Murray Cumming)
2443 * 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.
2445 * Menu Elements: Menu Elements can now be stored in STL containers. Fixed rare memory leak
2447 * Improved, clearer, more versatile intermediate handle types, for lists/vectors/arrays of strings/widgets etc.
2449 * 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.
2451 * Improved Gtk::TreeView and Gtk::TextView API, using more C++ types. (Murray Cumming, Daniel Elstner).
2454 2002-01-10 gtkmm-1.3.3:
2456 * Interface methods use C++ types:
2457 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)
2458 * Property change notification:
2459 Added changed signal to property proxies. For instance, you can now do:
2460 something.property_example().signal_changed().connect( ... ).
2462 * Simplified inheritance hierarchy:
2463 Glib::ObjectBase derives from SigC::Object, thus Glib::Object no longer needs to derive from SigC::Object by using Multiple Inheritance. (Daniel Elstner)
2466 2001-12-28 gtkmm-1.3.2:
2468 * No more gint, gdouble, gfloat, glong:
2469 We use normal C++ types instead. (Murray Cumming)
2470 * Signals are now used via accessors, and SigC::slot() requires a reference to the instance instead of a pointer.
2472 gtkmm 1.2: button.clicked.connect(SigC::slot(this, &Something::somemethod));
2473 gtkmm 1.3: button.signal_clicked().connect(SigC::slot(*this, &Something::somemethod));
2475 * Properties are used via accessors. For instance:
2476 someobject.property_something().set_value(2);
2478 * Removed any uses of Glib::nstring:
2479 We provide an additional method instead of allowing a null value. e.g. remove_something() instead of
2480 set_something(0). (Daniel Elstner)
2481 * Improved gtkmmproc installation:
2482 For use by, for instance, libgnomeuimm and libgnomecanvasmm. (Murray Cumming)
2483 * Menu wrappers updated for GTK+2. (Murray Cumming)
2484 * Another gtkmmproc overhaul. It now detects more .defs format errors, warns about as yet unwrapped functions,
2485 and is faster. (Karl Nelson)
2486 * More api review and fixes. (Murray Cumming, Daniel Elstner, Gergo Erdi, Karl Nelson)
2488 Note also that we use a newer version of libsigc++-1.1 which contains some segfault-related fixes.
2491 2001-11-28 gtkmm-1.3.1.
2493 * Properties ( e.g. someobject.property_something.set_value(2); ) (Murray Cumming)
2494 * ListHandler (Use almost any std container where GTK+ takes/returns a GList*) (Daniel Elstner)
2495 * TreeView and TextView wrappers, including multiply-inherited 'Interface' classes, such as Gtk::TreeModel
2497 * gtk-demo: C++ version of the big new gtk+ demo that shows its own source code.
2498 This demonstrates TreeView, TextView, and Pango, among other things. (Murray Cumming)
2499 * Reference documentation, using doxygen:
2500 http://gtkmm.sourceforge.net/gtkmm2/reference/html/
2502 * Gtk::Window no longer self-destructs. The bool return value of Gtk::Window::signal_delete_event now
2503 determines whether the window will be hidden, not whether it will be destroyed. (Daniel Elstner)
2504 * Gtk::Main::run(Gtk::Window& window):
2505 Allows you to specify a main application window. The application will quit when that window is hidden.
2507 * Lots and lots of API review. See our progress here:
2508 http://cvs.gnome.org/bonsai/cvsblame.cgi?file=gtkmm-root/base/api_status.txt&rev=&root=/cvs/gnome
2509 (Murray Cumming, Daniel Elstner, Gergo Erdi)
2510 * We can now use either automake 1.4p5 (like the rest of GNOME2) or automake 1.5 (Daniel Elstner)
2511 * Glib::ustring, which interoperates with std::string now has even more of the std::string interace.
2513 * Fixed the library names and the names reported by pkgconfig, for better co-existence with gtkmm 1.2.
2517 gtk-demo crashes on exit with warnings.
2518 gtk-demo "stock browser" doesn't work yet.
2519 Gtk::TreePath(ustring) constructor seems to have problems - see the TODO comments in demos/gtk-demo/example_treeview_editable_cells.cc
2523 2001-10-26 gtkmm-1.3.0.
2525 Initial release, introducing:
2529 * Renamed default signal handlers (on_ prefix).