Compartilhar via


IPimSrcContactListIcon::Paint

Windows Mobile SupportedWindows Embedded CE Not Supported

9/8/2008

The O Paint método permite que um provedor de fonte para desenhar um alternativo ícone para o associado contato itens quando eles aparecem no exibição de lista contato.

Observação

Para utilizar esse mecanismo, você deverá fornecer seu próprio implementação para O Paint, em uma nova classe que deriva de IPimSrcContactListIcon.

Syntax

HRESULT Paint(
   const SRCCUSTOMDRAW * pscd,
   CEOID oid
)

Parameters

  • pscd
    [no] Referência a uma estrutura SRCCUSTOMDRAW, que contém informações pintura que usa o Source Provider para desenhar o ícone.
  • OID
    [no] Referência para o atual gerenciador de informações pessoais Object Identifier (OID) do item. OIDs são valores DWORD que identificam POOM itens dentro de um armazenamento do item. Em POOM, um OID é também um identificador de objeto Windows CE (CEOID), que identificam todos os objetos WINCE (bancos de dados, volumes banco de dados, banco de dados registros, arquivos, chaves Registro, etc.). Você pode localizar a definição para esse tipo na Windbase.h header file.

    Observação

    Isso será zero se a propriedade já existe para o atual contato.

Return Value

This method returns the standard values E_INVALIDARG e MapVirtualKey. E_FALSE, as well as o seguinte.

  • S_OK
    The method completed successfully.

Remarks

Fonte provedores e seus associado fazem do Source ID parte de um mecanismo que ofereça suporte por-provedor personalização da experiência do gerenciador de informações pessoais em dispositivos Windows Mobile powered.

Um provedor de origem é um personalizado função que personaliza experiência do usuário Gerenciador de informações pessoais. Normalmente, um provedor de fonte tem uma correspondente associar função que é responsável Sincronizando dados gerenciador de informações pessoais com o dispositivo Windows Mobile powered. Dados sincronizado com o dispositivo Windows Mobile powered por este associar função é marcada com uma marca de identificação de fonte (Source ID). Quando Outlook Mobile exibe um PIM item, ele verifica se o item tem um ID. de origem Se encontrar um, ele chama o provedor de fonte, que personaliza a interface usuário para o gerenciador de informações pessoais item.

Quando os usuários inserem novos contatos e compromissos, pode selecionar um provedor de fonte para associar com eles.

Um válido Source ID é um DWORD com somente conjunto 1 bit (isto é, há identificações de origem possíveis 32).

Embora sejam itens de contatos e compromissos, regardless of Source ID, sincronizado com Microsoft Exchange — as identificações de origem não são.

As identificações de origem não são com suporte para itens de tarefas.

Como contatos e compromissos podem ser associado com apenas uma Source Provider, sua implementação instalação Source Provider deve selecionar um Source ID that is exclusivo no domínio de todos os Source Providers instalado o dispositivo Windows Mobile powered (ele é considerado um erro para determinar as identificações de fonte prior to instalar). A implementação deve escolher um exclusivo Source ID por Iterando primeiro sobre o Source Providers instalado registrado na chave \HKLM\PIMSources\e em seguida, escolhendo o próximo disponível ID. de origem

O valor Source ID usar como padrão é zero (0). Itens de contato e compromisso com um valor Source ID do zero não são associado com um Source Provider e apenas use a interface usuário usar como padrão.

Sua implementação desinstalar Source Provider deve redefinir o campo Source ID de tudo associado itens de contatos e compromissos voltar para zero.

O contato item OID é passado como um parâmetro para IPimSrcContactListIcon::Paint Para que o provedor de origem possam aspecto até as propriedades adicionais ele pode requerer em ordem para determinar como para desenhar o contato item.

Fontes deve desenhar usando um transparente segundo plano.

Exemplo de código

O seguinte exemplo de código demonstra como usar O Paint. CTestProvider é a classe que implementa o servidor COM para o provedor origem, e ele deriva de IPimSrcContactListIcon.

Observação

Para tornar o exemplo de código mais fácil para ler, verificação de segurança e manipulação de erro não estão incluídos.This code example should not be used in a release configuration unless it has been modified to include them.

// The following are assumed to be already defined in the resource and header files.
//    #define IDI_APP_PROVIDERICON 101;
//    static LPTSTR g_szIconResource = MAKEINTRESOURCE(IDI_APP_PROVIDERICON);
//    IDI_APP_PROVIDERICON ICON DISCARDABLE "SampleIcon.ico";

STDMETHODIMP CTestProvider::Paint(const SRCCUSTOMDRAW *pscd, CEOID oid)
{
    HRESULT hr = S_OK;

    // Load an icon from the resource, and setup the required resources.
    HICON hIcons = LoadIcon((HINSTANCE) g_hInstance, g_szIconResource);

    // Draw the custom icon using the RECT information.
    DrawIconEx(pscd->hdc, pscd->rc.left, pscd->rc.top, hIcons, (pscd->rc.right - pscd->rc.left), (pscd->rc.bottom - pscd->rc.top), 0, NULL, DI_NORMAL);

    DestroyIcon(hIcons);

    return hr;
}

Requirements

Header pimstore.h
Library Pimstore.lib
Windows Mobile Pocket PC for Windows Mobile Version 5.0 and later, Smartphone for Windows Mobile Version 5.0 and later

See Also

Reference

IPimSrcContactListIcon
Customizing the PIM User Experience by Using Source Providers
Source Provider Customization Type Flags
Source Provider PIM Type Ownership Flags
PIMSRC_COLOR
IPimSrcContactSummaryCard::Display
IPimSrcContactNew::Create

Other Resources

Register a Source Provider