VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
embarkationConfigurationDialog.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2013 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
8 #pragma once
9 
13 
14 #include <QtWidgets/QDialog>
15 #include <QtCore/QHash>
16 
19 class QVBoxLayout;
22 class QListWidget;
23 class QPushButton;
24 class QListWidgetItem;
25 class DtUiElement;
26 
27 namespace makVrv
28 {
29  class DtDe;
30 }
31 
33 {
34  Q_OBJECT
35 
36 public:
37  DtEmbarkationConfigurationDialog(makVrv::DtDe& de, QWidget* parent, Qt::WindowFlags flags);
39 
40  static void ConfigureEmbarkation(makVrv::DtDe&, DtUiPushButtonElement*);
41 
42  virtual void init(DtUiElement* pushButton, const DtObjectType& t);
43 
44  const DtEmbarkationInformation& embarkationInformation() const;
45 
46 public:
49  static void addEntityType(const QString&, const DtRangedObjectType&);
50  static void removeEntityType(const QString&);
51  static void removeEntityType(const DtRangedObjectType&);
52  static void clearEntityTypes();
53  virtual DtRangedObjectType objectTypeFor(QListWidgetItem*);
54  virtual QString entityTypeText(const DtRangedObjectType&);
55  static std::map<QString, DtRangedObjectType>& entityTypes();
56  static void initializeEntityTypes();
58 
59  DtUiElement* pushButton()
60  {
61  return myPushButton;
62  }
63 
64 protected:
65  virtual bool isComplex() const;
66  virtual bool isComplex(const DtEmbarkationInformation::LoadPoints&) const;
67  virtual bool isComplex(const DtEmbarkationSlotEntry&) const;
68  virtual bool isComplex(const DtLoadPoint&) const;
69 
70  virtual void createComplexEditor();
71  virtual void createBasicEditor(const DtEmbarkationInformation&);
72 
73  virtual void createBasicEntityTypesList();
74  virtual void validateBasicEmbarkationButtons();
75 
76  virtual QListWidgetItem* addSlot(const DtEmbarkationSlotEntry&);
77  virtual QListWidgetItem* addSlot(const DtRangedObjectType&);
78  virtual void removeSlot(int slot);
79 
80  virtual void reworkPointsFrom(int iIndex, DtEmbarkationInformation::LoadPoints& pnts) const;
81 
82  virtual QWidget* createLoadList(QWidget* parent, const QString& title, DtUiPositionElement*& position);
83 
84 protected slots:
85  virtual void switchToAdvanced();
86  virtual void switchToBasic();
87  virtual void selectedEntityTypeChanged();
88  virtual void addEntityType();
89  virtual void removeSelectedSlot();
90  virtual void elementDestroyed();
91 
92 public:
94  QVBoxLayout* myMainLayout;
95 
96  QWidget* myBasicCanvas;
97  QVBoxLayout* myBasicCanvasLayout;
103  QListWidget* myBasicEntityTypes;
105  std::map<QString, DtRangedObjectType> myAvailableEntityTypes;
106 
107 protected:
111 };

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)