void ArkViewer::slotOpenUrlRequestDelayed(const KUrl& url, const KParts::OpenUrlArguments& arguments, const KParts::BrowserArguments& browserArguments) { kDebug() << "Opening URL: " << url; Q_UNUSED(arguments) Q_UNUSED(browserArguments) KRun *runner = new KRun(url, 0, 0, false); runner->setRunExecutables(false); }
bool ClientApp::kde_open(const KUrl& url, const QString& mimeType, bool allowExec) { if ( mimeType.isEmpty() ) { kDebug() << url; KRun * run = new KRun( url, 0 ); run->setRunExecutables(allowExec); QObject::connect( run, SIGNAL( finished() ), this, SLOT( delayedQuit() )); QObject::connect( run, SIGNAL( error() ), this, SLOT( delayedQuit() )); this->exec(); return !krun_has_error; } else { KUrl::List urls; urls.append( url ); const KService::List offers = KMimeTypeTrader::self()->query( mimeType, QLatin1String( "Application" ) ); if (offers.isEmpty()) return 1; KService::Ptr serv = offers.first(); return KRun::run( *serv, urls, 0 ); } }
bool RKWorkplace::openAnyUrl (const KUrl &url) { RK_TRACE (APP); #warning TODO support rkward:\/\/-protocol, here, too KMimeType::Ptr mimetype = KMimeType::findByUrl (url); if (mimetype->is ("text/html")) { openHelpWindow (url, true); return true; // TODO } if (url.fileName ().toLower ().endsWith (".rdata")) { RKWardMainWindow::getMain ()->fileOpenAskSave (url); return true; // TODO } if (mimetype->name ().startsWith ("text")) { return (openScriptEditor (url, QString (), false)); } if (KMessageBox::questionYesNo (this, i18n ("The url you are trying to open ('%1') is not a local file or the filetype is not supported by RKWard. Do you want to open the url in the default application?", url.prettyUrl ()), i18n ("Open in default application?")) != KMessageBox::Yes) { return false; } KRun *runner = new KRun (url, topLevelWidget()); // according to KRun-documentation, KRun will self-destruct when done. runner->setRunExecutables (false); return false; }