Eventi del buffer di testo nell'API legacy
L'oggetto del buffer di testo genera vari eventi che consentono di rispondere alle diverse situazioni.
Quando si utilizza le API legacy, è necessario implementare le interfacce seguenti per ricevere la notifica delle modifiche al buffer di testo. Esporre le interfacce al buffer di testo tramite l'interfaccia di IConnectionPointContainer nel buffer di testo per ricevere la notifica delle modifiche di riga del buffer. Per ulteriori informazioni, vedere Procedura: Registrazione di eventi del buffer di testo con le API legacy. Nel caso di IVsTextStreamEvents o interfacce di IVsTextLinesEvents , le modifiche vengono restituite in una o coordinate bidimensionale, rispettivamente.
Interfacce del buffer di testo
Segue le interfacce implementate dall'oggetto del buffer di testo.
Interfaccia |
Descrizione |
---|---|
Abilita la creazione delle azioni composte ovvero azioni che sono raggruppate in una singola unità annulla/ripristina di annullamento). |
|
Abilita la persistenza dei dati del documento gestiti dal buffer di testo. |
|
Fornisce servizi di base; utilizzato da più client. |
|
Fornisce leggono e scrivono le funzionalità utilizzando le coordinate bidimensionali. Eredita da IVsTextBuffer. |
|
Fornisce velocemente, orientato al flusso, un accesso sequenziale al testo nel buffer. |
|
Fornisce leggono e scrivono le funzionalità utilizzando le coordinate unidimensionali. Eredita da IVsTextBuffer. |
|
Fornisce l'accesso a una raccolta generica di proprietà. La proprietà più importante è il nome, o moniker, del buffer. È possibile archiviare diventi proprietaria di dati casuali nel buffer con questa interfaccia creando un GUID e utilizzando come chiave. |
|
supporta i punti di connessione per gli eventi. |
Interfacce eventi del buffer di testo
Segue le interfacce per la notifica degli eventi del buffer di testo.
Interfaccia |
Descrizione |
---|---|
Notifica ai client quando un nuovo servizio di linguaggio è associato a un buffer di testo. |
|
Notifica ai client quando un buffer di testo viene inizializzato e quando vengono apportate modifiche ai dati nel buffer di testo. |
|
Notifica ai client delle modifiche al buffer di testo sottostante nelle coordinate unidimensionali. |
|
Notifica ai client delle modifiche al buffer di testo sottostante nelle coordinate bidimensionali. |
|
Notifica ai client delle modifiche ai dati utente. |
|
Notifica ai client dell'ultimo spostamento di commit per attivare l'evento e fornisce l'intervallo di testo modificato. L'interfaccia di IVsPreliminaryTextChangeCommitEvents non viene generata in risposta ai controlli di annullamento o ripristino. Gli eventi vengono generati solo per i buffer con un amministratore di annullamento. IVsPreliminaryTextChangeCommitEvents viene generato prima di altri eventi, come elenco la riformattazione del listato, per garantire gli altri eventi non modifica il testo prima di applicare le modifiche. Il package VS deve monitorare l'interfaccia di IVsPreliminaryTextChangeCommitEvents o l'interfaccia di IVsFinalTextChangeCommitEvents , ma non entrambe. |
|
Notifica ai client dell'ultimo spostamento di commit per attivare l'evento e fornisce l'intervallo di testo modificato. L'interfaccia di IVsFinalTextChangeCommitEvents non viene generata in risposta ai controlli di annullamento o ripristino. Gli eventi vengono generati solo per i buffer con un amministratore di annullamento. IVsFinalTextChangeCommitEvents deve essere utilizzata solo dai servizi di linguaggio o da altri oggetti che dispongono di controllo completo della modifica. Il package VS deve monitorare l'interfaccia di IVsPreliminaryTextChangeCommitEvents o l'interfaccia di IVsFinalTextChangeCommitEvents , ma non entrambe. |
Vedere anche
Attività
Procedura: Registrazione di eventi del buffer di testo con le API legacy