Search in sources :

Example 1 with RegisterNetworkTask

use of org.cytoscape.task.internal.network.RegisterNetworkTask in project cytoscape-impl by cytoscape.

the class CreateNetworkViewTask method run.

@Override
public void run(TaskMonitor tm) throws Exception {
    tm.setProgress(0.0);
    final Collection<CyNetwork> netList = network != null ? Collections.singletonList(network) : networks;
    final int total = netList.size();
    tm.setTitle("Creating Network View" + (total == 1 ? "" : "s"));
    tm.setStatusMessage("Creating " + total + " network view" + (total == 1 ? "" : "s") + "...");
    if (viewFactory == null && viewRenderers.size() > 1) {
        // Let the user choose the network view renderer first
        final ChooseViewRendererTask chooseRendererTask = new ChooseViewRendererTask(netList);
        insertTasksAfterCurrentTask(chooseRendererTask);
    } else {
        final CyNetwork curNet = appMgr.getCurrentNetwork();
        CyNetworkView curView = appMgr.getCurrentNetworkView();
        final VisualStyle style = vmMgr.getCurrentVisualStyle();
        int i = 0;
        int viewCount = netList.size();
        for (final CyNetwork n : netList) {
            // TODO Remove this check when multiple views per network is supported
            if (netViewMgr.viewExists(n))
                continue;
            final CyNetworkView view = createView(n, style, tm);
            networkViews.add(view);
            if (curView == null && n.equals(curNet))
                curView = view;
            tm.setStatusMessage("Network view successfully created for:  " + n.getRow(n).get(CyNetwork.NAME, String.class));
            i++;
            tm.setProgress((i / (double) viewCount));
        }
        final List<CyNetwork> selectedNetworks = appMgr.getSelectedNetworks();
        final List<CyNetworkView> selectedViews = new ArrayList<>(appMgr.getSelectedNetworkViews());
        boolean setSelectedViews = false;
        if (layoutMgr == null) {
            // Create network from selection?
            insertTasksAfterCurrentTask(new RegisterNetworkTask(networkViews.get(0), style, netMgr, vmMgr, appMgr, netViewMgr));
        } else {
            insertTasksAfterCurrentTask(new RegisterNetworkTask(networkViews, style, netMgr, vmMgr, appMgr, netViewMgr));
        }
    }
    tm.setProgress(1.0);
}
Also used : ArrayList(java.util.ArrayList) CyNetwork(org.cytoscape.model.CyNetwork) RegisterNetworkTask(org.cytoscape.task.internal.network.RegisterNetworkTask) VisualStyle(org.cytoscape.view.vizmap.VisualStyle) CyNetworkView(org.cytoscape.view.model.CyNetworkView)

Aggregations

ArrayList (java.util.ArrayList)1 CyNetwork (org.cytoscape.model.CyNetwork)1 RegisterNetworkTask (org.cytoscape.task.internal.network.RegisterNetworkTask)1 CyNetworkView (org.cytoscape.view.model.CyNetworkView)1 VisualStyle (org.cytoscape.view.vizmap.VisualStyle)1