SccSetOption, funkcja

Ta funkcja ustawia opcje kontrolujące zachowanie wtyczki kontroli źródła.

Składnia

SCCRTN SccSetOption(
   LPVOID pvContext,
   LONG   nOption,
   LONG   dwVal
);

Parametry

pvContext

[in] Struktura kontekstu wtyczki kontroli źródła.

nOpcje

[in] Opcja, która jest ustawiana.

Dwval

[in] Ustawienia opcji.

Wartość zwracana

Implementacja wtyczki kontroli źródła tej funkcji powinna zwrócić jedną z następujących wartości:

Wartość Opis
SCC_OK Opcja została pomyślnie ustawiona.
SCC_I_SHARESUBPROJOK Zwrócona wartość , jeśli nOption element i SCC_OPT_SHARESUBPROJ wtyczka kontroli źródła umożliwia środowisku IDE ustawienie folderu docelowego.
SCC_E_OPNOTSUPPORTED Opcja nie została ustawiona i nie powinna być na nią polegana.

Uwagi

Środowisko IDE wywołuje tę funkcję, aby kontrolować zachowanie wtyczki kontroli źródła. Pierwszy parametr nOption, wskazuje wartość, która jest ustawiana, podczas gdy drugi , wskazuje, dwValco zrobić z tej wartości. Wtyczka przechowuje te informacje skojarzone z elementem pvContext``, , więc środowisko IDE musi wywołać tę funkcję po wywołaniu funkcji SccInitialize (ale niekoniecznie po każdym wywołaniu SccOpenProject).

Podsumowanie opcji i ich wartości:

nOption dwValue opis
SCC_OPT_EVENTQUEUE SCC_OPT_EQ_DISABLE

SCC_OPT_EQ_ENABLE
Włącza/wyłącza kolejkowanie zdarzeń w tle.
SCC_OPT_USERDATA Dowolna wartość Określa wartość użytkownika, która ma zostać przekazana do funkcji wywołania zwrotnego OPTNAMECHANGEPFN .
SCC_OPT_HASCANCELMODE SCC_OPT_HCM_NO

SCC_OPT_HCM_YES
Wskazuje, czy środowisko IDE aktualnie obsługuje anulowanie operacji.
SCC_OPT_NAMECHANGEPFN Wskaźnik do funkcji wywołania zwrotnego OPTNAMECHANGEPFN Ustawia wskaźnik na funkcję wywołania zwrotnego zmiany nazwy.
SCC_OPT_SCCCHECKOUTONLY SCC_OPT_SCO_NO

SCC_OPT_SCO_YES
Wskazuje, czy środowisko IDE zezwala na wyewidencjonowanie swoich plików ręcznie (za pośrednictwem interfejsu użytkownika kontroli źródła) lub czy muszą być wyewidencjonowane tylko za pośrednictwem wtyczki kontroli źródła.
SCC_OPT_SHARESUBPROJ Nie dotyczy Jeśli wtyczka kontroli źródła umożliwia środowisku IDE określenie lokalnego folderu projektu, wtyczka zwraca wartość SCC_I_SHARESUBPROJOK.

SCC_OPT_EVENTQUEUE

Jeśli nOption to SCC_OPT_EVENTQUEUE, środowisko IDE wyłącza (lub ponownie włącza) przetwarzanie w tle. Na przykład podczas kompilacji środowisko IDE może instruować wtyczkę kontroli źródła, aby zatrzymać przetwarzanie bezczynności dowolnego rodzaju. Po skompilowaniu ponowne włączenie przetwarzania w tle w celu zapewnienia aktualności kolejki zdarzeń wtyczki. Odpowiadająca wartości parametru SCC_OPT_EVENTQUEUEnOption, istnieją dwie możliwe wartości dla dwVal, a mianowicie SCC_OPT_EQ_ENABLE i SCC_OPT_EQ_DISABLE.

SCC_OPT_HASCANCELMODE

