A bit more clang-format
This commit is contained in:
@@ -47,7 +47,6 @@ extern "C" {
|
||||
#include <86box/ui.h>
|
||||
#include <86box/thread.h>
|
||||
#include <86box/network.h>
|
||||
|
||||
};
|
||||
|
||||
#include "qt_newfloppydialog.hpp"
|
||||
@@ -58,14 +57,18 @@ extern "C" {
|
||||
|
||||
std::shared_ptr<MediaMenu> MediaMenu::ptr;
|
||||
|
||||
MediaMenu::MediaMenu(QWidget* parent) : QObject(parent) {
|
||||
MediaMenu::MediaMenu(QWidget *parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
parentWidget = parent;
|
||||
}
|
||||
|
||||
void MediaMenu::refresh(QMenu *parentMenu) {
|
||||
void
|
||||
MediaMenu::refresh(QMenu *parentMenu)
|
||||
{
|
||||
parentMenu->clear();
|
||||
|
||||
if(MachineStatus::hasCassette()) {
|
||||
if (MachineStatus::hasCassette()) {
|
||||
cassetteMenu = parentMenu->addMenu("");
|
||||
cassetteMenu->addAction(tr("&New image..."), [this]() { cassetteNewImage(); });
|
||||
cassetteMenu->addSeparator();
|
||||
@@ -88,8 +91,8 @@ void MediaMenu::refresh(QMenu *parentMenu) {
|
||||
|
||||
cartridgeMenus.clear();
|
||||
if (machine_has_cartridge(machine)) {
|
||||
for(int i = 0; i < 2; i++) {
|
||||
auto* menu = parentMenu->addMenu("");
|
||||
for (int i = 0; i < 2; i++) {
|
||||
auto *menu = parentMenu->addMenu("");
|
||||
menu->addAction(tr("&Image..."), [this, i]() { cartridgeSelectImage(i); });
|
||||
menu->addSeparator();
|
||||
cartridgeEjectPos = menu->children().count();
|
||||
@@ -101,7 +104,7 @@ void MediaMenu::refresh(QMenu *parentMenu) {
|
||||
|
||||
floppyMenus.clear();
|
||||
MachineStatus::iterateFDD([this, parentMenu](int i) {
|
||||
auto* menu = parentMenu->addMenu("");
|
||||
auto *menu = parentMenu->addMenu("");
|
||||
menu->addAction(tr("&New image..."), [this, i]() { floppyNewImage(i); });
|
||||
menu->addSeparator();
|
||||
menu->addAction(tr("&Existing image..."), [this, i]() { floppySelectImage(i, false); });
|
||||
@@ -123,7 +126,7 @@ void MediaMenu::refresh(QMenu *parentMenu) {
|
||||
|
||||
cdromMenus.clear();
|
||||
MachineStatus::iterateCDROM([this, parentMenu](int i) {
|
||||
auto* menu = parentMenu->addMenu("");
|
||||
auto *menu = parentMenu->addMenu("");
|
||||
cdromMutePos = menu->children().count();
|
||||
menu->addAction(QApplication::style()->standardIcon(QStyle::SP_MediaVolumeMuted), tr("&Mute"), [this, i]() { cdromMute(i); })->setCheckable(true);
|
||||
menu->addSeparator();
|
||||
@@ -136,7 +139,7 @@ void MediaMenu::refresh(QMenu *parentMenu) {
|
||||
}
|
||||
menu->addSeparator();
|
||||
cdromImagePos = menu->children().count();
|
||||
cdromDirPos = menu->children().count();
|
||||
cdromDirPos = menu->children().count();
|
||||
menu->addAction(tr("E&ject"), [this, i]() { cdromEject(i); })->setCheckable(false);
|
||||
cdromMenus[i] = menu;
|
||||
cdromUpdateMenu(i);
|
||||
@@ -144,7 +147,7 @@ void MediaMenu::refresh(QMenu *parentMenu) {
|
||||
|
||||
zipMenus.clear();
|
||||
MachineStatus::iterateZIP([this, parentMenu](int i) {
|
||||
auto* menu = parentMenu->addMenu("");
|
||||
auto *menu = parentMenu->addMenu("");
|
||||
menu->addAction(tr("&New image..."), [this, i]() { zipNewImage(i); });
|
||||
menu->addSeparator();
|
||||
menu->addAction(tr("&Existing image..."), [this, i]() { zipSelectImage(i, false); });
|
||||
@@ -160,7 +163,7 @@ void MediaMenu::refresh(QMenu *parentMenu) {
|
||||
|
||||
moMenus.clear();
|
||||
MachineStatus::iterateMO([this, parentMenu](int i) {
|
||||
auto* menu = parentMenu->addMenu("");
|
||||
auto *menu = parentMenu->addMenu("");
|
||||
menu->addAction(tr("&New image..."), [this, i]() { moNewImage(i); });
|
||||
menu->addSeparator();
|
||||
menu->addAction(tr("&Existing image..."), [this, i]() { moSelectImage(i, false); });
|
||||
@@ -176,9 +179,9 @@ void MediaMenu::refresh(QMenu *parentMenu) {
|
||||
|
||||
netMenus.clear();
|
||||
MachineStatus::iterateNIC([this, parentMenu](int i) {
|
||||
auto *menu = parentMenu->addMenu("");
|
||||
auto *menu = parentMenu->addMenu("");
|
||||
netDisconnPos = menu->children().count();
|
||||
auto *action = menu->addAction(tr("&Connected"), [this, i] { network_is_connected(i) ? nicDisconnect(i) : nicConnect(i); });
|
||||
auto *action = menu->addAction(tr("&Connected"), [this, i] { network_is_connected(i) ? nicDisconnect(i) : nicConnect(i); });
|
||||
action->setCheckable(true);
|
||||
netMenus[i] = menu;
|
||||
nicUpdateMenu(i);
|
||||
@@ -186,36 +189,42 @@ void MediaMenu::refresh(QMenu *parentMenu) {
|
||||
parentMenu->addAction(tr("Clear image history"), [this]() { clearImageHistory(); });
|
||||
}
|
||||
|
||||
void MediaMenu::cassetteNewImage() {
|
||||
auto filename = QFileDialog::getSaveFileName(parentWidget, tr("Create..."));
|
||||
void
|
||||
MediaMenu::cassetteNewImage()
|
||||
{
|
||||
auto filename = QFileDialog::getSaveFileName(parentWidget, tr("Create..."));
|
||||
QFileInfo fileinfo(filename);
|
||||
if (fileinfo.suffix().isEmpty()) {
|
||||
filename.append(".cas");
|
||||
}
|
||||
if (!filename.isNull()) {
|
||||
if (filename.isEmpty()) cassetteEject();
|
||||
else cassetteMount(filename, false);
|
||||
if (filename.isEmpty())
|
||||
cassetteEject();
|
||||
else
|
||||
cassetteMount(filename, false);
|
||||
}
|
||||
}
|
||||
|
||||
void MediaMenu::cassetteSelectImage(bool wp) {
|
||||
void
|
||||
MediaMenu::cassetteSelectImage(bool wp)
|
||||
{
|
||||
auto filename = QFileDialog::getOpenFileName(parentWidget,
|
||||
QString(),
|
||||
getMediaOpenDirectory(),
|
||||
tr("Cassette images") %
|
||||
util::DlgFilter({ "pcm","raw","wav","cas" }) %
|
||||
tr("All files") %
|
||||
util::DlgFilter({ "*" }, true));
|
||||
QString(),
|
||||
getMediaOpenDirectory(),
|
||||
tr("Cassette images") % util::DlgFilter({ "pcm", "raw", "wav", "cas" }) % tr("All files") % util::DlgFilter({ "*" }, true));
|
||||
|
||||
if (!filename.isEmpty()) cassetteMount(filename, wp);
|
||||
if (!filename.isEmpty())
|
||||
cassetteMount(filename, wp);
|
||||
}
|
||||
|
||||
void MediaMenu::cassetteMount(const QString& filename, bool wp) {
|
||||
void
|
||||
MediaMenu::cassetteMount(const QString &filename, bool wp)
|
||||
{
|
||||
pc_cas_set_fname(cassette, nullptr);
|
||||
memset(cassette_fname, 0, sizeof(cassette_fname));
|
||||
cassette_ui_writeprot = wp ? 1 : 0;
|
||||
|
||||
if (! filename.isEmpty()) {
|
||||
if (!filename.isEmpty()) {
|
||||
QByteArray filenameBytes = filename.toUtf8();
|
||||
strncpy(cassette_fname, filenameBytes.data(), sizeof(cassette_fname) - 1);
|
||||
pc_cas_set_fname(cassette, cassette_fname);
|
||||
@@ -227,7 +236,9 @@ void MediaMenu::cassetteMount(const QString& filename, bool wp) {
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::cassetteEject() {
|
||||
void
|
||||
MediaMenu::cassetteEject()
|
||||
{
|
||||
pc_cas_set_fname(cassette, nullptr);
|
||||
memset(cassette_fname, 0, sizeof(cassette_fname));
|
||||
ui_sb_update_icon_state(SB_CASSETTE, 1);
|
||||
@@ -236,15 +247,17 @@ void MediaMenu::cassetteEject() {
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::cassetteUpdateMenu() {
|
||||
QString name = cassette_fname;
|
||||
QString mode = cassette_mode;
|
||||
auto childs = cassetteMenu->children();
|
||||
auto* recordMenu = dynamic_cast<QAction*>(childs[cassetteRecordPos]);
|
||||
auto* playMenu = dynamic_cast<QAction*>(childs[cassettePlayPos]);
|
||||
auto* rewindMenu = dynamic_cast<QAction*>(childs[cassetteRewindPos]);
|
||||
auto* fastFwdMenu = dynamic_cast<QAction*>(childs[cassetteFastFwdPos]);
|
||||
auto* ejectMenu = dynamic_cast<QAction*>(childs[cassetteEjectPos]);
|
||||
void
|
||||
MediaMenu::cassetteUpdateMenu()
|
||||
{
|
||||
QString name = cassette_fname;
|
||||
QString mode = cassette_mode;
|
||||
auto childs = cassetteMenu->children();
|
||||
auto *recordMenu = dynamic_cast<QAction *>(childs[cassetteRecordPos]);
|
||||
auto *playMenu = dynamic_cast<QAction *>(childs[cassettePlayPos]);
|
||||
auto *rewindMenu = dynamic_cast<QAction *>(childs[cassetteRewindPos]);
|
||||
auto *fastFwdMenu = dynamic_cast<QAction *>(childs[cassetteFastFwdPos]);
|
||||
auto *ejectMenu = dynamic_cast<QAction *>(childs[cassetteEjectPos]);
|
||||
|
||||
recordMenu->setEnabled(!name.isEmpty());
|
||||
playMenu->setEnabled(!name.isEmpty());
|
||||
@@ -254,12 +267,13 @@ void MediaMenu::cassetteUpdateMenu() {
|
||||
|
||||
bool isSaving = mode == QStringLiteral("save");
|
||||
recordMenu->setChecked(isSaving);
|
||||
playMenu->setChecked(! isSaving);
|
||||
playMenu->setChecked(!isSaving);
|
||||
|
||||
cassetteMenu->setTitle(QString::asprintf(tr("Cassette: %s").toUtf8().constData(), (name.isEmpty() ? tr("(empty)") : name).toUtf8().constData()));
|
||||
}
|
||||
|
||||
void MediaMenu::cartridgeMount(int i, const QString &filename)
|
||||
void
|
||||
MediaMenu::cartridgeMount(int i, const QString &filename)
|
||||
{
|
||||
cart_close(i);
|
||||
QByteArray filenameBytes = filename.toUtf8();
|
||||
@@ -271,15 +285,14 @@ void MediaMenu::cartridgeMount(int i, const QString &filename)
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::cartridgeSelectImage(int i) {
|
||||
void
|
||||
MediaMenu::cartridgeSelectImage(int i)
|
||||
{
|
||||
auto filename = QFileDialog::getOpenFileName(
|
||||
parentWidget,
|
||||
QString(),
|
||||
getMediaOpenDirectory(),
|
||||
tr("Cartridge images") %
|
||||
util::DlgFilter({ "a","b","jrc" }) %
|
||||
tr("All files") %
|
||||
util::DlgFilter({ "*" }, true));
|
||||
tr("Cartridge images") % util::DlgFilter({ "a", "b", "jrc" }) % tr("All files") % util::DlgFilter({ "*" }, true));
|
||||
|
||||
if (filename.isEmpty()) {
|
||||
return;
|
||||
@@ -287,7 +300,9 @@ void MediaMenu::cartridgeSelectImage(int i) {
|
||||
cartridgeMount(i, filename);
|
||||
}
|
||||
|
||||
void MediaMenu::cartridgeEject(int i) {
|
||||
void
|
||||
MediaMenu::cartridgeEject(int i)
|
||||
{
|
||||
cart_close(i);
|
||||
ui_sb_update_icon_state(SB_CARTRIDGE | i, 1);
|
||||
cartridgeUpdateMenu(i);
|
||||
@@ -295,27 +310,33 @@ void MediaMenu::cartridgeEject(int i) {
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::cartridgeUpdateMenu(int i) {
|
||||
QString name = cart_fns[i];
|
||||
auto* menu = cartridgeMenus[i];
|
||||
auto childs = menu->children();
|
||||
auto* ejectMenu = dynamic_cast<QAction*>(childs[cartridgeEjectPos]);
|
||||
void
|
||||
MediaMenu::cartridgeUpdateMenu(int i)
|
||||
{
|
||||
QString name = cart_fns[i];
|
||||
auto *menu = cartridgeMenus[i];
|
||||
auto childs = menu->children();
|
||||
auto *ejectMenu = dynamic_cast<QAction *>(childs[cartridgeEjectPos]);
|
||||
ejectMenu->setEnabled(!name.isEmpty());
|
||||
//menu->setTitle(tr("Cartridge %1: %2").arg(QString::number(i+1), name.isEmpty() ? tr("(empty)") : name));
|
||||
// menu->setTitle(tr("Cartridge %1: %2").arg(QString::number(i+1), name.isEmpty() ? tr("(empty)") : name));
|
||||
menu->setTitle(QString::asprintf(tr("Cartridge %i: %ls").toUtf8().constData(), i + 1, name.isEmpty() ? tr("(empty)").toStdU16String().data() : name.toStdU16String().data()));
|
||||
}
|
||||
|
||||
void MediaMenu::floppyNewImage(int i) {
|
||||
void
|
||||
MediaMenu::floppyNewImage(int i)
|
||||
{
|
||||
NewFloppyDialog dialog(NewFloppyDialog::MediaType::Floppy, parentWidget);
|
||||
switch (dialog.exec()) {
|
||||
case QDialog::Accepted:
|
||||
QByteArray filename = dialog.fileName().toUtf8();
|
||||
floppyMount(i, filename, false);
|
||||
break;
|
||||
case QDialog::Accepted:
|
||||
QByteArray filename = dialog.fileName().toUtf8();
|
||||
floppyMount(i, filename, false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void MediaMenu::floppySelectImage(int i, bool wp) {
|
||||
void
|
||||
MediaMenu::floppySelectImage(int i, bool wp)
|
||||
{
|
||||
auto filename = QFileDialog::getOpenFileName(
|
||||
parentWidget,
|
||||
QString(),
|
||||
@@ -336,11 +357,13 @@ void MediaMenu::floppySelectImage(int i, bool wp) {
|
||||
if (!filename.isEmpty()) floppyMount(i, filename, wp);
|
||||
}
|
||||
|
||||
void MediaMenu::floppyMount(int i, const QString &filename, bool wp) {
|
||||
void
|
||||
MediaMenu::floppyMount(int i, const QString &filename, bool wp)
|
||||
{
|
||||
auto previous_image = QFileInfo(floppyfns[i]);
|
||||
fdd_close(i);
|
||||
ui_writeprot[i] = wp ? 1 : 0;
|
||||
if (! filename.isEmpty()) {
|
||||
if (!filename.isEmpty()) {
|
||||
QByteArray filenameBytes = filename.toUtf8();
|
||||
fdd_load(i, filenameBytes.data());
|
||||
}
|
||||
@@ -351,7 +374,9 @@ void MediaMenu::floppyMount(int i, const QString &filename, bool wp) {
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::floppyEject(int i) {
|
||||
void
|
||||
MediaMenu::floppyEject(int i)
|
||||
{
|
||||
mhm.addImageToHistory(i, ui::MediaType::Floppy, floppyfns[i], QString());
|
||||
fdd_close(i);
|
||||
ui_sb_update_icon_state(SB_FLOPPY | i, 1);
|
||||
@@ -360,9 +385,11 @@ void MediaMenu::floppyEject(int i) {
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::floppyExportTo86f(int i) {
|
||||
void
|
||||
MediaMenu::floppyExportTo86f(int i)
|
||||
{
|
||||
auto filename = QFileDialog::getSaveFileName(parentWidget, QString(), QString(), tr("Surface images") % util::DlgFilter({ "86f" }, true));
|
||||
if (! filename.isEmpty()) {
|
||||
if (!filename.isEmpty()) {
|
||||
QByteArray filenameBytes = filename.toUtf8();
|
||||
plat_pause(1);
|
||||
if (d86f_export(i, filenameBytes.data()) == 0) {
|
||||
@@ -372,20 +399,22 @@ void MediaMenu::floppyExportTo86f(int i) {
|
||||
}
|
||||
}
|
||||
|
||||
void MediaMenu::floppyUpdateMenu(int i) {
|
||||
QString name = floppyfns[i];
|
||||
void
|
||||
MediaMenu::floppyUpdateMenu(int i)
|
||||
{
|
||||
QString name = floppyfns[i];
|
||||
QFileInfo fi(floppyfns[i]);
|
||||
|
||||
if (!floppyMenus.contains(i))
|
||||
return;
|
||||
|
||||
auto* menu = floppyMenus[i];
|
||||
auto childs = menu->children();
|
||||
auto *menu = floppyMenus[i];
|
||||
auto childs = menu->children();
|
||||
|
||||
auto* ejectMenu = dynamic_cast<QAction*>(childs[floppyEjectPos]);
|
||||
auto* exportMenu = dynamic_cast<QAction*>(childs[floppyExportPos]);
|
||||
auto *ejectMenu = dynamic_cast<QAction *>(childs[floppyEjectPos]);
|
||||
auto *exportMenu = dynamic_cast<QAction *>(childs[floppyExportPos]);
|
||||
ejectMenu->setEnabled(!name.isEmpty());
|
||||
ejectMenu->setText(QString::asprintf(tr("Eject %s").toUtf8().constData(), name.isEmpty() ? QString().toUtf8().constData() : fi.fileName().toUtf8().constData()));
|
||||
ejectMenu->setText(QString::asprintf(tr("Eject %s").toUtf8().constData(), name.isEmpty() ? QString().toUtf8().constData() : fi.fileName().toUtf8().constData()));
|
||||
exportMenu->setEnabled(!name.isEmpty());
|
||||
|
||||
for (int slot = 0; slot < MAX_PREV_IMAGES; slot++) {
|
||||
@@ -393,25 +422,30 @@ void MediaMenu::floppyUpdateMenu(int i) {
|
||||
}
|
||||
|
||||
int type = fdd_get_type(i);
|
||||
//floppyMenus[i]->setTitle(tr("Floppy %1 (%2): %3").arg(QString::number(i+1), fdd_getname(type), name.isEmpty() ? tr("(empty)") : name));
|
||||
// floppyMenus[i]->setTitle(tr("Floppy %1 (%2): %3").arg(QString::number(i+1), fdd_getname(type), name.isEmpty() ? tr("(empty)") : name));
|
||||
floppyMenus[i]->setTitle(QString::asprintf(tr("Floppy %i (%s): %ls").toUtf8().constData(), i + 1, fdd_getname(type), name.isEmpty() ? tr("(empty)").toStdU16String().data() : name.toStdU16String().data()));
|
||||
}
|
||||
|
||||
void MediaMenu::floppyMenuSelect(int index, int slot) {
|
||||
void
|
||||
MediaMenu::floppyMenuSelect(int index, int slot)
|
||||
{
|
||||
QString filename = mhm.getImageForSlot(index, slot, ui::MediaType::Floppy);
|
||||
floppyMount(index, filename.toUtf8().constData(), false);
|
||||
floppyUpdateMenu(index);
|
||||
ui_sb_update_tip(SB_FLOPPY | index);
|
||||
}
|
||||
|
||||
void MediaMenu::cdromMute(int i) {
|
||||
void
|
||||
MediaMenu::cdromMute(int i)
|
||||
{
|
||||
cdrom[i].sound_on ^= 1;
|
||||
config_save();
|
||||
cdromUpdateMenu(i);
|
||||
sound_cd_thread_reset();
|
||||
}
|
||||
|
||||
void MediaMenu::cdromMount(int i, const QString &filename)
|
||||
void
|
||||
MediaMenu::cdromMount(int i, const QString &filename)
|
||||
{
|
||||
QByteArray fn = filename.toUtf8().data();
|
||||
|
||||
@@ -438,8 +472,10 @@ void MediaMenu::cdromMount(int i, const QString &filename)
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::cdromMount(int i, int dir) {
|
||||
QString filename;
|
||||
void
|
||||
MediaMenu::cdromMount(int i, int dir)
|
||||
{
|
||||
QString filename;
|
||||
QFileInfo fi(cdrom[i].image_path);
|
||||
|
||||
if (dir) {
|
||||
@@ -450,10 +486,7 @@ void MediaMenu::cdromMount(int i, int dir) {
|
||||
parentWidget,
|
||||
QString(),
|
||||
QString(),
|
||||
tr("CD-ROM images") %
|
||||
util::DlgFilter({ "iso","cue" }) %
|
||||
tr("All files") %
|
||||
util::DlgFilter({ "*" }, true));
|
||||
tr("CD-ROM images") % util::DlgFilter({ "iso", "cue" }) % tr("All files") % util::DlgFilter({ "*" }, true));
|
||||
}
|
||||
|
||||
if (filename.isEmpty()) {
|
||||
@@ -463,34 +496,40 @@ void MediaMenu::cdromMount(int i, int dir) {
|
||||
cdromMount(i, filename);
|
||||
}
|
||||
|
||||
void MediaMenu::cdromEject(int i) {
|
||||
void
|
||||
MediaMenu::cdromEject(int i)
|
||||
{
|
||||
mhm.addImageToHistory(i, ui::MediaType::Optical, cdrom[i].image_path, QString());
|
||||
cdrom_eject(i);
|
||||
cdromUpdateMenu(i);
|
||||
ui_sb_update_tip(SB_CDROM | i);
|
||||
}
|
||||
|
||||
void MediaMenu::cdromReload(int index, int slot) {
|
||||
void
|
||||
MediaMenu::cdromReload(int index, int slot)
|
||||
{
|
||||
QString filename = mhm.getImageForSlot(index, slot, ui::MediaType::Optical);
|
||||
cdromMount(index, filename.toUtf8().constData());
|
||||
cdromUpdateMenu(index);
|
||||
ui_sb_update_tip(SB_CDROM | index);
|
||||
}
|
||||
|
||||
void MediaMenu::updateImageHistory(int index, int slot, ui::MediaType type) {
|
||||
QMenu* menu;
|
||||
QAction* imageHistoryUpdatePos;
|
||||
void
|
||||
MediaMenu::updateImageHistory(int index, int slot, ui::MediaType type)
|
||||
{
|
||||
QMenu *menu;
|
||||
QAction *imageHistoryUpdatePos;
|
||||
QObjectList children;
|
||||
QFileInfo fi;
|
||||
QIcon menu_icon;
|
||||
QFileInfo fi;
|
||||
QIcon menu_icon;
|
||||
|
||||
switch (type) {
|
||||
case ui::MediaType::Optical:
|
||||
if (!cdromMenus.contains(index))
|
||||
return;
|
||||
menu = cdromMenus[index];
|
||||
children = menu->children();
|
||||
imageHistoryUpdatePos = dynamic_cast<QAction*>(children[cdromImageHistoryPos[slot]]);
|
||||
menu = cdromMenus[index];
|
||||
children = menu->children();
|
||||
imageHistoryUpdatePos = dynamic_cast<QAction *>(children[cdromImageHistoryPos[slot]]);
|
||||
fi.setFile(mhm.getImageForSlot(index, slot, type));
|
||||
menu_icon = fi.isDir() ? QApplication::style()->standardIcon(QStyle::SP_DirIcon) : ProgSettings::loadIcon("/cdrom.ico");
|
||||
imageHistoryUpdatePos->setIcon(menu_icon);
|
||||
@@ -498,9 +537,9 @@ void MediaMenu::updateImageHistory(int index, int slot, ui::MediaType type) {
|
||||
case ui::MediaType::Floppy:
|
||||
if (!floppyMenus.contains(index))
|
||||
return;
|
||||
menu = floppyMenus[index];
|
||||
children = menu->children();
|
||||
imageHistoryUpdatePos = dynamic_cast<QAction*>(children[floppyImageHistoryPos[slot]]);
|
||||
menu = floppyMenus[index];
|
||||
children = menu->children();
|
||||
imageHistoryUpdatePos = dynamic_cast<QAction *>(children[floppyImageHistoryPos[slot]]);
|
||||
fi.setFile(mhm.getImageForSlot(index, slot, type));
|
||||
break;
|
||||
default:
|
||||
@@ -514,27 +553,31 @@ void MediaMenu::updateImageHistory(int index, int slot, ui::MediaType type) {
|
||||
imageHistoryUpdatePos->setVisible(fi.exists());
|
||||
}
|
||||
|
||||
void MediaMenu::clearImageHistory() {
|
||||
void
|
||||
MediaMenu::clearImageHistory()
|
||||
{
|
||||
mhm.clearImageHistory();
|
||||
ui_sb_update_panes();
|
||||
}
|
||||
|
||||
void MediaMenu::cdromUpdateMenu(int i) {
|
||||
QString name = cdrom[i].image_path;
|
||||
void
|
||||
MediaMenu::cdromUpdateMenu(int i)
|
||||
{
|
||||
QString name = cdrom[i].image_path;
|
||||
QFileInfo fi(cdrom[i].image_path);
|
||||
|
||||
if (!cdromMenus.contains(i))
|
||||
return;
|
||||
auto* menu = cdromMenus[i];
|
||||
auto childs = menu->children();
|
||||
auto *menu = cdromMenus[i];
|
||||
auto childs = menu->children();
|
||||
|
||||
auto* muteMenu = dynamic_cast<QAction*>(childs[cdromMutePos]);
|
||||
auto *muteMenu = dynamic_cast<QAction *>(childs[cdromMutePos]);
|
||||
muteMenu->setChecked(cdrom[i].sound_on == 0);
|
||||
|
||||
auto* imageMenu = dynamic_cast<QAction*>(childs[cdromImagePos]);
|
||||
auto *imageMenu = dynamic_cast<QAction *>(childs[cdromImagePos]);
|
||||
imageMenu->setEnabled(!name.isEmpty());
|
||||
QString menu_item_name = name.isEmpty() ? QString().toUtf8().constData() : fi.fileName().toUtf8().constData();
|
||||
auto menu_icon = fi.isDir() ? QApplication::style()->standardIcon(QStyle::SP_DirIcon) : ProgSettings::loadIcon("/cdrom.ico");
|
||||
auto menu_icon = fi.isDir() ? QApplication::style()->standardIcon(QStyle::SP_DirIcon) : ProgSettings::loadIcon("/cdrom.ico");
|
||||
imageMenu->setIcon(menu_icon);
|
||||
imageMenu->setText(QString::asprintf(tr("Eject %s").toUtf8().constData(), menu_item_name.toUtf8().constData()));
|
||||
|
||||
@@ -544,47 +587,51 @@ void MediaMenu::cdromUpdateMenu(int i) {
|
||||
|
||||
QString busName = tr("Unknown Bus");
|
||||
switch (cdrom[i].bus_type) {
|
||||
case CDROM_BUS_ATAPI:
|
||||
busName = "ATAPI";
|
||||
break;
|
||||
case CDROM_BUS_SCSI:
|
||||
busName = "SCSI";
|
||||
break;
|
||||
case CDROM_BUS_ATAPI:
|
||||
busName = "ATAPI";
|
||||
break;
|
||||
case CDROM_BUS_SCSI:
|
||||
busName = "SCSI";
|
||||
break;
|
||||
}
|
||||
|
||||
//menu->setTitle(tr("CD-ROM %1 (%2): %3").arg(QString::number(i+1), busName, name.isEmpty() ? tr("(empty)") : name));
|
||||
// menu->setTitle(tr("CD-ROM %1 (%2): %3").arg(QString::number(i+1), busName, name.isEmpty() ? tr("(empty)") : name));
|
||||
menu->setTitle(QString::asprintf(tr("CD-ROM %i (%s): %s").toUtf8().constData(), i + 1, busName.toUtf8().data(), name.isEmpty() ? tr("(empty)").toUtf8().data() : name.toUtf8().data()));
|
||||
}
|
||||
|
||||
void MediaMenu::zipNewImage(int i) {
|
||||
void
|
||||
MediaMenu::zipNewImage(int i)
|
||||
{
|
||||
NewFloppyDialog dialog(NewFloppyDialog::MediaType::Zip, parentWidget);
|
||||
switch (dialog.exec()) {
|
||||
case QDialog::Accepted:
|
||||
QByteArray filename = dialog.fileName().toUtf8();
|
||||
zipMount(i, filename, false);
|
||||
break;
|
||||
case QDialog::Accepted:
|
||||
QByteArray filename = dialog.fileName().toUtf8();
|
||||
zipMount(i, filename, false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void MediaMenu::zipSelectImage(int i, bool wp) {
|
||||
void
|
||||
MediaMenu::zipSelectImage(int i, bool wp)
|
||||
{
|
||||
auto filename = QFileDialog::getOpenFileName(
|
||||
parentWidget,
|
||||
QString(),
|
||||
QString(),
|
||||
tr("ZIP images") %
|
||||
util::DlgFilter({ "im?","zdi" }) %
|
||||
tr("All files") %
|
||||
util::DlgFilter({ "*" }, true));
|
||||
tr("ZIP images") % util::DlgFilter({ "im?", "zdi" }) % tr("All files") % util::DlgFilter({ "*" }, true));
|
||||
|
||||
if (!filename.isEmpty()) zipMount(i, filename, wp);
|
||||
if (!filename.isEmpty())
|
||||
zipMount(i, filename, wp);
|
||||
}
|
||||
|
||||
void MediaMenu::zipMount(int i, const QString &filename, bool wp) {
|
||||
void
|
||||
MediaMenu::zipMount(int i, const QString &filename, bool wp)
|
||||
{
|
||||
zip_t *dev = (zip_t *) zip_drives[i].priv;
|
||||
|
||||
zip_disk_close(dev);
|
||||
zip_drives[i].read_only = wp;
|
||||
if (! filename.isEmpty()) {
|
||||
if (!filename.isEmpty()) {
|
||||
QByteArray filenameBytes = filename.toUtf8();
|
||||
zip_load(dev, filenameBytes.data());
|
||||
zip_insert(dev);
|
||||
@@ -597,7 +644,9 @@ void MediaMenu::zipMount(int i, const QString &filename, bool wp) {
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::zipEject(int i) {
|
||||
void
|
||||
MediaMenu::zipEject(int i)
|
||||
{
|
||||
zip_t *dev = (zip_t *) zip_drives[i].priv;
|
||||
|
||||
zip_disk_close(dev);
|
||||
@@ -613,78 +662,89 @@ void MediaMenu::zipEject(int i) {
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::zipReload(int i) {
|
||||
void
|
||||
MediaMenu::zipReload(int i)
|
||||
{
|
||||
zip_t *dev = (zip_t *) zip_drives[i].priv;
|
||||
|
||||
zip_disk_reload(dev);
|
||||
if (strlen(zip_drives[i].image_path) == 0) {
|
||||
ui_sb_update_icon_state(SB_ZIP|i, 1);
|
||||
ui_sb_update_icon_state(SB_ZIP | i, 1);
|
||||
} else {
|
||||
ui_sb_update_icon_state(SB_ZIP|i, 0);
|
||||
ui_sb_update_icon_state(SB_ZIP | i, 0);
|
||||
}
|
||||
|
||||
zipUpdateMenu(i);
|
||||
ui_sb_update_tip(SB_ZIP|i);
|
||||
ui_sb_update_tip(SB_ZIP | i);
|
||||
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::zipUpdateMenu(int i) {
|
||||
QString name = zip_drives[i].image_path;
|
||||
void
|
||||
MediaMenu::zipUpdateMenu(int i)
|
||||
{
|
||||
QString name = zip_drives[i].image_path;
|
||||
QString prev_name = zip_drives[i].prev_image_path;
|
||||
if (!zipMenus.contains(i))
|
||||
return;
|
||||
auto* menu = zipMenus[i];
|
||||
auto childs = menu->children();
|
||||
auto *menu = zipMenus[i];
|
||||
auto childs = menu->children();
|
||||
|
||||
auto* ejectMenu = dynamic_cast<QAction*>(childs[zipEjectPos]);
|
||||
auto* reloadMenu = dynamic_cast<QAction*>(childs[zipReloadPos]);
|
||||
auto *ejectMenu = dynamic_cast<QAction *>(childs[zipEjectPos]);
|
||||
auto *reloadMenu = dynamic_cast<QAction *>(childs[zipReloadPos]);
|
||||
ejectMenu->setEnabled(!name.isEmpty());
|
||||
reloadMenu->setEnabled(!prev_name.isEmpty());
|
||||
|
||||
QString busName = tr("Unknown Bus");
|
||||
switch (zip_drives[i].bus_type) {
|
||||
case ZIP_BUS_ATAPI:
|
||||
busName = "ATAPI";
|
||||
break;
|
||||
case ZIP_BUS_SCSI:
|
||||
busName = "SCSI";
|
||||
break;
|
||||
case ZIP_BUS_ATAPI:
|
||||
busName = "ATAPI";
|
||||
break;
|
||||
case ZIP_BUS_SCSI:
|
||||
busName = "SCSI";
|
||||
break;
|
||||
}
|
||||
|
||||
//menu->setTitle(tr("ZIP %1 %2 (%3): %4").arg((zip_drives[i].is_250 > 0) ? "250" : "100", QString::number(i+1), busName, name.isEmpty() ? tr("(empty)") : name));
|
||||
// menu->setTitle(tr("ZIP %1 %2 (%3): %4").arg((zip_drives[i].is_250 > 0) ? "250" : "100", QString::number(i+1), busName, name.isEmpty() ? tr("(empty)") : name));
|
||||
menu->setTitle(QString::asprintf(tr("ZIP %03i %i (%s): %ls").toUtf8().constData(), (zip_drives[i].is_250 > 0) ? 250 : 100, i + 1, busName.toUtf8().data(), name.isEmpty() ? tr("(empty)").toStdU16String().data() : name.toStdU16String().data()));
|
||||
}
|
||||
|
||||
void MediaMenu::moNewImage(int i) {
|
||||
void
|
||||
MediaMenu::moNewImage(int i)
|
||||
{
|
||||
NewFloppyDialog dialog(NewFloppyDialog::MediaType::Mo, parentWidget);
|
||||
switch (dialog.exec()) {
|
||||
case QDialog::Accepted:
|
||||
QByteArray filename = dialog.fileName().toUtf8();
|
||||
moMount(i, filename, false);
|
||||
break;
|
||||
case QDialog::Accepted:
|
||||
QByteArray filename = dialog.fileName().toUtf8();
|
||||
moMount(i, filename, false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void MediaMenu::moSelectImage(int i, bool wp) {
|
||||
void
|
||||
MediaMenu::moSelectImage(int i, bool wp)
|
||||
{
|
||||
auto filename = QFileDialog::getOpenFileName(
|
||||
parentWidget,
|
||||
QString(),
|
||||
getMediaOpenDirectory(),
|
||||
tr("MO images") %
|
||||
util::DlgFilter({ "im?", "mdi" }) %
|
||||
tr("All files") %
|
||||
util::DlgFilter({ "*", }, true));
|
||||
tr("MO images") % util::DlgFilter({ "im?", "mdi" }) % tr("All files") % util::DlgFilter({
|
||||
"*",
|
||||
},
|
||||
true));
|
||||
|
||||
if (!filename.isEmpty()) moMount(i, filename, wp);
|
||||
if (!filename.isEmpty())
|
||||
moMount(i, filename, wp);
|
||||
}
|
||||
|
||||
void MediaMenu::moMount(int i, const QString &filename, bool wp) {
|
||||
void
|
||||
MediaMenu::moMount(int i, const QString &filename, bool wp)
|
||||
{
|
||||
mo_t *dev = (mo_t *) mo_drives[i].priv;
|
||||
|
||||
mo_disk_close(dev);
|
||||
mo_drives[i].read_only = wp;
|
||||
if (! filename.isEmpty()) {
|
||||
if (!filename.isEmpty()) {
|
||||
QByteArray filenameBytes = filename.toUtf8();
|
||||
mo_load(dev, filenameBytes.data());
|
||||
mo_insert(dev);
|
||||
@@ -697,7 +757,9 @@ void MediaMenu::moMount(int i, const QString &filename, bool wp) {
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::moEject(int i) {
|
||||
void
|
||||
MediaMenu::moEject(int i)
|
||||
{
|
||||
mo_t *dev = (mo_t *) mo_drives[i].priv;
|
||||
|
||||
mo_disk_close(dev);
|
||||
@@ -713,63 +775,73 @@ void MediaMenu::moEject(int i) {
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::moReload(int i) {
|
||||
void
|
||||
MediaMenu::moReload(int i)
|
||||
{
|
||||
mo_t *dev = (mo_t *) mo_drives[i].priv;
|
||||
|
||||
mo_disk_reload(dev);
|
||||
if (strlen(mo_drives[i].image_path) == 0) {
|
||||
ui_sb_update_icon_state(SB_MO|i, 1);
|
||||
ui_sb_update_icon_state(SB_MO | i, 1);
|
||||
} else {
|
||||
ui_sb_update_icon_state(SB_MO|i, 0);
|
||||
ui_sb_update_icon_state(SB_MO | i, 0);
|
||||
}
|
||||
|
||||
moUpdateMenu(i);
|
||||
ui_sb_update_tip(SB_MO|i);
|
||||
ui_sb_update_tip(SB_MO | i);
|
||||
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::moUpdateMenu(int i) {
|
||||
QString name = mo_drives[i].image_path;
|
||||
void
|
||||
MediaMenu::moUpdateMenu(int i)
|
||||
{
|
||||
QString name = mo_drives[i].image_path;
|
||||
QString prev_name = mo_drives[i].prev_image_path;
|
||||
if (!moMenus.contains(i))
|
||||
return;
|
||||
auto* menu = moMenus[i];
|
||||
auto childs = menu->children();
|
||||
auto *menu = moMenus[i];
|
||||
auto childs = menu->children();
|
||||
|
||||
auto* ejectMenu = dynamic_cast<QAction*>(childs[moEjectPos]);
|
||||
auto* reloadMenu = dynamic_cast<QAction*>(childs[moReloadPos]);
|
||||
auto *ejectMenu = dynamic_cast<QAction *>(childs[moEjectPos]);
|
||||
auto *reloadMenu = dynamic_cast<QAction *>(childs[moReloadPos]);
|
||||
ejectMenu->setEnabled(!name.isEmpty());
|
||||
reloadMenu->setEnabled(!prev_name.isEmpty());
|
||||
|
||||
QString busName = tr("Unknown Bus");
|
||||
switch (mo_drives[i].bus_type) {
|
||||
case MO_BUS_ATAPI:
|
||||
busName = "ATAPI";
|
||||
break;
|
||||
case MO_BUS_SCSI:
|
||||
busName = "SCSI";
|
||||
break;
|
||||
case MO_BUS_ATAPI:
|
||||
busName = "ATAPI";
|
||||
break;
|
||||
case MO_BUS_SCSI:
|
||||
busName = "SCSI";
|
||||
break;
|
||||
}
|
||||
|
||||
menu->setTitle(QString::asprintf(tr("MO %i (%ls): %ls").toUtf8().constData(), i + 1, busName.toStdU16String().data(), name.isEmpty() ? tr("(empty)").toStdU16String().data() : name.toStdU16String().data()));
|
||||
}
|
||||
|
||||
void MediaMenu::nicConnect(int i) {
|
||||
void
|
||||
MediaMenu::nicConnect(int i)
|
||||
{
|
||||
network_connect(i, 1);
|
||||
ui_sb_update_icon_state(SB_NETWORK|i, 0);
|
||||
ui_sb_update_icon_state(SB_NETWORK | i, 0);
|
||||
nicUpdateMenu(i);
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::nicDisconnect(int i) {
|
||||
void
|
||||
MediaMenu::nicDisconnect(int i)
|
||||
{
|
||||
network_connect(i, 0);
|
||||
ui_sb_update_icon_state(SB_NETWORK|i, 1);
|
||||
ui_sb_update_icon_state(SB_NETWORK | i, 1);
|
||||
nicUpdateMenu(i);
|
||||
config_save();
|
||||
}
|
||||
|
||||
void MediaMenu::nicUpdateMenu(int i) {
|
||||
void
|
||||
MediaMenu::nicUpdateMenu(int i)
|
||||
{
|
||||
if (!netMenus.contains(i))
|
||||
return;
|
||||
|
||||
@@ -785,15 +857,17 @@ void MediaMenu::nicUpdateMenu(int i) {
|
||||
|
||||
QString devName = DeviceConfig::DeviceName(network_card_getdevice(net_cards_conf[i].device_num), network_card_get_internal_name(net_cards_conf[i].device_num), 1);
|
||||
|
||||
auto *menu = netMenus[i];
|
||||
auto childs = menu->children();
|
||||
auto *connectedAction = dynamic_cast<QAction*>(childs[netDisconnPos]);
|
||||
auto *menu = netMenus[i];
|
||||
auto childs = menu->children();
|
||||
auto *connectedAction = dynamic_cast<QAction *>(childs[netDisconnPos]);
|
||||
connectedAction->setChecked(network_is_connected(i));
|
||||
|
||||
menu->setTitle(QString::asprintf(tr("NIC %02i (%ls) %ls").toUtf8().constData(), i + 1, netType.toStdU16String().data(), devName.toStdU16String().data()));
|
||||
}
|
||||
|
||||
QString MediaMenu::getMediaOpenDirectory() {
|
||||
QString
|
||||
MediaMenu::getMediaOpenDirectory()
|
||||
{
|
||||
QString openDirectory;
|
||||
if (open_dir_usr_path > 0) {
|
||||
openDirectory = QString::fromUtf8(usr_path);
|
||||
@@ -804,20 +878,27 @@ QString MediaMenu::getMediaOpenDirectory() {
|
||||
// callbacks from 86box C code
|
||||
extern "C" {
|
||||
|
||||
void zip_eject(uint8_t id) {
|
||||
void
|
||||
zip_eject(uint8_t id)
|
||||
{
|
||||
MediaMenu::ptr->zipEject(id);
|
||||
}
|
||||
|
||||
void zip_reload(uint8_t id) {
|
||||
void
|
||||
zip_reload(uint8_t id)
|
||||
{
|
||||
MediaMenu::ptr->zipReload(id);
|
||||
}
|
||||
|
||||
void mo_eject(uint8_t id) {
|
||||
void
|
||||
mo_eject(uint8_t id)
|
||||
{
|
||||
MediaMenu::ptr->moEject(id);
|
||||
}
|
||||
|
||||
void mo_reload(uint8_t id) {
|
||||
void
|
||||
mo_reload(uint8_t id)
|
||||
{
|
||||
MediaMenu::ptr->moReload(id);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user