summaryrefslogtreecommitdiffstats
path: root/bundles/org.eclipse.swt/Eclipse SWT Custom Widgets/common/org/eclipse/swt
diff options
context:
space:
mode:
authorFelipe Heidrich <fheidric>2008-10-16 19:40:01 +0000
committerFelipe Heidrich <fheidric>2008-10-16 19:40:01 +0000
commit6e3fbd94b2c15273a851786f1a5dbf4d3548ba4f (patch)
treee70fc197267ddc89d50aaf597cfafba73ee04c9f /bundles/org.eclipse.swt/Eclipse SWT Custom Widgets/common/org/eclipse/swt
parent835e16ee699d5e7703467af3a6a75dff9c8f5499 (diff)
downloadeclipse.platform.swt-6e3fbd94b2c15273a851786f1a5dbf4d3548ba4f.tar.gz
eclipse.platform.swt-6e3fbd94b2c15273a851786f1a5dbf4d3548ba4f.tar.xz
eclipse.platform.swt-6e3fbd94b2c15273a851786f1a5dbf4d3548ba4f.zip
fix for Bug 250193 StyledText SetStyleRange not working
style.start and style.length can only the touched when includeRanges == true note: this bug was actually fixed by the new fix for Bug 212851 date 20081015
Diffstat (limited to 'bundles/org.eclipse.swt/Eclipse SWT Custom Widgets/common/org/eclipse/swt')
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT Custom Widgets/common/org/eclipse/swt/custom/StyledTextRenderer.java22
1 files changed, 12 insertions, 10 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT Custom Widgets/common/org/eclipse/swt/custom/StyledTextRenderer.java b/bundles/org.eclipse.swt/Eclipse SWT Custom Widgets/common/org/eclipse/swt/custom/StyledTextRenderer.java
index 273beaaca5..bb86d5e2a2 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT Custom Widgets/common/org/eclipse/swt/custom/StyledTextRenderer.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT Custom Widgets/common/org/eclipse/swt/custom/StyledTextRenderer.java
@@ -627,16 +627,18 @@ StyleRange[] getStyleRanges(int start, int length, boolean includeRanges) {
newStyles = new StyleRange[rangeEnd - rangeStart + 1];
System.arraycopy(styles, rangeStart, newStyles, 0, newStyles.length);
}
- StyleRange style = newStyles[0];
- if (start > style.start) {
- if (!includeRanges || ranges == null) newStyles[0] = style = (StyleRange)style.clone();
- style.length = style.start + style.length - start;
- style.start = start;
- }
- style = newStyles[newStyles.length - 1];
- if (end < style.start + style.length - 1) {
- if (!includeRanges || ranges == null) newStyles[newStyles.length - 1] = style = (StyleRange)style.clone();
- style.length = end - style.start + 1;
+ if (includeRanges || ranges == null) {
+ StyleRange style = newStyles[0];
+ if (start > style.start) {
+ newStyles[0] = style = (StyleRange)style.clone();
+ style.length = style.start + style.length - start;
+ style.start = start;
+ }
+ style = newStyles[newStyles.length - 1];
+ if (end < style.start + style.length - 1) {
+ newStyles[newStyles.length - 1] = style = (StyleRange)style.clone();
+ style.length = end - style.start + 1;
+ }
}
return newStyles;
}