65045edde4
Implemented the "endl" thing for text streams, Corrected cursor display for text ctrls, Corrected the strange spin button behaviour when dynamically changing its range Corrcected bug in wxListBox when programmatically unselecting an item in multi-select mode (bug reports are getting esoteric) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@3440 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
93 lines
2.4 KiB
C++
93 lines
2.4 KiB
C++
/////////////////////////////////////////////////////////////////////////////
|
|
// Name: txtstrm.h
|
|
// Purpose: Text stream classes
|
|
// Author: Guilhem Lavaux
|
|
// Modified by:
|
|
// Created: 28/06/1998
|
|
// RCS-ID: $Id$
|
|
// Copyright: (c) Guilhem Lavaux
|
|
// Licence: wxWindows license
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef _WX_TXTSTREAM_H_
|
|
#define _WX_TXTSTREAM_H_
|
|
|
|
#ifdef __GNUG__
|
|
#pragma interface "txtstrm.h"
|
|
#endif
|
|
|
|
#include "wx/stream.h"
|
|
|
|
#if wxUSE_STREAMS
|
|
|
|
class WXDLLEXPORT wxTextInputStream;
|
|
class WXDLLEXPORT wxTextOutputStream;
|
|
|
|
typedef wxTextInputStream& (*__wxTextInputManip)(wxTextInputStream&);
|
|
typedef wxTextOutputStream& (*__wxTextOutputManip)(wxTextOutputStream&);
|
|
|
|
WXDLLEXPORT wxTextOutputStream &endl( wxTextOutputStream &stream );
|
|
|
|
class WXDLLEXPORT wxTextInputStream {
|
|
public:
|
|
wxTextInputStream(wxInputStream& s);
|
|
~wxTextInputStream();
|
|
|
|
wxUint32 Read32();
|
|
wxUint16 Read16();
|
|
wxUint8 Read8();
|
|
double ReadDouble();
|
|
wxString ReadString();
|
|
|
|
// Operators
|
|
wxTextInputStream& operator>>(wxString& line);
|
|
wxTextInputStream& operator>>(wxChar& c);
|
|
wxTextInputStream& operator>>(wxInt16& i);
|
|
wxTextInputStream& operator>>(wxInt32& i);
|
|
wxTextInputStream& operator>>(wxUint16& i);
|
|
wxTextInputStream& operator>>(wxUint32& i);
|
|
wxTextInputStream& operator>>(double& i);
|
|
wxTextInputStream& operator>>(float& f);
|
|
|
|
wxTextInputStream& operator>>( __wxTextInputManip func) { return func(*this); }
|
|
|
|
protected:
|
|
wxInputStream *m_input;
|
|
|
|
wxChar NextNonWhiteSpace();
|
|
void SkipIfEndOfLine( wxChar c );
|
|
};
|
|
|
|
class WXDLLEXPORT wxTextOutputStream {
|
|
public:
|
|
wxTextOutputStream(wxOutputStream& s);
|
|
~wxTextOutputStream();
|
|
|
|
void Write32(wxUint32 i);
|
|
void Write16(wxUint16 i);
|
|
void Write8(wxUint8 i);
|
|
void WriteDouble(double d);
|
|
void WriteString(const wxString& string);
|
|
|
|
wxTextOutputStream& operator<<(const wxChar *string);
|
|
wxTextOutputStream& operator<<(const wxString& string);
|
|
wxTextOutputStream& operator<<(wxChar c);
|
|
wxTextOutputStream& operator<<(wxInt16 c);
|
|
wxTextOutputStream& operator<<(wxInt32 c);
|
|
wxTextOutputStream& operator<<(wxUint16 c);
|
|
wxTextOutputStream& operator<<(wxUint32 c);
|
|
wxTextOutputStream& operator<<(double f);
|
|
wxTextOutputStream& operator<<(float f);
|
|
|
|
wxTextOutputStream& operator<<( __wxTextOutputManip func) { return func(*this); }
|
|
|
|
protected:
|
|
wxOutputStream *m_output;
|
|
};
|
|
|
|
#endif
|
|
// wxUSE_STREAMS
|
|
|
|
#endif
|
|
// _WX_DATSTREAM_H_
|