//>>> shadow2004::IPFilter-Prefspage
#pragma once

class CCustomAutoComplete;	//>>> shadow2004::IPFilter-Autocomplete

class CPPgIPFilter : public CPropertyPage
{
	DECLARE_DYNAMIC(CPPgIPFilter)

public:
	CPPgIPFilter();
	virtual ~CPPgIPFilter();

// Dialog Data
	enum { IDD = IDD_PPG_IPFILTER };

	void Localize(void);
	void DeleteDDB();	//>>> shadow2004::IPFilter-Autocomplete

protected:
	CCustomAutoComplete* m_pemfIPFilterURL;		//>>> shadow2004::IPFilter-Autocomplete

	void LoadSettings(void);

	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	virtual BOOL OnInitDialog();
	virtual BOOL OnApply();
	virtual BOOL OnCommand(WPARAM wParam, LPARAM lParam);
	virtual BOOL PreTranslateMessage(MSG* pMsg);	//>>> shadow2004::IPFilter-Autocomplete

	DECLARE_MESSAGE_MAP()
	afx_msg void OnSettingsChange();	//>>> shadow2004::ed2k updates
//>>> shadow2004::IPFilter-Update [Morph]
	afx_msg void OnBnClickedChkEnableAutoupdate();
	afx_msg void OnResetIPFilterURL();
	afx_msg void OnLoadIPFilter();
//<< shadow2004::IPFilter-Update [Morph]
	afx_msg void OnHelp();
	afx_msg BOOL OnHelpInfo(HELPINFO* pHelpInfo);
//>>> shadow2004::IPFilter-Autocomplete
	afx_msg void OnDestroy();
	afx_msg void OnListClicked();
//<<< shadow2004::IPFilter-Autocomplete

//>>> shadow2004::Tabbed Prefs [TPT] reworked
private:
	enum eTab	{NONE, Updates1, Updates2};
	CTabCtrl	m_tabCtr;
	eTab		m_currentTab;
	CImageList	m_imageList;
	void		SetTab(eTab tab);

public:
	afx_msg void OnTcnSelchangeTabUpdates2(NMHDR *pNMHDR, LRESULT *pResult);
	void	InitTab(const bool firstinit, const int Page = 0);
//<<< shadow2004::Tabbed Prefs [TPT] reworked
};
