Search in sources :

Example 96 with Area

use of java.awt.geom.Area in project android_frameworks_base by crdroidandroid.

the class Region_Delegate method nativeOp.

@LayoutlibDelegate
static /*package*/
boolean nativeOp(long native_dst, Rect rect, long native_region, int op) {
    Region_Delegate region = sManager.getDelegate(native_dst);
    if (region == null) {
        return false;
    }
    region.mArea = combineShapes(region.mArea, new Rectangle2D.Float(rect.left, rect.top, rect.width(), rect.height()), op);
    assert region.mArea != null;
    if (region.mArea != null) {
        region.mArea = new Area();
    }
    return region.mArea.getBounds().isEmpty() == false;
}
Also used : Area(java.awt.geom.Area) LayoutlibDelegate(com.android.tools.layoutlib.annotations.LayoutlibDelegate)

Example 97 with Area

use of java.awt.geom.Area in project android_frameworks_base by crdroidandroid.

the class Region_Delegate method translate.

@LayoutlibDelegate
static /*package*/
void translate(Region thisRegion, int dx, int dy, Region dst) {
    Region_Delegate regionDelegate = sManager.getDelegate(thisRegion.mNativeRegion);
    if (regionDelegate == null) {
        return;
    }
    Region_Delegate targetRegionDelegate = sManager.getDelegate(dst.mNativeRegion);
    if (targetRegionDelegate == null) {
        return;
    }
    if (regionDelegate.mArea.isEmpty()) {
        targetRegionDelegate.mArea = new Area();
    } else {
        targetRegionDelegate.mArea = new Area(regionDelegate.mArea);
        AffineTransform mtx = new AffineTransform();
        mtx.translate(dx, dy);
        targetRegionDelegate.mArea.transform(mtx);
    }
}
Also used : Area(java.awt.geom.Area) AffineTransform(java.awt.geom.AffineTransform) LayoutlibDelegate(com.android.tools.layoutlib.annotations.LayoutlibDelegate)

Example 98 with Area

use of java.awt.geom.Area in project android_frameworks_base by crdroidandroid.

the class Region_Delegate method scale.

@LayoutlibDelegate
static /*package*/
void scale(Region thisRegion, float scale, Region dst) {
    Region_Delegate regionDelegate = sManager.getDelegate(thisRegion.mNativeRegion);
    if (regionDelegate == null) {
        return;
    }
    Region_Delegate targetRegionDelegate = sManager.getDelegate(dst.mNativeRegion);
    if (targetRegionDelegate == null) {
        return;
    }
    if (regionDelegate.mArea.isEmpty()) {
        targetRegionDelegate.mArea = new Area();
    } else {
        targetRegionDelegate.mArea = new Area(regionDelegate.mArea);
        AffineTransform mtx = new AffineTransform();
        mtx.scale(scale, scale);
        targetRegionDelegate.mArea.transform(mtx);
    }
}
Also used : Area(java.awt.geom.Area) AffineTransform(java.awt.geom.AffineTransform) LayoutlibDelegate(com.android.tools.layoutlib.annotations.LayoutlibDelegate)

Aggregations

Area (java.awt.geom.Area)98 LayoutlibDelegate (com.android.tools.layoutlib.annotations.LayoutlibDelegate)42 AffineTransform (java.awt.geom.AffineTransform)14 Rectangle2D (java.awt.geom.Rectangle2D)14 RoundRectangle2D (java.awt.geom.RoundRectangle2D)8 Graphics2D (java.awt.Graphics2D)6 Rectangle (java.awt.Rectangle)6 Shape (java.awt.Shape)6 Ellipse2D (java.awt.geom.Ellipse2D)6 Color (java.awt.Color)5 Point (java.awt.Point)5 Path2D (java.awt.geom.Path2D)5 BufferedImage (java.awt.image.BufferedImage)5 GeneralPath (java.awt.geom.GeneralPath)4 BasicStroke (java.awt.BasicStroke)3 Point2D (java.awt.geom.Point2D)3 HSLFFreeformShape (org.apache.poi.hslf.usermodel.HSLFFreeformShape)3 Test (org.junit.Test)3 RadialGradientPaint (java.awt.RadialGradientPaint)2 JFrame (javax.swing.JFrame)2