From b41e95304a0269c587f6ba7b6cf3727c3ecfff1c Mon Sep 17 00:00:00 2001 From: Jabier Arraiza Date: Mon, 4 Feb 2019 23:51:54 +0100 Subject: Working with event boxes --- .../hicolor/symbolic/actions/hatches-symbolic.svg | 87 ++++++ .../hicolor/symbolic/actions/info-symbolic.svg | 87 ------ .../symbolic/actions/infopop-outline-symbolic.svg | 87 ++++++ .../hicolor/symbolic/actions/infopop-symbolic.svg | 65 ++++ share/ui/dialog-livepatheffect-add-effect.ui | 337 ++++++++++++--------- share/ui/dialog-livepatheffect-add.ui | 14 +- share/ui/style.css | 18 +- src/ui/dialog/livepatheffect-add.cpp | 198 +++++++----- src/ui/dialog/livepatheffect-add.h | 6 +- 9 files changed, 563 insertions(+), 336 deletions(-) create mode 100644 share/icons/hicolor/symbolic/actions/hatches-symbolic.svg delete mode 100644 share/icons/hicolor/symbolic/actions/info-symbolic.svg create mode 100644 share/icons/hicolor/symbolic/actions/infopop-outline-symbolic.svg create mode 100644 share/icons/hicolor/symbolic/actions/infopop-symbolic.svg diff --git a/share/icons/hicolor/symbolic/actions/hatches-symbolic.svg b/share/icons/hicolor/symbolic/actions/hatches-symbolic.svg new file mode 100644 index 000000000..7edd30fda --- /dev/null +++ b/share/icons/hicolor/symbolic/actions/hatches-symbolic.svg @@ -0,0 +1,87 @@ + + + + + + + + + + image/svg+xml + + + LiveEffect Icons proposal + 13 Jan 2019 + + + Ramón Miranda + + + + + see the license tab + + + + + icon ui + + + This is a contribution with Inkscape Project from +Ramon Miranda www.ramonmiranda.com (design and SVG file) +Jabiertxo (SVG stuff to integrate them in UI) + + + + + + + + + - + + + + Ramon Miranda +Jabier Arraiza + + + + + + + + + + + + + + + diff --git a/share/icons/hicolor/symbolic/actions/info-symbolic.svg b/share/icons/hicolor/symbolic/actions/info-symbolic.svg deleted file mode 100644 index a660d5ef8..000000000 --- a/share/icons/hicolor/symbolic/actions/info-symbolic.svg +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - image/svg+xml - - - fe Editor new Icons proposal - 13 Nov 2018 - - - Ramón Miranda - - - - - see the license tab - - - - - icon ui - - - This is a little contribution with Inkscape Project -Ramon Miranda www.ramonmiranda.com (design and SVG file) -Jabiertxo (SVG stuff to integrate them in UI) - - - - - - - - - - - - - - Ramon Miranda -Jabier Arraiza - - - - - - - - - - - - - - - diff --git a/share/icons/hicolor/symbolic/actions/infopop-outline-symbolic.svg b/share/icons/hicolor/symbolic/actions/infopop-outline-symbolic.svg new file mode 100644 index 000000000..a660d5ef8 --- /dev/null +++ b/share/icons/hicolor/symbolic/actions/infopop-outline-symbolic.svg @@ -0,0 +1,87 @@ + + + + + + + + + + image/svg+xml + + + fe Editor new Icons proposal + 13 Nov 2018 + + + Ramón Miranda + + + + + see the license tab + + + + + icon ui + + + This is a little contribution with Inkscape Project +Ramon Miranda www.ramonmiranda.com (design and SVG file) +Jabiertxo (SVG stuff to integrate them in UI) + + + + + + + + + - + + + + Ramon Miranda +Jabier Arraiza + + + + + + + + + + + + + + + diff --git a/share/icons/hicolor/symbolic/actions/infopop-symbolic.svg b/share/icons/hicolor/symbolic/actions/infopop-symbolic.svg new file mode 100644 index 000000000..3d5dfe2ba --- /dev/null +++ b/share/icons/hicolor/symbolic/actions/infopop-symbolic.svg @@ -0,0 +1,65 @@ + + + + + + + + + + + +image/svg+xml + + +fe Editor new Icons proposal +13 Nov 2018 + + +Ramón Miranda + + + + +see the license tab + + + + +icon ui + + +This is a little contribution with Inkscape Project +Ramon Miranda www.ramonmiranda.com (design and SVG file) +Jabiertxo (SVG stuff to integrate them in UI) + + + + + + + + +- + + + +Ramon Miranda +Jabier Arraiza + + + + + + + + + + + + + + + + + diff --git a/share/ui/dialog-livepatheffect-add-effect.ui b/share/ui/dialog-livepatheffect-add-effect.ui index 77a11b4b8..08edbe792 100644 --- a/share/ui/dialog-livepatheffect-add-effect.ui +++ b/share/ui/dialog-livepatheffect-add-effect.ui @@ -2,195 +2,234 @@ - - 200 + True - True - False - center - False - vertical - top + False + end + start + False - + + 200 True - False + True + False + center + False + vertical + top - + True False - center - start - 80 - align-vertical-baseline - 6 - - - 1 - - - - - False - True - end - start - + True False - start + center start - 30 - draw-star - 2 - + 80 + align-vertical-baseline + 6 + + 1 + - - - 2 - - - - - False - True - 0 - - - - - True - False - LPEName - center - - - - False - False - 2 - - - - - 200 - False - True - Description - center - True - 20 - - - False - False - 10 - 3 - - - - - True - False - end - start - - - True - False - - + + + True False + True end - 30 - info - 2 - + start + + + LPESelectorEffectFavTop + True + False + end + start + 30 + draw-star + 2 + + + + + 2 + False - False + True 0 - True - + True False - - - False - end - 30 - draw-star-outline - 2 - - - + LPEName + center + end + 14 + - True - True + False + False 1 - True - + + 200 False - end - 30 - on - 2 - + True + Description + center + True + 20 False False - end + 10 2 - True + + + Experimental + True + False + True + True + + + False + True + 3 + + + + + True + False + center + start + top + center + + + LPESelectorEffectEventInfo + True + False + end + start + False + + + LPESelectorEffectInfo + False + end + start + 30 + infopop-outline + 2 + + + + + + False + True + end + 0 + True + + + + + LPESelectorEffectEventFav + True + False + center + start + False + + + LPESelectorEffectFav + False + center + start + 30 + draw-star-outline + 2 + + + + + + False + True + end + 1 + True + + + + + LPESelectorEffectEventApply + True + False + start + start + False + + + False + start + start + 30 + on + 2 + + + + + + False + True + end + 2 + True + + + + + True + True + 4 + + + - - False - False - end - 3 - - - - - Experimental - True - False - True - True - - - False - True - 5 - - diff --git a/share/ui/dialog-livepatheffect-add.ui b/share/ui/dialog-livepatheffect-add.ui index 0fbdb6a6f..2a695c8cf 100644 --- a/share/ui/dialog-livepatheffect-add.ui +++ b/share/ui/dialog-livepatheffect-add.ui @@ -126,8 +126,8 @@ - True False + True Message center end @@ -160,9 +160,10 @@ True False True - 10 - 10 - 4 + 2 + 2 + 3 + 20 @@ -191,9 +192,8 @@ - - LPESelectorEffectInfo - True + + LPESelectorEffectInfoPop False True start diff --git a/share/ui/style.css b/share/ui/style.css index 64779bd39..15d088da9 100644 --- a/share/ui/style.css +++ b/share/ui/style.css @@ -219,14 +219,14 @@ spinbutton undershoot { border-right-width:0; } -#lpeflow GtkFlowBoxChild, -#lpeflow flowboxchild{ - border-width:0px; - border-radius:6px; - margin:10px; - margin-bottom:30px; - padding-bottom:10px; -} + #lpeflow GtkFlowBoxChild, + #lpeflow flowboxchild{ + border-width:0px; + border-radius:6px; + margin:10px; + margin-bottom:30px; + padding-bottom:10px; + } #lpeflow GtkFlowBoxChild.lpeactive, #lpeflow flowboxchild.lpeactive{ @@ -268,7 +268,7 @@ spinbutton undershoot { padding:20px; } -#LPESelectorEffectInfo{ +#LPESelectorEffectInfoPop{ padding:15px; } #LPESelectorEffectInfoName{ diff --git a/src/ui/dialog/livepatheffect-add.cpp b/src/ui/dialog/livepatheffect-add.cpp index 9137f529d..c438cfa3e 100644 --- a/src/ui/dialog/livepatheffect-add.cpp +++ b/src/ui/dialog/livepatheffect-add.cpp @@ -54,6 +54,25 @@ void sp_remove_fav(Glib::ustring effect){ } } +bool +LivePathEffectAdd::mouseover(GdkEventCrossing* evt, GtkWidget *wdg) +{ + GdkDisplay *display = gdk_display_get_default(); + GdkCursor *cursor = gdk_cursor_new_for_display(display, GDK_HAND2); + GdkWindow *window = gtk_widget_get_window(wdg); + gdk_window_set_cursor(window, cursor); + g_object_unref(cursor); + return true; +} + +bool +LivePathEffectAdd::mouseout(GdkEventCrossing* evt, GtkWidget *wdg) +{ + GdkWindow *window = gtk_widget_get_window(wdg); + gdk_window_set_cursor(window, nullptr); + return true; +} + LivePathEffectAdd::LivePathEffectAdd() : converter(Inkscape::LivePathEffect::LPETypeConverter) { @@ -66,12 +85,14 @@ LivePathEffectAdd::LivePathEffectAdd() } _builder->get_widget("LPEDialogSelector", _LPEDialogSelector); _builder->get_widget("LPESelectorFlowBox", _LPESelectorFlowBox); - _builder->get_widget("LPESelectorEffectInfo", _LPESelectorEffectInfo); + _builder->get_widget("LPESelectorEffectInfoPop", _LPESelectorEffectInfoPop); _builder->get_widget("LPEFilter", _LPEFilter); _builder->get_widget("LPEInfo", _LPEInfo); _builder->get_widget("LPEExperimentals", _LPEExperimentals); _builder->get_widget("LPEScrolled", _LPEScrolled); _LPEFilter->signal_search_changed().connect(sigc::mem_fun(*this, &LivePathEffectAdd::on_search)); + _LPESelectorFlowBox->signal_child_activated().connect(sigc::mem_fun(*this, &LivePathEffectAdd::on_activate)); + _LPEDialogSelector->add_events(Gdk::POINTER_MOTION_MASK | Gdk::BUTTON_PRESS_MASK | Gdk::BUTTON_RELEASE_MASK | Gdk::ENTER_NOTIFY_MASK | Gdk::LEAVE_NOTIFY_MASK ); Glib::ustring effectgladefile = get_filename(Inkscape::IO::Resource::UIS, "dialog-livepatheffect-add-effect.ui"); for (int i = 0; i < static_cast(converter._length); ++i) { Glib::RefPtr builder_effect; @@ -81,7 +102,7 @@ LivePathEffectAdd::LivePathEffectAdd() g_warning("Glade file loading failed for filter effect dialog"); return; } - Gtk::Box *LPESelectorEffect; + Gtk::EventBox *LPESelectorEffect; builder_effect->get_widget("LPESelectorEffect", LPESelectorEffect); const LivePathEffect::EnumEffectData *data = &converter.data(i); Gtk::Label *LPEName; @@ -97,25 +118,28 @@ LivePathEffectAdd::LivePathEffectAdd() Gtk::Image *LPEIcon; builder_effect->get_widget("LPEIcon", LPEIcon); LPEIcon->set_from_icon_name(converter.get_icon(data->id), Gtk::BuiltinIconSize(Gtk::ICON_SIZE_DIALOG)); - Gtk::EventBox *LPESelectorEffectInfoLauncher; - builder_effect->get_widget("LPESelectorEffectInfoLauncher", LPESelectorEffectInfoLauncher); - LPESelectorEffectInfoLauncher->signal_button_press_event().connect(sigc::bind >(sigc::mem_fun(*this, &LivePathEffectAdd::pop_description), builder_effect)); - Gtk::EventBox *LPESelectorEffectFavLauncher; - builder_effect->get_widget("LPESelectorEffectFavLauncher", LPESelectorEffectFavLauncher); - Gtk::EventBox *LPESelectorEffectFavLauncherTop; - builder_effect->get_widget("LPESelectorEffectFavLauncherTop", LPESelectorEffectFavLauncherTop); - LPESelectorEffectFavLauncher ->signal_button_press_event().connect(sigc::bind >(sigc::mem_fun(*this, &LivePathEffectAdd::fav_toggler), builder_effect)); - LPESelectorEffectFavLauncherTop->signal_button_press_event().connect(sigc::bind >(sigc::mem_fun(*this, &LivePathEffectAdd::fav_toggler), builder_effect)); + Gtk::EventBox *LPESelectorEffectEventInfo; + //LPESelectorEffectEventFav->add_events(Gdk::BUTTON_PRESS_MASK); + builder_effect->get_widget("LPESelectorEffectEventInfo", LPESelectorEffectEventInfo); + LPESelectorEffectEventInfo->signal_button_press_event().connect(sigc::bind >(sigc::mem_fun(*this, &LivePathEffectAdd::pop_description), builder_effect)); + Gtk::EventBox *LPESelectorEffectEventFav; + builder_effect->get_widget("LPESelectorEffectEventFav", LPESelectorEffectEventFav); + // LPESelectorEffectEventFav->add_events(Gdk::BUTTON_PRESS_MASK); + Gtk::EventBox *LPESelectorEffectEventFavTop; + builder_effect->get_widget("LPESelectorEffectEventFavTop", LPESelectorEffectEventFavTop); + //LPESelectorEffectFavTop->add_events(Gdk::BUTTON_PRESS_MASK); + LPESelectorEffectEventFav ->signal_button_press_event().connect(sigc::bind >(sigc::mem_fun(*this, &LivePathEffectAdd::fav_toggler), builder_effect)); + LPESelectorEffectEventFavTop->signal_button_press_event().connect(sigc::bind >(sigc::mem_fun(*this, &LivePathEffectAdd::fav_toggler), builder_effect)); + LPESelectorEffect->signal_enter_notify_event().connect(sigc::bind(sigc::mem_fun(*this, &LivePathEffectAdd::mouseover), GTK_WIDGET(LPESelectorEffect->gobj()))); + LPESelectorEffect->signal_leave_notify_event().connect(sigc::bind(sigc::mem_fun(*this, &LivePathEffectAdd::mouseout), GTK_WIDGET(LPESelectorEffect->gobj()))); _LPESelectorFlowBox->insert(*LPESelectorEffect, i); } _visiblelpe = _LPESelectorFlowBox->get_children().size(); - _LPESelectorFlowBox->signal_child_activated().connect(sigc::mem_fun(*this, &LivePathEffectAdd::on_activate)); - _LPEDialogSelector->show_all_children(); - _LPEDialogSelector->add_events(Gdk::POINTER_MOTION_MASK | Gdk::BUTTON_PRESS_MASK | Gdk::BUTTON_RELEASE_MASK | Gdk::ENTER_NOTIFY_MASK | Gdk::LEAVE_NOTIFY_MASK ); _LPEInfo->set_visible(false); _LPESelectorFlowBox->set_sort_func(sigc::mem_fun(*this, &LivePathEffectAdd::on_sort)); _LPESelectorFlowBox->set_filter_func(sigc::mem_fun(*this, &LivePathEffectAdd::on_filter)); _LPEExperimentals->property_active().signal_changed().connect(sigc::mem_fun(*this, &LivePathEffectAdd::reload_effect_list)); + _LPEDialogSelector->show_all_children(); } void LivePathEffectAdd::on_activate(Gtk::FlowBoxChild *child) @@ -125,12 +149,15 @@ void LivePathEffectAdd::on_activate(Gtk::FlowBoxChild *child) leitem->get_style_context()->remove_class("lpeactive"); leitem->get_style_context()->remove_class("colorinverse"); leitem->get_style_context()->remove_class("backgroundinverse"); - Gtk::Box *box = dynamic_cast(leitem->get_child()); - if (box) { - std::vector contents = box->get_children(); - Gtk::Box *actions = dynamic_cast(contents[4]); - if (actions) { - actions->set_visible(false); + Gtk::EventBox *eventbox = dynamic_cast(leitem->get_child()); + if (eventbox) { + Gtk::Box *box = dynamic_cast(eventbox->get_child()); + if (box) { + std::vector contents = box->get_children(); + Gtk::Box *actions = dynamic_cast(contents[4]); + if (actions) { + actions->set_visible(false); + } } } } @@ -142,9 +169,9 @@ void LivePathEffectAdd::on_activate(Gtk::FlowBoxChild *child) bool LivePathEffectAdd::pop_description(GdkEventButton* evt, Glib::RefPtr builder_effect) { - Gtk::EventBox *LPESelectorEffectInfoLauncher; - builder_effect->get_widget("LPESelectorEffectInfoLauncher", LPESelectorEffectInfoLauncher); - _LPESelectorEffectInfo->set_relative_to(*LPESelectorEffectInfoLauncher->get_children()[0]); + Gtk::Image *LPESelectorEffectInfo; + builder_effect->get_widget("LPESelectorEffectInfo", LPESelectorEffectInfo); + _LPESelectorEffectInfoPop->set_relative_to(*LPESelectorEffectInfo); Gtk::Label *LPEName; builder_effect->get_widget("LPEName", LPEName); @@ -165,35 +192,33 @@ bool LivePathEffectAdd::pop_description(GdkEventButton* evt, Glib::RefPtrget_widget("LPESelectorEffectInfoDescription", LPESelectorEffectInfoDescription); LPESelectorEffectInfoDescription->set_text(LPEDescription->get_text()); - _LPESelectorEffectInfo->show(); + _LPESelectorEffectInfoPop->show(); return true; } bool LivePathEffectAdd::fav_toggler(GdkEventButton* evt, Glib::RefPtr builder_effect) { - Gtk::Box *LPESelectorEffect; + Gtk::EventBox *LPESelectorEffect; builder_effect->get_widget("LPESelectorEffect", LPESelectorEffect); Gtk::Label *LPEName; builder_effect->get_widget("LPEName", LPEName); - Gtk::EventBox *LPESelectorEffectFavLauncher; - builder_effect->get_widget("LPESelectorEffectFavLauncher", LPESelectorEffectFavLauncher); - Gtk::Image *favimg = dynamic_cast(LPESelectorEffectFavLauncher->get_child()); - Gtk::EventBox *LPESelectorEffectFavLauncherTop; - builder_effect->get_widget("LPESelectorEffectFavLauncherTop", LPESelectorEffectFavLauncherTop); - Gtk::Image *favimgtop = dynamic_cast(LPESelectorEffectFavLauncherTop->get_child()); - if (favimg && favimgtop) { + Gtk::Image *LPESelectorEffectFav; + builder_effect->get_widget("LPESelectorEffectFav", LPESelectorEffectFav); + Gtk::EventBox *LPESelectorEffectEventFavTop; + builder_effect->get_widget("LPESelectorEffectEventFavTop", LPESelectorEffectEventFavTop); + if (LPESelectorEffectFav && LPESelectorEffectEventFavTop) { if (sp_has_fav(LPEName->get_text())){ //favimg->set_from_icon_name("draw-star-outline", Gtk::IconSize(30)); - LPESelectorEffectFavLauncherTop->set_visible(false); - LPESelectorEffectFavLauncherTop->hide(); + LPESelectorEffectEventFavTop->set_visible(false); + LPESelectorEffectEventFavTop->hide(); sp_remove_fav(LPEName->get_text()); LPESelectorEffect->get_parent()->get_style_context()->remove_class("lpefav"); _LPESelectorFlowBox->invalidate_sort(); } else { //favimg->set_from_icon_name("draw-star", Gtk::IconSize(30)); - LPESelectorEffectFavLauncherTop->set_visible(true); - LPESelectorEffectFavLauncherTop->show(); + LPESelectorEffectEventFavTop->set_visible(true); + LPESelectorEffectEventFavTop->show(); sp_add_fav(LPEName->get_text()); LPESelectorEffect->get_parent()->get_style_context()->add_class("lpefav"); Glib::RefPtr< Gtk::Adjustment > vadjust = _LPEScrolled->get_vadjustment(); @@ -206,33 +231,36 @@ bool LivePathEffectAdd::fav_toggler(GdkEventButton* evt, Glib::RefPtr(child->get_child()); - if (box) { - std::vector contents = box->get_children(); - Gtk::ToggleButton *experimental = dynamic_cast(contents[3]); - if (experimental) { - if (experimental->get_active() && !_LPEExperimentals->get_active()) { - return false; + Gtk::EventBox *eventbox = dynamic_cast(child->get_child()); + if (eventbox) { + Gtk::Box *box = dynamic_cast(eventbox->get_child()); + if (box) { + std::vector contents = box->get_children(); + Gtk::ToggleButton *experimental = dynamic_cast(contents[3]); + if (experimental) { + if (experimental->get_active() && !_LPEExperimentals->get_active()) { + return false; + } } - } - if (_LPEFilter->get_text().length() < 1) { - _visiblelpe++; - return true; - } - Gtk::Label *lpename = dynamic_cast(contents[1]); - if (lpename) { - size_t s = lpename->get_text().uppercase().find(_LPEFilter->get_text().uppercase(), 0); - if (s != -1) { + if (_LPEFilter->get_text().length() < 1) { _visiblelpe++; return true; } - } - Gtk::Label *lpedesc = dynamic_cast(contents[2]); - if (lpedesc) { - size_t s = lpedesc->get_text().uppercase().find(_LPEFilter->get_text().uppercase(), 0); - if (s != -1) { - _visiblelpe++; - return true; + Gtk::Label *lpename = dynamic_cast(contents[1]); + if (lpename) { + size_t s = lpename->get_text().uppercase().find(_LPEFilter->get_text().uppercase(), 0); + if (s != -1) { + _visiblelpe++; + return true; + } + } + Gtk::Label *lpedesc = dynamic_cast(contents[2]); + if (lpedesc) { + size_t s = lpedesc->get_text().uppercase().find(_LPEFilter->get_text().uppercase(), 0); + if (s != -1) { + _visiblelpe++; + return true; + } } } } @@ -262,33 +290,39 @@ int LivePathEffectAdd::on_sort(Gtk::FlowBoxChild *child1, Gtk::FlowBoxChild *chi { Glib::ustring name1 = ""; Glib::ustring name2 = ""; - Gtk::Box *box = dynamic_cast(child1->get_child()); - if (box) { - std::vector contents = box->get_children(); - Gtk::Label *lpename = dynamic_cast(contents[1]); - name1 = lpename->get_text(); - Gtk::Overlay *overlay = dynamic_cast(contents[0]); - if (overlay) { - std::vector contents_overlay = overlay->get_children(); - Gtk::EventBox *LPESelectorEffectFavLauncherTop = dynamic_cast(contents_overlay[1]); - if (LPESelectorEffectFavLauncherTop) { - if (sp_has_fav(name1)){ - LPESelectorEffectFavLauncherTop->set_visible(true); - LPESelectorEffectFavLauncherTop->show(); - child1->get_style_context()->add_class("lpefav"); - } else { - LPESelectorEffectFavLauncherTop->set_visible(false); - LPESelectorEffectFavLauncherTop->hide(); - child1->get_style_context()->remove_class("lpefav"); + Gtk::EventBox *eventbox = dynamic_cast(child1->get_child()); + if (eventbox) { + Gtk::Box *box = dynamic_cast(eventbox->get_child()); + if (box) { + std::vector contents = box->get_children(); + Gtk::Label *lpename = dynamic_cast(contents[1]); + name1 = lpename->get_text(); + Gtk::Overlay *overlay = dynamic_cast(contents[0]); + if (overlay) { + std::vector contents_overlay = overlay->get_children(); + Gtk::EventBox *LPESelectorEffectEventFavTop = dynamic_cast(contents_overlay[1]); + if (LPESelectorEffectEventFavTop) { + if (sp_has_fav(name1)){ + LPESelectorEffectEventFavTop->set_visible(true); + LPESelectorEffectEventFavTop->show(); + child1->get_style_context()->add_class("lpefav"); + } else { + LPESelectorEffectEventFavTop->set_visible(false); + LPESelectorEffectEventFavTop->hide(); + child1->get_style_context()->remove_class("lpefav"); + } } } } } - box = dynamic_cast(child2->get_child()); - if (box) { - std::vector contents = box->get_children(); - Gtk::Label *lpename = dynamic_cast(contents[1]); - name2 = lpename->get_text(); + eventbox = dynamic_cast(child2->get_child()); + if (eventbox) { + Gtk::Box *box = dynamic_cast(eventbox->get_child()); + if (box) { + std::vector contents = box->get_children(); + Gtk::Label *lpename = dynamic_cast(contents[1]); + name2 = lpename->get_text(); + } } std::vector effect; diff --git a/src/ui/dialog/livepatheffect-add.h b/src/ui/dialog/livepatheffect-add.h index b99c40ece..f0f75ee3d 100644 --- a/src/ui/dialog/livepatheffect-add.h +++ b/src/ui/dialog/livepatheffect-add.h @@ -42,7 +42,7 @@ namespace Dialog { class LivePathEffectAdd { public: LivePathEffectAdd(); - ~LivePathEffectAdd(){}; + ~LivePathEffectAdd()= default;; /** * Show the dialog @@ -63,6 +63,8 @@ public: void on_activate(Gtk::FlowBoxChild *child); bool pop_description(GdkEventButton* evt, Glib::RefPtr builder_effect); bool fav_toggler(GdkEventButton* evt, Glib::RefPtr builder_effect); + bool mouseover(GdkEventCrossing* evt, GtkWidget *wdg); + bool mouseout(GdkEventCrossing* evt, GtkWidget *wdg); void reload_effect_list(); /** * Add button was clicked @@ -83,7 +85,7 @@ private: Gtk::Dialog *_LPEDialogSelector; Glib::RefPtr _builder; Gtk::FlowBox *_LPESelectorFlowBox; - Gtk::Popover *_LPESelectorEffectInfo; + Gtk::Popover *_LPESelectorEffectInfoPop; Gtk::Switch * _LPEExperimentals; Gtk::SearchEntry *_LPEFilter; Gtk::ScrolledWindow *_LPEScrolled; -- cgit v1.2.3