Home | History | Annotate | Download | only in hwui

Lines Matching refs:Lattice

22 static inline void SetLatticeDivs(SkCanvas::Lattice* lattice, const Res_png_9patch& chunk,
24 lattice->fXCount = chunk.numXDivs;
25 lattice->fYCount = chunk.numYDivs;
26 lattice->fXDivs = chunk.getXDivs();
27 lattice->fYDivs = chunk.getYDivs();
31 if (lattice->fXCount > 0 && width == lattice->fXDivs[lattice->fXCount - 1]) {
32 lattice->fXCount--;
34 if (lattice->fYCount > 0 && height == lattice->fYDivs[lattice->fYCount - 1]) {
35 lattice->fYCount--;
39 static inline int NumDistinctRects(const SkCanvas::Lattice& lattice) {
41 if (lattice.fXCount > 0) {
42 xRects = (0 == lattice.fXDivs[0]) ? lattice.fXCount : lattice.fXCount + 1;
48 if (lattice.fYCount > 0) {
49 yRects = (0 == lattice.fYDivs[0]) ? lattice.fYCount : lattice.fYCount + 1;
56 static inline void SetLatticeFlags(SkCanvas::Lattice* lattice,
57 SkCanvas::Lattice::RectType* flags, int numFlags, const Res_png_9patch& chunk,
59 lattice->fRectTypes = flags;
60 lattice->fColors = colors;
61 sk_bzero(flags, numFlags * sizeof(SkCanvas::Lattice::RectType));
64 bool needPadRow = lattice->fYCount > 0 && 0 == lattice->fYDivs[0];
65 bool needPadCol = lattice->fXCount > 0 && 0 == lattice->fXDivs[0];
67 int yCount = lattice->fYCount;
70 flags += lattice->fXCount + 1;
71 colors += lattice->fXCount + 1;
78 for (int x = 0; x < lattice->fXCount + 1; x++) {
88 *flags = SkCanvas::Lattice::kTransparent;
91 *flags = SkCanvas::Lattice::kFixedColor;
102 lattice->fRectTypes = nullptr;
103 lattice->fColors = nullptr;