]> git.saurik.com Git - wxWidgets.git/blobdiff - samples/sockets/client.cpp
version support
[wxWidgets.git] / samples / sockets / client.cpp
index 03a9f7247a8eb802f9f9d6478e6ebbf9f978a74f..3ba76e9bf276ac112d581ccab46e6f628632aa3b 100644 (file)
@@ -17,7 +17,7 @@
 // headers
 // --------------------------------------------------------------------------
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
 #  pragma implementation "client.cpp"
 #  pragma interface "client.cpp"
 #endif
@@ -43,7 +43,7 @@
 // --------------------------------------------------------------------------
 
 // the application icon
-#if defined(__WXGTK__) || defined(__WXMOTIF__)
+#if defined(__WXGTK__) || defined(__WXX11__) || defined(__WXMOTIF__) || defined(__WXMAC__)
 #  include "mondrian.xpm"
 #endif
 
@@ -210,8 +210,7 @@ MyFrame::MyFrame() : wxFrame((wxFrame *)NULL, -1,
 
   // Make a textctrl for logging
   m_text  = new wxTextCtrl(this, -1,
-                           _("Welcome to wxSocket demo: Client\n"
-                             "Client ready\n"),
+                           _("Welcome to wxSocket demo: Client\nClient ready\n"),
                            wxDefaultPosition, wxDefaultSize,
                            wxTE_MULTILINE | wxTE_READONLY);
 
@@ -245,8 +244,7 @@ void MyFrame::OnQuit(wxCommandEvent& WXUNUSED(event))
 
 void MyFrame::OnAbout(wxCommandEvent& WXUNUSED(event))
 {
-  wxMessageBox(_("wxSocket demo: Client\n"
-                 "(c) 1999 Guillermo Rodriguez Garcia\n"),
+  wxMessageBox(_("wxSocket demo: Client\n(c) 1999 Guillermo Rodriguez Garcia\n"),
                _("About Client"),
                wxOK | wxICON_INFORMATION, this);
 }
@@ -334,8 +332,8 @@ void MyFrame::OnOpenConnection(wxCommandEvent& WXUNUSED(event))
 
 void MyFrame::OnTest1(wxCommandEvent& WXUNUSED(event))
 {
-  const char *buf1;
-  char       *buf2;
+  const wxChar *buf1;
+  wxChar       *buf2;
   unsigned char len;
 
   // Disable socket menu entries (exception: Close Session)
@@ -345,7 +343,7 @@ void MyFrame::OnTest1(wxCommandEvent& WXUNUSED(event))
   m_text->AppendText(_("\n=== Test 1 begins ===\n"));
 
   // Tell the server which test we are running
-  int c = 0xBE;
+  unsigned char c = 0xBE;
   m_sock->Write(&c, 1);
 
   // Send some data and read it back. We know the size of the
@@ -363,8 +361,8 @@ void MyFrame::OnTest1(wxCommandEvent& WXUNUSED(event))
   m_sock->SetFlags(wxSOCKET_WAITALL);
 
   buf1 = _("Test string (less than 256 chars!)");
-  len  = wxStrlen(buf1) + 1;
-  buf2 = new char[len];
+  len  = (wxStrlen(buf1) + 1) * sizeof(wxChar);
+  buf2 = new wxChar[wxStrlen(buf1) + 1];
 
   m_text->AppendText(_("Sending a test buffer to the server ..."));
   m_sock->Write(&len, 1);
@@ -395,8 +393,8 @@ void MyFrame::OnTest1(wxCommandEvent& WXUNUSED(event))
 
 void MyFrame::OnTest2(wxCommandEvent& WXUNUSED(event))
 {
-  char *msg1;
-  char *msg2;
+  const wxChar *msg1;
+  wxChar *msg2;
   size_t len;
 
   // Disable socket menu entries (exception: Close Session)
@@ -406,7 +404,7 @@ void MyFrame::OnTest2(wxCommandEvent& WXUNUSED(event))
   m_text->AppendText(_("\n=== Test 2 begins ===\n"));
 
   // Tell the server which test we are running
-  int c = 0xCE;
+  unsigned char c = 0xCE;
   m_sock->Write(&c, 1);
 
   // Here we use ReadMsg and WriteMsg to send messages with
@@ -423,9 +421,9 @@ void MyFrame::OnTest2(wxCommandEvent& WXUNUSED(event))
     _("Test 2 ..."),
     _("Yes I like wxWindows!"));
 
-  msg1 = (char *)s.c_str();
-  len  = wxStrlen(msg1) + 1;
-  msg2 = new char[len];
+  msg1 = s.c_str();
+  len  = (wxStrlen(msg1) + 1) * sizeof(wxChar);
+  msg2 = new wxChar[wxStrlen(msg1) + 1];
 
   m_text->AppendText(_("Sending the string with WriteMsg ..."));
   m_sock->WriteMsg(msg1, len);
@@ -475,7 +473,7 @@ void MyFrame::OnTest3(wxCommandEvent& WXUNUSED(event))
   m_text->AppendText(_("\n=== Test 3 begins ===\n"));
 
   // Tell the server which test we are running
-  int c = 0xDE;
+  unsigned char c = 0xDE;
   m_sock->Write(&c, 1);
 
   // This test also is similar to the first one but it sends a
@@ -486,8 +484,7 @@ void MyFrame::OnTest3(wxCommandEvent& WXUNUSED(event))
   m_sock->SetFlags(wxSOCKET_WAITALL);
 
   // Note that len is in kbytes here!
-  // Also note that Linux kernel 2.0.36 gives up at len > 27.
-  len  = 28;
+  len  = 32;
   buf1 = new char[len * 1024];
   buf2 = new char[len * 1024];
 
@@ -543,7 +540,7 @@ void MyFrame::OnTestURL(wxCommandEvent& WXUNUSED(event))
   m_text->AppendText(_("\n=== URL test begins ===\n"));
   wxString urlname = wxGetTextFromUser(_("Enter an URL to get"),
                                        _("URL:"),
-                                       _("http://localhost"));
+                                       _T("http://localhost"));
 
   // Parse the URL
   wxURL url(urlname);
@@ -567,16 +564,14 @@ void MyFrame::OnTestURL(wxCommandEvent& WXUNUSED(event))
 
   // Print the contents type and file size
   wxString s;
-  s.Printf(_("Contents type: %s\n"
-             "File size: %i\n"
-             "Starting to download...\n"),
+  s.Printf(_("Contents type: %s\nFile size: %i\nStarting to download...\n"),
              url.GetProtocol().GetContentType().c_str(),
              data->GetSize());
   m_text->AppendText(s);
   wxYield();
 
   // Get the data
-  wxFileOutputStream sout(wxString("test.url"));
+  wxFileOutputStream sout( wxT("test.url") );
   if (!sout.Ok())
   {
     m_text->AppendText(_("Error: couldn't open file for output\n"));
@@ -596,7 +591,7 @@ void MyFrame::OnSocketEvent(wxSocketEvent& event)
 {
   wxString s = _("OnSocketEvent: ");
 
-  switch(event.SocketEvent())
+  switch(event.GetSocketEvent())
   {
     case wxSOCKET_INPUT      : s.Append(_("wxSOCKET_INPUT\n")); break;
     case wxSOCKET_LOST       : s.Append(_("wxSOCKET_LOST\n")); break;