本文整理汇总了C++中KFileDialog::setMode方法的典型用法代码示例。如果您正苦于以下问题:C++ KFileDialog::setMode方法的具体用法?C++ KFileDialog::setMode怎么用?C++ KFileDialog::setMode使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KFileDialog
的用法示例。
在下文中一共展示了KFileDialog::setMode方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: getSaveFileLocation
void PoTD::getSaveFileLocation()
{
if (m_provider.isNull()) {
return;
}
KFileDialog *fd = new KFileDialog(KUrl("kfiledialog:///frameplasmoid"), QString(), 0);
fd->setOperationMode(KFileDialog::Saving);
fd->setMode(KFile::LocalOnly);
fd->setAttribute(Qt::WA_DeleteOnClose, true);
connect(fd, SIGNAL(okClicked()), this, SLOT(saveFile()));
fd->show();
}
示例2: importDocument
void KoPAView::importDocument()
{
KFileDialog *dialog = new KFileDialog( KUrl("kfiledialog:///OpenDialog"),QString(), this );
dialog->setObjectName( "file dialog" );
dialog->setMode( KFile::File );
if ( d->doc->pageType() == KoPageApp::Slide ) {
dialog->setCaption(i18n("Import Slideshow"));
}
else {
dialog->setCaption(i18n("Import Document"));
}
// TODO make it possible to select also other supported types (then the default format) here.
// this needs to go via the filters to get the file in the correct format.
// For now we only support the native mime types
QStringList mimeFilter;
#if 1
mimeFilter << KoOdf::mimeType( d->doc->documentType() ) << KoOdf::templateMimeType( d->doc->documentType() );
#else
mimeFilter = KoFilterManager::mimeFilter( KoDocument::readNativeFormatMimeType(d->doc->componentData()), KoFilterManager::Import,
KoDocument::readExtraNativeMimeTypes() );
#endif
dialog->setMimeFilter( mimeFilter );
if (dialog->exec() == QDialog::Accepted) {
KUrl url(dialog->selectedUrl());
QString tmpFile;
if ( KIO::NetAccess::download( url, tmpFile, 0 ) ) {
QFile file( tmpFile );
file.open( QIODevice::ReadOnly );
QByteArray ba;
ba = file.readAll();
// set the correct mime type as otherwise it does not find the correct tag when loading
QMimeData data;
data.setData( KoOdf::mimeType( d->doc->documentType() ), ba);
KoPAPastePage paste( d->doc,d->activePage );
if ( ! paste.paste( d->doc->documentType(), &data ) ) {
KMessageBox::error(0, i18n("Could not import\n%1", url.pathOrUrl()));
}
}
else {
KMessageBox::error(0, i18n("Could not import\n%1", url.pathOrUrl()));
}
}
delete dialog;
}
示例3: main
int main(int argc, char **argv)
{
KCmdLineOptions options;
options.add("+[cmd]");
options.add("+[url]");
KCmdLineArgs::init(argc, argv, "kfstest", 0, ki18n("kfstest"), "0", ki18n("test app"));
KCmdLineArgs::addCmdLineOptions(options);
KApplication a;
a.setQuitOnLastWindowClosed(false);
QString name1;
QStringList names;
QString argv1;
KUrl startDir;
if (argc > 1)
argv1 = QLatin1String(argv[1]);
if ( argc > 2 )
startDir = KUrl( argv[2] );
#if 0 // SPLIT-TODO
if (argv1 == QLatin1String("diroperator")) {
KDirOperator *op = new KDirOperator(startDir, 0);
KConfigGroup grp(KGlobal::config(), "TestGroup" );
op->setViewConfig(grp);
op->setView(KFile::Simple);
op->show();
a.exec();
} else
#endif
if (argv1 == QLatin1String("localonly")) {
QString name = KFileDialog::getOpenFileName(startDir);
qDebug("filename=%s",name.toLatin1().constData());
}
else if (argv1 == QLatin1String("oneurl")) {
KUrl url = KFileDialog::getOpenUrl(startDir);
qDebug() << "url=" << url;
}
else if (argv1 == QLatin1String("existingDirectoryUrl")) {
KUrl url = KFileDialog::getExistingDirectoryUrl();
qDebug("URL=%s",url.url().toLatin1().constData());
name1 = url.url();
}
else if (argv1 == QLatin1String("preview")) {
KUrl u = KFileDialog::getImageOpenUrl();
qDebug("filename=%s", u.url().toLatin1().constData());
}
else if (argv1 == QLatin1String("preselect")) {
names = KFileDialog::getOpenFileNames(KUrl("/etc/passwd"));
QStringList::Iterator it = names.begin();
while ( it != names.end() ) {
qDebug("selected file: %s", (*it).toLatin1().constData());
++it;
}
}
else if (argv1 == QLatin1String("dirs"))
name1 = KFileDialog::getExistingDirectory();
else if (argv1 == QLatin1String("heap")) {
KFileDialog *dlg = new KFileDialog( startDir, QString(), 0L);
dlg->setMode( KFile::File);
dlg->setOperationMode( KFileDialog::Saving );
QStringList filter;
filter << "all/allfiles" << "text/plain";
dlg->setMimeFilter( filter, "all/allfiles" );
#if 0 // SPLIT-TODO
KUrlBar *urlBar = dlg->speedBar();
if ( urlBar )
{
urlBar->insertDynamicItem( KUrl("ftp://ftp.kde.org"),
QLatin1String("KDE FTP Server") );
}
#endif
if ( dlg->exec() == KDialog::Accepted )
name1 = dlg->selectedUrl().url();
}
else if ( argv1 == QLatin1String("eventloop") )
{
new KFDTest( startDir );
return a.exec();
}
else if (argv1 == QLatin1String("save")) {
KUrl u = KFileDialog::getSaveUrl(startDir);
// QString(QDir::homePath() + QLatin1String("/testfile")),
// QString(), 0L);
name1 = u.url();
}
else if (argv1 == QLatin1String("icon")) {
KIconDialog dlg;
QString icon = dlg.getIcon();
kDebug() << icon;
}
//.........这里部分代码省略.........
示例4: exportRecipes
void RecipeActionsHandler::exportRecipes( const QList<int> &ids, const QString & caption, const QString &selection, RecipeDB *database )
{
KFileDialog * fd = new KFileDialog( KUrl(),
QString( "*.kre|%1 (*.kre)\n"
"*.kreml|Krecipes (*.kreml)\n"
"*.txt|%3 (*.txt)\n"
//"*.cml|CookML (*.cml)\n"
"*|%4\n"
"*.html|%2 (*.html)\n"
"*.mmf|Meal-Master (*.mmf)\n"
"*.xml|RecipeML (*.xml)\n"
"*.mx2|MasterCook (*.mx2)\n"
"*.rk|Rezkonv (*.rk)"
).arg( i18n( "Compressed Krecipes format" ) )
.arg( i18n( "Web page" ) )
.arg( i18n("Plain Text") )
.arg( i18n("Web Book") ),
0 );
fd->setObjectName( "export_dlg" );
fd->setModal( true );
fd->setCaption( caption );
fd->setOperationMode( KFileDialog::Saving );
fd->setSelection( selection );
fd->setMode( KFile::File | KFile::Directory );
if ( fd->exec() == KFileDialog::Accepted ) {
QString fileName = fd->selectedFile();
if ( !fileName.isEmpty() ) {
BaseExporter * exporter;
if ( fd->currentFilter() == "*.xml" )
exporter = new RecipeMLExporter( fileName, fd->currentFilter() );
else if ( fd->currentFilter() == "*.mx2" )
exporter = new MX2Exporter( fileName, fd->currentFilter() );
else if ( fd->currentFilter() == "*.mmf" )
exporter = new MMFExporter( fileName, fd->currentFilter() );
else if ( fd->currentFilter() == "*" ) {
CategoryTree *cat_structure = new CategoryTree;
database->loadCategories( cat_structure );
exporter = new HTMLBookExporter( cat_structure, fd->baseUrl().path(), "*.html" );
}
else if ( fd->currentFilter() == "*.html" ) {
exporter = new HTMLExporter( fileName, fd->currentFilter() );
XSLTExporter exporter_junk( fileName, "*.html" ); // AGH, i don't get build systems...
}
else if ( fd->currentFilter() == "*.cml" )
exporter = new CookMLExporter( fileName, fd->currentFilter() );
else if ( fd->currentFilter() == "*.txt" )
exporter = new PlainTextExporter( fileName, fd->currentFilter() );
else if ( fd->currentFilter() == "*.rk" )
exporter = new RezkonvExporter( fileName, fd->currentFilter() );
else {
CategoryTree *cat_structure = new CategoryTree;
database->loadCategories( cat_structure );
exporter = new KreExporter( cat_structure, fileName, fd->currentFilter() );
}
int overwrite = -1;
if ( QFile::exists( exporter->fileName() ) ) {
overwrite = KMessageBox::warningYesNo( 0, i18n( "File \"%1\" exists. Are you sure you want to overwrite it?" , exporter->fileName()), i18nc( "@title:window", "Saving recipe" ) );
}
if ( overwrite == KMessageBox::Yes || overwrite == -1 ) {
KProgressDialog progress_dialog( 0, QString(), i18nc( "@info:progress", "Saving recipes..." ) );
progress_dialog.setObjectName("export_progress_dialog");
exporter->exporter( ids, database, &progress_dialog );
}
delete exporter;
}
}
delete fd;
}