Code

aed17434d8a58935aa9d101b985734150243b5b0
[inkscape.git] / src / ui / dialog / livepatheffect-editor.h
1 /**
2  * \brief LivePathEffect dialog
3  *
4  * Author:
5  *   Johan Engelen <j.b.c.engelen@ewi.utwente.nl>
6  *
7  * Copyright (C) 2007 Author
8  *
9  * Released under GNU GPL.  Read the file 'COPYING' for more information.
10  */
12 #ifndef INKSCAPE_UI_DIALOG_LIVE_PATH_EFFECT_H
13 #define INKSCAPE_UI_DIALOG_LIVE_PATH_EFFECT_H
15 #include "ui/widget/panel.h"
16 #include "ui/widget/button.h"
18 #include <gtkmm/label.h>
19 #include <gtkmm/comboboxtext.h>
20 #include <gtkmm/frame.h>
21 #include <gtkmm/tooltip.h>
22 #include "ui/widget/combo-enums.h"
23 #include "live_effects/effect.h"
25 class SPDesktop;
27 namespace Inkscape {
29 namespace UI {
30 namespace Dialog {
32 class LivePathEffectEditor : public UI::Widget::Panel {
33 public:
34     LivePathEffectEditor();
35     virtual ~LivePathEffectEditor();
37     static LivePathEffectEditor &getInstance() { return *new LivePathEffectEditor(); }
39     void onSelectionChanged(Inkscape::Selection *sel);
40     void setDesktop(SPDesktop *desktop);
42 private:
43     sigc::connection selection_changed_connection;
44     sigc::connection selection_modified_connection;
46     void set_sensitize_all(bool sensitive);
48     void showParams(LivePathEffect::Effect* effect);
49     void showText(Glib::ustring const &str);
51     // callback methods for buttons on grids page.
52     void onApply();
53     void onRemove();
55     Inkscape::UI::Widget::ComboBoxEnum<LivePathEffect::EffectType> combo_effecttype;
56     Inkscape::UI::Widget::Button button_apply;
57     Inkscape::UI::Widget::Button button_remove;
58     Gtk::Widget * effectwidget;
59     Gtk::Label explain_label;
60     Gtk::Frame effectapplication_frame;
61     Gtk::Frame effectcontrol_frame;
62     Gtk::HBox effectapplication_hbox;
63     Gtk::VBox effectcontrol_vbox;
64     Gtk::Tooltips tooltips;
66     SPDesktop * current_desktop;
68     LivePathEffectEditor(LivePathEffectEditor const &d);
69     LivePathEffectEditor& operator=(LivePathEffectEditor const &d);
70 };
72 } // namespace Dialog
73 } // namespace UI
74 } // namespace Inkscape
76 #endif // INKSCAPE_UI_DIALOG_LIVE_PATH_EFFECT_H
78 /*
79   Local Variables:
80   mode:c++
81   c-file-style:"stroustrup"
82   c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +))
83   indent-tabs-mode:nil
84   fill-column:99
85   End:
86 */
87 // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :