[DEV] correction of event ID
This commit is contained in:
parent
6d0c5989cc
commit
e131fcaf09
@ -105,24 +105,31 @@ void ewol::Object::addEventId(const char * _generateEventId) {
|
|||||||
|
|
||||||
void ewol::Object::generateEventId(const char * _generateEventId, const std::string& _data) {
|
void ewol::Object::generateEventId(const char * _generateEventId, const std::string& _data) {
|
||||||
int32_t nbObject = getObjectManager().getNumberObject();
|
int32_t nbObject = getObjectManager().getNumberObject();
|
||||||
|
EWOL_VERBOSE("try send message '" << _generateEventId << "'");
|
||||||
// for every element registered ...
|
// for every element registered ...
|
||||||
for (size_t iii=0; iii<m_externEvent.size(); iii++) {
|
for (size_t iii=0; iii<m_externEvent.size(); iii++) {
|
||||||
if (NULL!=m_externEvent[iii]) {
|
if (NULL==m_externEvent[iii]) {
|
||||||
// if we find the event ...
|
EWOL_VERBOSE(" Null pointer");
|
||||||
if (m_externEvent[iii]->localEventId == _generateEventId) {
|
continue;
|
||||||
if (NULL != m_externEvent[iii]->destObject) {
|
}
|
||||||
if (m_externEvent[iii]->overloadData.size() <= 0){
|
// if we find the event ...
|
||||||
ewol::object::Message tmpMsg(this, m_externEvent[iii]->destEventId, _data);
|
if (m_externEvent[iii]->localEventId != _generateEventId) {
|
||||||
EWOL_VERBOSE("send message " << tmpMsg);
|
EWOL_VERBOSE(" wrong event '" << m_externEvent[iii]->localEventId << "' != '" << _generateEventId << "'");
|
||||||
m_externEvent[iii]->destObject->onReceiveMessage(tmpMsg);
|
continue;
|
||||||
} else {
|
}
|
||||||
// set the user requested data ...
|
if (m_externEvent[iii]->destObject == NULL) {
|
||||||
ewol::object::Message tmpMsg(this, m_externEvent[iii]->destEventId, m_externEvent[iii]->overloadData);
|
EWOL_VERBOSE(" NULL dest");
|
||||||
EWOL_VERBOSE("send message " << tmpMsg);
|
continue;
|
||||||
m_externEvent[iii]->destObject->onReceiveMessage(tmpMsg);
|
}
|
||||||
}
|
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()) {
|
if (nbObject > getObjectManager().getNumberObject()) {
|
||||||
@ -163,11 +170,12 @@ void ewol::Object::registerOnEvent(ewol::Object * _destinationObject,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (false == findIt) {
|
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<m_availlableEventId.size(); iii++) {
|
for(size_t iii=0; iii<m_availlableEventId.size(); iii++) {
|
||||||
if (0 == strncmp(m_availlableEventId[iii], _eventId, 1024)) {
|
if (0 == strncmp(m_availlableEventId[iii], _eventId, 1024)) {
|
||||||
findIt = true;
|
findIt = true;
|
||||||
_eventIdgenerated = m_availlableEventId[iii];
|
_eventId = m_availlableEventId[iii];
|
||||||
|
EWOL_VERBOSE("find event ID : '" << _eventId << "' ==> '" << _eventIdgenerated << "'");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -261,6 +261,7 @@ void ewol::widget::Button::setToggleMode(bool _togg) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
bool ewol::widget::Button::onEventInput(const ewol::event::Input& _event) {
|
bool ewol::widget::Button::onEventInput(const ewol::event::Input& _event) {
|
||||||
|
EWOL_VERBOSE("Event on BT : " << _event);
|
||||||
// disable event in the lock access mode :
|
// disable event in the lock access mode :
|
||||||
if(ewol::widget::Button::lockAccess == m_lock) {
|
if(ewol::widget::Button::lockAccess == m_lock) {
|
||||||
return false;
|
return false;
|
||||||
@ -284,17 +285,17 @@ bool ewol::widget::Button::onEventInput(const ewol::event::Input& _event) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
bool previousPressed = m_buttonPressed;
|
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 (true == m_mouseHover) {
|
||||||
if (1 == _event.getId()) {
|
if (1 == _event.getId()) {
|
||||||
if(ewol::key::statusDown == _event.getStatus()) {
|
if(ewol::key::statusDown == _event.getStatus()) {
|
||||||
//EWOL_DEBUG("Generate event : " << eventDown);
|
EWOL_VERBOSE(getName() << " : Generate event : " << eventDown);
|
||||||
generateEventId(eventDown);
|
generateEventId(eventDown);
|
||||||
m_buttonPressed = true;
|
m_buttonPressed = true;
|
||||||
markToRedraw();
|
markToRedraw();
|
||||||
}
|
}
|
||||||
if(ewol::key::statusUp == _event.getStatus()) {
|
if(ewol::key::statusUp == _event.getStatus()) {
|
||||||
//EWOL_DEBUG("Generate event : " << eventUp);
|
EWOL_VERBOSE(getName() << " : Generate event : " << eventUp);
|
||||||
generateEventId(eventUp);
|
generateEventId(eventUp);
|
||||||
m_buttonPressed = false;
|
m_buttonPressed = false;
|
||||||
markToRedraw();
|
markToRedraw();
|
||||||
@ -309,14 +310,14 @@ bool ewol::widget::Button::onEventInput(const ewol::event::Input& _event) {
|
|||||||
} else {
|
} else {
|
||||||
// inverse value :
|
// inverse value :
|
||||||
m_value = (m_value)?false:true;
|
m_value = (m_value)?false:true;
|
||||||
//EWOL_DEBUG("Generate event : " << eventPressed);
|
EWOL_VERBOSE(getName() << " : Generate event : " << eventPressed);
|
||||||
generateEventId(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));
|
generateEventId(eventValue, std::to_string(m_value));
|
||||||
if( false == m_toggleMode
|
if( false == m_toggleMode
|
||||||
&& true == m_value) {
|
&& true == m_value) {
|
||||||
m_value = false;
|
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));
|
generateEventId(eventValue, std::to_string(m_value));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -103,7 +103,7 @@ void ewol::widget::Composer::registerOnEventNameWidget(ewol::Object * _destinati
|
|||||||
const std::string& _overloadData) {
|
const std::string& _overloadData) {
|
||||||
ewol::Widget* tmpWidget = getWidgetNamed(_subWidgetName);
|
ewol::Widget* tmpWidget = getWidgetNamed(_subWidgetName);
|
||||||
if (NULL != tmpWidget) {
|
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);
|
tmpWidget->registerOnEvent(_destinationObject, _eventId, _eventIdgenerated, _overloadData);
|
||||||
} else {
|
} else {
|
||||||
EWOL_WARNING("[" << getId() << "] {" << getObjectType() << "} Can not register event : \"" << _eventId << "\" the widget named=\"" << _subWidgetName << "\" does not exist");
|
EWOL_WARNING("[" << getId() << "] {" << getObjectType() << "} Can not register event : \"" << _eventId << "\" the widget named=\"" << _subWidgetName << "\" does not exist");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user