[NaCl SDK]: use standard __BEGIN_DECLS macros in sys/select.h
[chromium-blink-merge.git] / cc / blink / web_nine_patch_layer_impl.cc
blob6b3eacf17c9baeba7c6c3d42a8906b3cffa29d03
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.
5 #include "cc/blink/web_nine_patch_layer_impl.h"
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"
14 namespace cc_blink {
16 WebNinePatchLayerImpl::WebNinePatchLayerImpl() {
17 layer_.reset(new WebLayerImpl(cc::NinePatchLayer::Create()));
20 WebNinePatchLayerImpl::~WebNinePatchLayerImpl() {
23 blink::WebLayer* WebNinePatchLayerImpl::layer() {
24 return layer_.get();
27 void WebNinePatchLayerImpl::setBitmap(SkBitmap bitmap,
28 const blink::WebRect& aperture) {
29 setBitmap(bitmap);
30 setAperture(aperture);
31 setBorder(blink::WebRect(aperture.x,
32 aperture.y,
33 bitmap.width() - aperture.width,
34 bitmap.height() - aperture.height));
37 void WebNinePatchLayerImpl::setBitmap(SkBitmap bitmap) {
38 cc::NinePatchLayer* nine_patch =
39 static_cast<cc::NinePatchLayer*>(layer_->layer());
40 nine_patch->SetBitmap(bitmap);
43 void WebNinePatchLayerImpl::setAperture(const blink::WebRect& aperture) {
44 cc::NinePatchLayer* nine_patch =
45 static_cast<cc::NinePatchLayer*>(layer_->layer());
46 nine_patch->SetAperture(gfx::Rect(aperture));
49 void WebNinePatchLayerImpl::setBorder(const blink::WebRect& border) {
50 cc::NinePatchLayer* nine_patch =
51 static_cast<cc::NinePatchLayer*>(layer_->layer());
52 nine_patch->SetBorder(gfx::Rect(border));
55 void WebNinePatchLayerImpl::setFillCenter(bool fill_center) {
56 cc::NinePatchLayer* nine_patch =
57 static_cast<cc::NinePatchLayer*>(layer_->layer());
58 nine_patch->SetFillCenter(fill_center);
61 } // namespace cc_blink