VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simulationObjectEditorSystemCreateHandler.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2018 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 #pragma once
9 
12 #include <vrvUtil/DtUnicode.h>
13 
14 #include <QtCore/QObject>
15 #include <QtCore/QString>
16 
17 class DtString;
19 class QDialog;
20 class QLineEdit;
21 class QGridLayout;
22 class QLabel;
23 class QPushButton;
24 class QToolButton;
25 class QVBoxLayout;
26 class QHBoxLayout;
27 class QComboBox;
28 class DtFilename;
29 class QListWidget;
30 
33 {
34  Q_OBJECT
35 
36 public:
37 
40 
43 
44 public:
47  static void registerInstance(makVrv::DtDe&, DtSimulationObjectEditorSystemCreateHandler*);
48 
49  virtual void createFromExisting(const DtComponentSystemDefinition* base);
50  virtual void createFromTemplate();
51 
52  virtual void addSupportedCategory(const DtString&, const QString&);
53  virtual void clearSupportedCategories();
54  virtual const std::map<DtString, QString>& supportedCategories() const;
55  virtual bool hasSupportedCategory(const DtString&) const;
56  virtual QString categoryTitle(const DtString&) const;
57 
58 protected slots:
59  virtual void selectSystemFilename();
60  virtual void systemNameChanged();
61  virtual void systemFilenameChanged();
62  virtual void selectSystemTemplateType();
63  virtual void selectSystemTemplate();
64 
65 protected:
66  virtual QDialog* createNewSystemDialog(int row = 0);
67  virtual void createFromTemplate(const DtString& systemName, const DtFilename& systemFilename, const DtComponentSystemDefinition* systemTemplate);
68  virtual bool canAddSystem() const;
69  virtual void setSystemFilenameFromName(QString name);
70  virtual QString uniqueSystemName(const QString& name) const;
71 
72 public:
73  QVBoxLayout* myDialogLayout;
74  QGridLayout* myGridLayout;
82  QHBoxLayout* myButtonLayout;
83 
90  QListWidget* myUsesThisTemplate;
92  QListWidget* mySupportsEntityKinds;
93 
94 protected:
96  std::map<DtString, QString> mySupportedCategories;
97  std::map<DtString, std::vector<DtComponentSystemDefinition*> > mySystemsByCategory;
98 };
QLineEdit * mySystemFilename
Definition: simulationObjectEditorSystemCreateHandler.h:76
QGridLayout * myGridLayout
Definition: simulationObjectEditorSystemCreateHandler.h:74
QLineEdit * mySystemName
Definition: simulationObjectEditorSystemCreateHandler.h:78
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
QListWidget * myUsesThisTemplate
Definition: simulationObjectEditorSystemCreateHandler.h:90
QLabel * mySystemTypeLabel
Definition: simulationObjectEditorSystemCreateHandler.h:84
makVrv::DtDe & myDe
Definition: simulationObjectEditorSystemCreateHandler.h:95
QVBoxLayout * myDialogLayout
Definition: simulationObjectEditorSystemCreateHandler.h:73
QHBoxLayout * myButtonLayout
Definition: simulationObjectEditorSystemCreateHandler.h:82
QLabel * mySupportsEntityKindsLabel
Definition: simulationObjectEditorSystemCreateHandler.h:91
QLabel * mySystemFilenameLabel
Definition: simulationObjectEditorSystemCreateHandler.h:75
QPushButton * myCancelButton
Definition: simulationObjectEditorSystemCreateHandler.h:80
QComboBox * mySystemType
Definition: simulationObjectEditorSystemCreateHandler.h:85
DtComponentSystemDefinition.
Definition: componentSystemDefinition.h:25
Contains makVrv::DtVirtualBaseClass class.
Definition: simulationObjectEditorSystemCreateHandler.h:31
QLabel * mySystemNameLabel
Definition: simulationObjectEditorSystemCreateHandler.h:77
QLabel * mySystemTemplateDescription
Definition: simulationObjectEditorSystemCreateHandler.h:88
std::map< DtString, std::vector< DtComponentSystemDefinition * > > mySystemsByCategory
Definition: simulationObjectEditorSystemCreateHandler.h:97
std::map< DtString, QString > mySupportedCategories
Definition: simulationObjectEditorSystemCreateHandler.h:96
QComboBox * mySystemTemplate
Definition: simulationObjectEditorSystemCreateHandler.h:87
QLabel * myUsesThisTemplateLabel
Definition: simulationObjectEditorSystemCreateHandler.h:89
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
QPushButton * myOKButton
Definition: simulationObjectEditorSystemCreateHandler.h:79
QToolButton * mySelectSystemFilename
Definition: simulationObjectEditorSystemCreateHandler.h:81
QLabel * mySystemTemplateLabel
Definition: simulationObjectEditorSystemCreateHandler.h:86
#define DT_DLL_simulationObjectEditorimpl
This file is used to determine how to build.
Definition: simulationObjectEditorImplDefines.h:33
QListWidget * mySupportsEntityKinds
Definition: simulationObjectEditorSystemCreateHandler.h:92

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)