00001 /** 00002 * \file rvc/dlgimghg.h 00003 * \brief RVC::DLG_IMAGE_HISTOGRAM class definitions 00004 * 00005 * \if NODOC 00006 * $Id: dlgimghg.h_v 1.5 2004/07/12 20:02:30 mju Exp $ 00007 * 00008 * $Log: dlgimghg.h_v $ 00009 * Revision 1.5 2004/07/12 20:02:30 mju 00010 * Use region2d. 00011 * 00012 * Revision 1.4 2003/12/16 16:05:37 mju 00013 * Use dlgshell. 00014 * 00015 * Revision 1.3 2003/09/25 21:56:37 dwilliss 00016 * doxygen 00017 * 00018 * Revision 1.2 2003/09/15 13:49:45 fileserver!dwilliss 00019 * Doxygen 00020 * 00021 * Revision 1.1 2002/08/13 17:18:20 mju 00022 * Initial revision 00023 * 00024 * \endif 00025 **/ 00026 00027 #ifndef INC_RVC_DLGIMGHG_H 00028 #define INC_RVC_DLGIMGHG_H 00029 00030 #ifndef INC_MGUI_DLGSHELL_H 00031 #include <mgui/dlgshell.h> 00032 #endif 00033 00034 00035 class REGION2D; 00036 00037 namespace RVC { 00038 00039 class OBJITEM; 00040 00041 00042 class DLG_IMAGE_HISTOGRAM : public MGUI::DLGSHELL { 00043 public: 00044 00045 enum STYLE { 00046 STYLE_Default = 0x00, 00047 STYLE_DeleteOnClose = 0x01, //!< Delete dialog instance when closed 00048 STYLE_NoSelectObject = 0x02, //!< Don't allow user to select object to view histogram of 00049 STYLE_NoSaveAsText = 0x04, //!< Don't allow saving of information to text file 00050 STYLE_NoMultiObject = 0x08 00051 }; 00052 00053 typedef MILIST<DLG_IMAGE_HISTOGRAM*> DLGLIST; 00054 00055 //! Get list of all histogram dialogs. 00056 static DLGLIST& GetDlgList ( 00057 ) { return (s_DlgList); } 00058 00059 //! Constructor. 00060 explicit DLG_IMAGE_HISTOGRAM ( 00061 STYLE style = STYLE_Default 00062 ); 00063 00064 //! Destructor. 00065 virtual ~DLG_IMAGE_HISTOGRAM ( 00066 ); 00067 00068 //! Add object to view histogram of. 00069 ERRVALUE AddObject ( 00070 const RVC::OBJITEM& objitem, 00071 COLORREF color = 0x000000 00072 ); 00073 00074 //! Determine if dialog has specified object. 00075 bool HasObject ( 00076 const RVC::OBJITEM& objitem 00077 ) const; 00078 00079 //! Set region for histogram. 00080 ERRVALUE SetRegion ( 00081 const REGION2D& region 00082 ); 00083 00084 private: 00085 #ifndef GENERATING_DOXYGEN_OUTPUT 00086 00087 static DLGLIST s_DlgList; 00088 00089 class PRIV; 00090 PRIV *m_pPriv; 00091 00092 virtual ERRVALUE v_CreateContent (); 00093 00094 DLG_IMAGE_HISTOGRAM (const DLG_IMAGE_HISTOGRAM&); 00095 DLG_IMAGE_HISTOGRAM& operator= (const DLG_IMAGE_HISTOGRAM&); 00096 #endif // GENERATING_DOXYGEN_OUTPUT 00097 }; 00098 00099 DEFINE_ENUM_OPERATORS(DLG_IMAGE_HISTOGRAM::STYLE); 00100 00101 } //! End of namespace RVC 00102 00103 00104 #endif //!< INC_RVC_DLGIMGHG_H
1.3.8-20040913