> On May 22, 2015, at 12:46 AM, Filippo Cucchetto <[email protected]>
> wrote:
>
> Hi,
> i'm developing a QtCreator plugin for the Nim programming language here
> (https://github.com/filcuc/QtCreatorNimEditor). Actually i've syntax
> highlighting and indentation and i would like to start adding auto completion.
> The Nim programming language already provides a server app (nimsuggest)
> to which i can request suggestions/info passing the current file and cursor
> position. This means that i don't need to create a Nim parser and AST.
> What are the minimum steps for showing up the QtCreator completion popup and
> for filling in the the menu entries?
> I've already gave a look to both the QmlEditor and CppEditor plugins so what
> i need is just the list of classes i should implement and the most important
> functions (maybe with an overall vision about how they relate to each other).
>
> Thank you :)
>
The simplest example that you can find, is probably ProFileEditor, which
provides completion simply based on a fixed list of keywords.
In ProFileEditorFactory constructor:
ProFileCompletionAssistProvider *pcap = new
ProFileCompletionAssistProvider;
setCompletionAssistProvider(pcap);
ProFileCompletionAssistProvider is a
class ProFileCompletionAssistProvider : public
TextEditor::CompletionAssistProvider
and mainly provides an instance of
class TEXTEDITOR_EXPORT KeywordsCompletionAssistProcessor : public
IAssistProcessor
which gets the information about the document and position through an
“AssistInterface” and in turn provides an instance of
class TEXTEDITOR_EXPORT GenericProposal : public IAssistProposal
which mainly consists of a list of AssistProposalItems
:D
Br, Eike
> --
> Filippo Cucchetto
> _______________________________________________
> Qt-creator mailing list
> [email protected]
> http://lists.qt-project.org/mailman/listinfo/qt-creator
--
Eike Ziller, Senior Software Engineer - The Qt Company GmbH
The Qt Company GmbH, Rudower Chaussee 13, D-12489 Berlin
Geschäftsführer: Mika Pälsi, Juha Varelius, Tuula Haataja
Sitz der Gesellschaft: Berlin, Registergericht: Amtsgericht Charlottenburg, HRB
144331 B
_______________________________________________
Qt-creator mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/qt-creator