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