다음을 통해 공유


문자 모양 제어(소스 제어 VSPackage)

소스 제어 VSPackages에 사용할 수 있는 심층 통합의 일부는 소스 제어에 있는 항목의 상태를 나타내기 위해 자체 문자 모양을 표시하는 기능입니다.

문자 모양 제어 수준

상태 문자 모양은 표시될 때 항목의 현재 상태를 나타내는 아이콘입니다(예: 솔루션 탐색기 또는 클래스 뷰). 소스 제어 VSPackage는 두 가지 수준의 문자 모양 제어를 실행할 수 있습니다. 문자 모양 선택을 Visual Studio IDE에서 제공하는 미리 정의된 문자 모양 집합으로 제한하거나 표시할 사용자 지정 문자 모양 집합을 정의할 수 있습니다.

기본 문자 모양 집합

솔루션 탐색기의 항목과 연결된 상태 문자 모양을 확인하기 위해 프로젝트에서 GetSccGlyph을 사용하여 소스 제어에서 상태 문자 모양을 요청합니다. 소스 제어 VSPackage는 IDE에서 제공하는 미리 정의된 문자 모양으로 선택한 문자 모양을 제한하도록 결정할 수 있습니다. 이 경우 VSPackage는 vsshell.idl에 정의된 문자 모양 열거형을 나타내는 값 배열을 다시 전달합니다. 자세한 내용은 VsStateIcon를 참조하세요. 체크인된 문자 모양의 경우 자물쇠, 체크아웃된 문자 모양의 경우 확인 표시와 같이 IDE에서 설정한 미리 정의된 문자 모양 집합입니다.

사용자 지정 문자 모양 집합

소스 제어 VSPackage는 설치 시 고유한 모양과 느낌을 위해 자체 문자 모양을 사용할 수 있습니다. 새 소스 제어 VSPackage가 활성화되면 이전 소스 제어 VSPackage가 여전히 로드되지만 비활성 상태인 경우에도 자체 문자 모양을 사용하여 시작할 수 있어야 합니다. 이 모드에서 소스 제어 VSPackage는 선택하는 경우 Visual Studio와 일치하는 모양을 유지하기 위해 기존 아이콘을 계속 사용할 수 있습니다.

SVsSccManager 서비스는 VSPackage가 선택적으로 구현할 수 있고 IDE에서 요청할 수 있는 IVsSccGlyphs 인터페이스를 지원합니다. IDE가 요청을 하면 Visual Studio는 현재 등록된 소스 제어 VSPackage에서 이 인터페이스를 가져옵니다. 등록된 VSPackage에 인터페이스가 있으면 사용자 지정 문자 모양에 대한 IDE의 요청이 성공합니다. 인터페이스가 없으면 Visual Studio IDE는 기본 문자 모양 집합을 사용합니다.

GetCustomGlyphList 메서드는 Visual Studio에서 다양한 소스 제어 상태를 보여 주는 이미지 목록을 가져오는 데 사용됩니다. 소스 제어 VSPackage는 사용자 지정 문자 모양의 이미지 목록에 대한 핸들을 IDE로 반환합니다. IDE는 이 시점에서 이미지 목록의 복사본을 만들고 나중에 이 복사본을 사용하여 표시할 문자 모양을 선택합니다. 새 인터페이스가 지원되지 않거나 IVsSccGlyphs::GetCustomGlyphList 메서드가 E_NOTIMPL을 반환하는 경우 IDE는 Visual Studio에서 제공하는 문자 모양의 기본 목록에서 해당 문자 모양을 가져옵니다.