diff --git a/sources/ewol/object/Object.cpp b/sources/ewol/object/Object.cpp index d77b66ea..a85a8dad 100644 --- a/sources/ewol/object/Object.cpp +++ b/sources/ewol/object/Object.cpp @@ -105,24 +105,31 @@ void ewol::Object::addEventId(const char * _generateEventId) { void ewol::Object::generateEventId(const char * _generateEventId, const std::string& _data) { int32_t nbObject = getObjectManager().getNumberObject(); + EWOL_VERBOSE("try send message '" << _generateEventId << "'"); // for every element registered ... for (size_t iii=0; iiilocalEventId == _generateEventId) { - if (NULL != m_externEvent[iii]->destObject) { - if (m_externEvent[iii]->overloadData.size() <= 0){ - ewol::object::Message tmpMsg(this, m_externEvent[iii]->destEventId, _data); - EWOL_VERBOSE("send message " << tmpMsg); - m_externEvent[iii]->destObject->onReceiveMessage(tmpMsg); - } else { - // set the user requested data ... - ewol::object::Message tmpMsg(this, m_externEvent[iii]->destEventId, m_externEvent[iii]->overloadData); - EWOL_VERBOSE("send message " << tmpMsg); - m_externEvent[iii]->destObject->onReceiveMessage(tmpMsg); - } - } - } + if (NULL==m_externEvent[iii]) { + EWOL_VERBOSE(" Null pointer"); + continue; + } + // if we find the event ... + if (m_externEvent[iii]->localEventId != _generateEventId) { + EWOL_VERBOSE(" wrong event '" << m_externEvent[iii]->localEventId << "' != '" << _generateEventId << "'"); + continue; + } + if (m_externEvent[iii]->destObject == NULL) { + EWOL_VERBOSE(" NULL dest"); + continue; + } + if (m_externEvent[iii]->overloadData.size() <= 0){ + ewol::object::Message tmpMsg(this, m_externEvent[iii]->destEventId, _data); + EWOL_VERBOSE("send message " << tmpMsg); + m_externEvent[iii]->destObject->onReceiveMessage(tmpMsg); + } else { + // set the user requested data ... + ewol::object::Message tmpMsg(this, m_externEvent[iii]->destEventId, m_externEvent[iii]->overloadData); + EWOL_VERBOSE("send message " << tmpMsg); + m_externEvent[iii]->destObject->onReceiveMessage(tmpMsg); } } if (nbObject > getObjectManager().getNumberObject()) { @@ -163,11 +170,12 @@ void ewol::Object::registerOnEvent(ewol::Object * _destinationObject, } } if (false == findIt) { - EWOL_DEBUG("Try to register with a NON direct string name"); + EWOL_VERBOSE("Try to register with a NON direct string name"); for(size_t iii=0; iii '" << _eventIdgenerated << "'"); break; } } diff --git a/sources/ewol/widget/Button.cpp b/sources/ewol/widget/Button.cpp index a02ed529..8395dd1c 100644 --- a/sources/ewol/widget/Button.cpp +++ b/sources/ewol/widget/Button.cpp @@ -261,6 +261,7 @@ void ewol::widget::Button::setToggleMode(bool _togg) { } bool ewol::widget::Button::onEventInput(const ewol::event::Input& _event) { + EWOL_VERBOSE("Event on BT : " << _event); // disable event in the lock access mode : if(ewol::widget::Button::lockAccess == m_lock) { return false; @@ -284,17 +285,17 @@ bool ewol::widget::Button::onEventInput(const ewol::event::Input& _event) { } } bool previousPressed = m_buttonPressed; - //EWOL_DEBUG("Event on BT ... mouse position : " << m_mouseHover); + EWOL_VERBOSE("Event on BT ... mouse hover : " << m_mouseHover); if (true == m_mouseHover) { if (1 == _event.getId()) { if(ewol::key::statusDown == _event.getStatus()) { - //EWOL_DEBUG("Generate event : " << eventDown); + EWOL_VERBOSE(getName() << " : Generate event : " << eventDown); generateEventId(eventDown); m_buttonPressed = true; markToRedraw(); } if(ewol::key::statusUp == _event.getStatus()) { - //EWOL_DEBUG("Generate event : " << eventUp); + EWOL_VERBOSE(getName() << " : Generate event : " << eventUp); generateEventId(eventUp); m_buttonPressed = false; markToRedraw(); @@ -309,14 +310,14 @@ bool ewol::widget::Button::onEventInput(const ewol::event::Input& _event) { } else { // inverse value : m_value = (m_value)?false:true; - //EWOL_DEBUG("Generate event : " << eventPressed); + EWOL_VERBOSE(getName() << " : Generate event : " << eventPressed); generateEventId(eventPressed); - //EWOL_DEBUG("Generate event : " << eventValue << " val=" << m_value ); + EWOL_VERBOSE(getName() << " : Generate event : " << eventValue << " val=" << m_value ); generateEventId(eventValue, std::to_string(m_value)); if( false == m_toggleMode && true == m_value) { m_value = false; - //EWOL_DEBUG("Generate event : " << ewol::widget::Button::eventValue << " val=" << m_value); + EWOL_VERBOSE(getName() << " : Generate event : " << ewol::widget::Button::eventValue << " val=" << m_value); generateEventId(eventValue, std::to_string(m_value)); } } diff --git a/sources/ewol/widget/Composer.cpp b/sources/ewol/widget/Composer.cpp index 241d324e..f50d4831 100644 --- a/sources/ewol/widget/Composer.cpp +++ b/sources/ewol/widget/Composer.cpp @@ -103,7 +103,7 @@ void ewol::widget::Composer::registerOnEventNameWidget(ewol::Object * _destinati const std::string& _overloadData) { ewol::Widget* tmpWidget = getWidgetNamed(_subWidgetName); if (NULL != tmpWidget) { - //EWOL_DEBUG("Find widget named : \"" << _subWidgetName << "\" register event=\"" << _eventId << "\""); + EWOL_DEBUG("Find widget named : \"" << _subWidgetName << "\" register event=\"" << _eventId << "\""); tmpWidget->registerOnEvent(_destinationObject, _eventId, _eventIdgenerated, _overloadData); } else { EWOL_WARNING("[" << getId() << "] {" << getObjectType() << "} Can not register event : \"" << _eventId << "\" the widget named=\"" << _subWidgetName << "\" does not exist");