Fonction SccGetCommandOptionsSccGetCommandOptions function

Cette fonction invite l’utilisateur pour les options avancées pour une commande donnée.This function prompts the user for advanced options for a given command.

SyntaxeSyntax

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

ParamètresParameters

pvContextpvContext
[in] La structure de contexte de plug-in de contrôle de source.[in] The source control plug-in context structure.

hWndhWnd
[in] Handle vers la fenêtre de l’IDE que le plug-in de contrôle de code source peut utiliser en tant que parent pour les boîtes de dialogue qu’il fournit.[in] A handle to the IDE window that the source control plug-in can use as a parent for any dialog boxes that it provides.

iCommandiCommand
[in] La commande pour laquelle des options avancées sont demandées (consultez commande code pour les valeurs possibles).[in] The command for which advanced options are requested (see Command code for possible values).

ppvOptionsppvOptions
[in] La structure de l’option (peut également être NULL).[in] The option structure (can also be NULL).

Valeur de retourReturn value

L’implémentation de plug-in de contrôle de source de cette fonction est censée retourner l’une des valeurs suivantes :The source control plug-in implementation of this function is expected to return one of the following values:

ValueValue DescriptionDescription
SCC_OKSCC_OK Opération réussie.Success.
SCC_I_ADV_SUPPORTSCC_I_ADV_SUPPORT Le plug-in de contrôle de code source prend en charge les options avancées pour la commande.The source control plug-in supports advanced options for the command.
SCC_I_OPERATIONCANCELEDSCC_I_OPERATIONCANCELED L’utilisateur a annulé la source contrôle du plug-in Options boîte de dialogue.The user cancelled the source control plug-in's Options dialog box.
SCC_E_OPTNOTSUPPORTEDSCC_E_OPTNOTSUPPORTED Le plug-in de contrôle de code source ne prend pas en charge cette opération.The source control plug-in does not support this operation.
SCC_E_ISCHECKEDOUTSCC_E_ISCHECKEDOUT Impossible d’effectuer cette opération sur un fichier qui est actuellement extrait.Cannot perform this operation on a file that is currently checked out.
SCC_E_ACCESSFAILURESCC_E_ACCESSFAILURE Impossible d’accéder au système de contrôle source, probablement en raison de problèmes réseau ou de contention.There was a problem accessing the source control system, probably due to network or contention issues. Une nouvelle tentative est recommandée.A retry is recommended.
SCC_E_NONSPECIFICERRORSCC_E_NONSPECIFICERROR Erreur non spécifique.Nonspecific failure.

NotesRemarks

L’IDE appelle cette fonction pour la première fois avec ppvOptions = NULL pour déterminer si le plug-in de contrôle de code source prend en charge la fonctionnalité des options avancées pour la commande spécifiée.The IDE calls this function for the first time with ppvOptions=NULL to determine if the source control plug-in supports the advanced options feature for the specified command. Si le plug-in prend en charge la fonctionnalité de cette commande, l’IDE appelle cette fonction quand l’utilisateur demande des options avancées (généralement implémenté comme un avancé bouton dans une boîte de dialogue) et fournit un pointeur non NULL pour ppvOptions qui pointe vers un NULL pointeur.If the plug-in does support the feature for that command, the IDE calls this function again when the user requests advanced options (usually implemented as an Advanced button in a dialog box) and supplies a non-NULL pointer for ppvOptions that points to a NULL pointer. Le plug-in stocke des options avancées, spécifiées par l’utilisateur dans une structure privée et retourne un pointeur vers cette structure dans ppvOptions.The plug-in stores any advanced options specified by the user in a private structure and returns a pointer to that structure in ppvOptions. Cette structure est ensuite transmise à toutes les autres fonctions d’API de plug-in de contrôle de code Source qui doivent savoir, y compris les appels suivants à la SccGetCommandOptions (fonction).This structure is then passed to all other Source Control Plug-in API functions that need to know about it, including subsequent calls to the SccGetCommandOptions function.

