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 init();
|
||||||
void updateLibraries();
|
void updateLibraries();
|
||||||
|
|
||||||
|
public slots:
|
||||||
void stop();
|
void stop();
|
||||||
void cancel();
|
void cancel();
|
||||||
|
|
||||||
|
@ -513,6 +513,8 @@ void LibraryWindow::setupCoordinators()
|
|||||||
connect(librariesUpdateCoordinator, &LibrariesUpdateCoordinator::updateEnded, this, &LibraryWindow::reloadCurrentLibrary);
|
connect(librariesUpdateCoordinator, &LibrariesUpdateCoordinator::updateEnded, this, &LibraryWindow::reloadCurrentLibrary);
|
||||||
|
|
||||||
librariesUpdateCoordinator->init();
|
librariesUpdateCoordinator->init();
|
||||||
|
|
||||||
|
connect(sideBar->librariesTitle, &YACReaderTitledToolBar::cancelOperationRequested, librariesUpdateCoordinator, &LibrariesUpdateCoordinator::cancel);
|
||||||
}
|
}
|
||||||
|
|
||||||
void LibraryWindow::createActions()
|
void LibraryWindow::createActions()
|
||||||
|
@ -278,7 +278,7 @@ QWidget *OptionsDialog::createLibrariesTab()
|
|||||||
librariesBoxLayout->addWidget(updateLibrariesAtCertainTimeCheck);
|
librariesBoxLayout->addWidget(updateLibrariesAtCertainTimeCheck);
|
||||||
librariesBoxLayout->addLayout(updateLibrariesAtCertainTimeLayout);
|
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"));
|
auto librariesBox = new QGroupBox(tr("Libraries"));
|
||||||
librariesBox->setLayout(librariesBoxLayout);
|
librariesBox->setLayout(librariesBoxLayout);
|
||||||
|
@ -63,6 +63,12 @@ BusyIndicator::IndicatorStyle BusyIndicator::indicatorStyle() const
|
|||||||
return m_style;
|
return m_style;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void BusyIndicator::mouseReleaseEvent(QMouseEvent *event)
|
||||||
|
{
|
||||||
|
Q_UNUSED(event);
|
||||||
|
emit clicked();
|
||||||
|
}
|
||||||
|
|
||||||
QPixmap BusyIndicator::generatePixmap(int side)
|
QPixmap BusyIndicator::generatePixmap(int side)
|
||||||
{
|
{
|
||||||
QPixmap pixmap(QSize(side, side));
|
QPixmap pixmap(QSize(side, side));
|
||||||
|
@ -22,15 +22,17 @@ public:
|
|||||||
|
|
||||||
explicit BusyIndicator(QWidget *parent = 0, int size = 30);
|
explicit BusyIndicator(QWidget *parent = 0, int size = 30);
|
||||||
|
|
||||||
void paintEvent(QPaintEvent *);
|
void paintEvent(QPaintEvent *) override;
|
||||||
QSize minimumSizeHint() const;
|
QSize minimumSizeHint() const override;
|
||||||
QSize sizeHint() const;
|
QSize sizeHint() const override;
|
||||||
|
|
||||||
void setIndicatorStyle(IndicatorStyle);
|
void setIndicatorStyle(IndicatorStyle);
|
||||||
void setColor(QColor color);
|
void setColor(QColor color);
|
||||||
IndicatorStyle indicatorStyle() const;
|
IndicatorStyle indicatorStyle() const;
|
||||||
|
void mouseReleaseEvent(QMouseEvent *event) override;
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
|
void clicked();
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void rotate();
|
void rotate();
|
||||||
|
@ -71,6 +71,7 @@ YACReaderTitledToolBar::YACReaderTitledToolBar(const QString &title, QWidget *pa
|
|||||||
|
|
||||||
nameLabel = new DropShadowLabel(this);
|
nameLabel = new DropShadowLabel(this);
|
||||||
busyIndicator = new BusyIndicator(this, 12);
|
busyIndicator = new BusyIndicator(this, 12);
|
||||||
|
connect(busyIndicator, &BusyIndicator::clicked, this, &YACReaderTitledToolBar::cancelOperationRequested);
|
||||||
busyIndicator->setIndicatorStyle(BusyIndicator::StyleArc);
|
busyIndicator->setIndicatorStyle(BusyIndicator::StyleArc);
|
||||||
#ifdef Y_MAC_UI
|
#ifdef Y_MAC_UI
|
||||||
busyIndicator->setColor(QColor("#808080"));
|
busyIndicator->setColor(QColor("#808080"));
|
||||||
|
@ -34,6 +34,7 @@ public:
|
|||||||
explicit YACReaderTitledToolBar(const QString &title, QWidget *parent = 0);
|
explicit YACReaderTitledToolBar(const QString &title, QWidget *parent = 0);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
|
void cancelOperationRequested();
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void addAction(QAction *action);
|
void addAction(QAction *action);
|
||||||
|
Loading…
Reference in New Issue
Block a user