Add ability to have a wxMenuBar as a common menu
- static wxMenuBar::MacSetCommonMenuBar() - static wxMenuBar::MacGetCommonMenuBar() - static wxMenuBar::s_macCommonMenuBar; git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -164,6 +164,8 @@ public:
|
|||||||
|
|
||||||
void MacInstallMenuBar() ;
|
void MacInstallMenuBar() ;
|
||||||
static wxMenuBar* MacGetInstalledMenuBar() { return s_macInstalledMenuBar ; }
|
static wxMenuBar* MacGetInstalledMenuBar() { return s_macInstalledMenuBar ; }
|
||||||
|
static void MacSetCommonMenuBar(wxMenuBar* menubar) { s_macCommonMenuBar=menubar; }
|
||||||
|
static wxMenuBar* MacGetCommonMenuBar() { return s_macCommonMenuBar; }
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// common part of all ctors
|
// common part of all ctors
|
||||||
@@ -178,6 +180,7 @@ protected:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
static wxMenuBar* s_macInstalledMenuBar ;
|
static wxMenuBar* s_macInstalledMenuBar ;
|
||||||
|
static wxMenuBar* s_macCommonMenuBar ;
|
||||||
|
|
||||||
DECLARE_DYNAMIC_CLASS(wxMenuBar)
|
DECLARE_DYNAMIC_CLASS(wxMenuBar)
|
||||||
};
|
};
|
||||||
|
@@ -449,6 +449,7 @@ auto-merge for MDI in case this will be necessary
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
wxMenuBar* wxMenuBar::s_macInstalledMenuBar = NULL ;
|
wxMenuBar* wxMenuBar::s_macInstalledMenuBar = NULL ;
|
||||||
|
wxMenuBar* wxMenuBar::s_macCommonMenuBar = NULL ;
|
||||||
|
|
||||||
void wxMenuBar::Init()
|
void wxMenuBar::Init()
|
||||||
{
|
{
|
||||||
@@ -485,6 +486,8 @@ wxMenuBar::wxMenuBar(int count, wxMenu *menus[], const wxString titles[])
|
|||||||
|
|
||||||
wxMenuBar::~wxMenuBar()
|
wxMenuBar::~wxMenuBar()
|
||||||
{
|
{
|
||||||
|
if (s_macCommonMenuBar == this)
|
||||||
|
s_macCommonMenuBar = NULL;
|
||||||
if (s_macInstalledMenuBar == this)
|
if (s_macInstalledMenuBar == this)
|
||||||
{
|
{
|
||||||
::ClearMenuBar();
|
::ClearMenuBar();
|
||||||
|
@@ -449,6 +449,7 @@ auto-merge for MDI in case this will be necessary
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
wxMenuBar* wxMenuBar::s_macInstalledMenuBar = NULL ;
|
wxMenuBar* wxMenuBar::s_macInstalledMenuBar = NULL ;
|
||||||
|
wxMenuBar* wxMenuBar::s_macCommonMenuBar = NULL ;
|
||||||
|
|
||||||
void wxMenuBar::Init()
|
void wxMenuBar::Init()
|
||||||
{
|
{
|
||||||
@@ -485,6 +486,8 @@ wxMenuBar::wxMenuBar(int count, wxMenu *menus[], const wxString titles[])
|
|||||||
|
|
||||||
wxMenuBar::~wxMenuBar()
|
wxMenuBar::~wxMenuBar()
|
||||||
{
|
{
|
||||||
|
if (s_macCommonMenuBar == this)
|
||||||
|
s_macCommonMenuBar = NULL;
|
||||||
if (s_macInstalledMenuBar == this)
|
if (s_macInstalledMenuBar == this)
|
||||||
{
|
{
|
||||||
::ClearMenuBar();
|
::ClearMenuBar();
|
||||||
|
Reference in New Issue
Block a user