Eu conheci a situação quando tenho que usar a longa lista de verificação de multiplicação. Tenho que adicionar alguns botões utilizáveis Selecionar tudo, Limpar tudo ou Reverter Invertido. Eu sei que a prática comum é usar os botões "Selecionar tudo" e "Limpar tudo". Mas, em muitos casos, o usuário pode selecionar apenas 5 itens e pressionar "Inverter" para inverter sua seleção.
Minha pergunta é: devo seguir para "regra não escrita" e usar "Selecionar tudo" ou posso adicionar "Inverter" como ação "estranha ou desconhecida" para selecionar/desmarcar itens em uma lista, se for realmente útil? Alguém já usou dessa maneira na prática?
ADICIONADO:
Exemplo: quero enviar uma mensagem para todos os usuários de contato, exceto alguém.
Se você precisar usar um botão Inverter, sugiro que você o rotule Flip para evitar confusão com Revert.
OTOH, para Limpar tudo e Selecionar tudo, pessoalmente, eu teria o mínimo de botões possível:
Se todas as respostas estiverem marcadas, marque o botão Limpar tudo
Se nenhuma resposta estiver marcada, marque-a como Selecionar tudo
Se apenas alguns estiverem marcados, marque-o como Selecionar tudo. Se o usuário clicar nele, o botão voltará a ser rotulado como Limpar tudo.
Se a intenção do usuário era limpar tudo em primeiro lugar, é preciso um clique extra do mouse, mas a carga cognitiva foi reduzida para todos.
Não vejo por que isso deve ser uma proposição de um ou outro. Selecionar tudo/Limpar tudo são as opções normais, mas se você acha que Inverter é um caso que surgiria o suficiente, por que não ter todos os três botões?
Em inglês, "Reverter" significa "retornar ao estado anterior", não significa o conceito matemático de "complemento". "Inverter" está mais próximo, mas eu evitaria isso totalmente desnecessariamente complexo e confuso.
Especialmente com tão poucas opções, é simples e óbvio para um usuário selecionar ou limpar todas e depois limpar ou selecionar a uma ou duas que deseja diferente. "BEIJO"
Acredito que você esteja realmente pensando em "Inverter" como o comportamento do botão "Reverter". Esse é um comportamento muito incomum e eu não o recomendaria, pois provavelmente confundirá o usuário. Pessoalmente, não vejo nada de errado com o comportamento 'Selecionar tudo/Limpar tudo' disponível para o usuário, se você achar que é uma ação que ele provavelmente usará. Esses botões devem ser uma conveniência para o usuário, para facilitar as ações.
Por fim, eu continuaria com as opções 'Selecionar tudo/Limpar tudo'.
Por que você não pode apenas ter os três botões?
Hmmm, isso é muito interessante. Devo dizer que se encontrasse um botão "Inverter" não saberia o que esperar. Acredito que o Photoshop tenha uma opção semelhante à "Select Inverse", que pode ser um pouco mais clara.
Dito isso, se você acredita que o caso de uso mais comum é que seus usuários geralmente desejam incluir tudo nessa lista mas uma opção ou duas, você já pensou em mudar a opção? Você pode fazer com que eles selecionem apenas as opções que não desejam incluir.
Outra maneira de explorar facilitando o processo de seleção para seus usuários seria verificar se há algum valor em lembrar as seleções para visitas repetidas. Dessa forma, se o usuário tivesse que verificar ou desmarcar, pelo menos, teria que fazê-lo apenas uma vez. (Claro, muito dependente da situação.)