[gtkmm] Gdk, Gtk: Update for the latest gtk4 (Window::set_default_widget(), etc.)
- From: Kjell Ahlstedt <kjellahl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtkmm] Gdk, Gtk: Update for the latest gtk4 (Window::set_default_widget(), etc.)
- Date: Tue, 7 May 2019 13:23:55 +0000 (UTC)
commit 8df67aaa08c8a1d245ea3ffacad71f3f46299e8b
Author: Kjell Ahlstedt <kjellahlstedt gmail com>
Date: Tue May 7 15:22:31 2019 +0200
Gdk, Gtk: Update for the latest gtk4 (Window::set_default_widget(), etc.)
* demos/gtk-demo/example_menus.cc: Use Gtk::Window::set_default_widget()
instead of the deleted Widget::set_can_default() and grab_default().
* gdk/src/surface.hg: Add property_frame_clock().
* gtk/src/builder.hg: gsize length -> gssize; length can be -1.
* gtk/src/menu.hg: Remove set_display().
* gtk/src/popover.hg: Add property_default_widget().
* gtk/src/widget.hg: Remove set/get/property_can_default(), grab_default(),
signal_display_changed(). Add activate_action(), activate_default().
* gtk/src/window.[ccg|hg]: Remove activate_focus(), activate_default().
Add property_default_widget(). Rename set_default() to set_default_widget(),
unset_default() to unset_default_widget().
demos/gtk-demo/example_menus.cc | 13 +------------
gdk/src/surface.hg | 1 +
gtk/src/builder.hg | 2 +-
gtk/src/menu.hg | 2 --
gtk/src/popover.hg | 1 +
gtk/src/widget.hg | 13 +++++--------
gtk/src/window.ccg | 4 ++--
gtk/src/window.hg | 9 +++------
8 files changed, 14 insertions(+), 31 deletions(-)
---
diff --git a/demos/gtk-demo/example_menus.cc b/demos/gtk-demo/example_menus.cc
index d4aa8307..0167a0af 100644
--- a/demos/gtk-demo/example_menus.cc
+++ b/demos/gtk-demo/example_menus.cc
@@ -69,20 +69,16 @@ Example_Menus::Example_Menus()
auto pMenuItem = Gtk::make_managed<Gtk::MenuItem>("test\nline2");
pMenuItem->set_submenu( *(create_menu(2)) );
m_MenuBar.append(*pMenuItem);
- pMenuItem->show();
pMenuItem = Gtk::make_managed<Gtk::MenuItem>("foo");
pMenuItem->set_submenu( *(create_menu(3)) );
m_MenuBar.append(*pMenuItem);
- pMenuItem->show();
pMenuItem = Gtk::make_managed<Gtk::MenuItem>("bar");
pMenuItem->set_submenu( *(create_menu(4)) );
m_MenuBar.append(*pMenuItem);
- pMenuItem->show();
}
-
m_VBox_Sub1.set_margin(10);
m_VBox_Sub1.set_expand();
m_VBox1.add(m_VBox_Sub1);
@@ -95,18 +91,15 @@ Example_Menus::Example_Menus()
Gtk::MenuItem* pMenuItem = Gtk::make_managed<Gtk::SeparatorMenuItem>();
pMenu->append(*pMenuItem);
- pMenuItem->show();
pMenuItem = Gtk::make_managed<Gtk::MenuItem>("accel");
pMenuItem->set_submenu(*pMenu);
m_MenuBar.append(*pMenuItem);
- pMenuItem->show();
pMenuItem = Gtk::make_managed<Gtk::CheckMenuItem>("Accelerate Me");
pMenuItem->add_accelerator("activate", accel_group, GDK_KEY_F1,
Gdk::ModifierType(0), Gtk::AccelFlags::VISIBLE);
pMenu->append(*pMenuItem);
- pMenuItem->show();
pMenuItem->signal_activate().connect(
sigc::bind(sigc::mem_fun(*this, &Example_Menus::on_item_activated), "F1"));
@@ -114,7 +107,6 @@ Example_Menus::Example_Menus()
pMenu->append(*pMenuItem);
pMenuItem->add_accelerator("activate", accel_group, GDK_KEY_F2,
Gdk::ModifierType(0), Gtk::AccelFlags::VISIBLE | Gtk::AccelFlags::LOCKED);
- pMenuItem->show();
pMenuItem->signal_activate().connect(
sigc::bind(sigc::mem_fun(*this, &Example_Menus::on_item_activated), "F2"));
@@ -122,7 +114,6 @@ Example_Menus::Example_Menus()
pMenu->append(*pMenuItem);
pMenuItem->add_accelerator("activate", accel_group, GDK_KEY_F3,
Gdk::ModifierType(0), Gtk::AccelFlags::VISIBLE);
- pMenuItem->show();
pMenuItem->signal_activate().connect(
sigc::bind(sigc::mem_fun(*this, &Example_Menus::on_item_activated), "F3"));
}
@@ -138,8 +129,7 @@ Example_Menus::Example_Menus()
m_VBox_Sub2.add(m_Button);
m_VBox_Sub2.set_vexpand(false);
- m_Button.set_can_default(true);
- m_Button.grab_default();
+ set_default_widget(m_Button);
}
Example_Menus::~Example_Menus()
@@ -163,7 +153,6 @@ Gtk::Menu* Example_Menus::create_menu(gint depth)
auto pMenuItem = Gtk::make_managed<Gtk::RadioMenuItem>(radiogroup, buf);
pMenu->append(*pMenuItem);
- pMenuItem->show();
if(i == 3)
pMenuItem->set_sensitive(false);
diff --git a/gdk/src/surface.hg b/gdk/src/surface.hg
index 6afc838e..da67bd2c 100644
--- a/gdk/src/surface.hg
+++ b/gdk/src/surface.hg
@@ -283,6 +283,7 @@ public:
_WRAP_PROPERTY("cursor", Glib::RefPtr<Cursor>)
_WRAP_PROPERTY("display", Glib::RefPtr<Display>)
+ _WRAP_PROPERTY("frame-clock", Glib::RefPtr<FrameClock>)
_WRAP_PROPERTY("state", State)
_WRAP_PROPERTY("mapped", bool)
};
diff --git a/gtk/src/builder.hg b/gtk/src/builder.hg
index bb400bab..55fdd3c3 100644
--- a/gtk/src/builder.hg
+++ b/gtk/src/builder.hg
@@ -406,7 +406,7 @@ public:
*
* @newin{2,12}
*/
- _WRAP_METHOD(bool add_from_string(const char* buffer, gsize length), gtk_builder_add_from_string, errthrow)
+ _WRAP_METHOD(bool add_from_string(const char* buffer, gssize length), gtk_builder_add_from_string,
errthrow)
_WRAP_METHOD(void expose_object(const Glib::ustring& name, const Glib::RefPtr<Glib::Object>& object),
gtk_builder_expose_object)
#m4 _CONVERSION(`Widget&',`GObject*',`G_OBJECT(($3).gobj())')
diff --git a/gtk/src/menu.hg b/gtk/src/menu.hg
index b268b29f..4fc1540f 100644
--- a/gtk/src/menu.hg
+++ b/gtk/src/menu.hg
@@ -90,8 +90,6 @@ public:
_WRAP_METHOD(Widget* get_attach_widget(), gtk_menu_get_attach_widget)
_WRAP_METHOD(const Widget* get_attach_widget() const, gtk_menu_get_attach_widget, constversion)
- _WRAP_METHOD(void set_display(const Glib::RefPtr<Gdk::Display>& display), gtk_menu_set_display)
-
_WRAP_METHOD(void set_monitor(int monitor_num), gtk_menu_set_monitor)
_WRAP_METHOD(int get_monitor() const, gtk_menu_get_monitor)
_WRAP_METHOD(void place_on_monitor(const Glib::RefPtr<Gdk::Monitor>& monitor), gtk_menu_place_on_monitor)
diff --git a/gtk/src/popover.hg b/gtk/src/popover.hg
index 9b889383..22a48029 100644
--- a/gtk/src/popover.hg
+++ b/gtk/src/popover.hg
@@ -136,6 +136,7 @@ public:
_WRAP_PROPERTY("position", PositionType)
_WRAP_PROPERTY("modal", bool)
_WRAP_PROPERTY("constrain-to", Constraint)
+ _WRAP_PROPERTY("default-widget", Widget*)
_WRAP_SIGNAL(void closed(), "closed")
};
diff --git a/gtk/src/widget.hg b/gtk/src/widget.hg
index 5717aea2..f7165050 100644
--- a/gtk/src/widget.hg
+++ b/gtk/src/widget.hg
@@ -181,10 +181,7 @@ public:
_WRAP_METHOD(bool get_focus_on_click() const, gtk_widget_get_focus_on_click)
_WRAP_METHOD(void set_can_target(bool can_target = true), gtk_widget_set_can_target)
_WRAP_METHOD(bool get_can_target() const, gtk_widget_get_can_target)
- _WRAP_METHOD(void set_can_default(bool can_default = true), gtk_widget_set_can_default)
- _WRAP_METHOD(bool get_can_default() const, gtk_widget_get_can_default)
_WRAP_METHOD(bool has_default() const, gtk_widget_has_default)
- _WRAP_METHOD(void grab_default(), gtk_widget_grab_default)
_WRAP_METHOD(void set_receives_default(bool receives_default = true), gtk_widget_set_receives_default)
_WRAP_METHOD(bool get_receives_default() const, gtk_widget_get_receives_default)
_WRAP_METHOD(bool has_grab() const, gtk_widget_has_grab)
@@ -573,6 +570,9 @@ public:
#m4 _CONVERSION(`const
gchar**',`std::vector<Glib::ustring>',`Glib::ArrayHandler<Glib::ustring>::array_to_vector($3,
Glib::OWNERSHIP_SHALLOW)')
_WRAP_METHOD(std::vector<Glib::ustring> list_action_prefixes() const, gtk_widget_list_action_prefixes)
+ _WRAP_METHOD(void activate_action(const Glib::ustring& name, const Glib::VariantBase& parameter),
gtk_widget_activate_action)
+ _WRAP_METHOD(void activate_default(), gtk_widget_activate_default)
+
_WRAP_METHOD(void set_font_map(const Glib::RefPtr<Pango::FontMap>& font_map), gtk_widget_set_font_map)
_WRAP_METHOD(Glib::RefPtr<Pango::FontMap> get_font_map(), gtk_widget_get_font_map, refreturn)
_WRAP_METHOD(Glib::RefPtr<const Pango::FontMap> get_font_map() const, gtk_widget_get_font_map, refreturn,
constversion)
@@ -700,8 +700,6 @@ dnl
// The accel_closures_changed signal can't have a default handler because the wrapped C signal has no
default handler.
_WRAP_SIGNAL(void accel_closures_changed(), "accel_closures_changed", no_default_handler)
-#m4 _CONVERSION(`GdkDisplay*',`const Glib::RefPtr<Gdk::Display>&',`Glib::wrap($3, true)')
- _WRAP_SIGNAL(void display_changed(const Glib::RefPtr<Gdk::Display>& previous_display), "display_changed")
//TODO: The signal_id is very C-like here:
//_WRAP_SIGNAL(bool can_activate_accel(guint signal_id), "can_activate_accel")
@@ -728,7 +726,6 @@ dnl
_WRAP_PROPERTY("is_focus", bool)
_WRAP_PROPERTY("can_target", bool)
_WRAP_PROPERTY("focus_on_click", bool)
- _WRAP_PROPERTY("can_default", bool)
_WRAP_PROPERTY("has_default", bool)
_WRAP_PROPERTY("receives_default", bool)
_WRAP_PROPERTY("cursor", Glib::RefPtr<Gdk::Cursor>)
@@ -781,9 +778,9 @@ protected:
_WRAP_METHOD(void set_has_surface(bool has_surface = true), gtk_widget_set_has_surface)
/** Sets a widget's surface. This function should only be used in a
- * widget's Gtk::Widget::on_realize() implementation. The %surface passed is
+ * widget's Gtk::Widget::on_realize() implementation. The %a surface passed is
* usually either a new surface created with Gdk::Surface::create(), or the
- * surface of its parent widget as returned by get_parent_surface().
+ * surface of its parent widget as returned by get_parent()->get_surface().
*
* Widgets must indicate whether they will create their own Gdk::Surface
* by calling set_has_surface(). This is usually done in the
diff --git a/gtk/src/window.ccg b/gtk/src/window.ccg
index f55d346c..617c9139 100644
--- a/gtk/src/window.ccg
+++ b/gtk/src/window.ccg
@@ -170,9 +170,9 @@ void Window::unset_focus()
gtk_window_set_focus(gobj(), nullptr /* See GTK+ docs */);
}
-void Window::unset_default()
+void Window::unset_default_widget()
{
- gtk_window_set_default(gobj(), nullptr /* See GTK+ docs */);
+ gtk_window_set_default_widget(gobj(), nullptr /* See GTK+ docs */);
}
void Window::unset_transient_for()
diff --git a/gtk/src/window.hg b/gtk/src/window.hg
index 423a5890..a8477004 100644
--- a/gtk/src/window.hg
+++ b/gtk/src/window.hg
@@ -85,6 +85,7 @@ public:
_WRAP_PROPERTY("focus-visible", bool)
_WRAP_PROPERTY("attached-to", Widget*)
_WRAP_PROPERTY("is-maximized", bool)
+ _WRAP_PROPERTY("default-widget", Widget*)
_WRAP_SIGNAL(void keys_changed(), "keys_changed")
_WRAP_SIGNAL(bool close_request(), "close-request")
@@ -124,21 +125,17 @@ dnl
_WRAP_METHOD(void set_position(WindowPosition position),
gtk_window_set_position)
- _WRAP_METHOD(bool activate_focus(), gtk_window_activate_focus)
-
_WRAP_METHOD(void set_focus(Gtk::Widget& focus), gtk_window_set_focus)
void unset_focus();
_WRAP_METHOD(Widget* get_focus(), gtk_window_get_focus)
_WRAP_METHOD(const Widget* get_focus() const, gtk_window_get_focus, constversion)
- _WRAP_METHOD(void set_default(Gtk::Widget& default_widget), gtk_window_set_default)
- void unset_default();
+ _WRAP_METHOD(void set_default_widget(Gtk::Widget& default_widget), gtk_window_set_default_widget)
+ void unset_default_widget();
_WRAP_METHOD(Widget* get_default_widget(), gtk_window_get_default_widget)
_WRAP_METHOD(const Widget* get_default_widget() const, gtk_window_get_default_widget, constversion)
- _WRAP_METHOD(bool activate_default(), gtk_window_activate_default)
-
_WRAP_METHOD(void set_transient_for(Window& parent), gtk_window_set_transient_for)
/** Unsets the current transient window.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]