Un exemple peut vous aider à clarifier cette situation.An example may help clarify this situation.

Un utilisateur choisit le obtenir commande et l’IDE affiche un obtenir boîte de dialogue.A user chooses the Get command and the IDE displays a Get dialog box. Les appels de l’IDE le SccGetCommandOptions fonctionne avec iCommand définie sur SCC_COMMAND_GET et ppvOptions défini sur NULL.The IDE calls the SccGetCommandOptions function with iCommand set to SCC_COMMAND_GET and ppvOptions set to NULL. Ceci est interprété par le plug-in en tant que la question de contrôle de code source, « Avez-vous des options avancées pour cette commande ? »This is interpreted by the source control plug-in as the question, "Do you have any advanced options for this command?" Si le plug-in retourne SCC_I_ADV_SUPPORT, l’IDE affiche un avancé situé dans sa obtenir boîte de dialogue.If the plug-in returns SCC_I_ADV_SUPPORT, the IDE displays an Advanced button in its Get dialog box.

La première fois que l’utilisateur clique sur le avancé bouton, l’IDE appelle de nouveau la SccGetCommandOptions fonctionner, cette fois avec un non -NULL``ppvOptions qui pointe vers un NULL pointeur.The first time the user clicks the Advanced button, the IDE again calls the SccGetCommandOptions function, this time with a non-NULL``ppvOptions that points to a NULL pointer. Le plug-in affiche sa propre obtenir les Options boîte de dialogue invite l’utilisateur pour plus d’informations, celles-ci sont placées dans leur propre structure et retourne un pointeur vers cette structure dans ppvOptions.The plug-in displays its own Get Options dialog box, prompts the user for information, puts that information into its own structure, and returns a pointer to that structure in ppvOptions.

Si l’utilisateur clique sur avancé dans la boîte de dialogue, l’IDE appelle de nouveau la SccGetCommandOptions fonction à nouveau sans modifier ppvOptions, de sorte que la structure est repassée au plug-in.If the user clicks Advanced again in the same dialog box, the IDE calls the SccGetCommandOptions function again without changing ppvOptions, so that the structure is passed back to the plug-in. Ainsi, le plug-in à réinitialiser sa boîte de dialogue pour les valeurs que l’utilisateur avait précédemment défini.This enables the plug-in to reinitialize its dialog box to the values that the user had previously set. Le plug-in modifie la structure en place avant de retourner.The plug-in modifies the structure in place before returning.

Enfin, lorsque l’utilisateur clique sur OK dans l’IDE obtenir boîte de dialogue, les appels de l’IDE le SccGet, en passant la structure retournée dans ppvOptions qui contient le options avancées.Finally, when the user clicks OK in the IDE's Get dialog box, the IDE calls the SccGet, passing the structure returned in ppvOptions that contains the advanced options.

Note

La commande SCC_COMMAND_OPTIONS est utilisé lors de l’IDE affiche un Options boîte de dialogue qui permet à l’utilisateur de définie les préférences qui contrôlent le fonctionne de l’intégration.The command SCC_COMMAND_OPTIONS is used when the IDE displays an Options dialog box that lets the user set preferences that control how the integration works. Si le plug-in de contrôle de code source souhaite fournir sa propre boîte de dialogue Préférences, il peut afficher à partir une avancé bouton dans la boîte de dialogue Préférences de l’IDE.If the source control plug-in wants to supply its own preferences dialog box, it can display it from an Advanced button in the IDE's preferences dialog box. Le plug-in est seul responsable de l’obtention et la persistance de ces informations ; l’IDE ne pas utiliser ou modifier.The plug-in is solely responsible for getting and persisting this information; the IDE does not use it or modify it.

Voir aussiSee also

Fonctions d’API source contrôle plug-in Source control plug-in API functions
Code de commandeCommand code