Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Parte da integração profunda disponível para VSPackages de controle do código-fonte é a capacidade de exibir seus próprios glifos para indicar o status dos itens sob controle do código-fonte.
Níveis de controlo de glifos
Um glifo de estado é um ícone que indica o status atual de um item quando exibido, por exemplo, no Gerenciador de Soluções ou no Modo de Exibição de Classe. Um VSPackage de controle de origem pode exercer dois níveis de controle de glifo. Ele pode limitar a escolha de glifos a um conjunto predefinido de glifos fornecidos pelo IDE do Visual Studio ou pode definir um conjunto personalizado de glifos a serem exibidos.
Conjunto padrão de glifos
Para determinar os glifos de estado associados a um item no Gerenciador de Soluções, um projeto solicita o glifo de estado do controle do código-fonte usando o GetSccGlyph. Um VSPackage de controle de origem pode decidir manter a escolha de glifos limitada a glifos predefinidos fornecidos pelo IDE. Nesse caso, o VSPackage passa de volta uma matriz de valores que representam as enumerações de glifo que são definidas em vsshell.idl. Para obter mais informações, consulte VsStateIcon. Este é um conjunto predefinido de glifos definido pelo IDE, como um cadeado para o glifo com check-in e uma marca de seleção para o glifo com check-out.
Conjunto personalizado de glifos
Um VSPackage de controle de origem pode usar seus próprios glifos para uma aparência única quando é instalado. Quando um novo VSPackage de controlo de origem se encontra ativo, deve poder começar a usar os seus próprios glifos, mesmo que um VSPackage de controlo de origem anterior ainda esteja carregado, mas inativo. Nesse modo, o controle de origem VSPackage ainda pode usar os ícones existentes para manter uma aparência consistente com o Visual Studio, se ele escolher.
O SVsSccManager serviço suporta uma interface, IVsSccGlyphs, que o VSPackage pode opcionalmente implementar e que será solicitado pelo IDE. Quando a IDE faz uma solicitação, o Visual Studio, por sua vez, tentará obter essa interface do VSPackage de controlo de código-fonte atualmente registado. Se a interface existir no VSPackage registrado, a solicitação do IDE para glifos personalizados será bem-sucedida; caso contrário, o IDE do Visual Studio usa seu conjunto padrão de glifos.
O GetCustomGlyphList método é usado pelo Visual Studio para obter uma lista de imagens mostrando vários estados de controle do código-fonte. O controle de origem VSPackage retorna ao IDE um identificador para a lista de imagens para seus glifos personalizados. O IDE faz uma cópia da lista de imagens neste momento e a usa posteriormente para escolher os glifos a serem exibidos. Se a nova interface não for suportada ou o IVsSccGlyphs::GetCustomGlyphList método retornar E_NOTIMPL, o IDE obterá seus glifos da lista padrão de glifos fornecida pelo Visual Studio.