From 26552aa112a72729a70b09b6eedeecd2906e5895 Mon Sep 17 00:00:00 2001 From: Philipp Spohr <spohr.philipp@web.de> Date: Thu, 14 Dec 2017 16:20:42 +0100 Subject: [PATCH] Workaround for CyColumn being not tunable (as of now, Cyto 3.7 maybe?) --- src/main/java/de/hhu/ba/yoshikoWrapper/core/ParameterSet.java | 2 +- .../de/hhu/ba/yoshikoWrapper/swing/components/MainPanel.java | 2 +- .../hhu/ba/yoshikoWrapper/swing/components/SolutionTab.java | 3 +++ .../java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java | 4 ++-- .../de/hhu/ba/yoshikoWrapper/tasks/CreateMetaGraphTask.java | 2 ++ 5 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/core/ParameterSet.java b/src/main/java/de/hhu/ba/yoshikoWrapper/core/ParameterSet.java index 08ac18a..a3bb7fa 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/core/ParameterSet.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/core/ParameterSet.java @@ -14,7 +14,7 @@ public class ParameterSet implements TunableValidator public int timeLimit = -1; @Tunable(description="A column in the edge table containing weights", context="nogui") - public CyColumn weightColumn; + public String weightColumnName; @Tunable(description="A column containing boolean entries for edges that are to be treated as permanent",context="nogui") public CyColumn permanentColumn; @Tunable(description="A column containing boolean entries for edges that are to be treated as forbidden",context="nogui") diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/MainPanel.java b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/MainPanel.java index b0771da..0efd7a5 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/MainPanel.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/MainPanel.java @@ -346,7 +346,7 @@ public class MainPanel extends JPanel implements CytoPanelComponent { private ParameterSet fetchParameters(CyNetwork net) { ParameterSet ret = new ParameterSet(); ret.timeLimit = opModePanel.getTimeLimit(); - ret.weightColumn = ecPanel.getWeightColumn(); + ret.weightColumnName = ecPanel.getWeightColumn().getName(); ret.permanentColumn = ecPanel.getPermanentColumn(); ret.forbiddenColumn = ecPanel.getForbiddenColumn(); ret.defaultInsertionCost = ecPanel.getDefaultInsertionCost(); diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/SolutionTab.java b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/SolutionTab.java index b0c4e99..86650f2 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/SolutionTab.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/SolutionTab.java @@ -226,6 +226,9 @@ public class SolutionTab extends JPanel { this.setLayout(layout); } + /** + * Simply disables the CCV and CMG graph to visually highlight the fact that those tasks are no longer possible + */ public void invalidateResult() { createClusterView.setEnabled(false); createMetaGraph.setEnabled(false); diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java b/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java index d764f9e..cbc64bb 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java @@ -138,7 +138,7 @@ public class AlgorithmTask extends AbstractTask implements ObservableTask { c_input = NetworkParser.parseNetwork( net, nodeMap, - parameterSet.weightColumn, + net.getDefaultEdgeTable().getColumn(parameterSet.weightColumnName), parameterSet.permanentColumn, parameterSet.forbiddenColumn, parameterSet.defaultDeletionCost @@ -147,7 +147,7 @@ public class AlgorithmTask extends AbstractTask implements ObservableTask { boolean containsRealValues = GraphAnalyzer.containsRealValues( net, - parameterSet.weightColumn, + net.getDefaultEdgeTable().getColumn(parameterSet.weightColumnName), parameterSet.permanentColumn, parameterSet.forbiddenColumn, parameterSet.defaultInsertionCost, diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/CreateMetaGraphTask.java b/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/CreateMetaGraphTask.java index cf0ffb6..dd1c24e 100644 --- a/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/CreateMetaGraphTask.java +++ b/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/CreateMetaGraphTask.java @@ -20,6 +20,8 @@ import de.hhu.ba.yoshikoWrapper.cytoUtil.StyleManager; import de.hhu.ba.yoshikoWrapper.graphModel.YoshikoCluster; import de.hhu.ba.yoshikoWrapper.graphModel.YoshikoSolution; +//TODO: Should also not be possible / throw an exception if the result was invalidated (might currently just be disabled via GUI) + public class CreateMetaGraphTask extends AbstractTask{ private final YoshikoSolution solution; -- GitLab