VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfGuiSymbolMapper.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
15 
17 #include <vrvUtil/signalslib.h>
18 #include <vrvCore/DtEntityState.h>
19 #include <vrvVrl/DtForceManager.h>
21 
22 #include <string>
23 #include <vector>
24 
25 #include <QtGui/QPixmap>
26 #include <QtGui/QImage>
27 #include <QtCore/QCache>
28 #include <QtCore/QString>
29 
30 #include <boost/unordered_map.hpp>
31 
32 class DtUUID;
33 
34 namespace makVrv
35 {
36  class DtDe;
37  class DtVisualizerDefinitionSet;
38  class DtVisualizerDefinition;
39 }
40 
41 namespace makVrf
42 {
43  class DtEntityMapperKey;
44 
47  {
48  public:
50  virtual ~DtVrfGuiSymbolMapper();
51 
53  static DtVrfGuiSymbolMapper& instance(makVrv::DtDe& de);
54 
56  virtual void clear();
57 
59  virtual void clearIcons(const DtEntityMapperKey&);
60 
64  virtual QPixmap getIcon(const DtEntityMapperKey&, bool destroyed = false, int pointSize = 48, bool sizeToFont = false,
65  const makVrv::DtVrlinkSimulatedBaseState* baseState = 0, const QSize& rescaleToIconSize = QSize(), bool isSpotReport = false,
66  const QColor& milStdOutlineColor = Qt::black, bool fillMilStdSymbol = true, bool ignoreMenuIcon = false,
67  const QColor& fillColor = Qt::transparent);
68 
69  virtual QPixmap getIcon(const DtUUID&, int pointSize = 48, bool sizeToFont = false,
70  const makVrv::DtVrlinkSimulatedBaseState* baseState = 0, const QSize& rescaleToIconSize = QSize(), bool isSpotReport = false,
71  const QColor& milStdOutlineColor = Qt::black, bool fillMilStdSymbol = true, bool ignoreMenuIcon = false);
72 
73  virtual int addFont(const QString&);
74 
75  void setIconSize(int w, int h)
76  {
77  myIconSize = QSize(w, h);
78  }
79 
80  const QSize& iconSize() const
81  {
82  return myIconSize;
83  }
84 
86  virtual QImage iconImageForIcon(const DtEntityMapperKey&, const QColor& fillColor = Qt::transparent) const;
87 
89  virtual QPixmap forceColorSwatch(int force);
90  protected:
91  typedef boost::unordered_map<std::string, std::string> PathListMap;
92 
94  virtual const makVrv::DtVisualizerDefinitionSet* visualDefinitionSetThatBestMatches(const DtEntityMapperKey&, bool isSpotReport);
95  virtual unsigned short echelonGlyphFor(const DtEntityMapperKey& key, const makVrv::DtVisualizerDefinition* set) const;
96 
97  virtual QImage milStdRender(const makVrv::DtVisualizerDefinition*, const DtEntityMapperKey& key, bool destroyed, int pointSize,
98  const QColor& outlineColor = Qt::black, bool fillMilStdSymbol = true, const makVrv::DtVrlinkSimulatedBaseState* baseState = 0, const QColor& fillColor = Qt::transparent) const;
99  virtual QImage imageSymbolRender(const makVrv::DtVisualizerDefinition*, const DtEntityMapperKey& key, bool destroyed,
100  const makVrv::DtVrlinkSimulatedBaseState* baseState = 0) const;
101 
102  virtual QImage imageFromModelDefinition(const std::string&) const;
103 
105  virtual DtObjectType menuItemIconIsObjectType(const DtEntityMapperKey&) const;
106 
108  virtual void composeMilStdImage(QPainter& painter, int left, int base,
109  unsigned short fillGlyph, unsigned short outlineGlyph, unsigned short echelonGlyph, unsigned short destroyedGlyph,
111 
113  virtual QImage menuItemIcon(const DtEntityMapperKey&) const;
114 
115  protected:
117  QHash<QString, QPixmap*> myIconCache;
118  QHash<int, QPixmap*> myForceSwatchCache;
119  QHash<int, QString> myFontMap;
120  QSize myIconSize;
121 
125  };
126 }
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
PathListMap myTacticalMap
Definition: vrfGuiSymbolMapper.h:123
Definition: entityMapperKey.h:23
QHash< int, QString > myFontMap
Definition: vrfGuiSymbolMapper.h:119
Virtual base class.
Definition: DtVirtualBaseClass.h:22
PathListMap myAggregateMap
Definition: vrfGuiSymbolMapper.h:122
makVrv::DtDe & myDe
Definition: vrfGuiSymbolMapper.h:116
The class that will contain information about the currently loaded scenario.
Definition: vrfGuiSymbolMapper.h:46
Definition: DtForceManager.h:46
The makVrv::DtVisualizerDefinitionSet is a collection of makVrv::DtVisualizerDefinition instances...
Definition: DtVisualizerDefinitionSet.h:20
QSize myIconSize
Definition: vrfGuiSymbolMapper.h:120
Definition: objectType.h:27
Contains makVrv::DtVirtualBaseClass class.
QHash< int, QPixmap * > myForceSwatchCache
Definition: vrfGuiSymbolMapper.h:118
Contains makVrv::DtEntityState class.
PathListMap myEntityMap
Definition: vrfGuiSymbolMapper.h:124
#define DT_DLL_VRFGUICOMMONQT
Definition: vrfGuiCommonQt.h:22
Contains makVrv::DtForceManager class.
const QSize & iconSize() const
Definition: vrfGuiSymbolMapper.h:80
void setIconSize(int w, int h)
Definition: vrfGuiSymbolMapper.h:75
A definition of a visualizer.
Definition: DtVisualizerDefinition.h:22
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
boost::unordered_map< std::string, std::string > PathListMap
Definition: vrfGuiSymbolMapper.h:91
QHash< QString, QPixmap * > myIconCache
Definition: vrfGuiSymbolMapper.h:117

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)