[DEV] update to the new ewol API
This commit is contained in:
parent
e00b07be91
commit
d774061db4
@ -41,53 +41,54 @@ static const char * l_eventChangeWidgetPrevious = "event-change-widget-test-pre
|
||||
#undef __class__
|
||||
#define __class__ "MainWindows"
|
||||
|
||||
MainWindows::MainWindows(void) :
|
||||
MainWindows::MainWindows() :
|
||||
m_idWidget(0),
|
||||
m_subWidget(NULL),
|
||||
m_testName(NULL) {
|
||||
m_subWidget(nullptr),
|
||||
m_testName(nullptr) {
|
||||
APPL_DEBUG("CREATE WINDOWS ... ");
|
||||
ewol::widget::Sizer* mySizerHori = NULL;
|
||||
ewol::widget::Button* myButton = NULL;
|
||||
addObjectType("appl::MainWindows");
|
||||
ewol::object::Shared<ewol::widget::Sizer> mySizerHori = nullptr;
|
||||
ewol::object::Shared<ewol::widget::Button> myButton = nullptr;
|
||||
|
||||
m_sizerVert = new ewol::widget::Sizer(ewol::widget::Sizer::modeVert);
|
||||
if (NULL == m_sizerVert) {
|
||||
m_sizerVert = ewol::object::makeShared(new ewol::widget::Sizer(ewol::widget::Sizer::modeVert));
|
||||
if (nullptr == m_sizerVert) {
|
||||
APPL_DEBUG("Allocation error mySizerVert");
|
||||
return;
|
||||
}
|
||||
setSubWidget(m_sizerVert);
|
||||
|
||||
mySizerHori = new ewol::widget::Sizer(ewol::widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
mySizerHori = ewol::object::makeShared(new ewol::widget::Sizer(ewol::widget::Sizer::modeHori));
|
||||
if (nullptr == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
m_sizerVert->subWidgetAdd(mySizerHori);
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->setSubWidget(new ewol::widget::Label("default theme (cube)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("rounded theme"));
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != myButton) {
|
||||
myButton->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("default theme (cube)")));
|
||||
myButton->setSubWidgetToggle(ewol::object::makeShared(new ewol::widget::Label("rounded theme")));
|
||||
myButton->setToggleMode(true);
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeTheme);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->setSubWidget(new ewol::widget::Label("Previous Widget test"));
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != myButton) {
|
||||
myButton->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("Previous Widget test")));
|
||||
myButton->registerOnEvent(this, "pressed", l_eventChangeWidgetPrevious);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->setSubWidget(new ewol::widget::Label("Next Widget test"));
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != myButton) {
|
||||
myButton->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("Next Widget test")));
|
||||
myButton->registerOnEvent(this, "pressed", l_eventChangeWidgetNext);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
m_testName = new ewol::widget::Label("none");
|
||||
if (NULL != m_testName) {
|
||||
if (nullptr != m_testName) {
|
||||
mySizerHori->subWidgetAdd(m_testName);
|
||||
}
|
||||
ewol::widget::Spacer* mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
ewol::object::Shared<ewol::widget::Spacer> mySpacer = ewol::object::makeShared(new ewol::widget::Spacer());
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(true,false));
|
||||
mySpacer->setMinSize(vec2(3,3));
|
||||
@ -95,17 +96,17 @@ MainWindows::MainWindows(void) :
|
||||
m_sizerVert->subWidgetAdd(mySpacer);
|
||||
}
|
||||
// add the basic widget with a strange methode ...
|
||||
ewol::object::Message msg(NULL, NULL, "");
|
||||
ewol::object::Message msg(nullptr, NULL, "");
|
||||
onReceiveMessage(msg);
|
||||
}
|
||||
|
||||
MainWindows::~MainWindows(void) {
|
||||
MainWindows::~MainWindows() {
|
||||
|
||||
}
|
||||
|
||||
void MainWindows::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
if( _msg.getCaller() != this
|
||||
&& _msg.getCaller() != NULL) {
|
||||
if( _msg.getCaller() != ewol::object::Shared<ewol::Object>(this)
|
||||
&& _msg.getCaller() != nullptr) {
|
||||
ewol::widget::Windows::onReceiveMessage(_msg);
|
||||
}
|
||||
APPL_INFO("Receive Event from the main windows ... : " << _msg );
|
||||
@ -125,87 +126,87 @@ void MainWindows::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
m_idWidget++;
|
||||
}
|
||||
|
||||
if (m_subWidget != NULL) {
|
||||
if (m_subWidget != nullptr) {
|
||||
m_subWidget->removeObject();
|
||||
// in theory it must be removed ...
|
||||
m_subWidget = NULL;
|
||||
m_subWidget.reset();
|
||||
}
|
||||
// special init forcing ...
|
||||
if(_msg.getCaller() == NULL) {
|
||||
if(_msg.getCaller() == nullptr) {
|
||||
m_idWidget = 0;
|
||||
}
|
||||
switch(m_idWidget) {
|
||||
case 0:
|
||||
m_subWidget = (ewol::Widget*)new appl::TestButton();
|
||||
if (NULL != m_subWidget) {
|
||||
m_subWidget = ewol::object::makeShared(new appl::TestButton());
|
||||
if (nullptr != m_subWidget) {
|
||||
m_sizerVert->subWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) {
|
||||
if (m_testName!=nullptr) {
|
||||
m_testName->setLabel("TestButton");
|
||||
};
|
||||
break;
|
||||
case 1:
|
||||
m_subWidget = (ewol::Widget*)new TestDistanceField();
|
||||
if (NULL != m_subWidget) {
|
||||
m_subWidget = ewol::object::makeShared(new TestDistanceField());
|
||||
if (nullptr != m_subWidget) {
|
||||
m_sizerVert->subWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) {
|
||||
if (m_testName!=nullptr) {
|
||||
m_testName->setLabel("Test Distance Field");
|
||||
};
|
||||
break;
|
||||
case 2:
|
||||
m_subWidget = (ewol::Widget*)new TestButtonColor();
|
||||
if (NULL != m_subWidget) {
|
||||
m_subWidget = ewol::object::makeShared(new TestButtonColor());
|
||||
if (nullptr != m_subWidget) {
|
||||
m_sizerVert->subWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) {
|
||||
if (m_testName!=nullptr) {
|
||||
m_testName->setLabel("TestButtonColor");
|
||||
};
|
||||
break;
|
||||
case 3:
|
||||
m_subWidget = (ewol::Widget*)new TestLabel();
|
||||
if (NULL != m_subWidget) {
|
||||
m_subWidget = ewol::object::makeShared(new TestLabel());
|
||||
if (nullptr != m_subWidget) {
|
||||
m_sizerVert->subWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) {
|
||||
if (m_testName!=nullptr) {
|
||||
m_testName->setLabel("TestLabel");
|
||||
};
|
||||
break;
|
||||
case 4:
|
||||
m_subWidget = (ewol::Widget*)new TestImage();
|
||||
if (NULL != m_subWidget) {
|
||||
m_subWidget = ewol::object::makeShared(new TestImage());
|
||||
if (nullptr != m_subWidget) {
|
||||
m_sizerVert->subWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) {
|
||||
if (m_testName!=nullptr) {
|
||||
m_testName->setLabel("TestImage");
|
||||
};
|
||||
break;
|
||||
case 5:
|
||||
m_subWidget = (ewol::Widget*)new appl::TestCheckBox();
|
||||
if (NULL != m_subWidget) {
|
||||
m_subWidget = ewol::object::makeShared(new appl::TestCheckBox());
|
||||
if (nullptr != m_subWidget) {
|
||||
m_sizerVert->subWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) {
|
||||
m_testName->setLabel("TestButton");
|
||||
if (m_testName!=nullptr) {
|
||||
m_testName->setLabel("TestCheckbox");
|
||||
};
|
||||
break;
|
||||
default:
|
||||
m_subWidget = (ewol::Widget*)new ewol::widget::Label("Test software for EWOL");
|
||||
if (NULL != m_subWidget) {
|
||||
m_subWidget = ewol::object::makeShared(new ewol::widget::Label("Test software for EWOL"));
|
||||
if (nullptr != m_subWidget) {
|
||||
m_subWidget->setExpand(bvec2(true,true));
|
||||
m_sizerVert->subWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) {
|
||||
if (m_testName!=nullptr) {
|
||||
m_testName->setLabel("Label");
|
||||
};
|
||||
m_idWidget = 0;
|
||||
m_idWidget = -1;
|
||||
break;
|
||||
/*case 5:
|
||||
m_subWidget = (ewol::Widget*)new TestScene();
|
||||
if (NULL != m_subWidget) {
|
||||
m_subWidget = ewol::object::makeShared(new TestScene());
|
||||
if (nullptr != m_subWidget) {
|
||||
m_sizerVert->subWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) {
|
||||
if (m_testName!=nullptr) {
|
||||
m_testName->setLabel("TestScene");
|
||||
};
|
||||
break;
|
||||
@ -213,13 +214,13 @@ void MainWindows::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
|
||||
void MainWindows::onObjectRemove(ewol::Object* _removeObject) {
|
||||
ewol::widget::Windows::onObjectRemove(_removeObject);
|
||||
if (m_subWidget == _removeObject) {
|
||||
m_subWidget = NULL;
|
||||
} else if (m_sizerVert == _removeObject) {
|
||||
m_sizerVert = NULL;
|
||||
} else if (m_testName == _removeObject) {
|
||||
m_testName = NULL;
|
||||
void MainWindows::onObjectRemove(const ewol::object::Shared<ewol::Object>& _object) {
|
||||
ewol::widget::Windows::onObjectRemove(_object);
|
||||
if (m_subWidget == _object) {
|
||||
m_subWidget.reset();
|
||||
} else if (m_sizerVert == _object) {
|
||||
m_sizerVert.reset();
|
||||
} else if (m_testName == _object) {
|
||||
m_testName.reset();
|
||||
}
|
||||
}
|
||||
|
@ -19,20 +19,17 @@
|
||||
|
||||
class MainWindows : public ewol::widget::Windows {
|
||||
private:
|
||||
ewol::widget::Sizer* m_sizerVert;
|
||||
ewol::Widget* m_subWidget;
|
||||
ewol::widget::Label* m_testName;
|
||||
ewol::object::Shared<ewol::widget::Sizer> m_sizerVert;
|
||||
ewol::object::Shared<ewol::Widget> m_subWidget;
|
||||
ewol::object::Shared<ewol::widget::Label> m_testName;
|
||||
int32_t m_idWidget;
|
||||
public:
|
||||
// Constructeur
|
||||
MainWindows(void);
|
||||
~MainWindows(void);
|
||||
MainWindows();
|
||||
~MainWindows();
|
||||
public: // derived fuction
|
||||
const char * const getObjectType(void) {
|
||||
return "MainWindows";
|
||||
};
|
||||
virtual void onReceiveMessage(const ewol::object::Message& _msg);
|
||||
virtual void onObjectRemove(ewol::Object* _removeObject);
|
||||
virtual void onObjectRemove(const ewol::object::Shared<ewol::Object>& _object);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -39,9 +39,10 @@ static const char * l_eventChangeImageToggle = "event-change-image-toggle";
|
||||
#undef __class__
|
||||
#define __class__ "TestButton"
|
||||
|
||||
appl::TestButton::TestButton(void) :
|
||||
m_testWidget(NULL) {
|
||||
appl::TestButton::TestButton() :
|
||||
m_testWidget(nullptr) {
|
||||
APPL_INFO("Create " __class__ " (start)");
|
||||
addObjectType("appl::TestButton");
|
||||
|
||||
std::string myDescription = std::string("")
|
||||
+ "<sizer mode='vert' fill='true' expand='true'>\n"
|
||||
@ -100,8 +101,8 @@ appl::TestButton::TestButton(void) :
|
||||
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) {
|
||||
m_testWidget = ewol::dynamic_pointer_cast<ewol::widget::Button>(getWidgetNamed("[TEST]Button:TO-TEST"));
|
||||
if (m_testWidget == nullptr) {
|
||||
APPL_CRITICAL("Can not get the pointer of the widget button pointer");
|
||||
}
|
||||
APPL_INFO("Create " __class__ " (end)");
|
||||
@ -116,7 +117,7 @@ void appl::TestButton::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
APPL_WARNING("Receive Event from tested Button ... : " << _msg );
|
||||
}
|
||||
if (_msg.getMessage() == l_eventChangeExpendX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setExpand(bvec2(true,m_testWidget->getExpand().y()));
|
||||
} else {
|
||||
@ -124,7 +125,7 @@ void appl::TestButton::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeExpendY) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setExpand(bvec2(m_testWidget->getExpand().x(),true));
|
||||
} else {
|
||||
@ -132,7 +133,7 @@ void appl::TestButton::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeFillX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setFill(bvec2(true,m_testWidget->getFill().y()));
|
||||
} else {
|
||||
@ -140,7 +141,7 @@ void appl::TestButton::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeFillY) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setFill(bvec2(m_testWidget->getFill().x(),true));
|
||||
} else {
|
||||
@ -148,7 +149,7 @@ void appl::TestButton::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeToggle) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setToggleMode(true);
|
||||
} else {
|
||||
@ -156,72 +157,72 @@ void appl::TestButton::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeTextToggle) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=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"));
|
||||
m_testWidget->setSubWidgetToggle(ewol::object::makeShared(new ewol::widget::Label("A stupid very long text on toggle <br/><br/> and on multiple lines")));
|
||||
} else {
|
||||
m_testWidget->setSubWidgetToggle(NULL);
|
||||
m_testWidget->setSubWidgetToggle(nullptr);
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeText) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
static int32_t countTextID = 1;
|
||||
switch (countTextID) {
|
||||
case 0:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("simple Text"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("simple Text")));
|
||||
break;
|
||||
case 1:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("<left>Align Left</left>"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("<left>Align Left</left>")));
|
||||
break;
|
||||
case 2:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("<right>Align right</right>"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("<right>Align right</right>")));
|
||||
break;
|
||||
case 3:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("<center>Align center</center>"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(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"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(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"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(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"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(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"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("simple <italic><bold>Text</bold></italic> with italic bold")));
|
||||
break;
|
||||
case 8:
|
||||
m_testWidget->setSubWidget(NULL);
|
||||
m_testWidget->setSubWidget(nullptr);
|
||||
break;
|
||||
case 9:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("simple <font color=\"#FFFF0088\">Text</font> with colored text"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("simple <font color=\"#FFFF0088\">Text</font> with colored text")));
|
||||
break;
|
||||
case 10:
|
||||
m_testWidget->setSubWidget(
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(
|
||||
new ewol::widget::Composer(ewol::widget::Composer::String,
|
||||
"<label>ploppp</label>\n"));
|
||||
"<label>ploppp</label>\n")));
|
||||
break;
|
||||
case 11:
|
||||
m_testWidget->setSubWidget(
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(
|
||||
new ewol::widget::Composer(ewol::widget::Composer::String,
|
||||
" <sizer mode=\"vert\" addmode=\"invert\">\n"
|
||||
" <label>ploppp</label>\n"
|
||||
" <label expand=\"true,true\"><center>** ** * *<br/>** * * * *</center></label>\n"
|
||||
" </sizer>\n"));
|
||||
" </sizer>\n")));
|
||||
break;
|
||||
case 12:
|
||||
m_testWidget->setSubWidget(
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(
|
||||
new ewol::widget::Composer(ewol::widget::Composer::String,
|
||||
"<spacer color='red' min-size='30,30px'/>\n"));
|
||||
"<spacer color='red' min-size='30,30px'/>\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 ..."));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("My <font color=\"#FF0000\">Button</font> <br/> And Some under line<br/> plop <br/> and an other super long line ...")));
|
||||
countTextID=-1;
|
||||
break;
|
||||
}
|
||||
// set at the subWidget all the space they can ...
|
||||
if (NULL != m_testWidget->getSubWidget()){
|
||||
if (nullptr != m_testWidget->getSubWidget()){
|
||||
m_testWidget->getSubWidget()->setFill(bvec2(true,true));
|
||||
m_testWidget->getSubWidget()->setExpand(bvec2(true,true));
|
||||
}
|
||||
@ -232,9 +233,9 @@ void appl::TestButton::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
return;
|
||||
}
|
||||
|
||||
void appl::TestButton::onObjectRemove(ewol::Object* _removeObject) {
|
||||
ewol::widget::Composer::onObjectRemove(_removeObject);
|
||||
if (m_testWidget == _removeObject) {
|
||||
m_testWidget = NULL;
|
||||
void appl::TestButton::onObjectRemove(const ewol::object::Shared<ewol::Object>& _object) {
|
||||
ewol::widget::Composer::onObjectRemove(_object);
|
||||
if (m_testWidget == _object) {
|
||||
m_testWidget.reset();
|
||||
}
|
||||
}
|
||||
|
@ -15,13 +15,13 @@
|
||||
namespace appl {
|
||||
class TestButton : public ewol::widget::Composer {
|
||||
private:
|
||||
ewol::widget::Button* m_testWidget;
|
||||
ewol::object::Shared<ewol::widget::Button> m_testWidget;
|
||||
public:
|
||||
// Constructeur
|
||||
TestButton(void);
|
||||
TestButton();
|
||||
public: // Derived function
|
||||
virtual void onReceiveMessage(const ewol::object::Message& _msg);
|
||||
virtual void onObjectRemove(ewol::Object* _removeObject);
|
||||
virtual void onObjectRemove(const ewol::object::Shared<ewol::Object>& _object);
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -33,55 +33,56 @@ static const char * l_eventChangeFillY = "event-change-fill-Y";
|
||||
#undef __class__
|
||||
#define __class__ "TestButton"
|
||||
|
||||
TestButtonColor::TestButtonColor(void) :
|
||||
TestButtonColor::TestButtonColor() :
|
||||
ewol::widget::Sizer(ewol::widget::Sizer::modeVert),
|
||||
m_testWidget(NULL) {
|
||||
m_testWidget(nullptr) {
|
||||
APPL_INFO("CREATE " __class__ " ... ");
|
||||
ewol::widget::Sizer* mySizerVert2 = NULL;
|
||||
ewol::widget::Sizer* mySizerHori = NULL;
|
||||
ewol::widget::Button* myButton = NULL;
|
||||
addObjectType("appl::TestButtonColor");
|
||||
ewol::object::Shared<ewol::widget::Sizer> mySizerVert2;
|
||||
ewol::object::Shared<ewol::widget::Sizer> mySizerHori;
|
||||
ewol::object::Shared<ewol::widget::Button> myButton;
|
||||
|
||||
mySizerHori = new ewol::widget::Sizer(ewol::widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
mySizerHori = ewol::object::makeShared(new ewol::widget::Sizer(ewol::widget::Sizer::modeHori));
|
||||
if (nullptr == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
subWidgetAdd(mySizerHori);
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("Expand X (false)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("Expand X (true)"));
|
||||
myButton->setSubWidget( ewol::object::makeShared(new ewol::widget::Label("Expand X (false)")));
|
||||
myButton->setSubWidgetToggle(ewol::object::makeShared(new ewol::widget::Label("Expand X (true)")));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeExpendX);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("Expand Y (false)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("Expand Y (true)"));
|
||||
myButton->setSubWidget( ewol::object::makeShared(new ewol::widget::Label("Expand Y (false)")));
|
||||
myButton->setSubWidgetToggle(ewol::object::makeShared(new ewol::widget::Label("Expand Y (true)")));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeExpendY);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("Fill X (false)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("Fill X (true)"));
|
||||
myButton->setSubWidget( ewol::object::makeShared(new ewol::widget::Label("Fill X (false)")));
|
||||
myButton->setSubWidgetToggle(ewol::object::makeShared(new ewol::widget::Label("Fill X (true)")));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeFillX);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("Fill Y (false)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("Fill Y (true)"));
|
||||
myButton->setSubWidget( ewol::object::makeShared(new ewol::widget::Label("Fill Y (false)")));
|
||||
myButton->setSubWidgetToggle(ewol::object::makeShared(new ewol::widget::Label("Fill Y (true)")));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeFillY);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
|
||||
ewol::widget::Spacer* mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
ewol::object::Shared<ewol::widget::Spacer> mySpacer = ewol::object::makeShared(new ewol::widget::Spacer());
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(true,false));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -89,30 +90,30 @@ TestButtonColor::TestButtonColor(void) :
|
||||
subWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
mySizerHori = new ewol::widget::Sizer(ewol::widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
mySizerHori = ewol::object::makeShared(new ewol::widget::Sizer(ewol::widget::Sizer::modeHori));
|
||||
if (nullptr == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
subWidgetAdd(mySizerHori);
|
||||
|
||||
mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer = ewol::object::makeShared(new ewol::widget::Spacer());
|
||||
if (nullptr != 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::ButtonColor(etk::color::olive);
|
||||
if (NULL != m_testWidget) {
|
||||
m_testWidget = ewol::object::makeShared(new ewol::widget::ButtonColor(etk::color::olive));
|
||||
if (nullptr != m_testWidget) {
|
||||
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 = ewol::object::makeShared(new ewol::widget::Spacer());
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(false,true));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -120,8 +121,8 @@ TestButtonColor::TestButtonColor(void) :
|
||||
mySizerHori->subWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer = ewol::object::makeShared(new ewol::widget::Spacer());
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(true,false));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -130,7 +131,7 @@ TestButtonColor::TestButtonColor(void) :
|
||||
}
|
||||
}
|
||||
|
||||
TestButtonColor::~TestButtonColor(void) {
|
||||
TestButtonColor::~TestButtonColor() {
|
||||
|
||||
}
|
||||
|
||||
@ -141,7 +142,7 @@ void TestButtonColor::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
APPL_WARNING("Receive Event from tested Button ... : " << _msg );
|
||||
}
|
||||
if (_msg.getMessage() == l_eventChangeExpendX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setExpand(bvec2(true,m_testWidget->getExpand().y()));
|
||||
} else {
|
||||
@ -149,7 +150,7 @@ void TestButtonColor::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeExpendY) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setExpand(bvec2(m_testWidget->getExpand().x(),true));
|
||||
} else {
|
||||
@ -157,7 +158,7 @@ void TestButtonColor::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeFillX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setFill(bvec2(true,m_testWidget->getFill().y()));
|
||||
} else {
|
||||
@ -165,7 +166,7 @@ void TestButtonColor::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeFillY) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setFill(bvec2(m_testWidget->getFill().x(),true));
|
||||
} else {
|
||||
@ -177,9 +178,9 @@ void TestButtonColor::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
return;
|
||||
}
|
||||
|
||||
void TestButtonColor::onObjectRemove(ewol::Object* _removeObject) {
|
||||
ewol::widget::Sizer::onObjectRemove(_removeObject);
|
||||
if (m_testWidget == _removeObject) {
|
||||
m_testWidget = NULL;
|
||||
void TestButtonColor::onObjectRemove(const ewol::object::Shared<ewol::Object>& _object) {
|
||||
ewol::widget::Sizer::onObjectRemove(_object);
|
||||
if (m_testWidget == _object) {
|
||||
m_testWidget.reset();
|
||||
}
|
||||
}
|
||||
|
@ -18,17 +18,14 @@
|
||||
|
||||
class TestButtonColor : public ewol::widget::Sizer {
|
||||
private:
|
||||
ewol::widget::ButtonColor* m_testWidget;
|
||||
ewol::object::Shared<ewol::widget::ButtonColor> m_testWidget;
|
||||
public:
|
||||
// Constructeur
|
||||
TestButtonColor(void);
|
||||
virtual ~TestButtonColor(void);
|
||||
TestButtonColor();
|
||||
virtual ~TestButtonColor();
|
||||
public: // Derived function
|
||||
virtual const char * const getObjectType(void) {
|
||||
return "TestButton";
|
||||
};
|
||||
virtual void onReceiveMessage(const ewol::object::Message& _msg);
|
||||
virtual void onObjectRemove(ewol::Object* _removeObject);
|
||||
virtual void onObjectRemove(const ewol::object::Shared<ewol::Object>& _object);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -39,9 +39,10 @@ static const char * l_eventChangeImageToggle = "event-change-image-toggle";
|
||||
#undef __class__
|
||||
#define __class__ "TestCheckBox"
|
||||
|
||||
appl::TestCheckBox::TestCheckBox(void) :
|
||||
m_testWidget(NULL) {
|
||||
appl::TestCheckBox::TestCheckBox() :
|
||||
m_testWidget(nullptr) {
|
||||
APPL_INFO("Create " __class__ " (start)");
|
||||
addObjectType("appl::TestCheckBox");
|
||||
|
||||
std::string myDescription = std::string("")
|
||||
+ "<sizer mode='vert' fill='true' expand='true'>\n"
|
||||
@ -100,8 +101,8 @@ appl::TestCheckBox::TestCheckBox(void) :
|
||||
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) {
|
||||
m_testWidget = ewol::dynamic_pointer_cast<ewol::widget::CheckBox>(getWidgetNamed("[TEST]TO-TEST"));
|
||||
if (m_testWidget == nullptr) {
|
||||
APPL_CRITICAL("Can not get the pointer of the widget button pointer");
|
||||
}
|
||||
APPL_INFO("Create " __class__ " (end)");
|
||||
@ -114,7 +115,7 @@ void appl::TestCheckBox::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
APPL_WARNING("Receive Event from tested Button ... : " << _msg );
|
||||
}
|
||||
if (_msg.getMessage() == l_eventChangeExpendX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setExpand(bvec2(true,m_testWidget->getExpand().y()));
|
||||
} else {
|
||||
@ -122,7 +123,7 @@ void appl::TestCheckBox::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeExpendY) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setExpand(bvec2(m_testWidget->getExpand().x(),true));
|
||||
} else {
|
||||
@ -130,7 +131,7 @@ void appl::TestCheckBox::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeFillX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setFill(bvec2(true,m_testWidget->getFill().y()));
|
||||
} else {
|
||||
@ -138,7 +139,7 @@ void appl::TestCheckBox::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeFillY) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setFill(bvec2(m_testWidget->getFill().x(),true));
|
||||
} else {
|
||||
@ -146,48 +147,48 @@ void appl::TestCheckBox::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeTextToggle) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=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"));
|
||||
m_testWidget->setSubWidgetToggle(ewol::object::makeShared(new ewol::widget::Label("A stupid very long text on toggle <br/><br/> and on multiple lines")));
|
||||
} else {
|
||||
m_testWidget->setSubWidgetToggle(NULL);
|
||||
m_testWidget->setSubWidgetToggle(nullptr);
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeText) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
static int32_t countTextID = 1;
|
||||
switch (countTextID) {
|
||||
case 0:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("simple Text"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("simple Text")));
|
||||
break;
|
||||
case 1:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("<left>Align Left</left>"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("<left>Align Left</left>")));
|
||||
break;
|
||||
case 2:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("<right>Align right</right>"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("<right>Align right</right>")));
|
||||
break;
|
||||
case 3:
|
||||
m_testWidget->setSubWidget(new ewol::widget::Label("<center>Align center</center>"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(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"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(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"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(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"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(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"));
|
||||
m_testWidget->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("simple <italic><bold>Text</bold></italic> with italic bold")));
|
||||
break;
|
||||
case 8:
|
||||
m_testWidget->setSubWidget(NULL);
|
||||
m_testWidget->setSubWidget(nullptr);
|
||||
countTextID=-1;
|
||||
break;
|
||||
}
|
||||
// set at the subWidget all the space they can ...
|
||||
if (NULL != m_testWidget->getSubWidget()){
|
||||
if (nullptr != m_testWidget->getSubWidget()){
|
||||
m_testWidget->getSubWidget()->setFill(bvec2(true,true));
|
||||
m_testWidget->getSubWidget()->setExpand(bvec2(true,true));
|
||||
}
|
||||
@ -198,9 +199,9 @@ void appl::TestCheckBox::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
return;
|
||||
}
|
||||
|
||||
void appl::TestCheckBox::onObjectRemove(ewol::Object* _removeObject) {
|
||||
ewol::widget::Composer::onObjectRemove(_removeObject);
|
||||
if (m_testWidget == _removeObject) {
|
||||
m_testWidget = NULL;
|
||||
void appl::TestCheckBox::onObjectRemove(const ewol::object::Shared<ewol::Object>& _object) {
|
||||
ewol::widget::Composer::onObjectRemove(_object);
|
||||
if (m_testWidget == _object) {
|
||||
m_testWidget.reset();
|
||||
}
|
||||
}
|
||||
|
@ -16,13 +16,13 @@
|
||||
namespace appl {
|
||||
class TestCheckBox : public ewol::widget::Composer {
|
||||
private:
|
||||
ewol::widget::CheckBox* m_testWidget;
|
||||
ewol::object::Shared<ewol::widget::CheckBox> m_testWidget;
|
||||
public:
|
||||
// Constructeur
|
||||
TestCheckBox(void);
|
||||
TestCheckBox();
|
||||
public: // Derived function
|
||||
virtual void onReceiveMessage(const ewol::object::Message& _msg);
|
||||
virtual void onObjectRemove(ewol::Object* _removeObject);
|
||||
virtual void onObjectRemove(const ewol::object::Shared<ewol::Object>& _object);
|
||||
};
|
||||
};
|
||||
#endif
|
||||
|
@ -28,7 +28,7 @@
|
||||
#undef __class__
|
||||
#define __class__ "TestDistanceField"
|
||||
|
||||
TestDistanceField::TestDistanceField(void){
|
||||
TestDistanceField::TestDistanceField(){
|
||||
addObjectType("appl::TestDistanceField");
|
||||
APPL_INFO("Create " __class__ " (start)");
|
||||
setExpand(bvec2(true, true));
|
||||
@ -37,7 +37,7 @@ TestDistanceField::TestDistanceField(void){
|
||||
}
|
||||
|
||||
|
||||
TestDistanceField::~TestDistanceField(void) {
|
||||
TestDistanceField::~TestDistanceField() {
|
||||
APPL_INFO("Remove " __class__ " ...");
|
||||
}
|
||||
|
||||
@ -48,13 +48,13 @@ void TestDistanceField::calculateSize(const vec2& _availlable) {
|
||||
}
|
||||
|
||||
|
||||
void TestDistanceField::calculateMinMaxSize(void) {
|
||||
void TestDistanceField::calculateMinMaxSize() {
|
||||
m_minSize = vec2(256,256);
|
||||
markToRedraw();
|
||||
}
|
||||
|
||||
|
||||
void TestDistanceField::onDraw(void) {
|
||||
void TestDistanceField::onDraw() {
|
||||
m_text2.draw();
|
||||
|
||||
m_text1.draw();
|
||||
@ -62,7 +62,7 @@ void TestDistanceField::onDraw(void) {
|
||||
|
||||
|
||||
|
||||
void TestDistanceField::onRegenerateDisplay(void) {
|
||||
void TestDistanceField::onRegenerateDisplay() {
|
||||
if (false == needRedraw()) {
|
||||
return;
|
||||
}
|
||||
|
@ -21,13 +21,13 @@ class TestDistanceField : public ewol::Widget {
|
||||
ewol::compositing::TextDF m_text2;
|
||||
public:
|
||||
// Constructeur
|
||||
TestDistanceField(void);
|
||||
virtual ~TestDistanceField(void);
|
||||
TestDistanceField();
|
||||
virtual ~TestDistanceField();
|
||||
public: // Derived function
|
||||
virtual void onDraw(void);
|
||||
virtual void calculateMinMaxSize(void);
|
||||
virtual void onDraw();
|
||||
virtual void calculateMinMaxSize();
|
||||
virtual void calculateSize(const vec2& _availlable);
|
||||
virtual void onRegenerateDisplay(void);
|
||||
virtual void onRegenerateDisplay();
|
||||
virtual bool onEventInput(const ewol::event::Input& _event);
|
||||
};
|
||||
|
||||
|
@ -35,68 +35,69 @@ static const char * l_eventChangeImage = "event-change-image";
|
||||
#undef __class__
|
||||
#define __class__ "TestImage"
|
||||
|
||||
TestImage::TestImage(void) :
|
||||
TestImage::TestImage() :
|
||||
ewol::widget::Sizer(ewol::widget::Sizer::modeVert),
|
||||
m_testWidget(NULL) {
|
||||
m_testWidget(nullptr) {
|
||||
APPL_INFO("Create " __class__ " (start)");
|
||||
ewol::widget::Sizer* mySizerVert2 = NULL;
|
||||
ewol::widget::Sizer* mySizerHori = NULL;
|
||||
ewol::widget::Button* myButton = NULL;
|
||||
addObjectType("appl::TestImage");
|
||||
ewol::object::Shared<ewol::widget::Sizer> mySizerVert2;
|
||||
ewol::object::Shared<ewol::widget::Sizer> mySizerHori;
|
||||
ewol::object::Shared<ewol::widget::Button> myButton;
|
||||
|
||||
mySizerHori = new ewol::widget::Sizer(ewol::widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
mySizerHori = ewol::object::makeShared(new ewol::widget::Sizer(ewol::widget::Sizer::modeHori));
|
||||
if (nullptr == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
subWidgetAdd(mySizerHori);
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != 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->setSubWidget( ewol::object::makeShared(new ewol::widget::Label("Expend X <br/> (false)")));
|
||||
myButton->setSubWidgetToggle(ewol::object::makeShared(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 = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != 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->setSubWidget( ewol::object::makeShared(new ewol::widget::Label("Expend Y <br/> (false)")));
|
||||
myButton->setSubWidgetToggle(ewol::object::makeShared(new ewol::widget::Label("Expend Y <br/><b>(true)</b>")));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeExpendY);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
|
||||
mySizerHori = new ewol::widget::Sizer(ewol::widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
mySizerHori = ewol::object::makeShared(new ewol::widget::Sizer(ewol::widget::Sizer::modeHori));
|
||||
if (nullptr == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
subWidgetAdd(mySizerHori);
|
||||
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != 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->setSubWidget( ewol::object::makeShared(new ewol::widget::Label("Fill X <br/> (false)")));
|
||||
myButton->setSubWidgetToggle(ewol::object::makeShared(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 = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != 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->setSubWidget( ewol::object::makeShared(new ewol::widget::Label("Fill Y <br/> (false)")));
|
||||
myButton->setSubWidgetToggle(ewol::object::makeShared(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 Image"));
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != myButton) {
|
||||
myButton->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("Change Image")));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeImage);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
ewol::widget::Spacer* mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
ewol::object::Shared<ewol::widget::Spacer> mySpacer = ewol::object::makeShared(new ewol::widget::Spacer());
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(true,false));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -104,15 +105,15 @@ TestImage::TestImage(void) :
|
||||
subWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
mySizerHori = new ewol::widget::Sizer(ewol::widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
mySizerHori = ewol::object::makeShared(new ewol::widget::Sizer(ewol::widget::Sizer::modeHori));
|
||||
if (nullptr == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
subWidgetAdd(mySizerHori);
|
||||
|
||||
mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer = ewol::object::makeShared(new ewol::widget::Spacer());
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(false,true));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -120,16 +121,16 @@ TestImage::TestImage(void) :
|
||||
mySizerHori->subWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
m_testWidget = new ewol::widget::Image("DATA:sphere.png");
|
||||
if (NULL != m_testWidget) {
|
||||
m_testWidget = ewol::object::makeShared(new ewol::widget::Image("DATA:sphere.png"));
|
||||
if (nullptr != m_testWidget) {
|
||||
m_testWidget->setExpand(bvec2(false,false));
|
||||
m_testWidget->setFill(bvec2(false,false));
|
||||
//m_testWidget->registerOnEvent(this, ewolEventButtonValue);
|
||||
mySizerHori->subWidgetAdd(m_testWidget);
|
||||
}
|
||||
|
||||
mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer = ewol::object::makeShared(new ewol::widget::Spacer());
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(false,true));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -137,8 +138,8 @@ TestImage::TestImage(void) :
|
||||
mySizerHori->subWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer = ewol::object::makeShared(new ewol::widget::Spacer());
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(true,false));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -149,7 +150,7 @@ TestImage::TestImage(void) :
|
||||
}
|
||||
|
||||
|
||||
TestImage::~TestImage(void) {
|
||||
TestImage::~TestImage() {
|
||||
APPL_INFO("Remove " __class__ " ...");
|
||||
}
|
||||
|
||||
@ -161,7 +162,7 @@ void TestImage::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
APPL_WARNING("Receive Event from tested Button ... : " << _msg);
|
||||
}
|
||||
if (_msg.getMessage() == l_eventChangeExpendX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setExpand(bvec2(true,m_testWidget->getExpand().y()));
|
||||
} else {
|
||||
@ -169,7 +170,7 @@ void TestImage::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeExpendY) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setExpand(bvec2(m_testWidget->getExpand().x(),true));
|
||||
} else {
|
||||
@ -177,7 +178,7 @@ void TestImage::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeFillX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setFill(bvec2(true,m_testWidget->getFill().y()));
|
||||
} else {
|
||||
@ -185,7 +186,7 @@ void TestImage::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeFillY) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setFill(bvec2(m_testWidget->getFill().x(),true));
|
||||
} else {
|
||||
@ -193,7 +194,7 @@ void TestImage::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeImage) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
static int32_t countID = 1;
|
||||
switch (countID) {
|
||||
case 0:
|
||||
@ -213,9 +214,9 @@ void TestImage::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
return;
|
||||
}
|
||||
|
||||
void TestImage::onObjectRemove(ewol::Object * _removeObject) {
|
||||
ewol::widget::Sizer::onObjectRemove(_removeObject);
|
||||
if (m_testWidget == _removeObject) {
|
||||
m_testWidget = NULL;
|
||||
void TestImage::onObjectRemove(const ewol::object::Shared<ewol::Object>& _object) {
|
||||
ewol::widget::Sizer::onObjectRemove(_object);
|
||||
if (m_testWidget == _object) {
|
||||
m_testWidget.reset();
|
||||
}
|
||||
}
|
||||
|
@ -18,17 +18,14 @@
|
||||
|
||||
class TestImage : public ewol::widget::Sizer {
|
||||
private:
|
||||
ewol::widget::Image* m_testWidget;
|
||||
ewol::object::Shared<ewol::widget::Image> m_testWidget;
|
||||
public:
|
||||
// Constructeur
|
||||
TestImage(void);
|
||||
virtual ~TestImage(void);
|
||||
TestImage();
|
||||
virtual ~TestImage();
|
||||
public: // Derived function
|
||||
virtual const char * const getObjectType(void) {
|
||||
return "appl::TestImage";
|
||||
};
|
||||
virtual void onReceiveMessage(const ewol::object::Message& _msg);
|
||||
virtual void onObjectRemove(ewol::Object* _removeObject);
|
||||
virtual void onObjectRemove(const ewol::object::Shared<ewol::Object>& _object);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -35,69 +35,70 @@ static const char * l_eventChangeLabel = "event-change-label";
|
||||
#undef __class__
|
||||
#define __class__ "TestButton"
|
||||
|
||||
TestLabel::TestLabel(void) :
|
||||
TestLabel::TestLabel() :
|
||||
ewol::widget::Sizer(ewol::widget::Sizer::modeVert),
|
||||
m_labelId(0) {
|
||||
APPL_DEBUG("CREATE " __class__ " ... ");
|
||||
ewol::widget::Sizer* mySizerVert2 = NULL;
|
||||
ewol::widget::Sizer* mySizerHori = NULL;
|
||||
ewol::widget::Button* myButton = NULL;
|
||||
addObjectType("appl::TestLabel");
|
||||
ewol::object::Shared<ewol::widget::Sizer> mySizerVert2;
|
||||
ewol::object::Shared<ewol::widget::Sizer> mySizerHori;
|
||||
ewol::object::Shared<ewol::widget::Button> myButton;
|
||||
|
||||
mySizerHori = new ewol::widget::Sizer(ewol::widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
mySizerHori = ewol::object::makeShared(new ewol::widget::Sizer(ewol::widget::Sizer::modeHori));
|
||||
if (nullptr == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
subWidgetAdd(mySizerHori);
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("Expand X (false)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("Expand X (true)"));
|
||||
myButton->setSubWidget( ewol::object::makeShared(new ewol::widget::Label("Expand X (false)")));
|
||||
myButton->setSubWidgetToggle(ewol::object::makeShared(new ewol::widget::Label("Expand X (true)")));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeExpendX);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("Expand Y (false)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("Expand Y (true)"));
|
||||
myButton->setSubWidget( ewol::object::makeShared(new ewol::widget::Label("Expand Y (false)")));
|
||||
myButton->setSubWidgetToggle(ewol::object::makeShared(new ewol::widget::Label("Expand Y (true)")));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeExpendY);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("Fill X (false)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("Fill X (true)"));
|
||||
myButton->setSubWidget( ewol::object::makeShared(new ewol::widget::Label("Fill X (false)")));
|
||||
myButton->setSubWidgetToggle(ewol::object::makeShared(new ewol::widget::Label("Fill X (true)")));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeFillX);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("Fill Y (false)"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("Fill Y (true)"));
|
||||
myButton->setSubWidget( ewol::object::makeShared(new ewol::widget::Label("Fill Y (false)")));
|
||||
myButton->setSubWidgetToggle(ewol::object::makeShared(new ewol::widget::Label("Fill Y (true)")));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeFillY);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != myButton) {
|
||||
myButton->setToggleMode(true);
|
||||
myButton->setSubWidget( new ewol::widget::Label("no Max size"));
|
||||
myButton->setSubWidgetToggle(new ewol::widget::Label("maxSize (400,99999999)"));
|
||||
myButton->setSubWidget( ewol::object::makeShared(new ewol::widget::Label("no Max size")));
|
||||
myButton->setSubWidgetToggle(ewol::object::makeShared(new ewol::widget::Label("maxSize (400,99999999)")));
|
||||
myButton->registerOnEvent(this, "value", l_eventChangeMaxSize);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->setSubWidget(new ewol::widget::Label("Next Label"));
|
||||
myButton = ewol::object::makeShared(new ewol::widget::Button());
|
||||
if (nullptr != myButton) {
|
||||
myButton->setSubWidget(ewol::object::makeShared(new ewol::widget::Label("Next Label")));
|
||||
myButton->registerOnEvent(this, "pressed", l_eventChangeLabel);
|
||||
mySizerHori->subWidgetAdd(myButton);
|
||||
}
|
||||
|
||||
ewol::widget::Spacer* mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
ewol::object::Shared<ewol::widget::Spacer> mySpacer = ewol::object::makeShared(new ewol::widget::Spacer());
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(true,false));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -105,14 +106,14 @@ TestLabel::TestLabel(void) :
|
||||
subWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
mySizerHori = new ewol::widget::Sizer(ewol::widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
mySizerHori = ewol::object::makeShared(new ewol::widget::Sizer(ewol::widget::Sizer::modeHori));
|
||||
if (nullptr == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
subWidgetAdd(mySizerHori);
|
||||
mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer = ewol::object::makeShared(new ewol::widget::Spacer());
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(false,true));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -120,16 +121,16 @@ TestLabel::TestLabel(void) :
|
||||
mySizerHori->subWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
m_testWidget = new ewol::widget::Label("Basic label");
|
||||
if (NULL != m_testWidget) {
|
||||
m_testWidget = ewol::object::makeShared(new ewol::widget::Label("Basic label"));
|
||||
if (nullptr != m_testWidget) {
|
||||
m_testWidget->setExpand(bvec2(false,false));
|
||||
m_testWidget->setFill(bvec2(false,false));
|
||||
//m_testWidget->registerOnEvent(this, ewolEventButtonColorChange);
|
||||
mySizerHori->subWidgetAdd(m_testWidget);
|
||||
}
|
||||
|
||||
mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer = ewol::object::makeShared(new ewol::widget::Spacer());
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(false,true));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -137,8 +138,8 @@ TestLabel::TestLabel(void) :
|
||||
mySizerHori->subWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer = ewol::object::makeShared(new ewol::widget::Spacer());
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(true,false));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -148,7 +149,7 @@ TestLabel::TestLabel(void) :
|
||||
}
|
||||
|
||||
|
||||
TestLabel::~TestLabel(void) {
|
||||
TestLabel::~TestLabel() {
|
||||
|
||||
}
|
||||
|
||||
@ -160,7 +161,7 @@ void TestLabel::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
APPL_WARNING("Receive Event from tested Button ... : " << _msg );
|
||||
}
|
||||
if (_msg.getMessage() == l_eventChangeExpendX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setExpand(bvec2(true,m_testWidget->getExpand().y()));
|
||||
} else {
|
||||
@ -168,7 +169,7 @@ void TestLabel::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeExpendY) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setExpand(bvec2(m_testWidget->getExpand().x(),true));
|
||||
} else {
|
||||
@ -176,7 +177,7 @@ void TestLabel::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeFillX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setFill(bvec2(true,m_testWidget->getFill().y()));
|
||||
} else {
|
||||
@ -184,7 +185,7 @@ void TestLabel::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeFillY) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setFill(bvec2(m_testWidget->getFill().x(),true));
|
||||
} else {
|
||||
@ -192,7 +193,7 @@ void TestLabel::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeMaxSize) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
if (_msg.getData()=="true") {
|
||||
m_testWidget->setMaxSize(vec2(400,9999999999));
|
||||
} else {
|
||||
@ -200,7 +201,7 @@ void TestLabel::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
}
|
||||
}
|
||||
} else if (_msg.getMessage() == l_eventChangeLabel) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
m_labelId++;
|
||||
switch(m_labelId)
|
||||
{
|
||||
@ -239,9 +240,9 @@ void TestLabel::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
return;
|
||||
}
|
||||
|
||||
void TestLabel::onObjectRemove(ewol::Object* _removeObject) {
|
||||
ewol::widget::Sizer::onObjectRemove(_removeObject);
|
||||
if (m_testWidget == _removeObject) {
|
||||
m_testWidget = NULL;
|
||||
void TestLabel::onObjectRemove(const ewol::object::Shared<ewol::Object>& _object) {
|
||||
ewol::widget::Sizer::onObjectRemove(_object);
|
||||
if (m_testWidget == _object) {
|
||||
m_testWidget.reset();
|
||||
}
|
||||
}
|
||||
|
@ -18,23 +18,20 @@
|
||||
|
||||
class TestLabel : public ewol::widget::Sizer {
|
||||
private:
|
||||
ewol::widget::Label* m_testWidget;
|
||||
ewol::object::Shared<ewol::widget::Label> m_testWidget;
|
||||
int32_t m_labelId;
|
||||
public:
|
||||
/**
|
||||
* @brief Constructeur
|
||||
*/
|
||||
TestLabel(void);
|
||||
TestLabel();
|
||||
/**
|
||||
* @brief Destructor
|
||||
*/
|
||||
virtual ~TestLabel(void);
|
||||
virtual ~TestLabel();
|
||||
public: // Derived function
|
||||
virtual const char * const getObjectType(void) {
|
||||
return "TestButton";
|
||||
};
|
||||
virtual void onReceiveMessage(const ewol::object::Message& _msg);
|
||||
virtual void onObjectRemove(ewol::Object* _removeObject);
|
||||
virtual void onObjectRemove(const ewol::object::Shared<ewol::Object>& _object);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -44,102 +44,103 @@ static const char * l_eventDown = "event-down";
|
||||
#undef __class__
|
||||
#define __class__ "TestScene"
|
||||
|
||||
TestScene::TestScene(void) :
|
||||
TestScene::TestScene() :
|
||||
ewol::widget::Sizer(ewol::widget::Sizer::modeVert)
|
||||
{
|
||||
addObjectType("appl::TestScene");
|
||||
/*
|
||||
m_ground = new game::Element("DATA:grass.obj");
|
||||
if (NULL != m_ground) {
|
||||
if (nullptr != m_ground) {
|
||||
m_ground->SetStaticMode(true);
|
||||
m_gameEngine.AddElement(m_ground);
|
||||
}
|
||||
*/
|
||||
|
||||
APPL_CRITICAL("Create "__class__" (start)");
|
||||
ewol::widget::Sizer* mySizerVert2 = NULL;
|
||||
ewol::widget::Sizer* mySizerHori = NULL;
|
||||
ewol::widget::Button* myButton = NULL;
|
||||
ewol::object::Shared<ewol::widget::Sizer> mySizerVert2 = nullptr;
|
||||
ewol::object::Shared<ewol::widget::Sizer> mySizerHori = nullptr;
|
||||
ewol::object::Shared<ewol::widget::Button> myButton = nullptr;
|
||||
/*
|
||||
mySizerHori = new ewol::widget::SizerHori();
|
||||
if (NULL == mySizerHori) {
|
||||
if (nullptr == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
SubWidgetAdd(mySizerHori);
|
||||
myButton = new ewol::widget::Button("Add Box");
|
||||
if (NULL != myButton) {
|
||||
if (nullptr != myButton) {
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventAddBox);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button("Add Sphere");
|
||||
if (NULL != myButton) {
|
||||
if (nullptr != myButton) {
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventAddSphere);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button("Rotation X");
|
||||
if (NULL != myButton) {
|
||||
if (nullptr != myButton) {
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventRotationX);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button("Rotation Y");
|
||||
if (NULL != myButton) {
|
||||
myButton = new ewol::widget::Button("Rotation Y"); = nullptr
|
||||
if (nullptr != myButton) {
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventRotationY);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button("Rotation Z");
|
||||
if (NULL != myButton) {
|
||||
if (nullptr != myButton) {
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventRotationZ);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button("Rotation -");
|
||||
if (NULL != myButton) {
|
||||
if (nullptr != myButton) {
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventRotation0);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button("UP");
|
||||
if (NULL != myButton) {
|
||||
if (nullptr != myButton) {
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventUp);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button("DOWN");
|
||||
if (NULL != myButton) {
|
||||
if (nullptr != myButton) {
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventDown);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
mySizerHori = new ewol::widget::SizerHori();
|
||||
if (NULL == mySizerHori) {
|
||||
if (nullptr == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
SubWidgetAdd(mySizerHori);
|
||||
myButton = new ewol::widget::Button("lunch object");
|
||||
if (NULL != myButton) {
|
||||
if (nullptr != myButton) {
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventLunch);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button("1x speed");
|
||||
if (NULL != myButton) {
|
||||
if (nullptr != myButton) {
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventChangeTimeSpeed1);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button("0.5x speed");
|
||||
if (NULL != myButton) {
|
||||
if (nullptr != myButton) {
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventChangeTimeSpeed0);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button("2x speed");
|
||||
if (NULL != myButton) {
|
||||
if (nullptr != myButton) {
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventChangeTimeSpeed2);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new ewol::widget::Button("4x speed");
|
||||
if (NULL != myButton) {
|
||||
if (nullptr != myButton) {
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventChangeTimeSpeed4);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
*/
|
||||
ewol::widget::Spacer* mySpacer = new widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
ewol::object::Shared<ewol::widget::Spacer> mySpacer = new widget::Spacer();
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(true,false));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -148,13 +149,13 @@ TestScene::TestScene(void) :
|
||||
}
|
||||
|
||||
mySizerHori = new ewol::widget::Sizer(ewol::widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
if (nullptr == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
subWidgetAdd(mySizerHori);
|
||||
mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(false,true));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -162,15 +163,15 @@ TestScene::TestScene(void) :
|
||||
mySizerHori->subWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
m_testWidget = new ewol::widget::Scene(/*&m_gameEngine*/ NULL);
|
||||
if (NULL != m_testWidget) {
|
||||
m_testWidget = new ewol::widget::Scene(/*&m_gameEngine*/ nullptr);
|
||||
if (nullptr != m_testWidget) {
|
||||
m_testWidget->setExpand(bvec2(true,true));
|
||||
m_testWidget->setFill(bvec2(true,true));
|
||||
mySizerHori->subWidgetAdd(m_testWidget);
|
||||
}
|
||||
|
||||
mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(false,true));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -179,7 +180,7 @@ TestScene::TestScene(void) :
|
||||
}
|
||||
|
||||
mySpacer = new ewol::widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
if (nullptr != mySpacer) {
|
||||
mySpacer->setExpand(bvec2(false,false));
|
||||
mySpacer->setFill(bvec2(true,false));
|
||||
mySpacer->setMinSize(vec2(10,10));
|
||||
@ -190,7 +191,7 @@ TestScene::TestScene(void) :
|
||||
}
|
||||
|
||||
|
||||
TestScene::~TestScene(void) {
|
||||
TestScene::~TestScene() {
|
||||
APPL_INFO("Remove "__class__" ...");
|
||||
}
|
||||
|
||||
@ -283,7 +284,7 @@ void TestScene::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
m_gameEngine.AddElement(tmpp);
|
||||
}
|
||||
} else if (eventId == l_eventAddSphere) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
stupidSphere * tmpp = new stupidSphere();
|
||||
vec3 newPos = vec3(etk::tool::frand(-40,40),etk::tool::frand(-40,40),etk::tool::frand(1,8));
|
||||
APPL_DEBUG("add a box at the pos : " << newPos);
|
||||
@ -316,19 +317,19 @@ void TestScene::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
tmpp->SetSpeed(vec3(10,10,50));
|
||||
m_gameEngine.AddElement(tmpp);
|
||||
} else if (eventId == l_eventChangeTimeSpeed1) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
m_testWidget->SetRatioTime(1);
|
||||
}
|
||||
} else if (eventId == l_eventChangeTimeSpeed0) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
m_testWidget->SetRatioTime(0.5);
|
||||
}
|
||||
} else if (eventId == l_eventChangeTimeSpeed2) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
m_testWidget->SetRatioTime(2);
|
||||
}
|
||||
} else if (eventId == l_eventChangeTimeSpeed4) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (nullptr!=m_testWidget) {
|
||||
m_testWidget->SetRatioTime(4);
|
||||
}
|
||||
}
|
||||
@ -337,9 +338,9 @@ void TestScene::onReceiveMessage(const ewol::object::Message& _msg) {
|
||||
return;
|
||||
}
|
||||
|
||||
void TestScene::onObjectRemove(ewol::Object* _removeObject) {
|
||||
ewol::widget::Sizer::OnObjectRemove(_removeObject);
|
||||
if (m_testWidget == _removeObject) {
|
||||
m_testWidget = NULL;
|
||||
void TestScene::onObjectRemove(const ewol::object::Shared<ewol::Object>& _object) {
|
||||
ewol::widget::Sizer::OnObjectRemove(_object);
|
||||
if (m_testWidget == _object) {
|
||||
m_testWidget.reset();
|
||||
}
|
||||
}
|
||||
|
@ -16,17 +16,14 @@
|
||||
|
||||
class TestScene : public ewol::widget::Sizer {
|
||||
private:
|
||||
ewol::widget::Scene* m_testWidget;
|
||||
ewol::object::Shared<ewol::widget::Scene> m_testWidget;
|
||||
public:
|
||||
// Constructeur
|
||||
TestScene(void);
|
||||
virtual ~TestScene(void);
|
||||
TestScene();
|
||||
virtual ~TestScene();
|
||||
public: // Derived function
|
||||
virtual const char * const getObjectType(void) {
|
||||
return "TestButton";
|
||||
};
|
||||
virtual void onReceiveMessage(const ewol::object::Message& _msg);
|
||||
virtual void onObjectRemove(ewol::Object* _removeObject);
|
||||
virtual void onObjectRemove(const ewol::object::Shared<ewol::Object>& _object);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -3,8 +3,13 @@
|
||||
*
|
||||
* @copyright 2010, Edouard DUPIN, all right reserved
|
||||
*
|
||||
* @license BSD v3 (see license file)
|
||||
* @license GPL v3 (see license file)
|
||||
*/
|
||||
|
||||
// *********** << needed to have a goo display (do not exeed)
|
||||
const char * applLog = "human ";
|
||||
|
||||
|
||||
#include <appl/debug.h>
|
||||
|
||||
int32_t appl::getLogId() {
|
||||
static int32_t g_val = etk::log::registerInstance("test_ewol");
|
||||
return g_val;
|
||||
}
|
||||
|
@ -3,25 +3,50 @@
|
||||
*
|
||||
* @copyright 2010, Edouard DUPIN, all right reserved
|
||||
*
|
||||
* @license BSD v3 (see license file)
|
||||
* @license GPL v3 (see license file)
|
||||
*/
|
||||
|
||||
#ifndef __DEBUG_H__
|
||||
#define __DEBUG_H__
|
||||
|
||||
#include <etk/types.h>
|
||||
#include <etk/debugGeneric.h>
|
||||
#ifndef __APPL_DEBUG_H__
|
||||
#define __APPL_DEBUG_H__
|
||||
|
||||
extern const char * applLog;
|
||||
#include <etk/log.h>
|
||||
|
||||
#define APPL_CRITICAL(data) ETK_CRITICAL(applLog, data)
|
||||
#define APPL_WARNING(data) ETK_WARNING(applLog, data)
|
||||
#define APPL_ERROR(data) ETK_ERROR(applLog, data)
|
||||
#define APPL_INFO(data) ETK_INFO(applLog, data)
|
||||
#define APPL_DEBUG(data) ETK_DEBUG(applLog, data)
|
||||
#define APPL_VERBOSE(data) ETK_VERBOSE(applLog, data)
|
||||
#define APPL_ASSERT(cond, data) ETK_ASSERT(applLog, cond, data)
|
||||
#define APPL_CHECK_INOUT(cond) ETK_CHECK_INOUT(applLog, cond)
|
||||
#define APPL_TODO(cond) ETK_TODO(applLog, cond)
|
||||
namespace appl {
|
||||
int32_t getLogId();
|
||||
};
|
||||
// TODO : Review this problem of multiple intanciation of "std::stringbuf sb"
|
||||
#define APPL_BASE(info,data) \
|
||||
do { \
|
||||
if (info <= etk::log::getLevel(appl::getLogId())) { \
|
||||
std::stringbuf sb; \
|
||||
std::ostream tmpStream(&sb); \
|
||||
tmpStream << data; \
|
||||
etk::log::logStream(appl::getLogId(), info, __LINE__, __class__, __func__, tmpStream); \
|
||||
} \
|
||||
} while(0)
|
||||
|
||||
#define APPL_CRITICAL(data) APPL_BASE(1, data)
|
||||
#define APPL_ERROR(data) APPL_BASE(2, data)
|
||||
#define APPL_WARNING(data) APPL_BASE(3, data)
|
||||
#ifdef DEBUG
|
||||
#define APPL_INFO(data) APPL_BASE(4, data)
|
||||
#define APPL_DEBUG(data) APPL_BASE(5, data)
|
||||
#define APPL_VERBOSE(data) APPL_BASE(6, data)
|
||||
#define APPL_TODO(data) APPL_BASE(4, "TODO : " << data)
|
||||
#else
|
||||
#define APPL_INFO(data) do { } while(false)
|
||||
#define APPL_DEBUG(data) do { } while(false)
|
||||
#define APPL_VERBOSE(data) do { } while(false)
|
||||
#define APPL_TODO(data) do { } while(false)
|
||||
#endif
|
||||
|
||||
#define APPL_ASSERT(cond,data) \
|
||||
do { \
|
||||
if (!(cond)) { \
|
||||
APPL_CRITICAL(data); \
|
||||
assert(!#cond); \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#endif
|
||||
|
@ -36,7 +36,8 @@ int main(int argc, const char *argv[]) {
|
||||
/**
|
||||
* @brief main application function Initialisation
|
||||
*/
|
||||
bool APP_Init(ewol::Context& _context) {
|
||||
bool APP_Init(ewol::Context& _context, size_t _initId, size_t& _nbInitStep) {
|
||||
_nbInitStep = 1;
|
||||
APPL_INFO("==> Init " PROJECT_NAME " (START) [" << ewol::getBoardType() << "] (" << ewol::getCompilationMode() << ")");
|
||||
|
||||
etk::initDefaultFolder(PROJECT_NAME);
|
||||
@ -53,8 +54,8 @@ bool APP_Init(ewol::Context& _context) {
|
||||
// set the application icon ...
|
||||
_context.setIcon("DATA:icon.png");
|
||||
|
||||
MainWindows* basicWindows = new MainWindows();
|
||||
if (NULL == basicWindows) {
|
||||
ewol::object::Shared<MainWindows> basicWindows = ewol::object::makeShared(new MainWindows());
|
||||
if (basicWindows == nullptr) {
|
||||
APPL_ERROR("Can not allocate the basic windows");
|
||||
return false;
|
||||
}
|
||||
@ -78,15 +79,6 @@ bool APP_Init(ewol::Context& _context) {
|
||||
*/
|
||||
void APP_UnInit(ewol::Context& _context) {
|
||||
APPL_INFO("==> Un-Init " PROJECT_NAME " (START)");
|
||||
// Get the curent windows
|
||||
ewol::widget::Windows* tmpWindows = _context.getWindows();
|
||||
// Remove windows :
|
||||
_context.setWindows(NULL);
|
||||
|
||||
if (NULL != tmpWindows) {
|
||||
delete(tmpWindows);
|
||||
tmpWindows = NULL;
|
||||
}
|
||||
APPL_INFO("==> Un-Init " PROJECT_NAME " (END)");
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user