#pragma once

#include <Commctrl.h>

class FWatchSettingDlg {
private:
	FWatchSettingDlg( const FWatchSettingDlg& ); //<! 実装なし
	FWatchSettingDlg& operator=( const FWatchSettingDlg& ); //<! 実装なし

public:
	FWatchSettingDlg();
	~FWatchSettingDlg();
	void show( HWND hWnd );

private:
	int GetColumnCount() const;
	tstring GetColText(unsigned int idx, unsigned int col) const;
	tstring GetColTitle(int col) const;

private:
	HWND hDlg_;
	HWND hList_;

	tstring columnTextTemp_;
	UINT_PTR uTimer_;

	void onInitDialog();
	BOOL onCommand( UINT btn );
	BOOL onNotify(WPARAM wParam, LPARAM lParam);
	void onEdit(bool bEditMode);
	void onDelete();

	void onTimer(UINT_PTR uTimer);
	void onGetDispInfo(LV_DISPINFO *pDispInfo);
	void onClick(LPNMITEMACTIVATE pActive);
	void onHelp(LPHELPINFO helpInfo);

	void displayStatus() const;

	static LRESULT CALLBACK DlgProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
};
