VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
basePlanWidget.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #if !defined(Q_MOC_RUN)
13 #include "planWidgetUi.hpp"
16 
19 #include <vrvCore/DtMenuPath.h>
23 #endif
24 
25 #include <QtWidgets/QDialog>
26 
28 //
30 
31 class QMenu;
32 class QTabBar;
33 class QAction;
34 class QDialog;
35 class QTreeWidget;
36 
37 namespace makVrv
38 {
39  class DtDe;
40 }
41 
42 namespace makVrf
43 {
44  class DtBasePlanWidgetLogic;
45 
48  {
49  Q_OBJECT
50 
51  public:
52 
54  DtBasePlanWidget(makVrv::DtDe&, QWidget* parent = NULL, const Qt::WindowFlags& flags = 0);
55 
57  virtual ~DtBasePlanWidget();
58 
60  virtual bool init(const makVrv::DtSelectionManager::IdSet&);
61 
62  virtual DtPlanStatementItem* currentItem() override;
63 
64  virtual bool deletePending() const;
65 
67  virtual void setAllDisabledButCancel();
68 
70  virtual void setAllEnabled();
71 
72  virtual void setClosingBecauseObjectRemoved(bool);
73 
74  virtual void makeFrontWindow();
75 
76  virtual makVrv::DtSelectionManager::IdSet planObjects() const;
77 
79  virtual void setCanBecomeActive(bool);
80  virtual bool canBecomeActive() const;
81 
82  virtual void setPlanSummary(const QString& planSummary);
83  virtual QString planSummary();
84 
85  virtual void updatePlanLockState();
86 
87  protected:
88  virtual void setupGui();
89 
90  virtual void createLogic() = 0;
91  virtual void slot_dialogsInProgress(int);
92 
93  protected slots:
94  virtual void onItemSelectionChanged();
95  virtual void rightClickToBeShown(bool& canShow);
96  virtual void onAboutToShowPlanMenu();
97  virtual void lockPlan();
98  virtual void unlockPlan();
99 
101  virtual void onPrintPlan();
102 
104  virtual void onCopyPlan();
105 
107  virtual void onCopySelectedPlanStatement();
108 
110  virtual void accept();
111 
113  virtual void cancel();
114 
115  virtual void onCleanupTriggers();
116 
117  protected:
118  virtual void updateTooltipForLockedText(bool pl, QWidget*);
119  virtual DtPlanTreeWidget* planListBox();
120 
122  virtual void selectStatement(int, DtPlanListBoxItem* planItem = nullptr, bool andMakeCurrent = false) override;
123  virtual bool createMenus();
124 
125  virtual QWidget* widget();
126 
127  virtual QPushButton* applyButton();
128  virtual QAction* restartAction();
129  virtual QPushButton* okButton();
130  virtual QToolButton* editButton();
131  virtual QPushButton* cancelButton();
132  virtual QToolButton* deleteButton();
133  virtual QAction* abandonPlanAction();
134  virtual QToolButton* replacePlanButton();
135  virtual QAction* printAction();
136  virtual QToolButton* copyPlanButton();
137 
138  virtual QSize minimumSizeHint() const;
139 
140  virtual void setPlanStatus(const QString&);
141  virtual void keyPressEvent(QKeyEvent *e);
142  virtual bool eventFilter(QObject *o, QEvent *e);
143  virtual void setMarkingTextTitle(const QString&);
144  virtual const QString& markingTextTitle() const;
145 
146  virtual void closeWidget();
147 
148  virtual void refreshDisplay();
149 
150  virtual void createPlanMenu();
151  virtual void closeEvent(QCloseEvent*);
152 
153  public:
154  Ui_PlanWidgetUi myUiImpl;
155  QMenuBar* myMenuBar;
157 
164 
165  protected:
167 
169 
171 
179 
180  private:
182  DtBasePlanWidget(const DtBasePlanWidget& orig);
183 
185  DtBasePlanWidget& operator=(const DtBasePlanWidget& rhs);
186  };
187 }
bool myFirstDialogSeen
Definition: basePlanWidget.h:176
bool myCanBecomeActive
Definition: basePlanWidget.h:177
QMenu * myPlanMenu
Definition: basePlanWidget.h:158
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
Definition: planStatementItem.h:35
Contains makVrv:DtSelectionManager class.
Ui_PlanWidgetUi myUiImpl
Definition: basePlanWidget.h:154
This class will support the listing of plan items and the dragging/dropping thereof.
Definition: planTreeWidget.h:57
makVrv::DtDe & myDe
Definition: basePlanWidget.h:166
bool myWasActiveWindow
Definition: basePlanWidget.h:174
QAction * myAbandonPlanAction
Definition: basePlanWidget.h:161
Definition: planWidgetInterface.h:39
Contains makVrv::DtMenuManager class.
QMenuBar * myMenuBar
Definition: basePlanWidget.h:155
QString myMarkingTextTitle
Definition: basePlanWidget.h:173
Contains makVrv::DtQtMenuAssembler class.
QAction * myRestartPlanAction
Definition: basePlanWidget.h:160
DtBasePlanWidgetLogic * myLogic
Definition: basePlanWidget.h:168
Contains makVrv::DtMenuPath class.
QAction * myPrintAction
Definition: basePlanWidget.h:159
This item will be the root node for a plan item – this will create children of type DtPlanStatementIt...
Definition: planListBoxItem.h:32
bool myNeedsEventProcessorUnblock
Definition: basePlanWidget.h:178
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
QAction * myCleanupTriggersAction
Definition: basePlanWidget.h:163
bool myWasActiveWindowWhenDisabled
Definition: basePlanWidget.h:175
Contains makVrv::DtMenuConfiguration class.
Base class to provide boost signal/slot management.
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
bool myDeletePending
Definition: basePlanWidget.h:170
QAction * myCopyPlanAction
Definition: basePlanWidget.h:162
makVrv::DtSignalConnectionManager myConnections
Definition: basePlanWidget.h:172
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
DtPlanTreeWidget * myPlanListBox
Definition: basePlanWidget.h:156
Definition: basePlanWidgetLogic.h:46
Definition: basePlanWidget.h:46
std::set< DtUniqueID > IdSet
Definition: DtSelectionManager.h:32

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)