VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
uiApplicableTargets.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 QComboBox;
12 class QGridLayout;
13 class QLabel;
14 class QLineEdit;
15 class QCheckBox;
16 class QPushButton;
17 class QHBoxLayout;
18 class QIntValidator;
19 class QVBoxLayout;
20 class QTreeWidget;
21 class DtRwEntityTypeList;
22 class QTreeWidgetItem;
26 
27 namespace makVrf
28 {
29  class DtEntityMapperKey;
30 }
31 
33 {
34  Q_OBJECT
35 
36 protected:
37  enum AddFlag
38  {
39  BeginningOfList = 0x00000001,
40  EndOfList = 0x00000002,
41  AddBefore = 0x00000004,
42  AddAfter = 0x00000008
43  };
44 
45 public:
46 
49 
51  virtual ~DtUiApplicableTargets();
52 
54 
55 protected:
56  virtual void setFromParameters(const std::vector<DtComponentSystemDefinition*>& parentRw);
57  virtual void setFromParameters(const std::vector<DtReaderWriter*>& parentRw);
58  virtual void createControls(QWidget* parent);
59  virtual void createTargetPriorities();
60 
61  virtual void addEntriesToList(const DtAmmunitionPrioritiesList&);
62  virtual void decorateElement();
63 
64  virtual DtEntityType targetTypeFrom(QTreeWidgetItem*) const;
65 
66  virtual QTreeWidgetItem* createAmmunitionItem(DtAmmunitionPrioritiesListEntry*);
67  virtual QComboBox* createComboBox(QTreeWidgetItem* lei);
68 
69  virtual void processUiEvent(const DtUiElementEvent&);
70  virtual void addAmmunition(const DtString&);
71  virtual void removeAmmunition(const DtString&);
72  virtual DtAmmunitionPrioritiesListEntry* ammunitionPriorityListEntryFrom(QTreeWidgetItem*) const;
73 
74  virtual QTreeWidgetItem* addNewTargetPriority(const DtEntityType& newType, AddFlag flag, const DtEntityType& currentType = DtEntityType());
75  virtual void removeTargetType(const DtEntityType& matchType);
76  virtual void addApplicableTargets();
77  virtual void addAllTargetPrioritiesForAmmunition(const DtString&);
78  virtual void replacePriority(const DtString& current, const DtString& replace);
79 
80 protected slots:
81  virtual void targetPrioritySelectionChanged();
82  virtual void moveTargetDown();
83  virtual void moveTargetUp();
84  virtual void removeTargetPriority();
85  virtual void editTargetPriority();
86  virtual void changeTargetPriorityType(const makVrf::DtEntityMapperKey&);
87  virtual void addTargetPriority();
88  virtual void preferredAmmunitionChanged();
89 
90 public:
101  std::map<QTreeWidgetItem*, QComboBox*> myPreferredAmmunition;
102 
103 protected:
104  std::map<DtReaderWriter*, DtTargetingControlTable*> myInteralToExternalTargetingControlTable;
105 };
std::map< DtReaderWriter *, DtTargetingControlTable * > myInteralToExternalTargetingControlTable
Definition: uiApplicableTargets.h:104
Definition: entityMapperKey.h:23
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.
QVBoxLayout * myTargetPrioritiesLayout
Definition: uiApplicableTargets.h:92
virtual void processUiEvent(const DtUiElementEvent &)
Process ui event. Default does nothing.
Definition: uiElement.h:223
QTreeWidget * myTargetPriorities
Definition: uiApplicableTargets.h:100
class DtRwEntityTypeList:
Definition: rwEntityTypeList.h:22
QPushButton * myMoveTargetUp
Definition: uiApplicableTargets.h:98
QPushButton * myAddTargetPriorityButton
Definition: uiApplicableTargets.h:95
boost::function< DtUiElement *(makVrv::DtDe &)> CreatorFunction
Definition: uiElement.h:177
QWidget * myTargetPrioritiesCanvas
Definition: uiApplicableTargets.h:91
virtual void decorateElement()
Sets element decoration depending on the isModified state of the element.
QLabel * myTargetPrioritiesLabel
Definition: uiApplicableTargets.h:94
QHBoxLayout * myTargetPriorityButtonLayout
Definition: uiApplicableTargets.h:93
QPushButton * myRemoveTargetPriorityButton
Definition: uiApplicableTargets.h:96
QPushButton * myMoveTargetDown
Definition: uiApplicableTargets.h:99
Definition: uiApplicableTargets.h:32
Readable-writable class holding all parameters to configure the DtTargetingControlTable.
Definition: ammunitionPrioritiesList.h:26
std::map< QTreeWidgetItem *, QComboBox * > myPreferredAmmunition
Definition: uiApplicableTargets.h:101
The DtUiElement class is the base for which all UI elements are defined.
Definition: uiElement.h:95
Definition: ammunitionPrioritiesListEntry.h:26
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
QPushButton * myEditTargetPriorityButton
Definition: uiApplicableTargets.h:97
Definition: targetingControlTable.h:20
#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
AddFlag
Definition: uiApplicableTargets.h:37

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)