Partager via


Fonction SccSetOption

Cette fonction définit les options qui contrôlent le comportement du plug-in de contrôle de code source.

Syntaxe

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

Paramètres

pvContext

[in] Structure de contexte du plug-in de contrôle de code source.

nOption

[in] Option en cours de définition.

dwVal

[in] Paramètres de l’option.

Valeur de retour

L’implémentation du plug-in de contrôle de code source de cette fonction est censée retourner l’une des valeurs suivantes :

Valeur Description
SCC_OK L’option a été correctement définie.
SCC_I_SHARESUBPROJOK Retourné s’il nOption était SCC_OPT_SHARESUBPROJ et que le plug-in de contrôle de code source permet à l’IDE de définir le dossier de destination.
SCC_E_OPNOTSUPPORTED L’option n’a pas été définie et ne doit pas être prise en compte.

Notes

L’IDE appelle cette fonction pour contrôler le comportement du plug-in de contrôle de code source. Le premier paramètre, indique nOptionla valeur définie, tandis que la seconde, dwValindique ce qu’il faut faire avec cette valeur. Le plug-in stocke ces informations associées à un pvContext``, pour que l’IDE puisse appeler cette fonction après avoir appelé SccInitialize (mais pas nécessairement après chaque appel à SccOpenProject).

Résumé des options et de leurs valeurs :

nOption dwValue Description
SCC_OPT_EVENTQUEUE SCC_OPT_EQ_DISABLE

SCC_OPT_EQ_ENABLE
Active/désactive la mise en file d’attente d’événements en arrière-plan.
SCC_OPT_USERDATA Valeur arbitraire Spécifie une valeur utilisateur à passer à la fonction de rappel OPTNAMECHANGEPFN .
SCC_OPT_HASCANCELMODE SCC_OPT_HCM_NO

SCC_OPT_HCM_YES
Indique si l’IDE prend actuellement en charge l’annulation d’une opération.
SCC_OPT_NAMECHANGEPFN Pointeur vers la fonction de rappel OPTNAMECHANGEPFN Définit un pointeur vers une fonction de rappel de changement de nom.
SCC_OPT_SCCCHECKOUTONLY SCC_OPT_SCO_NO

SCC_OPT_SCO_YES
Indique si l’IDE autorise l’extraction manuelle de ses fichiers (via l’interface utilisateur du contrôle de code source) ou si elles doivent être extraites uniquement via le plug-in de contrôle de code source.
SCC_OPT_SHARESUBPROJ N/A Si le plug-in de contrôle de code source permet à l’IDE de spécifier le dossier de projet local, le plug-in retourne SCC_I_SHARESUBPROJOK.

SCC_OPT_EVENTQUEUE

Si nOption c’est SCC_OPT_EVENTQUEUEle cas, l’IDE désactive (ou réactive) le traitement en arrière-plan. Par exemple, lors d’une compilation, l’IDE peut indiquer au plug-in de contrôle de code source d’arrêter le traitement inactif de n’importe quel type. Après la compilation, il réactive le traitement en arrière-plan pour maintenir la file d’attente d’événements du plug-in à jour. Correspondant à la SCC_OPT_EVENTQUEUE valeur de nOption, il existe deux valeurs possibles pour dwVal, à savoir , SCC_OPT_EQ_ENABLE et SCC_OPT_EQ_DISABLE.

SCC_OPT_HASCANCELMODE

Si la valeur est nOption SCC_OPT_HASCANCELMODEdéfinie, l’IDE permet aux utilisateurs d’annuler de longues opérations. SCC_OPT_HCM_NO La valeur dwVal (valeur par défaut) indique que l’IDE n’a pas de mode d’annulation. Le plug-in de contrôle de code source doit offrir son propre bouton Annuler s’il souhaite que l’utilisateur puisse annuler. SCC_OPT_HCM_YES indique que l’IDE offre la possibilité d’annuler une opération. Par conséquent, le plug-in SCC n’a pas besoin d’afficher son propre bouton Annuler. Si l’IDE est définie dwVal SCC_OPT_HCM_YESsur , il est prêt à répondre aux SCC_MSG_STATUS messages envoyés DOCANCEL à la lpTextOutProc fonction de rappel (voir LPTEXTOUTPROC). Si l’IDE ne définit pas cette variable, le plug-in ne doit pas envoyer ces deux messages.

