関連サービスとインターフェイス (ソース管理 VSPackage)
このセクションでは、Visual Studio SDK でのソース管理 VSPackage 関連のインターフェイスがすべて一覧表示されます。 ソース管理 VSPackage では、これらのインターフェイスの一部を実装し、別のインターフェイスを使用してソース管理タスクを実行します。
ソース管理 VSPackage によりソース管理 VSPackage 用に実装されるインターフェイス
次のインターフェイスが Visual Studio SDK に記述されており、ソース管理 VSPackage では、目的の機能セットに応じて、それらのサブセットを実装します。 一部のインターフェイスには、必要に応じてマークが付けられ、すべてのソース管理 VSPackage で実装される必要があります。
パッケージで実装されないインターフェイスについては、Visual Studio により既定の実装が行われます。 既定の実装は、VSPackage が登録されておらず、プロジェクトが制御されない場合に対して設計されていることに注意してください。 適切に作成されたソース管理 VSPackage では、必要なインターフェイスをすべて実装しており、これらのインターフェイスの既定の実装に委ねることはありません。
ソース管理 VSPackage では、次のインターフェイスの一部またはすべてをカプセル化するプライベート サービスを実装する必要があります。
インターフェイスは次のとおりです。
必須: このインターフェイスは、適切なエンティティ (ソース管理 VSPackage、ソース管理スタブ、プロジェクト) で実装する必要があります。
推奨: このインターフェイスは、エンティティで実装することが望ましく、実装しない場合は、ソース管理機能が制限される可能性があります。
省略可能: このインターフェイスは、より豊富な機能セットを得るためにエンティティで実装できます。
インターフェイス | 目的 | 実装先 | 実装 |
---|---|---|---|
IVsQueryEditQuerySave2 | このインターフェイスは、ファイルを変更または保存する前に、エディターによって呼び出されます。 ソース管理 VSPackage では、ファイルをチェックアウトしたり、チェックアウトが失敗した場合には操作を拒否したりできます。 | ソース管理 VSPackage | 推奨 |
IVsSccManager2 | このインターフェイスは、プロジェクトの基本的なソース管理機能を提供します。たとえば、ソース管理を使用したプロジェクトの登録と登録解除や、基本的なソース管理のグリフのサポートなどを行うことができます。 | ソース管理 VSPackage | 必須 |
IVsSccProject2 | このインターフェイスは、QueryInterface 関数を使用して、または単に IVsHierarchy を実装するオブジェクトを IVsSccProject2 にキャストして、IVsHierarchy から取得されます。 プロジェクトでファイルをソース管理下に置くため、または現在のソース管理のステータスまたは位置についてプロジェクトに伝えるために使用されます。 |
プロジェクト | 必須 |
IVsSccProvider | 統合モジュールでは、このインターフェイスを使用して、現在アクティブな VSPackage を設定します。 | ソース管理 VSPackage | 必須 |
IVsTrackProjectDocuments2 | このインターフェイスは、サブスクリプション モデルに基づきます。 どの VSPackage でも、ドキュメント イベントを受信する必要があるという信号を発して、行われるところのイベントに関する通知をシェルから受けることができます。 これは、Visual Studio によって実装および処理され、今度はここから、IVsTrackProjectDocumentsEvents2 を実装するイベントが VSPackage に渡されます。 |
ソース管理スタブ | 必須 |
IVsTrackProjectDocuments3 | このインターフェイスには、バッチ処理、同期された読み取り/書き込み操作、高度な OnQueryAddFiles メソッドが用意されています。 |
ソース管理スタブ | 必須 |
IVsTrackProjectDocumentsEvents2 | 新しいファイルがプロジェクトに追加されたときや、プロジェクトからファイルとフォルダーの名前変更や削除が行われたときに、ソリューション エクスプローラーとプロジェクトによりこのインターフェイスが呼び出されます。 ソース管理 VSPackage では、プロジェクト ファイルをチェックアウトしたり、操作を取り消したりできます。 | ソース管理 VSPackage | 推奨 |
IVsTrackProjectDocumentsEvents3 | IVstrackProjectDocuments3 インターフェイスのメソッドに対して行われた呼び出しに応答して、ソリューション エクスプローラーとプロジェクトによってこのインターフェイスが呼び出されます。 ソース管理 VSPackage では、バッチ操作、同期された読み書き操作を追跡でき、より高度な OnQueryAddFiles メソッドを操作できます。 |
ソース管理 VSPackage | 推奨 |
IVsSccEnlistmentPathTranslation | このインターフェイスには、Web プロジェクトの参加管理サポートが用意されています。 | ソース管理 VSPackage | 推奨 |
IVsSccManagerTooltip | このインターフェイスは、プロジェクトのソース管理されたファイルのツールヒントを取得するために使用されます。 | ソース管理 VSPackage | 省略可能 |
IVsSccOpenFromSourceControl | このインターフェイスでは、名前空間拡張をサポートします。 | ソース管理 VSPackage | 省略可能 |
IVsSccControlNewSolution | VSPackage では、このインターフェイスを使用して、名前空間拡張を [新規]、[開く]、または [保存] のダイアログ ボックスに統合します。 その結果、プロジェクトを、作成時にソース管理に自動的に追加したり、保存操作が有効なときにソース管理に追加したりできます。 | ソース管理 VSPackage | 省略可能 |
IVsSccGlyphs | VSPackage では、このインターフェイスを使用して、ソリューション エクスプローラーで追加のグリフをノードのソース管理グリフとして定義します。 | ソース管理 VSPackage | 省略可能 |
IVsSccAddWebProjectFromSourceControl | Web プロジェクトの [追加] ダイアログ ボックスではこのインターフェイスを使用します。 ソース管理場所を参照する方法と、その場所のソース管理リポジトリに以前に追加した Web プロジェクトを開く方法を提供します。 | ソース管理 VSPackage | 推奨 |
IVsAsynchOpenFromScc | このインターフェイスでは、ソース管理からのプロジェクトの非同期 (バックグラウンド) 読み込みをサポートします。 | ソース管理 VSPackage | 省略可能 |
IVsAsynchOpenFromSccProjectEvents | このインターフェイスでは、IVsAsynchOpenFromScc で開始された非同期読み込みの進行状況をプロジェクトで監視できるようにします。 | プロジェクト | 省略可能 |
IVsSccToolsOptions | このインターフェイスでは、IDE で、アクティブなソース管理 VSPackage を照会できるようにします。 IDE では、登録されたアクティブなソース管理 VSPackage がない場合でも意味のあるソース管理設定の値を照会します。 このインターフェイスは、Visual Studio で実装および処理されます。 | ソース管理スタブ | 必須 |
IVsRegisterScciProvider | このインターフェイスは、ソース管理 VSPackage の登録で使用されます。 | ソース管理スタブ | 必須 |
SourceControl | このインターフェイスはオートメーションで使用されます。 したがって、実行できる関数だけが公開され、どの UI も表示されません。 | ソース管理 VSPackage | 省略可能 |
IVsPersistSolutionProps | このインターフェイスは、ソリューション (.sln) ファイルでのソース管理設定の保存に使用されます。 設定には、ソース管理の場所とソース管理ステータス フラグが含まれます。 | ソース管理 VSPackage | 推奨 |
IVsPersistSolutionOpts | このインターフェイスは、ソリューション オプション (.suo) ファイルでのソース管理設定の保存に使用されます。 これには、現在のユーザーの参加場所など、ユーザー固有のソース管理設定を含められます。 | ソース管理 VSPackage | 推奨 |
IVsSolutionEvents3 | このインターフェイスは、ソリューションを閉じる前にプロジェクトファイルをチェックインしたり、プロジェクトを開くときにソース管理から新しいファイルを取得したりするなどの操作を実行するために、イベントの監視に使用されます。 | ソース管理 VSPackage | 推奨 |