Inkscape
Vector Graphics Editor
Loading...
Searching...
No Matches
Inkscape::UI::Dialog::LivePathEffectEditor Class Referencefinal

#include <livepatheffect-editor.h>

Inheritance diagram for Inkscape::UI::Dialog::LivePathEffectEditor:
Inkscape::UI::Dialog::DialogBase

Public Types

using LPEExpander = std::pair< Gtk::Expander *, PathEffectSharedPtr >
 

Public Member Functions

 LivePathEffectEditor ()
 Constructor.
 
 ~LivePathEffectEditor () final
 
void focus_dialog () override
 
void move_list (int origin, int dest)
 
void showParams (LPEExpander const &expanderdata, bool changed)
 
- Public Member Functions inherited from Inkscape::UI::Dialog::DialogBase
 DialogBase (char const *prefs_path=nullptr, Glib::ustring dialog_type={})
 DialogBase constructor.
 
 DialogBase (DialogBase const &)=delete
 
DialogBaseoperator= (DialogBase const &)=delete
 
 ~DialogBase () override
 
virtual void update ()
 The update() method is essential to Gtk state management.
 
void setDesktop (SPDesktop *new_desktop)
 Called when the desktop might have changed for this dialog.
 
void on_map () override
 
Glib::ustring const & get_name () const
 
Glib::ustring const & getPrefsPath () const
 
Glib::ustring const & get_type () const
 
const Glib::ustring & get_icon () const
 
void blink ()
 Highlight notebook where dialog already exists.
 
void defocus_dialog ()
 
bool getShowing ()
 
void fix_inner_scroll (Gtk::ScrolledWindow &scrollwin)
 
SPDesktopgetDesktop () const
 

Private Member Functions

void add_lpes (UI::Widget::CompletionPopup &, bool symbolic, std::vector< LPEMetadata > &&lpes)
 
Glib::ustring get_tooltip (LivePathEffect::EffectType, Glib::ustring const &untranslated_label)
 
void clear_lpe_list ()
 
void selectionChanged (Inkscape::Selection *selection) final
 
void selectionModified (Inkscape::Selection *selection, unsigned flags) final
 
void onSelectionChanged (Inkscape::Selection *selection)
 
void expanded_notify (Gtk::Expander *expander)
 
void onAdd (Inkscape::LivePathEffect::EffectType etype)
 
bool showWarning (std::string const &msg)
 
void toggleVisible (Inkscape::LivePathEffect::Effect *lpe, Gtk::Button *visbutton)
 
bool can_apply (LivePathEffect::EffectType, Glib::ustring const &item_type, bool has_clip, bool has_mask)
 
void removeEffect (Gtk::Expander *expander)
 
bool on_drop (Gtk::Widget &widget, Glib::ValueBase const &value, int pos_target)
 
void effect_list_reload (SPLPEItem *lpeitem)
 
void selection_info ()
 
void clearMenu ()
 
void setMenu ()
 
bool lpeFlatten (PathEffectSharedPtr const &lperef)
 
SPLPEItemclonetolpeitem ()
 
void add_item_actions (PathEffectSharedPtr const &lperef, Glib::ustring const &, Gtk::Widget &item, bool is_first, bool is_last)
 
void enable_item_action (Gtk::Widget &item, Glib::ustring const &name, bool enabled)
 
void enable_fav_actions (Gtk::Widget &item, bool has_fav)
 
void do_item_action_undoable (PathEffectSharedPtr const &lperef, void(SPLPEItem::*const method)(), Glib::ustring const &description)
 
void do_item_action_defaults (PathEffectSharedPtr const &lpreref, void(LivePathEffect::Effect::*const method)())
 
void do_item_action_favorite (PathEffectSharedPtr const &lpreref, Glib::ustring const &untranslated_label, Gtk::Widget &item, bool has_fav)
 

Private Attributes

std::vector< LPEExpander_LPEExpanders
 
bool updating = false
 
SPLPEItemcurrent_lpeitem = nullptr
 
SPUse_current_use = nullptr
 
LPEExpander current_lperef = {nullptr, nullptr}
 
bool selection_changed_lock = false
 
bool dnd = false
 
Glib::RefPtr< Gtk::Builder > _builder
 
Gtk::ListBox & LPEListBox
 
int dndx = 0
 
int dndy = 0
 
Inkscape::UI::Widget::CompletionPopup _lpes_popup
 
