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 _FWL_FORMPROXY_IMP_H 8 #define _FWL_FORMPROXY_IMP_H 9 class CFWL_WidgetImp; 10 class CFWL_WidgetImpProperties; 11 class CFWL_WidgetImpDelegate; 12 class CFWL_FormImp; 13 class CFWL_FormProxyImp; 14 class CFWL_FormProxyImpDelegate; 15 class CFWL_FormProxyImp : public CFWL_FormImp { 16 public: 17 CFWL_FormProxyImp(const CFWL_WidgetImpProperties& properties, 18 IFWL_Widget* pOuter); 19 ~CFWL_FormProxyImp(); 20 virtual FWL_ERR GetClassName(CFX_WideString& wsClass) const; 21 virtual FX_DWORD GetClassID() const; 22 virtual FX_BOOL IsInstance(const CFX_WideStringC& wsClass) const; 23 virtual FWL_ERR Initialize(); 24 virtual FWL_ERR Finalize(); 25 virtual FWL_ERR Update(); 26 virtual FWL_ERR DrawWidget(CFX_Graphics* pGraphics, 27 const CFX_Matrix* pMatrix = NULL); 28 29 protected: 30 friend class CFWL_FormProxyImpDelegate; 31 }; 32 class CFWL_FormProxyImpDelegate : public CFWL_WidgetImpDelegate { 33 public: 34 CFWL_FormProxyImpDelegate(CFWL_FormProxyImp* pOwner); 35 int32_t OnProcessMessage(CFWL_Message* pMessage) override; 36 37 protected: 38 CFWL_FormProxyImp* m_pOwner; 39 }; 40 #endif 41