VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
eventContents.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
6 //\file DtEventContents.h
7 //\brief Contains DtEventContents class.
8 
9 #pragma once
10 
11 #if !defined(Q_MOC_RUN)
13 #include "DtEventContentsUi.hpp"
14 #include <vrvCore/DtUniqueID.h>
17 #include <vlutil/vlString.h>
18 #include <vrfutil/rwUUID.h>
19 #endif
20 
21 #include <string>
22 #include <set>
23 
24 #include <QTextCharFormat>
25 
26 class QFont;
27 class QColor;
28 class QScrollArea;
29 class QLabel;
30 class QMediaPlayer;
31 
35 class DtRwScenarioEvent;
36 
37 namespace makVrv
38 {
39  class DtDe;
40 }
41 
42 namespace makVrf
43 {
44  class DtTimeEntryWidget;
45 
46  class DT_DLL_VRFGUICOREQT DtEventContents : public QWidget
47  {
48  Q_OBJECT
49 
50  public:
52  DtEventContents(makVrv::DtDe& de, QWidget* parent);
53 
55  virtual ~DtEventContents();
56 
57  virtual bool setToEvent(DtRwScenarioEvent&, bool warnOnError = true) const;
58  virtual void setupScenarioEvent(const DtRwScenarioEvent& evt);
59 
60  virtual void setShowTab(int i, bool);
61 
62  protected:
63  virtual void deleteFontComboBoxOnAppQuit();
64 
66  void setupGui();
67 
68  virtual void setupPicture();
69  virtual void setupLinks(const DtRwScenarioEvent& evt);
70 
71  virtual QString selectFile(const QString& filters, const QString& title);
72  virtual void addLink(const DtUUID& linkTo, int predType);
73 
74  virtual void setupTextActions();
75  virtual void mergeFormatOnWordOrSelection(const QTextCharFormat &format);
76  virtual void fontChanged(const QFont &f);
77  virtual void colorChanged(const QColor &c);
78  virtual void alignmentChanged(Qt::Alignment a);
79 
80  protected slots:
81  virtual void videoAvailableChanged(bool);
82  virtual void onScaleContentsChanged();
83 
84  virtual void onLoadText();
85  virtual void onClearText();
86 
87  virtual void onChooseAudio();
88  virtual void onClearAudio();
89  virtual void setupSound();
90 
91  virtual void onChooseVideo();
92  virtual void onClearVideo();
93  virtual void setupVideo();
94 
95  virtual void onChoosePicture();
96  virtual void onClearPicture();
97 
98  virtual void onCurrentTabChanged(int);
99 
100  virtual void onLinkItemSelectionChanged();
101  virtual void onAddLink();
102  virtual void onRemoveLink();
103 
105  virtual void textBold();
106  virtual void textItalic();
107  virtual void textUnderline();
108  virtual void alignLeft();
109  virtual void alignRight();
110  virtual void alignCenter();
111  virtual void alignJustify();
112  virtual void changeTextColor();
113  virtual void textFamily(const QString&);
114  virtual void textSize(const QString&);
115  virtual void currentCharFormatChanged(const QTextCharFormat&);
116  virtual void cursorPositionChanged();
117 
118  virtual void playAudioStateChanged();
119  virtual void audioFinished();
120 
121  virtual void playVideoStateChanged();
122  virtual void videoFinished();
123  virtual void durationChanged(qint64 duration);
124  virtual void positionChanged(qint64 pos);
125  virtual void seekChanged(int value);
126 
127  public:
128  Ui_DtEventContentsUi myUiImpl;
129 
130  QMediaPlayer* mySoundObject;
131  QMediaPlayer* myAviObject;
134  QScrollArea* myPictureArea;
135 
136  protected:
137  QString myMediaPicture;
138  QString myMediaVideo;
140  std::set<DtUUID> myLinks;
141  struct TabStruct
142  {
143  QString title;
144  QWidget* widget;
145  bool visible;
146  };
147 
148  std::vector<TabStruct> myTabs;
149 
151 
153  };
154 
157  {
158  public:
161 
163  virtual ~DtEventContentsCreator();
164 
165  static DtEventContentsCreator& instance(makVrv::DtDe&);
166 
167  static void registerInstance(makVrv::DtDe&, DtEventContentsCreator*);
168 
169  DtEventContents* create(makVrv::DtDe&, QWidget*);
170  };
171 }
UUID is a unique ID wrapper class.
Definition: rwUUID.h:229
std::vector< TabStruct > myTabs
Definition: eventContents.h:148
QString title
Definition: eventContents.h:143
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
bool visible
Definition: eventContents.h:145
QLabel * myPictureHolder
Definition: eventContents.h:133
QScrollArea * myPictureArea
Definition: eventContents.h:134
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
!!!!!!!!! DtEventContentsCreator
Definition: eventContents.h:156
Contains the DtUUID class declaration.
QWidget * widget
Definition: eventContents.h:144
Widget that allows users to enter time values, including days.
Definition: timeEntryWidget.h:29
DtUUID myUniqueId
Definition: eventContents.h:139
Contains makVrv::DtVirtualBaseClass class.
QMediaPlayer * mySoundObject
Definition: eventContents.h:130
DtTimeEntryWidget * myLinkTimeDelta
Definition: eventContents.h:132
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
std::set< DtUUID > myLinks
Definition: eventContents.h:140
Ui_DtEventContentsUi myUiImpl
Definition: eventContents.h:128
QMediaPlayer * myAviObject
Definition: eventContents.h:131
Definition: eventContents.h:46
QString myMediaVideo
Definition: eventContents.h:138
The DtRwScenarioEvent class will define the contents of a scenario event and it&#39;s current status...
Definition: rwScenarioEvent.h:68
QString myMediaPicture
Definition: eventContents.h:137
Base class to provide boost signal/slot management.
makVrv::DtSignalConnectionManager myConnections
Definition: eventContents.h:152
makVrv::DtDe & myDe
Definition: eventContents.h:150
Definition: eventContents.h:141
Contains makVrv::DtUniqueID type.
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:70

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)