VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
conditionalDialogInterface.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2016 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
14 #include <vrfplan/simStatement.h>
15 #include <boost/signals2.hpp>
16 
17 #include <QtWidgets/QWidget>
18 
19 namespace makVrv
20 {
21  class DtDe;
22  class DtSimEntry;
23 }
24 
25 class DtSimCondExpr;
26 class DtRwTriggersList;
27 class DtSimStatement;
28 
29 static const Qt::WindowFlags theConditionalCreationFlags =
30  Qt::Dialog | Qt::CustomizeWindowHint | Qt::WindowTitleHint;
31 
32 namespace makVrf
33 {
34  class DtVrfConditionalMenu;
35  class DtConditionalDialogInterface;
36 
39  {
40  public:
41  virtual DtConditionalDialogInterface* create(makVrv::DtDe&, QWidget* parent, bool partOfGlobalPlan) = 0;
42  virtual bool canEditType(int) const = 0;
43  };
44 
46  {
47  Q_OBJECT
48 
49  public:
50  //CTOR
51  DtConditionalDialogInterface(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
52 
53  //DTOR
55 
57  virtual void run(const std::vector<makVrv::DtSimEntry*>& data) = 0;
58 
60  virtual void conditionComplete(const DtSimStatement&);
61  boost::signals2::signal<void (const DtSimStatement&)> signal_conditionComplete;
62 
64  virtual void conditionCancelled();
65  boost::signals2::signal<void ()> signal_conditionCancelled;
66 
67  virtual void setupGui(const std::vector<makVrv::DtSimEntry*>& data) = 0;
68 
70  virtual void enable() = 0;
71 
73  virtual void disable() = 0;
74 
76  virtual DtSimCondExpr* conditionalExpression() const = 0;
77 
79  virtual bool editExpression(const DtSimStatement*, const DtSimCondExpr*, const std::vector<makVrv::DtSimEntry*>& data) = 0;
80 
81  virtual QString statementDescription() const = 0;
82  virtual void setStatementDescription(const QString&) = 0;
83 
84  virtual void setTriggers(DtRwTriggersList*);
85  virtual DtRwTriggersList* triggers() const;
86  virtual void closeEvent(QCloseEvent*) override;
87 
88  virtual bool alwaysPopOut() const
89  {
90  return false;
91  }
92 
93  virtual void setConditionalMenu(DtVrfConditionalMenu*);
94 
95  virtual void setReadOnlyMode(bool b) = 0;
96 
98  virtual void setCancelButtonText(const QString&) = 0;
99 
101  virtual QWidget* takeOKCancelButtonCanvas(QWidget* newParent) = 0;
102 
104  virtual void giveOKCancelButtonCanvas(QWidget*) = 0;
105 
106  virtual void onCancel() = 0;
107 
108  virtual QSize sizeHint() const override;
109  virtual QSize minimumSizeHint() const override;
110 
111  boost::signals2::signal<void (DtConditionalDialogInterface*)> signal_destroyed;
112  boost::signals2::signal<void (DtConditionalDialogInterface*)> signal_dialogComplete;
113 
114  signals:
115  void unlockPlan();
116 
117  protected:
118  virtual QWidget* sizeToParent() const;
119 
120  protected:
124  };
125 }
DtVrfConditionalMenu * myConditionalMenu
Definition: conditionalDialogInterface.h:123
Class that is used as a template for task/set dialogs.
Definition: conditionalDialogInterface.h:38
virtual bool alwaysPopOut() const
Definition: conditionalDialogInterface.h:88
Definition: conditionalDialogInterface.h:45
boost::signals2::signal< void(DtConditionalDialogInterface *)> signal_destroyed
Definition: conditionalDialogInterface.h:111
boost::signals2::signal< void(DtConditionalDialogInterface *)> signal_dialogComplete
Definition: conditionalDialogInterface.h:112
boost::signals2::signal< void(const DtSimStatement &)> signal_conditionComplete
Definition: conditionalDialogInterface.h:61
boost::signals2::signal< void()> signal_conditionCancelled
Definition: conditionalDialogInterface.h:65
makVrv::DtDe & myDe
Definition: conditionalDialogInterface.h:121
DtSimCondExpr is an abstract base class representing various Conditional Expressions used by the Plan...
Definition: simCondExpr.h:53
static const Qt::WindowFlags theConditionalCreationFlags
Definition: conditionalDialogInterface.h:29
class DtSimStatement:
Definition: simStatement.h:38
DtRwTriggersList * myTriggers
Definition: conditionalDialogInterface.h:122
Definition: vrfConditionalMenu.h:24
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:72
#define DT_DLL_VRFGUITASKSETQT
Definition: vrfGuiTaskSetQt.h:22
Instances of DtRwTriggersList are lists of readable, writeable when statements (triggers) The list co...
Definition: rwTriggersList.h:21

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)