- Main Page
- Related Pages
- Namespaces
- Classes
- Files

# dialog_gradient.h

Go to the documentation of this file.

    00001 /* === S Y N F I G ========================================================= */
    00021 /* ========================================================================= */
    00022
    00023 /* === S T A R T =========================================================== */
    00024
    00025 #ifndef __SYNFIG_STUDIO_DIALOG_GRADIENT_H
    00026 #define __SYNFIG_STUDIO_DIALOG_GRADIENT_H
    00027
    00028 /* === H E A D E R S ======================================================= */
    00029
    00030 #include <gtk/gtk.h>
    00031 #include <gtkmm/adjustment.h>
    00032 #include <gtkmm/table.h>
    00033 #include <gtkmm/button.h>
    00034 #include <gtkmm/dialog.h>
    00035 #include <gtkmm/drawingarea.h>
    00036 #include <gtkmm/optionmenu.h>
    00037 #include <gtkmm/checkbutton.h>
    00038
    00039 #include <synfig/gamma.h>
    00040 #include <synfig/time.h>
    00041
    00042 #include "widget_gradient.h"
    00043 #include "widget_coloredit.h"
    00044
    00045 #include <synfigapp/value_desc.h>
    00046 #include <synfig/time.h>
    00047
    00048 #include "dialogsettings.h"
    00049
    00050 /* === M A C R O S ========================================================= */
    00051
    00052 /* === T Y P E D E F S ===================================================== */
    00053
    00054 /* === C L A S S E S & S T R U C T S ======================================= */
    00055
    00056 namespace Gtk { class Menu; class SpinButton; class Adjustment; };
    00057
    00058 namespace synfigapp {
    00059 class CanvasInterface;
    00060 };
    00061
    00062 namespace studio {
    00063
    00064 class Widget_Gradient;
    00065 class Widget_ColorEdit;
    00066
    00067 class Dialog_Gradient : public Gtk::Dialog
    00068 {
    00069     DialogSettings dialog_settings;
    00070
    00071     Gtk::SpinButton *spinbutton_pos;
    00072
    00073     Gtk::Adjustment adjustment_pos;
    00074
    00075
    00076     sigc::signal<void,synfig::Gradient> signal_edited_;
    00077
    00078     sigc::connection value_changed_connection;
    00079
    00080     void on_ok_pressed();
    00081     void on_apply_pressed();
    00082     void on_grab_pressed();
    00083
    00084     void on_cpoint_selected(synfig::Gradient::CPoint x);
    00085     void on_values_adjusted();
    00086
    00087     Widget_Gradient* widget_gradient;
    00088     Widget_ColorEdit* widget_color;
    00089     Gtk::Button *grab_button;
    00090
    00091     void on_changed();
    00092
    00093 public:
    00094
    00095     sigc::signal<void,synfig::Gradient>& signal_edited() { return signal_edited_; }
    00096
    00097     void set_gradient(const synfig::Gradient& x);
    00098
    00099     const synfig::Gradient& get_gradient()const { return widget_gradient->get_value(); }
    00100
    00101     void grab_button_set_sensitive(bool sensitive) { grab_button->set_sensitive(sensitive); }
    00102
    00103     void reset();
    00104
    00105
    00106     Dialog_Gradient();
    00107     ~Dialog_Gradient();
    00110     void edit(const synfigapp::ValueDesc &x, etl::handle<synfigapp::CanvasInterface> canvas_interface, synfig::Time time=0);
    00111 }; // END of Dialog_Gradient
    00112
    00113 }; // END of namespace studio
    00114
    00115 /* === E N D =============================================================== */
    00116
    00117 #endif