OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [rtos/] [ecos-2.0/] [tools/] [src/] [tools/] [configtool/] [standalone/] [win32/] [MainFrm.h] - Blame information for rev 438

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 26 unneback
//####COPYRIGHTBEGIN####
2
//                                                                          
3
// ----------------------------------------------------------------------------
4
// Copyright (C) 1998, 1999, 2000 Red Hat, Inc.
5
//
6
// This program is part of the eCos host tools.
7
//
8
// This program is free software; you can redistribute it and/or modify it 
9
// under the terms of the GNU General Public License as published by the Free 
10
// Software Foundation; either version 2 of the License, or (at your option) 
11
// any later version.
12
// 
13
// This program is distributed in the hope that it will be useful, but WITHOUT 
14
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 
15
// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for 
16
// more details.
17
// 
18
// You should have received a copy of the GNU General Public License along with
19
// this program; if not, write to the Free Software Foundation, Inc., 
20
// 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
21
//
22
// ----------------------------------------------------------------------------
23
//                                                                          
24
//####COPYRIGHTEND####
25
// MainFrm.h : interface of the CMainFrame class
26
//
27
/////////////////////////////////////////////////////////////////////////////
28
//===========================================================================
29
//#####DESCRIPTIONBEGIN####
30
//
31
// Author(s):   sdf
32
// Contact(s):  sdf
33
// Date:                1998/08/11
34
// Version:             0.01
35
// Purpose:     
36
// Description: Interface of the main frame class
37
// Requires:    
38
// Provides:    
39
// See also:    
40
// Known bugs:  
41
// Usage:       
42
//
43
//####DESCRIPTIONEND####
44
//
45
//===========================================================================
46
#if !defined(AFX_MAINFRM_H__A4845244_05EE_11D2_80BE_00A0C949ADAC__INCLUDED_)
47
#define AFX_MAINFRM_H__A4845244_05EE_11D2_80BE_00A0C949ADAC__INCLUDED_
48
 
49
#if _MSC_VER >= 1000
50
#pragma once
51
#endif // _MSC_VER >= 1000
52
class CControlView;
53
class CPropertiesView;
54
class COutputView;
55
class CFindDialog;
56
class CMessageBox;
57
class CCellView;
58
class CDescView;
59
class CConfigToolApp;
60
class CSplitterWndEx;
61
#include "BCMenu.h"
62
#include "Subprocess.h"
63
 
64
class CMainFrame : public CFrameWnd
65
{
66
protected: // create from serialization only
67
        CMainFrame();
68
        DECLARE_DYNCREATE(CMainFrame)
69
// Attributes
70
public:
71
        //CMFWnd m_wndHelp;
72
 
73
// Operations
74
public:
75
 
76
// Overrides
77
        // ClassWizard generated virtual function overrides
78
        //{{AFX_VIRTUAL(CMainFrame)
79
        public:
80
        virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
81
        virtual void ActivateFrame(int nCmdShow = -1);
82
        virtual BOOL PreTranslateMessage(MSG* pMsg);
83
        protected:
84
        virtual BOOL OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext);
85
        //}}AFX_VIRTUAL
86
 
87
// Implementation
88
 
89
  enum {Horz=-3, Vert=-2, Thin=-1};
90
  struct Split {
91
    int type;
92
    double fFrac;
93
    CSplitterWndEx *pSplit;
94
    int nLevel;
95
    Split(int _type,int _nLevel,double _fFrac=0.5) : type(_type), nLevel(_nLevel), fFrac(_fFrac), pSplit(0) {}
96
    ~Split(){};
97
  };
98
  static Split arSplit[];
99
 
100
public:
101
  BCMenu m_menu;
102
        HMENU NewMenu();
103
        void OnUpdateFrameTitle(BOOL bAddToTitle);
104
        void SetFailRulePane(int nCount);
105
        bool m_bFindInProgress;
