diff --git a/skin/plantuml.skin b/skin/plantuml.skin index 47ff07e04..b23cf69c6 100644 --- a/skin/plantuml.skin +++ b/skin/plantuml.skin @@ -357,3 +357,16 @@ timingDiagram { } } +nwdiagDiagram { + network { + FontSize 12 + Shadowing 1.0 + } + server { + FontSize 12 + } + group { + FontSize 12 + BackGroundColor #ddd + } +} diff --git a/src/net/sourceforge/plantuml/SkinParam.java b/src/net/sourceforge/plantuml/SkinParam.java index 145261956..4913d42eb 100644 --- a/src/net/sourceforge/plantuml/SkinParam.java +++ b/src/net/sourceforge/plantuml/SkinParam.java @@ -122,6 +122,9 @@ public class SkinParam implements ISkinParam { if (type == UmlDiagramType.YAML) { UseStyle.setBetaStyle(true); } + if (type == UmlDiagramType.NWDIAG) { + UseStyle.setBetaStyle(true); + } if (type == UmlDiagramType.SEQUENCE) { // skin = "debug.skin"; // USE_STYLE2.set(true); diff --git a/src/net/sourceforge/plantuml/nwdiag/NwDiagram.java b/src/net/sourceforge/plantuml/nwdiag/NwDiagram.java index da88ab3df..396384eb2 100644 --- a/src/net/sourceforge/plantuml/nwdiag/NwDiagram.java +++ b/src/net/sourceforge/plantuml/nwdiag/NwDiagram.java @@ -71,8 +71,13 @@ import net.sourceforge.plantuml.nwdiag.next.LinkedElement; import net.sourceforge.plantuml.nwdiag.next.NBar; import net.sourceforge.plantuml.nwdiag.next.NPlayField; import net.sourceforge.plantuml.style.ClockwiseTopRightBottomLeft; +import net.sourceforge.plantuml.style.SName; +import net.sourceforge.plantuml.style.Style; +import net.sourceforge.plantuml.style.StyleBuilder; +import net.sourceforge.plantuml.style.StyleSignature; import net.sourceforge.plantuml.svek.TextBlockBackcolored; import net.sourceforge.plantuml.ugraphic.MinMax; +import net.sourceforge.plantuml.ugraphic.UBackground; import net.sourceforge.plantuml.ugraphic.UEmpty; import net.sourceforge.plantuml.ugraphic.UFont; import net.sourceforge.plantuml.ugraphic.UGraphic; @@ -260,19 +265,22 @@ public class NwDiagram extends UmlDiagram { }; } + private StyleSignature getStyleDefinitionNetwork() { + return StyleSignature.of(SName.root, SName.element, SName.nwdiagDiagram, SName.network); + } + private TextBlock toTextBlock(String name, String s) { if (s != null) { name += "\\n" + s; } - return Display.getWithNewlines(name).create(getFontConfiguration(), HorizontalAlignment.RIGHT, + final StyleBuilder styleBuilder = getSkinParam().getCurrentStyleBuilder(); + final Style style = getStyleDefinitionNetwork().getMergedStyle(styleBuilder); + final FontConfiguration fontConfiguration = style.getFontConfiguration(getSkinParam().getThemeStyle(), + getSkinParam().getIHtmlColorSet()); + return Display.getWithNewlines(name).create(fontConfiguration, HorizontalAlignment.RIGHT, new SpriteContainerEmpty()); } - private FontConfiguration getFontConfiguration() { - final UFont font = UFont.serif(11); - return new FontConfiguration(font, HColorUtils.BLACK, HColorUtils.BLACK, false); - } - private Dimension2D getTotalDimension(StringBounder stringBounder) { return TextBlockUtils.getMinMax(new UDrawable() { public void drawU(UGraphic ug) { @@ -315,8 +323,7 @@ public class NwDiagram extends UmlDiagram { } deltaX += 5; - grid.drawU(ug.apply(ColorParam.activityBorder.getDefaultValue()) - .apply(ColorParam.activityBackground.getDefaultValue().bg()).apply(new UTranslate(deltaX, deltaY))); + grid.drawU(ug.apply(new UTranslate(deltaX, deltaY))); final Dimension2D dimGrid = grid.calculateDimension(stringBounder); ug.apply(new UTranslate(dimGrid.getWidth() + deltaX + margin, dimGrid.getHeight() + deltaY + margin)) @@ -383,7 +390,7 @@ public class NwDiagram extends UmlDiagram { } if ("color".equalsIgnoreCase(property)) { final HColor color = value == null ? null - : NwGroup.colors.getColorOrWhite(getSkinParam().getThemeStyle(), value); + : getSkinParam().getIHtmlColorSet().getColorOrWhite(getSkinParam().getThemeStyle(), value); if (currentGroup != null) { currentGroup.setColor(color); } else if (currentNetwork() != null) { diff --git a/src/net/sourceforge/plantuml/nwdiag/core/NServer.java b/src/net/sourceforge/plantuml/nwdiag/core/NServer.java index 4109d47a9..45687295e 100644 --- a/src/net/sourceforge/plantuml/nwdiag/core/NServer.java +++ b/src/net/sourceforge/plantuml/nwdiag/core/NServer.java @@ -42,7 +42,6 @@ import java.util.Map.Entry; import net.sourceforge.plantuml.ColorParam; import net.sourceforge.plantuml.ComponentStyle; import net.sourceforge.plantuml.ISkinParam; -import net.sourceforge.plantuml.ISkinSimple; import net.sourceforge.plantuml.cucadiagram.Display; import net.sourceforge.plantuml.graphic.FontConfiguration; import net.sourceforge.plantuml.graphic.HorizontalAlignment; @@ -50,7 +49,6 @@ import net.sourceforge.plantuml.graphic.SymbolContext; import net.sourceforge.plantuml.graphic.TextBlock; import net.sourceforge.plantuml.graphic.TextBlockUtils; import net.sourceforge.plantuml.graphic.USymbol; -import net.sourceforge.plantuml.mindmap.IdeaShape; import net.sourceforge.plantuml.nwdiag.next.LinkedElement; import net.sourceforge.plantuml.nwdiag.next.NBar; import net.sourceforge.plantuml.skin.ActorStyle; @@ -90,7 +88,7 @@ public class NServer { return connections.get(network); } - protected final TextBlock toTextBlock(String s, ISkinSimple spriteContainer) { + private TextBlock toTextBlock(String s, ISkinParam skinParam) { if (s == null) { return null; } @@ -98,29 +96,31 @@ public class NServer { return TextBlockUtils.empty(0, 0); } s = s.replace(", ", "\\n"); - return Display.getWithNewlines(s).create(getFontConfiguration(), HorizontalAlignment.LEFT, spriteContainer); + return Display.getWithNewlines(s).create(getFontConfiguration(skinParam), HorizontalAlignment.LEFT, skinParam); } private StyleSignature getStyleDefinition() { - return StyleSignature.of(SName.root, SName.element, SName.nwdiagDiagram, SName.node); + return StyleSignature.of(SName.root, SName.element, SName.nwdiagDiagram, SName.server); + } + + private FontConfiguration getFontConfiguration(ISkinParam skinParam) { + final StyleBuilder styleBuilder = skinParam.getCurrentStyleBuilder(); + final Style style = getStyleDefinition().getMergedStyle(styleBuilder); + return style.getFontConfiguration(skinParam.getThemeStyle(), skinParam.getIHtmlColorSet()); } public LinkedElement asTextBlock(double topMargin, Map conns, List networks, ISkinParam skinParam) { - double deltaShadow = 3; final StyleBuilder styleBuilder = skinParam.getCurrentStyleBuilder(); - if (styleBuilder != null) { - final Style style = getStyleDefinition().getMergedStyle(styleBuilder); - deltaShadow = style.value(PName.Shadowing).asDouble(); - } + final Style style = getStyleDefinition().getMergedStyle(styleBuilder); + final SymbolContext symbolContext = style.getSymbolContext(skinParam.getThemeStyle(), + skinParam.getIHtmlColorSet()); final Map conns2 = new LinkedHashMap(); for (Entry ent : conns.entrySet()) { conns2.put(ent.getKey(), toTextBlock(ent.getValue(), skinParam)); } - - final SymbolContext symbolContext = new SymbolContext(ColorParam.activityBackground.getDefaultValue(), - ColorParam.activityBorder.getDefaultValue()).withShadow(deltaShadow); + final TextBlock desc = toTextBlock(getDescription(), skinParam); final TextBlock box = getShape().asSmall(TextBlockUtils.empty(0, 0), desc, TextBlockUtils.empty(0, 0), symbolContext, HorizontalAlignment.CENTER); @@ -156,11 +156,6 @@ public class NServer { this.name = name; } - protected final FontConfiguration getFontConfiguration() { - final UFont font = UFont.serif(11); - return new FontConfiguration(font, HColorUtils.BLACK, HColorUtils.BLACK, false); - } - public final String getDescription() { return description; } diff --git a/src/net/sourceforge/plantuml/nwdiag/core/NwGroup.java b/src/net/sourceforge/plantuml/nwdiag/core/NwGroup.java index c103b94aa..8ca750f15 100644 --- a/src/net/sourceforge/plantuml/nwdiag/core/NwGroup.java +++ b/src/net/sourceforge/plantuml/nwdiag/core/NwGroup.java @@ -48,18 +48,20 @@ import net.sourceforge.plantuml.graphic.HorizontalAlignment; import net.sourceforge.plantuml.graphic.StringBounder; import net.sourceforge.plantuml.graphic.TextBlock; import net.sourceforge.plantuml.nwdiag.next.NBox; +import net.sourceforge.plantuml.style.PName; +import net.sourceforge.plantuml.style.SName; +import net.sourceforge.plantuml.style.Style; +import net.sourceforge.plantuml.style.StyleBuilder; +import net.sourceforge.plantuml.style.StyleSignature; import net.sourceforge.plantuml.ugraphic.MinMax; import net.sourceforge.plantuml.ugraphic.UFont; import net.sourceforge.plantuml.ugraphic.UGraphic; import net.sourceforge.plantuml.ugraphic.UTranslate; import net.sourceforge.plantuml.ugraphic.color.HColor; -import net.sourceforge.plantuml.ugraphic.color.HColorSet; import net.sourceforge.plantuml.ugraphic.color.HColorUtils; public class NwGroup { - public static final HColorSet colors = HColorSet.instance(); - private final Set names = new HashSet<>(); private final String name; @@ -115,11 +117,6 @@ public class NwGroup { this.description = value; } - public final FontConfiguration getGroupDescriptionFontConfiguration() { - final UFont font = UFont.serif(11); - return new FontConfiguration(font, HColorUtils.BLACK, HColorUtils.BLACK, false); - } - protected final String getDescription() { return description; } @@ -141,7 +138,13 @@ public class NwGroup { return blockDim.getHeight(); } + private StyleSignature getStyleDefinition() { + return StyleSignature.of(SName.root, SName.element, SName.nwdiagDiagram, SName.group); + } + public void drawGroup(UGraphic ug, MinMax size, ISkinParam skinParam) { + final StyleBuilder styleBuilder = skinParam.getCurrentStyleBuilder(); + final Style style = getStyleDefinition().getMergedStyle(styleBuilder); final TextBlock block = buildHeaderName(skinParam); if (block != null) { final Dimension2D blockDim = block.calculateDimension(ug.getStringBounder()); @@ -150,7 +153,8 @@ public class NwGroup { } HColor color = getColor(); if (color == null) { - color = colors.getColorOrWhite(skinParam.getThemeStyle(), "#AAA"); + color = style.value(PName.BackGroundColor).asColor(skinParam.getThemeStyle(), skinParam.getIHtmlColorSet()); + } size.draw(ug, color); @@ -163,7 +167,10 @@ public class NwGroup { if (getDescription() == null) { return null; } - return Display.getWithNewlines(getDescription()).create(getGroupDescriptionFontConfiguration(), + final StyleBuilder styleBuilder = skinParam.getCurrentStyleBuilder(); + final Style style = getStyleDefinition().getMergedStyle(styleBuilder); + return Display.getWithNewlines(getDescription()).create( + style.getFontConfiguration(skinParam.getThemeStyle(), skinParam.getIHtmlColorSet()), HorizontalAlignment.LEFT, skinParam); } diff --git a/src/net/sourceforge/plantuml/nwdiag/next/GridTextBlockDecorated.java b/src/net/sourceforge/plantuml/nwdiag/next/GridTextBlockDecorated.java index 42e0919e1..c7d57fd6f 100644 --- a/src/net/sourceforge/plantuml/nwdiag/next/GridTextBlockDecorated.java +++ b/src/net/sourceforge/plantuml/nwdiag/next/GridTextBlockDecorated.java @@ -125,11 +125,11 @@ public class GridTextBlockDecorated extends GridTextBlockSimple { return false; } - private StyleSignature getStyleDefinition() { - return StyleSignature.of(SName.root, SName.element, SName.nwdiagDiagram, SName.node); + private StyleSignature getStyleDefinitionNetwork() { + return StyleSignature.of(SName.root, SName.element, SName.nwdiagDiagram, SName.network); } - private void drawNetworkTube(final UGraphic ug) { + private void drawNetworkTube(UGraphic ug) { final StringBounder stringBounder = ug.getStringBounder(); double y = 0; @@ -138,15 +138,17 @@ public class GridTextBlockDecorated extends GridTextBlockSimple { computeMixMax(data.getLine(i), stringBounder, network); final URectangle rect = new URectangle(network.getXmax() - network.getXmin(), NETWORK_THIN); - double deltaShadow = 1.0; + + UGraphic ug2 = ug.apply(new UTranslate(network.getXmin(), y)); final StyleBuilder styleBuilder = getSkinParam().getCurrentStyleBuilder(); - if (styleBuilder != null) { - final Style style = getStyleDefinition().getMergedStyle(styleBuilder); - deltaShadow = style.value(PName.Shadowing).asDouble(); - } + final Style style = getStyleDefinitionNetwork().getMergedStyle(styleBuilder); + final double deltaShadow = style.value(PName.Shadowing).asDouble(); + ug2 = ug2.apply(style.value(PName.LineColor).asColor(getSkinParam().getThemeStyle(), + getSkinParam().getIHtmlColorSet())); + ug2 = ug2.apply(style.value(PName.BackGroundColor) + .asColor(getSkinParam().getThemeStyle(), getSkinParam().getIHtmlColorSet()).bg()); rect.setDeltaShadow(deltaShadow); - UGraphic ug2 = ug.apply(new UTranslate(network.getXmin(), y)); if (network != null && network.getColor() != null) { ug2 = ug2.apply(network.getColor().bg()); } diff --git a/src/net/sourceforge/plantuml/project/GanttDiagram.java b/src/net/sourceforge/plantuml/project/GanttDiagram.java index c358fe726..90549c1c5 100644 --- a/src/net/sourceforge/plantuml/project/GanttDiagram.java +++ b/src/net/sourceforge/plantuml/project/GanttDiagram.java @@ -316,7 +316,7 @@ public class GanttDiagram extends TitledDiagram implements ToTaskDraw, WithSprit private TimeHeader getTimeHeader() { if (openClose.getCalendar() == null) { return new TimeHeaderSimple(getTimelineStyle(), getClosedStyle(), getFactorScale(), min, max, - getIHtmlColorSet(), getSkinParam().getThemeStyle()); + getIHtmlColorSet(), getSkinParam().getThemeStyle(), colorDays()); } else if (printScale == PrintScale.DAILY) { return new TimeHeaderDaily(locale, getTimelineStyle(), getClosedStyle(), getFactorScale(), openClose.getCalendar(), min, max, openClose, colorDays(), colorDaysOfWeek, nameDays, printStart, diff --git a/src/net/sourceforge/plantuml/project/command/CommandLanguage.java b/src/net/sourceforge/plantuml/project/command/CommandLanguage.java index ca1d32697..b7a5ae72d 100644 --- a/src/net/sourceforge/plantuml/project/command/CommandLanguage.java +++ b/src/net/sourceforge/plantuml/project/command/CommandLanguage.java @@ -41,11 +41,8 @@ import net.sourceforge.plantuml.command.SingleLineCommand2; import net.sourceforge.plantuml.command.regex.IRegex; import net.sourceforge.plantuml.command.regex.RegexConcat; import net.sourceforge.plantuml.command.regex.RegexLeaf; -import net.sourceforge.plantuml.command.regex.RegexOptional; -import net.sourceforge.plantuml.command.regex.RegexOr; import net.sourceforge.plantuml.command.regex.RegexResult; import net.sourceforge.plantuml.project.GanttDiagram; -import net.sourceforge.plantuml.project.core.PrintScale; public class CommandLanguage extends SingleLineCommand2 { diff --git a/src/net/sourceforge/plantuml/project/draw/TimeHeader.java b/src/net/sourceforge/plantuml/project/draw/TimeHeader.java index 2af17e795..69d47076b 100644 --- a/src/net/sourceforge/plantuml/project/draw/TimeHeader.java +++ b/src/net/sourceforge/plantuml/project/draw/TimeHeader.java @@ -55,7 +55,6 @@ import net.sourceforge.plantuml.ugraphic.UTranslate; import net.sourceforge.plantuml.ugraphic.color.HColor; import net.sourceforge.plantuml.ugraphic.color.HColorNone; import net.sourceforge.plantuml.ugraphic.color.HColorSet; -import net.sourceforge.plantuml.ugraphic.color.HColorUtils; public abstract class TimeHeader { diff --git a/src/net/sourceforge/plantuml/project/draw/TimeHeaderCalendar.java b/src/net/sourceforge/plantuml/project/draw/TimeHeaderCalendar.java index e19f65fc5..77ddd1961 100644 --- a/src/net/sourceforge/plantuml/project/draw/TimeHeaderCalendar.java +++ b/src/net/sourceforge/plantuml/project/draw/TimeHeaderCalendar.java @@ -65,6 +65,7 @@ public abstract class TimeHeaderCalendar extends TimeHeader { this.colorDaysOfWeek = colorDaysOfWeek; } + // Duplicate in TimeHeaderSimple class Pending { final double x1; double x2; diff --git a/src/net/sourceforge/plantuml/project/draw/TimeHeaderDaily.java b/src/net/sourceforge/plantuml/project/draw/TimeHeaderDaily.java index d3b49de6c..41fd42b6d 100644 --- a/src/net/sourceforge/plantuml/project/draw/TimeHeaderDaily.java +++ b/src/net/sourceforge/plantuml/project/draw/TimeHeaderDaily.java @@ -50,7 +50,6 @@ import net.sourceforge.plantuml.ugraphic.UGraphic; import net.sourceforge.plantuml.ugraphic.UTranslate; import net.sourceforge.plantuml.ugraphic.color.HColor; import net.sourceforge.plantuml.ugraphic.color.HColorSet; -import net.sourceforge.plantuml.ugraphic.color.HColorUtils; public class TimeHeaderDaily extends TimeHeaderCalendar { diff --git a/src/net/sourceforge/plantuml/project/draw/TimeHeaderQuarterly.java b/src/net/sourceforge/plantuml/project/draw/TimeHeaderQuarterly.java index dec281b21..f44082550 100644 --- a/src/net/sourceforge/plantuml/project/draw/TimeHeaderQuarterly.java +++ b/src/net/sourceforge/plantuml/project/draw/TimeHeaderQuarterly.java @@ -50,7 +50,6 @@ import net.sourceforge.plantuml.ugraphic.UGraphic; import net.sourceforge.plantuml.ugraphic.UTranslate; import net.sourceforge.plantuml.ugraphic.color.HColor; import net.sourceforge.plantuml.ugraphic.color.HColorSet; -import net.sourceforge.plantuml.ugraphic.color.HColorUtils; public class TimeHeaderQuarterly extends TimeHeaderCalendar { diff --git a/src/net/sourceforge/plantuml/project/draw/TimeHeaderSimple.java b/src/net/sourceforge/plantuml/project/draw/TimeHeaderSimple.java index 60eca9902..43aab42a2 100644 --- a/src/net/sourceforge/plantuml/project/draw/TimeHeaderSimple.java +++ b/src/net/sourceforge/plantuml/project/draw/TimeHeaderSimple.java @@ -35,6 +35,8 @@ */ package net.sourceforge.plantuml.project.draw; +import java.util.Map; + import net.sourceforge.plantuml.SpriteContainerEmpty; import net.sourceforge.plantuml.ThemeStyle; import net.sourceforge.plantuml.cucadiagram.Display; @@ -47,11 +49,13 @@ import net.sourceforge.plantuml.style.Style; import net.sourceforge.plantuml.ugraphic.UGraphic; import net.sourceforge.plantuml.ugraphic.ULine; import net.sourceforge.plantuml.ugraphic.UTranslate; +import net.sourceforge.plantuml.ugraphic.color.HColor; import net.sourceforge.plantuml.ugraphic.color.HColorSet; -import net.sourceforge.plantuml.ugraphic.color.HColorUtils; public class TimeHeaderSimple extends TimeHeader { + private final Map colorDays; + @Override public double getFullHeaderHeight() { return getTimeHeaderHeight() + getHeaderNameDayHeight(); @@ -70,8 +74,9 @@ public class TimeHeaderSimple extends TimeHeader { } public TimeHeaderSimple(Style timelineStyle, Style closedStyle, double scale, Day min, Day max, HColorSet colorSet, - ThemeStyle themeStyle) { + ThemeStyle themeStyle, Map colorDays) { super(timelineStyle, closedStyle, min, max, new TimeScaleWink(scale), colorSet, themeStyle); + this.colorDays = colorDays; } private void drawSmallVlinesDay(UGraphic ug, TimeScale timeScale, double totalHeightWithoutFooter) { @@ -100,6 +105,7 @@ public class TimeHeaderSimple extends TimeHeader { @Override public void drawTimeHeader(final UGraphic ug, double totalHeightWithoutFooter) { + drawTextsBackground(ug.apply(UTranslate.dy(-3)), totalHeightWithoutFooter + 6); final double xmin = getTimeScale().getStartingPosition(min); final double xmax = getTimeScale().getEndingPosition(max); drawSmallVlinesDay(ug, getTimeScale(), totalHeightWithoutFooter); @@ -119,4 +125,56 @@ public class TimeHeaderSimple extends TimeHeader { ug.apply(getBarColor()).draw(ULine.hline(xmax - xmin)); } + // Duplicate in TimeHeaderDaily + class Pending { + final double x1; + double x2; + final HColor color; + + Pending(HColor color, double x1, double x2) { + this.x1 = x1; + this.x2 = x2; + this.color = color; + } + + public void draw(UGraphic ug, double height) { + drawRectangle(ug.apply(color.bg()), height, x1, x2); + } + } + + protected final void drawTextsBackground(UGraphic ug, double totalHeightWithoutFooter) { + + final double height = totalHeightWithoutFooter - getFullHeaderHeight(); + Pending pending = null; + + for (Day wink = min; wink.compareTo(max) <= 0; wink = wink.increment()) { + final double x1 = getTimeScale().getStartingPosition(wink); + final double x2 = getTimeScale().getEndingPosition(wink); + HColor back = colorDays.get(wink); +// // Day of week should be stronger than period of time (back color). +// final HColor backDoW = colorDaysOfWeek.get(wink.getDayOfWeek()); +// if (backDoW != null) { +// back = backDoW; +// } +// if (back == null && defaultPlan.getLoadAt(wink) == 0) { +// back = closedBackgroundColor(); +// } + if (back == null) { + if (pending != null) + pending.draw(ug, height); + pending = null; + } else { + if (pending != null && pending.color.equals(back) == false) { + pending.draw(ug, height); + pending = null; + } + if (pending == null) { + pending = new Pending(back, x1, x2); + } else { + pending.x2 = x2; + } + } + } + } + } diff --git a/src/net/sourceforge/plantuml/project/draw/TimeHeaderYearly.java b/src/net/sourceforge/plantuml/project/draw/TimeHeaderYearly.java index a08dcb2f1..294e6736f 100644 --- a/src/net/sourceforge/plantuml/project/draw/TimeHeaderYearly.java +++ b/src/net/sourceforge/plantuml/project/draw/TimeHeaderYearly.java @@ -50,7 +50,6 @@ import net.sourceforge.plantuml.ugraphic.UGraphic; import net.sourceforge.plantuml.ugraphic.UTranslate; import net.sourceforge.plantuml.ugraphic.color.HColor; import net.sourceforge.plantuml.ugraphic.color.HColorSet; -import net.sourceforge.plantuml.ugraphic.color.HColorUtils; public class TimeHeaderYearly extends TimeHeaderCalendar { diff --git a/src/net/sourceforge/plantuml/style/SName.java b/src/net/sourceforge/plantuml/style/SName.java index a7730b9cd..276fee788 100644 --- a/src/net/sourceforge/plantuml/style/SName.java +++ b/src/net/sourceforge/plantuml/style/SName.java @@ -87,6 +87,7 @@ public enum SName { lifeLine, // milestone, // mindmapDiagram, // + network, // node, // note, // nwdiagDiagram, // @@ -104,6 +105,7 @@ public enum SName { saltDiagram, // separator, // sequenceDiagram, // + server, // stack, // stateDiagram, // stereotype, // diff --git a/src/net/sourceforge/plantuml/ugraphic/color/HColorSimple.java b/src/net/sourceforge/plantuml/ugraphic/color/HColorSimple.java index f683b604a..efbbd4131 100644 --- a/src/net/sourceforge/plantuml/ugraphic/color/HColorSimple.java +++ b/src/net/sourceforge/plantuml/ugraphic/color/HColorSimple.java @@ -149,6 +149,9 @@ public class HColorSimple extends HColorAbstract implements HColor { final float[] hsl1 = col1.getHSL(); final float[] hsl2 = col2.getHSL(); + if (completionInt > 100) + completionInt = 100; + float completion = (float) (completionInt / 100.0); completion = completion * completion * completion; final float[] hsl = linear(completion, hsl1, hsl2); diff --git a/src/net/sourceforge/plantuml/version/Version.java b/src/net/sourceforge/plantuml/version/Version.java index ea206d0a0..c20923fd0 100644 --- a/src/net/sourceforge/plantuml/version/Version.java +++ b/src/net/sourceforge/plantuml/version/Version.java @@ -80,7 +80,7 @@ public class Version { } public static int beta() { - final int beta = 2; + final int beta = 3; return beta; }