summaryrefslogtreecommitdiff
path: root/plugins/FTPFileYM/src/options.h
blob: 3f7685306164b53f59842810751cfff8b95a465b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
/*
FTP File YM plugin
Copyright (C) 2007-2010 Jan Holub

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation version 2
of the License.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#pragma once

#include "common.h"
#include "serverlist.h"

class Options 
{
private:
	static Options *instance;

	Options() { }; 
	~Options() { instance = NULL; };

public:
	enum ETimeRange
	{
		TR_MINUTES= 0,
		TR_HOURS, 
		TR_DAYS
	};

	BYTE selected;
	BYTE defaultFTP;
	bool bCloseDlg;
	bool bCopyLink;
	bool bAutosend;
	bool bUseSubmenu;
	bool bHideInactive;
	bool bAutoDelete;
	int iCompressionLevel;
	bool bSetZipName;
	int iDeleteTime;
	ETimeRange timeRange;

	static Options &getInstance() 
	{
		if (!instance)
			instance = new Options();
		return *instance;
	};

	static void enableItems(HWND hwndDlg, bool state);
	static int InitOptions(WPARAM wParam, LPARAM lParam);
	static INT_PTR CALLBACK DlgProcOptsAccounts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);
	static INT_PTR CALLBACK DlgProcOptsAdvanced(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);	

	void deinit();
	void loadOptions();	
	void saveOptions() const;
};