1
0
mirror of https://github.com/octoleo/plantuml.git synced 2024-06-01 08:00:48 +00:00
This commit is contained in:
Arnaud Roques 2022-01-03 18:35:17 +01:00
parent 0be33c0ecf
commit 864cb34e30
4 changed files with 85 additions and 7 deletions

View File

@ -238,10 +238,13 @@ public class GanttDiagram extends TitledDiagram implements ToTaskDraw, WithSprit
drawConstraints(ug, timeHeader.getTimeScale());
drawTasksRect(ug);
drawTasksTitle(ugOrig, getTitlesColumnWidth(ug.getStringBounder()), getBarsColumnWidth(timeHeader));
drawResources(ug);
if (showFootbox) {
if (hideRessourceFoobox == false)
drawResources(ug);
if (showFootbox)
timeHeader.drawTimeFooter(ug.apply(UTranslate.dy(totalHeightWithoutFooter)));
}
} catch (Throwable t) {
t.printStackTrace();
final UDrawable crash = new GraphvizCrash(getSource().getPlainString(), false, t);
@ -428,13 +431,13 @@ public class GanttDiagram extends TitledDiagram implements ToTaskDraw, WithSprit
double yy = lastY(stringBounder);
if (yy == 0) {
yy = headerHeight;
} else {
} else if (this.hideRessourceFoobox == false)
for (Resource res : resources.values()) {
final ResourceDraw draw = new ResourceDraw(this, res, timeScale, yy, min, max);
res.setTaskDraw(draw);
yy += draw.getHeight();
}
}
this.totalHeightWithoutFooter = yy;
}
@ -783,14 +786,19 @@ public class GanttDiagram extends TitledDiagram implements ToTaskDraw, WithSprit
public void setWithCalendarDate(boolean withCalendarDate) {
this.withCalendarDate = withCalendarDate;
}
private boolean hideRessourceName;
private boolean hideRessourceFoobox;
public CommandExecutionResult hideRessourceName() {
this.hideRessourceName = true;
return CommandExecutionResult.ok();
}
public CommandExecutionResult hideRessourceFootbox() {
this.hideRessourceFoobox = true;
return CommandExecutionResult.ok();
}
}

View File

@ -50,6 +50,7 @@ import net.sourceforge.plantuml.project.command.CommandColorTask;
import net.sourceforge.plantuml.project.command.CommandFootbox;
import net.sourceforge.plantuml.project.command.CommandGanttArrow;
import net.sourceforge.plantuml.project.command.CommandGanttArrow2;
import net.sourceforge.plantuml.project.command.CommandHideRessourceFootbox;
import net.sourceforge.plantuml.project.command.CommandHideRessourceName;
import net.sourceforge.plantuml.project.command.CommandLabelOnColumn;
import net.sourceforge.plantuml.project.command.CommandLanguage;
@ -111,6 +112,7 @@ public class GanttDiagramFactory extends PSystemCommandFactory {
cmds.add(new CommandFootbox());
cmds.add(new CommandLabelOnColumn());
cmds.add(new CommandHideRessourceName());
cmds.add(new CommandHideRessourceFootbox());
// cmds.add(new CommandScaleWidthAndHeight());
// cmds.add(new CommandScaleWidthOrHeight());

View File

@ -0,0 +1,68 @@
/* ========================================================================
* PlantUML : a free UML diagram generator
* ========================================================================
*
* (C) Copyright 2009-2020, Arnaud Roques
*
* Project Info: http://plantuml.com
*
* If you like this project or if you find it useful, you can support us at:
*
* http://plantuml.com/patreon (only 1$ per month!)
* http://plantuml.com/paypal
*
* This file is part of PlantUML.
*
* PlantUML is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* PlantUML 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 for more details.
*
* You should have received a copy of the GNU General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
* USA.
*
*
* Original Author: Arnaud Roques
*
*
*/
package net.sourceforge.plantuml.project.command;
import net.sourceforge.plantuml.LineLocation;
import net.sourceforge.plantuml.command.CommandExecutionResult;
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.RegexResult;
import net.sourceforge.plantuml.project.GanttDiagram;
public class CommandHideRessourceFootbox extends SingleLineCommand2<GanttDiagram> {
public CommandHideRessourceFootbox() {
super(getRegexConcat());
}
static IRegex getRegexConcat() {
return RegexConcat.build(CommandHideRessourceFootbox.class.getName(), RegexLeaf.start(), //
new RegexLeaf("hide"), //
RegexLeaf.spaceOneOrMore(), //
new RegexLeaf("ressources?"), //
RegexLeaf.spaceOneOrMore(), //
new RegexLeaf("footbox"), //
RegexLeaf.end()); //
}
@Override
protected CommandExecutionResult executeArg(GanttDiagram diagram, LineLocation location, RegexResult arg) {
return diagram.hideRessourceFootbox();
}
}

View File

@ -80,7 +80,7 @@ public class Version {
}
public static int beta() {
final int beta = 6;
final int beta = 7;
return beta;
}