[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) {
|
||||
int32_t nbObject = getObjectManager().getNumberObject();
|
||||
EWOL_VERBOSE("try send message '" << _generateEventId << "'");
|
||||
// for every element registered ...
|
||||
for (size_t iii=0; iii<m_externEvent.size(); iii++) {
|
||||
if (NULL!=m_externEvent[iii]) {
|
||||
// if we find the event ...
|
||||
if (m_externEvent[iii]->localEventId == _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<m_availlableEventId.size(); iii++) {
|
||||
if (0 == strncmp(m_availlableEventId[iii], _eventId, 1024)) {
|
||||
findIt = true;
|
||||
_eventIdgenerated = m_availlableEventId[iii];
|
||||
_eventId = m_availlableEventId[iii];
|
||||
EWOL_VERBOSE("find event ID : '" << _eventId << "' ==> '" << _eventIdgenerated << "'");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -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));
|
||||
}
|
||||
}
|
||||
|
@ -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");
|
||||
|
Loading…
x
Reference in New Issue
Block a user