diff options
| author | Alexander Valavanis <valavanisalex@gmail.com> | 2019-06-05 19:09:35 +0000 |
|---|---|---|
| committer | Alexander Valavanis <valavanisalex@gmail.com> | 2019-06-05 19:09:35 +0000 |
| commit | 5c2e77fe28324e63e9c856634f09b1386c243453 (patch) | |
| tree | 7d694c8de43b3b5f9e28dc246a1856b05294ff64 /src/ui/toolbar | |
| parent | TextToolbar: Migrate FontSize widget (diff) | |
| download | inkscape-5c2e77fe28324e63e9c856634f09b1386c243453.tar.gz inkscape-5c2e77fe28324e63e9c856634f09b1386c243453.zip | |
TextToolbar: Migrate FontStyle widget
Diffstat (limited to 'src/ui/toolbar')
| -rw-r--r-- | src/ui/toolbar/text-toolbar.cpp | 48 | ||||
| -rw-r--r-- | src/ui/toolbar/text-toolbar.h | 5 |
2 files changed, 24 insertions, 29 deletions
diff --git a/src/ui/toolbar/text-toolbar.cpp b/src/ui/toolbar/text-toolbar.cpp index f9e988427..e18e62db3 100644 --- a/src/ui/toolbar/text-toolbar.cpp +++ b/src/ui/toolbar/text-toolbar.cpp @@ -35,8 +35,6 @@ #include "desktop.h" #include "document-undo.h" #include "document.h" -#include "widgets/ink-toggle-action.h" -#include "widgets/toolbox.h" #include "inkscape.h" #include "selection-chemistry.h" #include "text-editing.h" @@ -63,7 +61,6 @@ #include "widgets/style-utils.h" using Inkscape::DocumentUndo; -using Inkscape::UI::ToolboxFactory; using Inkscape::Util::Unit; using Inkscape::Util::Quantity; using Inkscape::Util::unit_table; @@ -272,7 +269,6 @@ TextToolbar::TextToolbar(SPDesktop *desktop) _tracker->setActiveUnit(unit_table.getUnit("%")); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); - GtkIconSize secondarySize = ToolboxFactory::prefToSize("/toolbox/secondary", 1); #if 0 /* Font family */ @@ -320,7 +316,8 @@ TextToolbar::TextToolbar(SPDesktop *desktop) gtk_style_context_add_provider_for_screen(screen, GTK_STYLE_PROVIDER(css_provider), GTK_STYLE_PROVIDER_PRIORITY_USER); - } + } +#endif /* Font styles */ { @@ -328,22 +325,23 @@ TextToolbar::TextToolbar(SPDesktop *desktop) Glib::RefPtr<Gtk::ListStore> store = fontlister->get_style_list(); GtkListStore* model_style = store->gobj(); - toolbar->_font_style_action = ink_comboboxentry_action_new( "TextFontStyleAction", - _("Font Style"), - _("Font style"), - GTK_TREE_MODEL(model_style), - 12, // Width in characters - 0, // Extra list width - nullptr, // Cell layout - nullptr, // Separator - GTK_WIDGET(desktop->canvas)); // Focus widget + _font_style_item = Gtk::manage(new UI::Widget::ComboBoxEntryToolItem( "TextFontStyleAction", + _("Font Style"), + _("Font style"), + GTK_TREE_MODEL(model_style), + 12, // Width in characters + 0, // Extra list width + nullptr, // Cell layout + nullptr, // Separator + GTK_WIDGET(desktop->canvas))); // Focus widget - g_signal_connect( G_OBJECT(toolbar->_font_style_action), "changed", G_CALLBACK(fontstyle_value_changed), (gpointer)toolbar ); - gtk_action_group_add_action( mainActions, GTK_ACTION(toolbar->_font_style_action) ); + _font_style_item->signal_changed().connect(sigc::mem_fun(*this, &TextToolbar::fontstyle_value_changed)); + add(*_font_style_item); } - -#endif + + add_separator(); + /* Text outer style */ { _outer_style_item = Gtk::manage(new Gtk::ToggleToolButton()); @@ -920,17 +918,15 @@ TextToolbar::fontsize_value_changed() } void -TextToolbar::fontstyle_value_changed( UI::Widget::ComboBoxEntryToolItem *act, gpointer data) +TextToolbar::fontstyle_value_changed() { - auto toolbar = reinterpret_cast<TextToolbar *>(data); - // quit if run by the _changed callbacks - if (toolbar->_freeze) { + if (_freeze) { return; } - toolbar->_freeze = true; + _freeze = true; - Glib::ustring new_style = act->get_active_text(); + Glib::ustring new_style = _font_style_item->get_active_text(); Inkscape::FontLister* fontlister = Inkscape::FontLister::get_instance(); @@ -963,7 +959,7 @@ TextToolbar::fontstyle_value_changed( UI::Widget::ComboBoxEntryToolItem *act, gp } - toolbar->_freeze = false; + _freeze = false; } // Handles both Superscripts and Subscripts @@ -2016,7 +2012,7 @@ TextToolbar::selection_changed(Inkscape::Selection * /*selection*/, bool subsele #ifdef FINISHEDHACKING if( _font_family_action->get_combobox() != nullptr ) { _font_family_action->set_active_text( fontlister->get_font_family().c_str(), fontlister->get_font_family_row() ); - _font_style_action->set_active_text( fontlister->get_font_style().c_str() ); + _font_style_item->set_active_text( fontlister->get_font_style().c_str() ); } #endif diff --git a/src/ui/toolbar/text-toolbar.h b/src/ui/toolbar/text-toolbar.h index 3a8dd767c..b319e0691 100644 --- a/src/ui/toolbar/text-toolbar.h +++ b/src/ui/toolbar/text-toolbar.h @@ -64,7 +64,7 @@ private: UI::Widget::ComboBoxEntryToolItem *_font_family_action; UI::Widget::ComboBoxEntryToolItem *_font_size_item; - UI::Widget::ComboBoxEntryToolItem *_font_style_action; + UI::Widget::ComboBoxEntryToolItem *_font_style_item; Gtk::ToggleToolButton *_superscript_item; Gtk::ToggleToolButton *_subscript_item; Gtk::ToggleToolButton *_outer_style_item; @@ -99,8 +99,7 @@ private: static void fontfamily_value_changed(UI::Widget::ComboBoxEntryToolItem *act, gpointer data); void fontsize_value_changed(); - static void fontstyle_value_changed (UI::Widget::ComboBoxEntryToolItem *act, - gpointer data); + void fontstyle_value_changed(); void script_changed(Gtk::ToggleToolButton *btn); void lineheight_unset_changed(); void outer_style_changed(); |
