VR-Forces 4.0.4 Class Documentation
include/vrfGuiCoreQt/DtResourceConditional.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2009 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 /******************************************************************************
00006 ** $RCSfile: DtResourceConditional.h,v $ $Revision: 1.2 $ $State: Exp $
00007 ******************************************************************************/
00008 
00011 
00013 
00014 #pragma once
00015 
00016 #include <vrvUtil/signalslib.h>
00017 
00018 #include <vrfGuiCoreQt/DtBaseConditionalExpressionDialog.h>
00019 #include <vrfGuiCore/DtVrfResourceRequestor.h>
00020 
00021 #include <QtCore/QVariant>
00022 
00023 class QLabel;
00024 class QLineEdit;
00025 class QComboBox;
00026 class QGridLayout;
00027 class QCheckBox;
00028 class QDoubleValidator;
00029 class QIntValidator;
00030 
00031 namespace makVrf
00032 {
00034    class DT_DLL_VRFGUICOREQT DtResourceConditionalCreator : public DtVrfConditionalExpressionCreator
00035    {
00036    public:
00037       virtual DtConditionalExpressionInterface* create(makVrv::DtDe&, QWidget* parent);
00038       virtual QString title() const ;
00039       virtual bool canEditType(int) const;
00040    };
00041 
00042    class DT_DLL_VRFGUICOREQT DtResourceConditionalLogic : public DtConditionExpressionLogic,
00043       public DtVrfResourceRequestor
00044    {
00045    public:
00046       DtResourceConditionalLogic(makVrv::DtDe&, DtConditionalExpressionInterface*);
00047       virtual ~DtResourceConditionalLogic();
00048 
00049    public:
00050       virtual void comboChanged(const QString&);
00051 
00052    protected:
00053       virtual void createConditional(DtConditionalExpressionViewInterface* parentView,
00054          const std::vector<makVrv::DtSimEntry*>& data);
00055       virtual bool isComplete() const;
00056       virtual DtSimCondExpr* conditionalExpression() const;
00057       virtual void setupConditional(const DtSimCondExpr*, const std::vector<makVrv::DtSimEntry*>& data);
00058 
00059       virtual void setupGui(const std::vector<makVrv::DtSimEntry*>& data);
00060       virtual void addResource(const DtResource& resource);
00061       virtual void resourceUpdated(const DtResource&);
00062 
00063       virtual QString resourceName() const;
00064       virtual void setResourceName(const QString&);
00065 
00066       virtual QString resourceOperator() const;
00067       virtual void setResourceOperator(const QString&);
00068 
00069       virtual bool isPercent() const;
00070       virtual void setIsPercent(bool);
00071 
00072    protected:
00073       virtual void resourcesChanged();
00074       virtual void resourceCheckingDisabled();
00075       virtual void resourceCheckComplete();
00076    };
00077 
00078    class DT_DLL_VRFGUICOREQT DtResourceConditional : public DtBaseConditionalExpressionDialog
00079    {
00080       Q_OBJECT
00081 
00082    public:
00083       //CTOR
00084       DtResourceConditional(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
00085 
00086       //DtResource
00087       virtual ~DtResourceConditional();
00088 
00089    public:
00090       virtual void addItem(const QString&, const QVariant& = QVariant());
00091       virtual void disable(const QString& reason);
00092       virtual void enable();
00093       virtual void setSelectedIndex(int);
00094       virtual QString selectedText() const;
00095       virtual void clear();
00096       virtual void setRealResource(const QString& full, const QString& current);
00097       virtual void setIntegerResource(const QString& full, const QString& current);
00098 
00099       virtual QString resourceName() const;
00100       virtual void setResourceName(const QString&);
00101 
00102       virtual QString resourceOperator() const;
00103       virtual void setResourceOperator(const QString&);
00104 
00105       virtual bool isPercent() const;
00106       virtual void setIsPercent(bool);
00107 
00108    protected:
00109       virtual QWidget* contents();
00110       virtual QString value() const;
00111 
00112       virtual void setValue(const QString&);
00113 
00114       virtual void setupConditional(const DtSimCondExpr*, const std::vector<makVrv::DtSimEntry*>& data);
00115 
00116    protected slots:
00117       virtual void onComboChanged(const QString&);
00118 
00119    public:
00120       QWidget*       myCanvas;
00121       QGridLayout*   myLayout;
00122 
00123       QLabel*        myResourcesLabel;
00124       QComboBox*     myResources;
00125       QLabel*        myFullAmount;
00126       QLabel*        myCurrentAmount;
00127 
00128       QComboBox*     myOperator;
00129 
00130       QLabel*        myCompareLabel;
00131       QLineEdit*     myCompare;
00132       QCheckBox*     myValueIsPercent;
00133       QDoubleValidator* myDoubleValidator;
00134       QIntValidator*    myIntValidator;
00135    };
00136 }

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)