![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /***************************************************************************** 00002 * Copyright (c) 2012 MAK Technologies, Inc. 00003 * All rights reserved. 00004 *****************************************************************************/ 00005 00009 00010 #pragma once 00011 00012 #include <vrvVrl/vrvVrl.h> 00013 #include <vrvCore/DtSharedSettings.h> 00014 #include <vrvCore/DtRecordSettingsBackup.h> 00015 #include <makArchives/DtAggregateSettingsRecord.h> 00016 00017 class DtEntityType; 00018 00019 namespace makVrv 00020 { 00021 00022 class DtEntityTypeMapper; 00023 class DtSharedAggregateDisplaySettings; 00024 00025 typedef DtSharedRecordSettingsBackup<DtSharedAggregateDisplaySettings, 00026 makArchives::DtAggregateSettingsRecord> DtAggregateStateSettingsBackup; 00027 00030 class DT_DLL_VRVVRL DtSharedAggregateDisplaySettings 00031 : public DtSharedSettings 00032 { 00033 public: 00034 00035 enum ColorizedModelColorType 00036 { 00037 UsePrimaryColors=0, 00038 UseIconColors=1 00039 }; 00040 00041 public: 00042 00044 virtual ~DtSharedAggregateDisplaySettings(); 00045 00048 00050 virtual bool displayAggregates() const; 00052 virtual void setDisplayAggregates( bool enabled ); 00053 00055 virtual bool displayAggregateLeafNodes() const; 00057 virtual void setDisplayAggregateLeafNodes( bool enabled ); 00058 00060 virtual bool displayAggregateBoundingBoxes() const; 00062 virtual void setDisplayAggregateBoundingBoxes( bool enabled ); 00063 00065 virtual bool displayAggregateBoundingBoxesForSelected() const; 00067 virtual void setDisplayAggregateBoundingBoxesForSelected( bool enabled ); 00068 00070 virtual bool displayMainIcon() const; 00072 virtual void setDisplayMainIcon( bool enabled ); 00073 00075 virtual bool ghostEchelonLevelItems() const; 00077 virtual void setGhostEchelonLevelItems( bool enabled ); 00078 00080 virtual bool allowSelectionOfGhostedItems() const; 00082 virtual void setAllowSelectionOfGhostedItems( bool enabled ); 00083 00085 virtual int echelonLevel() const; 00087 virtual void setEchelonLevel( int level ); 00088 00090 virtual double ghostingTransparency() const; 00092 virtual void setGhostingTransparency( double transparency ); 00093 00095 virtual DtSharedAggregateDisplaySettings::ColorizedModelColorType colorizedModelColorTypeForAggregates() const; 00097 virtual void setColorizedModelColorTypeForAggregates( DtSharedAggregateDisplaySettings::ColorizedModelColorType type ); 00098 00100 00102 void setFromRecord( const makArchives::DtAggregateSettingsRecord& rec ); 00103 00105 void getRecord( makArchives::DtAggregateSettingsRecord& rec ) const; 00106 00108 virtual const DtAggregateStateSettingsBackup* settingsBackup() const; 00109 00111 virtual DtAggregateStateSettingsBackup* settingsBackup(); 00112 00114 virtual void backup(); 00115 00117 static std::string className(); 00118 00119 protected: 00120 00122 friend class DtReadSettingsLock<DtSharedAggregateDisplaySettings>; 00124 friend class DtWriteSettingsLock<DtSharedAggregateDisplaySettings>; 00125 00127 DtSharedAggregateDisplaySettings( DtSharedSettingsManager& manager ); 00128 00129 protected: 00130 00131 int myFlags; 00132 int myEchelonLevel; 00133 double myGhostingTransparency; 00134 ColorizedModelColorType myColorizedModelColorType; 00135 00136 DtAggregateStateSettingsBackup* myAggregateSettingsBackup; 00137 00138 }; 00139 00140 }