Commit 0230317c authored by twanvl's avatar twanvl

* compatibility with wxWdigets 2.9+: use wxItemKind for menu style

* cleaned up the interface of IconMenu a bit
parent 99b381c6
...@@ -66,22 +66,16 @@ void set_menu_item_image(wxMenuItem* item, const String& resource) { ...@@ -66,22 +66,16 @@ void set_menu_item_image(wxMenuItem* item, const String& resource) {
// ----------------------------------------------------------------------------- : IconMenu // ----------------------------------------------------------------------------- : IconMenu
void IconMenu::Append(int id, const String& resource, const String& text, const String& help, int style, wxMenu* submenu) { void IconMenu::Append(int id, const String& resource, const String& text, const String& help, wxItemKind kind, wxMenu* submenu) {
// create menu, load icon // create menu, load icon
wxMenuItem* item = new wxMenuItem(this, id, text, help, style, submenu); wxMenuItem* item = new wxMenuItem(this, id, text, help, kind, submenu);
set_menu_item_image(item, resource); set_menu_item_image(item, resource);
// add to menu // add to menu
wxMenu::Append(item); wxMenu::Append(item);
} }
void IconMenu::Append(int id, const String& text, const String& help) { void IconMenu::Append(int id, const String& text, const String& help, wxItemKind kind, wxMenu* submenu) {
wxMenuItem* item = new wxMenuItem (this, id, text, help); wxMenuItem* item = new wxMenuItem (this, id, text, help, kind, submenu);
item->SetBitmap(wxNullBitmap);
wxMenu::Append(item);
}
void IconMenu::Append(int id, const String& text, const String& help, wxMenu* submenu) {
wxMenuItem* item = new wxMenuItem (this, id, text, help, wxITEM_NORMAL, submenu);
item->SetBitmap(wxNullBitmap); item->SetBitmap(wxNullBitmap);
wxMenu::Append(item); wxMenu::Append(item);
} }
...@@ -91,16 +85,16 @@ void IconMenu::Append(wxMenuItem* item) { ...@@ -91,16 +85,16 @@ void IconMenu::Append(wxMenuItem* item) {
wxMenu::Append(item); wxMenu::Append(item);
} }
void IconMenu::Insert(size_t pos, int id, const String& resource, const String& text, const String& help, int style, wxMenu* submenu) { void IconMenu::Insert(size_t pos, int id, const String& resource, const String& text, const String& help, wxItemKind kind, wxMenu* submenu) {
// create menu, load icon // create menu, load icon
wxMenuItem* item = new wxMenuItem(this, id, text, help, style, submenu); wxMenuItem* item = new wxMenuItem(this, id, text, help, kind, submenu);
set_menu_item_image(item, resource); set_menu_item_image(item, resource);
// add to menu // add to menu
wxMenu::Insert(pos,item); wxMenu::Insert(pos,item);
} }
void IconMenu::Insert(size_t pos, int id, const String& text, const String& help) { void IconMenu::Insert(size_t pos, int id, const String& text, const String& help, wxItemKind kind, wxMenu* submenu) {
wxMenuItem* item = new wxMenuItem (this, id, text, help); wxMenuItem* item = new wxMenuItem (this, id, text, help, kind, submenu);
item->SetBitmap(wxNullBitmap); item->SetBitmap(wxNullBitmap);
wxMenu::Insert(pos, item); wxMenu::Insert(pos, item);
} }
...@@ -22,17 +22,15 @@ ...@@ -22,17 +22,15 @@
class IconMenu : public wxMenu { class IconMenu : public wxMenu {
public: public:
/// Append a menu item, with an image (loaded from a resource) /// Append a menu item, with an image (loaded from a resource)
void Append(int id, const String& resource, const String& text, const String& help, int style = wxITEM_NORMAL, wxMenu* submenu = nullptr); void Append(int id, const String& resource, const String& text, const String& help, wxItemKind kind = wxITEM_NORMAL, wxMenu* submenu = nullptr);
/// Append a menu item, without an image /// Append a menu item, without an image
void Append(int id, const String& text, const String& help); void Append(int id, const String& text, const String& help, wxItemKind kind = wxITEM_NORMAL, wxMenu* submenu = nullptr);
/// Append a menu item, without an image
void Append(int id, const String& text, const String& help, wxMenu* submenu);
/// Append a menu item, without an image /// Append a menu item, without an image
void Append(wxMenuItem* item); void Append(wxMenuItem* item);
/// Insert a menu item, with an image (loaded from a resource) /// Insert a menu item, with an image (loaded from a resource)
void Insert(size_t pos, int id, const String& resource, const String& text, const String& help, int style = wxITEM_NORMAL, wxMenu* submenu = nullptr); void Insert(size_t pos, int id, const String& resource, const String& text, const String& help, wxItemKind kind = wxITEM_NORMAL, wxMenu* submenu = nullptr);
/// Insert a menu item, without an image /// Insert a menu item, without an image
void Insert(size_t pos, int id, const String& text, const String& help); void Insert(size_t pos, int id, const String& text, const String& help, wxItemKind kind = wxITEM_NORMAL, wxMenu* submenu = nullptr);
}; };
void set_menu_item_image(wxMenuItem* menuitem, const String& resource); void set_menu_item_image(wxMenuItem* menuitem, const String& resource);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment