本文整理汇总了C++中ui::Event类的典型用法代码示例。如果您正苦于以下问题:C++ Event类的具体用法?C++ Event怎么用?C++ Event使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Event类的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: consumeEvent
inline virtual void consumeEvent(const ui::Event& ev)
{
switch (ev.type)
{
case ui::MOUSE_PRESSED_EVENT:
std::cerr << "Mouse pressed at " <<
ev.mouseButtonPos().toString() << std::endl;
break;
case ui::MOUSE_RELEASED_EVENT:
std::cerr << "Mouse relesed at " <<
ev.mouseButtonPos().toString() << std::endl;
break;
case ui::MOUSE_MOTION_EVENT:
std::cerr << "Mouse moved from " <<
ev.mouseMotionFromPos().toString() <<
" to " <<
ev.mouseMotionToPos().toString() << std::endl;
break;
case ui::KEY_PRESSED_EVENT:
std::cerr << "Key pressed: " << ev.key.unicode << std::endl;
case ui::KEY_RELEASED_EVENT:
std::cerr << "Key released: " << ev.key.unicode << std::endl;
if (ev.key.unicode == ui::KeyEvent::SCAPE_KEY)
engine->stopLoop();
default:
break;
}
}
开发者ID:apoloval,项目名称:Karen,代码行数:28,代码来源:test-cocoa.cpp
示例2: OnSaveState
UI::EventReturn SaveSlotView::OnSaveState(UI::EventParams &e) {
g_Config.iCurrentStateSlot = slot_;
SaveState::SaveSlot(gamePath_, slot_, &AfterSaveStateAction);
UI::EventParams e2{};
e2.v = this;
OnStateSaved.Trigger(e2);
return UI::EVENT_DONE;
}
开发者ID:Orphis,项目名称:ppsspp,代码行数:8,代码来源:PauseScreen.cpp
示例3: OnSaveState
UI::EventReturn SaveSlotView::OnSaveState(UI::EventParams &e) {
g_Config.iCurrentStateSlot = slot_;
SaveState::SaveSlot(slot_, SaveState::Callback(), 0);
UI::EventParams e2;
e2.v = this;
OnStateSaved.Trigger(e2);
return UI::EVENT_DONE;
}
开发者ID:chinhodado,项目名称:ppsspp,代码行数:8,代码来源:PauseScreen.cpp
示例4: OnLaunchClick
UI::EventReturn ProductView::OnLaunchClick(UI::EventParams &e) {
std::string pspGame = GetSysDirectory(DIRECTORY_GAME);
std::string path = pspGame + entry_.file;
#ifdef _WIN32
path = ReplaceAll(path, "\\", "/");
#endif
UI::EventParams e2;
e2.s = path;
// Insta-update - here we know we are already on the right thread.
OnClickLaunch.Trigger(e2);
return UI::EVENT_DONE;
}
开发者ID:BlueSplash,项目名称:ppsspp,代码行数:13,代码来源:Store.cpp
示例5: OnLaunchClick
UI::EventReturn ProductView::OnLaunchClick(UI::EventParams &e) {
if (g_GameManager.GetState() != GameManagerState::IDLE) {
// Button should have been disabled. Just a safety check.
return UI::EVENT_DONE;
}
std::string pspGame = GetSysDirectory(DIRECTORY_GAME);
std::string path = pspGame + entry_.file;
#ifdef _WIN32
path = ReplaceAll(path, "\\", "/");
#endif
UI::EventParams e2{};
e2.v = e.v;
e2.s = path;
// Insta-update - here we know we are already on the right thread.
OnClickLaunch.Trigger(e2);
return UI::EVENT_DONE;
}
开发者ID:Orphis,项目名称:ppsspp,代码行数:18,代码来源:Store.cpp
示例6: OnScreenshotClick
UI::EventReturn SaveSlotView::OnScreenshotClick(UI::EventParams &e) {
UI::EventParams e2{};
e2.v = this;
OnScreenshotClicked.Trigger(e2);
return UI::EVENT_DONE;
}
开发者ID:Orphis,项目名称:ppsspp,代码行数:6,代码来源:PauseScreen.cpp
示例7: UIEventHandler
bool CManipRot::UIEventHandler( const ui::Event& EV )
{
int ex = EV.miX;
int ey = EV.miY;
CVector2 posubp = EV.GetUnitCoordBP();
CCamera *pcam = mManager.GetActiveCamera();
bool brval = false;
bool isshift = false; //CSystem::IsKeyDepressed(VK_SHIFT );
bool isctrl = false; //CSystem::IsKeyDepressed(VK_CONTROL );
switch( EV.miEventCode )
{
case ui::UIEV_PUSH:
{
mManager.mManipHandler.Init(posubp, pcam->mCameraData.GetIVPMatrix(), pcam->QuatC );
mBaseTransform = mManager.mCurTransform;
SelectBestPlane(posubp);
brval = true;
}
break;
case ui::UIEV_RELEASE:
{
mManager.DisableManip();
brval = true;
}
break;
case ui::UIEV_DRAG:
{
IntersectWithPlanes( posubp );
if ( CheckIntersect() )
{
///////////////////////////////////////////
// calc normalvectors from base:origin to point on activeintersection plane (in world space)
const CVector3 & Origin = mBaseTransform.GetTransform().GetPosition();
CVector3 D1 = (Origin-mActiveIntersection->mIntersectionPoint).Normal();
CVector3 D0 = (Origin-mActiveIntersection->mBaseIntersectionPoint).Normal();
///////////////////////////////////////////
// calc matrix to put worldspace vector into plane local space
CMatrix4 MatWldToObj = mBaseTransform.GetTransform().GetMatrix(); //GetRotation();
MatWldToObj.Inverse();
CVector4 bAxisAngle = mLocalRotationAxis;
CQuaternion brq;
brq.FromAxisAngle(bAxisAngle);
CMatrix4 MatObjToPln = brq.ToMatrix();
MatObjToPln.Inverse();
CMatrix4 MatWldToPln = MatObjToPln*MatWldToObj;
//CMatrix4 MatInvRot = InvQuat.ToMatrix();
///////////////////////////////////////////
// calc plane local rotation
CVector4 AxisAngle = mLocalRotationAxis;
CVector4 D0I = CVector4(D0,CReal(0.0f)).Transform(MatWldToPln);
CVector4 D1I = CVector4(D1,CReal(0.0f)).Transform(MatWldToPln);
//orkprintf( "D0 <%f %f %f>\n", float(D0.GetX()), float(D0.GetY()), float(D0.GetZ()) );
//orkprintf( "D1 <%f %f %f>\n", float(D1.GetX()), float(D1.GetY()), float(D1.GetZ()) );
//orkprintf( "D0I <%f %f %f>\n", float(D0I.GetX()), float(D0I.GetY()), float(D0I.GetZ()) );
//orkprintf( "D1I <%f %f %f>\n", float(D1I.GetX()), float(D1I.GetY()), float(D1I.GetZ()) );
AxisAngle.SetW( CalcAngle(D0I,D1I) );
CQuaternion RotQ;
RotQ.FromAxisAngle( AxisAngle );
///////////////////
// Rot Snap
if( isshift )
{ CReal SnapAngleVal( PI2/16.0f );
CVector4 NewAxisAngle = RotQ.ToAxisAngle();
CReal Angle = NewAxisAngle.GetW();
Angle = SnapReal( Angle, SnapAngleVal );
NewAxisAngle.SetW( Angle );
RotQ.FromAxisAngle( NewAxisAngle );
}
///////////////////
// accum rotation
CQuaternion oq = mBaseTransform.GetTransform().GetRotation();
CQuaternion NewQ = RotQ.Multiply(oq);
///////////////////
// Rot Reset To Identity
if( isctrl && isshift )
{
NewQ.FromAxisAngle( CVector4( CReal(0.0f), CReal(1.0f), CReal(0.0f), CReal(0.0f) ) );
}
///////////////////
TransformNode mset = mManager.mCurTransform;
mset.GetTransform().SetRotation( NewQ );
mManager.ApplyTransform( mset );
///////////////////
}
brval = true;
}
break;
//.........这里部分代码省略.........
开发者ID:tweakoz,项目名称:orkid,代码行数:101,代码来源:maniprot.cpp
注:本文中的ui::Event类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论