I got cegui setup with the first five tutorials within the wiki.
To describe my current situation, I have the default window set up with it's initial attributes set up as:
Code: Select all
fWnd->setPosition(CEGUI::UVector2(CEGUI::UDim(0.25f, 0.0f), CEGUI::UDim(0.25f, 0.0f)));
// set size to be half the size of the parent
fWnd->setSize(CEGUI::USize(CEGUI::UDim(0.5f, 0.0f), CEGUI::UDim(0.5f, 0.0f)));
Set up the same as it is with the tutorial. However, I am currently experiencing an issue when trying to move this window.
I am injecting these corresponding inputs to the system:
Code: Select all
if (gameMouse.KeyDown(Input::MI_LBUTTON) && !this->mouseDown)
this->mouseDown = true;
if (gameMouse.KeyUp(Input::MI_LBUTTON) && this->mouseDown)
this->mouseDown = false;
Upon clicking my window's title bar and holding left mouse down, the window does follow my mouse cursor as expected. However, the farther I move the window to the left (x direction only), un-clicking left mouse button and then re-clicking left mouse button to recapture the window to follow the mouse cursor; the window's activation area for the title bar seems to diminish from the left side to the right side of the title bar. I'll attempt to provide an image example. I know my mouse inputs are correct because the CEGUI mouse cursor reflects the correct system mouse cursor in the application.
Hopefully there is someone out there that may recognize this situation. Do I need to provide an update call to my window upon each delta movement that the window is dragged of some sort, and not just the key injections ? Thank you for any clarification.
Upon further investigation it seems like it's only the Top Left Quadrant of my application window when the window title bar isn't able to activate upon mouse click for window drag, when trying to re-grab the title bar for dragging to another location on the screen. I am calling the injectTimePulse function as well in my main loop.