diff --git a/audiocd.cpp b/audiocd.cpp index 5a1f308..d3aa457 100644 --- a/audiocd.cpp +++ b/audiocd.cpp @@ -89,7 +89,7 @@ AudioCD::AudioCD(Solid::Device aCd) { cd = devList[i].as<Solid::OpticalDisc>(); block = odsign.as<Solid::Block>(); - src = new MediaSource(Cd,block->device()); + src = new MediaSource(Phonon::Cd, block->device()); } } } @@ -165,7 +165,7 @@ void AudioCD::reloadCD() kDebug() << "CD inserted!"; cd = devList[i].as<Solid::OpticalDisc>(); block = odsign.as<Solid::Block>(); - src = new MediaSource(Cd,block->device()); + src = new MediaSource(Phonon::Cd, block->device()); emit(discChanged ()); } } diff --git a/hwcontroler.cpp b/hwcontroler.cpp index fe56e58..455d683 100644 --- a/hwcontroler.cpp +++ b/hwcontroler.cpp @@ -75,12 +75,21 @@ HWControler::HWControler () // else loading all optical drives else { + kDebug() << devList.size() << "Optical Drive detected in the computer"; for (int i = 0; i < devList.size();i++) { cdIn.append(new AudioCD(devList[i])); + if ((selectedCd==-1) && cdIn[i]->isCdInserted() && (cdIn[i]->getCd()->availableContent() == Solid::OpticalDisc::Audio)) + { + selectedCd = i; + kDebug() << "Optical Drive selected :" << cdIn[selectedCd]->getMediaSource()->deviceName(); + } + } + if (selectedCd==-1) + { selectedCd = 0; - connect(cdIn[selectedCd],SIGNAL(discChanged()),this,SLOT(configMedia())); } + connect(cdIn[selectedCd],SIGNAL(discChanged()),this,SLOT(configMedia())); } //TODO: Load ALL audio output @@ -499,14 +508,12 @@ void HWControler::setRandom(bool b) bool HWControler::isDiscValid() { -/* if(getCD()->isCdInserted()) + if((selectedCd!=-1) && (cdIn[selectedCd]->isCdInserted())) { - return !(getCD()->getCd()->discType()&0x01) ; + return (cdIn[selectedCd]->getCd()->availableContent() == Solid::OpticalDisc::Audio); } else return false; -*/ -return true; } void HWControler ::loadPlayList()