diff options
author | Silenio Quarti | 2003-08-27 18:39:44 +0000 |
---|---|---|
committer | Silenio Quarti | 2003-08-27 18:39:44 +0000 |
commit | fa12b8936bad80f37c700ad4c9a02f0bbfb7760b (patch) | |
tree | 4c93e9d16f6da1fec021f4486d24221aee39877b | |
parent | 1272e52adc3f107ca1a640ae962bb234f1fb1d2b (diff) | |
download | eclipse.platform.swt-eclipse_3_0_M3.tar.gz eclipse.platform.swt-eclipse_3_0_M3.tar.xz eclipse.platform.swt-eclipse_3_0_M3.zip |
41619 back portv3019beclipse_3_0_M3
3 files changed, 15 insertions, 0 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/carbon/library/os.c b/bundles/org.eclipse.swt/Eclipse SWT PI/carbon/library/os.c index fcc8ba4af5..86392bc39b 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/carbon/library/os.c +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/carbon/library/os.c @@ -323,6 +323,18 @@ JNIEXPORT jint JNICALL OS_NATIVE(ATSUSetTextPointerLocation) } #endif +#ifndef NO_ATSUSetTransientFontMatching +JNIEXPORT jint JNICALL OS_NATIVE(ATSUSetTransientFontMatching) + (JNIEnv *env, jclass that, jint arg0, jboolean arg1) +{ + jint rc; + NATIVE_ENTER(env, that, "ATSUSetTransientFontMatching\n") + rc = (jint)ATSUSetTransientFontMatching((ATSUTextLayout)arg0, arg1); + NATIVE_EXIT(env, that, "ATSUSetTransientFontMatching\n") + return rc; +} +#endif + #ifndef NO_ATSUTextDeleted JNIEXPORT jint JNICALL OS_NATIVE(ATSUTextDeleted) (JNIEnv *env, jclass that, jint arg0, jint arg1, jint arg2) diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/carbon/org/eclipse/swt/internal/carbon/OS.java b/bundles/org.eclipse.swt/Eclipse SWT PI/carbon/org/eclipse/swt/internal/carbon/OS.java index 63446da4e6..9f732084c8 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT PI/carbon/org/eclipse/swt/internal/carbon/OS.java +++ b/bundles/org.eclipse.swt/Eclipse SWT PI/carbon/org/eclipse/swt/internal/carbon/OS.java @@ -607,6 +607,7 @@ public static final native int ATSUSetFontFeatures(int iStyle, int iFeatureCount public static final native int ATSUSetLayoutControls(int iTextLayout, int iAttributeCount, int[] iTag, int[] iValueSize, int[] iValue); public static final native int ATSUSetRunStyle(int iTextLayout, int iStyle, int iRunStart, int iRunLength); public static final native int ATSUSetTextPointerLocation(int iTextLayout, int iText, int iTextOffset, int iTextLength, int iTextTotalLength); +public static final native int ATSUSetTransientFontMatching(int iTextLayout, boolean iTransientFontMatching); public static final native int ATSUTextInserted(int iTextLayout, int iInsertionLocation, int iInsertionLength); public static final native int ATSUTextDeleted(int iTextLayout, int iInsertionLocation, int iInsertionLength); public static final native int AddDataBrowserItems(int cHandle, int containerID, int numItems, int[] itemIDs, int preSortProperty); diff --git a/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/graphics/GC.java b/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/graphics/GC.java index a99b7d282c..c7b7e4a50b 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/graphics/GC.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/graphics/GC.java @@ -819,6 +819,7 @@ public void drawString(String string, int x, int y, boolean isTransparent) { OS.ATSUSetRunStyle(data.layout, atsuiStyle, 0, length); data.string = string; data.stringPtr = ptr; + OS.ATSUSetTransientFontMatching(data.layout, true); } OS.ATSUDrawText(data.layout, 0, length, OS.X2Fix(x), OS.X2Fix(-(y + data.fontAscent))); } else { @@ -1871,6 +1872,7 @@ public Point stringExtent(String string) { OS.ATSUSetRunStyle(data.layout, atsuiStyle, 0, length); data.string = string; data.stringPtr = ptr; + OS.ATSUSetTransientFontMatching(data.layout, true); } ATSTrapezoid trapezoid = new ATSTrapezoid(); OS.ATSUGetGlyphBounds(data.layout, 0, 0, 0, length, (short)OS.kATSUseDeviceOrigins, 1, trapezoid, null); |