![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2009 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtEntCheckDiGuyAppearanceConditional.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 QHBoxLayout; 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 DtEntCheckDiGuyAppearanceConditionalCreator : 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 DtEntCheckDiGuyAppearanceConditionalLogic : public DtBaseEntityConditionalExpressionLogic 00042 { 00043 public: 00044 DtEntCheckDiGuyAppearanceConditionalLogic(makVrv::DtDe&, DtConditionalExpressionInterface*); 00045 00046 virtual ~DtEntCheckDiGuyAppearanceConditionalLogic(); 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_onAppearanceDataChanged(makVrv::DtUniqueID); 00062 00063 virtual void useSelfChanged(); 00064 00065 virtual void setAppearanceData(const std::vector<makVrv::DtUniqueID>&); 00066 00067 protected: 00068 std::vector<makVrv::DtSimEntry*> mySelections; 00069 QString myEditingName; 00070 }; 00071 00072 class DT_DLL_VRFGUICOREQT DtEntCheckDiGuyAppearanceConditional : public DtBaseEntityConditionalExpressionDialog 00073 { 00074 Q_OBJECT 00075 00076 public: 00077 //CTOR 00078 DtEntCheckDiGuyAppearanceConditional(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0); 00079 00080 //DTOR 00081 virtual ~DtEntCheckDiGuyAppearanceConditional(); 00082 00083 virtual void clear(); 00084 virtual void addItem(const QString&); 00085 00086 const QString& appearanceToSet() const 00087 { 00088 return myAppearanceToSet; 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: 00099 QWidget* myExtension; 00100 QHBoxLayout* myExtensionLayout; 00101 00102 QLabel* myAppearanceLabel; 00103 QComboBox* myAppearance; 00104 00105 protected: 00106 QString myAppearanceToSet; 00107 }; 00108 }