DemoMode.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef GUI_DIALOG_DEMOMODE_H
00025 #define GUI_DIALOG_DEMOMODE_H
00026
00027 #include <Inventor/SbLinear.h>
00028 #include <QDialog>
00029
00030 class QTimer;
00031 class SoCamera;
00032 class SbRotation;
00033
00034 namespace Gui {
00035 class View3DInventor;
00036 namespace Dialog {
00037
00041 class Ui_DemoMode;
00042 class GuiExport DemoMode : public QDialog
00043 {
00044 Q_OBJECT
00045
00046 public:
00047 DemoMode(QWidget* parent = 0, Qt::WFlags fl = 0);
00048 ~DemoMode();
00049
00050 void accept();
00051 void reject();
00052
00053 protected Q_SLOTS:
00054 void on_playButton_clicked();
00055 void on_stopButton_clicked();
00056 void on_fullscreen_toggled(bool);
00057 void on_timerCheck_toggled(bool);
00058 void on_speedSlider_valueChanged(int);
00059 void on_angleSlider_valueChanged(int);
00060 void on_timeout_valueChanged(int);
00061 void onAutoPlay();
00062
00063 private:
00064 void reset();
00065 float getSpeed(int) const;
00066 void reorientCamera(SoCamera * cam, const SbRotation & rot);
00067 SbVec3f getDirection(Gui::View3DInventor*) const;
00068 Gui::View3DInventor* activeView() const;
00069 void startAnimation(Gui::View3DInventor*);
00070 void changeEvent(QEvent *e);
00071
00072 private:
00073 int oldvalue;
00074 SbVec3f viewAxis;
00075 Ui_DemoMode* ui;
00076 QTimer* timer;
00077 };
00078
00079 }
00080 }
00081
00082 #endif // GUI_DIALOG_DEMOMODE_H