diff options
author | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2013-01-26 13:17:43 -0600 |
---|---|---|
committer | Timothy Pearson <kb9vqf@pearsoncomputing.net> | 2013-01-26 13:17:43 -0600 |
commit | cb68a7857c80661d242ee5527ec6f99dc3f79fa7 (patch) | |
tree | a3b54203ca6bce0e8e1dc5107dc9653db246a281 /tdemid/midicfgdlg.cpp | |
parent | 7534907d3759a8c520eeb9a701b316d891c63bdf (diff) | |
download | tdemultimedia-cb68a7857c80661d242ee5527ec6f99dc3f79fa7.tar.gz tdemultimedia-cb68a7857c80661d242ee5527ec6f99dc3f79fa7.zip |
Rename a number of libraries and executables to avoid conflicts with KDE4
Diffstat (limited to 'tdemid/midicfgdlg.cpp')
-rw-r--r-- | tdemid/midicfgdlg.cpp | 138 |
1 files changed, 138 insertions, 0 deletions
diff --git a/tdemid/midicfgdlg.cpp b/tdemid/midicfgdlg.cpp new file mode 100644 index 00000000..46577c28 --- /dev/null +++ b/tdemid/midicfgdlg.cpp @@ -0,0 +1,138 @@ +/************************************************************************** + + midicfgdlg.cpp - The midi config dialog + Copyright (C) 1997,98 Antonio Larrosa Jimenez + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + + Send comments and bug fixes to larrosa@kde.org + or to Antonio Larrosa, Rio Arnoya, 10 5B, 29006 Malaga, Spain + +***************************************************************************/ +#include <tqpushbutton.h> +#include <tqlistbox.h> +#include <tqlabel.h> +#include <tqlayout.h> + +#include <kapplication.h> +#include <kfiledialog.h> +#include <kmessagebox.h> +#include <klocale.h> +#include <libtdemid/deviceman.h> + +#include "midicfgdlg.h" +#include "version.h" +#include <kglobal.h> +#include <kstandarddirs.h> + +MidiConfigDialog::MidiConfigDialog(DeviceManager *dm, + TQWidget *parent,const char *name) : KDialogBase(parent,name,TRUE, + i18n("Configure MIDI Devices"), KDialogBase::Ok|KDialogBase::Cancel) +{ + setMinimumSize(360,240); + TQWidget *page = new TQWidget( this ); + setMainWidget(page); + + TQVBoxLayout *topLayout=new TQVBoxLayout(page, 0, spacingHint()); + TQLabel *label=new TQLabel(i18n("Select the MIDI device you want to use:"),page); + topLayout->addWidget(label); + mididevices=new TQListBox(page,"midideviceslist"); + topLayout->addWidget(mididevices,3); + connect(mididevices,TQT_SIGNAL(highlighted(int)),TQT_SLOT(deviceselected(int))); + devman=dm; + TQString temp; + for (int i=0;i<devman->midiPorts()+devman->synthDevices();i++) + { + if (strcmp(devman->type(i),"")!=0) + temp = TQString("%1 - %2").arg(devman->name(i)).arg(devman->type(i)); + else + temp = devman->name(i); + + mididevices->insertItem(temp,i); + }; + selecteddevice=devman->defaultDevice(); + mididevices->setCurrentItem(selecteddevice); + + TQLabel *label2=new TQLabel(i18n("Use the MIDI map:"),page); + topLayout->addWidget(label2); + + + if (selectedmap!=NULL) delete selectedmap; + if (strcmp(devman->midiMapFilename(),"")==0) + selectedmap=NULL; + else + { + selectedmap=new char[strlen(devman->midiMapFilename())+1]; + strcpy(selectedmap,devman->midiMapFilename()); + } + + if (selectedmap!=NULL) maplabel=new TQLabel(selectedmap,page); + else maplabel=new TQLabel(i18n("None"),page); + + topLayout->addWidget(maplabel); + + TQHBoxLayout *hbox=new TQHBoxLayout(topLayout); + hbox->addStretch(1); + mapbrowse=new TQPushButton(i18n("Browse..."),page); + hbox->addWidget(mapbrowse); + connect(mapbrowse,TQT_SIGNAL(clicked()),TQT_SLOT(browseMap()) ); + + mapnone=new TQPushButton(i18n("None"),page); + hbox->addWidget(mapnone); + connect(mapnone,TQT_SIGNAL(clicked()),TQT_SLOT(noMap()) ); + + topLayout->addStretch(1); + +} + +void MidiConfigDialog::deviceselected(int idx) +{ + selecteddevice=idx; +} + +void MidiConfigDialog::browseMap() +{ + TQString path = TDEGlobal::dirs()->findAllResources("appdata", "maps/*.map").last(); + path.truncate(path.findRev('/')); + + KURL url = KFileDialog::getOpenURL(path,"*.map",this); + + if( url.isEmpty() ) + return; + + if( !url.isLocalFile() ) + { + KMessageBox::sorry( 0L, i18n( "Only local files are currently supported." ) ); + return; + } + + TQString filename = url.path(); + + delete selectedmap; + selectedmap=new char[filename.length()+1]; + strcpy(selectedmap,TQFile::encodeName(filename)); + maplabel->setText(selectedmap); +} + +void MidiConfigDialog::noMap() +{ + if (selectedmap!=NULL) {delete selectedmap;selectedmap=NULL;}; + maplabel->setText(i18n("None")); +} + +int MidiConfigDialog::selecteddevice=0; +char *MidiConfigDialog::selectedmap=NULL; + +#include "midicfgdlg.moc" |