Gtk::Box & _LPEContainer
 
Gtk::Box & _LPEAddContainer
 
Gtk::Label & _LPESelectionInfo
 
Gtk::ListBox & _LPEParentBox
 
Gtk::Box & _LPECurrentItem
 
PathEffectList effectlist
 
Glib::RefPtr< Gtk::ListStore > _LPEList
 
Glib::RefPtr< Gtk::ListStore > _LPEListFilter
 
const LivePathEffect::EnumEffectDataConverter< LivePathEffect::EffectType > & converter
 
Gtk::Widget * effectwidget = nullptr
 
Gtk::Widget * popupwidg = nullptr
 
GtkWidget * currentdrag = nullptr
 
bool _reload_menu = false
 
int _buttons_width = 0
 
bool _freezeexpander = false
 
Glib::ustring _item_type
 
bool _has_clip = false
 
bool _has_mask = false
 
bool _experimental = false
 

Additional Inherited Members

- Protected Member Functions inherited from Inkscape::UI::Dialog::DialogBase
InkscapeApplicationgetApp () const
 
SPDocumentgetDocument () const
 
SelectiongetSelection () const
 
void setShowing (bool showing)
 function called from notebook dialog that performs an update of the dialog and sets the dialog showing state true
 
- Protected Attributes inherited from Inkscape::UI::Dialog::DialogBase
Glib::ustring _name
 
Glib::ustring const _prefs_path
 
Glib::ustring const _dialog_type
 

Detailed Description

Definition at line 51 of file livepatheffect-editor.h.

Member Typedef Documentation

◆ LPEExpander

Definition at line 59 of file livepatheffect-editor.h.

Constructor & Destructor Documentation

◆ LivePathEffectEditor()

◆ ~LivePathEffectEditor()

Inkscape::UI::Dialog::LivePathEffectEditor::~LivePathEffectEditor ( )
final

Definition at line 153 of file livepatheffect-editor.cpp.

References sp_clear_custom_tooltip().

Member Function Documentation

◆ add_item_actions()

◆ add_lpes()

void Inkscape::UI::Dialog::LivePathEffectEditor::add_lpes ( UI::Widget::CompletionPopup popup,
bool  symbolic,
std::vector< LPEMetadata > &&  lpes 
)
private

◆ can_apply()

◆ clear_lpe_list()

void Inkscape::UI::Dialog::LivePathEffectEditor::clear_lpe_list ( )
private

Definition at line 947 of file livepatheffect-editor.cpp.

References Inkscape::UI::remove_all_children().

◆ clearMenu()

void Inkscape::UI::Dialog::LivePathEffectEditor::clearMenu ( )
private

Definition at line 240 of file livepatheffect-editor.cpp.

References _reload_menu, and sp_clear_custom_tooltip().

Referenced by selectionChanged(), and selectionModified().

◆ clonetolpeitem()

◆ do_item_action_defaults()

void Inkscape::UI::Dialog::LivePathEffectEditor::do_item_action_defaults ( PathEffectSharedPtr const &  lpreref,
void(LivePathEffect::Effect::*)()  method 
)
private

Definition at line 1086 of file livepatheffect-editor.cpp.

References current_lpeitem, and effect_list_reload().

◆ do_item_action_favorite()

void Inkscape::UI::Dialog::LivePathEffectEditor::do_item_action_favorite ( PathEffectSharedPtr const &  lpreref,
Glib::ustring const &  untranslated_label,
Gtk::Widget &  item,
bool  has_fav 
)
private

◆ do_item_action_undoable()

void Inkscape::UI::Dialog::LivePathEffectEditor::do_item_action_undoable ( PathEffectSharedPtr const &  lperef,
void(SPLPEItem::*)()  method,
Glib::ustring const &  description 
)
private

◆ effect_list_reload()

◆ enable_fav_actions()

void Inkscape::UI::Dialog::LivePathEffectEditor::enable_fav_actions ( Gtk::Widget &  item,
bool  has_fav 
)
private

Definition at line 1070 of file livepatheffect-editor.cpp.

References item.

Referenced by do_item_action_favorite().

◆ enable_item_action()

void Inkscape::UI::Dialog::LivePathEffectEditor::enable_item_action ( Gtk::Widget &  item,
Glib::ustring const &  name,
bool  enabled 
)
private

◆ expanded_notify()

void Inkscape::UI::Dialog::LivePathEffectEditor::expanded_notify ( Gtk::Expander *  expander)
private

