SccPopulateList-Funktion
Diese Funktion aktualisiert eine Liste der Dateien für einen bestimmten Quellcodeverwaltungsbefehl und stellt den Status der Quellcodeverwaltung für alle angegebenen Dateien zur Verfügung.
Syntax
SCCRTN SccPopulateList (
LPVOID pvContext,
enum SCCCOMMAND nCommand,
LONG nFiles,
LPCSTR* lpFileNames,
POPLISTFUNC pfnPopulate,
LPVOID pvCallerData,
LPLONG lpStatus,
LONG fOptions
);
Parameter
pvContext
[in] Die Kontextstruktur des Quellcodeverwaltungs-Plug-Ins.
nCommand
[in] Der Befehl für die Quellcodeverwaltung, der auf alle Dateien im lpFileNames
Array angewendet wird (siehe Befehlscode für eine Liste möglicher Befehle).
nFiles
[in] Anzahl der Dateien im lpFileNames
Array.
lpFileNames
[in] Ein Array von Dateinamen, die der IDE bekannt sind.
pfnPopulate
[in] Die IDE-Rückruffunktion zum Hinzufügen und Entfernen von Dateien (details finden Sie unter POPLISTFUNC ).
pvCallerData
[in] Wert, der unverändert an die Rückruffunktion übergeben werden soll.
lpStatus
[in, out] Ein Array für das Quellcodeverwaltungs-Plug-In, um die Statuskennzeichnungen für jede Datei zurückzugeben.
Foptions
[in] Befehlskennzeichnungen (details hierzu finden Sie im Abschnitt "PopulateList flag" von Bitflags Used by Specific Commands ).
Rückgabewert
Die Plug-In-Implementierung dieser Funktion für die Quellcodeverwaltung wird voraussichtlich einen der folgenden Werte zurückgeben:
Wert | Beschreibung |
---|---|
SCC_OK | Erfolg. |
SCC_E_NONSPECIFICERROR | Nicht spezifischer Fehler. |
Hinweise
Diese Funktion untersucht die Liste der Dateien für den aktuellen Status. Sie verwendet die pfnPopulate
Rückruffunktion, um den Aufrufer zu benachrichtigen, wenn eine Datei nicht den Kriterien für die nCommand
Datei entspricht. Wenn beispielsweise der Befehl und SCC_COMMAND_CHECKIN
eine Datei in der Liste nicht ausgecheckt ist, wird der Rückruf verwendet, um den Aufrufer zu informieren. Gelegentlich findet das Quellcodeverwaltungs-Plug-In möglicherweise andere Dateien, die Teil des Befehls sein könnten, und fügen sie hinzu. Auf diese Weise kann ein Visual Basic-Benutzer beispielsweise eine BMP-Datei auschecken, die von seinem Projekt verwendet wird, aber nicht in der Visual Basic-Projektdatei angezeigt wird. Ein Benutzer wählt den Befehl "Abrufen " in der IDE aus. Die IDE zeigt eine Liste aller Dateien an, die der Benutzer abrufen kann, aber bevor die Liste angezeigt wird, wird die SccPopulateList
Funktion aufgerufen, um sicherzustellen, dass die anzuzeigende Liste auf dem neuesten Stand ist.
Beispiel
Die IDE erstellt eine Liste von Dateien, die der Benutzer abrufen kann. Bevor sie diese Liste anzeigt, ruft sie die SccPopulateList
Funktion auf, wodurch das Quellcodeverwaltungs-Plug-In die Möglichkeit erhält, Dateien aus der Liste hinzuzufügen und zu löschen. Das Plug-In ändert die Liste durch Aufrufen der angegebenen Rückruffunktion (weitere Details finden Sie unter POPLISTFUNC ).
Das Plug-In ruft weiterhin die pfnPopulate
Funktion auf, die Dateien hinzufügt und löscht, bis sie abgeschlossen ist und dann von der SccPopulateList
Funktion zurückgegeben wird. Die IDE kann dann deren Liste anzeigen. Das lpStatus
Array stellt alle Dateien in der ursprünglichen Liste dar, die von der IDE übergeben werden. Das Plug-In füllt den Status aller diese Dateien zusätzlich zur Verwendung der Rückruffunktion aus.
Hinweis
Ein Quellcodeverwaltungs-Plug-In hat immer die Möglichkeit, einfach sofort von dieser Funktion zurückzugeben, sodass die Liste wie gewünscht bleibt. Wenn ein Plug-In diese Funktion implementiert, kann dies angegeben werden, indem der Bitflag der SCC_CAP_POPULATELIST
Funktion im ersten Aufruf der SccInitialize festgelegt wird. Standardmäßig sollte das Plug-In immer davon ausgehen, dass alle übergebenen Elemente Dateien sind. Wenn die IDE jedoch das SCC_PL_DIR
Flag im fOptions
Parameter festlegt, werden alle übergebenen Elemente als Verzeichnisse betrachtet. Das Plug-In sollte alle Dateien hinzufügen, die in die Verzeichnisse gehören. Die IDE übergibt niemals eine Mischung aus Dateien und Verzeichnissen.