VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
embarkationWidget.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <vrvUtil/signalslib.h>
15 #include <vrvCore/DtUniqueID.h>
17 #include <QtWidgets/QWidget>
18 #include <matrix/vlVector.h>
19 
20 class QCheckBox;
21 class QLabel;
22 
23 namespace makVrv
24 {
25  class DtDe;
26  class DtObserver;
27  class DtOsgScribeBoxModel;
28  class DtInputDriver;
29 }
30 
31 namespace makVrf
32 {
36  {
37  Q_OBJECT
38 
39  public:
41  DtEmbarkationWidget(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
42 
43  //DTOR
44  virtual ~DtEmbarkationWidget();
45 
47  virtual void setLocation(const DtVector&);
48 
50  virtual void enable();
51  virtual void disable();
52 
54  virtual void setCheckCanEmbarkOn(bool);
55  virtual bool checkCanEmbarkOn() const;
56 
58  virtual void setIdsToIgnore(const std::vector<makVrv::DtUniqueID>&);
59  virtual const std::vector<makVrv::DtUniqueID>& idsToIgnore() const;
60 
61  virtual void setEmbarkInSlotIfAvailableVisible(bool b);
62 
65  virtual void setEmbarkedOn(makVrv::DtUniqueID);
66 
67  boost::signal<void (makVrv::DtUniqueID, bool)> signal_embarkInformationChanged;
68 
69  protected slots:
70  virtual void onEmbarkOnChanged();
71  virtual void onEmbarkInSlotIfAvailableChanged();
72 
73  protected:
75  virtual void setHighlight(makVrv::DtUniqueID, bool);
76 
77  virtual void setCurrentObserver( makVrv::DtObserver* observer );
78  virtual void onCurrentObserverChanged(makVrv::DtInputDriver* driver, makVrv::DtObserver* observer);
79  virtual void onObserverModeChanged(makVrv::DtObserver* observer, int mode);
80 
81  virtual void restoreOriginalHighlightInformation();
82 
84  virtual makVrv::DtOsgScribeBoxModel* scribeBoxModelFor(makVrv::DtUniqueID displayId);
85 
86  public:
90 
91  protected:
92  bool myEnabled;
95  std::vector<makVrv::DtUniqueID> myIdsToIgnore;
98 
101  {
103  float r, g, b, a;
104  bool visible;
105  };
106 
107  typedef std::map<makVrv::DtUniqueID,std::vector<ScribeBoxInfo> > ScribeBoxHighlightInfo;
110  };
111 
114  {
115  public:
117  virtual ~DtEmbarkationWidgetCreator();
118 
119  static DtEmbarkationWidgetCreator& instance(makVrv::DtDe&);
120  static void registerInstance(makVrv::DtDe&, DtEmbarkationWidgetCreator*);
121 
122  virtual DtEmbarkationWidget* create(QWidget* parent = 0);
123 
124  protected:
126  };
127 }

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)