On Tue, Jun 10, 2008 at 4:34 PM, David Boosalis <[EMAIL PROTECTED]> wrote:
> Hi All. > > My first time use of Solid as I want to capture in my application when a > USB Memory stick gets inserted into the computer. I have no problem getting > the event, my question is how do I go from a Solid Class to a File Path, so > I can open up a file dialog on it. > > Here is my slot thus far: > > void MyApp::slotSolidDeviceChanged(const QString &str) > { > qDebug() << "Device changed " << str; > QString filePath; > Solid::Device device(str); > Solid::DeviceInterface *deviceInterface; > Solid::StorageAccess *accessStorage; > Solid::StorageVolume *volumeStorage; > if (device.isValid()) > { > if (device.is<Solid::StorageAccess>()) { > deviceInterface = > device.asDeviceInterface(Solid::DeviceInterface::StorageDrive); > > usbStick = device.as<Solid::StorageDrive>(); > > volumeStorage = device.as<Solid::StorageVolume>(); > accessStorage = device.as<Solid::StorageAccess>(); > qDebug() << "file path = " << accessStorage->filePath(); // produces > NULL code > qDebug() << "uuid = " << volumeStorage->uuid(); > qDebug() << "Volumne Label = " << volumeStorage->label(); > } > > Dave, Are you sure the drive is mounted? If not, then filePath() should return an empty string. Make to use StorageAccess::setup. This will mount the drive and, if successful, you should be able to get a file path. Also, I've included kde-hardware-devel on this list. Posting here will likely get you more attention from knowledgable people. Chris
_______________________________________________ Kde-hardware-devel mailing list Kde-hardware-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-hardware-devel