00001 00033 #ifndef INC_GRE_LRFORMULA_H 00034 #define INC_GRE_LRFORMULA_H 00035 00036 #ifndef INC_GRE_LAYER_H 00037 #include <gre/layer.h> 00038 #endif 00039 00040 #ifndef INC_MI32_GEOFRMLA_H 00041 #include <mi32/geofrmla.h> 00042 #endif 00043 00044 #ifndef INC_MI32_COLORBAL_H 00045 #include <mi32/colorbal.h> 00046 #endif 00047 00048 namespace GRE { 00049 //=================================================================================================================== 00050 00051 class LAYER_FORMULA : public GRE::LAYER { 00052 public: 00053 00054 // LAYER_FORMULA::DISPPARM 00055 class DISPPARM : public GRE::LAYER::DISPPARM { 00056 public: 00057 00058 class DLG; 00059 00060 GEOFORMULA Formula; 00061 CBPARMS ColorBalance; 00062 00063 DISPPARM (); 00064 DISPPARM ( 00065 const DISPPARM& rhs 00066 ): GRE::LAYER::DISPPARM(rhs) { Copy(rhs); } 00067 virtual ~DISPPARM ( 00068 ) { Free(); } 00069 00071 DISPPARM& operator= ( 00072 const DISPPARM& rhs 00073 ) { if (this != &rhs) { Free(); Copy(rhs); } return (*this); } 00074 00075 protected: 00076 virtual const SERIALIZERITEM* SerialGetItemDef (SERIALIZER& serializer) const; 00077 00078 private: 00079 #ifndef GENERATING_DOXYGEN_OUTPUT 00080 static ERRVALUE SerializerCB_Formula (SERIALIZER&, const SERIALIZERITEM*, void*, SERIALIZERITEM::ACTION); 00081 void CloseObject (); 00082 void Copy (const DISPPARM&); 00083 void Free (); 00084 #endif // GENERATING_DOXYGEN_OUTPUT 00085 }; // End of LAYER_FORMULA::DISPPARM 00086 00088 static void RegisterType ( 00089 ); 00090 00092 explicit LAYER_FORMULA ( 00093 GRE::GROUP *group, 00094 CREATEFLAGS createflags = CREATEFLAG_None, 00095 GRE::LISTPOS listpos = GRE::LISTPOS_Last, 00096 GRE::LAYER *reflayer = 0 00097 ); 00098 00099 virtual ~LAYER_FORMULA (); 00100 00102 const DISPPARM& GetDispParm ( 00103 ) const { return (m_dispparm); } 00104 00112 ERRVALUE SetDispParm ( 00113 const DISPPARM& dispparm 00114 ); 00115 00116 protected: 00117 00118 DISPPARM m_dispparm; 00119 00120 private: 00121 #ifndef GENERATING_DOXYGEN_OUTPUT 00122 00123 ERRVALUE Draw2D (GRE::LAYERDC& layerdc); 00124 ERRVALUE Draw3D (GRE::LAYERDC& layerdc); 00125 00127 #ifdef USE_MGUI 00128 virtual int v_ControlPanel (MDLGPARENT dlgparent,UINT32 flags = 0); 00129 #endif 00130 virtual GRE::LAYER* v_Copy (GRE::GROUP *group) const; 00131 virtual ERRVALUE v_Draw (GRE::LAYERDC& layerdc); 00132 virtual bool v_HasNullImageCells () const; 00133 virtual const char* v_SerialGetTagName () const; 00134 virtual void v_SetDftName (bool ReplaceExisting); 00135 virtual ERRVALUE v_TemplateRead (SERIALIZER& serializer); 00136 virtual int v_UpdateExtents (bool forceupdate); 00137 00138 LAYER_FORMULA (const LAYER_FORMULA&); 00139 LAYER_FORMULA& operator= (const LAYER_FORMULA&); 00140 00141 #endif // GENERATING_DOXYGEN_OUTPUT 00142 }; 00143 00144 00145 //=================================================================================================================== 00146 } // End namespace GRE 00147 00148 #endif // INC_GRE_LRFORMULA_H
1.6.1