1
0
mirror of https://github.com/octoleo/plantuml.git synced 2024-11-29 08:13:53 +00:00

refactor: prepare haxe version

This commit is contained in:
Arnaud Roques 2023-03-14 18:52:44 +01:00
parent 8f074cfbdf
commit 9adc8dd067
5 changed files with 53 additions and 48 deletions

View File

@ -13,6 +13,7 @@ abstract public class CTSort
{ {
// ::remove folder when __HAXE__ // ::remove folder when __HAXE__
// ::remove folder when __CORE__ // ::remove folder when __CORE__
// ::remove folder when __MIT__
public void sort(Object[] items) public void sort(Object[] items)
{ {
sort(items, new DefaultComparator()); sort(items, new DefaultComparator());

View File

@ -498,6 +498,22 @@ public class StringUtils {
return s.toString().trim(); return s.toString().trim();
} }
public static String manageEscapedTabs(String s) {
return s.replace("\\t", "\t");
}
public static long seed(String string) {
long h = 1125899906842597L; // prime
final int len = string.length();
for (int i = 0; i < len; i++)
h = 31 * h + string.charAt(i);
return h;
}
// ::done
public static String trin(String arg) { public static String trin(String arg) {
if (arg.length() == 0) if (arg.length() == 0)
return arg; return arg;
@ -535,22 +551,6 @@ public class StringUtils {
return c == ' ' || c == '\t' || c == '\r' || c == '\n' || c == '\0'; return c == ' ' || c == '\t' || c == '\r' || c == '\n' || c == '\0';
} }
public static String manageEscapedTabs(String s) {
return s.replace("\\t", "\t");
}
public static long seed(String string) {
long h = 1125899906842597L; // prime
final int len = string.length();
for (int i = 0; i < len; i++)
h = 31 * h + string.charAt(i);
return h;
}
// ::done
public static String sharp000000(int color) { public static String sharp000000(int color) {
final int v = 0xFFFFFF & color; final int v = 0xFFFFFF & color;
String s = "000000" + Integer.toHexString(v).toUpperCase(); String s = "000000" + Integer.toHexString(v).toUpperCase();

View File

@ -38,21 +38,20 @@ import java.awt.Color;
import java.util.Objects; import java.util.Objects;
public class HColorGradient extends HColor { public class HColorGradient extends HColor {
// ::remove file when __HAXE__
private final HColor color1; private final HColor color1;
private final HColor color2; private final HColor color2;
private final char policy; private final char policy;
HColorGradient(HColor color1, HColor color2, char policy) { HColorGradient(HColor color1arg, HColor color2arg, char policy) {
if (color1 instanceof HColorGradient) if (color1arg instanceof HColorGradient)
color1 = ((HColorGradient) color1).color1; color1arg = ((HColorGradient) color1arg).color1;
if (color2 instanceof HColorGradient) if (color2arg instanceof HColorGradient)
color2 = ((HColorGradient) color2).color2; color2arg = ((HColorGradient) color2arg).color2;
this.color1 = Objects.requireNonNull(color1); this.color1 = Objects.requireNonNull(color1arg);
this.color2 = Objects.requireNonNull(color2); this.color2 = Objects.requireNonNull(color2arg);
this.policy = policy; this.policy = policy;
} }
@ -70,13 +69,18 @@ public class HColorGradient extends HColor {
final Color c1 = color1.toColor(mapper); final Color c1 = color1.toColor(mapper);
final Color c2 = color2.toColor(mapper); final Color c2 = color2.toColor(mapper);
final int vred = c2.getRed() - c1.getRed();
final int vgreen = c2.getGreen() - c1.getGreen();
final int vblue = c2.getBlue() - c1.getBlue();
final int red = c1.getRed() + (int) (coeff * vred); final int diffRed = c2.getRed() - c1.getRed();
final int green = c1.getGreen() + (int) (coeff * vgreen); final int diffGreen = c2.getGreen() - c1.getGreen();
final int blue = c1.getBlue() + (int) (coeff * vblue); final int diffBlue = c2.getBlue() - c1.getBlue();
final int vRed = (int) (coeff * diffRed);
final int vGreen = (int) (coeff * diffGreen);
final int vBlue = (int) (coeff * diffBlue);
final int red = c1.getRed() + vRed;
final int green = c1.getGreen() + vGreen;
final int blue = c1.getBlue() + vBlue;
return new Color(red, green, blue); return new Color(red, green, blue);

View File

@ -161,11 +161,11 @@ public class HColors {
public static HColor middle(HColor c1, HColor c2) { public static HColor middle(HColor c1, HColor c2) {
return new HColorMiddle(c1, c2); return new HColorMiddle(c1, c2);
} }
// ::done
public static HColorGradient gradient(HColor color1, HColor color2, char policy) { public static HColorGradient gradient(HColor color1, HColor color2, char policy) {
return new HColorGradient(color1, color2, policy); return new HColorGradient(color1, color2, policy);
} }
// ::done
public static HColor simple(Color c) { public static HColor simple(Color c) {
return HColorSimple.create(c); return HColorSimple.create(c);

View File

@ -159,9 +159,12 @@ public class FontConfiguration {
&& fontPosition.equals(other.fontPosition) && tabSize == other.tabSize; && fontPosition.equals(other.fontPosition) && tabSize == other.tabSize;
} }
public static FontConfiguration create(UFont font, HColor color, HColor hyperlinkColor, public FontConfiguration mute(Colors colors) {
UStroke hyperlinkUnderlineStroke) { final HColor color = Objects.requireNonNull(colors).getColor(ColorType.TEXT);
return create(font, color, hyperlinkColor, hyperlinkUnderlineStroke, 8); if (color == null)
return this;
return changeColor(color);
} }
public static FontConfiguration create(ISkinParam skinParam, FontParam fontParam, Stereotype stereo) { public static FontConfiguration create(ISkinParam skinParam, FontParam fontParam, Stereotype stereo) {
@ -183,13 +186,20 @@ public class FontConfiguration {
return create(style.getUFont(), color, hyperlinkColor, hyperlinkUnderlineStroke, skinParam.getTabSize()); return create(style.getUFont(), color, hyperlinkColor, hyperlinkUnderlineStroke, skinParam.getTabSize());
} }
// ---
@Override @Override
public String toString() { public String toString() {
return styles.toString() + " " + currentColor; return styles.toString() + " " + currentColor;
} }
// ::done
public static FontConfiguration create(UFont font, HColor color, HColor hyperlinkColor,
UStroke hyperlinkUnderlineStroke) {
return create(font, color, hyperlinkColor, hyperlinkUnderlineStroke, 8);
}
// ---
public FontConfiguration forceFont(UFont newFont, HColor htmlColorForStereotype) { public FontConfiguration forceFont(UFont newFont, HColor htmlColorForStereotype) {
if (newFont == null) if (newFont == null)
return add(FontStyle.ITALIC); return add(FontStyle.ITALIC);
@ -217,14 +227,6 @@ public class FontConfiguration {
fontPosition, svgAttributes, hyperlinkColor, hyperlinkUnderlineStroke, tabSize); fontPosition, svgAttributes, hyperlinkColor, hyperlinkUnderlineStroke, tabSize);
} }
public FontConfiguration mute(Colors colors) {
final HColor color = Objects.requireNonNull(colors).getColor(ColorType.TEXT);
if (color == null)
return this;
return changeColor(color);
}
public FontConfiguration changeExtendedColor(HColor newExtendedColor) { public FontConfiguration changeExtendedColor(HColor newExtendedColor) {
return new FontConfiguration(styles, motherFont, motherColor, currentFont, currentColor, newExtendedColor, return new FontConfiguration(styles, motherFont, motherColor, currentFont, currentColor, newExtendedColor,
fontPosition, svgAttributes, hyperlinkColor, hyperlinkUnderlineStroke, tabSize); fontPosition, svgAttributes, hyperlinkColor, hyperlinkUnderlineStroke, tabSize);
@ -337,6 +339,4 @@ public class FontConfiguration {
// return new UStroke(3, 5, 2); // return new UStroke(3, 5, 2);
} }
// ::done
} }