OLD | NEW |
(Empty) | |
| 1 // Copyright 2016 PDFium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
| 6 |
| 7 #ifndef FPDFSDK_CFX_SYSTEMHANDLER_H_ |
| 8 #define FPDFSDK_CFX_SYSTEMHANDLER_H_ |
| 9 |
| 10 #include "core/fxcrt/include/fx_coordinates.h" |
| 11 #include "core/fxcrt/include/fx_system.h" |
| 12 |
| 13 using FX_HWND = void*; |
| 14 using FX_HMENU = void*; |
| 15 using TimerCallback = void (*)(int32_t idEvent); |
| 16 |
| 17 struct FX_SYSTEMTIME { |
| 18 FX_SYSTEMTIME() |
| 19 : wYear(0), |
| 20 wMonth(0), |
| 21 wDayOfWeek(0), |
| 22 wDay(0), |
| 23 wHour(0), |
| 24 wMinute(0), |
| 25 wSecond(0), |
| 26 wMilliseconds(0) {} |
| 27 |
| 28 uint16_t wYear; |
| 29 uint16_t wMonth; |
| 30 uint16_t wDayOfWeek; |
| 31 uint16_t wDay; |
| 32 uint16_t wHour; |
| 33 uint16_t wMinute; |
| 34 uint16_t wSecond; |
| 35 uint16_t wMilliseconds; |
| 36 }; |
| 37 |
| 38 // Cursor style. These must match the values in public/fpdf_formfill.h |
| 39 #define FXCT_ARROW 0 |
| 40 #define FXCT_NESW 1 |
| 41 #define FXCT_NWSE 2 |
| 42 #define FXCT_VBEAM 3 |
| 43 #define FXCT_HBEAM 4 |
| 44 #define FXCT_HAND 5 |
| 45 |
| 46 class CPDF_Document; |
| 47 class CPDF_Font; |
| 48 class CPDFDoc_Environment; |
| 49 |
| 50 class CFX_SystemHandler { |
| 51 public: |
| 52 explicit CFX_SystemHandler(CPDFDoc_Environment* pEnv) |
| 53 : m_pEnv(pEnv), m_nCharSet(-1) {} |
| 54 ~CFX_SystemHandler() {} |
| 55 |
| 56 void InvalidateRect(FX_HWND hWnd, FX_RECT rect); |
| 57 void OutputSelectedRect(void* pFormFiller, CFX_FloatRect& rect); |
| 58 bool IsSelectionImplemented() const; |
| 59 |
| 60 void SetCursor(int32_t nCursorType); |
| 61 |
| 62 bool FindNativeTrueTypeFont(int32_t nCharset, CFX_ByteString sFontFaceName); |
| 63 CPDF_Font* AddNativeTrueTypeFontToPDF(CPDF_Document* pDoc, |
| 64 CFX_ByteString sFontFaceName, |
| 65 uint8_t nCharset); |
| 66 int32_t SetTimer(int32_t uElapse, TimerCallback lpTimerFunc); |
| 67 void KillTimer(int32_t nID); |
| 68 bool IsSHIFTKeyDown(uint32_t nFlag) const; |
| 69 bool IsCTRLKeyDown(uint32_t nFlag) const; |
| 70 bool IsALTKeyDown(uint32_t nFlag) const; |
| 71 bool IsINSERTKeyDown(uint32_t nFlag) const; |
| 72 |
| 73 FX_SYSTEMTIME GetLocalTime(); |
| 74 |
| 75 int32_t GetCharSet() const { return m_nCharSet; } |
| 76 void SetCharSet(int32_t nCharSet) { m_nCharSet = nCharSet; } |
| 77 |
| 78 private: |
| 79 CPDFDoc_Environment* const m_pEnv; |
| 80 int m_nCharSet; |
| 81 }; |
| 82 |
| 83 #endif // FPDFSDK_CFX_SYSTEMHANDLER_H_ |
OLD | NEW |