diff options
| author | Jabiertxof <jabier.arraiza@marker.es> | 2019-02-13 21:11:55 +0000 |
|---|---|---|
| committer | Jabier Arraiza <jabier.arraiza@marker.es> | 2019-02-18 21:18:27 +0000 |
| commit | bc7a5b483b3442aebc9558d3e4640413485901c1 (patch) | |
| tree | 30ea6beeab3b2651d4b68ea8c66612125cf79971 | |
| parent | Add descriptions (diff) | |
| download | inkscape-bc7a5b483b3442aebc9558d3e4640413485901c1.tar.gz inkscape-bc7a5b483b3442aebc9558d3e4640413485901c1.zip | |
Improving window position
| -rw-r--r-- | share/ui/dialog-livepatheffect-add.ui | 97 | ||||
| -rw-r--r-- | src/live_effects/effect.cpp | 2 | ||||
| -rw-r--r-- | src/ui/dialog/livepatheffect-add.cpp | 29 | ||||
| -rw-r--r-- | src/ui/dialog/livepatheffect-add.h | 2 |
4 files changed, 83 insertions, 47 deletions
diff --git a/share/ui/dialog-livepatheffect-add.ui b/share/ui/dialog-livepatheffect-add.ui index ca02fcb4c..2e3ca244c 100644 --- a/share/ui/dialog-livepatheffect-add.ui +++ b/share/ui/dialog-livepatheffect-add.ui @@ -248,36 +248,75 @@ <property name="modal">False</property> <property name="transitions_enabled">False</property> <child> - <object class="GtkBox"> + <object class="GtkEventBox" id="LPESelectorEffectInfoEventBox"> + <property name="name">LPESelectorEffectInfoEventBox</property> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="orientation">vertical</property> <child> <object class="GtkBox"> <property name="visible">True</property> <property name="can_focus">False</property> + <property name="orientation">vertical</property> <child> - <object class="GtkImage" id="LPESelectorEffectInfoIcon"> - <property name="name">LPESelectorEffectInfoIcon</property> + <object class="GtkBox"> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="halign">start</property> - <property name="pixel_size">40</property> - <property name="icon_name">align-vertical-baseline</property> - <property name="icon_size">6</property> + <child> + <object class="GtkImage" id="LPESelectorEffectInfoIcon"> + <property name="name">LPESelectorEffectInfoIcon</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="halign">start</property> + <property name="pixel_size">40</property> + <property name="icon_name">align-vertical-baseline</property> + <property name="icon_size">6</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="LPESelectorEffectInfoName"> + <property name="name">LPESelectorEffectInfoName</property> + <property name="visible">True</property> + <property name="can_focus">False</property> + <property name="label" translatable="yes">Name</property> + <property name="justify">center</property> + <property name="wrap">True</property> + <property name="max_width_chars">20</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> </object> <packing> <property name="expand">False</property> - <property name="fill">False</property> + <property name="fill">True</property> <property name="position">0</property> </packing> </child> <child> - <object class="GtkLabel" id="LPESelectorEffectInfoName"> - <property name="name">LPESelectorEffectInfoName</property> + <object class="GtkSeparator"> + <property name="visible">True</property> + <property name="can_focus">False</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">True</property> + <property name="position">1</property> + </packing> + </child> + <child> + <object class="GtkLabel" id="LPESelectorEffectInfoDescription"> + <property name="name">LPESelectorEffectInfoDescription</property> <property name="visible">True</property> <property name="can_focus">False</property> - <property name="label" translatable="yes">Name</property> + <property name="label" translatable="yes">Description</property> <property name="justify">center</property> <property name="wrap">True</property> <property name="max_width_chars">20</property> @@ -285,42 +324,10 @@ <packing> <property name="expand">False</property> <property name="fill">True</property> - <property name="position">1</property> + <property name="position">2</property> </packing> </child> </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">0</property> - </packing> - </child> - <child> - <object class="GtkSeparator"> - <property name="visible">True</property> - <property name="can_focus">False</property> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">1</property> - </packing> - </child> - <child> - <object class="GtkLabel" id="LPESelectorEffectInfoDescription"> - <property name="name">LPESelectorEffectInfoDescription</property> - <property name="visible">True</property> - <property name="can_focus">False</property> - <property name="label" translatable="yes">Description</property> - <property name="justify">center</property> - <property name="wrap">True</property> - <property name="max_width_chars">20</property> - </object> - <packing> - <property name="expand">False</property> - <property name="fill">True</property> - <property name="position">2</property> - </packing> </child> </object> </child> diff --git a/src/live_effects/effect.cpp b/src/live_effects/effect.cpp index 935b02826..613eef9e6 100644 --- a/src/live_effects/effect.cpp +++ b/src/live_effects/effect.cpp @@ -614,7 +614,7 @@ const EnumEffectData<EffectType> LPETypeData[] = { , N_("Offset") //label , "offset" //key , "offset" //icon - , N_("Offset a ittem also with line joins cusp") //description + , N_("Offset a item also with line joins cusp") //description , true //on_path , true //on_shape , true //on_group diff --git a/src/ui/dialog/livepatheffect-add.cpp b/src/ui/dialog/livepatheffect-add.cpp index 84090c2e8..cc4375f37 100644 --- a/src/ui/dialog/livepatheffect-add.cpp +++ b/src/ui/dialog/livepatheffect-add.cpp @@ -92,6 +92,7 @@ LivePathEffectAdd::LivePathEffectAdd() _builder->get_widget("LPEExperimentals", _LPEExperimentals); _builder->get_widget("LPEScrolled", _LPEScrolled); _builder->get_widget("LPESelectorEffectEventFavShow", _LPESelectorEffectEventFavShow); + _builder->get_widget("LPESelectorEffectInfoEventBox", _LPESelectorEffectInfoEventBox); _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 ); @@ -139,7 +140,6 @@ LivePathEffectAdd::LivePathEffectAdd() LPESelectorButtonBox->signal_leave_notify_event().connect(sigc::bind<GtkWidget *>(sigc::mem_fun(*this, &LivePathEffectAdd::mouseout), GTK_WIDGET(LPESelectorEffect->gobj()))); LPESelectorEffect->signal_enter_notify_event().connect(sigc::bind<GtkWidget *>(sigc::mem_fun(*this, &LivePathEffectAdd::mouseover), GTK_WIDGET(LPESelectorEffect->gobj()))); LPESelectorEffect->signal_leave_notify_event().connect(sigc::bind<GtkWidget *>(sigc::mem_fun(*this, &LivePathEffectAdd::mouseout), GTK_WIDGET(LPESelectorEffect->gobj()))); - _LPESelectorFlowBox->insert(*LPESelectorEffect, i); } _visiblelpe = _LPESelectorFlowBox->get_children().size(); @@ -147,10 +147,25 @@ LivePathEffectAdd::LivePathEffectAdd() _LPESelectorEffectEventFavShow->signal_enter_notify_event().connect(sigc::bind<GtkWidget *>(sigc::mem_fun(*this, &LivePathEffectAdd::mouseover), GTK_WIDGET(_LPESelectorEffectEventFavShow->gobj()))); _LPESelectorEffectEventFavShow->signal_leave_notify_event().connect(sigc::bind<GtkWidget *>(sigc::mem_fun(*this, &LivePathEffectAdd::mouseout), GTK_WIDGET(_LPESelectorEffectEventFavShow->gobj()))); _LPESelectorEffectEventFavShow->signal_button_press_event().connect(sigc::mem_fun(*this, &LivePathEffectAdd::show_fav_toggler)); + _LPESelectorEffectInfoEventBox->signal_button_press_event().connect(sigc::mem_fun(*this, &LivePathEffectAdd::hide_pop_description)); + _LPESelectorEffectInfoEventBox->signal_enter_notify_event().connect(sigc::bind<GtkWidget *>(sigc::mem_fun(*this, &LivePathEffectAdd::mouseover), GTK_WIDGET(_LPESelectorEffectInfoEventBox->gobj()))); + _LPESelectorEffectInfoEventBox->signal_leave_notify_event().connect(sigc::bind<GtkWidget *>(sigc::mem_fun(*this, &LivePathEffectAdd::mouseout), GTK_WIDGET(_LPESelectorEffectInfoEventBox->gobj()))); _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(); + int width; + int height; + int original_width; + int original_height; + _LPEDialogSelector->get_default_size (original_width, original_height); + _LPEDialogSelector->get_size (width, height); + if( width == original_width && height == original_height ){ + Gtk::Window *window = SP_ACTIVE_DESKTOP->getToplevel(); + window->get_size (width, height); + _LPEDialogSelector->resize(std::min(width - 300, 1800), height - 300); + reload_effect_list(); + } } void LivePathEffectAdd::on_activate(Gtk::FlowBoxChild *child) @@ -208,6 +223,12 @@ bool LivePathEffectAdd::pop_description(GdkEventButton* evt, Glib::RefPtr<Gtk::B return true; } +bool LivePathEffectAdd::hide_pop_description(GdkEventButton* evt) +{ + _LPESelectorEffectInfoPop->hide(); + return true; +} + bool LivePathEffectAdd::fav_toggler(GdkEventButton* evt, Glib::RefPtr<Gtk::Builder> builder_effect) { Gtk::EventBox *LPESelectorEffect; @@ -320,6 +341,12 @@ void LivePathEffectAdd::reload_effect_list() _LPEInfo->set_visible(false); _LPEInfo->get_style_context()->remove_class("lpeinfowarn"); } + if (!_showfavs && + _LPEFilter->get_text().empty() && + _LPEDialogSelector->get_allocated_height() - 200 > _LPESelectorFlowBox->get_allocated_height()) + { + _LPEDialogSelector->resize(_LPEDialogSelector->get_allocated_width(), _LPESelectorFlowBox->get_allocated_height() + 200); + } } void LivePathEffectAdd::on_search() diff --git a/src/ui/dialog/livepatheffect-add.h b/src/ui/dialog/livepatheffect-add.h index 709cf2996..af411715d 100644 --- a/src/ui/dialog/livepatheffect-add.h +++ b/src/ui/dialog/livepatheffect-add.h @@ -62,6 +62,7 @@ public: void on_search(); void on_activate(Gtk::FlowBoxChild *child); bool pop_description(GdkEventButton* evt, Glib::RefPtr<Gtk::Builder> builder_effect); + bool hide_pop_description(GdkEventButton* evt); bool fav_toggler(GdkEventButton* evt, Glib::RefPtr<Gtk::Builder> builder_effect); bool show_fav_toggler(GdkEventButton* evt); bool mouseover(GdkEventCrossing* evt, GtkWidget *wdg); @@ -88,6 +89,7 @@ private: Gtk::FlowBox *_LPESelectorFlowBox; Gtk::Popover *_LPESelectorEffectInfoPop; Gtk::EventBox *_LPESelectorEffectEventFavShow; + Gtk::EventBox *_LPESelectorEffectInfoEventBox; Gtk::Switch * _LPEExperimentals; Gtk::SearchEntry *_LPEFilter; Gtk::ScrolledWindow *_LPEScrolled; |
