// This can happen after openUrl returns, or directly from m_image->ref() void KHTMLImage::notifyFinished( khtml::CachedObject *o ) { if ( !m_image || o != m_image ) return; //const QPixmap &pix = m_image->pixmap(); QString caption; KMimeType::Ptr mimeType; if ( !m_mimeType.isEmpty() ) mimeType = KMimeType::mimeType(m_mimeType, KMimeType::ResolveAliases); if ( mimeType ) { if ( !m_image->suggestedTitle().isEmpty() ) { caption = i18n( "%1 (%2 - %3x%4 Pixels)", m_image->suggestedTitle(), mimeType->comment(), m_image->pixmap_size().width(), m_image->pixmap_size().height() ); } else { caption = i18n( "%1 - %2x%3 Pixels" , mimeType->comment() , m_image->pixmap_size().width() , m_image->pixmap_size().height() ); } } else { if ( !m_image->suggestedTitle().isEmpty() ) { caption = i18n( "%1 (%2x%3 Pixels)" , m_image->suggestedTitle(), m_image->pixmap_size().width() , m_image->pixmap_size().height() ); } else { caption = i18n( "Image - %1x%2 Pixels" , m_image->pixmap_size().width() , m_image->pixmap_size().height() ); } } emit setWindowCaption( caption ); emit completed(); emit setStatusBarText(i18n("Done.")); }
bool Part::start( const KURL &url ) { if( !m_started ) { m_statusbar->addStatusBarItem( new ProgressBox( statusBar(), this ), 0, true ); connect( m_map, SIGNAL(mouseHover( const QString& )), statusBar(), SLOT(message( const QString& )) ); connect( m_map, SIGNAL(created( const Directory* )), statusBar(), SLOT(clear()) ); m_started = true; } if( m_manager->start( url ) ) { m_url = url; const QString s = i18n( "Scanning: %1" ).arg( prettyURL() ); stateChanged( "scan_started" ); emit started( 0 ); //as a Part, we have to do this emit setWindowCaption( s ); statusBar()->message( s ); m_map->invalidate(); //to maintain ui consistency return true; } return false; }
bool EditorState::saveOrLoadLayout(bool Save, bool Silent, const MyGUI::UString& _file) { if (!Save) clear(); if ( (Save && ew->save(_file)) || (!Save && ew->load(_file)) ) { fileName = _file; setWindowCaption(_file + " - MyGUI Layout Editor"); recentFiles.push_back(_file); mOpenSaveFileDialog->setVisible(false); um->addValue(); um->setUnsaved(false); return true; } else if (!Silent) { std::string saveLoad = Save ? localise("Save") : localise("Load"); /*MyGUI::Message* message =*/ MyGUI::Message::createMessageBox( "Message", localise("Warning"), "Failed to " + saveLoad + " file '" + _file + "'", MyGUI::MessageBoxStyle::IconWarning | MyGUI::MessageBoxStyle::Ok ); } return false; }
void CSmodule_AbstractDisplay::setImage(int w,int h) { setWindowCaption(); CSwait(); ready = false; this->w = w; this->h = h; if (img) free(img); img = (uchar*) calloc((w*h)<<2, sizeof(uchar)); setWindowCaption(); ready = true; }
void CProgressWindow::setTitle(const neutrino_locale_t title) { setWindowCaption(title); #ifdef VFD_UPDATE CVFD::getInstance()->showProgressBar2(-1,NULL,-1,g_Locale->getText(ccw_caption)); // set global text in VFD #endif // VFD_UPDATE }
void Kaboodle::Player::updateTitle() { if(!current.isEmpty() && (lastEmitted != current)) { lastEmitted = current; emit setWindowCaption(current.prettyURL()); } }
TestKHTML::TestKHTML() : KXmlGuiWindow() { #ifndef __KDE_HAVE_GCC_VISIBILITY m_factory = new KHTMLGlobal(); #endif m_movie = new QMovie(":/pics/progress.gif"); m_indicator = new QLabel; m_indicator->setFixedSize(QSize(24, 24)); m_indicator->setMovie(m_movie); m_part = new KHTMLPart( this, this, KHTMLPart::BrowserViewGUI ); connect( m_part->browserExtension(), SIGNAL(openUrlRequest(KUrl,KParts::OpenUrlArguments,KParts::BrowserArguments)), this, SLOT(openUrl(KUrl,KParts::OpenUrlArguments,KParts::BrowserArguments))); m_combo = new KComboBox; m_combo->setEditable(true); connect(m_combo, SIGNAL(returnPressed(QString)), this, SLOT(openUrl(QString))); m_goButton = new QToolButton; m_goButton->setText("Go"); connect(m_goButton, SIGNAL(clicked()), this, SLOT(openUrl())); m_reloadButton = new QToolButton; m_reloadButton->setIcon(KIcon("view-refresh")); connect(m_reloadButton, SIGNAL(clicked()), this, SLOT(reload())); QHBoxLayout *topLayout = new QHBoxLayout; topLayout->addWidget(m_reloadButton); topLayout->addWidget(m_combo); topLayout->addWidget(m_goButton); topLayout->addWidget(m_indicator); m_indicator->show(); QFrame *mainWidget = new QFrame; QVBoxLayout *mainLayout = new QVBoxLayout(mainWidget); mainLayout->addLayout(topLayout); mainLayout->addWidget(m_part->widget()); setCentralWidget(mainWidget); resize(800, 600); setupActions(); m_part->setJScriptEnabled(true); m_part->setJavaEnabled(true); m_part->setPluginsEnabled(true); m_part->setURLCursor(QCursor(Qt::PointingHandCursor)); connect(m_part, SIGNAL(setWindowCaption(QString)), m_part->widget()->topLevelWidget(), SLOT(setCaption(QString))); connect(m_part, SIGNAL(started(KIO::Job*)), this, SLOT(startLoading())); connect(m_part, SIGNAL(completed()), this, SLOT(finishedLoading())); }
void Part::mapChanged( const Directory *tree ) { //IMPORTANT -> m_url has already been set emit setWindowCaption( prettyURL() ); ProgressBox *progress = static_cast<ProgressBox *>(statusBar()->child( "ProgressBox" )); if( progress ) progress->setText( tree->children() ); }
void EditorState::clear(bool _clearName) { mWidgetsWindow->clearNewWidget(); recreate = false; if (_clearName) fileName = ""; testMode = false; ew->clear(); notifySelectWidget(nullptr); um->shutdown(); um->initialise(ew); selectDepth = 0; if (_clearName) setWindowCaption("MyGUI Layout Editor"); }
bool KHTMLImage::openUrl( const KUrl &url ) { static const QString &html = KGlobal::staticQString( "<html><body><img src=\"%1\"></body></html>" ); // Propagate statusbar to our kid part. KParts::StatusBarExtension::childObject( m_khtml )->setStatusBar( m_sbExt->statusBar() ); disposeImage(); setUrl(url); emit started( 0 ); KParts::OpenUrlArguments args = arguments(); m_mimeType = args.mimeType(); emit setWindowCaption( url.prettyUrl() ); // Need to keep a copy of the offsets since they are cleared when emitting completed m_xOffset = args.xOffset(); m_yOffset = args.yOffset(); m_khtml->begin( this->url() ); m_khtml->setAutoloadImages( true ); DOM::DocumentImpl *impl = dynamic_cast<DOM::DocumentImpl *>( m_khtml->document().handle() ); // ### hack ;-) if (!impl) return false; if ( arguments().reload() ) impl->docLoader()->setCachePolicy( KIO::CC_Reload ); khtml::DocLoader *dl = impl->docLoader(); m_image = dl->requestImage( this->url().url() ); if ( m_image ) m_image->ref( this ); m_khtml->write( html.arg( this->url().url() ) ); m_khtml->end(); /* connect( khtml::Cache::loader(), SIGNAL(requestDone(khtml::DocLoader*,khtml::CachedObject*)), this, SLOT(updateWindowCaption()) ); */ return true; }
void KWebKitPart::slotMainFrameLoadFinished (bool ok) { if (!ok || !m_doLoadFinishedActions) return; m_doLoadFinishedActions = false; if (!m_emitOpenUrlNotify) { m_emitOpenUrlNotify = true; // Save history once page loading is done. } // If the document contains no <title> tag, then set it to the current url. if (m_webView->title().trimmed().isEmpty()) { // If the document title is empty, then set it to the current url const QUrl url (m_webView->url()); const QString caption (url.toString((QUrl::RemoveQuery|QUrl::RemoveFragment))); emit setWindowCaption(caption); // The urlChanged signal is emitted if and only if the main frame // receives the title of the page so we manually invoke the slot as a // work around here for pages that do not contain it, such as text // documents... slotUrlChanged(url); } QWebFrame* frame = page()->mainFrame(); if (!frame || frame->url() == *globalBlankUrl) return; // Set the favicon specified through the <link> tag... if (WebKitSettings::self()->favIconsEnabled() && !frame->page()->settings()->testAttribute(QWebSettings::PrivateBrowsingEnabled)) { const QWebElement element = frame->findFirstElement(QL1S("head>link[rel=icon], " "head>link[rel=\"shortcut icon\"]")); QUrl shortcutIconUrl; if (!element.isNull()) { shortcutIconUrl = frame->baseUrl().resolved(QUrl(element.attribute("href"))); //kDebug() << "setting favicon to" << shortcutIconUrl; m_browserExtension->setIconUrl(shortcutIconUrl); } } slotFrameLoadFinished(ok); }
void Part::scanCompleted( Directory *tree ) { if( tree ) { statusBar()->message( i18n( "Scan completed, generating map..." ) ); m_map->create( tree ); //do after creating map stateChanged( "scan_complete" ); } else { stateChanged( "scan_failed" ); emit canceled( i18n( "Scan failed: %1" ).arg( prettyURL() ) ); emit setWindowCaption( QString::null ); statusBar()->clear(); // QTimer::singleShot( 2000, statusBar(), SLOT(clear()) ); m_url = KURL(); } }
KonqSideBarWebModule::KonqSideBarWebModule(const KComponentData &componentData, QWidget *parent, const KConfigGroup& configGroup) : KonqSidebarModule(componentData, parent, configGroup) { _htmlPart = new KHTMLSideBar(); _htmlPart->setAutoDeletePart(false); connect(_htmlPart, SIGNAL(reload()), this, SLOT(reload())); connect(_htmlPart, SIGNAL(completed()), this, SLOT(pageLoaded())); connect(_htmlPart, SIGNAL(setWindowCaption(QString)), this, SLOT(setTitle(QString))); connect(_htmlPart, SIGNAL(openUrlRequest(QString,KParts::OpenUrlArguments,KParts::BrowserArguments)), this, SLOT(urlClicked(QString,KParts::OpenUrlArguments,KParts::BrowserArguments))); connect(_htmlPart->browserExtension(), SIGNAL(openUrlRequest(KUrl,KParts::OpenUrlArguments,KParts::BrowserArguments)), this, SLOT(formClicked(KUrl,KParts::OpenUrlArguments,KParts::BrowserArguments)) ); connect(_htmlPart, SIGNAL(setAutoReload()), this, SLOT(setAutoReload())); connect(_htmlPart, SIGNAL(openUrlNewWindow(QString,KParts::OpenUrlArguments,KParts::BrowserArguments,KParts::WindowArgs)), this, SLOT(urlNewWindow(QString,KParts::OpenUrlArguments,KParts::BrowserArguments,KParts::WindowArgs))); connect(_htmlPart, SIGNAL(submitFormRequest(const char*,QString,QByteArray,QString,QString,QString)), this, SIGNAL(submitFormRequest(const char*,QString,QByteArray,QString,QString,QString))); reloadTimeout = configGroup.readEntry("Reload", 0); _url = configGroup.readPathEntry("URL", QString()); _htmlPart->openUrl(_url ); // Must load this delayed QTimer::singleShot(0, this, SLOT(loadFavicon())); }
KWebKitPart::KWebKitPart(QWidget *parentWidget, QObject *parent, const QByteArray& cachedHistory, const QStringList& /*args*/) :KParts::ReadOnlyPart(parent), m_emitOpenUrlNotify(true), m_hasCachedFormData(false), m_doLoadFinishedActions(false), m_statusBarWalletLabel(0), m_searchBar(0), m_passwordBar(0), m_featurePermissionBar(0) { KAboutData about = KAboutData("kwebkitpart", i18nc("Program Name", "KWebKitPart"), /*version*/ "1.3.0", i18nc("Short Description", "QtWebKit Browser Engine Component"), KAboutLicense::LGPL, i18n("(C) 2009-2010 Dawit Alemayehu\n" "(C) 2008-2010 Urs Wolfer\n" "(C) 2007 Trolltech ASA")); about.addAuthor(i18n("Dawit Alemayehu"), i18n("Maintainer, Developer"), "*****@*****.**"); about.addAuthor(i18n("Urs Wolfer"), i18n("Maintainer, Developer"), "*****@*****.**"); about.addAuthor(i18n("Michael Howell"), i18n("Developer"), "*****@*****.**"); about.addAuthor(i18n("Laurent Montel"), i18n("Developer"), "*****@*****.**"); about.addAuthor(i18n("Dirk Mueller"), i18n("Developer"), "*****@*****.**"); about.setProductName("kwebkitpart/general"); // KComponentData componentData(&about); setComponentData(about, false /*don't load plugins yet*/); // NOTE: If the application does not set its version number, we automatically // set it to KDE's version number so that the default user-agent string contains // proper application version number information. See QWebPage::userAgentForUrl... if (QCoreApplication::applicationVersion().isEmpty()) QCoreApplication::setApplicationVersion(QString("%1.%2.%3") .arg(KDE::versionMajor()) .arg(KDE::versionMinor()) .arg(KDE::versionRelease())); setXMLFile(QL1S("kwebkitpart.rc")); // Create this KPart's widget QWidget *mainWidget = new QWidget (parentWidget); mainWidget->setObjectName("kwebkitpart"); // Create the WebView... m_webView = new WebView (this, parentWidget); // Create the browser extension. m_browserExtension = new WebKitBrowserExtension(this, cachedHistory); // Add status bar extension... m_statusBarExtension = new KParts::StatusBarExtension(this); // Add a web history interface for storing visited links. if (!QWebHistoryInterface::defaultInterface()) QWebHistoryInterface::setDefaultInterface(new WebHistoryInterface(this)); // Add text and html extensions... new KWebKitTextExtension(this); new KWebKitHtmlExtension(this); new KWebKitScriptableExtension(this); // Layout the GUI... QVBoxLayout* l = new QVBoxLayout(mainWidget); l->setContentsMargins(0, 0, 0, 0); l->setSpacing(0); l->addWidget(m_webView); mainWidget->setLayout(l); // Set the part's widget setWidget(mainWidget); // Set the web view as the the focus object mainWidget->setFocusProxy(m_webView); // Connect the signals from the webview connect(m_webView, SIGNAL(titleChanged(QString)), this, SIGNAL(setWindowCaption(QString))); connect(m_webView, SIGNAL(urlChanged(QUrl)), this, SLOT(slotUrlChanged(QUrl))); connect(m_webView, SIGNAL(linkMiddleOrCtrlClicked(QUrl)), this, SLOT(slotLinkMiddleOrCtrlClicked(QUrl))); connect(m_webView, SIGNAL(selectionClipboardUrlPasted(QUrl,QString)), this, SLOT(slotSelectionClipboardUrlPasted(QUrl,QString))); connect(m_webView, SIGNAL(loadFinished(bool)), this, SLOT(slotLoadFinished(bool))); // Connect the signals from the page... connectWebPageSignals(page()); // Init the QAction we are going to use... initActions(); // Load plugins once we are fully ready loadPlugins(); }
void KWebKitPart::guiActivateEvent(KParts::GUIActivateEvent *event) { if (event && event->activated() && m_webView) { emit setWindowCaption(m_webView->title()); } }
void Application::command_UpdateAppCaption(const MyGUI::UString& _commandName, bool& _result) { setWindowCaption(replaceTags("CaptionMainWindow")); _result = true; }
bool KitchenSyncPart::openURL(const KURL &url) { emit setWindowCaption(url.prettyURL()); return true; }
void TextInputPopup::setCaption(String caption) { setWindowCaption(caption); }
int main(int argc, char *argv[]) { QApplication a(argc, argv); if (a.arguments().count() <= 1) { qWarning() << "Argument expected: url to open"; return 1; } new KHTMLGlobal; KXmlGuiWindow *toplevel = new KXmlGuiWindow(); KHTMLPart *doc = new KHTMLPart(toplevel, toplevel, KHTMLPart::BrowserViewGUI); Dummy *dummy = new Dummy(doc); QObject::connect(doc->browserExtension(), SIGNAL(openUrlRequest(QUrl,KParts::OpenUrlArguments,KParts::BrowserArguments)), dummy, SLOT(slotOpenURL(QUrl,KParts::OpenUrlArguments,KParts::BrowserArguments))); QObject::connect(doc, SIGNAL(completed()), dummy, SLOT(handleDone())); QUrl url = QUrl::fromUserInput(a.arguments().at(1)); // TODO support for relative paths if (url.path().right(4).toLower() == ".xml") { KParts::OpenUrlArguments args(doc->arguments()); args.setMimeType("text/xml"); doc->setArguments(args); } doc->openUrl(url); toplevel->setCentralWidget(doc->widget()); toplevel->resize(800, 600); QDomDocument d = doc->domDocument(); QDomElement viewMenu = d.documentElement().firstChild().childNodes().item(2).toElement(); QDomElement e = d.createElement("action"); e.setAttribute("name", "debugRenderTree"); viewMenu.appendChild(e); e = d.createElement("action"); e.setAttribute("name", "debugDOMTree"); viewMenu.appendChild(e); e = d.createElement("action"); e.setAttribute("name", "debugDoBenchmark"); viewMenu.appendChild(e); QDomElement toolBar = d.documentElement().firstChild().nextSibling().toElement(); e = d.createElement("action"); e.setAttribute("name", "editable"); toolBar.insertBefore(e, toolBar.firstChild()); e = d.createElement("action"); e.setAttribute("name", "navigable"); toolBar.insertBefore(e, toolBar.firstChild()); e = d.createElement("action"); e.setAttribute("name", "reload"); toolBar.insertBefore(e, toolBar.firstChild()); e = d.createElement("action"); e.setAttribute("name", "print"); toolBar.insertBefore(e, toolBar.firstChild()); QAction *action = new QAction(QIcon::fromTheme("view-refresh"), "Reload", doc); doc->actionCollection()->addAction("reload", action); QObject::connect(action, SIGNAL(triggered(bool)), dummy, SLOT(reload())); doc->actionCollection()->setDefaultShortcut(action, Qt::Key_F5); QAction *bench = new QAction(QIcon(), "Benchmark...", doc); doc->actionCollection()->addAction("debugDoBenchmark", bench); QObject::connect(bench, SIGNAL(triggered(bool)), dummy, SLOT(doBenchmark())); QAction *kprint = new QAction(QIcon::fromTheme("document-print"), "Print", doc); doc->actionCollection()->addAction("print", kprint); QObject::connect(kprint, SIGNAL(triggered(bool)), doc->browserExtension(), SLOT(print())); kprint->setEnabled(true); KToggleAction *ta = new KToggleAction(QIcon::fromTheme("edit-rename"), "Navigable", doc); doc->actionCollection()->addAction("navigable", ta); ta->setShortcuts(QList<QKeySequence>()); ta->setChecked(doc->isCaretMode()); QWidget::connect(ta, SIGNAL(toggled(bool)), dummy, SLOT(toggleNavigable(bool))); ta = new KToggleAction(QIcon::fromTheme("document-properties"), "Editable", doc); doc->actionCollection()->addAction("editable", ta); ta->setShortcuts(QList<QKeySequence>()); ta->setChecked(doc->isEditable()); QWidget::connect(ta, SIGNAL(toggled(bool)), dummy, SLOT(toggleEditable(bool))); toplevel->guiFactory()->addClient(doc); doc->setJScriptEnabled(true); doc->setJavaEnabled(true); doc->setPluginsEnabled(true); doc->setURLCursor(QCursor(Qt::PointingHandCursor)); a.setActiveWindow(doc->widget()); QWidget::connect(doc, SIGNAL(setWindowCaption(QString)), doc->widget()->topLevelWidget(), SLOT(setCaption(QString))); doc->widget()->show(); toplevel->show(); doc->view()->viewport()->show(); doc->view()->widget()->show(); int ret = a.exec(); return ret; }
bool PluginPart::openURL(const KURL &url) { closeURL(); kdDebug(1432) << "-> PluginPart::openURL" << endl; m_url = url; QString surl = url.url(); QString smime = _extension->urlArgs().serviceType; bool reload = _extension->urlArgs().reload; bool embed = false; bool post = _extension->urlArgs().doPost(); // handle arguments QStringList argn, argv; QStringList::Iterator it = _args.begin(); for(; it != _args.end();) { int equalPos = (*it).find("="); if(equalPos > 0) { QString name = (*it).left(equalPos).upper(); QString value = (*it).mid(equalPos + 1); if(value[0] == '"' && value[value.length() - 1] == '"') value = value.mid(1, value.length() - 2); kdDebug(1432) << "name=" << name << " value=" << value << endl; if(!name.isEmpty()) { // hack to pass view mode from khtml if(name == "__KHTML__PLUGINEMBED") { embed = true; kdDebug(1432) << "__KHTML__PLUGINEMBED found" << endl; } else { argn << name; argv << value; } } } it++; } if(surl.isEmpty()) { kdDebug(1432) << "<- PluginPart::openURL - false (no url passed to nsplugin)" << endl; return false; } // status messages emit setWindowCaption(url.prettyURL()); emit setStatusBarText(i18n("Loading Netscape plugin for %1").arg(url.prettyURL())); // create plugin widget NSPluginInstance *inst = _loader->newInstance(_canvas, surl, smime, embed, argn, argv, kapp->dcopClient()->appId(), _callback->objId(), reload, post, _extension->urlArgs().postData); if(inst) { _widget = inst; } else { QLabel *label = new QLabel(i18n("Unable to load Netscape plugin for %1").arg(url.url()), _canvas); label->setAlignment(AlignCenter | WordBreak); _widget = label; } _widget->resize(_canvas->width(), _canvas->height()); _widget->show(); kdDebug(1432) << "<- PluginPart::openURL = " << (inst != 0) << endl; return inst != 0L; }
int main(int argc, char *argv[]) { KCmdLineOptions options; options.add("+file", ki18n("URL to open")); KCmdLineArgs::init(argc, argv, "testkhtml", 0, ki18n("Testkhtml"), "1.0", ki18n("a basic web browser using the KHTML library")); KCmdLineArgs::addCmdLineOptions(options); KApplication a; KCmdLineArgs *args = KCmdLineArgs::parsedArgs( ); if ( args->count() == 0 ) { KCmdLineArgs::usage(); ::exit( 1 ); } new KHTMLGlobal; KXmlGuiWindow *toplevel = new KXmlGuiWindow(); KHTMLPart *doc = new KHTMLPart( toplevel, toplevel, KHTMLPart::BrowserViewGUI ); Dummy *dummy = new Dummy( doc ); QObject::connect( doc->browserExtension(), SIGNAL(openUrlRequest(KUrl,KParts::OpenUrlArguments,KParts::BrowserArguments)), dummy, SLOT(slotOpenURL(KUrl,KParts::OpenUrlArguments,KParts::BrowserArguments)) ); QObject::connect( doc, SIGNAL(completed()), dummy, SLOT(handleDone()) ); if (args->url(0).url().right(4).toLower() == ".xml") { KParts::OpenUrlArguments args(doc->arguments()); args.setMimeType("text/xml"); doc->setArguments(args); } doc->openUrl( args->url(0) ); toplevel->setCentralWidget( doc->widget() ); toplevel->resize( 800, 600); QDomDocument d = doc->domDocument(); QDomElement viewMenu = d.documentElement().firstChild().childNodes().item( 2 ).toElement(); QDomElement e = d.createElement( "action" ); e.setAttribute( "name", "debugRenderTree" ); viewMenu.appendChild( e ); e = d.createElement( "action" ); e.setAttribute( "name", "debugDOMTree" ); viewMenu.appendChild( e ); e = d.createElement( "action" ); e.setAttribute( "name", "debugDoBenchmark" ); viewMenu.appendChild( e ); QDomElement toolBar = d.documentElement().firstChild().nextSibling().toElement(); e = d.createElement( "action" ); e.setAttribute( "name", "editable" ); toolBar.insertBefore( e, toolBar.firstChild() ); e = d.createElement( "action" ); e.setAttribute( "name", "navigable" ); toolBar.insertBefore( e, toolBar.firstChild() ); e = d.createElement( "action" ); e.setAttribute( "name", "reload" ); toolBar.insertBefore( e, toolBar.firstChild() ); e = d.createElement( "action" ); e.setAttribute( "name", "print" ); toolBar.insertBefore( e, toolBar.firstChild() ); KAction *action = new KAction(KIcon("view-refresh"), "Reload", doc ); doc->actionCollection()->addAction( "reload", action ); QObject::connect(action, SIGNAL(triggered(bool)), dummy, SLOT(reload())); action->setShortcut(Qt::Key_F5); KAction *bench = new KAction( KIcon(), "Benchmark...", doc ); doc->actionCollection()->addAction( "debugDoBenchmark", bench ); QObject::connect(bench, SIGNAL(triggered(bool)), dummy, SLOT(doBenchmark())); KAction *kprint = new KAction(KIcon("document-print"), "Print", doc ); doc->actionCollection()->addAction( "print", kprint ); QObject::connect(kprint, SIGNAL(triggered(bool)), doc->browserExtension(), SLOT(print())); kprint->setEnabled(true); KToggleAction *ta = new KToggleAction( KIcon("edit-rename"), "Navigable", doc ); doc->actionCollection()->addAction( "navigable", ta ); ta->setShortcuts( KShortcut() ); ta->setChecked(doc->isCaretMode()); QWidget::connect(ta, SIGNAL(toggled(bool)), dummy, SLOT(toggleNavigable(bool))); ta = new KToggleAction( KIcon("document-properties"), "Editable", doc ); doc->actionCollection()->addAction( "editable", ta ); ta->setShortcuts( KShortcut() ); ta->setChecked(doc->isEditable()); QWidget::connect(ta, SIGNAL(toggled(bool)), dummy, SLOT(toggleEditable(bool))); toplevel->guiFactory()->addClient( doc ); doc->setJScriptEnabled(true); doc->setJavaEnabled(true); doc->setPluginsEnabled( true ); doc->setURLCursor(QCursor(Qt::PointingHandCursor)); a.setTopWidget(doc->widget()); QWidget::connect(doc, SIGNAL(setWindowCaption(QString)), doc->widget()->topLevelWidget(), SLOT(setCaption(QString))); doc->widget()->show(); toplevel->show(); doc->view()->viewport()->show(); doc->view()->widget()->show(); int ret = a.exec(); return ret; }