00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef TOOLSMENU_H
00021 #define TOOLSMENU_H
00022
00023 #include "src/application/runanimationhandler.h"
00024 #include "src/application/modelhandler.h"
00025 #include "src/application/camerahandler.h"
00026
00027 #include <qbuttongroup.h>
00028 #include <qlayout.h>
00029 #include <qpushbutton.h>
00030 #include <qslider.h>
00031 #include <qcombobox.h>
00032
00033
00039 class ToolsMenu : public QFrame
00040 {
00041 Q_OBJECT
00042 public:
00047 ToolsMenu( RunAnimationHandler *runAnimationHandler, ModelHandler *modelHandler,
00048 CameraHandler *cameraHandler, QWidget *parent=0 );
00049
00054 void createAccelerators();
00055
00059 void addWidgets();
00060
00066 void retranslateStrings();
00067
00068 public slots:
00069
00074 void activateCaptureGroup(bool activate);
00075
00081 void modelSizeChanged(int modelSize);
00082
00083 private:
00084 RunAnimationHandler *runAnimationHandler;
00085 ModelHandler *modelHandler;
00086 CameraHandler *cameraHandler;
00087
00088 QGroupBox *captureGroup;
00089 QGroupBox *runAnimationGroup;
00090
00091
00092 QPushButton *addFrameButton;
00093 QPushButton *removeFramesButton;
00094 QPushButton *newSceneButton;
00095 QPushButton *removeSceneButton;
00096 QPushButton *cameraButton;
00097 QPushButton *captureFrameButton;
00098 QPushButton *playButton;
00099 QPushButton *nextFrameButton;
00100 QPushButton *previousFrameButton;
00101 QPushButton *toEndButton;
00102 QPushButton *toBeginningButton;
00103 QPushButton *stopButton;
00104 QPushButton *pauseButton;
00105 QPushButton *loopButton;
00106 QSlider *mixSlider;
00107 QSpinBox *animationSpeedChooser;
00108 QComboBox *viewChooseCombo;
00109 QLabel *animationSpeedChooserCaption;
00110 QLabel *mixSliderCaption;
00111 QSpacerItem *horizontalSpace;
00112 QSpacerItem *verticalSpace;
00113 QSpacerItem *horizontalDummySpace;
00114 QSpacerItem *groupSpace;
00115 QGridLayout *grid;
00116 QGridLayout *captureGrid;
00117 QGridLayout *runAnimationGrid;
00118 QAccel *loopAccel;
00119 QAccel *playAccel;
00120 QAccel *mixAccel;
00121 QAccel *diffAccel;
00122 QAccel *playbackAccel;
00123
00124 private slots:
00125
00131 void changeViewingMode(int index);
00132
00137 void setMixingMode();
00138
00143 void setDiffingMode();
00144
00149 void setPlaybackMode();
00150
00156 void cameraOn(bool isOn);
00157
00158 signals:
00159 void viewingModeChanged();
00160 };
00161
00162 #endif