Jeśli wartość nOption parametru to SCC_OPT_HASCANCELMODE, środowisko IDE umożliwia użytkownikom anulowanie długich operacji. Ustawienie dwVal na SCC_OPT_HCM_NO (ustawienie domyślne) oznacza, że środowisko IDE nie ma trybu anulowania. Wtyczka kontroli źródła musi oferować własny przycisk Anuluj, jeśli chce, aby użytkownik mógł anulować. SCC_OPT_HCM_YES wskazuje, że środowisko IDE zapewnia możliwość anulowania operacji, więc wtyczka SCC nie musi wyświetlać własnego przycisku Anuluj. Jeśli środowisko IDE ustawia wartość dwValSCC_OPT_HCM_YES, jest przygotowane do odpowiadania na SCC_MSG_STATUS komunikaty i DOCANCEL wysyłane do lpTextOutProc funkcji wywołania zwrotnego (zobacz LPTEXTOUTPROC). Jeśli środowisko IDE nie ustawi tej zmiennej, wtyczka nie powinna wysyłać tych dwóch komunikatów.

SCC_OPT_NAMECHANGEPFN

Jeśli parametr nOption ma ustawioną wartość SCC_OPT_NAMECHANGEPFN, a zarówno wtyczka kontroli źródła, jak i środowisko IDE zezwalają na to, wtyczka może rzeczywiście zmienić nazwę lub przenieść plik podczas operacji kontroli źródła. Zostanie dwVal ustawiony wskaźnik funkcji typu OPTNAMECHANGEPFN. Podczas operacji kontroli źródła wtyczka może wywołać tę funkcję, przekazując trzy parametry. Są to stara nazwa (z w pełni kwalifikowaną ścieżką) pliku, nowa nazwa (z w pełni kwalifikowaną ścieżką) tego pliku i wskaźnik do informacji, które mają znaczenie dla środowiska IDE. Środowisko IDE wysyła w tym ostatnim wskaźniku, wywołując metodę SccSetOption z ustawioną wartością nOptionSCC_OPT_USERDATA, wskazując dwVal dane. Obsługa tej funkcji jest opcjonalna. Wtyczka VSSCI korzystająca z tej możliwości musi zainicjować jego wskaźnik funkcji i zmienne danych użytkownika do NULL, i nie może wywołać funkcji zmiany nazwy, chyba że została podana. Należy również przygotować się do przechowywania podanej wartości lub zmiany jej w odpowiedzi na nowe wywołanie metody SccSetOption. Nie będzie to miało miejsce w trakcie operacji polecenia kontroli źródła, ale może się to zdarzyć między poleceniami.

SCC_OPT_SCCCHECKOUTONLY

Jeśli parametr nOption ma wartość SCC_OPT_SCCCHECKOUTONLY, środowisko IDE wskazuje, że pliki w aktualnie otwartym projekcie nigdy nie powinny być wyewidencjonowane ręcznie za pośrednictwem interfejsu użytkownika systemu kontroli źródła. Zamiast tego pliki powinny być wyewidencjonowane tylko za pośrednictwem wtyczki kontroli źródła pod kontrolą środowiska IDE. Jeśli dwValue ustawiono wartość SCC_OPT_SCO_NO, oznacza to, że pliki powinny być traktowane normalnie przez wtyczkę i można je wyewidencjonować za pośrednictwem interfejsu użytkownika kontroli źródła. Jeśli dwValue ustawiono wartość SCC_OPT_SCO_YES, tylko wtyczka może wyewidencjonować pliki, a interfejs użytkownika systemu kontroli źródła nie powinien być wywoływany. Dotyczy to sytuacji, w których środowisko IDE może mieć "pseudo-pliki", które mają sens wyewidencjonować tylko za pośrednictwem środowiska IDE.

SCC_OPT_SHARESUBPROJ

JeślinOption ustawiono wartość SCC_OPT_SHARESUBPROJ, środowisko IDE testuje, czy wtyczka kontroli źródła może używać określonego folderu lokalnego podczas dodawania plików z kontroli źródła. Wartość parametru dwVal nie ma znaczenia w tym przypadku. Jeśli wtyczka umożliwia środowisku IDE określenie lokalnego folderu docelowego, w którym pliki zostaną dodane z kontroli źródła, gdy wywołana jest funkcja SccAddFromScc , wtyczka musi zostać zwrócona SCC_I_SHARESUBPROJOK po wywołaniu SccSetOption funkcji. Następnie środowisko IDE używa lplpFileNames parametru SccAddFromScc funkcji do przekazania w folderze docelowym. Wtyczka używa tego folderu docelowego do umieszczania plików dodanych z kontroli źródła. Jeśli wtyczka nie zwraca SCC_I_SHARESUBPROJOK się po SCC_OPT_SHARESUBPROJ ustawieniu opcji, środowisko IDE zakłada, że wtyczka może dodawać pliki tylko w bieżącym folderze lokalnym.

Zobacz też