diff options
author | Max Horn | 2010-06-21 21:36:36 +0000 |
---|---|---|
committer | Max Horn | 2010-06-21 21:36:36 +0000 |
commit | bbad3f333a9227ccb1de633a0fe92d9e01ad7bb3 (patch) | |
tree | e5b53717ffc5972cec14be581f586228c245b858 /sound/musicplugin.cpp | |
parent | 49448af6cb2613460fe37caf79bdb1ed4c206715 (diff) | |
download | scummvm-rg350-bbad3f333a9227ccb1de633a0fe92d9e01ad7bb3.tar.gz scummvm-rg350-bbad3f333a9227ccb1de633a0fe92d9e01ad7bb3.tar.bz2 scummvm-rg350-bbad3f333a9227ccb1de633a0fe92d9e01ad7bb3.zip |
Patch #1956501: "GUI/LAUNCHER: Midi device selection"
svn-id: r50128
Diffstat (limited to 'sound/musicplugin.cpp')
-rw-r--r-- | sound/musicplugin.cpp | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/sound/musicplugin.cpp b/sound/musicplugin.cpp index b4754230da..7b5b6608ea 100644 --- a/sound/musicplugin.cpp +++ b/sound/musicplugin.cpp @@ -24,10 +24,12 @@ */ #include "sound/musicplugin.h" +#include "common/hash-str.h" +#include "common/translation.h" MusicDevice::MusicDevice(MusicPluginObject const *musicPlugin, Common::String name, MusicType mt) : - _musicDriverName(musicPlugin->getName()), _musicDriverId(musicPlugin->getId()), - _name(name), _type(mt) { + _musicDriverName(_(musicPlugin->getName())), _musicDriverId(musicPlugin->getId()), + _name(_(name)), _type(mt) { } Common::String MusicDevice::getCompleteName() { @@ -46,3 +48,19 @@ Common::String MusicDevice::getCompleteName() { return name; } + +Common::String MusicDevice::getCompleteId() { + Common::String id = _musicDriverId; + if (!_name.empty()) { + id += "_"; + id += _name; + } + + return id; +} + +MidiDriver::DeviceHandle MusicDevice::getHandle() { + if (_musicDriverId.equals("auto") || _musicDriverId.equals("null")) + return 0; + return (MidiDriver::DeviceHandle)Common::hashit(getCompleteId().c_str()); +} |