Index: applications/editors/josm/plugins/junctionchecking/src/org/openstreetmap/josm/plugins/JunctionChecker/JunctionCheckDialog.java
===================================================================
--- applications/editors/josm/plugins/junctionchecking/src/org/openstreetmap/josm/plugins/JunctionChecker/JunctionCheckDialog.java	(revision 27852)
+++ applications/editors/josm/plugins/junctionchecking/src/org/openstreetmap/josm/plugins/JunctionChecker/JunctionCheckDialog.java	(revision 27966)
@@ -4,12 +4,11 @@
 import static org.openstreetmap.josm.tools.I18n.tr;
 
-import java.awt.BorderLayout;
 import java.awt.GridLayout;
 import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
 import java.awt.event.KeyEvent;
 import java.util.Arrays;
 import java.util.Collection;
 
+import javax.swing.AbstractAction;
 import javax.swing.BoxLayout;
 import javax.swing.JCheckBox;
@@ -25,4 +24,5 @@
 import org.openstreetmap.josm.gui.SideButton;
 import org.openstreetmap.josm.gui.dialogs.ToggleDialog;
+import org.openstreetmap.josm.tools.ImageProvider;
 import org.openstreetmap.josm.tools.Shortcut;
 
@@ -30,5 +30,5 @@
  * @author  joerg
  */
-public class JunctionCheckDialog extends ToggleDialog implements ActionListener, SelectionChangedListener{
+public class JunctionCheckDialog extends ToggleDialog implements SelectionChangedListener{
 
 	private final JunctionCheckerPlugin plugin;
@@ -88,11 +88,42 @@
 
 		// ButtonPanel
-		createDigraphButton = new SideButton(marktr("Create"), "digraphcreation", tr ("start the channel digraph creation"),
-				tr("create the channel digraph"), this);
-		checkJunctionButton = new SideButton(marktr("Check "), "junctioncheck", tr("check a marked subset if it is a junction"),
-				tr("check the subust for junction properties"), this);
+		createDigraphButton = new SideButton(new AbstractAction() {
+			{
+				putValue(NAME, marktr("Create"));
+				putValue(SHORT_DESCRIPTION, tr("create the channel digraph"));
+				putValue(SMALL_ICON, ImageProvider.get("dialogs", "digraphcreation"));
+			}
+			@Override
+			public void actionPerformed(ActionEvent e) {
+					DigraphCreationTask dct = new DigraphCreationTask(plugin, digraphsealcb.isSelected(), sccCB.isSelected());
+					Main.worker.submit(dct);
+					setActivateJunctionCheckOrSearch(true);
+			}
+		});
+		checkJunctionButton = new SideButton(new AbstractAction() {
+			{
+				putValue(NAME, marktr("Check "));
+				putValue(SHORT_DESCRIPTION, tr("check the subust for junction properties"));
+				putValue(SMALL_ICON, ImageProvider.get("dialogs", "junctioncheck"));
+			}
+			@Override
+			public void actionPerformed(ActionEvent e) {
+				PrepareJunctionCheckorSearch pjc = new PrepareJunctionCheckorSearch(plugin, smodel.getNumber().intValue(), produceRelation.isSelected());
+				pjc.prepareJunctionCheck();
+			}
+		});
 		checkJunctionButton.setEnabled(false);
-		searchJunctionButton = new SideButton(marktr("Search "), "junctionsearch", tr ("search for junctions into a subset of channels"),
-				tr("search for junctions in the channel subset"), this);
+		searchJunctionButton = new SideButton(new AbstractAction() {
+			{
+				putValue(NAME, marktr("Search "));
+				putValue(SHORT_DESCRIPTION, tr("search for junctions in the channel subset"));
+				putValue(SMALL_ICON, ImageProvider.get("dialogs", "junctionsearch"));
+			}
+			@Override
+			public void actionPerformed(ActionEvent e) {
+				PrepareJunctionCheckorSearch pjc = new PrepareJunctionCheckorSearch(plugin, smodel.getNumber().intValue(), produceRelation.isSelected());
+				pjc.prepareJunctionSearch();
+			}
+		});
 		searchJunctionButton.setEnabled(false);
 
@@ -102,22 +133,4 @@
 	}
 
-
-	public void actionPerformed(ActionEvent e) {
-		String actionCommand = e.getActionCommand();
-		if (actionCommand.equals("Create")) {
-			DigraphCreationTask dct = new DigraphCreationTask(plugin, digraphsealcb.isSelected(), sccCB.isSelected());
-			Main.worker.submit(dct);
-			setActivateJunctionCheckOrSearch(true);
-		}
-		else if (actionCommand.equals("Check ")) {
-			PrepareJunctionCheckorSearch pjc = new PrepareJunctionCheckorSearch(plugin, smodel.getNumber().intValue(), produceRelation.isSelected());
-			pjc.prepareJunctionCheck();
-
-		}
-		else if (actionCommand.equals("Search ")) {
-			PrepareJunctionCheckorSearch pjc = new PrepareJunctionCheckorSearch(plugin, smodel.getNumber().intValue(), produceRelation.isSelected());
-			pjc.prepareJunctionSearch();
-		}
-	}
 
 	/**
@@ -143,4 +156,5 @@
 	}
 
+	@Override
 	public void selectionChanged(Collection<? extends OsmPrimitive> newSelection) {
 
