summaryrefslogtreecommitdiffstats
path: root/src/gui/widgets
diff options
context:
space:
mode:
authorAurélien Gâteau <agateau@kde.org>2011-04-14 08:00:30 (GMT)
committerThierry Bastian <thierry.bastian@nokia.com>2011-04-14 08:00:30 (GMT)
commitbafeffd7b8b2c40761369ba496ee655dff6cf2a5 (patch)
tree92a8fc71b66a25056d71597958574b5c7cc0a48d /src/gui/widgets
parentbe0d346052d69693c2780e62401f3c0d4b0d89d4 (diff)
downloadQt-bafeffd7b8b2c40761369ba496ee655dff6cf2a5.zip
Qt-bafeffd7b8b2c40761369ba496ee655dff6cf2a5.tar.gz
Qt-bafeffd7b8b2c40761369ba496ee655dff6cf2a5.tar.bz2
QAbstractMenuBarImpl::allowSetVisible => setVisible
This makes it possible to alter the behavior of QMenuBar::setVisible(). It seems to be needed for the Mac menubar. Merge-request: 916 Reviewed-by: Thierry Bastian <thierry.bastian@nokia.com>
Diffstat (limited to 'src/gui/widgets')
-rw-r--r--src/gui/widgets/qabstractmenubarimpl_p.h3
-rw-r--r--src/gui/widgets/qmenubar.cpp5
-rw-r--r--src/gui/widgets/qmenubarimpl.cpp10
-rw-r--r--src/gui/widgets/qmenubarimpl_p.h2
4 files changed, 6 insertions, 14 deletions
diff --git a/src/gui/widgets/qabstractmenubarimpl_p.h b/src/gui/widgets/qabstractmenubarimpl_p.h
index 76eef28..25441df 100644
--- a/src/gui/widgets/qabstractmenubarimpl_p.h
+++ b/src/gui/widgets/qabstractmenubarimpl_p.h
@@ -77,8 +77,7 @@ public:
// QMenuBarPrivate::init()
virtual void init(QMenuBar *) = 0;
- // QMenuBar::setVisible()
- virtual bool allowSetVisible() const = 0;
+ virtual void setVisible(bool visible) = 0;
virtual void actionEvent(QActionEvent *) = 0;
diff --git a/src/gui/widgets/qmenubar.cpp b/src/gui/widgets/qmenubar.cpp
index ec19908..556c192 100644
--- a/src/gui/widgets/qmenubar.cpp
+++ b/src/gui/widgets/qmenubar.cpp
@@ -1055,10 +1055,7 @@ void QMenuBar::paintEvent(QPaintEvent *e)
void QMenuBar::setVisible(bool visible)
{
Q_D(QMenuBar);
- if (!d->impl->allowSetVisible()) {
- return;
- }
- QWidget::setVisible(visible);
+ d->impl->setVisible(visible);
}
/*!
diff --git a/src/gui/widgets/qmenubarimpl.cpp b/src/gui/widgets/qmenubarimpl.cpp
index 4844e4e..1ca2e11 100644
--- a/src/gui/widgets/qmenubarimpl.cpp
+++ b/src/gui/widgets/qmenubarimpl.cpp
@@ -90,20 +90,16 @@ void QMenuBarImpl::init(QMenuBar *_menuBar)
#endif
}
-bool QMenuBarImpl::allowSetVisible() const
+void QMenuBarImpl::setVisible(bool visible)
{
#if defined(Q_WS_MAC) || defined(Q_OS_WINCE) || defined(Q_WS_S60)
- // FIXME: Port this to a setVisible() method
- /*
if (isNativeMenuBar()) {
if (!visible)
- QWidget::setVisible(false);
+ menuBar->QWidget::setVisible(false);
return;
}
- */
- return !isNativeMenuBar();
#endif
- return true;
+ menuBar->QWidget::setVisible(visible);
}
void QMenuBarImpl::actionEvent(QActionEvent *e)
diff --git a/src/gui/widgets/qmenubarimpl_p.h b/src/gui/widgets/qmenubarimpl_p.h
index 0546eb2..e7a3bde 100644
--- a/src/gui/widgets/qmenubarimpl_p.h
+++ b/src/gui/widgets/qmenubarimpl_p.h
@@ -56,7 +56,7 @@ public:
virtual void init(QMenuBar *);
- virtual bool allowSetVisible() const;
+ virtual void setVisible(bool visible);
virtual void actionEvent(QActionEvent *e);