aboutsummaryrefslogtreecommitdiff
path: root/lumina-config/LPlugins.h
blob: 53c26977dee65fa72fad5684ad254fe578040850 (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
//===========================================
//  Lumina-DE source code
//  Copyright (c) 2014, Ken Moore
//  Available under the 3-clause BSD license
//  See the LICENSE file for full details
//===========================================
#ifndef _LUMINA_DESKTOP_CONFIG_PLUGINS_H
#define _LUMINA_DESKTOP_CONFIG_PLUGINS_H

#include <QObject>
#include <QHash>
#include <QString>
#include <QStringList>

// Lumina Plugin Info class 
class LPI{
  public:
    QString name, ID, description, icon;
    LPI(){}
    ~LPI(){}
};

// Utility class for getting information
class LPlugins{
public:
	LPlugins();
	~LPlugins();
	//Total lists of plugins
	QStringList panelPlugins();
	QStringList desktopPlugins();
	QStringList menuPlugins();
	QStringList colorItems();
	//Information on individual plugins
	LPI panelPluginInfo(QString);
	LPI desktopPluginInfo(QString);
	LPI menuPluginInfo(QString);
	LPI colorInfo(QString);

private:
	QHash<QString, LPI> PANEL, DESKTOP, MENU, COLORS;
	void LoadPanelPlugins();
	void LoadDesktopPlugins();
	void LoadMenuPlugins();
	void LoadColorItems();
};
#endif
bgstack15