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();