index 5d1d16efda433174cd33b0c8e00ecec5a59e4196..f0d6f324db7fccc7cd0a2b5d51773aaa9992c429 100644 (file)
namespace UI {
namespace Widget {
-class FilterEffectChooser
-{
-public:
- virtual ~FilterEffectChooser();
-
- virtual Glib::SignalProxy0<void> signal_selection_changed() = 0;
- virtual SPFilter* get_selected_filter() = 0;
- virtual void select_filter(const SPFilter*) = 0;
-protected:
- FilterEffectChooser();
-
- class Columns : public Gtk::TreeModel::ColumnRecord
- {
- public:
- Columns()
- {
- add(filter);
- add(label);
- add(sel);
- }
-
- Gtk::TreeModelColumn<SPFilter*> filter;
- Gtk::TreeModelColumn<Glib::ustring> label;
- Gtk::TreeModelColumn<int> sel;
- };
-
- virtual void update_filters();
-
- Glib::RefPtr<Gtk::ListStore> _model;
- Columns _columns;
-private:
- static void on_activate_desktop(Inkscape::Application*, SPDesktop*, FilterEffectChooser*);
- void on_document_replaced(SPDesktop*, SPDocument*);
-
- sigc::connection _doc_replaced;
- sigc::connection _resource_changed;
-
- Gtk::TreeView::Column _filter_column;
-};
-
/* Allows basic control over feBlend and feGaussianBlur effects,
with an option to use the full filter effect controls. */
-class SimpleFilterModifier : public Gtk::VBox, public FilterEffectChooser
+class SimpleFilterModifier : public Gtk::VBox
{
public:
SimpleFilterModifier();
- virtual Glib::SignalProxy0<void> signal_selection_changed();
- virtual SPFilter* get_selected_filter();
- virtual void select_filter(const SPFilter*);
-
sigc::signal<void>& signal_blend_blur_changed();
const Glib::ustring get_blend_mode();
double get_blur_value() const;
void set_blur_value(const double);
void set_blur_sensitive(const bool);
-protected:
- virtual void update_filters();
private:
- void show_filter_dialog();
- void blend_mode_changed();
-
Gtk::HBox _hb_blend;
Gtk::VBox _vb_blur;
- Gtk::HBox _hb_filter, _hb_filter_sub;
- Gtk::Label _lb_blend, _lb_blur, _lb_filter;
+ Gtk::Label _lb_blend, _lb_blur;
ComboBoxEnum<NR::FilterBlendMode> _blend;
SpinSlider _blur;
- Gtk::ComboBox _filter;
- Gtk::Button _edit_filters;
sigc::signal<void> _signal_blend_blur_changed;
};