Leaked source code of windows server 2003
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.

6563 lines
172 KiB

  1. //
  2. // candobj.cpp
  3. //
  4. #include "private.h"
  5. #include "globals.h"
  6. #include "candobj.h"
  7. #include "candui.h"
  8. #include "candprop.h"
  9. /*============================================================================*/
  10. /* */
  11. /* C C A N D I D A T E S T R I N G E X */
  12. /* */
  13. /*============================================================================*/
  14. /* C C A N D I D A T E S T R I N G E X */
  15. /*------------------------------------------------------------------------------
  16. Construotor of CCandidateStringEx
  17. ------------------------------------------------------------------------------*/
  18. CCandidateStringEx::CCandidateStringEx( CCandidateItem *pCandItem )
  19. {
  20. m_cRef = 1;
  21. m_pCandItem = pCandItem;
  22. }
  23. /* ~ C C A N D I D A T E S T R I N G E X */
  24. /*------------------------------------------------------------------------------
  25. Destruotor of CCandidateStringEx
  26. ------------------------------------------------------------------------------*/
  27. CCandidateStringEx::~CCandidateStringEx()
  28. {
  29. }
  30. /* Q U E R Y I N T E R F A C E */
  31. /*------------------------------------------------------------------------------
  32. Query interface
  33. (IUnknown method)
  34. ------------------------------------------------------------------------------*/
  35. STDAPI CCandidateStringEx::QueryInterface( REFIID riid, void **ppvObj )
  36. {
  37. if (ppvObj == NULL) {
  38. return E_POINTER;
  39. }
  40. *ppvObj = NULL;
  41. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandidateString )) {
  42. *ppvObj = SAFECAST( this, ITfCandidateString* );
  43. }
  44. else if (IsEqualIID( riid, IID_ITfCandidateStringInlineComment )) {
  45. *ppvObj = SAFECAST( this, ITfCandidateStringInlineComment* );
  46. }
  47. else if (IsEqualIID( riid, IID_ITfCandidateStringPopupComment )) {
  48. *ppvObj = SAFECAST( this, ITfCandidateStringPopupComment* );
  49. }
  50. else if (IsEqualIID( riid, IID_ITfCandidateStringColor )) {
  51. *ppvObj = SAFECAST( this, ITfCandidateStringColor* );
  52. }
  53. else if (IsEqualIID( riid, IID_ITfCandidateStringFixture )) {
  54. *ppvObj = SAFECAST( this, ITfCandidateStringFixture* );
  55. }
  56. else if (IsEqualIID( riid, IID_ITfCandidateStringIcon)) {
  57. *ppvObj = SAFECAST( this, ITfCandidateStringIcon* );
  58. }
  59. if (*ppvObj == NULL) {
  60. return E_NOINTERFACE;
  61. }
  62. AddRef();
  63. return S_OK;
  64. }
  65. /* A D D R E F */
  66. /*------------------------------------------------------------------------------
  67. Increment reference count
  68. (IUnknown method)
  69. ------------------------------------------------------------------------------*/
  70. STDAPI_(ULONG) CCandidateStringEx::AddRef( void )
  71. {
  72. m_cRef++;
  73. return m_cRef;
  74. }
  75. /* R E L E A S E */
  76. /*------------------------------------------------------------------------------
  77. Decrement reference count and release object
  78. (IUnknown method)
  79. ------------------------------------------------------------------------------*/
  80. STDAPI_(ULONG) CCandidateStringEx::Release( void )
  81. {
  82. m_cRef--;
  83. if (0 < m_cRef) {
  84. return m_cRef;
  85. }
  86. delete this;
  87. return 0;
  88. }
  89. /* G E T S T R I N G */
  90. /*------------------------------------------------------------------------------
  91. Get string of candidate item
  92. (ITfCandidateString method)
  93. ------------------------------------------------------------------------------*/
  94. HRESULT CCandidateStringEx::GetString( BSTR *pbstr )
  95. {
  96. if (pbstr == NULL) {
  97. return E_INVALIDARG;
  98. }
  99. *pbstr = SysAllocString( m_pCandItem->GetString() );
  100. return S_OK;
  101. }
  102. /* G E T I N D E X */
  103. /*------------------------------------------------------------------------------
  104. Get index of candidate item
  105. (ITfCandidateString method)
  106. ------------------------------------------------------------------------------*/
  107. HRESULT CCandidateStringEx::GetIndex( ULONG *pnIndex )
  108. {
  109. if (pnIndex == NULL) {
  110. return E_INVALIDARG;
  111. }
  112. *pnIndex = m_pCandItem->GetIndex();
  113. return S_OK;
  114. }
  115. /* G E T I N L I N E C O M M E N T S T R I N G */
  116. /*------------------------------------------------------------------------------
  117. Get inline comment string
  118. (ITfCandidateStringInlineComment method)
  119. Returns S_OK if inline comment is available, or S_FALSE if not avaiable.
  120. ------------------------------------------------------------------------------*/
  121. HRESULT CCandidateStringEx::GetInlineCommentString( BSTR *pbstr )
  122. {
  123. if (pbstr == NULL) {
  124. return E_INVALIDARG;
  125. }
  126. if (m_pCandItem->GetInlineComment() == NULL) {
  127. return S_FALSE;
  128. }
  129. *pbstr = SysAllocString( m_pCandItem->GetInlineComment() );
  130. return S_OK;
  131. }
  132. /* G E T P O P U P C O M M E N T S T R I N G */
  133. /*------------------------------------------------------------------------------
  134. Get popup comment string
  135. (ITfCandidateStringPopupComment method)
  136. Returns S_OK if popup comment is available, or S_FALSE if not avaiable.
  137. ------------------------------------------------------------------------------*/
  138. HRESULT CCandidateStringEx::GetPopupCommentString( BSTR *pbstr )
  139. {
  140. if (pbstr == NULL) {
  141. return E_INVALIDARG;
  142. }
  143. if (m_pCandItem->GetPopupComment() == NULL) {
  144. return S_FALSE;
  145. }
  146. *pbstr = SysAllocString( m_pCandItem->GetPopupComment() );
  147. return S_OK;
  148. }
  149. /* G E T P O P U P C O M M E N T G R O U P I D */
  150. /*------------------------------------------------------------------------------
  151. Get popup comment group id
  152. (ITfCandidateStringPopupComment method)
  153. Returns S_OK if popup comment is available, or S_FALSE if not avaiable.
  154. ------------------------------------------------------------------------------*/
  155. HRESULT CCandidateStringEx::GetPopupCommentGroupID( DWORD *pdwGroupID )
  156. {
  157. if (pdwGroupID == NULL) {
  158. return E_INVALIDARG;
  159. }
  160. *pdwGroupID = m_pCandItem->GetPopupCommentGroupID();
  161. return S_OK;
  162. }
  163. /* G E T C O L O R */
  164. /*------------------------------------------------------------------------------
  165. Get color
  166. (ITfCandidateStringCollor method)
  167. Returns S_OK if color information is available, or S_FALSE of not avaiable.
  168. ------------------------------------------------------------------------------*/
  169. HRESULT CCandidateStringEx::GetColor( CANDUICOLOR *pcol )
  170. {
  171. COLORREF cr;
  172. if (pcol == NULL) {
  173. return E_INVALIDARG;
  174. }
  175. if (!m_pCandItem->GetColor( &cr )) {
  176. return S_FALSE;
  177. }
  178. pcol->type = CANDUICOL_COLORREF;
  179. pcol->cr = cr;
  180. return S_OK;
  181. }
  182. /* G E T P R E F I X S T R I N G */
  183. /*------------------------------------------------------------------------------
  184. Get prefix string
  185. (ITfCandidateStringFixture method)
  186. Returns S_OK if prefix is available, or S_FALSE of not avaiable.
  187. ------------------------------------------------------------------------------*/
  188. STDMETHODIMP CCandidateStringEx::GetPrefixString( BSTR *pbstr )
  189. {
  190. if (pbstr == NULL) {
  191. return E_INVALIDARG;
  192. }
  193. if (m_pCandItem->GetPrefixString() == NULL) {
  194. return S_FALSE;
  195. }
  196. *pbstr = SysAllocString( m_pCandItem->GetPrefixString() );
  197. return S_OK;
  198. }
  199. /* G E T S U F F I X S T R I N G */
  200. /*------------------------------------------------------------------------------
  201. Get suffix string
  202. (ITfCandidateStringFixture method)
  203. Returns S_OK if suffix is available, or S_FALSE of not avaiable.
  204. ------------------------------------------------------------------------------*/
  205. STDMETHODIMP CCandidateStringEx::GetSuffixString( BSTR *pbstr )
  206. {
  207. if (pbstr == NULL) {
  208. return E_INVALIDARG;
  209. }
  210. if (m_pCandItem->GetSuffixString() == NULL) {
  211. return S_FALSE;
  212. }
  213. *pbstr = SysAllocString( m_pCandItem->GetSuffixString() );
  214. return S_OK;
  215. }
  216. /* G E T I C O N */
  217. /*------------------------------------------------------------------------------
  218. Get icon
  219. (ITfCandidateStringIcon method)
  220. Returns S_OK if icon is available, or S_FALSE of not avaiable.
  221. ------------------------------------------------------------------------------*/
  222. STDMETHODIMP CCandidateStringEx::GetIcon( HICON *phIcon )
  223. {
  224. if (phIcon == NULL) {
  225. return E_INVALIDARG;
  226. }
  227. if (m_pCandItem->GetIcon() == NULL) {
  228. return S_FALSE;
  229. }
  230. *phIcon = m_pCandItem->GetIcon();
  231. return S_OK;
  232. }
  233. /*============================================================================*/
  234. /* */
  235. /* C C A N D U I C A N D W I N D O W */
  236. /* */
  237. /*============================================================================*/
  238. /* C C A N D U I C A N D W I N D O W */
  239. /*------------------------------------------------------------------------------
  240. Constructor of CCandUICandWindow
  241. ------------------------------------------------------------------------------*/
  242. CCandUICandWindow::CCandUICandWindow( CCandWindowProperty *pProp )
  243. {
  244. m_cRef = 1;
  245. m_pProp = pProp;
  246. }
  247. /* ~ C C A N D U I C A N D W I N D O W */
  248. /*------------------------------------------------------------------------------
  249. Destructor of CCandUICandWindow
  250. ------------------------------------------------------------------------------*/
  251. CCandUICandWindow::~CCandUICandWindow( void )
  252. {
  253. }
  254. /* Q U E R Y I N T E R F A C E */
  255. /*------------------------------------------------------------------------------
  256. Query interface
  257. (IUnknown method)
  258. ------------------------------------------------------------------------------*/
  259. STDAPI CCandUICandWindow::QueryInterface( REFIID riid, void **ppvObj )
  260. {
  261. if (ppvObj == NULL) {
  262. return E_POINTER;
  263. }
  264. *ppvObj = NULL;
  265. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  266. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  267. }
  268. else if (IsEqualIID( riid, IID_ITfCandUICandWindow )) {
  269. *ppvObj = SAFECAST( this, ITfCandUICandWindow* );
  270. }
  271. if (*ppvObj == NULL) {
  272. return E_NOINTERFACE;
  273. }
  274. AddRef();
  275. return S_OK;
  276. }
  277. /* A D D R E F */
  278. /*------------------------------------------------------------------------------
  279. Increment reference count
  280. (IUnknown method)
  281. ------------------------------------------------------------------------------*/
  282. STDAPI_(ULONG) CCandUICandWindow::AddRef( void )
  283. {
  284. m_cRef++;
  285. return m_cRef;
  286. }
  287. /* R E L E A S E */
  288. /*------------------------------------------------------------------------------
  289. Decrement reference count and release object
  290. (IUnknown method)
  291. ------------------------------------------------------------------------------*/
  292. STDAPI_(ULONG) CCandUICandWindow::Release( void )
  293. {
  294. m_cRef--;
  295. if (0 < m_cRef) {
  296. return m_cRef;
  297. }
  298. delete this;
  299. return 0;
  300. }
  301. /* E N A B L E */
  302. /*------------------------------------------------------------------------------
  303. Enable/disable object
  304. (ITfCandUIObject method)
  305. ------------------------------------------------------------------------------*/
  306. STDAPI CCandUICandWindow::Enable( BOOL fEnable )
  307. {
  308. if (fEnable) {
  309. return m_pProp->Enable();
  310. }
  311. else {
  312. return m_pProp->Disable();
  313. }
  314. }
  315. /* I S E N A B L E D */
  316. /*------------------------------------------------------------------------------
  317. Get enable status of object
  318. (ITfCandUIObject method)
  319. ------------------------------------------------------------------------------*/
  320. STDAPI CCandUICandWindow::IsEnabled( BOOL *pfEnabled )
  321. {
  322. return m_pProp->IsEnabled( pfEnabled );
  323. }
  324. /* S H O W */
  325. /*------------------------------------------------------------------------------
  326. Show/hide object
  327. (ITfCandUIObject method)
  328. ------------------------------------------------------------------------------*/
  329. STDAPI CCandUICandWindow::Show( BOOL fShow )
  330. {
  331. if (fShow) {
  332. return m_pProp->Show();
  333. }
  334. else {
  335. return m_pProp->Hide();
  336. }
  337. }
  338. /* I S V I S I B L E */
  339. /*------------------------------------------------------------------------------
  340. Get visible state of object
  341. (ITfCandUIObject method)
  342. ------------------------------------------------------------------------------*/
  343. STDAPI CCandUICandWindow::IsVisible( BOOL *pfVisible )
  344. {
  345. return m_pProp->IsVisible( pfVisible );
  346. }
  347. /* S E T P O S I T I O N */
  348. /*------------------------------------------------------------------------------
  349. Set position of object
  350. (ITfCandUIObject method)
  351. ------------------------------------------------------------------------------*/
  352. STDAPI CCandUICandWindow::SetPosition( POINT *pptPos )
  353. {
  354. return m_pProp->SetPosition( pptPos );
  355. }
  356. /* G E T P O S I T I O N */
  357. /*------------------------------------------------------------------------------
  358. Get position of object
  359. (ITfCandUIObject method)
  360. ------------------------------------------------------------------------------*/
  361. STDAPI CCandUICandWindow::GetPosition( POINT *pptPos )
  362. {
  363. return m_pProp->GetPosition( pptPos );
  364. }
  365. /* S E T S I Z E */
  366. /*------------------------------------------------------------------------------
  367. Set size of object
  368. (ITfCandUIObject method)
  369. ------------------------------------------------------------------------------*/
  370. STDAPI CCandUICandWindow::SetSize( SIZE *psize )
  371. {
  372. return m_pProp->SetSize( psize );
  373. }
  374. /* G E T S I Z E */
  375. /*------------------------------------------------------------------------------
  376. Get size of object
  377. (ITfCandUIObject method)
  378. ------------------------------------------------------------------------------*/
  379. STDAPI CCandUICandWindow::GetSize( SIZE *psize )
  380. {
  381. return m_pProp->GetSize( psize );
  382. }
  383. /* S E T F O N T */
  384. /*------------------------------------------------------------------------------
  385. Set font of object
  386. (ITfCandUIObject method)
  387. ------------------------------------------------------------------------------*/
  388. STDAPI CCandUICandWindow::SetFont( LOGFONTW *pLogFont )
  389. {
  390. return m_pProp->SetFont( pLogFont );
  391. }
  392. /* G E T F O N T */
  393. /*------------------------------------------------------------------------------
  394. Get font of object
  395. (ITfCandUIObject method)
  396. ------------------------------------------------------------------------------*/
  397. STDAPI CCandUICandWindow::GetFont( LOGFONTW *pLogFont )
  398. {
  399. return m_pProp->GetFont( pLogFont );
  400. }
  401. /* S E T T E X T */
  402. /*------------------------------------------------------------------------------
  403. Set text of object
  404. (ITfCandUIObject method)
  405. ------------------------------------------------------------------------------*/
  406. STDAPI CCandUICandWindow::SetText( BSTR bstr )
  407. {
  408. return m_pProp->SetText( bstr );
  409. }
  410. /* G E T T E X T */
  411. /*------------------------------------------------------------------------------
  412. Get text of object
  413. (ITfCandUIObject method)
  414. ------------------------------------------------------------------------------*/
  415. STDAPI CCandUICandWindow::GetText( BSTR *pbstr )
  416. {
  417. return m_pProp->GetText( pbstr );
  418. }
  419. /* S E T T O O L T I P S T R I N G */
  420. /*------------------------------------------------------------------------------
  421. Set tooltip string of object
  422. (ITfCandUIObject method)
  423. ------------------------------------------------------------------------------*/
  424. STDAPI CCandUICandWindow::SetToolTipString( BSTR bstr )
  425. {
  426. return m_pProp->SetToolTipString( bstr );
  427. }
  428. /* G E T T O O L T I P S T R I N G */
  429. /*------------------------------------------------------------------------------
  430. Get tooltip string of object
  431. (ITfCandUIObject method)
  432. ------------------------------------------------------------------------------*/
  433. STDAPI CCandUICandWindow::GetToolTipString( BSTR *pbstr )
  434. {
  435. return m_pProp->GetToolTipString( pbstr );
  436. }
  437. /* G E T W I N D O W */
  438. /*------------------------------------------------------------------------------
  439. ------------------------------------------------------------------------------*/
  440. STDAPI CCandUICandWindow::GetWindow( HWND *phWnd )
  441. {
  442. return m_pProp->GetWindow( phWnd );
  443. }
  444. /* S E T U I D I R E C T I O N */
  445. /*------------------------------------------------------------------------------
  446. ------------------------------------------------------------------------------*/
  447. STDAPI CCandUICandWindow::SetUIDirection( CANDUIUIDIRECTION uidir )
  448. {
  449. return m_pProp->SetUIDirection( uidir );
  450. }
  451. /* G E T U I D I R E C T I O N */
  452. /*------------------------------------------------------------------------------
  453. ------------------------------------------------------------------------------*/
  454. STDAPI CCandUICandWindow::GetUIDirection( CANDUIUIDIRECTION *puidir )
  455. {
  456. return m_pProp->GetUIDirection( puidir );
  457. }
  458. /* E N A B L E A U T O M O V E */
  459. /*------------------------------------------------------------------------------
  460. ------------------------------------------------------------------------------*/
  461. STDAPI CCandUICandWindow::EnableAutoMove( BOOL fEnable )
  462. {
  463. return m_pProp->EnableAutoMove( fEnable );
  464. }
  465. /* I S A U T O M O V E E N A B L E D */
  466. /*------------------------------------------------------------------------------
  467. ------------------------------------------------------------------------------*/
  468. STDAPI CCandUICandWindow::IsAutoMoveEnabled( BOOL *pfEnabled )
  469. {
  470. return m_pProp->IsAutoMoveEnabled( pfEnabled );
  471. }
  472. /*============================================================================*/
  473. /* */
  474. /* C C A N D U I C A N D L I S T B O X */
  475. /* */
  476. /*============================================================================*/
  477. /* C C A N D U I C A N D L I S T B O X */
  478. /*------------------------------------------------------------------------------
  479. Constructor of CCandUICandListBox
  480. ------------------------------------------------------------------------------*/
  481. CCandUICandListBox::CCandUICandListBox( CCandListBoxProperty *pProp )
  482. {
  483. m_cRef = 1;
  484. m_pProp = pProp;
  485. }
  486. /* ~ C C A N D U I C A N D L I S T B O X */
  487. /*------------------------------------------------------------------------------
  488. Destructor of CCandUICandListBox
  489. ------------------------------------------------------------------------------*/
  490. CCandUICandListBox::~CCandUICandListBox( void )
  491. {
  492. }
  493. /* Q U E R Y I N T E R F A C E */
  494. /*------------------------------------------------------------------------------
  495. Query interface
  496. (IUnknown method)
  497. ------------------------------------------------------------------------------*/
  498. STDAPI CCandUICandListBox::QueryInterface( REFIID riid, void **ppvObj )
  499. {
  500. if (ppvObj == NULL) {
  501. return E_POINTER;
  502. }
  503. *ppvObj = NULL;
  504. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  505. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  506. }
  507. else if (IsEqualIID( riid, IID_ITfCandUICandListBox )) {
  508. *ppvObj = SAFECAST( this, ITfCandUICandListBox* );
  509. }
  510. if (*ppvObj == NULL) {
  511. return E_NOINTERFACE;
  512. }
  513. AddRef();
  514. return S_OK;
  515. }
  516. /* A D D R E F */
  517. /*------------------------------------------------------------------------------
  518. Increment reference count
  519. (IUnknown method)
  520. ------------------------------------------------------------------------------*/
  521. STDAPI_(ULONG) CCandUICandListBox::AddRef( void )
  522. {
  523. m_cRef++;
  524. return m_cRef;
  525. }
  526. /* R E L E A S E */
  527. /*------------------------------------------------------------------------------
  528. Decrement reference count and release object
  529. (IUnknown method)
  530. ------------------------------------------------------------------------------*/
  531. STDAPI_(ULONG) CCandUICandListBox::Release( void )
  532. {
  533. m_cRef--;
  534. if (0 < m_cRef) {
  535. return m_cRef;
  536. }
  537. delete this;
  538. return 0;
  539. }
  540. /* E N A B L E */
  541. /*------------------------------------------------------------------------------
  542. Enable/disable object
  543. (ITfCandUIObject method)
  544. ------------------------------------------------------------------------------*/
  545. STDAPI CCandUICandListBox::Enable( BOOL fEnable )
  546. {
  547. if (fEnable) {
  548. return m_pProp->Enable();
  549. }
  550. else {
  551. return m_pProp->Disable();
  552. }
  553. }
  554. /* I S E N A B L E D */
  555. /*------------------------------------------------------------------------------
  556. Get enable status of object
  557. (ITfCandUIObject method)
  558. ------------------------------------------------------------------------------*/
  559. STDAPI CCandUICandListBox::IsEnabled( BOOL *pfEnabled )
  560. {
  561. return m_pProp->IsEnabled( pfEnabled );
  562. }
  563. /* S H O W */
  564. /*------------------------------------------------------------------------------
  565. Show/hide object
  566. (ITfCandUIObject method)
  567. ------------------------------------------------------------------------------*/
  568. STDAPI CCandUICandListBox::Show( BOOL fShow )
  569. {
  570. if (fShow) {
  571. return m_pProp->Show();
  572. }
  573. else {
  574. return m_pProp->Hide();
  575. }
  576. }
  577. /* I S V I S I B L E */
  578. /*------------------------------------------------------------------------------
  579. Get visible state of object
  580. (ITfCandUIObject method)
  581. ------------------------------------------------------------------------------*/
  582. STDAPI CCandUICandListBox::IsVisible( BOOL *pfVisible )
  583. {
  584. return m_pProp->IsVisible( pfVisible );
  585. }
  586. /* S E T P O S I T I O N */
  587. /*------------------------------------------------------------------------------
  588. Set position of object
  589. (ITfCandUIObject method)
  590. ------------------------------------------------------------------------------*/
  591. STDAPI CCandUICandListBox::SetPosition( POINT *pptPos )
  592. {
  593. return m_pProp->SetPosition( pptPos );
  594. }
  595. /* G E T P O S I T I O N */
  596. /*------------------------------------------------------------------------------
  597. Get position of object
  598. (ITfCandUIObject method)
  599. ------------------------------------------------------------------------------*/
  600. STDAPI CCandUICandListBox::GetPosition( POINT *pptPos )
  601. {
  602. return m_pProp->GetPosition( pptPos );
  603. }
  604. /* S E T S I Z E */
  605. /*------------------------------------------------------------------------------
  606. Set size of object
  607. (ITfCandUIObject method)
  608. ------------------------------------------------------------------------------*/
  609. STDAPI CCandUICandListBox::SetSize( SIZE *psize )
  610. {
  611. return m_pProp->SetSize( psize );
  612. }
  613. /* G E T S I Z E */
  614. /*------------------------------------------------------------------------------
  615. Get size of object
  616. (ITfCandUIObject method)
  617. ------------------------------------------------------------------------------*/
  618. STDAPI CCandUICandListBox::GetSize( SIZE *psize )
  619. {
  620. return m_pProp->GetSize( psize );
  621. }
  622. /* S E T F O N T */
  623. /*------------------------------------------------------------------------------
  624. Set font of object
  625. (ITfCandUIObject method)
  626. ------------------------------------------------------------------------------*/
  627. STDAPI CCandUICandListBox::SetFont( LOGFONTW *pLogFont )
  628. {
  629. return m_pProp->SetFont( pLogFont );
  630. }
  631. /* G E T F O N T */
  632. /*------------------------------------------------------------------------------
  633. Get font of object
  634. (ITfCandUIObject method)
  635. ------------------------------------------------------------------------------*/
  636. STDAPI CCandUICandListBox::GetFont( LOGFONTW *pLogFont )
  637. {
  638. return m_pProp->GetFont( pLogFont );
  639. }
  640. /* S E T T E X T */
  641. /*------------------------------------------------------------------------------
  642. Set text of object
  643. (ITfCandUIObject method)
  644. ------------------------------------------------------------------------------*/
  645. STDAPI CCandUICandListBox::SetText( BSTR bstr )
  646. {
  647. return m_pProp->SetText( bstr );
  648. }
  649. /* G E T T E X T */
  650. /*------------------------------------------------------------------------------
  651. Get text of object
  652. (ITfCandUIObject method)
  653. ------------------------------------------------------------------------------*/
  654. STDAPI CCandUICandListBox::GetText( BSTR *pbstr )
  655. {
  656. return m_pProp->GetText( pbstr );
  657. }
  658. /* S E T T O O L T I P S T R I N G */
  659. /*------------------------------------------------------------------------------
  660. Set tooltip string of object
  661. (ITfCandUIObject method)
  662. ------------------------------------------------------------------------------*/
  663. STDAPI CCandUICandListBox::SetToolTipString( BSTR bstr )
  664. {
  665. return m_pProp->SetToolTipString( bstr );
  666. }
  667. /* G E T T O O L T I P S T R I N G */
  668. /*------------------------------------------------------------------------------
  669. Get tooltip string of object
  670. (ITfCandUIObject method)
  671. ------------------------------------------------------------------------------*/
  672. STDAPI CCandUICandListBox::GetToolTipString( BSTR *pbstr )
  673. {
  674. return m_pProp->GetToolTipString( pbstr );
  675. }
  676. /* S E T H E I G H T */
  677. /*------------------------------------------------------------------------------
  678. ------------------------------------------------------------------------------*/
  679. STDAPI CCandUICandListBox::SetHeight( LONG lLines )
  680. {
  681. return m_pProp->SetHeight( lLines );
  682. }
  683. /* G E T H E I G H T */
  684. /*------------------------------------------------------------------------------
  685. ------------------------------------------------------------------------------*/
  686. STDAPI CCandUICandListBox::GetHeight( LONG *plLines )
  687. {
  688. return m_pProp->GetHeight( plLines );
  689. }
  690. /* G E T C A N D I D A T E S T R I N G R E C T */
  691. /*------------------------------------------------------------------------------
  692. ------------------------------------------------------------------------------*/
  693. STDAPI CCandUICandListBox::GetCandidateStringRect( ULONG nIndex, RECT *prc )
  694. {
  695. return m_pProp->GetCandidateStringRect( nIndex, prc );
  696. }
  697. /*============================================================================*/
  698. /* */
  699. /* C C A N D U I C A N D S T R I N G */
  700. /* */
  701. /*============================================================================*/
  702. /* C C A N D U I C A N D S T R I N G */
  703. /*------------------------------------------------------------------------------
  704. Constructor of CCandUICandString
  705. ------------------------------------------------------------------------------*/
  706. CCandUICandString::CCandUICandString( CCandStringProperty *pProp )
  707. {
  708. m_cRef = 1;
  709. m_pProp = pProp;
  710. }
  711. /* ~ C C A N D U I C A N D S T R I N G */
  712. /*------------------------------------------------------------------------------
  713. Destructor of CCandUICandString
  714. ------------------------------------------------------------------------------*/
  715. CCandUICandString::~CCandUICandString( void )
  716. {
  717. }
  718. /* Q U E R Y I N T E R F A C E */
  719. /*------------------------------------------------------------------------------
  720. Query interface
  721. (IUnknown method)
  722. ------------------------------------------------------------------------------*/
  723. STDAPI CCandUICandString::QueryInterface( REFIID riid, void **ppvObj )
  724. {
  725. if (ppvObj == NULL) {
  726. return E_POINTER;
  727. }
  728. *ppvObj = NULL;
  729. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  730. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  731. }
  732. else if (IsEqualIID( riid, IID_ITfCandUICandString )) {
  733. *ppvObj = SAFECAST( this, ITfCandUICandString* );
  734. }
  735. if (*ppvObj == NULL) {
  736. return E_NOINTERFACE;
  737. }
  738. AddRef();
  739. return S_OK;
  740. }
  741. /* A D D R E F */
  742. /*------------------------------------------------------------------------------
  743. Increment reference count
  744. (IUnknown method)
  745. ------------------------------------------------------------------------------*/
  746. STDAPI_(ULONG) CCandUICandString::AddRef( void )
  747. {
  748. m_cRef++;
  749. return m_cRef;
  750. }
  751. /* R E L E A S E */
  752. /*------------------------------------------------------------------------------
  753. Decrement reference count and release object
  754. (IUnknown method)
  755. ------------------------------------------------------------------------------*/
  756. STDAPI_(ULONG) CCandUICandString::Release( void )
  757. {
  758. m_cRef--;
  759. if (0 < m_cRef) {
  760. return m_cRef;
  761. }
  762. delete this;
  763. return 0;
  764. }
  765. /* E N A B L E */
  766. /*------------------------------------------------------------------------------
  767. Enable/disable object
  768. (ITfCandUIObject method)
  769. ------------------------------------------------------------------------------*/
  770. STDAPI CCandUICandString::Enable( BOOL fEnable )
  771. {
  772. if (fEnable) {
  773. return m_pProp->Enable();
  774. }
  775. else {
  776. return m_pProp->Disable();
  777. }
  778. }
  779. /* I S E N A B L E D */
  780. /*------------------------------------------------------------------------------
  781. Get enable status of object
  782. (ITfCandUIObject method)
  783. ------------------------------------------------------------------------------*/
  784. STDAPI CCandUICandString::IsEnabled( BOOL *pfEnabled )
  785. {
  786. return m_pProp->IsEnabled( pfEnabled );
  787. }
  788. /* S H O W */
  789. /*------------------------------------------------------------------------------
  790. Show/hide object
  791. (ITfCandUIObject method)
  792. ------------------------------------------------------------------------------*/
  793. STDAPI CCandUICandString::Show( BOOL fShow )
  794. {
  795. if (fShow) {
  796. return m_pProp->Show();
  797. }
  798. else {
  799. return m_pProp->Hide();
  800. }
  801. }
  802. /* I S V I S I B L E */
  803. /*------------------------------------------------------------------------------
  804. Get visible state of object
  805. (ITfCandUIObject method)
  806. ------------------------------------------------------------------------------*/
  807. STDAPI CCandUICandString::IsVisible( BOOL *pfVisible )
  808. {
  809. return m_pProp->IsVisible( pfVisible );
  810. }
  811. /* S E T P O S I T I O N */
  812. /*------------------------------------------------------------------------------
  813. Set position of object
  814. (ITfCandUIObject method)
  815. ------------------------------------------------------------------------------*/
  816. STDAPI CCandUICandString::SetPosition( POINT *pptPos )
  817. {
  818. return m_pProp->SetPosition( pptPos );
  819. }
  820. /* G E T P O S I T I O N */
  821. /*------------------------------------------------------------------------------
  822. Get position of object
  823. (ITfCandUIObject method)
  824. ------------------------------------------------------------------------------*/
  825. STDAPI CCandUICandString::GetPosition( POINT *pptPos )
  826. {
  827. return m_pProp->GetPosition( pptPos );
  828. }
  829. /* S E T S I Z E */
  830. /*------------------------------------------------------------------------------
  831. Set size of object
  832. (ITfCandUIObject method)
  833. ------------------------------------------------------------------------------*/
  834. STDAPI CCandUICandString::SetSize( SIZE *psize )
  835. {
  836. return m_pProp->SetSize( psize );
  837. }
  838. /* G E T S I Z E */
  839. /*------------------------------------------------------------------------------
  840. Get size of object
  841. (ITfCandUIObject method)
  842. ------------------------------------------------------------------------------*/
  843. STDAPI CCandUICandString::GetSize( SIZE *psize )
  844. {
  845. return m_pProp->GetSize( psize );
  846. }
  847. /* S E T F O N T */
  848. /*------------------------------------------------------------------------------
  849. Set font of object
  850. (ITfCandUIObject method)
  851. ------------------------------------------------------------------------------*/
  852. STDAPI CCandUICandString::SetFont( LOGFONTW *pLogFont )
  853. {
  854. return m_pProp->SetFont( pLogFont );
  855. }
  856. /* G E T F O N T */
  857. /*------------------------------------------------------------------------------
  858. Get font of object
  859. (ITfCandUIObject method)
  860. ------------------------------------------------------------------------------*/
  861. STDAPI CCandUICandString::GetFont( LOGFONTW *pLogFont )
  862. {
  863. return m_pProp->GetFont( pLogFont );
  864. }
  865. /* S E T T E X T */
  866. /*------------------------------------------------------------------------------
  867. Set text of object
  868. (ITfCandUIObject method)
  869. ------------------------------------------------------------------------------*/
  870. STDAPI CCandUICandString::SetText( BSTR bstr )
  871. {
  872. return m_pProp->SetText( bstr );
  873. }
  874. /* G E T T E X T */
  875. /*------------------------------------------------------------------------------
  876. Get text of object
  877. (ITfCandUIObject method)
  878. ------------------------------------------------------------------------------*/
  879. STDAPI CCandUICandString::GetText( BSTR *pbstr )
  880. {
  881. return m_pProp->GetText( pbstr );
  882. }
  883. /* S E T T O O L T I P S T R I N G */
  884. /*------------------------------------------------------------------------------
  885. Set tooltip string of object
  886. (ITfCandUIObject method)
  887. ------------------------------------------------------------------------------*/
  888. STDAPI CCandUICandString::SetToolTipString( BSTR bstr )
  889. {
  890. return m_pProp->SetToolTipString( bstr );
  891. }
  892. /* G E T T O O L T I P S T R I N G */
  893. /*------------------------------------------------------------------------------
  894. Get tooltip string of object
  895. (ITfCandUIObject method)
  896. ------------------------------------------------------------------------------*/
  897. STDAPI CCandUICandString::GetToolTipString( BSTR *pbstr )
  898. {
  899. return m_pProp->GetToolTipString( pbstr );
  900. }
  901. /*============================================================================*/
  902. /* */
  903. /* C C A N D U I C A N D I N D E X */
  904. /* */
  905. /*============================================================================*/
  906. /* C C A N D U I C A N D I N D E X */
  907. /*------------------------------------------------------------------------------
  908. Constructor of CCandUICandString
  909. ------------------------------------------------------------------------------*/
  910. CCandUICandIndex::CCandUICandIndex( CCandIndexProperty *pProp )
  911. {
  912. m_cRef = 1;
  913. m_pProp = pProp;
  914. }
  915. /* ~ C C A N D U I C A N D I N D E X */
  916. /*------------------------------------------------------------------------------
  917. Destructor of CCandUICandIndex
  918. ------------------------------------------------------------------------------*/
  919. CCandUICandIndex::~CCandUICandIndex( void )
  920. {
  921. }
  922. /* Q U E R Y I N T E R F A C E */
  923. /*------------------------------------------------------------------------------
  924. Query interface
  925. (IUnknown method)
  926. ------------------------------------------------------------------------------*/
  927. STDAPI CCandUICandIndex::QueryInterface( REFIID riid, void **ppvObj )
  928. {
  929. if (ppvObj == NULL) {
  930. return E_POINTER;
  931. }
  932. *ppvObj = NULL;
  933. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  934. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  935. }
  936. else if (IsEqualIID( riid, IID_ITfCandUICandIndex )) {
  937. *ppvObj = SAFECAST( this, ITfCandUICandIndex* );
  938. }
  939. if (*ppvObj == NULL) {
  940. return E_NOINTERFACE;
  941. }
  942. AddRef();
  943. return S_OK;
  944. }
  945. /* A D D R E F */
  946. /*------------------------------------------------------------------------------
  947. Increment reference count
  948. (IUnknown method)
  949. ------------------------------------------------------------------------------*/
  950. STDAPI_(ULONG) CCandUICandIndex::AddRef( void )
  951. {
  952. m_cRef++;
  953. return m_cRef;
  954. }
  955. /* R E L E A S E */
  956. /*------------------------------------------------------------------------------
  957. Decrement reference count and release object
  958. (IUnknown method)
  959. ------------------------------------------------------------------------------*/
  960. STDAPI_(ULONG) CCandUICandIndex::Release( void )
  961. {
  962. m_cRef--;
  963. if (0 < m_cRef) {
  964. return m_cRef;
  965. }
  966. delete this;
  967. return 0;
  968. }
  969. /* E N A B L E */
  970. /*------------------------------------------------------------------------------
  971. Enable/disable object
  972. (ITfCandUIObject method)
  973. ------------------------------------------------------------------------------*/
  974. STDAPI CCandUICandIndex::Enable( BOOL fEnable )
  975. {
  976. if (fEnable) {
  977. return m_pProp->Enable();
  978. }
  979. else {
  980. return m_pProp->Disable();
  981. }
  982. }
  983. /* I S E N A B L E D */
  984. /*------------------------------------------------------------------------------
  985. Get enable status of object
  986. (ITfCandUIObject method)
  987. ------------------------------------------------------------------------------*/
  988. STDAPI CCandUICandIndex::IsEnabled( BOOL *pfEnabled )
  989. {
  990. return m_pProp->IsEnabled( pfEnabled );
  991. }
  992. /* S H O W */
  993. /*------------------------------------------------------------------------------
  994. Show/hide object
  995. (ITfCandUIObject method)
  996. ------------------------------------------------------------------------------*/
  997. STDAPI CCandUICandIndex::Show( BOOL fShow )
  998. {
  999. if (fShow) {
  1000. return m_pProp->Show();
  1001. }
  1002. else {
  1003. return m_pProp->Hide();
  1004. }
  1005. }
  1006. /* I S V I S I B L E */
  1007. /*------------------------------------------------------------------------------
  1008. Get visible state of object
  1009. (ITfCandUIObject method)
  1010. ------------------------------------------------------------------------------*/
  1011. STDAPI CCandUICandIndex::IsVisible( BOOL *pfVisible )
  1012. {
  1013. return m_pProp->IsVisible( pfVisible );
  1014. }
  1015. /* S E T P O S I T I O N */
  1016. /*------------------------------------------------------------------------------
  1017. Set position of object
  1018. (ITfCandUIObject method)
  1019. ------------------------------------------------------------------------------*/
  1020. STDAPI CCandUICandIndex::SetPosition( POINT *pptPos )
  1021. {
  1022. return m_pProp->SetPosition( pptPos );
  1023. }
  1024. /* G E T P O S I T I O N */
  1025. /*------------------------------------------------------------------------------
  1026. Get position of object
  1027. (ITfCandUIObject method)
  1028. ------------------------------------------------------------------------------*/
  1029. STDAPI CCandUICandIndex::GetPosition( POINT *pptPos )
  1030. {
  1031. return m_pProp->GetPosition( pptPos );
  1032. }
  1033. /* S E T S I Z E */
  1034. /*------------------------------------------------------------------------------
  1035. Set size of object
  1036. (ITfCandUIObject method)
  1037. ------------------------------------------------------------------------------*/
  1038. STDAPI CCandUICandIndex::SetSize( SIZE *psize )
  1039. {
  1040. return m_pProp->SetSize( psize );
  1041. }
  1042. /* G E T S I Z E */
  1043. /*------------------------------------------------------------------------------
  1044. Get size of object
  1045. (ITfCandUIObject method)
  1046. ------------------------------------------------------------------------------*/
  1047. STDAPI CCandUICandIndex::GetSize( SIZE *psize )
  1048. {
  1049. return m_pProp->GetSize( psize );
  1050. }
  1051. /* S E T F O N T */
  1052. /*------------------------------------------------------------------------------
  1053. Set font of object
  1054. (ITfCandUIObject method)
  1055. ------------------------------------------------------------------------------*/
  1056. STDAPI CCandUICandIndex::SetFont( LOGFONTW *pLogFont )
  1057. {
  1058. return m_pProp->SetFont( pLogFont );
  1059. }
  1060. /* G E T F O N T */
  1061. /*------------------------------------------------------------------------------
  1062. Get font of object
  1063. (ITfCandUIObject method)
  1064. ------------------------------------------------------------------------------*/
  1065. STDAPI CCandUICandIndex::GetFont( LOGFONTW *pLogFont )
  1066. {
  1067. return m_pProp->GetFont( pLogFont );
  1068. }
  1069. /* S E T T E X T */
  1070. /*------------------------------------------------------------------------------
  1071. Set text of object
  1072. (ITfCandUIObject method)
  1073. ------------------------------------------------------------------------------*/
  1074. STDAPI CCandUICandIndex::SetText( BSTR bstr )
  1075. {
  1076. return m_pProp->SetText( bstr );
  1077. }
  1078. /* G E T T E X T */
  1079. /*------------------------------------------------------------------------------
  1080. Get text of object
  1081. (ITfCandUIObject method)
  1082. ------------------------------------------------------------------------------*/
  1083. STDAPI CCandUICandIndex::GetText( BSTR *pbstr )
  1084. {
  1085. return m_pProp->GetText( pbstr );
  1086. }
  1087. /* S E T T O O L T I P S T R I N G */
  1088. /*------------------------------------------------------------------------------
  1089. Set tooltip string of object
  1090. (ITfCandUIObject method)
  1091. ------------------------------------------------------------------------------*/
  1092. STDAPI CCandUICandIndex::SetToolTipString( BSTR bstr )
  1093. {
  1094. return m_pProp->SetToolTipString( bstr );
  1095. }
  1096. /* G E T T O O L T I P S T R I N G */
  1097. /*------------------------------------------------------------------------------
  1098. Get tooltip string of object
  1099. (ITfCandUIObject method)
  1100. ------------------------------------------------------------------------------*/
  1101. STDAPI CCandUICandIndex::GetToolTipString( BSTR *pbstr )
  1102. {
  1103. return m_pProp->GetToolTipString( pbstr );
  1104. }
  1105. /*============================================================================*/
  1106. /* */
  1107. /* C C A N D U I I N L I N E C O M M E N T */
  1108. /* */
  1109. /*============================================================================*/
  1110. /* C C A N D U I I N L I N E C O M M E N T */
  1111. /*------------------------------------------------------------------------------
  1112. Constructor of CCandUIInlineComment
  1113. ------------------------------------------------------------------------------*/
  1114. CCandUIInlineComment::CCandUIInlineComment( CInlineCommentProperty *pProp )
  1115. {
  1116. m_cRef = 1;
  1117. m_pProp = pProp;
  1118. }
  1119. /* ~ C C A N D U I I N L I N E C O M M E N T */
  1120. /*------------------------------------------------------------------------------
  1121. Destructor of CCandUIInlineComment
  1122. ------------------------------------------------------------------------------*/
  1123. CCandUIInlineComment::~CCandUIInlineComment( void )
  1124. {
  1125. }
  1126. /* Q U E R Y I N T E R F A C E */
  1127. /*------------------------------------------------------------------------------
  1128. Query interface
  1129. (IUnknown method)
  1130. ------------------------------------------------------------------------------*/
  1131. STDAPI CCandUIInlineComment::QueryInterface( REFIID riid, void **ppvObj )
  1132. {
  1133. if (ppvObj == NULL) {
  1134. return E_POINTER;
  1135. }
  1136. *ppvObj = NULL;
  1137. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  1138. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  1139. }
  1140. else if (IsEqualIID( riid, IID_ITfCandUIInlineComment )) {
  1141. *ppvObj = SAFECAST( this, ITfCandUIInlineComment* );
  1142. }
  1143. if (*ppvObj == NULL) {
  1144. return E_NOINTERFACE;
  1145. }
  1146. AddRef();
  1147. return S_OK;
  1148. }
  1149. /* A D D R E F */
  1150. /*------------------------------------------------------------------------------
  1151. Increment reference count
  1152. (IUnknown method)
  1153. ------------------------------------------------------------------------------*/
  1154. STDAPI_(ULONG) CCandUIInlineComment::AddRef( void )
  1155. {
  1156. m_cRef++;
  1157. return m_cRef;
  1158. }
  1159. /* R E L E A S E */
  1160. /*------------------------------------------------------------------------------
  1161. Decrement reference count and release object
  1162. (IUnknown method)
  1163. ------------------------------------------------------------------------------*/
  1164. STDAPI_(ULONG) CCandUIInlineComment::Release( void )
  1165. {
  1166. m_cRef--;
  1167. if (0 < m_cRef) {
  1168. return m_cRef;
  1169. }
  1170. delete this;
  1171. return 0;
  1172. }
  1173. /* E N A B L E */
  1174. /*------------------------------------------------------------------------------
  1175. Enable/disable object
  1176. (ITfCandUIObject method)
  1177. ------------------------------------------------------------------------------*/
  1178. STDAPI CCandUIInlineComment::Enable( BOOL fEnable )
  1179. {
  1180. if (fEnable) {
  1181. return m_pProp->Enable();
  1182. }
  1183. else {
  1184. return m_pProp->Disable();
  1185. }
  1186. }
  1187. /* I S E N A B L E D */
  1188. /*------------------------------------------------------------------------------
  1189. Get enable status of object
  1190. (ITfCandUIObject method)
  1191. ------------------------------------------------------------------------------*/
  1192. STDAPI CCandUIInlineComment::IsEnabled( BOOL *pfEnabled )
  1193. {
  1194. return m_pProp->IsEnabled( pfEnabled );
  1195. }
  1196. /* S H O W */
  1197. /*------------------------------------------------------------------------------
  1198. Show/hide object
  1199. (ITfCandUIObject method)
  1200. ------------------------------------------------------------------------------*/
  1201. STDAPI CCandUIInlineComment::Show( BOOL fShow )
  1202. {
  1203. if (fShow) {
  1204. return m_pProp->Show();
  1205. }
  1206. else {
  1207. return m_pProp->Hide();
  1208. }
  1209. }
  1210. /* I S V I S I B L E */
  1211. /*------------------------------------------------------------------------------
  1212. Get visible state of object
  1213. (ITfCandUIObject method)
  1214. ------------------------------------------------------------------------------*/
  1215. STDAPI CCandUIInlineComment::IsVisible( BOOL *pfVisible )
  1216. {
  1217. return m_pProp->IsVisible( pfVisible );
  1218. }
  1219. /* S E T P O S I T I O N */
  1220. /*------------------------------------------------------------------------------
  1221. Set position of object
  1222. (ITfCandUIObject method)
  1223. ------------------------------------------------------------------------------*/
  1224. STDAPI CCandUIInlineComment::SetPosition( POINT *pptPos )
  1225. {
  1226. return m_pProp->SetPosition( pptPos );
  1227. }
  1228. /* G E T P O S I T I O N */
  1229. /*------------------------------------------------------------------------------
  1230. Get position of object
  1231. (ITfCandUIObject method)
  1232. ------------------------------------------------------------------------------*/
  1233. STDAPI CCandUIInlineComment::GetPosition( POINT *pptPos )
  1234. {
  1235. return m_pProp->GetPosition( pptPos );
  1236. }
  1237. /* S E T S I Z E */
  1238. /*------------------------------------------------------------------------------
  1239. Set size of object
  1240. (ITfCandUIObject method)
  1241. ------------------------------------------------------------------------------*/
  1242. STDAPI CCandUIInlineComment::SetSize( SIZE *psize )
  1243. {
  1244. return m_pProp->SetSize( psize );
  1245. }
  1246. /* G E T S I Z E */
  1247. /*------------------------------------------------------------------------------
  1248. Get size of object
  1249. (ITfCandUIObject method)
  1250. ------------------------------------------------------------------------------*/
  1251. STDAPI CCandUIInlineComment::GetSize( SIZE *psize )
  1252. {
  1253. return m_pProp->GetSize( psize );
  1254. }
  1255. /* S E T F O N T */
  1256. /*------------------------------------------------------------------------------
  1257. Set font of object
  1258. (ITfCandUIObject method)
  1259. ------------------------------------------------------------------------------*/
  1260. STDAPI CCandUIInlineComment::SetFont( LOGFONTW *pLogFont )
  1261. {
  1262. return m_pProp->SetFont( pLogFont );
  1263. }
  1264. /* G E T F O N T */
  1265. /*------------------------------------------------------------------------------
  1266. Get font of object
  1267. (ITfCandUIObject method)
  1268. ------------------------------------------------------------------------------*/
  1269. STDAPI CCandUIInlineComment::GetFont( LOGFONTW *pLogFont )
  1270. {
  1271. return m_pProp->GetFont( pLogFont );
  1272. }
  1273. /* S E T T E X T */
  1274. /*------------------------------------------------------------------------------
  1275. Set text of object
  1276. (ITfCandUIObject method)
  1277. ------------------------------------------------------------------------------*/
  1278. STDAPI CCandUIInlineComment::SetText( BSTR bstr )
  1279. {
  1280. return m_pProp->SetText( bstr );
  1281. }
  1282. /* G E T T E X T */
  1283. /*------------------------------------------------------------------------------
  1284. Get text of object
  1285. (ITfCandUIObject method)
  1286. ------------------------------------------------------------------------------*/
  1287. STDAPI CCandUIInlineComment::GetText( BSTR *pbstr )
  1288. {
  1289. return m_pProp->GetText( pbstr );
  1290. }
  1291. /* S E T T O O L T I P S T R I N G */
  1292. /*------------------------------------------------------------------------------
  1293. Set tooltip string of object
  1294. (ITfCandUIObject method)
  1295. ------------------------------------------------------------------------------*/
  1296. STDAPI CCandUIInlineComment::SetToolTipString( BSTR bstr )
  1297. {
  1298. return m_pProp->SetToolTipString( bstr );
  1299. }
  1300. /* G E T T O O L T I P S T R I N G */
  1301. /*------------------------------------------------------------------------------
  1302. Get tooltip string of object
  1303. (ITfCandUIObject method)
  1304. ------------------------------------------------------------------------------*/
  1305. STDAPI CCandUIInlineComment::GetToolTipString( BSTR *pbstr )
  1306. {
  1307. return m_pProp->GetToolTipString( pbstr );
  1308. }
  1309. /*============================================================================*/
  1310. /* */
  1311. /* C C A N D U I P O P U P C O M M E N T W I N D O W */
  1312. /* */
  1313. /*============================================================================*/
  1314. /* C C A N D U I P O P U P C O M M E N T W I N D O W */
  1315. /*------------------------------------------------------------------------------
  1316. Constructor of CCandUIPopupCommentWindow
  1317. ------------------------------------------------------------------------------*/
  1318. CCandUIPopupCommentWindow::CCandUIPopupCommentWindow( CPopupCommentWindowProperty *pProp )
  1319. {
  1320. m_cRef = 1;
  1321. m_pProp = pProp;
  1322. }
  1323. /* ~ C C A N D U I P O P U P C O M M E N T W I N D O W */
  1324. /*------------------------------------------------------------------------------
  1325. Destructor of CCandUIPopupCommentWindow
  1326. ------------------------------------------------------------------------------*/
  1327. CCandUIPopupCommentWindow::~CCandUIPopupCommentWindow( void )
  1328. {
  1329. }
  1330. /* Q U E R Y I N T E R F A C E */
  1331. /*------------------------------------------------------------------------------
  1332. Query interface
  1333. (IUnknown method)
  1334. ------------------------------------------------------------------------------*/
  1335. STDAPI CCandUIPopupCommentWindow::QueryInterface( REFIID riid, void **ppvObj )
  1336. {
  1337. if (ppvObj == NULL) {
  1338. return E_POINTER;
  1339. }
  1340. *ppvObj = NULL;
  1341. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  1342. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  1343. }
  1344. else if (IsEqualIID( riid, IID_ITfCandUIPopupCommentWindow )) {
  1345. *ppvObj = SAFECAST( this, ITfCandUIPopupCommentWindow* );
  1346. }
  1347. if (*ppvObj == NULL) {
  1348. return E_NOINTERFACE;
  1349. }
  1350. AddRef();
  1351. return S_OK;
  1352. }
  1353. /* A D D R E F */
  1354. /*------------------------------------------------------------------------------
  1355. Increment reference count
  1356. (IUnknown method)
  1357. ------------------------------------------------------------------------------*/
  1358. STDAPI_(ULONG) CCandUIPopupCommentWindow::AddRef( void )
  1359. {
  1360. m_cRef++;
  1361. return m_cRef;
  1362. }
  1363. /* R E L E A S E */
  1364. /*------------------------------------------------------------------------------
  1365. Decrement reference count and release object
  1366. (IUnknown method)
  1367. ------------------------------------------------------------------------------*/
  1368. STDAPI_(ULONG) CCandUIPopupCommentWindow::Release( void )
  1369. {
  1370. m_cRef--;
  1371. if (0 < m_cRef) {
  1372. return m_cRef;
  1373. }
  1374. delete this;
  1375. return 0;
  1376. }
  1377. /* E N A B L E */
  1378. /*------------------------------------------------------------------------------
  1379. Enable/disable object
  1380. (ITfCandUIObject method)
  1381. ------------------------------------------------------------------------------*/
  1382. STDAPI CCandUIPopupCommentWindow::Enable( BOOL fEnable )
  1383. {
  1384. if (fEnable) {
  1385. return m_pProp->Enable();
  1386. }
  1387. else {
  1388. return m_pProp->Disable();
  1389. }
  1390. }
  1391. /* I S E N A B L E D */
  1392. /*------------------------------------------------------------------------------
  1393. Get enable status of object
  1394. (ITfCandUIObject method)
  1395. ------------------------------------------------------------------------------*/
  1396. STDAPI CCandUIPopupCommentWindow::IsEnabled( BOOL *pfEnabled )
  1397. {
  1398. return m_pProp->IsEnabled( pfEnabled );
  1399. }
  1400. /* S H O W */
  1401. /*------------------------------------------------------------------------------
  1402. Show/hide object
  1403. (ITfCandUIObject method)
  1404. ------------------------------------------------------------------------------*/
  1405. STDAPI CCandUIPopupCommentWindow::Show( BOOL fShow )
  1406. {
  1407. if (fShow) {
  1408. return m_pProp->Show();
  1409. }
  1410. else {
  1411. return m_pProp->Hide();
  1412. }
  1413. }
  1414. /* I S V I S I B L E */
  1415. /*------------------------------------------------------------------------------
  1416. Get visible state of object
  1417. (ITfCandUIObject method)
  1418. ------------------------------------------------------------------------------*/
  1419. STDAPI CCandUIPopupCommentWindow::IsVisible( BOOL *pfVisible )
  1420. {
  1421. return m_pProp->IsVisible( pfVisible );
  1422. }
  1423. /* S E T P O S I T I O N */
  1424. /*------------------------------------------------------------------------------
  1425. Set position of object
  1426. (ITfCandUIObject method)
  1427. ------------------------------------------------------------------------------*/
  1428. STDAPI CCandUIPopupCommentWindow::SetPosition( POINT *pptPos )
  1429. {
  1430. return m_pProp->SetPosition( pptPos );
  1431. }
  1432. /* G E T P O S I T I O N */
  1433. /*------------------------------------------------------------------------------
  1434. Get position of object
  1435. (ITfCandUIObject method)
  1436. ------------------------------------------------------------------------------*/
  1437. STDAPI CCandUIPopupCommentWindow::GetPosition( POINT *pptPos )
  1438. {
  1439. return m_pProp->GetPosition( pptPos );
  1440. }
  1441. /* S E T S I Z E */
  1442. /*------------------------------------------------------------------------------
  1443. Set size of object
  1444. (ITfCandUIObject method)
  1445. ------------------------------------------------------------------------------*/
  1446. STDAPI CCandUIPopupCommentWindow::SetSize( SIZE *psize )
  1447. {
  1448. return m_pProp->SetSize( psize );
  1449. }
  1450. /* G E T S I Z E */
  1451. /*------------------------------------------------------------------------------
  1452. Get size of object
  1453. (ITfCandUIObject method)
  1454. ------------------------------------------------------------------------------*/
  1455. STDAPI CCandUIPopupCommentWindow::GetSize( SIZE *psize )
  1456. {
  1457. return m_pProp->GetSize( psize );
  1458. }
  1459. /* S E T F O N T */
  1460. /*------------------------------------------------------------------------------
  1461. Set font of object
  1462. (ITfCandUIObject method)
  1463. ------------------------------------------------------------------------------*/
  1464. STDAPI CCandUIPopupCommentWindow::SetFont( LOGFONTW *pLogFont )
  1465. {
  1466. return m_pProp->SetFont( pLogFont );
  1467. }
  1468. /* G E T F O N T */
  1469. /*------------------------------------------------------------------------------
  1470. Get font of object
  1471. (ITfCandUIObject method)
  1472. ------------------------------------------------------------------------------*/
  1473. STDAPI CCandUIPopupCommentWindow::GetFont( LOGFONTW *pLogFont )
  1474. {
  1475. return m_pProp->GetFont( pLogFont );
  1476. }
  1477. /* S E T T E X T */
  1478. /*------------------------------------------------------------------------------
  1479. Set text of object
  1480. (ITfCandUIObject method)
  1481. ------------------------------------------------------------------------------*/
  1482. STDAPI CCandUIPopupCommentWindow::SetText( BSTR bstr )
  1483. {
  1484. return m_pProp->SetText( bstr );
  1485. }
  1486. /* G E T T E X T */
  1487. /*------------------------------------------------------------------------------
  1488. Get text of object
  1489. (ITfCandUIObject method)
  1490. ------------------------------------------------------------------------------*/
  1491. STDAPI CCandUIPopupCommentWindow::GetText( BSTR *pbstr )
  1492. {
  1493. return m_pProp->GetText( pbstr );
  1494. }
  1495. /* S E T T O O L T I P S T R I N G */
  1496. /*------------------------------------------------------------------------------
  1497. Set tooltip string of object
  1498. (ITfCandUIObject method)
  1499. ------------------------------------------------------------------------------*/
  1500. STDAPI CCandUIPopupCommentWindow::SetToolTipString( BSTR bstr )
  1501. {
  1502. return m_pProp->SetToolTipString( bstr );
  1503. }
  1504. /* G E T T O O L T I P S T R I N G */
  1505. /*------------------------------------------------------------------------------
  1506. Get tooltip string of object
  1507. (ITfCandUIObject method)
  1508. ------------------------------------------------------------------------------*/
  1509. STDAPI CCandUIPopupCommentWindow::GetToolTipString( BSTR *pbstr )
  1510. {
  1511. return m_pProp->GetToolTipString( pbstr );
  1512. }
  1513. /* G E T W I N D O W */
  1514. /*------------------------------------------------------------------------------
  1515. ------------------------------------------------------------------------------*/
  1516. STDAPI CCandUIPopupCommentWindow::GetWindow( HWND *phWnd )
  1517. {
  1518. return m_pProp->GetWindow( phWnd );
  1519. }
  1520. /* S E T D E L A Y T I M E */
  1521. /*------------------------------------------------------------------------------
  1522. ------------------------------------------------------------------------------*/
  1523. STDAPI CCandUIPopupCommentWindow::SetDelayTime( LONG lTime )
  1524. {
  1525. return m_pProp->SetDelayTime( lTime );
  1526. }
  1527. /* G E T D E L A Y T I M E */
  1528. /*------------------------------------------------------------------------------
  1529. ------------------------------------------------------------------------------*/
  1530. STDAPI CCandUIPopupCommentWindow::GetDelayTime( LONG *plTime )
  1531. {
  1532. return m_pProp->GetDelayTime( plTime );
  1533. }
  1534. /* E N A B L E A U T O M O V E */
  1535. /*------------------------------------------------------------------------------
  1536. ------------------------------------------------------------------------------*/
  1537. STDAPI CCandUIPopupCommentWindow::EnableAutoMove( BOOL fEnable )
  1538. {
  1539. return m_pProp->EnableAutoMove( fEnable );
  1540. }
  1541. /* I S A U T O M O V E E N A B L E D */
  1542. /*------------------------------------------------------------------------------
  1543. ------------------------------------------------------------------------------*/
  1544. STDAPI CCandUIPopupCommentWindow::IsAutoMoveEnabled( BOOL *pfEnabled )
  1545. {
  1546. return m_pProp->IsAutoMoveEnabled( pfEnabled );
  1547. }
  1548. /*============================================================================*/
  1549. /* */
  1550. /* C C A N D U I P O P U P C O M M E N T T I T L E */
  1551. /* */
  1552. /*============================================================================*/
  1553. /* C C A N D U I P O P U P C O M M E N T T I T L E */
  1554. /*------------------------------------------------------------------------------
  1555. Constructor of CCandUIPopupCommentTitle
  1556. ------------------------------------------------------------------------------*/
  1557. CCandUIPopupCommentTitle::CCandUIPopupCommentTitle( CPopupCommentTitleProperty *pProp )
  1558. {
  1559. m_cRef = 1;
  1560. m_pProp = pProp;
  1561. }
  1562. /* ~ C C A N D U I P O P U P C O M M E N T T I T L E */
  1563. /*------------------------------------------------------------------------------
  1564. Destructor of CCandUIPopupCommentTitle
  1565. ------------------------------------------------------------------------------*/
  1566. CCandUIPopupCommentTitle::~CCandUIPopupCommentTitle( void )
  1567. {
  1568. }
  1569. /* Q U E R Y I N T E R F A C E */
  1570. /*------------------------------------------------------------------------------
  1571. Query interface
  1572. (IUnknown method)
  1573. ------------------------------------------------------------------------------*/
  1574. STDAPI CCandUIPopupCommentTitle::QueryInterface( REFIID riid, void **ppvObj )
  1575. {
  1576. if (ppvObj == NULL) {
  1577. return E_POINTER;
  1578. }
  1579. *ppvObj = NULL;
  1580. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  1581. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  1582. }
  1583. else if (IsEqualIID( riid, IID_ITfCandUIPopupCommentTitle )) {
  1584. *ppvObj = SAFECAST( this, ITfCandUIPopupCommentTitle* );
  1585. }
  1586. if (*ppvObj == NULL) {
  1587. return E_NOINTERFACE;
  1588. }
  1589. AddRef();
  1590. return S_OK;
  1591. }
  1592. /* A D D R E F */
  1593. /*------------------------------------------------------------------------------
  1594. Increment reference count
  1595. (IUnknown method)
  1596. ------------------------------------------------------------------------------*/
  1597. STDAPI_(ULONG) CCandUIPopupCommentTitle::AddRef( void )
  1598. {
  1599. m_cRef++;
  1600. return m_cRef;
  1601. }
  1602. /* R E L E A S E */
  1603. /*------------------------------------------------------------------------------
  1604. Decrement reference count and release object
  1605. (IUnknown method)
  1606. ------------------------------------------------------------------------------*/
  1607. STDAPI_(ULONG) CCandUIPopupCommentTitle::Release( void )
  1608. {
  1609. m_cRef--;
  1610. if (0 < m_cRef) {
  1611. return m_cRef;
  1612. }
  1613. delete this;
  1614. return 0;
  1615. }
  1616. /* E N A B L E */
  1617. /*------------------------------------------------------------------------------
  1618. Enable/disable object
  1619. (ITfCandUIObject method)
  1620. ------------------------------------------------------------------------------*/
  1621. STDAPI CCandUIPopupCommentTitle::Enable( BOOL fEnable )
  1622. {
  1623. if (fEnable) {
  1624. return m_pProp->Enable();
  1625. }
  1626. else {
  1627. return m_pProp->Disable();
  1628. }
  1629. }
  1630. /* I S E N A B L E D */
  1631. /*------------------------------------------------------------------------------
  1632. Get enable status of object
  1633. (ITfCandUIObject method)
  1634. ------------------------------------------------------------------------------*/
  1635. STDAPI CCandUIPopupCommentTitle::IsEnabled( BOOL *pfEnabled )
  1636. {
  1637. return m_pProp->IsEnabled( pfEnabled );
  1638. }
  1639. /* S H O W */
  1640. /*------------------------------------------------------------------------------
  1641. Show/hide object
  1642. (ITfCandUIObject method)
  1643. ------------------------------------------------------------------------------*/
  1644. STDAPI CCandUIPopupCommentTitle::Show( BOOL fShow )
  1645. {
  1646. if (fShow) {
  1647. return m_pProp->Show();
  1648. }
  1649. else {
  1650. return m_pProp->Hide();
  1651. }
  1652. }
  1653. /* I S V I S I B L E */
  1654. /*------------------------------------------------------------------------------
  1655. Get visible state of object
  1656. (ITfCandUIObject method)
  1657. ------------------------------------------------------------------------------*/
  1658. STDAPI CCandUIPopupCommentTitle::IsVisible( BOOL *pfVisible )
  1659. {
  1660. return m_pProp->IsVisible( pfVisible );
  1661. }
  1662. /* S E T P O S I T I O N */
  1663. /*------------------------------------------------------------------------------
  1664. Set position of object
  1665. (ITfCandUIObject method)
  1666. ------------------------------------------------------------------------------*/
  1667. STDAPI CCandUIPopupCommentTitle::SetPosition( POINT *pptPos )
  1668. {
  1669. return m_pProp->SetPosition( pptPos );
  1670. }
  1671. /* G E T P O S I T I O N */
  1672. /*------------------------------------------------------------------------------
  1673. Get position of object
  1674. (ITfCandUIObject method)
  1675. ------------------------------------------------------------------------------*/
  1676. STDAPI CCandUIPopupCommentTitle::GetPosition( POINT *pptPos )
  1677. {
  1678. return m_pProp->GetPosition( pptPos );
  1679. }
  1680. /* S E T S I Z E */
  1681. /*------------------------------------------------------------------------------
  1682. Set size of object
  1683. (ITfCandUIObject method)
  1684. ------------------------------------------------------------------------------*/
  1685. STDAPI CCandUIPopupCommentTitle::SetSize( SIZE *psize )
  1686. {
  1687. return m_pProp->SetSize( psize );
  1688. }
  1689. /* G E T S I Z E */
  1690. /*------------------------------------------------------------------------------
  1691. Get size of object
  1692. (ITfCandUIObject method)
  1693. ------------------------------------------------------------------------------*/
  1694. STDAPI CCandUIPopupCommentTitle::GetSize( SIZE *psize )
  1695. {
  1696. return m_pProp->GetSize( psize );
  1697. }
  1698. /* S E T F O N T */
  1699. /*------------------------------------------------------------------------------
  1700. Set font of object
  1701. (ITfCandUIObject method)
  1702. ------------------------------------------------------------------------------*/
  1703. STDAPI CCandUIPopupCommentTitle::SetFont( LOGFONTW *pLogFont )
  1704. {
  1705. return m_pProp->SetFont( pLogFont );
  1706. }
  1707. /* G E T F O N T */
  1708. /*------------------------------------------------------------------------------
  1709. Get font of object
  1710. (ITfCandUIObject method)
  1711. ------------------------------------------------------------------------------*/
  1712. STDAPI CCandUIPopupCommentTitle::GetFont( LOGFONTW *pLogFont )
  1713. {
  1714. return m_pProp->GetFont( pLogFont );
  1715. }
  1716. /* S E T T E X T */
  1717. /*------------------------------------------------------------------------------
  1718. Set text of object
  1719. (ITfCandUIObject method)
  1720. ------------------------------------------------------------------------------*/
  1721. STDAPI CCandUIPopupCommentTitle::SetText( BSTR bstr )
  1722. {
  1723. return m_pProp->SetText( bstr );
  1724. }
  1725. /* G E T T E X T */
  1726. /*------------------------------------------------------------------------------
  1727. Get text of object
  1728. (ITfCandUIObject method)
  1729. ------------------------------------------------------------------------------*/
  1730. STDAPI CCandUIPopupCommentTitle::GetText( BSTR *pbstr )
  1731. {
  1732. return m_pProp->GetText( pbstr );
  1733. }
  1734. /* S E T T O O L T I P S T R I N G */
  1735. /*------------------------------------------------------------------------------
  1736. Set tooltip string of object
  1737. (ITfCandUIObject method)
  1738. ------------------------------------------------------------------------------*/
  1739. STDAPI CCandUIPopupCommentTitle::SetToolTipString( BSTR bstr )
  1740. {
  1741. return m_pProp->SetToolTipString( bstr );
  1742. }
  1743. /* G E T T O O L T I P S T R I N G */
  1744. /*------------------------------------------------------------------------------
  1745. Get tooltip string of object
  1746. (ITfCandUIObject method)
  1747. ------------------------------------------------------------------------------*/
  1748. STDAPI CCandUIPopupCommentTitle::GetToolTipString( BSTR *pbstr )
  1749. {
  1750. return m_pProp->GetToolTipString( pbstr );
  1751. }
  1752. /*============================================================================*/
  1753. /* */
  1754. /* C C A N D U I P O P U P C O M M E N T T E X T */
  1755. /* */
  1756. /*============================================================================*/
  1757. /* C C A N D U I P O P U P C O M M E N T T E X T */
  1758. /*------------------------------------------------------------------------------
  1759. Constructor of CCandUIPopupCommentText
  1760. ------------------------------------------------------------------------------*/
  1761. CCandUIPopupCommentText::CCandUIPopupCommentText( CPopupCommentTextProperty *pProp )
  1762. {
  1763. m_cRef = 1;
  1764. m_pProp = pProp;
  1765. }
  1766. /* ~ C C A N D U I P O P U P C O M M E N T T E X T */
  1767. /*------------------------------------------------------------------------------
  1768. Destructor of CCandUIPopupCommentText
  1769. ------------------------------------------------------------------------------*/
  1770. CCandUIPopupCommentText::~CCandUIPopupCommentText( void )
  1771. {
  1772. }
  1773. /* Q U E R Y I N T E R F A C E */
  1774. /*------------------------------------------------------------------------------
  1775. Query interface
  1776. (IUnknown method)
  1777. ------------------------------------------------------------------------------*/
  1778. STDAPI CCandUIPopupCommentText::QueryInterface( REFIID riid, void **ppvObj )
  1779. {
  1780. if (ppvObj == NULL) {
  1781. return E_POINTER;
  1782. }
  1783. *ppvObj = NULL;
  1784. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  1785. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  1786. }
  1787. else if (IsEqualIID( riid, IID_ITfCandUIPopupCommentText )) {
  1788. *ppvObj = SAFECAST( this, ITfCandUIPopupCommentText* );
  1789. }
  1790. if (*ppvObj == NULL) {
  1791. return E_NOINTERFACE;
  1792. }
  1793. AddRef();
  1794. return S_OK;
  1795. }
  1796. /* A D D R E F */
  1797. /*------------------------------------------------------------------------------
  1798. Increment reference count
  1799. (IUnknown method)
  1800. ------------------------------------------------------------------------------*/
  1801. STDAPI_(ULONG) CCandUIPopupCommentText::AddRef( void )
  1802. {
  1803. m_cRef++;
  1804. return m_cRef;
  1805. }
  1806. /* R E L E A S E */
  1807. /*------------------------------------------------------------------------------
  1808. Decrement reference count and release object
  1809. (IUnknown method)
  1810. ------------------------------------------------------------------------------*/
  1811. STDAPI_(ULONG) CCandUIPopupCommentText::Release( void )
  1812. {
  1813. m_cRef--;
  1814. if (0 < m_cRef) {
  1815. return m_cRef;
  1816. }
  1817. delete this;
  1818. return 0;
  1819. }
  1820. /* E N A B L E */
  1821. /*------------------------------------------------------------------------------
  1822. Enable/disable object
  1823. (ITfCandUIObject method)
  1824. ------------------------------------------------------------------------------*/
  1825. STDAPI CCandUIPopupCommentText::Enable( BOOL fEnable )
  1826. {
  1827. if (fEnable) {
  1828. return m_pProp->Enable();
  1829. }
  1830. else {
  1831. return m_pProp->Disable();
  1832. }
  1833. }
  1834. /* I S E N A B L E D */
  1835. /*------------------------------------------------------------------------------
  1836. Get enable status of object
  1837. (ITfCandUIObject method)
  1838. ------------------------------------------------------------------------------*/
  1839. STDAPI CCandUIPopupCommentText::IsEnabled( BOOL *pfEnabled )
  1840. {
  1841. return m_pProp->IsEnabled( pfEnabled );
  1842. }
  1843. /* S H O W */
  1844. /*------------------------------------------------------------------------------
  1845. Show/hide object
  1846. (ITfCandUIObject method)
  1847. ------------------------------------------------------------------------------*/
  1848. STDAPI CCandUIPopupCommentText::Show( BOOL fShow )
  1849. {
  1850. if (fShow) {
  1851. return m_pProp->Show();
  1852. }
  1853. else {
  1854. return m_pProp->Hide();
  1855. }
  1856. }
  1857. /* I S V I S I B L E */
  1858. /*------------------------------------------------------------------------------
  1859. Get visible state of object
  1860. (ITfCandUIObject method)
  1861. ------------------------------------------------------------------------------*/
  1862. STDAPI CCandUIPopupCommentText::IsVisible( BOOL *pfVisible )
  1863. {
  1864. return m_pProp->IsVisible( pfVisible );
  1865. }
  1866. /* S E T P O S I T I O N */
  1867. /*------------------------------------------------------------------------------
  1868. Set position of object
  1869. (ITfCandUIObject method)
  1870. ------------------------------------------------------------------------------*/
  1871. STDAPI CCandUIPopupCommentText::SetPosition( POINT *pptPos )
  1872. {
  1873. return m_pProp->SetPosition( pptPos );
  1874. }
  1875. /* G E T P O S I T I O N */
  1876. /*------------------------------------------------------------------------------
  1877. Get position of object
  1878. (ITfCandUIObject method)
  1879. ------------------------------------------------------------------------------*/
  1880. STDAPI CCandUIPopupCommentText::GetPosition( POINT *pptPos )
  1881. {
  1882. return m_pProp->GetPosition( pptPos );
  1883. }
  1884. /* S E T S I Z E */
  1885. /*------------------------------------------------------------------------------
  1886. Set size of object
  1887. (ITfCandUIObject method)
  1888. ------------------------------------------------------------------------------*/
  1889. STDAPI CCandUIPopupCommentText::SetSize( SIZE *psize )
  1890. {
  1891. return m_pProp->SetSize( psize );
  1892. }
  1893. /* G E T S I Z E */
  1894. /*------------------------------------------------------------------------------
  1895. Get size of object
  1896. (ITfCandUIObject method)
  1897. ------------------------------------------------------------------------------*/
  1898. STDAPI CCandUIPopupCommentText::GetSize( SIZE *psize )
  1899. {
  1900. return m_pProp->GetSize( psize );
  1901. }
  1902. /* S E T F O N T */
  1903. /*------------------------------------------------------------------------------
  1904. Set font of object
  1905. (ITfCandUIObject method)
  1906. ------------------------------------------------------------------------------*/
  1907. STDAPI CCandUIPopupCommentText::SetFont( LOGFONTW *pLogFont )
  1908. {
  1909. return m_pProp->SetFont( pLogFont );
  1910. }
  1911. /* G E T F O N T */
  1912. /*------------------------------------------------------------------------------
  1913. Get font of object
  1914. (ITfCandUIObject method)
  1915. ------------------------------------------------------------------------------*/
  1916. STDAPI CCandUIPopupCommentText::GetFont( LOGFONTW *pLogFont )
  1917. {
  1918. return m_pProp->GetFont( pLogFont );
  1919. }
  1920. /* S E T T E X T */
  1921. /*------------------------------------------------------------------------------
  1922. Set text of object
  1923. (ITfCandUIObject method)
  1924. ------------------------------------------------------------------------------*/
  1925. STDAPI CCandUIPopupCommentText::SetText( BSTR bstr )
  1926. {
  1927. return m_pProp->SetText( bstr );
  1928. }
  1929. /* G E T T E X T */
  1930. /*------------------------------------------------------------------------------
  1931. Get text of object
  1932. (ITfCandUIObject method)
  1933. ------------------------------------------------------------------------------*/
  1934. STDAPI CCandUIPopupCommentText::GetText( BSTR *pbstr )
  1935. {
  1936. return m_pProp->GetText( pbstr );
  1937. }
  1938. /* S E T T O O L T I P S T R I N G */
  1939. /*------------------------------------------------------------------------------
  1940. Set tooltip string of object
  1941. (ITfCandUIObject method)
  1942. ------------------------------------------------------------------------------*/
  1943. STDAPI CCandUIPopupCommentText::SetToolTipString( BSTR bstr )
  1944. {
  1945. return m_pProp->SetToolTipString( bstr );
  1946. }
  1947. /* G E T T O O L T I P S T R I N G */
  1948. /*------------------------------------------------------------------------------
  1949. Get tooltip string of object
  1950. (ITfCandUIObject method)
  1951. ------------------------------------------------------------------------------*/
  1952. STDAPI CCandUIPopupCommentText::GetToolTipString( BSTR *pbstr )
  1953. {
  1954. return m_pProp->GetToolTipString( pbstr );
  1955. }
  1956. /*============================================================================*/
  1957. /* */
  1958. /* C C A N D U I T O O L T I P */
  1959. /* */
  1960. /*============================================================================*/
  1961. /* C C A N D U I T O O L T I P */
  1962. /*------------------------------------------------------------------------------
  1963. Constructor of CCandUIToolTip
  1964. ------------------------------------------------------------------------------*/
  1965. CCandUIToolTip::CCandUIToolTip( CToolTipProperty *pProp )
  1966. {
  1967. m_cRef = 1;
  1968. m_pProp = pProp;
  1969. }
  1970. /* ~ C C A N D U I T O O L T I P */
  1971. /*------------------------------------------------------------------------------
  1972. Destructor of CCandUIToolTip
  1973. ------------------------------------------------------------------------------*/
  1974. CCandUIToolTip::~CCandUIToolTip( void )
  1975. {
  1976. }
  1977. /* Q U E R Y I N T E R F A C E */
  1978. /*------------------------------------------------------------------------------
  1979. Query interface
  1980. (IUnknown method)
  1981. ------------------------------------------------------------------------------*/
  1982. STDAPI CCandUIToolTip::QueryInterface( REFIID riid, void **ppvObj )
  1983. {
  1984. if (ppvObj == NULL) {
  1985. return E_POINTER;
  1986. }
  1987. *ppvObj = NULL;
  1988. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  1989. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  1990. }
  1991. else if (IsEqualIID( riid, IID_ITfCandUIToolTip )) {
  1992. *ppvObj = SAFECAST( this, ITfCandUIToolTip* );
  1993. }
  1994. if (*ppvObj == NULL) {
  1995. return E_NOINTERFACE;
  1996. }
  1997. AddRef();
  1998. return S_OK;
  1999. }
  2000. /* A D D R E F */
  2001. /*------------------------------------------------------------------------------
  2002. Increment reference count
  2003. (IUnknown method)
  2004. ------------------------------------------------------------------------------*/
  2005. STDAPI_(ULONG) CCandUIToolTip::AddRef( void )
  2006. {
  2007. m_cRef++;
  2008. return m_cRef;
  2009. }
  2010. /* R E L E A S E */
  2011. /*------------------------------------------------------------------------------
  2012. Decrement reference count and release object
  2013. (IUnknown method)
  2014. ------------------------------------------------------------------------------*/
  2015. STDAPI_(ULONG) CCandUIToolTip::Release( void )
  2016. {
  2017. m_cRef--;
  2018. if (0 < m_cRef) {
  2019. return m_cRef;
  2020. }
  2021. delete this;
  2022. return 0;
  2023. }
  2024. /* E N A B L E */
  2025. /*------------------------------------------------------------------------------
  2026. Enable/disable object
  2027. (ITfCandUIObject method)
  2028. ------------------------------------------------------------------------------*/
  2029. STDAPI CCandUIToolTip::Enable( BOOL fEnable )
  2030. {
  2031. if (fEnable) {
  2032. return m_pProp->Enable();
  2033. }
  2034. else {
  2035. return m_pProp->Disable();
  2036. }
  2037. }
  2038. /* I S E N A B L E D */
  2039. /*------------------------------------------------------------------------------
  2040. Get enable status of object
  2041. (ITfCandUIObject method)
  2042. ------------------------------------------------------------------------------*/
  2043. STDAPI CCandUIToolTip::IsEnabled( BOOL *pfEnabled )
  2044. {
  2045. return m_pProp->IsEnabled( pfEnabled );
  2046. }
  2047. /* S H O W */
  2048. /*------------------------------------------------------------------------------
  2049. Show/hide object
  2050. (ITfCandUIObject method)
  2051. ------------------------------------------------------------------------------*/
  2052. STDAPI CCandUIToolTip::Show( BOOL fShow )
  2053. {
  2054. if (fShow) {
  2055. return m_pProp->Show();
  2056. }
  2057. else {
  2058. return m_pProp->Hide();
  2059. }
  2060. }
  2061. /* I S V I S I B L E */
  2062. /*------------------------------------------------------------------------------
  2063. Get visible state of object
  2064. (ITfCandUIObject method)
  2065. ------------------------------------------------------------------------------*/
  2066. STDAPI CCandUIToolTip::IsVisible( BOOL *pfVisible )
  2067. {
  2068. return m_pProp->IsVisible( pfVisible );
  2069. }
  2070. /* S E T P O S I T I O N */
  2071. /*------------------------------------------------------------------------------
  2072. Set position of object
  2073. (ITfCandUIObject method)
  2074. ------------------------------------------------------------------------------*/
  2075. STDAPI CCandUIToolTip::SetPosition( POINT *pptPos )
  2076. {
  2077. return m_pProp->SetPosition( pptPos );
  2078. }
  2079. /* G E T P O S I T I O N */
  2080. /*------------------------------------------------------------------------------
  2081. Get position of object
  2082. (ITfCandUIObject method)
  2083. ------------------------------------------------------------------------------*/
  2084. STDAPI CCandUIToolTip::GetPosition( POINT *pptPos )
  2085. {
  2086. return m_pProp->GetPosition( pptPos );
  2087. }
  2088. /* S E T S I Z E */
  2089. /*------------------------------------------------------------------------------
  2090. Set size of object
  2091. (ITfCandUIObject method)
  2092. ------------------------------------------------------------------------------*/
  2093. STDAPI CCandUIToolTip::SetSize( SIZE *psize )
  2094. {
  2095. return m_pProp->SetSize( psize );
  2096. }
  2097. /* G E T S I Z E */
  2098. /*------------------------------------------------------------------------------
  2099. Get size of object
  2100. (ITfCandUIObject method)
  2101. ------------------------------------------------------------------------------*/
  2102. STDAPI CCandUIToolTip::GetSize( SIZE *psize )
  2103. {
  2104. return m_pProp->GetSize( psize );
  2105. }
  2106. /* S E T F O N T */
  2107. /*------------------------------------------------------------------------------
  2108. Set font of object
  2109. (ITfCandUIObject method)
  2110. ------------------------------------------------------------------------------*/
  2111. STDAPI CCandUIToolTip::SetFont( LOGFONTW *pLogFont )
  2112. {
  2113. return m_pProp->SetFont( pLogFont );
  2114. }
  2115. /* G E T F O N T */
  2116. /*------------------------------------------------------------------------------
  2117. Get font of object
  2118. (ITfCandUIObject method)
  2119. ------------------------------------------------------------------------------*/
  2120. STDAPI CCandUIToolTip::GetFont( LOGFONTW *pLogFont )
  2121. {
  2122. return m_pProp->GetFont( pLogFont );
  2123. }
  2124. /* S E T T E X T */
  2125. /*------------------------------------------------------------------------------
  2126. Set text of object
  2127. (ITfCandUIObject method)
  2128. ------------------------------------------------------------------------------*/
  2129. STDAPI CCandUIToolTip::SetText( BSTR bstr )
  2130. {
  2131. return m_pProp->SetText( bstr );
  2132. }
  2133. /* G E T T E X T */
  2134. /*------------------------------------------------------------------------------
  2135. Get text of object
  2136. (ITfCandUIObject method)
  2137. ------------------------------------------------------------------------------*/
  2138. STDAPI CCandUIToolTip::GetText( BSTR *pbstr )
  2139. {
  2140. return m_pProp->GetText( pbstr );
  2141. }
  2142. /* S E T T O O L T I P S T R I N G */
  2143. /*------------------------------------------------------------------------------
  2144. Set tooltip string of object
  2145. (ITfCandUIObject method)
  2146. ------------------------------------------------------------------------------*/
  2147. STDAPI CCandUIToolTip::SetToolTipString( BSTR bstr )
  2148. {
  2149. return m_pProp->SetToolTipString( bstr );
  2150. }
  2151. /* G E T T O O L T I P S T R I N G */
  2152. /*------------------------------------------------------------------------------
  2153. Get tooltip string of object
  2154. (ITfCandUIObject method)
  2155. ------------------------------------------------------------------------------*/
  2156. STDAPI CCandUIToolTip::GetToolTipString( BSTR *pbstr )
  2157. {
  2158. return m_pProp->GetToolTipString( pbstr );
  2159. }
  2160. /*============================================================================*/
  2161. /* */
  2162. /* C C A N D U I C A P T I O N */
  2163. /* */
  2164. /*============================================================================*/
  2165. /* C C A N D U I C A P T I O N */
  2166. /*------------------------------------------------------------------------------
  2167. Constructor of CCandUICaption
  2168. ------------------------------------------------------------------------------*/
  2169. CCandUICaption::CCandUICaption( CWindowCaptionProperty *pProp )
  2170. {
  2171. m_cRef = 1;
  2172. m_pProp = pProp;
  2173. }
  2174. /* ~ C C A N D U I C A P T I O N */
  2175. /*------------------------------------------------------------------------------
  2176. Destructor of CCandUICaption
  2177. ------------------------------------------------------------------------------*/
  2178. CCandUICaption::~CCandUICaption( void )
  2179. {
  2180. }
  2181. /* Q U E R Y I N T E R F A C E */
  2182. /*------------------------------------------------------------------------------
  2183. Query interface
  2184. (IUnknown method)
  2185. ------------------------------------------------------------------------------*/
  2186. STDAPI CCandUICaption::QueryInterface( REFIID riid, void **ppvObj )
  2187. {
  2188. if (ppvObj == NULL) {
  2189. return E_POINTER;
  2190. }
  2191. *ppvObj = NULL;
  2192. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  2193. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  2194. }
  2195. else if (IsEqualIID( riid, IID_ITfCandUICaption )) {
  2196. *ppvObj = SAFECAST( this, ITfCandUICaption* );
  2197. }
  2198. if (*ppvObj == NULL) {
  2199. return E_NOINTERFACE;
  2200. }
  2201. AddRef();
  2202. return S_OK;
  2203. }
  2204. /* A D D R E F */
  2205. /*------------------------------------------------------------------------------
  2206. Increment reference count
  2207. (IUnknown method)
  2208. ------------------------------------------------------------------------------*/
  2209. STDAPI_(ULONG) CCandUICaption::AddRef( void )
  2210. {
  2211. m_cRef++;
  2212. return m_cRef;
  2213. }
  2214. /* R E L E A S E */
  2215. /*------------------------------------------------------------------------------
  2216. Decrement reference count and release object
  2217. (IUnknown method)
  2218. ------------------------------------------------------------------------------*/
  2219. STDAPI_(ULONG) CCandUICaption::Release( void )
  2220. {
  2221. m_cRef--;
  2222. if (0 < m_cRef) {
  2223. return m_cRef;
  2224. }
  2225. delete this;
  2226. return 0;
  2227. }
  2228. /* E N A B L E */
  2229. /*------------------------------------------------------------------------------
  2230. Enable/disable object
  2231. (ITfCandUIObject method)
  2232. ------------------------------------------------------------------------------*/
  2233. STDAPI CCandUICaption::Enable( BOOL fEnable )
  2234. {
  2235. if (fEnable) {
  2236. return m_pProp->Enable();
  2237. }
  2238. else {
  2239. return m_pProp->Disable();
  2240. }
  2241. }
  2242. /* I S E N A B L E D */
  2243. /*------------------------------------------------------------------------------
  2244. Get enable status of object
  2245. (ITfCandUIObject method)
  2246. ------------------------------------------------------------------------------*/
  2247. STDAPI CCandUICaption::IsEnabled( BOOL *pfEnabled )
  2248. {
  2249. return m_pProp->IsEnabled( pfEnabled );
  2250. }
  2251. /* S H O W */
  2252. /*------------------------------------------------------------------------------
  2253. Show/hide object
  2254. (ITfCandUIObject method)
  2255. ------------------------------------------------------------------------------*/
  2256. STDAPI CCandUICaption::Show( BOOL fShow )
  2257. {
  2258. if (fShow) {
  2259. return m_pProp->Show();
  2260. }
  2261. else {
  2262. return m_pProp->Hide();
  2263. }
  2264. }
  2265. /* I S V I S I B L E */
  2266. /*------------------------------------------------------------------------------
  2267. Get visible state of object
  2268. (ITfCandUIObject method)
  2269. ------------------------------------------------------------------------------*/
  2270. STDAPI CCandUICaption::IsVisible( BOOL *pfVisible )
  2271. {
  2272. return m_pProp->IsVisible( pfVisible );
  2273. }
  2274. /* S E T P O S I T I O N */
  2275. /*------------------------------------------------------------------------------
  2276. Set position of object
  2277. (ITfCandUIObject method)
  2278. ------------------------------------------------------------------------------*/
  2279. STDAPI CCandUICaption::SetPosition( POINT *pptPos )
  2280. {
  2281. return m_pProp->SetPosition( pptPos );
  2282. }
  2283. /* G E T P O S I T I O N */
  2284. /*------------------------------------------------------------------------------
  2285. Get position of object
  2286. (ITfCandUIObject method)
  2287. ------------------------------------------------------------------------------*/
  2288. STDAPI CCandUICaption::GetPosition( POINT *pptPos )
  2289. {
  2290. return m_pProp->GetPosition( pptPos );
  2291. }
  2292. /* S E T S I Z E */
  2293. /*------------------------------------------------------------------------------
  2294. Set size of object
  2295. (ITfCandUIObject method)
  2296. ------------------------------------------------------------------------------*/
  2297. STDAPI CCandUICaption::SetSize( SIZE *psize )
  2298. {
  2299. return m_pProp->SetSize( psize );
  2300. }
  2301. /* G E T S I Z E */
  2302. /*------------------------------------------------------------------------------
  2303. Get size of object
  2304. (ITfCandUIObject method)
  2305. ------------------------------------------------------------------------------*/
  2306. STDAPI CCandUICaption::GetSize( SIZE *psize )
  2307. {
  2308. return m_pProp->GetSize( psize );
  2309. }
  2310. /* S E T F O N T */
  2311. /*------------------------------------------------------------------------------
  2312. Set font of object
  2313. (ITfCandUIObject method)
  2314. ------------------------------------------------------------------------------*/
  2315. STDAPI CCandUICaption::SetFont( LOGFONTW *pLogFont )
  2316. {
  2317. return m_pProp->SetFont( pLogFont );
  2318. }
  2319. /* G E T F O N T */
  2320. /*------------------------------------------------------------------------------
  2321. Get font of object
  2322. (ITfCandUIObject method)
  2323. ------------------------------------------------------------------------------*/
  2324. STDAPI CCandUICaption::GetFont( LOGFONTW *pLogFont )
  2325. {
  2326. return m_pProp->GetFont( pLogFont );
  2327. }
  2328. /* S E T T E X T */
  2329. /*------------------------------------------------------------------------------
  2330. Set text of object
  2331. (ITfCandUIObject method)
  2332. ------------------------------------------------------------------------------*/
  2333. STDAPI CCandUICaption::SetText( BSTR bstr )
  2334. {
  2335. return m_pProp->SetText( bstr );
  2336. }
  2337. /* G E T T E X T */
  2338. /*------------------------------------------------------------------------------
  2339. Get text of object
  2340. (ITfCandUIObject method)
  2341. ------------------------------------------------------------------------------*/
  2342. STDAPI CCandUICaption::GetText( BSTR *pbstr )
  2343. {
  2344. return m_pProp->GetText( pbstr );
  2345. }
  2346. /* S E T T O O L T I P S T R I N G */
  2347. /*------------------------------------------------------------------------------
  2348. Set tooltip string of object
  2349. (ITfCandUIObject method)
  2350. ------------------------------------------------------------------------------*/
  2351. STDAPI CCandUICaption::SetToolTipString( BSTR bstr )
  2352. {
  2353. return m_pProp->SetToolTipString( bstr );
  2354. }
  2355. /* G E T T O O L T I P S T R I N G */
  2356. /*------------------------------------------------------------------------------
  2357. Get tooltip string of object
  2358. (ITfCandUIObject method)
  2359. ------------------------------------------------------------------------------*/
  2360. STDAPI CCandUICaption::GetToolTipString( BSTR *pbstr )
  2361. {
  2362. return m_pProp->GetToolTipString( pbstr );
  2363. }
  2364. /*============================================================================*/
  2365. /* */
  2366. /* C C A N D U I E X T R A C A N D I D A T E */
  2367. /* */
  2368. /*============================================================================*/
  2369. /* C C A N D U I E X T R A C A N D I D A T E */
  2370. /*------------------------------------------------------------------------------
  2371. Constructor of CCandUIExtraCandidate
  2372. ------------------------------------------------------------------------------*/
  2373. CCandUIExtraCandidate::CCandUIExtraCandidate( CExtraCandidateProperty *pProp )
  2374. {
  2375. m_cRef = 1;
  2376. m_pProp = pProp;
  2377. }
  2378. /* ~ C C A N D U I E X T R A C A N D I D A T E */
  2379. /*------------------------------------------------------------------------------
  2380. Destructor of CCandUIExtraCandidate
  2381. ------------------------------------------------------------------------------*/
  2382. CCandUIExtraCandidate::~CCandUIExtraCandidate( void )
  2383. {
  2384. }
  2385. /* Q U E R Y I N T E R F A C E */
  2386. /*------------------------------------------------------------------------------
  2387. Query interface
  2388. (IUnknown method)
  2389. ------------------------------------------------------------------------------*/
  2390. STDAPI CCandUIExtraCandidate::QueryInterface( REFIID riid, void **ppvObj )
  2391. {
  2392. if (ppvObj == NULL) {
  2393. return E_POINTER;
  2394. }
  2395. *ppvObj = NULL;
  2396. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  2397. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  2398. }
  2399. else if (IsEqualIID( riid, IID_ITfCandUIExtraCandidate )) {
  2400. *ppvObj = SAFECAST( this, ITfCandUIExtraCandidate* );
  2401. }
  2402. if (*ppvObj == NULL) {
  2403. return E_NOINTERFACE;
  2404. }
  2405. AddRef();
  2406. return S_OK;
  2407. }
  2408. /* A D D R E F */
  2409. /*------------------------------------------------------------------------------
  2410. Increment reference count
  2411. (IUnknown method)
  2412. ------------------------------------------------------------------------------*/
  2413. STDAPI_(ULONG) CCandUIExtraCandidate::AddRef( void )
  2414. {
  2415. m_cRef++;
  2416. return m_cRef;
  2417. }
  2418. /* R E L E A S E */
  2419. /*------------------------------------------------------------------------------
  2420. Decrement reference count and release object
  2421. (IUnknown method)
  2422. ------------------------------------------------------------------------------*/
  2423. STDAPI_(ULONG) CCandUIExtraCandidate::Release( void )
  2424. {
  2425. m_cRef--;
  2426. if (0 < m_cRef) {
  2427. return m_cRef;
  2428. }
  2429. delete this;
  2430. return 0;
  2431. }
  2432. /* E N A B L E */
  2433. /*------------------------------------------------------------------------------
  2434. Enable/disable object
  2435. (ITfCandUIObject method)
  2436. ------------------------------------------------------------------------------*/
  2437. STDAPI CCandUIExtraCandidate::Enable( BOOL fEnable )
  2438. {
  2439. if (fEnable) {
  2440. return m_pProp->Enable();
  2441. }
  2442. else {
  2443. return m_pProp->Disable();
  2444. }
  2445. }
  2446. /* I S E N A B L E D */
  2447. /*------------------------------------------------------------------------------
  2448. Get enable status of object
  2449. (ITfCandUIObject method)
  2450. ------------------------------------------------------------------------------*/
  2451. STDAPI CCandUIExtraCandidate::IsEnabled( BOOL *pfEnabled )
  2452. {
  2453. return m_pProp->IsEnabled( pfEnabled );
  2454. }
  2455. /* S H O W */
  2456. /*------------------------------------------------------------------------------
  2457. Show/hide object
  2458. (ITfCandUIObject method)
  2459. ------------------------------------------------------------------------------*/
  2460. STDAPI CCandUIExtraCandidate::Show( BOOL fShow )
  2461. {
  2462. if (fShow) {
  2463. return m_pProp->Show();
  2464. }
  2465. else {
  2466. return m_pProp->Hide();
  2467. }
  2468. }
  2469. /* I S V I S I B L E */
  2470. /*------------------------------------------------------------------------------
  2471. Get visible state of object
  2472. (ITfCandUIObject method)
  2473. ------------------------------------------------------------------------------*/
  2474. STDAPI CCandUIExtraCandidate::IsVisible( BOOL *pfVisible )
  2475. {
  2476. return m_pProp->IsVisible( pfVisible );
  2477. }
  2478. /* S E T P O S I T I O N */
  2479. /*------------------------------------------------------------------------------
  2480. Set position of object
  2481. (ITfCandUIObject method)
  2482. ------------------------------------------------------------------------------*/
  2483. STDAPI CCandUIExtraCandidate::SetPosition( POINT *pptPos )
  2484. {
  2485. return m_pProp->SetPosition( pptPos );
  2486. }
  2487. /* G E T P O S I T I O N */
  2488. /*------------------------------------------------------------------------------
  2489. Get position of object
  2490. (ITfCandUIObject method)
  2491. ------------------------------------------------------------------------------*/
  2492. STDAPI CCandUIExtraCandidate::GetPosition( POINT *pptPos )
  2493. {
  2494. return m_pProp->GetPosition( pptPos );
  2495. }
  2496. /* S E T S I Z E */
  2497. /*------------------------------------------------------------------------------
  2498. Set size of object
  2499. (ITfCandUIObject method)
  2500. ------------------------------------------------------------------------------*/
  2501. STDAPI CCandUIExtraCandidate::SetSize( SIZE *psize )
  2502. {
  2503. return m_pProp->SetSize( psize );
  2504. }
  2505. /* G E T S I Z E */
  2506. /*------------------------------------------------------------------------------
  2507. Get size of object
  2508. (ITfCandUIObject method)
  2509. ------------------------------------------------------------------------------*/
  2510. STDAPI CCandUIExtraCandidate::GetSize( SIZE *psize )
  2511. {
  2512. return m_pProp->GetSize( psize );
  2513. }
  2514. /* S E T F O N T */
  2515. /*------------------------------------------------------------------------------
  2516. Set font of object
  2517. (ITfCandUIObject method)
  2518. ------------------------------------------------------------------------------*/
  2519. STDAPI CCandUIExtraCandidate::SetFont( LOGFONTW *pLogFont )
  2520. {
  2521. return m_pProp->SetFont( pLogFont );
  2522. }
  2523. /* G E T F O N T */
  2524. /*------------------------------------------------------------------------------
  2525. Get font of object
  2526. (ITfCandUIObject method)
  2527. ------------------------------------------------------------------------------*/
  2528. STDAPI CCandUIExtraCandidate::GetFont( LOGFONTW *pLogFont )
  2529. {
  2530. return m_pProp->GetFont( pLogFont );
  2531. }
  2532. /* S E T T E X T */
  2533. /*------------------------------------------------------------------------------
  2534. Set text of object
  2535. (ITfCandUIObject method)
  2536. ------------------------------------------------------------------------------*/
  2537. STDAPI CCandUIExtraCandidate::SetText( BSTR bstr )
  2538. {
  2539. return m_pProp->SetText( bstr );
  2540. }
  2541. /* G E T T E X T */
  2542. /*------------------------------------------------------------------------------
  2543. Get text of object
  2544. (ITfCandUIObject method)
  2545. ------------------------------------------------------------------------------*/
  2546. STDAPI CCandUIExtraCandidate::GetText( BSTR *pbstr )
  2547. {
  2548. return m_pProp->GetText( pbstr );
  2549. }
  2550. /* S E T T O O L T I P S T R I N G */
  2551. /*------------------------------------------------------------------------------
  2552. Set tooltip string of object
  2553. (ITfCandUIObject method)
  2554. ------------------------------------------------------------------------------*/
  2555. STDAPI CCandUIExtraCandidate::SetToolTipString( BSTR bstr )
  2556. {
  2557. return m_pProp->SetToolTipString( bstr );
  2558. }
  2559. /* G E T T O O L T I P S T R I N G */
  2560. /*------------------------------------------------------------------------------
  2561. Get tooltip string of object
  2562. (ITfCandUIObject method)
  2563. ------------------------------------------------------------------------------*/
  2564. STDAPI CCandUIExtraCandidate::GetToolTipString( BSTR *pbstr )
  2565. {
  2566. return m_pProp->GetToolTipString( pbstr );
  2567. }
  2568. /*============================================================================*/
  2569. /* */
  2570. /* C C A N D U I R A W D A T A */
  2571. /* */
  2572. /*============================================================================*/
  2573. /* C C A N D U I R A W D A T A */
  2574. /*------------------------------------------------------------------------------
  2575. Constructor of CCandUIRawData
  2576. ------------------------------------------------------------------------------*/
  2577. CCandUIRawData::CCandUIRawData( CCandRawDataProperty *pProp )
  2578. {
  2579. m_cRef = 1;
  2580. m_pProp = pProp;
  2581. }
  2582. /* ~ C C A N D U I R A W D A T A */
  2583. /*------------------------------------------------------------------------------
  2584. Destructor of CCandUIRawData
  2585. ------------------------------------------------------------------------------*/
  2586. CCandUIRawData::~CCandUIRawData( void )
  2587. {
  2588. }
  2589. /* Q U E R Y I N T E R F A C E */
  2590. /*------------------------------------------------------------------------------
  2591. Query interface
  2592. (IUnknown method)
  2593. ------------------------------------------------------------------------------*/
  2594. STDAPI CCandUIRawData::QueryInterface( REFIID riid, void **ppvObj )
  2595. {
  2596. if (ppvObj == NULL) {
  2597. return E_POINTER;
  2598. }
  2599. *ppvObj = NULL;
  2600. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  2601. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  2602. }
  2603. else if (IsEqualIID( riid, IID_ITfCandUIRawData )) {
  2604. *ppvObj = SAFECAST( this, ITfCandUIRawData* );
  2605. }
  2606. if (*ppvObj == NULL) {
  2607. return E_NOINTERFACE;
  2608. }
  2609. AddRef();
  2610. return S_OK;
  2611. }
  2612. /* A D D R E F */
  2613. /*------------------------------------------------------------------------------
  2614. Increment reference count
  2615. (IUnknown method)
  2616. ------------------------------------------------------------------------------*/
  2617. STDAPI_(ULONG) CCandUIRawData::AddRef( void )
  2618. {
  2619. m_cRef++;
  2620. return m_cRef;
  2621. }
  2622. /* R E L E A S E */
  2623. /*------------------------------------------------------------------------------
  2624. Decrement reference count and release object
  2625. (IUnknown method)
  2626. ------------------------------------------------------------------------------*/
  2627. STDAPI_(ULONG) CCandUIRawData::Release( void )
  2628. {
  2629. m_cRef--;
  2630. if (0 < m_cRef) {
  2631. return m_cRef;
  2632. }
  2633. delete this;
  2634. return 0;
  2635. }
  2636. /* E N A B L E */
  2637. /*------------------------------------------------------------------------------
  2638. Enable/disable object
  2639. (ITfCandUIObject method)
  2640. ------------------------------------------------------------------------------*/
  2641. STDAPI CCandUIRawData::Enable( BOOL fEnable )
  2642. {
  2643. if (fEnable) {
  2644. return m_pProp->Enable();
  2645. }
  2646. else {
  2647. return m_pProp->Disable();
  2648. }
  2649. }
  2650. /* I S E N A B L E D */
  2651. /*------------------------------------------------------------------------------
  2652. Get enable status of object
  2653. (ITfCandUIObject method)
  2654. ------------------------------------------------------------------------------*/
  2655. STDAPI CCandUIRawData::IsEnabled( BOOL *pfEnabled )
  2656. {
  2657. return m_pProp->IsEnabled( pfEnabled );
  2658. }
  2659. /* S H O W */
  2660. /*------------------------------------------------------------------------------
  2661. Show/hide object
  2662. (ITfCandUIObject method)
  2663. ------------------------------------------------------------------------------*/
  2664. STDAPI CCandUIRawData::Show( BOOL fShow )
  2665. {
  2666. if (fShow) {
  2667. return m_pProp->Show();
  2668. }
  2669. else {
  2670. return m_pProp->Hide();
  2671. }
  2672. }
  2673. /* I S V I S I B L E */
  2674. /*------------------------------------------------------------------------------
  2675. Get visible state of object
  2676. (ITfCandUIObject method)
  2677. ------------------------------------------------------------------------------*/
  2678. STDAPI CCandUIRawData::IsVisible( BOOL *pfVisible )
  2679. {
  2680. return m_pProp->IsVisible( pfVisible );
  2681. }
  2682. /* S E T P O S I T I O N */
  2683. /*------------------------------------------------------------------------------
  2684. Set position of object
  2685. (ITfCandUIObject method)
  2686. ------------------------------------------------------------------------------*/
  2687. STDAPI CCandUIRawData::SetPosition( POINT *pptPos )
  2688. {
  2689. return m_pProp->SetPosition( pptPos );
  2690. }
  2691. /* G E T P O S I T I O N */
  2692. /*------------------------------------------------------------------------------
  2693. Get position of object
  2694. (ITfCandUIObject method)
  2695. ------------------------------------------------------------------------------*/
  2696. STDAPI CCandUIRawData::GetPosition( POINT *pptPos )
  2697. {
  2698. return m_pProp->GetPosition( pptPos );
  2699. }
  2700. /* S E T S I Z E */
  2701. /*------------------------------------------------------------------------------
  2702. Set size of object
  2703. (ITfCandUIObject method)
  2704. ------------------------------------------------------------------------------*/
  2705. STDAPI CCandUIRawData::SetSize( SIZE *psize )
  2706. {
  2707. return m_pProp->SetSize( psize );
  2708. }
  2709. /* G E T S I Z E */
  2710. /*------------------------------------------------------------------------------
  2711. Get size of object
  2712. (ITfCandUIObject method)
  2713. ------------------------------------------------------------------------------*/
  2714. STDAPI CCandUIRawData::GetSize( SIZE *psize )
  2715. {
  2716. return m_pProp->GetSize( psize );
  2717. }
  2718. /* S E T F O N T */
  2719. /*------------------------------------------------------------------------------
  2720. Set font of object
  2721. (ITfCandUIObject method)
  2722. ------------------------------------------------------------------------------*/
  2723. STDAPI CCandUIRawData::SetFont( LOGFONTW *pLogFont )
  2724. {
  2725. return m_pProp->SetFont( pLogFont );
  2726. }
  2727. /* G E T F O N T */
  2728. /*------------------------------------------------------------------------------
  2729. Get font of object
  2730. (ITfCandUIObject method)
  2731. ------------------------------------------------------------------------------*/
  2732. STDAPI CCandUIRawData::GetFont( LOGFONTW *pLogFont )
  2733. {
  2734. return m_pProp->GetFont( pLogFont );
  2735. }
  2736. /* S E T T E X T */
  2737. /*------------------------------------------------------------------------------
  2738. Set text of object
  2739. (ITfCandUIObject method)
  2740. ------------------------------------------------------------------------------*/
  2741. STDAPI CCandUIRawData::SetText( BSTR bstr )
  2742. {
  2743. return m_pProp->SetText( bstr );
  2744. }
  2745. /* G E T T E X T */
  2746. /*------------------------------------------------------------------------------
  2747. Get text of object
  2748. (ITfCandUIObject method)
  2749. ------------------------------------------------------------------------------*/
  2750. STDAPI CCandUIRawData::GetText( BSTR *pbstr )
  2751. {
  2752. return m_pProp->GetText( pbstr );
  2753. }
  2754. /* S E T T O O L T I P S T R I N G */
  2755. /*------------------------------------------------------------------------------
  2756. Set tooltip string of object
  2757. (ITfCandUIObject method)
  2758. ------------------------------------------------------------------------------*/
  2759. STDAPI CCandUIRawData::SetToolTipString( BSTR bstr )
  2760. {
  2761. return m_pProp->SetToolTipString( bstr );
  2762. }
  2763. /* G E T T O O L T I P S T R I N G */
  2764. /*------------------------------------------------------------------------------
  2765. Get tooltip string of object
  2766. (ITfCandUIObject method)
  2767. ------------------------------------------------------------------------------*/
  2768. STDAPI CCandUIRawData::GetToolTipString( BSTR *pbstr )
  2769. {
  2770. return m_pProp->GetToolTipString( pbstr );
  2771. }
  2772. /*============================================================================*/
  2773. /* */
  2774. /* C C A N D U I M E N U B U T T O N */
  2775. /* */
  2776. /*============================================================================*/
  2777. /* C C A N D U I M E N U B U T T O N */
  2778. /*------------------------------------------------------------------------------
  2779. Constructor of CCandUIMenuButton
  2780. ------------------------------------------------------------------------------*/
  2781. CCandUIMenuButton::CCandUIMenuButton( CMenuButtonProperty *pProp )
  2782. {
  2783. m_cRef = 1;
  2784. m_pProp = pProp;
  2785. }
  2786. /* ~ C C A N D U I M E N U B U T T O N */
  2787. /*------------------------------------------------------------------------------
  2788. Destructor of CCandUIMenuButton
  2789. ------------------------------------------------------------------------------*/
  2790. CCandUIMenuButton::~CCandUIMenuButton( void )
  2791. {
  2792. }
  2793. /* Q U E R Y I N T E R F A C E */
  2794. /*------------------------------------------------------------------------------
  2795. Query interface
  2796. (IUnknown method)
  2797. ------------------------------------------------------------------------------*/
  2798. STDAPI CCandUIMenuButton::QueryInterface( REFIID riid, void **ppvObj )
  2799. {
  2800. if (ppvObj == NULL) {
  2801. return E_POINTER;
  2802. }
  2803. *ppvObj = NULL;
  2804. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  2805. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  2806. }
  2807. else if (IsEqualIID( riid, IID_ITfCandUIMenuButton )) {
  2808. *ppvObj = SAFECAST( this, ITfCandUIMenuButton* );
  2809. }
  2810. if (*ppvObj == NULL) {
  2811. return E_NOINTERFACE;
  2812. }
  2813. AddRef();
  2814. return S_OK;
  2815. }
  2816. /* A D D R E F */
  2817. /*------------------------------------------------------------------------------
  2818. Increment reference count
  2819. (IUnknown method)
  2820. ------------------------------------------------------------------------------*/
  2821. STDAPI_(ULONG) CCandUIMenuButton::AddRef( void )
  2822. {
  2823. m_cRef++;
  2824. return m_cRef;
  2825. }
  2826. /* R E L E A S E */
  2827. /*------------------------------------------------------------------------------
  2828. Decrement reference count and release object
  2829. (IUnknown method)
  2830. ------------------------------------------------------------------------------*/
  2831. STDAPI_(ULONG) CCandUIMenuButton::Release( void )
  2832. {
  2833. m_cRef--;
  2834. if (0 < m_cRef) {
  2835. return m_cRef;
  2836. }
  2837. delete this;
  2838. return 0;
  2839. }
  2840. /* E N A B L E */
  2841. /*------------------------------------------------------------------------------
  2842. Enable/disable object
  2843. (ITfCandUIObject method)
  2844. ------------------------------------------------------------------------------*/
  2845. STDAPI CCandUIMenuButton::Enable( BOOL fEnable )
  2846. {
  2847. if (fEnable) {
  2848. return m_pProp->Enable();
  2849. }
  2850. else {
  2851. return m_pProp->Disable();
  2852. }
  2853. }
  2854. /* I S E N A B L E D */
  2855. /*------------------------------------------------------------------------------
  2856. Get enable status of object
  2857. (ITfCandUIObject method)
  2858. ------------------------------------------------------------------------------*/
  2859. STDAPI CCandUIMenuButton::IsEnabled( BOOL *pfEnabled )
  2860. {
  2861. return m_pProp->IsEnabled( pfEnabled );
  2862. }
  2863. /* S H O W */
  2864. /*------------------------------------------------------------------------------
  2865. Show/hide object
  2866. (ITfCandUIObject method)
  2867. ------------------------------------------------------------------------------*/
  2868. STDAPI CCandUIMenuButton::Show( BOOL fShow )
  2869. {
  2870. if (fShow) {
  2871. return m_pProp->Show();
  2872. }
  2873. else {
  2874. return m_pProp->Hide();
  2875. }
  2876. }
  2877. /* I S V I S I B L E */
  2878. /*------------------------------------------------------------------------------
  2879. Get visible state of object
  2880. (ITfCandUIObject method)
  2881. ------------------------------------------------------------------------------*/
  2882. STDAPI CCandUIMenuButton::IsVisible( BOOL *pfVisible )
  2883. {
  2884. return m_pProp->IsVisible( pfVisible );
  2885. }
  2886. /* S E T P O S I T I O N */
  2887. /*------------------------------------------------------------------------------
  2888. Set position of object
  2889. (ITfCandUIObject method)
  2890. ------------------------------------------------------------------------------*/
  2891. STDAPI CCandUIMenuButton::SetPosition( POINT *pptPos )
  2892. {
  2893. return m_pProp->SetPosition( pptPos );
  2894. }
  2895. /* G E T P O S I T I O N */
  2896. /*------------------------------------------------------------------------------
  2897. Get position of object
  2898. (ITfCandUIObject method)
  2899. ------------------------------------------------------------------------------*/
  2900. STDAPI CCandUIMenuButton::GetPosition( POINT *pptPos )
  2901. {
  2902. return m_pProp->GetPosition( pptPos );
  2903. }
  2904. /* S E T S I Z E */
  2905. /*------------------------------------------------------------------------------
  2906. Set size of object
  2907. (ITfCandUIObject method)
  2908. ------------------------------------------------------------------------------*/
  2909. STDAPI CCandUIMenuButton::SetSize( SIZE *psize )
  2910. {
  2911. return m_pProp->SetSize( psize );
  2912. }
  2913. /* G E T S I Z E */
  2914. /*------------------------------------------------------------------------------
  2915. Get size of object
  2916. (ITfCandUIObject method)
  2917. ------------------------------------------------------------------------------*/
  2918. STDAPI CCandUIMenuButton::GetSize( SIZE *psize )
  2919. {
  2920. return m_pProp->GetSize( psize );
  2921. }
  2922. /* S E T F O N T */
  2923. /*------------------------------------------------------------------------------
  2924. Set font of object
  2925. (ITfCandUIObject method)
  2926. ------------------------------------------------------------------------------*/
  2927. STDAPI CCandUIMenuButton::SetFont( LOGFONTW *pLogFont )
  2928. {
  2929. return m_pProp->SetFont( pLogFont );
  2930. }
  2931. /* G E T F O N T */
  2932. /*------------------------------------------------------------------------------
  2933. Get font of object
  2934. (ITfCandUIObject method)
  2935. ------------------------------------------------------------------------------*/
  2936. STDAPI CCandUIMenuButton::GetFont( LOGFONTW *pLogFont )
  2937. {
  2938. return m_pProp->GetFont( pLogFont );
  2939. }
  2940. /* S E T T E X T */
  2941. /*------------------------------------------------------------------------------
  2942. Set text of object
  2943. (ITfCandUIObject method)
  2944. ------------------------------------------------------------------------------*/
  2945. STDAPI CCandUIMenuButton::SetText( BSTR bstr )
  2946. {
  2947. return m_pProp->SetText( bstr );
  2948. }
  2949. /* G E T T E X T */
  2950. /*------------------------------------------------------------------------------
  2951. Get text of object
  2952. (ITfCandUIObject method)
  2953. ------------------------------------------------------------------------------*/
  2954. STDAPI CCandUIMenuButton::GetText( BSTR *pbstr )
  2955. {
  2956. return m_pProp->GetText( pbstr );
  2957. }
  2958. /* S E T T O O L T I P S T R I N G */
  2959. /*------------------------------------------------------------------------------
  2960. Set tooltip string of object
  2961. (ITfCandUIObject method)
  2962. ------------------------------------------------------------------------------*/
  2963. STDAPI CCandUIMenuButton::SetToolTipString( BSTR bstr )
  2964. {
  2965. return m_pProp->SetToolTipString( bstr );
  2966. }
  2967. /* G E T T O O L T I P S T R I N G */
  2968. /*------------------------------------------------------------------------------
  2969. Get tooltip string of object
  2970. (ITfCandUIObject method)
  2971. ------------------------------------------------------------------------------*/
  2972. STDAPI CCandUIMenuButton::GetToolTipString( BSTR *pbstr )
  2973. {
  2974. return m_pProp->GetToolTipString( pbstr );
  2975. }
  2976. /* A D V I S E */
  2977. /*------------------------------------------------------------------------------
  2978. Advise eventsink for candidate menu
  2979. (ITfCandUIMenuButton method)
  2980. ------------------------------------------------------------------------------*/
  2981. STDAPI CCandUIMenuButton::Advise( ITfCandUIMenuEventSink *pSink )
  2982. {
  2983. if (pSink == NULL) {
  2984. return E_INVALIDARG;
  2985. }
  2986. m_pProp->SetEventSink( pSink );
  2987. return S_OK;
  2988. }
  2989. /* U N A D V I S E */
  2990. /*------------------------------------------------------------------------------
  2991. Unadvise eventsink for candidate menu
  2992. (ITfCandUIMenuButton method)
  2993. ------------------------------------------------------------------------------*/
  2994. STDAPI CCandUIMenuButton::Unadvise( void )
  2995. {
  2996. m_pProp->ReleaseEventSink();
  2997. return S_OK;
  2998. }
  2999. /*============================================================================*/
  3000. /* */
  3001. /* C C A N D U I C A N D T I P W I N D O W */
  3002. /* */
  3003. /*============================================================================*/
  3004. /* C C A N D U I C A N D T I P W I N D O W */
  3005. /*------------------------------------------------------------------------------
  3006. Constructor of CCandUICandTipWindow
  3007. ------------------------------------------------------------------------------*/
  3008. CCandUICandTipWindow::CCandUICandTipWindow( CCandTipWindowProperty *pProp )
  3009. {
  3010. m_cRef = 1;
  3011. m_pProp = pProp;
  3012. }
  3013. /* ~ C C A N D U I C A N D T I P W I N D O W */
  3014. /*------------------------------------------------------------------------------
  3015. Destructor of CCandUICandTipWindow
  3016. ------------------------------------------------------------------------------*/
  3017. CCandUICandTipWindow::~CCandUICandTipWindow( void )
  3018. {
  3019. }
  3020. /* Q U E R Y I N T E R F A C E */
  3021. /*------------------------------------------------------------------------------
  3022. Query interface
  3023. (IUnknown method)
  3024. ------------------------------------------------------------------------------*/
  3025. STDAPI CCandUICandTipWindow::QueryInterface( REFIID riid, void **ppvObj )
  3026. {
  3027. if (ppvObj == NULL) {
  3028. return E_POINTER;
  3029. }
  3030. *ppvObj = NULL;
  3031. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  3032. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  3033. }
  3034. else if (IsEqualIID( riid, IID_ITfCandUICandTipWindow )) {
  3035. *ppvObj = SAFECAST( this, ITfCandUICandTipWindow* );
  3036. }
  3037. if (*ppvObj == NULL) {
  3038. return E_NOINTERFACE;
  3039. }
  3040. AddRef();
  3041. return S_OK;
  3042. }
  3043. /* A D D R E F */
  3044. /*------------------------------------------------------------------------------
  3045. Increment reference count
  3046. (IUnknown method)
  3047. ------------------------------------------------------------------------------*/
  3048. STDAPI_(ULONG) CCandUICandTipWindow::AddRef( void )
  3049. {
  3050. m_cRef++;
  3051. return m_cRef;
  3052. }
  3053. /* R E L E A S E */
  3054. /*------------------------------------------------------------------------------
  3055. Decrement reference count and release object
  3056. (IUnknown method)
  3057. ------------------------------------------------------------------------------*/
  3058. STDAPI_(ULONG) CCandUICandTipWindow::Release( void )
  3059. {
  3060. m_cRef--;
  3061. if (0 < m_cRef) {
  3062. return m_cRef;
  3063. }
  3064. delete this;
  3065. return 0;
  3066. }
  3067. /* E N A B L E */
  3068. /*------------------------------------------------------------------------------
  3069. Enable/disable object
  3070. (ITfCandUIObject method)
  3071. ------------------------------------------------------------------------------*/
  3072. STDAPI CCandUICandTipWindow::Enable( BOOL fEnable )
  3073. {
  3074. if (fEnable) {
  3075. return m_pProp->Enable();
  3076. }
  3077. else {
  3078. return m_pProp->Disable();
  3079. }
  3080. }
  3081. /* I S E N A B L E D */
  3082. /*------------------------------------------------------------------------------
  3083. Get enable status of object
  3084. (ITfCandUIObject method)
  3085. ------------------------------------------------------------------------------*/
  3086. STDAPI CCandUICandTipWindow::IsEnabled( BOOL *pfEnabled )
  3087. {
  3088. return m_pProp->IsEnabled( pfEnabled );
  3089. }
  3090. /* S H O W */
  3091. /*------------------------------------------------------------------------------
  3092. Show/hide object
  3093. (ITfCandUIObject method)
  3094. ------------------------------------------------------------------------------*/
  3095. STDAPI CCandUICandTipWindow::Show( BOOL fShow )
  3096. {
  3097. if (fShow) {
  3098. return m_pProp->Show();
  3099. }
  3100. else {
  3101. return m_pProp->Hide();
  3102. }
  3103. }
  3104. /* I S V I S I B L E */
  3105. /*------------------------------------------------------------------------------
  3106. Get visible state of object
  3107. (ITfCandUIObject method)
  3108. ------------------------------------------------------------------------------*/
  3109. STDAPI CCandUICandTipWindow::IsVisible( BOOL *pfVisible )
  3110. {
  3111. return m_pProp->IsVisible( pfVisible );
  3112. }
  3113. /* S E T P O S I T I O N */
  3114. /*------------------------------------------------------------------------------
  3115. Set position of object
  3116. (ITfCandUIObject method)
  3117. ------------------------------------------------------------------------------*/
  3118. STDAPI CCandUICandTipWindow::SetPosition( POINT *pptPos )
  3119. {
  3120. return m_pProp->SetPosition( pptPos );
  3121. }
  3122. /* G E T P O S I T I O N */
  3123. /*------------------------------------------------------------------------------
  3124. Get position of object
  3125. (ITfCandUIObject method)
  3126. ------------------------------------------------------------------------------*/
  3127. STDAPI CCandUICandTipWindow::GetPosition( POINT *pptPos )
  3128. {
  3129. return m_pProp->GetPosition( pptPos );
  3130. }
  3131. /* S E T S I Z E */
  3132. /*------------------------------------------------------------------------------
  3133. Set size of object
  3134. (ITfCandUIObject method)
  3135. ------------------------------------------------------------------------------*/
  3136. STDAPI CCandUICandTipWindow::SetSize( SIZE *psize )
  3137. {
  3138. return m_pProp->SetSize( psize );
  3139. }
  3140. /* G E T S I Z E */
  3141. /*------------------------------------------------------------------------------
  3142. Get size of object
  3143. (ITfCandUIObject method)
  3144. ------------------------------------------------------------------------------*/
  3145. STDAPI CCandUICandTipWindow::GetSize( SIZE *psize )
  3146. {
  3147. return m_pProp->GetSize( psize );
  3148. }
  3149. /* S E T F O N T */
  3150. /*------------------------------------------------------------------------------
  3151. Set font of object
  3152. (ITfCandUIObject method)
  3153. ------------------------------------------------------------------------------*/
  3154. STDAPI CCandUICandTipWindow::SetFont( LOGFONTW *pLogFont )
  3155. {
  3156. return m_pProp->SetFont( pLogFont );
  3157. }
  3158. /* G E T F O N T */
  3159. /*------------------------------------------------------------------------------
  3160. Get font of object
  3161. (ITfCandUIObject method)
  3162. ------------------------------------------------------------------------------*/
  3163. STDAPI CCandUICandTipWindow::GetFont( LOGFONTW *pLogFont )
  3164. {
  3165. return m_pProp->GetFont( pLogFont );
  3166. }
  3167. /* S E T T E X T */
  3168. /*------------------------------------------------------------------------------
  3169. Set text of object
  3170. (ITfCandUIObject method)
  3171. ------------------------------------------------------------------------------*/
  3172. STDAPI CCandUICandTipWindow::SetText( BSTR bstr )
  3173. {
  3174. return m_pProp->SetText( bstr );
  3175. }
  3176. /* G E T T E X T */
  3177. /*------------------------------------------------------------------------------
  3178. Get text of object
  3179. (ITfCandUIObject method)
  3180. ------------------------------------------------------------------------------*/
  3181. STDAPI CCandUICandTipWindow::GetText( BSTR *pbstr )
  3182. {
  3183. return m_pProp->GetText( pbstr );
  3184. }
  3185. /* S E T T O O L T I P S T R I N G */
  3186. /*------------------------------------------------------------------------------
  3187. Set tooltip string of object
  3188. (ITfCandUIObject method)
  3189. ------------------------------------------------------------------------------*/
  3190. STDAPI CCandUICandTipWindow::SetToolTipString( BSTR bstr )
  3191. {
  3192. return m_pProp->SetToolTipString( bstr );
  3193. }
  3194. /* G E T T O O L T I P S T R I N G */
  3195. /*------------------------------------------------------------------------------
  3196. Get tooltip string of object
  3197. (ITfCandUIObject method)
  3198. ------------------------------------------------------------------------------*/
  3199. STDAPI CCandUICandTipWindow::GetToolTipString( BSTR *pbstr )
  3200. {
  3201. return m_pProp->GetToolTipString( pbstr );
  3202. }
  3203. /* G E T W I N D O W */
  3204. /*------------------------------------------------------------------------------
  3205. ------------------------------------------------------------------------------*/
  3206. STDAPI CCandUICandTipWindow::GetWindow( HWND *phWnd )
  3207. {
  3208. return m_pProp->GetWindow( phWnd );
  3209. }
  3210. /*============================================================================*/
  3211. /* */
  3212. /* C C A N D U I C A N D T I P B U T T O N */
  3213. /* */
  3214. /*============================================================================*/
  3215. /* C C A N D U I C A N D T I P B U T T O N */
  3216. /*------------------------------------------------------------------------------
  3217. Constructor of CCandUICandTipWindow
  3218. ------------------------------------------------------------------------------*/
  3219. CCandUICandTipButton::CCandUICandTipButton( CCandTipButtonProperty *pProp )
  3220. {
  3221. m_cRef = 1;
  3222. m_pProp = pProp;
  3223. }
  3224. /* ~ C C A N D U I C A N D T I P B U T T O N */
  3225. /*------------------------------------------------------------------------------
  3226. Destructor of CCandUICandTipButton
  3227. ------------------------------------------------------------------------------*/
  3228. CCandUICandTipButton::~CCandUICandTipButton( void )
  3229. {
  3230. }
  3231. /* Q U E R Y I N T E R F A C E */
  3232. /*------------------------------------------------------------------------------
  3233. Query interface
  3234. (IUnknown method)
  3235. ------------------------------------------------------------------------------*/
  3236. STDAPI CCandUICandTipButton::QueryInterface( REFIID riid, void **ppvObj )
  3237. {
  3238. if (ppvObj == NULL) {
  3239. return E_POINTER;
  3240. }
  3241. *ppvObj = NULL;
  3242. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  3243. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  3244. }
  3245. else if (IsEqualIID( riid, IID_ITfCandUICandTipButton )) {
  3246. *ppvObj = SAFECAST( this, ITfCandUICandTipButton* );
  3247. }
  3248. if (*ppvObj == NULL) {
  3249. return E_NOINTERFACE;
  3250. }
  3251. AddRef();
  3252. return S_OK;
  3253. }
  3254. /* A D D R E F */
  3255. /*------------------------------------------------------------------------------
  3256. Increment reference count
  3257. (IUnknown method)
  3258. ------------------------------------------------------------------------------*/
  3259. STDAPI_(ULONG) CCandUICandTipButton::AddRef( void )
  3260. {
  3261. m_cRef++;
  3262. return m_cRef;
  3263. }
  3264. /* R E L E A S E */
  3265. /*------------------------------------------------------------------------------
  3266. Decrement reference count and release object
  3267. (IUnknown method)
  3268. ------------------------------------------------------------------------------*/
  3269. STDAPI_(ULONG) CCandUICandTipButton::Release( void )
  3270. {
  3271. m_cRef--;
  3272. if (0 < m_cRef) {
  3273. return m_cRef;
  3274. }
  3275. delete this;
  3276. return 0;
  3277. }
  3278. /* E N A B L E */
  3279. /*------------------------------------------------------------------------------
  3280. Enable/disable object
  3281. (ITfCandUIObject method)
  3282. ------------------------------------------------------------------------------*/
  3283. STDAPI CCandUICandTipButton::Enable( BOOL fEnable )
  3284. {
  3285. if (fEnable) {
  3286. return m_pProp->Enable();
  3287. }
  3288. else {
  3289. return m_pProp->Disable();
  3290. }
  3291. }
  3292. /* I S E N A B L E D */
  3293. /*------------------------------------------------------------------------------
  3294. Get enable status of object
  3295. (ITfCandUIObject method)
  3296. ------------------------------------------------------------------------------*/
  3297. STDAPI CCandUICandTipButton::IsEnabled( BOOL *pfEnabled )
  3298. {
  3299. return m_pProp->IsEnabled( pfEnabled );
  3300. }
  3301. /* S H O W */
  3302. /*------------------------------------------------------------------------------
  3303. Show/hide object
  3304. (ITfCandUIObject method)
  3305. ------------------------------------------------------------------------------*/
  3306. STDAPI CCandUICandTipButton::Show( BOOL fShow )
  3307. {
  3308. if (fShow) {
  3309. return m_pProp->Show();
  3310. }
  3311. else {
  3312. return m_pProp->Hide();
  3313. }
  3314. }
  3315. /* I S V I S I B L E */
  3316. /*------------------------------------------------------------------------------
  3317. Get visible state of object
  3318. (ITfCandUIObject method)
  3319. ------------------------------------------------------------------------------*/
  3320. STDAPI CCandUICandTipButton::IsVisible( BOOL *pfVisible )
  3321. {
  3322. return m_pProp->IsVisible( pfVisible );
  3323. }
  3324. /* S E T P O S I T I O N */
  3325. /*------------------------------------------------------------------------------
  3326. Set position of object
  3327. (ITfCandUIObject method)
  3328. ------------------------------------------------------------------------------*/
  3329. STDAPI CCandUICandTipButton::SetPosition( POINT *pptPos )
  3330. {
  3331. return m_pProp->SetPosition( pptPos );
  3332. }
  3333. /* G E T P O S I T I O N */
  3334. /*------------------------------------------------------------------------------
  3335. Get position of object
  3336. (ITfCandUIObject method)
  3337. ------------------------------------------------------------------------------*/
  3338. STDAPI CCandUICandTipButton::GetPosition( POINT *pptPos )
  3339. {
  3340. return m_pProp->GetPosition( pptPos );
  3341. }
  3342. /* S E T S I Z E */
  3343. /*------------------------------------------------------------------------------
  3344. Set size of object
  3345. (ITfCandUIObject method)
  3346. ------------------------------------------------------------------------------*/
  3347. STDAPI CCandUICandTipButton::SetSize( SIZE *psize )
  3348. {
  3349. return m_pProp->SetSize( psize );
  3350. }
  3351. /* G E T S I Z E */
  3352. /*------------------------------------------------------------------------------
  3353. Get size of object
  3354. (ITfCandUIObject method)
  3355. ------------------------------------------------------------------------------*/
  3356. STDAPI CCandUICandTipButton::GetSize( SIZE *psize )
  3357. {
  3358. return m_pProp->GetSize( psize );
  3359. }
  3360. /* S E T F O N T */
  3361. /*------------------------------------------------------------------------------
  3362. Set font of object
  3363. (ITfCandUIObject method)
  3364. ------------------------------------------------------------------------------*/
  3365. STDAPI CCandUICandTipButton::SetFont( LOGFONTW *pLogFont )
  3366. {
  3367. return m_pProp->SetFont( pLogFont );
  3368. }
  3369. /* G E T F O N T */
  3370. /*------------------------------------------------------------------------------
  3371. Get font of object
  3372. (ITfCandUIObject method)
  3373. ------------------------------------------------------------------------------*/
  3374. STDAPI CCandUICandTipButton::GetFont( LOGFONTW *pLogFont )
  3375. {
  3376. return m_pProp->GetFont( pLogFont );
  3377. }
  3378. /* S E T T E X T */
  3379. /*------------------------------------------------------------------------------
  3380. Set text of object
  3381. (ITfCandUIObject method)
  3382. ------------------------------------------------------------------------------*/
  3383. STDAPI CCandUICandTipButton::SetText( BSTR bstr )
  3384. {
  3385. return m_pProp->SetText( bstr );
  3386. }
  3387. /* G E T T E X T */
  3388. /*------------------------------------------------------------------------------
  3389. Get text of object
  3390. (ITfCandUIObject method)
  3391. ------------------------------------------------------------------------------*/
  3392. STDAPI CCandUICandTipButton::GetText( BSTR *pbstr )
  3393. {
  3394. return m_pProp->GetText( pbstr );
  3395. }
  3396. /* S E T T O O L T I P S T R I N G */
  3397. /*------------------------------------------------------------------------------
  3398. Set tooltip string of object
  3399. (ITfCandUIObject method)
  3400. ------------------------------------------------------------------------------*/
  3401. STDAPI CCandUICandTipButton::SetToolTipString( BSTR bstr )
  3402. {
  3403. return m_pProp->SetToolTipString( bstr );
  3404. }
  3405. /* G E T T O O L T I P S T R I N G */
  3406. /*------------------------------------------------------------------------------
  3407. Get tooltip string of object
  3408. (ITfCandUIObject method)
  3409. ------------------------------------------------------------------------------*/
  3410. STDAPI CCandUICandTipButton::GetToolTipString( BSTR *pbstr )
  3411. {
  3412. return m_pProp->GetToolTipString( pbstr );
  3413. }
  3414. /*============================================================================*/
  3415. /* */
  3416. /* C C A N D U I F N A U T O F I L T E R */
  3417. /* */
  3418. /*============================================================================*/
  3419. /* C C A N D U I F N A U T O F I L T E R */
  3420. /*------------------------------------------------------------------------------
  3421. ------------------------------------------------------------------------------*/
  3422. CCandUIFnAutoFilter::CCandUIFnAutoFilter( CCandidateUI *pCandUI, CCandFnAutoFilter *pFnFilter )
  3423. {
  3424. m_cRef = 1;
  3425. m_pCandUI = pCandUI;
  3426. m_pFnAutoFilter = pFnFilter;
  3427. m_pCandUI->AddRef();
  3428. }
  3429. /* ~ C C A N D U I F N A U T O F I L T E R */
  3430. /*------------------------------------------------------------------------------
  3431. ------------------------------------------------------------------------------*/
  3432. CCandUIFnAutoFilter::~CCandUIFnAutoFilter( void )
  3433. {
  3434. m_pCandUI->Release();
  3435. }
  3436. /* Q U E R Y I N T E R F A C E */
  3437. /*------------------------------------------------------------------------------
  3438. Query interface
  3439. (IUnknown method)
  3440. ------------------------------------------------------------------------------*/
  3441. STDAPI CCandUIFnAutoFilter::QueryInterface( REFIID riid, void **ppvObj )
  3442. {
  3443. if (ppvObj == NULL) {
  3444. return E_POINTER;
  3445. }
  3446. *ppvObj = NULL;
  3447. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIFnAutoFilter )) {
  3448. *ppvObj = SAFECAST( this, ITfCandUIFnAutoFilter* );
  3449. }
  3450. if (*ppvObj == NULL) {
  3451. return E_NOINTERFACE;
  3452. }
  3453. AddRef();
  3454. return S_OK;
  3455. }
  3456. /* A D D R E F */
  3457. /*------------------------------------------------------------------------------
  3458. Increment reference count
  3459. (IUnknown method)
  3460. ------------------------------------------------------------------------------*/
  3461. STDAPI_(ULONG) CCandUIFnAutoFilter::AddRef( void )
  3462. {
  3463. m_cRef++;
  3464. return m_cRef;
  3465. }
  3466. /* R E L E A S E */
  3467. /*------------------------------------------------------------------------------
  3468. Decrement reference count and release object
  3469. (IUnknown method)
  3470. ------------------------------------------------------------------------------*/
  3471. STDAPI_(ULONG) CCandUIFnAutoFilter::Release( void )
  3472. {
  3473. m_cRef--;
  3474. if (0 < m_cRef) {
  3475. return m_cRef;
  3476. }
  3477. delete this;
  3478. return 0;
  3479. }
  3480. /* A D V I S E */
  3481. /*------------------------------------------------------------------------------
  3482. ------------------------------------------------------------------------------*/
  3483. STDAPI CCandUIFnAutoFilter::Advise( ITfCandUIAutoFilterEventSink *pSink )
  3484. {
  3485. if (pSink == NULL) {
  3486. return E_INVALIDARG;
  3487. }
  3488. m_pFnAutoFilter->SetEventSink( pSink );
  3489. return S_OK;
  3490. }
  3491. /* U N A D V I S E */
  3492. /*------------------------------------------------------------------------------
  3493. ------------------------------------------------------------------------------*/
  3494. STDAPI CCandUIFnAutoFilter::Unadvise( void )
  3495. {
  3496. m_pFnAutoFilter->ReleaseEventSink();
  3497. return S_OK;
  3498. }
  3499. /* E N A B L E */
  3500. /*------------------------------------------------------------------------------
  3501. ------------------------------------------------------------------------------*/
  3502. STDAPI CCandUIFnAutoFilter::Enable( BOOL fEnable )
  3503. {
  3504. // enable/disable filtering function
  3505. return m_pFnAutoFilter->Enable( fEnable );
  3506. }
  3507. /* G E T F I L T E R I N G S T R I N G */
  3508. /*------------------------------------------------------------------------------
  3509. ------------------------------------------------------------------------------*/
  3510. STDAPI CCandUIFnAutoFilter::GetFilteringString( CANDUIFILTERSTR strtype, BSTR *pbstr )
  3511. {
  3512. return m_pFnAutoFilter->GetFilteringResult( strtype, pbstr );
  3513. }
  3514. /*============================================================================*/
  3515. /* */
  3516. /* C C A N D U I F N S O R T */
  3517. /* */
  3518. /*============================================================================*/
  3519. /* C C A N D U I F N S O R T */
  3520. /*------------------------------------------------------------------------------
  3521. ------------------------------------------------------------------------------*/
  3522. CCandUIFnSort::CCandUIFnSort( CCandidateUI *pCandUI, CCandFnSort *pFnSort )
  3523. {
  3524. m_cRef = 1;
  3525. m_pCandUI = pCandUI;
  3526. m_pFnSort = pFnSort;
  3527. m_pCandUI->AddRef();
  3528. }
  3529. /* ~ C C A N D U I F N S O R T */
  3530. /*------------------------------------------------------------------------------
  3531. ------------------------------------------------------------------------------*/
  3532. CCandUIFnSort::~CCandUIFnSort( void )
  3533. {
  3534. m_pCandUI->Release();
  3535. }
  3536. /* Q U E R Y I N T E R F A C E */
  3537. /*------------------------------------------------------------------------------
  3538. Query interface
  3539. (IUnknown method)
  3540. ------------------------------------------------------------------------------*/
  3541. STDAPI CCandUIFnSort::QueryInterface( REFIID riid, void **ppvObj )
  3542. {
  3543. if (ppvObj == NULL) {
  3544. return E_POINTER;
  3545. }
  3546. *ppvObj = NULL;
  3547. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIFnSort )) {
  3548. *ppvObj = SAFECAST( this, ITfCandUIFnSort* );
  3549. }
  3550. if (*ppvObj == NULL) {
  3551. return E_NOINTERFACE;
  3552. }
  3553. AddRef();
  3554. return S_OK;
  3555. }
  3556. /* A D D R E F */
  3557. /*------------------------------------------------------------------------------
  3558. Increment reference count
  3559. (IUnknown method)
  3560. ------------------------------------------------------------------------------*/
  3561. STDAPI_(ULONG) CCandUIFnSort::AddRef( void )
  3562. {
  3563. m_cRef++;
  3564. return m_cRef;
  3565. }
  3566. /* R E L E A S E */
  3567. /*------------------------------------------------------------------------------
  3568. Decrement reference count and release object
  3569. (IUnknown method)
  3570. ------------------------------------------------------------------------------*/
  3571. STDAPI_(ULONG) CCandUIFnSort::Release( void )
  3572. {
  3573. m_cRef--;
  3574. if (0 < m_cRef) {
  3575. return m_cRef;
  3576. }
  3577. delete this;
  3578. return 0;
  3579. }
  3580. /* A D V I S E */
  3581. /*------------------------------------------------------------------------------
  3582. ------------------------------------------------------------------------------*/
  3583. STDAPI CCandUIFnSort::Advise( ITfCandUISortEventSink *pSink )
  3584. {
  3585. if (pSink == NULL) {
  3586. return E_INVALIDARG;
  3587. }
  3588. m_pFnSort->SetEventSink( pSink );
  3589. return S_OK;
  3590. }
  3591. /* U N A D V I S E */
  3592. /*------------------------------------------------------------------------------
  3593. ------------------------------------------------------------------------------*/
  3594. STDAPI CCandUIFnSort::Unadvise( void )
  3595. {
  3596. m_pFnSort->ReleaseEventSink();
  3597. return S_OK;
  3598. }
  3599. /* S O R T C A N D I D A T E L I S T */
  3600. /*------------------------------------------------------------------------------
  3601. ------------------------------------------------------------------------------*/
  3602. STDAPI CCandUIFnSort::SortCandidateList( BOOL fSort )
  3603. {
  3604. return m_pFnSort->SortCandidateList( fSort ? CANDSORT_ASCENDING : CANDSORT_NONE );
  3605. }
  3606. /* I S C A N D I D A T E L I S T S O R T E D */
  3607. /*------------------------------------------------------------------------------
  3608. ------------------------------------------------------------------------------*/
  3609. STDAPI CCandUIFnSort::IsCandidateListSorted( BOOL *pfSorted )
  3610. {
  3611. CANDSORT type;
  3612. if (pfSorted == NULL) {
  3613. return E_INVALIDARG;
  3614. }
  3615. if (FAILED(m_pFnSort->GetSortType( &type ))) {
  3616. return E_FAIL;
  3617. }
  3618. *pfSorted = (type != CANDSORT_NONE);
  3619. return S_OK;
  3620. }
  3621. /*============================================================================*/
  3622. /* */
  3623. /* C C A N D U I F N E X T E N S I O N */
  3624. /* */
  3625. /*============================================================================*/
  3626. /* C C A N D U I F N E X T E N S I O N */
  3627. /*------------------------------------------------------------------------------
  3628. ------------------------------------------------------------------------------*/
  3629. CCandUIFnExtension::CCandUIFnExtension( CCandidateUI *pCandUI, CCandUIExtensionMgr *pExtensionMgr )
  3630. {
  3631. m_cRef = 1;
  3632. m_pCandUI = pCandUI;
  3633. m_pExtensionMgr = pExtensionMgr;
  3634. m_pCandUI->AddRef();
  3635. }
  3636. /* ~ C C A N D U I F N E X T E N S I O N */
  3637. /*------------------------------------------------------------------------------
  3638. ------------------------------------------------------------------------------*/
  3639. CCandUIFnExtension::~CCandUIFnExtension( void )
  3640. {
  3641. m_pCandUI->Release();
  3642. }
  3643. /* Q U E R Y I N T E R F A C E */
  3644. /*------------------------------------------------------------------------------
  3645. Query interface
  3646. (IUnknown method)
  3647. ------------------------------------------------------------------------------*/
  3648. STDAPI CCandUIFnExtension::QueryInterface( REFIID riid, void **ppvObj )
  3649. {
  3650. if (ppvObj == NULL) {
  3651. return E_POINTER;
  3652. }
  3653. *ppvObj = NULL;
  3654. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIFnExtension )) {
  3655. *ppvObj = SAFECAST( this, ITfCandUIFnExtension* );
  3656. }
  3657. if (*ppvObj == NULL) {
  3658. return E_NOINTERFACE;
  3659. }
  3660. AddRef();
  3661. return S_OK;
  3662. }
  3663. /* A D D R E F */
  3664. /*------------------------------------------------------------------------------
  3665. Increment reference count
  3666. (IUnknown method)
  3667. ------------------------------------------------------------------------------*/
  3668. STDAPI_(ULONG) CCandUIFnExtension::AddRef( void )
  3669. {
  3670. m_cRef++;
  3671. return m_cRef;
  3672. }
  3673. /* R E L E A S E */
  3674. /*------------------------------------------------------------------------------
  3675. Decrement reference count and release object
  3676. (IUnknown method)
  3677. ------------------------------------------------------------------------------*/
  3678. STDAPI_(ULONG) CCandUIFnExtension::Release( void )
  3679. {
  3680. m_cRef--;
  3681. if (0 < m_cRef) {
  3682. return m_cRef;
  3683. }
  3684. delete this;
  3685. return 0;
  3686. }
  3687. /* A D D E X T O B J E C T */
  3688. /*------------------------------------------------------------------------------
  3689. ------------------------------------------------------------------------------*/
  3690. STDAPI CCandUIFnExtension::AddExtObject( LONG id, REFIID riid, IUnknown **ppunk )
  3691. {
  3692. return m_pExtensionMgr->AddExtObject( id, riid, (void**)ppunk );
  3693. }
  3694. /* G E T E X T O B J E C T */
  3695. /*------------------------------------------------------------------------------
  3696. ------------------------------------------------------------------------------*/
  3697. STDAPI CCandUIFnExtension::GetExtObject( LONG id, REFIID riid, IUnknown **ppunk )
  3698. {
  3699. return m_pExtensionMgr->GetExtObject( id, riid, (void**)ppunk );
  3700. }
  3701. /* D E L E T E E X T O B J E C T */
  3702. /*------------------------------------------------------------------------------
  3703. ------------------------------------------------------------------------------*/
  3704. STDAPI CCandUIFnExtension::DeleteExtObject( LONG id )
  3705. {
  3706. return m_pExtensionMgr->DeleteExtObject( id );
  3707. }
  3708. /*============================================================================*/
  3709. /* */
  3710. /* C C A N D U I F N K E Y C O N F I G */
  3711. /* */
  3712. /*============================================================================*/
  3713. /* C C A N D U I F N K E Y C O N F I G */
  3714. /*------------------------------------------------------------------------------
  3715. ------------------------------------------------------------------------------*/
  3716. CCandUIFnKeyConfig::CCandUIFnKeyConfig( CCandidateUI *pCandUI )
  3717. {
  3718. m_cRef = 1;
  3719. m_pCandUI = pCandUI;
  3720. m_pCandUI->AddRef();
  3721. }
  3722. /* ~ C C A N D U I F N K E Y C O N F I G */
  3723. /*------------------------------------------------------------------------------
  3724. ------------------------------------------------------------------------------*/
  3725. CCandUIFnKeyConfig::~CCandUIFnKeyConfig( void )
  3726. {
  3727. m_pCandUI->Release();
  3728. }
  3729. /* Q U E R Y I N T E R F A C E */
  3730. /*------------------------------------------------------------------------------
  3731. Query interface
  3732. (IUnknown method)
  3733. ------------------------------------------------------------------------------*/
  3734. STDAPI CCandUIFnKeyConfig::QueryInterface( REFIID riid, void **ppvObj )
  3735. {
  3736. if (ppvObj == NULL) {
  3737. return E_POINTER;
  3738. }
  3739. *ppvObj = NULL;
  3740. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIFnKeyConfig )) {
  3741. *ppvObj = SAFECAST( this, ITfCandUIFnKeyConfig* );
  3742. }
  3743. if (*ppvObj == NULL) {
  3744. return E_NOINTERFACE;
  3745. }
  3746. AddRef();
  3747. return S_OK;
  3748. }
  3749. /* A D D R E F */
  3750. /*------------------------------------------------------------------------------
  3751. Increment reference count
  3752. (IUnknown method)
  3753. ------------------------------------------------------------------------------*/
  3754. STDAPI_(ULONG) CCandUIFnKeyConfig::AddRef( void )
  3755. {
  3756. m_cRef++;
  3757. return m_cRef;
  3758. }
  3759. /* R E L E A S E */
  3760. /*------------------------------------------------------------------------------
  3761. Decrement reference count and release object
  3762. (IUnknown method)
  3763. ------------------------------------------------------------------------------*/
  3764. STDAPI_(ULONG) CCandUIFnKeyConfig::Release( void )
  3765. {
  3766. m_cRef--;
  3767. if (0 < m_cRef) {
  3768. return m_cRef;
  3769. }
  3770. delete this;
  3771. return 0;
  3772. }
  3773. /* S E T K E Y T A B L E */
  3774. /*------------------------------------------------------------------------------
  3775. ------------------------------------------------------------------------------*/
  3776. STDAPI CCandUIFnKeyConfig::SetKeyTable( ITfContext *pic, ITfCandUIKeyTable *pCandUIKeyTable )
  3777. {
  3778. return m_pCandUI->SetKeyTable( pic, pCandUIKeyTable );
  3779. }
  3780. /* G E T K E Y T A B L E */
  3781. /*------------------------------------------------------------------------------
  3782. ------------------------------------------------------------------------------*/
  3783. STDAPI CCandUIFnKeyConfig::GetKeyTable( ITfContext *pic, ITfCandUIKeyTable **ppCandUIKeyTable)
  3784. {
  3785. return m_pCandUI->GetKeyTable( pic, ppCandUIKeyTable );
  3786. }
  3787. /* R E S E T K E Y T A B L E */
  3788. /*------------------------------------------------------------------------------
  3789. ------------------------------------------------------------------------------*/
  3790. STDAPI CCandUIFnKeyConfig::ResetKeyTable( ITfContext *pic )
  3791. {
  3792. return m_pCandUI->ResetKeyTable( pic );
  3793. }
  3794. /*============================================================================*/
  3795. /* */
  3796. /* C C A N D U I F N U I C O N F I G */
  3797. /* */
  3798. /*============================================================================*/
  3799. /* C C A N D U I F N U I C O N F I G */
  3800. /*------------------------------------------------------------------------------
  3801. ------------------------------------------------------------------------------*/
  3802. CCandUIFnUIConfig::CCandUIFnUIConfig( CCandidateUI *pCandUI )
  3803. {
  3804. m_cRef = 1;
  3805. m_pCandUI = pCandUI;
  3806. m_pCandUI->AddRef();
  3807. }
  3808. /* ~ C C A N D U I F N U I C O N F I G */
  3809. /*------------------------------------------------------------------------------
  3810. ------------------------------------------------------------------------------*/
  3811. CCandUIFnUIConfig::~CCandUIFnUIConfig( void )
  3812. {
  3813. m_pCandUI->Release();
  3814. }
  3815. /* Q U E R Y I N T E R F A C E */
  3816. /*------------------------------------------------------------------------------
  3817. Query interface
  3818. (IUnknown method)
  3819. ------------------------------------------------------------------------------*/
  3820. STDAPI CCandUIFnUIConfig::QueryInterface( REFIID riid, void **ppvObj )
  3821. {
  3822. if (ppvObj == NULL) {
  3823. return E_POINTER;
  3824. }
  3825. *ppvObj = NULL;
  3826. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIFnUIConfig )) {
  3827. *ppvObj = SAFECAST( this, ITfCandUIFnUIConfig* );
  3828. }
  3829. if (*ppvObj == NULL) {
  3830. return E_NOINTERFACE;
  3831. }
  3832. AddRef();
  3833. return S_OK;
  3834. }
  3835. /* A D D R E F */
  3836. /*------------------------------------------------------------------------------
  3837. Increment reference count
  3838. (IUnknown method)
  3839. ------------------------------------------------------------------------------*/
  3840. STDAPI_(ULONG) CCandUIFnUIConfig::AddRef( void )
  3841. {
  3842. m_cRef++;
  3843. return m_cRef;
  3844. }
  3845. /* R E L E A S E */
  3846. /*------------------------------------------------------------------------------
  3847. Decrement reference count and release object
  3848. (IUnknown method)
  3849. ------------------------------------------------------------------------------*/
  3850. STDAPI_(ULONG) CCandUIFnUIConfig::Release( void )
  3851. {
  3852. m_cRef--;
  3853. if (0 < m_cRef) {
  3854. return m_cRef;
  3855. }
  3856. delete this;
  3857. return 0;
  3858. }
  3859. /* S E T U I S T Y L E */
  3860. /*------------------------------------------------------------------------------
  3861. ------------------------------------------------------------------------------*/
  3862. STDAPI CCandUIFnUIConfig::SetUIStyle( ITfContext *pic, CANDUISTYLE style )
  3863. {
  3864. return m_pCandUI->SetUIStyle( pic, style );
  3865. }
  3866. /* G E T U I S T Y L E */
  3867. /*------------------------------------------------------------------------------
  3868. ------------------------------------------------------------------------------*/
  3869. STDAPI CCandUIFnUIConfig::GetUIStyle( ITfContext *pic, CANDUISTYLE *pstyle )
  3870. {
  3871. return m_pCandUI->GetUIStyle( pic, pstyle );
  3872. }
  3873. /* S E T U I O P T I O N */
  3874. /*------------------------------------------------------------------------------
  3875. ------------------------------------------------------------------------------*/
  3876. STDAPI CCandUIFnUIConfig::SetUIOption( ITfContext *pic, DWORD dwOption )
  3877. {
  3878. return m_pCandUI->SetUIOption( pic, dwOption );
  3879. }
  3880. /* G E T U I O P T I O N */
  3881. /*------------------------------------------------------------------------------
  3882. ------------------------------------------------------------------------------*/
  3883. STDAPI CCandUIFnUIConfig::GetUIOption( ITfContext *pic, DWORD *pdwOption )
  3884. {
  3885. return m_pCandUI->GetUIOption( pic, pdwOption );
  3886. }
  3887. /*============================================================================*/
  3888. /* */
  3889. /* C C A N D U I E X T S P A C E */
  3890. /* */
  3891. /*============================================================================*/
  3892. /* C C A N D U I E X T S P A C E */
  3893. /*------------------------------------------------------------------------------
  3894. ------------------------------------------------------------------------------*/
  3895. CCandUIExtSpace::CCandUIExtSpace( CCandidateUI *pCandUI, CExtensionSpace *pExtension )
  3896. {
  3897. m_cRef = 1;
  3898. m_pCandUI = pCandUI;
  3899. m_pExtension = pExtension;
  3900. m_pCandUI->AddRef();
  3901. }
  3902. /* ~ C C A N D U I E X T S P A C E */
  3903. /*------------------------------------------------------------------------------
  3904. ------------------------------------------------------------------------------*/
  3905. CCandUIExtSpace::~CCandUIExtSpace( void )
  3906. {
  3907. m_pCandUI->Release();
  3908. }
  3909. /* Q U E R Y I N T E R F A C E */
  3910. /*------------------------------------------------------------------------------
  3911. Query interface
  3912. (IUnknown method)
  3913. ------------------------------------------------------------------------------*/
  3914. STDAPI CCandUIExtSpace::QueryInterface( REFIID riid, void **ppvObj )
  3915. {
  3916. if (ppvObj == NULL) {
  3917. return E_POINTER;
  3918. }
  3919. *ppvObj = NULL;
  3920. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  3921. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  3922. }
  3923. else if (IsEqualIID( riid, IID_ITfCandUIExtObject )) {
  3924. *ppvObj = SAFECAST( this, ITfCandUIExtObject* );
  3925. }
  3926. else if (IsEqualIID( riid, IID_ITfCandUIExtSpace )) {
  3927. *ppvObj = SAFECAST( this, ITfCandUIExtSpace* );
  3928. }
  3929. if (*ppvObj == NULL) {
  3930. return E_NOINTERFACE;
  3931. }
  3932. AddRef();
  3933. return S_OK;
  3934. }
  3935. /* A D D R E F */
  3936. /*------------------------------------------------------------------------------
  3937. Increment reference count
  3938. (IUnknown method)
  3939. ------------------------------------------------------------------------------*/
  3940. STDAPI_(ULONG) CCandUIExtSpace::AddRef( void )
  3941. {
  3942. m_cRef++;
  3943. return m_cRef;
  3944. }
  3945. /* R E L E A S E */
  3946. /*------------------------------------------------------------------------------
  3947. Decrement reference count and release object
  3948. (IUnknown method)
  3949. ------------------------------------------------------------------------------*/
  3950. STDAPI_(ULONG) CCandUIExtSpace::Release( void )
  3951. {
  3952. m_cRef--;
  3953. if (0 < m_cRef) {
  3954. return m_cRef;
  3955. }
  3956. delete this;
  3957. return 0;
  3958. }
  3959. /* G E T I D */
  3960. /*------------------------------------------------------------------------------
  3961. Get id of extension object
  3962. (ITfCandUIExtObject method)
  3963. ------------------------------------------------------------------------------*/
  3964. STDAPI CCandUIExtSpace::GetID( LONG *pid )
  3965. {
  3966. return m_pExtension->GetID( pid );
  3967. }
  3968. /* E N A B L E */
  3969. /*------------------------------------------------------------------------------
  3970. Enable/disable extension object
  3971. (ITfCandUIExtObject method)
  3972. ------------------------------------------------------------------------------*/
  3973. STDAPI CCandUIExtSpace::Enable( BOOL fEnable )
  3974. {
  3975. if (fEnable) {
  3976. return m_pExtension->Enable();
  3977. }
  3978. else {
  3979. return m_pExtension->Disable();
  3980. }
  3981. }
  3982. /* I S E N A B L E D */
  3983. /*------------------------------------------------------------------------------
  3984. Get enable status of extension object
  3985. (ITfCandUIExtObject method)
  3986. ------------------------------------------------------------------------------*/
  3987. STDAPI CCandUIExtSpace::IsEnabled( BOOL *pfEnabled )
  3988. {
  3989. return m_pExtension->IsEnabled( pfEnabled );
  3990. }
  3991. /* S H O W */
  3992. /*------------------------------------------------------------------------------
  3993. Show/hide extension object
  3994. (ITfCandUIExtObject method)
  3995. ------------------------------------------------------------------------------*/
  3996. STDAPI CCandUIExtSpace::Show( BOOL fShow )
  3997. {
  3998. if (fShow) {
  3999. return m_pExtension->Show();
  4000. }
  4001. else {
  4002. return m_pExtension->Hide();
  4003. }
  4004. }
  4005. /* I S V I S I B L E */
  4006. /*------------------------------------------------------------------------------
  4007. Get visible state of extension object
  4008. (ITfCandUIExtObject method)
  4009. ------------------------------------------------------------------------------*/
  4010. STDAPI CCandUIExtSpace::IsVisible( BOOL *pfVisible )
  4011. {
  4012. return m_pExtension->IsVisible( pfVisible );
  4013. }
  4014. /* S E T P O S I T I O N */
  4015. /*------------------------------------------------------------------------------
  4016. Set position of extension object
  4017. (ITfCandUIExtObject method)
  4018. ------------------------------------------------------------------------------*/
  4019. STDAPI CCandUIExtSpace::SetPosition( POINT *pptPos )
  4020. {
  4021. return m_pExtension->SetPosition( pptPos );
  4022. }
  4023. /* G E T P O S I T I O N */
  4024. /*------------------------------------------------------------------------------
  4025. Get position of extension object
  4026. (ITfCandUIExtObject method)
  4027. ------------------------------------------------------------------------------*/
  4028. STDAPI CCandUIExtSpace::GetPosition( POINT *pptPos )
  4029. {
  4030. return m_pExtension->GetPosition( pptPos );
  4031. }
  4032. /* S E T S I Z E */
  4033. /*------------------------------------------------------------------------------
  4034. Set size of extension object
  4035. (ITfCandUIExtObject method)
  4036. ------------------------------------------------------------------------------*/
  4037. STDAPI CCandUIExtSpace::SetSize( SIZE *psize )
  4038. {
  4039. return m_pExtension->SetSize( psize );
  4040. }
  4041. /* G E T S I Z E */
  4042. /*------------------------------------------------------------------------------
  4043. Get size of extension object
  4044. (ITfCandUIExtObject method)
  4045. ------------------------------------------------------------------------------*/
  4046. STDAPI CCandUIExtSpace::GetSize( SIZE *psize )
  4047. {
  4048. return m_pExtension->GetSize( psize );
  4049. }
  4050. /* S E T F O N T */
  4051. /*------------------------------------------------------------------------------
  4052. Set font of extension object
  4053. (ITfCandUIExtObject method)
  4054. ------------------------------------------------------------------------------*/
  4055. STDAPI CCandUIExtSpace::SetFont( LOGFONTW *pLogFont )
  4056. {
  4057. return m_pExtension->SetFont( pLogFont );
  4058. }
  4059. /* G E T F O N T */
  4060. /*------------------------------------------------------------------------------
  4061. Get font of extension object
  4062. (ITfCandUIExtObject method)
  4063. ------------------------------------------------------------------------------*/
  4064. STDAPI CCandUIExtSpace::GetFont( LOGFONTW *pLogFont )
  4065. {
  4066. return m_pExtension->GetFont( pLogFont );
  4067. }
  4068. /* S E T T E X T */
  4069. /*------------------------------------------------------------------------------
  4070. Set text of extension object
  4071. (ITfCandUIExtObject method)
  4072. ------------------------------------------------------------------------------*/
  4073. STDAPI CCandUIExtSpace::SetText( BSTR bstr )
  4074. {
  4075. return m_pExtension->SetText( bstr );
  4076. }
  4077. /* G E T T E X T */
  4078. /*------------------------------------------------------------------------------
  4079. Get text of extension object
  4080. (ITfCandUIExtObject method)
  4081. ------------------------------------------------------------------------------*/
  4082. STDAPI CCandUIExtSpace::GetText( BSTR *pbstr )
  4083. {
  4084. return m_pExtension->GetText( pbstr );
  4085. }
  4086. /* S E T T O O L T I P S T R I N G */
  4087. /*------------------------------------------------------------------------------
  4088. Set tooltip string of extension object
  4089. (ITfCandUIExtObject method)
  4090. ------------------------------------------------------------------------------*/
  4091. STDAPI CCandUIExtSpace::SetToolTipString( BSTR bstr )
  4092. {
  4093. return m_pExtension->SetToolTipString( bstr );
  4094. }
  4095. /* G E T T O O L T I P S T R I N G */
  4096. /*------------------------------------------------------------------------------
  4097. Get tooltip string of extension object
  4098. (ITfCandUIExtObject method)
  4099. ------------------------------------------------------------------------------*/
  4100. STDAPI CCandUIExtSpace::GetToolTipString( BSTR *pbstr )
  4101. {
  4102. return m_pExtension->GetToolTipString( pbstr );
  4103. }
  4104. /*============================================================================*/
  4105. /* */
  4106. /* C C A N D U I E X T P U S H B U T T O N */
  4107. /* */
  4108. /*============================================================================*/
  4109. /* C C A N D U I E X T P U S H B U T T O N */
  4110. /*------------------------------------------------------------------------------
  4111. ------------------------------------------------------------------------------*/
  4112. CCandUIExtPushButton::CCandUIExtPushButton( CCandidateUI *pCandUI, CExtensionPushButton *pExtension )
  4113. {
  4114. m_cRef = 1;
  4115. m_pCandUI = pCandUI;
  4116. m_pExtension = pExtension;
  4117. m_pCandUI->AddRef();
  4118. }
  4119. /* ~ C C A N D U I E X T P U S H B U T T O N */
  4120. /*------------------------------------------------------------------------------
  4121. ------------------------------------------------------------------------------*/
  4122. CCandUIExtPushButton::~CCandUIExtPushButton( void )
  4123. {
  4124. m_pCandUI->Release();
  4125. }
  4126. /* Q U E R Y I N T E R F A C E */
  4127. /*------------------------------------------------------------------------------
  4128. Query interface
  4129. (IUnknown method)
  4130. ------------------------------------------------------------------------------*/
  4131. STDAPI CCandUIExtPushButton::QueryInterface( REFIID riid, void **ppvObj )
  4132. {
  4133. if (ppvObj == NULL) {
  4134. return E_POINTER;
  4135. }
  4136. *ppvObj = NULL;
  4137. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  4138. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  4139. }
  4140. else if (IsEqualIID( riid, IID_ITfCandUIExtObject )) {
  4141. *ppvObj = SAFECAST( this, ITfCandUIExtObject* );
  4142. }
  4143. else if (IsEqualIID( riid, IID_ITfCandUIExtPushButton )) {
  4144. *ppvObj = SAFECAST( this, ITfCandUIExtPushButton* );
  4145. }
  4146. if (*ppvObj == NULL) {
  4147. return E_NOINTERFACE;
  4148. }
  4149. AddRef();
  4150. return S_OK;
  4151. }
  4152. /* A D D R E F */
  4153. /*------------------------------------------------------------------------------
  4154. Increment reference count
  4155. (IUnknown method)
  4156. ------------------------------------------------------------------------------*/
  4157. STDAPI_(ULONG) CCandUIExtPushButton::AddRef( void )
  4158. {
  4159. m_cRef++;
  4160. return m_cRef;
  4161. }
  4162. /* R E L E A S E */
  4163. /*------------------------------------------------------------------------------
  4164. Decrement reference count and release object
  4165. (IUnknown method)
  4166. ------------------------------------------------------------------------------*/
  4167. STDAPI_(ULONG) CCandUIExtPushButton::Release( void )
  4168. {
  4169. m_cRef--;
  4170. if (0 < m_cRef) {
  4171. return m_cRef;
  4172. }
  4173. delete this;
  4174. return 0;
  4175. }
  4176. /* G E T I D */
  4177. /*------------------------------------------------------------------------------
  4178. Get id of extension object
  4179. (ITfCandUIExtObject method)
  4180. ------------------------------------------------------------------------------*/
  4181. STDAPI CCandUIExtPushButton::GetID( LONG *pid )
  4182. {
  4183. return m_pExtension->GetID( pid );
  4184. }
  4185. /* E N A B L E */
  4186. /*------------------------------------------------------------------------------
  4187. Enable/disable extension object
  4188. (ITfCandUIExtObject method)
  4189. ------------------------------------------------------------------------------*/
  4190. STDAPI CCandUIExtPushButton::Enable( BOOL fEnable )
  4191. {
  4192. if (fEnable) {
  4193. return m_pExtension->Enable();
  4194. }
  4195. else {
  4196. return m_pExtension->Disable();
  4197. }
  4198. }
  4199. /* I S E N A B L E D */
  4200. /*------------------------------------------------------------------------------
  4201. Get enable status of extension object
  4202. (ITfCandUIExtObject method)
  4203. ------------------------------------------------------------------------------*/
  4204. STDAPI CCandUIExtPushButton::IsEnabled( BOOL *pfEnabled )
  4205. {
  4206. return m_pExtension->IsEnabled( pfEnabled );
  4207. }
  4208. /* S H O W */
  4209. /*------------------------------------------------------------------------------
  4210. Show/hide extension object
  4211. (ITfCandUIExtObject method)
  4212. ------------------------------------------------------------------------------*/
  4213. STDAPI CCandUIExtPushButton::Show( BOOL fShow )
  4214. {
  4215. if (fShow) {
  4216. return m_pExtension->Show();
  4217. }
  4218. else {
  4219. return m_pExtension->Hide();
  4220. }
  4221. }
  4222. /* I S V I S I B L E */
  4223. /*------------------------------------------------------------------------------
  4224. Get visible state of extension object
  4225. (ITfCandUIExtObject method)
  4226. ------------------------------------------------------------------------------*/
  4227. STDAPI CCandUIExtPushButton::IsVisible( BOOL *pfVisible )
  4228. {
  4229. return m_pExtension->IsVisible( pfVisible );
  4230. }
  4231. /* S E T P O S I T I O N */
  4232. /*------------------------------------------------------------------------------
  4233. Set position of extension object
  4234. (ITfCandUIExtObject method)
  4235. ------------------------------------------------------------------------------*/
  4236. STDAPI CCandUIExtPushButton::SetPosition( POINT *pptPos )
  4237. {
  4238. return m_pExtension->SetPosition( pptPos );
  4239. }
  4240. /* G E T P O S I T I O N */
  4241. /*------------------------------------------------------------------------------
  4242. Get position of extension object
  4243. (ITfCandUIExtObject method)
  4244. ------------------------------------------------------------------------------*/
  4245. STDAPI CCandUIExtPushButton::GetPosition( POINT *pptPos )
  4246. {
  4247. return m_pExtension->GetPosition( pptPos );
  4248. }
  4249. /* S E T S I Z E */
  4250. /*------------------------------------------------------------------------------
  4251. Set size of extension object
  4252. (ITfCandUIExtObject method)
  4253. ------------------------------------------------------------------------------*/
  4254. STDAPI CCandUIExtPushButton::SetSize( SIZE *psize )
  4255. {
  4256. return m_pExtension->SetSize( psize );
  4257. }
  4258. /* G E T S I Z E */
  4259. /*------------------------------------------------------------------------------
  4260. Get size of extension object
  4261. (ITfCandUIExtObject method)
  4262. ------------------------------------------------------------------------------*/
  4263. STDAPI CCandUIExtPushButton::GetSize( SIZE *psize )
  4264. {
  4265. return m_pExtension->GetSize( psize );
  4266. }
  4267. /* S E T F O N T */
  4268. /*------------------------------------------------------------------------------
  4269. Set font of extension object
  4270. (ITfCandUIExtObject method)
  4271. ------------------------------------------------------------------------------*/
  4272. STDAPI CCandUIExtPushButton::SetFont( LOGFONTW *pLogFont )
  4273. {
  4274. return m_pExtension->SetFont( pLogFont );
  4275. }
  4276. /* G E T F O N T */
  4277. /*------------------------------------------------------------------------------
  4278. Get font of extension object
  4279. (ITfCandUIExtObject method)
  4280. ------------------------------------------------------------------------------*/
  4281. STDAPI CCandUIExtPushButton::GetFont( LOGFONTW *pLogFont )
  4282. {
  4283. return m_pExtension->GetFont( pLogFont );
  4284. }
  4285. /* S E T T E X T */
  4286. /*------------------------------------------------------------------------------
  4287. Set text of extension object
  4288. (ITfCandUIExtObject method)
  4289. ------------------------------------------------------------------------------*/
  4290. STDAPI CCandUIExtPushButton::SetText( BSTR bstr )
  4291. {
  4292. return m_pExtension->SetText( bstr );
  4293. }
  4294. /* G E T T E X T */
  4295. /*------------------------------------------------------------------------------
  4296. Get text of extension object
  4297. (ITfCandUIExtObject method)
  4298. ------------------------------------------------------------------------------*/
  4299. STDAPI CCandUIExtPushButton::GetText( BSTR *pbstr )
  4300. {
  4301. return m_pExtension->GetText( pbstr );
  4302. }
  4303. /* S E T T O O L T I P S T R I N G */
  4304. /*------------------------------------------------------------------------------
  4305. Set tooltip string of extension object
  4306. (ITfCandUIExtObject method)
  4307. ------------------------------------------------------------------------------*/
  4308. STDAPI CCandUIExtPushButton::SetToolTipString( BSTR bstr )
  4309. {
  4310. return m_pExtension->SetToolTipString( bstr );
  4311. }
  4312. /* G E T T O O L T I P S T R I N G */
  4313. /*------------------------------------------------------------------------------
  4314. Get tooltip string of extension object
  4315. (ITfCandUIExtObject method)
  4316. ------------------------------------------------------------------------------*/
  4317. STDAPI CCandUIExtPushButton::GetToolTipString( BSTR *pbstr )
  4318. {
  4319. return m_pExtension->GetToolTipString( pbstr );
  4320. }
  4321. /* A D V I S E */
  4322. /*------------------------------------------------------------------------------
  4323. Advise eventsink for candidate menu
  4324. (CCandUIExtPushButton method)
  4325. ------------------------------------------------------------------------------*/
  4326. STDAPI CCandUIExtPushButton::Advise( ITfCandUIExtButtonEventSink *pSink )
  4327. {
  4328. if (pSink == NULL) {
  4329. return E_INVALIDARG;
  4330. }
  4331. m_pExtension->SetEventSink( pSink );
  4332. return S_OK;
  4333. }
  4334. /* U N A D V I S E */
  4335. /*------------------------------------------------------------------------------
  4336. Unadvise eventsink for candidate menu
  4337. (CCandUIExtPushButton method)
  4338. ------------------------------------------------------------------------------*/
  4339. STDAPI CCandUIExtPushButton::Unadvise( void )
  4340. {
  4341. m_pExtension->ReleaseEventSink();
  4342. return S_OK;
  4343. }
  4344. /* S E T I C O N */
  4345. /*------------------------------------------------------------------------------
  4346. ------------------------------------------------------------------------------*/
  4347. STDAPI CCandUIExtPushButton::SetIcon( HICON hIcon )
  4348. {
  4349. return m_pExtension->SetIcon( hIcon );
  4350. }
  4351. /* S E T B I T M A P */
  4352. /*------------------------------------------------------------------------------
  4353. ------------------------------------------------------------------------------*/
  4354. STDAPI CCandUIExtPushButton::SetBitmap( HBITMAP hBitmap )
  4355. {
  4356. return m_pExtension->SetBitmap( hBitmap );
  4357. }
  4358. /*============================================================================*/
  4359. /* */
  4360. /* C C A N D U I E X T T O G G L E B U T T O N */
  4361. /* */
  4362. /*============================================================================*/
  4363. /* C C A N D U I E X T T O G G L E B U T T O N */
  4364. /*------------------------------------------------------------------------------
  4365. ------------------------------------------------------------------------------*/
  4366. CCandUIExtToggleButton::CCandUIExtToggleButton( CCandidateUI *pCandUI, CExtensionToggleButton *pExtension )
  4367. {
  4368. m_cRef = 1;
  4369. m_pCandUI = pCandUI;
  4370. m_pExtension = pExtension;
  4371. m_pCandUI->AddRef();
  4372. }
  4373. /* ~ C C A N D U I E X T T O G G L E B U T T O N */
  4374. /*------------------------------------------------------------------------------
  4375. ------------------------------------------------------------------------------*/
  4376. CCandUIExtToggleButton::~CCandUIExtToggleButton( void )
  4377. {
  4378. m_pCandUI->Release();
  4379. }
  4380. /* Q U E R Y I N T E R F A C E */
  4381. /*------------------------------------------------------------------------------
  4382. Query interface
  4383. (IUnknown method)
  4384. ------------------------------------------------------------------------------*/
  4385. STDAPI CCandUIExtToggleButton::QueryInterface( REFIID riid, void **ppvObj )
  4386. {
  4387. if (ppvObj == NULL) {
  4388. return E_POINTER;
  4389. }
  4390. *ppvObj = NULL;
  4391. if (IsEqualIID( riid, IID_IUnknown ) || IsEqualIID( riid, IID_ITfCandUIObject )) {
  4392. *ppvObj = SAFECAST( this, ITfCandUIObject* );
  4393. }
  4394. else if (IsEqualIID( riid, IID_ITfCandUIExtObject )) {
  4395. *ppvObj = SAFECAST( this, ITfCandUIExtObject* );
  4396. }
  4397. else if (IsEqualIID( riid, IID_ITfCandUIExtToggleButton )) {
  4398. *ppvObj = SAFECAST( this, ITfCandUIExtToggleButton* );
  4399. }
  4400. if (*ppvObj == NULL) {
  4401. return E_NOINTERFACE;
  4402. }
  4403. AddRef();
  4404. return S_OK;
  4405. }
  4406. /* A D D R E F */
  4407. /*------------------------------------------------------------------------------
  4408. Increment reference count
  4409. (IUnknown method)
  4410. ------------------------------------------------------------------------------*/
  4411. STDAPI_(ULONG) CCandUIExtToggleButton::AddRef( void )
  4412. {
  4413. m_cRef++;
  4414. return m_cRef;
  4415. }
  4416. /* R E L E A S E */
  4417. /*------------------------------------------------------------------------------
  4418. Decrement reference count and release object
  4419. (IUnknown method)
  4420. ------------------------------------------------------------------------------*/
  4421. STDAPI_(ULONG) CCandUIExtToggleButton::Release( void )
  4422. {
  4423. m_cRef--;
  4424. if (0 < m_cRef) {
  4425. return m_cRef;
  4426. }
  4427. delete this;
  4428. return 0;
  4429. }
  4430. /* G E T I D */
  4431. /*------------------------------------------------------------------------------
  4432. Get id of extension object
  4433. (ITfCandUIExtObject method)
  4434. ------------------------------------------------------------------------------*/
  4435. STDAPI CCandUIExtToggleButton::GetID( LONG *pid )
  4436. {
  4437. return m_pExtension->GetID( pid );
  4438. }
  4439. /* E N A B L E */
  4440. /*------------------------------------------------------------------------------
  4441. Enable/disable extension object
  4442. (ITfCandUIExtObject method)
  4443. ------------------------------------------------------------------------------*/
  4444. STDAPI CCandUIExtToggleButton::Enable( BOOL fEnable )
  4445. {
  4446. if (fEnable) {
  4447. return m_pExtension->Enable();
  4448. }
  4449. else {
  4450. return m_pExtension->Disable();
  4451. }
  4452. }
  4453. /* I S E N A B L E D */
  4454. /*------------------------------------------------------------------------------
  4455. Get enable status of extension object
  4456. (ITfCandUIExtObject method)
  4457. ------------------------------------------------------------------------------*/
  4458. STDAPI CCandUIExtToggleButton::IsEnabled( BOOL *pfEnabled )
  4459. {
  4460. return m_pExtension->IsEnabled( pfEnabled );
  4461. }
  4462. /* S H O W */
  4463. /*------------------------------------------------------------------------------
  4464. Show/hide extension object
  4465. (ITfCandUIExtObject method)
  4466. ------------------------------------------------------------------------------*/
  4467. STDAPI CCandUIExtToggleButton::Show( BOOL fShow )
  4468. {
  4469. if (fShow) {
  4470. return m_pExtension->Show();
  4471. }
  4472. else {
  4473. return m_pExtension->Hide();
  4474. }
  4475. }
  4476. /* I S V I S I B L E */
  4477. /*------------------------------------------------------------------------------
  4478. Get visible state of extension object
  4479. (ITfCandUIExtObject method)
  4480. ------------------------------------------------------------------------------*/
  4481. STDAPI CCandUIExtToggleButton::IsVisible( BOOL *pfVisible )
  4482. {
  4483. return m_pExtension->IsVisible( pfVisible );
  4484. }
  4485. /* S E T P O S I T I O N */
  4486. /*------------------------------------------------------------------------------
  4487. Set position of extension object
  4488. (ITfCandUIExtObject method)
  4489. ------------------------------------------------------------------------------*/
  4490. STDAPI CCandUIExtToggleButton::SetPosition( POINT *pptPos )
  4491. {
  4492. return m_pExtension->SetPosition( pptPos );
  4493. }
  4494. /* G E T P O S I T I O N */
  4495. /*------------------------------------------------------------------------------
  4496. Get position of extension object
  4497. (ITfCandUIExtObject method)
  4498. ------------------------------------------------------------------------------*/
  4499. STDAPI CCandUIExtToggleButton::GetPosition( POINT *pptPos )
  4500. {
  4501. return m_pExtension->GetPosition( pptPos );
  4502. }
  4503. /* S E T S I Z E */
  4504. /*------------------------------------------------------------------------------
  4505. Set size of extension object
  4506. (ITfCandUIExtObject method)
  4507. ------------------------------------------------------------------------------*/
  4508. STDAPI CCandUIExtToggleButton::SetSize( SIZE *psize )
  4509. {
  4510. return m_pExtension->SetSize( psize );
  4511. }
  4512. /* G E T S I Z E */
  4513. /*------------------------------------------------------------------------------
  4514. Get size of extension object
  4515. (ITfCandUIExtObject method)
  4516. ------------------------------------------------------------------------------*/
  4517. STDAPI CCandUIExtToggleButton::GetSize( SIZE *psize )
  4518. {
  4519. return m_pExtension->GetSize( psize );
  4520. }
  4521. /* S E T F O N T */
  4522. /*------------------------------------------------------------------------------
  4523. Set font of extension object
  4524. (ITfCandUIExtObject method)
  4525. ------------------------------------------------------------------------------*/
  4526. STDAPI CCandUIExtToggleButton::SetFont( LOGFONTW *pLogFont )
  4527. {
  4528. return m_pExtension->SetFont( pLogFont );
  4529. }
  4530. /* G E T F O N T */
  4531. /*------------------------------------------------------------------------------
  4532. Get font of extension object
  4533. (ITfCandUIExtObject method)
  4534. ------------------------------------------------------------------------------*/
  4535. STDAPI CCandUIExtToggleButton::GetFont( LOGFONTW *pLogFont )
  4536. {
  4537. return m_pExtension->GetFont( pLogFont );
  4538. }
  4539. /* S E T T E X T */
  4540. /*------------------------------------------------------------------------------
  4541. Set text of extension object
  4542. (ITfCandUIExtObject method)
  4543. ------------------------------------------------------------------------------*/
  4544. STDAPI CCandUIExtToggleButton::SetText( BSTR bstr )
  4545. {
  4546. return m_pExtension->SetText( bstr );
  4547. }
  4548. /* G E T T E X T */
  4549. /*------------------------------------------------------------------------------
  4550. Get text of extension object
  4551. (ITfCandUIExtObject method)
  4552. ------------------------------------------------------------------------------*/
  4553. STDAPI CCandUIExtToggleButton::GetText( BSTR *pbstr )
  4554. {
  4555. return m_pExtension->GetText( pbstr );
  4556. }
  4557. /* S E T T O O L T I P S T R I N G */
  4558. /*------------------------------------------------------------------------------
  4559. Set tooltip string of extension object
  4560. (ITfCandUIExtObject method)
  4561. ------------------------------------------------------------------------------*/
  4562. STDAPI CCandUIExtToggleButton::SetToolTipString( BSTR bstr )
  4563. {
  4564. return m_pExtension->SetToolTipString( bstr );
  4565. }
  4566. /* G E T T O O L T I P S T R I N G */
  4567. /*------------------------------------------------------------------------------
  4568. Get tooltip string of extension object
  4569. (ITfCandUIExtObject method)
  4570. ------------------------------------------------------------------------------*/
  4571. STDAPI CCandUIExtToggleButton::GetToolTipString( BSTR *pbstr )
  4572. {
  4573. return m_pExtension->GetToolTipString( pbstr );
  4574. }
  4575. /* A D V I S E */
  4576. /*------------------------------------------------------------------------------
  4577. Advise eventsink for candidate menu
  4578. (CCandUIExtToggleButton method)
  4579. ------------------------------------------------------------------------------*/
  4580. STDAPI CCandUIExtToggleButton::Advise( ITfCandUIExtButtonEventSink *pSink )
  4581. {
  4582. if (pSink == NULL) {
  4583. return E_INVALIDARG;
  4584. }
  4585. m_pExtension->SetEventSink( pSink );
  4586. return S_OK;
  4587. }
  4588. /* U N A D V I S E */
  4589. /*------------------------------------------------------------------------------
  4590. Unadvise eventsink for candidate menu
  4591. (CCandUIExtToggleButton method)
  4592. ------------------------------------------------------------------------------*/
  4593. STDAPI CCandUIExtToggleButton::Unadvise( void )
  4594. {
  4595. m_pExtension->ReleaseEventSink();
  4596. return S_OK;
  4597. }
  4598. /* S E T I C O N */
  4599. /*------------------------------------------------------------------------------
  4600. ------------------------------------------------------------------------------*/
  4601. STDAPI CCandUIExtToggleButton::SetIcon( HICON hIcon )
  4602. {
  4603. return m_pExtension->SetIcon( hIcon );
  4604. }
  4605. /* S E T B I T M A P */
  4606. /*------------------------------------------------------------------------------
  4607. ------------------------------------------------------------------------------*/
  4608. STDAPI CCandUIExtToggleButton::SetBitmap( HBITMAP hBitmap )
  4609. {
  4610. return m_pExtension->SetBitmap( hBitmap );
  4611. }
  4612. /* S E T T O G G L E S T A T E */
  4613. /*------------------------------------------------------------------------------
  4614. ------------------------------------------------------------------------------*/
  4615. STDAPI CCandUIExtToggleButton::SetToggleState( BOOL fToggle )
  4616. {
  4617. return m_pExtension->SetToggleState( fToggle );
  4618. }
  4619. /* G E T T O G G L E S T A T E */
  4620. /*------------------------------------------------------------------------------
  4621. ------------------------------------------------------------------------------*/
  4622. STDAPI CCandUIExtToggleButton::GetToggleState( BOOL *pfToggled )
  4623. {
  4624. return m_pExtension->GetToggleState( pfToggled );
  4625. }