Skip to content

Commit 05978ef

Browse files
committed
Refs #211: The order of the EM networks in the dropdown is now the order the networks were created.
1 parent 9abf847 commit 05978ef

File tree

2 files changed

+20
-14
lines changed

2 files changed

+20
-14
lines changed

EnrichmentMapPlugin/src/main/java/org/baderlab/csplugins/enrichmentmap/model/EnrichmentMapManager.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,8 @@
4343

4444
package org.baderlab.csplugins.enrichmentmap.model;
4545

46-
import java.util.Collections;
4746
import java.util.HashMap;
47+
import java.util.LinkedHashMap;
4848
import java.util.Map;
4949

5050
import org.baderlab.csplugins.enrichmentmap.view.heatmap.HeatMapParams;
@@ -58,8 +58,8 @@
5858

5959
@Singleton
6060
public class EnrichmentMapManager {
61-
62-
private Map<Long, EnrichmentMap> enrichmentMaps = new HashMap<>();
61+
62+
private Map<Long, EnrichmentMap> enrichmentMaps = new LinkedHashMap<>();
6363
private Map<Long, HeatMapParams> heatMapParams = new HashMap<>();
6464
private Map<Long, HeatMapParams> heatMapParamsEdges = new HashMap<>();
6565

@@ -73,7 +73,7 @@ public void registerEnrichmentMap(EnrichmentMap map) {
7373
}
7474

7575
public Map<Long, EnrichmentMap> getAllEnrichmentMaps() {
76-
return Collections.unmodifiableMap(enrichmentMaps);
76+
return new LinkedHashMap<>(enrichmentMaps);
7777
}
7878

7979
public EnrichmentMap getEnrichmentMap(Long networkId) {

EnrichmentMapPlugin/src/main/java/org/baderlab/csplugins/enrichmentmap/view/control/ControlPanel.java

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,11 @@
1515
import java.awt.Dimension;
1616
import java.awt.Font;
1717
import java.net.URL;
18-
import java.text.Collator;
1918
import java.util.ArrayList;
19+
import java.util.Collection;
2020
import java.util.Collections;
2121
import java.util.HashMap;
2222
import java.util.List;
23-
import java.util.Locale;
2423
import java.util.Map;
2524
import java.util.Set;
2625
import java.util.stream.Collectors;
@@ -65,6 +64,8 @@
6564
import org.cytoscape.application.swing.CytoPanelComponent2;
6665
import org.cytoscape.application.swing.CytoPanelName;
6766
import org.cytoscape.model.CyDisposable;
67+
import org.cytoscape.model.CyNetwork;
68+
import org.cytoscape.model.CyNetworkManager;
6869
import org.cytoscape.service.util.CyServiceRegistrar;
6970
import org.cytoscape.util.swing.IconManager;
7071
import org.cytoscape.util.swing.LookAndFeelUtil;
@@ -83,6 +84,7 @@ public class ControlPanel extends JPanel implements CytoPanelComponent2, CyDispo
8384
private static final String BORDER_COLOR_KEY = "Separator.foreground";
8485

8586
@Inject private CyServiceRegistrar serviceRegistrar;
87+
@Inject private CyNetworkManager networkManager;
8688
@Inject private CyNetworkViewManager networkViewManager;
8789
@Inject private IconManager iconManager;
8890
@Inject private EnrichmentMapManager emManager;
@@ -291,14 +293,18 @@ void updateEmViewCombo() {
291293
getEmViewCombo().removeAllItems();
292294

293295
if (!emMap.isEmpty()) {
294-
Set<CyNetworkView> allViews = networkViewManager.getNetworkViewSet();
295-
List<CyNetworkView> emViews = allViews.stream()
296-
.filter(emManager::isEnrichmentMap)
297-
.collect(Collectors.toList());
298-
299-
Collator collator = Collator.getInstance(Locale.getDefault());
300-
emViews.sort((v1, v2) -> collator.compare(NetworkUtil.getTitle(v1), NetworkUtil.getTitle(v2)));
301-
emViews.forEach(getEmViewCombo()::addItem);
296+
emMap.entrySet().stream().forEach(entry -> {
297+
// To make sure the original view order is preserved
298+
// (networkViewManager.getNetworkViewSet() may change the view order!)
299+
CyNetwork network = networkManager.getNetwork(entry.getKey());
300+
301+
if (network != null) {
302+
Collection<CyNetworkView> views = networkViewManager.getNetworkViews(network);
303+
304+
if (views != null)
305+
views.forEach(getEmViewCombo()::addItem);
306+
}
307+
});
302308

303309
getEmViewCombo().setSelectedItem(selectedItem);
304310
}

0 commit comments

Comments
 (0)