SccPopulateList, funkcja
Ta funkcja aktualizuje listę plików dla określonego polecenia kontroli źródła i dostarcza stan kontroli źródła dla wszystkich danych plików.
Składnia
SCCRTN SccPopulateList (
LPVOID pvContext,
enum SCCCOMMAND nCommand,
LONG nFiles,
LPCSTR* lpFileNames,
POPLISTFUNC pfnPopulate,
LPVOID pvCallerData,
LPLONG lpStatus,
LONG fOptions
);
Parametry
pvContext
[in] Struktura kontekstu wtyczki kontroli źródła.
nPolecenia
[in] Polecenie kontroli źródła, które zostanie zastosowane do wszystkich plików w lpFileNames
tablicy (zobacz Kod polecenia, aby uzyskać listę możliwych poleceń).
nFiles
[in] Liczba plików w tablicy lpFileNames
.
lpFileNames
[in] Tablica nazw plików znana środowisku IDE.
pfnPopulate
[in] Funkcja wywołania zwrotnego IDE w celu wywołania w celu dodania i usunięcia plików (zobacz POPLISTFUNC , aby uzyskać szczegółowe informacje).
pvCallerData
[in] Wartość, która ma zostać przekazana bez zmian do funkcji wywołania zwrotnego.
lpStatus
[in, out] Tablica wtyczki kontroli źródła, która zwraca flagi stanu dla każdego pliku.
Foptions
[in] Flagi poleceń (zobacz sekcję "PopulateList flaga" bitflags używanych przez określone polecenia , aby uzyskać szczegółowe informacje).
Wartość zwracana
Implementacja wtyczki kontroli źródła tej funkcji powinna zwrócić jedną z następujących wartości:
Wartość | Opis |
---|---|
SCC_OK | Powodzenie. |
SCC_E_NONSPECIFICERROR | Niepowodzeń nieokreślonych. |
Uwagi
Ta funkcja sprawdza listę plików pod kątem bieżącego stanu. Używa pfnPopulate
funkcji wywołania zwrotnego, aby powiadomić obiekt wywołujący, gdy plik nie jest zgodny z kryteriami .nCommand
Jeśli na przykład polecenie to SCC_COMMAND_CHECKIN
i plik na liście nie jest wyewidencjonowany, wywołanie zwrotne jest używane do informowania obiektu wywołującego. Czasami wtyczka kontroli źródła może znaleźć inne pliki, które mogą być częścią polecenia i dodać je. Umożliwia to na przykład użytkownikowi języka Visual Basic wyewidencjonowywanie pliku bmp używanego przez jego projekt, ale nie jest wyświetlane w pliku projektu Visual Basic. Użytkownik wybiera polecenie Pobierz w środowisku IDE. Środowisko IDE wyświetli listę wszystkich plików, które uważa, że użytkownik może uzyskać, ale przed wyświetleniem listy funkcja jest wywoływana, aby upewnić się, że lista, która ma być wyświetlana, SccPopulateList
jest aktualna.
Przykład
Środowisko IDE tworzy listę plików, które uważa, że użytkownik może uzyskać. Przed wyświetleniem tej listy wywołuje SccPopulateList
funkcję, co daje wtyczkę kontroli źródła do dodawania i usuwania plików z listy. Wtyczka modyfikuje listę, wywołując daną funkcję wywołania zwrotnego (zobacz POPLISTFUNC , aby uzyskać więcej informacji).
Wtyczka nadal wywołuje pfnPopulate
funkcję, która dodaje i usuwa pliki, dopóki nie zostanie zakończona, a następnie powróci z SccPopulateList
funkcji. Następnie środowisko IDE może wyświetlić listę. Tablica lpStatus
reprezentuje wszystkie pliki na oryginalnej liście przekazanej przez środowisko IDE. Wtyczka wypełnia stan wszystkich tych plików oprócz korzystania z funkcji wywołania zwrotnego.
Uwaga
Wtyczka kontroli źródła zawsze ma opcję, aby po prostu zwrócić natychmiast z tej funkcji, pozostawiając listę tak, jak jest. Jeśli wtyczka implementuje tę funkcję, może to wskazywać, ustawiając SCC_CAP_POPULATELIST
funkcję bitflag w pierwszym wywołaniu funkcji SccInitialize. Domyślnie wtyczka powinna zawsze zakładać, że wszystkie przekazywane elementy to pliki. Jeśli jednak środowisko IDE ustawia flagę SCC_PL_DIR
w parametrze fOptions
, wszystkie przekazywane elementy mają być traktowane jako katalogi. Wtyczka powinna dodać wszystkie pliki należące do katalogów. Środowisko IDE nigdy nie będzie przekazywane w kombinacji plików i katalogów.