diff options
| author | Orcan Ogetbil <oget.fedora@gmail.com> | 2010-11-27 03:25:18 +0000 | 
|---|---|---|
| committer | Orcan Ogetbil <oget.fedora@gmail.com> | 2010-11-27 03:25:18 +0000 | 
| commit | bde31d8572b32f4919a9d60b24f4d26186a8cf35 (patch) | |
| tree | 387595061f5ad70699520de5b98fd66508e6e6e4 /muse2/muse | |
| parent | 16dbc206d810e3c753800b9503e38f129847592f (diff) | |
ported edit instrument. added includes on comboQuant
Diffstat (limited to 'muse2/muse')
| -rw-r--r-- | muse2/muse/icons.cpp | 6 | ||||
| -rw-r--r-- | muse2/muse/icons.h | 2 | ||||
| -rw-r--r-- | muse2/muse/instruments/CMakeLists.txt | 3 | ||||
| -rw-r--r-- | muse2/muse/instruments/editinstrument.cpp | 371 | ||||
| -rw-r--r-- | muse2/muse/instruments/editinstrument.h | 25 | ||||
| -rw-r--r-- | muse2/muse/instruments/editinstrumentbase.ui | 3369 | ||||
| -rw-r--r-- | muse2/muse/widgets/CMakeLists.txt | 1 | ||||
| -rw-r--r-- | muse2/muse/widgets/comboQuant.cpp | 2 | ||||
| -rw-r--r-- | muse2/muse/widgets/listitem.h | 85 | 
9 files changed, 1815 insertions, 2049 deletions
| diff --git a/muse2/muse/icons.cpp b/muse2/muse/icons.cpp index 926659ad..f2260b55 100644 --- a/muse2/muse/icons.cpp +++ b/muse2/muse/icons.cpp @@ -79,9 +79,11 @@  #include "xpm/quant.xpm"  #include "xpm/fileprint.xpm"  #include "xpm/filesave.xpm" +#include "xpm/filesaveas.xpm"  #include "xpm/fileopen.xpm"  #include "xpm/fileprintS.xpm"  #include "xpm/filesaveS.xpm" +#include "xpm/filesaveasS.xpm"  #include "xpm/fileopenS.xpm"  #include "xpm/master.xpm"  #include "xpm/filenew.xpm" @@ -294,8 +296,10 @@ QPixmap* printIcon;  QPixmap* printIconS;  QPixmap* openIcon;  QPixmap* saveIcon; +QPixmap* saveasIcon;  QPixmap* openIconS;  QPixmap* saveIconS; +QPixmap* saveasIconS;  QPixmap* masterIcon;  QPixmap* filenewIcon;  QPixmap* filenewIconS; @@ -480,9 +484,11 @@ void initIcons()        drawIcon     = new MPIXMAP(draw_xpm, NULL);        quantIcon    = new MPIXMAP(quant_xpm, NULL);        saveIcon     = new MPIXMAP(filesave_xpm, "document-save"); +      saveasIcon     = new MPIXMAP(filesaveas_xpm, "document-save-as");        printIcon    = new MPIXMAP(fileprint_xpm, "document-print");        openIcon     = new MPIXMAP(fileopen_xpm, "document-open");        saveIconS     = new MPIXMAP(filesaveS_xpm, "document-save"); +      saveasIconS     = new MPIXMAP(filesaveasS_xpm, "document-save-as");        printIconS    = new MPIXMAP(fileprintS_xpm, "document-print");        openIconS     = new MPIXMAP(fileopenS_xpm, "document-open");        masterIcon   = new MPIXMAP(master_xpm, "mixer-master"); diff --git a/muse2/muse/icons.h b/muse2/muse/icons.h index 17fa7d6f..f0fd89c2 100644 --- a/muse2/muse/icons.h +++ b/muse2/muse/icons.h @@ -57,8 +57,10 @@ extern QPixmap* printIcon;  extern QPixmap* printIconS;  extern QPixmap* openIcon;  extern QPixmap* saveIcon; +extern QPixmap* saveasIcon;  extern QPixmap* openIconS;  extern QPixmap* saveIconS; +extern QPixmap* saveasIconS;  extern QPixmap* archiveIcon;  extern QPixmap* findIcon;  extern QPixmap* masterIcon; diff --git a/muse2/muse/instruments/CMakeLists.txt b/muse2/muse/instruments/CMakeLists.txt index e4108bb8..9e658928 100644 --- a/muse2/muse/instruments/CMakeLists.txt +++ b/muse2/muse/instruments/CMakeLists.txt @@ -23,8 +23,7 @@ QT4_WRAP_CPP ( instruments_mocs     editinstrument.h     ) -# QT4_WRAP_UI ( instruments_ui_headers -QT4_WRAP_UI3 ( instruments_ui_headers +QT4_WRAP_UI ( instruments_ui_headers        editinstrumentbase.ui        ) diff --git a/muse2/muse/instruments/editinstrument.cpp b/muse2/muse/instruments/editinstrument.cpp index 9e85356a..d210b528 100644 --- a/muse2/muse/instruments/editinstrument.cpp +++ b/muse2/muse/instruments/editinstrument.cpp @@ -6,33 +6,25 @@  //  (C) Copyright 2003 Werner Schweer (ws@seh.de)  //========================================================= -#include <q3listbox.h> -//Added by qt3to4: -#include <QCloseEvent>  #include <stdio.h>   #include <errno.h> -#include <qmessagebox.h> -#include <qspinbox.h> -#include <qcombobox.h> -#include <qlineedit.h> -#include <qcheckbox.h> -#include <qdir.h> -#include <qfileinfo.h> -#include <q3filedialog.h> -#include <qtoolbutton.h> -#include <q3popupmenu.h> -#include <qpushbutton.h> -#include <qtabwidget.h> -#include <qinputdialog.h> + +#include <QCloseEvent> +#include <QDir> +#include <QFileInfo> +#include <QInputDialog> +#include <QMessageBox> +#include <QLineEdit>  #include "editinstrument.h"  #include "minstrument.h"  #include "globals.h" -#include "listitem.h"  #include "song.h"  #include "xml.h"  #include "midictrl.h"  #include "gconfig.h" +#include "icons.h" +  enum {        COL_NAME = 0, COL_TYPE, @@ -43,17 +35,29 @@ enum {  //   EditInstrument  //--------------------------------------------------------- -EditInstrument::EditInstrument(QWidget* parent, const char* name, Qt::WFlags fl) -   : EditInstrumentBase(parent, name, fl) +EditInstrument::EditInstrument(QWidget* parent, Qt::WFlags fl) +   : QMainWindow(parent, fl)        { -      patchpopup = new Q3PopupMenu(patchButton); +      setupUi(this); +      fileNewAction->setIcon(QIcon(*filenewIcon)); +      fileOpenAction->setIcon(QIcon(*openIcon)); +      fileSaveAction->setIcon(QIcon(*saveIcon)); +      fileSaveAsAction->setIcon(QIcon(*saveasIcon)); +      fileExitAction->setIcon(QIcon(*exitIcon)); +      viewController->setSelectionMode(QAbstractItemView::SingleSelection); +      toolBar->addAction(QWhatsThis::createAction(this)); +      Help->addAction(QWhatsThis::createAction(this)); + +      patchpopup = new QMenu(patchButton);        patchpopup->setCheckable(false);        // populate instrument list        // Populate common controller list.        for(int i = 0; i < 128; ++i) -        listController->insertItem(midiCtrlName(i)); -       +	{ +	  QListWidgetItem *lci = new QListWidgetItem(midiCtrlName(i)); +	  listController->addItem(lci); +	}        oldMidiInstrument = 0;        oldPatchItem = 0;        for (iMidiInstrument i = midiInstruments.begin(); i != midiInstruments.end(); ++i) { @@ -65,12 +69,14 @@ EditInstrument::EditInstrument(QWidget* parent, const char* name, Qt::WFlags fl)              if((*i)->filePath().isEmpty())                continue; -            ListBoxData* item = new ListBoxData((*i)->iname()); -            item->setData((void*)*i); -            instrumentList->insertItem(item); +            QListWidgetItem* item = new QListWidgetItem((*i)->iname()); +            QVariant v = qVariantFromValue((void*)(*i)); +            item->setData(Qt::UserRole, v); +            instrumentList->addItem(item);              } +      instrumentList->setSelectionMode(QAbstractItemView::SingleSelection);        if(instrumentList->item(0)) -        instrumentList->setSelected(instrumentList->item(0), true); +        instrumentList->setCurrentItem(instrumentList->item(0));        //oldMidiInstrument = (MidiInstrument*)((ListBoxData*)instrumentList->item(0))->data();        //oldMidiInstrument = (ListBoxData*)instrumentList->item(0);        //oldMidiInstrument = (ListBoxData*)instrumentList->selectedItem(); @@ -81,14 +87,14 @@ EditInstrument::EditInstrument(QWidget* parent, const char* name, Qt::WFlags fl)  //        workingInstrument.assign( *wip ); -      connect(instrumentList, SIGNAL(selectionChanged()), SLOT(instrumentChanged())); -      connect(patchView, SIGNAL(selectionChanged()), SLOT(patchChanged())); +      connect(instrumentList, SIGNAL(itemSelectionChanged()), SLOT(instrumentChanged())); +      connect(patchView, SIGNAL(itemSelectionChanged()), SLOT(patchChanged()));        //instrumentChanged();        changeInstrument();        //connect(listController, SIGNAL(selectionChanged()), SLOT(controllerChanged())); -      connect(viewController, SIGNAL(selectionChanged()), SLOT(controllerChanged())); +      connect(viewController, SIGNAL(itemSelectionChanged()), SLOT(controllerChanged()));        //connect(instrumentName, SIGNAL(textChanged(const QString&)), SLOT(instrumentNameChanged(const QString&)));        connect(instrumentName, SIGNAL(returnPressed()), SLOT(instrumentNameReturn())); @@ -108,7 +114,7 @@ EditInstrument::EditInstrument(QWidget* parent, const char* name, Qt::WFlags fl)        connect(deleteController, SIGNAL(clicked()), SLOT(deleteControllerClicked()));        connect(newController, SIGNAL(clicked()), SLOT(newControllerClicked()));        connect(addController, SIGNAL(clicked()), SLOT(addControllerClicked())); -      connect(listController, SIGNAL(doubleClicked(Q3ListBoxItem*)), SLOT(addControllerClicked())); +      connect(listController, SIGNAL(itemDoubleClicked(QListWidgetItem*)), SLOT(addControllerClicked()));        connect(ctrlType,SIGNAL(activated(int)), SLOT(ctrlTypeChanged(int)));        connect(ctrlName, SIGNAL(returnPressed()), SLOT(ctrlNameReturn()));        connect(ctrlName, SIGNAL(lostFocus()), SLOT(ctrlNameReturn())); @@ -159,10 +165,9 @@ void EditInstrument::fileNew()              if (!found) {                    //if(oldMidiInstrument)                    //{ -                        //MidiInstrument* oi = (MidiInstrument*)old->data(Qt::UserRole).value<void*>();                          MidiInstrument* oi = 0;                          if(oldMidiInstrument) -                          oi = (MidiInstrument*)oldMidiInstrument->data(); +                          oi = (MidiInstrument*)oldMidiInstrument->data(Qt::UserRole).value<void*>();                          MidiInstrument* wip = &workingInstrument;                          //checkDirty(oi);                          //if(checkDirty(oi)) @@ -179,7 +184,6 @@ void EditInstrument::fileNew()                                // Delete the list item and the instrument.                                deleteInstrument(oldMidiInstrument); -                            instrumentList->triggerUpdate(true);                            }                            }                          //else   @@ -198,18 +202,16 @@ void EditInstrument::fileNew()                    midiInstruments.push_back(ni);                    //QListWidgetItem* item = new QListWidgetItem(ni->iname());                    //InstrumentListItem* item = new InstrumentListItem(ni->iname()); -                  ListBoxData* item = new ListBoxData(ni->iname()); +                  QListWidgetItem* item = new QListWidgetItem(ni->iname());                    //oldMidiInstrument = item;                    workingInstrument.assign( *ni );                    //workingInstrument.setDirty(false);                    //item->setText(ni->iname()); -                  item->setData((void*)ni); -                  //QVariant v = qVariantFromValue((void*)(ni)); -                  //item->setData(Qt::UserRole, v); -                  //instrumentList->addItem(item); -                  instrumentList->insertItem(item); +                  QVariant v = qVariantFromValue((void*)(ni)); +                  item->setData(Qt::UserRole, v); +                  instrumentList->addItem(item);                    oldMidiInstrument = 0; @@ -337,7 +339,7 @@ bool EditInstrument::fileSave(MidiInstrument* instrument, const QString& name)        // Assign the working instrument values to the actual current selected instrument...        if(oldMidiInstrument)        { -        MidiInstrument* oi = (MidiInstrument*)oldMidiInstrument->data(); +        MidiInstrument* oi = (MidiInstrument*)oldMidiInstrument->data(Qt::UserRole).value<void*>();          if(oi)          {            oi->assign(workingInstrument); @@ -420,7 +422,7 @@ void EditInstrument::saveAs()              // Prompt for a new instrument name if the name has not been changed, to avoid duplicates.              if(oldMidiInstrument)              { -              MidiInstrument* oi = (MidiInstrument*)oldMidiInstrument->data(); +              MidiInstrument* oi = (MidiInstrument*)oldMidiInstrument->data(Qt::UserRole).value<void*>();                if(oi)                {                  if(oi->iname() == workingInstrument.iname()) @@ -448,7 +450,7 @@ void EditInstrument::saveAs()        //   path,        //   tr("Instrument Definition (*.idf)")); -      QString s = Q3FileDialog::getSaveFileName(path, tr("Instrument Definition (*.idf)"), this, +      QString s = QFileDialog::getSaveFileName(path, tr("Instrument Definition (*.idf)"), this,           tr("MusE: Save Instrument Definition").latin1());        if (s.isEmpty())              return; @@ -481,7 +483,7 @@ void EditInstrument::fileSaveAs()        MidiInstrument* oi = 0;        if(oldMidiInstrument) -        oi = (MidiInstrument*)oldMidiInstrument->data(); +        oi = (MidiInstrument*)oldMidiInstrument->data(Qt::UserRole).value<void*>();        int res = checkDirty(&workingInstrument, true);        switch(res) @@ -509,7 +511,6 @@ void EditInstrument::fileSaveAs()              changeInstrument(); -            instrumentList->triggerUpdate(true);            }            return;          break; @@ -614,7 +615,7 @@ void EditInstrument::fileSaveAs()                workingInstrument.setIName(s);                // Find the instrument in the list and set the old instrument to the item. -              oldMidiInstrument = (ListBoxData*)instrumentList->findItem(s, Q3ListBox::ExactMatch); +              oldMidiInstrument = instrumentList->findItems(s, Qt::MatchExactly)[0];                // Mark as a built-in instrument.                builtin = true; @@ -645,18 +646,18 @@ void EditInstrument::fileSaveAs()            //QListWidgetItem* item = new QListWidgetItem(ni->iname());            //InstrumentListItem* item = new InstrumentListItem(ni->iname());            //ListBoxData* item = new ListBoxData(ni->iname()); -          ListBoxData* item = new ListBoxData(so); +          QListWidgetItem* item = new QListWidgetItem(so);            //oldMidiInstrument = item;            workingInstrument.assign( *ni );            //workingInstrument.setDirty(false);            //item->setText(ni->iname()); -          item->setData((void*)ni); -          //QVariant v = qVariantFromValue((void*)(ni)); -          //item->setData(Qt::UserRole, v); +          //item->setData((void*)ni); +          QVariant v = qVariantFromValue((void*)(ni)); +          item->setData(Qt::UserRole, v);            //instrumentList->addItem(item); -          instrumentList->insertItem(item); +          instrumentList->addItem(item);            oldMidiInstrument = 0; @@ -715,7 +716,7 @@ void EditInstrument::fileSaveAs()          sfn = path;        else          { -        sfn = Q3FileDialog::getSaveFileName(path, tr("Instrument Definition (*.idf)"), this, +        sfn = QFileDialog::getSaveFileName(path, tr("Instrument Definition (*.idf)"), this,            tr("MusE: Save Instrument Definition").latin1());          if (sfn.isEmpty())                return; @@ -760,7 +761,7 @@ void EditInstrument::closeEvent(QCloseEvent* ev)  //        int res = checkDirty(instrument, true);          MidiInstrument* oi = 0;          if(oldMidiInstrument) -          oi = (MidiInstrument*)oldMidiInstrument->data(); +          oi = (MidiInstrument*)oldMidiInstrument->data(Qt::UserRole).value<void*>();          int res = checkDirty(&workingInstrument, true);          switch(res) @@ -788,7 +789,6 @@ void EditInstrument::closeEvent(QCloseEvent* ev)                changeInstrument(); -              instrumentList->triggerUpdate(true);              }              break; @@ -809,7 +809,7 @@ void EditInstrument::closeEvent(QCloseEvent* ev)  //      } -      Q3MainWindow::closeEvent(ev); +      QMainWindow::closeEvent(ev);        }  //--------------------------------------------------------- @@ -818,7 +818,8 @@ void EditInstrument::closeEvent(QCloseEvent* ev)  void EditInstrument::changeInstrument()  { -  ListBoxData* sel = (ListBoxData*)instrumentList->selectedItem(); +  QListWidgetItem* sel = instrumentList->currentItem(); +    if(!sel)      return; @@ -828,15 +829,24 @@ void EditInstrument::changeInstrument()    //workingInstrument = *((MidiInstrument*)sel->data());    // Assign will 'delete' any existing patches, groups, or controllers. -  workingInstrument.assign( *((MidiInstrument*)sel->data()) ); +  workingInstrument.assign( *((MidiInstrument*)sel->data(Qt::UserRole).value<void*>()) );    workingInstrument.setDirty(false);    // populate patch list -   +  patchView->blockSignals(true); +  for (int i = 0; i < patchView->topLevelItemCount(); ++i) +    qDeleteAll(patchView->topLevelItem(i)->takeChildren());    patchView->clear(); -  //listController->clear(); +  patchView->blockSignals(false); + +  //viewController->blockSignals(true); +  for (int i = 0; i < viewController->topLevelItemCount(); ++i) +    qDeleteAll(viewController->topLevelItem(i)->takeChildren());    viewController->clear(); +  //viewController->blockSignals(false); +   +  //listController->clear();    //category->clear();    //sysexList->clear(); @@ -883,17 +893,18 @@ void EditInstrument::changeInstrument()          if(pgp)          {            //QTreeWidgetItem* item = new QTreeWidgetItem; -          ListViewData* item = new ListViewData(patchView); +          QTreeWidgetItem* item = new QTreeWidgetItem(patchView);            //item->setText(0, g->name);            item->setText(0, pgp->name); -                      //QVariant v = QVariant::fromValue((void*)0);            //item->setData(0, Qt::UserRole, v);            //item->setData((void*)*g);            //item->setData((void*)0);            //item->setData((void*)&*g); -          item->setData((void*)pgp); +          //item->setData((void*)pgp); +          QVariant v = qVariantFromValue((void*)(pgp)); +          item->setData(0, Qt::UserRole, v);            //patchView->addTopLevelItem(item);            //for (ciPatch p = g->patches.begin(); p != g->patches.end(); ++p)  @@ -904,14 +915,18 @@ void EditInstrument::changeInstrument()              if(patch)              {                //QTreeWidgetItem* sitem = new QTreeWidgetItem; -              ListViewData* sitem = new ListViewData(item); +              QTreeWidgetItem* sitem = new QTreeWidgetItem(item); +              //printf("%s \n", qPrintable(patch->name)); +                //sitem->setText(0, patch.name);                //sitem->setText(0, p->name);                sitem->setText(0, patch->name);                //QVariant v = QVariant::fromValue((void*)patch);                //sitem->setData(0, Qt::UserRole, v);                //sitem->setData((void*)&*p); -              sitem->setData((void*)patch); +              //sitem->setData((void*)patch); +              QVariant v = QVariant::fromValue((void*)patch); +              sitem->setData(0, Qt::UserRole, v);                //item->addChild(sitem);              }              }   @@ -921,17 +936,17 @@ void EditInstrument::changeInstrument()    oldPatchItem = 0; -  ListViewData* fc = (ListViewData*)patchView->firstChild(); +  QTreeWidgetItem* fc = patchView->topLevelItem(0);    if(fc)    {      // This may cause a patchChanged call.      //if(patchView->selectedItem() != fc)      patchView->blockSignals(true); -    patchView->setSelected(fc, true); +    fc->setSelected(true);      patchView->blockSignals(false);      //else        //  patchChanged(); -       +      //patchView->firstChild()->setSelected(true);      //patchView->triggerUpdate(true);    } @@ -968,8 +983,9 @@ void EditInstrument::changeInstrument()  //  oldController = 0;    //ListBoxData* ci = (ListBoxData*)listController->item(0); -  ListViewData* ci = (ListViewData*)viewController->firstChild(); -   + +  QTreeWidgetItem *ci = viewController->topLevelItem(0); +    if(ci)    {      // This may cause a controllerChanged call. @@ -981,7 +997,7 @@ void EditInstrument::changeInstrument()      //  controllerChanged();      viewController->blockSignals(true); -    viewController->setSelected(ci, true); +    ci->setSelected(true);      viewController->blockSignals(false);    }   @@ -1021,7 +1037,8 @@ void EditInstrument::changeInstrument()  void EditInstrument::instrumentChanged()        { -      ListBoxData* sel = (ListBoxData*)instrumentList->selectedItem(); +      QListWidgetItem* sel = instrumentList->currentItem(); +        if(!sel)          return; @@ -1030,10 +1047,9 @@ void EditInstrument::instrumentChanged()        //if (old) {        //if(oldMidiInstrument)        //{ -        //MidiInstrument* oi = (MidiInstrument*)old->data(Qt::UserRole).value<void*>();          MidiInstrument* oi = 0;          if(oldMidiInstrument) -          oi = (MidiInstrument*)oldMidiInstrument->data(); +          oi = (MidiInstrument*)oldMidiInstrument->data(Qt::UserRole).value<void*>();          MidiInstrument* wip = &workingInstrument;          // Returns true if aborted.          //checkDirty(oi); @@ -1054,7 +1070,6 @@ void EditInstrument::instrumentChanged()                oldMidiInstrument = 0;              } -            instrumentList->triggerUpdate(true);            }            }          //else @@ -1081,7 +1096,8 @@ void EditInstrument::instrumentNameReturn()  //void EditInstrument::instrumentNameChanged(const QString& s)  {    //instrumentNameChanged(instrumentName->text()); -  ListBoxData* item = (ListBoxData*)instrumentList->selectedItem(); +  QListWidgetItem* item = instrumentList->currentItem(); +    if (item == 0)          return;    QString s = instrumentName->text(); @@ -1089,7 +1105,7 @@ void EditInstrument::instrumentNameReturn()    if(s == item->text())       return; -  MidiInstrument* curins = (MidiInstrument*)item->data(); +  MidiInstrument* curins = (MidiInstrument*)item->data(Qt::UserRole).value<void*>();    for(iMidiInstrument i = midiInstruments.begin(); i != midiInstruments.end(); ++i)     { @@ -1120,7 +1136,6 @@ void EditInstrument::instrumentNameReturn()          workingInstrument.setIName(s);          workingInstrument.setDirty(true);          //instrumentList->updateItem(item); -        instrumentList->triggerUpdate(true);          //instrumentList->update();    //      }  } @@ -1129,14 +1144,14 @@ void EditInstrument::instrumentNameReturn()  //   deleteInstrument  //--------------------------------------------------------- -void EditInstrument::deleteInstrument(ListBoxData* item) +void EditInstrument::deleteInstrument(QListWidgetItem* item)  {    if(!item)      return;    //ListBoxData* curritem = (ListBoxData*)instrumentList->selectedItem(); -  MidiInstrument* ins = (MidiInstrument*)item->data(); +  MidiInstrument* ins = (MidiInstrument*)item->data(Qt::UserRole).value<void*>();    // Be kind to the list item, just in case we install a delete handler or something.    //item->setData(0); @@ -1179,10 +1194,10 @@ void EditInstrument::tabChanged(QWidget* w)    if(oldPatchItem)    {      // Don't bother calling patchChanged, just update the patch or group. -    if(oldPatchItem->parent()) -      updatePatch(&workingInstrument, (Patch*)oldPatchItem->data()); +    if(oldPatchItem->QTreeWidgetItem::parent()) +      updatePatch(&workingInstrument, (Patch*)oldPatchItem->data(0, Qt::UserRole).value<void*>());      else -      updatePatchGroup(&workingInstrument, (PatchGroup*)oldPatchItem->data()); +      updatePatchGroup(&workingInstrument, (PatchGroup*)oldPatchItem->data(0, Qt::UserRole).value<void*>());    }    // We're still on the same item. No need to set oldPatchItem as in patchChanged... @@ -1190,12 +1205,12 @@ void EditInstrument::tabChanged(QWidget* w)    // If we're switching to the Controller tab, update the default patch button text in case a patch changed...    if(QString(w->name()) == QString("controllerTab"))    { -    ListViewData* sel = (ListViewData*)viewController->selectedItem(); +    QTreeWidgetItem* sel = viewController->currentItem(); -    if(!sel || !sel->data())  +    if(!sel || !sel->data(0, Qt::UserRole).value<void*>())         return; -    MidiController* c = (MidiController*)sel->data(); +    MidiController* c = (MidiController*)sel->data(0, Qt::UserRole).value<void*>();      MidiController::ControllerType type = midiControllerType(c->num());      // Grab the controller number from the actual values showing @@ -1211,7 +1226,8 @@ void EditInstrument::tabChanged(QWidget* w)  void EditInstrument::patchNameReturn()  { -  ListViewData* item = (ListViewData*)patchView->selectedItem(); +  QTreeWidgetItem* item = patchView->currentItem(); +      if (item == 0)          return; @@ -1225,9 +1241,9 @@ void EditInstrument::patchNameReturn()    {      PatchGroup* pgp = *g;      // If the item has a parent, it's a patch item. -    if(item->parent()) +    if(item->QTreeWidgetItem::parent())      { -      Patch* curp = (Patch*)item->data(); +      Patch* curp = (Patch*)item->data(0, Qt::UserRole).value<void*>();        for(iPatch p = pgp->patches.begin(); p != pgp->patches.end(); ++p)         {          if((*p) != curp && (*p)->name == s)  @@ -1252,7 +1268,7 @@ void EditInstrument::patchNameReturn()      else      // The item has no parent. It's a patch group item.      { -      PatchGroup* curpg = (PatchGroup*)item->data(); +      PatchGroup* curpg = (PatchGroup*)item->data(0, Qt::UserRole).value<void*>();        if(pgp != curpg && pgp->name == s)         {          patchNameEdit->blockSignals(true); @@ -1309,7 +1325,6 @@ void EditInstrument::patchNameReturn()  //---------------------------------------------------------  //   patchChanged  //--------------------------------------------------------- -  void EditInstrument::patchChanged()      {        //if (old && old->data(0, Qt::UserRole).value<void*>()) { @@ -1322,16 +1337,15 @@ void EditInstrument::patchChanged()              //Patch* p = (Patch*)old->data(0, Qt::UserRole).value<void*>();              //updatePatch(instrument, p);              if(oldPatchItem->parent()) -              updatePatch(&workingInstrument, (Patch*)oldPatchItem->data()); +                    updatePatch(&workingInstrument, (Patch*)oldPatchItem->data(0, Qt::UserRole).value<void*>());              else -              updatePatchGroup(&workingInstrument, (PatchGroup*)oldPatchItem->data()); +                    updatePatchGroup(&workingInstrument, (PatchGroup*)oldPatchItem->data(0, Qt::UserRole).value<void*>());        } -       -      ListViewData* sel = (ListViewData*)patchView->selectedItem(); +      QTreeWidgetItem* sel = patchView->selectedItems().size() ? patchView->selectedItems()[0] : 0;        oldPatchItem = sel; -      if(!sel || !sel->data())  +      if(!sel || !sel->data(0, Qt::UserRole).value<void*>())        {          patchNameEdit->setText("");          spinBoxHBank->setEnabled(false); @@ -1347,7 +1361,7 @@ void EditInstrument::patchChanged()        // If the item has a parent, it's a patch item.        if(sel->parent())        { -        Patch* p = (Patch*)sel->data(); +        Patch* p = (Patch*)sel->data(0, Qt::UserRole).value<void*>();          patchNameEdit->setText(p->name);          spinBoxHBank->setEnabled(true);          spinBoxLBank->setEnabled(true); @@ -1373,7 +1387,7 @@ void EditInstrument::patchChanged()        else        // The item is a patch group item.        { -        patchNameEdit->setText( ((PatchGroup*)sel->data())->name ); +        patchNameEdit->setText( ((PatchGroup*)sel->data(0, Qt::UserRole).value<void*>())->name );          spinBoxHBank->setEnabled(false);          spinBoxLBank->setEnabled(false);          spinBoxProgram->setEnabled(false); @@ -1390,11 +1404,12 @@ void EditInstrument::patchChanged()  void EditInstrument::defPatchChanged(int)  { -      ListViewData* item = (ListViewData*)viewController->selectedItem(); +      QTreeWidgetItem* item = viewController->currentItem(); +              if (!item)              return; -      MidiController* c = (MidiController*)item->data(); +      MidiController* c = (MidiController*)item->data(0, Qt::UserRole).value<void*>();        int val = getDefaultPatchNumber(); @@ -1427,7 +1442,7 @@ void EditInstrument::patchButtonClicked()        if (pg->size() > 1) {              for (ciPatchGroup i = pg->begin(); i != pg->end(); ++i) {                    PatchGroup* pgp = *i; -                  Q3PopupMenu* pm = new Q3PopupMenu(patchpopup); +                  QMenu* pm = new QMenu(pgp->name);                    pm->setCheckable(false);                    pm->setFont(config.fonts[0]);                    const PatchList& pl = pgp->patches; @@ -1440,11 +1455,12 @@ void EditInstrument::patchButtonClicked()                          //    {                                int id = ((mp->hbank & 0xff) << 16)                                           + ((mp->lbank & 0xff) << 8) + (mp->prog & 0xff); -                              pm->insertItem(mp->name, id); +                              QAction *ac1 = pm->addAction(mp->name); +			      ac1->setData(id);                          //    }                          } -                  patchpopup->insertItem(pgp->name, pm); +                        patchpopup->addMenu(pm);                    }              }        else if (pg->size() == 1 ){ @@ -1455,26 +1471,29 @@ void EditInstrument::patchButtonClicked()                    //if (mp->typ & mask) {                          int id = ((mp->hbank & 0xff) << 16)                                   + ((mp->lbank & 0xff) << 8) + (mp->prog & 0xff); -                        patchpopup->insertItem(mp->name, id); +                        QAction *ac2 = patchpopup->addAction(mp->name); +                        ac2->setData(id);                    //      }                    }              }        if(patchpopup->count() == 0)          return; -         -      int rv = patchpopup->exec(patchButton->mapToGlobal(QPoint(10,5))); -       + +      QAction* act = patchpopup->exec(patchButton->mapToGlobal(QPoint(10,5))); +      int rv = act->data().toInt(); +        if (rv != -1)         {          //if(rv != workingInstrument.          setDefaultPatchControls(rv); -        ListViewData* item = (ListViewData*)viewController->selectedItem(); +        QTreeWidgetItem* item = viewController->currentItem(); +          if(item)          { -          MidiController* c = (MidiController*)item->data(); +          MidiController* c = (MidiController*)item->data(0, Qt::UserRole).value<void*>();            c->setInitVal(rv);            item->setText(COL_DEF, getPatchItemText(rv)); @@ -1488,7 +1507,7 @@ void EditInstrument::patchButtonClicked()  //   addControllerToView  //--------------------------------------------------------- -ListViewData* EditInstrument::addControllerToView(MidiController* mctrl) +QTreeWidgetItem* EditInstrument::addControllerToView(MidiController* mctrl)  {        QString hnum;        QString lnum; @@ -1566,10 +1585,13 @@ ListViewData* EditInstrument::addControllerToView(MidiController* mctrl)                  def = "---";                  break;        } -       -      ListViewData* ci =  new ListViewData(viewController, mctrl->name(), int2ctrlType(t), -                                            hnum, lnum, min, max, def); -      ci->setData((void*)mctrl); + +      	QTreeWidgetItem* ci =  new QTreeWidgetItem(viewController, QStringList() <<  mctrl->name() << int2ctrlType(t) << hnum << lnum << min << max << def); +	//ListViewData* ci =  new ListViewData(viewController, mctrl->name(), int2ctrlType(t), +        //                                    hnum, lnum, min, max, def); +      //ci->setData((void*)mctrl); +      QVariant v = qVariantFromValue((void*)(mctrl)); +      ci->setData(0, Qt::UserRole, v);        //setModified(true);        return ci; @@ -1594,10 +1616,11 @@ void EditInstrument::controllerChanged()  //      }      //  ListBoxData* sel = (ListBoxData*)listController->selectedItem(); -      ListViewData* sel = (ListViewData*)viewController->selectedItem(); + +	QTreeWidgetItem* sel = viewController->selectedItems().size() ? viewController->selectedItems()[0] : 0;  //      oldController = sel; -      if(!sel || !sel->data())  +	if(!sel || !sel->data(0, Qt::UserRole).value<void*>())         {          ctrlName->blockSignals(true);          ctrlName->setText(""); @@ -1606,8 +1629,7 @@ void EditInstrument::controllerChanged()          return;        } -      //MidiController* c = (MidiController*)sel->data(Qt::UserRole).value<void*>(); -      MidiController* c = (MidiController*)sel->data(); +      MidiController* c = (MidiController*)sel->data(0, Qt::UserRole).value<void*>();        ctrlName->blockSignals(true);        ctrlName->setText(c->name()); @@ -1749,10 +1771,11 @@ void EditInstrument::controllerChanged()  void EditInstrument::ctrlNameReturn()  //void EditInstrument::ctrlNameChanged(const QString& s)  { -      ListViewData* item = (ListViewData*)viewController->selectedItem(); +      QTreeWidgetItem* item = viewController->currentItem(); +        if (item == 0)              return; -      MidiController* c = (MidiController*)item->data(); +      MidiController* c = (MidiController*)item->data(0, Qt::UserRole).value<void*>();        QString cName = ctrlName->text(); @@ -1794,12 +1817,13 @@ void EditInstrument::ctrlNameReturn()  void EditInstrument::ctrlTypeChanged(int idx)        { -      ListViewData* item = (ListViewData*)viewController->selectedItem(); +      QTreeWidgetItem* item = viewController->currentItem(); +              if (item == 0)              return;        MidiController::ControllerType t = (MidiController::ControllerType)idx; -      MidiController* c = (MidiController*)item->data(); +      MidiController* c = (MidiController*)item->data(0, Qt::UserRole).value<void*>();        if(t == midiControllerType(c->num()))           return; @@ -2089,12 +2113,13 @@ void EditInstrument::ctrlTypeChanged(int idx)  void EditInstrument::ctrlHNumChanged(int val)        { -      ListViewData* item = (ListViewData*)viewController->selectedItem(); +      QTreeWidgetItem* item = viewController->currentItem(); +              if (item == 0)              return;        QString s;        s.setNum(val); -      MidiController* c = (MidiController*)item->data(); +      MidiController* c = (MidiController*)item->data(0, Qt::UserRole).value<void*>();        //int n = c->num() & 0xff;        int n = c->num() & 0x7fff00ff;        c->setNum(n | ((val & 0xff) << 8)); @@ -2108,10 +2133,11 @@ void EditInstrument::ctrlHNumChanged(int val)  void EditInstrument::ctrlLNumChanged(int val)        { -      ListViewData* item = (ListViewData*)viewController->selectedItem(); +      QTreeWidgetItem* item = viewController->currentItem(); +              if (item == 0)              return; -      MidiController* c = (MidiController*)item->data(); +      MidiController* c = (MidiController*)item->data(0, Qt::UserRole).value<void*>();        //int n = c->num() & 0xff00;        int n = c->num() & ~0xff;        c->setNum(n | (val & 0xff)); @@ -2132,7 +2158,8 @@ void EditInstrument::ctrlLNumChanged(int val)  void EditInstrument::ctrlMinChanged(int val)  { -      ListViewData* item = (ListViewData*)viewController->selectedItem(); +      QTreeWidgetItem* item = viewController->currentItem(); +              if (item == 0)              return; @@ -2140,7 +2167,7 @@ void EditInstrument::ctrlMinChanged(int val)        s.setNum(val);        item->setText(COL_MIN, s); -      MidiController* c = (MidiController*)item->data(); +      MidiController* c = (MidiController*)item->data(0, Qt::UserRole).value<void*>();        c->setMinVal(val);        int rng = 0; @@ -2217,7 +2244,8 @@ void EditInstrument::ctrlMinChanged(int val)  void EditInstrument::ctrlMaxChanged(int val)  { -      ListViewData* item = (ListViewData*)viewController->selectedItem(); +      QTreeWidgetItem* item = viewController->currentItem(); +              if (item == 0)              return; @@ -2225,7 +2253,7 @@ void EditInstrument::ctrlMaxChanged(int val)        s.setNum(val);        item->setText(COL_MAX, s); -      MidiController* c = (MidiController*)item->data(); +      MidiController* c = (MidiController*)item->data(0, Qt::UserRole).value<void*>();        c->setMaxVal(val);        int rng = 0; @@ -2302,11 +2330,12 @@ void EditInstrument::ctrlMaxChanged(int val)  void EditInstrument::ctrlDefaultChanged(int val)  { -      ListViewData* item = (ListViewData*)viewController->selectedItem(); +      QTreeWidgetItem* item = viewController->currentItem(); +        if (item == 0)              return; -      MidiController* c = (MidiController*)item->data(); +      MidiController* c = (MidiController*)item->data(0, Qt::UserRole).value<void*>();        if(val == c->minVal() - 1)        { @@ -2396,7 +2425,8 @@ void EditInstrument::deletePatchClicked()        //MidiInstrument* instrument = (MidiInstrument*)item->data(Qt::UserRole).value<void*>();  //      MidiInstrument* instrument = (MidiInstrument*)item->data();        //QTreeWidgetItem* pi = patchView->currentItem(); -      ListViewData* pi = (ListViewData*)patchView->selectedItem(); +      QTreeWidgetItem* pi = patchView->currentItem(); +        if (pi == 0)              return; @@ -2409,11 +2439,11 @@ void EditInstrument::deletePatchClicked()        // If the item has a parent item, it's a patch item...        if(pi->parent())        { -        PatchGroup* group = (PatchGroup*)((ListViewData*)pi->parent())->data(); +        PatchGroup* group = (PatchGroup*)(pi->parent())->data(0, Qt::UserRole).value<void*>();          // If there is an allocated patch in the data, delete it.          //Patch* patch = (Patch*)pi->auxData(); -        Patch* patch = (Patch*)pi->data(); +        Patch* patch = (Patch*)pi->data(0, Qt::UserRole).value<void*>();          if(patch)          {            if(group) @@ -2439,7 +2469,7 @@ void EditInstrument::deletePatchClicked()        {          // Is there an allocated patch group in the data?          //PatchGroup* group = (PatchGroup*)pi->auxData(); -        PatchGroup* group = (PatchGroup*)pi->data(); +        PatchGroup* group = (PatchGroup*)pi->data(0, Qt::UserRole).value<void*>();          if(group)          { @@ -2500,7 +2530,7 @@ void EditInstrument::deletePatchClicked()        patchView->blockSignals(true);        delete pi;        if(patchView->currentItem()) -        patchView->setSelected(patchView->currentItem(), true); +        patchView->currentItem()->setSelected(true);        patchView->blockSignals(false);        oldPatchItem = 0; @@ -2541,9 +2571,9 @@ void EditInstrument::newPatchClicked()        if(oldPatchItem)        {          if(oldPatchItem->parent()) -          updatePatch(&workingInstrument, (Patch*)oldPatchItem->data()); +          updatePatch(&workingInstrument, (Patch*)oldPatchItem->data(0, Qt::UserRole).value<void*>());          else   -          updatePatchGroup(&workingInstrument, (PatchGroup*)oldPatchItem->data()); +          updatePatchGroup(&workingInstrument, (PatchGroup*)oldPatchItem->data(0, Qt::UserRole).value<void*>());        }          //MidiInstrument* instrument = (MidiInstrument*)item->data(Qt::UserRole).value<void*>(); @@ -2579,7 +2609,8 @@ void EditInstrument::newPatchClicked()        //        //PatchGroup* pGroup = 0;        //QTreeWidgetItem* pi = patchView->currentItem(); -      ListViewData* pi = (ListViewData*)patchView->selectedItem(); +      QTreeWidgetItem* pi = patchView->currentItem(); +        if (pi == 0)              return; @@ -2593,12 +2624,12 @@ void EditInstrument::newPatchClicked()        if(pi->parent())        {          // Remember the current selected patch. -        selpatch = (Patch*)pi->data(); +        selpatch = (Patch*)pi->data(0, Qt::UserRole).value<void*>(); -        pi = (ListViewData*)pi->parent(); +        pi = pi->parent();        } -      PatchGroup* group = (PatchGroup*)pi->data(); +      PatchGroup* group = (PatchGroup*)pi->data(0, Qt::UserRole).value<void*>();        if(!group)          return; @@ -2699,7 +2730,7 @@ void EditInstrument::newPatchClicked()        //Patch* pp = &(group->patches.back());        //QTreeWidgetItem* sitem = new QTreeWidgetItem; -      ListViewData* sitem = new ListViewData(pi); +      QTreeWidgetItem* sitem = new QTreeWidgetItem(pi);        //sitem->setText(0, patch->name);        sitem->setText(0, patchName); @@ -2709,7 +2740,9 @@ void EditInstrument::newPatchClicked()        //sitem->setData(0, Qt::UserRole, v);        // Set the list view item's data.  -      sitem->setData((void*)patch); +      //sitem->setData((void*)patch); +      QVariant v = qVariantFromValue((void*)(patch)); +      sitem->setData(0, Qt::UserRole, v);        //sitem->setAuxData((void*)patch);        //sitem->setData((void*)pp); @@ -2725,8 +2758,8 @@ void EditInstrument::newPatchClicked()        // May cause patchChanged call.        patchView->blockSignals(true); -      patchView->setSelected(sitem, true); -      patchView->ensureItemVisible(sitem); +      sitem->setSelected(true); +      patchView->scrollToItem((QTreeWidgetItem*)sitem, QAbstractItemView::EnsureVisible);        patchView->blockSignals(false);        //oldPatchItem = (ListViewData*)patchView->selectedItem(); @@ -2762,9 +2795,9 @@ void EditInstrument::newGroupClicked()        if(oldPatchItem)        {          if(oldPatchItem->parent()) -          updatePatch(&workingInstrument, (Patch*)oldPatchItem->data()); +          updatePatch(&workingInstrument, (Patch*)oldPatchItem->data(0, Qt::UserRole).value<void*>());          else   -          updatePatchGroup(&workingInstrument, (PatchGroup*)oldPatchItem->data()); +          updatePatchGroup(&workingInstrument, (PatchGroup*)oldPatchItem->data(0, Qt::UserRole).value<void*>());        }          //MidiInstrument* instrument = (MidiInstrument*)item->data(Qt::UserRole).value<void*>(); @@ -2799,8 +2832,7 @@ void EditInstrument::newGroupClicked()        pg->push_back(group);        //PatchGroup* pgp = &(pg->back()); -      //QTreeWidgetItem* sitem = new QTreeWidgetItem; -      ListViewData* sitem = new ListViewData(patchView); +      QTreeWidgetItem* sitem = new QTreeWidgetItem(patchView);        sitem->setText(0, groupName);        patchNameEdit->setText(groupName); @@ -2810,7 +2842,8 @@ void EditInstrument::newGroupClicked()        //sitem->setData((void*)0);        // Set the list view item's data.  -      sitem->setData((void*)group); +      QVariant v = qVariantFromValue((void*)(group)); +      sitem->setData(0, Qt::UserRole, v);        //sitem->setAuxData((void*)pgp);        //patchView->addTopLevelItem(sitem); @@ -2820,7 +2853,7 @@ void EditInstrument::newGroupClicked()        // May cause patchChanged call.        patchView->blockSignals(true); -      patchView->setSelected(sitem, true); +      sitem->setSelected(true);        patchView->blockSignals(false);        //oldPatchItem = (ListViewData*)patchView->selectedItem(); @@ -2850,7 +2883,7 @@ void EditInstrument::deleteControllerClicked()        //ListBoxData* item = (ListBoxData*)instrumentList->selectedItem();        //QListWidgetItem* item2 = listController->currentItem();  //      ListBoxData* item = (ListBoxData*)listController->selectedItem(); -      ListViewData* item = (ListViewData*)viewController->selectedItem(); +      QTreeWidgetItem* item = viewController->currentItem();        //if (item == 0 || item2 == 0)        if(!item) @@ -2862,7 +2895,7 @@ void EditInstrument::deleteControllerClicked()        //MidiControllerList* cl     = instrument->controller();        //cl->removeAll(ctrl); -      MidiController* ctrl = (MidiController*)item->data(); +      MidiController* ctrl = (MidiController*)item->data(0, Qt::UserRole).value<void*>();        if(!ctrl)          return; @@ -2876,7 +2909,7 @@ void EditInstrument::deleteControllerClicked()        viewController->blockSignals(true);        delete item;        if(viewController->currentItem()) -        viewController->setSelected(viewController->currentItem(), true); +        viewController->currentItem()->setSelected(true);  //      listController->blockSignals(false);        viewController->blockSignals(false); @@ -2926,15 +2959,15 @@ void EditInstrument::newControllerClicked()        ctrl->setMinVal(0);        ctrl->setMaxVal(127);        ctrl->setInitVal(CTRL_VAL_UNKNOWN); -       -      ListViewData* ci = (ListViewData*)viewController->selectedItem(); + +      QTreeWidgetItem* ci = viewController->currentItem();        // To allow for quick multiple successive controller creation.        // If there's a current controller item selected, copy initial values from it.        bool found = false;        if(ci)        { -        MidiController* selctl = (MidiController*)ci->data(); +        MidiController* selctl = (MidiController*)ci->data(0, Qt::UserRole).value<void*>();          // Assign.          // *ctrl = *selctl; @@ -2988,13 +3021,13 @@ void EditInstrument::newControllerClicked()        //listController->setCurrentItem(item);        workingInstrument.controller()->add(ctrl);    -      ListViewData* item = addControllerToView(ctrl); +      QTreeWidgetItem* item = addControllerToView(ctrl);  //      listController->blockSignals(true);  //      listController->setSelected(item, true);  //      listController->blockSignals(false);        viewController->blockSignals(true); -      viewController->setSelected(item, true); +      item->setSelected(true);        viewController->blockSignals(false);        //oldController = (ListBoxData*)listController->selectedItem(); @@ -3020,12 +3053,12 @@ void EditInstrument::addControllerClicked()    //QString name = midiCtrlName(lnum); -  int idx = listController->currentItem(); -  if(idx == -1) +  QListWidgetItem* idx = listController->currentItem(); +  if(idx == 0)      return;    int lnum = -1; -  QString name = listController->currentText(); +  QString name = listController->currentItem()->text();    for(int i = 0; i < 128; i++)    {      if(midiCtrlName(i) == name) @@ -3080,10 +3113,10 @@ void EditInstrument::addControllerClicked()    workingInstrument.controller()->add(ctrl);    -  ListViewData* item = addControllerToView(ctrl); +  QTreeWidgetItem* item = addControllerToView(ctrl);    viewController->blockSignals(true); -  viewController->setSelected(item, true); +  item->setSelected(true);    viewController->blockSignals(false);    controllerChanged(); @@ -3129,6 +3162,8 @@ void EditInstrument::deleteSysexClicked()  void EditInstrument::updatePatchGroup(MidiInstrument* instrument, PatchGroup* pg)        { +	QString a = pg->name; +	QString b = patchNameEdit->text();        if (pg->name != patchNameEdit->text()) {              pg->name = patchNameEdit->text();              instrument->setDirty(true); @@ -3315,17 +3350,17 @@ void EditInstrument::updateInstrument(MidiInstrument* instrument)  //      printf("updateInstrument: B\n"); -      //QTreeWidgetItem* patchItem = patchView->currentItem(); -      ListViewData* patchItem = (ListViewData*)patchView->selectedItem(); +      QTreeWidgetItem* patchItem = patchView->currentItem(); +        if (patchItem)         {                //Patch* p = (Patch*)patchItem->data(0, Qt::UserRole).value<void*>();          // If the item has a parent, it's a patch item.          if(patchItem->parent()) -          updatePatch(instrument, (Patch*)patchItem->data()); +          updatePatch(instrument, (Patch*)patchItem->data(0, Qt::UserRole).value<void*>());          else -          updatePatchGroup(instrument, (PatchGroup*)patchItem->data()); +          updatePatchGroup(instrument, (PatchGroup*)patchItem->data(0, Qt::UserRole).value<void*>());        }      } diff --git a/muse2/muse/instruments/editinstrument.h b/muse2/muse/instruments/editinstrument.h index 25a5993f..b200e326 100644 --- a/muse2/muse/instruments/editinstrument.h +++ b/muse2/muse/instruments/editinstrument.h @@ -9,25 +9,24 @@  #ifndef __EDITINSTRUMENT_H__  #define __EDITINSTRUMENT_H__ -#include "editinstrumentbase.h" +#include "ui_editinstrumentbase.h"  #include "minstrument.h"  #include "midictrl.h" -//Added by qt3to4: -#include <Q3PopupMenu> -#include <QCloseEvent> -class ListBoxData; -class ListViewData; + +class QDialog; +class QMenu; +class QCloseEvent;  //---------------------------------------------------------  //   EditInstrument  //--------------------------------------------------------- -class EditInstrument : public EditInstrumentBase { +class EditInstrument : public QMainWindow, public Ui::EditInstrumentBase {      Q_OBJECT        MidiInstrument workingInstrument; -      ListBoxData*  oldMidiInstrument; -      ListViewData* oldPatchItem; +      QListWidgetItem*  oldMidiInstrument; +      QTreeWidgetItem* oldPatchItem;        void closeEvent(QCloseEvent*);        int checkDirty(MidiInstrument*, bool isClose = false);        bool fileSave(MidiInstrument*, const QString&); @@ -36,7 +35,7 @@ class EditInstrument : public EditInstrumentBase {        void updatePatch(MidiInstrument*, Patch*);        void updatePatchGroup(MidiInstrument*, PatchGroup*);        void changeInstrument(); -      ListViewData* addControllerToView(MidiController* mctrl); +      QTreeWidgetItem* addControllerToView(MidiController* mctrl);        QString getPatchItemText(int);        void enableDefaultControls(bool, bool);        void setDefaultPatchName(int); @@ -44,8 +43,8 @@ class EditInstrument : public EditInstrumentBase {        void setDefaultPatchNumbers(int);        void setDefaultPatchControls(int);        const char* getPatchName(int); -      void deleteInstrument(ListBoxData*); -      Q3PopupMenu* patchpopup; +      void deleteInstrument(QListWidgetItem*); +      QMenu* patchpopup;     private slots:        virtual void fileNew(); @@ -85,7 +84,7 @@ class EditInstrument : public EditInstrumentBase {        void ctrlNullParamLChanged(int);     public: -      EditInstrument(QWidget* parent = 0, const char* name = 0, Qt::WFlags fl = Qt::Window); +      EditInstrument(QWidget* parent = 0, Qt::WFlags fl = Qt::Window);        };  #endif diff --git a/muse2/muse/instruments/editinstrumentbase.ui b/muse2/muse/instruments/editinstrumentbase.ui index 8f5ecc7b..3337cfc0 100644 --- a/muse2/muse/instruments/editinstrumentbase.ui +++ b/muse2/muse/instruments/editinstrumentbase.ui @@ -1,926 +1,741 @@ -<!DOCTYPE UI><UI version="3.2" stdsetdef="1"> -<class>EditInstrumentBase</class> -<widget class="QMainWindow"> -    <property name="name"> -        <cstring>Form1</cstring> -    </property> -    <property name="geometry"> -        <rect> -            <x>0</x> -            <y>0</y> -            <width>802</width> -            <height>505</height> -        </rect> -    </property> -    <property name="minimumSize"> -        <size> -            <width>802</width> -            <height>464</height> -        </size> -    </property> -    <property name="caption"> -        <string>MusE: Instrument Editor</string> -    </property> -    <vbox> -        <property name="name"> -            <cstring>unnamed</cstring> -        </property> -        <widget class="QSplitter"> -            <property name="name"> -                <cstring>splitter4</cstring> +<?xml version="1.0" encoding="UTF-8"?> +<ui version="4.0"> + <class>EditInstrumentBase</class> + <widget class="QMainWindow" name="EditInstrumentBase"> +  <property name="geometry"> +   <rect> +    <x>0</x> +    <y>0</y> +    <width>802</width> +    <height>505</height> +   </rect> +  </property> +  <property name="minimumSize"> +   <size> +    <width>802</width> +    <height>464</height> +   </size> +  </property> +  <property name="windowTitle"> +   <string>MusE: Instrument Editor</string> +  </property> +  <widget class="QWidget" name="widget"> +   <layout class="QVBoxLayout"> +    <item> +     <widget class="QSplitter" name="splitter4"> +      <property name="minimumSize"> +       <size> +        <width>780</width> +        <height>365</height> +       </size> +      </property> +      <property name="orientation"> +       <enum>Qt::Horizontal</enum> +      </property> +      <widget class="QWidget" name="layout26"> +       <layout class="QVBoxLayout"> +        <item> +         <widget class="QLabel" name="textLabel2"> +          <property name="text"> +           <string>Instrument Name:</string> +          </property> +          <property name="wordWrap"> +           <bool>false</bool> +          </property> +         </widget> +        </item> +        <item> +         <widget class="QLineEdit" name="instrumentName"> +          <property name="toolTip"> +           <string/> +          </property> +          <property name="whatsThis"> +           <string>Selected instrument name.</string> +          </property> +         </widget> +        </item> +        <item> +         <widget class="QListWidget" name="instrumentList"> +          <property name="whatsThis"> +           <string>List of defined instruments.</string> +          </property> +         </widget> +        </item> +       </layout> +      </widget> +      <widget class="QTabWidget" name="tabWidget3"> +       <property name="enabled"> +        <bool>true</bool> +       </property> +       <property name="currentIndex"> +        <number>0</number> +       </property> +       <widget class="QWidget" name="patchesTab"> +        <attribute name="title"> +         <string>Pa&tches</string> +        </attribute> +        <layout class="QVBoxLayout"> +         <item> +          <widget class="QSplitter" name="splitter5"> +           <property name="orientation"> +            <enum>Qt::Horizontal</enum> +           </property> +           <widget class="QTreeWidget" name="patchView"> +            <property name="sizePolicy"> +             <sizepolicy hsizetype="Expanding" vsizetype="Expanding"> +              <horstretch>0</horstretch> +              <verstretch>0</verstretch> +             </sizepolicy>              </property> -            <property name="minimumSize"> -                <size> -                    <width>780</width> -                    <height>365</height> -                </size> +            <property name="toolTip"> +             <string/>              </property> -            <property name="orientation"> -                <enum>Horizontal</enum> +            <property name="whatsThis"> +             <string>List of groups and patches.</string>              </property> -            <widget class="QLayoutWidget"> -                <property name="name"> -                    <cstring>layout26</cstring> -                </property> -                <vbox> -                    <property name="name"> -                        <cstring>unnamed</cstring> -                    </property> -                    <widget class="QLabel"> -                        <property name="name"> -                            <cstring>textLabel2</cstring> -                        </property> -                        <property name="text"> -                            <string>Instrument Name:</string> -                        </property> -                    </widget> -                    <widget class="QLineEdit"> -                        <property name="name"> -                            <cstring>instrumentName</cstring> -                        </property> -                        <property name="toolTip" stdset="0"> -                            <string></string> -                        </property> -                        <property name="whatsThis" stdset="0"> -                            <string>Selected instrument name.</string> -                        </property> -                    </widget> -                    <widget class="QListBox"> -                        <property name="name"> -                            <cstring>instrumentList</cstring> -                        </property> -                        <property name="whatsThis" stdset="0"> -                            <string>List of defined instruments.</string> -                        </property> -                    </widget> -                </vbox> -            </widget> -            <widget class="QTabWidget"> -                <property name="name"> -                    <cstring>tabWidget3</cstring> -                </property> -                <property name="enabled"> -                    <bool>true</bool> -                </property> -                <widget class="QWidget"> -                    <property name="name"> -                        <cstring>patchesTab</cstring> -                    </property> -                    <attribute name="title"> -                        <string>Pa&tches</string> -                    </attribute> -                    <vbox> -                        <property name="name"> -                            <cstring>unnamed</cstring> -                        </property> -                        <widget class="QSplitter"> -                            <property name="name"> -                                <cstring>splitter5</cstring> -                            </property> -                            <property name="orientation"> -                                <enum>Horizontal</enum> -                            </property> -                            <widget class="QListView"> -                                <column> -                                    <property name="text"> -                                        <string>Group/Patch</string> -                                    </property> -                                    <property name="clickable"> -                                        <bool>true</bool> -                                    </property> -                                    <property name="resizable"> -                                        <bool>true</bool> -                                    </property> -                                </column> -                                <property name="name"> -                                    <cstring>patchView</cstring> -                                </property> -                                <property name="sizePolicy"> -                                    <sizepolicy> -                                        <hsizetype>7</hsizetype> -                                        <vsizetype>7</vsizetype> -                                        <horstretch>0</horstretch> -                                        <verstretch>0</verstretch> -                                    </sizepolicy> -                                </property> -                                <property name="allColumnsShowFocus"> -                                    <bool>true</bool> -                                </property> -                                <property name="rootIsDecorated"> -                                    <bool>true</bool> -                                </property> -                                <property name="toolTip" stdset="0"> -                                    <string></string> -                                </property> -                                <property name="whatsThis" stdset="0"> -                                    <string>List of groups and patches.</string> -                                </property> -                            </widget> -                            <widget class="QLayoutWidget"> -                                <property name="name"> -                                    <cstring>layout26</cstring> -                                </property> -                                <vbox> -                                    <property name="name"> -                                        <cstring>unnamed</cstring> -                                    </property> -                                    <widget class="QGroupBox"> -                                        <property name="name"> -                                            <cstring>groupBox2</cstring> -                                        </property> -                                        <property name="title"> -                                            <string>Properties</string> -                                        </property> -                                        <vbox> -                                            <property name="name"> -                                                <cstring>unnamed</cstring> -                                            </property> -                                            <widget class="QLabel"> -                                                <property name="name"> -                                                    <cstring>textLabelPatchName</cstring> -                                                </property> -                                                <property name="text"> -                                                    <string>Name:</string> -                                                </property> -                                            </widget> -                                            <widget class="QLineEdit"> -                                                <property name="name"> -                                                    <cstring>patchNameEdit</cstring> -                                                </property> -                                                <property name="toolTip" stdset="0"> -                                                    <string>Group or patch name</string> -                                                </property> -                                                <property name="whatsThis" stdset="0"> -                                                    <string>Group or patch name</string> -                                                </property> -                                            </widget> -                                            <widget class="QLabel"> -                                                <property name="name"> -                                                    <cstring>textLabel2_2</cstring> -                                                </property> -                                                <property name="text"> -                                                    <string>High Bank:</string> -                                                </property> -                                            </widget> -                                            <widget class="QLayoutWidget"> -                                                <property name="name"> -                                                    <cstring>layout22</cstring> -                                                </property> -                                                <hbox> -                                                    <property name="name"> -                                                        <cstring>unnamed</cstring> -                                                    </property> -                                                    <widget class="QSpinBox"> -                                                        <property name="name"> -                                                            <cstring>spinBoxHBank</cstring> -                                                        </property> -                                                        <property name="specialValueText"> -                                                            <string>---</string> -                                                            <comment>dont care</comment> -                                                        </property> -                                                        <property name="maxValue"> -                                                            <number>128</number> -                                                        </property> -                                                        <property name="minValue"> -                                                            <number>0</number> -                                                        </property> -                                                        <property name="value"> -                                                            <number>0</number> -                                                        </property> -                                                        <property name="toolTip" stdset="0"> -                                                            <string>Patch high bank number</string> -                                                        </property> -                                                        <property name="whatsThis" stdset="0"> -                                                            <string>Patch high bank number. --- means don't care.</string> -                                                        </property> -                                                    </widget> -                                                    <spacer> -                                                        <property name="name"> -                                                            <cstring>spacer8</cstring> -                                                        </property> -                                                        <property name="orientation"> -                                                            <enum>Horizontal</enum> -                                                        </property> -                                                        <property name="sizeType"> -                                                            <enum>Expanding</enum> -                                                        </property> -                                                        <property name="sizeHint"> -                                                            <size> -                                                                <width>373</width> -                                                                <height>20</height> -                                                            </size> -                                                        </property> -                                                    </spacer> -                                                </hbox> -                                            </widget> -                                            <widget class="QLabel"> -                                                <property name="name"> -                                                    <cstring>textLabel3_2</cstring> -                                                </property> -                                                <property name="text"> -                                                    <string>Low Bank:</string> -                                                </property> -                                            </widget> -                                            <widget class="QLayoutWidget"> -                                                <property name="name"> -                                                    <cstring>layout23</cstring> -                                                </property> -                                                <hbox> -                                                    <property name="name"> -                                                        <cstring>unnamed</cstring> -                                                    </property> -                                                    <widget class="QSpinBox"> -                                                        <property name="name"> -                                                            <cstring>spinBoxLBank</cstring> -                                                        </property> -                                                        <property name="specialValueText"> -                                                            <string>---</string> -                                                        </property> -                                                        <property name="maxValue"> -                                                            <number>128</number> -                                                        </property> -                                                        <property name="minValue"> -                                                            <number>0</number> -                                                        </property> -                                                        <property name="value"> -                                                            <number>0</number> -                                                        </property> -                                                        <property name="toolTip" stdset="0"> -                                                            <string>Patch low bank number</string> -                                                        </property> -                                                        <property name="whatsThis" stdset="0"> -                                                            <string>Patch low bank number. --- means don't care.</string> -                                                        </property> -                                                    </widget> -                                                    <spacer> -                                                        <property name="name"> -                                                            <cstring>spacer9</cstring> -                                                        </property> -                                                        <property name="orientation"> -                                                            <enum>Horizontal</enum> -                                                        </property> -                                                        <property name="sizeType"> -                                                            <enum>Expanding</enum> -                                                        </property> -                                                        <property name="sizeHint"> -                                                            <size> -                                                                <width>373</width> -                                                                <height>20</height> -                                                            </size> -                                                        </property> -                                                    </spacer> -                                                </hbox> -                                            </widget> -                                            <widget class="QLabel"> -                                                <property name="name"> -                                                    <cstring>textLabel4_3</cstring> -                                                </property> -                                                <property name="text"> -                                                    <string>Program:</string> -                                                </property> -                                            </widget> -                                            <widget class="QLayoutWidget"> -                                                <property name="name"> -                                                    <cstring>layout24</cstring> -                                                </property> -                                                <hbox> -                                                    <property name="name"> -                                                        <cstring>unnamed</cstring> -                                                    </property> -                                                    <widget class="QSpinBox"> -                                                        <property name="name"> -                                                            <cstring>spinBoxProgram</cstring> -                                                        </property> -                                                        <property name="maxValue"> -                                                            <number>128</number> -                                                        </property> -                                                        <property name="minValue"> -                                                            <number>1</number> -                                                        </property> -                                                        <property name="value"> -                                                            <number>1</number> -                                                        </property> -                                                        <property name="toolTip" stdset="0"> -                                                            <string>Patch program number</string> -                                                        </property> -                                                        <property name="whatsThis" stdset="0"> -                                                            <string>Patch program number</string> -                                                        </property> -                                                    </widget> -                                                    <spacer> -                                                        <property name="name"> -                                                            <cstring>spacer10</cstring> -                                                        </property> -                                                        <property name="orientation"> -                                                            <enum>Horizontal</enum> -                                                        </property> -                                                        <property name="sizeType"> -                                                            <enum>Expanding</enum> -                                                        </property> -                                                        <property name="sizeHint"> -                                                            <size> -                                                                <width>373</width> -                                                                <height>20</height> -                                                            </size> -                                                        </property> -                                                    </spacer> -                                                </hbox> -                                            </widget> -                                            <widget class="QLayoutWidget"> -                                                <property name="name"> -                                                    <cstring>layout6</cstring> -                                                </property> -                                                <hbox> -                                                    <property name="name"> -                                                        <cstring>unnamed</cstring> -                                                    </property> -                                                    <widget class="QCheckBox"> -                                                        <property name="name"> -                                                            <cstring>checkBoxDrum</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>Drum</string> -                                                        </property> -                                                        <property name="accel"> -                                                            <string></string> -                                                        </property> -                                                        <property name="toolTip" stdset="0"> -                                                            <string>Drum patch</string> -                                                        </property> -                                                        <property name="whatsThis" stdset="0"> -                                                            <string>If set, the patch is available only for drum channels.</string> -                                                        </property> -                                                    </widget> -                                                    <widget class="QCheckBox"> -                                                        <property name="name"> -                                                            <cstring>checkBoxGM</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>GM</string> -                                                        </property> -                                                        <property name="accel"> -                                                            <string></string> -                                                        </property> -                                                        <property name="toolTip" stdset="0"> -                                                            <string>GM patch</string> -                                                        </property> -                                                        <property name="whatsThis" stdset="0"> -                                                            <string>If set, the patch is available in a 'GM' or 'NO' midi song type.</string> -                                                        </property> -                                                    </widget> -                                                    <widget class="QCheckBox"> -                                                        <property name="name"> -                                                            <cstring>checkBoxGS</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>GS</string> -                                                        </property> -                                                        <property name="toolTip" stdset="0"> -                                                            <string>GS patch</string> -                                                        </property> -                                                        <property name="whatsThis" stdset="0"> -                                                            <string>If set, the patch is available in a 'GS' or 'NO' midi song type.</string> -                                                        </property> -                                                    </widget> -                                                    <widget class="QCheckBox"> -                                                        <property name="name"> -                                                            <cstring>checkBoxXG</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>XG</string> -                                                        </property> -                                                        <property name="toolTip" stdset="0"> -                                                            <string>XG patch</string> -                                                        </property> -                                                        <property name="whatsThis" stdset="0"> -                                                            <string>If set, the patch is available in an 'XG' or 'NO' midi song type.</string> -                                                        </property> -                                                    </widget> -                                                </hbox> -                                            </widget> -                                        </vbox> -                                    </widget> -                                    <spacer> -                                        <property name="name"> -                                            <cstring>spacer7</cstring> -                                        </property> -                                        <property name="orientation"> -                                            <enum>Vertical</enum> -                                        </property> -                                        <property name="sizeType"> -                                            <enum>Expanding</enum> -                                        </property> -                                        <property name="sizeHint"> -                                            <size> -                                                <width>20</width> -                                                <height>90</height> -                                            </size> -                                        </property> -                                    </spacer> -                                    <widget class="QLayoutWidget"> -                                        <property name="name"> -                                            <cstring>layout5</cstring> -                                        </property> -                                        <hbox> -                                            <property name="name"> -                                                <cstring>unnamed</cstring> -                                            </property> -                                            <widget class="QToolButton"> -                                                <property name="name"> -                                                    <cstring>patchDelete</cstring> -                                                </property> -                                                <property name="sizePolicy"> -                                                    <sizepolicy> -                                                        <hsizetype>5</hsizetype> -                                                        <vsizetype>0</vsizetype> -                                                        <horstretch>0</horstretch> -                                                        <verstretch>0</verstretch> -                                                    </sizepolicy> -                                                </property> -                                                <property name="text"> -                                                    <string>&Delete</string> -                                                </property> -                                                <property name="accel"> -                                                    <string>Alt+D</string> -                                                </property> -                                                <property name="toolTip" stdset="0"> -                                                    <string>Delete group or patch</string> -                                                </property> -                                            </widget> -                                            <widget class="QToolButton"> -                                                <property name="name"> -                                                    <cstring>patchNew</cstring> -                                                </property> -                                                <property name="sizePolicy"> -                                                    <sizepolicy> -                                                        <hsizetype>5</hsizetype> -                                                        <vsizetype>1</vsizetype> -                                                        <horstretch>0</horstretch> -                                                        <verstretch>0</verstretch> -                                                    </sizepolicy> -                                                </property> -                                                <property name="text"> -                                                    <string>New &Patch</string> -                                                </property> -                                                <property name="accel"> -                                                    <string>Alt+P</string> -                                                </property> -                                                <property name="toolTip" stdset="0"> -                                                    <string>New patch</string> -                                                </property> -                                            </widget> -                                            <widget class="QToolButton"> -                                                <property name="name"> -                                                    <cstring>patchNewGroup</cstring> -                                                </property> -                                                <property name="text"> -                                                    <string>New &Group</string> -                                                </property> -                                                <property name="accel"> -                                                    <string>Alt+G</string> -                                                </property> -                                                <property name="toolTip" stdset="0"> -                                                    <string>New group</string> -                                                </property> -                                            </widget> -                                            <spacer> -                                                <property name="name"> -                                                    <cstring>spacer11</cstring> -                                                </property> -                                                <property name="orientation"> -                                                    <enum>Horizontal</enum> -                                                </property> -                                                <property name="sizeType"> -                                                    <enum>Expanding</enum> -                                                </property> -                                                <property name="sizeHint"> -                                                    <size> -                                                        <width>240</width> -                                                        <height>20</height> -                                                    </size> -                                                </property> -                                            </spacer> -                                        </hbox> -                                    </widget> -                                </vbox> -                            </widget> -                        </widget> -                    </vbox> +            <property name="rootIsDecorated"> +             <bool>true</bool> +            </property> +            <property name="allColumnsShowFocus"> +             <bool>true</bool> +            </property> +            <column> +             <property name="text"> +              <string>Group/Patch</string> +             </property> +            </column> +           </widget> +           <widget class="QWidget" name="layout27"> +            <layout class="QVBoxLayout"> +             <item> +              <widget class="QGroupBox" name="groupBox2"> +               <property name="title"> +                <string>Properties</string> +               </property> +               <layout class="QVBoxLayout"> +                <item> +                 <widget class="QLabel" name="textLabelPatchName"> +                  <property name="text"> +                   <string>Name:</string> +                  </property> +                  <property name="wordWrap"> +                   <bool>false</bool> +                  </property> +                 </widget> +                </item> +                <item> +                 <widget class="QLineEdit" name="patchNameEdit"> +                  <property name="toolTip"> +                   <string>Group or patch name</string> +                  </property> +                  <property name="whatsThis"> +                   <string>Group or patch name</string> +                  </property> +                 </widget> +                </item> +                <item> +                 <widget class="QLabel" name="textLabel2_2"> +                  <property name="text"> +                   <string>High Bank:</string> +                  </property> +                  <property name="wordWrap"> +                   <bool>false</bool> +                  </property> +                 </widget> +                </item> +                <item> +                 <layout class="QHBoxLayout"> +                  <item> +                   <widget class="QSpinBox" name="spinBoxHBank"> +                    <property name="toolTip"> +                     <string>Patch high bank number</string> +                    </property> +                    <property name="whatsThis"> +                     <string>Patch high bank number. --- means don't care.</string> +                    </property> +                    <property name="specialValueText"> +                     <string comment="dont care">---</string> +                    </property> +                    <property name="minimum"> +                     <number>0</number> +                    </property> +                    <property name="maximum"> +                     <number>128</number> +                    </property> +                    <property name="value"> +                     <number>0</number> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <spacer name="spacer8"> +                    <property name="orientation"> +                     <enum>Qt::Horizontal</enum> +                    </property> +                    <property name="sizeType"> +                     <enum>QSizePolicy::Expanding</enum> +                    </property> +                    <property name="sizeHint" stdset="0"> +                     <size> +                      <width>373</width> +                      <height>20</height> +                     </size> +                    </property> +                   </spacer> +                  </item> +                 </layout> +                </item> +                <item> +                 <widget class="QLabel" name="textLabel3_2"> +                  <property name="text"> +                   <string>Low Bank:</string> +                  </property> +                  <property name="wordWrap"> +                   <bool>false</bool> +                  </property> +                 </widget> +                </item> +                <item> +                 <layout class="QHBoxLayout"> +                  <item> +                   <widget class="QSpinBox" name="spinBoxLBank"> +                    <property name="toolTip"> +                     <string>Patch low bank number</string> +                    </property> +                    <property name="whatsThis"> +                     <string>Patch low bank number. --- means don't care.</string> +                    </property> +                    <property name="specialValueText"> +                     <string>---</string> +                    </property> +                    <property name="minimum"> +                     <number>0</number> +                    </property> +                    <property name="maximum"> +                     <number>128</number> +                    </property> +                    <property name="value"> +                     <number>0</number> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <spacer name="spacer9"> +                    <property name="orientation"> +                     <enum>Qt::Horizontal</enum> +                    </property> +                    <property name="sizeType"> +                     <enum>QSizePolicy::Expanding</enum> +                    </property> +                    <property name="sizeHint" stdset="0"> +                     <size> +                      <width>373</width> +                      <height>20</height> +                     </size> +                    </property> +                   </spacer> +                  </item> +                 </layout> +                </item> +                <item> +                 <widget class="QLabel" name="textLabel4_3"> +                  <property name="text"> +                   <string>Program:</string> +                  </property> +                  <property name="wordWrap"> +                   <bool>false</bool> +                  </property> +                 </widget> +                </item> +                <item> +                 <layout class="QHBoxLayout"> +                  <item> +                   <widget class="QSpinBox" name="spinBoxProgram"> +                    <property name="toolTip"> +                     <string>Patch program number</string> +                    </property> +                    <property name="whatsThis"> +                     <string>Patch program number</string> +                    </property> +                    <property name="minimum"> +                     <number>1</number> +                    </property> +                    <property name="maximum"> +                     <number>128</number> +                    </property> +                    <property name="value"> +                     <number>1</number> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <spacer name="spacer10"> +                    <property name="orientation"> +                     <enum>Qt::Horizontal</enum> +                    </property> +                    <property name="sizeType"> +                     <enum>QSizePolicy::Expanding</enum> +                    </property> +                    <property name="sizeHint" stdset="0"> +                     <size> +                      <width>373</width> +                      <height>20</height> +                     </size> +                    </property> +                   </spacer> +                  </item> +                 </layout> +                </item> +                <item> +                 <layout class="QHBoxLayout"> +                  <item> +                   <widget class="QCheckBox" name="checkBoxDrum"> +                    <property name="toolTip"> +                     <string>Drum patch</string> +                    </property> +                    <property name="whatsThis"> +                     <string>If set, the patch is available only for drum channels.</string> +                    </property> +                    <property name="text"> +                     <string>Drum</string> +                    </property> +                    <property name="shortcut"> +                     <string/> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <widget class="QCheckBox" name="checkBoxGM"> +                    <property name="toolTip"> +                     <string>GM patch</string> +                    </property> +                    <property name="whatsThis"> +                     <string>If set, the patch is available in a 'GM' or 'NO' midi song type.</string> +                    </property> +                    <property name="text"> +                     <string>GM</string> +                    </property> +                    <property name="shortcut"> +                     <string/> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <widget class="QCheckBox" name="checkBoxGS"> +                    <property name="toolTip"> +                     <string>GS patch</string> +                    </property> +                    <property name="whatsThis"> +                     <string>If set, the patch is available in a 'GS' or 'NO' midi song type.</string> +                    </property> +                    <property name="text"> +                     <string>GS</string> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <widget class="QCheckBox" name="checkBoxXG"> +                    <property name="toolTip"> +                     <string>XG patch</string> +                    </property> +                    <property name="whatsThis"> +                     <string>If set, the patch is available in an 'XG' or 'NO' midi song type.</string> +                    </property> +                    <property name="text"> +                     <string>XG</string> +                    </property> +                   </widget> +                  </item> +                 </layout> +                </item> +               </layout> +              </widget> +             </item> +             <item> +              <spacer name="spacer7"> +               <property name="orientation"> +                <enum>Qt::Vertical</enum> +               </property> +               <property name="sizeType"> +                <enum>QSizePolicy::Expanding</enum> +               </property> +               <property name="sizeHint" stdset="0"> +                <size> +                 <width>20</width> +                 <height>90</height> +                </size> +               </property> +              </spacer> +             </item> +             <item> +              <layout class="QHBoxLayout"> +               <item> +                <widget class="QToolButton" name="patchDelete"> +                 <property name="sizePolicy"> +                  <sizepolicy hsizetype="Preferred" vsizetype="Fixed"> +                   <horstretch>0</horstretch> +                   <verstretch>0</verstretch> +                  </sizepolicy> +                 </property> +                 <property name="toolTip"> +                  <string>Delete group or patch</string> +                 </property> +                 <property name="text"> +                  <string>&Delete</string> +                 </property> +                 <property name="shortcut"> +                  <string>Alt+D</string> +                 </property> +                </widget> +               </item> +               <item> +                <widget class="QToolButton" name="patchNew"> +                 <property name="sizePolicy"> +                  <sizepolicy hsizetype="Preferred" vsizetype="Minimum"> +                   <horstretch>0</horstretch> +                   <verstretch>0</verstretch> +                  </sizepolicy> +                 </property> +                 <property name="toolTip"> +                  <string>New patch</string> +                 </property> +                 <property name="text"> +                  <string>New &Patch</string> +                 </property> +                 <property name="shortcut"> +                  <string>Alt+P</string> +                 </property>                  </widget> -                <widget class="QWidget"> -                    <property name="name"> -                        <cstring>controllerTab</cstring> -                    </property> -                    <attribute name="title"> -                        <string>Contro&ller</string> -                    </attribute> -                    <vbox> -                        <property name="name"> -                            <cstring>unnamed</cstring> -                        </property> -                        <widget class="QSplitter"> -                            <property name="name"> -                                <cstring>splitter4</cstring> -                            </property> -                            <property name="orientation"> -                                <enum>Horizontal</enum> -                            </property> -                            <widget class="QLayoutWidget"> -                                <property name="name"> -                                    <cstring>layout13</cstring> -                                </property> -                                <vbox> -                                    <property name="name"> -                                        <cstring>unnamed</cstring> -                                    </property> -                                    <widget class="QLabel"> -                                        <property name="name"> -                                            <cstring>textLabel1</cstring> -                                        </property> -                                        <property name="sizePolicy"> -                                            <sizepolicy> -                                                <hsizetype>5</hsizetype> -                                                <vsizetype>0</vsizetype> -                                                <horstretch>0</horstretch> -                                                <verstretch>0</verstretch> -                                            </sizepolicy> -                                        </property> -                                        <property name="text"> -                                            <string>Common:</string> -                                        </property> -                                    </widget> -                                    <widget class="QListBox"> -                                        <property name="name"> -                                            <cstring>listController</cstring> -                                        </property> -                                        <property name="variableWidth"> -                                            <bool>false</bool> -                                        </property> -                                        <property name="toolTip" stdset="0"> -                                            <string></string> -                                        </property> -                                        <property name="whatsThis" stdset="0"> -                                            <string>This is a list of commonly used midi controllers. +               </item> +               <item> +                <widget class="QToolButton" name="patchNewGroup"> +                 <property name="toolTip"> +                  <string>New group</string> +                 </property> +                 <property name="text"> +                  <string>New &Group</string> +                 </property> +                 <property name="shortcut"> +                  <string>Alt+G</string> +                 </property> +                </widget> +               </item> +               <item> +                <spacer name="spacer11"> +                 <property name="orientation"> +                  <enum>Qt::Horizontal</enum> +                 </property> +                 <property name="sizeType"> +                  <enum>QSizePolicy::Expanding</enum> +                 </property> +                 <property name="sizeHint" stdset="0"> +                  <size> +                   <width>240</width> +                   <height>20</height> +                  </size> +                 </property> +                </spacer> +               </item> +              </layout> +             </item> +            </layout> +           </widget> +          </widget> +         </item> +        </layout> +       </widget> +       <widget class="QWidget" name="controllerTab"> +        <attribute name="title"> +         <string>Contro&ller</string> +        </attribute> +        <layout class="QVBoxLayout"> +         <item> +          <widget class="QSplitter" name="splitter6"> +           <property name="orientation"> +            <enum>Qt::Horizontal</enum> +           </property> +           <widget class="QWidget" name="layout13"> +            <layout class="QVBoxLayout"> +             <item> +              <widget class="QLabel" name="textLabel1"> +               <property name="sizePolicy"> +                <sizepolicy hsizetype="Preferred" vsizetype="Fixed"> +                 <horstretch>0</horstretch> +                 <verstretch>0</verstretch> +                </sizepolicy> +               </property> +               <property name="text"> +                <string>Common:</string> +               </property> +               <property name="wordWrap"> +                <bool>false</bool> +               </property> +              </widget> +             </item> +             <item> +              <widget class="QListWidget" name="listController"> +               <property name="toolTip"> +                <string/> +               </property> +               <property name="whatsThis"> +                <string>This is a list of commonly used midi controllers.  Note that in MusE pitch and program changes are  handled like normal controllers.</string> -                                        </property> -                                    </widget> -                                </vbox> -                            </widget> -                            <widget class="QLayoutWidget"> -                                <property name="name"> -                                    <cstring>layout17</cstring> -                                </property> -                                <vbox> -                                    <property name="name"> -                                        <cstring>unnamed</cstring> -                                    </property> -                                    <widget class="QListView"> -                                        <column> -                                            <property name="text"> -                                                <string>Name                  </string> -                                            </property> -                                            <property name="clickable"> -                                                <bool>true</bool> -                                            </property> -                                            <property name="resizable"> -                                                <bool>true</bool> -                                            </property> -                                        </column> -                                        <column> -                                            <property name="text"> -                                                <string>Type       </string> -                                            </property> -                                            <property name="clickable"> -                                                <bool>true</bool> -                                            </property> -                                            <property name="resizable"> -                                                <bool>true</bool> -                                            </property> -                                        </column> -                                        <column> -                                            <property name="text"> -                                                <string>H-Ctrl</string> -                                            </property> -                                            <property name="clickable"> -                                                <bool>true</bool> -                                            </property> -                                            <property name="resizable"> -                                                <bool>false</bool> -                                            </property> -                                        </column> -                                        <column> -                                            <property name="text"> -                                                <string>L-Ctrl</string> -                                            </property> -                                            <property name="clickable"> -                                                <bool>true</bool> -                                            </property> -                                            <property name="resizable"> -                                                <bool>false</bool> -                                            </property> -                                        </column> -                                        <column> -                                            <property name="text"> -                                                <string>Min  </string> -                                            </property> -                                            <property name="clickable"> -                                                <bool>true</bool> -                                            </property> -                                            <property name="resizable"> -                                                <bool>false</bool> -                                            </property> -                                        </column> -                                        <column> -                                            <property name="text"> -                                                <string>Max  </string> -                                            </property> -                                            <property name="clickable"> -                                                <bool>true</bool> -                                            </property> -                                            <property name="resizable"> -                                                <bool>false</bool> -                                            </property> -                                        </column> -                                        <column> -                                            <property name="text"> -                                                <string>Def  </string> -                                            </property> -                                            <property name="clickable"> -                                                <bool>true</bool> -                                            </property> -                                            <property name="resizable"> -                                                <bool>false</bool> -                                            </property> -                                        </column> -                                        <property name="name"> -                                            <cstring>viewController</cstring> -                                        </property> -                                        <property name="frameShape"> -                                            <enum>StyledPanel</enum> -                                        </property> -                                        <property name="frameShadow"> -                                            <enum>Sunken</enum> -                                        </property> -                                        <property name="allColumnsShowFocus"> -                                            <bool>true</bool> -                                        </property> -                                        <property name="toolTip" stdset="0"> -                                            <string>List of defined controllers</string> -                                        </property> -                                        <property name="whatsThis" stdset="0"> -                                            <string>List of defined controllers.</string> -                                        </property> -                                    </widget> -                                    <widget class="QGroupBox"> -                                        <property name="name"> -                                            <cstring>GroupBox1</cstring> -                                        </property> -                                        <property name="sizePolicy"> -                                            <sizepolicy> -                                                <hsizetype>1</hsizetype> -                                                <vsizetype>5</vsizetype> -                                                <horstretch>0</horstretch> -                                                <verstretch>0</verstretch> -                                            </sizepolicy> -                                        </property> -                                        <property name="title"> -                                            <string>Properties</string> -                                        </property> -                                        <vbox> -                                            <property name="name"> -                                                <cstring>unnamed</cstring> -                                            </property> -                                            <widget class="QLayoutWidget"> -                                                <property name="name"> -                                                    <cstring>layout33</cstring> -                                                </property> -                                                <hbox> -                                                    <property name="name"> -                                                        <cstring>unnamed</cstring> -                                                    </property> -                                                    <widget class="QLabel"> -                                                        <property name="name"> -                                                            <cstring>TextLabel1_3</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>Name:</string> -                                                        </property> -                                                    </widget> -                                                    <widget class="QLineEdit"> -                                                        <property name="name"> -                                                            <cstring>ctrlName</cstring> -                                                        </property> -                                                        <property name="toolTip" stdset="0"> -                                                            <string></string> -                                                        </property> -                                                        <property name="whatsThis" stdset="0"> -                                                            <string>Midi controller name</string> -                                                        </property> -                                                    </widget> -                                                </hbox> -                                            </widget> -                                            <widget class="QLayoutWidget"> -                                                <property name="name"> -                                                    <cstring>layout37</cstring> -                                                </property> -                                                <hbox> -                                                    <property name="name"> -                                                        <cstring>unnamed</cstring> -                                                    </property> -                                                    <widget class="QLabel"> -                                                        <property name="name"> -                                                            <cstring>TextLabel2_4</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>Type:</string> -                                                        </property> -                                                    </widget> -                                                    <widget class="QComboBox"> -                                                        <item> -                                                            <property name="text"> -                                                                <string>Control7</string> -                                                            </property> -                                                        </item> -                                                        <item> -                                                            <property name="text"> -                                                                <string>Control14</string> -                                                            </property> -                                                        </item> -                                                        <item> -                                                            <property name="text"> -                                                                <string>RPN</string> -                                                            </property> -                                                        </item> -                                                        <item> -                                                            <property name="text"> -                                                                <string>NRPN</string> -                                                            </property> -                                                        </item> -                                                        <item> -                                                            <property name="text"> -                                                                <string>RPN14</string> -                                                            </property> -                                                        </item> -                                                        <item> -                                                            <property name="text"> -                                                                <string>NRPN14</string> -                                                            </property> -                                                        </item> -                                                        <item> -                                                            <property name="text"> -                                                                <string>Pitch</string> -                                                            </property> -                                                        </item> -                                                        <item> -                                                            <property name="text"> -                                                                <string>Program</string> -                                                            </property> -                                                        </item> -                                                        <property name="name"> -                                                            <cstring>ctrlType</cstring> -                                                        </property> -                                                        <property name="toolTip" stdset="0"> -                                                            <string>Midi controller type</string> -                                                        </property> -                                                        <property name="whatsThis" stdset="0"> -                                                            <string>Midi controller type</string> -                                                        </property> -                                                    </widget> -                                                    <spacer> -                                                        <property name="name"> -                                                            <cstring>spacer15</cstring> -                                                        </property> -                                                        <property name="orientation"> -                                                            <enum>Horizontal</enum> -                                                        </property> -                                                        <property name="sizeType"> -                                                            <enum>Expanding</enum> -                                                        </property> -                                                        <property name="sizeHint"> -                                                            <size> -                                                                <width>40</width> -                                                                <height>20</height> -                                                            </size> -                                                        </property> -                                                    </spacer> -                                                    <widget class="QLabel"> -                                                        <property name="name"> -                                                            <cstring>TextLabel3_2</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>H-Ctrl</string> -                                                        </property> -                                                        <property name="indent"> -                                                            <number>10</number> -                                                        </property> -                                                    </widget> -                                                    <widget class="QSpinBox"> -                                                        <property name="name"> -                                                            <cstring>spinBoxHCtrlNo</cstring> -                                                        </property> -                                                        <property name="sizePolicy"> -                                                            <sizepolicy> -                                                                <hsizetype>7</hsizetype> -                                                                <vsizetype>0</vsizetype> -                                                                <horstretch>0</horstretch> -                                                                <verstretch>0</verstretch> -                                                            </sizepolicy> -                                                        </property> -                                                        <property name="maxValue"> -                                                            <number>127</number> -                                                        </property> -                                                        <property name="minValue"> -                                                            <number>0</number> -                                                        </property> -                                                        <property name="value"> -                                                            <number>0</number> -                                                        </property> -                                                        <property name="toolTip" stdset="0"> -                                                            <string>Midi controller number high byte</string> -                                                        </property> -                                                        <property name="whatsThis" stdset="0"> -                                                            <string>Midi controller number high byte</string> -                                                        </property> -                                                    </widget> -                                                    <spacer> -                                                        <property name="name"> -                                                            <cstring>spacer16</cstring> -                                                        </property> -                                                        <property name="orientation"> -                                                            <enum>Horizontal</enum> -                                                        </property> -                                                        <property name="sizeType"> -                                                            <enum>Expanding</enum> -                                                        </property> -                                                        <property name="sizeHint"> -                                                            <size> -                                                                <width>40</width> -                                                                <height>20</height> -                                                            </size> -                                                        </property> -                                                    </spacer> -                                                    <widget class="QLabel"> -                                                        <property name="name"> -                                                            <cstring>TextLabel2_3_2</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>L-Ctrl</string> -                                                        </property> -                                                        <property name="indent"> -                                                            <number>10</number> -                                                        </property> -                                                    </widget> -                                                    <widget class="QSpinBox"> -                                                        <property name="name"> -                                                            <cstring>spinBoxLCtrlNo</cstring> -                                                        </property> -                                                        <property name="sizePolicy"> -                                                            <sizepolicy> -                                                                <hsizetype>7</hsizetype> -                                                                <vsizetype>0</vsizetype> -                                                                <horstretch>0</horstretch> -                                                                <verstretch>0</verstretch> -                                                            </sizepolicy> -                                                        </property> -                                                        <property name="specialValueText"> -                                                            <string>*</string> -                                                            <comment>wild card</comment> -                                                        </property> -                                                        <property name="maxValue"> -                                                            <number>127</number> -                                                        </property> -                                                        <property name="minValue"> -                                                            <number>-1</number> -                                                        </property> -                                                        <property name="value"> -                                                            <number>0</number> -                                                        </property> -                                                        <property name="toolTip" stdset="0"> -                                                            <string>Midi controller number low byte (* means drum controller)</string> -                                                        </property> -                                                        <property name="whatsThis" stdset="0"> -                                                            <string>Midi controller number low byte.  +               </property> +              </widget> +             </item> +            </layout> +           </widget> +           <widget class="QWidget" name="layout17"> +            <layout class="QVBoxLayout"> +             <item> +              <widget class="QTreeWidget" name="viewController"> +               <property name="toolTip"> +                <string>List of defined controllers</string> +               </property> +               <property name="whatsThis"> +                <string>List of defined controllers.</string> +               </property> +               <property name="frameShape"> +                <enum>QFrame::StyledPanel</enum> +               </property> +               <property name="frameShadow"> +                <enum>QFrame::Sunken</enum> +               </property> +               <property name="allColumnsShowFocus"> +                <bool>true</bool> +               </property> +               <column> +                <property name="text"> +                 <string>Name                  </string> +                </property> +               </column> +               <column> +                <property name="text"> +                 <string>Type       </string> +                </property> +               </column> +               <column> +                <property name="text"> +                 <string>H-Ctrl</string> +                </property> +               </column> +               <column> +                <property name="text"> +                 <string>L-Ctrl</string> +                </property> +               </column> +               <column> +                <property name="text"> +                 <string>Min  </string> +                </property> +               </column> +               <column> +                <property name="text"> +                 <string>Max  </string> +                </property> +               </column> +               <column> +                <property name="text"> +                 <string>Def  </string> +                </property> +               </column> +              </widget> +             </item> +             <item> +              <widget class="QGroupBox" name="GroupBox1"> +               <property name="sizePolicy"> +                <sizepolicy hsizetype="Minimum" vsizetype="Preferred"> +                 <horstretch>0</horstretch> +                 <verstretch>0</verstretch> +                </sizepolicy> +               </property> +               <property name="title"> +                <string>Properties</string> +               </property> +               <layout class="QVBoxLayout"> +                <item> +                 <layout class="QHBoxLayout"> +                  <item> +                   <widget class="QLabel" name="TextLabel1_3"> +                    <property name="text"> +                     <string>Name:</string> +                    </property> +                    <property name="wordWrap"> +                     <bool>false</bool> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <widget class="QLineEdit" name="ctrlName"> +                    <property name="toolTip"> +                     <string/> +                    </property> +                    <property name="whatsThis"> +                     <string>Midi controller name</string> +                    </property> +                   </widget> +                  </item> +                 </layout> +                </item> +                <item> +                 <layout class="QHBoxLayout"> +                  <item> +                   <widget class="QLabel" name="TextLabel2_4"> +                    <property name="text"> +                     <string>Type:</string> +                    </property> +                    <property name="wordWrap"> +                     <bool>false</bool> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <widget class="QComboBox" name="ctrlType"> +                    <property name="toolTip"> +                     <string>Midi controller type</string> +                    </property> +                    <property name="whatsThis"> +                     <string>Midi controller type</string> +                    </property> +                    <item> +                     <property name="text"> +                      <string>Control7</string> +                     </property> +                    </item> +                    <item> +                     <property name="text"> +                      <string>Control14</string> +                     </property> +                    </item> +                    <item> +                     <property name="text"> +                      <string>RPN</string> +                     </property> +                    </item> +                    <item> +                     <property name="text"> +                      <string>NRPN</string> +                     </property> +                    </item> +                    <item> +                     <property name="text"> +                      <string>RPN14</string> +                     </property> +                    </item> +                    <item> +                     <property name="text"> +                      <string>NRPN14</string> +                     </property> +                    </item> +                    <item> +                     <property name="text"> +                      <string>Pitch</string> +                     </property> +                    </item> +                    <item> +                     <property name="text"> +                      <string>Program</string> +                     </property> +                    </item> +                   </widget> +                  </item> +                  <item> +                   <spacer name="spacer15"> +                    <property name="orientation"> +                     <enum>Qt::Horizontal</enum> +                    </property> +                    <property name="sizeType"> +                     <enum>QSizePolicy::Expanding</enum> +                    </property> +                    <property name="sizeHint" stdset="0"> +                     <size> +                      <width>40</width> +                      <height>20</height> +                     </size> +                    </property> +                   </spacer> +                  </item> +                  <item> +                   <widget class="QLabel" name="TextLabel3_2"> +                    <property name="text"> +                     <string>H-Ctrl</string> +                    </property> +                    <property name="wordWrap"> +                     <bool>false</bool> +                    </property> +                    <property name="indent"> +                     <number>10</number> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <widget class="QSpinBox" name="spinBoxHCtrlNo"> +                    <property name="sizePolicy"> +                     <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> +                      <horstretch>0</horstretch> +                      <verstretch>0</verstretch> +                     </sizepolicy> +                    </property> +                    <property name="toolTip"> +                     <string>Midi controller number high byte</string> +                    </property> +                    <property name="whatsThis"> +                     <string>Midi controller number high byte</string> +                    </property> +                    <property name="minimum"> +                     <number>0</number> +                    </property> +                    <property name="maximum"> +                     <number>127</number> +                    </property> +                    <property name="value"> +                     <number>0</number> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <spacer name="spacer16"> +                    <property name="orientation"> +                     <enum>Qt::Horizontal</enum> +                    </property> +                    <property name="sizeType"> +                     <enum>QSizePolicy::Expanding</enum> +                    </property> +                    <property name="sizeHint" stdset="0"> +                     <size> +                      <width>40</width> +                      <height>20</height> +                     </size> +                    </property> +                   </spacer> +                  </item> +                  <item> +                   <widget class="QLabel" name="TextLabel2_3_2"> +                    <property name="text"> +                     <string>L-Ctrl</string> +                    </property> +                    <property name="wordWrap"> +                     <bool>false</bool> +                    </property> +                    <property name="indent"> +                     <number>10</number> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <widget class="QSpinBox" name="spinBoxLCtrlNo"> +                    <property name="sizePolicy"> +                     <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> +                      <horstretch>0</horstretch> +                      <verstretch>0</verstretch> +                     </sizepolicy> +                    </property> +                    <property name="toolTip"> +                     <string>Midi controller number low byte (* means drum controller)</string> +                    </property> +                    <property name="whatsThis"> +                     <string>Midi controller number low byte.   If low byte is * then the controller is a    'drum controller'. For drum tracks and    GS/XG type songs and instruments. @@ -929,80 +744,80 @@ Allows controllers for each instrument in   replaced by the 'ANote' in the drum map.  Examples: The GS and XG instruments'    Drum controllers.</string> -                                                        </property> -                                                    </widget> -                                                </hbox> -                                            </widget> -                                            <widget class="QLayoutWidget"> -                                                <property name="name"> -                                                    <cstring>layout38</cstring> -                                                </property> -                                                <hbox> -                                                    <property name="name"> -                                                        <cstring>unnamed</cstring> -                                                    </property> -                                                    <widget class="QLabel"> -                                                        <property name="name"> -                                                            <cstring>textLabel4_2</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>Range:</string> -                                                        </property> -                                                    </widget> -                                                    <spacer> -                                                        <property name="name"> -                                                            <cstring>spacer17</cstring> -                                                        </property> -                                                        <property name="orientation"> -                                                            <enum>Horizontal</enum> -                                                        </property> -                                                        <property name="sizeType"> -                                                            <enum>Expanding</enum> -                                                        </property> -                                                        <property name="sizeHint"> -                                                            <size> -                                                                <width>40</width> -                                                                <height>20</height> -                                                            </size> -                                                        </property> -                                                    </spacer> -                                                    <widget class="QLabel"> -                                                        <property name="name"> -                                                            <cstring>TextLabel1_2_2</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>Min</string> -                                                        </property> -                                                        <property name="alignment"> -                                                            <set>AlignVCenter|AlignRight</set> -                                                        </property> -                                                        <property name="indent"> -                                                            <number>10</number> -                                                        </property> -                                                    </widget> -                                                    <widget class="QSpinBox"> -                                                        <property name="name"> -                                                            <cstring>spinBoxMin</cstring> -                                                        </property> -                                                        <property name="sizePolicy"> -                                                            <sizepolicy> -                                                                <hsizetype>7</hsizetype> -                                                                <vsizetype>0</vsizetype> -                                                                <horstretch>0</horstretch> -                                                                <verstretch>0</verstretch> -                                                            </sizepolicy> -                                                        </property> -                                                        <property name="maxValue"> -                                                            <number>16383</number> -                                                        </property> -                                                        <property name="minValue"> -                                                            <number>-16384</number> -                                                        </property> -                                                        <property name="toolTip" stdset="0"> -                                                            <string>Minimum value. If negative, auto-translate.</string> -                                                        </property> -                                                        <property name="whatsThis" stdset="0"> -                                                            <string>Minimum value. If the minimum value  +                    </property> +                    <property name="specialValueText"> +                     <string comment="wild card">*</string> +                    </property> +                    <property name="minimum"> +                     <number>-1</number> +                    </property> +                    <property name="maximum"> +                     <number>127</number> +                    </property> +                    <property name="value"> +                     <number>0</number> +                    </property> +                   </widget> +                  </item> +                 </layout> +                </item> +                <item> +                 <layout class="QHBoxLayout"> +                  <item> +                   <widget class="QLabel" name="textLabel4_2"> +                    <property name="text"> +                     <string>Range:</string> +                    </property> +                    <property name="wordWrap"> +                     <bool>false</bool> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <spacer name="spacer17"> +                    <property name="orientation"> +                     <enum>Qt::Horizontal</enum> +                    </property> +                    <property name="sizeType"> +                     <enum>QSizePolicy::Expanding</enum> +                    </property> +                    <property name="sizeHint" stdset="0"> +                     <size> +                      <width>40</width> +                      <height>20</height> +                     </size> +                    </property> +                   </spacer> +                  </item> +                  <item> +                   <widget class="QLabel" name="TextLabel1_2_2"> +                    <property name="text"> +                     <string>Min</string> +                    </property> +                    <property name="alignment"> +                     <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> +                    </property> +                    <property name="wordWrap"> +                     <bool>false</bool> +                    </property> +                    <property name="indent"> +                     <number>10</number> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <widget class="QSpinBox" name="spinBoxMin"> +                    <property name="sizePolicy"> +                     <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> +                      <horstretch>0</horstretch> +                      <verstretch>0</verstretch> +                     </sizepolicy> +                    </property> +                    <property name="toolTip"> +                     <string>Minimum value. If negative, auto-translate.</string> +                    </property> +                    <property name="whatsThis"> +                     <string>Minimum value. If the minimum value    is negative, the range will automatically   be translated to a positive range.  @@ -1021,259 +836,243 @@ Type 'Pitch' is the exception. It is biased   at zero, even with a negative minimum:  'Pitch': Min: -8192 Max: 8191  True range: Min: -8192 Max: 8191 (bias 0)</string> -                                                        </property> -                                                    </widget> -                                                    <spacer> -                                                        <property name="name"> -                                                            <cstring>spacer18</cstring> -                                                        </property> -                                                        <property name="orientation"> -                                                            <enum>Horizontal</enum> -                                                        </property> -                                                        <property name="sizeType"> -                                                            <enum>Expanding</enum> -                                                        </property> -                                                        <property name="sizeHint"> -                                                            <size> -                                                                <width>40</width> -                                                                <height>20</height> -                                                            </size> -                                                        </property> -                                                    </spacer> -                                                    <widget class="QLabel"> -                                                        <property name="name"> -                                                            <cstring>TextLabel2_2_2</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>Max</string> -                                                        </property> -                                                        <property name="alignment"> -                                                            <set>AlignVCenter|AlignRight</set> -                                                        </property> -                                                        <property name="indent"> -                                                            <number>10</number> -                                                        </property> -                                                    </widget> -                                                    <widget class="QSpinBox"> -                                                        <property name="name"> -                                                            <cstring>spinBoxMax</cstring> -                                                        </property> -                                                        <property name="sizePolicy"> -                                                            <sizepolicy> -                                                                <hsizetype>7</hsizetype> -                                                                <vsizetype>0</vsizetype> -                                                                <horstretch>0</horstretch> -                                                                <verstretch>0</verstretch> -                                                            </sizepolicy> -                                                        </property> -                                                        <property name="maxValue"> -                                                            <number>16383</number> -                                                        </property> -                                                        <property name="minValue"> -                                                            <number>-16384</number> -                                                        </property> -                                                        <property name="value"> -                                                            <number>127</number> -                                                        </property> -                                                        <property name="toolTip" stdset="0"> -                                                            <string>Maximum value</string> -                                                        </property> -                                                        <property name="whatsThis" stdset="0"> -                                                            <string>Maximum value</string> -                                                        </property> -                                                    </widget> -                                                </hbox> -                                            </widget> -                                            <widget class="QLayoutWidget"> -                                                <property name="name"> -                                                    <cstring>layout16</cstring> -                                                </property> -                                                <grid> -                                                    <property name="name"> -                                                        <cstring>unnamed</cstring> -                                                    </property> -                                                    <spacer row="1" column="0" rowspan="1" colspan="2"> -                                                        <property name="name"> -                                                            <cstring>spacer13_2</cstring> -                                                        </property> -                                                        <property name="orientation"> -                                                            <enum>Horizontal</enum> -                                                        </property> -                                                        <property name="sizeType"> -                                                            <enum>Expanding</enum> -                                                        </property> -                                                        <property name="sizeHint"> -                                                            <size> -                                                                <width>40</width> -                                                                <height>20</height> -                                                            </size> -                                                        </property> -                                                    </spacer> -                                                    <widget class="QLabel" row="0" column="0"> -                                                        <property name="name"> -                                                            <cstring>textLabel1_3</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>Default:</string> -                                                        </property> -                                                        <property name="alignment"> -                                                            <set>AlignVCenter</set> -                                                        </property> -                                                    </widget> -                                                    <widget class="QLabel" row="0" column="6"> -                                                        <property name="name"> -                                                            <cstring>textLabel2_4</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>L-Bank</string> -                                                        </property> -                                                    </widget> -                                                    <widget class="QSpinBox" row="0" column="5"> -                                                        <property name="name"> -                                                            <cstring>defPatchH</cstring> -                                                        </property> -                                                        <property name="specialValueText"> -                                                            <string>off</string> -                                                        </property> -                                                        <property name="maxValue"> -                                                            <number>128</number> -                                                        </property> -                                                        <property name="minValue"> -                                                            <number>0</number> -                                                        </property> -                                                        <property name="value"> -                                                            <number>0</number> -                                                        </property> -                                                    </widget> -                                                    <widget class="QSpinBox" row="0" column="7"> -                                                        <property name="name"> -                                                            <cstring>defPatchL</cstring> -                                                        </property> -                                                        <property name="specialValueText"> -                                                            <string>off</string> -                                                        </property> -                                                        <property name="maxValue"> -                                                            <number>128</number> -                                                        </property> -                                                        <property name="minValue"> -                                                            <number>0</number> -                                                        </property> -                                                        <property name="value"> -                                                            <number>0</number> -                                                        </property> -                                                    </widget> -                                                    <widget class="QLabel" row="1" column="6"> -                                                        <property name="name"> -                                                            <cstring>textLabel3</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>Progr.</string> -                                                        </property> -                                                    </widget> -                                                    <widget class="QSpinBox" row="1" column="7"> -                                                        <property name="name"> -                                                            <cstring>defPatchProg</cstring> -                                                        </property> -                                                        <property name="specialValueText"> -                                                            <string>off</string> -                                                        </property> -                                                        <property name="maxValue"> -                                                            <number>128</number> -                                                        </property> -                                                        <property name="minValue"> -                                                            <number>0</number> -                                                        </property> -                                                        <property name="value"> -                                                            <number>0</number> -                                                        </property> -                                                    </widget> -                                                    <widget class="QPushButton" row="1" column="2" rowspan="1" colspan="4"> -                                                        <property name="name"> -                                                            <cstring>patchButton</cstring> -                                                        </property> -                                                        <property name="enabled"> -                                                            <bool>true</bool> -                                                        </property> -                                                        <property name="minimumSize"> -                                                            <size> -                                                                <width>210</width> -                                                                <height>0</height> -                                                            </size> -                                                        </property> -                                                        <property name="text"> -                                                            <string>???</string> -                                                        </property> -                                                        <property name="accel"> -                                                            <string></string> -                                                        </property> -                                                    </widget> -                                                    <widget class="QLabel" row="0" column="4"> -                                                        <property name="name"> -                                                            <cstring>textLabel1_5</cstring> -                                                        </property> -                                                        <property name="text"> -                                                            <string>H-Bank</string> -                                                        </property> -                                                    </widget> -                                                    <spacer row="0" column="3"> -                                                        <property name="name"> -                                                            <cstring>spacer12_2</cstring> -                                                        </property> -                                                        <property name="orientation"> -                                                            <enum>Horizontal</enum> -                                                        </property> -                                                        <property name="sizeType"> -                                                            <enum>Expanding</enum> -                                                        </property> -                                                        <property name="sizeHint"> -                                                            <size> -                                                                <width>40</width> -                                                                <height>20</height> -                                                            </size> -                                                        </property> -                                                    </spacer> -                                                    <widget class="QSpinBox" row="0" column="1" rowspan="1" colspan="2"> -                                                        <property name="name"> -                                                            <cstring>spinBoxDefault</cstring> -                                                        </property> -                                                        <property name="sizePolicy"> -                                                            <sizepolicy> -                                                                <hsizetype>7</hsizetype> -                                                                <vsizetype>0</vsizetype> -                                                                <horstretch>0</horstretch> -                                                                <verstretch>0</verstretch> -                                                            </sizepolicy> -                                                        </property> -                                                        <property name="minimumSize"> -                                                            <size> -                                                                <width>0</width> -                                                                <height>0</height> -                                                            </size> -                                                        </property> -                                                        <property name="maximumSize"> -                                                            <size> -                                                                <width>85</width> -                                                                <height>32767</height> -                                                            </size> -                                                        </property> -                                                        <property name="specialValueText"> -                                                            <string>off</string> -                                                            <comment>dont care</comment> -                                                        </property> -                                                        <property name="maxValue"> -                                                            <number>16383</number> -                                                        </property> -                                                        <property name="minValue"> -                                                            <number>-1</number> -                                                        </property> -                                                        <property name="value"> -                                                            <number>-1</number> -                                                        </property> -                                                        <property name="toolTip" stdset="0"> -                                                            <string>Default value. Off: No default.</string> -                                                        </property> -                                                        <property name="whatsThis" stdset="0"> -                                                            <string>Default (initial) value. Off means no default. +                    </property> +                    <property name="minimum"> +                     <number>-16384</number> +                    </property> +                    <property name="maximum"> +                     <number>16383</number> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <spacer name="spacer18"> +                    <property name="orientation"> +                     <enum>Qt::Horizontal</enum> +                    </property> +                    <property name="sizeType"> +                     <enum>QSizePolicy::Expanding</enum> +                    </property> +                    <property name="sizeHint" stdset="0"> +                     <size> +                      <width>40</width> +                      <height>20</height> +                     </size> +                    </property> +                   </spacer> +                  </item> +                  <item> +                   <widget class="QLabel" name="TextLabel2_2_2"> +                    <property name="text"> +                     <string>Max</string> +                    </property> +                    <property name="alignment"> +                     <set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set> +                    </property> +                    <property name="wordWrap"> +                     <bool>false</bool> +                    </property> +                    <property name="indent"> +                     <number>10</number> +                    </property> +                   </widget> +                  </item> +                  <item> +                   <widget class="QSpinBox" name="spinBoxMax"> +                    <property name="sizePolicy"> +                     <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> +                      <horstretch>0</horstretch> +                      <verstretch>0</verstretch> +                     </sizepolicy> +                    </property> +                    <property name="toolTip"> +                     <string>Maximum value</string> +                    </property> +                    <property name="whatsThis"> +                     <string>Maximum value</string> +                    </property> +                    <property name="minimum"> +                     <number>-16384</number> +                    </property> +                    <property name="maximum"> +                     <number>16383</number> +                    </property> +                    <property name="value"> +                     <number>127</number> +                    </property> +                   </widget> +                  </item> +                 </layout> +                </item> +                <item> +                 <layout class="QGridLayout"> +                  <item row="1" column="0" colspan="2"> +                   <spacer name="spacer13_2"> +                    <property name="orientation"> +                     <enum>Qt::Horizontal</enum> +                    </property> +                    <property name="sizeType"> +                     <enum>QSizePolicy::Expanding</enum> +                    </property> +                    <property name="sizeHint" stdset="0"> +                     <size> +                      <width>40</width> +                      <height>20</height> +                     </size> +                    </property> +                   </spacer> +                  </item> +                  <item row="0" column="0"> +                   <widget class="QLabel" name="textLabel1_3"> +                    <property name="text"> +                     <string>Default:</string> +                    </property> +                    <property name="alignment"> +                     <set>Qt::AlignVCenter</set> +                    </property> +                    <property name="wordWrap"> +                     <bool>false</bool> +                    </property> +                   </widget> +                  </item> +                  <item row="0" column="6"> +                   <widget class="QLabel" name="textLabel2_4"> +                    <property name="text"> +                     <string>L-Bank</string> +                    </property> +                    <property name="wordWrap"> +                     <bool>false</bool> +                    </property> +                   </widget> +                  </item> +                  <item row="0" column="5"> +                   <widget class="QSpinBox" name="defPatchH"> +                    <property name="specialValueText"> +                     <string>off</string> +                    </property> +                    <property name="minimum"> +                     <number>0</number> +                    </property> +                    <property name="maximum"> +                     <number>128</number> +                    </property> +                    <property name="value"> +                     <number>0</number> +                    </property> +                   </widget> +                  </item> +                  <item row="0" column="7"> +                   <widget class="QSpinBox" name="defPatchL"> +                    <property name="specialValueText"> +                     <string>off</string> +                    </property> +                    <property name="minimum"> +                     <number>0</number> +                    </property> +                    <property name="maximum"> +                     <number>128</number> +                    </property> +                    <property name="value"> +                     <number>0</number> +                    </property> +                   </widget> +                  </item> +                  <item row="1" column="6"> +                   <widget class="QLabel" name="textLabel3"> +                    <property name="text"> +                     <string>Progr.</string> +                    </property> +                    <property name="wordWrap"> +                     <bool>false</bool> +                    </property> +                   </widget> +                  </item> +                  <item row="1" column="7"> +                   <widget class="QSpinBox" name="defPatchProg"> +                    <property name="specialValueText"> +                     <string>off</string> +                    </property> +                    <property name="minimum"> +                     <number>0</number> +                    </property> +                    <property name="maximum"> +                     <number>128</number> +                    </property> +                    <property name="value"> +                     <number>0</number> +                    </property> +                   </widget> +                  </item> +                  <item row="1" column="2" colspan="4"> +                   <widget class="QPushButton" name="patchButton"> +                    <property name="enabled"> +                     <bool>true</bool> +                    </property> +                    <property name="minimumSize"> +                     <size> +                      <width>210</width> +                      <height>0</height> +                     </size> +                    </property> +                    <property name="text"> +                     <string>???</string> +                    </property> +                    <property name="shortcut"> +                     <string/> +                    </property> +                   </widget> +                  </item> +                  <item row="0" column="4"> +                   <widget class="QLabel" name="textLabel1_5"> +                    <property name="text"> +                     <string>H-Bank</string> +                    </property> +                    <property name="wordWrap"> +                     <bool>false</bool> +                    </property> +                   </widget> +                  </item> +                  <item row="0" column="3"> +                   <spacer name="spacer12_2"> +                    <property name="orientation"> +                     <enum>Qt::Horizontal</enum> +                    </property> +                    <property name="sizeType"> +                     <enum>QSizePolicy::Expanding</enum> +                    </property> +                    <property name="sizeHint" stdset="0"> +                     <size> +                      <width>40</width> +                      <height>20</height> +                     </size> +                    </property> +                   </spacer> +                  </item> +                  <item row="0" column="1" colspan="2"> +                   <widget class="QSpinBox" name="spinBoxDefault"> +                    <property name="sizePolicy"> +                     <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> +                      <horstretch>0</horstretch> +                      <verstretch>0</verstretch> +                     </sizepolicy> +                    </property> +                    <property name="minimumSize"> +                     <size> +                      <width>0</width> +                      <height>0</height> +                     </size> +                    </property> +                    <property name="maximumSize"> +                     <size> +                      <width>85</width> +                      <height>32767</height> +                     </size> +                    </property> +                    <property name="toolTip"> +                     <string>Default value. Off: No default.</string> +                    </property> +                    <property name="whatsThis"> +                     <string>Default (initial) value. Off means no default.  If a default value is chosen, the value will be sent   to the controller when the controller is added to @@ -1288,553 +1087,563 @@ Caution! Watch out for controllers such as   values. You should probably turn 'off' their    default (in piano roll or drum edit, and    instrument editor).</string> -                                                        </property> -                                                    </widget> -                                                </grid> -                                            </widget> -                                        </vbox> -                                    </widget> -                                    <widget class="QLayoutWidget"> -                                        <property name="name"> -                                            <cstring>layout10</cstring> -                                        </property> -                                        <hbox> -                                            <property name="name"> -                                                <cstring>unnamed</cstring> -                                            </property> -                                            <widget class="QToolButton"> -                                                <property name="name"> -                                                    <cstring>addController</cstring> -                                                </property> -                                                <property name="text"> -                                                    <string>&Add</string> -                                                </property> -                                                <property name="accel"> -                                                    <string>Alt+A</string> -                                                </property> -                                                <property name="toolTip" stdset="0"> -                                                    <string>Add common controller</string> -                                                </property> -                                            </widget> -                                            <widget class="QToolButton"> -                                                <property name="name"> -                                                    <cstring>deleteController</cstring> -                                                </property> -                                                <property name="text"> -                                                    <string>&Delete</string> -                                                </property> -                                                <property name="accel"> -                                                    <string>Alt+D</string> -                                                </property> -                                                <property name="toolTip" stdset="0"> -                                                    <string>Delete controller</string> -                                                </property> -                                            </widget> -                                            <widget class="QToolButton"> -                                                <property name="name"> -                                                    <cstring>newController</cstring> -                                                </property> -                                                <property name="text"> -                                                    <string>New &Controller</string> -                                                </property> -                                                <property name="accel"> -                                                    <string>Alt+C</string> -                                                </property> -                                                <property name="toolTip" stdset="0"> -                                                    <string>Create a new controller</string> -                                                </property> -                                            </widget> -                                            <spacer> -                                                <property name="name"> -                                                    <cstring>spacer13</cstring> -                                                </property> -                                                <property name="orientation"> -                                                    <enum>Horizontal</enum> -                                                </property> -                                                <property name="sizeType"> -                                                    <enum>Expanding</enum> -                                                </property> -                                                <property name="sizeHint"> -                                                    <size> -                                                        <width>200</width> -                                                        <height>20</height> -                                                    </size> -                                                </property> -                                            </spacer> -                                            <widget class="QLabel"> -                                                <property name="name"> -                                                    <cstring>nullValLabelH</cstring> -                                                </property> -                                                <property name="text"> -                                                    <string>Null Param Hi:</string> -                                                </property> -                                            </widget> -                                            <widget class="QSpinBox"> -                                                <property name="name"> -                                                    <cstring>nullParamSpinBoxH</cstring> -                                                </property> -                                                <property name="specialValueText"> -                                                    <string>off</string> -                                                </property> -                                                <property name="maxValue"> -                                                    <number>127</number> -                                                </property> -                                                <property name="minValue"> -                                                    <number>-1</number> -                                                </property> -                                                <property name="value"> -                                                    <number>127</number> -                                                </property> -                                                <property name="toolTip" stdset="0"> -                                                    <string>Null parameter number High byte</string> -                                                </property> -                                                <property name="whatsThis" stdset="0"> -                                                    <string>If set, these 'null' parameter numbers will  +                    </property> +                    <property name="specialValueText"> +                     <string comment="dont care">off</string> +                    </property> +                    <property name="minimum"> +                     <number>-1</number> +                    </property> +                    <property name="maximum"> +                     <number>16383</number> +                    </property> +                    <property name="value"> +                     <number>-1</number> +                    </property> +                   </widget> +                  </item> +                 </layout> +                </item> +               </layout> +              </widget> +             </item> +             <item> +              <layout class="QHBoxLayout"> +               <item> +                <widget class="QToolButton" name="addController"> +                 <property name="toolTip"> +                  <string>Add common controller</string> +                 </property> +                 <property name="text"> +                  <string>&Add</string> +                 </property> +                 <property name="shortcut"> +                  <string>Alt+A</string> +                 </property> +                </widget> +               </item> +               <item> +                <widget class="QToolButton" name="deleteController"> +                 <property name="toolTip"> +                  <string>Delete controller</string> +                 </property> +                 <property name="text"> +                  <string>&Delete</string> +                 </property> +                 <property name="shortcut"> +                  <string>Alt+D</string> +                 </property> +                </widget> +               </item> +               <item> +                <widget class="QToolButton" name="newController"> +                 <property name="toolTip"> +                  <string>Create a new controller</string> +                 </property> +                 <property name="text"> +                  <string>New &Controller</string> +                 </property> +                 <property name="shortcut"> +                  <string>Alt+C</string> +                 </property> +                </widget> +               </item> +               <item> +                <spacer name="spacer13"> +                 <property name="orientation"> +                  <enum>Qt::Horizontal</enum> +                 </property> +                 <property name="sizeType"> +                  <enum>QSizePolicy::Expanding</enum> +                 </property> +                 <property name="sizeHint" stdset="0"> +                  <size> +                   <width>200</width> +                   <height>20</height> +                  </size> +                 </property> +                </spacer> +               </item> +               <item> +                <widget class="QLabel" name="nullValLabelH"> +                 <property name="text"> +                  <string>Null Param Hi:</string> +                 </property> +                 <property name="wordWrap"> +                  <bool>false</bool> +                 </property> +                </widget> +               </item> +               <item> +                <widget class="QSpinBox" name="nullParamSpinBoxH"> +                 <property name="toolTip"> +                  <string>Null parameter number High byte</string> +                 </property> +                 <property name="whatsThis"> +                  <string>If set, these 'null' parameter numbers will    be sent after each RPN/NRPN event.   This prevents subsequent 'data' events   from corrupting the RPN/NRPN controller.  Typically, set to 127/127, or an unused   RPN/NRPN controller number.</string> -                                                </property> -                                            </widget> -                                            <spacer> -                                                <property name="name"> -                                                    <cstring>spacer13_3</cstring> -                                                </property> -                                                <property name="orientation"> -                                                    <enum>Horizontal</enum> -                                                </property> -                                                <property name="sizeType"> -                                                    <enum>Expanding</enum> -                                                </property> -                                                <property name="sizeHint"> -                                                    <size> -                                                        <width>200</width> -                                                        <height>20</height> -                                                    </size> -                                                </property> -                                            </spacer> -                                            <widget class="QLabel"> -                                                <property name="name"> -                                                    <cstring>nullValLabelL</cstring> -                                                </property> -                                                <property name="text"> -                                                    <string> Lo:</string> -                                                </property> -                                            </widget> -                                            <widget class="QSpinBox"> -                                                <property name="name"> -                                                    <cstring>nullParamSpinBoxL</cstring> -                                                </property> -                                                <property name="specialValueText"> -                                                    <string>off</string> -                                                </property> -                                                <property name="maxValue"> -                                                    <number>127</number> -                                                </property> -                                                <property name="minValue"> -                                                    <number>-1</number> -                                                </property> -                                                <property name="value"> -                                                    <number>127</number> -                                                </property> -                                                <property name="toolTip" stdset="0"> -                                                    <string>Null parameter number Low byte</string> -                                                </property> -                                                <property name="whatsThis" stdset="0"> -                                                    <string>If set, these 'null' parameter numbers will  +                 </property> +                 <property name="specialValueText"> +                  <string>off</string> +                 </property> +                 <property name="minimum"> +                  <number>-1</number> +                 </property> +                 <property name="maximum"> +                  <number>127</number> +                 </property> +                 <property name="value"> +                  <number>127</number> +                 </property> +                </widget> +               </item> +               <item> +                <spacer name="spacer13_3"> +                 <property name="orientation"> +                  <enum>Qt::Horizontal</enum> +                 </property> +                 <property name="sizeType"> +                  <enum>QSizePolicy::Expanding</enum> +                 </property> +                 <property name="sizeHint" stdset="0"> +                  <size> +                   <width>200</width> +                   <height>20</height> +                  </size> +                 </property> +                </spacer> +               </item> +               <item> +                <widget class="QLabel" name="nullValLabelL"> +                 <property name="text"> +                  <string> Lo:</string> +                 </property> +                 <property name="wordWrap"> +                  <bool>false</bool> +                 </property> +                </widget> +               </item> +               <item> +                <widget class="QSpinBox" name="nullParamSpinBoxL"> +                 <property name="toolTip"> +                  <string>Null parameter number Low byte</string> +                 </property> +                 <property name="whatsThis"> +                  <string>If set, these 'null' parameter numbers will    be sent after each RPN/NRPN event.   This prevents subsequent 'data' events   from corrupting the RPN/NRPN controller.  Typically, set to 127/127, or an unused   RPN/NRPN controller number.</string> -                                                </property> -                                            </widget> -                                        </hbox> -                                    </widget> -                                </vbox> -                            </widget> -                        </widget> -                    </vbox> +                 </property> +                 <property name="specialValueText"> +                  <string>off</string> +                 </property> +                 <property name="minimum"> +                  <number>-1</number> +                 </property> +                 <property name="maximum"> +                  <number>127</number> +                 </property> +                 <property name="value"> +                  <number>127</number> +                 </property> +                </widget> +               </item> +              </layout> +             </item> +            </layout> +           </widget> +          </widget> +         </item> +        </layout> +       </widget> +       <widget class="QWidget" name="sysExTab"> +        <attribute name="title"> +         <string>S&ysEx</string> +        </attribute> +        <layout class="QVBoxLayout"> +         <item> +          <widget class="QSplitter" name="splitter2"> +           <property name="orientation"> +            <enum>Qt::Horizontal</enum> +           </property> +           <widget class="QWidget" name="layout12"> +            <layout class="QVBoxLayout"> +             <item> +              <widget class="QLabel" name="textLabel2_3"> +               <property name="text"> +                <string>SysEx List:</string> +               </property> +               <property name="wordWrap"> +                <bool>false</bool> +               </property> +              </widget> +             </item> +             <item> +              <widget class="QListWidget" name="sysexList"> +               <property name="sizePolicy"> +                <sizepolicy hsizetype="Expanding" vsizetype="Expanding"> +                 <horstretch>0</horstretch> +                 <verstretch>0</verstretch> +                </sizepolicy> +               </property> +              </widget> +             </item> +            </layout> +           </widget> +           <widget class="QWidget" name="layout11"> +            <layout class="QVBoxLayout"> +             <item> +              <widget class="QLabel" name="textLabel1_4"> +               <property name="text"> +                <string>Name:</string> +               </property> +               <property name="wordWrap"> +                <bool>false</bool> +               </property> +              </widget> +             </item> +             <item> +              <widget class="QLineEdit" name="sysexName"/> +             </item> +             <item> +              <widget class="QLabel" name="textLabel1_2"> +               <property name="text"> +                <string>Hex Entry:</string> +               </property> +               <property name="wordWrap"> +                <bool>false</bool> +               </property> +              </widget> +             </item> +             <item> +              <widget class="QTextEdit" name="sysexData"/> +             </item> +             <item> +              <layout class="QHBoxLayout"> +               <item> +                <widget class="QToolButton" name="deleteSysex"> +                 <property name="text"> +                  <string>&Delete</string> +                 </property> +                 <property name="shortcut"> +                  <string>Alt+D</string> +                 </property>                  </widget> -                <widget class="QWidget"> -                    <property name="name"> -                        <cstring>sysExTab</cstring> -                    </property> -                    <attribute name="title"> -                        <string>S&ysEx</string> -                    </attribute> -                    <vbox> -                        <property name="name"> -                            <cstring>unnamed</cstring> -                        </property> -                        <widget class="QSplitter"> -                            <property name="name"> -                                <cstring>splitter2</cstring> -                            </property> -                            <property name="orientation"> -                                <enum>Horizontal</enum> -                            </property> -                            <widget class="QLayoutWidget"> -                                <property name="name"> -                                    <cstring>layout12</cstring> -                                </property> -                                <vbox> -                                    <property name="name"> -                                        <cstring>unnamed</cstring> -                                    </property> -                                    <widget class="QLabel"> -                                        <property name="name"> -                                            <cstring>textLabel2_3</cstring> -                                        </property> -                                        <property name="text"> -                                            <string>SysEx List:</string> -                                        </property> -                                    </widget> -                                    <widget class="QListBox"> -                                        <property name="name"> -                                            <cstring>sysexList</cstring> -                                        </property> -                                        <property name="sizePolicy"> -                                            <sizepolicy> -                                                <hsizetype>7</hsizetype> -                                                <vsizetype>7</vsizetype> -                                                <horstretch>0</horstretch> -                                                <verstretch>0</verstretch> -                                            </sizepolicy> -                                        </property> -                                    </widget> -                                </vbox> -                            </widget> -                            <widget class="QLayoutWidget"> -                                <property name="name"> -                                    <cstring>layout11</cstring> -                                </property> -                                <vbox> -                                    <property name="name"> -                                        <cstring>unnamed</cstring> -                                    </property> -                                    <widget class="QLabel"> -                                        <property name="name"> -                                            <cstring>textLabel1_4</cstring> -                                        </property> -                                        <property name="text"> -                                            <string>Name:</string> -                                        </property> -                                    </widget> -                                    <widget class="QLineEdit"> -                                        <property name="name"> -                                            <cstring>sysexName</cstring> -                                        </property> -                                    </widget> -                                    <widget class="QLabel"> -                                        <property name="name"> -                                            <cstring>textLabel1_2</cstring> -                                        </property> -                                        <property name="text"> -                                            <string>Hex Entry:</string> -                                        </property> -                                    </widget> -                                    <widget class="QTextEdit"> -                                        <property name="name"> -                                            <cstring>sysexData</cstring> -                                        </property> -                                    </widget> -                                    <widget class="QLayoutWidget"> -                                        <property name="name"> -                                            <cstring>layout10</cstring> -                                        </property> -                                        <hbox> -                                            <property name="name"> -                                                <cstring>unnamed</cstring> -                                            </property> -                                            <widget class="QToolButton"> -                                                <property name="name"> -                                                    <cstring>deleteSysex</cstring> -                                                </property> -                                                <property name="text"> -                                                    <string>&Delete</string> -                                                </property> -                                                <property name="accel"> -                                                    <string>Alt+D</string> -                                                </property> -                                            </widget> -                                            <widget class="QToolButton"> -                                                <property name="name"> -                                                    <cstring>newSysex</cstring> -                                                </property> -                                                <property name="text"> -                                                    <string>New SysE&x</string> -                                                </property> -                                                <property name="accel"> -                                                    <string>Alt+X</string> -                                                </property> -                                            </widget> -                                            <spacer> -                                                <property name="name"> -                                                    <cstring>spacer12</cstring> -                                                </property> -                                                <property name="orientation"> -                                                    <enum>Horizontal</enum> -                                                </property> -                                                <property name="sizeType"> -                                                    <enum>Expanding</enum> -                                                </property> -                                                <property name="sizeHint"> -                                                    <size> -                                                        <width>60</width> -                                                        <height>20</height> -                                                    </size> -                                                </property> -                                            </spacer> -                                        </hbox> -                                    </widget> -                                </vbox> -                            </widget> -                        </widget> -                    </vbox> +               </item> +               <item> +                <widget class="QToolButton" name="newSysex"> +                 <property name="text"> +                  <string>New SysE&x</string> +                 </property> +                 <property name="shortcut"> +                  <string>Alt+X</string> +                 </property>                  </widget> -            </widget> -        </widget> -    </vbox> -</widget> -<menubar> -    <property name="name"> -        <cstring>MenuBar</cstring> +               </item> +               <item> +                <spacer name="spacer12"> +                 <property name="orientation"> +                  <enum>Qt::Horizontal</enum> +                 </property> +                 <property name="sizeType"> +                  <enum>QSizePolicy::Expanding</enum> +                 </property> +                 <property name="sizeHint" stdset="0"> +                  <size> +                   <width>60</width> +                   <height>20</height> +                  </size> +                 </property> +                </spacer> +               </item> +              </layout> +             </item> +            </layout> +           </widget> +          </widget> +         </item> +        </layout> +       </widget> +      </widget> +     </widget> +    </item> +   </layout> +  </widget> +  <widget class="QToolBar" name="toolBar"> +   <property name="label" stdset="0"> +    <string>Tools</string> +   </property> +   <attribute name="toolBarArea"> +    <enum>TopToolBarArea</enum> +   </attribute> +   <attribute name="toolBarBreak"> +    <bool>false</bool> +   </attribute> +   <addaction name="fileNewAction"/> +   <addaction name="fileOpenAction"/> +   <addaction name="fileSaveAction"/> +   <addaction name="fileSaveAsAction"/> +  </widget> +  <widget class="QMenuBar" name="MenuBar"> +   <property name="geometry"> +    <rect> +     <x>0</x> +     <y>0</y> +     <width>802</width> +     <height>21</height> +    </rect> +   </property> +   <property name="defaultUp"> +    <bool>false</bool> +   </property> +   <widget class="QMenu" name="fileMenu"> +    <property name="title"> +     <string>&File</string>      </property> -    <property name="defaultUp"> -        <bool>false</bool> +    <addaction name="fileNewAction"/> +    <addaction name="fileOpenAction"/> +    <addaction name="fileSaveAction"/> +    <addaction name="fileSaveAsAction"/> +    <addaction name="separator"/> +    <addaction name="fileExitAction"/> +   </widget> +   <widget class="QMenu" name="Help"> +    <property name="title"> +     <string>&Help</string>      </property> -    <item text="&File" name="fileMenu"> -        <action name="fileNewAction"/> -        <action name="fileOpenAction"/> -        <action name="fileSaveAction"/> -        <action name="fileSaveAsAction"/> -        <separator/> -        <action name="fileExitAction"/> -    </item> -    <item text="&Help" name="Help"> -        <action name="whatsThisAction"/> -    </item> -</menubar> -<toolbars> -    <toolbar dock="2"> -        <property name="name"> -            <cstring>toolBar</cstring> -        </property> -        <property name="label"> -            <string>Tools</string> -        </property> -        <action name="fileNewAction"/> -        <action name="fileOpenAction"/> -        <action name="fileSaveAction"/> -        <action name="fileSaveAsAction"/> -        <action name="whatsThisAction"/> -    </toolbar> -</toolbars> -<actions> -    <action> -        <property name="name"> -            <cstring>fileNewAction</cstring> -        </property> -        <property name="iconSet"> -            <iconset>image0</iconset> -        </property> -        <property name="text"> -            <string>New</string> -        </property> -        <property name="menuText"> -            <string>&New</string> -        </property> -        <property name="accel"> -            <string>Ctrl+N</string> -        </property> -    </action> -    <action> -        <property name="name"> -            <cstring>fileOpenAction</cstring> -        </property> -        <property name="enabled"> -            <bool>false</bool> -        </property> -        <property name="iconSet"> -            <iconset>image1</iconset> -        </property> -        <property name="text"> -            <string>Open</string> -        </property> -        <property name="menuText"> -            <string>&Open...</string> -        </property> -        <property name="accel"> -            <string>Ctrl+O</string> -        </property> -        <property name="visible"> -            <bool>false</bool> -        </property> -    </action> -    <action> -        <property name="name"> -            <cstring>fileSaveAction</cstring> -        </property> -        <property name="iconSet"> -            <iconset>image2</iconset> -        </property> -        <property name="text"> -            <string>Save</string> -        </property> -        <property name="menuText"> -            <string>&Save</string> -        </property> -        <property name="accel"> -            <string>Ctrl+S</string> -        </property> -    </action> -    <action> -        <property name="name"> -            <cstring>fileSaveAsAction</cstring> -        </property> -        <property name="iconSet"> -            <iconset>image3</iconset> -        </property> -        <property name="text"> -            <string>Save As</string> -        </property> -        <property name="menuText"> -            <string>Save &As...</string> -        </property> -        <property name="accel"> -            <string></string> -        </property> -    </action> -    <action> -        <property name="name"> -            <cstring>fileExitAction</cstring> -        </property> -        <property name="text"> -            <string>Exit</string> -        </property> -        <property name="menuText"> -            <string>E&xit</string> -        </property> -        <property name="accel"> -            <string></string> -        </property> -    </action> -    <action> -        <property name="name"> -            <cstring>filenew_itemAction</cstring> -        </property> -        <property name="text"> -            <string>new item</string> -        </property> -        <property name="menuText"> -            <string>new item</string> -        </property> -    </action> -    <action> -        <property name="name"> -            <cstring>whatsThisAction</cstring> -        </property> -        <property name="iconSet"> -            <iconset>image4</iconset> -        </property> -        <property name="text"> -            <string>What's this?</string> -        </property> -        <property name="menuText"> -            <string>What's this?</string> -        </property> -    </action> -</actions> -<images> -    <image name="image0"> -        <data format="PNG" length="187">89504e470d0a1a0a0000000d4948445200000016000000160806000000c4b46c3b0000008249444154388ded95310ac0200c4593d2c334d0c535e0d2c3e75ae9d442353521e0e60741233ee5f355141198a1bd2d30b346168a088ee637aba8aabf0d00804e720f60823d95525c7867454474d0db6766b56c4981af7a7dc6163c05e6ca7dad81a7c088c340e4c04f32bccd52a98868811778810732af74e42df084b3febc6956dc1a2d33a3204eed990000000049454e44ae426082</data> -    </image> -    <image name="image1"> -        <data format="PNG" length="230">89504e470d0a1a0a0000000d4948445200000016000000160806000000c4b46c3b000000ad49444154388db594510ec3200c436db45371b7699a76375f8b7d8caa11cd18d1827f225af1621908256187ca16ea4ef02dbaa1d6daec5a12c7ff9218021f9bbc4692689b32ebf02c541253321ee3017ac6bf728b420180005a6b00d08e25c835eecc403fbc130ab077e2e57ba47931c68375aee2395eab73b91947b3f6e4666ca1af670c787f7caa9bf1bf50f34072a117c7595003ce859e56bbb2a08019f4995060f5b67fd16c56a4cde3516f027970cd357a563f0000000049454e44ae426082</data> -    </image> -    <image name="image2"> -        <data format="PNG" length="230">89504e470d0a1a0a0000000d4948445200000016000000160806000000c4b46c3b000000ad49444154388dd595c10a85201045af0f172e5af83d0afd5944f4670f9aef69e1a25d2d62c2b230c302cf460c3b5ca7310511e10d24001863e69c52221292277db78e4d0b0cff2149646bbbbd636b0b00f8650a1920e34bce514e63aac66dce49996862e53494d3c1735f0aaca5e472de123f255a8a63b2bbbc96b83c7150e3be0b5b2786df0d97e2ab85a97cdb6e4d9b2e3aeef2f191f67f5467dfa4bc762b4f2cf8cecb753d1191d88973b300c3df2bac2a2aaca70000000049454e44ae426082</data> -    </image> -    <image name="image3"> -        <data format="PNG" length="264">89504e470d0a1a0a0000000d49484452000000100000001008060000001ff3ff61000000cf49444154388da593410ec2300c0467090f4a8f3df421fd425f013f834b7af5872273a0a952a010c0926545ceaed6eb4480f3471c00628c009c3801978fb5c60870774712ee6d62246d15745df7b5f4a2e0f0d838eb8c74ddadafc2638cbe8cd21435a65981a43501ccac5d41e9d577b8afdf8fb529b5bb9b19df6ce7581f8ab37598d92ef113c1e36c2d0a36269a19ee4e4a49a5ee225f1100ccf3ac699a7c1c4772ce1f9fe6d3087ddfafa01082007fe781587e638c113323a5a49cb3871036b500866158cd36334829b190fc94376721c8f72ecfaff50000000049454e44ae426082</data> -    </image> -    <image name="image4"> -        <data format="PNG" length="243">89504e470d0a1a0a0000000d4948445200000016000000160806000000c4b46c3b000000ba49444154388dd594db0980300c451371aa0c90b93a5707b86be957306dd387423fbc206221a7370fc30068878e2dd45f824fff212217001e0588e4ab3e4b8948558bb8c6b18834813514500694537ac039971786a588e006351851e9d29f77c133e72b1a36cfc37dda269f7eed98fd0fd273d96ba82f4fddbc330a6801edb4f8464631cb73ecb3891a596bea7836d7afc000783415bdf4bd9a5298437bf766da9e25f0d7b423f16c1f9be3b7976edb6e53c75ff5bf45bf0d7c034d505e874a59314b0000000049454e44ae426082</data> -    </image> -</images> -<connections> -    <connection> -        <sender>fileNewAction</sender> -        <signal>activated()</signal> -        <receiver>Form1</receiver> -        <slot>fileNew()</slot> -    </connection> -    <connection> -        <sender>fileOpenAction</sender> -        <signal>activated()</signal> -        <receiver>Form1</receiver> -        <slot>fileOpen()</slot> -    </connection> -    <connection> -        <sender>fileSaveAction</sender> -        <signal>activated()</signal> -        <receiver>Form1</receiver> -        <slot>fileSave()</slot> -    </connection> -    <connection> -        <sender>fileSaveAsAction</sender> -        <signal>activated()</signal> -        <receiver>Form1</receiver> -        <slot>fileSaveAs()</slot> -    </connection> -    <connection> -        <sender>fileExitAction</sender> -        <signal>activated()</signal> -        <receiver>Form1</receiver> -        <slot>fileExit()</slot> -    </connection> -    <connection> -        <sender>whatsThisAction</sender> -        <signal>activated()</signal> -        <receiver>Form1</receiver> -        <slot>helpWhatsThis()</slot> -    </connection> -</connections> -<tabstops> -    <tabstop>instrumentName</tabstop> -    <tabstop>instrumentList</tabstop> -    <tabstop>tabWidget3</tabstop> -    <tabstop>patchView</tabstop> -    <tabstop>patchNameEdit</tabstop> -    <tabstop>spinBoxHBank</tabstop> -    <tabstop>spinBoxLBank</tabstop> -    <tabstop>spinBoxProgram</tabstop> -    <tabstop>checkBoxDrum</tabstop> -    <tabstop>checkBoxGM</tabstop> -    <tabstop>checkBoxGS</tabstop> -    <tabstop>checkBoxXG</tabstop> -    <tabstop>listController</tabstop> -    <tabstop>viewController</tabstop> -    <tabstop>ctrlName</tabstop> -    <tabstop>ctrlType</tabstop> -    <tabstop>spinBoxHCtrlNo</tabstop> -    <tabstop>spinBoxLCtrlNo</tabstop> -    <tabstop>spinBoxMin</tabstop> -    <tabstop>spinBoxMax</tabstop> -    <tabstop>spinBoxDefault</tabstop> -    <tabstop>sysexList</tabstop> -    <tabstop>sysexName</tabstop> -    <tabstop>sysexData</tabstop> -</tabstops> -<slots> -    <slot>fileNew()</slot> -    <slot>fileOpen()</slot> -    <slot>fileSave()</slot> -    <slot>fileSaveAs()</slot> -    <slot>fileExit()</slot> -    <slot>helpWhatsThis()</slot> -</slots> -<layoutdefaults spacing="6" margin="11"/> -</UI> +   </widget> +   <addaction name="fileMenu"/> +   <addaction name="Help"/> +  </widget> +  <action name="fileNewAction"> +   <property name="text"> +    <string>&New</string> +   </property> +   <property name="iconText"> +    <string>New</string> +   </property> +   <property name="shortcut"> +    <string>Ctrl+N</string> +   </property> +   <property name="name" stdset="0"> +    <cstring>fileNewAction</cstring> +   </property> +  </action> +  <action name="fileOpenAction"> +   <property name="enabled"> +    <bool>false</bool> +   </property> +   <property name="text"> +    <string>&Open...</string> +   </property> +   <property name="iconText"> +    <string>Open</string> +   </property> +   <property name="shortcut"> +    <string>Ctrl+O</string> +   </property> +   <property name="visible"> +    <bool>false</bool> +   </property> +   <property name="name" stdset="0"> +    <cstring>fileOpenAction</cstring> +   </property> +  </action> +  <action name="fileSaveAction"> +   <property name="text"> +    <string>&Save</string> +   </property> +   <property name="iconText"> +    <string>Save</string> +   </property> +   <property name="shortcut"> +    <string>Ctrl+S</string> +   </property> +   <property name="name" stdset="0"> +    <cstring>fileSaveAction</cstring> +   </property> +  </action> +  <action name="fileSaveAsAction"> +   <property name="text"> +    <string>Save &As...</string> +   </property> +   <property name="iconText"> +    <string>Save As</string> +   </property> +   <property name="shortcut"> +    <string/> +   </property> +   <property name="name" stdset="0"> +    <cstring>fileSaveAsAction</cstring> +   </property> +  </action> +  <action name="fileExitAction"> +   <property name="text"> +    <string>E&xit</string> +   </property> +   <property name="iconText"> +    <string>Exit</string> +   </property> +   <property name="shortcut"> +    <string/> +   </property> +   <property name="name" stdset="0"> +    <cstring>fileExitAction</cstring> +   </property> +  </action> +  <action name="filenew_itemAction"> +   <property name="text"> +    <string>new item</string> +   </property> +   <property name="iconText"> +    <string>new item</string> +   </property> +   <property name="name" stdset="0"> +    <cstring>filenew_itemAction</cstring> +   </property> +  </action> +  <action name="whatsThisAction"> +   <property name="text"> +    <string>What's this?</string> +   </property> +   <property name="iconText"> +    <string>What's this?</string> +   </property> +   <property name="name" stdset="0"> +    <cstring>whatsThisAction</cstring> +   </property> +  </action> + </widget> + <layoutdefault spacing="6" margin="11"/> + <tabstops> +  <tabstop>instrumentName</tabstop> +  <tabstop>instrumentList</tabstop> +  <tabstop>tabWidget3</tabstop> +  <tabstop>patchView</tabstop> +  <tabstop>patchNameEdit</tabstop> +  <tabstop>spinBoxHBank</tabstop> +  <tabstop>spinBoxLBank</tabstop> +  <tabstop>spinBoxProgram</tabstop> +  <tabstop>checkBoxDrum</tabstop> +  <tabstop>checkBoxGM</tabstop> +  <tabstop>checkBoxGS</tabstop> +  <tabstop>checkBoxXG</tabstop> +  <tabstop>listController</tabstop> +  <tabstop>viewController</tabstop> +  <tabstop>ctrlName</tabstop> +  <tabstop>ctrlType</tabstop> +  <tabstop>spinBoxHCtrlNo</tabstop> +  <tabstop>spinBoxLCtrlNo</tabstop> +  <tabstop>spinBoxMin</tabstop> +  <tabstop>spinBoxMax</tabstop> +  <tabstop>spinBoxDefault</tabstop> +  <tabstop>sysexList</tabstop> +  <tabstop>sysexName</tabstop> +  <tabstop>sysexData</tabstop> + </tabstops> + <resources/> + <connections> +  <connection> +   <sender>fileNewAction</sender> +   <signal>activated()</signal> +   <receiver>EditInstrumentBase</receiver> +   <slot>fileNew()</slot> +   <hints> +    <hint type="sourcelabel"> +     <x>-1</x> +     <y>-1</y> +    </hint> +    <hint type="destinationlabel"> +     <x>20</x> +     <y>20</y> +    </hint> +   </hints> +  </connection> +  <connection> +   <sender>fileOpenAction</sender> +   <signal>activated()</signal> +   <receiver>EditInstrumentBase</receiver> +   <slot>fileOpen()</slot> +   <hints> +    <hint type="sourcelabel"> +     <x>-1</x> +     <y>-1</y> +    </hint> +    <hint type="destinationlabel"> +     <x>20</x> +     <y>20</y> +    </hint> +   </hints> +  </connection> +  <connection> +   <sender>fileSaveAction</sender> +   <signal>activated()</signal> +   <receiver>EditInstrumentBase</receiver> +   <slot>fileSave()</slot> +   <hints> +    <hint type="sourcelabel"> +     <x>-1</x> +     <y>-1</y> +    </hint> +    <hint type="destinationlabel"> +     <x>20</x> +     <y>20</y> +    </hint> +   </hints> +  </connection> +  <connection> +   <sender>fileSaveAsAction</sender> +   <signal>activated()</signal> +   <receiver>EditInstrumentBase</receiver> +   <slot>fileSaveAs()</slot> +   <hints> +    <hint type="sourcelabel"> +     <x>-1</x> +     <y>-1</y> +    </hint> +    <hint type="destinationlabel"> +     <x>20</x> +     <y>20</y> +    </hint> +   </hints> +  </connection> +  <connection> +   <sender>fileExitAction</sender> +   <signal>activated()</signal> +   <receiver>EditInstrumentBase</receiver> +   <slot>fileExit()</slot> +   <hints> +    <hint type="sourcelabel"> +     <x>-1</x> +     <y>-1</y> +    </hint> +    <hint type="destinationlabel"> +     <x>20</x> +     <y>20</y> +    </hint> +   </hints> +  </connection> +  <connection> +   <sender>whatsThisAction</sender> +   <signal>activated()</signal> +   <receiver>EditInstrumentBase</receiver> +   <slot>helpWhatsThis()</slot> +   <hints> +    <hint type="sourcelabel"> +     <x>-1</x> +     <y>-1</y> +    </hint> +    <hint type="destinationlabel"> +     <x>20</x> +     <y>20</y> +    </hint> +   </hints> +  </connection> + </connections> +</ui> diff --git a/muse2/muse/widgets/CMakeLists.txt b/muse2/muse/widgets/CMakeLists.txt index 9ae2d02e..0a92ba5a 100644 --- a/muse2/muse/widgets/CMakeLists.txt +++ b/muse2/muse/widgets/CMakeLists.txt @@ -236,7 +236,6 @@ add_library ( widgets STATIC        checkbox.cpp         aboutbox_impl.cpp         popupmenu.cpp  -      listitem.h          menutitleitem.h          ) diff --git a/muse2/muse/widgets/comboQuant.cpp b/muse2/muse/widgets/comboQuant.cpp index ec3a4f4a..3eb4e9e0 100644 --- a/muse2/muse/widgets/comboQuant.cpp +++ b/muse2/muse/widgets/comboQuant.cpp @@ -5,6 +5,8 @@  //  (C) Copyright 2001 Werner Schweer (ws@seh.de)  //========================================================= +#include <stdio.h> +  #include <QTableWidget>  #include <QTableWidgetItem>  #include <QHeaderView> diff --git a/muse2/muse/widgets/listitem.h b/muse2/muse/widgets/listitem.h deleted file mode 100644 index 56b0f3d4..00000000 --- a/muse2/muse/widgets/listitem.h +++ /dev/null @@ -1,85 +0,0 @@ -//========================================================= -//  MusE -//  Linux Music Editor -//  $Id: listitem.h,v 1.1.2.1 2008/08/18 00:15:26 terminator356 Exp $ -// -//  (C) Copyright 1999/2000 Werner Schweer (ws@seh.de) -//========================================================= - -#ifndef __LISTITEM_H__ -#define __LISTITEM_H__ - -//#include <qstring.h> -//#include <qlistbox.h> -#include <q3listview.h> - -class QString; -class Q3ListBox; -class Q3ListBoxText; -//class QListView; -//class QListViewItem; -class ListBoxData; -class ListViewData; - -//--------------------------------------------------------- -//   ListBoxData -//--------------------------------------------------------- - -class ListBoxData : public Q3ListBoxText  -{ -    void* _data; -     -  public: -    ListBoxData(Q3ListBox* listbox, const QString& text = QString::null) -                : Q3ListBoxText(listbox, text)  { _data = 0; } -    ListBoxData(const QString& text = QString::null) : Q3ListBoxText(text)  { _data = 0; } -    ListBoxData(Q3ListBox* listbox, const QString& text, ListBoxData* after)  -                : Q3ListBoxText(listbox, text, (Q3ListBoxText*)after)  { _data = 0; } -    ~ListBoxData() { } -     -    virtual void setText(const QString& text) { Q3ListBoxText::setText(text); } -    void* data() { return _data; } -    void setData(void* dat) { _data = dat; } -}; - -//--------------------------------------------------------- -//   ListViewData -//--------------------------------------------------------- - -class ListViewData : public Q3ListViewItem  -{ -    void* _data; -     -  public: -    ListViewData(Q3ListView* parent) : Q3ListViewItem(parent) { _data = 0; } -    //ListViewData(ListViewData* parent) : QListViewItem((QListViewItem*)parent) { _data = 0; } -    ListViewData(ListViewData* parent) : Q3ListViewItem(parent) { _data = 0; } -    //ListViewData(QListView* parent, ListViewData* after) : QListViewItem(parent, (QListViewItem*)after) { _data = 0; } -    ListViewData(Q3ListView* parent, ListViewData* after) : Q3ListViewItem(parent, after) { _data = 0; } -    //ListViewData(ListViewData* parent, ListViewData* after) : QListViewItem((QListViewItem*)parent, (QListViewItem*)after) { _data = 0; } -    ListViewData(ListViewData* parent, ListViewData* after) : Q3ListViewItem(parent, after) { _data = 0; } -    ListViewData(Q3ListView* parent, QString label1, QString label2 = QString::null, QString label3 = QString::null, QString label4 = QString::null,  -                    QString label5 = QString::null, QString label6 = QString::null, QString label7 = QString::null, QString label8 = QString::null) -                : Q3ListViewItem(parent, label1, label2, label3, label4, label5, label6, label7, label8) { _data = 0; } -    ListViewData(ListViewData* parent, QString label1, QString label2 = QString::null, QString label3 = QString::null, QString label4 = QString::null,  -                    QString label5 = QString::null, QString label6 = QString::null, QString label7 = QString::null, QString label8 = QString::null) -                //: QListViewItem((QListViewItem*)parent, label1, label2, label3, label4, label5, label6, label7, label8) { _data = 0; }     -                : Q3ListViewItem(parent, label1, label2, label3, label4, label5, label6, label7, label8) { _data = 0; }     -    ListViewData(Q3ListView* parent, ListViewData* after, QString label1, QString label2 = QString::null, QString label3 = QString::null, QString label4 = QString::null,  -                    QString label5 = QString::null, QString label6 = QString::null, QString label7 = QString::null, QString label8 = QString::null) -                //: QListViewItem(parent, (QListViewItem*)after, label1, label2, label3, label4, label5, label6, label7, label8) { _data = 0; }     -                : Q3ListViewItem(parent, after, label1, label2, label3, label4, label5, label6, label7, label8) { _data = 0; }     -    ListViewData(ListViewData* parent, ListViewData* after, QString label1, QString label2 = QString::null, QString label3 = QString::null, QString label4 = QString::null, -                    QString label5 = QString::null, QString label6 = QString::null, QString label7 = QString::null, QString label8 = QString::null) -                //: QListViewItem((QListViewItem*)parent, (QListViewItem*)after, label1, label2, label3, label4, label5, label6, label7, label8) { _data = 0; }     -                : Q3ListViewItem(parent, after, label1, label2, label3, label4, label5, label6, label7, label8) { _data = 0; }     -    ~ListViewData() { } -     -    void* data() { return _data; } -    void setData(void* dat) { _data = dat; } -}; - - - -#endif -  | 
