Home | History | Annotate | Download | only in pdfwindow
      1 // Copyright 2014 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_INCLUDE_PDFWINDOW_PWL_ICON_H_
      8 #define FPDFSDK_INCLUDE_PDFWINDOW_PWL_ICON_H_
      9 
     10 #include "../../../core/include/fxcrt/fx_string.h"
     11 #include "PWL_Wnd.h"
     12 
     13 class PWL_CLASS CPWL_Image : public CPWL_Wnd
     14 {
     15 public:
     16 	CPWL_Image();
     17 	virtual ~CPWL_Image();
     18 
     19 	virtual CFX_ByteString			GetImageAppStream();
     20 
     21 	virtual void					GetScale(FX_FLOAT & fHScale,FX_FLOAT & fVScale);
     22 	virtual void					GetImageOffset(FX_FLOAT & x,FX_FLOAT & y);
     23 	virtual CPDF_Stream *			GetPDFStream();
     24 
     25 public:
     26 	void							SetPDFStream(CPDF_Stream* pStream);
     27 	void							GetImageSize(FX_FLOAT & fWidth,FX_FLOAT & fHeight);
     28 	CPDF_Matrix						GetImageMatrix();
     29 	CFX_ByteString					GetImageAlias();
     30 	void							SetImageAlias(FX_LPCSTR sImageAlias);
     31 
     32 protected:
     33 	CPDF_Stream*					m_pPDFStream;
     34 	CFX_ByteString					m_sImageAlias;
     35 };
     36 
     37 class PWL_CLASS CPWL_Icon : public CPWL_Image
     38 {
     39 public:
     40 	CPWL_Icon();
     41 	virtual ~CPWL_Icon();
     42 
     43 	virtual CPDF_IconFit *			GetIconFit(){return m_pIconFit;};
     44 
     45 	virtual void					GetScale(FX_FLOAT & fHScale,FX_FLOAT & fVScale);
     46 	virtual void					GetImageOffset(FX_FLOAT & x,FX_FLOAT & y);
     47 
     48 	FX_INT32						GetScaleMethod();
     49 	FX_BOOL							IsProportionalScale();
     50 	void							GetIconPosition(FX_FLOAT & fLeft, FX_FLOAT & fBottom);
     51 	FX_BOOL							GetFittingBounds();
     52 
     53 	void							SetIconFit(CPDF_IconFit * pIconFit){m_pIconFit = pIconFit;};
     54 
     55 private:
     56 	CPDF_IconFit *					m_pIconFit;
     57 };
     58 
     59 
     60 #endif  // FPDFSDK_INCLUDE_PDFWINDOW_PWL_ICON_H_
     61