Index: plugins/CommandLine/src/CommandLine/CommandLine.java
===================================================================
--- plugins/CommandLine/src/CommandLine/CommandLine.java	(revision 29753)
+++ plugins/CommandLine/src/CommandLine/CommandLine.java	(working copy)
@@ -190,7 +190,7 @@
 
         if ( Main.main.menu != null ) {
             commandMenu = Main.main.menu.addMenu(marktr("Commands") , KeyEvent.VK_M, Main.main.menu.defaultMenuPos, ht("/Plugin/CommandLine"));
-            MainMenu.add(Main.main.menu.toolsMenu, new CommandLineAction(this));
+            MainMenu.add(commandMenu, new CommandLineAction(this));
         }
         loadCommands();
         setMode(Mode.IDLE);
Index: plugins/Create_grid_of_ways/src/CreateGridOfWaysPlugin/CreateGridOfWaysPlugin.java
===================================================================
--- plugins/Create_grid_of_ways/src/CreateGridOfWaysPlugin/CreateGridOfWaysPlugin.java	(revision 29753)
+++ plugins/Create_grid_of_ways/src/CreateGridOfWaysPlugin/CreateGridOfWaysPlugin.java	(working copy)
@@ -8,6 +8,6 @@
 public class CreateGridOfWaysPlugin extends Plugin {
     public CreateGridOfWaysPlugin(PluginInformation info) {
         super(info);
-        MainMenu.add(Main.main.menu.toolsMenu, new CreateGridOfWaysAction());
+        MainMenu.add(Main.main.menu.moreToolsMenu, new CreateGridOfWaysAction());
     }
 }
Index: plugins/DirectDownload/src/org/openstreetmap/josm/plugins/directdownload/DirectDownload.java
===================================================================
--- plugins/DirectDownload/src/org/openstreetmap/josm/plugins/directdownload/DirectDownload.java	(revision 29753)
+++ plugins/DirectDownload/src/org/openstreetmap/josm/plugins/directdownload/DirectDownload.java	(working copy)
@@ -40,7 +40,7 @@
          super(info);
 
 	 openaction = new DownloadAction();
