[DEV] update platform test

This commit is contained in:
Edouard DUPIN 2016-10-12 21:53:48 +02:00
parent 43db52473e
commit ccaf9e4bba
2 changed files with 59 additions and 23 deletions

View File

@ -28,26 +28,20 @@
#include <etk/os/FSNode.hpp> #include <etk/os/FSNode.hpp>
#include <eproperty/Value.hpp> #include <eproperty/Value.hpp>
appl::MainWindows::MainWindows() : appl::MainWindows::MainWindows() {
m_gravity(ewol::gravity_buttomLeft),
m_idWidget(-1) {
APPL_DEBUG("CREATE WINDOWS ... "); APPL_DEBUG("CREATE WINDOWS ... ");
addObjectType("appl::MainWindows"); addObjectType("appl::MainWindows");
} }
void appl::MainWindows::init() { void appl::MainWindows::init() {
ewol::widget::Windows::init(); ewol::widget::Windows::init();
propertyFill.set(bvec2(true, true));
propertyExpand.set(bvec2(true, true));
m_composer = ewol::widget::Composer::create(); m_composer = ewol::widget::Composer::create();
m_composer->loadFromFile("DATA:gui.xml"); m_composer->loadFromFile("DATA:gui.xml");
setSubWidget(m_composer); setSubWidget(m_composer);
externSubBind(m_composer, ewol::widget::Button, "appl-past", signalPressed, sharedFromThis(), &appl::MainWindows::onCallbackCopy); externSubBind(m_composer, ewol::widget::Button, "appl-past", signalPressed, sharedFromThis(), &appl::MainWindows::onCallbackPast);
externSubBind(m_composer, ewol::widget::Button, "appl-copy", signalPressed, sharedFromThis(), &appl::MainWindows::onCallbackPast); externSubBind(m_composer, ewol::widget::Button, "appl-copy", signalPressed, sharedFromThis(), &appl::MainWindows::onCallbackCopy);
propertySetOnWidgetNamed("appl-entry-clipboard", "value", "Hello");
propertySetOnWidgetNamed("appl-last-key-pressed", "value", "plop");
propertySetOnWidgetNamed("appl-special-key-value", "value", "plouf");
propertySetOnWidgetNamed("appl-mouse-value", "value", "patapouf");
externSubBind(m_composer, ewol::widget::Button, "appl-set-title", signalPressed, sharedFromThis(), &appl::MainWindows::onCallbackSetTitle); externSubBind(m_composer, ewol::widget::Button, "appl-set-title", signalPressed, sharedFromThis(), &appl::MainWindows::onCallbackSetTitle);
externSubBind(m_composer, ewol::widget::Button, "appl-close", signalPressed, sharedFromThis(), &appl::MainWindows::onCallbackClose); externSubBind(m_composer, ewol::widget::Button, "appl-close", signalPressed, sharedFromThis(), &appl::MainWindows::onCallbackClose);
@ -55,40 +49,75 @@ void appl::MainWindows::init() {
externSubBind(m_composer, ewol::widget::Button, "appl-move", signalPressed, sharedFromThis(), &appl::MainWindows::onCallbackMove); externSubBind(m_composer, ewol::widget::Button, "appl-move", signalPressed, sharedFromThis(), &appl::MainWindows::onCallbackMove);
externSubBind(m_composer, ewol::widget::Button, "appl-full-screen", signalValue, sharedFromThis(), &appl::MainWindows::onCallbackFullScreen); externSubBind(m_composer, ewol::widget::Button, "appl-full-screen", signalValue, sharedFromThis(), &appl::MainWindows::onCallbackFullScreen);
m_listConnection.push_back(getObjectManager().periodicCall.connect(this, &appl::MainWindows::forceFocusCall));
keepFocus();
//shortCutAdd("F12", "menu:reloade-shader"); //shortCutAdd("F12", "menu:reloade-shader");
//signalShortcut.connect(sharedFromThis(), &appl::MainWindows::onCallbackShortCut); //signalShortcut.connect(sharedFromThis(), &appl::MainWindows::onCallbackShortCut);
} }
void appl::MainWindows::onCallbackCopy() { void appl::MainWindows::onCallbackCopy() {
//propertySetOnWidgetNamed("appl-next-gravity-label", "value", "Next gravity<br/>(" + ewol::gravityToString(m_gravity) + ")"); static int32_t iii = 0;
APPL_INFO("copy"); APPL_INFO("copy");
gale::context::clipBoard::set(gale::context::clipBoard::clipboardStd, "bonjour, injection in the clipboard " + etk::to_string(iii++) );
} }
void appl::MainWindows::onCallbackPast() { void appl::MainWindows::onCallbackPast() {
APPL_INFO("past"); APPL_INFO("past");
gale::context::clipBoard::request(gale::context::clipBoard::clipboardStd);
std::this_thread::sleep_for(std::chrono::milliseconds(100));
std::string value = gale::context::clipBoard::get(gale::context::clipBoard::clipboardStd);
APPL_INFO("past : '" << value << "'");
propertySetOnWidgetNamed("appl-entry-clipboard", "value", value);
} }
void appl::MainWindows::onCallbackSetTitle() { void appl::MainWindows::onCallbackSetTitle() {
static int32_t iii = 0;
APPL_INFO("title"); APPL_INFO("title");
gale::getContext().setTitle("set title " + etk::to_string(iii++));
} }
void appl::MainWindows::onCallbackClose() { void appl::MainWindows::onCallbackClose() {
APPL_INFO("close"); APPL_INFO("close");
gale::getContext().stop();
} }
void appl::MainWindows::onCallbackSize() { void appl::MainWindows::onCallbackSize() {
APPL_INFO("size"); APPL_INFO("size");
vec2 size = gale::getContext().getSize();
if (size.x() > 800) {
gale::getContext().setSize(vec2(450,300));
} else {
gale::getContext().setSize(size + vec2(100,100));
}
} }
void appl::MainWindows::onCallbackMove() { void appl::MainWindows::onCallbackMove() {
APPL_INFO("move"); APPL_INFO("move");
vec2 pos = gale::getContext().getPos();
if (pos.x() > 300) {
gale::getContext().setPos(vec2(0,0));
} else {
gale::getContext().setPos(pos + vec2(100,100));
}
} }
void appl::MainWindows::onCallbackFullScreen(const bool& _value) { void appl::MainWindows::onCallbackFullScreen(const bool& _value) {
APPL_INFO("full screen: " << _value); APPL_INFO("full screen: " << _value);
gale::getContext().setFullScreen(_value);
} }
bool appl::MainWindows::onEventInput(const ewol::event::Input& _event) {
APPL_INFO("get Event: " << _event);
propertySetOnWidgetNamed("appl-special-key-value", "value", etk::to_string(_event.getSpecialKey()));
propertySetOnWidgetNamed("appl-mouse-value", "value", etk::to_string(_event.getType()) + " " + etk::to_string(_event.getId()) + " " + etk::to_string(_event.getPos()));
return false;
}
bool appl::MainWindows::onEventEntry(const ewol::event::Entry& _event) {
APPL_INFO("get Event: " << _event);
propertySetOnWidgetNamed("appl-special-key-value", "value", etk::to_string(_event.getSpecialKey()));
propertySetOnWidgetNamed("appl-last-key-pressed", "value", etk::to_string(_event.getType()) + " " + etk::to_string(_event.getStatus()) + " " + etk::to_string(_event.getChar()));
return false;
}
void appl::MainWindows::forceFocusCall(const ewol::event::Time& _event) {
keepFocus();
}

View File

@ -18,15 +18,12 @@ namespace appl {
private: private:
std::vector<esignal::Connection> m_listConnection; std::vector<esignal::Connection> m_listConnection;
ewol::widget::ComposerShared m_composer; ewol::widget::ComposerShared m_composer;
ewol::widget::SizerShared m_sizerVert;
ewol::widget::SizerShared m_sizerDynamic;
ewol::WidgetShared m_subWidget;
ewol::gravity m_gravity;
int32_t m_idWidget; int32_t m_idWidget;
public: public:
// Constructeur // Constructeur
MainWindows(); MainWindows();
void init(); void init() override;
public: public:
DECLARE_FACTORY(MainWindows); DECLARE_FACTORY(MainWindows);
~MainWindows() {}; ~MainWindows() {};
@ -38,6 +35,16 @@ namespace appl {
void onCallbackSize(); void onCallbackSize();
void onCallbackMove(); void onCallbackMove();
void onCallbackFullScreen(const bool& _value); void onCallbackFullScreen(const bool& _value);
bool onEventInput(const ewol::event::Input& _event) override;
bool onEventEntry(const ewol::event::Entry& _event) override;
void forceFocusCall(const ewol::event::Time& _event);
virtual ewol::WidgetShared getWidgetAtPos(const vec2& _pos) {
ewol::WidgetShared wid = ewol::widget::Windows::getWidgetAtPos(_pos);
if (wid != nullptr) {
return wid;
}
return ememory::dynamicPointerCast<ewol::Widget>(sharedFromThis());
};
}; };
}; };