diff --git a/tools/lammps-gui/TODO.md b/tools/lammps-gui/TODO.md
index a8ce0285b5..7af2a4a4c6 100644
--- a/tools/lammps-gui/TODO.md
+++ b/tools/lammps-gui/TODO.md
@@ -2,7 +2,6 @@ LAMMPS-GUI TODO list:
# Short term goals (v1.x)
-- add "delete image files" option to Slide Show, plus pushbutton
- add "export YAML data" to Output viewer, if YAML thermo data is detected.
- add "export to YAML" to chart viewer.
diff --git a/tools/lammps-gui/icons/trash.png b/tools/lammps-gui/icons/trash.png
new file mode 100644
index 0000000000..723fc1435a
Binary files /dev/null and b/tools/lammps-gui/icons/trash.png differ
diff --git a/tools/lammps-gui/lammpsgui.qrc b/tools/lammps-gui/lammpsgui.qrc
index 6405d66d7a..8b8f7f950e 100644
--- a/tools/lammps-gui/lammpsgui.qrc
+++ b/tools/lammps-gui/lammpsgui.qrc
@@ -53,6 +53,7 @@
icons/system-box.png
icons/system-help.png
icons/system-run.png
+ icons/trash.png
icons/utilities-terminal.png
icons/vdw-style.png
icons/vmd.png
diff --git a/tools/lammps-gui/slideshow.cpp b/tools/lammps-gui/slideshow.cpp
index 9275842b78..dcc85fc34a 100644
--- a/tools/lammps-gui/slideshow.cpp
+++ b/tools/lammps-gui/slideshow.cpp
@@ -19,6 +19,7 @@
#include
#include
#include
+#include
#include
#include
#include
@@ -75,6 +76,9 @@ SlideShow::SlideShow(const QString &fileName, QWidget *parent) :
tomovie->setToolTip("Export to movie file");
tomovie->setEnabled(has_exe("ffmpeg"));
+ auto *totrash = new QPushButton(QIcon(":/icons/trash.png"), "");
+ totrash->setToolTip("Delete all image files");
+
auto *gofirst = new QPushButton(QIcon(":/icons/go-first.png"), "");
gofirst->setToolTip("Go to first Image");
auto *goprev = new QPushButton(QIcon(":/icons/go-previous-2.png"), "");
@@ -101,6 +105,7 @@ SlideShow::SlideShow(const QString &fileName, QWidget *parent) :
normal->setToolTip("Reset zoom to normal");
connect(tomovie, &QPushButton::released, this, &SlideShow::movie);
+ connect(totrash, &QPushButton::released, this, &SlideShow::delete_images);
connect(gofirst, &QPushButton::released, this, &SlideShow::first);
connect(goprev, &QPushButton::released, this, &SlideShow::prev);
connect(goplay, &QPushButton::released, this, &SlideShow::play);
@@ -115,6 +120,7 @@ SlideShow::SlideShow(const QString &fileName, QWidget *parent) :
navLayout->addSpacerItem(new QSpacerItem(10, 10, QSizePolicy::Expanding, QSizePolicy::Minimum));
navLayout->addWidget(dummy);
navLayout->addWidget(tomovie);
+ navLayout->addWidget(totrash);
navLayout->addWidget(gofirst);
navLayout->addWidget(goprev);
navLayout->addWidget(goplay);
@@ -157,6 +163,14 @@ void SlideShow::add_image(const QString &filename)
}
}
+void SlideShow::delete_images()
+{
+ for (const auto &file : imagefiles) {
+ QFile::remove(file);
+ }
+ clear();
+}
+
void SlideShow::clear()
{
imagefiles.clear();
@@ -316,7 +330,7 @@ void SlideShow::prev()
void SlideShow::loop()
{
auto *button = qobject_cast(sender());
- do_loop = !do_loop;
+ do_loop = !do_loop;
button->setChecked(do_loop);
}
diff --git a/tools/lammps-gui/slideshow.h b/tools/lammps-gui/slideshow.h
index 1b5e977643..4b13ff2e29 100644
--- a/tools/lammps-gui/slideshow.h
+++ b/tools/lammps-gui/slideshow.h
@@ -33,6 +33,7 @@ public:
private slots:
void quit();
+ void delete_images();
void stop_run();
void movie();
void first();