diff options
Diffstat (limited to 'src/jcgp/gui/population/GUIGene.java')
-rw-r--r-- | src/jcgp/gui/population/GUIGene.java | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/src/jcgp/gui/population/GUIGene.java b/src/jcgp/gui/population/GUIGene.java index 6e61875..032d217 100644 --- a/src/jcgp/gui/population/GUIGene.java +++ b/src/jcgp/gui/population/GUIGene.java @@ -24,7 +24,8 @@ public abstract class GUIGene extends Group { public enum GUIGeneState { NEUTRAL, HOVER, - EXTENDED_HOVER + EXTENDED_HOVER, + ACTIVE_HOVER } private GUIGeneState currentState = GUIGeneState.NEUTRAL; @@ -44,8 +45,9 @@ public abstract class GUIGene extends Group { text.setVisible(true); mainCircle.setStroke(Paint.valueOf("black")); - + getChildren().addAll(mainCircle, text); + } /** @@ -61,16 +63,23 @@ public abstract class GUIGene extends Group { return currentState; } - void setState(GUIGeneState newState) { + public void setState(GUIGeneState newState) { switch (newState) { case NEUTRAL: mainCircle.setFill(Paint.valueOf(Constants.NEUTRAL_COLOUR)); + setLinesVisible(false); break; case HOVER: mainCircle.setFill(Paint.valueOf(Constants.MEDIUM_HIGHLIGHT_COLOUR)); + setLinesVisible(true); break; case EXTENDED_HOVER: mainCircle.setFill(Paint.valueOf(Constants.SOFT_HIGHLIGHT_COLOUR)); + setLinesVisible(false); + break; + case ACTIVE_HOVER: + mainCircle.setFill(Paint.valueOf(Constants.SOFT_HIGHLIGHT_COLOUR)); + setLinesVisible(true); break; default: @@ -78,8 +87,6 @@ public abstract class GUIGene extends Group { } currentState = newState; } - - public abstract void mouseEnter(); - public abstract void mouseExit(); - + + protected abstract void setLinesVisible(boolean value); } |