ReactOS 0.4.16-dev-251-ga17b6e9
CFnDocFeed Class Reference

#include <misc.h>

Inheritance diagram for CFnDocFeed:
Collaboration diagram for CFnDocFeed:

Public Member Functions

 CFnDocFeed ()
 
virtual ~CFnDocFeed ()
 
STDMETHODIMP QueryInterface (_In_ REFIID riid, _Out_ LPVOID *ppvObj) override
 @implemented
 
 STDMETHODIMP_ (ULONG) AddRef() override
 
 STDMETHODIMP_ (ULONG) Release() override
 
STDMETHODIMP DocFeed () override
 @implemented
 
STDMETHODIMP ClearDocFeedBuffer () override
 @implemented
 
STDMETHODIMP StartReconvert () override
 @unimplemented
 
STDMETHODIMP StartUndoCompositionString () override
 @implemented
 
STDMETHOD() DocFeed ()=0
 
STDMETHOD() ClearDocFeedBuffer ()=0
 
STDMETHOD() StartReconvert ()=0
 
STDMETHOD() StartUndoCompositionString ()=0
 
- Public Member Functions inherited from IUnknown
HRESULT QueryInterface ([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
 
ULONG AddRef ()
 
ULONG Release ()
 

Private Attributes

LONG m_cRefs
 

Additional Inherited Members

- Public Types inherited from IUnknown
typedef IUnknownLPUNKNOWN
 

Detailed Description

Definition at line 113 of file misc.h.

Constructor & Destructor Documentation

◆ CFnDocFeed()

CFnDocFeed::CFnDocFeed ( )

Definition at line 524 of file misc.cpp.

525{
526 m_cRefs = 1;
527}
LONG m_cRefs
Definition: misc.h:115

◆ ~CFnDocFeed()

CFnDocFeed::~CFnDocFeed ( )
virtual

Definition at line 529 of file misc.cpp.

530{
531}

Member Function Documentation

◆ ClearDocFeedBuffer()

STDMETHODIMP CFnDocFeed::ClearDocFeedBuffer ( )
overridevirtual

@implemented

Implements IAImmFnDocFeed.

Definition at line 587 of file misc.cpp.

588{
589 if (!TLS::GetTLS())
590 return E_OUTOFMEMORY;
591
592 HIMC hIMC = GetActiveContext();
593 CicIMCLock imcLock(hIMC);
594 if (FAILED(imcLock.m_hr))
595 return imcLock.m_hr;
596
597 CicIMCCLock<CTFIMECONTEXT> imeContext(imcLock.get().hCtfImeContext);
598 if (FAILED(imeContext.m_hr))
599 return imeContext.m_hr;
600
601 CicInputContext *pCicIC = imeContext.get().m_pCicIC;
602 if (!pCicIC)
603 return E_FAIL;
604
605 pCicIC->EscbClearDocFeedBuffer(imcLock, TRUE);
606 return S_OK;
607}
HRESULT EscbClearDocFeedBuffer(CicIMCLock &imcLock, BOOL bFlag)
@unimplemented
static TLS * GetTLS()
@implemented
Definition: tls.cpp:32
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define E_FAIL
Definition: ddrawi.h:102
DWORD HIMC
Definition: dimm.idl:75
#define TRUE
Definition: types.h:120
HIMC GetActiveContext(VOID)
Definition: misc.cpp:94
#define S_OK
Definition: intsafe.h:52
#define FAILED(hr)
Definition: intsafe.h:51

◆ DocFeed()

STDMETHODIMP CFnDocFeed::DocFeed ( )
overridevirtual

@implemented

Implements IAImmFnDocFeed.

Definition at line 562 of file misc.cpp.

563{
564 TLS *pTLS = TLS::GetTLS();
565 if (!pTLS)
566 return E_OUTOFMEMORY;
567
568 HIMC hIMC = GetActiveContext();
569 CicIMCLock imcLock(hIMC);
570 if (FAILED(imcLock.m_hr))
571 return imcLock.m_hr;
572
573 CicIMCCLock<CTFIMECONTEXT> imeContext(imcLock.get().hCtfImeContext);
574 if (FAILED(imeContext.m_hr))
575 return imeContext.m_hr;
576 CicInputContext *pCicIC = imeContext.get().m_pCicIC;
577 if (!pCicIC)
578 return E_FAIL;
579
580 UINT uCodePage = CP_ACP;
581 pTLS->m_pProfile->GetCodePageA(&uCodePage);
582 pCicIC->SetupDocFeedString(imcLock, uCodePage);
583 return S_OK;
584}
HRESULT SetupDocFeedString(CicIMCLock &imcLock, UINT uCodePage)
@unimplemented
HRESULT GetCodePageA(_Out_ UINT *puCodePage)
@implemented
Definition: profile.cpp:83
Definition: tls.h:14
CicProfile * m_pProfile
Definition: tls.h:20
#define CP_ACP
Definition: compat.h:109
unsigned int UINT
Definition: ndis.h:50

◆ QueryInterface()

STDMETHODIMP CFnDocFeed::QueryInterface ( _In_ REFIID  riid,
_Out_ LPVOID ppvObj 
)
override

@implemented

Definition at line 534 of file misc.cpp.

535{
536 static const QITAB c_tab[] =
537 {
539 { NULL }
540 };
541 return ::QISearch(this, c_tab, riid, ppvObj);
542}
#define NULL
Definition: types.h:112
REFIID riid
Definition: atlbase.h:39
#define QITABENT(Cthis, Ifoo)
Definition: shlwapi.h:2122

◆ StartReconvert()

STDMETHODIMP CFnDocFeed::StartReconvert ( )
overridevirtual

@unimplemented

Implements IAImmFnDocFeed.

Definition at line 610 of file misc.cpp.

611{
612 TLS *pTLS = TLS::GetTLS();
613 if (!pTLS)
614 return E_OUTOFMEMORY;
615 auto *pThreadMgr = pTLS->m_pThreadMgr;
616 if (!pThreadMgr)
617 return E_OUTOFMEMORY;
618
619 HIMC hIMC = GetActiveContext();
620 CicIMCLock imcLock(hIMC);
621 if (FAILED(imcLock.m_hr))
622 return imcLock.m_hr;
623
624 CicIMCCLock<CTFIMECONTEXT> imeContext(imcLock.get().hCtfImeContext);
625 if (FAILED(imeContext.m_hr))
626 return imeContext.m_hr;
627 CicInputContext *pCicIC = imeContext.get().m_pCicIC;
628 if (!pCicIC)
629 return E_FAIL;
630
631 UINT uCodePage = CP_ACP;
632 pTLS->m_pProfile->GetCodePageA(&uCodePage);
633
634 pCicIC->m_bReconverting = TRUE;
635 pCicIC->SetupReconvertString(imcLock, pThreadMgr, uCodePage, 0, 0);
636 pCicIC->EndReconvertString(imcLock);
637 pCicIC->m_bReconverting = FALSE;
638 return S_OK;
639}
HRESULT SetupReconvertString(CicIMCLock &imcLock, ITfThreadMgr_P *pThreadMgr, UINT uCodePage, UINT uMsg, BOOL bUndo)
@unimplemented
HRESULT EndReconvertString(CicIMCLock &imcLock)
@unimplemented
ITfThreadMgr_P * m_pThreadMgr
Definition: tls.h:21
#define FALSE
Definition: types.h:117

◆ StartUndoCompositionString()

STDMETHODIMP CFnDocFeed::StartUndoCompositionString ( )
overridevirtual

@implemented

Implements IAImmFnDocFeed.

Definition at line 642 of file misc.cpp.

643{
644 TLS *pTLS = TLS::GetTLS();
645 if (!pTLS)
646 return E_OUTOFMEMORY;
647 auto *pThreadMgr = pTLS->m_pThreadMgr;
648 if (!pThreadMgr)
649 return E_OUTOFMEMORY;
650
651 HIMC hIMC = GetActiveContext();
652 CicIMCLock imcLock(hIMC);
653 if (FAILED(imcLock.m_hr))
654 return imcLock.m_hr;
655
656 CicIMCCLock<CTFIMECONTEXT> imeContext(imcLock.get().hCtfImeContext);
657 if (FAILED(imeContext.m_hr))
658 return imeContext.m_hr;
659 CicInputContext *pCicIC = imeContext.get().m_pCicIC;
660 if (!pCicIC)
661 return E_FAIL;
662
663 UINT uCodePage = CP_ACP;
664 pTLS->m_pProfile->GetCodePageA(&uCodePage);
665
666 pCicIC->SetupReconvertString(imcLock, pThreadMgr, uCodePage, 0, TRUE);
667 pCicIC->EndReconvertString(imcLock);
668 return S_OK;
669}

◆ STDMETHODIMP_() [1/2]

CFnDocFeed::STDMETHODIMP_ ( ULONG  )
override

◆ STDMETHODIMP_() [2/2]

CFnDocFeed::STDMETHODIMP_ ( ULONG  )
override

Member Data Documentation

◆ m_cRefs

LONG CFnDocFeed::m_cRefs
private

Definition at line 115 of file misc.h.

Referenced by CFnDocFeed().


The documentation for this class was generated from the following files: