OLD | NEW |
1 // Copyright 2016 PDFium Authors. All rights reserved. | 1 // Copyright 2016 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 CORE_FPDFDOC_INCLUDE_CPDF_FILESPEC_H_ | 7 #ifndef CORE_FPDFDOC_INCLUDE_CPDF_FILESPEC_H_ |
8 #define CORE_FPDFDOC_INCLUDE_CPDF_FILESPEC_H_ | 8 #define CORE_FPDFDOC_INCLUDE_CPDF_FILESPEC_H_ |
9 | 9 |
| 10 #include "core/fxcrt/include/cfx_string_pool_template.h" |
| 11 #include "core/fxcrt/include/cfx_weak_ptr.h" |
10 #include "core/fxcrt/include/fx_string.h" | 12 #include "core/fxcrt/include/fx_string.h" |
11 | 13 |
12 class CPDF_Object; | 14 class CPDF_Object; |
13 | 15 |
14 class CPDF_FileSpec { | 16 class CPDF_FileSpec { |
15 public: | 17 public: |
16 CPDF_FileSpec(); | 18 explicit CPDF_FileSpec(const CFX_WeakPtr<CFX_ByteStringPool>& pPool); |
17 explicit CPDF_FileSpec(CPDF_Object* pObj) : m_pObj(pObj) {} | 19 explicit CPDF_FileSpec(CPDF_Object* pObj) : m_pObj(pObj) {} |
18 | 20 |
19 // Convert a platform dependent file name into pdf format. | 21 // Convert a platform dependent file name into pdf format. |
20 static CFX_WideString EncodeFileName(const CFX_WideStringC& filepath); | 22 static CFX_WideString EncodeFileName(const CFX_WideStringC& filepath); |
21 | 23 |
22 // Convert a pdf file name into platform dependent format. | 24 // Convert a pdf file name into platform dependent format. |
23 static CFX_WideString DecodeFileName(const CFX_WideStringC& filepath); | 25 static CFX_WideString DecodeFileName(const CFX_WideStringC& filepath); |
24 | 26 |
25 CPDF_Object* GetObj() const { return m_pObj; } | 27 CPDF_Object* GetObj() const { return m_pObj; } |
26 bool GetFileName(CFX_WideString* wsFileName) const; | 28 bool GetFileName(CFX_WideString* wsFileName) const; |
27 | 29 |
28 // Set this file spec to refer to a file name (not a url). | 30 // Set this file spec to refer to a file name (not a url). |
29 void SetFileName(const CFX_WideStringC& wsFileName); | 31 void SetFileName(const CFX_WideStringC& wsFileName); |
30 | 32 |
31 private: | 33 private: |
32 CPDF_Object* m_pObj; | 34 CPDF_Object* m_pObj; |
33 }; | 35 }; |
34 | 36 |
35 #endif // CORE_FPDFDOC_INCLUDE_CPDF_FILESPEC_H_ | 37 #endif // CORE_FPDFDOC_INCLUDE_CPDF_FILESPEC_H_ |
OLD | NEW |