1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-21 12:53:53 +00:00
openmw/apps/opencs/view/render/scenewidget.hpp

77 lines
1.6 KiB
C++
Raw Normal View History

2013-11-02 01:48:30 +00:00
#ifndef OPENCS_VIEW_SCENEWIDGET_H
#define OPENCS_VIEW_SCENEWIDGET_H
#include <QWidget>
namespace Ogre
{
class Camera;
class SceneManager;
class RenderWindow;
}
namespace CSVRender
{
class Navigation;
2013-11-02 01:48:30 +00:00
class SceneWidget : public QWidget
{
Q_OBJECT
public:
2013-11-02 01:48:30 +00:00
SceneWidget(QWidget *parent);
2014-02-25 13:59:46 +00:00
virtual ~SceneWidget();
2013-11-02 01:48:30 +00:00
QPaintEngine* paintEngine() const;
2013-11-02 01:48:30 +00:00
void setNavigation (Navigation *navigation);
///< \attention The ownership of \a navigation is not transferred to *this.
2014-02-25 13:59:46 +00:00
private:
void paintEvent(QPaintEvent* e);
void resizeEvent(QResizeEvent* e);
bool event(QEvent* e);
2014-02-25 12:09:37 +00:00
void keyPressEvent (QKeyEvent *event);
void keyReleaseEvent (QKeyEvent *event);
void focusOutEvent (QFocusEvent *event);
2014-02-25 12:39:49 +00:00
void wheelEvent (QWheelEvent *event);
2014-02-25 13:09:07 +00:00
void leaveEvent (QEvent *event);
void mouseMoveEvent (QMouseEvent *event);
void mouseReleaseEvent (QMouseEvent *event);
void updateOgreWindow();
2013-11-02 01:48:30 +00:00
2014-02-25 13:14:53 +00:00
int getFastFactor() const;
Ogre::Camera* mCamera;
Ogre::SceneManager* mSceneMgr;
Ogre::RenderWindow* mWindow;
Navigation *mNavigation;
2014-02-25 12:09:37 +00:00
bool mUpdate;
int mKeyForward;
int mKeyBackward;
2014-02-25 12:31:15 +00:00
int mKeyLeft;
int mKeyRight;
bool mFast;
2014-02-25 13:09:07 +00:00
bool mDragging;
bool mMod1;
2014-02-25 13:09:07 +00:00
QPoint mOldPos;
2014-02-25 13:14:53 +00:00
int mFastFactor;
2014-02-25 12:09:37 +00:00
private slots:
void update();
};
2013-11-02 01:48:30 +00:00
}
#endif