diff --git a/src/qt/qt_filefield.cpp b/src/qt/qt_filefield.cpp
index fbeed6066..2d7268d97 100644
--- a/src/qt/qt_filefield.cpp
+++ b/src/qt/qt_filefield.cpp
@@ -30,7 +30,9 @@ void FileField::on_pushButton_clicked() {
fileName = QFileDialog::getOpenFileName(this, QString(), QString(), filter_, &selectedFilter_);
}
- fileName_ = fileName;
- ui->label->setText(fileName);
- emit fileSelected(fileName);
+ if (!fileName.isNull()) {
+ fileName_ = fileName;
+ ui->label->setText(fileName);
+ emit fileSelected(fileName);
+ }
}
diff --git a/src/qt/qt_mainwindow.cpp b/src/qt/qt_mainwindow.cpp
index 6d017dc7a..844edec63 100644
--- a/src/qt/qt_mainwindow.cpp
+++ b/src/qt/qt_mainwindow.cpp
@@ -104,10 +104,12 @@ MainWindow::MainWindow(QWidget *parent) :
{
/* get the percentage and mouse message, TODO: refactor ui_window_title() */
auto parts = title.split(" - ");
- if (parts.size() < 5)
- toolbar_label->setText(parts[1]);
- else
- toolbar_label->setText(QString("%1 - %2").arg(parts[1], parts.last()));
+ if (parts.size() >= 2) {
+ if (parts.size() < 5)
+ toolbar_label->setText(parts[1]);
+ else
+ toolbar_label->setText(QString("%1 - %2").arg(parts[1], parts.last()));
+ }
}
#endif
ui->actionPause->setChecked(dopause);
@@ -346,11 +348,11 @@ MainWindow::MainWindow(QWidget *parent) :
#ifdef MTR_ENABLED
{
ui->menuTools->addSeparator();
- static auto actionBegin_trace = ui->menuTools->addAction(tr("Begin trace"));
- static auto actionEnd_trace = ui->menuTools->addAction(tr("End trace"));
- actionBegin_trace->setShortcut(QKeySequence(Qt::Key_Control + Qt::Key_T));
- actionEnd_trace->setShortcut(QKeySequence(Qt::Key_Control + Qt::Key_T));
- actionEnd_trace->setDisabled(true);
+ ui->actionBegin_trace->setVisible(true);
+ ui->actionEnd_trace->setVisible(true);
+ ui->actionBegin_trace->setShortcut(QKeySequence(Qt::Key_Control + Qt::Key_T));
+ ui->actionEnd_trace->setShortcut(QKeySequence(Qt::Key_Control + Qt::Key_T));
+ ui->actionEnd_trace->setDisabled(true);
static auto init_trace = [&]
{
mtr_init("trace.json");
@@ -362,43 +364,28 @@ MainWindow::MainWindow(QWidget *parent) :
mtr_shutdown();
};
#ifdef Q_OS_MACOS
- actionBegin_trace->setShortcutVisibleInContextMenu(true);
- actionEnd_trace->setShortcutVisibleInContextMenu(true);
+ ui->actionBegin_trace->setShortcutVisibleInContextMenu(true);
+ ui->actionEnd_trace->setShortcutVisibleInContextMenu(true);
#endif
static bool trace = false;
- connect(actionBegin_trace, &QAction::triggered, this, [this]
+ connect(ui->actionBegin_trace, &QAction::triggered, this, [this]
{
if (trace) return;
- actionBegin_trace->setDisabled(true);
- actionEnd_trace->setDisabled(false);
+ ui->actionBegin_trace->setDisabled(true);
+ ui->actionEnd_trace->setDisabled(false);
init_trace();
trace = true;
});
- connect(actionEnd_trace, &QAction::triggered, this, [this]
+ connect(ui->actionEnd_trace, &QAction::triggered, this, [this]
{
if (!trace) return;
- actionBegin_trace->setDisabled(false);
- actionEnd_trace->setDisabled(true);
+ ui->actionBegin_trace->setDisabled(false);
+ ui->actionEnd_trace->setDisabled(true);
shutdown_trace();
trace = false;
});
}
#endif
-
-#ifdef ENABLE_VRAM_DUMP
- {
-#ifndef MTR_ENABLED
- ui->menuTools->addSeparator();
-#endif
- auto actionDump_video_RAM = ui->menuTools->addAction(tr("Dump &video RAM"));
- actionDump_video_RAM->setShortcut(QKeySequence(Qt::Key_Control + Qt::Key_F1));
-#ifdef Q_OS_MACOS
- actionDump_video_RAM->setShortcutVisibleInContextMenu(true);
-#endif
- connect(actionDump_video_RAM, &QAction::triggered, this, [this]
- { svga_dump_vram(); });
- }
-#endif
}
void MainWindow::closeEvent(QCloseEvent *event) {
diff --git a/src/qt/qt_mainwindow.ui b/src/qt/qt_mainwindow.ui
index d7ffb8589..787112399 100644
--- a/src/qt/qt_mainwindow.ui
+++ b/src/qt/qt_mainwindow.ui
@@ -47,7 +47,7 @@
0
0
724
- 21
+ 22
diff --git a/src/qt/qt_mediamenu.cpp b/src/qt/qt_mediamenu.cpp
index ff1f1398c..2aabe04a8 100644
--- a/src/qt/qt_mediamenu.cpp
+++ b/src/qt/qt_mediamenu.cpp
@@ -143,7 +143,10 @@ void MediaMenu::cassetteNewImage() {
if (fileinfo.suffix().isEmpty()) {
filename.append(".cas");
}
- cassetteMount(filename, false);
+ if (!filename.isNull()) {
+ if (filename.isEmpty()) cassetteEject();
+ else cassetteMount(filename, false);
+ }
}
void MediaMenu::cassetteSelectImage(bool wp) {
@@ -155,7 +158,7 @@ void MediaMenu::cassetteSelectImage(bool wp) {
tr("All files") %
util::DlgFilter({ "*" }, true));
- cassetteMount(filename, wp);
+ if (!filename.isEmpty()) cassetteMount(filename, wp);
}
void MediaMenu::cassetteMount(const QString& filename, bool wp) {
@@ -276,7 +279,7 @@ void MediaMenu::floppySelectImage(int i, bool wp) {
tr("All files") %
util::DlgFilter({ "*" }, true));
- floppyMount(i, filename, wp);
+ if (!filename.isEmpty()) floppyMount(i, filename, wp);
}
void MediaMenu::floppyMount(int i, const QString &filename, bool wp) {
@@ -349,8 +352,6 @@ void MediaMenu::cdromMount(int i) {
util::DlgFilter({ "*" }, true));
if (filename.isEmpty()) {
- auto* imageMenu = dynamic_cast(cdromMenus[i]->children()[cdromImagePos]);
- imageMenu->setChecked(false);
return;
}
QByteArray fn = filename.toUtf8().data();
@@ -439,7 +440,7 @@ void MediaMenu::zipSelectImage(int i, bool wp) {
tr("All files") %
util::DlgFilter({ "*" }, true));
- zipMount(i, filename, wp);
+ if (!filename.isEmpty()) zipMount(i, filename, wp);
}
void MediaMenu::zipMount(int i, const QString &filename, bool wp) {
@@ -536,7 +537,7 @@ void MediaMenu::moSelectImage(int i, bool wp) {
tr("All files") %
util::DlgFilter({ "*", }, true));
- moMount(i, filename, wp);
+ if (!filename.isEmpty()) moMount(i, filename, wp);
}
void MediaMenu::moMount(int i, const QString &filename, bool wp) {