diff options
author | Dan Sinclair <dsinclair@chromium.org> | 2017-08-30 16:36:53 -0400 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2017-08-30 21:02:57 +0000 |
commit | a94566f3833b885019bbea76d3261a3050b5ed04 (patch) | |
tree | 3fff0d5f89ce69b03fc65132dba37aa970f47efd /core/fxcrt/cfx_widetextbuf.h | |
parent | cd07123993c2f6cfd2d08929e6ad27cab3ac74e9 (diff) | |
download | pdfium-a94566f3833b885019bbea76d3261a3050b5ed04.tar.xz |
Move CFX_WideTextBuf out of fx_basic
This CL moves CFX_WideTextBuf to its own files and updates includes as
needed.
Change-Id: Ibe66ecf3e66f8f01dd8e9eaf6b467588be86ad4f
Reviewed-on: https://pdfium-review.googlesource.com/12413
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
Diffstat (limited to 'core/fxcrt/cfx_widetextbuf.h')
-rw-r--r-- | core/fxcrt/cfx_widetextbuf.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/core/fxcrt/cfx_widetextbuf.h b/core/fxcrt/cfx_widetextbuf.h new file mode 100644 index 0000000000..0c9b6ff99d --- /dev/null +++ b/core/fxcrt/cfx_widetextbuf.h @@ -0,0 +1,44 @@ +// Copyright 2017 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef CORE_FXCRT_CFX_WIDETEXTBUF_H_ +#define CORE_FXCRT_CFX_WIDETEXTBUF_H_ + +#include "core/fxcrt/cfx_binarybuf.h" +#include "core/fxcrt/fx_string.h" +#include "core/fxcrt/fx_system.h" + +class CFX_WideTextBuf : public CFX_BinaryBuf { + public: + void AppendChar(wchar_t wch); + FX_STRSIZE GetLength() const { return m_DataSize / sizeof(wchar_t); } + wchar_t* GetBuffer() const { + return reinterpret_cast<wchar_t*>(m_pBuffer.get()); + } + + CFX_WideStringC AsStringC() const { + return CFX_WideStringC(reinterpret_cast<const wchar_t*>(m_pBuffer.get()), + m_DataSize / sizeof(wchar_t)); + } + CFX_WideString MakeString() const { + return CFX_WideString(reinterpret_cast<const wchar_t*>(m_pBuffer.get()), + m_DataSize / sizeof(wchar_t)); + } + + void Delete(int start_index, int count) { + CFX_BinaryBuf::Delete(start_index * sizeof(wchar_t), + count * sizeof(wchar_t)); + } + + CFX_WideTextBuf& operator<<(int i); + CFX_WideTextBuf& operator<<(double f); + CFX_WideTextBuf& operator<<(const wchar_t* lpsz); + CFX_WideTextBuf& operator<<(const CFX_WideStringC& str); + CFX_WideTextBuf& operator<<(const CFX_WideString& str); + CFX_WideTextBuf& operator<<(const CFX_WideTextBuf& buf); +}; + +#endif // CORE_FXCRT_CFX_WIDETEXTBUF_H_ |