[DEV] add image test
This commit is contained in:
parent
202c0bde11
commit
a3967049c5
@ -26,6 +26,7 @@
|
||||
#include <appl/TestButton.h>
|
||||
#include <appl/TestButtonColor.h>
|
||||
#include <appl/TestLabel.h>
|
||||
#include <appl/TestImage.h>
|
||||
#include <appl/TestScene.h>
|
||||
|
||||
|
||||
@ -39,7 +40,8 @@ static const char * l_eventChangeWidgetPrevious = "event-change-widget-test-pre
|
||||
|
||||
MainWindows::MainWindows(void) :
|
||||
m_idWidget(0),
|
||||
m_subWidget(NULL)
|
||||
m_subWidget(NULL),
|
||||
m_testName(NULL)
|
||||
{
|
||||
APPL_DEBUG("CREATE WINDOWS ... ");
|
||||
widget::Sizer* mySizerHori = NULL;
|
||||
@ -78,6 +80,10 @@ MainWindows::MainWindows(void) :
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventChangeWidgetNext);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
m_testName = new widget::Label("none");
|
||||
if (NULL != m_testName) {
|
||||
mySizerHori->SubWidgetAdd(m_testName);
|
||||
}
|
||||
widget::Spacer* mySpacer = new widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer->SetExpand(bvec2(false,false));
|
||||
@ -138,30 +144,42 @@ void MainWindows::OnReceiveMessage(ewol::EObject * CallerObject, const char * ev
|
||||
m_subWidget->SetExpand(bvec2(true,true));
|
||||
m_sizerVert->SubWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) { m_testName->SetLabel("Label"); };
|
||||
break;
|
||||
case 1:
|
||||
m_subWidget = (ewol::Widget*)new TestButton();
|
||||
if (NULL != m_subWidget) {
|
||||
m_sizerVert->SubWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) { m_testName->SetLabel("TestButton"); };
|
||||
break;
|
||||
case 2:
|
||||
m_subWidget = (ewol::Widget*)new TestButtonColor();
|
||||
if (NULL != m_subWidget) {
|
||||
m_sizerVert->SubWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) { m_testName->SetLabel("TestButtonColor"); };
|
||||
break;
|
||||
case 3:
|
||||
m_subWidget = (ewol::Widget*)new TestLabel();
|
||||
if (NULL != m_subWidget) {
|
||||
m_sizerVert->SubWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) { m_testName->SetLabel("TestLabel"); };
|
||||
break;
|
||||
case 4:
|
||||
m_subWidget = (ewol::Widget*)new TestImage();
|
||||
if (NULL != m_subWidget) {
|
||||
m_sizerVert->SubWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) { m_testName->SetLabel("TestImage"); };
|
||||
break;
|
||||
case 5:
|
||||
m_subWidget = (ewol::Widget*)new TestScene();
|
||||
if (NULL != m_subWidget) {
|
||||
m_sizerVert->SubWidgetAdd(m_subWidget);
|
||||
}
|
||||
if (m_testName!=NULL) { m_testName->SetLabel("TestScene"); };
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -173,5 +191,7 @@ void MainWindows::OnObjectRemove(ewol::EObject * removeObject)
|
||||
m_subWidget = NULL;
|
||||
} else if (m_sizerVert == removeObject) {
|
||||
m_sizerVert = NULL;
|
||||
} else if (m_testName == removeObject) {
|
||||
m_testName = NULL;
|
||||
}
|
||||
}
|
||||
|
@ -14,6 +14,7 @@
|
||||
#include <ewol/widget/Windows.h>
|
||||
#include <ewol/widget/Sizer.h>
|
||||
#include <ewol/widget/Button.h>
|
||||
#include <ewol/widget/Label.h>
|
||||
#include <ewol/widget/Spacer.h>
|
||||
|
||||
class MainWindows : public ewol::Windows
|
||||
@ -21,6 +22,7 @@ class MainWindows : public ewol::Windows
|
||||
private:
|
||||
widget::Sizer* m_sizerVert;
|
||||
ewol::Widget* m_subWidget;
|
||||
widget::Label* m_testName;
|
||||
int32_t m_idWidget;
|
||||
public:
|
||||
// Constructeur
|
||||
|
@ -187,9 +187,9 @@ void TestButton::OnReceiveMessage(ewol::EObject * CallerObject, const char * eve
|
||||
widget::Sizer::OnReceiveMessage(CallerObject, eventId, data);
|
||||
|
||||
//APPL_INFO("Receive Event from the main windows ... : \"" << eventId << "\" ==> data=\"" << data << "\"" );
|
||||
//if (m_testWidget == CallerObject) {
|
||||
if (m_testWidget == CallerObject) {
|
||||
APPL_WARNING("Receive Event from tested Button ... : \"" << eventId << "\" ==> data=\"" << data << "\"" );
|
||||
//}
|
||||
}
|
||||
if (eventId == l_eventChangeExpendX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (data=="1") {
|
||||
|
@ -0,0 +1,228 @@
|
||||
/**
|
||||
* @author Edouard DUPIN
|
||||
*
|
||||
* @copyright 2010, Edouard DUPIN, all right reserved
|
||||
*
|
||||
* @license BSD v3 (see license file)
|
||||
*/
|
||||
|
||||
|
||||
#include <appl/Debug.h>
|
||||
#include <appl/TestImage.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/WidgetManager.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_eventChangeImage = "event-change-image";
|
||||
|
||||
#undef __class__
|
||||
#define __class__ "TestImage"
|
||||
|
||||
TestImage::TestImage(void) :
|
||||
widget::Sizer(widget::Sizer::modeVert),
|
||||
m_testWidget(NULL)
|
||||
{
|
||||
APPL_CRITICAL("Create "__class__" (start)");
|
||||
widget::Sizer* mySizerVert2 = NULL;
|
||||
widget::Sizer* mySizerHori = NULL;
|
||||
widget::Button* myButton = NULL;
|
||||
|
||||
mySizerHori = new widget::Sizer(widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
SubWidgetAdd(mySizerHori);
|
||||
myButton = new widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->SetToggleMode(true);
|
||||
myButton->SetSubWidget( new widget::Label("Expend X <br/> (false)"));
|
||||
myButton->SetSubWidgetToggle(new widget::Label("Expend X <br/><b>(true)</b>"));
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeExpendX);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->SetToggleMode(true);
|
||||
myButton->SetSubWidget( new widget::Label("Expend Y <br/> (false)"));
|
||||
myButton->SetSubWidgetToggle(new widget::Label("Expend Y <br/><b>(true)</b>"));
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeExpendY);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
|
||||
mySizerHori = new widget::Sizer(widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
SubWidgetAdd(mySizerHori);
|
||||
|
||||
myButton = new widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->SetToggleMode(true);
|
||||
myButton->SetSubWidget( new widget::Label("Fill X <br/> (false)"));
|
||||
myButton->SetSubWidgetToggle(new widget::Label("Fill X <br/> (true)"));
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeFillX);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->SetToggleMode(true);
|
||||
myButton->SetSubWidget( new widget::Label("Fill Y <br/> (false)"));
|
||||
myButton->SetSubWidgetToggle(new widget::Label("Fill Y <br/> (true)"));
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonValue, l_eventChangeFillY);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
myButton = new widget::Button();
|
||||
if (NULL != myButton) {
|
||||
myButton->SetSubWidget(new widget::Label("Change Image"));
|
||||
myButton->RegisterOnEvent(this, ewolEventButtonPressed, l_eventChangeImage);
|
||||
mySizerHori->SubWidgetAdd(myButton);
|
||||
}
|
||||
widget::Spacer* mySpacer = new widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer->SetExpand(bvec2(false,false));
|
||||
mySpacer->SetFill(bvec2(true,false));
|
||||
mySpacer->SetSize(10);
|
||||
mySpacer->SetColor(0xFF000080);
|
||||
SubWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
mySizerHori = new widget::Sizer(widget::Sizer::modeHori);
|
||||
if (NULL == mySizerHori) {
|
||||
APPL_DEBUG("Allocation error mySizerHori");
|
||||
return;
|
||||
}
|
||||
SubWidgetAdd(mySizerHori);
|
||||
|
||||
mySpacer = new widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer->SetExpand(bvec2(false,false));
|
||||
mySpacer->SetFill(bvec2(false,true));
|
||||
mySpacer->SetSize(10);
|
||||
mySpacer->SetColor(0x00FF0080);
|
||||
mySizerHori->SubWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
m_testWidget = new widget::Image("DATA:sphere.png");
|
||||
if (NULL != 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 widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer->SetExpand(bvec2(false,false));
|
||||
mySpacer->SetFill(bvec2(false,true));
|
||||
mySpacer->SetSize(10);
|
||||
mySpacer->SetColor(0x0000FF80);
|
||||
mySizerHori->SubWidgetAdd(mySpacer);
|
||||
}
|
||||
|
||||
mySpacer = new widget::Spacer();
|
||||
if (NULL != mySpacer) {
|
||||
mySpacer->SetExpand(bvec2(false,false));
|
||||
mySpacer->SetFill(bvec2(true,false));
|
||||
mySpacer->SetSize(10);
|
||||
mySpacer->SetColor(0x00FFFF80);
|
||||
SubWidgetAdd(mySpacer);
|
||||
}
|
||||
APPL_CRITICAL("Create "__class__" (end)");
|
||||
}
|
||||
|
||||
|
||||
TestImage::~TestImage(void)
|
||||
{
|
||||
APPL_CRITICAL("Remove "__class__" ...");
|
||||
}
|
||||
|
||||
|
||||
void TestImage::OnReceiveMessage(ewol::EObject * CallerObject, const char * eventId, const etk::UString& data)
|
||||
{
|
||||
widget::Sizer::OnReceiveMessage(CallerObject, eventId, data);
|
||||
|
||||
//APPL_INFO("Receive Event from the main windows ... : \"" << eventId << "\" ==> data=\"" << data << "\"" );
|
||||
if (m_testWidget == CallerObject) {
|
||||
APPL_WARNING("Receive Event from tested Button ... : \"" << eventId << "\" ==> data=\"" << data << "\"" );
|
||||
}
|
||||
if (eventId == l_eventChangeExpendX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (data=="1") {
|
||||
m_testWidget->SetExpand(bvec2(true,m_testWidget->GetExpand().y()));
|
||||
} else {
|
||||
m_testWidget->SetExpand(bvec2(false,m_testWidget->GetExpand().y()));
|
||||
}
|
||||
}
|
||||
} else if (eventId == l_eventChangeExpendY) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (data=="1") {
|
||||
m_testWidget->SetExpand(bvec2(m_testWidget->GetExpand().x(),true));
|
||||
} else {
|
||||
m_testWidget->SetExpand(bvec2(m_testWidget->GetExpand().x(),false));
|
||||
}
|
||||
}
|
||||
} else if (eventId == l_eventChangeFillX) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (data=="1") {
|
||||
m_testWidget->SetFill(bvec2(true,m_testWidget->GetFill().y()));
|
||||
} else {
|
||||
m_testWidget->SetFill(bvec2(false,m_testWidget->GetFill().y()));
|
||||
}
|
||||
}
|
||||
} else if (eventId == l_eventChangeFillY) {
|
||||
if (NULL!=m_testWidget) {
|
||||
if (data=="1") {
|
||||
m_testWidget->SetFill(bvec2(m_testWidget->GetFill().x(),true));
|
||||
} else {
|
||||
m_testWidget->SetFill(bvec2(m_testWidget->GetFill().x(),false));
|
||||
}
|
||||
}
|
||||
} else if (eventId == l_eventChangeImage) {
|
||||
if (NULL!=m_testWidget) {
|
||||
static int32_t countID = 1;
|
||||
switch (countID)
|
||||
{
|
||||
case 0:
|
||||
m_testWidget->SetFile("DATA:stone.png");
|
||||
break;
|
||||
case 1:
|
||||
m_testWidget->SetFile("DATA:grass.png");
|
||||
break;
|
||||
default:
|
||||
m_testWidget->SetFile("DATA:sphere.png");
|
||||
countID=-1;
|
||||
break;
|
||||
}
|
||||
countID++;
|
||||
}
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
void TestImage::OnObjectRemove(ewol::EObject * removeObject)
|
||||
{
|
||||
widget::Sizer::OnObjectRemove(removeObject);
|
||||
if (m_testWidget == removeObject) {
|
||||
m_testWidget = NULL;
|
||||
}
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
/**
|
||||
* @author Edouard DUPIN
|
||||
*
|
||||
* @copyright 2010, Edouard DUPIN, all right reserved
|
||||
*
|
||||
* @license BSD v3 (see license file)
|
||||
*/
|
||||
|
||||
#ifndef __TEST_IMAGE_H__
|
||||
#define __TEST_IMAGE_H__
|
||||
|
||||
#include <appl/Debug.h>
|
||||
#include <ewol/widget/Widget.h>
|
||||
#include <ewol/widget/Button.h>
|
||||
#include <ewol/widget/Image.h>
|
||||
#include <ewol/widget/Spacer.h>
|
||||
#include <ewol/widget/Sizer.h>
|
||||
|
||||
class TestImage : public widget::Sizer
|
||||
{
|
||||
private:
|
||||
widget::Image* m_testWidget;
|
||||
public:
|
||||
// Constructeur
|
||||
TestImage(void);
|
||||
virtual ~TestImage(void);
|
||||
public:
|
||||
// Derived function
|
||||
virtual const char * const GetObjectType(void) { return "appl::TestImage"; };
|
||||
virtual void OnReceiveMessage(ewol::EObject * CallerObject, const char * eventId, const etk::UString& data);
|
||||
virtual void OnObjectRemove(ewol::EObject * removeObject);
|
||||
};
|
||||
|
||||
#endif
|
@ -9,6 +9,7 @@ FILE_LIST:= appl/Debug.cpp \
|
||||
appl/init.cpp \
|
||||
appl/MainWindows.cpp \
|
||||
appl/TestButton.cpp \
|
||||
appl/TestImage.cpp \
|
||||
appl/TestButtonColor.cpp \
|
||||
appl/TestLabel.cpp \
|
||||
appl/TestScene.cpp
|
||||
|
Loading…
x
Reference in New Issue
Block a user