1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "cc/blink/web_nine_patch_layer_impl.h"
6
7#include "base/command_line.h"
8#include "cc/base/switches.h"
9#include "cc/blink/web_layer_impl.h"
10#include "cc/blink/web_layer_impl_fixed_bounds.h"
11#include "cc/layers/nine_patch_layer.h"
12#include "cc/layers/picture_image_layer.h"
13
14namespace cc_blink {
15
16WebNinePatchLayerImpl::WebNinePatchLayerImpl() {
17  layer_.reset(new WebLayerImpl(cc::NinePatchLayer::Create()));
18}
19
20WebNinePatchLayerImpl::~WebNinePatchLayerImpl() {
21}
22
23blink::WebLayer* WebNinePatchLayerImpl::layer() {
24  return layer_.get();
25}
26
27void WebNinePatchLayerImpl::setBitmap(const SkBitmap& bitmap) {
28  cc::NinePatchLayer* nine_patch =
29      static_cast<cc::NinePatchLayer*>(layer_->layer());
30  nine_patch->SetBitmap(bitmap);
31}
32
33void WebNinePatchLayerImpl::setAperture(const blink::WebRect& aperture) {
34  cc::NinePatchLayer* nine_patch =
35      static_cast<cc::NinePatchLayer*>(layer_->layer());
36  nine_patch->SetAperture(gfx::Rect(aperture));
37}
38
39void WebNinePatchLayerImpl::setBorder(const blink::WebRect& border) {
40  cc::NinePatchLayer* nine_patch =
41      static_cast<cc::NinePatchLayer*>(layer_->layer());
42  nine_patch->SetBorder(gfx::Rect(border));
43}
44
45}  // namespace cc_blink
46