Inkscape
Vector Graphics Editor
|
#include <gradient-editor.h>
Public Member Functions | |
GradientEditor (const char *prefs) | |
~GradientEditor () noexcept final | |
decltype(_signal_changed) | signal_changed () const |
decltype(_signal_grabbed) | signal_grabbed () const |
decltype(_signal_dragged) | signal_dragged () const |
decltype(_signal_released) | signal_released () const |
void | setGradient (SPGradient *gradient) final |
SPGradient * | getVector () final |
void | setVector (SPDocument *doc, SPGradient *vector) final |
void | setMode (SelectorMode mode) final |
void | setUnits (SPGradientUnits units) final |
SPGradientUnits | getUnits () final |
void | setSpread (SPGradientSpread spread) final |
SPGradientSpread | getSpread () final |
void | selectStop (SPStop *selected) final |
![]() | |
sigc::signal< void(SPStop *)> & | signal_stop_selected () |
void | emit_stop_selected (SPStop *stop) |
Private Member Functions | |
void | set_gradient (SPGradient *gradient) |
void | stop_selected () |
void | insert_stop_at (double offset) |
void | add_stop (int index) |
void | duplicate_stop () |
void | delete_stop (int index) |
void | show_stops (bool visible) |
void | update_stops_layout () |
void | set_repeat_mode (SPGradientSpread mode) |
void | set_repeat_icon (SPGradientSpread mode) |
void | reverse_gradient () |
void | turn_gradient (double angle, bool relative) |
void | set_stop_color (Colors::Color const &color) |
std::optional< Gtk::TreeRow > | current_stop () |
SPStop * | get_nth_stop (size_t index) |
SPStop * | get_current_stop () |
bool | select_stop (size_t index) |
void | set_stop_offset (size_t index, double offset) |
SPGradient * | get_gradient_vector () |
void | fire_stop_selected (SPStop *stop) |
Private Attributes | |
sigc::signal< void()> | _signal_grabbed |
sigc::signal< void()> | _signal_dragged |
sigc::signal< void()> | _signal_released |
sigc::signal< void(SPGradient *)> | _signal_changed |
Glib::RefPtr< Gtk::Builder > | _builder |
GradientSelector * | _selector |
std::shared_ptr< Colors::ColorSet > | _colors |
std::unique_ptr< UI::Widget::PopoverMenu > | _repeat_popover |
Gtk::Image & | _repeat_icon |
GradientWithStops | _gradient_image |
Glib::RefPtr< Gtk::ListStore > | _stop_list_store |
Gtk::TreeModelColumnRecord | _stop_columns |
Gtk::TreeModelColumn< SPStop * > | _stopObj |
Gtk::TreeModelColumn< size_t > | _stopIdx |
Gtk::TreeModelColumn< Glib::ustring > | _stopID |
Gtk::TreeModelColumn< Glib::RefPtr< Gdk::Pixbuf > > | _stop_color |
Gtk::TreeView & | _stop_tree |
Gtk::Button & | _turn_gradient |
Glib::RefPtr< Gtk::Adjustment > | _angle_adj |
Gtk::SpinButton & | _offset_btn |
Gtk::Button & | _add_stop |
Gtk::Button & | _delete_stop |
Gtk::Expander & | _show_stops_list |
bool | _stops_list_visible = true |
Gtk::Box & | _stops_gallery |
Gtk::Box & | _colors_box |
Gtk::ToggleButton & | _linear_btn |
Gtk::ToggleButton & | _radial_btn |
Gtk::Grid & | _main_grid |
SPGradient * | _gradient = nullptr |
SPDocument * | _document = nullptr |
OperationBlocker | _update |
OperationBlocker | _notification |
Glib::ustring | _prefs |
Additional Inherited Members | |
![]() | |
enum | SelectorMode { MODE_LINEAR , MODE_RADIAL , MODE_SWATCH } |
Definition at line 49 of file gradient-editor.h.
Inkscape::UI::Widget::GradientEditor::GradientEditor | ( | const char * | prefs | ) |
Definition at line 161 of file gradient-editor.cpp.
References _add_stop, _angle_adj, _builder, _colors, _colors_box, _delete_stop, _gradient_image, _linear_btn, _main_grid, _offset_btn, _prefs, _radial_btn, _repeat_popover, _selector, _show_stops_list, _signal_changed, _stop_color, _stop_columns, _stop_list_store, _stop_tree, _stopID, _stopIdx, _stopObj, _stops_list_visible, _turn_gradient, _update, add_stop(), Inkscape::append(), Inkscape::UI::create_builder(), current_stop(), delete_stop(), fire_stop_selected(), Inkscape::Preferences::get(), get_current_stop(), Inkscape::UI::Widget::get_repeat_icon(), Inkscape::UI::get_widget(), Inkscape::Preferences::getBool(), index, insert_stop_at(), item, mode, offset, OperationBlocker::pending(), reverse_gradient(), select_stop(), Inkscape::UI::Widget::GradientSelector::set_gradient_size(), Inkscape::UI::Widget::set_icon(), Inkscape::UI::Widget::GradientSelector::set_name_col_size(), set_repeat_icon(), set_repeat_mode(), set_stop_color(), set_stop_offset(), Inkscape::UI::Widget::GradientSelector::show_edit_button(), show_stops(), Inkscape::UI::Widget::GradientWithStops::signal_add_stop_at(), Inkscape::UI::Widget::GradientSelector::signal_changed(), Inkscape::UI::Widget::GradientWithStops::signal_delete_stop(), Inkscape::UI::Widget::GradientWithStops::signal_stop_offset_changed(), Inkscape::UI::Widget::GradientWithStops::signal_stop_selected(), SP_GRADIENT_SPREAD_PAD, SP_GRADIENT_SPREAD_REFLECT, SP_GRADIENT_SPREAD_REPEAT, turn_gradient(), and update_stops_layout().
|
finalnoexcept |
Definition at line 315 of file gradient-editor.cpp.
|
private |
Definition at line 406 of file gradient-editor.cpp.
References current, fire_stop_selected(), get_gradient_vector(), index, select_stop(), sp_get_nth_stop(), sp_gradient_add_stop(), and sp_number_of_stops_before_stop().
Referenced by GradientEditor().
|
private |
Definition at line 339 of file gradient-editor.cpp.
References _stop_tree.
Referenced by get_current_stop(), GradientEditor(), set_stop_color(), and stop_selected().
|
private |
Definition at line 417 of file gradient-editor.cpp.
References get_gradient_vector(), index, sp_get_nth_stop(), and sp_gradient_delete_stop().
Referenced by GradientEditor().
|
private |
|
private |
Definition at line 675 of file gradient-editor.cpp.
References _notification, OperationBlocker::block(), GradientSelectorInterface::emit_stop_selected(), and OperationBlocker::pending().
Referenced by add_stop(), GradientEditor(), and insert_stop_at().
|
private |
Definition at line 667 of file gradient-editor.cpp.
References _stopObj, and current_stop().
Referenced by GradientEditor().
|
private |
Definition at line 564 of file gradient-editor.cpp.
References _gradient, and sp_gradient_get_forked_vector_if_necessary().
Referenced by add_stop(), delete_stop(), get_nth_stop(), insert_stop_at(), reverse_gradient(), and set_stop_color().
|
private |
Definition at line 350 of file gradient-editor.cpp.
References get_gradient_vector(), index, and sp_get_nth_stop().
Referenced by set_stop_offset().
|
finalvirtual |
Implements GradientSelectorInterface.
Definition at line 545 of file gradient-editor.cpp.
References _selector, and Inkscape::UI::Widget::GradientSelector::getSpread().
|
finalvirtual |
Implements GradientSelectorInterface.
Definition at line 537 of file gradient-editor.cpp.
References _selector, and Inkscape::UI::Widget::GradientSelector::getUnits().
|
finalvirtual |
Implements GradientSelectorInterface.
Definition at line 520 of file gradient-editor.cpp.
References _selector, and Inkscape::UI::Widget::GradientSelector::getVector().
|
private |
Definition at line 390 of file gradient-editor.cpp.
References fire_stop_selected(), get_gradient_vector(), offset, select_stop(), sp_gradient_add_stop_at(), and sp_number_of_stops_before_stop().
Referenced by GradientEditor().
|
private |
Definition at line 477 of file gradient-editor.cpp.
References _document, _gradient, Inkscape::DocumentUndo::done(), get_gradient_vector(), and sp_gradient_reverse_vector().
Referenced by GradientEditor().
|
private |
Definition at line 650 of file gradient-editor.cpp.
References _gradient, _stop_tree, index, and items.
Referenced by add_stop(), GradientEditor(), insert_stop_at(), selectStop(), and set_gradient().
|
finalvirtual |
Reimplemented from GradientSelectorInterface.
Definition at line 549 of file gradient-editor.cpp.
References _notification, _stop_tree, OperationBlocker::block(), items, OperationBlocker::pending(), and select_stop().
|
private |
Definition at line 569 of file gradient-editor.cpp.
References _angle_adj, _builder, _gradient_image, _stop_color, _stop_list_store, _stop_tree, _stopID, _stopIdx, _stopObj, _turn_gradient, _update, OperationBlocker::block(), child, SPObject::children, SPGradient::ensureVector(), Inkscape::UI::Widget::get_stop_pixmap(), SPGradient::getSpread(), SPGradient::getVector(), SPGradient::hasStops(), index, SPGradient::isSpreadSet(), Inkscape::UI::Widget::line_angle(), linear(), mode, select_stop(), Inkscape::UI::Widget::GradientWithStops::set_gradient(), set_repeat_icon(), SP_GRADIENT_SPREAD_PAD, and stop_selected().
Referenced by setGradient().
|
private |
Definition at line 505 of file gradient-editor.cpp.
References _repeat_icon, Inkscape::UI::Widget::get_repeat_icon(), and mode.
Referenced by GradientEditor(), set_gradient(), and set_repeat_mode().
|
private |
Definition at line 489 of file gradient-editor.cpp.
References _document, _gradient, _update, OperationBlocker::block(), Inkscape::DocumentUndo::done(), mode, OperationBlocker::pending(), set_repeat_icon(), SPGradient::setSpread(), and SPObject::updateRepr().
Referenced by GradientEditor().
|
private |
Definition at line 318 of file gradient-editor.cpp.
References _document, _stop_color, _stopIdx, _update, OperationBlocker::block(), current_stop(), get_gradient_vector(), Inkscape::UI::Widget::get_stop_pixmap(), index, OperationBlocker::pending(), sp_get_nth_stop(), and sp_set_gradient_stop_color().
Referenced by GradientEditor().
|
private |
Definition at line 632 of file gradient-editor.cpp.
References _update, OperationBlocker::block(), SPObject::document, get_nth_stop(), SPObject::getRepr(), index, Inkscape::DocumentUndo::maybeDone(), SPStop::offset, offset, and OperationBlocker::pending().
Referenced by GradientEditor().
|
finalvirtual |
Implements GradientSelectorInterface.
Definition at line 512 of file gradient-editor.cpp.
References _document, _gradient, _notification, _update, OperationBlocker::block(), SPObject::document, and set_gradient().
|
finalvirtual |
Implements GradientSelectorInterface.
Definition at line 529 of file gradient-editor.cpp.
References _selector, mode, and Inkscape::UI::Widget::GradientSelector::setMode().
Referenced by Inkscape::UI::Widget::PaintSelector::set_mode_gradient().
|
finalvirtual |
Implements GradientSelectorInterface.
Definition at line 541 of file gradient-editor.cpp.
References _selector, and Inkscape::UI::Widget::GradientSelector::setSpread().
|
finalvirtual |
Implements GradientSelectorInterface.
Definition at line 533 of file gradient-editor.cpp.
References _selector, and Inkscape::UI::Widget::GradientSelector::setUnits().
|
finalvirtual |
Implements GradientSelectorInterface.
Definition at line 524 of file gradient-editor.cpp.
References _selector, _update, OperationBlocker::block(), and Inkscape::UI::Widget::GradientSelector::setVector().
Referenced by Inkscape::UI::Widget::PaintSelector::set_mode_gradient().
|
private |
Definition at line 427 of file gradient-editor.cpp.
References _prefs, _stops_list_visible, Inkscape::Preferences::get(), Inkscape::Preferences::setBool(), update_stops_layout(), and visible.
Referenced by GradientEditor().
|
inline |
Definition at line 61 of file gradient-editor.h.
References _signal_changed.
Referenced by Inkscape::UI::Widget::PaintSelector::set_mode_gradient().
|
inline |
Definition at line 63 of file gradient-editor.h.
References _signal_dragged.
Referenced by Inkscape::UI::Widget::PaintSelector::set_mode_gradient().
|
inline |
Definition at line 62 of file gradient-editor.h.
References _signal_grabbed.
Referenced by Inkscape::UI::Widget::PaintSelector::set_mode_gradient().
|
inline |
Definition at line 64 of file gradient-editor.h.
References _signal_released.
Referenced by Inkscape::UI::Widget::PaintSelector::set_mode_gradient().
|
private |
Definition at line 358 of file gradient-editor.cpp.
References _colors, _gradient_image, _offset_btn, _stopIdx, _stopObj, _update, OperationBlocker::block(), current_stop(), SPStop::getColor(), SPObject::getId(), index, SPStop::offset, Inkscape::UI::Widget::GradientWithStops::set_focused_stop(), and sp_get_before_after_stops().
Referenced by set_gradient().
|
private |
Definition at line 448 of file gradient-editor.cpp.
References _document, _gradient, _update, OperationBlocker::block(), Inkscape::DocumentUndo::done(), Inkscape::UI::Widget::line_angle(), linear(), OperationBlocker::pending(), and SPObject::updateRepr().
Referenced by GradientEditor().
|
private |
Definition at line 433 of file gradient-editor.cpp.
References _stops_gallery, and _stops_list_visible.
Referenced by GradientEditor(), and show_stops().
|
private |
Definition at line 114 of file gradient-editor.h.
Referenced by GradientEditor().
|
private |
Definition at line 112 of file gradient-editor.h.
Referenced by GradientEditor(), and set_gradient().
|
private |
Definition at line 98 of file gradient-editor.h.
Referenced by GradientEditor(), and set_gradient().
|
private |
Definition at line 100 of file gradient-editor.h.
Referenced by GradientEditor(), and stop_selected().
|
private |
Definition at line 119 of file gradient-editor.h.
Referenced by GradientEditor().
|
private |
Definition at line 115 of file gradient-editor.h.
Referenced by GradientEditor().
|
private |
Definition at line 124 of file gradient-editor.h.
Referenced by reverse_gradient(), set_repeat_mode(), set_stop_color(), setGradient(), and turn_gradient().
|
private |
Definition at line 123 of file gradient-editor.h.
Referenced by get_gradient_vector(), reverse_gradient(), select_stop(), set_repeat_mode(), setGradient(), and turn_gradient().
|
private |
Definition at line 103 of file gradient-editor.h.
Referenced by GradientEditor(), set_gradient(), and stop_selected().
|
private |
Definition at line 120 of file gradient-editor.h.
Referenced by GradientEditor().
|
private |
Definition at line 122 of file gradient-editor.h.
Referenced by GradientEditor().
|
private |
Definition at line 126 of file gradient-editor.h.
Referenced by fire_stop_selected(), selectStop(), and setGradient().
|
private |
Definition at line 113 of file gradient-editor.h.
Referenced by GradientEditor(), and stop_selected().
|
private |
Definition at line 127 of file gradient-editor.h.
Referenced by GradientEditor(), and show_stops().
|
private |
Definition at line 121 of file gradient-editor.h.
Referenced by GradientEditor().
|
private |
Definition at line 102 of file gradient-editor.h.
Referenced by set_repeat_icon().
|
private |
Definition at line 101 of file gradient-editor.h.
Referenced by GradientEditor().
|
private |
Definition at line 99 of file gradient-editor.h.
Referenced by getSpread(), getUnits(), getVector(), GradientEditor(), setMode(), setSpread(), setUnits(), and setVector().
|
private |
Definition at line 116 of file gradient-editor.h.
Referenced by GradientEditor().
|
private |
Definition at line 58 of file gradient-editor.h.
Referenced by GradientEditor(), and signal_changed().
|
private |
Definition at line 56 of file gradient-editor.h.
Referenced by signal_dragged().
|
private |
Definition at line 55 of file gradient-editor.h.
Referenced by signal_grabbed().
|
private |
Definition at line 57 of file gradient-editor.h.
Referenced by signal_released().
|
private |
Definition at line 109 of file gradient-editor.h.
Referenced by GradientEditor(), set_gradient(), and set_stop_color().
|
private |
Definition at line 105 of file gradient-editor.h.
Referenced by GradientEditor().
|
private |
Definition at line 104 of file gradient-editor.h.
Referenced by GradientEditor(), and set_gradient().
|
private |
Definition at line 110 of file gradient-editor.h.
Referenced by current_stop(), GradientEditor(), select_stop(), selectStop(), and set_gradient().
|
private |
Definition at line 108 of file gradient-editor.h.
Referenced by GradientEditor(), and set_gradient().
|
private |
Definition at line 107 of file gradient-editor.h.
Referenced by GradientEditor(), set_gradient(), set_stop_color(), and stop_selected().
|
private |
Definition at line 106 of file gradient-editor.h.
Referenced by get_current_stop(), GradientEditor(), set_gradient(), and stop_selected().
|
private |
Definition at line 118 of file gradient-editor.h.
Referenced by update_stops_layout().
|
private |
Definition at line 117 of file gradient-editor.h.
Referenced by GradientEditor(), show_stops(), and update_stops_layout().
|
private |
Definition at line 111 of file gradient-editor.h.
Referenced by GradientEditor(), and set_gradient().
|
private |
Definition at line 125 of file gradient-editor.h.
Referenced by GradientEditor(), set_gradient(), set_repeat_mode(), set_stop_color(), set_stop_offset(), setGradient(), setVector(), stop_selected(), and turn_gradient().