You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
wlassistant/src/wlassistant.h

124 lines
4.6 KiB

/***************************************************************************
* Copyright (C) 2005 by Pawel Nawrocki *
* pnawrocki@interia.pl *
* *
* 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., *
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. *
***************************************************************************/
#ifndef WLASSISTANT_H
#define WLASSISTANT_H
//connection check interval in msec
#define WA_CONNECTION_CHECK_INTERVAL 5000
#include <tqlistview.h>
#include "ui_main.h"
#include "waconfig.h"
#include "netparams.h"
class TQTimer;
class TQProcess;
class NetListViewItem;
class WirelessAssistant : public mainWindow
{
TQ_OBJECT
public:
/*$PUBLIC_FUNCTIONS$*/
WirelessAssistant(TQWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 );
~WirelessAssistant();
static TQString getVal(const TQString & str, const TQString & rxs);
public slots:
/*$PUBLIC_SLOTS$*/
virtual void netConnect();
virtual void netScan();
virtual void netDisconnect( const bool & quiet = false);
private:
void netScan( const WANetParams & np );
void netConnect( const WANetParams & np );
void setDNS( const WANetParams & np );
void readConfig();
void saveSettings();
void setUi(int uiState);
void setSingleClick(bool i);
TQString runCommand( const TQStringList & cmd, int timeout = 0, bool detached = 0 );
void setNetParamsFromList( TQListViewItem* lvi );
bool setNetParamsFromConfig( const TQString & s );
TQString matchEssidForAp( const TQString & ap );
bool radioEnabled();
TQListViewItem* getItemByAp( const TQString & ap );
TQListViewItem* getItemByEssid( const TQString & essid );
void setConnectedItem( const TQString & netid );
TQString getGateway();
bool dhcpClientRunning();
TQStringList interfaceList();
bool generateWpaConfigFile( const TQString& essid, const TQStringList& wpaSettings, const TQString& wpaKey );
bool setWpaClientEnabled( bool e, const TQString& iface = 0, TQString driver = 0 );
TQStringList NetParamsList;
TQStringList execsNotFound;
NetListViewItem* connectedItem;
TQString wpaConfigFile;
/// settings saved in wlassistantrc
bool autoQuit;
bool autoReconnect;
bool autoConnect;
bool groupAPs;
bool wpaAvailable;
int DelayBeforeScanning;
int DhcpTimeout;
/*TQString dhcpcdInfoPath;
TQString dhclientInfoPath;
TQString dhcpcdPidPath;
TQString dhclientPidPath;*/
/// end settings.
WACommands Commands;
WANetParams NetParams;
TQTimer* timerGui;
TQTimer* timerConnectionCheck;
protected slots:
/*$PROTECTED_SLOTS$*/
virtual void init();
virtual void netAutoConnect();
virtual void parseScan( const TQString & output );
virtual void setDev( const TQString & ifname);
virtual void setNetListColumns();
virtual void updateConfiguration(int category = -1);
virtual void updateConnectedItem();
virtual void showItemContextMenu( TQListViewItem* i, const TQPoint& p, int c);
virtual void editNetParams();
virtual void removeNetParams();
virtual void updateNetParams();
virtual void itemAction();
virtual void checkConnectionStatus();
virtual void updateConnectButton(TQListViewItem* lvi);
virtual void setMouseBehaviour();
virtual void togglePage(bool options );
virtual void enableAllMessages();
virtual bool close();
};
#endif