EditorFactory.CreateEditorInstance(UInt32, String, String, IVsHierarchy, UInt32, IntPtr, IntPtr, IntPtr, String, Guid, Int32) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Esse método verifica se o arquivo especificado é um que o editor suporta e, nesse caso, cria o editor de texto principal e o seu serviço de linguagem associado a ele. Para descobrir se o arquivo é compatível com o editor, ele executa a seguinte verificação: Se tudo isso for verdadeiro, ele passará para a próxima etapa, que é obter um buffer IVsTextLines e configurá-lo da seguinte maneira: Por fim, ele chama CreateEditorView para criar o docView.
public:
virtual int CreateEditorInstance(System::UInt32 createDocFlags, System::String ^ moniker, System::String ^ physicalView, Microsoft::VisualStudio::Shell::Interop::IVsHierarchy ^ pHier, System::UInt32 itemid, IntPtr existingDocData, [Runtime::InteropServices::Out] IntPtr % docView, [Runtime::InteropServices::Out] IntPtr % docData, [Runtime::InteropServices::Out] System::String ^ % editorCaption, [Runtime::InteropServices::Out] Guid % cmdUI, [Runtime::InteropServices::Out] int % cancelled);
public virtual int CreateEditorInstance (uint createDocFlags, string moniker, string physicalView, Microsoft.VisualStudio.Shell.Interop.IVsHierarchy pHier, uint itemid, IntPtr existingDocData, out IntPtr docView, out IntPtr docData, out string editorCaption, out Guid cmdUI, out int cancelled);
abstract member CreateEditorInstance : uint32 * string * string * Microsoft.VisualStudio.Shell.Interop.IVsHierarchy * uint32 * nativeint * nativeint * nativeint * string * Guid * int -> int
override this.CreateEditorInstance : uint32 * string * string * Microsoft.VisualStudio.Shell.Interop.IVsHierarchy * uint32 * nativeint * nativeint * nativeint * string * Guid * int -> int
Public Overridable Function CreateEditorInstance (createDocFlags As UInteger, moniker As String, physicalView As String, pHier As IVsHierarchy, itemid As UInteger, existingDocData As IntPtr, ByRef docView As IntPtr, ByRef docData As IntPtr, ByRef editorCaption As String, ByRef cmdUI As Guid, ByRef cancelled As Integer) As Integer
Parâmetros
- createDocFlags
- UInt32
Sinalizadores que definem as condições sob as quais criar o editor principal.
- moniker
- String
Forma de cadeia de caracteres do identificador do moniker do documento no sistema do projeto. No caso de documentos que são arquivos, esse é sempre o caminho para o arquivo. Esse parâmetro também pode ser usado para especificar documentos que não são arquivos. Por exemplo, em um projeto orientado a banco de dados, esse parâmetro pode conter uma cadeia de caracteres que se refere a registros em uma tabela.
- physicalView
- String
Nome da exibição física.
- pHier
- IVsHierarchy
Um objeto IVsHierarchy.
- itemid
- UInt32
Identificador de item da instância do editor principal.
- existingDocData
- IntPtr
Deve ser o docData objeto registrado na tabela de documentos em execução (Rdt). Esse parâmetro é usado para determinar se um buffer de documento (objeto de dados de documento) já foi criado. Quando uma fábrica de editor é solicitada a criar uma exibição secundária, esse parâmetro não NULL indicará que não há nenhum buffer de documento.
- docView
- IntPtr
Objeto de exibição de documento. Retorna NULL se um editor externo existe, caso contrário, retorna a exibição do documento.
- docData
- IntPtr
Objeto de dados do documento. Retorna o buffer do documento.
- editorCaption
- String
Legenda inicial definida pelo editor de documento para a janela do documento. Normalmente, essa é uma cadeia de caracteres entre colchetes, como "[Form]". Esse valor é passado como um parâmetro de entrada para o CreateDocumentWindow(UInt32, String, IVsUIHierarchy, UInt32, IntPtr, IntPtr, Guid, String, Guid, IServiceProvider, String, String, Int32[], IVsWindowFrame) método. Se o arquivo for [ReadOnly], a legenda será definida durante a carga do arquivo.
- cmdUI
- Guid
Retorna o GUID da interface do usuário do comando. Esse GUID está ativo quando este editor é ativado. Qualquer elemento de interface do usuário que esteja visível no editor deve usar esse GUID. Esse GUID é usado no arquivo. CTC na DLL satélite onde ele indica quais menus e barras de ferramentas devem ser exibidos quando o documento estiver ativo.
- cancelled
- Int32
Enumeração do tipo __VSEDITORCREATEDOCWIN . Esses sinalizadores são passados para o CreateDocumentWindow(UInt32, String, IVsUIHierarchy, UInt32, IntPtr, IntPtr, Guid, String, Guid, IServiceProvider, String, String, Int32[], IVsWindowFrame) método. Esse valor é definido como 0 na EditorFactory implementação.
Retornos
Se o método for bem-sucedido, retornará S_OK. Se falhar, retornará um código de erro.
Implementações
Comentários
Para obter um exemplo de como usar esse método, consulte Walkthrough: Criando um editor de núcleo e registrando um tipo de arquivo do editor.