Various fixes to qlo10k1

Various fixes by Tim <terminator356@users.sourceforge.net>:

- ld10k1 0.1.8p1 recommended for best operation.
- Fixed link disconnect bug.
- Now remembers last file open/save dir.
- Now unused IO/FX do not disappear upon refresh.
- Refresh/redraw fixups.
This commit is contained in:
Takashi Iwai 2005-06-03 12:31:54 +00:00
parent 700edf08b4
commit 8d95c04c7e
14 changed files with 221 additions and 48 deletions

View file

@ -31,6 +31,7 @@
#include "loadpatchdialog.h"
#include "transformpatchdialog.h"
extern QString gLastFileDir;
RSItemBaseWithType *RoutingWidget::createNewIO(EditMode em)
{
@ -54,6 +55,14 @@ RSItemBaseWithType *RoutingWidget::createNewIO(EditMode em)
NewIODlg d(structure, t);
int err;
err = d.init();
if(err < 0)
{
QMessageBox::critical(0, APP_NAME, QString("Error creating new IO dialog\n(ld10k1 error:%1)").arg(structure->errorStr(err)));
return NULL;
}
if (d.exec() == QDialog::Accepted)
return d.getNewIO();
else
@ -64,19 +73,28 @@ RSItemBaseWithType *RoutingWidget::createNewPatch()
{
QFileDialog *fd = new QFileDialog(this, "file dialog", TRUE);
fd->setMode(QFileDialog::ExistingFile);
fd->setFilter("Patches (*.emu10k1 *.ld10k1)");
QStringList filterlist;
filterlist << QString( "as10k1 Patch files (*.bin *.as10k1 *.emu10k1)" );
filterlist << QString( "ld10k1 Native effect files (*.ld10k1)" );
filterlist << QString( "All Files (*)" );
QString filters = filterlist.join( ";;" );
fd->setFilters( filters );
fd->setDir(gLastFileDir);
fd->setCaption("Load patch");
StrPatch *loaded = NULL;
int err;
QString fileName;
if ( fd->exec() == QDialog::Accepted )
if ( fd->exec() == QDialog::Accepted )
{
fileName = fd->selectedFile();
gLastFileDir = fd->dirPath();
delete fd;
LD10k1File *ldfile = NULL;
if (fileName.endsWith(".emu10k1"))
if ((err = LD10k1File::LoadFromFile(fileName, &ldfile)) < 0)
{
EMU10k1File *emufile = NULL;
if ((err = EMU10k1File::LoadFromFile(fileName, &emufile)) < 0)
@ -104,13 +122,6 @@ RSItemBaseWithType *RoutingWidget::createNewPatch()
}
}
}
else
{
if ((err = LD10k1File::LoadFromFile(fileName, &ldfile)) < 0) {
QMessageBox::critical(0, APP_NAME, QString("Couldn't load patch\n(ld10k1 error:%1)").arg(structure->errorStr(err)));
return NULL;
}
}
LoadPatchDlg d(structure, fileName, ldfile);
@ -262,7 +273,7 @@ void RoutingDrawWidget::connectLinkDrag(int xp, int yp, int mxp, int myp)
}
stopLinkDrag();
parent->modeNormalClicked();
//parent->modeNormalClicked();
}
delete contextMenu;