diff options
author | Dan Sinclair <dsinclair@chromium.org> | 2016-03-23 15:51:01 -0400 |
---|---|---|
committer | Dan Sinclair <dsinclair@chromium.org> | 2016-03-23 15:51:01 -0400 |
commit | 398a43d83174d75366da57726ff81f199f04e24c (patch) | |
tree | cf03a75139da7eb059af19f346549441932b67c9 /xfa/fwl/basewidget/ifwl_scrollbar.h | |
parent | a8a28e0702a1874d29d3c9f2b155bce1557eb4fd (diff) | |
download | pdfium-398a43d83174d75366da57726ff81f199f04e24c.tar.xz |
Move xfa/include/fwl/{core,basewidget} to xfa/fwl/{core,basewidget}.
This CL moves and splits the FWL files from the core and basewidget directories
into the non-include folders.
R=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1827923002 .
Diffstat (limited to 'xfa/fwl/basewidget/ifwl_scrollbar.h')
-rw-r--r-- | xfa/fwl/basewidget/ifwl_scrollbar.h | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/xfa/fwl/basewidget/ifwl_scrollbar.h b/xfa/fwl/basewidget/ifwl_scrollbar.h new file mode 100644 index 0000000000..c481332132 --- /dev/null +++ b/xfa/fwl/basewidget/ifwl_scrollbar.h @@ -0,0 +1,77 @@ +// 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_BASEWIDGET_IFWL_SCROLLBAR_H_ +#define XFA_FWL_BASEWIDGET_IFWL_SCROLLBAR_H_ + +#include "xfa/fwl/core/fwl_widgetimp.h" +#include "xfa/fwl/core/ifwl_widget.h" +#include "xfa/fwl/core/ifwl_dataprovider.h" +#include "xfa/fwl/core/cfwl_widgetimpproperties.h" +#include "core/fxcrt/include/fx_system.h" +#include "xfa/fwl/core/fwl_error.h" + +#define FWL_CLASS_ScrollBar L"FWL_SCROLLBAR" +#define FWL_CLASSHASH_ScrollBar 2826584844 +#define FWL_STYLEEXT_SCB_Horz (0L << 0) +#define FWL_STYLEEXT_SCB_Vert (1L << 0) +#define FWL_PART_SCB_Border 1 +#define FWL_PART_SCB_Edge 2 +#define FWL_PART_SCB_Background 3 +#define FWL_PART_SCB_ForeArrow 4 +#define FWL_PART_SCB_BackArrow 5 +#define FWL_PART_SCB_Thumb 6 +#define FWL_PART_SCB_LowerTrack 7 +#define FWL_PART_SCB_UpperTrack 8 +#define FWL_PARTSTATE_SCB_Normal (0L << 0) +#define FWL_PARTSTATE_SCB_Hovered (1L << 0) +#define FWL_PARTSTATE_SCB_Pressed (2L << 0) +#define FWL_PARTSTATE_SCB_Disabled (3L << 0) +#define FWL_WGTHITTEST_SCB_ForeArrow FWL_WGTHITTEST_MAX + 1 +#define FWL_WGTHITTEST_SCB_BackArrow FWL_WGTHITTEST_MAX + 2 +#define FWL_WGTHITTEST_SCB_LowerTrack FWL_WGTHITTEST_MAX + 3 +#define FWL_WGTHITTEST_SCB_UpperTrack FWL_WGTHITTEST_MAX + 4 +#define FWL_WGTHITTEST_SCB_Thumb FWL_WGTHITTEST_MAX + 5 +#define FWL_CAPACITY_SCB_Size FWL_WGTCAPACITY_MAX + +enum FWL_SCBCODE { + FWL_SCBCODE_None = 1, + FWL_SCBCODE_Min, + FWL_SCBCODE_Max, + FWL_SCBCODE_PageBackward, + FWL_SCBCODE_PageForward, + FWL_SCBCODE_StepBackward, + FWL_SCBCODE_StepForward, + FWL_SCBCODE_Pos, + FWL_SCBCODE_TrackPos, + FWL_SCBCODE_EndScroll, +}; + +class IFWL_ScrollBarDP : public IFWL_DataProvider {}; + +class IFWL_ScrollBar : public IFWL_Widget { + public: + static IFWL_ScrollBar* Create(const CFWL_WidgetImpProperties& properties, + IFWL_Widget* pOuter); + + FX_BOOL IsVertical(); + FWL_ERR GetRange(FX_FLOAT& fMin, FX_FLOAT& fMax); + FWL_ERR SetRange(FX_FLOAT fMin, FX_FLOAT fMax); + FX_FLOAT GetPageSize(); + FWL_ERR SetPageSize(FX_FLOAT fPageSize); + FX_FLOAT GetStepSize(); + FWL_ERR SetStepSize(FX_FLOAT fStepSize); + FX_FLOAT GetPos(); + FWL_ERR SetPos(FX_FLOAT fPos); + FX_FLOAT GetTrackPos(); + FWL_ERR SetTrackPos(FX_FLOAT fTrackPos); + FX_BOOL DoScroll(FX_DWORD dwCode, FX_FLOAT fPos = 0.0f); + + protected: + IFWL_ScrollBar(); +}; + +#endif // XFA_FWL_BASEWIDGET_IFWL_SCROLLBAR_H_ |