VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
createAndEditObjectDialogInterface.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 
10 #pragma once
11 
12 #include <vrvUtil/signalslib.h>
13 #include <vrvCore/DtUniqueID.h>
14 
16 
18 
20 #include <matrix/vlVector.h>
21 #include <QtCore/QString>
22 #include "vlpi/entityType.h"
23 
25 class QWidget;
26 
27 namespace makVrf
28 {
30  {
31 
32  public:
33 
35  DtCreationMode = 0,
36  DtEditingMode
37  };
38 
39  public:
40 
41  //DTOR
43 
45  virtual QString getName() = 0;
46 
48  virtual void setName(const QString& name) = 0;
49 
51  virtual void setNameVisible(bool flag) = 0;
52 
54  virtual void setTitle(const QString& title) = 0;
55 
57  virtual void setAllowOverlaySelection(bool flag) = 0;
58 
60  virtual void hideDialog() = 0;
61 
63  virtual void closeDialog() = 0;
64 
66  virtual void populate(const makVrv::DtUniqueID&) = 0;
67 
69  virtual void populate(const DtCreateObjectCommand* cmd) = 0;
70 
72  virtual bool blockSignals(bool) = 0;
73 
75  virtual void setForce(int) = 0;
76 
78  boost::signal<void ()> signal_dialogClosing;
79 
81  boost::signal<void ()> signal_dialogUpdated;
82 
84  boost::signal<void (const std::string&)> signal_nameChanged;
85 
87  boost::signal<void (const std::string&)> signal_labelChanged;
88 
90  boost::signal<void (const std::map<int, DtString>&)> signal_extendedLabelsChanged;
91 
94  boost::signal<void (bool)> signal_reviewMouseClicks;
95 
97  boost::signal<void (const DtVector&)> signal_locationAdded;
98 
100  boost::signal<void (const DtVector&)> signal_locationSet;
101 
103  boost::signal<void (const std::string&)> signal_overlayNameChanged;
104 
106  boost::signal<void (int)> signal_forceChanged;
107 
109  boost::signal<void (bool)> signal_publishObjectChanged;
110 
112  boost::signal<void (int)> signal_colorChanged;
113 
114  protected:
115 
117  virtual void setupGui() = 0;
118 
119  };
120 
122  {
123  public:
126  virtual DtCreateAndEditObjectDialogInterface* create(makVrv::DtDe& de, QWidget* parent,
127  DtEntityType entityType, const QString& title="", DtCreationSignalType signalCreate = DtNoCreationSignal,
129  const DtEditingType& editType=Context)
130  {
131  DtCreateAndEditObjectDialogInterface* dlg = createDialog(de, parent, title, mode);
132  initializeDialog(de, dlg, entityType, signalCreate, mode, editType);
133 
134  return dlg;
135  }
136 
137  virtual DtCreateAndEditObjectDialogInterface* createDialog(makVrv::DtDe& de, QWidget* parent, const QString& title,
139 
140  virtual void initializeDialog(makVrv::DtDe& de, DtCreateAndEditObjectDialogInterface*, const DtEntityType& entityType,
142  const DtEditingType& editType) = 0;
143  };
144 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)