Definition at line 859 of file livepatheffect-editor.cpp.

References Inkscape::UI::Tools::sp_update_helperpath(), and w.

◆ focus_dialog()

void Inkscape::UI::Dialog::LivePathEffectEditor::focus_dialog ( )
overridevirtual

◆ get_tooltip()

Glib::ustring Inkscape::UI::Dialog::LivePathEffectEditor::get_tooltip ( LivePathEffect::EffectType  type,
Glib::ustring const &  untranslated_label 
)
private

Definition at line 347 of file livepatheffect-editor.cpp.

◆ lpeFlatten()

bool Inkscape::UI::Dialog::LivePathEffectEditor::lpeFlatten ( PathEffectSharedPtr const &  lperef)
private

Definition at line 909 of file livepatheffect-editor.cpp.

References Inkscape::DocumentUndo::done().

◆ move_list()

void Inkscape::UI::Dialog::LivePathEffectEditor::move_list ( int  origin,
int  dest 
)

◆ on_drop()

bool Inkscape::UI::Dialog::LivePathEffectEditor::on_drop ( Gtk::Widget &  widget,
Glib::ValueBase const &  value,
int  pos_target 
)
private

Definition at line 629 of file livepatheffect-editor.cpp.

◆ onAdd()

◆ onSelectionChanged()

void Inkscape::UI::Dialog::LivePathEffectEditor::onSelectionChanged ( Inkscape::Selection selection)
private

◆ removeEffect()

void Inkscape::UI::Dialog::LivePathEffectEditor::removeEffect ( Gtk::Expander *  expander)
private

Definition at line 923 of file livepatheffect-editor.cpp.

References Inkscape::DocumentUndo::done(), and w.

◆ selection_info()

◆ selectionChanged()

void Inkscape::UI::Dialog::LivePathEffectEditor::selectionChanged ( Inkscape::Selection selection)
finalprivatevirtual

◆ selectionModified()

void Inkscape::UI::Dialog::LivePathEffectEditor::selectionModified ( Inkscape::Selection selection,
unsigned  flags 
)
finalprivate

◆ setMenu()

◆ showParams()

◆ showWarning()

bool Inkscape::UI::Dialog::LivePathEffectEditor::showWarning ( std::string const &  msg)
private

◆ toggleVisible()

Member Data Documentation

◆ _builder

Glib::RefPtr<Gtk::Builder> Inkscape::UI::Dialog::LivePathEffectEditor::_builder
private

Definition at line 70 of file livepatheffect-editor.h.

◆ _buttons_width

int Inkscape::UI::Dialog::LivePathEffectEditor::_buttons_width = 0
private

Definition at line 126 of file livepatheffect-editor.h.

◆ _current_use

SPUse* Inkscape::UI::Dialog::LivePathEffectEditor::_current_use = nullptr
private

Definition at line 66 of file livepatheffect-editor.h.

Referenced by selectionModified().

◆ _experimental

bool Inkscape::UI::Dialog::LivePathEffectEditor::_experimental = false
private

Definition at line 131 of file livepatheffect-editor.h.

Referenced by LivePathEffectEditor().

◆ _freezeexpander

bool Inkscape::UI::Dialog::LivePathEffectEditor::_freezeexpander = false
private

Definition at line 127 of file livepatheffect-editor.h.

◆ _has_clip

bool Inkscape::UI::Dialog::LivePathEffectEditor::_has_clip = false
private

Definition at line 129 of file livepatheffect-editor.h.

◆ _has_mask

bool Inkscape::UI::Dialog::LivePathEffectEditor::_has_mask = false
private

Definition at line 130 of file livepatheffect-editor.h.

◆ _item_type

Glib::ustring Inkscape::UI::Dialog::LivePathEffectEditor::_item_type
private

Definition at line 128 of file livepatheffect-editor.h.

Referenced by do_item_action_favorite().

◆ _LPEAddContainer

Gtk::Box& Inkscape::UI::Dialog::LivePathEffectEditor::_LPEAddContainer
private

Definition at line 114 of file livepatheffect-editor.h.

Referenced by LivePathEffectEditor().

◆ _LPEContainer

Gtk::Box& Inkscape::UI::Dialog::LivePathEffectEditor::_LPEContainer
private

Definition at line 113 of file livepatheffect-editor.h.

Referenced by LivePathEffectEditor().

