Source code of Windows XP (NT5)
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.
|
|
// Copyright (C) 1996-1997 Microsoft Corporation. All rights reserved.
#if _MSC_VER > 1000
#pragma once
#endif
#ifndef __CTOC_H__
#define __CTOC_H__
#ifndef __SITEMAP_H__
#include "sitemap.h"
#endif
#include "stdio.h"
#include "parserhh.h"
#include "collect.h"
#include "hhtypes.h"
#include "toc.h"
#include "navui.h" // Cleanup headers.
class CHtmlHelpControl; // forward reference
class CHHWinType; // forward reference
class CToc : public INavUI { private: void UpdateTOCSlot(CTreeNode* pNode);
public: CToc(CHtmlHelpControl* phhctrl, IUnknown* pUnkOuter, CHHWinType* phh = NULL); virtual ~CToc();
//--- INavUI Functions.
BOOL Create(HWND hwndParent); LRESULT OnCommand(HWND hwnd, UINT id, UINT uNotifiyCode, LPARAM lParam); void HideWindow(void); void ShowWindow(void); void ResizeWindow(); void SetPadding(int pad) { m_padding = pad; } void SetTabPos(int tabpos) { m_NavTabPos = tabpos; } LRESULT OnNotify(HWND hwnd, WPARAM wParam, LPARAM lParam) ; void SetDefaultFocus() ; void Refresh(void);
// Not Implemented
bool ProcessMenuChar(HWND hwndParent, int ch) { /*Not Implemented*/ return false;} void OnDrawItem(UINT id, LPDRAWITEMSTRUCT pdis) {/*Not Implemented*/} void Seed(LPCSTR pszSeed) {/*Not Implemented*/} void OnVKListNotify(NMHDR* pNMHdr) {/*Not Implemented*/}
//--- Other Member Functions
void ChangeOuter(IUnknown* pUnkOuter) { m_pOuter = pUnkOuter; } BOOL InitTreeView(void);
LRESULT OnSiteMapContentsCommand(UINT id, UINT uNotifiyCode, LPARAM lParam); LRESULT OnBinTOCContentsCommand(UINT id, UINT uNotifiyCode, LPARAM lParam); BOOL ReadFile(PCSTR pszFile);
void SetStyles(DWORD exStyles, DWORD dwStyles) { m_exStyles = exStyles; m_dwStyles = dwStyles; }
LRESULT TreeViewMsg( NM_TREEVIEW* pnmhdr ); // The treeview message handeler
LRESULT OnSiteMapTVMsg( NM_TREEVIEW *pnmhdr ); // The message handeler for handeling SITEMAP
LRESULT OnBinaryTOCTVMsg( NM_TREEVIEW *pnmhdr );// The message handeler for handeling Binary TOC
BOOL Synchronize(LPCSTR pszUrl); DWORD OnCustomDraw(LPNMTVCUSTOMDRAW nmcdrw); void SaveCurUrl(void);
BOOL m_fBinaryTOC; // TRUE if compiled TOC (.chm/.chi) is available, else FALSE
CTreeNode* m_pBinTOCRoot; // The root of the binary table of contents
CTreeNode* pCurrentTreeNode; CSiteMap m_sitemap; // the sitemap that holds an uncompiled TOC.
HTREEITEM m_tiFirstVisible; // Binary TOC, the initial tree view visible when the Tree
// view is first displayed.
HTREEITEM* m_phTreeItem; int m_cntFirstVisible; int m_cntCurHighlight; HTREEITEM m_hitemCurHighlight; BOOL m_fSuppressJump; // TRUE to prevent jumping on selection change
BOOL m_fIgnoreNextSelChange; BYTE* m_pSelectedTocInfoTypes; HWND m_hwndTree; HBITMAP m_hbmpBackGround; HPALETTE m_hpalBackGround; HBRUSH m_hbrBackGround; // background brush
int m_cxBackBmp; int m_cyBackBmp; int m_cFonts; HFONT* m_ahfonts; BOOL m_fGlobal; // means we've already initialized ourselves once
HIMAGELIST m_hil;
CHtmlHelpControl* m_phhctrl; IUnknown* m_pOuter; BOOL m_fHack; DWORD m_exStyles; DWORD m_dwStyles; int m_padding; int m_NavTabPos; BOOL m_fSuspendSync; CHHWinType* m_phh; CStr m_cszCurUrl; BOOL m_fSyncOnActivation; // TRUE to sync when TOC tab is activated
CInfoType* m_pInfoType; // The information Types
};
#endif // __CTOC_H__
|