Skip to content
Snippets Groups Projects
Commit 7f45b3e3 authored by Philipp Spohr's avatar Philipp Spohr
Browse files

Implemented listener for any changes and linked it with column mapper

parent 44e11a1a
No related branches found
No related tags found
No related merge requests found
...@@ -4,13 +4,20 @@ import java.util.Properties; ...@@ -4,13 +4,20 @@ import java.util.Properties;
import org.cytoscape.application.CyApplicationManager; import org.cytoscape.application.CyApplicationManager;
import org.cytoscape.application.swing.CytoPanelComponent; import org.cytoscape.application.swing.CytoPanelComponent;
import org.cytoscape.model.events.AddedEdgesListener;
import org.cytoscape.model.events.ColumnCreatedListener;
import org.cytoscape.model.events.ColumnDeletedListener;
import org.cytoscape.model.events.NetworkAddedListener;
import org.cytoscape.model.events.RemovedEdgesListener;
import org.cytoscape.service.util.AbstractCyActivator; import org.cytoscape.service.util.AbstractCyActivator;
import org.cytoscape.session.events.SessionLoadedListener;
import org.cytoscape.work.swing.DialogTaskManager; import org.cytoscape.work.swing.DialogTaskManager;
import org.osgi.framework.BundleContext; import org.osgi.framework.BundleContext;
import de.hhu.ba.yoshikoWrapper.core.ConfigurationManager; import de.hhu.ba.yoshikoWrapper.core.ConfigurationManager;
import de.hhu.ba.yoshikoWrapper.core.CyCore; import de.hhu.ba.yoshikoWrapper.core.CyCore;
import de.hhu.ba.yoshikoWrapper.core.LocalizationManager; import de.hhu.ba.yoshikoWrapper.core.LocalizationManager;
import de.hhu.ba.yoshikoWrapper.core.NetChangeListener;
import de.hhu.ba.yoshikoWrapper.core.YoshikoLoader; import de.hhu.ba.yoshikoWrapper.core.YoshikoLoader;
import de.hhu.ba.yoshikoWrapper.gui.MainPanel; import de.hhu.ba.yoshikoWrapper.gui.MainPanel;
import de.hhu.ba.yoshikoWrapper.gui.SolutionsPanel; import de.hhu.ba.yoshikoWrapper.gui.SolutionsPanel;
...@@ -52,6 +59,16 @@ public class CyActivator extends AbstractCyActivator { ...@@ -52,6 +59,16 @@ public class CyActivator extends AbstractCyActivator {
MainPanel mainPanel = new MainPanel(solutionsPanel); MainPanel mainPanel = new MainPanel(solutionsPanel);
registerService(context,mainPanel,CytoPanelComponent.class, new Properties()); registerService(context,mainPanel,CytoPanelComponent.class, new Properties());
registerService(context,solutionsPanel,CytoPanelComponent.class, new Properties()); registerService(context,solutionsPanel,CytoPanelComponent.class, new Properties());
//Listener for Network-Changes -> Updating possible columns for mapping
NetChangeListener netChangeListener = new NetChangeListener(mainPanel.getColumnMapper());
registerService(context,netChangeListener, NetworkAddedListener.class, new Properties());
registerService(context,netChangeListener, AddedEdgesListener.class, new Properties());
registerService(context,netChangeListener, RemovedEdgesListener.class, new Properties());
registerService(context,netChangeListener, ColumnCreatedListener.class, new Properties());
registerService(context,netChangeListener, ColumnDeletedListener.class, new Properties());
registerService(context,netChangeListener, SessionLoadedListener.class, new Properties());
} }
} }
package de.hhu.ba.yoshikoWrapper.core;
import org.cytoscape.model.events.AddedEdgesEvent;
import org.cytoscape.model.events.AddedEdgesListener;
import org.cytoscape.model.events.ColumnCreatedEvent;
import org.cytoscape.model.events.ColumnCreatedListener;
import org.cytoscape.model.events.ColumnDeletedEvent;
import org.cytoscape.model.events.ColumnDeletedListener;
import org.cytoscape.model.events.NetworkAddedEvent;
import org.cytoscape.model.events.NetworkAddedListener;
import org.cytoscape.model.events.RemovedEdgesEvent;
import org.cytoscape.model.events.RemovedEdgesListener;
import org.cytoscape.session.events.SessionLoadedEvent;
import org.cytoscape.session.events.SessionLoadedListener;
import de.hhu.ba.yoshikoWrapper.gui.ColumnMapper;
public class NetChangeListener
implements //everything
NetworkAddedListener,
AddedEdgesListener,
RemovedEdgesListener,
ColumnCreatedListener,
ColumnDeletedListener,
SessionLoadedListener
{
private ColumnMapper columnMapper;
public NetChangeListener(ColumnMapper columnMapper) {
this.columnMapper = columnMapper;
}
@Override
public void handleEvent(ColumnDeletedEvent e) {
columnMapper.updateValues();
}
@Override
public void handleEvent(ColumnCreatedEvent e) {
columnMapper.updateValues();
}
@Override
public void handleEvent(RemovedEdgesEvent e) {
columnMapper.updateValues();
}
@Override
public void handleEvent(AddedEdgesEvent e) {
columnMapper.updateValues();
}
@Override
public void handleEvent(NetworkAddedEvent e) {
columnMapper.updateValues();
}
@Override
public void handleEvent(SessionLoadedEvent e) {
columnMapper.updateValues();
}
}
...@@ -66,6 +66,10 @@ public class EditCostPanel extends ComfortPanel { ...@@ -66,6 +66,10 @@ public class EditCostPanel extends ComfortPanel {
return dcField.getValueAsDouble(); return dcField.getValueAsDouble();
} }
public ColumnMapper getColumnMapper() {
return columnMapper;
}
} }
...@@ -182,6 +182,10 @@ public class MainPanel extends ComfortPanel implements CytoPanelComponent { ...@@ -182,6 +182,10 @@ public class MainPanel extends ComfortPanel implements CytoPanelComponent {
} }
}; };
public ColumnMapper getColumnMapper() {
return ecPanel.getColumnMapper();
}
//GETTER / SETTER //GETTER / SETTER
...@@ -207,4 +211,6 @@ public class MainPanel extends ComfortPanel implements CytoPanelComponent { ...@@ -207,4 +211,6 @@ public class MainPanel extends ComfortPanel implements CytoPanelComponent {
//TODO: //TODO:
return null; return null;
} }
} }
...@@ -12,6 +12,9 @@ import org.cytoscape.application.swing.CytoPanelName; ...@@ -12,6 +12,9 @@ import org.cytoscape.application.swing.CytoPanelName;
import de.hhu.ba.yoshikoWrapper.core.LocalizationManager; import de.hhu.ba.yoshikoWrapper.core.LocalizationManager;
/**Swing component that contains ALL solutions that are found during one run.
* Conforms to CY 3.5 by being a CytoPanelComponent which is the norm for "result" panels
*/
@SuppressWarnings("serial")//Will never be serialized @SuppressWarnings("serial")//Will never be serialized
public class SolutionsPanel extends ComfortPanel implements CytoPanelComponent{ public class SolutionsPanel extends ComfortPanel implements CytoPanelComponent{
...@@ -36,6 +39,8 @@ public class SolutionsPanel extends ComfortPanel implements CytoPanelComponent{ ...@@ -36,6 +39,8 @@ public class SolutionsPanel extends ComfortPanel implements CytoPanelComponent{
public void setCost(double modificationCost) { public void setCost(double modificationCost) {
costLabel.setText(LocalizationManager.get("cost")+" "+modificationCost); costLabel.setText(LocalizationManager.get("cost")+" "+modificationCost);
revalidate();
repaint();
} }
public void reset() { public void reset() {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment