mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-23 07:15:35 +08:00
refs #299, dockable info bar, with style sheet
This commit is contained in:
41
src/blackgui/dockwidgetinfobar.cpp
Normal file
41
src/blackgui/dockwidgetinfobar.cpp
Normal file
@@ -0,0 +1,41 @@
|
||||
/* Copyright (C) 2013
|
||||
* swift Project Community / Contributors
|
||||
*
|
||||
* This file is part of swift Project. It is subject to the license terms in the LICENSE file found in the top-level
|
||||
* directory of this distribution and at http://www.swift-project.org/license.html. No part of Swift Project,
|
||||
* including this file, may be copied, modified, propagated, or distributed except according to the terms
|
||||
* contained in the LICENSE file.
|
||||
*/
|
||||
|
||||
#include "dockwidgetinfobar.h"
|
||||
#include "components/maininfoareacomponent.h"
|
||||
#include "stylesheetutility.h"
|
||||
#include "blackmisc/icons.h"
|
||||
|
||||
#include <QStyleOption>
|
||||
|
||||
using namespace BlackMisc;
|
||||
using namespace BlackGui::Components;
|
||||
|
||||
namespace BlackGui
|
||||
{
|
||||
CDockWidgetInfoBar::CDockWidgetInfoBar(QWidget *parent) : CDockWidget(parent)
|
||||
{
|
||||
this->setMarginsWhenDocked(0, 0, 0, -1);
|
||||
this->setWindowTitle("Info bar");
|
||||
this->setWindowIcon(CIcons::swift24());
|
||||
this->ps_onStyleSheetsChanged();
|
||||
}
|
||||
|
||||
void CDockWidgetInfoBar::addToContextMenu(QMenu *contextMenu) const
|
||||
{
|
||||
// Dockable widget's context menu
|
||||
CDockWidget::addToContextMenu(contextMenu);
|
||||
}
|
||||
|
||||
void CDockWidgetInfoBar::ps_onStyleSheetsChanged()
|
||||
{
|
||||
QString st = CStyleSheetUtility::instance().style(CStyleSheetUtility::fileNameInfoBar());
|
||||
this->setStyleSheet(st);
|
||||
}
|
||||
}
|
||||
41
src/blackgui/dockwidgetinfobar.h
Normal file
41
src/blackgui/dockwidgetinfobar.h
Normal file
@@ -0,0 +1,41 @@
|
||||
/* Copyright (C) 2014
|
||||
* Swift Project Community / Contributors
|
||||
*
|
||||
* This file is part of swift Project. It is subject to the license terms in the LICENSE file found in the top-level
|
||||
* directory of this distribution and at http://www.swift-project.org/license.html. No part of Swift Project,
|
||||
* including this file, may be copied, modified, propagated, or distributed except according to the terms
|
||||
* contained in the LICENSE file.
|
||||
*/
|
||||
|
||||
//! \file
|
||||
|
||||
#ifndef BLACKGUI_DOCKWIDGETINFOBAR_H
|
||||
#define BLACKGUI_DOCKWIDGETINFOBAR_H
|
||||
|
||||
#include "blackgui/dockwidget.h"
|
||||
|
||||
namespace BlackGui
|
||||
{
|
||||
|
||||
//! Class for dock widgets in the info area, containing some specialized functionality
|
||||
class CDockWidgetInfoBar : public CDockWidget
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
//! Constructor
|
||||
explicit CDockWidgetInfoBar(QWidget *parent = nullptr);
|
||||
|
||||
protected:
|
||||
//! Contribute to menu
|
||||
virtual void addToContextMenu(QMenu *contextMenu) const override;
|
||||
|
||||
protected slots:
|
||||
//! \copydoc CDockWidget::ps_onStyleSheetsChanged
|
||||
virtual void ps_onStyleSheetsChanged() override;
|
||||
|
||||
};
|
||||
|
||||
} // namespace
|
||||
|
||||
#endif // guard
|
||||
7
src/blackgui/qss/infobar.qss
Normal file
7
src/blackgui/qss/infobar.qss
Normal file
@@ -0,0 +1,7 @@
|
||||
QFrame {
|
||||
background-color: darkslategray;
|
||||
margin: 0px;
|
||||
padding-left: 6px;
|
||||
padding-right: 6px;
|
||||
padding-bottom: 0px;
|
||||
}
|
||||
@@ -61,6 +61,13 @@ namespace BlackGui
|
||||
return f;
|
||||
}
|
||||
|
||||
//! File name infobar.qss
|
||||
static const QString &fileNameInfoBar()
|
||||
{
|
||||
static const QString f("infobar.qss");
|
||||
return f;
|
||||
}
|
||||
|
||||
//! File name dockwidgettab.qss
|
||||
static const QString &fileNameDockWidgetTab()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user