+ wxMenuItem* Insert(size_t pos, wxMenuItem *item);
+
+ // insert an item before given position
+ wxMenuItem* Insert(size_t pos,
+ int itemid,
+ const wxString& text = wxEmptyString,
+ const wxString& help = wxEmptyString,
+ wxItemKind kind = wxITEM_NORMAL)
+ {
+ return Insert(pos, wxMenuItem::New((wxMenu *)this, itemid, text, help, kind));
+ }
+
+ // insert a separator
+ wxMenuItem* InsertSeparator(size_t pos)
+ {
+ return Insert(pos, wxMenuItem::New((wxMenu *)this, wxID_SEPARATOR));
+ }
+
+ // insert a check item
+ wxMenuItem* InsertCheckItem(size_t pos,
+ int itemid,
+ const wxString& text,
+ const wxString& help = wxEmptyString)
+ {
+ return Insert(pos, itemid, text, help, wxITEM_CHECK);
+ }
+
+ // insert a radio item
+ wxMenuItem* InsertRadioItem(size_t pos,
+ int itemid,
+ const wxString& text,
+ const wxString& help = wxEmptyString)
+ {
+ return Insert(pos, itemid, text, help, wxITEM_RADIO);
+ }
+
+ // insert a submenu
+ wxMenuItem* Insert(size_t pos,
+ int itemid,
+ const wxString& text,
+ wxMenu *submenu,
+ const wxString& help = wxEmptyString)
+ {
+ return Insert(pos, wxMenuItem::New((wxMenu *)this, itemid, text, help,
+ wxITEM_NORMAL, submenu));
+ }
+
+ // prepend an item to the menu
+ wxMenuItem* Prepend(wxMenuItem *item)
+ {
+ return Insert(0u, item);
+ }
+
+ // prepend any item to the menu
+ wxMenuItem* Prepend(int itemid,
+ const wxString& text = wxEmptyString,
+ const wxString& help = wxEmptyString,
+ wxItemKind kind = wxITEM_NORMAL)
+ {
+ return Insert(0u, itemid, text, help, kind);
+ }
+
+ // prepend a separator
+ wxMenuItem* PrependSeparator()
+ {
+ return InsertSeparator(0u);
+ }
+
+ // prepend a check item
+ wxMenuItem* PrependCheckItem(int itemid,
+ const wxString& text,
+ const wxString& help = wxEmptyString)
+ {
+ return InsertCheckItem(0u, itemid, text, help);
+ }
+
+ // prepend a radio item
+ wxMenuItem* PrependRadioItem(int itemid,
+ const wxString& text,
+ const wxString& help = wxEmptyString)
+ {
+ return InsertRadioItem(0u, itemid, text, help);
+ }
+
+ // prepend a submenu
+ wxMenuItem* Prepend(int itemid,
+ const wxString& text,
+ wxMenu *submenu,
+ const wxString& help = wxEmptyString)
+ {
+ return Insert(0u, itemid, text, submenu, help);
+ }