#include "yacreader_sidebar.h" #include #include #include "yacreader_treeview.h" #include "yacreader_library_list_widget.h" #include "yacreader_search_line_edit.h" #include "yacreader_titled_toolbar.h" YACReaderSideBar::YACReaderSideBar(QWidget *parent) : QWidget(parent) { setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Minimum); //widgets foldersView = new YACReaderTreeView; selectedLibrary = new YACReaderLibraryListWidget; foldersFilter = new YACReaderSearchLineEdit(); librariesTitle = new YACReaderTitledToolBar(tr("LIBRARIES")); foldersTitle = new YACReaderTitledToolBar(tr("FOLDERS")); selectedLibrary->setContextMenuPolicy(Qt::ActionsContextMenu); selectedLibrary->setAttribute(Qt::WA_MacShowFocusRect,false); selectedLibrary->setFocusPolicy(Qt::NoFocus); foldersFilter->setAttribute(Qt::WA_MacShowFocusRect,false); foldersFilter->setPlaceholderText(tr("Search folders and comics")); //layout QVBoxLayout * l = new QVBoxLayout; l->setContentsMargins(0,0,0,0); #ifndef Q_OS_MAC l->addSpacing(5); #endif l->addWidget(librariesTitle); #ifndef Q_OS_MAC {QWidget * w = new QWidget(); w->setStyleSheet("QWidget {border:none; border-bottom:1px solid #636363;border-top:1px solid #292929;}"); w->setMinimumHeight(2); l->addSpacing(4); l->addWidget(w);} l->addSpacing(3); #endif l->addWidget(selectedLibrary); #ifndef Q_OS_MAC l->addSpacing(6); {QWidget * w = new QWidget(); w->setStyleSheet("QWidget {border:none; border-bottom:1px solid #636363;border-top:1px solid #292929;}"); w->setMinimumHeight(2); l->addSpacing(5); l->addWidget(w);} l->addSpacing(4); #else l->addSpacing(6); #endif l->addWidget(foldersTitle); #ifndef Q_OS_MAC {QWidget * w = new QWidget(); w->setStyleSheet("QWidget {border:none; border-bottom:1px solid #636363;border-top:1px solid #292929;}"); w->setMinimumHeight(2); l->addSpacing(4); l->addWidget(w);} l->addSpacing(4); #endif l->addWidget(foldersView); l->addWidget(foldersFilter); l->setSpacing(0); setLayout(l); } void YACReaderSideBar::paintEvent(QPaintEvent * event) { Q_UNUSED(event) #ifdef Q_OS_MAC QPainter painter(this); QLinearGradient lG(0,0,0,height()); lG.setColorAt(0,QColor("#E8ECF1")); lG.setColorAt(1,QColor("#D1D8E0")); painter.fillRect(0,0,width(),height(),lG); #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); } QSize YACReaderSideBar::sizeHint() const { return QSize(275,200); }