mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-29 00:59:44 -06:00
wxWidgets3: update to svn r70933
This commit is contained in:
46
Externals/wxWidgets3/include/wx/msw/menu.h
vendored
46
Externals/wxWidgets3/include/wx/msw/menu.h
vendored
@ -4,7 +4,7 @@
|
||||
// Author: Julian Smart
|
||||
// Modified by: Vadim Zeitlin (wxMenuItem is now in separate file)
|
||||
// Created: 01/02/97
|
||||
// RCS-ID: $Id: menu.h 66178 2010-11-17 01:20:50Z VZ $
|
||||
// RCS-ID: $Id: menu.h 70350 2012-01-15 13:41:17Z VZ $
|
||||
// Copyright: (c) Julian Smart
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
@ -25,6 +25,7 @@ class WXDLLIMPEXP_FWD_CORE wxFrame;
|
||||
class WXDLLIMPEXP_FWD_CORE wxToolBar;
|
||||
#endif
|
||||
|
||||
class wxMenuRadioItemsData;
|
||||
|
||||
// Not using a combined wxToolBar/wxMenuBar? then use
|
||||
// a commandbar in WinCE .NET to implement the
|
||||
@ -60,16 +61,27 @@ public:
|
||||
|
||||
virtual void SetTitle(const wxString& title);
|
||||
|
||||
// MSW-only methods
|
||||
// ----------------
|
||||
|
||||
// Create a new menu from the given native HMENU. Takes ownership of the
|
||||
// menu handle and will delete it when this object is destroyed.
|
||||
static wxMenu *MSWNewFromHMENU(WXHMENU hMenu) { return new wxMenu(hMenu); }
|
||||
|
||||
|
||||
// implementation only from now on
|
||||
// -------------------------------
|
||||
|
||||
virtual void Attach(wxMenuBarBase *menubar);
|
||||
|
||||
bool MSWCommand(WXUINT param, WXWORD id);
|
||||
|
||||
// get the native menu handle
|
||||
WXHMENU GetHMenu() const { return m_hMenu; }
|
||||
|
||||
// Return the start and end position of the radio group to which the item
|
||||
// at the given position belongs. Returns false if there is no radio group
|
||||
// containing this position.
|
||||
bool MSWGetRadioGroupRange(int pos, int *start, int *end) const;
|
||||
|
||||
#if wxUSE_ACCEL
|
||||
// called by wxMenuBar to build its accel table from the accels of all menus
|
||||
bool HasAccels() const { return !m_accels.empty(); }
|
||||
@ -102,6 +114,9 @@ public:
|
||||
m_maxAccelWidth = -1;
|
||||
}
|
||||
|
||||
// get the menu with given handle (recursively)
|
||||
wxMenu* MSWGetMenu(WXHMENU hMenu);
|
||||
|
||||
private:
|
||||
void CalculateMaxAccelWidth();
|
||||
|
||||
@ -113,21 +128,30 @@ protected:
|
||||
virtual wxMenuItem* DoRemove(wxMenuItem *item);
|
||||
|
||||
private:
|
||||
// common part of all ctors
|
||||
// This constructor is private, use MSWNewFromHMENU() to use it.
|
||||
wxMenu(WXHMENU hMenu);
|
||||
|
||||
// Common part of all ctors, it doesn't create a new HMENU.
|
||||
void InitNoCreate();
|
||||
|
||||
// Common part of all ctors except of the one above taking a native menu
|
||||
// handler: calls InitNoCreate() and also creates a new menu.
|
||||
void Init();
|
||||
|
||||
// common part of Append/Insert (behaves as Append is pos == (size_t)-1)
|
||||
bool DoInsertOrAppend(wxMenuItem *item, size_t pos = (size_t)-1);
|
||||
|
||||
// terminate the current radio group, if any
|
||||
void EndRadioGroup();
|
||||
|
||||
// This variable contains the description of the radio item groups and
|
||||
// allows to find whether an item at the given position is part of the
|
||||
// group and also where its group starts and ends.
|
||||
//
|
||||
// It is initially NULL and only allocated if we have any radio items.
|
||||
wxMenuRadioItemsData *m_radioData;
|
||||
|
||||
// if true, insert a breal before appending the next item
|
||||
bool m_doBreak;
|
||||
|
||||
// the position of the first item in the current radio group or -1
|
||||
int m_startRadioGroup;
|
||||
|
||||
// the menu handle of this menu
|
||||
WXHMENU m_hMenu;
|
||||
|
||||
@ -173,6 +197,7 @@ public:
|
||||
virtual wxMenu *Remove(size_t pos);
|
||||
|
||||
virtual void EnableTop( size_t pos, bool flag );
|
||||
virtual bool IsEnabledTop(size_t pos) const;
|
||||
virtual void SetMenuLabel( size_t pos, const wxString& label );
|
||||
virtual wxString GetMenuLabel( size_t pos ) const;
|
||||
|
||||
@ -208,6 +233,9 @@ public:
|
||||
void Refresh( bool eraseBackground,
|
||||
const wxRect *rect = (const wxRect *) NULL ) { wxWindow::Refresh(eraseBackground, rect); }
|
||||
|
||||
// get the menu with given handle (recursively)
|
||||
wxMenu* MSWGetMenu(WXHMENU hMenu);
|
||||
|
||||
protected:
|
||||
// common part of all ctors
|
||||
void Init();
|
||||
|
Reference in New Issue
Block a user