Como usar métodos de tabulação no TOM
O exemplo a seguir fornece funções C que ilustram o uso dos métodos tab no Text Object Model (TOM). Presume-se que a maioria dos aplicativos inclua uma barra de ferramentas que mostre a posição atual e o tipo das guias para o parágrafo selecionado no momento.
O que você precisa saber
Tecnologias
Pré-requisitos
- C/C++
- Programação da interface do usuário do Windows
Instruções
Usar um método Tab
O exemplo de código a seguir demonstra como atualizar uma barra de ferramentas com os detalhes da guia atual.
HRESULT UpdateToolbar(ITextSelection *pSel)
{
HRESULT hr = S_OK;
ITextPara *pPara = 0;
float f;
long tbt; // tab type
long tbp;
hr = pSel->GetPara(&pPara);
if (FAILED(hr))
goto cleanup; // Paragraph properties are not supported
f = (float) -1.0; // Start at beginning
while (pPara->GetTab(tbgoNext, &f, &tbt, NULL) == S_OK)
{
// Do something like draw tab icon on toolbar here
// DrawTabPicture(f, tbt);
}
cleanup:
if (pPara)
pPara->Release();
return hr;
}
Copiar informações da guia
O exemplo a seguir mostra como copiar somente as informações de guia de uma interface ITextPara para outra. Ele usa dois parâmetros: ITextPara pParaFrom (o parágrafo do qual copiar guias) e ITextPara * * pParaFrom (o parágrafo para o qual copiar guias).
HRESULT CopyOnlyTabs(ITextPara *pParaFrom, ITextPara *pParaTo)
{
float f;
short tbt;
short style;
pParaTo->ClearAllTabs();
f = (float) -1.0;
while (pParaFrom->GetTab(tbgoNext, &f, &tbt, &style) == S_OK)
pParaTo->AddTab(f, tbt, style);
return S_OK;
}
Tópicos relacionados