Glyph-besturingselement (broncodebeheer VSPackage)

Een deel van de diepe integratie die beschikbaar is voor broncodebeheer VSPackages is de mogelijkheid om hun eigen glyphs weer te geven om de status van items onder broncodebeheer aan te geven.

Beheerniveaus voor glyphs

Een statuspictogram is een pictogram dat de huidige status van een item aangeeft wanneer dit wordt weergegeven, bijvoorbeeld in Solution Explorer of in de klasseweergave. Een VSPackage voor bronbeheer kan twee niveaus van glyph-besturing uitoefenen. Het kan de keuze van glyphs beperken tot een vooraf gedefinieerde set glyphs die wordt geleverd door de Visual Studio IDE, of het kan een aangepaste set glyphs definiëren die moet worden weergegeven.

Standaardset glyphen

Om de status-glyphs te bepalen die zijn gekoppeld aan een item in Solution Explorer, vraagt een project de status-glyph aan bij broncodebeheer met behulp van de GetSccGlyph. Een bronbeheer VSPackage kan besluiten om de keuze van glyphs beperkt te houden tot vooraf gedefinieerde glyphs die worden geleverd door de IDE. In dit geval geeft vsPackage een matrix met waarden door die de glyph-opsommingen vertegenwoordigen die zijn gedefinieerd in vsshell.idl. Zie VsStateIcon voor meer informatie. Dit is een vooraf gedefinieerde set glyphs die door de IDE is ingesteld, zoals een hangslot voor het ingecheckte symbool en een vinkje voor het uitgecheckte symbool.

Aangepaste set glyphen

Een versiebeheersysteem VSPackage kan zijn eigen pictogrammen gebruiken voor een uniek uiterlijk wanneer het is geïnstalleerd. Wanneer een nieuw bronbeheer VSPackage actief is, moet het zijn eigen glyphs kunnen gebruiken, zelfs als een eerder bronbeheer VSPackage nog steeds is geladen, maar inactief is. In deze modus kan het broncodebeheer VSPackage nog steeds de bestaande pictogrammen gebruiken om een uiterlijk consistent te houden met Visual Studio als deze ervoor kiest.

De SVsSccManager service ondersteunt een interface, IVsSccGlyphs, die de VSPackage optioneel kan implementeren en die door de IDE kan worden opgevraagd. Wanneer de IDE een verzoek doet, probeert Visual Studio op zijn beurt deze interface te verkrijgen van het momenteel geregistreerde versiebeheer VSPackage. Als de interface bestaat in de geregistreerde VSPackage, slaagt de IDE-aanvraag voor aangepaste glyphs; anders gebruikt visual Studio IDE de standaardset glyphs.

De GetCustomGlyphList methode wordt door Visual Studio gebruikt om een lijst met afbeeldingen te verkrijgen met verschillende statussen voor broncodebeheer. Het bronbeheer VSPackage geeft aan de IDE een verwijzing naar de afbeeldingslijst voor zijn aangepaste symbolen. De IDE maakt op dit moment een kopie van de lijst met afbeeldingen en gebruikt deze later om de weer te geven glyphs te kiezen. Als de nieuwe interface niet wordt ondersteund of als de methode IVsSccGlyphs::GetCustomGlyphListE_NOTIMPL retourneert, haalt de IDE de glyphs uit de standaardlijst met glyphs die door Visual Studio wordt geleverd.