Index: trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/ButtonMarker.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/ButtonMarker.java	(revision 16877)
+++ trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/ButtonMarker.java	(revision 16879)
@@ -2,5 +2,5 @@
 package org.openstreetmap.josm.gui.layer.markerlayer;
 
-import java.awt.Graphics;
+import java.awt.Graphics2D;
 import java.awt.Insets;
 import java.awt.Point;
@@ -44,5 +44,5 @@
     }
 
-    @Override public void paint(Graphics g, MapView mv, boolean mousePressed, boolean showTextOrIcon) {
+    @Override public void paint(Graphics2D g, MapView mv, boolean mousePressed, boolean showTextOrIcon) {
         if (!showTextOrIcon) {
             super.paint(g, mv, mousePressed, showTextOrIcon);
Index: trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/Marker.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/Marker.java	(revision 16877)
+++ trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/Marker.java	(revision 16879)
@@ -7,4 +7,5 @@
 import java.awt.Graphics2D;
 import java.awt.Point;
+import java.awt.Stroke;
 import java.awt.event.ActionEvent;
 import java.awt.image.BufferedImage;
@@ -268,16 +269,21 @@
      * @param showTextOrIcon true if text and icon shall be drawn
      */
-    public void paint(Graphics g, MapView mv, boolean mousePressed, boolean showTextOrIcon) {
+    public void paint(Graphics2D g, MapView mv, boolean mousePressed, boolean showTextOrIcon) {
         Point screen = mv.getPoint(this);
+        int size2 = parentLayer.markerSize / 2;
+
         if (symbol != null && showTextOrIcon) {
             paintIcon(mv, g, screen.x-symbol.getIconWidth()/2, screen.y-symbol.getIconHeight()/2);
         } else {
-            g.drawLine(screen.x-2, screen.y-2, screen.x+2, screen.y+2);
-            g.drawLine(screen.x+2, screen.y-2, screen.x-2, screen.y+2);
+            Stroke stroke = g.getStroke();
+            g.setStroke(parentLayer.markerStroke);
+            g.drawLine(screen.x - size2, screen.y - size2, screen.x + size2, screen.y + size2);
+            g.drawLine(screen.x + size2, screen.y - size2, screen.x - size2, screen.y + size2);
+            g.setStroke(stroke);
         }
 
         String labelText = getText();
         if (!labelText.isEmpty() && showTextOrIcon) {
-            g.drawString(labelText, screen.x+4, screen.y+2);
+            g.drawString(labelText, screen.x + size2 + 2, screen.y + size2);
         }
     }
Index: trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/MarkerLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/MarkerLayer.java	(revision 16877)
+++ trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/MarkerLayer.java	(revision 16879)
@@ -7,4 +7,5 @@
 import static org.openstreetmap.josm.tools.I18n.trn;
 
+import java.awt.BasicStroke;
 import java.awt.Color;
 import java.awt.Component;
@@ -38,5 +39,7 @@
 import org.openstreetmap.josm.data.gpx.WayPoint;
 import org.openstreetmap.josm.data.osm.visitor.BoundingXYVisitor;
+import org.openstreetmap.josm.data.preferences.IntegerProperty;
 import org.openstreetmap.josm.data.preferences.NamedColorProperty;
+import org.openstreetmap.josm.data.preferences.StrokeProperty;
 import org.openstreetmap.josm.gui.MainApplication;
 import org.openstreetmap.josm.gui.MapView;
@@ -79,4 +82,6 @@
     public AudioMarker syncAudioMarker;
     private Color color, realcolor;
+    final int markerSize = new IntegerProperty("draw.rawgps.markers.size", 4).get();
+    final BasicStroke markerStroke = new StrokeProperty("draw.rawgps.markers.stroke", "1").get();
 
     /**