◆ _LPECurrentItem

Gtk::Box& Inkscape::UI::Dialog::LivePathEffectEditor::_LPECurrentItem
private

Definition at line 117 of file livepatheffect-editor.h.

◆ _LPEExpanders

std::vector<LPEExpander> Inkscape::UI::Dialog::LivePathEffectEditor::_LPEExpanders
private

Definition at line 63 of file livepatheffect-editor.h.

◆ _LPEList

Glib::RefPtr<Gtk::ListStore> Inkscape::UI::Dialog::LivePathEffectEditor::_LPEList
private

Definition at line 119 of file livepatheffect-editor.h.

◆ _LPEListFilter

Glib::RefPtr<Gtk::ListStore> Inkscape::UI::Dialog::LivePathEffectEditor::_LPEListFilter
private

Definition at line 120 of file livepatheffect-editor.h.

◆ _LPEParentBox

Gtk::ListBox& Inkscape::UI::Dialog::LivePathEffectEditor::_LPEParentBox
private

Definition at line 116 of file livepatheffect-editor.h.

◆ _lpes_popup

Inkscape::UI::Widget::CompletionPopup Inkscape::UI::Dialog::LivePathEffectEditor::_lpes_popup
private

Definition at line 112 of file livepatheffect-editor.h.

Referenced by focus_dialog(), and LivePathEffectEditor().

◆ _LPESelectionInfo

Gtk::Label& Inkscape::UI::Dialog::LivePathEffectEditor::_LPESelectionInfo
private

Definition at line 115 of file livepatheffect-editor.h.

◆ _reload_menu

bool Inkscape::UI::Dialog::LivePathEffectEditor::_reload_menu = false
private

Definition at line 125 of file livepatheffect-editor.h.

Referenced by clearMenu(), and do_item_action_favorite().

◆ converter

const LivePathEffect::EnumEffectDataConverter<LivePathEffect::EffectType>& Inkscape::UI::Dialog::LivePathEffectEditor::converter
private

Definition at line 121 of file livepatheffect-editor.h.

Referenced by can_apply().

◆ current_lpeitem

SPLPEItem* Inkscape::UI::Dialog::LivePathEffectEditor::current_lpeitem = nullptr
private

◆ current_lperef

LPEExpander Inkscape::UI::Dialog::LivePathEffectEditor::current_lperef = {nullptr, nullptr}
private

Definition at line 67 of file livepatheffect-editor.h.

Referenced by selectionModified().

◆ currentdrag

GtkWidget* Inkscape::UI::Dialog::LivePathEffectEditor::currentdrag = nullptr
private

Definition at line 124 of file livepatheffect-editor.h.

◆ dnd

bool Inkscape::UI::Dialog::LivePathEffectEditor::dnd = false
private

Definition at line 69 of file livepatheffect-editor.h.

Referenced by LivePathEffectEditor().

◆ dndx

int Inkscape::UI::Dialog::LivePathEffectEditor::dndx = 0
private

Definition at line 72 of file livepatheffect-editor.h.

◆ dndy

int Inkscape::UI::Dialog::LivePathEffectEditor::dndy = 0
private

Definition at line 73 of file livepatheffect-editor.h.

◆ effectlist

PathEffectList Inkscape::UI::Dialog::LivePathEffectEditor::effectlist
private

Definition at line 118 of file livepatheffect-editor.h.

Referenced by selectionModified().

◆ effectwidget

Gtk::Widget* Inkscape::UI::Dialog::LivePathEffectEditor::effectwidget = nullptr
private

Definition at line 122 of file livepatheffect-editor.h.

◆ LPEListBox

Gtk::ListBox& Inkscape::UI::Dialog::LivePathEffectEditor::LPEListBox
private

Definition at line 71 of file livepatheffect-editor.h.

◆ popupwidg

Gtk::Widget* Inkscape::UI::Dialog::LivePathEffectEditor::popupwidg = nullptr
private

Definition at line 123 of file livepatheffect-editor.h.

◆ selection_changed_lock

bool Inkscape::UI::Dialog::LivePathEffectEditor::selection_changed_lock = false
private

Definition at line 68 of file livepatheffect-editor.h.

Referenced by selectionChanged(), and selectionModified().

◆ updating

bool Inkscape::UI::Dialog::LivePathEffectEditor::updating = false
private

Definition at line 64 of file livepatheffect-editor.h.


The documentation for this class was generated from the following files: