| Index: cc/input/layer_selection_bound.cc
|
| diff --git a/cc/input/layer_selection_bound.cc b/cc/input/layer_selection_bound.cc
|
| index 2761e9e2b43aa1bceed58da58b1f53c7c0e01fcf..7abd9e000030aaf403063634d1ae0ef4985a8c89 100644
|
| --- a/cc/input/layer_selection_bound.cc
|
| +++ b/cc/input/layer_selection_bound.cc
|
| @@ -2,9 +2,49 @@
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| +#include "base/logging.h"
|
| #include "cc/input/layer_selection_bound.h"
|
| +#include "cc/proto/gfx_conversions.h"
|
| +#include "cc/proto/layer_selection_bound.pb.h"
|
|
|
| namespace cc {
|
| +namespace {
|
| +
|
| +proto::SelectionBoundType SelectionBoundTypeToProtobuf(
|
| + const SelectionBoundType& type) {
|
| + switch (type) {
|
| + case SELECTION_BOUND_LEFT:
|
| + return proto::SelectionBoundType::LEFT;
|
| + case SELECTION_BOUND_RIGHT:
|
| + return proto::SelectionBoundType::RIGHT;
|
| + case SELECTION_BOUND_CENTER:
|
| + return proto::SelectionBoundType::CENTER;
|
| + case SELECTION_BOUND_EMPTY:
|
| + return proto::SelectionBoundType::EMPTY;
|
| + }
|
| + NOTREACHED() << "proto::SelectionBoundType::UNKNOWN";
|
| + return proto::SelectionBoundType::UNKNOWN;
|
| +}
|
| +
|
| +SelectionBoundType SelectionBoundTypeFromProtobuf(
|
| + const proto::SelectionBoundType& type) {
|
| + switch (type) {
|
| + case proto::SelectionBoundType::LEFT:
|
| + return SELECTION_BOUND_LEFT;
|
| + case proto::SelectionBoundType::RIGHT:
|
| + return SELECTION_BOUND_RIGHT;
|
| + case proto::SelectionBoundType::CENTER:
|
| + return SELECTION_BOUND_CENTER;
|
| + case proto::SelectionBoundType::EMPTY:
|
| + return SELECTION_BOUND_EMPTY;
|
| + case proto::SelectionBoundType::UNKNOWN:
|
| + NOTREACHED() << "proto::SelectionBoundType::UNKNOWN";
|
| + return SELECTION_BOUND_EMPTY;
|
| + }
|
| + return SELECTION_BOUND_EMPTY;
|
| +}
|
| +
|
| +} // namespace
|
|
|
| LayerSelectionBound::LayerSelectionBound()
|
| : type(SELECTION_BOUND_EMPTY), layer_id(0) {
|
| @@ -13,15 +53,28 @@ LayerSelectionBound::LayerSelectionBound()
|
| LayerSelectionBound::~LayerSelectionBound() {
|
| }
|
|
|
| -bool operator==(const LayerSelectionBound& lhs,
|
| - const LayerSelectionBound& rhs) {
|
| - return lhs.type == rhs.type && lhs.layer_id == rhs.layer_id &&
|
| - lhs.edge_top == rhs.edge_top && lhs.edge_bottom == rhs.edge_bottom;
|
| +bool LayerSelectionBound::operator==(const LayerSelectionBound& other) const {
|
| + return type == other.type && layer_id == other.layer_id &&
|
| + edge_top == other.edge_top && edge_bottom == other.edge_bottom;
|
| +}
|
| +
|
| +bool LayerSelectionBound::operator!=(const LayerSelectionBound& other) const {
|
| + return !(*this == other);
|
| +}
|
| +
|
| +void LayerSelectionBound::ToProtobuf(proto::LayerSelectionBound* proto) const {
|
| + proto->set_type(SelectionBoundTypeToProtobuf(type));
|
| + PointToProto(edge_top, proto->mutable_edge_top());
|
| + PointToProto(edge_bottom, proto->mutable_edge_bottom());
|
| + proto->set_layer_id(layer_id);
|
| }
|
|
|
| -bool operator!=(const LayerSelectionBound& lhs,
|
| - const LayerSelectionBound& rhs) {
|
| - return !(lhs == rhs);
|
| +void LayerSelectionBound::FromProtobuf(
|
| + const proto::LayerSelectionBound& proto) {
|
| + type = SelectionBoundTypeFromProtobuf(proto.type());
|
| + edge_top = ProtoToPoint(proto.edge_top());
|
| + edge_bottom = ProtoToPoint(proto.edge_bottom());
|
| + layer_id = proto.layer_id();
|
| }
|
|
|
| } // namespace cc
|
|
|