![Smile :)](./images/smilies/icon_smile.gif)
CE, if I knew the CEGUI framework I'd happily pitch in and try different solutions myself, but I'm afraid it would take quite some effort to get to the point that I'd be able to contribute anything worthwhile...
Moderators: CEGUI MVP, CEGUI Team
Speedo wrote:It seems to me that the best (only?) solution here is to make the single click action benign enough that when the single click event occurs you can always go ahead and process it without caring whether or not it's going to be followed by a double click event. While you *could* work in some delays in event dispatching to try and distinguish the events, I expect that you'll get a lot of user complaints about it. UI "lag" is one of those things that people tend to almost universally hate.![]()
With what you said you want, I think you're already fine in that area. If the user double clicks to focus on an object, then it's not terribly illogical to assume that they will want that unit selected. In fact I'm pretty sure I've played a few RTS style games (Total War series, maybe?) that use a similar system.
With all due respect, that is up to the application in question - quite unlike what you seem to be arguing for, there is no such thing as one best interface standard, even for RTT or RTS games (no, not even for selection or whatever else may be associated with mouse interaction and unit icons).
Jamarr wrote:With a little effort I think you could implement something like I originally suggested: delayed dispatching of events based on window properties (eg 'cooked events') by adding a couple properties to CEGUI::Window, an event queue to CEGUI::System, and updating CEGUI::System::injectMouseButtonDown() and CEGUI::System::injectTimePulse() appropriately.
I glanced at CEGUI::System::inject* and honestly I don't think it would be that difficult...
CrazyEddie wrote:If we decided to implement such a facility, it's more likely that it will be based upon something closer to your first suggestion than your second; there are no plans to extend the injection interface.
I'd rather not change my dependency libraries (I want as few update points as possible [CEGUI comes with OGRE for me]) but nonetheless, that would be something akin to my second suggestion--injecting cooked events into CEGUI-- right?
Users browsing this forum: No registered users and 9 guests