11 #if !defined(Q_MOC_RUN)
23 #include <QtCore/QObject>
24 #include <QtCore/QVariant>
25 #include <QtWidgets/QPushButton>
26 #include <QtWidgets/QBoxLayout>
27 #include <boost/function.hpp>
28 #include <boost/bind.hpp>
100 DtUiElementTypeUnknown = 0,
101 DtUiElementItemExpand = 1,
102 DtUiElementItemCollapse = 2,
103 DtUiElementHierarchySelectionChanged = 3,
104 DtUiElementAddedToHierarchy = 5,
105 DtUiElementRemovedFromHierarchy = 6,
106 DtUiElementMovedInHierarchy = 7,
107 DtUiElementReplacedInHierarchy = 8,
108 DtUiElementForceChanged = 9,
109 DtUiElementPositionModified = 12,
110 DtUiElementPositionDestroyed = 13,
111 DtUiBoundingVolumeModified = 14,
112 DtUiCanvasInitialized = 15,
113 DtUiCreateController = 19,
115 DtUiElementHierarchyChanged = 21,
116 DtUiEnterEditMode = 22,
117 DtUiLeaveEditMode = 23,
118 DtUiSupportPointsModified = 24,
119 DtUiPreSaveEvent = 25,
120 DtSystemsRemoved = 26,
121 DtUiSuportPointsCalculated = 27,
122 DtUiBoundingVolumeCalculated = 28,
123 DtUiCalculateBoundingVolume = 29,
124 DtUiCalculateSupportPoints = 30,
125 DtUiMarkingChanged = 31,
126 DtUiChangeTrailEffect = 32,
127 DtUiStartSimulation = 33,
128 DtUiSetSpeedPercentage = 34,
129 DtUiSystemParameterDataChanged = 35,
131 DtUiDetonationPowerChanged = 37,
132 DtUiDamageTableChanged = 38,
133 DtUiHitTableChanged = 39,
134 DtUiElementDataChanged = 40,
135 DtUiAmmunitionChanged = 41,
137 DtUiIconListsChanged = 43,
138 DtUiSystemEvent = 44,
139 DtArtPartUpdated = 45,
140 DtArtPartAssociated = 46,
153 void setValue(
const QVariant& val) { myValue = val; };
154 const QVariant&
value()
const {
return myValue; };
189 virtual bool blockSignals(
bool);
194 virtual void init(QWidget* widget, QWidget* label,
const std::vector<DtReaderWriter*>& originalData,
195 const std::vector<DtReaderWriter*>& backupData,
201 virtual DtString displayUnits()
const;
202 virtual void setDisplayUnits(
const DtString& units);
204 virtual void setLabelText(
const QString&);
206 virtual DtString sourceUnits()
const;
207 virtual void setSourceUnits(
const DtString& units);
220 virtual void connectedTo(
QObject*);
230 virtual DtString uniqueName()
const;
233 virtual bool supportsSystems()
const;
236 virtual const DtString& platformType()
const;
239 virtual void setPlatformType(
const DtString&);
242 virtual void setObjectTypes(
const std::vector<DtObjectType>&);
245 virtual void aboutToShow();
247 const std::vector<DtReaderWriter*>&
values()
const {
return myValues; };
248 const std::vector<DtReaderWriter*>&
backupValues()
const {
return myBackupValues; };
252 static void registerUiTypes();
254 static bool hasCreator(
const DtString&);
259 virtual bool isModified()
const;
263 virtual bool isValid()
const;
267 virtual void decorateElement();
274 virtual void setFromParameters(
const std::vector<DtComponentSystemDefinition*>&);
276 virtual void setFromParameters(
const std::vector<DtReaderWriter*>& parentRw);
281 virtual bool restoreFromBackup();
284 QHBoxLayout* findLayoutThatHas(QWidget* w, QBoxLayout* layout);
288 QBoxLayout* findUsableLayoutFor(QWidget* w);
297 return myObjectTypes;
300 const std::vector<DtComponentSystemDefinition*>&
systems()
const
307 virtual bool allValuesTheSame()
const;
309 static QString mixedText();
310 static void setMixedText(
const QString&);
314 virtual bool isMixedValue()
const;
317 virtual void setEnabled(
bool);
318 virtual bool enabled()
const;
320 virtual void setControllingCheckBox(
QCheckBox*);
323 return myControllingCheckBox;
327 virtual void populateParentValues(std::string elementName);
330 virtual void toggleDisplayed(
bool display);
333 virtual void elementChanged();
338 virtual void enableIfChecked();
343 virtual void disableIfChecked();
351 virtual double sourceToDisplayUnits(
double)
const;
352 virtual double displayToSourceUnits(
double)
const;
354 virtual QString units()
const;
357 virtual void updateLabelTitle();
360 virtual QString labelTitle()
const;
363 virtual void createControls(QWidget* parent);
Instances of DtVrfObjectParameters are the readable/writeable objects that contain the information ne...
Definition: vrfObjectParameters.h:59
DtReaderWriter * myParentValue
Definition: uiElement.h:380
const std::vector< DtReaderWriter * > & backupValues() const
Definition: uiElement.h:248
QVariant myValue
Definition: uiElement.h:158
QWidget * myLabel
Definition: uiElement.h:367
DtUnit mySource
Definition: uiElement.h:384
const std::vector< DtObjectType > & objectTypes() const
Definition: uiElement.h:295
bool myIsNew
Definition: uiElement.h:382
const QVariant & value() const
Definition: uiElement.h:154
Definition: readerWriterRegistryData.h:25
DtUiElementEventTypes
Definition: uiElement.h:98
DtElementChangedCallbackFcn myElementChangedCallbackFunction
Definition: uiElement.h:383
int myUniqueId
Definition: uiElement.h:397
static UiElementFactoryMap & elementFactory()
Definition: uiElement.h:290
virtual void processUiEvent(const DtUiElementEvent &)
Process ui event. Default does nothing.
Definition: uiElement.h:223
Definition: uiForParameter.h:27
Definition: readerWriter.h:85
DtString mySourceUnits
Definition: uiElement.h:373
QCheckBox * controllingCheckBox()
Definition: uiElement.h:321
boost::function< DtUiElement *(makVrv::DtDe &)> CreatorFunction
Definition: uiElement.h:177
DtUiElementEvent(const DtUiElementEvent &orig)
Definition: uiElement.h:146
Definition: unitConversions.h:314
QCheckBox * myControllingCheckBox
Definition: uiElement.h:398
DtUiElementEventTypes myType
Definition: uiElement.h:159
DtUiElement * myOwner
Definition: uiElement.h:154
Definition: objectType.h:27
DtComponentSystemDefinition.
Definition: componentSystemDefinition.h:25
QWidget * myWidget
Definition: uiElement.h:366
Description: A model is a set of items that defines a model to create in the back-end from the front-...
Definition: modelSetEntry.h:24
std::map< std::string, CreatorFunction > UiElementFactoryMap
Definition: uiElement.h:178
binderNoArgs< _Fn > bind(const _Fn &_Func, const _Ty &_Left)
Definition: DtSTLUtilities.h:76
boost::function< void(DtUiElement *)> DtElementChangedCallbackFcn
Definition: uiElement.h:41
virtual void objectParametersModified()
This method is called any time that any of the parameters for the object are modified.
Definition: uiElement.h:217
const std::vector< DtComponentSystemDefinition * > & systems() const
Definition: uiElement.h:300
const DtComponentSystemDefinition * mySystemDefinition
Definition: uiElement.h:392
std::vector< DtObjectType > myObjectTypes
Definition: uiElement.h:389
DtString myPlatformType
Definition: uiElement.h:388
Base class for RW objects that describe a system parameter.
Definition: systemParameterData.h:30
DtUiElementEvent & operator=(const DtUiElementEvent &rhs)
Definition: uiElement.h:148
DtUiElementEventTypes type() const
Definition: uiElement.h:151
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
DtUnit myDestination
Definition: uiElement.h:385
std::vector< DtReaderWriter * > myValues
Assumes 1 - 1 order that original and backup are same index in lists.
Definition: uiElement.h:376
static void theNullFunction(DtUiElement *)
bool myEnabled
Definition: uiElement.h:394
The DtUiElement class is the base for which all UI elements are defined.
Definition: uiElement.h:95
QPushButton * myRevertToParentButton
Definition: uiElement.h:400
std::vector< DtComponentSystemDefinition * > mySystems
Definition: uiElement.h:390
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
std::vector< DtReaderWriter * > myBackupValues
Definition: uiElement.h:377
void setType(DtUiElementEventTypes t)
Definition: uiElement.h:152
std::vector< QObject * > myConnectedTo
Definition: uiElement.h:396
static UiElementFactoryMap theFactory
Definition: uiElement.h:370
const std::vector< DtReaderWriter * > & values() const
Definition: uiElement.h:247
void setValue(const QVariant &val)
Definition: uiElement.h:153
DtUiElement * owner() const
Definition: uiElement.h:150
DtUiElementEvent(DtUiElement *owner=0, DtUiElementEventTypes type=DtUiElementTypeUnknown)
Definition: uiElement.h:145
#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
DtString myDisplayUnits
Definition: uiElement.h:372
makVrv::DtDe & myDe
Definition: uiElement.h:386