summaryrefslogtreecommitdiff
path: root/noncore/net/opiestumbler/opiestumbler.h
blob: 263af6ea3737bcc1e0c2bdb827ff41b142de2f8f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#ifndef OPIESTUMBLER_H
#define OPIESTUMBLER_H

#include <qmainwindow.h>
#include <qlist.h>

#include "stumblerstation.h"

class QString;
class QPopupMenu;
class Stumbler;
class QCopChannel;
class QListView;
class QListViewItem;
class QFrame;
class QLabel;
class QProgressBar;
class QVBoxLayout;

namespace Opie{
    namespace Net {
        class OMacAddress;
        class OStation;
        class OManufacturerDB;
    }

    namespace Core {
        class OProcess;
    }
}
            

class OpieStumbler: public QMainWindow {
    Q_OBJECT
public:

    enum CurrentColumns { CURSSID, CURCHAN, CURSIGNAL, CURENC };
    enum HistoryColumns { HISSSID, HISCHAN, HISSIGNAL, HISENC, HISVENDOR };
    OpieStumbler(QWidget *parent = 0, const char *name = 0, WFlags f = 0);
    static QString appName() { return QString::fromLatin1("opiestumbler"); }
    static QString appCaption();
    void displayStations();
    QString manufacturer(const QString &mac, bool extended = false );
protected slots:
    void slotConfigure();
    void slotStartScanning();
    void slotStopScanning();
    void slotUpdateStations();
    void slotMessageReceived( const QCString &, const QByteArray & );
    void slotCurrentMousePressed(int button, QListViewItem *item, const QPoint &point, int c);
    void slotHistoryMousePressed(int button, QListViewItem *item, const QPoint &point, int c);
    void slotShowDetails();
    void slotLoadManufacturers();
    void slotJoinNetwork();
    void slotAssociated();
    void slotCheckDHCP();
    void slotCleanSplash();
protected:
    void loadConfig();
    
    QListView *m_listCurrent;
    QListView *m_listHistory;
    QString m_interface;
    Stumbler *m_stumbler;
    QCopChannel *m_channel;
    QList <Opie::Net::OStation> *m_stationsCurrent;
    QList <StumblerStation> m_stationsHistory;
    QPopupMenu *m_popupCurrent;
    QPopupMenu *m_popupHistory;
    Opie::Net::OManufacturerDB *m_db;
    QString m_mac;
    QString m_ssid;
    Opie::Core::OProcess *m_proc;
    QFrame *m_splash;
    QVBoxLayout *m_splashBox;
    QLabel *m_infoLabel;
    QProgressBar *m_pbar;
    
};

#endif /* OPIESTUMBLER_H */