Loading tools/layoutlib/bridge/src/android/view/RenderNode_Delegate.java +119 −13 Original line number Diff line number Diff line Loading @@ -38,10 +38,15 @@ public class RenderNode_Delegate { private float mLift; private float mTranslationX; private float mTranslationY; private float mTranslationZ; private float mRotation; private float mScaleX = 1; private float mScaleY = 1; private float mPivotX; private float mPivotY; private boolean mPivotExplicitelySet; private boolean mPivotExplicitlySet; private int mLeft; private int mRight; private int mTop; Loading Loading @@ -80,6 +85,63 @@ public class RenderNode_Delegate { return 0f; } @LayoutlibDelegate /*package*/ static boolean nSetTranslationX(long renderNode, float translationX) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null && delegate.mTranslationX != translationX) { delegate.mTranslationX = translationX; return true; } return false; } @LayoutlibDelegate /*package*/ static float nGetTranslationX(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { return delegate.mTranslationX; } return 0f; } @LayoutlibDelegate /*package*/ static boolean nSetTranslationY(long renderNode, float translationY) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null && delegate.mTranslationY != translationY) { delegate.mTranslationY = translationY; return true; } return false; } @LayoutlibDelegate /*package*/ static float nGetTranslationY(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { return delegate.mTranslationY; } return 0f; } @LayoutlibDelegate /*package*/ static boolean nSetTranslationZ(long renderNode, float translationZ) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null && delegate.mTranslationZ != translationZ) { delegate.mTranslationZ = translationZ; return true; } return false; } @LayoutlibDelegate /*package*/ static float nGetTranslationZ(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { return delegate.mTranslationZ; } return 0f; } @LayoutlibDelegate /*package*/ static boolean nSetRotation(long renderNode, float rotation) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); Loading @@ -103,8 +165,17 @@ public class RenderNode_Delegate { /*package*/ static void getMatrix(RenderNode renderNode, Matrix outMatrix) { outMatrix.reset(); if (renderNode != null) { outMatrix.preRotate(renderNode.getRotation(), renderNode.getPivotX(), renderNode.getPivotY()); float rotation = renderNode.getRotation(); float translationX = renderNode.getTranslationX(); float translationY = renderNode.getTranslationY(); float pivotX = renderNode.getPivotX(); float pivotY = renderNode.getPivotY(); float scaleX = renderNode.getScaleX(); float scaleY = renderNode.getScaleY(); outMatrix.setTranslate(translationX, translationY); outMatrix.preRotate(rotation, pivotX, pivotY); outMatrix.preScale(scaleX, scaleY, pivotX, pivotY); } } Loading Loading @@ -166,18 +237,15 @@ public class RenderNode_Delegate { @LayoutlibDelegate /*package*/ static boolean nIsPivotExplicitlySet(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { return delegate.mPivotExplicitelySet; } return false; return delegate != null && delegate.mPivotExplicitlySet; } @LayoutlibDelegate /*package*/ static boolean nSetPivotX(long renderNode, float pivotX) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null && delegate.mPivotX != pivotX) { if (delegate != null) { delegate.mPivotX = pivotX; delegate.mPivotExplicitelySet = true; delegate.mPivotExplicitlySet = true; return true; } return false; Loading @@ -187,7 +255,7 @@ public class RenderNode_Delegate { /*package*/ static float nGetPivotX(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { if (delegate.mPivotExplicitelySet) { if (delegate.mPivotExplicitlySet) { return delegate.mPivotX; } else { return (delegate.mRight - delegate.mLeft) / 2.0f; Loading @@ -199,9 +267,9 @@ public class RenderNode_Delegate { @LayoutlibDelegate /*package*/ static boolean nSetPivotY(long renderNode, float pivotY) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null && delegate.mPivotY != pivotY) { if (delegate != null) { delegate.mPivotY = pivotY; delegate.mPivotExplicitelySet = true; delegate.mPivotExplicitlySet = true; return true; } return false; Loading @@ -211,7 +279,7 @@ public class RenderNode_Delegate { /*package*/ static float nGetPivotY(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { if (delegate.mPivotExplicitelySet) { if (delegate.mPivotExplicitlySet) { return delegate.mPivotY; } else { return (delegate.mBottom - delegate.mTop) / 2.0f; Loading @@ -219,4 +287,42 @@ public class RenderNode_Delegate { } return 0f; } @LayoutlibDelegate /*package*/ static boolean nSetScaleX(long renderNode, float scaleX) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null && delegate.mScaleX != scaleX) { delegate.mScaleX = scaleX; return true; } return false; } @LayoutlibDelegate /*package*/ static float nGetScaleX(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { return delegate.mScaleX; } return 0f; } @LayoutlibDelegate /*package*/ static boolean nSetScaleY(long renderNode, float scaleY) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null && delegate.mScaleY != scaleY) { delegate.mScaleY = scaleY; return true; } return false; } @LayoutlibDelegate /*package*/ static float nGetScaleY(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { return delegate.mScaleY; } return 0f; } } tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java +10 −0 Original line number Diff line number Diff line Loading @@ -192,6 +192,12 @@ public final class CreateInfo implements ICreateInfo { "android.view.RenderNode#nDestroyRenderNode", "android.view.RenderNode#nSetElevation", "android.view.RenderNode#nGetElevation", "android.view.RenderNode#nSetTranslationX", "android.view.RenderNode#nGetTranslationX", "android.view.RenderNode#nSetTranslationY", "android.view.RenderNode#nGetTranslationY", "android.view.RenderNode#nSetTranslationZ", "android.view.RenderNode#nGetTranslationZ", "android.view.RenderNode#nSetRotation", "android.view.RenderNode#nGetRotation", "android.view.RenderNode#getMatrix", Loading @@ -204,6 +210,10 @@ public final class CreateInfo implements ICreateInfo { "android.view.RenderNode#nGetPivotX", "android.view.RenderNode#nSetPivotY", "android.view.RenderNode#nGetPivotY", "android.view.RenderNode#nSetScaleX", "android.view.RenderNode#nGetScaleX", "android.view.RenderNode#nSetScaleY", "android.view.RenderNode#nGetScaleY", "android.view.RenderNode#nIsPivotExplicitlySet", "android.view.ViewGroup#drawChild", "android.widget.TimePickerClockDelegate#getAmOrPmKeyCode", Loading Loading
tools/layoutlib/bridge/src/android/view/RenderNode_Delegate.java +119 −13 Original line number Diff line number Diff line Loading @@ -38,10 +38,15 @@ public class RenderNode_Delegate { private float mLift; private float mTranslationX; private float mTranslationY; private float mTranslationZ; private float mRotation; private float mScaleX = 1; private float mScaleY = 1; private float mPivotX; private float mPivotY; private boolean mPivotExplicitelySet; private boolean mPivotExplicitlySet; private int mLeft; private int mRight; private int mTop; Loading Loading @@ -80,6 +85,63 @@ public class RenderNode_Delegate { return 0f; } @LayoutlibDelegate /*package*/ static boolean nSetTranslationX(long renderNode, float translationX) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null && delegate.mTranslationX != translationX) { delegate.mTranslationX = translationX; return true; } return false; } @LayoutlibDelegate /*package*/ static float nGetTranslationX(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { return delegate.mTranslationX; } return 0f; } @LayoutlibDelegate /*package*/ static boolean nSetTranslationY(long renderNode, float translationY) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null && delegate.mTranslationY != translationY) { delegate.mTranslationY = translationY; return true; } return false; } @LayoutlibDelegate /*package*/ static float nGetTranslationY(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { return delegate.mTranslationY; } return 0f; } @LayoutlibDelegate /*package*/ static boolean nSetTranslationZ(long renderNode, float translationZ) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null && delegate.mTranslationZ != translationZ) { delegate.mTranslationZ = translationZ; return true; } return false; } @LayoutlibDelegate /*package*/ static float nGetTranslationZ(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { return delegate.mTranslationZ; } return 0f; } @LayoutlibDelegate /*package*/ static boolean nSetRotation(long renderNode, float rotation) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); Loading @@ -103,8 +165,17 @@ public class RenderNode_Delegate { /*package*/ static void getMatrix(RenderNode renderNode, Matrix outMatrix) { outMatrix.reset(); if (renderNode != null) { outMatrix.preRotate(renderNode.getRotation(), renderNode.getPivotX(), renderNode.getPivotY()); float rotation = renderNode.getRotation(); float translationX = renderNode.getTranslationX(); float translationY = renderNode.getTranslationY(); float pivotX = renderNode.getPivotX(); float pivotY = renderNode.getPivotY(); float scaleX = renderNode.getScaleX(); float scaleY = renderNode.getScaleY(); outMatrix.setTranslate(translationX, translationY); outMatrix.preRotate(rotation, pivotX, pivotY); outMatrix.preScale(scaleX, scaleY, pivotX, pivotY); } } Loading Loading @@ -166,18 +237,15 @@ public class RenderNode_Delegate { @LayoutlibDelegate /*package*/ static boolean nIsPivotExplicitlySet(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { return delegate.mPivotExplicitelySet; } return false; return delegate != null && delegate.mPivotExplicitlySet; } @LayoutlibDelegate /*package*/ static boolean nSetPivotX(long renderNode, float pivotX) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null && delegate.mPivotX != pivotX) { if (delegate != null) { delegate.mPivotX = pivotX; delegate.mPivotExplicitelySet = true; delegate.mPivotExplicitlySet = true; return true; } return false; Loading @@ -187,7 +255,7 @@ public class RenderNode_Delegate { /*package*/ static float nGetPivotX(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { if (delegate.mPivotExplicitelySet) { if (delegate.mPivotExplicitlySet) { return delegate.mPivotX; } else { return (delegate.mRight - delegate.mLeft) / 2.0f; Loading @@ -199,9 +267,9 @@ public class RenderNode_Delegate { @LayoutlibDelegate /*package*/ static boolean nSetPivotY(long renderNode, float pivotY) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null && delegate.mPivotY != pivotY) { if (delegate != null) { delegate.mPivotY = pivotY; delegate.mPivotExplicitelySet = true; delegate.mPivotExplicitlySet = true; return true; } return false; Loading @@ -211,7 +279,7 @@ public class RenderNode_Delegate { /*package*/ static float nGetPivotY(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { if (delegate.mPivotExplicitelySet) { if (delegate.mPivotExplicitlySet) { return delegate.mPivotY; } else { return (delegate.mBottom - delegate.mTop) / 2.0f; Loading @@ -219,4 +287,42 @@ public class RenderNode_Delegate { } return 0f; } @LayoutlibDelegate /*package*/ static boolean nSetScaleX(long renderNode, float scaleX) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null && delegate.mScaleX != scaleX) { delegate.mScaleX = scaleX; return true; } return false; } @LayoutlibDelegate /*package*/ static float nGetScaleX(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { return delegate.mScaleX; } return 0f; } @LayoutlibDelegate /*package*/ static boolean nSetScaleY(long renderNode, float scaleY) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null && delegate.mScaleY != scaleY) { delegate.mScaleY = scaleY; return true; } return false; } @LayoutlibDelegate /*package*/ static float nGetScaleY(long renderNode) { RenderNode_Delegate delegate = sManager.getDelegate(renderNode); if (delegate != null) { return delegate.mScaleY; } return 0f; } }
tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java +10 −0 Original line number Diff line number Diff line Loading @@ -192,6 +192,12 @@ public final class CreateInfo implements ICreateInfo { "android.view.RenderNode#nDestroyRenderNode", "android.view.RenderNode#nSetElevation", "android.view.RenderNode#nGetElevation", "android.view.RenderNode#nSetTranslationX", "android.view.RenderNode#nGetTranslationX", "android.view.RenderNode#nSetTranslationY", "android.view.RenderNode#nGetTranslationY", "android.view.RenderNode#nSetTranslationZ", "android.view.RenderNode#nGetTranslationZ", "android.view.RenderNode#nSetRotation", "android.view.RenderNode#nGetRotation", "android.view.RenderNode#getMatrix", Loading @@ -204,6 +210,10 @@ public final class CreateInfo implements ICreateInfo { "android.view.RenderNode#nGetPivotX", "android.view.RenderNode#nSetPivotY", "android.view.RenderNode#nGetPivotY", "android.view.RenderNode#nSetScaleX", "android.view.RenderNode#nGetScaleX", "android.view.RenderNode#nSetScaleY", "android.view.RenderNode#nGetScaleY", "android.view.RenderNode#nIsPivotExplicitlySet", "android.view.ViewGroup#drawChild", "android.widget.TimePickerClockDelegate#getAmOrPmKeyCode", Loading