This eventReceiver intercepts any onEvent functionality from inside other includet Classes.
two main examples:
I am also using RTSCamera script which uses an OnEvent code which was not reached from the Event, so the RTS Camera code did not worked!
Annother problem i had was that GUI events got intercepted also regarding the same problem intercepted Event´s so unreachedf inline onEvent Code because any mouseaction get cached bevor it reached the enOvent Code!
So it might happen that wished behaviour of GUI element (drag & drop, window close... for examples) or any other Classes which is naturally given by them inside within the onEvent function at their classes gets lost.
To get rid of that there i found 2 ways:
the time intensive way
1) recode any behaviour inside the event receiver ( i avoided that way but that was my conclusion)
the "speed hack" way
2) don´t do
Code: Select all
return eventprocessed;
Code: Select all
return false;
BUT (way 2 may has also a problem) it may happens that events are handeled twice or the custom inserted functionality will not get handled.
by the given examples from above (rtscammera and guielement)
when a
resizeTableColums event occours on a IGUTable
the
rtscammera will also handle this event so that the cammera rotates arround the center point while you resice the table.
There exists a third way (the one i choosed)
i deleted anything i dident need also the mousestates action and removed also the eventprocessed true in the mouseactions, that fits my needs but it doesent matter ich way you choose, you will need many time for testing all events and their desired handling.
---------
i think (and that is only my point of view) event handling with irrlicht or even c++ isnt as easy as it could be.
please correct me if I am incorrect reporting this