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_SPECIALBUTTON_H_
8 #define FPDFSDK_INCLUDE_PDFWINDOW_PWL_SPECIALBUTTON_H_
9 
10 #include "PWL_Button.h"
11 
12 class PWL_CLASS CPWL_PushButton : public CPWL_Button
13 {
14 public:
15 	CPWL_PushButton();
16 	virtual ~CPWL_PushButton();
17 
18 	virtual CFX_ByteString		GetClassName() const;
19 	virtual CPDF_Rect			GetFocusRect() const;
20 };
21 
22 class PWL_CLASS CPWL_CheckBox : public CPWL_Button
23 {
24 public:
25 	CPWL_CheckBox();
26 	virtual ~CPWL_CheckBox();
27 
28 	virtual CFX_ByteString		GetClassName() const;
29 	virtual FX_BOOL				OnLButtonUp(const CPDF_Point & point, FX_DWORD nFlag);
30 	virtual FX_BOOL				OnChar(FX_WORD nChar, FX_DWORD nFlag);
31 
32 	void						SetCheck(FX_BOOL bCheck);
33 	FX_BOOL						IsChecked() const;
34 
35 private:
36 	FX_BOOL						m_bChecked;
37 };
38 
39 class PWL_CLASS CPWL_RadioButton : public CPWL_Button
40 {
41 public:
42 	CPWL_RadioButton();
43 	virtual ~CPWL_RadioButton();
44 
45 	virtual CFX_ByteString		GetClassName() const;
46 	virtual FX_BOOL				OnLButtonUp(const CPDF_Point & point, FX_DWORD nFlag);
47 	virtual FX_BOOL				OnChar(FX_WORD nChar, FX_DWORD nFlag);
48 
49 	void						SetCheck(FX_BOOL bCheck);
50 	FX_BOOL						IsChecked() const;
51 
52 private:
53 	FX_BOOL						m_bChecked;
54 };
55 
56 #endif  // FPDFSDK_INCLUDE_PDFWINDOW_PWL_SPECIALBUTTON_H_
57