]> icculus.org git repositories - taylor/freespace2.git/blob - include/playerstarteditor.h
rendering functions mostly done; more complete shader setup
[taylor/freespace2.git] / include / playerstarteditor.h
1 /*
2  * Copyright (C) Volition, Inc. 1999.  All rights reserved.
3  *
4  * All source code herein is the property of Volition, Inc. You may not sell 
5  * or otherwise commercially exploit the source or things you created based on
6  * the source.
7  */
8
9 /*
10  * $Logfile: /Freespace2/code/fred2/PlayerStartEditor.h $
11  * $Revision$
12  * $Date$
13  * $Author$
14  *
15  * Player starting point editor dialog box handling code
16  *
17  * $Log$
18  * Revision 1.2  2002/06/09 04:41:14  relnev
19  * added copyright header
20  *
21  * Revision 1.1.1.1  2002/05/03 03:28:12  root
22  * Initial import.
23  *
24  * 
25  * 3     2/23/99 7:03p Dave
26  * Rewrote a horribly mangled and evil team loadout dialog. Bugs gone.
27  * 
28  * 2     10/07/98 6:28p Dave
29  * Initial checkin. Renamed all relevant stuff to be Fred2 instead of
30  * Fred. Globalized mission and campaign file extensions. Removed Silent
31  * Threat specific code.
32  * 
33  * 1     10/07/98 3:01p Dave
34  * 
35  * 1     10/07/98 3:00p Dave
36  * 
37  * 17    1/15/98 5:04p Hoffoss
38  * Fixed functionality of team loadout editor.
39  * 
40  * 16    10/03/97 6:16p Hoffoss
41  * Added weapon loadout editing to player editor (now called team loadout
42  * editor)
43  * 
44  * 15    9/16/97 9:41p Hoffoss
45  * Changed Fred code around to stop using Parse_player structure for
46  * player information, and use actual ships instead.
47  * 
48  * 14    8/16/97 2:16p Hoffoss
49  * Made changed to how checkboxes work.
50  * 
51  * 13    8/13/97 10:17p Hoffoss
52  * Added player entry delay support to Fred, and moved the
53  * Player_entry_delay variable to a common library instead of FreeSpace.
54  * 
55  * 12    5/20/97 2:28p Hoffoss
56  * Added message box queries for close window operation on all modal
57  * dialog boxes.
58  * 
59  * 11    4/17/97 2:01p Hoffoss
60  * All dialog box window states are saved between sessions now.
61  * 
62  * 10    3/11/97 5:41p Hoffoss
63  * Player start editor now displays wing ship counts.  Removed default
64  * player ship selection box.
65  * 
66  * 9     3/11/97 4:52p Hoffoss
67  * changed player start editor dialog functioning.
68  * 
69  * 8     2/26/97 5:31p Hoffoss
70  * Added support for default player ship in player editor dialog box.
71  * 
72  * 7     2/21/97 5:34p Hoffoss
73  * Added extensive modification detection and fixed a bug in initial
74  * orders editor.
75  * 
76  * 6     2/17/97 5:28p Hoffoss
77  * Checked RCS headers, added them were missing, changing description to
78  * something better, etc where needed.
79  * 
80  * 5     1/30/97 2:24p Hoffoss
81  * Added remaining mission file structures and implemented load/save of
82  * them.
83  *
84  * $NoKeywords: $
85  */
86
87 #include "shipchecklistbox.h"
88
89 /////////////////////////////////////////////////////////////////////////////
90 // player_start_editor dialog
91
92 class player_start_editor : public CDialog
93 {
94 // Construction
95 public: 
96         player_start_editor(CWnd* pParent = NULL);   // standard constructor
97
98 // Dialog Data
99         //{{AFX_DATA(player_start_editor)
100         enum { IDD = IDD_LOADOUT_EDITOR };
101         CSpinButtonCtrl m_pool_spin;
102         CSpinButtonCtrl m_delay_spin;
103         CSpinButtonCtrl m_spin1;
104         CCheckListBox           m_ship_list;
105         CCheckListBox           m_weapon_list;  
106         int                                     m_delay;        
107         int                                     m_weapon_pool;
108         int                                     m_ship_pool;
109         //}}AFX_DATA
110
111
112 // Overrides
113         // ClassWizard generated virtual function overrides
114         //{{AFX_VIRTUAL(player_start_editor)
115         protected:
116         virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
117         virtual BOOL OnCommand(WPARAM wParam, LPARAM lParam);
118         //}}AFX_VIRTUAL
119
120 // Implementation
121 protected:
122
123         // Generated message map functions
124         //{{AFX_MSG(player_start_editor)
125         virtual BOOL OnInitDialog();
126         afx_msg void OnInitMenu(CMenu* pMenu);
127         afx_msg void OnSelchangeShipList();             
128         afx_msg void OnSelchangeWeaponList();   
129         afx_msg void OnUpdateShipPool();
130         afx_msg void OnUpdateWeaponPool();
131         void OnCancel();        
132         void OnOK();
133         //}}AFX_MSG
134         DECLARE_MESSAGE_MAP()
135
136 private:
137         // if we've finished initializing the dialog
138         int dlg_inited;
139
140         // team we're currently working with
141         int selected_team;
142
143         // ship pool info
144         int ship_pool[MAX_TEAMS][MAX_SHIP_TYPES];
145
146         // weapon pool info
147         int weapon_pool[MAX_TEAMS][MAX_WEAPON_TYPES];
148
149         // regenerate all controls
150         void reset_controls();
151 };
152