Code

Ctrl+click in pen/pencil tool: Created dots are now selected; Alt is used for randomn...
[inkscape.git] / src / ui / dialog / filter-effects-dialog.h
index 56a1e2ca18c240785abc7bcbaed7b5d6bfbf9490..3d105dfd094bb915bb66d60af7a3f67fe01dc831 100644 (file)
@@ -25,7 +25,7 @@
 #include <gtkmm/treeview.h>
 
 #include "attributes.h"
-#include "dialog.h"
+#include "ui/widget/panel.h"
 #include "sp-filter.h"
 #include "ui/widget/combo-enums.h"
 #include "ui/widget/spin-slider.h"
@@ -38,16 +38,18 @@ namespace Dialog {
 
 class DualSpinButton;
 class MultiSpinButton;
-class FilterEffectsDialog : public Dialog {
+class FilterEffectsDialog : public UI::Widget::Panel {
 public:
 
-    FilterEffectsDialog(Behavior::BehaviorFactory behavior_factory);
+    FilterEffectsDialog();
     ~FilterEffectsDialog();
 
-    static FilterEffectsDialog *create(Behavior::BehaviorFactory behavior_factory)
-    { return new FilterEffectsDialog(behavior_factory); }
+    static FilterEffectsDialog &getInstance()
+    { return *new FilterEffectsDialog(); }
 
     void set_attrs_locked(const bool);
+protected:
+    virtual void show_all_vfunc();
 private:
     class SignalObserver;
 
@@ -90,6 +92,8 @@ private:
         
         void update_selection(Selection *);
         void on_filter_selection_changed();
+
+        void on_name_edited(const Glib::ustring&, const Glib::ustring&);
         void on_selection_toggled(const Glib::ustring&);
 
         void update_filters();
@@ -161,6 +165,7 @@ private:
 
         SPFilterPrimitive* get_selected();
         void select(SPFilterPrimitive *prim);
+        void remove_selected();
 
         int primitive_count() const;
     protected:
@@ -196,7 +201,6 @@ private:
         std::auto_ptr<SignalObserver> _observer;
     };
 
-    FilterEffectsDialog();
     void init_settings_widgets();
 
     // Handlers
@@ -211,10 +215,15 @@ private:
     void update_settings_view();
     void update_settings_sensitivity();
     void update_color_matrix();
+    void update_primitive_infobox();
 
     // Filter effect selection
     FilterModifier _filter_modifier;
 
+    // Primitives Info Box  
+    Gtk::Label _infobox_desc;
+    Gtk::Image _infobox_icon;
+
     // View/add primitives
     Gtk::VBox _primitive_box;
     PrimitiveList _primitive_list;