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_FWL_CORE_IFWL_BARCODE_H_ | 7 #ifndef XFA_FWL_CORE_IFWL_BARCODE_H_ |
8 #define XFA_FWL_CORE_IFWL_BARCODE_H_ | 8 #define XFA_FWL_CORE_IFWL_BARCODE_H_ |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
(...skipping 20 matching lines...) Expand all Loading... |
31 FWL_BCDATTRIBUTE_PRINTCHECKSUM = 1 << 5, | 31 FWL_BCDATTRIBUTE_PRINTCHECKSUM = 1 << 5, |
32 FWL_BCDATTRIBUTE_TEXTLOCATION = 1 << 6, | 32 FWL_BCDATTRIBUTE_TEXTLOCATION = 1 << 6, |
33 FWL_BCDATTRIBUTE_WIDENARROWRATIO = 1 << 7, | 33 FWL_BCDATTRIBUTE_WIDENARROWRATIO = 1 << 7, |
34 FWL_BCDATTRIBUTE_STARTCHAR = 1 << 8, | 34 FWL_BCDATTRIBUTE_STARTCHAR = 1 << 8, |
35 FWL_BCDATTRIBUTE_ENDCHAR = 1 << 9, | 35 FWL_BCDATTRIBUTE_ENDCHAR = 1 << 9, |
36 FWL_BCDATTRIBUTE_VERSION = 1 << 10, | 36 FWL_BCDATTRIBUTE_VERSION = 1 << 10, |
37 FWL_BCDATTRIBUTE_ECLEVEL = 1 << 11, | 37 FWL_BCDATTRIBUTE_ECLEVEL = 1 << 11, |
38 FWL_BCDATTRIBUTE_TRUNCATED = 1 << 12 | 38 FWL_BCDATTRIBUTE_TRUNCATED = 1 << 12 |
39 }; | 39 }; |
40 | 40 |
41 class IFWL_BarcodeDP : public IFWL_Widget::DataProvider { | |
42 public: | |
43 virtual BC_CHAR_ENCODING GetCharEncoding() const = 0; | |
44 virtual int32_t GetModuleHeight() const = 0; | |
45 virtual int32_t GetModuleWidth() const = 0; | |
46 virtual int32_t GetDataLength() const = 0; | |
47 virtual bool GetCalChecksum() const = 0; | |
48 virtual bool GetPrintChecksum() const = 0; | |
49 virtual BC_TEXT_LOC GetTextLocation() const = 0; | |
50 virtual int32_t GetWideNarrowRatio() const = 0; | |
51 virtual FX_CHAR GetStartChar() const = 0; | |
52 virtual FX_CHAR GetEndChar() const = 0; | |
53 virtual int32_t GetVersion() const = 0; | |
54 virtual int32_t GetErrorCorrectionLevel() const = 0; | |
55 virtual bool GetTruncated() const = 0; | |
56 virtual uint32_t GetBarcodeAttributeMask() const = 0; | |
57 }; | |
58 | |
59 class IFWL_Barcode : public IFWL_Edit { | 41 class IFWL_Barcode : public IFWL_Edit { |
60 public: | 42 public: |
| 43 class DataProvider : public IFWL_Widget::DataProvider { |
| 44 public: |
| 45 virtual BC_CHAR_ENCODING GetCharEncoding() const = 0; |
| 46 virtual int32_t GetModuleHeight() const = 0; |
| 47 virtual int32_t GetModuleWidth() const = 0; |
| 48 virtual int32_t GetDataLength() const = 0; |
| 49 virtual bool GetCalChecksum() const = 0; |
| 50 virtual bool GetPrintChecksum() const = 0; |
| 51 virtual BC_TEXT_LOC GetTextLocation() const = 0; |
| 52 virtual int32_t GetWideNarrowRatio() const = 0; |
| 53 virtual FX_CHAR GetStartChar() const = 0; |
| 54 virtual FX_CHAR GetEndChar() const = 0; |
| 55 virtual int32_t GetVersion() const = 0; |
| 56 virtual int32_t GetErrorCorrectionLevel() const = 0; |
| 57 virtual bool GetTruncated() const = 0; |
| 58 virtual uint32_t GetBarcodeAttributeMask() const = 0; |
| 59 }; |
| 60 |
61 IFWL_Barcode(const IFWL_App* app, | 61 IFWL_Barcode(const IFWL_App* app, |
62 std::unique_ptr<CFWL_WidgetProperties> properties); | 62 std::unique_ptr<CFWL_WidgetProperties> properties); |
63 ~IFWL_Barcode() override; | 63 ~IFWL_Barcode() override; |
64 | 64 |
65 // IFWL_Widget | 65 // IFWL_Widget |
66 FWL_Type GetClassID() const override; | 66 FWL_Type GetClassID() const override; |
67 void Update() override; | 67 void Update() override; |
68 void DrawWidget(CFX_Graphics* pGraphics, | 68 void DrawWidget(CFX_Graphics* pGraphics, |
69 const CFX_Matrix* pMatrix = nullptr) override; | 69 const CFX_Matrix* pMatrix = nullptr) override; |
70 void OnProcessEvent(CFWL_Event* pEvent) override; | 70 void OnProcessEvent(CFWL_Event* pEvent) override; |
71 | 71 |
72 // IFWL_Edit | 72 // IFWL_Edit |
73 void SetText(const CFX_WideString& wsText) override; | 73 void SetText(const CFX_WideString& wsText) override; |
74 | 74 |
75 void SetType(BC_TYPE type); | 75 void SetType(BC_TYPE type); |
76 bool IsProtectedType() const; | 76 bool IsProtectedType() const; |
77 | 77 |
78 private: | 78 private: |
79 void GenerateBarcodeImageCache(); | 79 void GenerateBarcodeImageCache(); |
80 void CreateBarcodeEngine(); | 80 void CreateBarcodeEngine(); |
81 | 81 |
82 std::unique_ptr<CFX_Barcode> m_pBarcodeEngine; | 82 std::unique_ptr<CFX_Barcode> m_pBarcodeEngine; |
83 uint32_t m_dwStatus; | 83 uint32_t m_dwStatus; |
84 BC_TYPE m_type; | 84 BC_TYPE m_type; |
85 }; | 85 }; |
86 | 86 |
87 #endif // XFA_FWL_CORE_IFWL_BARCODE_H_ | 87 #endif // XFA_FWL_CORE_IFWL_BARCODE_H_ |
OLD | NEW |