Compartilhar via


Diretrizes de implementação de interface

Esta seção fornece diretrizes para implementação de 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 no carregamento 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 primeira indicação usando a interface alternou 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 Modo Desencaixado e diferente de zero caso contrário.
  • SM_CONVERTIBLESLATEMODE para o modo slate. A chamada retorna 0 para Modo Slate e diferente de zero, caso contrário.

Notificações

Quando a métrica do sistema SM_CONVERTIBLESLATEMODE ou SM_SYSTEMDOCKED é alterada, uma mensagem de difusã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 de "ConvertibleSlateMode" ou "SystemDockMode".