00001 /** 00002 * \file geolock.h <gre/geolock.h> 00003 * \brief GRE_GEOLOCKSETTINGS class definitions 00004 * 00005 * \if NODOC 00006 * $Id: geolock.h_v 1.4 2003/09/15 13:48:59 fileserver!dwilliss Exp $ 00007 * 00008 * $Log: geolock.h_v $ 00009 * Revision 1.4 2003/09/15 13:48:59 fileserver!dwilliss 00010 * Doxygen 00011 * 00012 * Revision 1.3 2003/07/30 15:40:20 mju 00013 * Go back to old non-namespace name as causes other problems. 00014 * 00015 * Revision 1.2 2003/07/30 14:53:14 mju 00016 * Ignore private section. 00017 * Put in GRE namespace with typedef for old name. 00018 * 00019 * Revision 1.1 2002/12/16 15:07:05 mju 00020 * Initial revision 00021 * \endif 00022 **/ 00023 00024 #ifndef INC_GRE_GEOLOCK_H 00025 #define INC_GRE_GEOLOCK_H 00026 00027 #ifndef INC_MI32_SERIALIZ_H 00028 #include <mi32/serializ.h> 00029 #endif 00030 00031 //! Settings for geo-locking, used by GRE_VIEW. 00032 class GRE_GEOLOCKSETTINGS { 00033 public: 00034 00035 enum MODE { 00036 MODE_Scale = 0x01, //!< Lock by scale 00037 MODE_Extent = 0x02, //!< Lock by extent 00038 MODE_ScaleAndExtent = 0x03, //!< Lock by scale and extent 00039 }; 00040 00041 class FORM; //!< User interface 'form', definition in <mi32/greui.h> 00042 class DLG; //!< User interface 'dialog', definition in <mi32/greui.h> 00043 00044 //! Get serialization item definition array. 00045 static const SERIALIZER::ITEMDEF* SerialGetItemDef ( 00046 ); 00047 00048 //! Constructor. 00049 GRE_GEOLOCKSETTINGS ( 00050 ): m_Mode(MODE_ScaleAndExtent), m_Scale(1) { } 00051 00052 //! Get geolock mode. 00053 MODE GetMode ( 00054 ) const { return (m_Mode); } 00055 00056 //! Get relative scale. 00057 double GetRelativeScale ( 00058 ) const { return (m_Scale); } 00059 00060 //! Set geolock mode. 00061 void SetMode ( 00062 MODE mode 00063 ) { m_Mode = mode; } 00064 00065 //! Set relative scale. 00066 void SetRelativeScale ( 00067 double scale 00068 ) { m_Scale = scale; } 00069 00070 private: 00071 #ifndef GENERATING_DOXYGEN_OUTPUT 00072 00073 MODE m_Mode; 00074 double m_Scale; 00075 00076 #endif //!< GENERATING_DOXYGEN_OUTPUT 00077 }; 00078 00079 #endif //!< INC_GRE_GEOLOCK_H
1.3.8-20040913