![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2009 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtEntCheckDiGuyAnimationConditional.h,v $ $Revision: 1.1 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00011 00013 00014 #pragma once 00015 00016 #include <vrfGuiCoreQt/DtBaseEntityConditionalExpressionDialog.h> 00017 #include <vrfGuiCoreQt/DtBaseEntityConditionalExpressionLogic.h> 00018 00019 #include <vrvCore/DtUniqueID.h> 00020 00021 class QGridLayout; 00022 class QComboBox; 00023 class QLabel; 00024 00025 namespace makVrv 00026 { 00027 class DtSimObjectEntry; 00028 } 00029 00030 namespace makVrf 00031 { 00033 class DT_DLL_VRFGUICOREQT DtEntCheckDiGuyAnimationConditionalCreator : public DtVrfConditionalExpressionCreator 00034 { 00035 public: 00036 virtual DtConditionalExpressionInterface* create(makVrv::DtDe&, QWidget* parent); 00037 virtual QString title() const ; 00038 virtual bool canEditType(int) const; 00039 }; 00040 00041 class DT_DLL_VRFGUICOREQT DtEntCheckDiGuyAnimationConditionalLogic : public DtBaseEntityConditionalExpressionLogic 00042 { 00043 public: 00044 DtEntCheckDiGuyAnimationConditionalLogic(makVrv::DtDe&, DtConditionalExpressionInterface*); 00045 00046 virtual ~DtEntCheckDiGuyAnimationConditionalLogic(); 00047 00048 public: 00049 virtual void createConditional(DtConditionalExpressionViewInterface* parentView, 00050 const std::vector<makVrv::DtSimEntry*>& data); 00051 00052 virtual DtSimCondExpr* conditionalExpression() const; 00053 virtual void setupConditional(const DtSimCondExpr*, const std::vector<makVrv::DtSimEntry*>& data); 00054 00055 protected: 00056 virtual void setupGui(const std::vector<makVrv::DtSimEntry*>& data); 00057 virtual void slot_onSimDataRemoved(makVrv::DtSimObjectEntry& d); 00058 virtual void initializeSelectionFilters(); 00059 00060 virtual void slot_onNameChanged(const QString&); 00061 virtual void slot_onAnimationDataChanged(makVrv::DtUniqueID); 00062 00063 virtual void useSelfChanged(); 00064 00065 virtual void setAnimationData(const std::vector<makVrv::DtUniqueID>&); 00066 00067 protected: 00068 std::vector<makVrv::DtSimEntry*> mySelections; 00069 QString myEditingName; 00070 }; 00071 00072 class DT_DLL_VRFGUICOREQT DtEntCheckDiGuyAnimationConditional : public DtBaseEntityConditionalExpressionDialog 00073 { 00074 Q_OBJECT 00075 00076 public: 00077 //CTOR 00078 DtEntCheckDiGuyAnimationConditional(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0); 00079 00080 //DTOR 00081 virtual ~DtEntCheckDiGuyAnimationConditional(); 00082 00083 virtual void clear(); 00084 virtual void addItem(const QString&, const QString&); 00085 00086 const QString& AnimationToSet() const 00087 { 00088 return myAnimationToSet; 00089 } 00090 00091 protected: 00092 virtual QWidget* expressionExtension(); 00093 00094 virtual QString value() const; 00095 virtual void setValue(const QString&); 00096 virtual void setupConditional(const DtSimCondExpr* expr, const std::vector<makVrv::DtSimEntry*>& data); 00097 00098 public slots: 00099 virtual void onAnimationChanged(const QString&); 00100 00101 public: 00102 QWidget* myExtension; 00103 QGridLayout* myExtensionLayout; 00104 00105 QLabel* myAnimationLabel; 00106 QComboBox* myAnimation; 00107 QLabel* myDescriptionLabel; 00108 QLabel* myDescription; 00109 00110 protected: 00111 QString myAnimationToSet; 00112 }; 00113 }