X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/275abf24e140159f2ac19b64b76737a6903b1319..c845a1975a3d6d79b19a7ec77bd8e0b8b8850751:/include/wx/dialup.h diff --git a/include/wx/dialup.h b/include/wx/dialup.h index 032ad9eac7..63686fe30e 100644 --- a/include/wx/dialup.h +++ b/include/wx/dialup.h @@ -1,6 +1,6 @@ ///////////////////////////////////////////////////////////////////////////// // Name: wx/dialup.h -// Purpose: Network related wxWindows classes and functions +// Purpose: Network related wxWidgets classes and functions // Author: Vadim Zeitlin // Modified by: // Created: 07.07.99 @@ -9,18 +9,24 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifndef _WX_NET_H -#define _WX_NET_H +#ifndef _WX_DIALUP_H +#define _WX_DIALUP_H + +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) + #pragma interface "dialup.h" +#endif #if wxUSE_DIALUP_MANAGER +#include "wx/event.h" + // ---------------------------------------------------------------------------- -// constants +// misc // ---------------------------------------------------------------------------- -extern const wxChar *wxEmptyString; +class WXDLLIMPEXP_BASE wxArrayString; -#define WXDIALUP_MANAGER_DEFAULT_BEACONHOST _T("www.yahoo.com") +#define WXDIALUP_MANAGER_DEFAULT_BEACONHOST wxT("www.yahoo.com") // ---------------------------------------------------------------------------- // A class which groups functions dealing with connecting to the network from a @@ -61,8 +67,17 @@ public: // operations // ---------- + // fills the array with the names of all possible values for the first + // parameter to Dial() on this machine and returns their number (may be 0) + virtual size_t GetISPNames(wxArrayString& names) const = 0; + // dial the given ISP, use username and password to authentificate // + // if no nameOfISP is given, the function will select the default one + // + // if no username/password are given, the function will try to do without + // them, but will ask the user if really needed + // // if async parameter is FALSE, the function waits until the end of dialing // and returns TRUE upon successful completion. // if async is TRUE, the function only initiates the connection and returns @@ -74,7 +89,7 @@ public: bool async = TRUE) = 0; // returns TRUE if (async) dialing is in progress - virtual bool IsDialling() const = 0; + virtual bool IsDialing() const = 0; // cancel dialing the number initiated with Dial(async = TRUE) // NB: this won't result in DISCONNECTED event being sent @@ -86,6 +101,14 @@ public: // online status // ------------- + // returns TRUE if the computer has a permanent network connection (i.e. is + // on a LAN) and so there is no need to use Dial() function to go online + // + // NB: this functions tries to guess the result and it is not always + // guaranteed to be correct, so it's better to ask user for + // confirmation or give him a possibility to override it + virtual bool IsAlwaysOnline() const = 0; + // returns TRUE if the computer is connected to the network: under Windows, // this just means that a RAS connection exists, under Unix we check that // the "well-known host" (as specified by SetWellKnownHost) is reachable @@ -125,14 +148,19 @@ public: // Sets the commands to start up the network and to hang up again. Used by // the Unix implementations only. virtual void - SetConnectCommand(const wxString& commandDial = _T("/usr/bin/pon"), - const wxString& commandHangup = _T("/usr/bin/poff")) = 0; + SetConnectCommand(const wxString& commandDial = wxT("/usr/bin/pon"), + const wxString& commandHangup = wxT("/usr/bin/poff")) = 0; }; // ---------------------------------------------------------------------------- -// DIALUP events processing +// wxDialUpManager events // ---------------------------------------------------------------------------- +BEGIN_DECLARE_EVENT_TYPES() + DECLARE_EVENT_TYPE(wxEVT_DIALUP_CONNECTED, 450) + DECLARE_EVENT_TYPE(wxEVT_DIALUP_DISCONNECTED, 451) +END_DECLARE_EVENT_TYPES() + // the event class for the dialup events class WXDLLEXPORT wxDialUpEvent : public wxEvent { @@ -151,15 +179,24 @@ public: // process (i.e. does it result from our own attempt to establish the // connection)? bool IsOwnEvent() const { return m_id != 0; } + + // implement the base class pure virtual + virtual wxEvent *Clone() const { return new wxDialUpEvent(*this); } + +private: + DECLARE_NO_ASSIGN_CLASS(wxDialUpEvent) }; // the type of dialup event handler function -typedef void (wxObject::*wxDialUpEventFunction)(wxDialUpEvent&); +typedef void (wxEvtHandler::*wxDialUpEventFunction)(wxDialUpEvent&); // macros to catch dialup events -#define EVT_DIALUP_CONNECTED(func) { wxEVT_DIALUP_CONNECTED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxDialUpEventFunction) & func, NULL}, -#define EVT_DIALUP_DISCONNECTED(func) { wxEVT_DIALUP_DISCONNECTED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxDialUpEventFunction) & func, NULL}, +#define EVT_DIALUP_CONNECTED(func) \ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_DIALUP_CONNECTED, -1, -1, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxDialUpEventFunction, & func ), NULL), +#define EVT_DIALUP_DISCONNECTED(func) \ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_DIALUP_DISCONNECTED, -1, -1, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxDialUpEventFunction, & func ), NULL), + #endif // wxUSE_DIALUP_MANAGER -#endif // _WX_NET_H +#endif // _WX_DIALUP_H