VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
setAttributesDialog.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #if !defined(Q_MOC_RUN)
17 #endif
18 
19 #include <QtCore/QHash>
20 
21 class QHBoxLayout;
22 class QVBoxLayout;
23 class QPushButton;
24 class QComboBox;
25 class QGridLayout;
26 class QLabel;
27 
28 namespace makVrv
29 {
30  struct DtEntityState;
31 }
32 
33 namespace makVrf
34 {
35  class DtAttributeValueInfo;
36  class DtAttributesManager;
37  class DtAttributeInfo;
38 
40  {
41  Q_OBJECT
42 
43  public:
44  //CTOR
45  DtSetAttributesDialog(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
46 
47  //DTOR
48  virtual ~DtSetAttributesDialog() override;
49 
50  virtual void run(const std::set<makVrv::DtUniqueID>&) override;
51 
53  virtual void setInvalid();
54  virtual bool valid() const override {
55  return (myInvalidLabel == 0);
56  }
57 
58  virtual void setValid();
59 
60  const QHash<int, QComboBox*>& comboBoxes() const
61  {
62  return myComboBoxes;
63  }
64 
66  virtual void clear();
67 
69  virtual void setupGui(const DtEntityType&, int appearance);
70  virtual int attributeValueFromDialog() const;
71 
72  protected:
74  virtual void setupGuiBasedOnAttributeInfo();
75 
76  virtual QWidget* contents(const std::set<makVrv::DtUniqueID>& data) override;
77 
78  protected slots:
79  virtual void onCancel() override;
80  virtual void onApply() override;
81  virtual void onOk() override;
82 
83  public:
84  virtual QHBoxLayout* createAttributeCombo(const DtAttributeValueInfo& info);
85  virtual void createAttributeCombo(const DtAttributeValueInfo& info, int iRow, int iCol);
86 
87  virtual void modifyComboBox(const DtAttributeValueInfo& info, QComboBox* box);
88 
89  public:
90  virtual void setupInitialValues(const DtAttributesManager*,
91  const std::set<makVrv::DtUniqueID>&);
92  virtual void setupGui(const std::set<makVrv::DtUniqueID>&) override;
93 
94  protected:
95  virtual void slot_closeDialog();
96  virtual void slot_applyAttributes();
97 
99  virtual int value(DtSimObjectReference) const = 0;
100 
101  virtual DtEntityMapperKey entityType(DtSimObjectReference) const;
102  virtual void setAttributes(const std::set<makVrv::DtUniqueID>& data, int attributeValue);
103  virtual void setAttributes(const DtEntityType& type, int attributeValue);
104 
105  virtual void sendRequest() override = 0;
106  virtual void changeEvent(QEvent*) override;
107 
108  protected:
112 
113  public:
114  QGridLayout* myGridLayout;
115 
118 
119  protected:
120  QHash<int, QComboBox*> myComboBoxes;
121  };
122 }
Definition: entityMapperKey.h:19
Definition: baseTaskSetDialogInterface.h:35
const QHash< int, QComboBox * > & comboBoxes() const
Definition: setAttributesDialog.h:60
int myAttributesPerRow
Definition: setAttributesDialog.h:109
Definition: setAttributesDialog.h:39
DtAttributeInfo * myAttributeInfo
Definition: setAttributesDialog.h:110
QHash< int, QComboBox * > myComboBoxes
Definition: setAttributesDialog.h:120
Contains makVrf::DtBaseTaskSetDialogInterface class. This is the interface for the dialog used by mos...
Definition: attributesManager.h:38
const DtAttributesManager * myAttributesManager
Definition: setAttributesDialog.h:111
QWidget * myAttributeCanvas
Definition: setAttributesDialog.h:116
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:76
virtual bool valid() const override
Override to return whether or not extension is valid.
Definition: setAttributesDialog.h:54
QLabel * myInvalidLabel
Definition: setAttributesDialog.h:117
#define DT_DLL_VRFGUITASKSETQT
Definition: vrfGuiTaskSetQt.h:22
Definition: attributesManager.h:101
Definition: attributesManager.h:56
QGridLayout * myGridLayout
Definition: setAttributesDialog.h:114

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)