summaryrefslogtreecommitdiffstats
path: root/knetworkmanager-0.8/src/devicetraycomponent.cpp
diff options
context:
space:
mode:
authortpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2011-10-17 17:38:53 +0000
committertpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2011-10-17 17:38:53 +0000
commit1e0dd58661c9097fb41218ee7e3515f2d8ba8dac (patch)
treea263b4ad0c1f7fba6013f5d9854db4cb4962df82 /knetworkmanager-0.8/src/devicetraycomponent.cpp
downloadknetworkmanager8-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.cpp133
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"