Partilhar via


Função SccPopulateList

Essa função atualiza uma lista de arquivos para um determinado comando de controle do código-fonte e fornece o status do controle do código-fonte em todos os arquivos fornecidos.

Sintaxe

SCCRTN SccPopulateList (
   LPVOID          pvContext,
   enum SCCCOMMAND nCommand,
   LONG            nFiles,
   LPCSTR*         lpFileNames,
   POPLISTFUNC     pfnPopulate,
   LPVOID          pvCallerData,
   LPLONG          lpStatus,
   LONG            fOptions
);

Parâmetros

pvContexto

[em] A estrutura de contexto do plug-in de controle do código-fonte.

nCommand

[em] O comando de controle do código-fonte que será aplicado a todos os arquivos na lpFileNames matriz (consulte Código de comando para obter uma lista de comandos possíveis).

nArquivos

[em] Número de arquivos na lpFileNames matriz.

lpFileNames

[em] Uma matriz de nomes de arquivo conhecidos pelo IDE.

pfnPopulate

[em] A função de retorno de chamada do IDE para chamar para adicionar e remover arquivos (consulte POPLISTFUNC para obter detalhes).

pvCallerData

[em] Valor que deve ser passado inalterado para a função de retorno de chamada.

lpStatus

[dentro, fora] Uma matriz para o plug-in de controle do código-fonte para retornar os sinalizadores de status para cada arquivo.

fOpções

[em] Sinalizadores de comando (consulte a seção "PopulateList flag" de Bitflags usados por comandos específicos para obter detalhes).

Valor de retorno

Espera-se que a implementação do plug-in de controle do código-fonte dessa função retorne um dos seguintes valores:

Valor Descrição
SCC_OK Êxito.
SCC_E_NONSPECIFICERROR Falha inespecífica.

Comentários

Essa função examina a lista de arquivos para seu status atual. Ele usa a pfnPopulate função de retorno de chamada para notificar o chamador quando um arquivo não corresponde aos critérios do nCommand. Por exemplo, se o comando for e não for SCC_COMMAND_CHECKIN feito check-out de um arquivo na lista, o retorno de chamada será usado para informar o chamador. Ocasionalmente, o plug-in de controle do código-fonte pode encontrar outros arquivos que poderiam fazer parte do comando e adicioná-los. Isso permite, por exemplo, que um usuário do Visual Basic faça check-out de um arquivo de .bmp que é usado por seu projeto, mas não aparece no arquivo de projeto do Visual Basic. Um usuário escolhe o comando Get no IDE. O IDE exibirá uma lista de todos os arquivos que ele acha que o usuário pode obter, mas antes que a lista seja mostrada, a função é chamada para garantir que a lista a SccPopulateList ser exibida esteja atualizada.

Exemplo

O IDE cria uma lista de arquivos que ele acha que o usuário pode obter. Antes de exibir essa lista, ele chama a função, dando ao plug-in de controle do código-fonte a SccPopulateList oportunidade de adicionar e excluir arquivos da lista. O plug-in modifica a lista chamando a função de retorno de chamada fornecida (consulte POPLISTFUNC para obter mais detalhes).

O plug-in continua a chamar a pfnPopulate função, que adiciona e exclui arquivos, até que seja concluída e, em seguida, retorna da SccPopulateList função. O IDE pode então exibir sua lista. A lpStatus matriz representa todos os arquivos na lista original passados pelo IDE. O plug-in preenche o status de todos esses arquivos, além de fazer uso da função de retorno de chamada.

Observação

Um plug-in de controle de origem sempre tem a opção de simplesmente retornar imediatamente dessa função, deixando a lista como está. Se um plug-in implementar essa função, ele poderá indicar isso definindo o bitflag de capacidade na primeira chamada para o SCC_CAP_POPULATELIST SccInitialize. Por padrão, o plug-in deve sempre assumir que todos os itens que estão sendo passados são arquivos. No entanto, se o IDE definir o SCC_PL_DIR sinalizador no fOptions parâmetro, todos os itens que estão sendo passados serão considerados diretórios. O plug-in deve adicionar todos os arquivos que pertencem aos diretórios. O IDE nunca passará em uma mistura de arquivos e diretórios.

Confira também