Go to the documentation of this file.00001
00002
00003
00004
00005
00008
00009 #pragma once
00010
00011 #include "lgrGui.h"
00012
00013 #include <vlutil/vlString.h>
00014 #include <mtl/mtl.h>
00015 #include <vl/hostStructs.h>
00016
00017 #include <QtGui/QPixmapCache>
00018 #include <QtGui/QPixmap>
00019
00020 class DtMtlEnvironment;
00021 class DtList;
00022
00023
00024 namespace MAKLogger {
00025
00026 class DtSymbolSpec;
00027
00028 class DT_DLL_LGRGUI DtMarkingSymbols
00029 {
00030 public:
00031
00032 DtMarkingSymbols();
00033 DtMarkingSymbols(DtMtlEnvironment* mtl);
00034
00035 virtual ~DtMarkingSymbols();
00036 virtual bool loadLispFile(const char* filename);
00037
00039 virtual QPixmap getIconForEmitterSystem() const;
00040 virtual QPixmap getBigIconForEmitterSystem() const;
00041
00043 virtual QPixmap getIconForDetonation() const;
00044
00046 virtual QPixmap getBigIconForEntity(
00047 const DtEntityType& type, const DtForceType& force);
00048
00050 virtual QPixmap getIconForEntity(const DtEntityType& type,
00051 const DtForceType& force, bool destroyed = false);
00052
00054 virtual QPixmap getIconForAggregate(const DtEntityType& type,
00055 const DtForceType& force, bool destroyed = false);
00056
00057 protected:
00058
00059 void registerMtlParameters();
00060 virtual bool lookupParameters();
00061
00063 virtual void addMapping(DtSymbolSpec* newspec);
00064 virtual DtSymbolSpec* getSymbol(const DtEntityType& type, int forceId) const;
00065 virtual QPixmap getIconForDestroyed() const;
00066
00067 protected:
00068
00069 static DtlObjPtr parseSymbolMap(const DtlObjPtr& args, const DtlObjPtr&);
00070 static DtSymbolSpec* parseBmpSymbol(const DtlObjPtr& args, DtlObjPtr& retval);
00071
00072 protected:
00073
00074 bool myCreatedEnv;
00075 DtMtlEnvironment* myEnv;
00076
00077 QPixmapCache myIconCache;
00078 DtList* myMappings;
00079 DtString myDetonationPixName;
00080 DtString mySensorPixName;
00081 DtString myDestroyedPixName;
00082 DtString myDestroyedMaskPixName;
00083 };
00084 }