[DEV] update test software
This commit is contained in:
parent
2993c5962a
commit
5d177ae571
@ -25,6 +25,7 @@
|
||||
#include <ewol/widget/Manager.h>
|
||||
#include <ewol/context/Context.h>
|
||||
#include <appl/TestButton.h>
|
||||
#include <appl/TestCheckBox.h>
|
||||
#include <appl/TestButtonColor.h>
|
||||
#include <appl/TestLabel.h>
|
||||
#include <appl/TestImage.h>
|
||||
@ -133,10 +134,8 @@ void MainWindows::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
m_idWidget = 0;
|
||||
}
|
||||
switch(m_idWidget) {
|
||||
default:
|
||||
m_idWidget = 0;
|
||||
case 0:
|
||||
m_subWidget = (ewol::Widget*)new TestButton();
|
||||
m_subWidget = (ewol::Widget*)new appl::TestButton();
|
||||
if (NULL != m_subWidget) {
|
||||
m_sizerVert->subWidgetAdd(m_subWidget);
|
||||
}
|
||||
@ -181,6 +180,15 @@ void MainWindows::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
};
|
||||
break;
|
||||
case 5:
|
||||
m_subWidget = (ewol::Widget*)new appl::TestCheckBox();
|
||||
if (NULL != m_subWidget) {
|
||||
m_sizerVert->subWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) {
|
||||
m_testName->setLabel("TestButton");
|
||||
};
|
||||
break;
|
||||
default:
|
||||
m_subWidget = (ewol::Widget*)new ewol::widget::Label("Test software for EWOL");
|
||||
if (NULL != m_subWidget) {
|
||||
m_subWidget->setExpand(bvec2(true,true));
|
||||
@ -189,6 +197,7 @@ void MainWindows::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
if (m_testName!=NULL) {
|
||||
m_testName->setLabel("Label");
|
||||
};
|
||||
m_idWidget = 0;
|
||||
break;
|
||||
/*case 5:
|
||||
m_subWidget = (ewol::Widget*)new TestScene();
|
||||
|
@ -39,144 +39,78 @@ static const char * l_eventChangeImageToggle = "event-change-image-toggle";
|
||||
#undef __class__
|
||||
#define __class__ "TestButton"
|
||||
|
||||
TestButton::TestButton(void) :
|
||||
ewol::widget::Sizer(ewol::widget::Sizer::modeVert),
|
||||
appl::TestButton::TestButton(void) :
|
||||
m_testWidget(NULL) {
|
||||
APPL_INFO("Create " __class__ " (start)");
|
||||
ewol::widget::Sizer* mySizerVert2 = NULL;
|
||||
ewol::widget::Sizer* mySizerHori = NULL;
|
||||
ewol::widget::Button* myButton = NULL;
|
||||
|
||||
mySizerHori = new ewol::widget::Sizer(ewol::widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
subWidgetAdd(mySizerHori);
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("Expend X <br/> (false)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("Expend X <br/><b>(true)</b>"));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeExpendX);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("Expend Y <br/> (false)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("Expend Y <br/><b>(true)</b>"));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeExpendY);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("Toggle<br/>(false)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("Toggle<br/><b>(true)</b>"));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeToggle);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("Text On toggle state<br/>(false)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("Text On toggle state<br/><b>(true)</b>"));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeTextToggle);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
|
||||
mySizerHori = new ewol::widget::Sizer(ewol::widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
subWidgetAdd(mySizerHori);
|
||||
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("Fill X <br/> (false)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("Fill X <br/> (true)"));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeFillX);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("Fill Y <br/> (false)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("Fill Y <br/> (true)"));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeFillY);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->setSubWidget(new ewol::widget::Label("Change Text<br/> and other ..."));
|
||||
myButton->registerOnEvent(this, "pressed", l_eventChangeText);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
ewol::widget::Spacer* mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(true,false));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
mySpacer->setColor(0xFF000080);
|
||||
subWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
mySizerHori = new ewol::widget::Sizer(ewol::widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
subWidgetAdd(mySizerHori);
|
||||
|
||||
mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(false,true));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
mySpacer->setColor(0x00FF0080);
|
||||
mySizerHori->subWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
m_testWidget = new ewol::widget::Button();
|
||||
if (NULL != m_testWidget) {
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("My <font color=\"#FF0000\">Button</font> <br/> And Some under line<br/> plop <br/> and an other super long line ..."));
|
||||
m_testWidget->setExpand(bvec2(false,false));
|
||||
m_testWidget->setFill(bvec2(false,false));
|
||||
m_testWidget->registerOnEvent(this, "*");
|
||||
mySizerHori->subWidgetAdd(m_testWidget);
|
||||
}
|
||||
|
||||
mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(false,true));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
mySpacer->setColor(0x0000FF80);
|
||||
mySizerHori->subWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(true,false));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
mySpacer->setColor(0x00FFFF80);
|
||||
subWidgetAdd(mySpacer);
|
||||
std::string myDescription = std::string("")
|
||||
+ "<sizer mode='vert' fill='true' expand='true'>\n"
|
||||
+ " <sizer mode='hori'>\n"
|
||||
+ " <button name='[TEST]Button:Expand-x' toggle='true'>\n"
|
||||
+ " <label>Expend X <br/> (false)</label>\n"
|
||||
+ " <label>Expend X <br/> <b>(true)</b></label>\n"
|
||||
+ " </button>\n"
|
||||
+ " <button name='[TEST]Button:Expand-y' toggle='true'>\n"
|
||||
+ " <label>Expend Y <br/> (false)</label>\n"
|
||||
+ " <label>Expend Y <br/> <b>(true)</b></label>\n"
|
||||
+ " </button>\n"
|
||||
+ " <button name='[TEST]Button:Toggle' toggle='true'>\n"
|
||||
+ " <label>Toggle <br/> (false)</label>\n"
|
||||
+ " <label>Toggle <br/> <b>(true)</b></label>\n"
|
||||
+ " </button>\n"
|
||||
+ " <button name='[TEST]Button:TextToggle' toggle='true'>\n"
|
||||
+ " <label>Text On toggle state <br/> (false)</label>\n"
|
||||
+ " <label>Text On toggle state <br/> <b>(true)</b></label>\n"
|
||||
+ " </button>\n"
|
||||
+ " </sizer>\n"
|
||||
+ " <sizer mode='hori'>\n"
|
||||
+ " <button name='[TEST]Button:Fill-x' toggle='true'>\n"
|
||||
+ " <label>Fill X <br/> (false)</label>\n"
|
||||
+ " <label>Fill X <br/> <b>(true)</b></label>\n"
|
||||
+ " </button>\n"
|
||||
+ " <button name='[TEST]Button:Fill-y' toggle='true'>\n"
|
||||
+ " <label>Fill Y <br/> (false)</label>\n"
|
||||
+ " <label>Fill Y <br/> <b>(true)</b></label>\n"
|
||||
+ " </button>\n"
|
||||
+ " <button name='[TEST]Button:ChangeText'>\n"
|
||||
+ " <label>Change Text<br/> and other ...</label>\n"
|
||||
+ " </button>\n"
|
||||
+ " </sizer>\n"
|
||||
+ " <sizer mode='hori'>\n"
|
||||
+ " <spacer expand='false,false' fill='true,false' min-size='10,10px' color='#F008'/>\n"
|
||||
+ " <sizer mode='vert'>\n"
|
||||
+ " <spacer expand='false,false' fill='false,true' min-size='10,10px' color='#FF08'/>\n"
|
||||
+ " <button name='[TEST]Button:TO-TEST' expand='false,false' fill='false,false' >\n"
|
||||
+ " <label>My <font color='#FF0000'>Button</font> <br/> And Some under line<br/> plop <br/> and an other super long line ...</label>\n"
|
||||
+ " </button>\n"
|
||||
+ " <spacer expand='false,false' fill='false,true' min-size='10,10px' color='#0FF8'/>\n"
|
||||
+ " </sizer>\n"
|
||||
+ " <spacer expand='false,false' fill='true,false' min-size='10,10px' color='#0F08'/>\n"
|
||||
+ " </sizer>\n"
|
||||
+ "</sizer>";
|
||||
loadFromString(myDescription);
|
||||
setExpand(bvec2(true,true));
|
||||
setFill(bvec2(true,true));
|
||||
registerOnEventNameWidget("[TEST]Button:Expand-x", "value", l_eventChangeExpendX);
|
||||
registerOnEventNameWidget("[TEST]Button:Expand-y", "value", l_eventChangeExpendY);
|
||||
registerOnEventNameWidget("[TEST]Button:Toggle", "value", l_eventChangeToggle);
|
||||
registerOnEventNameWidget("[TEST]Button:TextToggle", "value", l_eventChangeTextToggle);
|
||||
registerOnEventNameWidget("[TEST]Button:Fill-x", "value", l_eventChangeFillX);
|
||||
registerOnEventNameWidget("[TEST]Button:Fill-y", "value", l_eventChangeFillY);
|
||||
registerOnEventNameWidget("[TEST]Button:ChangeText", "pressed", l_eventChangeText);
|
||||
// show all event from a button :
|
||||
registerOnEventNameWidget("[TEST]Button:TO-TEST", "*");
|
||||
m_testWidget = dynamic_cast<ewol::widget::Button*>(getWidgetNamed("[TEST]Button:TO-TEST"));
|
||||
if (m_testWidget == NULL) {
|
||||
APPL_CRITICAL("Can not get the pointer of the widget button pointer");
|
||||
}
|
||||
APPL_INFO("Create " __class__ " (end)");
|
||||
}
|
||||
|
||||
|
||||
TestButton::~TestButton(void) {
|
||||
APPL_INFO("Remove " __class__ " ...");
|
||||
}
|
||||
|
||||
|
||||
void TestButton::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
ewol::widget::Sizer::onReceiveMessage(_msg);
|
||||
void appl::TestButton::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
ewol::widget::Composer::onReceiveMessage(_msg);
|
||||
APPL_VERBOSE("Receive Event from the main windows ... : " << _msg );
|
||||
if (m_testWidget == _msg.getCaller()) {
|
||||
APPL_WARNING("Receive Event from tested Button ... : " << _msg );
|
||||
@ -229,23 +163,6 @@ void TestButton::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
m_testWidget->setSubWidgetToggle(NULL);
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeImage) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
//m_testWidget->SetImage("THEME:GUI:icon.png");
|
||||
//m_testWidget->SetImageSize(50);
|
||||
} else {
|
||||
//m_testWidget->SetImage("");
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeImageToggle) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
//m_testWidget->SetImageToggle("THEME:GUI:icon.png");
|
||||
} else {
|
||||
//m_testWidget->SetImageToggle("");
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeText) {
|
||||
if (NULL!=m_testWidget) {
|
||||
static int32_t countTextID = 1;
|
||||
@ -283,21 +200,15 @@ void TestButton::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
case 10:
|
||||
m_testWidget->setSubWidget(
|
||||
new ewol::widget::Composer(ewol::widget::Composer::String,
|
||||
"<composer>\n"
|
||||
" <label>ploppp</label>\n"
|
||||
"</composer>\n"));
|
||||
"<label>ploppp</label>\n"));
|
||||
break;
|
||||
case 11:
|
||||
m_testWidget->setSubWidget(
|
||||
new ewol::widget::Composer(ewol::widget::Composer::String,
|
||||
"<composer>\n"
|
||||
" <sizer mode=\"vert\" addmode=\"invert\">\n"
|
||||
" <label>ploppp</label>\n"
|
||||
" <label expand=\"true,true\"><center>** ** * *<br/>** * * * *</center></label>\n"
|
||||
" </sizer>\n"
|
||||
" \n"
|
||||
" \n"
|
||||
"</composer>\n"));
|
||||
" </sizer>\n"));
|
||||
break;
|
||||
default:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("My <font color=\"#FF0000\">Button</font> <br/> And Some under line<br/> plop <br/> and an other super long line ..."));
|
||||
@ -316,8 +227,8 @@ void TestButton::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
return;
|
||||
}
|
||||
|
||||
void TestButton::onObjectRemove(ewol::Object* _removeObject) {
|
||||
ewol::widget::Sizer::onObjectRemove(_removeObject);
|
||||
void appl::TestButton::onObjectRemove(ewol::Object* _removeObject) {
|
||||
ewol::widget::Composer::onObjectRemove(_removeObject);
|
||||
if (m_testWidget == _removeObject) {
|
||||
m_testWidget = NULL;
|
||||
}
|
||||
|
@ -10,21 +10,19 @@
|
||||
#define __TEST_BUTTON_H__
|
||||
|
||||
#include <appl/debug.h>
|
||||
#include <ewol/widget/Widget.h>
|
||||
#include <ewol/widget/Button.h>
|
||||
#include <ewol/widget/Spacer.h>
|
||||
#include <ewol/widget/Sizer.h>
|
||||
|
||||
class TestButton : public ewol::widget::Sizer {
|
||||
private:
|
||||
ewol::widget::Button* m_testWidget;
|
||||
public:
|
||||
// Constructeur
|
||||
TestButton(void);
|
||||
virtual ~TestButton(void);
|
||||
public: // Derived function
|
||||
virtual void onReceiveMessage(const ewol::object::Message& _msg);
|
||||
virtual void onObjectRemove(ewol::Object* _removeObject);
|
||||
#include <ewol/widget/Composer.h>
|
||||
namespace appl {
|
||||
class TestButton : public ewol::widget::Composer {
|
||||
private:
|
||||
ewol::widget::Button* m_testWidget;
|
||||
public:
|
||||
// Constructeur
|
||||
TestButton(void);
|
||||
public: // Derived function
|
||||
virtual void onReceiveMessage(const ewol::object::Message& _msg);
|
||||
virtual void onObjectRemove(ewol::Object* _removeObject);
|
||||
};
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -0,0 +1,206 @@
|
||||
/**
|
||||
* @author Edouard DUPIN
|
||||
*
|
||||
* @copyright 2010, Edouard DUPIN, all right reserved
|
||||
*
|
||||
* @license BSD v3 (see license file)
|
||||
*/
|
||||
|
||||
|
||||
#include <appl/debug.h>
|
||||
#include <appl/TestCheckBox.h>
|
||||
|
||||
#include <ewol/widget/Button.h>
|
||||
#include <ewol/widget/CheckBox.h>
|
||||
#include <ewol/widget/Sizer.h>
|
||||
#include <ewol/widget/Label.h>
|
||||
#include <ewol/widget/Entry.h>
|
||||
#include <ewol/widget/List.h>
|
||||
#include <ewol/widget/ContextMenu.h>
|
||||
#include <ewol/widget/PopUp.h>
|
||||
#include <ewol/widget/Slider.h>
|
||||
#include <ewol/widget/Composer.h>
|
||||
#include <ewol/widget/Menu.h>
|
||||
#include <ewol/widget/meta/FileChooser.h>
|
||||
#include <ewol/widget/meta/Parameter.h>
|
||||
#include <ewol/widget/Manager.h>
|
||||
|
||||
|
||||
static const char * l_eventChangeExpendX = "event-change-expend-X";
|
||||
static const char * l_eventChangeExpendY = "event-change-expend-Y";
|
||||
static const char * l_eventChangeFillX = "event-change-fill-X";
|
||||
static const char * l_eventChangeFillY = "event-change-fill-Y";
|
||||
static const char * l_eventChangeToggle = "event-change-toggle-mode";
|
||||
static const char * l_eventChangeText = "event-change-text";
|
||||
static const char * l_eventChangeTextToggle = "event-change-text-toggle";
|
||||
static const char * l_eventChangeImage = "event-change-image";
|
||||
static const char * l_eventChangeImageToggle = "event-change-image-toggle";
|
||||
|
||||
#undef __class__
|
||||
#define __class__ "TestCheckBox"
|
||||
|
||||
appl::TestCheckBox::TestCheckBox(void) :
|
||||
m_testWidget(NULL) {
|
||||
APPL_INFO("Create " __class__ " (start)");
|
||||
|
||||
std::string myDescription = std::string("")
|
||||
+ "<sizer mode='vert' fill='true' expand='true'>\n"
|
||||
+ " <sizer mode='hori'>\n"
|
||||
+ " <button name='[TEST]Button:Expand-x' toggle='true'>\n"
|
||||
+ " <label>Expend X <br/> (false)</label>\n"
|
||||
+ " <label>Expend X <br/> <b>(true)</b></label>\n"
|
||||
+ " </button>\n"
|
||||
+ " <button name='[TEST]Button:Expand-y' toggle='true'>\n"
|
||||
+ " <label>Expend Y <br/> (false)</label>\n"
|
||||
+ " <label>Expend Y <br/> <b>(true)</b></label>\n"
|
||||
+ " </button>\n"
|
||||
+ " <button name='[TEST]Button:Toggle' toggle='true'>\n"
|
||||
+ " <label>Toggle <br/> (false)</label>\n"
|
||||
+ " <label>Toggle <br/> <b>(true)</b></label>\n"
|
||||
+ " </button>\n"
|
||||
+ " <button name='[TEST]Button:TextToggle' toggle='true'>\n"
|
||||
+ " <label>Text On toggle state <br/> (false)</label>\n"
|
||||
+ " <label>Text On toggle state <br/> <b>(true)</b></label>\n"
|
||||
+ " </button>\n"
|
||||
+ " </sizer>\n"
|
||||
+ " <sizer mode='hori'>\n"
|
||||
+ " <button name='[TEST]Button:Fill-x' toggle='true'>\n"
|
||||
+ " <label>Fill X <br/> (false)</label>\n"
|
||||
+ " <label>Fill X <br/> <b>(true)</b></label>\n"
|
||||
+ " </button>\n"
|
||||
+ " <button name='[TEST]Button:Fill-y' toggle='true'>\n"
|
||||
+ " <label>Fill Y <br/> (false)</label>\n"
|
||||
+ " <label>Fill Y <br/> <b>(true)</b></label>\n"
|
||||
+ " </button>\n"
|
||||
+ " <button name='[TEST]Button:ChangeText'>\n"
|
||||
+ " <label>Change Text<br/> and other ...</label>\n"
|
||||
+ " </button>\n"
|
||||
+ " </sizer>\n"
|
||||
+ " <sizer mode='hori'>\n"
|
||||
+ " <spacer expand='false,false' fill='true,false' min-size='10,10px' color='#F008'/>\n"
|
||||
+ " <sizer mode='vert'>\n"
|
||||
+ " <spacer expand='false,false' fill='false,true' min-size='10,10px' color='#FF08'/>\n"
|
||||
+ " <CheckBox name='[TEST]TO-TEST' expand='false,false' fill='false,false' >\n"
|
||||
+ " <label>My <font color='#FF0000'>CheckBox</font> <br/> And Some under line<br/> plop <br/> and an other super long line ...</label>\n"
|
||||
+ " </CheckBox>\n"
|
||||
+ " <spacer expand='false,false' fill='false,true' min-size='10,10px' color='#0FF8'/>\n"
|
||||
+ " </sizer>\n"
|
||||
+ " <spacer expand='false,false' fill='true,false' min-size='10,10px' color='#0F08'/>\n"
|
||||
+ " </sizer>\n"
|
||||
+ "</sizer>";
|
||||
loadFromString(myDescription);
|
||||
setExpand(bvec2(true,true));
|
||||
setFill(bvec2(true,true));
|
||||
registerOnEventNameWidget("[TEST]Button:Expand-x", "value", l_eventChangeExpendX);
|
||||
registerOnEventNameWidget("[TEST]Button:Expand-y", "value", l_eventChangeExpendY);
|
||||
registerOnEventNameWidget("[TEST]Button:Toggle", "value", l_eventChangeToggle);
|
||||
registerOnEventNameWidget("[TEST]Button:TextToggle", "value", l_eventChangeTextToggle);
|
||||
registerOnEventNameWidget("[TEST]Button:Fill-x", "value", l_eventChangeFillX);
|
||||
registerOnEventNameWidget("[TEST]Button:Fill-y", "value", l_eventChangeFillY);
|
||||
registerOnEventNameWidget("[TEST]Button:ChangeText", "pressed", l_eventChangeText);
|
||||
// show all event from a button :
|
||||
registerOnEventNameWidget("[TEST]TO-TEST", "*");
|
||||
m_testWidget = dynamic_cast<ewol::widget::CheckBox*>(getWidgetNamed("[TEST]TO-TEST"));
|
||||
if (m_testWidget == NULL) {
|
||||
APPL_CRITICAL("Can not get the pointer of the widget button pointer");
|
||||
}
|
||||
APPL_INFO("Create " __class__ " (end)");
|
||||
}
|
||||
|
||||
void appl::TestCheckBox::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
ewol::widget::Composer::onReceiveMessage(_msg);
|
||||
APPL_VERBOSE("Receive Event from the main windows ... : " << _msg );
|
||||
if (m_testWidget == _msg.getCaller()) {
|
||||
APPL_WARNING("Receive Event from tested Button ... : " << _msg );
|
||||
}
|
||||
if (_msg.getMessage() == l_eventChangeExpendX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setExpand(bvec2(true,m_testWidget->getExpand().y()));
|
||||
} else {
|
||||
m_testWidget->setExpand(bvec2(false,m_testWidget->getExpand().y()));
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeExpendY) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setExpand(bvec2(m_testWidget->getExpand().x(),true));
|
||||
} else {
|
||||
m_testWidget->setExpand(bvec2(m_testWidget->getExpand().x(),false));
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeFillX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setFill(bvec2(true,m_testWidget->getFill().y()));
|
||||
} else {
|
||||
m_testWidget->setFill(bvec2(false,m_testWidget->getFill().y()));
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeFillY) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setFill(bvec2(m_testWidget->getFill().x(),true));
|
||||
} else {
|
||||
m_testWidget->setFill(bvec2(m_testWidget->getFill().x(),false));
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeTextToggle) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setSubWidgetToggle(new ewol::widget::Label("A stupid very long text on toggle <br/><br/> and on multiple lines"));
|
||||
} else {
|
||||
m_testWidget->setSubWidgetToggle(NULL);
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeText) {
|
||||
if (NULL!=m_testWidget) {
|
||||
static int32_t countTextID = 1;
|
||||
switch (countTextID) {
|
||||
case 0:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("simple Text"));
|
||||
break;
|
||||
case 1:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("<left>Align Left</left>"));
|
||||
break;
|
||||
case 2:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("<right>Align right</right>"));
|
||||
break;
|
||||
case 3:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("<center>Align center</center>"));
|
||||
break;
|
||||
case 4:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("simple Text<br/> With Some Other Lines<br/> and more if you want ...<br/> plop"));
|
||||
break;
|
||||
case 5:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("simple <bold>Text</bold> with bold"));
|
||||
break;
|
||||
case 6:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("simple <italic>Text</italic> with italic"));
|
||||
break;
|
||||
case 7:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("simple <italic><bold>Text</bold></italic> with italic bold"));
|
||||
break;
|
||||
case 8:
|
||||
m_testWidget->setSubWidget(NULL);
|
||||
countTextID=-1;
|
||||
break;
|
||||
}
|
||||
// set at the subWidget all the space they can ...
|
||||
if (NULL != m_testWidget->getSubWidget()){
|
||||
m_testWidget->getSubWidget()->setFill(bvec2(true,true));
|
||||
m_testWidget->getSubWidget()->setExpand(bvec2(true,true));
|
||||
}
|
||||
countTextID++;
|
||||
}
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
void appl::TestCheckBox::onObjectRemove(ewol::Object* _removeObject) {
|
||||
ewol::widget::Composer::onObjectRemove(_removeObject);
|
||||
if (m_testWidget == _removeObject) {
|
||||
m_testWidget = NULL;
|
||||
}
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
/**
|
||||
* @author Edouard DUPIN
|
||||
*
|
||||
* @copyright 2010, Edouard DUPIN, all right reserved
|
||||
*
|
||||
* @license BSD v3 (see license file)
|
||||
*/
|
||||
|
||||
#ifndef __TEST_CHECK_BOX_H__
|
||||
#define __TEST_CHECK_BOX_H__
|
||||
|
||||
#include <appl/debug.h>
|
||||
#include <ewol/widget/CheckBox.h>
|
||||
#include <ewol/widget/Composer.h>
|
||||
|
||||
namespace appl {
|
||||
class TestCheckBox : public ewol::widget::Composer {
|
||||
private:
|
||||
ewol::widget::CheckBox* m_testWidget;
|
||||
public:
|
||||
// Constructeur
|
||||
TestCheckBox(void);
|
||||
public: // Derived function
|
||||
virtual void onReceiveMessage(const ewol::object::Message& _msg);
|
||||
virtual void onObjectRemove(ewol::Object* _removeObject);
|
||||
};
|
||||
};
|
||||
#endif
|
@ -16,6 +16,7 @@ def create(target):
|
||||
'appl/init.cpp',
|
||||
'appl/MainWindows.cpp',
|
||||
'appl/TestButton.cpp',
|
||||
'appl/TestCheckBox.cpp',
|
||||
'appl/TestImage.cpp',
|
||||
'appl/TestButtonColor.cpp',
|
||||
'appl/TestLabel.cpp',
|
||||
|
Loading…
x
Reference in New Issue
Block a user