]> icculus.org git repositories - taylor/freespace2.git/blob - include/bgbitmapdlg.h
Initial revision
[taylor/freespace2.git] / include / bgbitmapdlg.h
1 /*
2  * $Logfile: /Freespace2/code/Fred2/BgBitmapDlg.h $
3  * $Revision$
4  * $Date$
5  * $Author$
6  *
7  * Background space images manager dialog
8  *
9  * $Log$
10  * Revision 1.1  2002/05/03 03:28:11  root
11  * Initial revision
12  *
13  * 
14  * 8     7/02/99 4:30p Dave
15  * Much more sophisticated lightning support.
16  * 
17  * 7     6/03/99 6:37p Dave
18  * More TNT fun. Made perspective bitmaps more flexible.
19  * 
20  * 6     4/26/99 8:47p Dave
21  * Made all pof related nebula stuff customizable through Fred.
22  * 
23  * 5     4/07/99 6:21p Dave
24  * Fred and Freespace support for multiple background bitmaps and suns.
25  * Fixed link errors on all subprojects. Moved encrypt_init() to
26  * cfile_init() and lcl_init(), since its safe to call twice.
27  * 
28  * 4     1/25/99 5:03a Dave
29  * First run of stealth, AWACS and TAG missile support. New mission type
30  * :)
31  * 
32  * 3     11/14/98 5:37p Dave
33  * Put in support for full nebulas.
34  * 
35  * 2     10/07/98 6:28p Dave
36  * Initial checkin. Renamed all relevant stuff to be Fred2 instead of
37  * Fred. Globalized mission and campaign file extensions. Removed Silent
38  * Threat specific code.
39  * 
40  * 1     10/07/98 3:01p Dave
41  * 
42  * 1     10/07/98 2:59p Dave
43  * 
44  * 12    4/13/98 10:25p Hoffoss
45  * Added a flag for subspace missions, and for aboard the Galatea or
46  * Bastion.
47  * 
48  * 11    12/08/97 4:48p Hoffoss
49  * Moved starfield editor controls to background editor.
50  * 
51  * 10    11/25/97 11:40a Hoffoss
52  * Added support for nebula placement editing.
53  * 
54  * 9     11/21/97 2:55p Hoffoss
55  * Added Nebula support to Fred.  Implemented loading and saving nebula
56  * info to/from mission files.
57  * 
58  * 8     3/31/97 6:07p Hoffoss
59  * Fixed several errors, including BG editor not graying fields, BG editor
60  * not updating image when changed, Removed obsolete data from Weapon
61  * editor, priority not being saved when missions saved, priority not
62  * editable in initial orders editor.
63  * 
64  * 7     3/27/97 2:24p Hoffoss
65  * Fixed bug in image not updating when new image selected from listbox of
66  * combo box.
67  * 
68  * 6     3/21/97 4:24p Hoffoss
69  * Fixed bug in changing image to an external image file.
70  * 
71  * 5     3/17/97 1:54p Hoffoss
72  * fixed bugs in BG editor, and added delete button functionality.
73  * 
74  * 4     3/12/97 4:33p Hoffoss
75  * added spin controls to orient editor, light intensity level can be
76  * specified in BG editor.
77  * 
78  * 3     2/04/97 3:09p Hoffoss
79  * Background bitmap editor implemented fully.
80  * 
81  * 2     1/30/97 2:24p Hoffoss
82  * Added remaining mission file structures and implemented load/save of
83  * them.
84  *
85  * $NoKeywords: $
86  */
87
88 #ifndef _BG_BITMAP_DLG_H
89 #define _BG_BITMAP_DLG_H
90
91 /////////////////////////////////////////////////////////////////////////////
92 // bg_bitmap_dlg dialog
93
94 class bg_bitmap_dlg : public CDialog
95 {
96 // Construction
97 public:
98         void update_data(int update = 1);
99         void create();
100
101         // sun data functions
102         void sun_data_init();
103         void sun_data_close();
104         void sun_data_save_current();
105
106         // bitmap data functions
107         void bitmap_data_init();
108         void bitmap_data_close();
109         void bitmap_data_save_current();
110
111         bg_bitmap_dlg(CWnd* pParent = NULL);   // standard constructor
112
113 // Dialog Data
114         //{{AFX_DATA(bg_bitmap_dlg)
115         enum { IDD = IDD_BG_BITMAP };   
116         CString m_neb_intensity;        
117         int             m_nebula_color;
118         int             m_nebula_index;
119         int             m_bank;
120         int             m_heading;
121         int             m_pitch;
122         CSliderCtrl                     m_slider;
123         int             m_neb2_texture;
124         BOOL            m_subspace;
125         BOOL            m_fullneb;
126         int             m_poof[6];      
127
128         // lightning storm data
129         CString m_storm_name;
130
131         // sun data
132         CString s_name;
133         int s_pitch, s_bank, s_heading;
134         float s_scale;
135         int s_index;
136
137         // bitmap data
138         CString b_name;
139         int b_pitch, b_bank, b_heading;
140         float b_scale_x, b_scale_y;
141         int b_div_x, b_div_y;
142         int b_index;
143
144         //}}AFX_DATA    
145
146 // Overrides
147         // ClassWizard generated virtual function overrides
148         //{{AFX_VIRTUAL(bg_bitmap_dlg)
149         protected:
150         virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
151         //}}AFX_VIRTUAL
152
153 // Implementation
154 protected:
155         // clear and build the nebula filename list appropriately
156         void build_nebfile_list();
157
158         // Generated message map functions
159         //{{AFX_MSG(bg_bitmap_dlg)
160         afx_msg void OnClose(); 
161         afx_msg void OnSelchangeNebcolor();
162         afx_msg void OnSelchangeNebpattern();
163         afx_msg void OnFullNeb();
164         afx_msg void OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar);
165
166         // handlers for sun stuff
167         afx_msg void OnSunChange();
168         afx_msg void OnAddSun();
169         afx_msg void OnDelSun();
170         afx_msg void OnSunDropdownChange();
171
172         // handlers for bitmap stuff
173         afx_msg void OnBitmapChange();
174         afx_msg void OnAddBitmap();
175         afx_msg void OnDelBitmap();
176         afx_msg void OnBitmapDropdownChange();
177
178         //}}AFX_MSG
179         DECLARE_MESSAGE_MAP()
180
181 private:        
182 };
183
184 #endif
185