Index: cc/layers/nine_patch_layer_impl.h |
diff --git a/cc/layers/nine_patch_layer_impl.h b/cc/layers/nine_patch_layer_impl.h |
index c7a1c2e8b28010932cc7be852bdca437a260cd67..69b039a54e7bbfd6fc360d895ad1cbcd5ca4317c 100644 |
--- a/cc/layers/nine_patch_layer_impl.h |
+++ b/cc/layers/nine_patch_layer_impl.h |
@@ -12,6 +12,7 @@ |
#include "cc/base/cc_export.h" |
#include "cc/layers/layer_impl.h" |
#include "cc/layers/ui_resource_layer_impl.h" |
+#include "cc/quads/nine_patch_generator.h" |
#include "cc/resources/resource_provider.h" |
#include "cc/resources/ui_resource_client.h" |
#include "ui/gfx/geometry/rect.h" |
@@ -31,52 +32,7 @@ class CC_EXPORT NinePatchLayerImpl : public UIResourceLayerImpl { |
} |
~NinePatchLayerImpl() override; |
- // The bitmap stretches out the bounds of the layer. The following picture |
- // illustrates the parameters associated with the dimensions. |
- // |
- // Layer space layout |
- // |
- // -------------------------------- |
- // | : : | |
- // | J C | |
- // | : : | |
- // | ------------------ | |
- // | | : | | |
- // |~~~I~~| ------------ | | |
- // | | | | | | |
- // | | | | | | |
- // |~~~A~~|~~| |~~|~B~~~~| |
- // | | | | | | |
- // | L ------------ | | |
- // | | : | | |
- // | ---K-------------- | |
- // | D | |
- // | : | |
- // | : | |
- // -------------------------------- |
- // |
- // Bitmap space layout |
- // |
- // ~~~~~~~~~~ W ~~~~~~~~~~ |
- // : : | |
- // : Y | |
- // : : | |
- // :~~X~~------------ | |
- // : | : | |
- // : | : | |
- // H | Q | |
- // : | : | |
- // : ~~~~~P~~~~~ | |
- // : | |
- // : | |
- // : | |
- // ------------------------ |
- // |
- // |image_bounds| = (W, H) |
- // |image_aperture| = (X, Y, P, Q) |
- // |border| = (A, C, A + B, C + D) |
- // |occlusion_rectangle| = (I, J, K, L) |
- // |fill_center| indicates whether to draw the center quad or not. |
+ // For parameter meanings, see the declaration of NinePatchGenerator. |
void SetLayout(const gfx::Rect& image_aperture, |
const gfx::Rect& border, |
const gfx::Rect& layer_occlusion, |
@@ -95,33 +51,9 @@ class CC_EXPORT NinePatchLayerImpl : public UIResourceLayerImpl { |
NinePatchLayerImpl(LayerTreeImpl* tree_impl, int id); |
private: |
- class Patch { |
- public: |
- Patch(const gfx::RectF& image_rect, const gfx::RectF& layer_rect); |
- |
- gfx::RectF image_rect; |
- gfx::RectF layer_rect; |
- }; |
- |
const char* LayerTypeAsString() const override; |
- void CheckGeometryLimitations(); |
- |
- std::vector<Patch> ComputeQuadsWithOcclusion() const; |
- std::vector<Patch> ComputeQuadsWithoutOcclusion() const; |
- |
- // The transparent center region that shows the parent layer's contents in |
- // image space. |
- gfx::Rect image_aperture_; |
- |
- // An inset border that the patches will be mapped to. |
- gfx::Rect border_; |
- |
- bool fill_center_; |
- |
- bool nearest_neighbor_; |
- |
- gfx::Rect layer_occlusion_; |
+ NinePatchGenerator quad_generator_; |
DISALLOW_COPY_AND_ASSIGN(NinePatchLayerImpl); |
}; |