class EE::UI::Doc::TextDocument::Client

#include <textdocument.hpp>

class Client {
public:
    // construction

    virtual ~Client();

    // methods

    virtual void onDocumentLoaded(TextDocument*);
    virtual void onDocumentTextChanged(const DocumentContentChange&) = 0;
    virtual void onDocumentUndoRedo(const UndoRedo& eventType) = 0;
    virtual void onDocumentCursorChange(const TextPosition&) = 0;
    virtual void onDocumentInterestingCursorChange(const TextPosition&);
    virtual void onDocumentSelectionChange(const TextRange&) = 0;
    virtual void onDocumentLineCountChange(const size_t& lastCount, const size_t& newCount) = 0;
    virtual void onDocumentLineChanged(const Int64& lineIndex) = 0;
    virtual void onDocumentSaved(TextDocument*) = 0;
    virtual void onDocumentClosed(TextDocument*) = 0;
    virtual void onDocumentDirtyOnFileSystem(TextDocument*) = 0;
    virtual void onDocumentMoved(TextDocument*) = 0;
    virtual void onDocumentReloaded(TextDocument* doc);
    virtual void onDocumentSyntaxDefinitionChange(const SyntaxDefinition&);
    virtual void onDocumentLineMove(const Int64&, const Int64&);
    virtual TextRange getVisibleRange() const;
};