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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [host/] [tools/] [configtool/] [standalone/] [wxwin/] [mainwin.h] - Blame information for rev 817

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

Line No. Rev Author Line
1 786 skrzyp
// ####ECOSHOSTGPLCOPYRIGHTBEGIN####                                        
2
// -------------------------------------------                              
3
// This file is part of the eCos host tools.                                
4
// Copyright (C) 1998, 1999, 2000, 2008 Free Software Foundation, Inc.      
5
//
6
// This program is free software; you can redistribute it and/or modify     
7
// it under the terms of the GNU General Public License as published by     
8
// the Free Software Foundation; either version 2 or (at your option) any   
9
// later version.                                                           
10
//
11
// This program is distributed in the hope that it will be useful, but      
12
// WITHOUT ANY WARRANTY; without even the implied warranty of               
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU        
14
// General Public License for more details.                                 
15
//
16
// You should have received a copy of the GNU General Public License        
17
// along with this program; if not, write to the                            
18
// Free Software Foundation, Inc., 51 Franklin Street,                      
19
// Fifth Floor, Boston, MA  02110-1301, USA.                                
20
// -------------------------------------------                              
21
// ####ECOSHOSTGPLCOPYRIGHTEND####                                          
22
// mainwin.h :
23
//
24
//===========================================================================
25
//#####DESCRIPTIONBEGIN####
26
//
27
// Author(s):   julians
28
// Contact(s):  julians
29
// Date:        2000/08/24
30
// Version:     $Id: mainwin.h,v 1.19 2001/08/10 14:58:21 julians Exp $
31
// Purpose:
32
// Description: Header file for the ConfigTool main window
33
// Requires:
34
// Provides:
35
// See also:
36
// Known bugs:
37
// Usage:
38
//
39
//####DESCRIPTIONEND####
40
//
41
//===========================================================================
42
 
43
#ifndef _ECOS_MAINWIN_H_
44
#define _ECOS_MAINWIN_H_
45
 
46
#ifdef __GNUG__
47
#pragma interface "mainwin.h"
48
#endif
49
 
50
#include "wx/wx.h"
51
#include "wx/docview.h"
52
 
53
#include "wx/gizmos/splittree.h"
54
 
55
/*
56
 * Status bar panes
57
 */
58
 
59
#define ecStatusPane            0
60
#define ecFailRulePane          3
61
 
62
class ecValueWindow;
63
class ecOutputWindow;
64
class ecConfigTreeCtrl;
65
class ecShortDescriptionWindow;
66
class ecPropertyListCtrl;
67
class ecConflictListCtrl;
68
class ecFindDialog;
69
class WXDLLEXPORT wxSashLayoutWindow;
70
 
