00001
00024 #ifndef INC_RVC_UIFORMOBJECTSINGLE_H
00025 #define INC_RVC_UIFORMOBJECTSINGLE_H
00026
00027 #ifndef INC_MGUI_FORMBTXT_H
00028 #include <mgui/formbtxt.h>
00029 #endif
00030
00031 #ifndef INC_RVC_OBJITEM_H
00032 #include <rvc/objitem.h>
00033 #endif
00034
00035 #ifndef INC_RVC_OTYPESET_H
00036 #include <rvc/otypeset.h>
00037 #endif
00038
00039 #ifndef INC_RVC_GETOBJFLAGS_H
00040 #include <rvc/getobjflags.h>
00041 #endif
00042
00043 namespace RVC {
00044 class GETOBJFILTER;
00045 }
00046
00047 namespace RVC {
00048 namespace UI {
00049
00050
00052 class FORM_OBJECT_SINGLE : public MGUI::FORM_BUTTONTEXT {
00053 public:
00054
00056 FORM_OBJECT_SINGLE (
00057 );
00058
00060 virtual ~FORM_OBJECT_SINGLE (
00061 );
00062
00064 void Clear (
00065 bool notify
00066 );
00067
00069 void Create (
00070 MGUI::LAYOUT_PANE_BASE& ParentPane,
00071 const MISTRING& label,
00072 const MISTRING& promptstr,
00073 const RVC::OBJTYPESET& ObjTypeSet,
00074 int width,
00075 GETOBJFLAGS GetObjFlags = GETOBJFLAG_None,
00076 RVC::GETOBJFILTER *pGetObjFilter = 0,
00077 MGUI::LAYOUT_SIZEALIGN sizealign = MGUI::LAYOUT_SIZEALIGN_FixedHeight
00078 );
00079
00081 void Create (
00082 MGUI::LAYOUT_PANE_BASE& ParentPane,
00083 const MISTRING& label,
00084 const MISTRING& promptstr,
00085 const RVC::OBJTYPESET& ObjTypeSet,
00086 GETOBJFLAGS GetObjFlags = GETOBJFLAG_None,
00087 RVC::GETOBJFILTER *pGetObjFilter = 0,
00088 MGUI::LAYOUT_SIZEALIGN sizealign = MGUI::LAYOUT_SIZEALIGN_FixedHeight
00089 );
00090
00092 const RVC::OBJITEM& GetObjItem (
00093 ) const { return (m_ObjItem); }
00094
00097 ERRVALUE Select (
00098 bool notify
00099 );
00100
00102 void SetDelegateOnChangeSelected (
00103 DELEGATE_VOID_NOPARMS delegate
00104 ) { m_DelegateOnChangeSelected = delegate; }
00105
00107 void SetObjItem (
00108 const RVC::OBJITEM& ObjItem,
00109 bool notify
00110 );
00111
00112 private:
00113 #ifndef GENERATING_DOXYGEN_OUTPUT
00114 RVC::OBJITEM m_ObjItem;
00115 DELEGATE_VOID_NOPARMS m_DelegateOnChangeSelected;
00116 MISTRING m_PromptStr;
00117 RVC::OBJTYPESET m_ObjTypeSet;
00118 GETOBJFLAGS m_GetObjFlags;
00119 RVC::GETOBJFILTER *m_pGetObjFilter;
00120
00121 void OnBtnSelect ();
00122
00123 FORM_OBJECT_SINGLE (const FORM_OBJECT_SINGLE&);
00124 FORM_OBJECT_SINGLE& operator= (const FORM_OBJECT_SINGLE&);
00125 #endif // GENERATING_DOXYGEN_OUTPUT
00126 };
00127
00128
00129 }
00130 }
00131
00132 #endif // INC_RVC_UIFORMOBJECTSINGLE_H