mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-09 18:31:04 +00:00
Add button to stop processing
(rather than having it stop by clicking on the spinner)
This commit is contained in:
parent
0264141b3c
commit
869247b617
@ -661,6 +661,7 @@ dist_images_DATA1X = \
|
|||||||
images/outline-out+rtl.svgz \
|
images/outline-out+rtl.svgz \
|
||||||
images/outline-up.svgz \
|
images/outline-up.svgz \
|
||||||
images/paste.svgz \
|
images/paste.svgz \
|
||||||
|
images/process-stop.svgz \
|
||||||
images/redo.svgz \
|
images/redo.svgz \
|
||||||
images/reload.svgz \
|
images/reload.svgz \
|
||||||
images/search-case-sensitive.svgz \
|
images/search-case-sensitive.svgz \
|
||||||
|
BIN
lib/images/process-stop.svgz
Normal file
BIN
lib/images/process-stop.svgz
Normal file
Binary file not shown.
@ -633,6 +633,10 @@ GuiView::GuiView(int id)
|
|||||||
// For Drag&Drop.
|
// For Drag&Drop.
|
||||||
setAcceptDrops(true);
|
setAcceptDrops(true);
|
||||||
|
|
||||||
|
QFontMetrics const fm(statusBar()->fontMetrics());
|
||||||
|
int const iconheight = max(int(d.normalIconSize), fm.height());
|
||||||
|
QSize const iconsize(iconheight, iconheight);
|
||||||
|
|
||||||
// add busy indicator to statusbar
|
// add busy indicator to statusbar
|
||||||
search_mode mode = theGuiApp()->imageSearchMode();
|
search_mode mode = theGuiApp()->imageSearchMode();
|
||||||
QString fn = toqstr(lyx::libFileSearch("images", "busy", "svgz", mode).absFileName());
|
QString fn = toqstr(lyx::libFileSearch("images", "busy", "svgz", mode).absFileName());
|
||||||
@ -641,12 +645,23 @@ GuiView::GuiView(int id)
|
|||||||
// make busy indicator square with 5px margins
|
// make busy indicator square with 5px margins
|
||||||
busySVG->setMaximumSize(busySVG->height() - 5, busySVG->height() - 5);
|
busySVG->setMaximumSize(busySVG->height() - 5, busySVG->height() - 5);
|
||||||
busySVG->hide();
|
busySVG->hide();
|
||||||
|
// Add cancel button
|
||||||
|
QPixmap ps = QIcon(getPixmap("images/", "process-stop", "svgz")).pixmap(iconsize);
|
||||||
|
GuiClickableLabel * processStop = new GuiClickableLabel(statusBar());
|
||||||
|
processStop->setPixmap(ps);
|
||||||
|
processStop->setToolTip(qt_("Click here to stop export/output process"));
|
||||||
|
processStop->hide();
|
||||||
|
statusBar()->addPermanentWidget(processStop);
|
||||||
|
|
||||||
connect(&d.processing_thread_watcher_, SIGNAL(started()),
|
connect(&d.processing_thread_watcher_, SIGNAL(started()),
|
||||||
busySVG, SLOT(show()));
|
busySVG, SLOT(show()));
|
||||||
connect(&d.processing_thread_watcher_, SIGNAL(finished()),
|
connect(&d.processing_thread_watcher_, SIGNAL(finished()),
|
||||||
busySVG, SLOT(hide()));
|
busySVG, SLOT(hide()));
|
||||||
connect(busySVG, SIGNAL(pressed()), this, SLOT(checkCancelBackground()));
|
connect(&d.processing_thread_watcher_, SIGNAL(started()),
|
||||||
|
processStop, SLOT(show()));
|
||||||
|
connect(&d.processing_thread_watcher_, SIGNAL(finished()),
|
||||||
|
processStop, SLOT(hide()));
|
||||||
|
connect(processStop, SIGNAL(pressed()), this, SLOT(checkCancelBackground()));
|
||||||
|
|
||||||
stat_counts_ = new GuiClickableLabel(statusBar());
|
stat_counts_ = new GuiClickableLabel(statusBar());
|
||||||
stat_counts_->setAlignment(Qt::AlignCenter);
|
stat_counts_->setAlignment(Qt::AlignCenter);
|
||||||
@ -656,9 +671,6 @@ GuiView::GuiView(int id)
|
|||||||
|
|
||||||
connect(stat_counts_, SIGNAL(clicked()), this, SLOT(statsPressed()));
|
connect(stat_counts_, SIGNAL(clicked()), this, SLOT(statsPressed()));
|
||||||
|
|
||||||
|
|
||||||
QFontMetrics const fm(statusBar()->fontMetrics());
|
|
||||||
|
|
||||||
zoom_slider_ = new QSlider(Qt::Horizontal, statusBar());
|
zoom_slider_ = new QSlider(Qt::Horizontal, statusBar());
|
||||||
// Small size slider for macOS to prevent the status bar from enlarging
|
// Small size slider for macOS to prevent the status bar from enlarging
|
||||||
zoom_slider_->setAttribute(Qt::WA_MacSmallSize);
|
zoom_slider_->setAttribute(Qt::WA_MacSmallSize);
|
||||||
@ -730,9 +742,6 @@ GuiView::GuiView(int id)
|
|||||||
// enable pinch to zoom
|
// enable pinch to zoom
|
||||||
grabGesture(Qt::PinchGesture);
|
grabGesture(Qt::PinchGesture);
|
||||||
|
|
||||||
int const iconheight = max(int(d.normalIconSize), fm.height());
|
|
||||||
QSize const iconsize(iconheight, iconheight);
|
|
||||||
|
|
||||||
QPixmap shellescape = QIcon(getPixmap("images/", "emblem-shellescape", "svgz,png")).pixmap(iconsize);
|
QPixmap shellescape = QIcon(getPixmap("images/", "emblem-shellescape", "svgz,png")).pixmap(iconsize);
|
||||||
shell_escape_ = new QLabel(statusBar());
|
shell_escape_ = new QLabel(statusBar());
|
||||||
shell_escape_->setPixmap(shellescape);
|
shell_escape_->setPixmap(shellescape);
|
||||||
|
Loading…
Reference in New Issue
Block a user