|
|
1.1 root 1: /*
2: * tree.h
3: */
4:
5: /*
6: * Window class for tree
7: */
8:
9: class CTREEWND : public CMDIChildWnd
10: {
11: private:
12: int m_cxChar;
13: int m_cyChar;
14: int m_cxCaps;
15: int m_nMaxWidth;
16: int m_cxClient;
17: int m_cyClient;
18: int m_nSelectLine;
19: CMenu * m_pMenuCurrent;
20: BOOL m_bWindowActive;
21: CRect rtArea; /* Size of total display */
22: CPoint ptOrigin;
23: LOGFONT logFont;
24: BOOL fZoom;
25: RANGESTRUCT rs;
26: TIMERROOT timerRoot;
27:
28: public:
29: CTREEWND();
30: ~CTREEWND();
31:
32: RANGESTRUCT * prs() { return &rs; };
33:
34: BOOL Create(LPCSTR szTitle, LONG style = 0,
35: const RECT& rect = rectDefault, CMDIFrameWnd* pParent = NULL);
36:
37: void InvalidateLine();
38:
39: void InitTiming() {return; };
40: void AddTiming(int iDepth, char * pszModule, char * pszFunction, int iCalls, TIMETYPE timeTotal, TIMETYPE timeFunction)
41: {
42: timerRoot.AddTiming(iDepth, pszModule, pszFunction, iCalls, timeTotal, timeFunction);
43: }
44: void EndTiming() {
45: CClientDC cdc( this );
46: CRect rt;
47:
48: timerRoot.SetProperties(SET_COLORS|SET_PERCENT|SET_STRING|SET_SIZE|SET_LOCATION,
49: FALSE, &rs, &cdc);
50: SetRect(timerRoot.RectTotal());
51: return;
52: };
53:
54: void SetRect(CRect rt) {
55: rtArea = rt;
56:
57: ptOrigin.y = min( ptOrigin.y, rtArea.Height());
58: SetScrollRange(SB_VERT, 0, rtArea.Height(), FALSE);
59: SetScrollPos( SB_VERT, ptOrigin.y, TRUE );
60:
61: ptOrigin.x = min( ptOrigin.x, rtArea.Width() );
62:
63: SetScrollRange( SB_HORZ, 0, rtArea.Width(), FALSE );
64: SetScrollPos( SB_HORZ, ptOrigin.x, TRUE );
65: return;
66: }
67:
68: // Message handlers
69:
70: afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
71: afx_msg void OnDestroy();
72: afx_msg void OnDown();
73: afx_msg void OnMDIActivate(BOOL bActivate, CWnd * pActivateWnd, CWnd * pDeactiveWnd);
74: afx_msg void OnExpandAll();
75: afx_msg void OnFont();
76: afx_msg void OnHScroll( UINT wParam, UINT pos, CScrollBar * control);
77: afx_msg void OnKeyDown( UINT wParam, UINT, UINT );
78: afx_msg void OnLButtonDblClk( UINT wParam, CPoint location );
79: afx_msg void OnLButtonDown( UINT wParam, CPoint location );
80: afx_msg void OnPaint();
81: afx_msg void OnRanges();
82: afx_msg void OnSize(UINT nType, int cx, int cy);
83: afx_msg void OnTotal();
84: afx_msg void OnUp();
85: afx_msg void OnVScroll( UINT wParam, UINT pos, CScrollBar * control);
86: afx_msg void OnXYZ();
87: afx_msg void OnZoom();
88:
89: DECLARE_MESSAGE_MAP()
90: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.