diff options
Diffstat (limited to 'xfa/fwl/core/cfwl_picturebox.h')
-rw-r--r-- | xfa/fwl/core/cfwl_picturebox.h | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/xfa/fwl/core/cfwl_picturebox.h b/xfa/fwl/core/cfwl_picturebox.h new file mode 100644 index 0000000000..584950f045 --- /dev/null +++ b/xfa/fwl/core/cfwl_picturebox.h @@ -0,0 +1,67 @@ +// Copyright 2014 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 XFA_FWL_CORE_CFWL_PICTUREBOX_H_ +#define XFA_FWL_CORE_CFWL_PICTUREBOX_H_ + +#include "xfa/fwl/core/cfwl_widget.h" +#include "xfa/fwl/core/fwl_error.h" +#include "xfa/fwl/core/ifwl_picturebox.h" + +class CFWL_PictureBox : public CFWL_Widget { + public: + CFWL_PictureBox(); + ~CFWL_PictureBox() override; + + IFWL_PictureBox* GetWidget() override; + const IFWL_PictureBox* GetWidget() const override; + + FWL_Error Initialize(const CFWL_WidgetProperties* pProperties = nullptr); + CFX_DIBitmap* GetPicture(); + FWL_Error SetPicture(CFX_DIBitmap* pBitmap); + FX_FLOAT GetRotation(); + FWL_Error SetRotation(FX_FLOAT fRotation); + int32_t GetFlipMode(); + FWL_Error SetFlipMode(int32_t iFlipMode); + int32_t GetOpacity(); + FWL_Error SetOpacity(int32_t iOpacity); + FWL_Error GetScale(FX_FLOAT& fScaleX, FX_FLOAT& fScaleY); + FWL_Error SetScale(FX_FLOAT fScaleX, FX_FLOAT fScaleY); + FWL_Error GetOffset(FX_FLOAT& fx, FX_FLOAT& fy); + FWL_Error SetOffset(FX_FLOAT fx, FX_FLOAT fy); + + protected: + class CFWL_PictureBoxDP : public IFWL_PictureBoxDP { + public: + CFWL_PictureBoxDP(); + + // IFWL_DataProvider + FWL_Error GetCaption(IFWL_Widget* pWidget, + CFX_WideString& wsCaption) override; + + // IFWL_PictureBoxDP + CFX_DIBitmap* GetPicture(IFWL_Widget* pWidget) override; + CFX_DIBitmap* GetErrorPicture(IFWL_Widget* pWidget) override; + CFX_DIBitmap* GetInitialPicture(IFWL_Widget* pWidget) override; + int32_t GetOpacity(IFWL_Widget* pWidget) override; + int32_t GetFlipMode(IFWL_Widget* pWidget) override; + FWL_Error GetMatrix(IFWL_Widget* pWidget, CFX_Matrix& matrix) override; + + CFX_DIBitmap* m_pBitmap; + int32_t m_iOpacity; + int32_t m_iFlipMode; + FX_FLOAT m_fRotation; + FX_FLOAT m_fScaleX; + FX_FLOAT m_fScaleY; + FX_FLOAT m_fOffSetX; + FX_FLOAT m_fOffSetY; + CFX_WideString m_wsData; + }; + + CFWL_PictureBoxDP m_PictureBoxDP; +}; + +#endif // XFA_FWL_CORE_CFWL_PICTUREBOX_H_ |