106
        void SetThermometerMax (int nMax);
107
  enum PaneType { Cell, Control, ShortDesc, Output, Properties, Rules, MLT, PaneTypeMax};
108
  LPCTSTR GetPaneName(PaneType p) { return arView[p].pszName; }
109
        CFont &GetPaneFont(PaneType pane);
110
        bool SetPaneFont (PaneType pane, const LOGFONT &lf);
111
 
112
        void SetIdleMessage (LPCTSTR pszIdleMessage=NULL);
113
        void UpdateThermometer (int nLines);
114
        bool m_bExiting;
115
        CConfigToolApp * GetApp();
116
        virtual ~CMainFrame();
117
#ifdef _DEBUG
118
        virtual void AssertValid() const;
119
        virtual void Dump(CDumpContext& dc) const;
120
#endif
121
 
122
        CProgressCtrl m_Progress;
123
        enum {StatusPane, ThermometerPane, PercentagePane, FailRulePane};
124
        int m_nFailRulePaneSize;
125
        int m_nThermometerPaneSize;
126
        int m_nPercentagePaneSize;
127
 
128
        CStatusBar  m_wndStatusBar;
129
        afx_msg void OnHelp();
130
        bool PrepareEnvironment(bool bWithBuildTools = true);
131
 
132
  // public so available as a utility function for windows creating popups
133
        LRESULT OnMenuChar(UINT nChar, UINT nFlags, CMenu* pMenu);
134
 
135
protected:
136
        static bool m_arMounted[26];
137
        static void CygMount(TCHAR c);
138
        int m_nLogicalLines;
139
        DWORD m_dwThreadId;
140
 
141
  struct ViewStruct {
142
    LPCTSTR pszName;
143
    CSplitterWndEx *pParent;
144
    bool bVisible;
145
        CFont font;
146
    CRuntimeClass *pClass;
147
    CView *pView;
148
    ViewStruct(LPCTSTR _pszName,bool _bVisible,CRuntimeClass *_pClass) : pszName(_pszName), pParent(0), bVisible(_bVisible), pClass(_pClass), pView(0) {}
149
    ViewStruct(const ViewStruct &o) : pszName(o.pszName), pParent(0), bVisible(o.bVisible), pClass(o.pClass), pView(0) {}
150
  };
151
  static ViewStruct arView[PaneTypeMax];
152
 
153
        static DWORD WINAPI ThreadFunc( LPVOID );
154
 
155
        static UINT indicators[];
156
        CToolBar    m_wndToolBar;
157
  CToolBar    m_wndMLTToolBar;
158
  bool m_bMLTToolbarVisible;
159
        CFindDialog * m_pFindReplaceDialog;
160
 
161
        bool m_bStatusBarCreated;
162
 
163
        CString m_strIdleMessage;
164
        int m_nThermometerMax;
165
        CString m_strBuildTarget;
166
        void BumpWindow (int nInc);
167
 
168
        CSubprocess m_sp;
169
 
170
        void Build(const CString &strWhat=_T(""));
171
 
172
        //{{AFX_MSG(CMainFrame)
173
        afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
174
        afx_msg void OnViewProperties();
175
        afx_msg void OnUpdateViewProperties(CCmdUI* pCmdUI);
176
        afx_msg void OnViewMLT();
177
        afx_msg void OnViewShortdesc();
178
        afx_msg void OnUpdateViewShortdesc(CCmdUI* pCmdUI);
179
        afx_msg void OnViewOutput();
180
        afx_msg void OnUpdateViewOutput(CCmdUI* pCmdUI);
181
        afx_msg void OnUpdateBuildConfigure(CCmdUI* pCmdUI);
182
        afx_msg void OnBuildStop();
183
        afx_msg void OnUpdateBuildStop(CCmdUI* pCmdUI);
184
        afx_msg void OnConfigurationBuild();
185
        afx_msg void OnDestroy();
