udp: Merge udp_send and udp_output
[dragonfly.git] / contrib / wpa_supplicant / wpa_supplicant / wpa_gui / scanresults.ui.h
1 /****************************************************************************
2 ** ui.h extension file, included from the uic-generated form implementation.
3 **
4 ** If you want to add, delete, or rename functions or slots, use
5 ** Qt Designer to update this file, preserving your code.
6 **
7 ** You should not define a constructor or destructor in this file.
8 ** Instead, write your code in functions called init() and destroy().
9 ** These will automatically be called by the form's constructor and
10 ** destructor.
11 *****************************************************************************/
12
13 void ScanResults::init()
14 {
15     wpagui = NULL;
16 }
17
18
19 void ScanResults::destroy()
20 {
21     delete timer;
22 }
23
24
25 void ScanResults::setWpaGui(WpaGui *_wpagui)
26 {
27     wpagui = _wpagui;
28     updateResults();
29     
30     timer = new QTimer(this);
31     connect(timer, SIGNAL(timeout()), SLOT(getResults()));
32     timer->start(10000, FALSE);
33 }
34
35
36 void ScanResults::updateResults()
37 {
38     char reply[8192];
39     size_t reply_len;
40     
41     if (wpagui == NULL)
42         return;
43
44     reply_len = sizeof(reply) - 1;
45     if (wpagui->ctrlRequest("SCAN_RESULTS", reply, &reply_len) < 0)
46         return;
47     reply[reply_len] = '\0';
48
49     scanResultsView->clear();
50     
51     QString res(reply);
52     QStringList lines = QStringList::split(QChar('\n'), res);
53     bool first = true;
54     for (QStringList::Iterator it = lines.begin(); it != lines.end(); it++) {
55         if (first) {
56             first = false;
57             continue;
58         }
59         
60         QStringList cols = QStringList::split(QChar('\t'), *it, true);
61         QString ssid, bssid, freq, signal, flags;
62         bssid = cols.count() > 0 ? cols[0] : "";
63         freq = cols.count() > 1 ? cols[1] : "";
64         signal = cols.count() > 2 ? cols[2] : "";
65         flags = cols.count() > 3 ? cols[3] : "";
66         ssid = cols.count() > 4 ? cols[4] : "";
67         new Q3ListViewItem(scanResultsView, ssid, bssid, freq, signal, flags);
68     }
69 }
70
71
72 void ScanResults::scanRequest()
73 {
74     char reply[10];
75     size_t reply_len = sizeof(reply);
76     
77     if (wpagui == NULL)
78         return;
79     
80     wpagui->ctrlRequest("SCAN", reply, &reply_len);
81 }
82
83
84 void ScanResults::getResults()
85 {
86     updateResults();
87 }
88
89
90
91
92 void ScanResults::bssSelected( Q3ListViewItem * sel )
93 {
94     NetworkConfig *nc = new NetworkConfig();
95     if (nc == NULL)
96         return;
97     nc->setWpaGui(wpagui);
98     nc->paramsFromScanResults(sel);
99     nc->show();
100     nc->exec();
101 }