mirror of
https://github.com/YACReader/yacreader
synced 2025-07-18 13:04:28 -04:00
Update russian translation. Need to subtract and to bring the terminology to a common denominator
This commit is contained in:
203
custom_widgets/yacreader_sidebar.cpp
Normal file
203
custom_widgets/yacreader_sidebar.cpp
Normal file
@ -0,0 +1,203 @@
|
||||
#include "yacreader_sidebar.h"
|
||||
|
||||
#include <QPainter>
|
||||
#include <QLayout>
|
||||
|
||||
#include "yacreader_folders_view.h"
|
||||
#include "yacreader_reading_lists_view.h"
|
||||
#include "yacreader_library_list_widget.h"
|
||||
#include "yacreader_search_line_edit.h"
|
||||
#include "yacreader_titled_toolbar.h"
|
||||
#include "yacreader_global_gui.h"
|
||||
|
||||
YACReaderSideBar::YACReaderSideBar(QWidget *parent) :
|
||||
QWidget(parent)
|
||||
{
|
||||
setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Minimum);
|
||||
|
||||
settings = new QSettings(YACReader::getSettingsPath()+"/YACReaderLibrary.ini",QSettings::IniFormat); //TODO unificar la creación del fichero de config con el servidor
|
||||
settings->beginGroup("libraryConfig");
|
||||
|
||||
//widgets
|
||||
foldersView = new YACReaderFoldersView;
|
||||
readingListsView = new YACReaderReadingListsView;
|
||||
selectedLibrary = new YACReaderLibraryListWidget;
|
||||
|
||||
#ifdef Q_OS_MAC
|
||||
librariesTitle = new YACReaderTitledToolBar(tr("Libraries"));
|
||||
foldersTitle = new YACReaderTitledToolBar(tr("Folders"));
|
||||
readingListsTitle = new YACReaderTitledToolBar(tr("Reading Lists"));
|
||||
#else
|
||||
librariesTitle = new YACReaderTitledToolBar(tr("LIBRARIES"));
|
||||
foldersTitle = new YACReaderTitledToolBar(tr("FOLDERS"));
|
||||
readingListsTitle = new YACReaderTitledToolBar(tr("READING LISTS"));
|
||||
#endif
|
||||
|
||||
splitter = new QSplitter(this);
|
||||
splitter->setOrientation(Qt::Vertical);
|
||||
|
||||
#ifndef Q_OS_MAC
|
||||
splitter->setStyleSheet("QSplitter::handle { "
|
||||
" image: none; background-color = black; "
|
||||
" }"
|
||||
"QSplitter::handle:vertical { height: 39px;}");
|
||||
#else
|
||||
splitter->setStyleSheet("QSplitter::handle:vertical { height: 26px; background-color: transparent;}");
|
||||
#endif
|
||||
|
||||
selectedLibrary->setContextMenuPolicy(Qt::ActionsContextMenu);
|
||||
selectedLibrary->setAttribute(Qt::WA_MacShowFocusRect,false);
|
||||
selectedLibrary->setFocusPolicy(Qt::NoFocus);
|
||||
|
||||
//layout
|
||||
QVBoxLayout * l = new QVBoxLayout;
|
||||
|
||||
l->setContentsMargins(0,0,0,0);
|
||||
|
||||
//LIBRARIES-------------------------------------------------------
|
||||
#ifndef Q_OS_MAC
|
||||
l->addSpacing(5);
|
||||
#endif
|
||||
|
||||
l->addWidget(librariesTitle);
|
||||
|
||||
#ifndef Q_OS_MAC
|
||||
l->addSpacing(4);
|
||||
l->addWidget(new YACReaderSideBarSeparator(this));
|
||||
l->addSpacing(3);
|
||||
#endif
|
||||
|
||||
l->addWidget(selectedLibrary);
|
||||
#ifndef Q_OS_MAC
|
||||
l->addSpacing(11);
|
||||
#else
|
||||
l->addSpacing(6);
|
||||
#endif
|
||||
|
||||
//END LIBRARIES---------------------------------------------------
|
||||
|
||||
//FOLDERS---------------------------------------------------------
|
||||
QWidget * foldersContainer = new QWidget(this);
|
||||
QVBoxLayout * foldersLayout = new QVBoxLayout;
|
||||
foldersLayout->setContentsMargins(0,0,0,0);
|
||||
foldersLayout->setSpacing(0);
|
||||
|
||||
#ifndef Q_OS_MAC
|
||||
//foldersLayout->addSpacing(6);
|
||||
|
||||
//foldersLayout->addSpacing(5);
|
||||
foldersLayout->addWidget(new YACReaderSideBarSeparator(this));
|
||||
foldersLayout->addSpacing(4);
|
||||
#else
|
||||
//foldersLayout->addSpacing(6);
|
||||
#endif
|
||||
|
||||
foldersLayout->addWidget(foldersTitle);
|
||||
|
||||
#ifndef Q_OS_MAC
|
||||
foldersLayout->addSpacing(4);
|
||||
foldersLayout->addWidget(new YACReaderSideBarSeparator(this));
|
||||
foldersLayout->addSpacing(4);
|
||||
#endif
|
||||
|
||||
foldersLayout->addWidget(foldersView);
|
||||
foldersLayout->addSpacing(6);
|
||||
|
||||
foldersContainer->setLayout(foldersLayout);
|
||||
splitter->addWidget(foldersContainer);
|
||||
//END FOLDERS------------------------------------------------------
|
||||
|
||||
//READING LISTS----------------------------------------------------
|
||||
splitter->addWidget(readingListsView);
|
||||
|
||||
QVBoxLayout * readingListsHeaderLayout = new QVBoxLayout;
|
||||
readingListsHeaderLayout->setContentsMargins(0,0,0,0);
|
||||
readingListsHeaderLayout->setSpacing(0);
|
||||
|
||||
#ifndef Q_OS_MAC
|
||||
//readingListsHeaderLayout->addSpacing(6);
|
||||
|
||||
//readingListsHeaderLayout->addSpacing(5);
|
||||
readingListsHeaderLayout->addWidget(new YACReaderSideBarSeparator(this));
|
||||
readingListsHeaderLayout->addSpacing(4);
|
||||
#else
|
||||
//readingListsHeaderLayout->addSpacing(6);
|
||||
#endif
|
||||
|
||||
readingListsHeaderLayout->addWidget(readingListsTitle);
|
||||
|
||||
#ifndef Q_OS_MAC
|
||||
readingListsHeaderLayout->addSpacing(4);
|
||||
readingListsHeaderLayout->addWidget(new YACReaderSideBarSeparator(this));
|
||||
readingListsHeaderLayout->addSpacing(4);
|
||||
#endif
|
||||
|
||||
//readingListsLayout->addWidget(readingListsView);
|
||||
readingListsHeaderLayout->addStretch();
|
||||
QSplitterHandle * handle = splitter->handle(1);
|
||||
//handle->setCursor(QCursor(Qt::ArrowCursor));
|
||||
handle->setLayout(readingListsHeaderLayout);
|
||||
//END READING LISTS------------------------------------------------
|
||||
|
||||
l->addWidget(splitter);
|
||||
l->setSpacing(0);
|
||||
|
||||
setLayout(l);
|
||||
|
||||
if(settings->contains(SIDEBAR_SPLITTER_STATUS))
|
||||
splitter->restoreState(settings->value(SIDEBAR_SPLITTER_STATUS).toByteArray());
|
||||
}
|
||||
|
||||
|
||||
void YACReaderSideBar::paintEvent(QPaintEvent * event)
|
||||
{
|
||||
Q_UNUSED(event)
|
||||
|
||||
#ifdef Q_OS_MAC
|
||||
QPainter painter(this);
|
||||
|
||||
painter.fillRect(0,0,width(),height(),QColor("#F1F1F1"));
|
||||
#else
|
||||
QPainter painter(this);
|
||||
|
||||
painter.fillRect(0,0,width(),height(),QColor("#454545"));
|
||||
//QWidget::paintEvent(event);
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
//QPixmap shadow(":/images/side_bar/shadow.png");
|
||||
//painter.drawPixmap(width()-shadow.width(),0,shadow.width(),height(),shadow);
|
||||
|
||||
// painter.setRenderHint(QPainter::Antialiasing);
|
||||
// painter.drawLine(rect().topLeft(), rect().bottomRight());
|
||||
|
||||
//QWidget::paintEvent(event);
|
||||
}
|
||||
|
||||
void YACReaderSideBar::closeEvent(QCloseEvent *event)
|
||||
{
|
||||
QWidget::closeEvent(event);
|
||||
|
||||
settings->setValue(SIDEBAR_SPLITTER_STATUS, splitter->saveState());
|
||||
}
|
||||
|
||||
QSize YACReaderSideBar::sizeHint() const
|
||||
{
|
||||
return QSize(275,200);
|
||||
}
|
||||
|
||||
YACReaderSideBarSeparator::YACReaderSideBarSeparator(QWidget *parent)
|
||||
:QWidget(parent)
|
||||
{
|
||||
setFixedHeight(1);
|
||||
}
|
||||
|
||||
void YACReaderSideBarSeparator::paintEvent(QPaintEvent * event)
|
||||
{
|
||||
Q_UNUSED(event)
|
||||
|
||||
QPainter painter(this);
|
||||
|
||||
painter.fillRect(5,0,width()-10,height(),QColor("#575757"));
|
||||
}
|
Reference in New Issue
Block a user