summaryrefslogtreecommitdiff
path: root/plugins/W7UI/jumplistarray.h
blob: c9f2a8b979acf8859fc9488041cf43f9b1e00d90 (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
#ifndef jumplistarray_h__
#define jumplistarray_h__

class CJumpListArray
{
private:
	IObjectCollection *m_pObjects;

public:
	CJumpListArray();
	~CJumpListArray();

	void AddItem(char *mir_icon, TCHAR *title, TCHAR *path, TCHAR *args);
	void AddItem(int skinicon, TCHAR *title, TCHAR *path, TCHAR *args);
	void AddItem(char *proto, int skinicon, TCHAR *title, TCHAR *path, TCHAR *args);
	
	IObjectArray *GetArray();

private:
	void AddItemImpl(TCHAR *icon, int iIcon, TCHAR *title, TCHAR *path, TCHAR *args);

	bool LoadMirandaIcon(char *mir_icon, TCHAR *icon, int *id);
	bool LoadMirandaIcon(int skinicon, TCHAR *icon, int *id);
	bool LoadMirandaIcon(char *proto, int status, TCHAR *icon, int *id);

	static IShellLink *NewShellLink(TCHAR *icon, int iIcon, TCHAR *title, TCHAR *path, TCHAR *args);
};

#endif // jumplistarray_h__