VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
uiMultiSystemElement.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 
15 #include "ui_systemSelectionDialogUi.h"
17 
18 class QListWidget;
20 class QAbstractButton;
21 class QFrame;
23 
25 {
26  Q_OBJECT
27 
28 public:
29 
32 
34  virtual ~DtUiMultiSystemElement();
35 
36  virtual bool isModified() const;
37 
39 
40  virtual void setEnabled(bool);
41 
42 protected:
43  virtual void updateEnableState();
44 
45  virtual void setFromParameters(const std::vector<DtReaderWriter*>& parentRw);
46  virtual void processUiEvent(const DtUiElementEvent&);
47 
48  virtual void createControls(QWidget*);
49 
50  virtual void elementChanged();
51 
53  virtual QString uniqueDisplayName(const QString& baseName, const DtRwString* system = 0);
54 
55  virtual DtSystemSelectionDialog* createSystemSelectionDialog(QWidget* p);
56 
57  virtual void dialogDone(bool);
58 
60  virtual DtRwVariableBindings* backupFor(const DtRwVariableBindings*, DtReaderWriter* source, int systemIndex) const;
61 
62  virtual void updateLabelTitle();
63  virtual void decorateElement();
64 
66  virtual DtFilename getSystemFilename() const;
67 
68 protected slots:
69  virtual void chooseSystemToAdd();
70  virtual void addSystem(const DtSystemDefinitionInfo& systemDefInfo);
71  virtual void removeSystem();
72  virtual void onSelectionChanged();
73  virtual void openPropertyEditWindow();
74  virtual void dialogClosed();
75  virtual void onRemoveMissingSystems();
76  virtual void doneWithAdd(bool);
77  virtual void onRevertButtonClicked();
78 
79 public:
81  QListWidget* myList;
82  QAbstractButton* myAddButton;
83  QAbstractButton* myRemoveButton;
84  QAbstractButton* myPropertiesButton;
85  QAbstractButton* myLaunchOpdEditor;
86  QAbstractButton* myWarningButton;
87  QAbstractButton* myRevertButton;
88 
89 protected:
90  typedef std::map<DtReaderWriter*, std::vector<DtRwVariableBindings*> > SystemDescriptorMap;
92  typedef std::map<DtReaderWriter*, std::map<DtReaderWriter*, DtRwVariableBindings*> > BackupDescriptorMap;
96  std::vector<DtString> myMissingPlatforms;
97 
99 };
100 
102 
104 {
105  Q_OBJECT
106 public:
107  DtSystemSelectionDialog(QWidget* parent, Qt::WindowFlags f = 0);
108  virtual ~DtSystemSelectionDialog();
109 
110  virtual void setAvailableSystems(const DtSystemDefinitionInfoList& availableSystems);
111 
112 protected:
113  virtual void closeEvent(QCloseEvent*);
114  virtual void reject();
115  virtual void accept();
116 
117 protected slots:
118  virtual void selectionChanged(QListWidgetItem* current, QListWidgetItem* previous);
119  virtual void itemDoubleClicked(QListWidgetItem* item);
120 
121 signals:
122  void addSystem(const DtSystemDefinitionInfo&);
123  void done(bool);
124 
125 protected:
126  Ui::DtSystemSelectionDialogUi myUiImpl;
127 };
128 
129 
std::map< DtReaderWriter *, std::vector< DtRwVariableBindings * > > SystemDescriptorMap
Definition: uiMultiSystemElement.h:90
systemTypes
Definition: uiSystemElement.h:51
std::list< DtSystemDefinitionInfo > DtSystemDefinitionInfoList
Definition: componentSystemDatabase.h:34
QAbstractButton * myWarningButton
Definition: uiMultiSystemElement.h:86
Ui::DtSystemSelectionDialogUi myUiImpl
Definition: uiMultiSystemElement.h:126
virtual void processUiEvent(const DtUiElementEvent &)
Process ui event. Default does nothing.
Definition: uiElement.h:223
std::vector< DtString > myMissingPlatforms
Definition: uiMultiSystemElement.h:96
Definition: readerWriter.h:85
Description: Readable, Writable DtString Variable substitutions are done on this object when it is re...
Definition: rwString.h:20
QAbstractButton * myLaunchOpdEditor
Definition: uiMultiSystemElement.h:85
boost::function< DtUiElement *(makVrv::DtDe &)> CreatorFunction
Definition: uiElement.h:177
virtual void elementChanged()
virtual DtFilename getSystemFilename() const
Gets the system filename to edit.
bool myDialogDisplayed
Definition: uiMultiSystemElement.h:95
virtual void decorateElement()
Sets element decoration depending on the isModified state of the element.
QListWidget * myList
Definition: uiMultiSystemElement.h:81
Q_DECLARE_METATYPE(DtArticulatedPartEditDialogShdPtr)
ReaderWriter object that maintains a list of reader-writer variable bindings.
Definition: rwVariableBindings.h:27
Structure that holds additional information about a DtComponentSystemDefinition that is loaded by the...
Definition: componentSystemDatabase.h:28
QAbstractButton * myRemoveButton
Definition: uiMultiSystemElement.h:83
virtual void dialogDone(bool)
virtual void createControls(QWidget *parent)
If additional widgets or connections need to be made do it here. The parent is the myWidget member...
Dialog for selecting a system from the provided system list.
Definition: uiMultiSystemElement.h:103
BackupDescriptorMap myBackupList
Definition: uiMultiSystemElement.h:93
bool myCurrentlyEnabled
Definition: uiMultiSystemElement.h:94
virtual bool isModified() const
QAbstractButton * myAddButton
Definition: uiMultiSystemElement.h:82
DtSystemPropertyEditDialogShdPtr myCurrentDialog
Definition: uiMultiSystemElement.h:80
DtUiSystemElement::systemTypes mySystemType
Definition: uiMultiSystemElement.h:98
const char * source
Definition: lz4.h:442
QAbstractButton * myRevertButton
Definition: uiMultiSystemElement.h:87
virtual void setEnabled(bool)
If this item is not enabled it cannot be modified.
virtual void openPropertyEditWindow()
Descriptor for a DtComponentSystem.
Definition: componentSystemDescriptor.h:23
SystemDescriptorMap mySystemDescriptors
Definition: uiMultiSystemElement.h:91
std::map< DtReaderWriter *, std::map< DtReaderWriter *, DtRwVariableBindings * > > BackupDescriptorMap
Definition: uiMultiSystemElement.h:92
DtBoost::shared_ptr< DtSystemPropertyEditDialog > DtSystemPropertyEditDialogShdPtr
Definition: systemPropertyEditDialog.h:89
Definition: uiMultiSystemElement.h:24
QAbstractButton * myPropertiesButton
Definition: uiMultiSystemElement.h:84
The DtUiElement class is the base for which all UI elements are defined.
Definition: uiElement.h:95
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
virtual void setFromParameters(const std::vector< DtReaderWriter * > &parentRw)
Definition: uiSystemElement.h:25
virtual void updateLabelTitle()
Updates label title based on valid units.
#define DT_DLL_simulationObjectEditorimpl
This file is used to determine how to build.
Definition: simulationObjectEditorImplDefines.h:32
Base class of the ui element class chain.
Definition: uiElement.h:172

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)