VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
observerConsoleLogWidget.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #if !defined(Q_MOC_RUN)
16 
18 #include <vrvCoreQt/DtPage.h>
19 #include <QColor>
20 #include <QPixmap>
21 #endif
22 
23 namespace makVrv
24 {
25  class DtDe;
26  class DtUnicode;
27 }
28 
29 class DtUUID;
30 class QTreeWidgetItem;
31 class QPushButton;
32 class QMenu;
33 class QAction;
34 
35 namespace makVrf
36 {
37  class DtObserverConsoleLogWidgetItem;
38  class DtQtObjectConsoleMessageHandler;
39 
46  : public makVrv::DtPage
47  {
48  Q_OBJECT
49 
50  public:
52  DtObserverConsoleLogWidget(makVrv::DtDe& de, QWidget* parent = 0, Qt::WindowFlags f = 0);
53 
55  virtual ~DtObserverConsoleLogWidget() override;
56 
58  virtual QIcon icon() override;
59 
62  virtual makVrv::DtQIconConfigurations qIconConfigurations() const override;
63 
65  virtual QString title() override;
66 
68  virtual const std::string& pageClassName() const override;
69 
70  virtual void setMessageQueueSize(int i);
71 
72  virtual const QPixmap& warningIcon() const
73  {
74  return myWarningIcon;
75  }
76 
77  virtual const QPixmap& questionIcon() const
78  {
79  return myQuestionIcon;
80  }
81 
82  protected:
83  virtual void slot_defaultIconListChanged();
84  virtual DtObserverConsoleLogWidgetItem* createObjectConsoleLogWidgetItem();
85 
87  virtual void activate() override;
88 
90  virtual void deactivate() override;
91 
93  void setupGui();
94 
96  virtual void slot_consoleMessageReceived(const DtUUID& id,
97  int notifyLevel, const makVrv::DtUnicode& msg);
98 
99  virtual void questionStatusChanged(makVrv::DtElementID id, int qid, int notifyLevel);
100 
101  virtual void createRightClickMenu();
102 
103  virtual void slot_askUserQuestion(makVrv::DtElementID, int question);
104 
105  virtual void addMessage(makVrv::DtUniqueID elemID, int notifyLevel, const makVrv::DtUnicode& msg);
106  virtual void entityIdAdded(std::string, makVrv::DtUniqueID elemID);
107  virtual void entityIdRemoved(std::string);
108 
109  protected slots:
110  virtual void acknowledge();
111  virtual void clear();
112  virtual void itemSelectionChanged();
113  virtual void onTetherToEntity();
114  virtual void onEntityInformation();
115  virtual void onRightClickOnItem(QTreeWidgetItem*, QMouseEvent* e, int col);
116  virtual void onSelectEntity();
117  virtual void onAnswerQuestion();
118  virtual void onAnswerAllQuestions();
119  virtual void onCopyToClipboard();
120 
121  private:
122 
125 
128 
129  protected:
130 
131  std::string myClassName;
132  QPixmap myWarningIcon;
133  QPixmap myQuestionIcon;
136 
137  typedef std::vector<std::pair<int, makVrv::DtUnicode> > WaitingVector;
138  typedef std::map<std::string, WaitingVector> WaitingForId;
139 
141 
142  public:
148 
156 
157  protected:
159  };
160 
164  {
165  public:
166 
169 
171  virtual ~DtObserverConsoleLogWidgetCreator() override;
172 
176  virtual std::string pageClassName() const override;
177 
179  virtual makVrv::DtPage* create(QWidget* parent = 0, Qt::WindowFlags f = 0) override;
180  };
181 
184  {
185  public:
187 
188  virtual ~DtObserverConsoleLogWidgetItem() override;
189 
190  virtual void updatePixmaps();
191 
192  virtual void setNormalIcon(const QPixmap& p);
193  virtual void setMessageIcon(const QPixmap& p);
194  virtual void setQuestionIcon(const QPixmap& p);
195  virtual void setNotifyLevel(int i);
196  int notifyLevel() const
197  {
198  return myNotifyLevel;
199  }
200 
201  virtual QVariant data(int col, int role) const override;
202 
203  protected:
205  QPixmap myNormalIcon;
206  QPixmap myMessageIcon;
207  QPixmap myQuestionIcon;
213  };
214 }
DtTreeWidget * myObjectLogConsole
Definition: observerConsoleLogWidget.h:143
UUID is a unique ID wrapper class.
Definition: uuid.h:59
QAction * myInformation
Definition: observerConsoleLogWidget.h:151
Definition: treeWidget.h:35
int myNotifyLevel
Definition: observerConsoleLogWidget.h:210
The creator class needed to be used to create a DtObserverConsoleLogWidget.
Definition: observerConsoleLogWidget.h:163
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
class DtObserverConsoleLogWidget:
Definition: observerConsoleLogWidget.h:45
Contains makVrv::DtPage class declaration.
makVrv::DtSignalConnectionManager myConnections
Definition: observerConsoleLogWidget.h:158
WaitingForId myWaitingForId
Definition: observerConsoleLogWidget.h:140
virtual const QPixmap & questionIcon() const
Definition: observerConsoleLogWidget.h:77
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
bool myHasAwaitingQuestion
Definition: observerConsoleLogWidget.h:209
QMenu * myRightClickMenu
Definition: observerConsoleLogWidget.h:149
The page creator. This class should be extended by all page classes.
Definition: DtPage.h:152
QAction * myAttach
Definition: observerConsoleLogWidget.h:150
QPixmap myNormalIcon
Definition: observerConsoleLogWidget.h:205
std::map< std::string, WaitingVector > WaitingForId
Definition: observerConsoleLogWidget.h:138
QAction * myAnswerQuestion
Definition: observerConsoleLogWidget.h:154
QPixmap myMessageIcon
Definition: observerConsoleLogWidget.h:206
QPixmap myQuestionIcon
Definition: observerConsoleLogWidget.h:133
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
std::string myClassName
Definition: observerConsoleLogWidget.h:131
QAction * mySelectEntity
Definition: observerConsoleLogWidget.h:152
virtual const QPixmap & warningIcon() const
Definition: observerConsoleLogWidget.h:72
int notifyLevel() const
Definition: observerConsoleLogWidget.h:196
std::vector< std::pair< int, makVrv::DtUnicode > > WaitingVector
Definition: observerConsoleLogWidget.h:137
QPushButton * myCopyToClipboardButton
Definition: observerConsoleLogWidget.h:147
Contains makVrf:DtSharedVrfVrlApplicationSettings class. This class will share settings between the d...
!!!!!!!!!!!!!!!!!!! DtObserverConsoleLogWidgetItem
Definition: observerConsoleLogWidget.h:183
QPixmap myWarningIcon
Definition: observerConsoleLogWidget.h:132
makVrv::DtDe & myDe
Definition: observerConsoleLogWidget.h:204
DtObserverConsoleLogWidget * myConsoleParent
Definition: observerConsoleLogWidget.h:211
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
QPixmap myQuestionIcon
Definition: observerConsoleLogWidget.h:207
The page is a single widget component which is viewed in a page collection.
Definition: DtPage.h:51
int myActiveQuestions
Definition: observerConsoleLogWidget.h:135
QPushButton * myAck
Definition: observerConsoleLogWidget.h:144
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
QAction * myCopyToClipboard
Definition: observerConsoleLogWidget.h:155
QPushButton * myClear
Definition: observerConsoleLogWidget.h:145
Base class to provide boost signal/slot management.
The DtQtObjectConsoleMessageHandler will be used to get colors for various levels of console messages...
Definition: qtObjectConsoleMessageHandler.h:26
QPushButton * myAnswerQuestions
Definition: observerConsoleLogWidget.h:146
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
DtQtObjectConsoleMessageHandler & myQtObjectConsoleMessageHandler
Definition: observerConsoleLogWidget.h:212
QAction * myAcknowledge
Definition: observerConsoleLogWidget.h:153
int myMessageQueueSize
Definition: observerConsoleLogWidget.h:134
A collection of icon configurations. The collection maintains flags indicating whether to generate ic...
Definition: DtQIconConfiguration.h:131
bool myHasAwaitingMessage
Definition: observerConsoleLogWidget.h:208

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)