#include "wx/accel.h"
#include "wx/dynarray.h"
- WX_DEFINE_EXPORTED_ARRAY_NO_PTR(wxAcceleratorEntry *, wxAcceleratorArray);
+ WX_DEFINE_EXPORTED_ARRAY_PTR(wxAcceleratorEntry *, wxAcceleratorArray);
#endif // wxUSE_ACCEL
class WXDLLEXPORT wxFrame;
virtual ~wxMenu();
// 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);
virtual void Break();
virtual void Detach();
virtual void Attach(wxFrame *frame);
-#if defined(__WXWINCE__) && wxUSE_TOOLBAR
+#if wxUSE_TOOLBAR && defined(__WXWINCE__) && (_WIN32_WCE < 400 || defined(WIN32_PLATFORM_PSPC) || defined(WIN32_PLATFORM_WFSP))
// Under WinCE, a menubar is owned by the frame's toolbar
void SetToolBar(wxToolBar* toolBar) { m_toolBar = toolBar; }
wxToolBar* GetToolBar() const { return m_toolBar; }
WXHMENU m_hMenu;
+ // Return the MSW position for a wxMenu which is sometimes different from
+ // the wxWindows position.
+ int MSWPositionForWxMenu(wxMenu *menu, int wxpos);
#if wxUSE_ACCEL
// the accelerator table for all accelerators in all our menus
wxAcceleratorTable m_accelTable;
#if defined(__WXWINCE__) && wxUSE_TOOLBAR
wxToolBar* m_toolBar;
#endif
+ // Not using a combined wxToolBar/wxMenuBar? then use
+ // a commandbar in WinCE .NET to implement the
+ // menubar, since there is no ::SetMenu function.
+#if defined(__WXWINCE__) && (_WIN32_WCE >= 400 && !defined(WIN32_PLATFORM_PSPC) && defined(WIN32_PLATFORM_WFSP))
+ WXHWND m_commandBar;
+#endif
private:
DECLARE_DYNAMIC_CLASS_NO_COPY(wxMenuBar)