Diretrizes de implementação da interface

Esta seção fornece diretrizes para a implementação da interface.

Nesta seção

Tópico Descrição

Interfaces disponíveis e APIs relacionadas

Há três interfaces GPIO: uma para cada dispositivo. Cada interface é referenciada por um GUID.

Implementação do indicador

Este tópico descreve a implementação do indicador.

Implementação de botão

Recomendamos que você use um recurso de GPIO físico para os botões e indicadores de estado.

Estado do sistema

O estado padrão para todos os botões compatíveis com o driver de caixa de entrada na carga está na posição UP.

A primeira indicação usando a interface alternou o botão especificado (por índice) para um estado de DOWN.

O estado padrão do indicador de modo laptop/slate é SLATE.

O estado padrão do indicador de modo encaixado é UNDOCKED.

A indicação inicial pela interface mudou o indicador para o outro estado.

Para consultar o estado, você pode usar a API GetSystemMetric da seguinte maneira:

int WINAPI GetSystemMetrics(
  _In_  int nIndex
);

Parâmetros disponíveis para indicadores:

  • SM_SYSTEMDOCKED para o estado de encaixe. A chamada retorna 0 para o Modo Desencaixado e não zero, caso contrário.
  • SM_CONVERTIBLESLATEMODE para o modo tablet. A chamada retorna 0 para o Modo Slate e não zero caso contrário.

Notificações

Quando a métrica do sistema SM_CONVERTIBLESLATEMODE ou SM_SYSTEMDOCKED é alterada, uma mensagem de transmissão é enviada pelo sistema usando WM_SETTINGCHANGE.

O LPARAM da mensagem WM_SETTINGCHANGE indica qual métrica do sistema foi alterada usando uma cadeia de caracteres "ConvertibleSlateMode" ou "SystemDockMode".