]> git.saurik.com Git - wxWidgets.git/blame_incremental - src/common/sckstrm.cpp
wxComboControl and wxOwnerDrawnComboBox (patch 1479938)
[wxWidgets.git] / src / common / sckstrm.cpp
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: src/common/sckstrm.cpp
3// Purpose: wxSocket*Stream
4// Author: Guilhem Lavaux
5// Modified by:
6// Created: 17/07/97
7// RCS-ID: $Id$
8// Copyright: (c)
9// Licence: wxWindows licence
10/////////////////////////////////////////////////////////////////////////////
11
12// For compilers that support precompilation, includes "wx.h".
13#include "wx/wxprec.h"
14
15#ifdef __BORLANDC__
16 #pragma hdrstop
17#endif
18
19#if wxUSE_SOCKETS && wxUSE_STREAMS
20
21#include "wx/sckstrm.h"
22
23#ifndef WX_PRECOMP
24 #include "wx/stream.h"
25#endif
26
27#include "wx/socket.h"
28
29// ---------------------------------------------------------------------------
30// wxSocketOutputStream
31// ---------------------------------------------------------------------------
32
33wxSocketOutputStream::wxSocketOutputStream(wxSocketBase& s)
34 : m_o_socket(&s)
35{
36}
37
38wxSocketOutputStream::~wxSocketOutputStream()
39{
40}
41
42size_t wxSocketOutputStream::OnSysWrite(const void *buffer, size_t size)
43{
44 size_t ret = m_o_socket->Write((const char *)buffer, size).LastCount();
45
46 m_lasterror = m_o_socket->Error() ? wxSTREAM_WRITE_ERROR : wxSTREAM_NO_ERROR;
47
48 return ret;
49}
50
51// ---------------------------------------------------------------------------
52// wxSocketInputStream
53// ---------------------------------------------------------------------------
54
55wxSocketInputStream::wxSocketInputStream(wxSocketBase& s)
56 : m_i_socket(&s)
57{
58}
59
60wxSocketInputStream::~wxSocketInputStream()
61{
62}
63
64size_t wxSocketInputStream::OnSysRead(void *buffer, size_t size)
65{
66 size_t ret = m_i_socket->Read((char *)buffer, size).LastCount();
67
68 m_lasterror = m_i_socket->Error() ? wxSTREAM_READ_ERROR : wxSTREAM_NO_ERROR;
69
70 return ret;
71}
72
73// ---------------------------------------------------------------------------
74// wxSocketStream
75// ---------------------------------------------------------------------------
76
77wxSocketStream::wxSocketStream(wxSocketBase& s)
78 : wxSocketInputStream(s), wxSocketOutputStream(s)
79{
80}
81
82wxSocketStream::~wxSocketStream()
83{
84}
85
86#endif
87 // wxUSE_STREAMS && wxUSE_SOCKETS