summaryrefslogtreecommitdiffstats
path: root/knetworkmanager-0.8/src/knetworkmanager-tray.h
diff options
context:
space:
mode:
Diffstat (limited to 'knetworkmanager-0.8/src/knetworkmanager-tray.h')
-rw-r--r--knetworkmanager-0.8/src/knetworkmanager-tray.h140
1 files changed, 140 insertions, 0 deletions
diff --git a/knetworkmanager-0.8/src/knetworkmanager-tray.h b/knetworkmanager-0.8/src/knetworkmanager-tray.h
new file mode 100644
index 0000000..d301386
--- /dev/null
+++ b/knetworkmanager-0.8/src/knetworkmanager-tray.h
@@ -0,0 +1,140 @@
+/***************************************************************************
+ *
+ * knetworkmanager.h - A NetworkManager frontend for KDE
+ *
+ * Copyright (C) 2005, 2006 Novell, Inc.
+ *
+ * Author: Timo Hoenig <[email protected]>, <[email protected]>
+ * Will Stephenson <[email protected]>, <[email protected]>
+ * Alexander Naumov <[email protected]>, <[email protected]>
+ * Author: Timothy Pearson <[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) any later version.
+ *
+ * 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, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ **************************************************************************/
+
+#ifndef KNETWORKMANAGER_TRAY_H
+#define KNETWORKMANAGER_TRAY_H
+
+#include <tqmap.h>
+#include <tqtimer.h>
+
+#include <tqtooltip.h>
+#include <ksystemtray.h>
+#include <kuniqueapplication.h>
+#include <kpopupmenu.h>
+#include <kactionclasses.h>
+#include <kstdaction.h>
+#include <kstdguiitem.h>
+
+#include <tqdialog.h>
+#include <tqwidget.h>
+
+#include <tqlayout.h>
+#include <tqlabel.h>
+#include <tqcheckbox.h>
+#include <tqprogressbar.h>
+#include <tqguardedptr.h>
+
+#include "knetworkmanager.h"
+
+namespace ConnectionSettings
+{
+ class Connection;
+ class ConnectionSetting;
+}
+
+class TQMouseEvent;
+class TrayComponent;
+class TrayPrivate;
+class TQDialog;
+class TQPushButton;
+class TQLabel;
+
+class Tray : public KSystemTray
+{
+ Q_OBJECT
+ TQ_OBJECT
+
+ public:
+ Tray ();
+ ~Tray ();
+ static Tray* getInstance();
+ void contextMenuAboutToShow (KPopupMenu* menu);
+
+ signals:
+
+ public slots:
+ void slotOfflineMode();
+ void slotOnlineMode();
+ void slotEnableWireless();
+ void slotDisableWireless();
+ void slotEditConnections();
+
+ void slotStateChanged(TQ_UINT32 state);
+ void slotVPNSecretsNeeded(ConnectionSettings::Connection* connection, ConnectionSettings::ConnectionSetting* setting, const TQStringList& hints, bool request_new);
+ void slotSecretsNeeded(ConnectionSettings::Connection* connection, ConnectionSettings::ConnectionSetting* setting, const TQStringList& hints, bool request_new);
+
+ void slotDeviceAddedNotify(Device*);
+ void slotDeviceRemovedNotify(Device*);
+ void slotStateChangedNotify(TQ_UINT32 state);
+
+ void slotUpdateDeviceState();
+ void slotUpdateDeviceState(NMDeviceState);
+
+ void slotNewVPNConnection();
+ void slotVPNBannerShow(const TQString& vpnbanner);
+
+ protected slots:
+ void updateDeviceTrays();
+ void slotAddDeviceTrayComponent(Device*);
+ void slotRemoveDeviceTrayComponent(Device*);
+ void slotDeactivateConnection(int);
+ void trayComponentNeedsCenterStage(TrayComponent*, bool);
+ void trayUiChanged();
+ void slotEditNotifications();
+
+ private:
+ void updateTrayIcon(NMDeviceState);
+ void updateActiveConnection(NMDeviceState);
+ void mousePressEvent( TQMouseEvent *e );
+ void createVPNTrayComponent();
+ void createDeviceTrayComponent(Device*);
+ void enterEvent (TQEvent*);
+
+ TrayPrivate* d;
+
+};
+
+class NewSecretsDialog : public TQDialog
+{
+ Q_OBJECT
+ TQ_OBJECT
+
+ public:
+ NewSecretsDialog(ConnectionSettings::Connection* connection, TQWidget * parent, const char * name, bool modal = false, TQt::WFlags f = 0);
+ ~NewSecretsDialog();
+ void init();
+
+ public slots:
+ void slotDialogEdit();
+ void reject();
+
+ private:
+ ConnectionSettings::Connection* _connection;
+};
+
+#endif /* KNETWORKMANAGER_TRAY_H */