X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e90c1d2a19361551eb07778280f22be3e759cf64..aa0ffd1d926cb1282fb75a1ce0e083421ade2f0b:/include/wx/dialup.h diff --git a/include/wx/dialup.h b/include/wx/dialup.h index 94509be84a..6c9feb4fc9 100644 --- a/include/wx/dialup.h +++ b/include/wx/dialup.h @@ -18,13 +18,17 @@ #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 @@ -65,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 @@ -90,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 @@ -129,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 { @@ -155,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