diff options
author | dsinclair <dsinclair@chromium.org> | 2016-04-27 06:38:59 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-04-27 06:38:59 -0700 |
commit | b95901091d63ce09accec3088945955f969d46e1 (patch) | |
tree | 9994d5b9bcd5de21eb0c72d7c4b9a82fae7dde5f /fpdfsdk/cfx_systemhandler.h | |
parent | 12168d764be266a209bc3fd15dbe4223732ae319 (diff) | |
download | pdfium-b95901091d63ce09accec3088945955f969d46e1.tar.xz |
Remove IFX_SystemHandler.
This CL folds IFX_SystemHandler into CFX_SystemHandler. Methods which either
had no implementation, or returned a default value have been removed.
Review URL: https://codereview.chromium.org/1923093002
Diffstat (limited to 'fpdfsdk/cfx_systemhandler.h')
-rw-r--r-- | fpdfsdk/cfx_systemhandler.h | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/fpdfsdk/cfx_systemhandler.h b/fpdfsdk/cfx_systemhandler.h new file mode 100644 index 0000000000..ec5735366c --- /dev/null +++ b/fpdfsdk/cfx_systemhandler.h @@ -0,0 +1,83 @@ +// 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 FPDFSDK_CFX_SYSTEMHANDLER_H_ +#define FPDFSDK_CFX_SYSTEMHANDLER_H_ + +#include "core/fxcrt/include/fx_coordinates.h" +#include "core/fxcrt/include/fx_system.h" + +using FX_HWND = void*; +using FX_HMENU = void*; +using TimerCallback = void (*)(int32_t idEvent); + +struct FX_SYSTEMTIME { + FX_SYSTEMTIME() + : wYear(0), + wMonth(0), + wDayOfWeek(0), + wDay(0), + wHour(0), + wMinute(0), + wSecond(0), + wMilliseconds(0) {} + + uint16_t wYear; + uint16_t wMonth; + uint16_t wDayOfWeek; + uint16_t wDay; + uint16_t wHour; + uint16_t wMinute; + uint16_t wSecond; + uint16_t wMilliseconds; +}; + +// Cursor style. These must match the values in public/fpdf_formfill.h +#define FXCT_ARROW 0 +#define FXCT_NESW 1 +#define FXCT_NWSE 2 +#define FXCT_VBEAM 3 +#define FXCT_HBEAM 4 +#define FXCT_HAND 5 + +class CPDF_Document; +class CPDF_Font; +class CPDFDoc_Environment; + +class CFX_SystemHandler { + public: + explicit CFX_SystemHandler(CPDFDoc_Environment* pEnv) + : m_pEnv(pEnv), m_nCharSet(-1) {} + ~CFX_SystemHandler() {} + + void InvalidateRect(FX_HWND hWnd, FX_RECT rect); + void OutputSelectedRect(void* pFormFiller, CFX_FloatRect& rect); + bool IsSelectionImplemented() const; + + void SetCursor(int32_t nCursorType); + + bool FindNativeTrueTypeFont(int32_t nCharset, CFX_ByteString sFontFaceName); + CPDF_Font* AddNativeTrueTypeFontToPDF(CPDF_Document* pDoc, + CFX_ByteString sFontFaceName, + uint8_t nCharset); + int32_t SetTimer(int32_t uElapse, TimerCallback lpTimerFunc); + void KillTimer(int32_t nID); + bool IsSHIFTKeyDown(uint32_t nFlag) const; + bool IsCTRLKeyDown(uint32_t nFlag) const; + bool IsALTKeyDown(uint32_t nFlag) const; + bool IsINSERTKeyDown(uint32_t nFlag) const; + + FX_SYSTEMTIME GetLocalTime(); + + int32_t GetCharSet() const { return m_nCharSet; } + void SetCharSet(int32_t nCharSet) { m_nCharSet = nCharSet; } + + private: + CPDFDoc_Environment* const m_pEnv; + int m_nCharSet; +}; + +#endif // FPDFSDK_CFX_SYSTEMHANDLER_H_ |