Home | History | Annotate | Download | only in app
      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 _FXFA_FORMFILLER_PUSHBUTTON_IMP_H
      8 #define _FXFA_FORMFILLER_PUSHBUTTON_IMP_H
      9 #define XFA_FWL_PSBSTYLEEXT_HiliteNone (0L << 0)
     10 #define XFA_FWL_PSBSTYLEEXT_HiliteInverted (1L << 0)
     11 #define XFA_FWL_PSBSTYLEEXT_HilitePush (2L << 0)
     12 #define XFA_FWL_PSBSTYLEEXT_HiliteOutLine (4L << 0)
     13 class CXFA_FFPushButton : public CXFA_FFField {
     14  public:
     15   CXFA_FFPushButton(CXFA_FFPageView* pPageView, CXFA_WidgetAcc* pDataAcc);
     16   virtual ~CXFA_FFPushButton();
     17   virtual void RenderWidget(CFX_Graphics* pGS,
     18                             CFX_Matrix* pMatrix = NULL,
     19                             FX_DWORD dwStatus = 0,
     20                             int32_t iRotate = 0);
     21   virtual FX_BOOL LoadWidget();
     22   virtual void UnloadWidget();
     23   virtual FX_BOOL PerformLayout();
     24   virtual void UpdateWidgetProperty();
     25   virtual int32_t OnProcessMessage(CFWL_Message* pMessage);
     26   virtual FWL_ERR OnProcessEvent(CFWL_Event* pEvent);
     27   virtual FWL_ERR OnDrawWidget(CFX_Graphics* pGraphics,
     28                                const CFX_Matrix* pMatrix = NULL);
     29 
     30  protected:
     31   void LoadHighlightCaption();
     32   void LayoutHighlightCaption();
     33   void RenderHighlightCaption(CFX_Graphics* pGS, CFX_Matrix* pMatrix = NULL);
     34   FX_FLOAT GetLineWidth();
     35   FX_ARGB GetLineColor();
     36   FX_ARGB GetFillColor();
     37   CXFA_TextLayout* m_pRolloverTextLayout;
     38   CXFA_TextLayout* m_pDownTextLayout;
     39   CXFA_TextProvider* m_pDownProvider;
     40   CXFA_TextProvider* m_pRollProvider;
     41   IFWL_WidgetDelegate* m_pOldDelegate;
     42 };
     43 #endif
     44