You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1032 lines
26 KiB
1032 lines
26 KiB
//
|
|
// candobj.h
|
|
//
|
|
|
|
#ifndef CANDOBJ_H
|
|
#define CANDOBJ_H
|
|
|
|
#include "mscandui.h"
|
|
#include "candprop.h"
|
|
#include "candfunc.h"
|
|
#include "candext.h"
|
|
|
|
|
|
class CCandidateUI;
|
|
|
|
//
|
|
// CCandidateStringEx
|
|
//
|
|
|
|
class CCandidateStringEx : public ITfCandidateString,
|
|
public ITfCandidateStringInlineComment,
|
|
public ITfCandidateStringPopupComment,
|
|
public ITfCandidateStringColor,
|
|
public ITfCandidateStringFixture,
|
|
public ITfCandidateStringIcon
|
|
{
|
|
public:
|
|
CCandidateStringEx( CCandidateItem *pCandItem );
|
|
virtual ~CCandidateStringEx( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandidateString methods
|
|
//
|
|
STDMETHODIMP GetString( BSTR *pbstr );
|
|
STDMETHODIMP GetIndex( ULONG *pnIndex );
|
|
|
|
//
|
|
// ITfCandidateStringInlineComment methods
|
|
//
|
|
STDMETHODIMP GetInlineCommentString( BSTR *pbstr );
|
|
|
|
//
|
|
// ITfCandidateStringPopupComment methods
|
|
//
|
|
STDMETHODIMP GetPopupCommentString( BSTR *pbstr );
|
|
STDMETHODIMP GetPopupCommentGroupID( DWORD *pdwGroupID );
|
|
|
|
//
|
|
// ITfCandidateStringColor methods
|
|
//
|
|
STDMETHODIMP GetColor( CANDUICOLOR *pcol );
|
|
|
|
//
|
|
// ITfCandidateStringFixture methods
|
|
//
|
|
STDMETHODIMP GetPrefixString( BSTR *pbstr );
|
|
STDMETHODIMP GetSuffixString( BSTR *pbstr );
|
|
|
|
//
|
|
// ITfCandidateStringIcon methods
|
|
//
|
|
STDMETHODIMP GetIcon( HICON *phIcon );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandidateItem *m_pCandItem;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUICandWindow
|
|
//
|
|
|
|
class CCandUICandWindow : public ITfCandUICandWindow
|
|
{
|
|
public:
|
|
CCandUICandWindow( CCandWindowProperty *pProp );
|
|
virtual ~CCandUICandWindow( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
//
|
|
// ITfCandUIWindow methods
|
|
//
|
|
STDMETHODIMP GetWindow( HWND *phWnd );
|
|
STDMETHODIMP SetUIDirection( CANDUIUIDIRECTION textflow );
|
|
STDMETHODIMP GetUIDirection( CANDUIUIDIRECTION *ptextflow );
|
|
STDMETHODIMP EnableAutoMove( BOOL fEnable );
|
|
STDMETHODIMP IsAutoMoveEnabled( BOOL *pfEnabled );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandWindowProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUICandListBox
|
|
//
|
|
|
|
class CCandUICandListBox : public ITfCandUICandListBox
|
|
{
|
|
public:
|
|
CCandUICandListBox( CCandListBoxProperty *pProp );
|
|
virtual ~CCandUICandListBox( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
//
|
|
// ITfCandUICandListBox methods
|
|
//
|
|
STDMETHODIMP SetHeight( LONG lLines );
|
|
STDMETHODIMP GetHeight( LONG *plLines );
|
|
STDMETHODIMP GetCandidateStringRect( ULONG nIndex, RECT *prc );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandListBoxProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUICandString
|
|
//
|
|
|
|
class CCandUICandString : public ITfCandUICandString
|
|
{
|
|
public:
|
|
CCandUICandString( CCandStringProperty *pProp );
|
|
virtual ~CCandUICandString( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandStringProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUICandIndex
|
|
//
|
|
|
|
class CCandUICandIndex : public ITfCandUICandIndex
|
|
{
|
|
public:
|
|
CCandUICandIndex( CCandIndexProperty *pProp );
|
|
virtual ~CCandUICandIndex( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandIndexProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIInlineComment
|
|
//
|
|
|
|
class CCandUIInlineComment : public ITfCandUIInlineComment
|
|
{
|
|
public:
|
|
CCandUIInlineComment( CInlineCommentProperty *pProp );
|
|
virtual ~CCandUIInlineComment( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CInlineCommentProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIPopupCommentWindow
|
|
//
|
|
|
|
class CCandUIPopupCommentWindow : public ITfCandUIPopupCommentWindow
|
|
{
|
|
public:
|
|
CCandUIPopupCommentWindow( CPopupCommentWindowProperty *pProp );
|
|
virtual ~CCandUIPopupCommentWindow( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
//
|
|
// ITfCandUIPopupCommentWindow methods
|
|
//
|
|
STDMETHODIMP GetWindow( HWND *phWnd );
|
|
STDMETHODIMP SetDelayTime( LONG lTime );
|
|
STDMETHODIMP GetDelayTime( LONG *plTime );
|
|
STDMETHODIMP EnableAutoMove( BOOL fEnable );
|
|
STDMETHODIMP IsAutoMoveEnabled( BOOL *pfEnabled );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CPopupCommentWindowProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIPopupCommentTitle
|
|
//
|
|
|
|
class CCandUIPopupCommentTitle : public ITfCandUIPopupCommentTitle
|
|
{
|
|
public:
|
|
CCandUIPopupCommentTitle( CPopupCommentTitleProperty *pProp );
|
|
virtual ~CCandUIPopupCommentTitle( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CPopupCommentTitleProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIPopupCommentText
|
|
//
|
|
|
|
class CCandUIPopupCommentText : public ITfCandUIPopupCommentText
|
|
{
|
|
public:
|
|
CCandUIPopupCommentText( CPopupCommentTextProperty *pProp );
|
|
virtual ~CCandUIPopupCommentText( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CPopupCommentTextProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIToolTip
|
|
//
|
|
|
|
class CCandUIToolTip : public ITfCandUIToolTip
|
|
{
|
|
public:
|
|
CCandUIToolTip( CToolTipProperty *pProp );
|
|
virtual ~CCandUIToolTip( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CToolTipProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUICaption
|
|
//
|
|
|
|
class CCandUICaption : public ITfCandUICaption
|
|
{
|
|
public:
|
|
CCandUICaption( CWindowCaptionProperty *pProp );
|
|
virtual ~CCandUICaption( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CWindowCaptionProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIMenuButton
|
|
//
|
|
|
|
class CCandUIMenuButton : public ITfCandUIMenuButton
|
|
{
|
|
public:
|
|
CCandUIMenuButton( CMenuButtonProperty *pProp );
|
|
virtual ~CCandUIMenuButton( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
//
|
|
// ITfCandUIMenuButton methods
|
|
//
|
|
STDMETHODIMP Advise( ITfCandUIMenuEventSink *pSink );
|
|
STDMETHODIMP Unadvise( void );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CMenuButtonProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIExtraCandidate
|
|
//
|
|
|
|
class CCandUIExtraCandidate : public ITfCandUIExtraCandidate
|
|
{
|
|
public:
|
|
CCandUIExtraCandidate( CExtraCandidateProperty *pProp );
|
|
virtual ~CCandUIExtraCandidate( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CExtraCandidateProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIRawData
|
|
//
|
|
|
|
class CCandUIRawData : public ITfCandUIRawData
|
|
{
|
|
public:
|
|
CCandUIRawData( CCandRawDataProperty *pProp );
|
|
virtual ~CCandUIRawData( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandRawDataProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUICandTipWindow
|
|
//
|
|
|
|
class CCandUICandTipWindow : public ITfCandUICandTipWindow
|
|
{
|
|
public:
|
|
CCandUICandTipWindow( CCandTipWindowProperty *pProp );
|
|
virtual ~CCandUICandTipWindow( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
//
|
|
// ITfCandUICandTipWindow methods
|
|
//
|
|
STDMETHODIMP GetWindow( HWND *phWnd );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandTipWindowProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUICandTipButton
|
|
//
|
|
|
|
class CCandUICandTipButton : public ITfCandUICandTipButton
|
|
{
|
|
public:
|
|
CCandUICandTipButton( CCandTipButtonProperty *pProp );
|
|
virtual ~CCandUICandTipButton( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIObject methods
|
|
//
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandTipButtonProperty *m_pProp;
|
|
};
|
|
|
|
|
|
//
|
|
//
|
|
//
|
|
|
|
class CCandUIFnAutoFilter : public ITfCandUIFnAutoFilter
|
|
{
|
|
public:
|
|
CCandUIFnAutoFilter( CCandidateUI *pCandUI, CCandFnAutoFilter *pFnFilter );
|
|
virtual ~CCandUIFnAutoFilter( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIFnAutoFilter methods
|
|
//
|
|
STDMETHODIMP Advise( ITfCandUIAutoFilterEventSink *pSink );
|
|
STDMETHODIMP Unadvise( void );
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP GetFilteringString( CANDUIFILTERSTR strtype, BSTR *pbstr );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandidateUI *m_pCandUI;
|
|
CCandFnAutoFilter *m_pFnAutoFilter;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIFnSort
|
|
//
|
|
|
|
class CCandUIFnSort : public ITfCandUIFnSort
|
|
{
|
|
public:
|
|
CCandUIFnSort( CCandidateUI *pCandUI, CCandFnSort *pFnSort );
|
|
virtual ~CCandUIFnSort( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandFnSort methods
|
|
//
|
|
STDMETHODIMP Advise( ITfCandUISortEventSink *pSink );
|
|
STDMETHODIMP Unadvise( void );
|
|
STDMETHODIMP SortCandidateList( BOOL fSort );
|
|
STDMETHODIMP IsCandidateListSorted( BOOL *pfSorted );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandidateUI *m_pCandUI;
|
|
CCandFnSort *m_pFnSort;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIFnExtension
|
|
//
|
|
|
|
class CCandUIFnExtension : public ITfCandUIFnExtension
|
|
{
|
|
public:
|
|
CCandUIFnExtension( CCandidateUI *pCandUI, CCandUIExtensionMgr *pExtensionMgr );
|
|
virtual ~CCandUIFnExtension( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIFnExtension methods
|
|
//
|
|
STDMETHODIMP AddExtObject( LONG id, REFIID riid, IUnknown **ppunk );
|
|
STDMETHODIMP GetExtObject( LONG id, REFIID riid, IUnknown **ppunk );
|
|
STDMETHODIMP DeleteExtObject( LONG id );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandidateUI *m_pCandUI;
|
|
CCandUIExtensionMgr *m_pExtensionMgr;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIFnKeyConfig
|
|
//
|
|
|
|
class CCandUIFnKeyConfig : public ITfCandUIFnKeyConfig
|
|
{
|
|
public:
|
|
CCandUIFnKeyConfig( CCandidateUI *pCandUI );
|
|
virtual ~CCandUIFnKeyConfig( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// CCandUIFnKeyConfig methods
|
|
//
|
|
STDMETHODIMP SetKeyTable( ITfContext *pic, ITfCandUIKeyTable *pCandUIKeyTable );
|
|
STDMETHODIMP GetKeyTable( ITfContext *pic, ITfCandUIKeyTable **ppCandUIKeyTable);
|
|
STDMETHODIMP ResetKeyTable( ITfContext *pic );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandidateUI *m_pCandUI;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIFnUIConfig
|
|
//
|
|
|
|
class CCandUIFnUIConfig : public ITfCandUIFnUIConfig
|
|
{
|
|
public:
|
|
CCandUIFnUIConfig( CCandidateUI *pCandUI );
|
|
virtual ~CCandUIFnUIConfig( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// CCandUIFnUIConfig methods
|
|
//
|
|
STDMETHODIMP SetUIStyle( ITfContext *pic, CANDUISTYLE style );
|
|
STDMETHODIMP GetUIStyle( ITfContext *pic, CANDUISTYLE *pstyle );
|
|
STDMETHODIMP SetUIOption( ITfContext *pic, DWORD dwOption );
|
|
STDMETHODIMP GetUIOption( ITfContext *pic, DWORD *pdwOption );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandidateUI *m_pCandUI;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIExtSpace
|
|
//
|
|
|
|
class CCandUIExtSpace : public ITfCandUIExtSpace
|
|
{
|
|
public:
|
|
CCandUIExtSpace( CCandidateUI *pCandUI, CExtensionSpace *pExtension );
|
|
virtual ~CCandUIExtSpace( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIExtObject methods
|
|
//
|
|
STDMETHODIMP GetID( LONG *pid );
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandidateUI *m_pCandUI;
|
|
CExtensionSpace *m_pExtension;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIExtPushButton
|
|
//
|
|
|
|
class CCandUIExtPushButton : public ITfCandUIExtPushButton
|
|
{
|
|
public:
|
|
CCandUIExtPushButton( CCandidateUI *pCandUI, CExtensionPushButton *pExtension );
|
|
virtual ~CCandUIExtPushButton( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIExtObject methods
|
|
//
|
|
STDMETHODIMP GetID( LONG *pid );
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
//
|
|
// ITfCandUIExtPushButton method
|
|
//
|
|
STDMETHODIMP Advise( ITfCandUIExtButtonEventSink *pSink );
|
|
STDMETHODIMP Unadvise( void );
|
|
STDMETHODIMP SetIcon( HICON hIcon );
|
|
STDMETHODIMP SetBitmap( HBITMAP hBitmap );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandidateUI *m_pCandUI;
|
|
CExtensionPushButton *m_pExtension;
|
|
};
|
|
|
|
|
|
//
|
|
// CCandUIExtToggleButton
|
|
//
|
|
|
|
class CCandUIExtToggleButton : public ITfCandUIExtToggleButton
|
|
{
|
|
public:
|
|
CCandUIExtToggleButton( CCandidateUI *pCandUI, CExtensionToggleButton *pExtension );
|
|
virtual ~CCandUIExtToggleButton( void );
|
|
|
|
//
|
|
// IUnknown methods
|
|
//
|
|
STDMETHODIMP QueryInterface( REFIID riid, void **ppvObj );
|
|
STDMETHODIMP_(ULONG) AddRef( void );
|
|
STDMETHODIMP_(ULONG) Release( void );
|
|
|
|
//
|
|
// ITfCandUIExtObject methods
|
|
//
|
|
STDMETHODIMP GetID( LONG *pid );
|
|
STDMETHODIMP Enable( BOOL fEnable );
|
|
STDMETHODIMP IsEnabled( BOOL *pfEnabled );
|
|
STDMETHODIMP Show( BOOL fShow );
|
|
STDMETHODIMP IsVisible( BOOL *pfVisible );
|
|
STDMETHODIMP SetPosition( POINT *pptPos );
|
|
STDMETHODIMP GetPosition( POINT *pptPos );
|
|
STDMETHODIMP SetSize( SIZE *psize );
|
|
STDMETHODIMP GetSize( SIZE *psize );
|
|
STDMETHODIMP SetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP GetFont( LOGFONTW *pLogFont );
|
|
STDMETHODIMP SetText( BSTR bstr );
|
|
STDMETHODIMP GetText( BSTR *pbstr );
|
|
STDMETHODIMP SetToolTipString( BSTR bstr );
|
|
STDMETHODIMP GetToolTipString( BSTR *pbstr );
|
|
|
|
//
|
|
// ITfCandUIExtToggleButton method
|
|
//
|
|
STDMETHODIMP Advise( ITfCandUIExtButtonEventSink *pSink );
|
|
STDMETHODIMP Unadvise( void );
|
|
STDMETHODIMP SetIcon( HICON hIcon );
|
|
STDMETHODIMP SetBitmap( HBITMAP hBitmap );
|
|
STDMETHODIMP SetToggleState( BOOL fToggle );
|
|
STDMETHODIMP GetToggleState( BOOL *pfToggled );
|
|
|
|
protected:
|
|
long m_cRef;
|
|
CCandidateUI *m_pCandUI;
|
|
CExtensionToggleButton *m_pExtension;
|
|
};
|
|
|
|
#endif // CANDOBJ_H
|
|
|