blob: 817362a41c789678e7e3521c6f1002df925aeda0 [file] [log] [blame]
// 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
#ifndef XFA_FWL_LIGHTWIDGET_CFWL_TOOLTIP_H_
#define XFA_FWL_LIGHTWIDGET_CFWL_TOOLTIP_H_
#include "xfa/fwl/basewidget/ifwl_tooltip.h"
#include "xfa/fwl/lightwidget/cfwl_widget.h"
class CFWL_ToolTip : public CFWL_Widget {
public:
static CFWL_ToolTip* Create();
FWL_ERR Initialize(const CFWL_WidgetProperties* pProperties = NULL);
FWL_ERR GetCaption(CFX_WideString& wsCaption);
FWL_ERR SetCaption(const CFX_WideStringC& wsCaption);
int32_t GetInitialDelay();
int32_t SetInitialDelay(int32_t nDelayTime);
int32_t GetAutoPopDelay();
int32_t SetAutoPopDelay(int32_t nDelayTime);
CFX_DIBitmap* GetToolTipIcon();
FWL_ERR SetToolTipIcon(CFX_DIBitmap* pBitmap);
CFX_SizeF GetToolTipIconSize();
FWL_ERR SetToolTipIconSize(CFX_SizeF fSize);
FWL_ERR SetAnchor(const CFX_RectF& rtAnchor);
FWL_ERR Show();
FWL_ERR Hide();
CFWL_ToolTip();
virtual ~CFWL_ToolTip();
protected:
class CFWL_ToolTipDP : public IFWL_ToolTipDP {
public:
CFWL_ToolTipDP();
FWL_ERR GetCaption(IFWL_Widget* pWidget, CFX_WideString& wsCaption);
int32_t GetInitialDelay(IFWL_Widget* pWidget);
int32_t GetAutoPopDelay(IFWL_Widget* pWidget);
CFX_DIBitmap* GetToolTipIcon(IFWL_Widget* pWidget);
CFX_SizeF GetToolTipIconSize(IFWL_Widget* pWidget);
CFX_RectF GetAnchor();
CFX_WideString m_wsCaption;
int32_t m_nInitDelayTime;
int32_t m_nAutoPopDelayTime;
CFX_DIBitmap* m_pBitmap;
CFX_SizeF m_fIconSize;
CFX_RectF m_fAnchor;
};
CFWL_ToolTipDP m_tooltipData;
};
#endif // XFA_FWL_LIGHTWIDGET_CFWL_TOOLTIP_H_