This commit was manufactured by cvs2svn to create branch 'captive'.
[reactos.git] / subsys / system / explorer / Seashell / SeaShellExt / Include / UIFrameWnd.h
1 //*******************************************************************************
2 // COPYRIGHT NOTES
3 // ---------------
4 // You may use this source code, compile or redistribute it as part of your application 
5 // for free. You cannot redistribute it as a part of a software development 
6 // library without the agreement of the author. If the sources are 
7 // distributed along with the application, you should leave the original 
8 // copyright notes in the source code without any changes.
9 // This code can be used WITHOUT ANY WARRANTIES at your own risk.
10 // 
11 // For the latest updates to this code, check this site:
12 // http://www.masmex.com 
13 // after Sept 2000
14 // 
15 // Copyright(C) 2000 Philip Oldaker <email: philip@masmex.com>
16 //*******************************************************************************
17
18 #if !defined(AFX_SPAWNFRAMEWND_H__13CAB7C3_D316_11D1_8693_000000000000__INCLUDED_)
19 #define AFX_SPAWNFRAMEWND_H__13CAB7C3_D316_11D1_8693_000000000000__INCLUDED_
20
21 #if _MSC_VER >= 1000
22 #pragma once
23 #endif // _MSC_VER >= 1000
24 // SpawnFrameWnd.h : header file
25 //
26 #include "UIStatusBar.h"
27 #include "UIFlatBar.h"
28 #include "UICoolMenu.h"
29 #include "UICoolBar.h"
30 #include "UIMenuBar.h"
31 #include "IEShellComboBox.h"
32
33 /////////////////////////////////////////////////////////////////////////////
34 // CUIFrameWnd frame
35 class CTRL_EXT_CLASS CToolBarComboBox : public CIEShellComboBox 
36 {
37 public:
38 protected:
39         DECLARE_MESSAGE_MAP()
40 private:
41 };
42
43 class CTRL_EXT_CLASS CReallyCoolBar : public CCoolBar 
44 {
45 protected:
46         DECLARE_DYNAMIC(CReallyCoolBar)
47         CFlatToolBar    m_wndToolBar;                    // toolbar
48         CMenuBar                m_wndMenuBar;                    // menu bar
49         virtual BOOL   OnCreateBands();          // fn to create the bands
50         void SetToolBarID(UINT IDToolbar);
51 protected:
52         UINT m_IDToolbar;
53 };
54
55 class CTRL_EXT_CLASS CWebBrowserCoolBar : public CReallyCoolBar 
56 {
57 protected:
58         DECLARE_DYNAMIC(CWebBrowserCoolBar)
59         CFlatToolBar    m_wndBrowserBar;                         // toolbar
60         virtual BOOL   OnCreateBands();          // fn to create the bands
61         CToolBarComboBox &GetComboBox() { return m_wndCombo; }
62 protected:
63         CToolBarComboBox m_wndCombo;
64         CString m_sCBValue;
65 };
66
67 class CTRL_EXT_CLASS CUIFrameWnd : public CFrameWnd
68 {
69         DECLARE_DYNAMIC(CUIFrameWnd)
70 protected:
71         CUIFrameWnd();           // protected constructor used by dynamic creation
72
73 // Attributes
74 public:
75 // COOLMENU SUPPORT
76 // END COOLMENU SUPPORT
77         CDialogBar m_wndFieldChooser;
78
79 // Operations
80 public:
81
82 // Overrides
83         // ClassWizard generated virtual function overrides
84         //{{AFX_VIRTUAL(CUIFrameWnd)
85         virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
86         virtual BOOL PreTranslateMessage(MSG* pMsg);
87         virtual void GetMessageString( UINT nID, CString& rMessage ) const;     
88         //}}AFX_VIRTUAL
89         virtual CUIStatusBar &GetStatusBar();
90         virtual CReallyCoolBar &GetCoolBar();
91         virtual CCoolMenuManager &GetMenuManager();
92         virtual void RestoreWindow(UINT nCmdShow);
93                 
94 // Implementation
95 protected:
96         virtual ~CUIFrameWnd();
97         virtual void CreateCoolBar();
98
99         void SetReportCtrl(bool bSet);
100         // Generated message map functions
101         //{{AFX_MSG(CUIFrameWnd)
102         afx_msg void OnClose();
103         afx_msg void OnInitMenuPopup(CMenu* pPopupMenu, UINT nIndex, BOOL bSysMenu);
104         afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
105         afx_msg void OnMenuSelect(UINT nItemID, UINT nFlags, HMENU hSysMenu);
106         afx_msg BOOL OnMouseWheel(UINT nFlags, short zDelta, CPoint pt);
107         //}}AFX_MSG
108         afx_msg LRESULT OnRegisteredMouseWheel(WPARAM wParam, LPARAM lParam);
109         afx_msg LRESULT OnCBIESelChange(WPARAM wParam,LPARAM lParam);
110         afx_msg LRESULT OnCBIEPopulate(WPARAM wParam,LPARAM lParam);
111         afx_msg LRESULT OnCBIEHitEnter(WPARAM wParam,LPARAM lParam);
112         afx_msg LRESULT OnCBIESetEditText(WPARAM wParam,LPARAM lParam);
113         DECLARE_MESSAGE_MAP()
114 protected:
115         UINT                            m_IDToolbar;
116         CReallyCoolBar          *m_pwndCoolBar;
117 private:
118         CUIStatusBar            m_wndStatusBar;
119         CCoolMenuManager        m_menuManager;   // cool (bitmap button) menus
120         bool                            m_bReportCtrl;
121         static LPCTSTR szMainFrame;
122 };
123
124 inline void CUIFrameWnd::SetReportCtrl(bool bSet)
125 {
126         m_bReportCtrl = bSet;
127 }
128
129 /////////////////////////////////////////////////////////////////////////////
130
131 //{{AFX_INSERT_LOCATION}}
132 // Microsoft Developer Studio will insert additional declarations immediately before the previous line.
133
134 #endif // !defined(AFX_SPAWNFRAMEWND_H__13CAB7C3_D316_11D1_8693_000000000000__INCLUDED_)