XTHtmlView.h
上传用户:szled88
上传日期:2015-04-09
资源大小:43957k
文件大小:58k
源码类别:

对话框与窗口

开发平台:

Visual C++

  1. // XTHtmlView.h interface for the CXTHtmlView class.
  2. //
  3. // This file is a part of the XTREME CONTROLS MFC class library.
  4. // (c)1998-2008 Codejock Software, All Rights Reserved.
  5. //
  6. // THIS SOURCE FILE IS THE PROPERTY OF CODEJOCK SOFTWARE AND IS NOT TO BE
  7. // RE-DISTRIBUTED BY ANY MEANS WHATSOEVER WITHOUT THE EXPRESSED WRITTEN
  8. // CONSENT OF CODEJOCK SOFTWARE.
  9. //
  10. // THIS SOURCE CODE CAN ONLY BE USED UNDER THE TERMS AND CONDITIONS OUTLINED
  11. // IN THE XTREME TOOLKIT PRO LICENSE AGREEMENT. CODEJOCK SOFTWARE GRANTS TO
  12. // YOU (ONE SOFTWARE DEVELOPER) THE LIMITED RIGHT TO USE THIS SOFTWARE ON A
  13. // SINGLE COMPUTER.
  14. //
  15. // CONTACT INFORMATION:
  16. // support@codejock.com
  17. // http://www.codejock.com
  18. //
  19. /////////////////////////////////////////////////////////////////////////////
  20. //{{AFX_CODEJOCK_PRIVATE
  21. #if !defined(__XTHTMLVIEW_H__)
  22. #define __XTHTMLVIEW_H__
  23. //}}AFX_CODEJOCK_PRIVATE
  24. #if _MSC_VER >= 1000
  25. #pragma once
  26. #endif // _MSC_VER >= 1000
  27. //===========================================================================
  28. // Summary:
  29. //     CXTHtmlView is a CFormView derived class. The CXTHtmlView class provides
  30. //     the functionality of the WebBrowser control within the context of MFC's
  31. //     document/view architecture. The WebBrowser control is a window in which
  32. //     the user can browse sites on the World Wide Web as well as folders
  33. //     in the local file system and on a network. The WebBrowser control supports
  34. //     hyperlinking, Uniform Resource Locator (URL) navigation, and maintains
  35. //     a history list.
  36. // Remarks:
  37. //     Using the CXTHtmlView Class in an MFC Application
  38. //
  39. //     In the standard MFC framework application (either SDI or MDI based),
  40. //     the view object is commonly derived from a specialized set of classes.
  41. //     These classes, all derived from CView, provide specialized functionality
  42. //     beyond that provided by CView.
  43. //
  44. //     Basing the application's view class on CXTHtmlView provides the view
  45. //     with the WebBrowser control. This effectively makes the application
  46. //     a web browser. The preferred method of creating a web browser-style
  47. //     application is to use the MFC AppWizard, and specify CXTHtmlView as
  48. //     the view class. For more information on implementing and using the
  49. //     WebBrowser control within MFC applications, see Web Browser-Style Applications.
  50. //
  51. //     The functionality of CXTHtmlView is designed for applications that access
  52. //     the Web (and/or HTML documents). The following CXTHtmlView member functions
  53. //     apply to the Internet Explorer application only. These functions will
  54. //     succeed on the WebBrowser control, but they will have no visible effect.
  55. //===========================================================================
  56. class _XTP_EXT_CLASS CXTHtmlView : public CFormView
  57. {
  58. DECLARE_DYNCREATE(CXTHtmlView)
  59. DECLARE_EVENTSINK_MAP()
  60. protected:
  61. //-----------------------------------------------------------------------
  62. // Summary:
  63. //     Constructs a CXTHtmlView object
  64. //-----------------------------------------------------------------------
  65. CXTHtmlView();
  66. //-----------------------------------------------------------------------
  67. // Summary:
  68. //     Destroys a CXTHtmlView object, handles cleanup and deallocation
  69. //-----------------------------------------------------------------------
  70. virtual ~CXTHtmlView();
  71. public:
  72. //-----------------------------------------------------------------------
  73. // Summary:
  74. //     Call this member function to retrieve the type name of the contained
  75. //     active document. Applies to Internet Explorer and WebBrowser.
  76. // Returns:
  77. //     A CString object containing the type name of the contained active document.
  78. //-----------------------------------------------------------------------
  79. CString GetType() const;
  80. //-----------------------------------------------------------------------
  81. // Summary:
  82. //     Call this member function to retrieve the distance between the internal
  83. //     left edge of the WebBrowser control and the left edge of its container.
  84. //     Applies to Internet Explorer and WebBrowser.
  85. // Returns:
  86. //     The left-edge distance in pixels.
  87. //-----------------------------------------------------------------------
  88. long GetLeft() const;
  89. //-----------------------------------------------------------------------
  90. // Summary:
  91. //     Call this member function to set the horizontal position of the Internet
  92. //     Explorer main window.
  93. // Parameters:
  94. //     nNewValue - The screen coordinate of the left edge of the main window.
  95. //-----------------------------------------------------------------------
  96. void SetLeft(long nNewValue);
  97. //-----------------------------------------------------------------------
  98. // Summary:
  99. //     Call this member function to retrieve the screen coordinate of the
  100. //     top edge of the WebBrowser control's main window. Applies to Internet
  101. //     Explorer and WebBrowser.
  102. // Returns:
  103. //     The address of a variable that receives the screen coordinate of the main
  104. //     window's top edge.
  105. //-----------------------------------------------------------------------
  106. long GetTop() const;
  107. //-----------------------------------------------------------------------
  108. // Summary:
  109. //     Call this member function to set the distance between the internal top edge
  110. //     of the WebBrowser control and the top edge of its container. Applies to
  111. //     Internet Explorer and WebBrowser.
  112. // Parameters:
  113. //     nNewValue - The screen coordinate of the top edge of the main window.
  114. //-----------------------------------------------------------------------
  115. void SetTop(long nNewValue);
  116. //-----------------------------------------------------------------------
  117. // Summary:
  118. //     Call this member function to retrieve the height in pixels of the
  119. //     WebBrowser control's frame window.
  120. // Returns:
  121. //     The control's frame window height in pixels.
  122. //-----------------------------------------------------------------------
  123. long GetHeight() const;
  124. //-----------------------------------------------------------------------
  125. // Summary:
  126. //     Call this member function to set the height of the Internet Explorer
  127. //     main window. Applies to Internet Explorer and WebBrowser.
  128. // Parameters:
  129. //     nNewValue - The height in pixels of the main window.
  130. //-----------------------------------------------------------------------
  131. void SetHeight(long nNewValue);
  132. //-----------------------------------------------------------------------
  133. // Summary:
  134. //     Call this member function to set the visibility state of the WebBrowser
  135. //     control. Applies to Internet Explorer and WebBrowser.
  136. // Parameters:
  137. //     bNewValue - Nonzero if the control is visible, otherwise zero.
  138. //-----------------------------------------------------------------------
  139. void SetVisible(BOOL bNewValue);
  140. //-----------------------------------------------------------------------
  141. // Summary:
  142. //     Call this member function to determine if the contained object is visible.
  143. //     Applies to Internet Explorer and WebBrowser.
  144. // Returns:
  145. //     Nonzero if the object is visible, otherwise returns zero.
  146. //-----------------------------------------------------------------------
  147. BOOL GetVisible() const;
  148. //-----------------------------------------------------------------------
  149. // Summary:
  150. //     Call this member function to get the name of the resource being displayed
  151. //     in the WebBrowser. If the resource is an HTML page on the World Wide
  152. //     Web, the name is the title of that page. If the resource is a folder
  153. //     or file on the network or local computer, the name is the UNC or full
  154. //     path of the folder or file. Applies to Internet Explorer and WebBrowser.
  155. // Returns:
  156. //     A CString object containing the name of the resource currently
  157. //     displayed in the WebBrowser.
  158. //-----------------------------------------------------------------------
  159. CString GetLocationName() const;
  160. //-----------------------------------------------------------------------
  161. // Summary:
  162. //     Call this member function to retrieve the ready state of the WebBrowser
  163. //     object. Applies to Internet Explorer and WebBrowser.
  164. // Returns:
  165. //     A READYSTATE value as described in the Platform SDK.
  166. //-----------------------------------------------------------------------
  167. READYSTATE GetReadyState() const;
  168. //-----------------------------------------------------------------------
  169. // Summary:
  170. //     Call this member function to determine whether the web browser is operating
  171. //     offline. Applies to Internet Explorer and WebBrowser.
  172. // Returns:
  173. //     Nonzero if the web browser is currently offline, otherwise returns zero.
  174. //-----------------------------------------------------------------------
  175. BOOL GetOffline() const;
  176. //-----------------------------------------------------------------------
  177. // Summary:
  178. //     Call this member function to set a value indicating whether the WebBrowser
  179. //     control is currently operating in offline mode. In offline mode, the
  180. //     browser reads HTML pages from the local cache rather than from the
  181. //     source document. Applies to Internet Explorer and WebBrowser.
  182. // Parameters:
  183. //     bNewValue - Nonzero to read from the local cache, otherwise zero.
  184. //-----------------------------------------------------------------------
  185. void SetOffline(BOOL bNewValue);
  186. //-----------------------------------------------------------------------
  187. // Summary:
  188. //     Call this member function to determine whether any dialog boxes can
  189. //     be shown in the WebBrowser control. Applies to Internet Explorer and
  190. //     WebBrowser.
  191. // Returns:
  192. //     Nonzero if dialog boxes cannot be displayed from
  193. //     the WebBrowser control, otherwise returns zero.
  194. //-----------------------------------------------------------------------
  195. BOOL GetSilent() const;
  196. //-----------------------------------------------------------------------
  197. // Summary:
  198. //     Call this member function to set a value indicating whether any dialog
  199. //     boxes can be shown. Applies to Internet Explorer and WebBrowser.
  200. // Parameters:
  201. //     bNewValue - If nonzero, dialog boxes will not be displayed. If
  202. //                 zero, dialog boxes will be displayed. The default
  203. //                 value is zero.
  204. //-----------------------------------------------------------------------
  205. void SetSilent(BOOL bNewValue);
  206. //-----------------------------------------------------------------------
  207. // Summary:
  208. //     Call this member function to determine whether Internet Explorer is
  209. //     the top-level container of the WebBrowser control. Applies to Internet
  210. //     Explorer and WebBrowser.
  211. // Returns:
  212. //     Nonzero if the container is the top-level container, otherwise
  213. //     returns zero.
  214. //-----------------------------------------------------------------------
  215. BOOL GetTopLevelContainer() const;
  216. //-----------------------------------------------------------------------
  217. // Summary:
  218. //     Call this member function to retrieve the URL of the resource that
  219. //     the WebBrowser control is currently displaying. If the resource is
  220. //     a folder or file on the network or local computer, the name is the
  221. //     UNC or full path of the folder or file. Applies to Internet Explorer
  222. //     and WebBrowser.
  223. // Returns:
  224. //     A CString object containing the URL of the resource currently
  225. //     displayed in the WebBrowser.
  226. //-----------------------------------------------------------------------
  227. CString GetLocationURL() const;
  228. //-----------------------------------------------------------------------
  229. // Summary:
  230. //     Call this member function to determine whether the WebBrowser control
  231. //     is engaged in a navigation or downloading operation. Applies to Internet
  232. //     Explorer and WebBrowser.
  233. // Returns:
  234. //     Nonzero if the web browser is busy, otherwise returns zero.
  235. //-----------------------------------------------------------------------
  236. BOOL GetBusy() const;
  237. //-----------------------------------------------------------------------
  238. // Summary:
  239. //     Call this member function to retrieve the automation object supported
  240. //     by the application that contains the WebBrowser control. Applies to
  241. //     Internet Explorer and WebBrowser.
  242. // Returns:
  243. //     A pointer to the IDispatch interface of the active document object.
  244. //-----------------------------------------------------------------------
  245. LPDISPATCH GetApplication() const;
  246. //-----------------------------------------------------------------------
  247. // Summary:
  248. //     Call this member function to retrieve a pointer to the parent object
  249. //     of the WebBrowser control. Applies to Internet Explorer and WebBrowser.
  250. // Returns:
  251. //     A pointer to the IDispatch interface of the object that is
  252. //     the parent of the WebBrowser control.
  253. //-----------------------------------------------------------------------
  254. LPDISPATCH GetParentBrowser() const;
  255. //-----------------------------------------------------------------------
  256. // Summary:
  257. //     Call this member function to retrieve an object that points to the
  258. //     container of the web browser. Applies to Internet Explorer and WebBrowser.
  259. // Returns:
  260. //     A pointer to the IDispatch interface of the active document object.
  261. //-----------------------------------------------------------------------
  262. LPDISPATCH GetContainer() const;
  263. //-----------------------------------------------------------------------
  264. // Summary:
  265. //     Call this member function to retrieve the HTML document for the active
  266. //     document. Applies to Internet Explorer and WebBrowser.
  267. // Returns:
  268. //     A pointer to the IDispatch interface of the active document object.
  269. //-----------------------------------------------------------------------
  270. LPDISPATCH GetHtmlDocument() const;
  271. //-----------------------------------------------------------------------
  272. // Summary:
  273. //     Call this member function to retrieve the full path of the file that
  274. //     Internet Explorer is currently displaying. Applies to Internet Explorer.
  275. //     If you use this call with a WebBrowser control, it will return no error,
  276. //     but it will ignore this call.
  277. // Returns:
  278. //     A CString object containing the path and name of the currently displayed
  279. //     file. If no path and filename exist, GetFullName returns an empty CString.
  280. //-----------------------------------------------------------------------
  281. CString GetFullName() const;
  282. //-----------------------------------------------------------------------
  283. // Summary:
  284. //     Call this member function to determine whether the toolbar is visible.
  285. // Returns:
  286. //     A value indicating whether the toolbar is visible. Nonzero
  287. //     if the toolbar is visible, otherwise zero.
  288. //-----------------------------------------------------------------------
  289. int GetToolBar() const;
  290. //-----------------------------------------------------------------------
  291. // Summary:
  292. //     Call this member function to show or hide the Internet Explorer toolbar.
  293. //     Applies to Internet Explorer. If you use this call with a WebBrowser
  294. //     control, it will not return an error, but it will ignore this call.
  295. // Parameters:
  296. //     nNewValue - Indicates whether to display the toolbar. Nonzero if the toolbar
  297. //                 is to be displayed, otherwise zero.
  298. //-----------------------------------------------------------------------
  299. void SetToolBar(int nNewValue);
  300. //-----------------------------------------------------------------------
  301. // Summary:
  302. //     Call this member function to determine whether or not the menu bar is visible.
  303. //     Applies to Internet Explorer and WebBrowser.
  304. // Returns:
  305. //     Nonzero if the menu bar is visible, otherwise returns zero.
  306. //-----------------------------------------------------------------------
  307. BOOL GetMenuBar() const;
  308. //-----------------------------------------------------------------------
  309. // Summary:
  310. //     Call this member function to show or hide the Internet Explorer menu bar.
  311. //     Applies to Internet Explorer. If you use this call with a WebBrowser
  312. //     control, it will not return an error, but it will ignore this call.
  313. // Parameters:
  314. //     bNewValue - Nonzero to show the menu bar, otherwise zero.
  315. //-----------------------------------------------------------------------
  316. void SetMenuBar(BOOL bNewValue);
  317. //-----------------------------------------------------------------------
  318. // Summary:
  319. //     Call this member function to determine whether the WebBrowser control
  320. //     is operating in full-screen mode or in normal window mode. In full-screen
  321. //     mode, the Internet Explorer main window is maximized and the status
  322. //     bar, toolbar, menu bar, and title bar are hidden. Applies to Internet
  323. //     Explorer and WebBrowser.
  324. // Returns:
  325. //     Nonzero if the WebBrowser is operating in full-screen mode, otherwise
  326. //     returns zero.
  327. //-----------------------------------------------------------------------
  328. BOOL GetFullScreen() const;
  329. //-----------------------------------------------------------------------
  330. // Summary:
  331. //     Call this member function to set Internet Explorer to either full-screen
  332. //     or normal window mode. In full-screen mode, the Internet Explorer
  333. //     main window is maximized and the status bar, toolbar, menu bar, and
  334. //     title bar are hidden. Applies to Internet Explorer. If you use this
  335. //     call with a WebBrowser control, it will not return an error, but it will
  336. //     ignore this call.
  337. // Parameters:
  338. //     bNewValue - Nonzero for full-screen mode, otherwise zero.
  339. //-----------------------------------------------------------------------
  340. void SetFullScreen(BOOL bNewValue);
  341. //-----------------------------------------------------------------------
  342. // Summary:
  343. //     Call this member function to query a command status. QueryStatusWB
  344. //     implements the behavior of the IOleCommandTarget::QueryStatus method.
  345. //     Applies to Internet Explorer and WebBrowser.
  346. // Parameters:
  347. //     cmdID - The OLECMDID value of the command for which the caller needs status
  348. //             information.
  349. // Returns:
  350. //     The address of the OLECMDF value that receives the status of the command.
  351. //-----------------------------------------------------------------------
  352. OLECMDF QueryStatusWB(OLECMDID cmdID) const;
  353. //-----------------------------------------------------------------------
  354. // Summary:
  355. //     Call this member function to determine whether the WebBrowser object
  356. //     is registered as a top-level browser for target name resolution. Applies
  357. //     to Internet Explorer and WebBrowser.
  358. // Returns:
  359. //     Nonzero if the browser is registered as a top-level browser, otherwise
  360. //     returns zero.
  361. //-----------------------------------------------------------------------
  362. BOOL GetRegisterAsBrowser() const;
  363. //-----------------------------------------------------------------------
  364. // Summary:
  365. //     Call this member function to set a value indicating whether the WebBrowser
  366. //     control is registered as a top-level browser for target name resolution.
  367. //     A top-level browser is the browser set in the registry as the default
  368. //     browser. Applies to Internet Explorer and WebBrowser.
  369. // Parameters:
  370. //     bNewValue - Determines whether Internet Explorer is registered as a top-level
  371. //                 browser. If nonzero, the web browser is registered as a top-level
  372. //                 browser. If zero, it is not a top-level browser. The default value
  373. //                 is zero.
  374. //-----------------------------------------------------------------------
  375. void SetRegisterAsBrowser(BOOL bNewValue);
  376. //-----------------------------------------------------------------------
  377. // Summary:
  378. //     Call this member function to determine whether the WebBrowser control
  379. //     is registered as a drop target for navigation. Applies to Internet
  380. //     Explorer and WebBrowser.
  381. // Returns:
  382. //     Nonzero if the browser is registered as a drop target, otherwise returns zero.
  383. //-----------------------------------------------------------------------
  384. BOOL GetRegisterAsDropTarget() const;
  385. //-----------------------------------------------------------------------
  386. // Summary:
  387. //     Call this member function to set a value indicating whether the WebBrowser
  388. //     control is registered as a drop target for navigation. Applies to
  389. //     Internet Explorer and WebBrowser.
  390. // Parameters:
  391. //     bNewValue - Determines if the WebBrowser control is registered as a drop target
  392. //                 for navigation. If nonzero, the object is registered as a drop target.
  393. //                 If zero, it is not a drop target.
  394. //-----------------------------------------------------------------------
  395. void SetRegisterAsDropTarget(BOOL bNewValue);
  396. //-----------------------------------------------------------------------
  397. // Summary:
  398. //     Call this member function to determine whether the web browser is in
  399. //     theater mode. When the web browser is in theater mode, the browser
  400. //     main window fills the entire screen, a toolbar with a minimal set of
  401. //     navigational tools appears, and the status bar appears in the upper
  402. //     right-hand corner of the screen. Applies to Internet Explorer and
  403. //     WebBrowser.
  404. // Returns:
  405. //     Nonzero if the web browser is in theater mode, otherwise returns zero.
  406. //-----------------------------------------------------------------------
  407. BOOL GetTheaterMode() const;
  408. //-----------------------------------------------------------------------
  409. // Summary:
  410. //     Call this member function to set a value indicating whether the WebBrowser
  411. //     control is in theater mode. When the web browser is in theater mode,
  412. //     the browser main window fills the entire screen, a toolbar with a minimal
  413. //     set of navigational tools appears, and the status bar appears in the
  414. //     upper right-hand corner of the screen. Applies to Internet Explorer
  415. //     and WebBrowser.
  416. // Parameters:
  417. //     bNewValue - Nonzero to set the WebBrowser control to theater mode, otherwise zero.
  418. //                 The default value is zero.
  419. //-----------------------------------------------------------------------
  420. void SetTheaterMode(BOOL bNewValue);
  421. //-----------------------------------------------------------------------
  422. // Summary:
  423. //     Call this member function to retrieve Internet Explorer's address bar.
  424. //     Applies to Internet Explorer. If you use this call with a WebBrowser
  425. //     control, it will return no error, but it will ignore this call.
  426. // Returns:
  427. //     Nonzero if the address bar is visible, otherwise returns zero.
  428. //-----------------------------------------------------------------------
  429. BOOL GetAddressBar() const;
  430. //-----------------------------------------------------------------------
  431. // Summary:
  432. //     Call this member function to show or hide the Internet Explorer object's
  433. //     address bar. Applies to Internet Explorer. If you use this call with
  434. //     a WebBrowser control, it will return no error, but it will ignore this
  435. //     call.
  436. // Parameters:
  437. //     bNewValue - Nonzero to show address bar, otherwise zero.
  438. //-----------------------------------------------------------------------
  439. void SetAddressBar(BOOL bNewValue);
  440. //-----------------------------------------------------------------------
  441. // Summary:
  442. //     Call this member function to determine whether the WebBrowser control
  443. //     displays a status bar. Applies to Internet Explorer. If you use this
  444. //     call with a WebBrowser control, it will return no error, but it will
  445. //     ignore this call.
  446. // Returns:
  447. //     Nonzero if the status bar can be displayed, otherwise returns zero.
  448. //-----------------------------------------------------------------------
  449. BOOL GetStatusBar() const;
  450. //-----------------------------------------------------------------------
  451. // Summary:
  452. //     Call this member function to display the status bar. Applies to Internet
  453. //     Explorer. If you use this call with a WebBrowser control, it will
  454. //     return no error, but it will ignore this call.
  455. // Parameters:
  456. //     bNewValue - Nonzero if the status bar is visible, otherwise zero.
  457. //-----------------------------------------------------------------------
  458. void SetStatusBar(BOOL bNewValue);
  459. //-----------------------------------------------------------------------
  460. // Summary:
  461. //     This member function navigates backward one item in the history list.
  462. //     Applies to Internet Explorer and WebBrowser.
  463. //-----------------------------------------------------------------------
  464. void GoBack();
  465. //-----------------------------------------------------------------------
  466. // Summary:
  467. //     This member function navigates forward one item in the history list.
  468. //     Applies to Internet Explorer and WebBrowser.
  469. //-----------------------------------------------------------------------
  470. void GoForward();
  471. //-----------------------------------------------------------------------
  472. // Summary:
  473. //     This member function navigates to the current home or start page specified
  474. //     in the Internet Explorer Internet Options dialog box or the Internet
  475. //     Properties dialog box, accessed from the Control Panel. Applies to
  476. //     Internet Explorer and WebBrowser.
  477. //-----------------------------------------------------------------------
  478. void GoHome();
  479. //-----------------------------------------------------------------------
  480. // Summary:
  481. //     This member function navigates to the current search page, as specified
  482. //     in the Internet Explorer Internet Options dialog box or the Internet
  483. //     Properties dialog box, accessed from the Control Panel. Applies to
  484. //     Internet Explorer and WebBrowser.
  485. //-----------------------------------------------------------------------
  486. void GoSearch();
  487. //-----------------------------------------------------------------------
  488. // Summary:
  489. //     Call this member function to navigate to the resource identified by
  490. //     a URL. Applies to Internet Explorer and WebBrowser.
  491. // Parameters:
  492. //     URL                 - A caller-allocated string that contains
  493. //                           the URL to navigate to, or the full path
  494. //                           of the file to display.
  495. //     dwFlags             - The flags of a variable that specifies
  496. //                           whether to add the resource to the history
  497. //                           list, whether to read to or write from the
  498. //                           cache, and whether to display the resource
  499. //                           in a new window. The variable can be a
  500. //                           combination of the values defined by the
  501. //                           BrowserNavConstants enumeration.
  502. //     lpszTargetFrameName - A pointer to a string that contains the
  503. //                           name of the frame in which to display the
  504. //                           resource.
  505. //     lpszHeaders         - A pointer to a value that specifies the HTTP
  506. //                           headers to send to the server. These headers
  507. //                           are added to the default Internet Explorer
  508. //                           headers. The headers can specify such things
  509. //                           as the action required of the server, the
  510. //                           type of data being passed to the server,
  511. //                           or a status code. This parameter is ignored
  512. //                           if the URL is not an HTTP URL.
  513. //     lpvPostData         - A pointer to the data to send with the HTTP
  514. //                           POST transaction. For example, the POST
  515. //                           transaction is used to send data gathered by an
  516. //                           HTML form. If this parameter does not specify
  517. //                           any post data, Navigate issues an HTTP GET
  518. //                           transaction. This parameter is ignored if
  519. //                           the URL is not an HTTP URL.
  520. //     dwPostDataLen       - Data to send with the HTTP POST transaction.
  521. //                           For example, the POST transaction is used to
  522. //                           send data gathered by an HTML form. If this
  523. //                           parameter does not specify any post data,
  524. //                           Navigate issues an HTTP GET transaction.
  525. //                           This parameter is ignored if the URL is
  526. //                           not an HTTP URL.
  527. //-----------------------------------------------------------------------
  528. void Navigate(LPCTSTR URL, DWORD dwFlags = 0, LPCTSTR lpszTargetFrameName = NULL, LPCTSTR lpszHeaders = NULL, LPVOID lpvPostData = NULL, DWORD dwPostDataLen = 0);
  529. //-----------------------------------------------------------------------
  530. // Summary:
  531. //     Call this member function to navigate to the resource identified by
  532. //     a URL, or to the file identified by a full path. This member function
  533. //     extends the Navigate member function by supporting browsing on special
  534. //     folders, such as Desktop and My Computer, that are represented by the
  535. //     parameter 'pIDL'. Applies to Internet Explorer and WebBrowser.
  536. // Parameters:
  537. //     pIDL                - A pointer to an ITEMIDLIST structure.
  538. //     lpszURL             - A pointer to a string containing the URL.
  539. //     dwFlags             - The flags of a variable that specifies whether
  540. //                           to add the resource to the history list,
  541. //                           whether to read to or write from the cache, and
  542. //                           whether to display the resource in a new window.
  543. //                           The variable can be a combination of the values
  544. //                           defined by the BrowserNavConstants enumeration.
  545. //     lpszTargetFrameName - A pointer to a string that contains the name of
  546. //                           the frame in which to display the resource.
  547. //     lpszHeaders         - A pointer to a value that specifies the HTTP
  548. //                           headers to send to the server. These headers are
  549. //                           added to the default Internet Explorer headers.
  550. //                           The headers can specify such things as the action
  551. //                           required of the server, the type of data being passed
  552. //                           to the server, or a status code. This parameter is
  553. //                           ignored if the URL is not an HTTP URL.
  554. //     lpvPostData         - Data to send with the HTTP POST transaction. For
  555. //                           example, the POST transaction is used to send data
  556. //                           gathered by an HTML form. If this parameter does
  557. //                           not specify any post data, Navigate2 issues an HTTP
  558. //                           GET transaction. This parameter is ignored if the
  559. //                           URL is not an HTTP URL.
  560. //     dwPostDataLen       - Length in bytes of the data pointed to by the
  561. //                           'lpvPostData' parameter.
  562. //     lpszHeader          - A pointer to a value that specifies the HTTP
  563. //                           headers to send to the server. These headers
  564. //                           are added to the default Internet Explorer headers.
  565. //                           The headers can specify such things as the action
  566. //                           required of the server, the type of data being passed
  567. //                           to the server, or a status code. This parameter is
  568. //                           ignored if the URL is not an HTTP URL.
  569. //     baPostedData        - A reference to a CByteArray object
  570. //-----------------------------------------------------------------------
  571. void Navigate2(LPITEMIDLIST pIDL, DWORD dwFlags = 0, LPCTSTR lpszTargetFrameName = NULL);
  572. void Navigate2(LPCTSTR lpszURL, DWORD dwFlags = 0, LPCTSTR lpszTargetFrameName = NULL, LPCTSTR lpszHeaders = NULL, LPVOID lpvPostData = NULL, DWORD dwPostDataLen = 0); // <combine CXTHtmlView::Navigate2@LPITEMIDLIST@DWORD@LPCTSTR>
  573. void Navigate2(LPCTSTR lpszURL, DWORD dwFlags, CByteArray& baPostedData, LPCTSTR lpszTargetFrameName = NULL, LPCTSTR lpszHeader = NULL); // <combine CXTHtmlView::Navigate2@LPITEMIDLIST@DWORD@LPCTSTR>
  574. //-----------------------------------------------------------------------
  575. // Summary:
  576. //     This member function reloads the URL or file that the web browser is
  577. //     currently displaying. Refresh contains no parameters for setting the
  578. //     refresh level. Applies to Internet Explorer and WebBrowser.
  579. //-----------------------------------------------------------------------
  580. void Refresh();
  581. //-----------------------------------------------------------------------
  582. // Summary:
  583. //     This member function reloads the file that Internet Explorer is currently
  584. //     displaying. Unlike Refresh, Refresh2 contains a parameter that specifies
  585. //     the refresh level. Applies to Internet Explorer and WebBrowser.
  586. // Parameters:
  587. //     nLevel - The address of the variable specifying the refresh level.
  588. //              The possible variables are defined in RefreshConstants,
  589. //              in the Platform SDK.
  590. //-----------------------------------------------------------------------
  591. void Refresh2(int nLevel);
  592. //-----------------------------------------------------------------------
  593. // Summary:
  594. //     Call this member function to cancel any pending navigation or download
  595. //     operation and stop any dynamic page elements, such as background sounds
  596. //     and animations. Applies to Internet Explorer and WebBrowser.
  597. //-----------------------------------------------------------------------
  598. void Stop();
  599. //-----------------------------------------------------------------------
  600. // Summary:
  601. //     Call this member function to set the property associated with a given
  602. //     object. Applies to Internet Explorer and WebBrowser.
  603. // Parameters:
  604. //     lpszPropertyName - A pointer to a string containing the name
  605. //                        of the property to set.
  606. //     dValue           - The new value of the property.
  607. //     vtValue      - The new value of the property indicated by 'lpszProperty'.
  608. //     lpszValue        - A pointer to a string containing the new
  609. //                        value of the property.
  610. //     lValue           - The new value of the property.
  611. //     nValue           - The new value of the property.
  612. //-----------------------------------------------------------------------
  613. void PutProperty(LPCTSTR lpszPropertyName , const VARIANT& vtValue);
  614. void PutProperty(LPCTSTR lpszPropertyName, double dValue); // <combine CXTHtmlView::PutProperty@LPCTSTR@const VARIANT&>
  615. void PutProperty(LPCTSTR lpszPropertyName, LPCTSTR lpszValue); // <combine CXTHtmlView::PutProperty@LPCTSTR@const VARIANT&>
  616. void PutProperty(LPCTSTR lpszPropertyName, long lValue); // <combine CXTHtmlView::PutProperty@LPCTSTR@const VARIANT&>
  617. void PutProperty(LPCTSTR lpszPropertyName, short nValue); // <combine CXTHtmlView::PutProperty@LPCTSTR@const VARIANT&>
  618. //-----------------------------------------------------------------------
  619. // Summary:
  620. //     Call this member function to get the value of the property that is currently
  621. //     associated with the control. Applies to Internet Explorer and WebBrowser.
  622. // Parameters:
  623. //     lpszProperty - A pointer to a string containing the property
  624. //                    to retrieve.
  625. //     strValue     - A reference to a CString object that receives
  626. //                    the current value of the property.
  627. //     lpszProperty - A pointer to a string containing the property to retrieve.
  628. // Returns:
  629. //     The lpszProperty version returns a COleVariant object, the BOOL version
  630. //     returns nonzero if completed successfully, otherwise returns zero.
  631. //-----------------------------------------------------------------------
  632. COleVariant GetProperty(LPCTSTR lpszProperty);
  633. BOOL GetProperty(LPCTSTR lpszProperty, CString& strValue); // <combine CXTHtmlView::GetProperty@LPCTSTR>
  634. //-----------------------------------------------------------------------
  635. // Summary:
  636. //     Call this member function to execute a command in the WebBrowser or
  637. //     Internet Explorer. See IWebBrowser2::ExecWB in the Platform SDK.
  638. // Parameters:
  639. //     cmdID      - The command to execute.
  640. //     cmdexecopt - The options set for executing the command.
  641. //     pvaIn      - A variant used for specifying the command input arguments.
  642. //     pvaOut     - A variant used for specifying the command output arguments.
  643. //-----------------------------------------------------------------------
  644. void ExecWB(OLECMDID cmdID, OLECMDEXECOPT cmdexecopt, VARIANT* pvaIn, VARIANT* pvaOut);
  645. //-----------------------------------------------------------------------
  646. // Summary:
  647. //     Call this member function to load the specified resource into
  648. //     the WebBrowser control. Applies to Internet Explorer and WebBrowser.
  649. // Parameters:
  650. //     nRes - The ID of the buffer containing the name of the resource to load.
  651. //     lpszResource - A pointer to a string containing the name of the
  652. //                    resource to load.
  653. // Returns:
  654. //     Nonzero if successful, otherwise returns zero.
  655. //-----------------------------------------------------------------------
  656. BOOL LoadFromResource(UINT nRes);
  657. BOOL LoadFromResource(LPCTSTR lpszResource); // <combine CXTHtmlView::LoadFromResource@UINT>
  658. //{{AFX_CODEJOCK_PRIVATE
  659. #ifdef _DEBUG
  660. virtual void AssertValid() const;
  661. virtual void Dump(CDumpContext& dc) const;
  662. #endif
  663. //}}AFX_CODEJOCK_PRIVATE
  664. //-----------------------------------------------------------------------
  665. // Summary:
  666. //     This member function is called by the framework to draw the view.
  667. //     Applies to Internet Explorer and WebBrowser.
  668. // Parameters:
  669. //     pDC - A pointer to the device context to be used for rendering an image.
  670. //-----------------------------------------------------------------------
  671. virtual void OnDraw(CDC* pDC);
  672. //-----------------------------------------------------------------------
  673. // Summary:
  674. //     Call this member function to create a WebBrowser control or container
  675. //     for the Internet Explorer executable.
  676. // Parameters:
  677. //     lpszClassName  - Points to a null-terminated character string
  678. //                      that names the Windows class. The class name
  679. //                      can be any name registered with the
  680. //                      AfxRegisterWndClass global function or the
  681. //                      RegisterClass Windows function. If NULL, it uses
  682. //                      the predefined default CFrameWnd attributes.
  683. //     lpszWindowName - Points to a null-terminated character string
  684. //                      that represents the window's name.
  685. //     dwStyle        - Specifies the window style attributes. By default,
  686. //                      the WS_VISIBLE and WS_CHILD Windows styles are set.
  687. //     rect           - A reference to a RECT structure specifying the
  688. //                      size and position of the window. The rectDefault
  689. //                      value allows Windows to specify the size and
  690. //                      position of the new window.
  691. //     pParentWnd     - A pointer to the parent window of the control.
  692. //     nID            - The ID number of the view. By default, set to
  693. //                      AFX_IDW_PANE_FIRST.
  694. //     pContext       - A pointer to a CCreateContext.  It is NULL by default.
  695. // Returns:
  696. //     Nonzero if successful, otherwise returns zero.
  697. //-----------------------------------------------------------------------
  698. virtual BOOL Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext = NULL);
  699. //-----------------------------------------------------------------------
  700. // Summary:
  701. //     This member function is called by the framework after a navigation
  702. //     to a hyperlink completes (on either a window or frameset element).
  703. //     The URL parameter can be a PIDL in the case of a shell name space entity
  704. //     for which there is no URL representation. Note that the URL contained
  705. //     in 'strURL' can be different from the URL that the browser was told to
  706. //     navigate to, because this URL is the canonicalized and qualified URL.
  707. //     For example, if an application specifies a URL of "www.microsoft.com"
  708. //     in a call to Navigate or Navigate2, the URL passed by OnNavigateComplete2
  709. //     will be  "http://www.microsoft.com/". Also, if the server has redirected
  710. //     the browser to a different URL, the redirected URL will be reflected
  711. //     here.
  712. // Parameters:
  713. //     strURL - A string expression that evaluates to the URL, UNC file
  714. //              name, or PIDL (a  pointer to an item identifier list)
  715. //              that was navigated to.
  716. //-----------------------------------------------------------------------
  717. virtual void OnNavigateComplete2(LPCTSTR strURL);
  718. //-----------------------------------------------------------------------
  719. // Summary:
  720. //     This member function is called by the framework to cause an event to fire
  721. //     before a navigation occurs in the web browser.
  722. // Parameters:
  723. //     lpszURL             - Pointer to a string containing the URL
  724. //                           to navigate to.
  725. //     nFlags              - Reserved for future use.
  726. //     lpszTargetFrameName - A string that contains the name of the
  727. //                           frame in which to display the resource,
  728. //                           or NULL if no named frame is targeted
  729. //                           for the resource.
  730. //     baPostedData        - A reference to a CByteArray object containing
  731. //                           the data to send to the server if the HTTP
  732. //                           POST transaction is being used.
  733. //     lpszHeaders         - A pointer to a string containing additional
  734. //                           HTTP headers to send to the server (HTTP
  735. //                           URLs only). The headers can specify such things
  736. //                           as the action required of the server, the type
  737. //                           of data being passed to the server, or a status code.
  738. //     pbCancel            - A pointer to a cancel flag. An application can
  739. //                           set this parameter to nonzero to cancel the
  740. //                           navigation operation, or to zero to allow
  741. //                           it to proceed.
  742. //-----------------------------------------------------------------------
  743. virtual void OnBeforeNavigate2(LPCTSTR lpszURL, DWORD nFlags, LPCTSTR lpszTargetFrameName, CByteArray& baPostedData, LPCTSTR lpszHeaders, BOOL* pbCancel);
  744. //-----------------------------------------------------------------------
  745. // Summary:
  746. //     This member function is called by the framework to notify an application
  747. //     that the text of the status bar associated with the WebBrowser control
  748. //     has changed.
  749. // Parameters:
  750. //     lpszText - A string that contains the new status bar text.
  751. //-----------------------------------------------------------------------
  752. virtual void OnStatusTextChange(LPCTSTR lpszText);
  753. //-----------------------------------------------------------------------
  754. // Summary:
  755. //     This member function is called by the framework to notify an application
  756. //     that the progress of a download operation has been updated. The container
  757. //     can use the information provided by this event to display the number
  758. //     of bytes downloaded so far or to update a progress indicator.
  759. // Parameters:
  760. //     nProgress    - Amount of total progress to show, or -1 when progress is complete.
  761. //     nProgressMax - Maximum progress value.
  762. //-----------------------------------------------------------------------
  763. virtual void OnProgressChange(long nProgress, long nProgressMax);
  764. //-----------------------------------------------------------------------
  765. // Summary:
  766. //     This member function is called by the framework to notify an application
  767. //     that the enabled state of a web browser command has changed.
  768. // Parameters:
  769. //     nCommand - Identifier of the command whose enabled state has changed.
  770. //     bEnable  - Enabled state.  This parameter is nonzero if the command is enabled,
  771. //                or zero if it is disabled.
  772. //-----------------------------------------------------------------------
  773. virtual void OnCommandStateChange(long nCommand, BOOL bEnable);
  774. //-----------------------------------------------------------------------
  775. // Summary:
  776. //     This member function is called by the framework to begin downloading
  777. //     a document. This event is fired shortly after the OnBeforeNavigate2
  778. //     event, unless the navigation is canceled. Any animation or "busy"
  779. //     indication that the container needs to display should be connected
  780. //     to this event.
  781. //-----------------------------------------------------------------------
  782. virtual void OnDownloadBegin();
  783. //-----------------------------------------------------------------------
  784. // Summary:
  785. //     This member function is called by the framework to indicate that a
  786. //     navigation operation finished, was halted, or failed.
  787. //-----------------------------------------------------------------------
  788. virtual void OnDownloadComplete();
  789. //-----------------------------------------------------------------------
  790. // Summary:
  791. //     This member function is called by the framework to notify an application
  792. //     if the title of a document in the WebBrowser control becomes available
  793. //     or changes. For HTML, the title might change. While HTML is still
  794. //     downloading, the URL of the document is set as the title. After the
  795. //     real title (if there is one) is parsed from the HTML, the title is
  796. //     changed to reflect the actual title.
  797. // Parameters:
  798. //     lpszText - The new document title.
  799. //-----------------------------------------------------------------------
  800. virtual void OnTitleChange(LPCTSTR lpszText);
  801. //-----------------------------------------------------------------------
  802. // Summary:
  803. //     This member function is called by the framework to notify an application
  804. //     that PutProperty has changed the value of a property.
  805. // Parameters:
  806. //     lpszProperty - A pointer to a string containing the name of the property.
  807. //-----------------------------------------------------------------------
  808. virtual void OnPropertyChange(LPCTSTR lpszProperty);
  809. //-----------------------------------------------------------------------
  810. // Summary:
  811. //     This member function is called by the framework when a new window is
  812. //     to be created for displaying a resource. This event precedes the creation
  813. //     of a new window from within the WebBrowser.
  814. // Parameters:
  815. //     ppDisp - A pointer to an interface pointer that, optionally, receives the
  816. //              IDispatch interface pointer of a new WebBrowser or Internet Explorer
  817. //              object.
  818. //     Cancel - A pointer to a cancel flag. An application can set this parameter
  819. //              to nonzero to cancel the navigation operation, or to zero to allow
  820. //              it to proceed.
  821. //-----------------------------------------------------------------------
  822. virtual void OnNewWindow2(LPDISPATCH* ppDisp, BOOL* Cancel);
  823. //-----------------------------------------------------------------------
  824. // Summary:
  825. //     This member function is called by the framework to notify an application
  826. //     that a document has reached the READYSTATE_COMPLETE state. Not every
  827. //     frame will fire this event, but each frame that fires an OnDownloadBegin
  828. //     event will fire a corresponding OnDocumentComplete event. The URL
  829. //     indicated by 'lpszURL' can be different from the URL that the browser
  830. //     was told to navigate to, because this URL is the canonicalized and
  831. //     qualified URL. For example, if an application specifies a URL of
  832. //     "www.microsoft.com" in a call to Navigate or Navigate2, the URL passed
  833. //     by OnNavigateComplete2 will be "http://www.microsoft.com/". Also, if
  834. //     the server has redirected the browser to a different URL, the redirected
  835. //     URL will be reflected here.
  836. // Parameters:
  837. //     lpszURL - A pointer to a string that evaluates to the URL, UNC file name, or
  838. //               a PIDL (a pointer to an item identifier list) that was navigated to.
  839. //-----------------------------------------------------------------------
  840. virtual void OnDocumentComplete(LPCTSTR lpszURL);
  841. //-----------------------------------------------------------------------
  842. // Summary:
  843. //     This member function is called by the framework to notify an application
  844. //     that the Internet Explorer application is ready to quit.
  845. //-----------------------------------------------------------------------
  846. virtual void OnQuit();
  847. //-----------------------------------------------------------------------
  848. // Summary:
  849. //     This member function is called by the framework when the window for
  850. //     the WebBrowser should be shown or hidden. This allows the object control
  851. //     host window to behave the same way the Internet Explorer window would
  852. //     behave.
  853. // Parameters:
  854. //     bVisible - Nonzero if the object is visible or zero otherwise.
  855. //-----------------------------------------------------------------------
  856. virtual void OnVisible(BOOL bVisible);
  857. //-----------------------------------------------------------------------
  858. // Summary:
  859. //     This member function is called by the framework when the ToolBar property
  860. //     has changed.
  861. // Parameters:
  862. //     bToolBar - Nonzero if Internet Explorer's toolbar is visible or zero otherwise.
  863. //-----------------------------------------------------------------------
  864. virtual void OnToolBar(BOOL bToolBar);
  865. //-----------------------------------------------------------------------
  866. // Summary:
  867. //     This member function is called by the framework when the MenuBar property
  868. //     has changed.
  869. // Parameters:
  870. //     bMenuBar - Nonzero if the Internet Explorer menu bar is visible or zero otherwise.
  871. //-----------------------------------------------------------------------
  872. virtual void OnMenuBar(BOOL bMenuBar);
  873. //-----------------------------------------------------------------------
  874. // Summary:
  875. //     This member function is called by the framework when the StatusBar property
  876. //     has changed.
  877. // Parameters:
  878. //     bStatusBar - Nonzero if Internet Explorer's status bar is visible or zero otherwise.
  879. //-----------------------------------------------------------------------
  880. virtual void OnStatusBar(BOOL bStatusBar);
  881. //-----------------------------------------------------------------------
  882. // Summary:
  883. //     This member function is called by the framework when the FullScreen property
  884. //     has changed.
  885. // Parameters:
  886. //     bFullScreen - Nonzero if Internet Explorer is in full screen mode or zero otherwise.
  887. //-----------------------------------------------------------------------
  888. virtual void OnFullScreen(BOOL bFullScreen);
  889. //-----------------------------------------------------------------------
  890. // Summary:
  891. //     This member function is called by the framework when the TheaterMode property
  892. //     has changed.
  893. // Parameters:
  894. //     bTheaterMode - Nonzero if Internet Explorer is in theater mode or zero otherwise.
  895. //-----------------------------------------------------------------------
  896. virtual void OnTheaterMode(BOOL bTheaterMode);
  897. //-----------------------------------------------------------------------
  898. // Summary:
  899. //     Called by the framework if navigation to a hyperlink fails.
  900. //     Override this method to provide custom navigation error handling.
  901. // Parameters:
  902. //     lpszURL   - The URL for which navigation failed.
  903. //     lpszFrame - The name of the frame in which the resource is
  904. //                 to be displayed, or NULL if no named frame was targeted for
  905. //                 the resource.
  906. //     dwError   - An error status code, if available. For a list of
  907. //                 the possible HRESULT and HTTP status codes, see NavigateError
  908. //                 Event Status Codes.
  909. //     pbCancel  - Specifies whether to cancel the navigation to an
  910. //                 error page or any further autosearch. If TRUE (the default),
  911. //                 continue with navigation to an error page or autosearch; if
  912. //                 FALSE, cancel navigation to an error page or autosearch.
  913. //-----------------------------------------------------------------------
  914. virtual void OnNavigateError(LPCTSTR lpszURL, LPCTSTR lpszFrame, DWORD dwError, BOOL* pbCancel);
  915. protected:
  916. //{{AFX_CODEJOCK_PRIVATE
  917. DECLARE_MESSAGE_MAP()
  918. //{{AFX_VIRTUAL(CXTHtmlView)
  919. virtual void NavigateComplete2(LPDISPATCH pDisp, VARIANT* URL);
  920. virtual void BeforeNavigate2(LPDISPATCH pDisp, VARIANT* URL, VARIANT* Flags, VARIANT* TargetFrameName, VARIANT* PostData, VARIANT* Headers,   BOOL* Cancel);
  921. virtual void DocumentComplete(LPDISPATCH pDisp, VARIANT* URL);
  922. virtual void NavigateError(LPDISPATCH pDisp, VARIANT* pvURL, VARIANT* pvFrame, VARIANT* pvStatusCode, VARIANT_BOOL* pvbCancel);
  923. //}}AFX_VIRTUAL
  924. //{{AFX_MSG(CXTHtmlView)
  925. afx_msg void OnSize(UINT nType, int cx, int cy);
  926. afx_msg void OnDestroy();
  927. afx_msg void OnFilePrint();
  928. afx_msg BOOL OnEraseBkgnd(CDC* pDC);
  929. afx_msg void OnPaint();
  930. //}}AFX_MSG
  931. //}}AFX_CODEJOCK_PRIVATE
  932. public:
  933. CWnd          m_wndBrowser;      // CWnd object that represents the internet browser control associated with this view
  934. protected:
  935. bool          m_bLoading;        // true when loading the browser.
  936. bool          m_bLoadingMessage; // true to display a loading message while a page is updating.
  937. CString       m_strLoading;      // Loading message string.
  938. IWebBrowser2* m_pBrowserApp;     // Points to the IWebBrowser2 object associated with this view.
  939. };
  940. //////////////////////////////////////////////////////////////////////
  941. AFX_INLINE void CXTHtmlView::SetRegisterAsBrowser(BOOL bNewValue) {
  942. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->put_RegisterAsBrowser((short) (bNewValue ? AFX_OLE_TRUE : AFX_OLE_FALSE));
  943. }
  944. AFX_INLINE void CXTHtmlView::SetRegisterAsDropTarget(BOOL bNewValue) {
  945. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->put_RegisterAsDropTarget((short) (bNewValue ? AFX_OLE_TRUE : AFX_OLE_FALSE));
  946. }
  947. AFX_INLINE void CXTHtmlView::SetTheaterMode(BOOL bNewValue) {
  948. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->put_TheaterMode((short) (bNewValue ? AFX_OLE_TRUE : AFX_OLE_FALSE));
  949. }
  950. AFX_INLINE void CXTHtmlView::SetVisible(BOOL bNewValue) {
  951. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->put_Visible((short) (bNewValue ? AFX_OLE_TRUE : AFX_OLE_FALSE));
  952. }
  953. AFX_INLINE void CXTHtmlView::SetMenuBar(BOOL bNewValue) {
  954. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->put_MenuBar((short) (bNewValue ? AFX_OLE_TRUE : AFX_OLE_FALSE));
  955. }
  956. AFX_INLINE void CXTHtmlView::SetToolBar(int nNewValue) {
  957. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->put_ToolBar(nNewValue);
  958. }
  959. AFX_INLINE void CXTHtmlView::SetOffline(BOOL bNewValue) {
  960. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->put_Offline((short) (bNewValue ? AFX_OLE_TRUE : AFX_OLE_FALSE));
  961. }
  962. AFX_INLINE void CXTHtmlView::SetSilent(BOOL bNewValue) {
  963. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->put_Silent((short) (bNewValue ? AFX_OLE_TRUE : AFX_OLE_FALSE));
  964. }
  965. AFX_INLINE void CXTHtmlView::GoBack() {
  966. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->GoBack();
  967. }
  968. AFX_INLINE void CXTHtmlView::GoForward() {
  969. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->GoForward();
  970. }
  971. AFX_INLINE void CXTHtmlView::GoHome() {
  972. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->GoHome();
  973. }
  974. AFX_INLINE void CXTHtmlView::GoSearch() {
  975. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->GoSearch();
  976. }
  977. AFX_INLINE void CXTHtmlView::Refresh() {
  978. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->Refresh();
  979. }
  980. AFX_INLINE void CXTHtmlView::Refresh2(int nLevel) {
  981. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->Refresh2(COleVariant((long) nLevel, VT_I4));
  982. }
  983. AFX_INLINE void CXTHtmlView::Stop() {
  984. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->Stop();
  985. }
  986. AFX_INLINE void CXTHtmlView::SetFullScreen(BOOL bNewValue) {
  987. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->put_FullScreen((short) (bNewValue ? AFX_OLE_TRUE : AFX_OLE_FALSE));
  988. }
  989. AFX_INLINE void CXTHtmlView::SetAddressBar(BOOL bNewValue) {
  990. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->put_AddressBar((short) (bNewValue ? AFX_OLE_TRUE : AFX_OLE_FALSE));
  991. }
  992. AFX_INLINE void CXTHtmlView::SetHeight(long nNewValue) {
  993. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->put_Height(nNewValue);
  994. }
  995. AFX_INLINE void CXTHtmlView::PutProperty(LPCTSTR lpszPropertyName, long lValue) {
  996. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) PutProperty(lpszPropertyName, COleVariant(lValue, VT_UI4));
  997. }
  998. AFX_INLINE void CXTHtmlView::PutProperty(LPCTSTR lpszPropertyName, short nValue) {
  999. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) PutProperty(lpszPropertyName, COleVariant(nValue, VT_UI2));
  1000. }
  1001. AFX_INLINE void CXTHtmlView::PutProperty(LPCTSTR lpszPropertyName, LPCTSTR lpszValue) {
  1002. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) PutProperty(lpszPropertyName, COleVariant(lpszValue, VT_BSTR));
  1003. }
  1004. AFX_INLINE void CXTHtmlView::PutProperty(LPCTSTR lpszPropertyName, double dValue) {
  1005. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) PutProperty(lpszPropertyName, COleVariant(dValue));
  1006. }
  1007. AFX_INLINE void CXTHtmlView::SetTop(long nNewValue) {
  1008. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->put_Top(nNewValue);
  1009. }
  1010. AFX_INLINE void CXTHtmlView::SetLeft(long nNewValue) {
  1011. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->put_Left(nNewValue);
  1012. }
  1013. AFX_INLINE void CXTHtmlView::SetStatusBar(BOOL bNewValue) {
  1014. ASSERT(m_pBrowserApp != NULL); if (m_pBrowserApp) m_pBrowserApp->put_StatusBar((short) (bNewValue ? AFX_OLE_TRUE : AFX_OLE_FALSE));
  1015. }
  1016. #endif // #if !defined(__XTHTMLVIEW_H__)