summaryrefslogtreecommitdiffstats
path: root/cc/blink/web_nine_patch_layer_impl.cc
blob: 8dd9980f331fd88c3d6336068a8175793d3e0691 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
// 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.

#include "cc/blink/web_nine_patch_layer_impl.h"

#include "base/command_line.h"
#include "cc/base/switches.h"
#include "cc/blink/web_layer_impl.h"
#include "cc/blink/web_layer_impl_fixed_bounds.h"
#include "cc/layers/nine_patch_layer.h"
#include "cc/layers/picture_image_layer.h"

namespace cc_blink {

WebNinePatchLayerImpl::WebNinePatchLayerImpl() {
  layer_.reset(new WebLayerImpl(
      cc::NinePatchLayer::Create(WebLayerImpl::LayerSettings())));
}

WebNinePatchLayerImpl::~WebNinePatchLayerImpl() {
}

blink::WebLayer* WebNinePatchLayerImpl::layer() {
  return layer_.get();
}

void WebNinePatchLayerImpl::setBitmap(const SkBitmap& bitmap) {
  cc::NinePatchLayer* nine_patch =
      static_cast<cc::NinePatchLayer*>(layer_->layer());
  nine_patch->SetBitmap(bitmap);
}

void WebNinePatchLayerImpl::setAperture(const blink::WebRect& aperture) {
  cc::NinePatchLayer* nine_patch =
      static_cast<cc::NinePatchLayer*>(layer_->layer());
  nine_patch->SetAperture(gfx::Rect(aperture));
}

void WebNinePatchLayerImpl::setBorder(const blink::WebRect& border) {
  cc::NinePatchLayer* nine_patch =
      static_cast<cc::NinePatchLayer*>(layer_->layer());
  nine_patch->SetBorder(gfx::Rect(border));
}

}  // namespace cc_blink