From 3c468e612c4f74eb5377c72fb4622bb3529cd776 Mon Sep 17 00:00:00 2001 From: Edouard Dupin Date: Tue, 7 Feb 2012 22:29:24 +0100 Subject: [PATCH] change the event management --- Sources/libewol/ewol/Widget.cpp | 82 +----------------------- Sources/libewol/ewol/Widget.h | 10 ++- Sources/libewol/ewol/widget/Button.cpp | 40 +++--------- Sources/libewol/ewol/widget/Button.h | 4 +- Sources/libewol/ewol/widget/CheckBox.cpp | 51 ++++++--------- Sources/libewol/ewol/widget/CheckBox.h | 4 +- Sources/libewol/ewol/widget/Entry.cpp | 37 ++++------- Sources/libewol/ewol/widget/Entry.h | 4 +- Sources/libewol/ewol/widget/Label.cpp | 21 +++++- Sources/libewol/ewol/widget/Label.h | 3 +- Sources/libewol/ewol/widget/Test.cpp | 31 ++++----- Sources/libewol/ewol/widget/Test.h | 2 +- 12 files changed, 83 insertions(+), 206 deletions(-) diff --git a/Sources/libewol/ewol/Widget.cpp b/Sources/libewol/ewol/Widget.cpp index 70ea4717..eccb65e7 100644 --- a/Sources/libewol/ewol/Widget.cpp +++ b/Sources/libewol/ewol/Widget.cpp @@ -122,41 +122,7 @@ bool ewol::Widget::CalculateSize(etkFloat_t availlableX, etkFloat_t availlableY) bool ewol::Widget::GenEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y) { - bool ended = false; - //EWOL_WARNING("Input event : " << IdInput << " pos(" << x << "," << y << ")"); - for(int32_t iii=m_inputAreaEvent.Size()-1; iii>=0; iii--) { - if( m_inputAreaEvent[iii].origin.x <= x - && m_inputAreaEvent[iii].origin.y <= y - && m_inputAreaEvent[iii].origin.x + m_inputAreaEvent[iii].size.x > x - && m_inputAreaEvent[iii].origin.y + m_inputAreaEvent[iii].size.y > y ) - { - if( (m_inputAreaEvent[iii].flags & (1<<(IdInput-1)) ) - && ( ( (FLAG_EVENT_INPUT_MOTION & m_inputAreaEvent[iii].flags) && EVENT_INPUT_TYPE_MOVE == typeEvent) - || ( (FLAG_EVENT_INPUT_ENTER & m_inputAreaEvent[iii].flags) && EVENT_INPUT_TYPE_ENTER == typeEvent) - || ( (FLAG_EVENT_INPUT_LEAVE & m_inputAreaEvent[iii].flags) && EVENT_INPUT_TYPE_LEAVE == typeEvent) - || ( (FLAG_EVENT_INPUT_DOWN & m_inputAreaEvent[iii].flags) && EVENT_INPUT_TYPE_DOWN == typeEvent) - || ( (FLAG_EVENT_INPUT_UP & m_inputAreaEvent[iii].flags) && EVENT_INPUT_TYPE_UP == typeEvent) - || ( (FLAG_EVENT_INPUT_CLICKED & m_inputAreaEvent[iii].flags) && EVENT_INPUT_TYPE_SINGLE == typeEvent) - || ( (FLAG_EVENT_INPUT_CLICKED_DOUBLE & m_inputAreaEvent[iii].flags) && EVENT_INPUT_TYPE_DOUBLE == typeEvent) - || ( (FLAG_EVENT_INPUT_CLICKED_TRIPLE & m_inputAreaEvent[iii].flags) && EVENT_INPUT_TYPE_TRIPLE == typeEvent) - ) - ) - { - ended = OnEventArea(m_inputAreaEvent[iii].generateEventId, x, y); - if (true == ended) { - break; - } - if (true == GenEventInputExternal(m_inputAreaEvent[iii].generateEventId, x, y)) { - ended = true; - break; - } - } - } - } - if (false == ended) { - return OnEventInput(IdInput, typeEvent, x, y); - } - return ended; + return OnEventInput(IdInput, typeEvent, x, y); } bool ewol::Widget::GenEventInputExternal(const char * generateEventId, etkFloat_t x, etkFloat_t y) @@ -193,12 +159,6 @@ bool ewol::Widget::GenEventShortCut(bool shift, bool control, bool alt, bool met && m_inputShortCutEvent[iii].meta == meta && m_inputShortCutEvent[iii].UnicodeValue == unicodeValue) { - /* - ended = OnEventArea(m_inputShortCutEvent[iii].generateEventId, -1, -1); - if (true == ended) { - break; - } - */ if (true == GenEventInputExternal(m_inputShortCutEvent[iii].generateEventId, -1, -1)) { ended = true; break; @@ -214,46 +174,6 @@ bool ewol::Widget::GenEventShortCut(bool shift, bool control, bool alt, bool met } -bool ewol::Widget::AddEventArea(coord origin, coord size, uint64_t flags, const char * generateEventId) -{ - /* - if( origin.x < 0.0 - || origin.y < 0.0) - { - EWOL_WARNING("origin under 0.0 ... out of range"); - return false; - } - if( size.x < 0.0 - || size.y < 0.0) - { - EWOL_WARNING("size under 0.0 ... out of range"); - return false; - } - if( origin.x > m_size.x - || origin.y > m_size.y) - { - EWOL_WARNING("origin out of range"); - return false; - } - if( origin.x + size.x > m_size.x - || origin.y + size.y > m_size.y) - { - EWOL_WARNING("end area out of size"); - return false; - } - */ - eventArea_ts newEvent; - newEvent.generateEventId = generateEventId; - newEvent.origin.x = origin.x + m_origin.x; - newEvent.origin.y = origin.y + m_origin.y; - newEvent.size = size; - newEvent.flags = flags; - m_inputAreaEvent.PushBack(newEvent); - //EWOL_DEBUG("Add an area event..."); - return true; -} - - bool ewol::Widget::AddEventShortCut(bool shift, bool control, bool alt, bool meta, uint32_t unicodeValue, const char * generateEventId) { eventShortCut_ts newEvent; diff --git a/Sources/libewol/ewol/Widget.h b/Sources/libewol/ewol/Widget.h index 86950bce..95a184bc 100644 --- a/Sources/libewol/ewol/Widget.h +++ b/Sources/libewol/ewol/Widget.h @@ -98,7 +98,7 @@ namespace ewol { } eventKbMoveType_te; char* GetCharTypeMoveEvent(eventKbMoveType_te type); - + /* enum { FLAG_EVENT_INPUT_1 = 1 << 0, FLAG_EVENT_INPUT_2 = 1 << 1, @@ -134,7 +134,7 @@ namespace ewol { #define FLAG_EVENT_INPUT_BT_RIGHT (FLAG_EVENT_INPUT_3) #define FLAG_EVENT_INPUT_BT_SCROOL_UP (FLAG_EVENT_INPUT_4) #define FLAG_EVENT_INPUT_BT_SCROOL_DOWN (FLAG_EVENT_INPUT_5) - + */ #define UTF8_MAX_SIZE (8) #define EWOL_EVENT_AREA (0) @@ -248,7 +248,6 @@ namespace ewol { // -- Shortcut: (only for computer) ==> must be manage otherwise for tablette pc // ---------------------------------------------------------------------------------------------------------------- private: - etk::VectorType m_inputAreaEvent; //!< generic area event etk::VectorType m_inputShortCutEvent; //!< generic short-cut event etk::VectorType m_externEvent; //!< Generic list of event generation for output link etk::VectorType m_ListEventAvaillable; //!< List of all event availlable for this widget @@ -263,8 +262,7 @@ namespace ewol { m_ListEventAvaillable.PushBack(generateEventId); } } - void EventAreaRemoveAll(void) { m_inputAreaEvent.Clear();m_inputShortCutEvent.Clear(); }; - bool AddEventArea(coord origin, coord size, uint64_t flags, const char * generateEventId); + //void EventAreaRemoveAll(void) { m_inputAreaEvent.Clear();m_inputShortCutEvent.Clear(); }; bool AddEventShortCut(bool shift, bool control, bool alt, bool pomme, uint32_t unicodeValue, const char * generateEventId); bool AddEventShortCut(char * descriptiveString, const char * generateEventId); public: @@ -272,9 +270,9 @@ namespace ewol { bool ExternLinkOnEvent(const char * eventName, int32_t widgetId, const char * eventExternId = NULL); protected: virtual bool OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t X, etkFloat_t Y) { return false; }; - virtual bool OnEventArea(const char * generateEventId, etkFloat_t x, etkFloat_t y) { return false; }; public: // when an event arrive from an other widget, it will arrive here: + // TODO : change name ... virtual bool OnEventAreaExternal(int32_t widgetID, const char * generateEventId, const char * data, etkFloat_t x, etkFloat_t y) { return false; }; // ---------------------------------------------------------------------------------------------------------------- diff --git a/Sources/libewol/ewol/widget/Button.cpp b/Sources/libewol/ewol/widget/Button.cpp index 12ac65a8..1d8fe474 100644 --- a/Sources/libewol/ewol/widget/Button.cpp +++ b/Sources/libewol/ewol/widget/Button.cpp @@ -149,44 +149,21 @@ void ewol::Button::OnRegenerateDisplay(void) AddOObject(tmpOObjects, "BouttonDecoration"); AddOObject(tmpText, "BouttonText"); - - // Regenerate the event Area: - EventAreaRemoveAll(); - coord origin; - coord size; - origin.x = tmpOriginX; - origin.y = tmpOriginY; - size.x = tmpSizeX; - size.y = tmpSizeY; - AddEventArea(origin, size, FLAG_EVENT_INPUT_1 | FLAG_EVENT_INPUT_CLICKED_ALL, ewolEventButtonPressed); - AddEventArea(origin, size, FLAG_EVENT_INPUT_ENTER, ewolEventButtonEnter); - AddEventArea(origin, size, FLAG_EVENT_INPUT_LEAVE, ewolEventButtonLeave); } } -/* + bool ewol::Button::OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y) { EWOL_DEBUG("Event on BT ..."); - return true; -} -*/ - -bool ewol::Button::OnEventArea(const char * generateEventId, etkFloat_t x, etkFloat_t y) -{ - //bool eventIsOK = false; - //EWOL_DEBUG("Receive event : \"" << generateEventId << "\""); - if(ewolEventButtonPressed == generateEventId) { - EWOL_INFO("BT pressed ... " << m_label); - //eventIsOK = true; - ewol::widgetManager::FocusKeep(this); - } else if(ewolEventButtonEnter == generateEventId) { - MarkToReedraw(); + if (1 == IdInput) { + if (ewol::EVENT_INPUT_TYPE_SINGLE == typeEvent) { + // nothing to do ... + GenEventInputExternal(ewolEventButtonPressed, x, y); + return true; + } } - //return eventIsOK; - // in every case this not stop the propagation of the event return false; - // if overwrited... you can ... } @@ -196,9 +173,8 @@ bool ewol::Button::OnEventKb(eventKbType_te typeEvent, char UTF8_data[UTF8_MAX_S if( UTF8_data != NULL && typeEvent == ewol::EVENT_KB_TYPE_DOWN && UTF8_data[0] == '\r') { - return OnEventArea(ewolEventButtonPressed, -1, -1); + GenEventInputExternal(ewolEventButtonEnter, -1, -1); } return false; } - diff --git a/Sources/libewol/ewol/widget/Button.h b/Sources/libewol/ewol/widget/Button.h index f91af939..088badd9 100644 --- a/Sources/libewol/ewol/widget/Button.h +++ b/Sources/libewol/ewol/widget/Button.h @@ -57,8 +57,8 @@ namespace ewol { public: virtual void OnRegenerateDisplay(void); public: - //virtual bool OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y); - virtual bool OnEventArea(const char * generateEventId, etkFloat_t x, etkFloat_t y); + virtual bool OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y); + //virtual bool OnEventArea(const char * generateEventId, etkFloat_t x, etkFloat_t y); virtual bool OnEventKb(eventKbType_te typeEvent, char UTF8_data[UTF8_MAX_SIZE]); }; }; diff --git a/Sources/libewol/ewol/widget/CheckBox.cpp b/Sources/libewol/ewol/widget/CheckBox.cpp index a730fee6..058aa593 100644 --- a/Sources/libewol/ewol/widget/CheckBox.cpp +++ b/Sources/libewol/ewol/widget/CheckBox.cpp @@ -132,45 +132,29 @@ void ewol::CheckBox::OnRegenerateDisplay(void) AddOObject(tmpOObjects, "Decoration"); AddOObject(tmpText, "Text"); - - // Regenerate the event Area: - EventAreaRemoveAll(); - coord origin; - coord size; - origin.x = 3.0; - origin.y = 3.0; - size.x = m_size.x-6; - size.y = m_size.y-6; - AddEventArea(origin, size, FLAG_EVENT_INPUT_1 | FLAG_EVENT_INPUT_CLICKED_ALL, ewolEventCheckBoxClicked); } } -/* + bool ewol::CheckBox::OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y) { - EWOL_DEBUG("Event on BT ..."); - return true; -} -*/ - -bool ewol::CheckBox::OnEventArea(const char * generateEventId, etkFloat_t x, etkFloat_t y) -{ - bool eventIsOK = false; - //EWOL_DEBUG("Receive event : \"" << generateEventId << "\""); - if(ewolEventCheckBoxClicked == generateEventId) { - ewol::widgetManager::FocusKeep(this); - EWOL_INFO("CB pressed ... " << m_label); - if(true == m_value) { - m_value = false; - } else { - m_value = true; + EWOL_DEBUG("Event on checkbox ..."); + if (1 == IdInput) { + if (ewol::EVENT_INPUT_TYPE_SINGLE == typeEvent) { + if(true == m_value) { + m_value = false; + } else { + m_value = true; + } + GenEventInputExternal(ewolEventCheckBoxClicked, x, y); + ewol::widgetManager::FocusKeep(this); + return true; } - MarkToReedraw(); - eventIsOK = true; } - return eventIsOK; + return false; } + bool ewol::CheckBox::OnEventKb(eventKbType_te typeEvent, char UTF8_data[UTF8_MAX_SIZE]) { //EWOL_DEBUG("BT PRESSED : \"" << UTF8_data << "\" size=" << strlen(UTF8_data)); @@ -179,7 +163,12 @@ bool ewol::CheckBox::OnEventKb(eventKbType_te typeEvent, char UTF8_data[UTF8_MAX && ( UTF8_data[0] == '\r' || UTF8_data[0] == ' ') ) { - return OnEventArea(ewolEventCheckBoxClicked, -1, -1); + if(true == m_value) { + m_value = false; + } else { + m_value = true; + } + return GenEventInputExternal(ewolEventCheckBoxClicked, -1,-1); } return false; } diff --git a/Sources/libewol/ewol/widget/CheckBox.h b/Sources/libewol/ewol/widget/CheckBox.h index 83e459b7..c0c75ada 100644 --- a/Sources/libewol/ewol/widget/CheckBox.h +++ b/Sources/libewol/ewol/widget/CheckBox.h @@ -51,8 +51,8 @@ namespace ewol { public: virtual void OnRegenerateDisplay(void); public: - //virtual bool OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y); - virtual bool OnEventArea(const char * generateEventId, etkFloat_t x, etkFloat_t y); + virtual bool OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y); + //virtual bool OnEventArea(const char * generateEventId, etkFloat_t x, etkFloat_t y); virtual bool OnEventKb(eventKbType_te typeEvent, char UTF8_data[UTF8_MAX_SIZE]); }; }; diff --git a/Sources/libewol/ewol/widget/Entry.cpp b/Sources/libewol/ewol/widget/Entry.cpp index c4fea011..af5b95d5 100644 --- a/Sources/libewol/ewol/widget/Entry.cpp +++ b/Sources/libewol/ewol/widget/Entry.cpp @@ -152,38 +152,25 @@ void ewol::Entry::OnRegenerateDisplay(void) int32_t XCursorPos = fontWidth + m_borderSize + 2*m_paddingSize; tmpOObjects->Line(XCursorPos, tmpTextOriginY, XCursorPos, tmpTextOriginY + fontHeight, 1); } - AddOObject(tmpOObjects, "BouttonDecoration"); - AddOObject(tmpText, "BouttonText"); - - // Regenerate the event Area: - EventAreaRemoveAll(); - coord origin; - coord size; - origin.x = tmpOriginX; - origin.y = tmpOriginY; - size.x = tmpSizeX; - size.y = tmpSizeY; - AddEventArea(origin, size, FLAG_EVENT_INPUT_1 | FLAG_EVENT_INPUT_CLICKED_ALL, ewolEventEntryClick); - AddEventArea(origin, size, FLAG_EVENT_INPUT_ENTER, ewolEventEntryEnter); } } -bool ewol::Entry::OnEventArea(const char * generateEventId, etkFloat_t x, etkFloat_t y) +bool ewol::Entry::OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y) { - bool eventIsOK = false; - //EWOL_DEBUG("Receive event : \"" << generateEventId << "\""); - if(ewolEventEntryClick == generateEventId) { - EWOL_INFO("Entry Clicked ... " << m_data); - eventIsOK = true; - ewol::widgetManager::FocusKeep(this); - ewol::KeyboardShow(KEYBOARD_MODE_CODE); - } else if(ewolEventEntryEnter == generateEventId) { - //MarkToReedraw(); + EWOL_DEBUG("Event on Entry ..."); + if (1 == IdInput) { + if (ewol::EVENT_INPUT_TYPE_SINGLE == typeEvent) { + // nothing to do ... + GenEventInputExternal(ewolEventEntryClick, x, y); + ewol::widgetManager::FocusKeep(this); + ewol::KeyboardShow(KEYBOARD_MODE_CODE); + return true; + } } - return eventIsOK; + return false; } @@ -192,7 +179,7 @@ bool ewol::Entry::OnEventKb(eventKbType_te typeEvent, char UTF8_data[UTF8_MAX_SI if( UTF8_data != NULL && typeEvent == ewol::EVENT_KB_TYPE_DOWN) { //EWOL_DEBUG("Entry input data ... : \"" << UTF8_data << "\" size=" << strlen(UTF8_data) << " data=" << (int32_t)UTF8_data[0] ); - //return OnEventArea(ewolEventButtonPressed, -1, -1); + return GenEventInputExternal(ewolEventEntryEnter, -1, -1); if (0x7F == UTF8_data[0]) { if (m_data.Size() > 0) { // SUPPR diff --git a/Sources/libewol/ewol/widget/Entry.h b/Sources/libewol/ewol/widget/Entry.h index 31990e23..f8b099b7 100644 --- a/Sources/libewol/ewol/widget/Entry.h +++ b/Sources/libewol/ewol/widget/Entry.h @@ -61,8 +61,8 @@ namespace ewol { public: virtual void OnRegenerateDisplay(void); public: - //virtual bool OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y); - virtual bool OnEventArea(const char * generateEventId, etkFloat_t x, etkFloat_t y); + virtual bool OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y); + //virtual bool OnEventArea(const char * generateEventId, etkFloat_t x, etkFloat_t y); virtual bool OnEventKb(eventKbType_te typeEvent, char UTF8_data[UTF8_MAX_SIZE]); protected: virtual void OnGetFocus(void); diff --git a/Sources/libewol/ewol/widget/Label.cpp b/Sources/libewol/ewol/widget/Label.cpp index 7daee8c0..da3c201a 100644 --- a/Sources/libewol/ewol/widget/Label.cpp +++ b/Sources/libewol/ewol/widget/Label.cpp @@ -105,7 +105,7 @@ void ewol::Label::OnRegenerateDisplay(void) tmpText->Text(tmpOriginX, tmpOriginY, m_label.c_str(), m_size.x - 2*paddingSize); AddOObject(tmpText, "LabelText"); - + /* // Regenerate the event Area: EventAreaRemoveAll(); coord origin; @@ -115,9 +115,26 @@ void ewol::Label::OnRegenerateDisplay(void) size.x = m_minSize.x; size.y = m_minSize.y; AddEventArea(origin, size, FLAG_EVENT_INPUT_1 | FLAG_EVENT_INPUT_CLICKED_ALL, ewolEventLabelPressed); + */ } } + +bool ewol::Label::OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y) +{ + EWOL_DEBUG("Event on Label ..."); + if (1 == IdInput) { + if (ewol::EVENT_INPUT_TYPE_SINGLE == typeEvent) { + // nothing to do ... + GenEventInputExternal(ewolEventLabelPressed, x, y); + return true; + } + } + return false; +} + + +/* bool ewol::Label::OnEventArea(const char * generateEventId, etkFloat_t x, etkFloat_t y) { bool eventIsOK = false; @@ -128,5 +145,5 @@ bool ewol::Label::OnEventArea(const char * generateEventId, etkFloat_t x, etkFlo } return eventIsOK; } - +*/ diff --git a/Sources/libewol/ewol/widget/Label.h b/Sources/libewol/ewol/widget/Label.h index e48f7db8..67673157 100644 --- a/Sources/libewol/ewol/widget/Label.h +++ b/Sources/libewol/ewol/widget/Label.h @@ -47,8 +47,7 @@ namespace ewol { public: virtual void OnRegenerateDisplay(void); public: - //virtual bool OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y); - virtual bool OnEventArea(const char * generateEventId, etkFloat_t x, etkFloat_t y); + virtual bool OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y); }; }; diff --git a/Sources/libewol/ewol/widget/Test.cpp b/Sources/libewol/ewol/widget/Test.cpp index 7b8247cd..32807bcc 100644 --- a/Sources/libewol/ewol/widget/Test.cpp +++ b/Sources/libewol/ewol/widget/Test.cpp @@ -143,30 +143,21 @@ void ewol::Test::OnRegenerateDisplay(void) ewol::theme::Generate(0, 0, *tmpOObjects, 50, 50, m_size.x*0.75, m_size.y*0.75); AddOObject(tmpOObjects, "themeObject"); */ - - // Regenerate the event Area: - EventAreaRemoveAll(); - coord origin; - coord size; - origin.x = 3.0; - origin.y = 3.0; - size.x = m_size.x-6; - size.y = m_size.y-6; - AddEventArea(origin, size, FLAG_EVENT_INPUT_1 | FLAG_EVENT_INPUT_CLICKED_ALL, ewolEventTestPressed); } } -bool ewol::Test::OnEventArea(const char * generateEventId, etkFloat_t x, etkFloat_t y) +bool ewol::Test::OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y) { - bool eventIsOK = false; - //EWOL_DEBUG("Receive event : \"" << generateEventId << "\""); - if(ewolEventTestPressed == generateEventId) { - m_elementID++; - if (m_elementID > 7 ) { - m_elementID = 0; + EWOL_DEBUG("Event on Test ..."); + if (1 == IdInput) { + if (ewol::EVENT_INPUT_TYPE_SINGLE == typeEvent) { + m_elementID++; + if (m_elementID > 7 ) { + m_elementID = 0; + } + MarkToReedraw(); + return true; } - MarkToReedraw(); - eventIsOK = true; } - return eventIsOK; + return false; } diff --git a/Sources/libewol/ewol/widget/Test.h b/Sources/libewol/ewol/widget/Test.h index 2e6444da..a065eeef 100644 --- a/Sources/libewol/ewol/widget/Test.h +++ b/Sources/libewol/ewol/widget/Test.h @@ -39,7 +39,7 @@ namespace ewol { public: virtual void OnRegenerateDisplay(void); public: - virtual bool OnEventArea(const char * generateEventId, etkFloat_t x, etkFloat_t y); + virtual bool OnEventInput(int32_t IdInput, eventInputType_te typeEvent, etkFloat_t x, etkFloat_t y); private: int32_t m_elementID; };