• Skip to content
  • Skip to link menu
KDE 4.1 API Reference
  • KDE API Reference
  • API Reference
  • Sitemap
  • Contact Us
 

Plasma

devicesignalmapmanager.cpp

Go to the documentation of this file.
00001 /*
00002  *   Copyright (C) 2007 Christopher Blauvelt <cblauvelt@gmail.com>
00003  *
00004  *   This program is free software; you can redistribute it and/or modify
00005  *   it under the terms of the GNU Library General Public License version 2 as
00006  *   published by the Free Software Foundation
00007  *
00008  *   This program is distributed in the hope that it will be useful,
00009  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
00010  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00011  *   GNU General Public License for more details
00012  *
00013  *   You should have received a copy of the GNU Library General Public
00014  *   License along with this program; if not, write to the
00015  *   Free Software Foundation, Inc.,
00016  *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
00017  */
00018 
00019 #include "devicesignalmapmanager.h"
00020 
00021 DeviceSignalMapManager::DeviceSignalMapManager(QObject *parent) : QObject(parent)
00022 {
00023     user = parent;
00024 }
00025 
00026 DeviceSignalMapManager::~DeviceSignalMapManager()
00027 {
00028 }
00029 
00030 void DeviceSignalMapManager::mapDevice(Solid::AcAdapter *ac, const QString &udi)
00031 {
00032     AcAdapterSignalMapper *map=0;
00033     if(!signalmap.contains(Solid::DeviceInterface::AcAdapter)) {
00034         signalmap[Solid::DeviceInterface::AcAdapter] = new AcAdapterSignalMapper(this);
00035     }
00036     map = (AcAdapterSignalMapper*)signalmap[Solid::DeviceInterface::AcAdapter];
00037 
00038     connect(ac, SIGNAL(plugStateChanged(bool, const QString &)), map, SLOT(plugStateChanged(bool)));
00039     connect(map, SIGNAL(deviceChanged(const QString&, const QString &, QVariant)), user, SLOT(deviceChanged(const QString&, const QString &, QVariant)));
00040     map->setMapping(ac, udi);
00041 }
00042 
00043 void DeviceSignalMapManager::mapDevice(Solid::Button *button, const QString &udi)
00044 {
00045     ButtonSignalMapper *map=0;
00046     if(!signalmap.contains(Solid::DeviceInterface::Button)) {
00047         signalmap[Solid::DeviceInterface::Button] = new ButtonSignalMapper(this);
00048     }
00049     map = (ButtonSignalMapper*)signalmap[Solid::DeviceInterface::Button];
00050 
00051     connect(button, SIGNAL(pressed(Solid::Button::ButtonType, const QString &)), map, SLOT(pressed(Solid::Button::ButtonType)));
00052     connect(map, SIGNAL(deviceChanged(const QString&, const QString &, QVariant)), user, SLOT(deviceChanged(const QString&, const QString &, QVariant)));
00053     map->setMapping(button, udi);
00054 }
00055 
00056 void DeviceSignalMapManager::mapDevice(Solid::Battery *battery, const QString &udi)
00057 {
00058     BatterySignalMapper *map=0;
00059     if(!signalmap.contains(Solid::DeviceInterface::Battery)) {
00060         signalmap[Solid::DeviceInterface::Battery] = new BatterySignalMapper(this);
00061     }
00062     map = (BatterySignalMapper*)signalmap[Solid::DeviceInterface::Battery];
00063 
00064     connect(battery, SIGNAL(chargePercentChanged(int, const QString &)), map, SLOT(chargePercentChanged(int)));
00065     connect(map, SIGNAL(deviceChanged(const QString&, const QString &, QVariant)), user, SLOT(deviceChanged(const QString&, const QString &, QVariant)));
00066     connect(battery, SIGNAL(chargeStateChanged(int, const QString &)), map, SLOT(chargeStateChanged(int)));
00067     connect(map, SIGNAL(deviceChanged(const QString&, const QString &, QVariant)), user, SLOT(deviceChanged(const QString&, const QString &, QVariant)));
00068     connect(battery, SIGNAL(plugStateChanged(bool, const QString &)), map, SLOT(plugStateChanged(bool)));
00069     connect(map, SIGNAL(deviceChanged(const QString&, const QString &, QVariant)), user, SLOT(deviceChanged(const QString&, const QString &, QVariant)));
00070     map->setMapping(battery, udi);
00071 }
00072 
00073 void DeviceSignalMapManager::mapDevice(Solid::StorageAccess *storageaccess, const QString &udi)
00074 {
00075     StorageAccessSignalMapper *map=0;
00076     if(!signalmap.contains(Solid::DeviceInterface::StorageAccess)) {
00077         signalmap[Solid::DeviceInterface::StorageAccess] = new StorageAccessSignalMapper(this);
00078     }
00079     map = (StorageAccessSignalMapper*)signalmap[Solid::DeviceInterface::StorageAccess];
00080 
00081     connect(storageaccess, SIGNAL(accessibilityChanged(bool, const QString &)), map, SLOT(accessibilityChanged(bool)));
00082     connect(map, SIGNAL(deviceChanged(const QString&, const QString &, QVariant)), user, SLOT(deviceChanged(const QString&, const QString &, QVariant)));
00083     map->setMapping(storageaccess, udi);
00084 }
00085 
00086 void DeviceSignalMapManager::unmapDevice(Solid::AcAdapter *ac)
00087 {
00088     if(!signalmap.contains(Solid::DeviceInterface::AcAdapter)) {
00089         return;
00090     }
00091     AcAdapterSignalMapper *map = (AcAdapterSignalMapper*)signalmap[Solid::DeviceInterface::AcAdapter];
00092     disconnect(ac, SIGNAL(plugStateChanged(bool, const QString &)), map, SLOT(plugStateChanged(bool)));
00093     disconnect(map, SIGNAL(deviceChanged(const QString&, const QString &, QVariant)), user, SLOT(deviceChanged(const QString&, const QString &, QVariant)));
00094 }
00095 
00096 void DeviceSignalMapManager::unmapDevice(Solid::Button *button)
00097 {
00098     if(!signalmap.contains(Solid::DeviceInterface::Button)) {
00099         return;
00100     }
00101     ButtonSignalMapper *map = (ButtonSignalMapper*)signalmap[Solid::DeviceInterface::Button];
00102     disconnect(button, SIGNAL(pressed(Solid::Button::ButtonType, const QString &)), map, SLOT(pressed(Solid::Button::ButtonType)));
00103     disconnect(map, SIGNAL(deviceChanged(const QString&, const QString &, QVariant)), user, SLOT(deviceChanged(const QString&, const QString &, QVariant)));
00104 }
00105 
00106 void DeviceSignalMapManager::unmapDevice(Solid::Battery *battery)
00107 {
00108     if(!signalmap.contains(Solid::DeviceInterface::Battery)) {
00109         return;
00110     }
00111     BatterySignalMapper *map = (BatterySignalMapper*)signalmap[Solid::DeviceInterface::Battery];
00112     disconnect(battery, SIGNAL(chargePercentChanged(int, const QString &)), map, SLOT(chargePercentChanged(int)));
00113     disconnect(map, SIGNAL(deviceChanged(const QString&, const QString &, QVariant)), user, SLOT(deviceChanged(const QString&, const QString &, QVariant)));
00114     disconnect(battery, SIGNAL(chargeStateChanged(int, const QString &)), map, SLOT(chargeStateChanged(int)));
00115     disconnect(map, SIGNAL(deviceChanged(const QString&, const QString &, QVariant)), user, SLOT(deviceChanged(const QString&, const QString &, QVariant)));
00116     disconnect(battery, SIGNAL(plugStateChanged(bool, const QString &)), map, SLOT(plugStateChanged(bool)));
00117     disconnect(map, SIGNAL(deviceChanged(const QString&, const QString &, QVariant)), user, SLOT(deviceChanged(const QString&, const QString &, QVariant)));
00118 }
00119 
00120 void DeviceSignalMapManager::unmapDevice(Solid::StorageAccess *storageaccess)
00121 {
00122     if(!signalmap.contains(Solid::DeviceInterface::StorageAccess)) {
00123         return;
00124     }
00125     StorageAccessSignalMapper *map = (StorageAccessSignalMapper*)signalmap[Solid::DeviceInterface::StorageAccess];
00126     disconnect(storageaccess, SIGNAL(accessibilityChanged(bool, const QString &)), map, SLOT(accessibilityChanged(bool)));
00127     disconnect(map, SIGNAL(deviceChanged(const QString&, const QString &, QVariant)), user, SLOT(deviceChanged(const QString&, const QString &, QVariant)));
00128 }
00129 
00130 #include "devicesignalmapmanager.moc"

Plasma

Skip menu "Plasma"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members

API Reference

Skip menu "API Reference"
  • KWin
  •   KWin Libraries
  • Libraries
  •   libkworkspace
  •   libplasma
  •   libsolidcontrol
  •   libtaskmanager
  • Plasma
  •   Animators
  •   Applets
  •   Engines
  • Solid Modules
Generated for API Reference by doxygen 1.5.4
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal