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 CFWL_CheckBox::CFWL_CheckBox(const IFWL_App* app) : CFWL_Widget(app) {} |
| 14 |
| 15 CFWL_CheckBox::~CFWL_CheckBox() {} |
| 16 |
| 17 void CFWL_CheckBox::Initialize(const CFWL_WidgetProperties* pProperties) { |
| 18 ASSERT(!m_pIface); |
| 19 |
| 20 if (pProperties) |
| 21 *m_pProperties = *pProperties; |
| 22 |
| 23 std::unique_ptr<IFWL_CheckBox> pCheckBox(new IFWL_CheckBox( |
| 24 m_pApp, m_pProperties->MakeWidgetImpProperties(&m_checkboxData))); |
| 25 pCheckBox->Initialize(); |
| 26 |
| 27 m_pIface = std::move(pCheckBox); |
| 28 CFWL_Widget::Initialize(pProperties); |
| 29 } |
| 30 |
13 IFWL_CheckBox* CFWL_CheckBox::GetWidget() { | 31 IFWL_CheckBox* CFWL_CheckBox::GetWidget() { |
14 return static_cast<IFWL_CheckBox*>(m_pIface.get()); | 32 return static_cast<IFWL_CheckBox*>(m_pIface.get()); |
15 } | 33 } |
16 | 34 |
17 const IFWL_CheckBox* CFWL_CheckBox::GetWidget() const { | 35 const IFWL_CheckBox* CFWL_CheckBox::GetWidget() const { |
18 return static_cast<IFWL_CheckBox*>(m_pIface.get()); | 36 return static_cast<IFWL_CheckBox*>(m_pIface.get()); |
19 } | 37 } |
20 | 38 |
21 FWL_Error CFWL_CheckBox::Initialize(const CFWL_WidgetProperties* pProperties) { | |
22 if (m_pIface) | |
23 return FWL_Error::Indefinite; | |
24 if (pProperties) { | |
25 *m_pProperties = *pProperties; | |
26 } | |
27 std::unique_ptr<IFWL_CheckBox> pCheckBox(new IFWL_CheckBox( | |
28 m_pProperties->MakeWidgetImpProperties(&m_checkboxData))); | |
29 FWL_Error ret = pCheckBox->Initialize(); | |
30 if (ret != FWL_Error::Succeeded) { | |
31 return ret; | |
32 } | |
33 m_pIface = std::move(pCheckBox); | |
34 CFWL_Widget::Initialize(); | |
35 return FWL_Error::Succeeded; | |
36 } | |
37 | |
38 FWL_Error CFWL_CheckBox::SetCaption(const CFX_WideStringC& wsCaption) { | 39 FWL_Error CFWL_CheckBox::SetCaption(const CFX_WideStringC& wsCaption) { |
39 m_checkboxData.m_wsCaption = wsCaption; | 40 m_checkboxData.m_wsCaption = wsCaption; |
40 return FWL_Error::Succeeded; | 41 return FWL_Error::Succeeded; |
41 } | 42 } |
42 | 43 |
43 FWL_Error CFWL_CheckBox::SetBoxSize(FX_FLOAT fHeight) { | 44 FWL_Error CFWL_CheckBox::SetBoxSize(FX_FLOAT fHeight) { |
44 m_checkboxData.m_fBoxHeight = fHeight; | 45 m_checkboxData.m_fBoxHeight = fHeight; |
45 return FWL_Error::Succeeded; | 46 return FWL_Error::Succeeded; |
46 } | 47 } |
47 | 48 |
48 int32_t CFWL_CheckBox::GetCheckState() { | 49 int32_t CFWL_CheckBox::GetCheckState() { |
49 return GetWidget()->GetCheckState(); | 50 return GetWidget()->GetCheckState(); |
50 } | 51 } |
51 | 52 |
52 FWL_Error CFWL_CheckBox::SetCheckState(int32_t iCheck) { | 53 FWL_Error CFWL_CheckBox::SetCheckState(int32_t iCheck) { |
53 return GetWidget()->SetCheckState(iCheck); | 54 return GetWidget()->SetCheckState(iCheck); |
54 } | 55 } |
55 | 56 |
56 CFWL_CheckBox::CFWL_CheckBox() {} | |
57 | |
58 CFWL_CheckBox::~CFWL_CheckBox() {} | |
59 | |
60 CFWL_CheckBox::CFWL_CheckBoxDP::CFWL_CheckBoxDP() | 57 CFWL_CheckBox::CFWL_CheckBoxDP::CFWL_CheckBoxDP() |
61 : m_fBoxHeight(16.0f), m_wsCaption(L"Check box") {} | 58 : m_fBoxHeight(16.0f), m_wsCaption(L"Check box") {} |
62 | 59 |
63 FWL_Error CFWL_CheckBox::CFWL_CheckBoxDP::GetCaption( | 60 FWL_Error CFWL_CheckBox::CFWL_CheckBoxDP::GetCaption( |
64 IFWL_Widget* pWidget, | 61 IFWL_Widget* pWidget, |
65 CFX_WideString& wsCaption) { | 62 CFX_WideString& wsCaption) { |
66 wsCaption = m_wsCaption; | 63 wsCaption = m_wsCaption; |
67 return FWL_Error::Succeeded; | 64 return FWL_Error::Succeeded; |
68 } | 65 } |
69 | 66 |
70 FX_FLOAT CFWL_CheckBox::CFWL_CheckBoxDP::GetBoxSize(IFWL_Widget* pWidget) { | 67 FX_FLOAT CFWL_CheckBox::CFWL_CheckBoxDP::GetBoxSize(IFWL_Widget* pWidget) { |
71 return m_fBoxHeight; | 68 return m_fBoxHeight; |
72 } | 69 } |
OLD | NEW |