/** @file * @author Edouard DUPIN * @copyright 2011, Edouard DUPIN, all right reserved * @license MPL v2.0 (see license file) */ #pragma once #include #include #include #include #include #include #include #include #include #include namespace ewol { namespace widget { class ColorChooser; using ColorChooser = ememory::Ptr; using ColorChooserWeak = ememory::WeakPtr; /** * @ingroup ewolWidgetGroup */ class ColorChooser : public ewol::widget::Sizer { public: // signals esignal::Signal> signalChange; public: eproperty::Value> propertyValue; protected: ColorChooser(); void init() ; public: DECLARE_WIDGET_FACTORY(ColorChooser, "ColorChooser"); ~ColorChooser(); private: ewol::widget::ColorBar this.widgetColorBar; ewol::widget::Slider this.widgetRed; ewol::widget::Slider this.widgetGreen; ewol::widget::Slider this.widgetBlue; ewol::widget::Slider this.widgetAlpha; void onCallbackColorChangeRed( float _newColor); void onCallbackColorChangeGreen( float _newColor); void onCallbackColorChangeBlue( float _newColor); void onCallbackColorChangeAlpha( float _newColor); void onCallbackColorChange( etk::Color<> _newColor); protected: void onChangePropertyValue(); }; }; };