symbian Folder selection dialog (转)
From Forum Nokia Wiki
Here is an example on how to implement a Select folder dialog for S60 3rd edition, with common dialog classes.
Source code
TFileName folder;
// Create select memory dialog
CAknMemorySelectionDialog* memDlg =
CAknMemorySelectionDialog::NewL(ECFDDialogTypeCopy, ETrue);
CAknMemorySelectionDialog::TMemory memory =
CAknMemorySelectionDialog::EPhoneMemory;
// Create select folder dialog
CAknFileSelectionDialog* dlg =
CAknFileSelectionDialog::NewL(ECFDDialogTypeCopy);
// some dialog customizations:
dlg->SetTitleL(_L("Select folder"));
dlg->SetRightSoftkeyRootFolderL(_L("Back")); // for root folder
TBool result = EFalse;
for (;;)
{
if ( memDlg->ExecuteL(memory) == CAknFileSelectionDialog::ERightSoftkey )
{
// cancel selection
break;
}
if (memory==CAknMemorySelectionDialog::EMemoryCard)
{
folder = PathInfo::MemoryCardRootPath();
}
else
{
folder = PathInfo::PhoneMemoryRootPath();
}
if (dlg->ExecuteL(folder))
{
// we got our folder and finish loop
result = ETrue;
break;
}
}
delete memDlg;
delete dlg;