summaryrefslogtreecommitdiff
path: root/noncore
Side-by-side diff
Diffstat (limited to 'noncore') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/wellenreiter/gui/gui.pro4
-rw-r--r--noncore/net/wellenreiter/gui/hexwindow.cpp35
-rw-r--r--noncore/net/wellenreiter/gui/hexwindow.h38
-rw-r--r--noncore/net/wellenreiter/gui/logwindow.cpp38
-rw-r--r--noncore/net/wellenreiter/gui/logwindow.h38
-rw-r--r--noncore/net/wellenreiter/gui/wellenreiter.cpp11
-rw-r--r--noncore/net/wellenreiter/gui/wellenreiterbase.cpp93
-rw-r--r--noncore/net/wellenreiter/gui/wellenreiterbase.h11
8 files changed, 176 insertions, 92 deletions
diff --git a/noncore/net/wellenreiter/gui/gui.pro b/noncore/net/wellenreiter/gui/gui.pro
index fbe2c11..6b9944d 100644
--- a/noncore/net/wellenreiter/gui/gui.pro
+++ b/noncore/net/wellenreiter/gui/gui.pro
@@ -1,11 +1,11 @@
DESTDIR = $(OPIEDIR)/bin
TEMPLATE = app
CONFIG = qt warn_on debug
#CONFIG = qt warn_on release
-HEADERS = wellenreiterbase.h wellenreiter.h scanlistitem.h scanlist.h
-SOURCES = main.cpp wellenreiterbase.cpp wellenreiter.cpp scanlistitem.cpp scanlist.cpp
+HEADERS = wellenreiterbase.h wellenreiter.h scanlistitem.h scanlist.h logwindow.h hexwindow.h
+SOURCES = main.cpp wellenreiterbase.cpp wellenreiter.cpp scanlistitem.cpp scanlist.cpp logwindow.cpp hexwindow.cpp
INCLUDEPATH += $(OPIEDIR)/include ../daemon
DEPENDPATH += $(OPIEDIR)/include ../daemon
LIBS += -lqpe -lopie -L../libwellenreiter/source -lwellenreiter
INTERFACES = wellenreitertemplate.ui
TARGET = wellenreiter
diff --git a/noncore/net/wellenreiter/gui/hexwindow.cpp b/noncore/net/wellenreiter/gui/hexwindow.cpp
new file mode 100644
index 0000000..91aa6f7
--- a/dev/null
+++ b/noncore/net/wellenreiter/gui/hexwindow.cpp
@@ -0,0 +1,35 @@
+/**********************************************************************
+** Copyright (C) 2002 Michael 'Mickey' Lauer. All rights reserved.
+**
+** This file is part of Opie Environment.
+**
+** This file may be distributed and/or modified under the terms of the
+** GNU General Public License version 2 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file.
+**
+** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
+** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+**
+**********************************************************************/
+
+#include "hexwindow.h"
+#include <qmultilineedit.h>
+
+MHexWindow::MHexWindow( QWidget * parent, const char * name, WFlags f )
+ :QVBox( parent, name, f )
+{
+ ledit = new QMultiLineEdit( this );
+
+ // FIXME: Set properties( font, read-only, etc...)
+
+};
+
+void MHexWindow::log( QString text )
+{
+
+ ledit->append( text );
+
+};
+
+
diff --git a/noncore/net/wellenreiter/gui/hexwindow.h b/noncore/net/wellenreiter/gui/hexwindow.h
new file mode 100644
index 0000000..eec1be0
--- a/dev/null
+++ b/noncore/net/wellenreiter/gui/hexwindow.h
@@ -0,0 +1,38 @@
+/**********************************************************************
+** Copyright (C) 2002 Michael 'Mickey' Lauer. All rights reserved.
+**
+** This file is part of Opie Environment.
+**
+** This file may be distributed and/or modified under the terms of the
+** GNU General Public License version 2 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file.
+**
+** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
+** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+**
+**********************************************************************/
+
+#ifndef HEXWINDOW_H
+#define HEXWINDOW_H
+
+#include <qvbox.h>
+
+class QString;
+class QMultiLineEdit;
+
+class MHexWindow: public QVBox
+{
+
+ public:
+ MHexWindow( QWidget * parent = 0, const char * name = "MHexWindow", WFlags f = 0 );
+
+ void log( QString text );
+
+ protected:
+ QMultiLineEdit* ledit;
+
+};
+
+#endif
+
diff --git a/noncore/net/wellenreiter/gui/logwindow.cpp b/noncore/net/wellenreiter/gui/logwindow.cpp
new file mode 100644
index 0000000..dafb429
--- a/dev/null
+++ b/noncore/net/wellenreiter/gui/logwindow.cpp
@@ -0,0 +1,38 @@
+/**********************************************************************
+** Copyright (C) 2002 Michael 'Mickey' Lauer. All rights reserved.
+**
+** This file is part of Opie Environment.
+**
+** This file may be distributed and/or modified under the terms of the
+** GNU General Public License version 2 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file.
+**
+** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
+** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+**
+**********************************************************************/
+
+#include "logwindow.h"
+#include <qmultilineedit.h>
+#include <qdatetime.h>
+
+MLogWindow::MLogWindow( QWidget * parent, const char * name, WFlags f )
+ :QVBox( parent, name, f )
+{
+ ledit = new QMultiLineEdit( this );
+
+ // FIXME: Set properties( font, read-only, etc...)
+
+};
+
+void MLogWindow::log( QString text )
+{
+ QTime time = QTime::currentTime();
+ QString line;
+ line.sprintf( "[%s] %s", (const char*) time.toString(), (const char*) text );
+ ledit->append( line );
+
+};
+
+
diff --git a/noncore/net/wellenreiter/gui/logwindow.h b/noncore/net/wellenreiter/gui/logwindow.h
new file mode 100644
index 0000000..325f8d0
--- a/dev/null
+++ b/noncore/net/wellenreiter/gui/logwindow.h
@@ -0,0 +1,38 @@
+/**********************************************************************
+** Copyright (C) 2002 Michael 'Mickey' Lauer. All rights reserved.
+**
+** This file is part of Opie Environment.
+**
+** This file may be distributed and/or modified under the terms of the
+** GNU General Public License version 2 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file.
+**
+** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
+** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
+**
+**********************************************************************/
+
+#ifndef LOGWINDOW_H
+#define LOGWINDOW_H
+
+#include <qvbox.h>
+
+class QString;
+class QMultiLineEdit;
+
+class MLogWindow: public QVBox
+{
+
+ public:
+ MLogWindow( QWidget * parent = 0, const char * name = "MLogWindow", WFlags f = 0 );
+
+ void log( QString text );
+
+ protected:
+ QMultiLineEdit* ledit;
+
+};
+
+#endif
+
diff --git a/noncore/net/wellenreiter/gui/wellenreiter.cpp b/noncore/net/wellenreiter/gui/wellenreiter.cpp
index 11cdaef..e983b4d 100644
--- a/noncore/net/wellenreiter/gui/wellenreiter.cpp
+++ b/noncore/net/wellenreiter/gui/wellenreiter.cpp
@@ -5,103 +5,112 @@
**
** This file may be distributed and/or modified under the terms of the
** GNU General Public License version 2 as published by the Free Software
** Foundation and appearing in the file LICENSE.GPL included in the
** packaging of this file.
**
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
**
***********************************************************************/
// Qt
#include <qpushbutton.h>
// Standard
#include <unistd.h>
#include <sys/types.h>
// Local
#include "wellenreiter.h"
#include "scanlistitem.h"
+#include "logwindow.h"
+#include "hexwindow.h"
#include "../libwellenreiter/source/sock.hh" // <--- ugly path, FIX THIS!
#include "../libwellenreiter/source/proto.hh" // <--- ugly path, FIX THIS!
#include "../daemon/source/config.hh" // <--- ugly path, FIX THIS!
Wellenreiter::Wellenreiter( QWidget* parent, const char* name, WFlags fl )
: WellenreiterBase( parent, name, fl )
{
+ logwindow->log( "(i) Wellenreiter has been started." );
+
connect( button, SIGNAL( clicked() ), this, SLOT( buttonClicked() ) );
netview->setColumnWidthMode( 1, QListView::Manual );
//
// setup socket for daemon communication and start poller
//
daemon_fd = commsock( GUIADDR, GUIPORT );
if ( daemon_fd == -1 )
+ {
+ logwindow->log( "(E) Couldn't get file descriptor for commsocket." );
qDebug( "D'oh! Could not get file descriptor for daemon-->gui communication socket." );
+ }
else
startTimer( 700 );
}
Wellenreiter::~Wellenreiter()
{
// no need to delete child widgets, Qt does it all for us
}
void Wellenreiter::handleMessage()
{
// FIXME: receive message and handle it
qDebug( "received message from daemon." );
char buffer[128];
int result = recvcomm( &daemon_fd, (char*) &buffer, sizeof(buffer) );
qDebug( "received %d from recvcomm", result );
/*
typedef struct {
int net_type; 1 = Accesspoint ; 2 = Ad-Hoc
int ssid_len; Length of SSID
int channel; Channel
int wep; 1 = WEP enabled ; 0 = disabled
char mac[64]; MAC address of Accesspoint
char bssid[128]; BSSID of Accesspoint
} wl_network_t;
*/
- qDebug( "Sniffer sent: '%s'", buffer );
+ qDebug( "Sniffer sent: '%s'", (const char*) &buffer );
+ hexwindow->log( (const char*) &buffer );
if ( result == NETFOUND ) /* new network found */
{
+ logwindow->log( "(i) found new network" );
qDebug( "Sniffer said: new network found." );
wl_network_t n;
get_network_found( &n, (char*) &buffer );
qDebug( "Sniffer said: net_type is %d.", n.net_type );
qDebug( "Sniffer said: MAC is %s", (const char*) &n.mac );
//n.bssid[n.ssid_len] = "\0";
QString type;
if ( n.net_type == 1 )
type = "managed";
else
type = "adhoc";
addNewItem( type, n.bssid, QString( (const char*) &n.mac ), n.wep, n.channel, 0 );
}
else
{
qDebug( "unknown sniffer command." );
diff --git a/noncore/net/wellenreiter/gui/wellenreiterbase.cpp b/noncore/net/wellenreiter/gui/wellenreiterbase.cpp
index d938561..7849e12 100644
--- a/noncore/net/wellenreiter/gui/wellenreiterbase.cpp
+++ b/noncore/net/wellenreiter/gui/wellenreiterbase.cpp
@@ -7,48 +7,51 @@
** GNU General Public License version 2 as published by the Free Software
** Foundation and appearing in the file LICENSE.GPL included in the
** packaging of this file.
**
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
**
***********************************************************************/
#include "wellenreiterbase.h"
#include <qheader.h>
#include <qlabel.h>
#include <qlistview.h>
#include <qmultilineedit.h>
#include <qpushbutton.h>
#include <opie/otabwidget.h>
#include <qlayout.h>
#include <qvariant.h>
#include <qtooltip.h>
#include <qwhatsthis.h>
#include <qimage.h>
#include <qpixmap.h>
+#include "logwindow.h"
+#include "hexwindow.h"
+
static const char* const image0_data[] = {
"150 105 949 2",
"g0 c #000000",
"g3 c #000008",
"g1 c #000400",
"i5 c #000408",
"g2 c #080000",
"hD c #080008",
"hB c #080400",
"g4 c #080408",
"gA c #080808",
"gz c #080c08",
"kk c #080c10",
"ij c #100000",
"kQ c #100408",
"hA c #100c10",
"gB c #101010",
"lD c #101410",
"ie c #180000",
"iC c #180400",
"gC c #181418",
"lb c #181810",
"gy c #181818",
"kM c #181c18",
@@ -1101,127 +1104,53 @@ WellenreiterBase::WellenreiterBase( QWidget* parent, const char* name, WFlags f
WellenreiterBaseLayout = new QVBoxLayout( this );
WellenreiterBaseLayout->setSpacing( 2 );
WellenreiterBaseLayout->setMargin( 0 );
TabWidget = new OTabWidget( this, "TabWidget", OTabWidget::Global );
ap = new QWidget( TabWidget, "ap" );
apLayout = new QVBoxLayout( ap );
apLayout->setSpacing( 2 );
apLayout->setMargin( 2 );
netview = new QListView( ap, "netview" );
netview->addColumn( tr( "SSID" ) );
netview->addColumn( tr( "Sig" ) );
netview->addColumn( tr( "AP" ) );
netview->addColumn( tr( "Chn" ) );
netview->addColumn( tr( "W" ) );
netview->addColumn( tr( "T" ) );
netview->setFrameShape( QListView::StyledPanel );
netview->setFrameShadow( QListView::Sunken );
netview->setRootIsDecorated( TRUE );
apLayout->addWidget( netview );
TabWidget->addTab( ap, "wellenreiter/networks", tr( "Networks" ) );
- Log = new QWidget( TabWidget, "Log" );
- LogLayout = new QVBoxLayout( Log );
- LogLayout->setSpacing( 2 );
- LogLayout->setMargin( 2 );
-
- Log_2 = new QMultiLineEdit( Log, "Log_2" );
- Log_2->setText( tr( "11/18 18:15 - log started\n"
-"11/19 20:13 - new net : \"ELAN\"\n"
-"11/19 20:15 - new station : \"pegasus\"" ) );
- LogLayout->addWidget( Log_2 );
- TabWidget->addTab( Log, "wellenreiter/log", tr( "Log" ) );
-
- tab = new QWidget( TabWidget, "tab" );
- tabLayout = new QGridLayout( tab );
- tabLayout->setSpacing( 2 );
- tabLayout->setMargin( 2 );
-
- Log_2_2 = new QMultiLineEdit( tab, "Log_2_2" );
- QPalette pal;
- QColorGroup cg;
- cg.setColor( QColorGroup::Foreground, white );
- cg.setColor( QColorGroup::Button, QColor( 192, 192, 192) );
- cg.setColor( QColorGroup::Light, white );
- cg.setColor( QColorGroup::Midlight, QColor( 223, 223, 223) );
- cg.setColor( QColorGroup::Dark, QColor( 96, 96, 96) );
- cg.setColor( QColorGroup::Mid, QColor( 128, 128, 128) );
- cg.setColor( QColorGroup::Text, white );
- cg.setColor( QColorGroup::BrightText, white );
- cg.setColor( QColorGroup::ButtonText, white );
- cg.setColor( QColorGroup::Base, black );
- cg.setColor( QColorGroup::Background, black );
- cg.setColor( QColorGroup::Shadow, black );
- cg.setColor( QColorGroup::Highlight, QColor( 0, 0, 128) );
- cg.setColor( QColorGroup::HighlightedText, white );
- pal.setActive( cg );
- cg.setColor( QColorGroup::Foreground, white );
- cg.setColor( QColorGroup::Button, QColor( 192, 192, 192) );
- cg.setColor( QColorGroup::Light, white );
- cg.setColor( QColorGroup::Midlight, QColor( 220, 220, 220) );
- cg.setColor( QColorGroup::Dark, QColor( 96, 96, 96) );
- cg.setColor( QColorGroup::Mid, QColor( 128, 128, 128) );
- cg.setColor( QColorGroup::Text, white );
- cg.setColor( QColorGroup::BrightText, white );
- cg.setColor( QColorGroup::ButtonText, white );
- cg.setColor( QColorGroup::Base, black );
- cg.setColor( QColorGroup::Background, black );
- cg.setColor( QColorGroup::Shadow, black );
- cg.setColor( QColorGroup::Highlight, QColor( 0, 0, 128) );
- cg.setColor( QColorGroup::HighlightedText, white );
- pal.setInactive( cg );
- cg.setColor( QColorGroup::Foreground, QColor( 128, 128, 128) );
- cg.setColor( QColorGroup::Button, QColor( 192, 192, 192) );
- cg.setColor( QColorGroup::Light, white );
- cg.setColor( QColorGroup::Midlight, QColor( 220, 220, 220) );
- cg.setColor( QColorGroup::Dark, QColor( 96, 96, 96) );
- cg.setColor( QColorGroup::Mid, QColor( 128, 128, 128) );
- cg.setColor( QColorGroup::Text, QColor( 128, 128, 128) );
- cg.setColor( QColorGroup::BrightText, white );
- cg.setColor( QColorGroup::ButtonText, QColor( 128, 128, 128) );
- cg.setColor( QColorGroup::Base, black );
- cg.setColor( QColorGroup::Background, black );
- cg.setColor( QColorGroup::Shadow, black );
- cg.setColor( QColorGroup::Highlight, QColor( 0, 0, 128) );
- cg.setColor( QColorGroup::HighlightedText, white );
- pal.setDisabled( cg );
- Log_2_2->setPalette( pal );
- QFont Log_2_2_font( Log_2_2->font() );
- Log_2_2_font.setFamily( "adobe-courier" );
- Log_2_2_font.setPointSize( 8 );
- Log_2_2->setFont( Log_2_2_font );
- Log_2_2->setText( tr( "00 0a 20 00 a8 00 e2 00 ...ESD..\n"
-"00 0a 20 00 a8 00 e2 00 .*&23...\n"
-"00 0a 20 00 a8 00 e2 00 ........\n"
-"00 0a 20 00 a8 00 e2 00 ........\n"
-"00 0a 20 00 a8 00 e2 00 ........\n"
-"00 0a 20 00 a8 00 e2 00 ...BRA22" ) );
+ logwindow = new MLogWindow( TabWidget, "Log" );
+ TabWidget->addTab( logwindow, "wellenreiter/log", tr( "Log" ) );
- tabLayout->addWidget( Log_2_2, 0, 0 );
- TabWidget->addTab( tab, "wellenreiter/hex", tr( "Hex" ) );
+ hexwindow = new MHexWindow( TabWidget, "tab" );
+ TabWidget->addTab( hexwindow, "wellenreiter/hex", tr( "Hex" ) );
about = new QWidget( TabWidget, "about" );
aboutLayout = new QGridLayout( about );
aboutLayout->setSpacing( 6 );
aboutLayout->setMargin( 11 );
PixmapLabel1_3_2 = new QLabel( about, "PixmapLabel1_3_2" );
PixmapLabel1_3_2->setSizePolicy( QSizePolicy( (QSizePolicy::SizeType)0, (QSizePolicy::SizeType)0, PixmapLabel1_3_2->sizePolicy().hasHeightForWidth() ) );
PixmapLabel1_3_2->setFrameShape( QLabel::Panel );
PixmapLabel1_3_2->setFrameShadow( QLabel::Sunken );
PixmapLabel1_3_2->setLineWidth( 2 );
PixmapLabel1_3_2->setMargin( 0 );
PixmapLabel1_3_2->setMidLineWidth( 0 );
PixmapLabel1_3_2->setPixmap( image0 );
PixmapLabel1_3_2->setScaledContents( TRUE );
PixmapLabel1_3_2->setAlignment( int( QLabel::AlignCenter ) );
aboutLayout->addWidget( PixmapLabel1_3_2, 0, 0 );
TextLabel1_4_2 = new QLabel( about, "TextLabel1_4_2" );
QFont TextLabel1_4_2_font( TextLabel1_4_2->font() );
TextLabel1_4_2_font.setFamily( "adobe-helvetica" );
TextLabel1_4_2_font.setPointSize( 10 );
TextLabel1_4_2->setFont( TextLabel1_4_2_font );
@@ -1246,36 +1175,36 @@ WellenreiterBase::WellenreiterBase( QWidget* parent, const char* name, WFlags f
// tab order
setTabOrder( button, netview );
setTabOrder( netview, TabWidget );
TabWidget->setCurrentTab( tr( "Networks" ) );
}
/*
* Destroys the object and frees any allocated resources
*/
WellenreiterBase::~WellenreiterBase()
{
// no need to delete child widgets, Qt does it all for us
}
/*
* Main event handler. Reimplemented to handle application
* font changes
*/
bool WellenreiterBase::event( QEvent* ev )
{
bool ret = QWidget::event( ev );
if ( ev->type() == QEvent::ApplicationFontChange ) {
- QFont Log_2_font( Log_2->font() );
- Log_2_font.setFamily( "adobe-courier" );
- Log_2_font.setPointSize( 8 );
- Log_2->setFont( Log_2_font );
+ //QFont Log_2_font( Log_2->font() );
+ //Log_2_font.setFamily( "adobe-courier" );
+ //Log_2_font.setPointSize( 8 );
+ //Log_2->setFont( Log_2_font );
QFont TextLabel1_4_2_font( TextLabel1_4_2->font() );
TextLabel1_4_2_font.setFamily( "adobe-helvetica" );
TextLabel1_4_2_font.setPointSize( 10 );
TextLabel1_4_2->setFont( TextLabel1_4_2_font );
}
return ret;
}
diff --git a/noncore/net/wellenreiter/gui/wellenreiterbase.h b/noncore/net/wellenreiter/gui/wellenreiterbase.h
index b133d28..b7bd820 100644
--- a/noncore/net/wellenreiter/gui/wellenreiterbase.h
+++ b/noncore/net/wellenreiter/gui/wellenreiterbase.h
@@ -3,58 +3,55 @@
**
** This file is part of Opie Environment.
**
** This file may be distributed and/or modified under the terms of the
** GNU General Public License version 2 as published by the Free Software
** Foundation and appearing in the file LICENSE.GPL included in the
** packaging of this file.
**
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
**
**********************************************************************/
#ifndef WELLENREITERBASE_H
#define WELLENREITERBASE_H
#include <qvariant.h>
#include <qwidget.h>
class QVBoxLayout;
class QHBoxLayout;
class QGridLayout;
class QLabel;
class QListView;
class QListViewItem;
-class QMultiLineEdit;
class QPushButton;
class OTabWidget;
+class MLogWindow;
+class MHexWindow;
class WellenreiterBase : public QWidget
{
Q_OBJECT
public:
WellenreiterBase( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
~WellenreiterBase();
OTabWidget* TabWidget;
QWidget* ap;
QListView* netview;
- QWidget* Log;
- QMultiLineEdit* Log_2;
- QWidget* tab;
- QMultiLineEdit* Log_2_2;
+ MLogWindow* logwindow;
+ MHexWindow* hexwindow;
QWidget* about;
QLabel* PixmapLabel1_3_2;
QLabel* TextLabel1_4_2;
QPushButton* button;
protected:
QVBoxLayout* WellenreiterBaseLayout;
QVBoxLayout* apLayout;
- QVBoxLayout* LogLayout;
- QGridLayout* tabLayout;
QGridLayout* aboutLayout;
bool event( QEvent* );
};
#endif // WELLENREITERBASE_H