Applets
hdd.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef HDD_HEADER
00020 #define HDD_HEADER
00021
00022 #include <Plasma/DataEngine>
00023 #include <QHash>
00024 #include <QStandardItemModel>
00025 #include <applet.h>
00026 #include "ui_hdd-config.h"
00027
00028 namespace Plasma {
00029 class Meter;
00030 }
00031 class MonitorIcon;
00032 class Header;
00033 class QGraphicsLinearLayout;
00034
00035 class Hdd : public SM::Applet
00036 {
00037 Q_OBJECT
00038 public:
00039 Hdd(QObject *parent, const QVariantList &args);
00040 ~Hdd();
00041
00042 virtual void init();
00043 virtual void createConfigurationInterface(KConfigDialog *parent);
00044
00045 public slots:
00046 void dataUpdated(const QString &name, const Plasma::DataEngine::Data &data);
00047
00048 private slots:
00049 void configAccepted();
00050 void themeChanged();
00051
00052 private:
00053 Ui::config ui;
00054 QStandardItemModel m_hddModel;
00055 QHash<const QString, MonitorIcon *> m_icons;
00056 QHash<QString, QList<Plasma::Meter *> > m_diskMap;
00057
00058 QString title(const QString& uuid, const Plasma::DataEngine::Data &data);
00059 bool addMeter(const QString& source);
00060 void deleteMeters(QGraphicsLinearLayout* layout = 0);
00061 bool isValidDevice(const QString& uuid, Plasma::DataEngine::Data* data);
00062 };
00063
00064 K_EXPORT_PLASMA_APPLET(sm_hdd, Hdd)
00065
00066 #endif