| Index: ui/base/touch/selection_bound.h
|
| diff --git a/ui/base/touch/selection_bound.h b/ui/base/touch/selection_bound.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..f7f0f97870a6a9b23417be692a21468b6c421d90
|
| --- /dev/null
|
| +++ b/ui/base/touch/selection_bound.h
|
| @@ -0,0 +1,75 @@
|
| +// Copyright 2014 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#ifndef UI_BASE_TOUCH_SELECTION_BOUND_H_
|
| +#define UI_BASE_TOUCH_SELECTION_BOUND_H_
|
| +
|
| +#include "ui/base/ui_base_export.h"
|
| +#include "ui/gfx/point.h"
|
| +#include "ui/gfx/point_f.h"
|
| +
|
| +namespace cc {
|
| +struct ViewportSelectionBound;
|
| +}
|
| +
|
| +namespace gfx {
|
| +class Rect;
|
| +}
|
| +
|
| +namespace ui {
|
| +
|
| +// Bound of a selection end-point.
|
| +class UI_BASE_EXPORT SelectionBound {
|
| + public:
|
| + enum Type {
|
| + LEFT,
|
| + RIGHT,
|
| + CENTER,
|
| + EMPTY,
|
| + LAST = EMPTY
|
| + };
|
| +
|
| + SelectionBound();
|
| + explicit SelectionBound(const cc::ViewportSelectionBound& bound);
|
| + ~SelectionBound();
|
| +
|
| + Type type() const { return type_; }
|
| + void set_type(Type value) { type_ = value; }
|
| +
|
| + const gfx::PointF& edge_top() const { return edge_top_; }
|
| + const gfx::Point& edge_top_rounded() const { return edge_top_rounded_; }
|
| + void SetEdgeTop(const gfx::PointF& value);
|
| +
|
| + const gfx::PointF& edge_bottom() const { return edge_bottom_; }
|
| + const gfx::Point& edge_bottom_rounded() const { return edge_bottom_rounded_; }
|
| + void SetEdgeBottom(const gfx::PointF& value);
|
| +
|
| + void SetEdge(const gfx::PointF& top, const gfx::PointF& bottom);
|
| +
|
| + bool visible() const { return visible_; }
|
| + void set_visible(bool value) { visible_ = value; }
|
| +
|
| + // Returns the vertical difference between rounded top and bottom.
|
| + int GetHeight() const;
|
| +
|
| + private:
|
| + Type type_;
|
| + gfx::PointF edge_top_;
|
| + gfx::PointF edge_bottom_;
|
| + gfx::Point edge_top_rounded_;
|
| + gfx::Point edge_bottom_rounded_;
|
| + bool visible_;
|
| +};
|
| +
|
| +UI_BASE_EXPORT bool operator==(const SelectionBound& lhs,
|
| + const SelectionBound& rhs);
|
| +UI_BASE_EXPORT bool operator!=(const SelectionBound& lhs,
|
| + const SelectionBound& rhs);
|
| +
|
| +UI_BASE_EXPORT gfx::Rect RectBetweenSelectionBounds(const SelectionBound& b1,
|
| + const SelectionBound& b2);
|
| +
|
| +} // namespace ui
|
| +
|
| +#endif // UI_BASE_TOUCH_SELECTION_BOUND_H_
|
|
|