X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/275abf24e140159f2ac19b64b76737a6903b1319..59840ba3b16e4baf3228dd79c6b7ae40b55cf488:/include/wx/dialup.h diff --git a/include/wx/dialup.h b/include/wx/dialup.h index 032ad9eac7..6c9feb4fc9 100644 --- a/include/wx/dialup.h +++ b/include/wx/dialup.h @@ -12,15 +12,23 @@ #ifndef _WX_NET_H #define _WX_NET_H +#ifdef __GNUG__ + #pragma interface "dialup.h" +#endif + #if wxUSE_DIALUP_MANAGER +#include "wx/event.h" + // ---------------------------------------------------------------------------- -// constants +// misc // ---------------------------------------------------------------------------- -extern const wxChar *wxEmptyString; +class WXDLLEXPORT wxArrayString; + +WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString; -#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 +69,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 +91,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 +103,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 +150,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,14 +181,20 @@ 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); } }; // 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) (wxDialUpEventFunction) & func, NULL), +#define EVT_DIALUP_DISCONNECTED(func) \ + DECLARE_EVENT_TABLE_ENTRY( wxEVT_DIALUP_DISCONNECTED, -1, -1, (wxObjectEventFunction) (wxEventFunction) (wxDialUpEventFunction) & func, NULL), + #endif // wxUSE_DIALUP_MANAGER