// NFO File EditorDlg.h : header file
//

#if !defined(AFX_NFOFILEEDITORDLG_H__F8C11143_DAE8_4359_AC7E_99F34C8C0F45__INCLUDED_)
#define AFX_NFOFILEEDITORDLG_H__F8C11143_DAE8_4359_AC7E_99F34C8C0F45__INCLUDED_

#include "GameTypes.h"

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

/////////////////////////////////////////////////////////////////////////////
// CNFOFileEditorDlg dialog

class CNFOFileEditorDlg : public CDialog
{
// Construction
public:
	CNFOFileEditorDlg(CWnd* pParent = NULL);	// standard constructor
	~CNFOFileEditorDlg();

// Dialog Data
	//{{AFX_DATA(CNFOFileEditorDlg)
	enum { IDD = IDD_NFOFILEEDITOR_DIALOG };
	CButton	m_RestoreButton;
	CButton	m_RemoveAllRuleButton;
	CButton	m_SaveButton;
	CButton	m_MoveCycleUpButton;
	CButton	m_RemoveRuleButton;
	CButton	m_MoveCycleDownButton;
	CButton	m_RemoveNFOButton;
	CButton	m_AddNFOButton;
	CButton	m_AddRuleButton;
	CListCtrl	m_CycleList;
	CButton	m_PropertiesButton;
	CComboBox	m_MissionList;
	CListBox	m_NFOList;
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CNFOFileEditorDlg)
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
	//}}AFX_VIRTUAL

public:
	void InitGos(void);
	void GetNFOList(void);
	void LoadCycle(void);
	void SaveCycle(void);
	BOOL LoadScenario(char* nfo_name, char* nfo_text, char* scenario_name, int count);
	
	HWND Window;
	bool gosCreated;
	BOOL m_bEditNFO;
	BOOL m_bSaved;
	
	// Strings
	void InitStrings(void);
	char* m_szScenarioName[GameTypeCount];
	char* m_szScenarioGameTypeName[GameTypeCount];
	char* m_szScenarioText[GameTypeCount];
	char* m_szYesNo[2];
	char* m_szTOD[2];
	char* m_szRadar[3];
	char* m_szDefault;
	char* m_szNone;
	int m_iTeam[GameTypeCount];
	BOOL m_bBots[GameTypeCount];

// Implementation
protected:
	HICON m_hIcon;

	// Generated message map functions
	//{{AFX_MSG(CNFOFileEditorDlg)
	virtual BOOL OnInitDialog();
	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	afx_msg void OnSelchangeNFOMissions();
	afx_msg void OnNFOProperties();
	afx_msg void OnCycleAdd();
	afx_msg void OnCycleRemove();
	afx_msg void OnCycleMoveDown();
	afx_msg void OnCycleMoveUp();
	afx_msg void OnCycleSave();
	afx_msg void OnNFORemove();
	afx_msg void OnNFOAdd();
	afx_msg void OnSelchangeNFOList();
	afx_msg void OnItemchangedServerCycleList(NMHDR* pNMHDR, LRESULT* pResult);
	afx_msg void OnDblclkNFOList();
	afx_msg void OnCycleRemoveAll();
	virtual void OnOK();
	afx_msg void OnCycleRestore();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_NFOFILEEDITORDLG_H__F8C11143_DAE8_4359_AC7E_99F34C8C0F45__INCLUDED_)
