gtkmm 3.95.1 released



gtkmm is the C++ interface for the GUI library GTK.
Highlights include type-safe callbacks, and a comprehensive set of widgets
that are easily extensible via inheritance.

Home page: http://www.gtkmm.org
Download: https://download.gnome.org/sources/gtkmm/
Documentation: https://developer.gnome.org/gtkmm/3.95/


*** Changes

3.95.1 (unstable):
Distro packagers should probably not package this yet.
Gtkmm 3.95.1 is a C++ binding of gtk 3.96.0.

Gdk:
* Add GLTexture, Paintable, Snapshot
  Texture implements the Paintable interface
  (Kjell Ahlstedt)
* Gdk::Window has been renamed to Surface
  (Kjell Ahlstedt)
* Remove Gdk::Cairo::create_surface_from_pixbuf().
  DrawingContext: Remove get_surface(), is_valid() and
    get_drawing_context_from_cairo_context().
  Surface: Remove create_similar_image_surface().
  (Kjell Ahlstedt)
* Add CairoContext. Remove DrawingContext.
  DrawContext: Add begin_frame(), end_frame(), is_in_frame()
    and get_frame_region().
  GLContext: Remove get_damage().
  Surface: Remove begin_draw_frame() and end_draw_frame().
    They have been moved to DrawContext.
    Add queue_expose() and create_cairo_context().
  (Kjell Ahlstedt)
* Remove DragContext::drop_reply().
  (Kjell Ahlstedt)
* DragContext: Add enum DragCancelReason.
    Add drag_drop_done(), get_drag_surface(), get_display().
    Add properties and signals.
  Mnitor: Add signal_invalidate().
  Texture: Add save_to_png().
  (Kjell Ahlstedt)
* Add Drop and move some methods there from DragContext.
  Replace EventDND::get_drag_context() by EventDND::get_drop().
  Surface: Remove get/set_events() and get/set_device_events().
  (Kjell Ahlstedt)
* Clipboard, Drop: Add read_async() and read_finish()
  (Kjell Ahlstedt)
* Rename DragContext to Drag
  (Kjell Ahlstedt)
* Drag: Remove get_suggested_action() and signal_action_changed().
    Add property_selected_action(), property_actions(), property_surface().
  Remove EventExpose.
  Surface: Remove withdraw(). Add move_to_rect(), signal_move_to_rect(),
    signal_size_changed(), signal_render(), property_mapped().
  (Kjell Ahlstedt)
* Drag: Move set_icon_name() and set_icon() to the new Gtk::DnD namespace.
  (Kjell Ahlstedt)
* RGBA: Add a constructor RGBA(double r, g, b, a)
  (Daniel Boles) Issue #40
* RGBA::set_hsv(): Properly interpret hue 360° as red
  (Daniel Boles) Issue #42
* Add DevicePad and DeviceWithPad
  (Kjell Ahlstedt)
* Device: Remove warp(), get_position(int& x, int& y),
    get_surface_at_position(int& x, int& y).
    Add get_surface_at_position(double& x, double& y).
  Surface: Remove set_role(),
    get_device_position(..., int& x, int& y, ...),
    set/get_group(), invalidate_rect(), invalidate(),
    invalidate_region(), set_skip_taskbar_hint(),
    set_skip_pager_hint(), set_urgency_hint().
    Add property_frame_clock().
  (Kjell Ahlstedt)

Gtk:
* Object::_release_c_instance(): Don't release if in a container
  (Kjell Ahlstedt) Bug #773642 comments 20-22
* Entry: Remove set/get_cursor_hadjustment()
  (Kjell Ahlstedt)
* Expander: Remove get/set/property_label_fill().
  (Kjell Ahlstedt)
* Overlay: Add get/set_measure_overlay() and child_property_measure().
  (Kjell Ahlstedt)
* Settings: Remove property_gtk_modules().
  (Kjell Ahlstedt)
* Widget: Add two drag_source_set_icon() overloads
  (Kjell Ahlstedt)
* Remove WidgetCustomDraw and WidgetCustomSnapshot.
  Snapshot: Add clips_rect(const graphene_rect_t*).
  Widget: Remove queue_draw_area(), queue_draw_region(),
    get_clip(), draw() and set_realized().
  (Kjell Ahlstedt)
* Snapshot: Remove push() and clips_rect(). Add create() and push_debug().
    Add append_texture() and append_cairo().
    Only push_debug() has a 'name' parameter.
  (Kjell Ahlstedt)
* Remove Scrollbar::get_wheel_delta().
  (Kjell Ahlstedt)
* Add EventControllerKey, EventControllerMotion and EventControllerScroll.
  Widget: Remove signal_key_[press|release]_event().
  Widget: Add add_controller() and remove_controller().
  (Kjell Ahlstedt)
* Image: Add more constructors
  (Kjell Ahlstedt) Issue #35 (Daniel Boles)
* Container: Add signal_set_focus_child().
  FontChooser: Add set_language().
  Printer: Add get_hard_margins(const PaperSize& ...).
  SearchBar: Add set/unset/get_key_capture_widget().
  SearchEntry: Add set/unset/get_key_capture_widget().
  (Kjell Ahlstedt)
* Image: Remove set/get/property_keep_aspect_ratio() and
    set/get/property_can_shrink().
  (Kjell Ahlstedt)
* Add Picture and WidgetPaintable
  (Kjell Ahlstedt)
* StackSwitcher: Remove property_icon_size().
  StyleContext]: Remove set/get/property_frame_clock().
  (Kjell Ahlstedt)
