/////////////////////////////////////////////////////////////////////////////// // CUnitDiskUIHandler /////////////////////////////////////////////////////////////////////////////// UINT CUnitDiskUIHandler::GetIconID(CDiskObjectPtr obj) const { ATLASSERT(dynamic_cast<CUnitDiskObject*>(obj.get()) != NULL); CUnitDiskObjectPtr unitDisk = boost::dynamic_pointer_cast<CUnitDiskObject>(obj); CUnitDiskInfoHandlerPtr handler = unitDisk->GetInfoHandler(); if ( !obj->IsUsable() ) return IDI_ND_BADKEY; if ( handler->IsHDD() ) { if ( handler->IsBound() ) { if ( handler->IsMaster() ) { return IDI_ND_INUSE; } else { return IDI_ND_SLAVE; } } else { return IDI_ND_INUSE; } } else { // TODO : We need a new icon for this type(DVD, FLASH, MO.. ETC) return IDI_ND_INUSE; } }