Initial commit
This commit is contained in:
95
Torque/SDK/engine/gui/utility/guiMouseEventCtrl.cc
Normal file
95
Torque/SDK/engine/gui/utility/guiMouseEventCtrl.cc
Normal file
@@ -0,0 +1,95 @@
|
||||
//-----------------------------------------------------------------------------
|
||||
// Torque Game Engine
|
||||
// Copyright (C) GarageGames.com, Inc.
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
#include "gui/utility/guiMouseEventCtrl.h"
|
||||
#include "console/consoleTypes.h"
|
||||
|
||||
IMPLEMENT_CONOBJECT(GuiMouseEventCtrl);
|
||||
|
||||
GuiMouseEventCtrl::GuiMouseEventCtrl()
|
||||
{
|
||||
mLockMouse = false;
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
void GuiMouseEventCtrl::sendMouseEvent(const char * name, const GuiEvent & event)
|
||||
{
|
||||
char buf[3][32];
|
||||
dSprintf(buf[0], 32, "%d", event.modifier);
|
||||
dSprintf(buf[1], 32, "%d %d", event.mousePoint.x, event.mousePoint.y);
|
||||
dSprintf(buf[2], 32, "%d", event.mouseClickCount);
|
||||
Con::executef(this, 4, name, buf[0], buf[1], buf[2]);
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
void GuiMouseEventCtrl::initPersistFields()
|
||||
{
|
||||
Parent::initPersistFields();
|
||||
addField("lockMouse", TypeBool, Offset(mLockMouse, GuiMouseEventCtrl));
|
||||
|
||||
Con::setIntVariable("$EventModifier::LSHIFT", SI_LSHIFT);
|
||||
Con::setIntVariable("$EventModifier::RSHIFT", SI_RSHIFT);
|
||||
Con::setIntVariable("$EventModifier::SHIFT", SI_SHIFT);
|
||||
Con::setIntVariable("$EventModifier::LCTRL", SI_LCTRL);
|
||||
Con::setIntVariable("$EventModifier::RCTRL", SI_RCTRL);
|
||||
Con::setIntVariable("$EventModifier::CTRL", SI_CTRL);
|
||||
Con::setIntVariable("$EventModifier::LALT", SI_LALT);
|
||||
Con::setIntVariable("$EventModifier::RALT", SI_RALT);
|
||||
Con::setIntVariable("$EventModifier::ALT", SI_ALT);
|
||||
}
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
void GuiMouseEventCtrl::onMouseDown(const GuiEvent & event)
|
||||
{
|
||||
if(mLockMouse)
|
||||
mouseLock();
|
||||
sendMouseEvent("onMouseDown", event);
|
||||
}
|
||||
|
||||
void GuiMouseEventCtrl::onMouseUp(const GuiEvent & event)
|
||||
{
|
||||
if(mLockMouse)
|
||||
mouseUnlock();
|
||||
sendMouseEvent("onMouseUp", event);
|
||||
}
|
||||
|
||||
void GuiMouseEventCtrl::onMouseMove(const GuiEvent & event)
|
||||
{
|
||||
sendMouseEvent("onMouseMove", event);
|
||||
}
|
||||
|
||||
void GuiMouseEventCtrl::onMouseDragged(const GuiEvent & event)
|
||||
{
|
||||
sendMouseEvent("onMouseDragged", event);
|
||||
}
|
||||
|
||||
void GuiMouseEventCtrl::onMouseEnter(const GuiEvent & event)
|
||||
{
|
||||
sendMouseEvent("onMouseEnter", event);
|
||||
}
|
||||
|
||||
void GuiMouseEventCtrl::onMouseLeave(const GuiEvent & event)
|
||||
{
|
||||
sendMouseEvent("onMouseLeave", event);
|
||||
}
|
||||
|
||||
void GuiMouseEventCtrl::onRightMouseDown(const GuiEvent & event)
|
||||
{
|
||||
if(mLockMouse)
|
||||
mouseLock();
|
||||
sendMouseEvent("onRightMouseDown", event);
|
||||
}
|
||||
|
||||
void GuiMouseEventCtrl::onRightMouseUp(const GuiEvent & event)
|
||||
{
|
||||
if(mLockMouse)
|
||||
mouseUnlock();
|
||||
sendMouseEvent("onRightMouseUp", event);
|
||||
}
|
||||
|
||||
void GuiMouseEventCtrl::onRightMouseDragged(const GuiEvent & event)
|
||||
{
|
||||
sendMouseEvent("onRightMouseDragged", event);
|
||||
}
|
||||
Reference in New Issue
Block a user