Skip to content
Snippets Groups Projects
Commit edb00e3c authored by Pospelov, Gennady's avatar Pospelov, Gennady
Browse files

QTreeView styles extracted to separate namespace.

parent 76922f01
No related branches found
No related tags found
No related merge requests found
......@@ -17,6 +17,7 @@
#include "SessionDecorationModel.h"
#include "SessionModel.h"
#include "GUIHelpers.h"
#include "StyleUtils.h"
#include <QVBoxLayout>
#include <QTreeView>
......@@ -36,29 +37,7 @@ ModelTreeView::ModelTreeView(QWidget* parent, SessionModel* model)
layout->setSpacing(0);
layout->addWidget(m_tree);
QString styleSheet;
// lines arount cell content
styleSheet += "QTreeView::item {"
" border-bottom: 1px solid #c7c8c9; "
" border-right: 1px solid #c7c8c9;}"
"QTreeView::branch {border-bottom: 1px solid #c7c8c9;}";
// styling of branch to restore open/closed signs eliminated by previous styling
styleSheet += "QTreeView::branch:has-children:!has-siblings:closed,"
"QTreeView::branch:closed:has-children:has-siblings {"
"padding:2px 2px 2px 2px;border-image: none;"
"image: url(:/images/caret-right.svg);}"
"QTreeView::branch:open:has-children:!has-siblings,"
"QTreeView::branch:open:has-children:has-siblings {"
"padding:2px 2px 2px 2px;border-image: none; image: url(:/images/caret-down.svg);"
"}";
// background of selected rows restored
styleSheet += "QTreeView::item:selected{"
" background:#3daee9;}";
m_tree->setStyleSheet(styleSheet);
m_tree->setStyleSheet(StyleUtils::propertyTreeStyle());
m_tree->setAlternatingRowColors(true);
m_decorationProxy->setSessionModel(model);
......
......@@ -25,25 +25,10 @@
#include "ParameterTuningModel.h"
#include "SliderSettingsWidget.h"
#include "WarningSign.h"
#include "StyleUtils.h"
#include <QTreeView>
#include <QVBoxLayout>
namespace {
const QString style_sheet =
"QTreeView::branch {background: "
"palette(base);}QTreeView::branch:has-siblings:!adjoins-item "
"{border-image: url(:/images/treeview-vline.png) 0;}QTreeView::branch:has-siblings:"
"adjoins-item {border-image: url(:/images/treeview-branch-more.png) 0;}QTreeView::branch:"
"!has-children:!has-siblings:adjoins-item {border-image: "
"url(:/images/treeview-branch-end.png) "
"0;}QTreeView::branch:has-children:!has-siblings:closed"
",QTreeView::branch:closed:has-children:has-siblings {border-image: none;image: "
"url(:/images/"
"treeview-branch-closed.png);}QTreeView::branch:open:has-children:!has-siblings,"
"QTreeView::branch:open:has-children:has-siblings {border-image: none;image: "
"url(:/images/treeview-branch-open.png);}";
}
ParameterTuningWidget::ParameterTuningWidget(QWidget* parent)
: SessionItemWidget(parent)
......@@ -57,7 +42,7 @@ ParameterTuningWidget::ParameterTuningWidget(QWidget* parent)
{
setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
m_treeView->setStyleSheet(style_sheet);
m_treeView->setStyleSheet(StyleUtils::realtimeTreeStyle());
m_treeView->setItemDelegate(m_delegate);
m_treeView->setContextMenuPolicy(Qt::CustomContextMenu);
m_treeView->setDragDropMode(QAbstractItemView::NoDragDrop);
......
//* ************************************************************************* //
//
// BornAgain: simulate and fit scattering at grazing incidence
//
//! @file GUI/coregui/utils/StyleUtils.h
//! @brief DefinesStyleUtils namespace
//!
//! @homepage http://www.bornagainproject.org
//! @license GNU General Public License v3 or higher (see COPYING)
//! @copyright Forschungszentrum Jülich GmbH 2016
//! @authors Scientific Computing Group at MLZ Garching
//! @authors Céline Durniak, Marina Ganeva, David Li, Gennady Pospelov
//! @authors Walter Van Herck, Joachim Wuttke
//
//* ************************************************************************* //
#include "StyleUtils.h"
QString StyleUtils::propertyTreeStyle()
{
QString result;
// lines arount cell content
result += "QTreeView::item {"
" border-bottom: 1px solid #c7c8c9; "
" border-right: 1px solid #c7c8c9;}"
"QTreeView::branch {border-bottom: 1px solid #c7c8c9;}";
// styling of branch to restore open/closed signs eliminated by previous styling
result += "QTreeView::branch:has-children:!has-siblings:closed,"
"QTreeView::branch:closed:has-children:has-siblings {"
"padding:2px 2px 2px 2px;border-image: none;"
"image: url(:/images/caret-right.svg);}"
"QTreeView::branch:open:has-children:!has-siblings,"
"QTreeView::branch:open:has-children:has-siblings {"
"padding:2px 2px 2px 2px;border-image: none; image: url(:/images/caret-down.svg);"
"}";
// background of selected rows restored
result += "QTreeView::item:selected{background:#3daee9;}";
return result;
}
QString StyleUtils::realtimeTreeStyle()
{
QString result =
"QTreeView::branch {background: "
"palette(base);}QTreeView::branch:has-siblings:!adjoins-item "
"{border-image: url(:/images/treeview-vline.png) 0;}QTreeView::branch:has-siblings:"
"adjoins-item {border-image: url(:/images/treeview-branch-more.png) 0;}QTreeView::branch:"
"!has-children:!has-siblings:adjoins-item {border-image: "
"url(:/images/treeview-branch-end.png) "
"0;}QTreeView::branch:has-children:!has-siblings:closed"
",QTreeView::branch:closed:has-children:has-siblings {border-image: none;image: "
"url(:/images/"
"treeview-branch-closed.png);}QTreeView::branch:open:has-children:!has-siblings,"
"QTreeView::branch:open:has-children:has-siblings {border-image: none;image: "
"url(:/images/treeview-branch-open.png);}";
return result;
}
//* ************************************************************************* //
//
// BornAgain: simulate and fit scattering at grazing incidence
//
//! @file GUI/coregui/utils/StyleUtils.h
//! @brief DefinesStyleUtils namespace
//!
//! @homepage http://www.bornagainproject.org
//! @license GNU General Public License v3 or higher (see COPYING)
//! @copyright Forschungszentrum Jülich GmbH 2016
//! @authors Scientific Computing Group at MLZ Garching
//! @authors Céline Durniak, Marina Ganeva, David Li, Gennady Pospelov
//! @authors Walter Van Herck, Joachim Wuttke
//
//* ************************************************************************* //
#ifndef STYLEUTILS_H
#define STYLEUTILS_H
#include "WinDllMacros.h"
#include <QString>
namespace StyleUtils
{
//! Returns string representing the style of QTreeView intended for property editor.
BA_CORE_API_ QString propertyTreeStyle();
//! Returns string representing the style of QTreeView intended for real time view.
BA_CORE_API_ QString realtimeTreeStyle();
}
#endif
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment