提交 28305ba1 编写于 作者: L lana

Merge

......@@ -316,6 +316,8 @@ JAVA_JAVA_java = \
java/util/concurrent/BrokenBarrierException.java \
java/util/concurrent/Callable.java \
java/util/concurrent/CancellationException.java \
java/util/concurrent/CompletableFuture.java \
java/util/concurrent/CompletionException.java \
java/util/concurrent/CompletionService.java \
java/util/concurrent/ConcurrentHashMap.java \
java/util/concurrent/ConcurrentLinkedDeque.java \
......
/*
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -33,17 +33,15 @@ import javax.swing.RootPaneContainer;
import com.apple.eawt.AppEvent.FullScreenEvent;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
final class FullScreenHandler {
private static final String CLIENT_PROPERTY = "com.apple.eawt.event.internalFullScreenHandler";
static final int FULLSCREEN_WILL_ENTER = 1;
static final int FULLSCREEN_DID_ENTER = 2;
static final int FULLSCREEN_WILL_EXIT = 3;
static final int FULLSCREEN_DID_EXIT = 4;
@Native static final int FULLSCREEN_WILL_ENTER = 1;
@Native static final int FULLSCREEN_DID_ENTER = 2;
@Native static final int FULLSCREEN_WILL_EXIT = 3;
@Native static final int FULLSCREEN_DID_EXIT = 4;
// installs a private instance of the handler, if necessary
static void addFullScreenListenerTo(final RootPaneContainer window, final FullScreenListener listener) {
......
/*
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -31,18 +31,16 @@ import java.util.List;
import javax.swing.*;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
final class GestureHandler {
private static final String CLIENT_PROPERTY = "com.apple.eawt.event.internalGestureHandler";
// native constants for the supported types of high-level gestures
static final int PHASE = 1;
static final int ROTATE = 2;
static final int MAGNIFY = 3;
static final int SWIPE = 4;
@Native static final int PHASE = 1;
@Native static final int ROTATE = 2;
@Native static final int MAGNIFY = 3;
@Native static final int SWIPE = 4;
// installs a private instance of GestureHandler, if necessary
static void addGestureListenerTo(final JComponent component, final GestureListener listener) {
......
/*
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -37,13 +37,11 @@ import sun.java2d.loops.*;
import sun.java2d.pipe.*;
import sun.lwawt.macosx.*;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/*
* This is the SurfaceData for a CGContextRef.
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public abstract class OSXSurfaceData extends BufImgSurfaceData {
final static float UPPER_BND = Float.MAX_VALUE / 2.0f;
final static float LOWER_BND = -UPPER_BND;
......@@ -198,147 +196,147 @@ public abstract class OSXSurfaceData extends BufImgSurfaceData {
// graphics primitives drawing implementation:
// certain primitives don't care about all the states (ex. drawing an image needs not involve setting current paint)
static final int kPrimitive = 0;
static final int kImage = 1;
static final int kText = 2;
static final int kCopyArea = 3;
static final int kExternal = 4;
static final int kLine = 5; // belongs to kPrimitive
static final int kRect = 6; // belongs to kPrimitive
static final int kRoundRect = 7; // belongs to kPrimitive
static final int kOval = 8; // belongs to kPrimitive
static final int kArc = 9; // belongs to kPrimitive
static final int kPolygon = 10; // belongs to kPrimitive
static final int kShape = 11; // belongs to kPrimitive
@Native static final int kPrimitive = 0;
@Native static final int kImage = 1;
@Native static final int kText = 2;
@Native static final int kCopyArea = 3;
@Native static final int kExternal = 4;
@Native static final int kLine = 5; // belongs to kPrimitive
@Native static final int kRect = 6; // belongs to kPrimitive
@Native static final int kRoundRect = 7; // belongs to kPrimitive
@Native static final int kOval = 8; // belongs to kPrimitive
@Native static final int kArc = 9; // belongs to kPrimitive
@Native static final int kPolygon = 10; // belongs to kPrimitive
@Native static final int kShape = 11; // belongs to kPrimitive
// static final int kImage = 12; // belongs to kImage
static final int kString = 13; // belongs to kText
static final int kGlyphs = 14; // belongs to kText
static final int kUnicodes = 15; // belongs to kText
@Native static final int kString = 13; // belongs to kText
@Native static final int kGlyphs = 14; // belongs to kText
@Native static final int kUnicodes = 15; // belongs to kText
// static final int kCopyArea = 16; // belongs to kCopyArea
// static final int kExternal = 17; // belongs to kExternal
static final int kCommonParameterCount = 1 + 1 + 4 + 4; // type + change flags + color info (type(1) align(1) and
@Native static final int kCommonParameterCount = 1 + 1 + 4 + 4; // type + change flags + color info (type(1) align(1) and
// value(2)) + parameters ((x1, y1, x2, y2) OR (x, y, w, h))
static final int kLineParametersCount = kCommonParameterCount; // kCommonParameterCount
static final int kRectParametersCount = kCommonParameterCount + 1; // kCommonParameterCount + isfill
static final int kRoundRectParametersCount = kCommonParameterCount + 2 + 1; // kCommonParameterCount + arcW + arcH +
@Native static final int kLineParametersCount = kCommonParameterCount; // kCommonParameterCount
@Native static final int kRectParametersCount = kCommonParameterCount + 1; // kCommonParameterCount + isfill
@Native static final int kRoundRectParametersCount = kCommonParameterCount + 2 + 1; // kCommonParameterCount + arcW + arcH +
// isfill
static final int kOvalParametersCount = kCommonParameterCount + 1; // kCommonParameterCount + isfill
static final int kArcParametersCount = kCommonParameterCount + 2 + 1 + 1;// kCommonParameterCount + startAngle +
@Native static final int kOvalParametersCount = kCommonParameterCount + 1; // kCommonParameterCount + isfill
@Native static final int kArcParametersCount = kCommonParameterCount + 2 + 1 + 1;// kCommonParameterCount + startAngle +
// arcAngle + isfill + type
static final int kPolygonParametersCount = 0; // not supported
static final int kShapeParametersCount = 0; // not supported
static final int kImageParametersCount = kCommonParameterCount + 2 + 2 + 4 + 4; // flip horz vert + w&h + src + dst
static final int kStringParametersCount = 0; // not supported
static final int kGlyphsParametersCount = 0; // not supported
static final int kUnicodesParametersCount = 0; // not supported
static final int kPixelParametersCount = 0; // not supported
static final int kExternalParametersCount = 0; // not supported
@Native static final int kPolygonParametersCount = 0; // not supported
@Native static final int kShapeParametersCount = 0; // not supported
@Native static final int kImageParametersCount = kCommonParameterCount + 2 + 2 + 4 + 4; // flip horz vert + w&h + src + dst
@Native static final int kStringParametersCount = 0; // not supported
@Native static final int kGlyphsParametersCount = 0; // not supported
@Native static final int kUnicodesParametersCount = 0; // not supported
@Native static final int kPixelParametersCount = 0; // not supported
@Native static final int kExternalParametersCount = 0; // not supported
// for intParameters
// states info
static final int kChangeFlagIndex = 0; // kBoundsChangedBit | .. | kFontChangedBit
@Native static final int kChangeFlagIndex = 0; // kBoundsChangedBit | .. | kFontChangedBit
// bounds info
static final int kBoundsXIndex = 1;
static final int kBoundsYIndex = 2;
static final int kBoundsWidthIndex = 3;
static final int kBoundsHeightIndex = 4;
@Native static final int kBoundsXIndex = 1;
@Native static final int kBoundsYIndex = 2;
@Native static final int kBoundsWidthIndex = 3;
@Native static final int kBoundsHeightIndex = 4;
// clip info
static final int kClipStateIndex = 5;
static final int kClipNumTypesIndex = 6;
static final int kClipNumCoordsIndex = 7;
static final int kClipWindingRuleIndex = 8;
static final int kClipXIndex = 9;
static final int kClipYIndex = 10;
static final int kClipWidthIndex = 11;
static final int kClipHeightIndex = 12;
@Native static final int kClipStateIndex = 5;
@Native static final int kClipNumTypesIndex = 6;
@Native static final int kClipNumCoordsIndex = 7;
@Native static final int kClipWindingRuleIndex = 8;
@Native static final int kClipXIndex = 9;
@Native static final int kClipYIndex = 10;
@Native static final int kClipWidthIndex = 11;
@Native static final int kClipHeightIndex = 12;
// ctm info
static final int kCTMaIndex = 13;
static final int kCTMbIndex = 14;
static final int kCTMcIndex = 15;
static final int kCTMdIndex = 16;
static final int kCTMtxIndex = 17;
static final int kCTMtyIndex = 18;
@Native static final int kCTMaIndex = 13;
@Native static final int kCTMbIndex = 14;
@Native static final int kCTMcIndex = 15;
@Native static final int kCTMdIndex = 16;
@Native static final int kCTMtxIndex = 17;
@Native static final int kCTMtyIndex = 18;
// color info
static final int kColorStateIndex = 19; // kColorSimple or kColorGradient or kColorTexture
static final int kColorRGBValueIndex = 20; // if kColorSimple
static final int kColorIndexValueIndex = 21; // if kColorSystem
static final int kColorPointerIndex = 22; //
static final int kColorPointerIndex2 = 23; //
static final int kColorRGBValue1Index = 24; // if kColorGradient
static final int kColorWidthIndex = 25; // if kColorTexture
static final int kColorRGBValue2Index = 26; // if kColorGradient
static final int kColorHeightIndex = 27; // if kColorTexture
static final int kColorIsCyclicIndex = 28; // if kColorGradient (kColorNonCyclic or kColorCyclic)
static final int kColorx1Index = 29;
static final int kColortxIndex = 30;
static final int kColory1Index = 31;
static final int kColortyIndex = 32;
static final int kColorx2Index = 33;
static final int kColorsxIndex = 34;
static final int kColory2Index = 35;
static final int kColorsyIndex = 36;
@Native static final int kColorStateIndex = 19; // kColorSimple or kColorGradient or kColorTexture
@Native static final int kColorRGBValueIndex = 20; // if kColorSimple
@Native static final int kColorIndexValueIndex = 21; // if kColorSystem
@Native static final int kColorPointerIndex = 22; //
@Native static final int kColorPointerIndex2 = 23; //
@Native static final int kColorRGBValue1Index = 24; // if kColorGradient
@Native static final int kColorWidthIndex = 25; // if kColorTexture
@Native static final int kColorRGBValue2Index = 26; // if kColorGradient
@Native static final int kColorHeightIndex = 27; // if kColorTexture
@Native static final int kColorIsCyclicIndex = 28; // if kColorGradient (kColorNonCyclic or kColorCyclic)
@Native static final int kColorx1Index = 29;
@Native static final int kColortxIndex = 30;
@Native static final int kColory1Index = 31;
@Native static final int kColortyIndex = 32;
@Native static final int kColorx2Index = 33;
@Native static final int kColorsxIndex = 34;
@Native static final int kColory2Index = 35;
@Native static final int kColorsyIndex = 36;
// composite info
static final int kCompositeRuleIndex = 37; // kCGCompositeClear or ... or kCGCompositeXor
static final int kCompositeValueIndex = 38;
@Native static final int kCompositeRuleIndex = 37; // kCGCompositeClear or ... or kCGCompositeXor
@Native static final int kCompositeValueIndex = 38;
// stroke info
static final int kStrokeJoinIndex = 39; // see BasicStroke.java
static final int kStrokeCapIndex = 40; // see BasicStroke.java
static final int kStrokeWidthIndex = 41;
static final int kStrokeDashPhaseIndex = 42;
static final int kStrokeLimitIndex = 43;
@Native static final int kStrokeJoinIndex = 39; // see BasicStroke.java
@Native static final int kStrokeCapIndex = 40; // see BasicStroke.java
@Native static final int kStrokeWidthIndex = 41;
@Native static final int kStrokeDashPhaseIndex = 42;
@Native static final int kStrokeLimitIndex = 43;
// hints info
static final int kHintsAntialiasIndex = 44;
static final int kHintsTextAntialiasIndex = 45;
static final int kHintsFractionalMetricsIndex = 46;
static final int kHintsRenderingIndex = 47;
static final int kHintsInterpolationIndex = 48;
@Native static final int kHintsAntialiasIndex = 44;
@Native static final int kHintsTextAntialiasIndex = 45;
@Native static final int kHintsFractionalMetricsIndex = 46;
@Native static final int kHintsRenderingIndex = 47;
@Native static final int kHintsInterpolationIndex = 48;
// live resizing info
static final int kCanDrawDuringLiveResizeIndex = 49;
@Native static final int kCanDrawDuringLiveResizeIndex = 49;
static final int kSizeOfParameters = kCanDrawDuringLiveResizeIndex + 1;
@Native static final int kSizeOfParameters = kCanDrawDuringLiveResizeIndex + 1;
// for objectParameters
static final int kClipCoordinatesIndex = 0;
static final int kClipTypesIndex = 1;
static final int kTextureImageIndex = 2;
static final int kStrokeDashArrayIndex = 3;
static final int kFontIndex = 4;
static final int kFontPaintIndex = 5;
@Native static final int kClipCoordinatesIndex = 0;
@Native static final int kClipTypesIndex = 1;
@Native static final int kTextureImageIndex = 2;
@Native static final int kStrokeDashArrayIndex = 3;
@Native static final int kFontIndex = 4;
@Native static final int kFontPaintIndex = 5;
// possible state changes
static final int kBoundsChangedBit = 1 << 0;
static final int kBoundsNotChangedBit = ~kBoundsChangedBit;
static final int kClipChangedBit = 1 << 1;
static final int kClipNotChangedBit = ~kClipChangedBit;
static final int kCTMChangedBit = 1 << 2;
static final int kCTMNotChangedBit = ~kCTMChangedBit;
static final int kColorChangedBit = 1 << 3;
static final int kColorNotChangedBit = ~kColorChangedBit;
static final int kCompositeChangedBit = 1 << 4;
static final int kCompositeNotChangedBit = ~kCompositeChangedBit;
static final int kStrokeChangedBit = 1 << 5;
static final int kStrokeNotChangedBit = ~kStrokeChangedBit;
static final int kHintsChangedBit = 1 << 6;
static final int kHintsNotChangedBit = ~kHintsChangedBit;
static final int kFontChangedBit = 1 << 7;
static final int kFontNotChangedBit = ~kFontChangedBit;
static final int kEverythingChangedFlag = 0xffffffff;
@Native static final int kBoundsChangedBit = 1 << 0;
@Native static final int kBoundsNotChangedBit = ~kBoundsChangedBit;
@Native static final int kClipChangedBit = 1 << 1;
@Native static final int kClipNotChangedBit = ~kClipChangedBit;
@Native static final int kCTMChangedBit = 1 << 2;
@Native static final int kCTMNotChangedBit = ~kCTMChangedBit;
@Native static final int kColorChangedBit = 1 << 3;
@Native static final int kColorNotChangedBit = ~kColorChangedBit;
@Native static final int kCompositeChangedBit = 1 << 4;
@Native static final int kCompositeNotChangedBit = ~kCompositeChangedBit;
@Native static final int kStrokeChangedBit = 1 << 5;
@Native static final int kStrokeNotChangedBit = ~kStrokeChangedBit;
@Native static final int kHintsChangedBit = 1 << 6;
@Native static final int kHintsNotChangedBit = ~kHintsChangedBit;
@Native static final int kFontChangedBit = 1 << 7;
@Native static final int kFontNotChangedBit = ~kFontChangedBit;
@Native static final int kEverythingChangedFlag = 0xffffffff;
// possible color states
static final int kColorSimple = 0;
static final int kColorSystem = 1;
static final int kColorGradient = 2;
static final int kColorTexture = 3;
@Native static final int kColorSimple = 0;
@Native static final int kColorSystem = 1;
@Native static final int kColorGradient = 2;
@Native static final int kColorTexture = 3;
// possible gradient color states
static final int kColorNonCyclic = 0;
static final int kColorCyclic = 1;
@Native static final int kColorNonCyclic = 0;
@Native static final int kColorCyclic = 1;
// possible clip states
static final int kClipRect = 0;
static final int kClipShape = 1;
@Native static final int kClipRect = 0;
@Native static final int kClipShape = 1;
static int getRendererTypeForPrimitive(int primitiveType) {
switch (primitiveType) {
......
/*
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -25,10 +25,7 @@
package sun.lwawt.macosx;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public final class CocoaConstants {
private CocoaConstants(){}
......
......@@ -2,7 +2,7 @@
{-
/*
* Copyright (c) 2011,2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -34,7 +34,7 @@ Otherwise, see http://www.haskell.org/ghc/
import Data.List
import Data.Maybe
import Char
import Data.Char
data Width = W32 | W64
deriving (Show, Eq, Bounded, Enum)
......@@ -196,8 +196,6 @@ sizeofRet nt =
c2java ntype =
unlines [
"// native " ++ ntypeS ++ " -> java " ++ jprimS,
"/* No native methods here, but the constants are needed in the supporting JNI code */",
"@GenerateNativeHeader",
"public static final class " ++ className ++ " extends PrimitiveCoder<" ++ jclassS ++ ">{",
"\tpublic static final " ++ className ++ " INST = new " ++ className ++ "();",
"\tpublic " ++ className ++ "(){ super("++ffitypeVal ntype++", \"" ++ [encoding ntype] ++ "\", "++jclassS++".class, "++jprimS++".class); }",
......@@ -248,13 +246,10 @@ main = do
putStrLn "package com.apple.jobjc;"
putStrLn "import com.apple.jobjc.JObjCRuntime.Width;"
putStrLn "import javax.tools.annotation.GenerateNativeHeader;"
putStrLn "// Auto generated by PrimitiveCoder.hs"
putStrLn "// Do not edit by hand."
putStrLn "/* No native methods here, but the constants are needed in the supporting JNI code */"
putStrLn "@GenerateNativeHeader"
putStrLn "public abstract class PrimitiveCoder<T> extends Coder<T>{"
putStrLn "\tpublic PrimitiveCoder(int ffiTypeCode, String objCEncoding, Class jclass, Class jprim){"
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -24,10 +24,7 @@
*/
package com.apple.jobjc;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class CFType extends Pointer<Void> {
protected CFType(long ptr) { super(ptr); }
protected CFType(Pointer<?> ptr) { super(ptr.ptr); }
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -35,7 +35,6 @@ import com.apple.jobjc.PrimitiveCoder.SCharCoder;
import com.apple.jobjc.PrimitiveCoder.SIntCoder;
import com.apple.jobjc.PrimitiveCoder.SLongLongCoder;
import com.apple.jobjc.PrimitiveCoder.SShortCoder;
import javax.tools.annotation.GenerateNativeHeader;
public abstract class Coder<T> {
private static native long getNativeFFITypePtrForCode(final int code);
......@@ -143,8 +142,6 @@ public abstract class Coder<T> {
//
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class VoidCoder extends Coder<Object>{
public static final VoidCoder INST = new VoidCoder();
public VoidCoder(){ super(FFI_VOID, "v", Void.class, void.class); }
......@@ -153,8 +150,6 @@ public abstract class Coder<T> {
@Override public void push(JObjCRuntime runtime, long addr, Object x) { throw new RuntimeException("Trying to push a Void."); }
}
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class UnknownCoder extends Coder<Object> {
public static final UnknownCoder INST = new UnknownCoder();
public UnknownCoder(){ super(-1, "?", null, null); }
......@@ -163,8 +158,6 @@ public abstract class Coder<T> {
@Override public Object pop(JObjCRuntime runtime, long addr) { throw new RuntimeException("Coder not implemented"); }
}
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class PrimitivePointerCoder extends Coder<Long> {
public static final PrimitivePointerCoder INST = new PrimitivePointerCoder();
public PrimitivePointerCoder(){ super(Coder.FFI_PTR, "^?", Long.class, long.class); }
......@@ -194,8 +187,6 @@ public abstract class Coder<T> {
@Override public void push(JObjCRuntime runtime, long addr, Long x) { push(runtime, addr, (long) x); }
}
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class PointerCoder extends Coder<Pointer> {
public static final PointerCoder INST = new PointerCoder();
public PointerCoder(){ super(FFI_PTR, "^?", Pointer.class); }
......@@ -209,8 +200,6 @@ public abstract class Coder<T> {
}
}
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class SELCoder extends Coder<SEL> {
public static final SELCoder INST = new SELCoder();
public SELCoder(){ super(FFI_PTR, ":", SEL.class); }
......@@ -224,8 +213,6 @@ public abstract class Coder<T> {
}
}
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static abstract class StructCoder extends Coder<Struct> {
private final FFIType ffiType;
final int sizeof;
......@@ -267,8 +254,6 @@ public abstract class Coder<T> {
}
}
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class IDCoder extends Coder<ID>{
public static final IDCoder INST = new IDCoder();
public IDCoder(){ super(FFI_PTR, "@", ID.class); }
......@@ -287,8 +272,6 @@ public abstract class Coder<T> {
}
}
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class NSClassCoder extends Coder<NSClass>{
public static final NSClassCoder INST = new NSClassCoder();
public NSClassCoder(){ super(FFI_PTR, "#", NSClass.class); }
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -26,10 +26,7 @@ package com.apple.jobjc;
import com.apple.jobjc.Coder.PrimitivePointerCoder;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
class FFIType{
private static native void makeFFIType(long ffi_type_buf, long elements_buf);
private static native int getFFITypeSizeof();
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -24,10 +24,7 @@
*/
package com.apple.jobjc;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class Function {
private static native long getFxnPtrForFunctionName(final String functionName);
private static native long getFxnPtrForFunctionNameAndLib(final long libPtr, final String functionName);
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -29,10 +29,7 @@ import java.lang.reflect.Constructor;
import java.util.LinkedHashMap;
import java.util.Map;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class ID extends Pointer<Void>{
static native String getNativeDescription(final long objPtr);
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -30,18 +30,13 @@ import com.apple.jobjc.Coder.PrimitivePointerCoder;
import com.apple.jobjc.Coder.SELCoder;
import com.apple.jobjc.Coder.StructCoder;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public abstract class Invoke {
public abstract void invoke(NativeArgumentBuffer argBuf);
public abstract void invoke(NativeArgumentBuffer buffer, Struct retvalStruct);
//
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class FunCall extends Invoke{
static native void invoke(long cifPtr, long fxnPtr, long retValPtr, long argsPtr);
......@@ -78,8 +73,6 @@ public abstract class Invoke {
}
}
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class MsgSend extends Invoke{
static{ System.load("/usr/lib/libobjc.dylib"); }
......@@ -165,8 +158,6 @@ public abstract class Invoke {
}
}
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class MsgSendSuper extends Invoke{
static{ System.load("/usr/lib/libobjc.dylib"); }
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -31,16 +31,11 @@ import java.util.List;
import sun.misc.Unsafe;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public final class JObjCRuntime {
static { System.loadLibrary("JObjC"); }
@GenerateNativeHeader
public static enum Arch{ ppc, i386, x86_64 };
@GenerateNativeHeader
public static enum Width{ W32, W64 };
public static final Arch ARCH = getArch();
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -25,10 +25,7 @@
package com.apple.jobjc;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class MacOSXFramework {
private static native long retainFramework(final String frameworkName);
private static native void releaseFramework(final long frameworkPtr);
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -27,13 +27,8 @@ package com.apple.jobjc;
import java.lang.ref.WeakReference;
import java.lang.reflect.Constructor;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class NSClass<T extends ID> extends ID {
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static class NSClassNotFoundException extends RuntimeException{
public NSClassNotFoundException(String m){ super(m); }
public NSClassNotFoundException(String m, Throwable cause){ super(m, cause); }
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -28,10 +28,7 @@ import java.nio.ByteOrder;
import com.apple.jobjc.Coder.PrimitivePointerCoder;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public final class NativeArgumentBuffer{
private static final ThreadLocal<NativeArgumentBuffer> threadLocal = new ThreadLocal<NativeArgumentBuffer>();
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -27,13 +27,10 @@ package com.apple.jobjc;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import javax.tools.annotation.GenerateNativeHeader;
/**
* A wrapper around a direct ByteBuffer and its native pointer. For documentation, @see java.nio.ByteBuffer
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class NativeBuffer {
static native long getPtrOfBuffer(final ByteBuffer byteBuffer);
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -24,10 +24,7 @@
*/
package com.apple.jobjc;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public abstract class NativeObjectLifecycleManager {
private static native void retainNativeObject(final long ptr);
private static native void releaseNativeObject(final long ptr);
......@@ -37,8 +34,6 @@ public abstract class NativeObjectLifecycleManager {
abstract void end(final long ptr);
boolean shouldPreRetain() { return false; }
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static class CFRetainRelease extends NativeObjectLifecycleManager {
public static final NativeObjectLifecycleManager INST = new CFRetainRelease();
@Override void begin(final long ptr) { retainNativeObject(ptr); }
......@@ -46,16 +41,12 @@ public abstract class NativeObjectLifecycleManager {
@Override boolean shouldPreRetain() { return true; }
}
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static class Free extends NativeObjectLifecycleManager {
public static final NativeObjectLifecycleManager INST = new Free();
@Override void begin(final long ptr) { }
@Override void end(final long ptr) { freeNativeObject(ptr); }
}
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static class Nothing extends NativeObjectLifecycleManager {
public static final NativeObjectLifecycleManager INST = new Nothing();
@Override void begin(final long ptr) { }
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -24,10 +24,7 @@
*/
package com.apple.jobjc;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class Opaque extends Pointer<Void> {
protected Opaque(long ptr) { super(ptr); }
protected Opaque(Pointer<?> ptr) { super(ptr.ptr); }
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -24,10 +24,7 @@
*/
package com.apple.jobjc;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class Pointer <T> implements Comparable<Pointer<T>>{
long ptr;
......
/*
* Copyright (c) 2011,2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -24,11 +24,8 @@
*/
package com.apple.jobjc;
import com.apple.jobjc.JObjCRuntime.Width;
import javax.tools.annotation.GenerateNativeHeader;
// Auto generated by PrimitiveCoder.hs
// Do not edit by hand.
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public abstract class PrimitiveCoder<T> extends Coder<T>{
public PrimitiveCoder(int ffiTypeCode, String objCEncoding, Class jclass, Class jprim){
super(ffiTypeCode, objCEncoding, jclass, jprim);
......@@ -130,8 +127,6 @@ public abstract class PrimitiveCoder<T> extends Coder<T>{
// native BOOL -> java boolean
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class BoolCoder extends PrimitiveCoder<Boolean>{
public static final BoolCoder INST = new BoolCoder();
public BoolCoder(){ super(FFI_SINT8, "B", Boolean.class, boolean.class); }
......@@ -175,8 +170,6 @@ public static final class BoolCoder extends PrimitiveCoder<Boolean>{
}
// native schar -> java byte
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class SCharCoder extends PrimitiveCoder<Byte>{
public static final SCharCoder INST = new SCharCoder();
public SCharCoder(){ super(FFI_SINT8, "c", Byte.class, byte.class); }
......@@ -220,8 +213,6 @@ public static final class SCharCoder extends PrimitiveCoder<Byte>{
}
// native uchar -> java byte
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class UCharCoder extends PrimitiveCoder<Byte>{
public static final UCharCoder INST = new UCharCoder();
public UCharCoder(){ super(FFI_UINT8, "C", Byte.class, byte.class); }
......@@ -265,8 +256,6 @@ public static final class UCharCoder extends PrimitiveCoder<Byte>{
}
// native sshort -> java short
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class SShortCoder extends PrimitiveCoder<Short>{
public static final SShortCoder INST = new SShortCoder();
public SShortCoder(){ super(FFI_SINT16, "s", Short.class, short.class); }
......@@ -310,8 +299,6 @@ public static final class SShortCoder extends PrimitiveCoder<Short>{
}
// native ushort -> java short
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class UShortCoder extends PrimitiveCoder<Short>{
public static final UShortCoder INST = new UShortCoder();
public UShortCoder(){ super(FFI_UINT16, "S", Short.class, short.class); }
......@@ -355,8 +342,6 @@ public static final class UShortCoder extends PrimitiveCoder<Short>{
}
// native sint -> java int
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class SIntCoder extends PrimitiveCoder<Integer>{
public static final SIntCoder INST = new SIntCoder();
public SIntCoder(){ super(FFI_SINT32, "i", Integer.class, int.class); }
......@@ -400,8 +385,6 @@ public static final class SIntCoder extends PrimitiveCoder<Integer>{
}
// native uint -> java int
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class UIntCoder extends PrimitiveCoder<Integer>{
public static final UIntCoder INST = new UIntCoder();
public UIntCoder(){ super(FFI_UINT32, "I", Integer.class, int.class); }
......@@ -445,8 +428,6 @@ public static final class UIntCoder extends PrimitiveCoder<Integer>{
}
// native slong -> java long
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class SLongCoder extends PrimitiveCoder<Long>{
public static final SLongCoder INST = new SLongCoder();
public SLongCoder(){ super((JObjCRuntime.IS64 ? (FFI_SINT64) : (FFI_SINT32)), "l", Long.class, long.class); }
......@@ -496,8 +477,6 @@ public static final class SLongCoder extends PrimitiveCoder<Long>{
}
// native ulong -> java long
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class ULongCoder extends PrimitiveCoder<Long>{
public static final ULongCoder INST = new ULongCoder();
public ULongCoder(){ super((JObjCRuntime.IS64 ? (FFI_UINT64) : (FFI_UINT32)), "L", Long.class, long.class); }
......@@ -547,8 +526,6 @@ public static final class ULongCoder extends PrimitiveCoder<Long>{
}
// native slonglong -> java long
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class SLongLongCoder extends PrimitiveCoder<Long>{
public static final SLongLongCoder INST = new SLongLongCoder();
public SLongLongCoder(){ super(FFI_SINT64, "q", Long.class, long.class); }
......@@ -592,8 +569,6 @@ public static final class SLongLongCoder extends PrimitiveCoder<Long>{
}
// native ulonglong -> java long
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class ULongLongCoder extends PrimitiveCoder<Long>{
public static final ULongLongCoder INST = new ULongLongCoder();
public ULongLongCoder(){ super(FFI_UINT64, "Q", Long.class, long.class); }
......@@ -637,8 +612,6 @@ public static final class ULongLongCoder extends PrimitiveCoder<Long>{
}
// native float -> java float
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class FloatCoder extends PrimitiveCoder<Float>{
public static final FloatCoder INST = new FloatCoder();
public FloatCoder(){ super(FFI_FLOAT, "f", Float.class, float.class); }
......@@ -682,8 +655,6 @@ public static final class FloatCoder extends PrimitiveCoder<Float>{
}
// native double -> java double
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public static final class DoubleCoder extends PrimitiveCoder<Double>{
public static final DoubleCoder INST = new DoubleCoder();
public DoubleCoder(){ super(FFI_DOUBLE, "d", Double.class, double.class); }
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -24,10 +24,7 @@
*/
package com.apple.jobjc;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class SEL {
static native long getSelectorPtr(String selectorName);
static native String getSelectorName(long ptr);
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -24,13 +24,10 @@
*/
package com.apple.jobjc;
import javax.tools.annotation.GenerateNativeHeader;
/**
* A struct is malloced on the C heap and accessed in Java through a ByteBuffer.
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public abstract class Struct{
protected final NativeBuffer raw;
private final JObjCRuntime runtime;
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -33,10 +33,7 @@ import com.apple.jobjc.Coder.PrimitivePointerCoder;
import com.apple.jobjc.Coder.VoidCoder;
import com.apple.jobjc.Invoke.MsgSend;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
final class Subclassing {
static native long allocateClassPair(long superClass, String name);
static native boolean addIVarForJObj(long clazz);
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -24,8 +24,6 @@
*/
#include "com_apple_jobjc_Invoke_FunCall.h"
#include "com_apple_jobjc_Invoke_MsgSend.h"
#include "com_apple_jobjc_Invoke_MsgSendSuper.h"
#include <ffi/ffi.h>
#include <objc/message.h>
#include <JavaNativeFoundation/JavaNativeFoundation.h>
......
/*
* Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -23,6 +23,5 @@
* questions.
*/
#include "com_apple_jobjc_JObjCRuntime.h"
#include "Cocoa/Cocoa.h"
/*
* Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -26,7 +26,6 @@
#import "PrinterView.h"
#import "java_awt_print_Pageable.h"
#import "java_awt_print_Printable.h"
#import "java_awt_print_PageFormat.h"
#import <JavaNativeFoundation/JavaNativeFoundation.h>
......
......@@ -32,8 +32,8 @@
static CFDateFormatterStyle convertDateFormatterStyle(jint javaStyle);
static CFNumberFormatterStyle convertNumberFormatterStyle(jint javaStyle);
static void copyArrayElements(JNIEnv *env, CFArrayRef cfarray, jobjectArray jarray, CFIndex sindex, int dindex, int count);
static jstring getNumberSymbolString(JNIEnv *env, jstring jdefault, CFStringRef type);
static jchar getNumberSymbolChar(jchar jdefault, CFStringRef type);
static jstring getNumberSymbolString(JNIEnv *env, jstring jlangtag, jstring jdefault, CFStringRef type);
static jchar getNumberSymbolChar(JNIEnv *env, jstring jlangtag, jchar jdefault, CFStringRef type);
// from java_props_macosx.c
extern char * getMacOSXLocale(int cat);
......@@ -322,7 +322,7 @@ JNIEXPORT jstring JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapte
*/
JNIEXPORT jstring JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getCurrencySymbol
(JNIEnv *env, jclass cls, jstring jlangtag, jstring currencySymbol) {
return getNumberSymbolString(env, currencySymbol, kCFNumberFormatterCurrencySymbol);
return getNumberSymbolString(env, jlangtag, currencySymbol, kCFNumberFormatterCurrencySymbol);
}
/*
......@@ -332,7 +332,7 @@ JNIEXPORT jstring JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapte
*/
JNIEXPORT jchar JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getDecimalSeparator
(JNIEnv *env, jclass cls, jstring jlangtag, jchar decimalSeparator) {
return getNumberSymbolChar(decimalSeparator, kCFNumberFormatterDecimalSeparator);
return getNumberSymbolChar(env, jlangtag, decimalSeparator, kCFNumberFormatterDecimalSeparator);
}
/*
......@@ -342,7 +342,7 @@ JNIEXPORT jchar JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterI
*/
JNIEXPORT jchar JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getGroupingSeparator
(JNIEnv *env, jclass cls, jstring jlangtag, jchar groupingSeparator) {
return getNumberSymbolChar(groupingSeparator, kCFNumberFormatterGroupingSeparator);
return getNumberSymbolChar(env, jlangtag, groupingSeparator, kCFNumberFormatterGroupingSeparator);
}
/*
......@@ -352,7 +352,7 @@ JNIEXPORT jchar JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterI
*/
JNIEXPORT jstring JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getInfinity
(JNIEnv *env, jclass cls, jstring jlangtag, jstring infinity) {
return getNumberSymbolString(env, infinity, kCFNumberFormatterInfinitySymbol);
return getNumberSymbolString(env, jlangtag, infinity, kCFNumberFormatterInfinitySymbol);
}
/*
......@@ -362,7 +362,7 @@ JNIEXPORT jstring JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapte
*/
JNIEXPORT jstring JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getInternationalCurrencySymbol
(JNIEnv *env, jclass cls, jstring jlangtag, jstring internationalCurrencySymbol) {
return getNumberSymbolString(env, internationalCurrencySymbol, kCFNumberFormatterInternationalCurrencySymbol);
return getNumberSymbolString(env, jlangtag, internationalCurrencySymbol, kCFNumberFormatterInternationalCurrencySymbol);
}
/*
......@@ -372,7 +372,7 @@ JNIEXPORT jstring JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapte
*/
JNIEXPORT jchar JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getMinusSign
(JNIEnv *env, jclass cls, jstring jlangtag, jchar minusSign) {
return getNumberSymbolChar(minusSign, kCFNumberFormatterMinusSign);
return getNumberSymbolChar(env, jlangtag, minusSign, kCFNumberFormatterMinusSign);
}
/*
......@@ -382,7 +382,7 @@ JNIEXPORT jchar JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterI
*/
JNIEXPORT jchar JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getMonetaryDecimalSeparator
(JNIEnv *env, jclass cls, jstring jlangtag, jchar monetaryDecimalSeparator) {
return getNumberSymbolChar(monetaryDecimalSeparator, kCFNumberFormatterCurrencyDecimalSeparator);
return getNumberSymbolChar(env, jlangtag, monetaryDecimalSeparator, kCFNumberFormatterCurrencyDecimalSeparator);
}
/*
......@@ -392,7 +392,7 @@ JNIEXPORT jchar JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterI
*/
JNIEXPORT jstring JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getNaN
(JNIEnv *env, jclass cls, jstring jlangtag, jstring nan) {
return getNumberSymbolString(env, nan, kCFNumberFormatterNaNSymbol);
return getNumberSymbolString(env, jlangtag, nan, kCFNumberFormatterNaNSymbol);
}
/*
......@@ -402,7 +402,7 @@ JNIEXPORT jstring JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapte
*/
JNIEXPORT jchar JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getPercent
(JNIEnv *env, jclass cls, jstring jlangtag, jchar percent) {
return getNumberSymbolChar(percent, kCFNumberFormatterPercentSymbol);
return getNumberSymbolChar(env, jlangtag, percent, kCFNumberFormatterPercentSymbol);
}
/*
......@@ -412,7 +412,7 @@ JNIEXPORT jchar JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterI
*/
JNIEXPORT jchar JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getPerMill
(JNIEnv *env, jclass cls, jstring jlangtag, jchar perMill) {
return getNumberSymbolChar(perMill, kCFNumberFormatterPerMillSymbol);
return getNumberSymbolChar(env, jlangtag, perMill, kCFNumberFormatterPerMillSymbol);
}
/*
......@@ -422,7 +422,36 @@ JNIEXPORT jchar JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterI
*/
JNIEXPORT jchar JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getZeroDigit
(JNIEnv *env, jclass cls, jstring jlangtag, jchar zeroDigit) {
return getNumberSymbolChar(zeroDigit, kCFNumberFormatterZeroSymbol);
// The following code *should* work, but not for some reason :o
//
//return getNumberSymbolChar(env, jlangtag, zeroDigit, kCFNumberFormatterZeroSymbol);
//
// so here is a workaround.
jchar ret = zeroDigit;
CFLocaleRef cflocale = CFLocaleCopyCurrent();
if (cflocale != NULL) {
CFNumberFormatterRef nf = CFNumberFormatterCreate(kCFAllocatorDefault,
cflocale,
kCFNumberFormatterNoStyle);
if (nf != NULL) {
int zero = 0;
CFStringRef str = CFNumberFormatterCreateStringWithValue(kCFAllocatorDefault,
nf, kCFNumberIntType, &zero);
if (str != NULL) {
if (CFStringGetLength(str) > 0) {
ret = CFStringGetCharacterAtIndex(str, 0);
}
CFRelease(str);
}
CFRelease(nf);
}
CFRelease(cflocale);
}
return ret;
}
/*
......@@ -432,7 +461,7 @@ JNIEXPORT jchar JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterI
*/
JNIEXPORT jstring JNICALL Java_sun_util_locale_provider_HostLocaleProviderAdapterImpl_getExponentSeparator
(JNIEnv *env, jclass cls, jstring jlangtag, jstring exponent) {
return getNumberSymbolString(env, exponent, kCFNumberFormatterExponentSymbol);
return getNumberSymbolString(env, jlangtag, exponent, kCFNumberFormatterExponentSymbol);
}
/*
......@@ -625,7 +654,7 @@ static void copyArrayElements(JNIEnv *env, CFArrayRef cfarray, jobjectArray jarr
}
}
static jstring getNumberSymbolString(JNIEnv *env, jstring jdefault, CFStringRef type) {
static jstring getNumberSymbolString(JNIEnv *env, jstring jlangtag, jstring jdefault, CFStringRef type) {
char buf[BUFLEN];
jstring ret = jdefault;
CFLocaleRef cflocale = CFLocaleCopyCurrent();
......@@ -633,7 +662,7 @@ static jstring getNumberSymbolString(JNIEnv *env, jstring jdefault, CFStringRef
if (cflocale != NULL) {
CFNumberFormatterRef nf = CFNumberFormatterCreate(kCFAllocatorDefault,
cflocale,
kCFNumberFormatterDecimalStyle);
kCFNumberFormatterNoStyle);
if (nf != NULL) {
CFStringRef str = CFNumberFormatterCopyProperty(nf, type);
if (str != NULL) {
......@@ -651,21 +680,21 @@ static jstring getNumberSymbolString(JNIEnv *env, jstring jdefault, CFStringRef
return ret;
}
static jchar getNumberSymbolChar(jchar jdefault, CFStringRef type) {
char buf[BUFLEN];
static jchar getNumberSymbolChar(JNIEnv *env, jstring jlangtag, jchar jdefault, CFStringRef type) {
jchar ret = jdefault;
CFLocaleRef cflocale = CFLocaleCopyCurrent();
if (cflocale != NULL) {
CFNumberFormatterRef nf = CFNumberFormatterCreate(kCFAllocatorDefault,
cflocale,
kCFNumberFormatterDecimalStyle);
kCFNumberFormatterNoStyle);
if (nf != NULL) {
CFStringRef str = CFNumberFormatterCopyProperty(nf, type);
if (str != NULL) {
CFStringGetCString(str, buf, BUFLEN, kCFStringEncodingUTF8);
if (CFStringGetLength(str) > 0) {
ret = CFStringGetCharacterAtIndex(str, 0);
}
CFRelease(str);
ret = buf[0];
}
CFRelease(nf);
......
......@@ -37,7 +37,7 @@
/* Implemented in linker_md.c */
void dbgsysBuildLibName(char *, int, char *, char *);
void dbgsysBuildLibName(char *, int, const char *, const char *);
void * dbgsysLoadLibrary(const char *, char *err_buf, int err_buflen);
void dbgsysUnloadLibrary(void *);
void * dbgsysFindLibraryEntry(void *, const char *);
......
......@@ -97,12 +97,12 @@ findTransportOnLoad(void *handle)
/* Load transport library (directory=="" means do system search) */
static void *
loadTransportLibrary(char *libdir, char *name)
loadTransportLibrary(const char *libdir, const char *name)
{
void *handle;
char libname[MAXPATHLEN+2];
char buf[MAXPATHLEN*2+100];
char *plibdir;
const char *plibdir;
/* Convert libdir from UTF-8 to platform encoding */
plibdir = NULL;
......@@ -131,12 +131,12 @@ loadTransportLibrary(char *libdir, char *name)
* JDK 1.2 javai.c v1.61
*/
static jdwpError
loadTransport(char *name, jdwpTransportEnv **transportPtr)
loadTransport(const char *name, jdwpTransportEnv **transportPtr)
{
JNIEnv *env;
jdwpTransport_OnLoad_t onLoad;
void *handle;
char *libdir;
const char *libdir;
/* Make sure library name is not empty */
if (name == NULL) {
......
/*
* Copyright (c) 1996, 2003, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -27,7 +27,7 @@ package java.awt;
import java.awt.event.*;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* The interface for objects which have an adjustable numeric value
......@@ -36,24 +36,22 @@ import javax.tools.annotation.GenerateNativeHeader;
* @author Amy Fowler
* @author Tim Prinzing
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public interface Adjustable {
/**
* Indicates that the <code>Adjustable</code> has horizontal orientation.
*/
public static final int HORIZONTAL = 0;
@Native public static final int HORIZONTAL = 0;
/**
* Indicates that the <code>Adjustable</code> has vertical orientation.
*/
public static final int VERTICAL = 1;
@Native public static final int VERTICAL = 1;
/**
* Indicates that the <code>Adjustable</code> has no orientation.
*/
public static final int NO_ORIENTATION = 2;
@Native public static final int NO_ORIENTATION = 2;
/**
* Gets the orientation of the adjustable object.
......
/*
* Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -26,7 +26,7 @@
package java.awt;
import java.awt.image.ColorModel;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
import sun.java2d.SunCompositeContext;
/**
......@@ -350,8 +350,6 @@ import sun.java2d.SunCompositeContext;
* @see CompositeContext
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public final class AlphaComposite implements Composite {
/**
* Both the color and the alpha of the destination are cleared
......@@ -364,7 +362,7 @@ public final class AlphaComposite implements Composite {
* <em>C<sub>r</sub></em> = 0
*</pre>
*/
public static final int CLEAR = 1;
@Native public static final int CLEAR = 1;
/**
* The source is copied to the destination
......@@ -377,7 +375,7 @@ public final class AlphaComposite implements Composite {
* <em>C<sub>r</sub></em> = <em>C<sub>s</sub></em>
*</pre>
*/
public static final int SRC = 2;
@Native public static final int SRC = 2;
/**
* The destination is left untouched
......@@ -390,7 +388,7 @@ public final class AlphaComposite implements Composite {
*</pre>
* @since 1.4
*/
public static final int DST = 9;
@Native public static final int DST = 9;
// Note that DST was added in 1.4 so it is numbered out of order...
/**
......@@ -403,7 +401,7 @@ public final class AlphaComposite implements Composite {
* <em>C<sub>r</sub></em> = <em>C<sub>s</sub></em> + <em>C<sub>d</sub></em>*(1-<em>A<sub>s</sub></em>)
*</pre>
*/
public static final int SRC_OVER = 3;
@Native public static final int SRC_OVER = 3;
/**
* The destination is composited over the source and
......@@ -416,7 +414,7 @@ public final class AlphaComposite implements Composite {
* <em>C<sub>r</sub></em> = <em>C<sub>s</sub></em>*(1-<em>A<sub>d</sub></em>) + <em>C<sub>d</sub></em>
*</pre>
*/
public static final int DST_OVER = 4;
@Native public static final int DST_OVER = 4;
/**
* The part of the source lying inside of the destination replaces
......@@ -429,7 +427,7 @@ public final class AlphaComposite implements Composite {
* <em>C<sub>r</sub></em> = <em>C<sub>s</sub></em>*<em>A<sub>d</sub></em>
*</pre>
*/
public static final int SRC_IN = 5;
@Native public static final int SRC_IN = 5;
/**
* The part of the destination lying inside of the source
......@@ -442,7 +440,7 @@ public final class AlphaComposite implements Composite {
* <em>C<sub>r</sub></em> = <em>C<sub>d</sub></em>*<em>A<sub>s</sub></em>
*</pre>
*/
public static final int DST_IN = 6;
@Native public static final int DST_IN = 6;
/**
* The part of the source lying outside of the destination
......@@ -455,7 +453,7 @@ public final class AlphaComposite implements Composite {
* <em>C<sub>r</sub></em> = <em>C<sub>s</sub></em>*(1-<em>A<sub>d</sub></em>)
*</pre>
*/
public static final int SRC_OUT = 7;
@Native public static final int SRC_OUT = 7;
/**
* The part of the destination lying outside of the source
......@@ -468,7 +466,7 @@ public final class AlphaComposite implements Composite {
* <em>C<sub>r</sub></em> = <em>C<sub>d</sub></em>*(1-<em>A<sub>s</sub></em>)
*</pre>
*/
public static final int DST_OUT = 8;
@Native public static final int DST_OUT = 8;
// Rule 9 is DST which is defined above where it fits into the
// list logically, rather than numerically
......@@ -487,7 +485,7 @@ public final class AlphaComposite implements Composite {
*</pre>
* @since 1.4
*/
public static final int SRC_ATOP = 10;
@Native public static final int SRC_ATOP = 10;
/**
* The part of the destination lying inside of the source
......@@ -501,7 +499,7 @@ public final class AlphaComposite implements Composite {
*</pre>
* @since 1.4
*/
public static final int DST_ATOP = 11;
@Native public static final int DST_ATOP = 11;
/**
* The part of the source that lies outside of the destination
......@@ -516,7 +514,7 @@ public final class AlphaComposite implements Composite {
*</pre>
* @since 1.4
*/
public static final int XOR = 12;
@Native public static final int XOR = 12;
/**
* <code>AlphaComposite</code> object that implements the opaque CLEAR rule
......@@ -606,8 +604,8 @@ public final class AlphaComposite implements Composite {
*/
public static final AlphaComposite Xor = new AlphaComposite(XOR);
private static final int MIN_RULE = CLEAR;
private static final int MAX_RULE = XOR;
@Native private static final int MIN_RULE = CLEAR;
@Native private static final int MAX_RULE = XOR;
float extraAlpha;
int rule;
......
/*
* Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -27,7 +27,7 @@ package java.awt;
import java.beans.ConstructorProperties;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* The <code>BasicStroke</code> class defines a basic set of rendering
......@@ -111,47 +111,45 @@ import javax.tools.annotation.GenerateNativeHeader;
* @see Graphics2D
* @author Jim Graham
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class BasicStroke implements Stroke {
/**
* Joins path segments by extending their outside edges until
* they meet.
*/
public final static int JOIN_MITER = 0;
@Native public final static int JOIN_MITER = 0;
/**
* Joins path segments by rounding off the corner at a radius
* of half the line width.
*/
public final static int JOIN_ROUND = 1;
@Native public final static int JOIN_ROUND = 1;
/**
* Joins path segments by connecting the outer corners of their
* wide outlines with a straight segment.
*/
public final static int JOIN_BEVEL = 2;
@Native public final static int JOIN_BEVEL = 2;
/**
* Ends unclosed subpaths and dash segments with no added
* decoration.
*/
public final static int CAP_BUTT = 0;
@Native public final static int CAP_BUTT = 0;
/**
* Ends unclosed subpaths and dash segments with a round
* decoration that has a radius equal to half of the width
* of the pen.
*/
public final static int CAP_ROUND = 1;
@Native public final static int CAP_ROUND = 1;
/**
* Ends unclosed subpaths and dash segments with a square
* projection that extends beyond the end of the segment
* to a distance equal to half of the line width.
*/
public final static int CAP_SQUARE = 2;
@Native public final static int CAP_SQUARE = 2;
float width;
......
/*
* Copyright (c) 1995, 2008, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -34,7 +34,6 @@ import java.io.IOException;
import javax.accessibility.*;
import javax.tools.annotation.GenerateNativeHeader;
/**
* The <code>Choice</code> class presents a pop-up menu of choices.
......@@ -71,8 +70,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @author Arthur van Hoff
* @since JDK1.0
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class Choice extends Component implements ItemSelectable, Accessible {
/**
* The items for the <code>Choice</code>.
......
/*
* Copyright (c) 2000, 2006, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -25,7 +25,7 @@
package java.awt;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* The <code>DisplayMode</code> class encapsulates the bit depth, height,
......@@ -46,8 +46,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @since 1.4
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public final class DisplayMode {
private Dimension size;
......@@ -94,7 +92,7 @@ public final class DisplayMode {
* display mode.
* @see #getBitDepth
*/
public final static int BIT_DEPTH_MULTI = -1;
@Native public final static int BIT_DEPTH_MULTI = -1;
/**
* Returns the bit depth of the display, in bits per pixel. This may be
......@@ -112,7 +110,7 @@ public final class DisplayMode {
* Value of the refresh rate if not known.
* @see #getRefreshRate
*/
public final static int REFRESH_RATE_UNKNOWN = 0;
@Native public final static int REFRESH_RATE_UNKNOWN = 0;
/**
* Returns the refresh rate of the display, in hertz. This may be
......
/*
* Copyright (c) 1995, 2007, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -33,7 +33,6 @@ import java.awt.image.ReplicateScaleFilter;
import sun.awt.image.SurfaceManager;
import javax.tools.annotation.GenerateNativeHeader;
/**
* The abstract class <code>Image</code> is the superclass of all
......@@ -44,8 +43,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @author Arthur van Hoff
* @since JDK1.0
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public abstract class Image {
/**
......
/*
* Copyright (c) 1995, 2007, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -33,7 +33,6 @@ import java.io.ObjectOutputStream;
import java.io.ObjectInputStream;
import java.io.IOException;
import javax.accessibility.*;
import javax.tools.annotation.GenerateNativeHeader;
/**
......@@ -107,8 +106,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @see java.awt.event.ActionListener
* @since JDK1.0
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class List extends Component implements ItemSelectable, Accessible {
/**
* A vector created to contain items which will become
......
/*
* Copyright (c) 1996, 2006, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -28,7 +28,6 @@ package java.awt;
import java.awt.peer.PopupMenuPeer;
import javax.accessibility.*;
import javax.tools.annotation.GenerateNativeHeader;
import sun.awt.AWTAccessor;
......@@ -44,8 +43,6 @@ import sun.awt.AWTAccessor;
*
* @author Amy Fowler
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class PopupMenu extends Menu {
private static final String base = "popup";
......
/*
* Copyright (c) 1996, 2007, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -26,7 +26,7 @@ package java.awt;
import java.io.ObjectStreamException;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* A class to encapsulate symbolic colors representing the color of
......@@ -49,8 +49,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @author Carl Quinn
* @author Amy Fowler
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public final class SystemColor extends Color implements java.io.Serializable {
/**
......@@ -58,187 +56,187 @@ public final class SystemColor extends Color implements java.io.Serializable {
* {@link #desktop} system color.
* @see SystemColor#desktop
*/
public final static int DESKTOP = 0;
@Native public final static int DESKTOP = 0;
/**
* The array index for the
* {@link #activeCaption} system color.
* @see SystemColor#activeCaption
*/
public final static int ACTIVE_CAPTION = 1;
@Native public final static int ACTIVE_CAPTION = 1;
/**
* The array index for the
* {@link #activeCaptionText} system color.
* @see SystemColor#activeCaptionText
*/
public final static int ACTIVE_CAPTION_TEXT = 2;
@Native public final static int ACTIVE_CAPTION_TEXT = 2;
/**
* The array index for the
* {@link #activeCaptionBorder} system color.
* @see SystemColor#activeCaptionBorder
*/
public final static int ACTIVE_CAPTION_BORDER = 3;
@Native public final static int ACTIVE_CAPTION_BORDER = 3;
/**
* The array index for the
* {@link #inactiveCaption} system color.
* @see SystemColor#inactiveCaption
*/
public final static int INACTIVE_CAPTION = 4;
@Native public final static int INACTIVE_CAPTION = 4;
/**
* The array index for the
* {@link #inactiveCaptionText} system color.
* @see SystemColor#inactiveCaptionText
*/
public final static int INACTIVE_CAPTION_TEXT = 5;
@Native public final static int INACTIVE_CAPTION_TEXT = 5;
/**
* The array index for the
* {@link #inactiveCaptionBorder} system color.
* @see SystemColor#inactiveCaptionBorder
*/
public final static int INACTIVE_CAPTION_BORDER = 6;
@Native public final static int INACTIVE_CAPTION_BORDER = 6;
/**
* The array index for the
* {@link #window} system color.
* @see SystemColor#window
*/
public final static int WINDOW = 7;
@Native public final static int WINDOW = 7;
/**
* The array index for the
* {@link #windowBorder} system color.
* @see SystemColor#windowBorder
*/
public final static int WINDOW_BORDER = 8;
@Native public final static int WINDOW_BORDER = 8;
/**
* The array index for the
* {@link #windowText} system color.
* @see SystemColor#windowText
*/
public final static int WINDOW_TEXT = 9;
@Native public final static int WINDOW_TEXT = 9;
/**
* The array index for the
* {@link #menu} system color.
* @see SystemColor#menu
*/
public final static int MENU = 10;
@Native public final static int MENU = 10;
/**
* The array index for the
* {@link #menuText} system color.
* @see SystemColor#menuText
*/
public final static int MENU_TEXT = 11;
@Native public final static int MENU_TEXT = 11;
/**
* The array index for the
* {@link #text} system color.
* @see SystemColor#text
*/
public final static int TEXT = 12;
@Native public final static int TEXT = 12;
/**
* The array index for the
* {@link #textText} system color.
* @see SystemColor#textText
*/
public final static int TEXT_TEXT = 13;
@Native public final static int TEXT_TEXT = 13;
/**
* The array index for the
* {@link #textHighlight} system color.
* @see SystemColor#textHighlight
*/
public final static int TEXT_HIGHLIGHT = 14;
@Native public final static int TEXT_HIGHLIGHT = 14;
/**
* The array index for the
* {@link #textHighlightText} system color.
* @see SystemColor#textHighlightText
*/
public final static int TEXT_HIGHLIGHT_TEXT = 15;
@Native public final static int TEXT_HIGHLIGHT_TEXT = 15;
/**
* The array index for the
* {@link #textInactiveText} system color.
* @see SystemColor#textInactiveText
*/
public final static int TEXT_INACTIVE_TEXT = 16;
@Native public final static int TEXT_INACTIVE_TEXT = 16;
/**
* The array index for the
* {@link #control} system color.
* @see SystemColor#control
*/
public final static int CONTROL = 17;
@Native public final static int CONTROL = 17;
/**
* The array index for the
* {@link #controlText} system color.
* @see SystemColor#controlText
*/
public final static int CONTROL_TEXT = 18;
@Native public final static int CONTROL_TEXT = 18;
/**
* The array index for the
* {@link #controlHighlight} system color.
* @see SystemColor#controlHighlight
*/
public final static int CONTROL_HIGHLIGHT = 19;
@Native public final static int CONTROL_HIGHLIGHT = 19;
/**
* The array index for the
* {@link #controlLtHighlight} system color.
* @see SystemColor#controlLtHighlight
*/
public final static int CONTROL_LT_HIGHLIGHT = 20;
@Native public final static int CONTROL_LT_HIGHLIGHT = 20;
/**
* The array index for the
* {@link #controlShadow} system color.
* @see SystemColor#controlShadow
*/
public final static int CONTROL_SHADOW = 21;
@Native public final static int CONTROL_SHADOW = 21;
/**
* The array index for the
* {@link #controlDkShadow} system color.
* @see SystemColor#controlDkShadow
*/
public final static int CONTROL_DK_SHADOW = 22;
@Native public final static int CONTROL_DK_SHADOW = 22;
/**
* The array index for the
* {@link #scrollbar} system color.
* @see SystemColor#scrollbar
*/
public final static int SCROLLBAR = 23;
@Native public final static int SCROLLBAR = 23;
/**
* The array index for the
* {@link #info} system color.
* @see SystemColor#info
*/
public final static int INFO = 24;
@Native public final static int INFO = 24;
/**
* The array index for the
* {@link #infoText} system color.
* @see SystemColor#infoText
*/
public final static int INFO_TEXT = 25;
@Native public final static int INFO_TEXT = 25;
/**
* The number of system colors in the array.
*/
public final static int NUM_COLORS = 26;
@Native public final static int NUM_COLORS = 26;
/******************************************************************************************/
......
/*
* Copyright (c) 1995, 2006, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -35,7 +35,6 @@ import java.text.BreakIterator;
import javax.swing.text.AttributeSet;
import javax.accessibility.*;
import java.awt.im.InputMethodRequests;
import javax.tools.annotation.GenerateNativeHeader;
/**
* The <code>TextComponent</code> class is the superclass of
......@@ -57,8 +56,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @author Arthur van Hoff
* @since JDK1.0
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class TextComponent extends Component implements Accessible {
/**
......
/*
* Copyright (c) 1997, 1999, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -25,34 +25,32 @@
package java.awt;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* The <code>Transparency</code> interface defines the common transparency
* modes for implementing classes.
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public interface Transparency {
/**
* Represents image data that is guaranteed to be completely opaque,
* meaning that all pixels have an alpha value of 1.0.
*/
public final static int OPAQUE = 1;
@Native public final static int OPAQUE = 1;
/**
* Represents image data that is guaranteed to be either completely
* opaque, with an alpha value of 1.0, or completely transparent,
* with an alpha value of 0.0.
*/
public final static int BITMASK = 2;
@Native public final static int BITMASK = 2;
/**
* Represents image data that contains or might contain arbitrary
* alpha values between and including 0.0 and 1.0.
*/
public final static int TRANSLUCENT = 3;
@Native public final static int TRANSLUCENT = 3;
/**
* Returns the type of this <code>Transparency</code>.
......
/*
* Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -35,7 +35,7 @@
package java.awt.color;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
import sun.java2d.cmm.PCMM;
import sun.java2d.cmm.CMSManager;
......@@ -95,8 +95,6 @@ import sun.java2d.cmm.CMSManager;
* @see ICC_ColorSpace
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public abstract class ColorSpace implements java.io.Serializable {
static final long serialVersionUID = -409452704308689724L;
......@@ -115,127 +113,127 @@ public abstract class ColorSpace implements java.io.Serializable {
/**
* Any of the family of XYZ color spaces.
*/
public static final int TYPE_XYZ = 0;
@Native public static final int TYPE_XYZ = 0;
/**
* Any of the family of Lab color spaces.
*/
public static final int TYPE_Lab = 1;
@Native public static final int TYPE_Lab = 1;
/**
* Any of the family of Luv color spaces.
*/
public static final int TYPE_Luv = 2;
@Native public static final int TYPE_Luv = 2;
/**
* Any of the family of YCbCr color spaces.
*/
public static final int TYPE_YCbCr = 3;
@Native public static final int TYPE_YCbCr = 3;
/**
* Any of the family of Yxy color spaces.
*/
public static final int TYPE_Yxy = 4;
@Native public static final int TYPE_Yxy = 4;
/**
* Any of the family of RGB color spaces.
*/
public static final int TYPE_RGB = 5;
@Native public static final int TYPE_RGB = 5;
/**
* Any of the family of GRAY color spaces.
*/
public static final int TYPE_GRAY = 6;
@Native public static final int TYPE_GRAY = 6;
/**
* Any of the family of HSV color spaces.
*/
public static final int TYPE_HSV = 7;
@Native public static final int TYPE_HSV = 7;
/**
* Any of the family of HLS color spaces.
*/
public static final int TYPE_HLS = 8;
@Native public static final int TYPE_HLS = 8;
/**
* Any of the family of CMYK color spaces.
*/
public static final int TYPE_CMYK = 9;
@Native public static final int TYPE_CMYK = 9;
/**
* Any of the family of CMY color spaces.
*/
public static final int TYPE_CMY = 11;
@Native public static final int TYPE_CMY = 11;
/**
* Generic 2 component color spaces.
*/
public static final int TYPE_2CLR = 12;
@Native public static final int TYPE_2CLR = 12;
/**
* Generic 3 component color spaces.
*/
public static final int TYPE_3CLR = 13;
@Native public static final int TYPE_3CLR = 13;
/**
* Generic 4 component color spaces.
*/
public static final int TYPE_4CLR = 14;
@Native public static final int TYPE_4CLR = 14;
/**
* Generic 5 component color spaces.
*/
public static final int TYPE_5CLR = 15;
@Native public static final int TYPE_5CLR = 15;
/**
* Generic 6 component color spaces.
*/
public static final int TYPE_6CLR = 16;
@Native public static final int TYPE_6CLR = 16;
/**
* Generic 7 component color spaces.
*/
public static final int TYPE_7CLR = 17;
@Native public static final int TYPE_7CLR = 17;
/**
* Generic 8 component color spaces.
*/
public static final int TYPE_8CLR = 18;
@Native public static final int TYPE_8CLR = 18;
/**
* Generic 9 component color spaces.
*/
public static final int TYPE_9CLR = 19;
@Native public static final int TYPE_9CLR = 19;
/**
* Generic 10 component color spaces.
*/
public static final int TYPE_ACLR = 20;
@Native public static final int TYPE_ACLR = 20;
/**
* Generic 11 component color spaces.
*/
public static final int TYPE_BCLR = 21;
@Native public static final int TYPE_BCLR = 21;
/**
* Generic 12 component color spaces.
*/
public static final int TYPE_CCLR = 22;
@Native public static final int TYPE_CCLR = 22;
/**
* Generic 13 component color spaces.
*/
public static final int TYPE_DCLR = 23;
@Native public static final int TYPE_DCLR = 23;
/**
* Generic 14 component color spaces.
*/
public static final int TYPE_ECLR = 24;
@Native public static final int TYPE_ECLR = 24;
/**
* Generic 15 component color spaces.
*/
public static final int TYPE_FCLR = 25;
@Native public static final int TYPE_FCLR = 25;
/**
* The sRGB color space defined at
......@@ -243,28 +241,28 @@ public abstract class ColorSpace implements java.io.Serializable {
* http://www.w3.org/pub/WWW/Graphics/Color/sRGB.html
* </A>.
*/
public static final int CS_sRGB = 1000;
@Native public static final int CS_sRGB = 1000;
/**
* A built-in linear RGB color space. This space is based on the
* same RGB primaries as CS_sRGB, but has a linear tone reproduction curve.
*/
public static final int CS_LINEAR_RGB = 1004;
@Native public static final int CS_LINEAR_RGB = 1004;
/**
* The CIEXYZ conversion color space defined above.
*/
public static final int CS_CIEXYZ = 1001;
@Native public static final int CS_CIEXYZ = 1001;
/**
* The Photo YCC conversion color space.
*/
public static final int CS_PYCC = 1002;
@Native public static final int CS_PYCC = 1002;
/**
* The built-in linear gray scale color space.
*/
public static final int CS_GRAY = 1003;
@Native public static final int CS_GRAY = 1003;
/**
......
/*
* Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -58,7 +58,6 @@ import java.util.StringTokenizer;
import java.security.AccessController;
import java.security.PrivilegedAction;
import javax.tools.annotation.GenerateNativeHeader;
/**
* A representation of color profile data for device independent and
......@@ -90,8 +89,6 @@ import javax.tools.annotation.GenerateNativeHeader;
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class ICC_Profile implements Serializable {
private static final long serialVersionUID = -3938515861990936766L;
......
/*
* Copyright (c) 1996, 2006, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -27,7 +27,6 @@ package java.awt.datatransfer;
import java.io.*;
import javax.tools.annotation.GenerateNativeHeader;
/**
* A <code>Transferable</code> which implements the capability required
......@@ -43,8 +42,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @see java.awt.datatransfer.DataFlavor#stringFlavor
* @see java.awt.datatransfer.DataFlavor#plainTextFlavor
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class StringSelection implements Transferable, ClipboardOwner {
private static final int STRING = 0;
......
/*
* Copyright (c) 1997, 1999, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -25,15 +25,13 @@
package java.awt.dnd;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* This class contains constant values representing
* the type of action(s) to be performed by a Drag and Drop operation.
* @since 1.2
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public final class DnDConstants {
private DnDConstants() {} // define null private constructor.
......@@ -41,23 +39,23 @@ public final class DnDConstants {
/**
* An <code>int</code> representing no action.
*/
public static final int ACTION_NONE = 0x0;
@Native public static final int ACTION_NONE = 0x0;
/**
* An <code>int</code> representing a &quot;copy&quot; action.
*/
public static final int ACTION_COPY = 0x1;
@Native public static final int ACTION_COPY = 0x1;
/**
* An <code>int</code> representing a &quot;move&quot; action.
*/
public static final int ACTION_MOVE = 0x2;
@Native public static final int ACTION_MOVE = 0x2;
/**
* An <code>int</code> representing a &quot;copy&quot; or
* &quot;move&quot; action.
*/
public static final int ACTION_COPY_OR_MOVE = ACTION_COPY | ACTION_MOVE;
@Native public static final int ACTION_COPY_OR_MOVE = ACTION_COPY | ACTION_MOVE;
/**
* An <code>int</code> representing a &quot;link&quot; action.
......@@ -75,12 +73,12 @@ public final class DnDConstants {
* results for the user.
*/
public static final int ACTION_LINK = 0x40000000;
@Native public static final int ACTION_LINK = 0x40000000;
/**
* An <code>int</code> representing a &quot;reference&quot;
* action (synonym for ACTION_LINK).
*/
public static final int ACTION_REFERENCE = ACTION_LINK;
@Native public static final int ACTION_REFERENCE = ACTION_LINK;
}
/*
* Copyright (c) 1996, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -27,7 +27,7 @@ package java.awt.event;
import java.awt.AWTEvent;
import java.awt.Event;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* A semantic event which indicates that a component-defined action occurred.
......@@ -57,8 +57,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @author Carl Quinn
* @since 1.1
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class ActionEvent extends AWTEvent {
/**
......@@ -99,7 +97,7 @@ public class ActionEvent extends AWTEvent {
/**
* This event id indicates that a meaningful action occured.
*/
public static final int ACTION_PERFORMED = ACTION_FIRST; //Event.ACTION_EVENT
@Native public static final int ACTION_PERFORMED = ACTION_FIRST; //Event.ACTION_EVENT
/**
* The nonlocalized string that gives more details
......
/*
* Copyright (c) 1996, 2008, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -27,9 +27,8 @@ package java.awt.event;
import java.awt.Adjustable;
import java.awt.AWTEvent;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
import javax.tools.annotation.GenerateNativeHeader;
/**
* The adjustment event emitted by Adjustable objects like
......@@ -57,8 +56,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @author Amy Fowler
* @since 1.1
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class AdjustmentEvent extends AWTEvent {
/**
......@@ -79,27 +76,27 @@ public class AdjustmentEvent extends AWTEvent {
/**
* The unit increment adjustment type.
*/
public static final int UNIT_INCREMENT = 1;
@Native public static final int UNIT_INCREMENT = 1;
/**
* The unit decrement adjustment type.
*/
public static final int UNIT_DECREMENT = 2;
@Native public static final int UNIT_DECREMENT = 2;
/**
* The block decrement adjustment type.
*/
public static final int BLOCK_DECREMENT = 3;
@Native public static final int BLOCK_DECREMENT = 3;
/**
* The block increment adjustment type.
*/
public static final int BLOCK_INCREMENT = 4;
@Native public static final int BLOCK_INCREMENT = 4;
/**
* The absolute tracking adjustment type.
*/
public static final int TRACK = 5;
@Native public static final int TRACK = 5;
/**
* The adjustable object that fired the event.
......
/*
* Copyright (c) 1996, 2008, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -28,7 +28,7 @@ package java.awt.event;
import java.awt.AWTEvent;
import java.awt.Component;
import java.awt.Rectangle;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* A low-level event which indicates that a component moved, changed
......@@ -65,8 +65,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @author Carl Quinn
* @since 1.1
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class ComponentEvent extends AWTEvent {
/**
......@@ -82,22 +80,22 @@ public class ComponentEvent extends AWTEvent {
/**
* This event indicates that the component's position changed.
*/
public static final int COMPONENT_MOVED = COMPONENT_FIRST;
@Native public static final int COMPONENT_MOVED = COMPONENT_FIRST;
/**
* This event indicates that the component's size changed.
*/
public static final int COMPONENT_RESIZED = 1 + COMPONENT_FIRST;
@Native public static final int COMPONENT_RESIZED = 1 + COMPONENT_FIRST;
/**
* This event indicates that the component was made visible.
*/
public static final int COMPONENT_SHOWN = 2 + COMPONENT_FIRST;
@Native public static final int COMPONENT_SHOWN = 2 + COMPONENT_FIRST;
/**
* This event indicates that the component was rendered invisible.
*/
public static final int COMPONENT_HIDDEN = 3 + COMPONENT_FIRST;
@Native public static final int COMPONENT_HIDDEN = 3 + COMPONENT_FIRST;
/*
* JDK 1.1 serialVersionUID
......
/*
* Copyright (c) 1996, 2008, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -26,7 +26,6 @@
package java.awt.event;
import java.awt.Component;
import javax.tools.annotation.GenerateNativeHeader;
import sun.awt.AppContext;
import sun.awt.SunToolkit;
......@@ -64,8 +63,6 @@ import sun.awt.SunToolkit;
* @author Amy Fowler
* @since 1.1
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class FocusEvent extends ComponentEvent {
/**
......
/*
* Copyright (c) 1997, 2007, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -33,7 +33,7 @@ import java.io.IOException;
import java.io.ObjectInputStream;
import java.text.AttributedCharacterIterator;
import java.text.CharacterIterator;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* Input method events contain information about text that is being
......@@ -56,8 +56,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @author JavaSoft Asia/Pacific
* @since 1.2
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class InputMethodEvent extends AWTEvent {
/**
......@@ -68,25 +66,25 @@ public class InputMethodEvent extends AWTEvent {
/**
* Marks the first integer id for the range of input method event ids.
*/
public static final int INPUT_METHOD_FIRST = 1100;
@Native public static final int INPUT_METHOD_FIRST = 1100;
/**
* The event type indicating changed input method text. This event is
* generated by input methods while processing input.
*/
public static final int INPUT_METHOD_TEXT_CHANGED = INPUT_METHOD_FIRST;
@Native public static final int INPUT_METHOD_TEXT_CHANGED = INPUT_METHOD_FIRST;
/**
* The event type indicating a changed insertion point in input method text.
* This event is
* generated by input methods while processing input if only the caret changed.
*/
public static final int CARET_POSITION_CHANGED = INPUT_METHOD_FIRST + 1;
@Native public static final int CARET_POSITION_CHANGED = INPUT_METHOD_FIRST + 1;
/**
* Marks the last integer id for the range of input method event ids.
*/
public static final int INPUT_METHOD_LAST = INPUT_METHOD_FIRST + 1;
@Native public static final int INPUT_METHOD_LAST = INPUT_METHOD_FIRST + 1;
/**
* The time stamp that indicates when the event was created.
......
/*
* Copyright (c) 2000, 2008, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -27,7 +27,7 @@ package java.awt.event;
import java.awt.Component;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* An event which indicates that the mouse wheel was rotated in a component.
......@@ -99,8 +99,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @since 1.4
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class MouseWheelEvent extends MouseEvent {
/**
......@@ -109,7 +107,7 @@ public class MouseWheelEvent extends MouseEvent {
*
* @see #getScrollType
*/
public static final int WHEEL_UNIT_SCROLL = 0;
@Native public static final int WHEEL_UNIT_SCROLL = 0;
/**
* Constant representing scrolling by a "block" (like scrolling
......@@ -117,7 +115,7 @@ public class MouseWheelEvent extends MouseEvent {
*
* @see #getScrollType
*/
public static final int WHEEL_BLOCK_SCROLL = 1;
@Native public static final int WHEEL_BLOCK_SCROLL = 1;
/**
* Indicates what sort of scrolling should take place in response to this
......
/*
* Copyright (c) 1996, 2008, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -26,7 +26,7 @@
package java.awt.event;
import java.awt.Window;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
import sun.awt.AppContext;
import sun.awt.SunToolkit;
......@@ -56,8 +56,6 @@ import sun.awt.SunToolkit;
*
* @since JDK1.1
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class WindowEvent extends ComponentEvent {
/**
......@@ -69,7 +67,7 @@ public class WindowEvent extends ComponentEvent {
* The window opened event. This event is delivered only
* the first time a window is made visible.
*/
public static final int WINDOW_OPENED = WINDOW_FIRST; // 200
@Native public static final int WINDOW_OPENED = WINDOW_FIRST; // 200
/**
* The "window is closing" event. This event is delivered when
......@@ -78,13 +76,13 @@ public class WindowEvent extends ComponentEvent {
* while processing this event, the window close operation will be
* cancelled.
*/
public static final int WINDOW_CLOSING = 1 + WINDOW_FIRST; //Event.WINDOW_DESTROY
@Native public static final int WINDOW_CLOSING = 1 + WINDOW_FIRST; //Event.WINDOW_DESTROY
/**
* The window closed event. This event is delivered after
* the window has been closed as the result of a call to dispose.
*/
public static final int WINDOW_CLOSED = 2 + WINDOW_FIRST;
@Native public static final int WINDOW_CLOSED = 2 + WINDOW_FIRST;
/**
* The window iconified event. This event is delivered when
......@@ -93,13 +91,13 @@ public class WindowEvent extends ComponentEvent {
* the icon specified in the window's iconImage property.
* @see java.awt.Frame#setIconImage
*/
public static final int WINDOW_ICONIFIED = 3 + WINDOW_FIRST; //Event.WINDOW_ICONIFY
@Native public static final int WINDOW_ICONIFIED = 3 + WINDOW_FIRST; //Event.WINDOW_ICONIFY
/**
* The window deiconified event type. This event is delivered when
* the window has been changed from a minimized to a normal state.
*/
public static final int WINDOW_DEICONIFIED = 4 + WINDOW_FIRST; //Event.WINDOW_DEICONIFY
@Native public static final int WINDOW_DEICONIFIED = 4 + WINDOW_FIRST; //Event.WINDOW_DEICONIFY
/**
* The window-activated event type. This event is delivered when the Window
......@@ -109,7 +107,7 @@ public class WindowEvent extends ComponentEvent {
* active Window is always either the focused Window, or the first Frame or
* Dialog that is an owner of the focused Window.
*/
public static final int WINDOW_ACTIVATED = 5 + WINDOW_FIRST;
@Native public static final int WINDOW_ACTIVATED = 5 + WINDOW_FIRST;
/**
* The window-deactivated event type. This event is delivered when the
......@@ -119,21 +117,21 @@ public class WindowEvent extends ComponentEvent {
* title bar. The active Window is always either the focused Window, or the
* first Frame or Dialog that is an owner of the focused Window.
*/
public static final int WINDOW_DEACTIVATED = 6 + WINDOW_FIRST;
@Native public static final int WINDOW_DEACTIVATED = 6 + WINDOW_FIRST;
/**
* The window-gained-focus event type. This event is delivered when the
* Window becomes the focused Window, which means that the Window, or one
* of its subcomponents, will receive keyboard events.
*/
public static final int WINDOW_GAINED_FOCUS = 7 + WINDOW_FIRST;
@Native public static final int WINDOW_GAINED_FOCUS = 7 + WINDOW_FIRST;
/**
* The window-lost-focus event type. This event is delivered when a Window
* is no longer the focused Window, which means keyboard events will no
* longer be delivered to the Window or any of its subcomponents.
*/
public static final int WINDOW_LOST_FOCUS = 8 + WINDOW_FIRST;
@Native public static final int WINDOW_LOST_FOCUS = 8 + WINDOW_FIRST;
/**
* The window-state-changed event type. This event is delivered
......@@ -141,7 +139,7 @@ public class WindowEvent extends ComponentEvent {
* iconified, maximized etc.
* @since 1.4
*/
public static final int WINDOW_STATE_CHANGED = 9 + WINDOW_FIRST;
@Native public static final int WINDOW_STATE_CHANGED = 9 + WINDOW_FIRST;
/**
* The last number in the range of ids used for window events.
......
/*
* Copyright (c) 1997, 2000, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -25,7 +25,7 @@
package java.awt.geom;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* The <code>PathIterator</code> interface provides the mechanism
......@@ -59,8 +59,6 @@ import javax.tools.annotation.GenerateNativeHeader;
*
* @author Jim Graham
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public interface PathIterator {
/**
* The winding rule constant for specifying an even-odd rule
......@@ -69,7 +67,7 @@ public interface PathIterator {
* path if a ray drawn in any direction from that point to
* infinity is crossed by path segments an odd number of times.
*/
public static final int WIND_EVEN_ODD = 0;
@Native public static final int WIND_EVEN_ODD = 0;
/**
* The winding rule constant for specifying a non-zero rule
......@@ -80,20 +78,20 @@ public interface PathIterator {
* of times in the counter-clockwise direction than the
* clockwise direction.
*/
public static final int WIND_NON_ZERO = 1;
@Native public static final int WIND_NON_ZERO = 1;
/**
* The segment type constant for a point that specifies the
* starting location for a new subpath.
*/
public static final int SEG_MOVETO = 0;
@Native public static final int SEG_MOVETO = 0;
/**
* The segment type constant for a point that specifies the
* end point of a line to be drawn from the most recently
* specified point.
*/
public static final int SEG_LINETO = 1;
@Native public static final int SEG_LINETO = 1;
/**
* The segment type constant for the pair of points that specify
......@@ -115,7 +113,7 @@ public interface PathIterator {
* = n! / (m! * (n-m)!)
* </pre>
*/
public static final int SEG_QUADTO = 2;
@Native public static final int SEG_QUADTO = 2;
/**
* The segment type constant for the set of 3 points that specify
......@@ -139,14 +137,14 @@ public interface PathIterator {
* </pre>
* This form of curve is commonly known as a B&eacute;zier curve.
*/
public static final int SEG_CUBICTO = 3;
@Native public static final int SEG_CUBICTO = 3;
/**
* The segment type constant that specifies that
* the preceding subpath should be closed by appending a line segment
* back to the point corresponding to the most recent SEG_MOVETO.
*/
public static final int SEG_CLOSE = 4;
@Native public static final int SEG_CLOSE = 4;
/**
* Returns the winding rule for determining the interior of the
......
/*
* Copyright (c) 1997, 2005, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -34,7 +34,7 @@ import java.awt.GraphicsEnvironment;
import java.awt.Rectangle;
import java.awt.RenderingHints;
import java.awt.Transparency;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
import sun.awt.image.ImagingLib;
/**
......@@ -63,8 +63,6 @@ import sun.awt.image.ImagingLib;
* @see java.awt.RenderingHints#KEY_COLOR_RENDERING
* @see java.awt.RenderingHints#KEY_DITHERING
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class AffineTransformOp implements BufferedImageOp, RasterOp {
private AffineTransform xform;
RenderingHints hints;
......@@ -72,17 +70,17 @@ public class AffineTransformOp implements BufferedImageOp, RasterOp {
/**
* Nearest-neighbor interpolation type.
*/
public static final int TYPE_NEAREST_NEIGHBOR = 1;
@Native public static final int TYPE_NEAREST_NEIGHBOR = 1;
/**
* Bilinear interpolation type.
*/
public static final int TYPE_BILINEAR = 2;
@Native public static final int TYPE_BILINEAR = 2;
/**
* Bicubic interpolation type.
*/
public static final int TYPE_BICUBIC = 3;
@Native public static final int TYPE_BICUBIC = 3;
int interpolationType = TYPE_NEAREST_NEIGHBOR;
......
/*
* Copyright (c) 1997, 2000, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -30,7 +30,7 @@ import java.awt.geom.Rectangle2D;
import java.awt.Rectangle;
import java.awt.RenderingHints;
import java.awt.geom.Point2D;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
import sun.awt.image.ImagingLib;
/**
......@@ -66,8 +66,6 @@ import sun.awt.image.ImagingLib;
* @see java.awt.RenderingHints#KEY_COLOR_RENDERING
* @see java.awt.RenderingHints#KEY_DITHERING
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class ConvolveOp implements BufferedImageOp, RasterOp {
Kernel kernel;
int edgeHint;
......@@ -81,13 +79,13 @@ public class ConvolveOp implements BufferedImageOp, RasterOp {
* is the default.
*/
public static final int EDGE_ZERO_FILL = 0;
@Native public static final int EDGE_ZERO_FILL = 0;
/**
* Pixels at the edge of the source image are copied to
* the corresponding pixels in the destination without modification.
*/
public static final int EDGE_NO_OP = 1;
@Native public static final int EDGE_NO_OP = 1;
/**
* Constructs a ConvolveOp given a Kernel, an edge condition, and a
......
/*
* Copyright (c) 1997, 2008, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -41,7 +41,7 @@ import sun.java2d.StateTrackableDelegate;
import sun.awt.image.SunWritableRaster;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* This class exists to wrap one or more data arrays. Each data array in
......@@ -67,30 +67,28 @@ import javax.tools.annotation.GenerateNativeHeader;
* @see java.awt.image.Raster
* @see java.awt.image.SampleModel
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public abstract class DataBuffer {
/** Tag for unsigned byte data. */
public static final int TYPE_BYTE = 0;
@Native public static final int TYPE_BYTE = 0;
/** Tag for unsigned short data. */
public static final int TYPE_USHORT = 1;
@Native public static final int TYPE_USHORT = 1;
/** Tag for signed short data. Placeholder for future use. */
public static final int TYPE_SHORT = 2;
@Native public static final int TYPE_SHORT = 2;
/** Tag for int data. */
public static final int TYPE_INT = 3;
@Native public static final int TYPE_INT = 3;
/** Tag for float data. Placeholder for future use. */
public static final int TYPE_FLOAT = 4;
@Native public static final int TYPE_FLOAT = 4;
/** Tag for double data. Placeholder for future use. */
public static final int TYPE_DOUBLE = 5;
@Native public static final int TYPE_DOUBLE = 5;
/** Tag for undefined data. */
public static final int TYPE_UNDEFINED = 32;
@Native public static final int TYPE_UNDEFINED = 32;
/** The data type of this DataBuffer. */
protected int dataType;
......
/*
* Copyright (c) 1995, 2006, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -27,7 +27,6 @@ package java.awt.image;
import java.util.Hashtable;
import javax.tools.annotation.GenerateNativeHeader;
/**
* The interface for objects expressing interest in image data through
......@@ -39,8 +38,6 @@ import javax.tools.annotation.GenerateNativeHeader;
*
* @author Jim Graham
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public interface ImageConsumer {
/**
* The dimensions of the source image are reported using the
......
/*
* Copyright (c) 1995, 1999, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -27,7 +27,6 @@ package java.awt.image;
import java.awt.Image;
import javax.tools.annotation.GenerateNativeHeader;
/**
* An asynchronous update interface for receiving notifications about
......@@ -35,8 +34,6 @@ import javax.tools.annotation.GenerateNativeHeader;
*
* @author Jim Graham
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public interface ImageObserver {
/**
* This method is called when information about an image which was
......
/*
* Copyright (c) 1995, 2008, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1995, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -32,7 +32,6 @@ import java.awt.image.ImageObserver;
import java.awt.image.ColorModel;
import java.awt.image.VolatileImage;
import java.awt.GraphicsConfiguration;
import javax.tools.annotation.GenerateNativeHeader;
import sun.awt.CausedFocusEvent;
import sun.java2d.pipe.Region;
......@@ -50,8 +49,6 @@ import sun.java2d.pipe.Region;
* nor invoke any of the peer methods directly on the peer
* instances.
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public interface ComponentPeer {
/**
......
/*
* Copyright (c) 1997, 2000, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -29,14 +29,12 @@ import java.awt.geom.AffineTransform;
import java.awt.geom.Point2D;
import java.awt.geom.Rectangle2D;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* The <code>PageFormat</code> class describes the size and
* orientation of a page to be printed.
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class PageFormat implements Cloneable
{
......@@ -48,21 +46,21 @@ public class PageFormat implements Cloneable
* Note that this is not the Macintosh landscape but
* is the Window's and PostScript landscape.
*/
public static final int LANDSCAPE = 0;
@Native public static final int LANDSCAPE = 0;
/**
* The origin is at the top left of the paper with
* x running to the right and y running down the
* paper.
*/
public static final int PORTRAIT = 1;
@Native public static final int PORTRAIT = 1;
/**
* The origin is at the top right of the paper with x
* running top to bottom and y running right to left.
* Note that this is the Macintosh landscape.
*/
public static final int REVERSE_LANDSCAPE = 2;
@Native public static final int REVERSE_LANDSCAPE = 2;
/* Instance Variables */
......
/*
* Copyright (c) 1998, 2000, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -25,7 +25,7 @@
package java.awt.print;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* The <code>Pageable</code> implementation represents a set of
......@@ -35,8 +35,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @see java.awt.print.PageFormat
* @see java.awt.print.Printable
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public interface Pageable {
/**
......@@ -45,7 +43,7 @@ public interface Pageable {
* method if a <code>Pageable</code> implementation does not know
* the number of pages in its set.
*/
int UNKNOWN_NUMBER_OF_PAGES = -1;
@Native int UNKNOWN_NUMBER_OF_PAGES = -1;
/**
* Returns the number of pages in the set.
......
/*
* Copyright (c) 1997, 2005, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -27,7 +27,6 @@ package java.awt.print;
import java.awt.Graphics;
import javax.tools.annotation.GenerateNativeHeader;
/**
* The <code>Printable</code> interface is implemented
......@@ -100,8 +99,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @see java.awt.print.PageFormat
* @see java.awt.print.PrinterJob
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public interface Printable {
/**
......
......@@ -236,7 +236,7 @@ abstract class AbstractStringBuilder implements Appendable, CharSequence {
if ((index < 0) || (index >= count)) {
throw new StringIndexOutOfBoundsException(index);
}
return Character.codePointAt(value, index);
return Character.codePointAtImpl(value, index, count);
}
/**
......@@ -265,7 +265,7 @@ abstract class AbstractStringBuilder implements Appendable, CharSequence {
if ((i < 0) || (i >= count)) {
throw new StringIndexOutOfBoundsException(index);
}
return Character.codePointBefore(value, index);
return Character.codePointBeforeImpl(value, index, 0);
}
/**
......@@ -415,7 +415,8 @@ abstract class AbstractStringBuilder implements Appendable, CharSequence {
* @return a reference to this object.
*/
public AbstractStringBuilder append(String str) {
if (str == null) str = "null";
if (str == null)
return appendNull();
int len = str.length();
ensureCapacityInternal(count + len);
str.getChars(0, len, value, count);
......@@ -426,7 +427,7 @@ abstract class AbstractStringBuilder implements Appendable, CharSequence {
// Documentation in subclasses because of synchro difference
public AbstractStringBuilder append(StringBuffer sb) {
if (sb == null)
return append("null");
return appendNull();
int len = sb.length();
ensureCapacityInternal(count + len);
sb.getChars(0, len, value, count);
......@@ -439,7 +440,7 @@ abstract class AbstractStringBuilder implements Appendable, CharSequence {
*/
AbstractStringBuilder append(AbstractStringBuilder asb) {
if (asb == null)
return append("null");
return appendNull();
int len = asb.length();
ensureCapacityInternal(count + len);
asb.getChars(0, len, value, count);
......@@ -451,7 +452,7 @@ abstract class AbstractStringBuilder implements Appendable, CharSequence {
@Override
public AbstractStringBuilder append(CharSequence s) {
if (s == null)
s = "null";
return appendNull();
if (s instanceof String)
return this.append((String)s);
if (s instanceof AbstractStringBuilder)
......@@ -460,6 +461,18 @@ abstract class AbstractStringBuilder implements Appendable, CharSequence {
return this.append(s, 0, s.length());
}
private AbstractStringBuilder appendNull() {
int c = count;
ensureCapacityInternal(c + 4);
final char[] value = this.value;
value[c++] = 'n';
value[c++] = 'u';
value[c++] = 'l';
value[c++] = 'l';
count = c;
return this;
}
/**
* Appends a subsequence of the specified {@code CharSequence} to this
* sequence.
......@@ -1370,32 +1383,37 @@ abstract class AbstractStringBuilder implements Appendable, CharSequence {
* @return a reference to this object.
*/
public AbstractStringBuilder reverse() {
boolean hasSurrogate = false;
boolean hasSurrogates = false;
int n = count - 1;
for (int j = (n-1) >> 1; j >= 0; --j) {
char temp = value[j];
char temp2 = value[n - j];
if (!hasSurrogate) {
hasSurrogate = (temp >= Character.MIN_SURROGATE && temp <= Character.MAX_SURROGATE)
|| (temp2 >= Character.MIN_SURROGATE && temp2 <= Character.MAX_SURROGATE);
for (int j = (n-1) >> 1; j >= 0; j--) {
int k = n - j;
char cj = value[j];
char ck = value[k];
value[j] = ck;
value[k] = cj;
if (Character.isSurrogate(cj) ||
Character.isSurrogate(ck)) {
hasSurrogates = true;
}
value[j] = temp2;
value[n - j] = temp;
}
if (hasSurrogate) {
// Reverse back all valid surrogate pairs
for (int i = 0; i < count - 1; i++) {
char c2 = value[i];
if (Character.isLowSurrogate(c2)) {
char c1 = value[i + 1];
if (Character.isHighSurrogate(c1)) {
value[i++] = c1;
value[i] = c2;
}
if (hasSurrogates) {
reverseAllValidSurrogatePairs();
}
return this;
}
/** Outlined helper method for reverse() */
private void reverseAllValidSurrogatePairs() {
for (int i = 0; i < count - 1; i++) {
char c2 = value[i];
if (Character.isLowSurrogate(c2)) {
char c1 = value[i + 1];
if (Character.isHighSurrogate(c1)) {
value[i++] = c1;
value[i] = c2;
}
}
}
return this;
}
/**
......
......@@ -4862,13 +4862,11 @@ class Character implements java.io.Serializable, Comparable<Character> {
* @since 1.5
*/
public static int codePointAt(CharSequence seq, int index) {
char c1 = seq.charAt(index++);
if (isHighSurrogate(c1)) {
if (index < seq.length()) {
char c2 = seq.charAt(index);
if (isLowSurrogate(c2)) {
return toCodePoint(c1, c2);
}
char c1 = seq.charAt(index);
if (isHighSurrogate(c1) && ++index < seq.length()) {
char c2 = seq.charAt(index);
if (isLowSurrogate(c2)) {
return toCodePoint(c1, c2);
}
}
return c1;
......@@ -4931,15 +4929,13 @@ class Character implements java.io.Serializable, Comparable<Character> {
return codePointAtImpl(a, index, limit);
}
// throws ArrayIndexOutofBoundsException if index out of bounds
// throws ArrayIndexOutOfBoundsException if index out of bounds
static int codePointAtImpl(char[] a, int index, int limit) {
char c1 = a[index++];
if (isHighSurrogate(c1)) {
if (index < limit) {
char c2 = a[index];
if (isLowSurrogate(c2)) {
return toCodePoint(c1, c2);
}
char c1 = a[index];
if (isHighSurrogate(c1) && ++index < limit) {
char c2 = a[index];
if (isLowSurrogate(c2)) {
return toCodePoint(c1, c2);
}
}
return c1;
......@@ -4968,12 +4964,10 @@ class Character implements java.io.Serializable, Comparable<Character> {
*/
public static int codePointBefore(CharSequence seq, int index) {
char c2 = seq.charAt(--index);
if (isLowSurrogate(c2)) {
if (index > 0) {
char c1 = seq.charAt(--index);
if (isHighSurrogate(c1)) {
return toCodePoint(c1, c2);
}
if (isLowSurrogate(c2) && index > 0) {
char c1 = seq.charAt(--index);
if (isHighSurrogate(c1)) {
return toCodePoint(c1, c2);
}
}
return c2;
......@@ -5038,15 +5032,13 @@ class Character implements java.io.Serializable, Comparable<Character> {
return codePointBeforeImpl(a, index, start);
}
// throws ArrayIndexOutofBoundsException if index-1 out of bounds
// throws ArrayIndexOutOfBoundsException if index-1 out of bounds
static int codePointBeforeImpl(char[] a, int index, int start) {
char c2 = a[--index];
if (isLowSurrogate(c2)) {
if (index > start) {
char c1 = a[--index];
if (isHighSurrogate(c1)) {
return toCodePoint(c1, c2);
}
if (isLowSurrogate(c2) && index > start) {
char c1 = a[--index];
if (isHighSurrogate(c1)) {
return toCodePoint(c1, c2);
}
}
return c2;
......
......@@ -113,8 +113,7 @@ import sun.reflect.misc.ReflectUtil;
* @see java.lang.ClassLoader#defineClass(byte[], int, int)
* @since JDK1.0
*/
public final
class Class<T> implements java.io.Serializable,
public final class Class<T> implements java.io.Serializable,
java.lang.reflect.GenericDeclaration,
java.lang.reflect.Type,
java.lang.reflect.AnnotatedElement {
......@@ -150,6 +149,75 @@ public final
+ getName();
}
/**
* Returns a string describing this {@code Class}, including
* information about modifiers and type parameters.
*
* The string is formatted as a list of type modifiers, if any,
* followed by the kind of type (empty string for primitive types
* and {@code class}, {@code enum}, {@code interface}, or {@code
* &#64;interface}, as appropriate), followed by the type's name,
* followed by an angle-bracketed comma-separated list of the
* type's type parameters, if any.
*
* A space is used to separate modifiers from one another and to
* separate any modifiers from the kind of type. The modifiers
* occur in canonical order. If there are no type parameters, the
* type parameter list is elided.
*
* <p>Note that since information about the runtime representation
* of a type is being generated, modifiers not present on the
* originating source code or illegal on the originating source
* code may be present.
*
* @return a string describing this {@code Class}, including
* information about modifiers and type parameters
*
* @since 1.8
*/
public String toGenericString() {
if (isPrimitive()) {
return toString();
} else {
StringBuilder sb = new StringBuilder();
// Class modifiers are a superset of interface modifiers
int modifiers = getModifiers() & Modifier.classModifiers();
if (modifiers != 0) {
sb.append(Modifier.toString(modifiers));
sb.append(' ');
}
if (isAnnotation()) {
sb.append('@');
}
if (isInterface()) { // Note: all annotation types are interfaces
sb.append("interface");
} else {
if (isEnum())
sb.append("enum");
else
sb.append("class");
}
sb.append(' ');
sb.append(getName());
TypeVariable<?>[] typeparms = getTypeParameters();
if (typeparms.length > 0) {
boolean first = true;
sb.append('<');
for(TypeVariable<?> typeparm: typeparms) {
if (!first)
sb.append(',');
sb.append(typeparm.getTypeName());
first = false;
}
sb.append('>');
}
return sb.toString();
}
}
/**
* Returns the {@code Class} object associated with the class or
......@@ -1163,6 +1231,32 @@ public final
return simpleName.substring(index);
}
/**
* Return an informative string for the name of this type.
*
* @return an informative string for the name of this type
* @since 1.8
*/
public String getTypeName() {
if (isArray()) {
try {
Class<?> cl = this;
int dimensions = 0;
while (cl.isArray()) {
dimensions++;
cl = cl.getComponentType();
}
StringBuilder sb = new StringBuilder();
sb.append(cl.getName());
for (int i = 0; i < dimensions; i++) {
sb.append("[]");
}
return sb.toString();
} catch (Throwable e) { /*FALLTHRU*/ }
}
return getName();
}
/**
* Character.isDigit answers {@code true} to some non-ascii
* digits. This one does not.
......
......@@ -284,16 +284,20 @@ public final class Constructor<T> extends Executable {
* modifiers {@code public}, {@code protected} or
* {@code private}. Only one of these may appear, or none if the
* constructor has default (package) access.
*
* @return a string describing this {@code Constructor}
* @jls 8.8.3. Constructor Modifiers
*/
public String toString() {
return sharedToString(Modifier.constructorModifiers(),
false,
parameterTypes,
exceptionTypes);
}
@Override
void specificToStringHeader(StringBuilder sb) {
sb.append(Field.getTypeName(getDeclaringClass()));
sb.append(getDeclaringClass().getTypeName());
}
/**
......@@ -328,10 +332,11 @@ public final class Constructor<T> extends Executable {
* include type parameters
*
* @since 1.5
* @jls 8.8.3. Constructor Modifiers
*/
@Override
public String toGenericString() {
return sharedToGenericString(Modifier.constructorModifiers());
return sharedToGenericString(Modifier.constructorModifiers(), false);
}
@Override
......
......@@ -82,27 +82,38 @@ public abstract class Executable extends AccessibleObject
void separateWithCommas(Class<?>[] types, StringBuilder sb) {
for (int j = 0; j < types.length; j++) {
sb.append(Field.getTypeName(types[j]));
sb.append(types[j].getTypeName());
if (j < (types.length - 1))
sb.append(",");
}
}
void printModifiersIfNonzero(StringBuilder sb, int mask) {
void printModifiersIfNonzero(StringBuilder sb, int mask, boolean isDefault) {
int mod = getModifiers() & mask;
if (mod != 0) {
if (mod != 0 && !isDefault) {
sb.append(Modifier.toString(mod)).append(' ');
} else {
int access_mod = mod & Modifier.ACCESS_MODIFIERS;
if (access_mod != 0)
sb.append(Modifier.toString(access_mod)).append(' ');
if (isDefault)
sb.append("default ");
mod = (mod & ~Modifier.ACCESS_MODIFIERS);
if (mod != 0)
sb.append(Modifier.toString(mod)).append(' ');
}
}
String sharedToString(int modifierMask,
boolean isDefault,
Class<?>[] parameterTypes,
Class<?>[] exceptionTypes) {
try {
StringBuilder sb = new StringBuilder();
printModifiersIfNonzero(sb, modifierMask);
printModifiersIfNonzero(sb, modifierMask, isDefault);
specificToStringHeader(sb);
sb.append('(');
......@@ -124,11 +135,11 @@ public abstract class Executable extends AccessibleObject
*/
abstract void specificToStringHeader(StringBuilder sb);
String sharedToGenericString(int modifierMask) {
String sharedToGenericString(int modifierMask, boolean isDefault) {
try {
StringBuilder sb = new StringBuilder();
printModifiersIfNonzero(sb, modifierMask);
printModifiersIfNonzero(sb, modifierMask, isDefault);
TypeVariable<?>[] typeparms = getTypeParameters();
if (typeparms.length > 0) {
......@@ -150,9 +161,7 @@ public abstract class Executable extends AccessibleObject
sb.append('(');
Type[] params = getGenericParameterTypes();
for (int j = 0; j < params.length; j++) {
String param = (params[j] instanceof Class)?
Field.getTypeName((Class)params[j]):
(params[j].toString());
String param = params[j].getTypeName();
if (isVarArgs() && (j == params.length - 1)) // replace T[] with T...
param = param.replaceFirst("\\[\\]$", "...");
sb.append(param);
......
......@@ -288,12 +288,15 @@ class Field extends AccessibleObject implements Member {
* {@code protected} or {@code private} first, and then other
* modifiers in the following order: {@code static}, {@code final},
* {@code transient}, {@code volatile}.
*
* @return a string describing this {@code Field}
* @jls 8.3.1 Field Modifiers
*/
public String toString() {
int mod = getModifiers();
return (((mod == 0) ? "" : (Modifier.toString(mod) + " "))
+ getTypeName(getType()) + " "
+ getTypeName(getDeclaringClass()) + "."
+ getType().getTypeName() + " "
+ getDeclaringClass().getTypeName() + "."
+ getName());
}
......@@ -315,14 +318,14 @@ class Field extends AccessibleObject implements Member {
* its generic type
*
* @since 1.5
* @jls 8.3.1 Field Modifiers
*/
public String toGenericString() {
int mod = getModifiers();
Type fieldType = getGenericType();
return (((mod == 0) ? "" : (Modifier.toString(mod) + " "))
+ ((fieldType instanceof Class) ?
getTypeName((Class)fieldType): fieldType.toString())+ " "
+ getTypeName(getDeclaringClass()) + "."
+ fieldType.getTypeName() + " "
+ getDeclaringClass().getTypeName() + "."
+ getName());
}
......@@ -992,29 +995,6 @@ class Field extends AccessibleObject implements Member {
}
}
/*
* Utility routine to paper over array type names
*/
static String getTypeName(Class<?> type) {
if (type.isArray()) {
try {
Class<?> cl = type;
int dimensions = 0;
while (cl.isArray()) {
dimensions++;
cl = cl.getComponentType();
}
StringBuffer sb = new StringBuffer();
sb.append(cl.getName());
for (int i = 0; i < dimensions; i++) {
sb.append("[]");
}
return sb.toString();
} catch (Throwable e) { /*FALLTHRU*/ }
}
return type.getName();
}
/**
* @throws NullPointerException {@inheritDoc}
* @since 1.5
......
......@@ -342,19 +342,24 @@ public final class Method extends Executable {
* specified by "The Java Language Specification". This is
* {@code public}, {@code protected} or {@code private} first,
* and then other modifiers in the following order:
* {@code abstract}, {@code static}, {@code final},
* {@code abstract}, {@code default}, {@code static}, {@code final},
* {@code synchronized}, {@code native}, {@code strictfp}.
*
* @return a string describing this {@code Method}
*
* @jls 8.4.3 Method Modifiers
*/
public String toString() {
return sharedToString(Modifier.methodModifiers(),
isDefault(),
parameterTypes,
exceptionTypes);
}
@Override
void specificToStringHeader(StringBuilder sb) {
sb.append(Field.getTypeName(getReturnType())).append(' ');
sb.append(Field.getTypeName(getDeclaringClass())).append('.');
sb.append(getReturnType().getTypeName()).append(' ');
sb.append(getDeclaringClass().getTypeName()).append('.');
sb.append(getName());
}
......@@ -381,34 +386,32 @@ public final class Method extends Executable {
* class name. If the method is declared to throw exceptions, the
* parameter list is followed by a space, followed by the word
* throws followed by a comma-separated list of the generic thrown
* exception types. If there are no type parameters, the type
* parameter list is elided.
* exception types.
*
* <p>The access modifiers are placed in canonical order as
* specified by "The Java Language Specification". This is
* {@code public}, {@code protected} or {@code private} first,
* and then other modifiers in the following order:
* {@code abstract}, {@code static}, {@code final},
* {@code abstract}, {@code default}, {@code static}, {@code final},
* {@code synchronized}, {@code native}, {@code strictfp}.
*
* @return a string describing this {@code Method},
* include type parameters
*
* @since 1.5
*
* @jls 8.4.3 Method Modifiers
*/
@Override
public String toGenericString() {
return sharedToGenericString(Modifier.methodModifiers());
return sharedToGenericString(Modifier.methodModifiers(), isDefault());
}
@Override
void specificToGenericStringHeader(StringBuilder sb) {
Type genRetType = getGenericReturnType();
sb.append( ((genRetType instanceof Class<?>)?
Field.getTypeName((Class<?>)genRetType):genRetType.toString()))
.append(' ');
sb.append(Field.getTypeName(getDeclaringClass())).append('.');
sb.append(genRetType.getTypeName()).append(' ');
sb.append(getDeclaringClass().getTypeName()).append('.');
sb.append(getName());
}
......
......@@ -43,8 +43,7 @@ import sun.reflect.ReflectionFactory;
* @author Nakul Saraiya
* @author Kenneth Russell
*/
public
class Modifier {
public class Modifier {
/*
* Bootstrapping protocol between java.lang and java.lang.reflect
......@@ -233,7 +232,7 @@ class Modifier {
* represented by {@code mod}
*/
public static String toString(int mod) {
StringBuffer sb = new StringBuffer();
StringBuilder sb = new StringBuilder();
int len;
if ((mod & PUBLIC) != 0) sb.append("public ");
......@@ -389,6 +388,12 @@ class Modifier {
Modifier.STATIC | Modifier.FINAL | Modifier.TRANSIENT |
Modifier.VOLATILE;
/**
*
*/
static final int ACCESS_MODIFIERS =
Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE;
/**
* Return an {@code int} value OR-ing together the source language
* modifiers that can be applied to a class.
......
......@@ -110,21 +110,19 @@ public final class Parameter implements AnnotatedElement {
public String toString() {
final StringBuilder sb = new StringBuilder();
final Type type = getParameterizedType();
final String typename = (type instanceof Class)?
Field.getTypeName((Class)type):
(type.toString());
final String typename = type.getTypeName();
sb.append(Modifier.toString(getModifiers()));
if(0 != modifiers)
sb.append(" ");
sb.append(' ');
if(isVarArgs())
sb.append(typename.replaceFirst("\\[\\]$", "..."));
else
sb.append(typename);
sb.append(" ");
sb.append(' ');
sb.append(getName());
return sb.toString();
......
......@@ -32,6 +32,17 @@ package java.lang.reflect;
*
* @since 1.5
*/
public interface Type {
/**
* Returns a string describing this type, including information
* about any type parameters.
*
* @implSpec The default implementation calls {@code toString}.
*
* @return a string describing this type
* @since 1.8
*/
default String getTypeName() {
return toString();
}
}
......@@ -620,7 +620,10 @@ public class Base64 {
* required. So if the final unit of the encoded byte data only has
* two or three Base64 characters (without the corresponding padding
* character(s) padded), they are decoded as if followed by padding
* character(s).
* character(s). If there is padding character present in the
* final unit, the correct number of padding character(s) must be
* present, otherwise {@code IllegalArgumentException} is thrown
* during decoding.
*
* <p> Instances of {@link Decoder} class are safe for use by
* multiple concurrent threads.
......@@ -1034,23 +1037,26 @@ public class Base64 {
throw new IllegalArgumentException(
"Input byte[] should at least have 2 bytes for base64 bytes");
}
if (src[sl - 1] == '=') {
paddings++;
if (src[sl - 2] == '=')
paddings++;
}
if (isMIME) {
// scan all bytes to fill out all non-alphabet. a performance
// trade-off of pre-scan or Arrays.copyOf
int n = 0;
while (sp < sl) {
int b = src[sp++] & 0xff;
if (b == '=')
if (b == '=') {
len -= (sl - sp + 1);
break;
}
if ((b = base64[b]) == -1)
n++;
}
len -= n;
} else {
if (src[sl - 1] == '=') {
paddings++;
if (src[sl - 2] == '=')
paddings++;
}
}
if (paddings == 0 && (len & 0x3) != 0)
paddings = 4 - (len & 0x3);
......
/*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/*
* This file is available under and governed by the GNU General Public
* License version 2 only, as published by the Free Software Foundation.
* However, the following notice accompanied the original version of this
* file:
*
* Written by Doug Lea with assistance from members of JCP JSR-166
* Expert Group and released to the public domain, as explained at
* http://creativecommons.org/publicdomain/zero/1.0/
*/
package java.util.concurrent;
/**
* Exception thrown when an error or other exception is encountered
* in the course of completing a result or task.
*
* @since 1.8
* @author Doug Lea
*/
public class CompletionException extends RuntimeException {
private static final long serialVersionUID = 7830266012832686185L;
/**
* Constructs a {@code CompletionException} with no detail message.
* The cause is not initialized, and may subsequently be
* initialized by a call to {@link #initCause(Throwable) initCause}.
*/
protected CompletionException() { }
/**
* Constructs a {@code CompletionException} with the specified detail
* message. The cause is not initialized, and may subsequently be
* initialized by a call to {@link #initCause(Throwable) initCause}.
*
* @param message the detail message
*/
protected CompletionException(String message) {
super(message);
}
/**
* Constructs a {@code CompletionException} with the specified detail
* message and cause.
*
* @param message the detail message
* @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method)
*/
public CompletionException(String message, Throwable cause) {
super(message, cause);
}
/**
* Constructs a {@code CompletionException} with the specified cause.
* The detail message is set to {@code (cause == null ? null :
* cause.toString())} (which typically contains the class and
* detail message of {@code cause}).
*
* @param cause the cause (which is saved for later retrieval by the
* {@link #getCause()} method)
*/
public CompletionException(Throwable cause) {
super(cause);
}
}
......@@ -105,6 +105,11 @@ class LoggingProxyImpl implements LoggingProxy {
return ((Level) level).getLevelName();
}
@Override
public int getLevelValue(Object level) {
return ((Level) level).intValue();
}
@Override
public String getProperty(String key) {
return LogManager.getLogManager().getProperty(key);
......
......@@ -43,6 +43,20 @@ import static java.util.zip.ZipConstants64.*;
public
class ZipOutputStream extends DeflaterOutputStream implements ZipConstants {
/**
* Whether to use ZIP64 for zip files with more than 64k entries.
* Until ZIP64 support in zip implementations is ubiquitous, this
* system property allows the creation of zip files which can be
* read by legacy zip implementations which tolerate "incorrect"
* total entry count fields, such as the ones in jdk6, and even
* some in jdk7.
*/
private static final boolean inhibitZip64 =
Boolean.parseBoolean(
java.security.AccessController.doPrivileged(
new sun.security.action.GetPropertyAction(
"jdk.util.zip.inhibitZip64", "false")));
private static class XEntry {
public final ZipEntry entry;
public final long offset;
......@@ -534,8 +548,10 @@ class ZipOutputStream extends DeflaterOutputStream implements ZipConstants {
}
int count = xentries.size();
if (count >= ZIP64_MAGICCOUNT) {
count = ZIP64_MAGICCOUNT;
hasZip64 = true;
hasZip64 |= !inhibitZip64;
if (hasZip64) {
count = ZIP64_MAGICCOUNT;
}
}
if (hasZip64) {
long off64 = written;
......
......@@ -508,7 +508,7 @@ public class SerialClob implements Clob, Serializable, Cloneable {
*
* @param length the length, in bytes, to which the <code>CLOB</code>
* value should be truncated
* @throws SerialLException if there is an error accessing the
* @throws SerialException if there is an error accessing the
* <code>CLOB</code> value;
* if the {@code free} method had been previously called on this object
*/
......
/*
* Copyright (c) 1996, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -34,7 +34,6 @@ import java.beans.PropertyChangeEvent;
import java.util.Set;
import java.awt.AWTKeyStroke;
import java.applet.Applet;
import javax.tools.annotation.GenerateNativeHeader;
import sun.applet.AppletPanel;
/**
......@@ -54,8 +53,6 @@ import sun.applet.AppletPanel;
*
* @author Thomas Ball
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public abstract class EmbeddedFrame extends Frame
implements KeyEventDispatcher, PropertyChangeListener {
......
/*
* Copyright (c) 1998, 2005, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -26,7 +26,7 @@
package sun.awt;
import java.awt.RenderingHints;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* This class contains rendering hints that can be used by the
......@@ -34,8 +34,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* {@link java.awt.image.BufferedImageOp} and
* {@link java.awt.image.Raster}.
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class SunHints {
/**
* Defines the type of all keys used to control various
......@@ -180,86 +178,86 @@ public class SunHints {
/**
* Rendering hint key and values
*/
public static final int INTKEY_RENDERING = 0;
public static final int INTVAL_RENDER_DEFAULT = 0;
public static final int INTVAL_RENDER_SPEED = 1;
public static final int INTVAL_RENDER_QUALITY = 2;
@Native public static final int INTKEY_RENDERING = 0;
@Native public static final int INTVAL_RENDER_DEFAULT = 0;
@Native public static final int INTVAL_RENDER_SPEED = 1;
@Native public static final int INTVAL_RENDER_QUALITY = 2;
/**
* Antialiasing hint key and values
*/
public static final int INTKEY_ANTIALIASING = 1;
public static final int INTVAL_ANTIALIAS_DEFAULT = 0;
public static final int INTVAL_ANTIALIAS_OFF = 1;
public static final int INTVAL_ANTIALIAS_ON = 2;
@Native public static final int INTKEY_ANTIALIASING = 1;
@Native public static final int INTVAL_ANTIALIAS_DEFAULT = 0;
@Native public static final int INTVAL_ANTIALIAS_OFF = 1;
@Native public static final int INTVAL_ANTIALIAS_ON = 2;
/**
* Text antialiasing hint key and values
*/
public static final int INTKEY_TEXT_ANTIALIASING = 2;
public static final int INTVAL_TEXT_ANTIALIAS_DEFAULT = 0;
public static final int INTVAL_TEXT_ANTIALIAS_OFF = 1;
public static final int INTVAL_TEXT_ANTIALIAS_ON = 2;
public static final int INTVAL_TEXT_ANTIALIAS_GASP = 3;
public static final int INTVAL_TEXT_ANTIALIAS_LCD_HRGB = 4;
public static final int INTVAL_TEXT_ANTIALIAS_LCD_HBGR = 5;
public static final int INTVAL_TEXT_ANTIALIAS_LCD_VRGB = 6;
public static final int INTVAL_TEXT_ANTIALIAS_LCD_VBGR = 7;
@Native public static final int INTKEY_TEXT_ANTIALIASING = 2;
@Native public static final int INTVAL_TEXT_ANTIALIAS_DEFAULT = 0;
@Native public static final int INTVAL_TEXT_ANTIALIAS_OFF = 1;
@Native public static final int INTVAL_TEXT_ANTIALIAS_ON = 2;
@Native public static final int INTVAL_TEXT_ANTIALIAS_GASP = 3;
@Native public static final int INTVAL_TEXT_ANTIALIAS_LCD_HRGB = 4;
@Native public static final int INTVAL_TEXT_ANTIALIAS_LCD_HBGR = 5;
@Native public static final int INTVAL_TEXT_ANTIALIAS_LCD_VRGB = 6;
@Native public static final int INTVAL_TEXT_ANTIALIAS_LCD_VBGR = 7;
/**
* Font fractional metrics hint key and values
*/
public static final int INTKEY_FRACTIONALMETRICS = 3;
public static final int INTVAL_FRACTIONALMETRICS_DEFAULT = 0;
public static final int INTVAL_FRACTIONALMETRICS_OFF = 1;
public static final int INTVAL_FRACTIONALMETRICS_ON = 2;
@Native public static final int INTKEY_FRACTIONALMETRICS = 3;
@Native public static final int INTVAL_FRACTIONALMETRICS_DEFAULT = 0;
@Native public static final int INTVAL_FRACTIONALMETRICS_OFF = 1;
@Native public static final int INTVAL_FRACTIONALMETRICS_ON = 2;
/**
* Dithering hint key and values
*/
public static final int INTKEY_DITHERING = 4;
public static final int INTVAL_DITHER_DEFAULT = 0;
public static final int INTVAL_DITHER_DISABLE = 1;
public static final int INTVAL_DITHER_ENABLE = 2;
@Native public static final int INTKEY_DITHERING = 4;
@Native public static final int INTVAL_DITHER_DEFAULT = 0;
@Native public static final int INTVAL_DITHER_DISABLE = 1;
@Native public static final int INTVAL_DITHER_ENABLE = 2;
/**
* Interpolation hint key and values
*/
public static final int INTKEY_INTERPOLATION = 5;
public static final int INTVAL_INTERPOLATION_NEAREST_NEIGHBOR = 0;
public static final int INTVAL_INTERPOLATION_BILINEAR = 1;
public static final int INTVAL_INTERPOLATION_BICUBIC = 2;
@Native public static final int INTKEY_INTERPOLATION = 5;
@Native public static final int INTVAL_INTERPOLATION_NEAREST_NEIGHBOR = 0;
@Native public static final int INTVAL_INTERPOLATION_BILINEAR = 1;
@Native public static final int INTVAL_INTERPOLATION_BICUBIC = 2;
/**
* Alpha interpolation hint key and values
*/
public static final int INTKEY_ALPHA_INTERPOLATION = 6;
public static final int INTVAL_ALPHA_INTERPOLATION_DEFAULT = 0;
public static final int INTVAL_ALPHA_INTERPOLATION_SPEED = 1;
public static final int INTVAL_ALPHA_INTERPOLATION_QUALITY = 2;
@Native public static final int INTKEY_ALPHA_INTERPOLATION = 6;
@Native public static final int INTVAL_ALPHA_INTERPOLATION_DEFAULT = 0;
@Native public static final int INTVAL_ALPHA_INTERPOLATION_SPEED = 1;
@Native public static final int INTVAL_ALPHA_INTERPOLATION_QUALITY = 2;
/**
* Color rendering hint key and values
*/
public static final int INTKEY_COLOR_RENDERING = 7;
public static final int INTVAL_COLOR_RENDER_DEFAULT = 0;
public static final int INTVAL_COLOR_RENDER_SPEED = 1;
public static final int INTVAL_COLOR_RENDER_QUALITY = 2;
@Native public static final int INTKEY_COLOR_RENDERING = 7;
@Native public static final int INTVAL_COLOR_RENDER_DEFAULT = 0;
@Native public static final int INTVAL_COLOR_RENDER_SPEED = 1;
@Native public static final int INTVAL_COLOR_RENDER_QUALITY = 2;
/**
* Stroke normalization control hint key and values
*/
public static final int INTKEY_STROKE_CONTROL = 8;
public static final int INTVAL_STROKE_DEFAULT = 0;
public static final int INTVAL_STROKE_NORMALIZE = 1;
public static final int INTVAL_STROKE_PURE = 2;
@Native public static final int INTKEY_STROKE_CONTROL = 8;
@Native public static final int INTVAL_STROKE_DEFAULT = 0;
@Native public static final int INTVAL_STROKE_NORMALIZE = 1;
@Native public static final int INTVAL_STROKE_PURE = 2;
/**
* LCD text contrast control hint key.
* Value is "100" to make discontiguous with the others which
* are all enumerative and are of a different class.
*/
public static final int INTKEY_AATEXT_LCD_CONTRAST = 100;
@Native public static final int INTKEY_AATEXT_LCD_CONTRAST = 100;
/**
* Rendering hint key and value objects
......
/*
* Copyright (c) 2000, 2009, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -54,7 +54,6 @@ import sun.awt.SunToolkit;
import sun.awt.datatransfer.DataTransferer;
import java.awt.datatransfer.DataFlavor;
import javax.tools.annotation.GenerateNativeHeader;
/**
* <p>
......@@ -64,8 +63,6 @@ import javax.tools.annotation.GenerateNativeHeader;
* @since JDK1.3.1
*
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public abstract class SunDragSourceContextPeer implements DragSourceContextPeer {
private DragGestureEvent trigger;
......
/*
* Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -45,10 +45,7 @@ import sun.java2d.loops.SurfaceType;
import sun.java2d.loops.CompositeType;
import sun.java2d.loops.RenderLoops;
import javax.tools.annotation.GenerateNativeHeader;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public class BufImgSurfaceData extends SurfaceData {
BufferedImage bufImg;
private BufferedImageGraphicsConfig graphicsConfig;
......
/*
* Copyright (c) 2003, 2008, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -32,14 +32,11 @@ import java.util.TreeMap;
import javax.swing.plaf.FontUIResource;
import javax.tools.annotation.GenerateNativeHeader;
/**
* Interface between Java Fonts (java.awt.Font) and the underlying
* font files/native font resources and the Java and native font scalers.
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public interface FontManager {
// These constants are used in findFont().
......
/*
* Copyright (c) 1996, 2008, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 1996, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -92,7 +92,7 @@ import java.util.Iterator;
import sun.java2d.DestSurfaceProvider;
import sun.misc.PerformanceLogger;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/**
* This is a the master Graphics2D superclass for all of the Sun
......@@ -103,8 +103,6 @@ import javax.tools.annotation.GenerateNativeHeader;
*
* @author Jim Graham
*/
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
public final class SunGraphics2D
extends Graphics2D
implements ConstrainableGraphics, Cloneable, DestSurfaceProvider
......@@ -113,18 +111,29 @@ public final class SunGraphics2D
* Attribute States
*/
/* Paint */
@Native
public static final int PAINT_CUSTOM = 6; /* Any other Paint object */
@Native
public static final int PAINT_TEXTURE = 5; /* Tiled Image */
@Native
public static final int PAINT_RAD_GRADIENT = 4; /* Color RadialGradient */
@Native
public static final int PAINT_LIN_GRADIENT = 3; /* Color LinearGradient */
@Native
public static final int PAINT_GRADIENT = 2; /* Color Gradient */
@Native
public static final int PAINT_ALPHACOLOR = 1; /* Non-opaque Color */
@Native
public static final int PAINT_OPAQUECOLOR = 0; /* Opaque Color */
/* Composite*/
@Native
public static final int COMP_CUSTOM = 3;/* Custom Composite */
@Native
public static final int COMP_XOR = 2;/* XOR Mode Composite */
@Native
public static final int COMP_ALPHA = 1;/* AlphaComposite */
@Native
public static final int COMP_ISCOPY = 0;/* simple stores into destination,
* i.e. Src, SrcOverNoEa, and other
* alpha modes which replace
......@@ -132,21 +141,33 @@ public final class SunGraphics2D
*/
/* Stroke */
@Native
public static final int STROKE_CUSTOM = 3; /* custom Stroke */
@Native
public static final int STROKE_WIDE = 2; /* BasicStroke */
@Native
public static final int STROKE_THINDASHED = 1; /* BasicStroke */
@Native
public static final int STROKE_THIN = 0; /* BasicStroke */
/* Transform */
@Native
public static final int TRANSFORM_GENERIC = 4; /* any 3x2 */
@Native
public static final int TRANSFORM_TRANSLATESCALE = 3; /* scale XY */
@Native
public static final int TRANSFORM_ANY_TRANSLATE = 2; /* non-int translate */
@Native
public static final int TRANSFORM_INT_TRANSLATE = 1; /* int translate */
@Native
public static final int TRANSFORM_ISIDENT = 0; /* Identity */
/* Clipping */
@Native
public static final int CLIP_SHAPE = 2; /* arbitrary clip */
@Native
public static final int CLIP_RECTANGULAR = 1; /* rectangular clip */
@Native
public static final int CLIP_DEVICE = 0; /* no clipping set */
/* The following fields are used when the current Paint is a Color. */
......
/*
* Copyright (c) 2003, 2007, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
......@@ -45,10 +45,8 @@ import sun.java2d.pipe.Region;
import sun.java2d.pipe.RenderBuffer;
import sun.java2d.pipe.RenderQueue;
import static sun.java2d.pipe.BufferedOpCodes.*;
import javax.tools.annotation.GenerateNativeHeader;
import java.lang.annotation.Native;
/* No native methods here, but the constants are needed in the supporting JNI code */
@GenerateNativeHeader
class OGLBlitLoops {
static void register() {
......@@ -190,12 +188,12 @@ class OGLBlitLoops {
* createPackedParams(). (They are also used at the native level when
* unpacking the params.)
*/
private static final int OFFSET_SRCTYPE = 16;
private static final int OFFSET_HINT = 8;
private static final int OFFSET_TEXTURE = 3;
private static final int OFFSET_RTT = 2;
private static final int OFFSET_XFORM = 1;
private static final int OFFSET_ISOBLIT = 0;
@Native private static final int OFFSET_SRCTYPE = 16;
@Native private static final int OFFSET_HINT = 8;
@Native private static final int OFFSET_TEXTURE = 3;
@Native private static final int OFFSET_RTT = 2;
@Native private static final int OFFSET_XFORM = 1;
@Native private static final int OFFSET_ISOBLIT = 0;
/**
* Packs the given parameters into a single int value in order to save
......
......@@ -52,8 +52,6 @@ public class Version {
System.setProperty("java.version", java_version);
System.setProperty("java.runtime.version", java_runtime_version);
System.setProperty("java.runtime.name", java_runtime_name);
if (java_profile_name.length() > 0)
System.setProperty("java.runtime.profile", java_profile_name);
}
private static boolean versionsInitialized = false;
......
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册