|
|
|
/*
|
|
|
|
*
|
|
|
|
* kPPP: A pppd front end for the KDE project
|
|
|
|
*
|
|
|
|
* $Id$
|
|
|
|
*
|
|
|
|
* Copyright (C) 1997 Bernd Johannes Wuebben
|
|
|
|
* wuebben@math.cornell.edu
|
|
|
|
*
|
|
|
|
* Copyright (C) 1998-2002 Harri Porten <porten@kde.org>
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Library 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
|
|
|
|
* Library General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Library 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 __KPPPWIDGET_H__
|
|
|
|
#define __KPPPWIDGET_H__
|
|
|
|
|
|
|
|
#include <tqstring.h>
|
|
|
|
|
|
|
|
#include <dcopclient.h>
|
|
|
|
|
|
|
|
#include "accounting.h"
|
|
|
|
#include "conwindow.h"
|
|
|
|
#include "accounts.h"
|
|
|
|
#include "connect.h"
|
|
|
|
#include "debug.h"
|
|
|
|
#include "pppstatdlg.h"
|
|
|
|
|
|
|
|
#include "KPPPIface.h"
|
|
|
|
|
|
|
|
class GeneralWidget;
|
|
|
|
class ModemsWidget;
|
|
|
|
class ModemWidget;
|
|
|
|
class ModemWidget2;
|
|
|
|
class GraphSetup;
|
|
|
|
class AboutWidget;
|
|
|
|
class PPPStats;
|
|
|
|
class KDialogBase;
|
|
|
|
class KPushButton;
|
|
|
|
|
|
|
|
class SignalEvent : public TQEvent {
|
|
|
|
public:
|
|
|
|
SignalEvent(int s) : TQEvent(User), sig(s) { }
|
|
|
|
int sigType() const { return sig; }
|
|
|
|
private:
|
|
|
|
int sig;
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
class KPPPWidget : public TQWidget, virtual public KpppIface {
|
|
|
|
TQ_OBJECT
|
|
|
|
|
|
|
|
public:
|
|
|
|
|
|
|
|
KPPPWidget( TQWidget *parent=0, const char *name=0 );
|
|
|
|
~KPPPWidget();
|
|
|
|
|
|
|
|
void setPW_Edit(const TQString &);
|
|
|
|
virtual bool eventFilter(TQObject *, TQEvent *);
|
|
|
|
|
|
|
|
void setQuitOnDisconnect (bool b);
|
|
|
|
bool quitOnDisconnect () {return m_bQuitOnDisconnect;};
|
|
|
|
|
|
|
|
private slots:
|
|
|
|
void newdefaultaccount(int);
|
|
|
|
void newdefaultmodem(int);
|
|
|
|
void expandbutton();
|
|
|
|
void quitbutton();
|
|
|
|
void helpbutton();
|
|
|
|
void setup();
|
|
|
|
void rulesetLoadError();
|
|
|
|
void usernameChanged(const TQString &);
|
|
|
|
void passwordChanged(const TQString &);
|
|
|
|
void enterPressedInID();
|
|
|
|
void enterPressedInPW();
|
|
|
|
void saveMyself();
|
|
|
|
void shutDown();
|
|
|
|
|
|
|
|
void delayedDisconnect();
|
|
|
|
|
|
|
|
public slots:
|
|
|
|
void beginConnect();
|
|
|
|
void resetaccounts();
|
|
|
|
void resetmodems();
|
|
|
|
void resetCosts(const TQString &);
|
|
|
|
void resetVolume(const TQString &);
|
|
|
|
void disconnect();
|
|
|
|
void log_window_toggled(bool on);
|
|
|
|
void startAccounting();
|
|
|
|
void stopAccounting();
|
|
|
|
void showStats();
|
|
|
|
bool isConnected() const {return connected;};
|
|
|
|
signals:
|
|
|
|
void begin_connect();
|
|
|
|
void cmdl_start();
|
|
|
|
|
|
|
|
public:
|
|
|
|
TQCheckBox *log;
|
|
|
|
bool connected;
|
|
|
|
DebugWidget *debugwindow;
|
|
|
|
TQString con_speed;
|
|
|
|
ConnectWidget *con;
|
|
|
|
ConWindow *con_win;
|
|
|
|
PPPStatsDlg *statdlg;
|
|
|
|
AccountingBase *acct;
|
|
|
|
KPushButton *quit_b;
|
|
|
|
PPPStats *stats;
|
|
|
|
|
|
|
|
private:
|
|
|
|
void prepareSetupDialog();
|
|
|
|
void interruptConnection();
|
|
|
|
void sigChld();
|
|
|
|
void sigPPPDDied();
|
|
|
|
TQString encodeWord(const TQString &s);
|
|
|
|
void showNews ();
|
|
|
|
void setButtons();
|
|
|
|
|
|
|
|
TQString ruleset_load_errmsg;
|
|
|
|
|
|
|
|
TQGridLayout *l1;
|
|
|
|
KPushButton *help_b;
|
|
|
|
KPushButton *setup_b;
|
|
|
|
TQFrame *fline;
|
|
|
|
TQFrame *fline1;
|
|
|
|
TQPushButton *connect_b;
|
|
|
|
TQComboBox *connectto_c;
|
|
|
|
TQComboBox *modem_c;
|
|
|
|
TQLabel *ID_Label;
|
|
|
|
TQLabel *PW_Label;
|
|
|
|
TQLineEdit *ID_Edit;
|
|
|
|
TQLineEdit *PW_Edit;
|
|
|
|
TQLabel *label1;
|
|
|
|
TQLabel *label2;
|
|
|
|
TQLabel *label3;
|
|
|
|
TQLabel *label4;
|
|
|
|
TQLabel *label5;
|
|
|
|
TQLabel *label6;
|
|
|
|
TQLabel *label7;
|
|
|
|
TQLabel *radio_label;
|
|
|
|
|
|
|
|
|
|
|
|
KDialogBase *tabWindow;
|
|
|
|
AccountWidget *accounts;
|
|
|
|
GeneralWidget *general;
|
|
|
|
ModemsWidget *modems;
|
|
|
|
GraphSetup *graph;
|
|
|
|
AboutWidget *about;
|
|
|
|
|
|
|
|
|
|
|
|
TQString m_strCmdlAccount;
|
|
|
|
TQString m_strCmdlModem;
|
|
|
|
bool m_bQuitOnDisconnect;
|
|
|
|
bool m_bCmdlAccount;
|
|
|
|
bool m_bCmdlModem;
|
|
|
|
bool m_bModemCShown;
|
|
|
|
|
|
|
|
|
|
|
|
TQTimer *disconnectTimer;
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|