mirror of
https://github.com/YACReader/yacreader
synced 2025-05-28 03:10:27 -04:00
Make automatic updates cancelable by the user
This commit is contained in:
parent
b709e000cf
commit
8e2910607d
@ -15,6 +15,8 @@ public:
|
||||
|
||||
void init();
|
||||
void updateLibraries();
|
||||
|
||||
public slots:
|
||||
void stop();
|
||||
void cancel();
|
||||
|
||||
|
@ -513,6 +513,8 @@ void LibraryWindow::setupCoordinators()
|
||||
connect(librariesUpdateCoordinator, &LibrariesUpdateCoordinator::updateEnded, this, &LibraryWindow::reloadCurrentLibrary);
|
||||
|
||||
librariesUpdateCoordinator->init();
|
||||
|
||||
connect(sideBar->librariesTitle, &YACReaderTitledToolBar::cancelOperationRequested, librariesUpdateCoordinator, &LibrariesUpdateCoordinator::cancel);
|
||||
}
|
||||
|
||||
void LibraryWindow::createActions()
|
||||
|
@ -278,7 +278,7 @@ QWidget *OptionsDialog::createLibrariesTab()
|
||||
librariesBoxLayout->addWidget(updateLibrariesAtCertainTimeCheck);
|
||||
librariesBoxLayout->addLayout(updateLibrariesAtCertainTimeLayout);
|
||||
|
||||
librariesBoxLayout->addWidget(new QLabel(tr("WARNING! During library updates writes to the database are disabled!\nDon't schedule updates while you may be using the app actively.")));
|
||||
librariesBoxLayout->addWidget(new QLabel(tr("WARNING! During library updates writes to the database are disabled!\nDon't schedule updates while you may be using the app actively.\nTo stop an automatic update tap on the loading indicator next to the Libraries title.")));
|
||||
|
||||
auto librariesBox = new QGroupBox(tr("Libraries"));
|
||||
librariesBox->setLayout(librariesBoxLayout);
|
||||
|
@ -63,6 +63,12 @@ BusyIndicator::IndicatorStyle BusyIndicator::indicatorStyle() const
|
||||
return m_style;
|
||||
}
|
||||
|
||||
void BusyIndicator::mouseReleaseEvent(QMouseEvent *event)
|
||||
{
|
||||
Q_UNUSED(event);
|
||||
emit clicked();
|
||||
}
|
||||
|
||||
QPixmap BusyIndicator::generatePixmap(int side)
|
||||
{
|
||||
QPixmap pixmap(QSize(side, side));
|
||||
|
@ -22,15 +22,17 @@ public:
|
||||
|
||||
explicit BusyIndicator(QWidget *parent = 0, int size = 30);
|
||||
|
||||
void paintEvent(QPaintEvent *);
|
||||
QSize minimumSizeHint() const;
|
||||
QSize sizeHint() const;
|
||||
void paintEvent(QPaintEvent *) override;
|
||||
QSize minimumSizeHint() const override;
|
||||
QSize sizeHint() const override;
|
||||
|
||||
void setIndicatorStyle(IndicatorStyle);
|
||||
void setColor(QColor color);
|
||||
IndicatorStyle indicatorStyle() const;
|
||||
void mouseReleaseEvent(QMouseEvent *event) override;
|
||||
|
||||
signals:
|
||||
void clicked();
|
||||
|
||||
private slots:
|
||||
void rotate();
|
||||
|
@ -71,6 +71,7 @@ YACReaderTitledToolBar::YACReaderTitledToolBar(const QString &title, QWidget *pa
|
||||
|
||||
nameLabel = new DropShadowLabel(this);
|
||||
busyIndicator = new BusyIndicator(this, 12);
|
||||
connect(busyIndicator, &BusyIndicator::clicked, this, &YACReaderTitledToolBar::cancelOperationRequested);
|
||||
busyIndicator->setIndicatorStyle(BusyIndicator::StyleArc);
|
||||
#ifdef Y_MAC_UI
|
||||
busyIndicator->setColor(QColor("#808080"));
|
||||
|
@ -34,6 +34,7 @@ public:
|
||||
explicit YACReaderTitledToolBar(const QString &title, QWidget *parent = 0);
|
||||
|
||||
signals:
|
||||
void cancelOperationRequested();
|
||||
|
||||
public slots:
|
||||
void addAction(QAction *action);
|
||||
|
Loading…
Reference in New Issue
Block a user