| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2012 Google Inc. | 2 * Copyright 2012 Google Inc. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
| 5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
| 6 */ | 6 */ |
| 7 | 7 |
| 8 #include "SkDrawCommand.h" | 8 #include "SkDrawCommand.h" |
| 9 | 9 |
| 10 #include "SkBlurMaskFilter.h" | 10 #include "SkBlurMaskFilter.h" |
| (...skipping 555 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 566 } | 566 } |
| 567 } | 567 } |
| 568 result[SKDEBUGCANVAS_ATTRIBUTE_VERBS] = verbs; | 568 result[SKDEBUGCANVAS_ATTRIBUTE_VERBS] = verbs; |
| 569 return result; | 569 return result; |
| 570 } | 570 } |
| 571 | 571 |
| 572 Json::Value SkDrawCommand::MakeJsonRegion(const SkRegion& region) { | 572 Json::Value SkDrawCommand::MakeJsonRegion(const SkRegion& region) { |
| 573 return Json::Value("<unimplemented>"); | 573 return Json::Value("<unimplemented>"); |
| 574 } | 574 } |
| 575 | 575 |
| 576 static Json::Value make_json_regionop(SkRegion::Op op) { | 576 static Json::Value make_json_regionop(SkCanvas::ClipOp op) { |
| 577 switch (op) { | 577 switch (op) { |
| 578 case SkRegion::kDifference_Op: | 578 case SkCanvas::kDifference_Op: |
| 579 return Json::Value(SKDEBUGCANVAS_REGIONOP_DIFFERENCE); | 579 return Json::Value(SKDEBUGCANVAS_REGIONOP_DIFFERENCE); |
| 580 case SkRegion::kIntersect_Op: | 580 case SkCanvas::kIntersect_Op: |
| 581 return Json::Value(SKDEBUGCANVAS_REGIONOP_INTERSECT); | 581 return Json::Value(SKDEBUGCANVAS_REGIONOP_INTERSECT); |
| 582 case SkRegion::kUnion_Op: | 582 case SkCanvas::kUnion_Op: |
| 583 return Json::Value(SKDEBUGCANVAS_REGIONOP_UNION); | 583 return Json::Value(SKDEBUGCANVAS_REGIONOP_UNION); |
| 584 case SkRegion::kXOR_Op: | 584 case SkCanvas::kXOR_Op: |
| 585 return Json::Value(SKDEBUGCANVAS_REGIONOP_XOR); | 585 return Json::Value(SKDEBUGCANVAS_REGIONOP_XOR); |
| 586 case SkRegion::kReverseDifference_Op: | 586 case SkCanvas::kReverseDifference_Op: |
| 587 return Json::Value(SKDEBUGCANVAS_REGIONOP_REVERSE_DIFFERENCE); | 587 return Json::Value(SKDEBUGCANVAS_REGIONOP_REVERSE_DIFFERENCE); |
| 588 case SkRegion::kReplace_Op: | 588 case SkCanvas::kReplace_Op: |
| 589 return Json::Value(SKDEBUGCANVAS_REGIONOP_REPLACE); | 589 return Json::Value(SKDEBUGCANVAS_REGIONOP_REPLACE); |
| 590 default: | 590 default: |
| 591 SkASSERT(false); | 591 SkASSERT(false); |
| 592 return Json::Value("<invalid region op>"); | 592 return Json::Value("<invalid region op>"); |
| 593 }; | 593 }; |
| 594 } | 594 } |
| 595 | 595 |
| 596 static Json::Value make_json_pointmode(SkCanvas::PointMode mode) { | 596 static Json::Value make_json_pointmode(SkCanvas::PointMode mode) { |
| 597 switch (mode) { | 597 switch (mode) { |
| 598 case SkCanvas::kPoints_PointMode: | 598 case SkCanvas::kPoints_PointMode: |
| (...skipping 999 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1598 conic[1][0].asFloat(), conic[1][1].asFloat(), | 1598 conic[1][0].asFloat(), conic[1][1].asFloat(), |
| 1599 conic[2].asFloat()); | 1599 conic[2].asFloat()); |
| 1600 } | 1600 } |
| 1601 else { | 1601 else { |
| 1602 SkASSERT(false); | 1602 SkASSERT(false); |
| 1603 } | 1603 } |
| 1604 } | 1604 } |
| 1605 } | 1605 } |
| 1606 } | 1606 } |
| 1607 | 1607 |
| 1608 SkRegion::Op get_json_regionop(Json::Value& jsonOp) { | 1608 SkCanvas::ClipOp get_json_clipop(Json::Value& jsonOp) { |
| 1609 const char* op = jsonOp.asCString(); | 1609 const char* op = jsonOp.asCString(); |
| 1610 if (!strcmp(op, SKDEBUGCANVAS_REGIONOP_DIFFERENCE)) { | 1610 if (!strcmp(op, SKDEBUGCANVAS_REGIONOP_DIFFERENCE)) { |
| 1611 return SkRegion::kDifference_Op; | 1611 return SkCanvas::kDifference_Op; |
| 1612 } | 1612 } |
| 1613 else if (!strcmp(op, SKDEBUGCANVAS_REGIONOP_INTERSECT)) { | 1613 else if (!strcmp(op, SKDEBUGCANVAS_REGIONOP_INTERSECT)) { |
| 1614 return SkRegion::kIntersect_Op; | 1614 return SkCanvas::kIntersect_Op; |
| 1615 } | 1615 } |
| 1616 else if (!strcmp(op, SKDEBUGCANVAS_REGIONOP_UNION)) { | 1616 else if (!strcmp(op, SKDEBUGCANVAS_REGIONOP_UNION)) { |
| 1617 return SkRegion::kUnion_Op; | 1617 return SkCanvas::kUnion_Op; |
| 1618 } | 1618 } |
| 1619 else if (!strcmp(op, SKDEBUGCANVAS_REGIONOP_XOR)) { | 1619 else if (!strcmp(op, SKDEBUGCANVAS_REGIONOP_XOR)) { |
| 1620 return SkRegion::kXOR_Op; | 1620 return SkCanvas::kXOR_Op; |
| 1621 } | 1621 } |
| 1622 else if (!strcmp(op, SKDEBUGCANVAS_REGIONOP_REVERSE_DIFFERENCE)) { | 1622 else if (!strcmp(op, SKDEBUGCANVAS_REGIONOP_REVERSE_DIFFERENCE)) { |
| 1623 return SkRegion::kReverseDifference_Op; | 1623 return SkCanvas::kReverseDifference_Op; |
| 1624 } | 1624 } |
| 1625 else if (!strcmp(op, SKDEBUGCANVAS_REGIONOP_REPLACE)) { | 1625 else if (!strcmp(op, SKDEBUGCANVAS_REGIONOP_REPLACE)) { |
| 1626 return SkRegion::kReplace_Op; | 1626 return SkCanvas::kReplace_Op; |
| 1627 } | 1627 } |
| 1628 SkASSERT(false); | 1628 SkASSERT(false); |
| 1629 return SkRegion::kIntersect_Op; | 1629 return SkCanvas::kIntersect_Op; |
| 1630 } | 1630 } |
| 1631 | 1631 |
| 1632 SkClearCommand::SkClearCommand(SkColor color) : INHERITED(kDrawClear_OpType) { | 1632 SkClearCommand::SkClearCommand(SkColor color) : INHERITED(kDrawClear_OpType) { |
| 1633 fColor = color; | 1633 fColor = color; |
| 1634 fInfo.push(SkObjectParser::CustomTextToString("No Parameters")); | 1634 fInfo.push(SkObjectParser::CustomTextToString("No Parameters")); |
| 1635 } | 1635 } |
| 1636 | 1636 |
| 1637 void SkClearCommand::execute(SkCanvas* canvas) const { | 1637 void SkClearCommand::execute(SkCanvas* canvas) const { |
| 1638 canvas->clear(fColor); | 1638 canvas->clear(fColor); |
| 1639 } | 1639 } |
| 1640 | 1640 |
| 1641 Json::Value SkClearCommand::toJSON(UrlDataManager& urlDataManager) const { | 1641 Json::Value SkClearCommand::toJSON(UrlDataManager& urlDataManager) const { |
| 1642 Json::Value result = INHERITED::toJSON(urlDataManager); | 1642 Json::Value result = INHERITED::toJSON(urlDataManager); |
| 1643 result[SKDEBUGCANVAS_ATTRIBUTE_COLOR] = MakeJsonColor(fColor); | 1643 result[SKDEBUGCANVAS_ATTRIBUTE_COLOR] = MakeJsonColor(fColor); |
| 1644 return result; | 1644 return result; |
| 1645 } | 1645 } |
| 1646 | 1646 |
| 1647 SkClearCommand* SkClearCommand::fromJSON(Json::Value& command, UrlDataManager&
urlDataManager) { | 1647 SkClearCommand* SkClearCommand::fromJSON(Json::Value& command, UrlDataManager&
urlDataManager) { |
| 1648 Json::Value color = command[SKDEBUGCANVAS_ATTRIBUTE_COLOR]; | 1648 Json::Value color = command[SKDEBUGCANVAS_ATTRIBUTE_COLOR]; |
| 1649 return new SkClearCommand(get_json_color(color)); | 1649 return new SkClearCommand(get_json_color(color)); |
| 1650 } | 1650 } |
| 1651 | 1651 |
| 1652 SkClipPathCommand::SkClipPathCommand(const SkPath& path, SkRegion::Op op, bool d
oAA) | 1652 SkClipPathCommand::SkClipPathCommand(const SkPath& path, SkCanvas::ClipOp op, bo
ol doAA) |
| 1653 : INHERITED(kClipPath_OpType) { | 1653 : INHERITED(kClipPath_OpType) { |
| 1654 fPath = path; | 1654 fPath = path; |
| 1655 fOp = op; | 1655 fOp = op; |
| 1656 fDoAA = doAA; | 1656 fDoAA = doAA; |
| 1657 | 1657 |
| 1658 fInfo.push(SkObjectParser::PathToString(path)); | 1658 fInfo.push(SkObjectParser::PathToString(path)); |
| 1659 fInfo.push(SkObjectParser::RegionOpToString(op)); | 1659 fInfo.push(SkObjectParser::ClipOpToString(op)); |
| 1660 fInfo.push(SkObjectParser::BoolToString(doAA)); | 1660 fInfo.push(SkObjectParser::BoolToString(doAA)); |
| 1661 } | 1661 } |
| 1662 | 1662 |
| 1663 void SkClipPathCommand::execute(SkCanvas* canvas) const { | 1663 void SkClipPathCommand::execute(SkCanvas* canvas) const { |
| 1664 canvas->clipPath(fPath, fOp, fDoAA); | 1664 canvas->clipPath(fPath, fOp, fDoAA); |
| 1665 } | 1665 } |
| 1666 | 1666 |
| 1667 bool SkClipPathCommand::render(SkCanvas* canvas) const { | 1667 bool SkClipPathCommand::render(SkCanvas* canvas) const { |
| 1668 render_path(canvas, fPath); | 1668 render_path(canvas, fPath); |
| 1669 return true; | 1669 return true; |
| 1670 } | 1670 } |
| 1671 | 1671 |
| 1672 Json::Value SkClipPathCommand::toJSON(UrlDataManager& urlDataManager) const { | 1672 Json::Value SkClipPathCommand::toJSON(UrlDataManager& urlDataManager) const { |
| 1673 Json::Value result = INHERITED::toJSON(urlDataManager); | 1673 Json::Value result = INHERITED::toJSON(urlDataManager); |
| 1674 result[SKDEBUGCANVAS_ATTRIBUTE_PATH] = MakeJsonPath(fPath); | 1674 result[SKDEBUGCANVAS_ATTRIBUTE_PATH] = MakeJsonPath(fPath); |
| 1675 result[SKDEBUGCANVAS_ATTRIBUTE_REGIONOP] = make_json_regionop(fOp); | 1675 result[SKDEBUGCANVAS_ATTRIBUTE_REGIONOP] = make_json_regionop(fOp); |
| 1676 result[SKDEBUGCANVAS_ATTRIBUTE_ANTIALIAS] = fDoAA; | 1676 result[SKDEBUGCANVAS_ATTRIBUTE_ANTIALIAS] = fDoAA; |
| 1677 return result; | 1677 return result; |
| 1678 } | 1678 } |
| 1679 | 1679 |
| 1680 SkClipPathCommand* SkClipPathCommand::fromJSON(Json::Value& command, | 1680 SkClipPathCommand* SkClipPathCommand::fromJSON(Json::Value& command, |
| 1681 UrlDataManager& urlDataManager) { | 1681 UrlDataManager& urlDataManager) { |
| 1682 SkPath path; | 1682 SkPath path; |
| 1683 extract_json_path(command[SKDEBUGCANVAS_ATTRIBUTE_PATH], &path); | 1683 extract_json_path(command[SKDEBUGCANVAS_ATTRIBUTE_PATH], &path); |
| 1684 return new SkClipPathCommand(path, get_json_regionop(command[SKDEBUGCANVAS_A
TTRIBUTE_REGIONOP]), | 1684 return new SkClipPathCommand(path, get_json_clipop(command[SKDEBUGCANVAS_ATT
RIBUTE_REGIONOP]), |
| 1685 command[SKDEBUGCANVAS_ATTRIBUTE_ANTIALIAS].asBo
ol()); | 1685 command[SKDEBUGCANVAS_ATTRIBUTE_ANTIALIAS].asBo
ol()); |
| 1686 } | 1686 } |
| 1687 | 1687 |
| 1688 SkClipRegionCommand::SkClipRegionCommand(const SkRegion& region, SkRegion::Op op
) | 1688 SkClipRegionCommand::SkClipRegionCommand(const SkRegion& region, SkCanvas::ClipO
p op) |
| 1689 : INHERITED(kClipRegion_OpType) { | 1689 : INHERITED(kClipRegion_OpType) { |
| 1690 fRegion = region; | 1690 fRegion = region; |
| 1691 fOp = op; | 1691 fOp = op; |
| 1692 | 1692 |
| 1693 fInfo.push(SkObjectParser::RegionToString(region)); | 1693 fInfo.push(SkObjectParser::RegionToString(region)); |
| 1694 fInfo.push(SkObjectParser::RegionOpToString(op)); | 1694 fInfo.push(SkObjectParser::ClipOpToString(op)); |
| 1695 } | 1695 } |
| 1696 | 1696 |
| 1697 void SkClipRegionCommand::execute(SkCanvas* canvas) const { | 1697 void SkClipRegionCommand::execute(SkCanvas* canvas) const { |
| 1698 canvas->clipRegion(fRegion, fOp); | 1698 canvas->clipRegion(fRegion, fOp); |
| 1699 } | 1699 } |
| 1700 | 1700 |
| 1701 Json::Value SkClipRegionCommand::toJSON(UrlDataManager& urlDataManager) const { | 1701 Json::Value SkClipRegionCommand::toJSON(UrlDataManager& urlDataManager) const { |
| 1702 Json::Value result = INHERITED::toJSON(urlDataManager); | 1702 Json::Value result = INHERITED::toJSON(urlDataManager); |
| 1703 result[SKDEBUGCANVAS_ATTRIBUTE_REGION] = MakeJsonRegion(fRegion); | 1703 result[SKDEBUGCANVAS_ATTRIBUTE_REGION] = MakeJsonRegion(fRegion); |
| 1704 result[SKDEBUGCANVAS_ATTRIBUTE_REGIONOP] = make_json_regionop(fOp); | 1704 result[SKDEBUGCANVAS_ATTRIBUTE_REGIONOP] = make_json_regionop(fOp); |
| 1705 return result; | 1705 return result; |
| 1706 } | 1706 } |
| 1707 | 1707 |
| 1708 SkClipRegionCommand* SkClipRegionCommand::fromJSON(Json::Value& command, | 1708 SkClipRegionCommand* SkClipRegionCommand::fromJSON(Json::Value& command, |
| 1709 UrlDataManager& urlDataManage
r) { | 1709 UrlDataManager& urlDataManage
r) { |
| 1710 SkASSERT(false); | 1710 SkASSERT(false); |
| 1711 return nullptr; | 1711 return nullptr; |
| 1712 } | 1712 } |
| 1713 | 1713 |
| 1714 SkClipRectCommand::SkClipRectCommand(const SkRect& rect, SkRegion::Op op, bool d
oAA) | 1714 SkClipRectCommand::SkClipRectCommand(const SkRect& rect, SkCanvas::ClipOp op, bo
ol doAA) |
| 1715 : INHERITED(kClipRect_OpType) { | 1715 : INHERITED(kClipRect_OpType) { |
| 1716 fRect = rect; | 1716 fRect = rect; |
| 1717 fOp = op; | 1717 fOp = op; |
| 1718 fDoAA = doAA; | 1718 fDoAA = doAA; |
| 1719 | 1719 |
| 1720 fInfo.push(SkObjectParser::RectToString(rect)); | 1720 fInfo.push(SkObjectParser::RectToString(rect)); |
| 1721 fInfo.push(SkObjectParser::RegionOpToString(op)); | 1721 fInfo.push(SkObjectParser::ClipOpToString(op)); |
| 1722 fInfo.push(SkObjectParser::BoolToString(doAA)); | 1722 fInfo.push(SkObjectParser::BoolToString(doAA)); |
| 1723 } | 1723 } |
| 1724 | 1724 |
| 1725 void SkClipRectCommand::execute(SkCanvas* canvas) const { | 1725 void SkClipRectCommand::execute(SkCanvas* canvas) const { |
| 1726 canvas->clipRect(fRect, fOp, fDoAA); | 1726 canvas->clipRect(fRect, fOp, fDoAA); |
| 1727 } | 1727 } |
| 1728 | 1728 |
| 1729 Json::Value SkClipRectCommand::toJSON(UrlDataManager& urlDataManager) const { | 1729 Json::Value SkClipRectCommand::toJSON(UrlDataManager& urlDataManager) const { |
| 1730 Json::Value result = INHERITED::toJSON(urlDataManager); | 1730 Json::Value result = INHERITED::toJSON(urlDataManager); |
| 1731 result[SKDEBUGCANVAS_ATTRIBUTE_COORDS] = MakeJsonRect(fRect); | 1731 result[SKDEBUGCANVAS_ATTRIBUTE_COORDS] = MakeJsonRect(fRect); |
| 1732 result[SKDEBUGCANVAS_ATTRIBUTE_REGIONOP] = make_json_regionop(fOp); | 1732 result[SKDEBUGCANVAS_ATTRIBUTE_REGIONOP] = make_json_regionop(fOp); |
| 1733 result[SKDEBUGCANVAS_ATTRIBUTE_ANTIALIAS] = Json::Value(fDoAA); | 1733 result[SKDEBUGCANVAS_ATTRIBUTE_ANTIALIAS] = Json::Value(fDoAA); |
| 1734 | 1734 |
| 1735 SkString desc; | 1735 SkString desc; |
| 1736 result[SKDEBUGCANVAS_ATTRIBUTE_SHORTDESC] = Json::Value(str_append(&desc, fR
ect)->c_str()); | 1736 result[SKDEBUGCANVAS_ATTRIBUTE_SHORTDESC] = Json::Value(str_append(&desc, fR
ect)->c_str()); |
| 1737 | 1737 |
| 1738 return result; | 1738 return result; |
| 1739 } | 1739 } |
| 1740 | 1740 |
| 1741 SkClipRectCommand* SkClipRectCommand::fromJSON(Json::Value& command, | 1741 SkClipRectCommand* SkClipRectCommand::fromJSON(Json::Value& command, |
| 1742 UrlDataManager& urlDataManager) { | 1742 UrlDataManager& urlDataManager) { |
| 1743 SkRect rect; | 1743 SkRect rect; |
| 1744 extract_json_rect(command[SKDEBUGCANVAS_ATTRIBUTE_COORDS], &rect); | 1744 extract_json_rect(command[SKDEBUGCANVAS_ATTRIBUTE_COORDS], &rect); |
| 1745 return new SkClipRectCommand(rect, get_json_regionop(command[SKDEBUGCANVAS_A
TTRIBUTE_REGIONOP]), | 1745 return new SkClipRectCommand(rect, get_json_clipop(command[SKDEBUGCANVAS_ATT
RIBUTE_REGIONOP]), |
| 1746 command[SKDEBUGCANVAS_ATTRIBUTE_ANTIALIAS].asBo
ol()); | 1746 command[SKDEBUGCANVAS_ATTRIBUTE_ANTIALIAS].asBo
ol()); |
| 1747 } | 1747 } |
| 1748 | 1748 |
| 1749 SkClipRRectCommand::SkClipRRectCommand(const SkRRect& rrect, SkRegion::Op op, bo
ol doAA) | 1749 SkClipRRectCommand::SkClipRRectCommand(const SkRRect& rrect, SkCanvas::ClipOp op
, bool doAA) |
| 1750 : INHERITED(kClipRRect_OpType) { | 1750 : INHERITED(kClipRRect_OpType) { |
| 1751 fRRect = rrect; | 1751 fRRect = rrect; |
| 1752 fOp = op; | 1752 fOp = op; |
| 1753 fDoAA = doAA; | 1753 fDoAA = doAA; |
| 1754 | 1754 |
| 1755 fInfo.push(SkObjectParser::RRectToString(rrect)); | 1755 fInfo.push(SkObjectParser::RRectToString(rrect)); |
| 1756 fInfo.push(SkObjectParser::RegionOpToString(op)); | 1756 fInfo.push(SkObjectParser::ClipOpToString(op)); |
| 1757 fInfo.push(SkObjectParser::BoolToString(doAA)); | 1757 fInfo.push(SkObjectParser::BoolToString(doAA)); |
| 1758 } | 1758 } |
| 1759 | 1759 |
| 1760 void SkClipRRectCommand::execute(SkCanvas* canvas) const { | 1760 void SkClipRRectCommand::execute(SkCanvas* canvas) const { |
| 1761 canvas->clipRRect(fRRect, fOp, fDoAA); | 1761 canvas->clipRRect(fRRect, fOp, fDoAA); |
| 1762 } | 1762 } |
| 1763 | 1763 |
| 1764 bool SkClipRRectCommand::render(SkCanvas* canvas) const { | 1764 bool SkClipRRectCommand::render(SkCanvas* canvas) const { |
| 1765 render_rrect(canvas, fRRect); | 1765 render_rrect(canvas, fRRect); |
| 1766 return true; | 1766 return true; |
| 1767 } | 1767 } |
| 1768 | 1768 |
| 1769 Json::Value SkClipRRectCommand::toJSON(UrlDataManager& urlDataManager) const { | 1769 Json::Value SkClipRRectCommand::toJSON(UrlDataManager& urlDataManager) const { |
| 1770 Json::Value result = INHERITED::toJSON(urlDataManager); | 1770 Json::Value result = INHERITED::toJSON(urlDataManager); |
| 1771 result[SKDEBUGCANVAS_ATTRIBUTE_COORDS] = make_json_rrect(fRRect); | 1771 result[SKDEBUGCANVAS_ATTRIBUTE_COORDS] = make_json_rrect(fRRect); |
| 1772 result[SKDEBUGCANVAS_ATTRIBUTE_REGIONOP] = make_json_regionop(fOp); | 1772 result[SKDEBUGCANVAS_ATTRIBUTE_REGIONOP] = make_json_regionop(fOp); |
| 1773 result[SKDEBUGCANVAS_ATTRIBUTE_ANTIALIAS] = Json::Value(fDoAA); | 1773 result[SKDEBUGCANVAS_ATTRIBUTE_ANTIALIAS] = Json::Value(fDoAA); |
| 1774 return result; | 1774 return result; |
| 1775 } | 1775 } |
| 1776 | 1776 |
| 1777 SkClipRRectCommand* SkClipRRectCommand::fromJSON(Json::Value& command, | 1777 SkClipRRectCommand* SkClipRRectCommand::fromJSON(Json::Value& command, |
| 1778 UrlDataManager& urlDataManager)
{ | 1778 UrlDataManager& urlDataManager)
{ |
| 1779 SkRRect rrect; | 1779 SkRRect rrect; |
| 1780 extract_json_rrect(command[SKDEBUGCANVAS_ATTRIBUTE_COORDS], &rrect); | 1780 extract_json_rrect(command[SKDEBUGCANVAS_ATTRIBUTE_COORDS], &rrect); |
| 1781 return new SkClipRRectCommand(rrect, | 1781 return new SkClipRRectCommand(rrect, |
| 1782 get_json_regionop(command[SKDEBUGCANVAS_ATTRIB
UTE_REGIONOP]), | 1782 get_json_clipop(command[SKDEBUGCANVAS_ATTRIBUT
E_REGIONOP]), |
| 1783 command[SKDEBUGCANVAS_ATTRIBUTE_ANTIALIAS].asB
ool()); | 1783 command[SKDEBUGCANVAS_ATTRIBUTE_ANTIALIAS].asB
ool()); |
| 1784 } | 1784 } |
| 1785 | 1785 |
| 1786 SkConcatCommand::SkConcatCommand(const SkMatrix& matrix) | 1786 SkConcatCommand::SkConcatCommand(const SkMatrix& matrix) |
| 1787 : INHERITED(kConcat_OpType) { | 1787 : INHERITED(kConcat_OpType) { |
| 1788 fMatrix = matrix; | 1788 fMatrix = matrix; |
| 1789 | 1789 |
| 1790 fInfo.push(SkObjectParser::MatrixToString(matrix)); | 1790 fInfo.push(SkObjectParser::MatrixToString(matrix)); |
| 1791 } | 1791 } |
| 1792 | 1792 |
| (...skipping 1754 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3547 SkTranslateZCommand* SkTranslateZCommand::fromJSON(Json::Value& command, | 3547 SkTranslateZCommand* SkTranslateZCommand::fromJSON(Json::Value& command, |
| 3548 UrlDataManager& urlDataManager) { | 3548 UrlDataManager& urlDataManager) { |
| 3549 SkScalar z; | 3549 SkScalar z; |
| 3550 #ifdef SK_EXPERIMENTAL_SHADOWING | 3550 #ifdef SK_EXPERIMENTAL_SHADOWING |
| 3551 extract_json_scalar(command[SKDEBUGCANVAS_ATTRIBUTE_DRAWDEPTHTRANS], &z); | 3551 extract_json_scalar(command[SKDEBUGCANVAS_ATTRIBUTE_DRAWDEPTHTRANS], &z); |
| 3552 #else | 3552 #else |
| 3553 z = 0; | 3553 z = 0; |
| 3554 #endif | 3554 #endif |
| 3555 return new SkTranslateZCommand(z); | 3555 return new SkTranslateZCommand(z); |
| 3556 } | 3556 } |
| OLD | NEW |