]> git.saurik.com Git - wxWidgets.git/blobdiff - samples/typetest/typetest.cpp
1. corrected "notebook selection handling" event handler to work
[wxWidgets.git] / samples / typetest / typetest.cpp
index 1cd285b13bff65452f9c0bbdbb019c68fce4ff78..4cdeff9cbb059017d4c6e6d1aaf27819e2a4b080 100644 (file)
@@ -43,7 +43,8 @@
 #endif
 
 #include "wx/wfstream.h"
-
+#include "wx/datstrm.h"
+#include "wx/txtstrm.h"
 
 // Create a new application object
 IMPLEMENT_APP  (MyApp)
@@ -104,38 +105,148 @@ void MyApp::DoStreamDemo(wxCommandEvent& WXUNUSED(event))
     wxTextCtrl& textCtrl = * GetTextCtrl();
     
     textCtrl.Clear();
-    textCtrl << "\nTest fstream vs. wxFileStream:\n\n";
+    textCtrl << _T("\nTest fstream vs. wxFileStream:\n\n");
 
+    textCtrl.WriteText( "Writing to ofstream and wxFileOutputStream:\n" );
+    
     ofstream std_file_output( "test_std.dat" );
     wxFileOutputStream file_output( "test_wx.dat" );
+    wxBufferedOutputStream buf_output( file_output );
+    wxTextOutputStream text_output( buf_output );
 
-    textCtrl.WriteText( "Writig to fstream:\n" );
-    
     wxString tmp;
     signed int si = 0xFFFFFFFF;
-    tmp.Printf( "Signed int: %d\n", si );
+    tmp.Printf( _T("Signed int: %d\n"), si );
     textCtrl.WriteText( tmp );
-    file_output << si << "\n";
+    text_output << si << "\n";
     std_file_output << si << "\n";
     
     unsigned int ui = 0xFFFFFFFF;
-    tmp.Printf( "Unsigned int: %u\n", ui );
+    tmp.Printf( _T("Unsigned int: %u\n"), ui );
     textCtrl.WriteText( tmp );
-    file_output << ui << "\n";
+    text_output << ui << "\n";
     std_file_output << ui << "\n";
     
     double d = 2.01234567890123456789;
-    tmp.Printf( "Double: %f\n", d );
+    tmp.Printf( _T("Double: %f\n"), d );
     textCtrl.WriteText( tmp );
-    file_output << d << "\n";
+    text_output << d << "\n";
     std_file_output << d << "\n";
     
-    wxString str( "Hello!" );
-    tmp.Printf( "String: %s\n", str.c_str() );
+    float f = 0.00001;
+    tmp.Printf( _T("Float: %f\n"), f );
     textCtrl.WriteText( tmp );
-    file_output << str << "\n";
+    text_output << f << "\n";
+    std_file_output << f << "\n";
+    
+    wxString str( _T("Hello!") );
+    tmp.Printf( _T("String: %s\n"), str.c_str() );
+    textCtrl.WriteText( tmp );
+    text_output << str << "\n";
     std_file_output << str.c_str() << "\n";
     
+    textCtrl.WriteText( "\nReading from ifstream:\n" );
+    
+    ifstream std_file_input( "test_std.dat" );
+
+    std_file_input >> si;
+    tmp.Printf( _T("Signed int: %d\n"), si );
+    textCtrl.WriteText( tmp );
+    
+    std_file_input >> ui;
+    tmp.Printf( _T("Unsigned int: %u\n"), ui );
+    textCtrl.WriteText( tmp );
+    
+    std_file_input >> d;
+    tmp.Printf( _T("Double: %f\n"), d );
+    textCtrl.WriteText( tmp );
+    
+    std_file_input >> f;
+    tmp.Printf( _T("Float: %f\n"), f );
+    textCtrl.WriteText( tmp );
+    
+    std_file_input >> str;
+    tmp.Printf( _T("String: %s\n"), str.c_str() );
+    textCtrl.WriteText( tmp );
+    
+    textCtrl.WriteText( "\nReading from wxFileInputStream:\n" );
+
+    buf_output.Sync();
+    
+    wxFileInputStream file_input( "test_wx.dat" );
+    wxBufferedInputStream buf_input( file_input );
+    wxTextInputStream text_input( buf_input );
+    
+    text_input >> si;
+    tmp.Printf( _T("Signed int: %d\n"), si );
+    textCtrl.WriteText( tmp );
+    
+    text_input >> ui;
+    tmp.Printf( _T("Unsigned int: %u\n"), ui );
+    textCtrl.WriteText( tmp );
+    
+    text_input >> d;
+    tmp.Printf( _T("Double: %f\n"), d );
+    textCtrl.WriteText( tmp );
+    
+    text_input >> f;
+    tmp.Printf( _T("Float: %f\n"), f );
+    textCtrl.WriteText( tmp );
+    
+    text_input >> str;
+    tmp.Printf( _T("String: %s\n"), str.c_str() );
+    textCtrl.WriteText( tmp );
+    
+
+    textCtrl << "\nTest for wxDataStream:\n\n";
+
+    textCtrl.WriteText( "Writing to wxDataOutputStream:\n" );
+    
+    file_output.SeekO( 0 );
+    wxDataOutputStream data_output( buf_output );
+
+    wxInt16 i16 = 0xFFFF;
+    tmp.Printf( _T("Signed int16: %d\n"), (int)i16 );
+    textCtrl.WriteText( tmp );
+    data_output.Write16( i16 );
+    
+    wxUint16 ui16 = 0xFFFF;
+    tmp.Printf( _T("Unsigned int16: %u\n"), (unsigned int) ui16 );
+    textCtrl.WriteText( tmp );
+    data_output.Write16( ui16 );
+    
+    d = 2.01234567890123456789;
+    tmp.Printf( _T("Double: %f\n"), d );
+    textCtrl.WriteText( tmp );
+    data_output.WriteDouble( d );
+    
+    str = "Hello!";
+    tmp.Printf( _T("String: %s\n"), str.c_str() );
+    textCtrl.WriteText( tmp );
+    data_output.WriteString( str );
+    
+    buf_output.Sync();
+    
+    textCtrl.WriteText( "\nReading from wxDataInputStream:\n" );
+    
+    file_input.SeekI( 0 );
+    wxDataInputStream data_input( buf_input );
+
+    i16 = data_input.Read16();
+    tmp.Printf( _T("Signed int16: %d\n"), (int)i16 );
+    textCtrl.WriteText( tmp );
+    
+    ui16 = data_input.Read16();
+    tmp.Printf( _T("Unsigned int16: %u\n"), (unsigned int) ui16 );
+    textCtrl.WriteText( tmp );
+
+    d = data_input.ReadDouble();
+    tmp.Printf( _T("Double: %f\n"), d );
+    textCtrl.WriteText( tmp );
+    
+    str = data_input.ReadString();
+    tmp.Printf( _T("String: %s\n"), str.c_str() );
+    textCtrl.WriteText( tmp );
 }
 
 #if wxUSE_UNICODE