VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
uiTargetRegion.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2018 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #pragma once
7 
10 
11 class QLabel;
12 class QLineEdit;
13 class QCheckBox;
14 class QGridLayout;
16 class DtRwLogicalSpatialFilter;
22 class QDoubleValidator;
23 class DtRwSpatialFilter;
26 
28 {
29  Q_OBJECT
30 
31 public:
32 
35 
37  virtual ~DtUiTargetRegion();
38 
40 
41 protected:
42  virtual void setFromParameters(const std::vector<DtComponentSystemDefinition*>& parentRw);
43  virtual void setFromParameters(const std::vector<DtReaderWriter*>& parentRw);
44  virtual void createControls(QWidget* parent);
45  virtual void decorateElement();
46  virtual void setupFromTargetRegion(DtRwSpatialFilterContainer*);
47  virtual void processUiEvent(const DtUiElementEvent& e);
48 
53  //
55  virtual bool setupFromSpatialFilter(DtRwSpatialFilter* filter);
56 
57  virtual bool setupFromSpatialFilter(DtRwNotSpatialFilter*, bool& wasFrustum, bool& wasRange);
58  virtual bool setupFromSpatialFilter(DtRwAndSpatialFilter*);
59  virtual bool setupFromSpatialFilter(DtRwFrustumSpatialFilter*);
60  virtual bool setupFromSpatialFilter(DtRwRangeSpatialFilter*, bool maximum = true);
61  virtual bool setupFromSpatialFilter(DtRwAltitudeSpatialFilter *, bool maximum = true);
62  virtual DtRwSpatialFilter* createFilter() const;
63 
64 protected slots:
65  virtual void recreateSpatialFilter();
66  virtual void minimumRangeUsageChanged();
67  virtual void maximumRangeUsageChanged();
68  virtual void frustumUsageChanged();
69  virtual void minimumAltitudeUsageChanged();
70  virtual void maximumAltitudeUsageChanged();
71 
72 public:
74  QGridLayout* myTargetRegionLayout;
75  QDoubleValidator* myRangeValidator;
76  QDoubleValidator* myFrustumValidator;
77 
96 
97 protected:
98  std::map<DtReaderWriter*, DtTargetingControlTable*> myInteralToExternalTargetingControlTable;
99  std::vector<DtRwSpatialFilterContainer*> myTargetRegions;
100  std::vector<DtRwSpatialFilterContainer*> myInteralToExternalTargetRegions;
101 };
Contains DtRwNotSpatialFilter, DtRwAndSpatialFilter and DtRwOrSpatialFilter; spatial filters which lo...
Definition: rwLogicalSpatialFilter.h:31
std::map< DtReaderWriter *, DtTargetingControlTable * > myInteralToExternalTargetingControlTable
Definition: uiTargetRegion.h:98
A reader-writer type which contains a single dynamically typed subclass of DtRwSpatialFilter.
Definition: rwSpatialFilterContainer.h:22
QGridLayout * myTargetRegionLayout
Definition: uiTargetRegion.h:74
QLabel * myMaximumElevationLabel
Definition: uiTargetRegion.h:94
virtual void createControls(QWidget *parent)
If additional widgets or connections need to be made do it here. The parent is the myWidget member...
virtual void setFromParameters(DtReaderWriter *parentRw)
Calls setFromParameters with std::vector of parameter.
QLineEdit * myMaximumRange
Definition: uiTargetRegion.h:81
std::vector< DtRwSpatialFilterContainer * > myInteralToExternalTargetRegions
Definition: uiTargetRegion.h:100
QCheckBox * myUseFrustum
Definition: uiTargetRegion.h:86
QLabel * myMinimumAzimuthLabel
Definition: uiTargetRegion.h:88
QDoubleValidator * myFrustumValidator
Definition: uiTargetRegion.h:76
QLabel * myMinimumElevationLabel
Definition: uiTargetRegion.h:92
virtual void processUiEvent(const DtUiElementEvent &)
Process ui event. Default does nothing.
Definition: uiElement.h:223
QCheckBox * myMaximumRangeLabel
Definition: uiTargetRegion.h:80
boost::function< DtUiElement *(makVrv::DtDe &)> CreatorFunction
Definition: uiElement.h:177
QWidget * myTargetRegionCanvas
Definition: uiTargetRegion.h:73
std::vector< DtRwSpatialFilterContainer * > myTargetRegions
Definition: uiTargetRegion.h:99
QLineEdit * myMinimumElevation
Definition: uiTargetRegion.h:93
A spatial filter subclass which stores the description filter based on a frustum area.
Definition: rwFrustumSpatialFilter.h:32
QLineEdit * myMinimumRange
Definition: uiTargetRegion.h:79
virtual void decorateElement()
Sets element decoration depending on the isModified state of the element.
DtRwSpatialFilter is an abstract base class for defining filters for sorting items into or out of a s...
Definition: rwSpatialFilter.h:38
QLabel * myMaximumAzimuthLabel
Definition: uiTargetRegion.h:90
QLineEdit * myMinimumAzimuth
Definition: uiTargetRegion.h:89
A spatial filter description that represents the logical AND operation over a group of contained spat...
Definition: rwLogicalSpatialFilter.h:82
QLineEdit * myMaximumAltitude
Definition: uiTargetRegion.h:85
A spatial filter description that represents the logical OR operation over a group of contained spati...
Definition: rwLogicalSpatialFilter.h:134
A spatial filter subclass which holds the description of a spatial filter based on altitude from the ...
Definition: rwAltitudeSpatialFilter.h:27
QCheckBox * myNegateFrustum
Definition: uiTargetRegion.h:87
QCheckBox * myMinimumAltitudeLabel
Definition: uiTargetRegion.h:82
QCheckBox * myMaximumAltitudeLabel
Definition: uiTargetRegion.h:84
Definition: uiTargetRegion.h:27
QDoubleValidator * myRangeValidator
Definition: uiTargetRegion.h:75
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
A spatial filter subclass which holds the description of a spatial filter based on range from the ori...
Definition: rwRangeSpatialFilter.h:27
QLineEdit * myMaximumAzimuth
Definition: uiTargetRegion.h:91
QLineEdit * myMinimumAltitude
Definition: uiTargetRegion.h:83
QCheckBox * myMinimumRangeLabel
Definition: uiTargetRegion.h:78
Definition: targetingControlTable.h:20
QLineEdit * myMaximumElevation
Definition: uiTargetRegion.h:95
#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)