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