OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #ifndef XFA_FXFA_PARSER_XFA_BASIC_IMP_H_ | 7 #ifndef XFA_FXFA_PARSER_XFA_BASIC_IMP_H_ |
8 #define XFA_FXFA_PARSER_XFA_BASIC_IMP_H_ | 8 #define XFA_FXFA_PARSER_XFA_BASIC_IMP_H_ |
9 | 9 |
10 #include "xfa/fgas/crt/fgas_stream.h" | 10 #include "xfa/fgas/crt/fgas_stream.h" |
11 #include "xfa/fxfa/include/fxfa_basic.h" | 11 #include "xfa/fxfa/include/fxfa_basic.h" |
12 | 12 |
13 struct XFA_NOTSUREATTRIBUTE { | 13 struct XFA_NOTSUREATTRIBUTE { |
14 XFA_ELEMENT eElement; | 14 XFA_ELEMENT eElement; |
15 XFA_ATTRIBUTE eAttribute; | 15 XFA_ATTRIBUTE eAttribute; |
16 XFA_ATTRIBUTETYPE eType; | 16 XFA_ATTRIBUTETYPE eType; |
17 void* pValue; | 17 void* pValue; |
18 }; | 18 }; |
19 const XFA_NOTSUREATTRIBUTE* XFA_GetNotsureAttribute( | 19 const XFA_NOTSUREATTRIBUTE* XFA_GetNotsureAttribute( |
20 XFA_ELEMENT eElement, | 20 XFA_ELEMENT eElement, |
21 XFA_ATTRIBUTE eAttribute, | 21 XFA_ATTRIBUTE eAttribute, |
22 XFA_ATTRIBUTETYPE eType = XFA_ATTRIBUTETYPE_NOTSURE); | 22 XFA_ATTRIBUTETYPE eType = XFA_ATTRIBUTETYPE_NOTSURE); |
23 | 23 |
24 class CXFA_WideTextRead : public IFX_Stream { | 24 class CXFA_WideTextRead : public IFX_Stream { |
25 public: | 25 public: |
26 CXFA_WideTextRead(const CFX_WideString& wsBuffer); | 26 CXFA_WideTextRead(const CFX_WideString& wsBuffer); |
27 virtual void Release(); | |
28 virtual IFX_Stream* Retain(); | |
29 | 27 |
30 virtual uint32_t GetAccessModes() const; | 28 // IFX_Stream |
31 virtual int32_t GetLength() const; | 29 void Release() override; |
32 virtual int32_t Seek(FX_STREAMSEEK eSeek, int32_t iOffset); | 30 IFX_Stream* Retain() override; |
33 virtual int32_t GetPosition(); | 31 uint32_t GetAccessModes() const override; |
34 virtual FX_BOOL IsEOF() const; | 32 int32_t GetLength() const override; |
| 33 int32_t Seek(FX_STREAMSEEK eSeek, int32_t iOffset) override; |
| 34 int32_t GetPosition() override; |
| 35 FX_BOOL IsEOF() const override; |
| 36 int32_t ReadData(uint8_t* pBuffer, int32_t iBufferSize) override; |
| 37 int32_t ReadString(FX_WCHAR* pStr, |
| 38 int32_t iMaxLength, |
| 39 FX_BOOL& bEOS, |
| 40 int32_t const* pByteSize = NULL) override; |
| 41 int32_t WriteData(const uint8_t* pBuffer, int32_t iBufferSize) override; |
| 42 int32_t WriteString(const FX_WCHAR* pStr, int32_t iLength) override; |
| 43 void Flush() override {} |
| 44 FX_BOOL SetLength(int32_t iLength) override; |
| 45 int32_t GetBOM(uint8_t bom[4]) const override; |
| 46 uint16_t GetCodePage() const override; |
| 47 uint16_t SetCodePage(uint16_t wCodePage) override; |
| 48 IFX_Stream* CreateSharedStream(uint32_t dwAccess, |
| 49 int32_t iOffset, |
| 50 int32_t iLength) override; |
35 | 51 |
36 virtual int32_t ReadData(uint8_t* pBuffer, int32_t iBufferSize) { return 0; } | 52 virtual void Lock(); |
37 virtual int32_t ReadString(FX_WCHAR* pStr, | 53 virtual void Unlock(); |
38 int32_t iMaxLength, | |
39 FX_BOOL& bEOS, | |
40 int32_t const* pByteSize = NULL); | |
41 virtual int32_t WriteData(const uint8_t* pBuffer, int32_t iBufferSize) { | |
42 return 0; | |
43 } | |
44 virtual int32_t WriteString(const FX_WCHAR* pStr, int32_t iLength) { | |
45 return 0; | |
46 } | |
47 virtual void Flush() {} | |
48 virtual FX_BOOL SetLength(int32_t iLength) { return FALSE; } | |
49 | 54 |
50 virtual int32_t GetBOM(uint8_t bom[4]) const { return 0; } | 55 CFX_WideString GetSrcText() const; |
51 virtual uint16_t GetCodePage() const; | |
52 virtual uint16_t SetCodePage(uint16_t wCodePage); | |
53 | |
54 virtual void Lock() {} | |
55 virtual void Unlock() {} | |
56 | |
57 virtual IFX_Stream* CreateSharedStream(uint32_t dwAccess, | |
58 int32_t iOffset, | |
59 int32_t iLength) { | |
60 return NULL; | |
61 } | |
62 | |
63 CFX_WideString GetSrcText() const { return m_wsBuffer; } | |
64 | 56 |
65 protected: | 57 protected: |
66 CFX_WideString m_wsBuffer; | 58 CFX_WideString m_wsBuffer; |
67 int32_t m_iPosition; | 59 int32_t m_iPosition; |
68 int32_t m_iRefCount; | 60 int32_t m_iRefCount; |
69 }; | 61 }; |
70 | 62 |
71 #endif // XFA_FXFA_PARSER_XFA_BASIC_IMP_H_ | 63 #endif // XFA_FXFA_PARSER_XFA_BASIC_IMP_H_ |
OLD | NEW |