146{
147 bool handled = false;
148 if ( !fields.empty() ) {
150 auto first = fields.begin();
151 if (auto iter = catalog.find( *first ); iter != catalog.end()) {
152 auto &type = iter->second;
153 fields.erase( first );
154 auto pEvent = type.deserializer( type.type, fields );
155 if ( pEvent ) {
156
157
158 if ( auto pHandler = dynamic_cast<wxEvtHandler*>(
159 pEvent->GetEventObject() )
160 ) {
161 if (auto pWindow = dynamic_cast<wxWindow *>(pHandler))
162
163
164 pHandler = pWindow->GetEventHandler();
165 pHandler->SafelyProcessEvent( *pEvent );
166 handled = true;
167 }
168 }
169 }
170 }
171 return handled;
172}
static const ByCodeMap & ByCode()