00001 #ifndef IPSA_DIALOG_H
00002 #define IPSA_DIALOG_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00030 #include "../IPSA.h"
00031
00032 #ifndef USE_SOWIN
00033
00034 #include <qdialog.h>
00035
00036 #include <map>
00037
00038 class IpsaSimulator;
00039
00040 class QVBoxLayout;
00041 class QHBoxLayout;
00042 class QGridLayout;
00043 class QSpacerItem;
00044 class QPushButton;
00045 class QLabel;
00046 class QLineEdit;
00047 class QComboBox;
00048
00049 class Instruction;
00050
00051 #define IS_QT4 (QT_VERSION >= 0x040000)
00052
00053 class IPSA_VIEWER_IMPORT_EXPORT IpsaDialog : public QDialog
00054 {
00055 Q_OBJECT
00056
00057 public:
00058 #if IS_QT4
00059 IpsaDialog(IpsaSimulator* simulator, QWidget* parent = 0, const char* name = 0, bool modal = FALSE, Qt::WindowFlags fl = 0 );
00060 #else
00061 IpsaDialog(IpsaSimulator* simulator, QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 );
00062 #endif
00063 ~IpsaDialog();
00064
00065 QLabel* value1label;
00066 QLabel* value2lable;
00067 QLabel* value3label;
00068 QLineEdit* value1;
00069 QLineEdit* value2;
00070 QLineEdit* value3;
00071 QComboBox* modeSelector;
00072 QComboBox* nodeList;
00073 QComboBox* commandList;
00074 QPushButton* action;
00075
00076 public slots:
00077 virtual void getSetValue();
00078 virtual void modeSelected(const QString& mode);
00079 virtual void nodeSelected(const QString& node);
00080 virtual void commandSelected(const QString& command);
00081 virtual void reloadData();
00082
00083 protected:
00084 void evaluateAnswer(const std::ostringstream& answer, unsigned int numberOfReturnValues);
00085
00086 QVBoxLayout* Layout5;
00087 QSpacerItem* Spacer1;
00088
00089 protected slots:
00090 virtual void languageChange();
00091
00092 private:
00093 void buildGui();
00094
00095 QString currentCommand;
00096 QString currentNode;
00097 IpsaSimulator* ipsaSimulator;
00098 std::map<std::string, Instruction*> commandMap;
00099
00100 const QString bodySelectionName;
00101 const QString jointSelectionName;
00102 };
00103
00104 #endif // USE_SOWIN
00105 #endif // IPSA_DIALOG_H