diff options
Diffstat (limited to 'xfa/fwl/core/cfwl_pushbutton.cpp')
-rw-r--r-- | xfa/fwl/core/cfwl_pushbutton.cpp | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/xfa/fwl/core/cfwl_pushbutton.cpp b/xfa/fwl/core/cfwl_pushbutton.cpp new file mode 100644 index 0000000000..8425f5de24 --- /dev/null +++ b/xfa/fwl/core/cfwl_pushbutton.cpp @@ -0,0 +1,70 @@ +// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#include "xfa/fwl/core/cfwl_pushbutton.h" + +#include <memory> + +IFWL_PushButton* CFWL_PushButton::GetWidget() { + return static_cast<IFWL_PushButton*>(m_pIface.get()); +} + +const IFWL_PushButton* CFWL_PushButton::GetWidget() const { + return static_cast<IFWL_PushButton*>(m_pIface.get()); +} + +FWL_Error CFWL_PushButton::Initialize( + const CFWL_WidgetProperties* pProperties) { + if (m_pIface) + return FWL_Error::Indefinite; + if (pProperties) { + *m_pProperties = *pProperties; + } + std::unique_ptr<IFWL_PushButton> pPushButton(new IFWL_PushButton( + m_pProperties->MakeWidgetImpProperties(&m_buttonData))); + FWL_Error ret = pPushButton->Initialize(); + if (ret != FWL_Error::Succeeded) { + return ret; + } + m_pIface = std::move(pPushButton); + CFWL_Widget::Initialize(); + return FWL_Error::Succeeded; +} + +FWL_Error CFWL_PushButton::GetCaption(CFX_WideString& wsCaption) { + wsCaption = m_buttonData.m_wsCaption; + return FWL_Error::Succeeded; +} + +FWL_Error CFWL_PushButton::SetCaption(const CFX_WideStringC& wsCaption) { + m_buttonData.m_wsCaption = wsCaption; + return FWL_Error::Succeeded; +} + +CFX_DIBitmap* CFWL_PushButton::GetPicture() { + return m_buttonData.m_pBitmap; +} + +FWL_Error CFWL_PushButton::SetPicture(CFX_DIBitmap* pBitmap) { + m_buttonData.m_pBitmap = pBitmap; + return FWL_Error::Succeeded; +} + +CFWL_PushButton::CFWL_PushButton() {} + +CFWL_PushButton::~CFWL_PushButton() {} + +FWL_Error CFWL_PushButton::CFWL_PushButtonDP::GetCaption( + IFWL_Widget* pWidget, + CFX_WideString& wsCaption) { + wsCaption = m_wsCaption; + return FWL_Error::Succeeded; +} + +CFX_DIBitmap* CFWL_PushButton::CFWL_PushButtonDP::GetPicture( + IFWL_Widget* pWidget) { + return m_pBitmap; +} |