diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2011-10-17 17:38:53 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2011-10-17 17:38:53 +0000 |
commit | 1e0dd58661c9097fb41218ee7e3515f2d8ba8dac (patch) | |
tree | a263b4ad0c1f7fba6013f5d9854db4cb4962df82 /knetworkmanager-0.8/src/devicetraycomponent.cpp | |
download | knetworkmanager8-1e0dd58661c9097fb41218ee7e3515f2d8ba8dac.tar.gz knetworkmanager8-1e0dd58661c9097fb41218ee7e3515f2d8ba8dac.zip |
Add dead-ended knetworkmanager 0.8 source
Add copy of same for knetworkmanager 0.9 starting point
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/knetworkmanager8@1259314 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'knetworkmanager-0.8/src/devicetraycomponent.cpp')
-rw-r--r-- | knetworkmanager-0.8/src/devicetraycomponent.cpp | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/knetworkmanager-0.8/src/devicetraycomponent.cpp b/knetworkmanager-0.8/src/devicetraycomponent.cpp new file mode 100644 index 0000000..9b63cc4 --- /dev/null +++ b/knetworkmanager-0.8/src/devicetraycomponent.cpp @@ -0,0 +1,133 @@ +/* +Copyright 2008 Will Stephenson <[email protected]> + +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; either version 2 of +the License or (at your option) version 3 or any later version +accepted by the membership of KDE e.V. (or its successor approved +by the membership of KDE e.V.), which shall act as a proxy +defined in Section 14 of version 3 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/>. +*/ + +#include "devicetraycomponent.h" + +#include <kiconloader.h> +#include <klocale.h> +#include <ksystemtray.h> + +#include "knetworkmanager-device.h" +#include "knetworkmanager-nm_proxy.h" + +DeviceTrayComponent::DeviceTrayComponent(Device * device, KSystemTray * parent, const char * name ) + : TrayComponent(parent, name), m_device(device) +{ + connect( m_device, TQT_SIGNAL(StateChanged(NMDeviceState)), TQT_SLOT(deviceStateChanged(NMDeviceState))); + + m_pixmaps[NM_DEVICE_STATE_UNKNOWN] = "nm_no_connection"; + m_pixmaps[NM_DEVICE_STATE_UNMANAGED] = "nm_no_connection"; + m_pixmaps[NM_DEVICE_STATE_UNAVAILABLE] = "nm_no_connection"; + m_pixmaps[NM_DEVICE_STATE_DISCONNECTED] = "nm_no_connection"; + m_pixmaps[NM_DEVICE_STATE_ACTIVATED] = "ok"; + m_pixmaps[NM_DEVICE_STATE_FAILED] = "nm_no_connection"; + + m_movies[NM_DEVICE_STATE_PREPARE] = "nm_stage01_connecting"; + m_movies[NM_DEVICE_STATE_CONFIG] = "nm_stage02_connecting"; + m_movies[NM_DEVICE_STATE_IP_CONFIG] = "nm_stage03_connecting"; + m_movies[NM_DEVICE_STATE_NEED_AUTH] = m_movies[NM_DEVICE_STATE_CONFIG]; + + m_tooltips[NM_DEVICE_STATE_UNKNOWN] = i18n("Unknown"); + m_tooltips[NM_DEVICE_STATE_UNAVAILABLE] = i18n("Down"); + m_tooltips[NM_DEVICE_STATE_UNMANAGED] = i18n("Unmanaged"); + m_tooltips[NM_DEVICE_STATE_DISCONNECTED] = i18n("Disconnected"); + m_tooltips[NM_DEVICE_STATE_PREPARE] = i18n("Preparing"); + m_tooltips[NM_DEVICE_STATE_CONFIG] = i18n("Configuration"); + m_tooltips[NM_DEVICE_STATE_NEED_AUTH] = i18n("Awaiting authentication"); + m_tooltips[NM_DEVICE_STATE_IP_CONFIG] = i18n("IP configuration"); + m_tooltips[NM_DEVICE_STATE_ACTIVATED] = i18n("Activated"); + m_tooltips[NM_DEVICE_STATE_FAILED] = i18n("Failed"); +} + +DeviceTrayComponent::~DeviceTrayComponent() +{ +} + +Device* DeviceTrayComponent::device() const +{ + return m_device; +} + +TQStringList DeviceTrayComponent::getToolTipText() +{ + TQStringList list; + NMDeviceState state = m_device->getState(); + if (m_tooltips.contains(state)) { + list.append(i18n("Device: %1").tqarg(m_device->getInterface())); + list.append(i18n("State: %1").tqarg(m_tooltips[state])); + } + return list; +} + + +TQPixmap DeviceTrayComponent::pixmapForState(NMDeviceState state) +{ + if (m_pixmaps.contains(state)) { + return KSystemTray::loadIcon(m_pixmaps[state]); + } else { + return TQPixmap(); + } +} + +TQMovie DeviceTrayComponent::movieForState(NMDeviceState state) +{ + if (m_movies.contains(state)) { + return TQMovie( KGlobal::iconLoader()->moviePath(m_movies[state], KIcon::Panel)); + } else { + return TQMovie(); + } +} + +void DeviceTrayComponent::setMovieForState(NMDeviceState state, TQString movie) +{ + m_movies[state] = movie; +} + +void DeviceTrayComponent::setPixmapForState(NMDeviceState state, TQString pixmap) +{ + m_pixmaps[state] = pixmap; +} + +void DeviceTrayComponent::deviceStateChanged(NMDeviceState state) +{ + //check if our device now holds the default active connection + // if it is the default active connection + // or if it is activating. what if 2 devices are activating simultaneously? + NMProxy * nm = 0; + switch (state) { + case NM_DEVICE_STATE_PREPARE: + emit needsCenterStage(this, true); + break; + case NM_DEVICE_STATE_ACTIVATED: + nm = NMProxy::getInstance(); + if ( m_device == nm->getDefaultDevice() ) { + emit needsCenterStage(this, true); + } + break; + case NM_DEVICE_STATE_UNAVAILABLE: + case NM_DEVICE_STATE_DISCONNECTED: + case NM_DEVICE_STATE_FAILED: + emit needsCenterStage(this, false); + break; + default: + break; + } +} +#include "devicetraycomponent.moc" |