mirror of
https://github.com/YACReader/yacreader
synced 2025-05-28 03:10:27 -04:00
130 lines
3.8 KiB
C++
130 lines
3.8 KiB
C++
#include "yacreader_social_dialog.h"
|
|
|
|
#include <QVBoxLayout>
|
|
#include <QHBoxLayout>
|
|
#include <QProgressBar>
|
|
#include <QPushButton>
|
|
#include <QLabel>
|
|
#include <QPainter>
|
|
#include <QToolButton>
|
|
#include <QPlainTextEdit>
|
|
#include <QGraphicsDropShadowEffect>
|
|
|
|
#include "comic_db.h"
|
|
|
|
YACReaderSocialDialog::YACReaderSocialDialog(QWidget *parent) :
|
|
QWidget(parent)
|
|
{
|
|
|
|
//setWindowFlags(Qt::Window | Qt::Dialog | Qt::FramelessWindowHint);
|
|
//setModal(true);
|
|
|
|
|
|
QToolButton * close = new QToolButton(this);
|
|
close->setIcon(QIcon(":/images/social_dialog/close.png"));
|
|
|
|
QToolButton * facebook = new QToolButton(this);
|
|
facebook->setIcon(QIcon(":/images/social_dialog/facebook.png"));
|
|
|
|
QToolButton * twitter = new QToolButton(this);
|
|
twitter->setIcon(QIcon(":/images/social_dialog/twitter.png"));
|
|
|
|
QToolButton * google = new QToolButton(this);
|
|
google->setIcon(QIcon(":/images/social_dialog/google+.png"));
|
|
|
|
QString styleSheet = "QToolButton {border:none; }";
|
|
close->setStyleSheet(styleSheet);
|
|
facebook->setStyleSheet(styleSheet);
|
|
twitter->setStyleSheet(styleSheet);
|
|
google->setStyleSheet(styleSheet);
|
|
|
|
QLabel * icon = new QLabel(this);
|
|
icon->setPixmap(QPixmap(":/images/social_dialog/icon.png"));
|
|
|
|
plainText = new QTextEdit (this);
|
|
plainText->setStyleSheet("QTextEdit {border:none; padding:11px; font-size:12px; font-weight:bold; color:#525757;}");
|
|
QTextCursor cursor(plainText->textCursor());
|
|
QTextBlockFormat blockFormat = cursor.blockFormat();
|
|
blockFormat.setLineHeight(12,QTextBlockFormat::SingleHeight);
|
|
cursor.setBlockFormat(blockFormat);
|
|
QLabel * sendTo = new QLabel(tr("send to:"),this);
|
|
sendTo->setStyleSheet("QLabel{color:#ABABAB; font-size:12px; font-weight:bold;}");
|
|
|
|
setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
|
|
|
|
resize( sizeHint() );
|
|
|
|
close->move(437,5);
|
|
|
|
QWidget * send = new QWidget(this);
|
|
QHBoxLayout * sendLayout = new QHBoxLayout;
|
|
|
|
QPushButton * follow = new QPushButton(tr("Follow YACReader!"),this);
|
|
|
|
follow->setStyleSheet("QPushButton{border:none; color:#FFFFFF;background:#404040; padding: 9px 25px 9px 25px; font-weight:bold; font-size:12px;}"
|
|
"QPushButton:hover{background:#E3B800;}");
|
|
|
|
sendLayout->setMargin(0);
|
|
sendLayout->setSpacing(0);
|
|
|
|
sendLayout->addWidget(sendTo,1,Qt::AlignHCenter);
|
|
sendLayout->addSpacing(11);
|
|
sendLayout->addWidget(facebook,0,Qt::AlignHCenter);
|
|
sendLayout->addSpacing(6);
|
|
sendLayout->addWidget(twitter,0,Qt::AlignHCenter);
|
|
sendLayout->addSpacing(6);
|
|
sendLayout->addWidget(google,0,Qt::AlignHCenter);
|
|
|
|
send->setLayout(sendLayout);
|
|
send->move(317,259);
|
|
|
|
icon->move(279,14);
|
|
plainText->setFixedSize(291,155);
|
|
plainText->move(169,96);
|
|
|
|
follow->move(230,307);
|
|
|
|
connect(close,SIGNAL(released()),this,SLOT(close()));
|
|
|
|
|
|
|
|
}
|
|
|
|
void YACReaderSocialDialog::paintEvent(QPaintEvent * event)
|
|
{
|
|
QPainter painter(this);
|
|
|
|
//center
|
|
painter.fillRect(169,0,291,369,QColor("#F0F0F0"));
|
|
painter.fillRect(169,96,291,155,QColor("#FFFFFF"));
|
|
|
|
|
|
//QPixmap cover = QPixmap("c:/temp/6.jpg").scaledToHeight(369,Qt::SmoothTransformation);
|
|
painter.drawPixmap(0,0,169,369,cover,0,0, (169 * cover.height())/369 ,cover.height());
|
|
|
|
|
|
QPixmap shadow(":/images/social_dialog/shadow.png");
|
|
painter.drawPixmap(169-shadow.width(),0,shadow.width(),369,shadow);
|
|
|
|
|
|
QPixmap separtor(":/images/social_dialog/separator.png");
|
|
painter.drawPixmap(169,96-separtor.height(),separtor);
|
|
|
|
QPen pen("#C3CAD6");
|
|
painter.setPen(pen);
|
|
painter.drawLine(169,251,460,251);
|
|
|
|
QWidget::paintEvent(event);
|
|
|
|
}
|
|
|
|
QSize YACReaderSocialDialog::sizeHint() const
|
|
{
|
|
return QSize(460,369);
|
|
}
|
|
|
|
void YACReaderSocialDialog::setComic(ComicDB & comic, QString & basePath)
|
|
{
|
|
this->cover = comic.info.getCover(basePath).scaledToHeight(369,Qt::SmoothTransformation);
|
|
plainText->setText(tr("I am reading %1 using YACReader.").arg(comic.path.split('/').last()));
|
|
} |