#ifndef _WX_UNIV_MENU_H_
#define _WX_UNIV_MENU_H_
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma interface "univmenu.h"
#endif
// fwd declarations
class WXDLLEXPORT wxMenuInfo;
-WX_DECLARE_OBJARRAY(wxMenuInfo, wxMenuInfoArray);
+WX_DECLARE_EXPORTED_OBJARRAY(wxMenuInfo, wxMenuInfoArray);
class WXDLLEXPORT wxMenuGeometryInfo;
class WXDLLEXPORT wxPopupMenuWindow;
protected:
// implement base class virtuals
- virtual bool DoAppend(wxMenuItem *item);
- virtual bool DoInsert(size_t pos, wxMenuItem *item);
- virtual wxMenuItem *DoRemove(wxMenuItem *item);
+ virtual wxMenuItem* DoAppend(wxMenuItem *item);
+ virtual wxMenuItem* DoInsert(size_t pos, wxMenuItem *item);
+ virtual wxMenuItem* DoRemove(wxMenuItem *item);
// common part of DoAppend and DoInsert
void OnItemAdded(wxMenuItem *item);
// common part of all ctors
void Init();
+ // terminate the current radio group, if any
+ void EndRadioGroup();
+
// the exact menu geometry is defined by a struct derived from this one
// which is opaque and defined by the renderer
wxMenuGeometryInfo *m_geometry;
wxAcceleratorTable m_accelTable;
#endif // wxUSE_ACCEL
+ // the position of the first item in the current radio group or -1
+ int m_startRadioGroup;
+
// it calls out OnDismiss()
friend class wxPopupMenuWindow;
DECLARE_DYNAMIC_CLASS(wxMenu)