VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
syncMatrixDialog.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #if !defined(Q_MOC_RUN)
16 #include "syncMatrixWidgetUi.hpp"
17 #include <vrfutil/rwUUID.h>
18 #endif
19 
20 #include <QtWidgets/QDialog>
21 #include <QtWidgets/QComboBox>
22 
23 namespace makVrv
24 {
25  class DtDe;
26 }
27 
28 namespace makVrf
29 {
30  class DtSyncMatrixLogic;
31  class DtSyncMatrixTreeWidget;
32 
34  {
35  Q_OBJECT
36  public:
37  DtSyncMatrixNameComboBox(QWidget* parent = Q_NULLPTR);
38  virtual ~DtSyncMatrixNameComboBox() override;
39 
40  protected slots:
41  void itemCountChanged();
42  void editingFinished();
43  signals:
44  void syncMatrixRenamed();
45 
46  protected:
47  virtual void keyPressEvent(QKeyEvent* evt) override;
48  virtual void paintEvent(QPaintEvent* evt) override;
49 
51  };
52 
54  : public QDialog
56  {
57  Q_OBJECT
58 
59  public:
60  //CTOR
61  DtSyncMatrixDialog(makVrv::DtDe& de, QWidget* parent = 0, const Qt::WindowFlags& flags = 0);
62 
63  //DTOR
64  virtual ~DtSyncMatrixDialog() override;
65 
67  virtual QWidget* widget() override {
68  return this;
69  }
70 
71  virtual DtSyncMatrixLogic* createLogic();
72  virtual void init() override;
73 
74  virtual bool hasSyncMatrixNamed(const QString& name) const override;
75  virtual bool hasSyncMatrixPhaseNamed(const QString& name) const override;
76  virtual void clearAll() override;
77  virtual void clearCurrentSyncMatrix() override;
78  virtual void clearCurrentSyncMatrixObjects() override;
79  virtual void clearCurrentSyncMatrixPlans() override;
80  virtual void blockSyncMatrixNameEvents(bool block) override;
81  virtual void addSyncMatrix(const DtUUID& syncMatrix, const QString& name) override;
82  virtual void renameSyncMatrix(const DtUUID& syncMatrix, const QString& name) override;
83  virtual void removeSyncMatrix(const DtUUID& syncMatrix) override;
84  virtual DtUUID selectedSyncMatrix() const override;
85  virtual void addingObjectsStopped() override;
86 
87  virtual void setCanAddAndRenameSyncMatrix(bool enable) override;
88 
89  virtual void resetPhases(
90  const DtUUID& currentSyncMatrix, const DtUUID& prevSyncMatrix, const DtRwSyncMatrixPhaseList& phases) override;
91  virtual void moveToPhase(
92  const QString& requestedPhase, const QString& prevPhase, bool prevPhaseCompleted) override;
93 
94  virtual QTreeWidgetItem* getTopLevelObject(const DtUUID& uuid) override;
95  virtual QTreeWidgetItem* addTopLevelObject(
96  const DtUUID& syncMatrixUUID, const DtUUID& uuid, const QString& name) override;
97  virtual QTreeWidgetItem* addChildObject(
98  QTreeWidgetItem* parent, const DtUUID& syncMatrixUUID, const DtUUID& uuid, const QString& name) override;
99  virtual void setPlanStatus(const DtUUID& uuid, const QString& phaseName, const DtRwSyncMatrixPlan* planSummary,
100  bool valid, bool activated) override;
101  virtual void setPlanStatus(QTreeWidgetItem* item, const QString& phaseName, const DtRwSyncMatrixPlan* planSummary,
102  bool valid, bool activated) override;
103  virtual void removeObject(const DtUUID& uuid) override;
104  virtual void renameObject(const DtUUID& uuid, const QString& name) override;
105 
107  virtual void select(const DtUUID&) override;
108 
109  virtual void sortObjects() override;
110 
111  virtual int showObjectsInAnotherMatrixWarning(const QString& message) override;
112  virtual void refreshDisplay() override;
113 
114  protected:
115  virtual void keyPressEvent(QKeyEvent* evt) override;
116  virtual void showEvent(QShowEvent* evt) override;
117 
118  protected slots:
119  virtual void slot_close();
120 
121  virtual void slot_addSyncMatrix();
122  virtual void slot_removeSyncMatrix();
123  virtual void slot_renameSyncMatrix();
124 
125  virtual void slot_currentSyncMatrixChanged(int index);
126 
127  virtual void slot_addPhase(int phaseIndex);
128  virtual void slot_removePhase(const QString& phaseName);
129  virtual void slot_editPhase(const QString& phaseName);
130  virtual void slot_movePhase(const QString& phaseName, int phaseIndex);
131 
132  virtual void slot_addObject();
133  virtual void slot_removeObject(const DtUUID& uuid);
134 
135  virtual void slot_setPlan(const DtUUID& uuid, const QString& phaseName);
136  virtual void slot_linkPlan(const DtUUID& uuid, const QString& phaseName, const QString& previousPhaseName);
137  virtual void slot_unlinkPlan(const DtUUID& uuid, const QString& phaseName, const QString& previousPhaseName);
138  virtual void slot_removePlan(const DtUUID& uuid, const QString& phaseName);
139  virtual void slot_copyPlan(const DtUUID& uuid, const QString& phaseName);
140  virtual void slot_pastePlan(const DtUUID& uuid, const QString& phaseName);
141  virtual void slot_activatePlan(const DtUUID& uuid, const QString& phaseName, bool activate);
142  virtual void updateDisplay() override;
143 
144  public:
145  Ui_syncMatrixWidgetUi myUiImpl;
146 
147  protected:
152 
153  typedef QMap<QString, int> PhaseColumnsWidthMap;
155  QMap<DtUUID, PhaseColumnsWidthMap> myMatrixPhaseColumnsWidthMap;
156  };
157 }
UUID is a unique ID wrapper class.
Definition: uuid.h:59
class DtRwSyncMatrixPlan:
Definition: rwSyncMatrixPlan.h:23
QString myCurrentEditableName
Definition: syncMatrixDialog.h:50
Ui_syncMatrixWidgetUi myUiImpl
Definition: syncMatrixDialog.h:145
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
QMap< DtUUID, PhaseColumnsWidthMap > myMatrixPhaseColumnsWidthMap
save phase columns width for each matrix
Definition: syncMatrixDialog.h:155
Definition: syncMatrixDialog.h:33
Contains the DtUUID class declaration.
DtSyncMatrixTreeWidget * mySyncMatrix
Definition: syncMatrixDialog.h:150
QMap< QString, int > PhaseColumnsWidthMap
Definition: syncMatrixDialog.h:153
A tree widget that represents the synchronization matrix.
Definition: syncMatrixTreeWidget.h:138
virtual QWidget * widget() override
Returns widget that represents this dialog.
Definition: syncMatrixDialog.h:67
makVrv::DtDe & myDe
Definition: syncMatrixDialog.h:148
Definition: syncMatrixLogic.h:41
Definition: syncMatrixDialog.h:53
DtSyncMatrixLogic * myLogic
Definition: syncMatrixDialog.h:149
Definition: rwSyncMatrixPhaseList.h:17
Definition: syncMatrixDialogInterface.h:31
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
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:76
DtSyncMatrixNameComboBox * mySyncMatrixName
Definition: syncMatrixDialog.h:151

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)