OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #include "xfa/fwl/core/cfwl_checkbox.h" | 7 #include "xfa/fwl/core/cfwl_checkbox.h" |
8 | 8 |
9 #include <memory> | 9 #include <memory> |
10 | 10 |
11 #include "xfa/fwl/core/fwl_error.h" | 11 #include "xfa/fwl/core/fwl_error.h" |
12 | 12 |
| 13 namespace { |
| 14 |
| 15 IFWL_CheckBox* ToCheckBox(IFWL_Widget* widget) { |
| 16 return static_cast<IFWL_CheckBox*>(widget); |
| 17 } |
| 18 |
| 19 } // namespace |
| 20 |
13 CFWL_CheckBox::CFWL_CheckBox(const IFWL_App* app) : CFWL_Widget(app) {} | 21 CFWL_CheckBox::CFWL_CheckBox(const IFWL_App* app) : CFWL_Widget(app) {} |
14 | 22 |
15 CFWL_CheckBox::~CFWL_CheckBox() {} | 23 CFWL_CheckBox::~CFWL_CheckBox() {} |
16 | 24 |
17 void CFWL_CheckBox::Initialize() { | 25 void CFWL_CheckBox::Initialize() { |
18 ASSERT(!m_pIface); | 26 ASSERT(!m_pIface); |
19 | 27 |
20 std::unique_ptr<IFWL_CheckBox> pCheckBox(new IFWL_CheckBox( | 28 std::unique_ptr<IFWL_CheckBox> pCheckBox(new IFWL_CheckBox( |
21 m_pApp, m_pProperties->MakeWidgetImpProperties(&m_checkboxData))); | 29 m_pApp, m_pProperties->MakeWidgetImpProperties(&m_checkboxData))); |
22 pCheckBox->Initialize(); | 30 pCheckBox->Initialize(); |
23 | 31 |
24 m_pIface = std::move(pCheckBox); | 32 m_pIface = std::move(pCheckBox); |
25 CFWL_Widget::Initialize(); | 33 CFWL_Widget::Initialize(); |
26 } | 34 } |
27 | 35 |
28 IFWL_CheckBox* CFWL_CheckBox::GetWidget() { | |
29 return static_cast<IFWL_CheckBox*>(m_pIface.get()); | |
30 } | |
31 | |
32 const IFWL_CheckBox* CFWL_CheckBox::GetWidget() const { | |
33 return static_cast<IFWL_CheckBox*>(m_pIface.get()); | |
34 } | |
35 | |
36 FWL_Error CFWL_CheckBox::SetCaption(const CFX_WideStringC& wsCaption) { | 36 FWL_Error CFWL_CheckBox::SetCaption(const CFX_WideStringC& wsCaption) { |
37 m_checkboxData.m_wsCaption = wsCaption; | 37 m_checkboxData.m_wsCaption = wsCaption; |
38 return FWL_Error::Succeeded; | 38 return FWL_Error::Succeeded; |
39 } | 39 } |
40 | 40 |
41 FWL_Error CFWL_CheckBox::SetBoxSize(FX_FLOAT fHeight) { | 41 FWL_Error CFWL_CheckBox::SetBoxSize(FX_FLOAT fHeight) { |
42 m_checkboxData.m_fBoxHeight = fHeight; | 42 m_checkboxData.m_fBoxHeight = fHeight; |
43 return FWL_Error::Succeeded; | 43 return FWL_Error::Succeeded; |
44 } | 44 } |
45 | 45 |
46 int32_t CFWL_CheckBox::GetCheckState() { | 46 int32_t CFWL_CheckBox::GetCheckState() { |
47 return GetWidget()->GetCheckState(); | 47 return ToCheckBox(GetWidget())->GetCheckState(); |
48 } | 48 } |
49 | 49 |
50 FWL_Error CFWL_CheckBox::SetCheckState(int32_t iCheck) { | 50 FWL_Error CFWL_CheckBox::SetCheckState(int32_t iCheck) { |
51 return GetWidget()->SetCheckState(iCheck); | 51 return ToCheckBox(GetWidget())->SetCheckState(iCheck); |
52 } | 52 } |
53 | 53 |
54 CFWL_CheckBox::CFWL_CheckBoxDP::CFWL_CheckBoxDP() | 54 CFWL_CheckBox::CFWL_CheckBoxDP::CFWL_CheckBoxDP() |
55 : m_fBoxHeight(16.0f), m_wsCaption(L"Check box") {} | 55 : m_fBoxHeight(16.0f), m_wsCaption(L"Check box") {} |
56 | 56 |
57 FWL_Error CFWL_CheckBox::CFWL_CheckBoxDP::GetCaption( | 57 FWL_Error CFWL_CheckBox::CFWL_CheckBoxDP::GetCaption( |
58 IFWL_Widget* pWidget, | 58 IFWL_Widget* pWidget, |
59 CFX_WideString& wsCaption) { | 59 CFX_WideString& wsCaption) { |
60 wsCaption = m_wsCaption; | 60 wsCaption = m_wsCaption; |
61 return FWL_Error::Succeeded; | 61 return FWL_Error::Succeeded; |
62 } | 62 } |
63 | 63 |
64 FX_FLOAT CFWL_CheckBox::CFWL_CheckBoxDP::GetBoxSize(IFWL_Widget* pWidget) { | 64 FX_FLOAT CFWL_CheckBox::CFWL_CheckBoxDP::GetBoxSize(IFWL_Widget* pWidget) { |
65 return m_fBoxHeight; | 65 return m_fBoxHeight; |
66 } | 66 } |
OLD | NEW |