186
        afx_msg void OnBuildTests();
187
        afx_msg void OnUpdateBuildTests(CCmdUI* pCmdUI);
188
        afx_msg void OnUpdateFileSave(CCmdUI* pCmdUI);
189
        afx_msg void OnUpdateFileSaveAs(CCmdUI* pCmdUI);
190
        afx_msg void OnUpdateFileOpen(CCmdUI* pCmdUI);
191
        afx_msg void OnUpdateFileNew(CCmdUI* pCmdUI);
192
        afx_msg void OnUpdateAppExit(CCmdUI* pCmdUI);
193
        afx_msg void OnUpdateViewMLT(CCmdUI* pCmdUI);
194
        afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
195
        afx_msg void OnUpdateConfigurationRefresh(CCmdUI* pCmdUI);
196
        afx_msg void OnConfigurationRefresh();
197
        afx_msg void OnViewSettings();
198
        afx_msg void OnToolsPaths();
199
        afx_msg void OnSize(UINT nType, int cx, int cy);
200
        afx_msg void OnUpdateConfigurationRepository(CCmdUI* pCmdUI);
201
        afx_msg void OnWindowNext();
202
        afx_msg void OnWindowPrev();
203
        afx_msg void OnHelpSubmitPr();
204
        afx_msg void OnHelpEcos();
205
        afx_msg void OnHelpRedHatHome();
206
        afx_msg void OnHelpUitron();
207
        afx_msg void OnHelpEcoshome();
208
        afx_msg void OnRunSim();
209
        afx_msg void OnBuildClean();
210
        afx_msg void OnUpdateBuildClean(CCmdUI* pCmdUI);
211
        afx_msg void OnToolsShell();
212
        afx_msg void OnClose();
213
        afx_msg void OnBuildOptions();
214
        afx_msg void OnToolsOptions();
215
        afx_msg void OnUsertoolsPaths();
216
        afx_msg LRESULT OnSetMessageString(WPARAM wParam, LPARAM lParam);
217
        afx_msg void OnUpdateRunSim(CCmdUI* pCmdUI);
218
        afx_msg void OnViewConflicts();
219
        afx_msg void OnUpdateViewConflicts(CCmdUI* pCmdUI);
220
        afx_msg void OnViewMltbar();
221
        afx_msg void OnUpdateViewMltbar(CCmdUI* pCmdUI);
222
        afx_msg void OnResolveConflicts();
223
        afx_msg void OnUpdateResolveConflicts(CCmdUI* pCmdUI);
224
        afx_msg void OnGoHome();
225
        afx_msg void OnMeasureItem(int nIDCtl, LPMEASUREITEMSTRUCT lpMeasureItemStruct);
226
        afx_msg void OnInitMenuPopup(CMenu* pPopupMenu, UINT nIndex, BOOL bSysMenu);
227
        afx_msg void OnUpdateBuildOptions(CCmdUI* pCmdUI);
228
        afx_msg LRESULT OnSubprocess(WPARAM wParam, LPARAM lParam);
229
        afx_msg void OnUpdateToolsAdministration(CCmdUI* pCmdUI);
230
        afx_msg BOOL OnHelpInfo(HELPINFO* pHelpInfo);
231
        afx_msg void OnEditPlatforms();
232
  afx_msg void OnTimer(UINT nIDEvent);
233
        //}}AFX_MSG
234
  void OnNavComplete(NMHDR*, LRESULT*);
235
        DECLARE_MESSAGE_MAP()
236
  static void CALLBACK SubprocessOutputFunc(void *pParam,LPCTSTR psz);
237
};
238
 
239
/////////////////////////////////////////////////////////////////////////////
240
 
241
//{{AFX_INSERT_LOCATION}}
242
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.
243
 
244
#endif // !defined(AFX_MAINFRM_H__A4845244_05EE_11D2_80BE_00A0C949ADAC__INCLUDED_)

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.