VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator 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 
14 #include <vrvUtil/signalslib.h>
17 
18 #include <QtCore/QHash>
19 
20 class QHBoxLayout;
21 class QVBoxLayout;
22 class QPushButton;
23 class QComboBox;
24 class QGridLayout;
25 class QLabel;
26 
27 namespace makVrv
28 {
29  struct DtEntityState;
30 }
31 
32 namespace makVrf
33 {
34  class DtAttributeValueInfo;
35  class DtAttributesManager;
36  class DtAttributeInfo;
37 
39  {
40  Q_OBJECT
41 
42  public:
43  //CTOR
44  DtSetAttributesDialog(makVrv::DtDe& de, QWidget* parent, const Qt::WindowFlags& flags = 0);
45 
46  //DTOR
47  virtual ~DtSetAttributesDialog();
48 
49  virtual void run(const std::vector<makVrv::DtSimEntry*>&);
50 
52  virtual void setInvalid();
53  bool valid() const
54  {
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 
75  virtual void setPartOfPlan(int);
76 
77  protected:
79  virtual void setupGuiBasedOnAttributeInfo();
80 
82  virtual void setupGui();
83 
84  protected slots:
85  virtual void onCancel();
86  virtual void onApply();
87  virtual void onOk();
88 
89  public:
90  virtual QHBoxLayout* createAttributeCombo(const DtAttributeValueInfo& info);
91  virtual void createAttributeCombo(const DtAttributeValueInfo& info, int iRow, int iCol);
92 
93  virtual void modifyComboBox(const DtAttributeValueInfo& info, QComboBox* box);
94 
95  public:
96  virtual void setupInitialValues(const DtAttributesManager*,
97  const std::vector<makVrv::DtSimEntry*>&);
98  virtual void setupGui(const std::vector<makVrv::DtSimEntry*>&);
99 
100  protected:
101  virtual void slot_closeDialog();
102  virtual void slot_applyAttributes();
103 
105  virtual int value(makVrv::DtSimEntry*) const = 0;
106 
107  virtual DtEntityMapperKey entityType(makVrv::DtSimEntry*) const;
108  virtual void setAttributes(const std::vector<makVrv::DtSimEntry*>& data, int attributeValue);
109  virtual void setAttributes(const DtEntityType& type, int attributeValue);
110 
111  virtual void sendRequest() = 0;
112 
113  protected:
117 
118  public:
119  QHBoxLayout* myButtonLayout;
120  QVBoxLayout* myMasterLayout;
124  QGridLayout* myGridLayout;
125 
128 
129  protected:
130  QHash<int, QComboBox*> myComboBoxes;
131  };
132 }

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)