00001 /** 00002 * \file dlglayermgr.h <gre/dlglayermgr.h> 00003 * \brief GRE layer manager dialog 00004 * 00005 * \if NODOC 00006 * $Id: dlglayermgr.h_v 1.2 2006/08/10 16:06:04 mju Exp $ 00007 * 00008 * $Log: dlglayermgr.h_v $ 00009 * Revision 1.2 2006/08/10 16:06:04 mju 00010 * Add placementKey parm to openSimple. 00011 * 00012 * Revision 1.1 2005/11/02 18:29:18 mju 00013 * Initial revision 00014 * 00015 * \endif 00016 **/ 00017 00018 #if !defined(INC_GRE_DLGLAYERMGR_H) && defined(USE_MGUI) 00019 #define INC_GRE_DLGLAYERMGR_H 00020 00021 #ifndef INC_GRE_BASE_H 00022 #include <gre/base.h> 00023 #endif 00024 00025 #ifndef INC_MGUI_DLGSHELL_H 00026 #include <mgui/dlgshell.h> 00027 #endif 00028 00029 namespace GRE { 00030 00031 //===================================================================================================================== 00032 00033 //! GRE Layer Manager dialog. 00034 //! Provides ability to add/remove/change layers in a specified group, as well 00035 //! as access group settings and other common operations. 00036 //! Intended for use as modeless dialog only. 00037 class DLG_LAYERMGR : public MGUI::DLGSHELL { 00038 public: 00039 00040 //! Construct and open for specified group. 00041 //! Provides convenient way to open layer manager without need to keep track of it. 00042 //! If layer manager has been previously opened it will simply show it. 00043 static DLG_LAYERMGR* OpenSimple ( 00044 MDLGPARENT dlgparent, //!< Parent for dialog 00045 GRE::GROUP *group, //!< Group 00046 const MISTRING& apptitle, //!< Application title, will be prefixed to dialog title 00047 const char *PlacementKey = 0 //!< Key for retaining dialog size/placement, 0 if unused 00048 ); 00049 00050 //! Construct for specified group. 00051 DLG_LAYERMGR ( 00052 GRE::GROUP *group, //!< Group 00053 const MISTRING& apptitle //!< Application title, will be prefixed to dialog title 00054 ); 00055 00056 virtual ~DLG_LAYERMGR (); 00057 00058 private: 00059 #ifndef GENERATING_DOXYGEN_OUTPUT 00060 class PRIV; 00061 PRIV *m_pPriv; 00062 GRE::GROUP *m_group; 00063 00064 // SHELL/DLGSHELL overrides. 00065 virtual ERRVALUE v_CreateContent (); 00066 virtual void v_OnActivate (bool activated); 00067 00068 #endif // GENERATING_DOXYGEN_OUTPUT 00069 }; 00070 00071 //===================================================================================================================== 00072 00073 } // End namespace GRE 00074 00075 #endif // INC_GRE_DLGLAYERMGR_H
1.5.2