1 
2 ///////////////////////////////////////////////////////////
3 //                                                       //
4 //                         SAGA                          //
5 //                                                       //
6 //      System for Automated Geoscientific Analyses      //
7 //                                                       //
8 //                    User Interface                     //
9 //                                                       //
10 //                    Program: SAGA                      //
11 //                                                       //
12 //-------------------------------------------------------//
13 //                                                       //
14 //                     DLG_Base.h                        //
15 //                                                       //
16 //          Copyright (C) 2005 by Olaf Conrad            //
17 //                                                       //
18 //-------------------------------------------------------//
19 //                                                       //
20 // This file is part of 'SAGA - System for Automated     //
21 // Geoscientific Analyses'. SAGA is free software; you   //
22 // can redistribute it and/or modify it under the terms  //
23 // of the GNU General Public License as published by the //
24 // Free Software Foundation, either version 2 of the     //
25 // License, or (at your option) any later version.       //
26 //                                                       //
27 // SAGA is distributed in the hope that it will be       //
28 // useful, but WITHOUT ANY WARRANTY; without even the    //
29 // implied warranty of MERCHANTABILITY or FITNESS FOR A  //
30 // PARTICULAR PURPOSE. See the GNU General Public        //
31 // License for more details.                             //
32 //                                                       //
33 // You should have received a copy of the GNU General    //
34 // Public License along with this program; if not, see   //
35 // <http://www.gnu.org/licenses/>.                       //
36 //                                                       //
37 //-------------------------------------------------------//
38 //                                                       //
39 //    contact:    Olaf Conrad                            //
40 //                Institute of Geography                 //
41 //                University of Goettingen               //
42 //                Goldschmidtstr. 5                      //
43 //                37077 Goettingen                       //
44 //                Germany                                //
45 //                                                       //
46 //    e-mail:     oconrad@saga-gis.org                   //
47 //                                                       //
48 ///////////////////////////////////////////////////////////
49 
50 //---------------------------------------------------------
51 #ifndef _HEADER_INCLUDED__SAGA_GUI__DLG_Base_H
52 #define _HEADER_INCLUDED__SAGA_GUI__DLG_Base_H
53 
54 
55 ///////////////////////////////////////////////////////////
56 //														 //
57 //														 //
58 //														 //
59 ///////////////////////////////////////////////////////////
60 
61 //---------------------------------------------------------
62 #include <wx/dialog.h>
63 
64 
65 ///////////////////////////////////////////////////////////
66 //														 //
67 //														 //
68 //														 //
69 ///////////////////////////////////////////////////////////
70 
71 //---------------------------------------------------------
72 class CDLG_Base : public wxDialog
73 {
74 	DECLARE_CLASS(CDLG_Base)
75 
76 public:
77 	CDLG_Base(int ID_WMD, wxString Caption, bool bCancelBtn = true);
78 	virtual ~CDLG_Base(void);
79 
80 	void						On_Size			(wxSizeEvent    &event);
81 	void						On_Key			(wxKeyEvent     &event);
82 
83 	void						On_Ok			(wxCommandEvent &event);
84 	void						On_Cancel		(wxCommandEvent &event);
85 
86 
87 protected:
88 
Get_Controls(void)89 	class wxPanel *				Get_Controls	(void)	{	return( m_pPanel_Controls );	}
90 
91 	void						Add_Control		(wxControl *pControl);
92 	class wxButton *			Add_Button		(int Button_ID);
93 
94 	void						Set_Positions	(void);
Set_Position(wxRect r)95 	virtual void				Set_Position	(wxRect r)	{}
96 
Save_Changes(void)97 	virtual void				Save_Changes	(void)		{}
98 
99 
100 private:
101 
102 	int							m_btn_height, m_nControls;
103 
104 	class wxPanel				*m_pPanel_Controls;
105 
106 
107 	void						_Exit			(bool bOk);
108 
109 
110 //---------------------------------------------------------
111 DECLARE_EVENT_TABLE()
112 };
113 
114 
115 ///////////////////////////////////////////////////////////
116 //														 //
117 //														 //
118 //														 //
119 ///////////////////////////////////////////////////////////
120 
121 //---------------------------------------------------------
122 #endif // #ifndef _HEADER_INCLUDED__SAGA_GUI__DLG_Base_H
123