Partager via


SccGetCommandOptions, fonction

Cette fonction invite l'utilisateur à entrer des options avancées pour une commande donnée.

SCCRTN SccGetCommandOptions(
   LPVOID pvContext,
   HWND hWnd,
   enum SCCCOMMAND iCommand,
   LPCMDOPTS* ppvOptions
);

Paramètres

  • pvContext
    [in] La structure du plug-in du contexte de contrôle de code source.

  • hWnd
    [in] Un handle de la fenêtre IDE que le plug-in contrôle de code source peut utiliser en tant que parent pour toutes les boîtes de dialogue qu'elle fournit.

  • iCommand
    [in] La commande pour laquelle des options avancées sont demandées (consultez Énumérateur de code de commande pour les valeurs possibles).

  • ppvOptions
    [in] la structure d'option (peut également être NULL).

Valeur de retour

Il est recommandé que l'implémentation du plug-in du contrôle de code source de cette fonction retourne une des valeurs suivantes :

Valeur

Description

SCC_OK

Succès.

SCC_I_ADV_SUPPORT

Le plug-in contrôle de code source prend en charge les options avancées pour la commande.

SCC_I_OPERATIONCANCELED

L'utilisateur a annulé la boîte de dialogue d' Options de la connexion du contrôle de code source.

SCC_E_OPTNOTSUPPORTED

Le plug-in contrôle de code source ne prend pas en charge cette opération.

SCC_E_ISCHECKEDOUT

Ne peut pas exécuter cette opération sur un fichier en cours vérifié.

SCC_E_ACCESSFAILURE

Un problème est survenu lors de l'accès au système de contrôle de code source, probablement en raison de problèmes de réseau ou de conflit. Une démarrage est recommandée.

SCC_E_NONSPECIFICERROR

échec non spécifique.

Notes

L'IDE appelle cette fonction pour la première fois avec ppvOptions=NULL pour déterminer si le plug-in contrôle de code source prend en charge les fonctionnalités avancées d'options pour la commande spécifiée. Si le plug-in prend en charge la fonctionnalité de cette commande, l'IDE appelle cette fonction à nouveau lorsqu'un utilisateur demande évoluées des options (généralement implémentées en tant que bouton d' Avancé dans une boîte de dialogue) et des fournit un pointeur non null pour ppvOptions qui indique NULL un pointeur. Le plug-in enregistre toutes les options avancées spécifiées par l'utilisateur dans une structure privée et retourne un pointeur à cette structure dans ppvOptions. Cette structure est ensuite passée à toutes les autres fonctions API du plug-in du contrôle de code source qui doivent savoir à son sujet, notamment les appels suivants à la fonction d' SccGetCommandOptions .

Un exemple peut vous aider à clarifier cette situation.

Un utilisateur sélectionne la commande d' Obtenir et l'IDE affiche une boîte de dialogue d' Obtenir . L'IDE appelle la fonction d' SccGetCommandOptions avec iCommand défini à SCC_COMMAND_GET et ppvOptions défini à NULL. Cela est interprète par le plug-in contrôle de code source comme un « , vous avez toutes les options avancées pour cette commande ? » Si le plug-in retourne SCC_I_ADV_SUPPORT, l'IDE affiche un bouton d' Avancé dans sa boîte de dialogue d' Obtenir .

La première fois que l'utilisateur clique sur le bouton d' Avancé , l'IDE appelle de nouveau la fonction d' SccGetCommandOptions , cette fois avecNULLnon-ppvOptions qui indique NULL un pointeur. Le plug-in affiche sa propre boîte de dialogue d' Options get , invite l'utilisateur à titre de information, ajoute ces informations dans leur propre structure, et retourne un pointeur à cette structure dans ppvOptions.

Si l'utilisateur clique sur Avancé de nouveau dans la même boîte de dialogue, l'IDE appelle la fonction d' SccGetCommandOptions de nouveau sans modifier ppvOptions, afin que la structure soit retournée au plug-in. Cela permet au plug-in pour réinitialiser la boîte de dialogue aux valeurs que l'utilisateur avait précédemment définies. Le plug-in modifie la structure en place avant de retourner.

Enfin, lorsque l'utilisateur clique sur OK dans la boîte de dialogue d' Obtenir de l'IDE, l'IDE appelle SccGet, fonction, en passant la structure retournée dans ppvOptions qui contient les options avancées.

Notes

La commande SCC_COMMAND_OPTIONS est utilisée lorsque l'IDE affiche une boîte de dialogue d' Options qui permet de définir des préférences utilisateur qui contrôlent l'intégration fonctionne.Si le plug-in contrôle de code source souhaite fournir sa propre boîte de dialogue de préférences, il peut l'affichage d'un bouton d' Avancé dans la boîte de dialogue des préférences de l'IDE.Le plug-in est uniquement chargé d'obtenir et de rendre ces informations ; l'IDE n'utilise pas ou ne le fait pas.

Voir aussi

Référence

Énumérateur de code de commande

Concepts

Fonctions API des plug-ins de contrôle de code source