Chromium Code Reviews| Index: core/fpdfdoc/cpvt_wordinfo.h |
| diff --git a/core/fpdfdoc/cpvt_wordinfo.h b/core/fpdfdoc/cpvt_wordinfo.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..3eb980f3af5c5bb038de97ec7434f56f7526532d |
| --- /dev/null |
| +++ b/core/fpdfdoc/cpvt_wordinfo.h |
| @@ -0,0 +1,72 @@ |
| +// Copyright 2016 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_FPDFDOC_CPVT_WORDINFO_H_ |
| +#define CORE_FPDFDOC_CPVT_WORDINFO_H_ |
| + |
| +#include "core/fpdfdoc/include/cpvt_wordprops.h" |
| +#include "core/fxcrt/include/fx_system.h" |
| + |
| +struct CPVT_WordInfo { |
| + CPVT_WordInfo() |
| + : Word(0), |
| + nCharset(0), |
| + fWordX(0.0f), |
| + fWordY(0.0f), |
| + fWordTail(0.0f), |
| + nFontIndex(-1), |
| + pWordProps(nullptr) {} |
| + |
| + CPVT_WordInfo(uint16_t word, |
| + int32_t charset, |
| + int32_t fontIndex, |
| + CPVT_WordProps* pProps) |
| + : Word(word), |
| + nCharset(charset), |
| + fWordX(0.0f), |
| + fWordY(0.0f), |
| + fWordTail(0.0f), |
| + nFontIndex(fontIndex), |
| + pWordProps(pProps) {} |
| + |
| + CPVT_WordInfo(const CPVT_WordInfo& word) |
| + : Word(0), |
| + nCharset(0), |
| + fWordX(0.0f), |
| + fWordY(0.0f), |
| + fWordTail(0.0f), |
| + nFontIndex(-1), |
| + pWordProps(nullptr) { |
| + operator=(word); |
| + } |
| + |
| + ~CPVT_WordInfo() { delete pWordProps; } |
|
Tom Sepez
2016/04/05 16:58:23
Can this be unique_ptr?
dsinclair
2016/04/05 17:29:20
On followup list.
|
| + |
| + void operator=(const CPVT_WordInfo& word) { |
| + if (this == &word) |
| + return; |
| + |
| + Word = word.Word; |
| + nCharset = word.nCharset; |
| + nFontIndex = word.nFontIndex; |
| + if (word.pWordProps) { |
| + if (pWordProps) |
| + *pWordProps = *word.pWordProps; |
| + else |
| + pWordProps = new CPVT_WordProps(*word.pWordProps); |
| + } |
| + } |
| + |
| + uint16_t Word; |
| + int32_t nCharset; |
| + FX_FLOAT fWordX; |
| + FX_FLOAT fWordY; |
| + FX_FLOAT fWordTail; |
| + int32_t nFontIndex; |
| + CPVT_WordProps* pWordProps; |
| +}; |
| + |
| +#endif // CORE_FPDFDOC_CPVT_WORDINFO_H_ |