-	 Main.main.menu.fileMenu.add(openaction);
+	 Main.main.menu.gpsMenu.add(openaction);
       }
 
     class DownloadAction extends JosmAction{
Index: plugins/DirectUpload/src/org/openstreetmap/josm/plugins/DirectUpload/UploadDataGuiPlugin.java
===================================================================
--- plugins/DirectUpload/src/org/openstreetmap/josm/plugins/DirectUpload/UploadDataGuiPlugin.java	(revision 29753)
+++ plugins/DirectUpload/src/org/openstreetmap/josm/plugins/DirectUpload/UploadDataGuiPlugin.java	(working copy)
@@ -28,7 +28,7 @@
     public UploadDataGuiPlugin(PluginInformation info) {
         super(info);
         openaction = new UploadAction();
-        Main.main.menu.toolsMenu.add(openaction);
+        Main.main.menu.gpsMenu.add(openaction);
     }
 
     class UploadAction extends JosmAction {
Index: plugins/FixAddresses/src/org/openstreetmap/josm/plugins/fixAddresses/FixAddressesPlugin.java
===================================================================
--- plugins/FixAddresses/src/org/openstreetmap/josm/plugins/fixAddresses/FixAddressesPlugin.java	(revision 29753)
+++ plugins/FixAddresses/src/org/openstreetmap/josm/plugins/fixAddresses/FixAddressesPlugin.java	(working copy)
@@ -40,9 +40,9 @@
 		SelectIncompleteAddressesAction incAddrAction = new SelectIncompleteAddressesAction();
 
 		// ... and add them to the tools menu in main
-		Main.main.menu.toolsMenu.addSeparator();
-		Main.main.menu.toolsMenu.add(action);
-		Main.main.menu.toolsMenu.add(incAddrAction);
+		Main.main.menu.dataMenu.addSeparator();
+		Main.main.menu.dataMenu.add(action);
+		Main.main.menu.dataMenu.add(incAddrAction);
 
 		// create preferences instance
 		preferences = (FixAddressesPreferences) new FixAddressesPreferences.Factory().createPreferenceSetting();
Index: plugins/HouseNumberTaggingTool/src/org/openstreetmap/josm/plugins/housenumbertool/HouseNumberTaggingToolPlugin.java
===================================================================
--- plugins/HouseNumberTaggingTool/src/org/openstreetmap/josm/plugins/housenumbertool/HouseNumberTaggingToolPlugin.java	(revision 29753)
+++ plugins/HouseNumberTaggingTool/src/org/openstreetmap/josm/plugins/housenumbertool/HouseNumberTaggingToolPlugin.java	(working copy)
@@ -16,6 +16,6 @@
    {
       super(info);
       action = new LaunchAction(getPluginDir());
-      MainMenu.add(Main.main.menu.editMenu, action);
+      MainMenu.add(Main.main.menu.dataMenu, action);
    }
 }
Index: plugins/OpeningHoursEditor/src/org/openstreetmap/josm/plugins/ohe/OhePlugin.java
===================================================================
--- plugins/OpeningHoursEditor/src/org/openstreetmap/josm/plugins/ohe/OhePlugin.java	(revision 29753)
+++ plugins/OpeningHoursEditor/src/org/openstreetmap/josm/plugins/ohe/OhePlugin.java	(working copy)
@@ -72,7 +72,7 @@
      */
     public OhePlugin(PluginInformation info) {
         super(info);
-        MainMenu.add(Main.main.menu.toolsMenu, new OheMenuAction());
+        MainMenu.add(Main.main.menu.dataMenu, new OheMenuAction());
     }
 
     /**
Index: plugins/addrinterpolation/src/org/openstreetmap/josm/plugins/AddrInterpolation/AddrInterpolationPlugin.java
===================================================================
--- plugins/addrinterpolation/src/org/openstreetmap/josm/plugins/AddrInterpolation/AddrInterpolationPlugin.java	(revision 29753)
+++ plugins/addrinterpolation/src/org/openstreetmap/josm/plugins/AddrInterpolation/AddrInterpolationPlugin.java	(working copy)
@@ -16,6 +16,6 @@
     public AddrInterpolationPlugin(PluginInformation info) {
         super(info);
         action = new AddrInterpolationAction();
-        Main.main.menu.toolsMenu.add(action);
+        Main.main.menu.dataMenu.add(action);
     }
 }
Index: plugins/alignways/src/com/tilusnet/josm/plugins/alignways/AlignWaysPlugin.java
===================================================================
--- plugins/alignways/src/com/tilusnet/josm/plugins/alignways/AlignWaysPlugin.java	(revision 29753)
+++ plugins/alignways/src/com/tilusnet/josm/plugins/alignways/AlignWaysPlugin.java	(working copy)
@@ -30,9 +30,9 @@
         super(info);
         
         // Add the action entries to the Tools Menu
-        Main.main.menu.toolsMenu.addSeparator();
+        Main.main.menu.moreToolsMenu.addSeparator();
         awAction = new AlignWaysAction();
-        MainMenu.add(Main.main.menu.toolsMenu, awAction);
+        MainMenu.add(Main.main.menu.moreToolsMenu, awAction);
     }
 
     @Override
Index: plugins/buildings_tools/src/buildings_tools/BuildingsToolsPlugin.java
===================================================================
--- plugins/buildings_tools/src/buildings_tools/BuildingsToolsPlugin.java	(revision 29753)
+++ plugins/buildings_tools/src/buildings_tools/BuildingsToolsPlugin.java	(working copy)
@@ -25,7 +25,7 @@
     public BuildingsToolsPlugin(PluginInformation info) {
         super(info);
         Main.main.menu.editMenu.addSeparator();
-        MainMenu.add(Main.main.menu.editMenu, new BuildingSizeAction());
+        MainMenu.add(Main.main.menu.dataMenu, new BuildingSizeAction());
     }
 
     @Override
Index: plugins/czechaddress/src/org/openstreetmap/josm/plugins/czechaddress/CzechAddressPlugin.java
===================================================================
--- plugins/czechaddress/src/org/openstreetmap/josm/plugins/czechaddress/CzechAddressPlugin.java	(revision 29753)
+++ plugins/czechaddress/src/org/openstreetmap/josm/plugins/czechaddress/CzechAddressPlugin.java	(working copy)
@@ -105,7 +105,7 @@
         boolean assertionsEnabled = true;
         if (assertionsEnabled) initLoggers();
 
-        MainMenu.add(Main.main.menu.toolsMenu, new SplitAreaByEmptyWayAction());
+        MainMenu.add(Main.main.menu.moreToolsMenu, new SplitAreaByEmptyWayAction());
 
         // Prepare for filling the database.
         final MvcrParser parser = new MvcrParser();
Index: plugins/download_along/src/org/openstreetmap/josm/plugin/download_along/DownloadAlong.java
===================================================================
--- plugins/download_along/src/org/openstreetmap/josm/plugin/download_along/DownloadAlong.java	(revision 29753)
+++ plugins/download_along/src/org/openstreetmap/josm/plugin/download_along/DownloadAlong.java	(working copy)
@@ -9,6 +9,6 @@
 
 	public DownloadAlong(PluginInformation info) {
 		super(info);
-		MainMenu.add(Main.main.menu.toolsMenu, new DownloadAlongWayAction());
+		MainMenu.add(Main.main.menu.moreToolsMenu, new DownloadAlongWayAction());
 	}
 }
Index: plugins/geochat/src/geochat/ChatServerConnection.java
===================================================================
--- plugins/geochat/src/geochat/ChatServerConnection.java	(revision 29753)
+++ plugins/geochat/src/geochat/ChatServerConnection.java	(working copy)
@@ -295,7 +295,7 @@
     }
 
     private class LogRequest implements Runnable {
-        private static final int MAX_JUMP = 20000; // in meters
+        private static final int MAX_JUMP = Main.pref.getInteger("geochat.maxRadius", 20000); // in meters
         private LatLon lastPosition = null;
         private long lastUserId = 0;
         private long lastId = 0;
Index: plugins/geochat/src/geochat/GeoChatPanel.java
===================================================================
--- plugins/geochat/src/geochat/GeoChatPanel.java	(revision 29753)
+++ plugins/geochat/src/geochat/GeoChatPanel.java	(working copy)
@@ -34,6 +34,7 @@
     protected Map<String, LatLon> users;
     protected ChatPaneManager chatPanes;
     protected boolean userLayerActive;
+    private int fontSize = Main.pref.getInteger("geochat.fontsize", 8);
     
     public GeoChatPanel() {
         super(tr("GeoChat"), "geochat", tr("Open GeoChat panel"), null, 200, true);
Index: plugins/gpxfilter/src/gpxfilter/GpxFilterPlugin.java
===================================================================
--- plugins/gpxfilter/src/gpxfilter/GpxFilterPlugin.java	(revision 29753)
+++ plugins/gpxfilter/src/gpxfilter/GpxFilterPlugin.java	(working copy)
@@ -9,7 +9,7 @@
 
     public GpxFilterPlugin(PluginInformation info) {
         super(info);
-        MainMenu.add(Main.main.menu.toolsMenu, new AddEGpxLayerAction());
+        MainMenu.add(Main.main.menu.gpsMenu, new AddEGpxLayerAction());
     }
 
 }
Index: plugins/imagewaypoint/src/org/insignificant/josm/plugins/imagewaypoint/ImageWayPointPlugin.java
===================================================================
--- plugins/imagewaypoint/src/org/insignificant/josm/plugins/imagewaypoint/ImageWayPointPlugin.java	(revision 29753)
+++ plugins/imagewaypoint/src/org/insignificant/josm/plugins/imagewaypoint/ImageWayPointPlugin.java	(working copy)
@@ -98,7 +98,7 @@
         super(info);
 
         MainMenu menu = Main.main.menu;
-        menu.add(menu.fileMenu, new LoadImagesAction(this));
+        menu.add(menu.dataMenu, new LoadImagesAction(this));
     }
 
     @Override
Index: plugins/infomode/nbproject/private/private.xml
===================================================================
--- plugins/infomode/nbproject/private/private.xml	(revision 29753)
+++ plugins/infomode/nbproject/private/private.xml	(working copy)
@@ -1,4 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project-private xmlns="http://www.netbeans.org/ns/project-private/1">
     <editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/1"/>
+    <editor-bookmarks xmlns="http://www.netbeans.org/ns/editor-bookmarks/2" lastBookmarkId="0"/>
+    <open-files xmlns="http://www.netbeans.org/ns/projectui-open-files/1">
+        <file>file:/E:/Ak/Programming/Josm_SVN/plugins/infomode/src/org/openstreetmap/josm/plugins/infomode/InfoMode.java</file>
+        <file>file:/E:/Ak/Programming/Josm_SVN/plugins/infomode/src/org/openstreetmap/josm/plugins/infomode/InfoPanel.java</file>
+        <file>file:/E:/Ak/Programming/Josm_SVN/plugins/infomode/src/org/openstreetmap/josm/plugins/infomode/InfoModePlugin.java</file>
+    </open-files>
 </project-private>
Index: plugins/lakewalker/src/org/openstreetmap/josm/plugins/lakewalker/LakewalkerPlugin.java
===================================================================
--- plugins/lakewalker/src/org/openstreetmap/josm/plugins/lakewalker/LakewalkerPlugin.java	(revision 29753)
+++ plugins/lakewalker/src/org/openstreetmap/josm/plugins/lakewalker/LakewalkerPlugin.java	(working copy)
@@ -16,7 +16,7 @@
 public class LakewalkerPlugin extends Plugin {
     public LakewalkerPlugin(PluginInformation info) {
         super(info);
-        MainMenu.add(Main.main.menu.toolsMenu, new LakewalkerAction(tr("Lake Walker")));
+        MainMenu.add(Main.main.menu.moreToolsMenu, new LakewalkerAction(tr("Lake Walker")));
     }
 
     @Override
Index: plugins/livegps/src/livegps/LiveGpsPlugin.java
===================================================================
--- plugins/livegps/src/livegps/LiveGpsPlugin.java	(revision 29753)
+++ plugins/livegps/src/livegps/LiveGpsPlugin.java	(working copy)
@@ -109,8 +109,7 @@
     public LiveGpsPlugin(PluginInformation info) {
         super(info);
         MainMenu menu = Main.main.menu;
-        lgpsmenu = menu.addMenu(marktr("LiveGPS"), KeyEvent.VK_G,
-                menu.defaultMenuPos, ht("/Plugin/LiveGPS"));
+        lgpsmenu = menu.gpsMenu;
 
         JosmAction captureAction = new CaptureAction();
         lgpscapture = new JCheckBoxMenuItem(captureAction);
Index: plugins/merge-overlap/src/mergeoverlap/MergeOverlapPlugin.java
===================================================================
--- plugins/merge-overlap/src/mergeoverlap/MergeOverlapPlugin.java	(revision 29753)
+++ plugins/merge-overlap/src/mergeoverlap/MergeOverlapPlugin.java	(working copy)
@@ -19,21 +19,12 @@
         public MergeOverlapPlugin(PluginInformation info) {
         super(info);
         name = tr("Merge overlap", null);
-        JMenu toolsMenu = null;
-        for (int i = 0; i < Main.main.menu.getMenuCount() && toolsMenu == null; i++) {
-            JMenu menu = Main.main.menu.getMenu(i);
-            String name = menu.getText();
-            if (name != null && name.equals(tr("Tools", null))) {
-                toolsMenu = menu;
-            }
-        }
-
+        JMenu toolsMenu = Main.main.menu.moreToolsMenu;
         if (toolsMenu == null) {
             toolsMenu = new JMenu(name);
             toolsMenu.add(new JMenuItem(new MergeOverlapAction()));
             Main.main.menu.add(toolsMenu, 2);
         } else {
-            toolsMenu.addSeparator();
             toolsMenu.add(new JMenuItem(new MergeOverlapAction()));
         }
     }
Index: plugins/michigan_left/src/MichiganLeft/MichiganLeft.java
===================================================================
--- plugins/michigan_left/src/MichiganLeft/MichiganLeft.java	(revision 29753)
+++ plugins/michigan_left/src/MichiganLeft/MichiganLeft.java	(working copy)
@@ -33,7 +33,7 @@
 
   public MichiganLeft(PluginInformation info) {
     super(info);
-    MichiganLeft = MainMenu.add(Main.main.menu.toolsMenu,
+    MichiganLeft = MainMenu.add(Main.main.menu.dataMenu,
         new MichiganLeftAction());
 
   }
Index: plugins/namemanager/src/org/openstreetmap/josm/plugins/namemanager/NameManagerPlugin.java
===================================================================
--- plugins/namemanager/src/org/openstreetmap/josm/plugins/namemanager/NameManagerPlugin.java	(revision 29753)
+++ plugins/namemanager/src/org/openstreetmap/josm/plugins/namemanager/NameManagerPlugin.java	(working copy)
@@ -15,7 +15,7 @@
 public class NameManagerPlugin extends Plugin {
     public NameManagerPlugin(PluginInformation info) {
         super(info);
-        MainMenu.add(Main.main.menu.toolsMenu, new NameManagerAction());
+        MainMenu.add(Main.main.menu.dataMenu, new NameManagerAction());
     }
 }
 
Index: plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/OdPlugin.java
===================================================================
--- plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/OdPlugin.java	(revision 29753)
+++ plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/OdPlugin.java	(working copy)
@@ -95,7 +95,8 @@
         // Load modules
         loadModules();
         // Add menu
-        menu = Main.main.menu.addMenu(marktr("Open Data"), KeyEvent.VK_O, Main.main.menu.defaultMenuPos, ht("/Plugin/OpenData"));
+        menu = Main.main.menu.dataMenu;
+	//ht("/Plugin/OpenData"));
         buildMenu();
         // Add download task
         Main.main.menu.openLocation.addDownloadTaskClass(DownloadDataTask.class);
Index: plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/actions/OpenPreferencesActions.java
===================================================================
--- plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/actions/OpenPreferencesActions.java	(revision 29753)
+++ plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/actions/OpenPreferencesActions.java	(working copy)
@@ -30,7 +30,7 @@
 	
     public OpenPreferencesActions() {
     	super(false);
-        putValue(NAME, tr("Preferences"));
+        putValue(NAME, tr("OpenData preferences"));
         putValue(SMALL_ICON, ImageProvider.get("dialogs", ICON_CORE_24));
 		putValue("toolbar", "opendata_open_preferences");
     }
Index: plugins/openvisible/src/at/dallermassl/josm/plugin/openvisible/OpenVisiblePlugin.java
===================================================================
--- plugins/openvisible/src/at/dallermassl/josm/plugin/openvisible/OpenVisiblePlugin.java	(revision 29753)
+++ plugins/openvisible/src/at/dallermassl/josm/plugin/openvisible/OpenVisiblePlugin.java	(working copy)
@@ -16,7 +16,7 @@
 
     public OpenVisiblePlugin(PluginInformation info) {
         super(info);
-        MainMenu.add(Main.main.menu.fileMenu, new OpenVisibleAction());
+        MainMenu.add(Main.main.menu.gpsMenu, new OpenVisibleAction());
     }
 
 }
Index: plugins/pdfimport/src/pdfimport/PdfImportPlugin.java
===================================================================
--- plugins/pdfimport/src/pdfimport/PdfImportPlugin.java	(revision 29753)
+++ plugins/pdfimport/src/pdfimport/PdfImportPlugin.java	(working copy)
@@ -19,14 +19,7 @@
 	public PdfImportPlugin(PluginInformation info) {
 		super(info);
 		name = tr("Import PDf file");
-		JMenu toolsMenu = null;
-		for (int i = 0; i < Main.main.menu.getMenuCount() && toolsMenu == null; i++) {
-			JMenu menu = Main.main.menu.getMenu(i);
-			String name = menu.getText();
-			if (name != null && name.equals(tr("Tools"))) {
-				toolsMenu = menu;
-			}
-		}
+		JMenu toolsMenu = Main.main.menu.imageryMenu;
 
 		if (toolsMenu == null) {
 			toolsMenu = new JMenu(name);
@@ -33,7 +26,6 @@
 			toolsMenu.add(new JMenuItem(new PdfImportAction()));
 			Main.main.menu.add(toolsMenu, 2);
 		} else {
-			toolsMenu.addSeparator();
 			toolsMenu.add(new JMenuItem(new PdfImportAction()));
 		}
 	}
Index: plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/PicLayerPlugin.java
===================================================================
--- plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/PicLayerPlugin.java	(revision 29753)
+++ plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/PicLayerPlugin.java	(working copy)
@@ -73,7 +73,8 @@
 
         // Create menu entry
         if ( Main.main.menu != null ) {
-            menu = Main.main.menu.addMenu(marktr("PicLayer") , KeyEvent.VK_L, Main.main.menu.defaultMenuPos, ht("/Plugin/PicLayer"));
+            menu = Main.main.menu.imageryMenu;
+           //ht("/Plugin/PicLayer"));
         }
 
         // Add menu items
@@ -80,7 +81,7 @@
         if ( menu != null ) {
             menu.add(new NewLayerFromFileAction());
             menu.add(new NewLayerFromClipboardAction());
-            menu.setEnabled(false);
+//            menu.setEnabled(false);
         }
 
         // Listen to layers
@@ -153,7 +154,7 @@
      */
     @Override
     public void layerAdded(Layer arg0) {
-        menu.setEnabled(true);
+  //      menu.setEnabled(true);
     }
 
     /**
@@ -169,7 +170,7 @@
                 new SavePictureCalibrationAction((PicLayerAbstract) arg0).actionPerformed(null);
         }
         // Why should I do all these checks now?
-        boolean enable = Main.map != null && Main.map.mapView != null && Main.map.mapView.getAllLayers() != null && Main.map.mapView.getAllLayers().size() != 0;
-        menu.setEnabled(enable);
+//        boolean enable = Main.map != null && Main.map.mapView != null && Main.map.mapView.getAllLayers() != null && Main.map.mapView.getAllLayers().size() != 0;
+//        menu.setEnabled(enable);
     }
 };
Index: plugins/reverter/src/reverter/ReverterPlugin.java
===================================================================
--- plugins/reverter/src/reverter/ReverterPlugin.java	(revision 29753)
+++ plugins/reverter/src/reverter/ReverterPlugin.java	(working copy)
@@ -18,10 +18,10 @@
     static boolean reverterUsed = false;
     public ReverterPlugin(PluginInformation info) {
         super(info);
-        JMenu historyMenu = Main.main.menu.addMenu(marktr("History"), KeyEvent.VK_Y,
-                Main.main.menu.defaultMenuPos,ht("/Plugin/Reverter"));
-        //MainMenu.add(historyMenu, new ObjectsHistoryAction());
-        MainMenu.add(historyMenu, new RevertChangesetAction());
+//        JMenu historyMenu = Main.main.menu.addMenu(marktr("History"), KeyEvent.VK_Y,
+//                Main.main.menu.defaultMenuPos,ht("/Plugin/Reverter"));
+//        MainMenu.add(historyMenu, new ObjectsHistoryAction());
+        MainMenu.add(Main.main.menu.dataMenu, new RevertChangesetAction());
         UploadAction.registerUploadHook(new ReverterUploadHook(this));
         new RemoteControl().addRequestHandler(RevertChangesetHandler.command, RevertChangesetHandler.class);
     }
Index: plugins/simplifyarea/src/sk/zdila/josm/plugin/simplify/SimplifyAreaPlugin.java
===================================================================
--- plugins/simplifyarea/src/sk/zdila/josm/plugin/simplify/SimplifyAreaPlugin.java	(revision 29753)
+++ plugins/simplifyarea/src/sk/zdila/josm/plugin/simplify/SimplifyAreaPlugin.java	(working copy)
@@ -10,7 +10,7 @@
 
     public SimplifyAreaPlugin(final PluginInformation info) {
         super(info);
-        MainMenu.add(Main.main.menu.toolsMenu, new SimplifyAreaAction());
+        MainMenu.add(Main.main.menu.moreToolsMenu, new SimplifyAreaAction());
     }
 
     @Override
Index: plugins/smed/src/smed/Smed.java
===================================================================
--- plugins/smed/src/smed/Smed.java	(revision 29753)
+++ plugins/smed/src/smed/Smed.java	(working copy)
@@ -134,7 +134,7 @@
         }
         
         smedTab = new SmedTabAction();
-        item = Main.main.menu.toolsMenu.add(smedTab);
+        item = Main.main.menu.dataMenu.add(smedTab);
         smedTab.setOsmItem(item);
         
         item.setEnabled(false);
Index: plugins/smed2/src/smed2/Smed2.java
===================================================================
--- plugins/smed2/src/smed2/Smed2.java	(revision 29753)
+++ plugins/smed2/src/smed2/Smed2.java	(working copy)
@@ -9,6 +9,6 @@
 
 	public Smed2(PluginInformation info) {
         super(info);
-        MainMenu.add(Main.main.menu.toolsMenu, new Smed2Action());
+        MainMenu.add(Main.main.menu.dataMenu, new Smed2Action());
     }
 }
Index: plugins/terracer/src/terracer/TerracerPlugin.java
===================================================================
--- plugins/terracer/src/terracer/TerracerPlugin.java	(revision 29753)
+++ plugins/terracer/src/terracer/TerracerPlugin.java	(working copy)
@@ -21,7 +21,7 @@
     public TerracerPlugin(PluginInformation info) {
         super(info);
 
-        MainMenu.add(Main.main.menu.toolsMenu, new TerracerAction());
-        MainMenu.add(Main.main.menu.toolsMenu, new ReverseTerraceAction());
+        MainMenu.add(Main.main.menu.moreToolsMenu, new TerracerAction());
+        MainMenu.add(Main.main.menu.moreToolsMenu, new ReverseTerraceAction());
     }
 }
Index: plugins/tracer/src/org/openstreetmap/josm/plugins/tracer/TracerPlugin.java
===================================================================
--- plugins/tracer/src/org/openstreetmap/josm/plugins/tracer/TracerPlugin.java	(revision 29753)
+++ plugins/tracer/src/org/openstreetmap/josm/plugins/tracer/TracerPlugin.java	(working copy)
@@ -15,7 +15,7 @@
 
     public TracerPlugin(PluginInformation info) {
         super(info);
-        MainMenu.add(Main.main.menu.toolsMenu, new TracerAction(Main.map));
+        MainMenu.add(Main.main.menu.moreToolsMenu, new TracerAction(Main.map));
     }
 
 }
Index: plugins/utilsplugin2/src/org/openstreetmap/josm/plugins/utilsplugin2/UtilsPlugin2.java
===================================================================
--- plugins/utilsplugin2/src/org/openstreetmap/josm/plugins/utilsplugin2/UtilsPlugin2.java	(revision 29753)
+++ plugins/utilsplugin2/src/org/openstreetmap/josm/plugins/utilsplugin2/UtilsPlugin2.java	(working copy)
@@ -71,7 +71,7 @@
     public UtilsPlugin2(PluginInformation info) {
         super(info);
 
-        JMenu toolsMenu = Main.main.menu.addMenu(marktr("More tools"), KeyEvent.VK_Q, 4, "help");
+        JMenu toolsMenu = Main.main.menu.moreToolsMenu;
         unglueRelation = MainMenu.add(toolsMenu, new UnGlueRelationAction());
         addIntersections = MainMenu.add(toolsMenu, new AddIntersectionsAction());
         splitObject = MainMenu.add(toolsMenu, new SplitObjectAction());
@@ -85,10 +85,11 @@
         splitOnIntersections = MainMenu.add(toolsMenu, new SplitOnIntersectionsAction());
         extractPoint = MainMenu.add(toolsMenu, new ExtractPointAction());
         symmetry = MainMenu.add(toolsMenu, new SymmetryAction());
-        wiki = MainMenu.add(toolsMenu, new OpenPageAction());
+        wiki = MainMenu.add(Main.main.menu.dataMenu, new OpenPageAction());
         latlon = MainMenu.add(toolsMenu, new LatLonAction());
 
-        JMenu selectionMenu = Main.main.menu.addMenu(marktr("Selection"), KeyEvent.VK_N, Main.main.menu.defaultMenuPos, "help");
+        JMenu selectionMenu = Main.main.menu.selectionMenu;
+	selectionMenu.addSeparator();
         selectWayNodes = MainMenu.add(selectionMenu, new SelectWayNodesAction());
         adjNodes = MainMenu.add(selectionMenu, new AdjacentNodesAction());
         unsNodes = MainMenu.add(selectionMenu, new UnselectNodesAction());
@@ -104,7 +105,7 @@
         selectHighway = MainMenu.add(selectionMenu, new SelectHighwayAction());
         selectAreaBoundary = MainMenu.add(selectionMenu, new SelectBoundaryAction());
         
-        selectURL = MainMenu.add(toolsMenu, new ChooseURLAction());
+        selectURL = MainMenu.add(Main.main.menu.dataMenu, new ChooseURLAction());
 	drawArc = MainMenu.add(toolsMenu, new CurveAction());
 
         // register search operators
Index: plugins/walkingpapers/src/org/openstreetmap/josm/plugins/walkingpapers/WalkingPapersPlugin.java
===================================================================
--- plugins/walkingpapers/src/org/openstreetmap/josm/plugins/walkingpapers/WalkingPapersPlugin.java	(revision 29753)
+++ plugins/walkingpapers/src/org/openstreetmap/josm/plugins/walkingpapers/WalkingPapersPlugin.java	(working copy)
@@ -27,7 +27,8 @@
     {
         super(info);
         MainMenu menu = Main.main.menu;
-        walkingPapersMenu = menu.addMenu(marktr("Walking Papers"), KeyEvent.VK_K, menu.defaultMenuPos, ht("/Plugin/WalkingPapers"));
+        walkingPapersMenu = menu.imageryMenu;
+         // ht("/Plugin/WalkingPapers"));
         walkingPapersMenu.add(new JMenuItem(new WalkingPapersAddLayerAction()));
     }
 }
Index: plugins/waydownloader/src/org/openstreetmap/josm/plugins/waydownloader/WayDownloaderPlugin.java
===================================================================
--- plugins/waydownloader/src/org/openstreetmap/josm/plugins/waydownloader/WayDownloaderPlugin.java	(revision 29753)
+++ plugins/waydownloader/src/org/openstreetmap/josm/plugins/waydownloader/WayDownloaderPlugin.java	(working copy)
@@ -46,7 +46,7 @@
     public WayDownloaderPlugin(PluginInformation info) {
         super(info);
         //add WayDownloadAction to tools menu
-        MainMenu.add(Main.main.menu.toolsMenu, new WayDownloadAction());
+        MainMenu.add(Main.main.menu.moreToolsMenu, new WayDownloadAction());
     }
 
     private class WayDownloadAction extends JosmAction implements Runnable {
Index: plugins/wayselector/src/org/openstreetmap/josm/plugins/wayselector/WaySelectorPlugin.java
===================================================================
--- plugins/wayselector/src/org/openstreetmap/josm/plugins/wayselector/WaySelectorPlugin.java	(revision 29753)
+++ plugins/wayselector/src/org/openstreetmap/josm/plugins/wayselector/WaySelectorPlugin.java	(working copy)
@@ -27,7 +27,7 @@
     public WaySelectorPlugin(PluginInformation info) {
         super(info);
 
-        MainMenu.add(Main.main.menu.toolsMenu, new WaySelectAction());
+        MainMenu.add(Main.main.menu.selectionMenu, new WaySelectAction());
     }
 
     private class WaySelectAction extends JosmAction {
Index: plugins/wikipedia/src/org/wikipedia/WikipediaAddNamesAction.java
===================================================================
--- plugins/wikipedia/src/org/wikipedia/WikipediaAddNamesAction.java	(revision 29753)
+++ plugins/wikipedia/src/org/wikipedia/WikipediaAddNamesAction.java	(working copy)
@@ -9,6 +9,7 @@
 import java.util.Collection;
 import java.util.List;
 import java.util.Locale;
+import java.util.TreeMap;
 import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.actions.JosmAction;
 import org.openstreetmap.josm.data.osm.OsmPrimitive;
Index: plugins/wikipedia/src/org/wikipedia/WikipediaPlugin.java
===================================================================
--- plugins/wikipedia/src/org/wikipedia/WikipediaPlugin.java	(revision 29753)
+++ plugins/wikipedia/src/org/wikipedia/WikipediaPlugin.java	(working copy)
@@ -12,7 +12,7 @@
     public WikipediaPlugin(PluginInformation info) {
         super(info);
         new WikipediaCopyTemplate();
-        MainMenu.add(Main.main.menu.toolsMenu, new WikipediaAddNamesAction());
+        MainMenu.add(Main.main.menu.dataMenu, new WikipediaAddNamesAction());
     }
 
     @Override
