]> git.kernelconcepts.de Git - karo-tx-redboot.git/blob - tools/src/tools/configtool/standalone/wxwin/buildoptionsdlg.h
Initial revision
[karo-tx-redboot.git] / tools / src / tools / configtool / standalone / wxwin / buildoptionsdlg.h
1 //####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 // buildoptionsdlg.h :
26 //
27 //===========================================================================
28 //#####DESCRIPTIONBEGIN####
29 //
30 // Author(s):   julians
31 // Contact(s):  julians
32 // Date:        2000/09/27
33 // Version:     $Id$
34 // Purpose:
35 // Description: Header file for ecBuildOptionsDialog
36 // Requires:
37 // Provides:
38 // See also:
39 // Known bugs:
40 // Usage:
41 //
42 //####DESCRIPTIONEND####
43 //
44 //===========================================================================
45
46 #ifndef _ECOS_BUILDOPTIONSDLG_H_
47 #define _ECOS_BUILDOPTIONSDLG_H_
48
49 #ifdef __GNUG__
50 #pragma interface "buildoptionsdlg.cpp"
51 #endif
52
53 #include "wx/treectrl.h"
54 #include "ecutils.h"
55
56 class ecBuildOptionsDialog : public ecDialog
57 {
58 public:
59 // Ctor(s)
60     ecBuildOptionsDialog(wxWindow* parent);
61     ~ecBuildOptionsDialog();
62
63 //// Event handlers
64
65     void OnOK(wxCommandEvent& event);
66     void OnCancel(wxCommandEvent& event);
67     void OnSelCategory(wxCommandEvent& event);
68     void OnSelTree(wxTreeEvent& event);
69     void OnInitDialog(wxInitDialogEvent& event);
70
71 //// Operations
72     void CreateControls(wxWindow* parent);
73         void Redisplay (wxTreeItemId item);
74     void CreateItems(ecConfigItem *pti, wxTreeItemId hParent);
75
76 protected:
77     wxTreeCtrl*     m_treeCtrl;
78     wxImageList     m_imageList;
79
80     typedef std::vector<CdlBuildInfo_Loadable> EntriesArray;
81     const EntriesArray& m_arEntries;
82 private:
83     DECLARE_EVENT_TABLE()
84 };
85
86 class ecBuildOptionsData : public wxTreeItemData
87 {
88 public:
89     ecBuildOptionsData(ecConfigItem* item) : m_configItem(item) { }
90
91     ecConfigItem *GetConfigItem() const { return m_configItem; }
92     void SetConfigItem(ecConfigItem *item) { m_configItem = item; }
93
94 private:
95     ecConfigItem*   m_configItem;
96 };
97
98
99 #define ecID_BUILD_OPTIONS_CATEGORY 10054
100 #define ecID_BUILD_OPTIONS_PACKAGES_TREE 11000
101 #define ecID_BUILD_OPTIONS_FLAGS 10055
102
103 #endif
104         // _ECOS_BUILDOPTIONSDLG_H_