VR-Forces 4.0.4 Class Documentation
include/vrfGuiCoreQt/DtConditionalExpressionInterface.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2009 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: DtConditionalExpressionInterface.h,v $ $Revision: 1.1 $ $State: Exp $
00007 *******************************************************************************/
00008 
00011 
00013 
00014 #pragma once
00015 
00016 #include <vrvUtil/signalslib.h>
00017 #include <vrfGuiCoreQt/vrfGuiCoreQt.h>
00018 
00019 #include <QtGui/QWidget>
00020 
00021 namespace makVrv
00022 {
00023    class DtDe;
00024    class DtSimEntry;
00025 }
00026 
00027 class QWidget;
00028 class DtSimCondExpr;
00029 
00030 namespace makVrf
00031 {
00032    class DtConditionalExpressionInterface;
00033    class DtConditionalExpressionViewInterface;
00034 
00038    class DT_DLL_VRFGUICOREQT DtVrfConditionalExpressionCreator
00039    {
00040    public:
00041       virtual DtConditionalExpressionInterface* create(makVrv::DtDe&, QWidget* parent) = 0;
00042       virtual QString title() const = 0;
00043       virtual bool canEditType(int) const = 0;
00044    };
00045 
00046    class DT_DLL_VRFGUICOREQT DtConditionExpressionLogic
00047    {
00048    public:
00049       DtConditionExpressionLogic(makVrv::DtDe&, DtConditionalExpressionInterface*);
00050       virtual ~DtConditionExpressionLogic();
00051 
00052    public:
00053       virtual void createConditional(DtConditionalExpressionViewInterface* parentView,
00054          const std::vector<makVrv::DtSimEntry*>& data) = 0;
00055 
00056       virtual bool isComplete() const = 0;
00057       virtual DtSimCondExpr* conditionalExpression() const = 0;
00058       virtual void setupConditional(const DtSimCondExpr*, const std::vector<makVrv::DtSimEntry*>& data) = 0;
00059 
00061       virtual void accept();
00062 
00064       virtual void cancel();
00065 
00067       virtual void setupGui(const std::vector<makVrv::DtSimEntry*>& data);
00068 
00069    protected:
00070       makVrv::DtDe&                        myDe;
00071       DtConditionalExpressionInterface*   myInterface;
00072    };
00073 
00074    class DT_DLL_VRFGUICOREQT DtConditionalExpressionInterface : public QWidget
00075    {
00076    public:
00077       //CTOR
00078       DtConditionalExpressionInterface(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
00079 
00080       //DTOR
00081       virtual ~DtConditionalExpressionInterface();
00082 
00084       virtual void run(DtConditionalExpressionViewInterface*, const std::vector<makVrv::DtSimEntry*>& data) = 0;
00085 
00086       virtual void setupGui(const std::vector<makVrv::DtSimEntry*>& data) = 0;
00087       virtual bool isComplete() const = 0;
00088       virtual QString value() const = 0;
00089       virtual void setValue(const QString&) = 0;
00090       virtual DtSimCondExpr* conditionalExpression() const;
00091 
00093       virtual void setupConditional(const DtSimCondExpr*, const std::vector<makVrv::DtSimEntry*>& data) = 0;
00094 
00096       virtual bool bringsUpDialog() const;
00097 
00099       virtual void conditionComplete();
00100       boost::signal<void ()> signal_conditionComplete;
00101 
00103       virtual void conditionCancelled();
00104       boost::signal<void ()> signal_conditionCancelled;
00105 
00106    protected:
00107       makVrv::DtDe& myDe;
00108       DtConditionExpressionLogic* myLogic;
00109    };
00110 }

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)