]> icculus.org git repositories - taylor/freespace2.git/blob - include/campaigneditordlg.h
Initial revision
[taylor/freespace2.git] / include / campaigneditordlg.h
1 // CampaignEditorDlg.h : header file
2 //
3
4 #include "resource.h"
5 #include "sexp_tree.h"
6 #include "campaignfilelistbox.h"
7
8 /////////////////////////////////////////////////////////////////////////////
9 // campaign_editor form view
10
11 #ifndef __AFXEXT_H__
12 #include <afxext.h>
13 #endif
14
15 class campaign_sexp_tree : public sexp_tree
16 {
17 public:
18         int load_sub_tree(int index);
19         int get_new_node_position();
20 };
21
22 class campaign_editor : public CFormView
23 {
24 private:
25         int m_num_links;
26         int m_last_mission;
27
28 protected:
29         campaign_editor();           // protected constructor used by dynamic creation
30         DECLARE_DYNCREATE(campaign_editor)
31
32 // Form Data
33 public:
34         void mission_selected(int num);
35         void insert_handler(int old, int node);
36         void swap_handler(int node1, int node2);
37         void update();
38         void load_tree(int save = 1);
39         void save_tree(int clear = 1);
40         int handler(int code, int node, char *str = NULL);
41         void initialize( int init_files = 1 );
42         void load_campaign();
43         void update_loop_desc_window();
44         void campaign_editor::save_loop_desc_window();
45         //{{AFX_DATA(campaign_editor)
46         enum { IDD = IDD_CAMPAIGN };
47         campaign_sexp_tree      m_tree;
48         campaign_filelist_box   m_filelist;
49         CString m_name;
50         int             m_type;
51         CString m_num_players;
52         CString m_desc;
53         CString m_loop_desc;
54         CString m_loop_brief_anim;
55         CString m_loop_brief_sound;
56         //}}AFX_DATA
57
58 // Attributes
59 public:
60
61 // Operations
62 public:
63
64 // Overrides
65         // ClassWizard generated virtual function overrides
66         //{{AFX_VIRTUAL(campaign_editor)
67         public:
68         virtual BOOL Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext = NULL);
69         protected:
70         virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
71         virtual void OnUpdate(CView* pSender, LPARAM lHint, CObject* pHint);
72         //}}AFX_VIRTUAL
73
74 // Implementation
75 protected:
76         virtual ~campaign_editor();
77 #ifdef _DEBUG
78         virtual void AssertValid() const;
79         virtual void Dump(CDumpContext& dc) const;
80 #endif
81
82         // Generated message map functions
83         //{{AFX_MSG(campaign_editor)
84         afx_msg void OnLoad();
85         afx_msg void OnAlign();
86         afx_msg void OnCpgnClose();
87         afx_msg void OnRclickTree(NMHDR* pNMHDR, LRESULT* pResult);
88         afx_msg void OnBeginlabeleditSexpTree(NMHDR* pNMHDR, LRESULT* pResult);
89         afx_msg void OnEndlabeleditSexpTree(NMHDR* pNMHDR, LRESULT* pResult);
90         afx_msg void OnSelchangedSexpTree(NMHDR* pNMHDR, LRESULT* pResult);
91         afx_msg void OnMoveUp();
92         afx_msg void OnMoveDown();
93         afx_msg void OnEndEdit();
94         afx_msg void OnChangeBriefingCutscene();
95         afx_msg void OnSelchangeType();
96         afx_msg void OnGalatea();
97         afx_msg void OnBastion();
98         afx_msg void OnToggleLoop();
99         afx_msg void OnBrowseLoopAni();
100         afx_msg void OnBrowseLoopSound();
101         //}}AFX_MSG
102         DECLARE_MESSAGE_MAP()
103 };
104
105 /////////////////////////////////////////////////////////////////////////////
106
107 extern campaign_editor *Campaign_tree_formp;
108 extern int Cur_campaign_mission;
109 extern int Cur_campaign_link;
110