[gtkmm] Gtk::Widget: Add new API
- From: Kjell Ahlstedt <kjellahl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtkmm] Gtk::Widget: Add new API
- Date: Tue, 8 Dec 2015 17:26:46 +0000 (UTC)
commit 6ff7774b3a5c4ae73875bf0228fe0d67b5edf175
Author: Kjell Ahlstedt <kjell ahlstedt bredband net>
Date: Tue Dec 8 18:18:29 2015 +0100
Gtk::Widget: Add new API
* gtk/src/widget.[hg|ccg]: Add set/get/property_focus_on_click(),
set/unset/get_font_options(), set/get_font_map(), queue_allocate(),
get_allocated_size(). (unset_font_map() is not necessary. FontMap is unset
with a set_font_map(Glib::RefPtr<Pango::FontMap>()) call.)
gtk/src/widget.ccg | 5 +++++
gtk/src/widget.hg | 19 +++++++++++++++++++
2 files changed, 24 insertions(+), 0 deletions(-)
---
diff --git a/gtk/src/widget.ccg b/gtk/src/widget.ccg
index 7e7c7b7..6cc0dcb 100644
--- a/gtk/src/widget.ccg
+++ b/gtk/src/widget.ccg
@@ -746,6 +746,11 @@ void Widget::unset_cursor()
G_GNUC_END_IGNORE_DEPRECATIONS
_DEPRECATE_IFDEF_END
+void Widget::unset_font_options()
+{
+ gtk_widget_set_font_options(gobj(), nullptr);
+}
+
void Widget::transform_cairo_context_to_window(const Cairo::RefPtr<Cairo::Context>& cr, const
Glib::RefPtr<const Gdk::Window>& window)
{
gtk_cairo_transform_to_window((cr)->cobj(), gobj(),
const_cast<GdkWindow*>(Glib::unwrap<Gdk::Window>(window)));
diff --git a/gtk/src/widget.hg b/gtk/src/widget.hg
index fccb3fb..d375453 100644
--- a/gtk/src/widget.hg
+++ b/gtk/src/widget.hg
@@ -127,6 +127,7 @@ public:
_WRAP_METHOD(void queue_draw_area(int x, int y, int width, int height), gtk_widget_queue_draw_area)
_WRAP_METHOD(void queue_draw_region(const ::Cairo::RefPtr<const ::Cairo::Region>& region),
gtk_widget_queue_draw_region)
_WRAP_METHOD(void queue_resize(), gtk_widget_queue_resize)
+ _WRAP_METHOD(void queue_allocate(), gtk_widget_queue_allocate)
_WRAP_METHOD(void size_allocate(const Allocation& allocation), gtk_widget_size_allocate)
@@ -194,6 +195,8 @@ public:
_WRAP_METHOD(bool is_focus() const, gtk_widget_is_focus)
_WRAP_METHOD(bool has_visible_focus() const, gtk_widget_has_visible_focus)
_WRAP_METHOD(void grab_focus(), gtk_widget_grab_focus)
+ _WRAP_METHOD(void set_focus_on_click(bool focus_on_click = true), gtk_widget_set_focus_on_click)
+ _WRAP_METHOD(bool get_focus_on_click() const, gtk_widget_get_focus_on_click)
_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)
@@ -265,6 +268,7 @@ public:
_WRAP_METHOD(int get_allocated_width() const, gtk_widget_get_allocated_width)
_WRAP_METHOD(int get_allocated_height() const, gtk_widget_get_allocated_height)
_WRAP_METHOD(int get_allocated_baseline() const, gtk_widget_get_allocated_baseline)
+ _WRAP_METHOD(void get_allocated_size(Allocation& allocation, int& baseline) const,
gtk_widget_get_allocated_size)
/** Retrieves the widget's location.
* Note, when implementing a Container: a widget's allocation will be its "adjusted" allocation,
@@ -485,6 +489,17 @@ _DEPRECATE_IFDEF_END
_WRAP_METHOD(Glib::RefPtr<Pango::Context> create_pango_context(), gtk_widget_create_pango_context)
_WRAP_METHOD(Glib::RefPtr<Pango::Context> get_pango_context(), gtk_widget_get_pango_context, refreturn)
+
+ _WRAP_METHOD(void set_font_options(const ::Cairo::FontOptions& options), gtk_widget_set_font_options)
+ /** Undoes the effect of previous calls to set_font_options().
+ *
+ * @newin{3,20}
+ */
+ void unset_font_options();
+ // This returns a const, so we assume that we must copy it:
+ #m4 _CONVERSION(`const cairo_font_options_t*', `::Cairo::FontOptions',
`::Cairo::FontOptions(const_cast<cairo_font_options_t*>($3), false /* take_ownership */)')
+ _WRAP_METHOD(::Cairo::FontOptions get_font_options() const, gtk_widget_get_font_options)
+
_WRAP_METHOD(Glib::RefPtr<Pango::Layout> create_pango_layout(const Glib::ustring& text),
gtk_widget_create_pango_layout)
_IGNORE(gtk_widget_render_icon) //deprecated.
@@ -638,6 +653,9 @@ _DEPRECATE_IFDEF_END
#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 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)
_WRAP_SIGNAL(void show(),"show")
_WRAP_SIGNAL(void hide(),"hide", custom_c_callback)
@@ -809,6 +827,7 @@ _CONVERSION(`GdkScreen*',`const Glib::RefPtr<Gdk::Screen>&',`Glib::wrap($3, true
_WRAP_PROPERTY("can_focus", bool)
_WRAP_PROPERTY("has_focus", bool)
_WRAP_PROPERTY("is_focus", bool)
+ _WRAP_PROPERTY("focus_on_click", bool)
_WRAP_PROPERTY("can_default", bool)
_WRAP_PROPERTY("has_default", bool)
_WRAP_PROPERTY("receives_default", bool)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]