* Add MediaControls, MediaFile, MediaStream and Video
  (Kjell Ahlstedt)
* StyleContext: Remove render_slider().
  (Kjell Ahlstedt)
* Add Gtk::GestureStylus
  (Kjell Ahlstedt)
* CssProvider: Remove get_default().
  Menu: Remove 3 popup() overloads.
  StyleContext: Remove render_frame_gap().
  (Kjell Ahlstedt)
* Add namespace Gtk::DnD.
  Widget: Move drag_get_source_widget() and drag_set_as_icon() to Gtk::DnD.
    Add drag_dest_[set|get]_track_motion() and
    drag_source_[set|get]_target_list().
  (Kjell Ahlstedt)
* Container: Remove has/get/set/unset_focus_chain()
  (Kjell Ahlstedt)
* Window: Move to a proper get_accel_groups()
  (Daniel Boles) Bug #784390 = Issue #18 (Maurice van der Pot)
* Add Gtk::make_managed<T>(args...)
  (Daniel Boles) Bug #795816 = Issue #33
* Application: Add property_screensaver_active().
  Widget: Add observe_children(), observe_controllers().
    Remove signal_event(), intersect().
  Window: Add get_toplevels().
  (Kjell Ahlstedt)
* ModelButton: Fix property_icon(). Add property_use_markup().
  Tooltip: Remove trigger_tooltip_query()
  (Kjell Ahlstedt)
* ActionBar: Remove child_property_position().
  Box: Remove pack_start(), pack_end(), reorder_child().
    Add insert_child_after(), insert_child_at_start(),
    reorder_child_after(), reorder_child_at_start().
  ComboBox: Remove set/get/property_wrap_width(),
    set/get/property_row_span_column(),
    set/get/property_column_span_column().
  Menu: Remove attach().
  Widget: Replace the insert_before/after() overloads without
    a sibling parameter with insert_at_start() and insert_at_end().
    Add set_expand().
  (Kjell Ahlstedt)
* Remove all child properties.
  (Kjell Ahlstedt)
* Remove ButtonBox, Invisible, Layout.
  Add AssistantPage, StackPage, NotebookPage, Root, SelectionModel,
  SingleSelection, PadController, PadActionEntry, PasswordEntry,
  LayoutManager, LayoutChild, BinLayout, BoxLayout, GridLayout,
  GridLayoutChild, CssLocation
  (Kjell Ahlstedt)
* Assistant: Remove set/get_has_padding().
  Container: Remove check_resize() and signal_check_resize().
  (Kjell Ahlstedt)
* Entry: Remove signal_activate().
  Add property_enable_emoji_completion().
  (Kjell Ahlstedt)
* Entry, SpinButton: Remove set/get_text(), set/get_width_chars()
    and set/get_max_width_chars().
* Add the GTKMM_CHECK_VERSION() preprocessor macro
  and remove macros that check the GTK version. Issue #5
  (Kjell Ahlstedt) Bug #580302 = Issue #5 (Hubert Figuière)
* EventControllerKey: Add get_focus_origin/target(),
    property_is_focus(), property_contains_focus().
  EventControllerMotion: Add get_pointer_origin/target(),
    property_is_pointer_focus(), property_contains_pointer_focus().
  Widget: Add get_focus_child(). Remove signal_focus().
  Window: Remove signal_set_focus().
  (Kjell Ahlstedt)
* Application: Add signal_query_end().
  SearchEntry.hg: Add property_placeholder_text(),
    property_actives_default().
  ToolItem: Add property_expand_item(), property_homogeneous().
  Window: Remove set/get/property_role(),
    set/get/property_gravity(), move(), get_position().
  (Kjell Ahlstedt)
* CssProvider: Replace CssProviderError by CssParserError and
    CssParserWarning. Replace get_named() by load_named().
  CssSection: Remove enum CssSection::Type. Add create()
    and to_string(). Replace get_[start|end]_[line|position]() by
    get_[start|end]_location().
  ListBox: Add set/get/property_show_separators().
  MenuBar.hg: Remove enum PackDirection.
    Remove set/get/property_pack_direction(),
    set/get/property_child_pack_direction().
  Widget: Replace set/get/property_can_pick() by
    set/get/property_can_target(). Remove set/get_parent_surface().
  Window: Remove set/get/property_skip_taskbar_hint(),
    set/get/property_skip_pager_hint(),
    set/get/property_urgency_hint().
  (Kjell Ahlstedt)
* Menu: Remove set_display().
  Popover.hg: Add property_default_widget().
  Widget: Remove set/get/property_can_default(), grab_default(),
    signal_display_changed().
    Add activate_action(), activate_default().
  Window: Remove activate_focus(), activate_default().
    Add property_default_widget().
    Rename set_default() to set_default_widget(),
    unset_default() to unset_default_widget().
  (Kjell Ahlstedt)

Demos:
* Update many demo programs.

Documentation:
* Use libsigc++-3.0.tag for libsigc++ documentation
  (Kjell Ahlstedt)
* Many improvements
  (Kjell Ahlstedt, Daniel Boles)

Build:
* Require C++17
  (Murray Cumming)
* Replace the Visual Studio project files with MSVC NMake project files
  (Chun-wei Fan) Merge request !1
* Use glibmm-2.62 instead of glibmm-2.56,
    atkmm-2.30 instead of atkmm-2.28,
    pangomm-2.44 instead of pangomm-2.42,
    gtk4 instead of gtk+-4.0.
  Require gtk4 >= 3.96.0
  (Kjell Ahlstedt)


Kjell Ahlstedt
kjellahlstedt gmail com



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]