00001 /* 00002 * wpa_gui - Peers class 00003 * Copyright (c) 2009, Atheros Communications 00004 * 00005 * This program is free software; you can redistribute it and/or modify 00006 * it under the terms of the GNU General Public License version 2 as 00007 * published by the Free Software Foundation. 00008 * 00009 * Alternatively, this software may be distributed under the terms of BSD 00010 * license. 00011 * 00012 * See README and COPYING for more details. 00013 */ 00014 00015 #ifndef PEERS_H 00016 #define PEERS_H 00017 00018 #include <QObject> 00019 #include <QStandardItemModel> 00020 #include "wpamsg.h" 00021 #include "ui_peers.h" 00022 00023 class WpaGui; 00024 00025 class Peers : public QDialog, public Ui::Peers 00026 { 00027 Q_OBJECT 00028 00029 public: 00030 Peers(QWidget *parent = 0, const char *name = 0, 00031 bool modal = false, Qt::WFlags fl = 0); 00032 ~Peers(); 00033 void setWpaGui(WpaGui *_wpagui); 00034 void event_notify(WpaMsg msg); 00035 00036 public slots: 00037 virtual void context_menu(const QPoint &pos); 00038 virtual void enter_pin(); 00039 virtual void connect_pbc(); 00040 virtual void learn_ap_config(); 00041 virtual void ctx_refresh(); 00042 virtual void properties(); 00043 00044 protected slots: 00045 virtual void languageChange(); 00046 virtual void closeEvent(QCloseEvent *event); 00047 00048 private: 00049 void add_station(QString info); 00050 void add_stations(); 00051 void add_single_station(const char *addr); 00052 bool add_bss(const char *cmd); 00053 void remove_bss(int id); 00054 void add_scan_results(); 00055 void update_peers(); 00056 QStandardItem * find_addr(QString addr); 00057 QStandardItem * find_uuid(QString uuid); 00058 void done(int r); 00059 void remove_enrollee_uuid(QString uuid); 00060 QString ItemType(int type); 00061 00062 WpaGui *wpagui; 00063 QStandardItemModel model; 00064 QIcon *default_icon; 00065 QIcon *ap_icon; 00066 QIcon *laptop_icon; 00067 QStandardItem *ctx_item; 00068 }; 00069 00070 #endif /* PEERS_H */