Adding a logging class to cast.
[chromium-blink-merge.git] / cc / layers / nine_patch_layer.cc
blobf6761318cd866a60530eaa07dd10dca99e44b4be
1 // Copyright 2012 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/layers/nine_patch_layer.h"
7 #include "cc/layers/nine_patch_layer_impl.h"
8 #include "cc/resources/prioritized_resource.h"
9 #include "cc/resources/resource_update.h"
10 #include "cc/resources/resource_update_queue.h"
11 #include "cc/resources/scoped_ui_resource.h"
12 #include "cc/resources/ui_resource_bitmap.h"
13 #include "cc/trees/layer_tree_host.h"
15 namespace cc {
17 scoped_refptr<NinePatchLayer> NinePatchLayer::Create() {
18 return make_scoped_refptr(new NinePatchLayer());
21 NinePatchLayer::NinePatchLayer() : fill_center_(false) {}
23 NinePatchLayer::~NinePatchLayer() {}
25 scoped_ptr<LayerImpl> NinePatchLayer::CreateLayerImpl(
26 LayerTreeImpl* tree_impl) {
27 return NinePatchLayerImpl::Create(tree_impl, id()).PassAs<LayerImpl>();
30 void NinePatchLayer::SetBorder(gfx::Rect border) {
31 if (border == border_)
32 return;
33 border_ = border;
34 SetNeedsCommit();
37 void NinePatchLayer::SetAperture(gfx::Rect aperture) {
38 if (image_aperture_ == aperture)
39 return;
41 image_aperture_ = aperture;
42 SetNeedsCommit();
45 void NinePatchLayer::SetFillCenter(bool fill_center) {
46 if (fill_center_ == fill_center)
47 return;
49 fill_center_ = fill_center;
50 SetNeedsCommit();
53 void NinePatchLayer::PushPropertiesTo(LayerImpl* layer) {
54 UIResourceLayer::PushPropertiesTo(layer);
55 NinePatchLayerImpl* layer_impl = static_cast<NinePatchLayerImpl*>(layer);
57 if (!ui_resource_holder_) {
58 layer_impl->SetUIResourceId(0);
59 } else {
60 DCHECK(layer_tree_host());
62 layer_impl->SetLayout(image_aperture_, border_, fill_center_);
66 } // namespace cc