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_PUSHBUTTON_LIGHT_H
8 #define _FWL_PUSHBUTTON_LIGHT_H
9 class CFWL_Widget;
10 class CFWL_WidgetProperties;
11 class IFWL_PushButtonDP;
12 class CFWL_PushButton;
13 class CFWL_PushButtonDP;
14 class CFWL_PushButton : public CFWL_Widget {
15  public:
16   static CFWL_PushButton* Create();
17   FWL_ERR Initialize(const CFWL_WidgetProperties* pProperties = NULL);
18   FWL_ERR GetCaption(CFX_WideString& wsCaption);
19   FWL_ERR SetCaption(const CFX_WideStringC& wsCaption);
20   CFX_DIBitmap* GetPicture();
21   FWL_ERR SetPicture(CFX_DIBitmap* pBitmap);
22   CFWL_PushButton();
23   virtual ~CFWL_PushButton();
24 
25  protected:
26   class CFWL_PushButtonDP : public IFWL_PushButtonDP {
27    public:
CFWL_PushButtonDP()28     CFWL_PushButtonDP() : m_pBitmap(NULL) {}
29     FWL_ERR GetCaption(IFWL_Widget* pWidget, CFX_WideString& wsCaption);
30     virtual CFX_DIBitmap* GetPicture(IFWL_Widget* pWidget);
31     CFX_WideString m_wsCaption;
32     CFX_DIBitmap* m_pBitmap;
33   };
34   CFWL_PushButtonDP m_buttonData;
35 };
36 #endif
37