VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
doctrinesDialog.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #if !defined(Q_MOC_RUN)
14 #include <vrvUtil/signalslib.h>
20 #endif
21 
22 #include <QDialog>
23 
24 namespace makVrv
25 {
26  class DtDe;
27 }
28 
29 class QPushButton;
30 class QLabel;
31 class QHBoxLayout;
32 class QGridLayout;
33 class QVBoxLayout;
34 class QComboBox;
35 class QFrame;
36 
37 namespace makVrf
38 {
39  class DtDoctrinesDialog;
40 
43  {
44  public:
47 
50 
51  protected:
54  virtual void dragEnterEvent(QDragEnterEvent* event);
55 
57  virtual void dragMoveEvent(QDragMoveEvent* event);
58 
60  virtual bool dropMimeData(QTreeWidgetItem* parent, int index, const QMimeData* mimeData, Qt::DropAction action);
61 
62  protected:
64  };
65 
66  #define DtDoctineTaskDragType "text/x-vrlDoctrinesDraggingType@Type"
67 
70  {
71  public:
74 
76  virtual ~DtDoctrinesTreeWidget();
77 
79  virtual void setupDoctrines();
80 
82  virtual bool selectedItemIsDoctrine() const;
83 
85  virtual QTreeWidgetItem* selectedDoctrine() const;
86 
88  virtual void scriptModified(const std::string& scriptId, bool modified);
89 
91  virtual void addScriptedTask(const std::string& scriptId);
92 
93  protected:
94 
96  virtual QMimeData* mimeData(const QList<QTreeWidgetItem*> list) const;
97 
100  virtual void dragEnterEvent(QDragEnterEvent* event);
101 
103  virtual void dragMoveEvent(QDragMoveEvent* event);
104 
106  virtual bool dropMimeData(QTreeWidgetItem* parent, int index, const QMimeData* mimeData, Qt::DropAction action);
107 
108  protected:
109  typedef std::map<std::string, QTreeWidgetItem*> Doctrines;
111 
113  };
114 
117  {
118  Q_OBJECT
119 
120  public:
122  DtDoctrinesDialog(makVrv::DtDe&, QWidget* parent, const Qt::WindowFlags& flags = 0);
123 
125  virtual ~DtDoctrinesDialog();
126 
127  virtual void removeFromDoctrine(const std::set<std::string>& scriptIds, const std::string& doctrine);
128  virtual void addToDoctrine(const std::set<std::string>& scriptIds, const std::string& doctrine);
129 
130  protected:
132  virtual void slot_receivedScriptedTasks();
133 
134  virtual void slot_onReceivedDoctrines();
135 
136  virtual void scriptedTaskModified(const std::string& s, bool b);
137  virtual void addScriptedTask(const std::string& s);
138  virtual void filterByScriptEngines();
139  virtual void setupAssignedDoctrines();
140 
141  virtual void setupDoctrinesForForceCombo(QComboBox*);
142  virtual void setAssignedDoctrine(int, std::string);
143 
144  public slots:
145  virtual void onAddDoctrine();
146  virtual void onRenameDoctrine();
147  virtual void onRemoveDoctrine();
148  virtual void onDoctrineSelectionChanged();
149  virtual void onScriptedTaskSelectionChanged();
150  virtual void onRemoveFromDoctrine();
151  virtual void onAddToDoctrine();
152 
153  protected slots:
154  virtual void changeAssignedDoctrine();
155 
156  public:
165 
166  QFrame* mySeparator1;
167  QFrame* mySeparator2;
168  QFrame* mySeparator3;
169 
171  QWidget* myMoveWidget;
172  QVBoxLayout* myMoveLayout;
175 
178 
179  QGridLayout* myDataLayout;
180 
181  QHBoxLayout* myButtonLayout;
182 
185 
186  protected:
189  };
190 
193  {
194  public:
196  virtual ~DtDoctrinesDialogCreator();
197 
198  static DtDoctrinesDialogCreator& instance(makVrv::DtDe&);
199  static void registerInstance(makVrv::DtDe&, DtDoctrinesDialogCreator*);
200 
201  virtual DtDoctrinesDialog* create(makVrv::DtDe&, QWidget* parent, const Qt::WindowFlags& f = 0);
202  };
203 }
Virtual base class.
Definition: DtVirtualBaseClass.h:19
DtDoctrinesScriptedTaskTreeWidget * myScriptedTasks
Definition: doctrinesDialog.h:176
QFrame * mySeparator3
Definition: doctrinesDialog.h:168
DtDoctrinesTreeWidget * myDoctrines
Definition: doctrinesDialog.h:157
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
This class manages scripted tasks and allows for drag/drop of task for folder manipulation.
Definition: scriptedTasksMetaDataDialog.h:51
QPushButton * myRemoveDoctrine
Definition: doctrinesDialog.h:161
DtDoctrinesDialog * myParent
Definition: doctrinesDialog.h:112
Override of scripted tasks tree widget to handle drag/drop events.
Definition: doctrinesDialog.h:42
Dialog that allows for drag/drop from doctrines panel.
Definition: doctrinesDialog.h:69
QLabel * myDoctrinesLabel
Definition: doctrinesDialog.h:163
QPushButton * myAddDoctrine
Definition: doctrinesDialog.h:160
QPushButton * myMoveLeftButton
Definition: doctrinesDialog.h:173
Dialog that allows for the creation, removal, renaming and assignment of doctrines to scripted or rea...
Definition: doctrinesDialog.h:116
QFrame * mySeparator1
Definition: doctrinesDialog.h:166
QPushButton * myRenameDoctrine
Definition: doctrinesDialog.h:162
Contains makVrv::DtVirtualBaseClass class.
QLabel * myAssignDoctrinesLabel
Definition: doctrinesDialog.h:183
QGridLayout * myDataLayout
Definition: doctrinesDialog.h:179
makVrv::DtDe & myDe
Definition: doctrinesDialog.h:187
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Creator class. Register a subclass of this to return your own version of the DtDoctrinesDialog.
Definition: doctrinesDialog.h:192
QHBoxLayout * myButtonLayout
Definition: doctrinesDialog.h:181
QPushButton * myDoneButton
Definition: doctrinesDialog.h:170
QWidget * myMoveWidget
Definition: doctrinesDialog.h:171
QFrame * mySeparator2
Definition: doctrinesDialog.h:167
std::map< std::string, QTreeWidgetItem * > Doctrines
Definition: doctrinesDialog.h:109
QLabel * myDescription
Definition: doctrinesDialog.h:164
Base class to provide boost signal/slot management.
QWidget * myDoctrinesButtonsWidget
Definition: doctrinesDialog.h:158
DtDoctrinesDialog * myParent
Definition: doctrinesDialog.h:63
Doctrines myDoctrineItems
Definition: doctrinesDialog.h:110
QPushButton * myMoveRightButton
Definition: doctrinesDialog.h:174
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
QHBoxLayout * myDoctrinesButtonsLayout
Definition: doctrinesDialog.h:159
QTreeWidget * myAssignDoctrines
Definition: doctrinesDialog.h:184
QVBoxLayout * myMoveLayout
Definition: doctrinesDialog.h:172
QLabel * myScriptedTasksLabel
Definition: doctrinesDialog.h:177
makVrv::DtSignalConnectionManager myConnectionManager
Definition: doctrinesDialog.h:188

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)