本文整理汇总了C++中ktexteditor::Document::createView方法的典型用法代码示例。如果您正苦于以下问题:C++ Document::createView方法的具体用法?C++ Document::createView怎么用?C++ Document::createView使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ktexteditor::Document
的用法示例。
在下文中一共展示了Document::createView方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: createView
KTextEditor::View* HtmlEditor::createView( QWidget* parent )
{
KTextEditor::Document *document = mEditor->createDocument( parent );
bool result = document->setHighlightingMode( "html" );
if ( result ) {
kDebug() << "Syntax highlighting enabled";
}
KTextEditor::View *view = document->createView( parent );
QMenu *menu = view->defaultContextMenu();
KTextEditor::ConfigInterface *interface = qobject_cast< KTextEditor::ConfigInterface* >( view );
if ( interface ) {
KAction *actWordWrap = new KAction( i18n( "Dynamic Word Wrap" ), view );
actWordWrap->setCheckable( true );
connect( actWordWrap, SIGNAL(triggered(bool)), this, SLOT(toggleWordWrap()) );
KAction *actLineNumber = new KAction( i18n("Show line numbers"), view );
actLineNumber->setCheckable( true );
connect( actLineNumber, SIGNAL(triggered(bool)), this, SLOT(toggleLineNumber()) );
QMenu *options = new QMenu( i18n( "Options" ), qobject_cast< QWidget* >( view ) );
options->addAction( actWordWrap );
options->addAction( actLineNumber );
menu->addSeparator();
menu->addMenu( options );
interface->setConfigValue( "dynamic-word-wrap", true );
actWordWrap->setChecked( true );
}
view->setContextMenu( menu );
return view;
}
示例2: testCompletionRangeSecondLine
void ModelTest::testCompletionRangeSecondLine()
{
KTextEditor::Document* doc = KTextEditor::Editor::instance()->createDocument(0);
doc->setText("body{color:red;}\nbody{font-w:normal;}");
// 01234567890123456789
KTextEditor::View* view = doc->createView(0);
CodeCompletionModel* model = new CodeCompletionModel(doc);
KTextEditor::Cursor position(1, 9);
KTextEditor::Range range = model->completionRange(view, position);
kDebug() << range << doc->text(range);
QCOMPARE(range, KTextEditor::Range(1, 5, 1, 11));
QCOMPARE(doc->text(range), QString("font-w"));
delete doc;
}
示例3: openKDocument
KTextEditor::View* EditorTabWidget::openKDocument(KURL url)
{
QWidget* tab = new QWidget(this);
QVBoxLayout *lay = new QVBoxLayout(tab, 1, 1);
KTextEditor::Document *doc =
KTextEditor::EditorChooser::createDocument(
0L, "KTextEditor::Document");
if(!doc->openURL(url)) {
delete tab;
delete doc;
return NULL;
}
KTextEditor::View * view = doc->createView(tab);
lay->addWidget(view);
insertTab(tab, url.fileName());
setCurrentPage(count()-1);
return view;
}
示例4: completionItems
void ModelTest::completionItems()
{
KTextEditor::Document* doc = KTextEditor::Editor::instance()->createDocument(0);
QFETCH(QString, text);
QFETCH(QString, type);
KTextEditor::Cursor position;
QString textBeforeCursor = text.left(text.indexOf('|'));
position.setLine(textBeforeCursor.count('\n'));
position.setColumn(textBeforeCursor.mid(textBeforeCursor.lastIndexOf('\n')).length());
text.replace('|', "");
QTemporaryFile file("XXXXXXXXX."+type);
file.open();
file.write(text.toUtf8());
file.close();
doc->openUrl(KUrl("file://"+QDir::current().absoluteFilePath(file.fileName())));
QCOMPARE(doc->mimeType(), QString("text/")+type);
KTextEditor::View* view = doc->createView(0);
CodeCompletionModel* model = new CodeCompletionModel(doc);
QCOMPARE(model->rowCount(), 0);
model->completionInvoked(view, model->completionRange(view, position), KTextEditor::CodeCompletionModel::ManualInvocation);
QStringList completions;
for (int i=0; i < model->rowCount(); ++i) {
completions << model->data(model->index(i, CodeCompletionModel::Name), Qt::DisplayRole).toString();
}
kDebug() << "completions" << completions;
QFETCH(QStringList, result);
foreach (const QString &i, result) {
QVERIFY(completions.contains(i));
}
示例5: connect
void
FileManager::showInEditor(const KURL& url)
{
for (std::list<ManagedFileInfo*>::iterator mfi = files.begin();
mfi != files.end(); ++mfi)
if ((*mfi)->getFileURL() == url)
{
if (!(*mfi)->getEditor())
{
// The file has not yet been loaded, so we create an editor for
// it.
KTextEditor::Document* document;
if (!(document = KTextEditor::EditorChooser::createDocument
(viewStack, "KTextEditor::Document", "Editor")))
{
KMessageBox::error
(viewStack,
i18n("A KDE text-editor component could not "
"be found; please check your KDE "
"installation."));
return;
}
if (!editorConfigured)
{
if (!KTextEditor::configInterface(document))
{
KMessageBox::error
(viewStack,
i18n("You have selected a KDE Editor component "
"that is not powerful enough for "
"TaskJuggler. "
"Please select the 'Embedded Advanced Text "
"Editor' component in the KDE Control "
"Panel."));
return;
}
KTextEditor::configInterface(document)->readConfig(config);
editorConfigured = true;
}
KTextEditor::View* editor =
document->createView(viewStack);
viewStack->addWidget(editor);
(*mfi)->setEditor(editor);
editor->setMinimumSize(400, 200);
editor->setSizePolicy(QSizePolicy(QSizePolicy::Maximum,
QSizePolicy::Maximum, 0, 85,
editor->sizePolicy()
.hasHeightForWidth()));
document->openURL(url);
document->setReadWrite(true);
document->setModified(false);
// Signal to update the file-modified status
connect(document, SIGNAL(textChanged()),
*mfi, SLOT(setModified()));
connect(document,
SIGNAL(modifiedOnDisc(Kate::Document*, bool,
unsigned char)),
*mfi,
SLOT(setModifiedOnDisc(Kate::Document*, bool,
unsigned char)));
/* Remove some actions of the editor that we don't want to
* show in the menu/toolbars */
KActionCollection* ac = editor->actionCollection();
if (ac->action("file_print"))
ac->remove(ac->action("file_print"));
if (ac->action("view_folding_markers"))
ac->action("view_folding_markers")->
setShortcut(KShortcut());
if (ac->action("view_border"))
ac->action("view_border")->setShortcut(KShortcut());
if (ac->action("view_line_numbers"))
ac->action("view_line_numbers")->setShortcut(KShortcut());
if (ac->action("view_dynamic_word_wrap"))
ac->action("view_dynamic_word_wrap")->
setShortcut(KShortcut());
/* KActionPtrList actionList =
editor->actionCollection()->actions();
for (KActionPtrList::iterator it = actionList.begin();
it != actionList.end(); ++it)
{
printf("** Action found: %s\n", (*it)->name());
}*/
}
viewStack->raiseWidget((*mfi)->getEditor());
browser->clearSelection();
QListViewItem* lvi = (*mfi)->getBrowserEntry();
if (lvi)
{
browser->setCurrentItem(lvi);
lvi->setSelected(true);
}
break;
}