55 lines
1.9 KiB
Plaintext
55 lines
1.9 KiB
Plaintext
//+-------------------------------------------------------------------------
|
|
//
|
|
// Microsoft Windows
|
|
// Copyright (C) Microsoft Corporation, 1992 - 1994.
|
|
//
|
|
// File: WBreak.idl
|
|
//
|
|
// Contents: IWordBreaker interface definition
|
|
//
|
|
// History: 12-Aug-93 AmyA Created
|
|
// 08-Apr-94 KyleP Sync to spec
|
|
//
|
|
//--------------------------------------------------------------------------
|
|
|
|
#include "idlmulti.h"
|
|
|
|
cpp_quote("#ifndef _tagTEXT_SOURCE_DEFINED")
|
|
struct tagTEXT_SOURCE;
|
|
typedef SCODE ( __stdcall * PFNFILLTEXTBUFFER) (struct tagTEXT_SOURCE * pTextSource);
|
|
|
|
typedef struct tagTEXT_SOURCE
|
|
{
|
|
PFNFILLTEXTBUFFER pfnFillTextBuffer;
|
|
WCHAR const * awcBuffer;
|
|
ULONG iEnd;
|
|
ULONG iCur;
|
|
} TEXT_SOURCE;
|
|
cpp_quote("#define _tagTEXT_SOURCE_DEFINED")
|
|
cpp_quote("#define _TEXT_SOURCE_DEFINED")
|
|
cpp_quote("#endif")
|
|
|
|
LOCAL_INTERFACE(D53552C8-77E3-101A-B552-08002B33B0E6)
|
|
interface IWordBreaker: IUnknown
|
|
{
|
|
SCODE Init( [in] BOOL fQuery,
|
|
[in] ULONG ulMaxTokenSize,
|
|
[out] BOOL * pfLicense );
|
|
|
|
SCODE BreakText( [in] TEXT_SOURCE * pTextSource,
|
|
[in] IWordSink * pWordSink,
|
|
[in] IPhraseSink * pPhraseSink );
|
|
|
|
SCODE ComposePhrase( [in, size_is(cwcNoun)] WCHAR const * pwcNoun,
|
|
[in] ULONG cwcNoun,
|
|
[in, size_is(cwcModifier)] WCHAR const * pwcModifier,
|
|
[in] ULONG cwcModifier,
|
|
[in] ULONG ulAttachmentType,
|
|
[out, size_is(*pcwcPhrase)] WCHAR * pwcPhrase,
|
|
[in, out] ULONG * pcwcPhrase );
|
|
|
|
SCODE GetLicenseToUse( [out, string] WCHAR const ** ppwcsLicense );
|
|
}
|
|
|
|
|