71
// Define a new frame type: this is going to be our main frame
72
class ecMainFrame : public wxDocParentFrame
73
{
74
    friend class ecFindDialog;
75
 
76
public:
77
// Ctor(s)
78
    ecMainFrame(wxDocManager *manager, const wxString& title, const wxPoint& pos, const wxSize& size);
79
 
80
//// Event handlers
81
 
82
    void OnQuit(wxCommandEvent& event);
83
    void OnAbout(wxCommandEvent& event);
84
    void OnFind(wxCommandEvent& event);
85
    void OnFindNext(wxCommandEvent& event);
86
    void OnSize(wxSizeEvent& event);
87
    void OnIdle(wxIdleEvent& event);
88
    void OnCloseWindow(wxCloseEvent& event);
89
    void OnHelpEcos(wxCommandEvent& event);
90
    void OnHelpConfigtool(wxCommandEvent& event);
91
    void OnHelpContext(wxCommandEvent& event);
92
    void OnResolveConflicts(wxCommandEvent& event);
93
    void OnSettings(wxCommandEvent& event);
94
    void OnPlatforms(wxCommandEvent& event);
95
    void OnBuildOptions(wxCommandEvent& event);
96
    void OnTemplates(wxCommandEvent& event);
97
    void OnAdmin(wxCommandEvent& event);
98
    void OnPackages(wxCommandEvent& event);
99
    void OnRunTests(wxCommandEvent& event);
100
    void OnChooseRepository(wxCommandEvent& event);
101
    void OnBuildToolsPath(wxCommandEvent& event);
102
    void OnUserToolsPath(wxCommandEvent& event);
103
    void OnWhatsThis(wxCommandEvent& event);
104
    void OnSaveOutput(wxCommandEvent& event);
105
    void OnImport(wxCommandEvent& event);
106
    void OnExport(wxCommandEvent& event);
107
    void OnBuildLibrary(wxCommandEvent& event);
108
    void OnBuildTests(wxCommandEvent& event);
109
    void OnStopBuild(wxCommandEvent& event);
110
    void OnClean(wxCommandEvent& event);
111
    void OnShell(wxCommandEvent& event);
112
    void OnGenerateBuildTree(wxCommandEvent& event);
113
 
114
    void OnNewRegion(wxCommandEvent& event);
115
    void OnNewSection(wxCommandEvent& event);
116
    void OnDeleteRegionOrSection(wxCommandEvent& event);
117
    void OnRegionOrSectionProperties(wxCommandEvent& event);
118
 
119
    void OnWebRedHatHome(wxCommandEvent& event);
120
    void OnWebEcos(wxCommandEvent& event);
121
    void OnWebNetRelease(wxCommandEvent& event);
122
    void OnWebUitron(wxCommandEvent& event);
123
    void OnRepositoryInfo(wxCommandEvent& event);
124
    void OnIndexDocs(wxCommandEvent& event);
125
 
126
    void OnUpdatePlatforms(wxUpdateUIEvent& event);
127
    void OnUpdateBuildOptions(wxUpdateUIEvent& event);
128
    void OnUpdateBuildToolsPath(wxUpdateUIEvent& event);
129
    void OnUpdateUserToolsPath(wxUpdateUIEvent& event);
130
    void OnUpdateTemplates(wxUpdateUIEvent& event);
131
    void OnUpdateAdmin(wxUpdateUIEvent& event);
132
    void OnUpdatePackages(wxUpdateUIEvent& event);
133
    void OnUpdateRunTests(wxUpdateUIEvent& event);
134
    void OnUpdateChooseRepository(wxUpdateUIEvent& event);
135
    void OnUpdateResolveConflicts(wxUpdateUIEvent& event);
136
    void OnUpdateSelectAll(wxUpdateUIEvent& event);
137
    void OnUpdateClear(wxUpdateUIEvent& event);
138
    void OnUpdateImport(wxUpdateUIEvent& event);
139
    void OnUpdateExport(wxUpdateUIEvent& event);
140
    void OnUpdateBuildLibrary(wxUpdateUIEvent& event);
141
    void OnUpdateBuildTests(wxUpdateUIEvent& event);
142
    void OnUpdateStopBuild(wxUpdateUIEvent& event);
143
    void OnUpdateClean(wxUpdateUIEvent& event);
144
    void OnUpdateRepositoryInfo(wxUpdateUIEvent& event);
145
    void OnUpdateShell(wxUpdateUIEvent& event);
146
    void OnUpdateFind(wxUpdateUIEvent& event);
147
    void OnUpdateFindNext(wxUpdateUIEvent& event);
148
    void OnUpdateIndexDocs(wxUpdateUIEvent& event);
149
    void OnUpdateGenerateBuildTree(wxUpdateUIEvent& event);
150
 
151
    void OnUpdateNewRegion(wxUpdateUIEvent& event);
152
    void OnUpdateNewSection(wxUpdateUIEvent& event);
153
    void OnUpdateDeleteRegionOrSection(wxUpdateUIEvent& event);
154
    void OnUpdateRegionOrSectionProperties(wxUpdateUIEvent& event);
155
 
156
  // Toggle windows
157
    void OnToggleWindow(wxCommandEvent& event);
158
    void OnUpdateToggleWindow(wxUpdateUIEvent& event);
159
    void OnToggleToolbar(wxCommandEvent& event);
160
    void OnUpdateToggleToolbar(wxUpdateUIEvent& event);
161
    void OnUpdateDisable(wxUpdateUIEvent& event);
162
 
163
//// Operations
164
        // (Re)create the toolbar
165
        void RecreateToolbar();
166
 
167
    // Create the windows
168
    void CreateWindows();
169
 
170
    // Respond to a sash drag operation
171
    void OnSashDrag(wxSashEvent& event);
172
 
173
    // Enumerate the visible 'minor' sash windows,
174
    // i.e. those in the top-right segment of the frame
175
    void GetMinorWindows(wxList& list);
176
 
177
    // Get all visible sash windows
178
    void GetSashWindows(wxList& list);
179
 
180
    // Divide the given space evenly amongst some windows
181
    void DivideSpaceEvenly(wxList& list, const wxSize& space, int orient);
182
 
183
    // Restore the sash window default size from the actual window size
184
    void RestoreDefaultWindowSizes(wxList& list);
185
 
186
    void SetFailRulePane(int nCount);
187
 
188
    // Toggle the given window on or off
189
    void ToggleWindow(int windowId);
190
 
191
    // Update the title, either via the document's view or explicitly if no doc
192
    void UpdateFrameTitle();
193
 
194
//// Accessors
195
    ecOutputWindow* GetOutputWindow() const { return m_outputWindow; }
196
    ecConfigTreeCtrl* GetTreeCtrl() const { return m_tree; }
197
    ecValueWindow* GetValueWindow() const { return m_valueWindow; }
198
    ecShortDescriptionWindow* GetShortDescriptionWindow() const { return m_shortDescrWindow; }
199
    ecPropertyListCtrl* GetPropertyListWindow() const { return m_propertyListWindow; }
200
    ecConflictListCtrl* GetConflictsWindow() const { return m_conflictsWindow; }
201
    ecMemoryLayoutWindow* GetMemoryLayoutWindow() const { return m_mltWindow; }
202
 
203
//// Overrides
204
 
205
    virtual bool ProcessEvent(wxEvent& event);
206
 
207
protected:
208
    ecConfigTreeCtrl*               m_tree;
209
    wxThinSplitterWindow*           m_splitter;
210
    wxSplitterScrolledWindow*       m_scrolledWindow;
211
    ecValueWindow*                  m_valueWindow;
212
    ecOutputWindow*                 m_outputWindow;
213
    ecShortDescriptionWindow*       m_shortDescrWindow;
214
    ecPropertyListCtrl*             m_propertyListWindow;
215
    ecConflictListCtrl*             m_conflictsWindow;
216
    ecFindDialog*                   m_findDialog;
217
    ecMemoryLayoutWindow*           m_mltWindow;
218
 
219
    // Sash layout windows, that contain the 'real' windows
220
    wxSashLayoutWindow*             m_configSashWindow;
221
    wxSashLayoutWindow*             m_conflictsSashWindow;
222
    wxSashLayoutWindow*             m_propertiesSashWindow;
223
    wxSashLayoutWindow*             m_memorySashWindow;
224
    wxSashLayoutWindow*             m_shortDescrSashWindow;
225
    wxSashLayoutWindow*             m_outputSashWindow;
226
 
227
private:
228
    DECLARE_EVENT_TABLE()
229
};
230
 
231
 
232
#endif
233
        // _ECOS_MAINWIN_H_

powered by: WebSVN 2.1.0

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