SCC_OPT_NAMECHANGEPFN

Si nOption est défini sur SCC_OPT_NAMECHANGEPFN, et que le plug-in de contrôle de code source et l’IDE l’autorisent, le plug-in peut réellement renommer ou déplacer un fichier pendant une opération de contrôle de code source. La dwVal valeur est définie sur un pointeur de fonction de type OPTNAMECHANGEPFN. Pendant une opération de contrôle de code source, le plug-in peut appeler cette fonction, en passant trois paramètres. Il s’agit de l’ancien nom (avec un chemin complet) d’un fichier, du nouveau nom (avec le chemin complet) de ce fichier et d’un pointeur vers des informations pertinentes pour l’IDE. L’IDE envoie ce dernier pointeur en appelant SccSetOption avec nOption la valeur définie SCC_OPT_USERDATAsur , pointant dwVal vers les données. La prise en charge de cette fonction est facultative. Un plug-in VSSCI qui utilise cette capacité doit initialiser son pointeur de fonction et les variables de données utilisateur vers NULL, et il ne doit pas appeler une fonction de renommage, sauf si elle a été donnée. Il doit également être prêt à contenir la valeur qu’il a reçu ou à le modifier en réponse à un nouvel appel à SccSetOption. Cela ne se produit pas au milieu d’une opération de commande de contrôle de code source, mais cela peut se produire entre les commandes.

SCC_OPT_SCCCHECKOUTONLY

Si nOption est défini SCC_OPT_SCCCHECKOUTONLYsur , l’IDE indique que les fichiers du projet actuellement ouvert ne doivent jamais être extraits manuellement via l’interface utilisateur du système de contrôle de code source. Au lieu de cela, les fichiers doivent être extraits uniquement via le plug-in de contrôle de code source sous contrôle IDE. Si dwValue la valeur est définie SCC_OPT_SCO_NO, cela signifie que les fichiers doivent être traités normalement par le plug-in et peuvent être extraits via l’interface utilisateur du contrôle de code source. Si dwValue la valeur est définie SCC_OPT_SCO_YES, seul le plug-in est autorisé à extraire les fichiers et l’interface utilisateur du système de contrôle de code source ne doit pas être appelée. C’est pour les situations où l’IDE peut avoir des « pseudo-fichiers » qui sont logiques pour extraire uniquement via l’IDE.

SCC_OPT_SHARESUBPROJ

Si nOption la valeur est définie SCC_OPT_SHARESUBPROJ, l’IDE teste si le plug-in de contrôle de code source peut utiliser un dossier local spécifié lors de l’ajout de fichiers à partir du contrôle de code source. La valeur du dwVal paramètre n’a pas d’importance dans ce cas. Si le plug-in permet à l’IDE de spécifier le dossier de destination local dans lequel les fichiers seront ajoutés à partir du contrôle de code source lorsque sccAddFromScc est appelé, le plug-in doit retourner SCC_I_SHARESUBPROJOK lorsque la SccSetOption fonction est appelée. L’IDE utilise ensuite le lplpFileNames paramètre de la SccAddFromScc fonction pour passer le dossier de destination. Le plug-in utilise ce dossier de destination pour placer les fichiers ajoutés à partir du contrôle de code source. Si le plug-in ne retourne SCC_I_SHARESUBPROJOK pas lorsque l’option SCC_OPT_SHARESUBPROJ est définie, l’IDE suppose que le plug-in est en mesure d’ajouter des fichiers uniquement dans le dossier local actuel.

Voir aussi