refs #312 navigation bars, contributes also to #347

* allow to set/unset frameless mode in CDockWidget
* adjusted context menus
* adjusted style sheets
* ini settings for margins
* hidden info area to host floating widgets only visible when floating (allows to CDockInfoArea widgets)
* made some private slots non-virtual
This commit is contained in:
Klaus Basan
2015-04-08 22:46:54 +02:00
parent 425e034b19
commit e7c8c28252
23 changed files with 556 additions and 175 deletions

View File

@@ -18,6 +18,7 @@
#include <QPushButton>
#include <QHBoxLayout>
#include <QMenuBar>
#include <QSizeGrip>
namespace BlackGui
{
@@ -42,7 +43,7 @@ namespace BlackGui
void setMode(WindowMode mode);
//! Framless
void setFrameless(bool frameless);
virtual void setFrameless(bool frameless);
//! Frameless?
bool isFrameless() const { return this->m_windowMode == WindowFrameless; }
@@ -55,7 +56,10 @@ namespace BlackGui
protected:
//! Resize grip handle
void addFramelessSizeGrip(QStatusBar *statusBar);
void addFramelessSizeGripToStatusBar(QStatusBar *statusBar);
//! Resize grip handle
void hideFramelessSizeGripInStatusBar();
//! Attributes
void setWindowAttributes(WindowMode mode);
@@ -71,6 +75,7 @@ namespace BlackGui
WindowMode m_windowMode = WindowNormal; //!< Window mode, \sa WindowMode
bool m_mainApplicationWindow = false; //!< is the main application window (only 1)
QWidget *m_widget = nullptr; //!< corresponding main window or dock widget
QSizeGrip *m_framelessSizeGrip = nullptr;
//! Mouse press, required for frameless window
bool handleMousePressEvent(QMouseEvent *event);