VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfOrbatPageLogic.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
7 
9 
10 #pragma once
11 
14 #include <boost/signals2.hpp>
15 
16 #include <map>
17 
18 #include <QtCore/QVariant>
19 
20 namespace makVrv
21 {
22  class DtDe;
23  class DtSimEntry;
24 };
25 
26 namespace makVrf
27 {
28  class DtVrfBackendState;
29 
31  {
32  public:
35  virtual ~DtVrfOrbatPageLogic();
36 
37  virtual void initialize();
38 
40  virtual void setShowInOrbatOnly(bool);
41  bool showInOrbatOnly() const;
42 
43  boost::signals2::signal<void (makVrv::DtUniqueID)> signal_orbatNodeReplaced;
44  boost::signals2::signal<void (makVrv::DtUniqueID)> signal_createdNodeReplaced;
45 
46  protected:
47  virtual bool performOperationsImmediately() const;
48  virtual void checkFogOfWar(DtObjectListViewItem* item, int oldForce, int newForce);
49 
50  virtual void activate();
51  virtual void slot_backendDiscovered(const DtVrfBackendState& s);
52 
53  virtual void sessionUpdated(int);
54 
55  virtual bool organizeByTopLevelNodes() const;
56 
58  virtual void itemPositioned(DtObjectListViewItem* item);
59 
60  virtual void createdHierarchyItem(DtObjectListViewItem* item);
61 
62  virtual bool isValidState(makVrv::DtUniqueID id) const;
63 
64  virtual void hierarchyItemsModified(const makVrv::DtElementAttributeManager::EntryAttributesList& l);
65  virtual bool positionNodeInHierarchy(makVrv::DtElementIDHierarchyNode*, bool force = false);
66  virtual void removeNode(makVrv::DtElementID id);
68  virtual bool replaceOrbatNodeWithCreatedNode(makVrv::DtUniqueID orbatNode, makVrv::DtUniqueID createdNode);
69  virtual void replaceCreatedNodeWithOrbatNode(makVrv::DtUniqueID createdNode, makVrv::DtUniqueID orbatNode);
70  virtual void slot_onTick();
71 
72  virtual void deferredItemSelectionChanged();
73 
75  virtual void resorted();
76  virtual void addSortingFunctions(DtObjectListViewItem* item);
77 
78  virtual void slot_itemDoubleClicked(QTreeWidgetItem*);
79 
82  virtual DtObjectListViewItem* itemFor(makVrv::DtElementIDHierarchyNode* node) const override;
83 
84  protected:
85  std::map<makVrv::DtUniqueID, makVrv::DtUniqueID> myAwaitingReplacement;
87  };
88 }
Definition: vrfBackendState.h:69
std::map< makVrv::DtUniqueID, makVrv::DtUniqueID > myAwaitingReplacement
Definition: vrfOrbatPageLogic.h:85
#define DT_DLL_VRFGUICOREQT
Definition: vrfGuiCoreQt.h:26
Definition: vrfOrbatPageLogic.h:30
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
Definition: vrfEchelonHierarchyPageLogic.h:29
boost::signals2::signal< void(makVrv::DtUniqueID)> signal_createdNodeReplaced
ID is the orbat id.
Definition: vrfOrbatPageLogic.h:44
bool myShowInOrbatOnly
Definition: vrfOrbatPageLogic.h:86
Definition: vrfHierarchyPage.h:111
std::vector< EntryAttributes > EntryAttributesList
Define the type used to signal changes to one or more attributes for one or more elements.
Definition: DtElementAttributeManager.h:44
The DtElementIDHierarchyNode class will contain information about an element, its children and its pa...
Definition: DtElementIDHierarchy.h:33
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
boost::signals2::signal< void(makVrv::DtUniqueID)> signal_orbatNodeReplaced
Definition: vrfOrbatPageLogic.h:43
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:72
This tree widget item can be used in any tree that wants to display an icon next to the name of an ob...
Definition: objectListViewItem.h:55

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)