![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2009 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtEntEmbarkedConditional.h,v $ $Revision: 1.2 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00011 00013 00014 #pragma once 00015 00016 #include <vrfGuiCoreQt/DtBaseEntityConditionalExpressionDialog.h> 00017 #include <vrfGuiCoreQt/DtBaseEntityConditionalExpressionLogic.h> 00018 00019 class QWidget; 00020 class QCheckBox; 00021 class QLabel; 00022 class QFrame; 00023 class QVBoxLayout; 00024 00025 namespace makVrf 00026 { 00028 class DT_DLL_VRFGUICOREQT DtEntEmbarkedConditionalCreator : public DtVrfConditionalExpressionCreator 00029 { 00030 public: 00031 virtual DtConditionalExpressionInterface* create(makVrv::DtDe&, QWidget* parent); 00032 virtual QString title() const ; 00033 virtual bool canEditType(int) const; 00034 }; 00035 00036 class DT_DLL_VRFGUICOREQT DtEntEmbarkedConditionalLogic : public DtBaseEntityConditionalExpressionLogic 00037 { 00038 public: 00039 DtEntEmbarkedConditionalLogic(makVrv::DtDe&, DtConditionalExpressionInterface*); 00040 00041 virtual ~DtEntEmbarkedConditionalLogic(); 00042 00043 public: 00044 virtual void createConditional(DtConditionalExpressionViewInterface* parentView, 00045 const std::vector<makVrv::DtSimEntry*>& data); 00046 00047 virtual DtSimCondExpr* conditionalExpression() const; 00048 virtual void setupConditional(const DtSimCondExpr*, const std::vector<makVrv::DtSimEntry*>& data); 00049 00050 protected: 00051 virtual void initializeSelectionFilters(); 00052 virtual bool isComplete() const; 00053 00054 virtual bool embarkedOnAny() const; 00055 virtual void setEmbarkedOnAny(bool); 00056 00057 virtual QString embarkedOn() const; 00058 virtual void setEmbarkedOn(QString); 00059 00060 virtual void selectObject(const DtVrfObjectListViewItem::DtVrfObjectState& obj); 00061 }; 00062 00063 class DT_DLL_VRFGUICOREQT DtEntEmbarkedConditional : public DtBaseEntityConditionalExpressionDialog 00064 { 00065 Q_OBJECT 00066 00067 public: 00068 //CTOR 00069 DtEntEmbarkedConditional(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0); 00070 00071 //DTOR 00072 virtual ~DtEntEmbarkedConditional(); 00073 00074 DtVrfFilteredListView* embarkedOnView() 00075 { 00076 return myEmbarkedOn; 00077 } 00078 00079 virtual bool embarkedOnAny() const; 00080 virtual void setEmbarkedOnAny(bool); 00081 00082 virtual QString embarkedOn() const; 00083 virtual void setEmbarkedOn(QString); 00084 00085 protected slots: 00086 virtual void onEmbarkedOnAnyChanged(); 00087 00088 protected: 00089 virtual QWidget* expressionExtension(); 00090 00091 virtual QString value() const; 00092 virtual void setValue(const QString&); 00093 virtual void setupConditional(const DtSimCondExpr* expr, const std::vector<makVrv::DtSimEntry*>& data); 00094 virtual void postGuiSetup(const std::vector<makVrv::DtSimEntry*>& data); 00095 virtual std::vector<DtVrfObjectListViewItem::DtVrfObjectState> selectedObjects() const; 00096 00097 public: 00098 QWidget* myExtension; 00099 QVBoxLayout* myExtensionLayout; 00100 QFrame* mySeparator; 00101 QLabel* myLabel; 00102 QCheckBox* myEmbarkedOnAny; 00103 DtVrfFilteredListView* myEmbarkedOn; 00104 }; 00105 }