Ignore:
Timestamp:
2013-03-29T09:31:36+01:00 (11 years ago)
Author:
akks
Message:

fix #8549, patch by Zverikk: Remove [deprecated] imagery offset server support

Location:
trunk/src/org/openstreetmap/josm/gui
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/layer/ImageryLayer.java

    r5513 r5808  
    2626import javax.swing.JPopupMenu;
    2727import javax.swing.JSeparator;
    28 import javax.swing.SwingUtilities;
    2928
    3029import org.openstreetmap.josm.Main;
    3130import org.openstreetmap.josm.actions.ImageryAdjustAction;
    3231import org.openstreetmap.josm.data.ProjectionBounds;
    33 import org.openstreetmap.josm.data.coor.EastNorth;
    3432import org.openstreetmap.josm.data.imagery.ImageryInfo;
    3533import org.openstreetmap.josm.data.imagery.ImageryInfo.ImageryType;
     
    3836import org.openstreetmap.josm.data.preferences.IntegerProperty;
    3937import org.openstreetmap.josm.gui.MenuScroller;
    40 import org.openstreetmap.josm.io.imagery.OffsetServer;
    41 import org.openstreetmap.josm.io.imagery.OsmosnimkiOffsetServer;
    4238import org.openstreetmap.josm.tools.ImageProvider;
    4339
     
    6662    protected int sharpenLevel;
    6763
    68     protected boolean offsetServerSupported;
    69     protected boolean offsetServerUsed;
    70     protected OffsetServerThread offsetServerThread;
    71 
    7264    private final ImageryAdjustAction adjustAction = new ImageryAdjustAction(this);
    73     private final AbstractAction useServerOffsetAction = new AbstractAction(tr("(use server offset)")) {
    74         @Override
    75         public void actionPerformed(ActionEvent e) {
    76             enableOffsetServer(true);
    77         }
    78     };
    79 
    80     protected OffsetServerThread createoffsetServerThread() {
    81         return new OffsetServerThread(new OsmosnimkiOffsetServer(
    82                 OsmosnimkiOffsetServer.PROP_SERVER_URL.get()));
    83     }
    8465
    8566    public ImageryLayer(ImageryInfo info) {
     
    9475        }
    9576        this.sharpenLevel = PROP_SHARPEN_LEVEL.get();
    96         if (OffsetServer.PROP_SERVER_ENABLED.get()) {
    97             offsetServerThread = createoffsetServerThread();
    98             offsetServerThread.start();
    99         }
    10077    }
    10178
     
    164141        public void actionPerformed(ActionEvent ev) {
    165142            setOffset(b.dx, b.dy);
    166             enableOffsetServer(false);
    167143            Main.main.menu.imageryMenu.refreshOffsetMenu();
    168144            Main.map.repaint();
     
    183159        public boolean supportLayers(List<Layer> layers) {
    184160            return false;
    185         }
    186     }
    187 
    188     public void enableOffsetServer(boolean enable) {
    189         offsetServerUsed = enable;
    190         if (offsetServerUsed && !offsetServerThread.isAlive()) {
    191             offsetServerThread = createoffsetServerThread();
    192             offsetServerThread.start();
    193161        }
    194162    }
     
    202170    public JComponent getOffsetMenuItem(JComponent subMenu) {
    203171        JMenuItem adjustMenuItem = new JMenuItem(adjustAction);
    204         if (OffsetBookmark.allBookmarks.isEmpty() && !offsetServerSupported) return adjustMenuItem;
     172        if (OffsetBookmark.allBookmarks.isEmpty()) return adjustMenuItem;
    205173
    206174        subMenu.add(adjustMenuItem);
    207         if (offsetServerSupported) {
    208             JCheckBoxMenuItem item = new JCheckBoxMenuItem(useServerOffsetAction);
    209             if (offsetServerUsed) {
    210                 item.setSelected(true);
    211             }
    212             subMenu.add(item);
    213         }
    214175        subMenu.add(new JSeparator());
    215176        boolean hasBookmarks = false;
     
    220181            }
    221182            JCheckBoxMenuItem item = new JCheckBoxMenuItem(new ApplyOffsetAction(b));
    222             if (b.dx == dx && b.dy == dy && !offsetServerUsed) {
     183            if (b.dx == dx && b.dy == dy) {
    223184                item.setSelected(true);
    224185            }
     
    235196            }
    236197        }
    237         return (hasBookmarks || offsetServerSupported) ? subMenu : adjustMenuItem;
     198        return hasBookmarks ? subMenu : adjustMenuItem;
    238199    }
    239200
     
    265226    }
    266227
    267     protected class OffsetServerThread extends Thread {
    268         OffsetServer offsetServer;
    269         EastNorth oldCenter = new EastNorth(Double.NaN, Double.NaN);
    270 
    271         public OffsetServerThread(OffsetServer offsetServer) {
    272             this.offsetServer = offsetServer;
    273             setDaemon(true);
    274         }
    275 
    276         private void updateOffset() {
    277             if (Main.map == null || Main.map.mapView == null) return;
    278             EastNorth center = Main.map.mapView.getCenter();
    279             if (center.equals(oldCenter)) return;
    280             oldCenter = center;
    281 
    282             EastNorth offset = offsetServer.getOffset(getInfo(), center);
    283             if (offset != null) {
    284                 setOffset(offset.east(),offset.north());
    285             }
    286         }
    287 
    288         @Override
    289         public void run() {
    290             if (!offsetServerSupported) {
    291                 if (!offsetServer.isLayerSupported(info)) return;
    292                 offsetServerSupported = true;
    293             }
    294             offsetServerUsed = true;
    295             SwingUtilities.invokeLater(new Runnable() {
    296                 @Override
    297                 public void run() {
    298                     Main.main.menu.imageryMenu.refreshOffsetMenu();
    299                 }
    300             });
    301             try {
    302                 while (offsetServerUsed) {
    303                     updateOffset();
    304                     Thread.sleep(1000);
    305                 }
    306             } catch (InterruptedException e) {
    307             }
    308             offsetServerUsed = false;
    309         }
    310     }
    311 
    312228    /* (non-Javadoc)
    313229     * @see org.openstreetmap.josm.gui.layer.Layer#destroy()
  • trunk/src/org/openstreetmap/josm/gui/preferences/imagery/CommonSettingsPanel.java

    r5465 r5808  
    1010
    1111import javax.swing.JButton;
    12 import javax.swing.JCheckBox;
    1312import javax.swing.JColorChooser;
    1413import javax.swing.JLabel;
     
    1615import javax.swing.JPanel;
    1716import javax.swing.JSlider;
    18 import javax.swing.JTextField;
    19 import javax.swing.event.ChangeEvent;
    20 import javax.swing.event.ChangeListener;
    2117
    2218import org.openstreetmap.josm.gui.layer.ImageryLayer;
    2319import org.openstreetmap.josm.gui.widgets.JosmComboBox;
    24 import org.openstreetmap.josm.io.imagery.OffsetServer;
    25 import org.openstreetmap.josm.io.imagery.OsmosnimkiOffsetServer;
    2620import org.openstreetmap.josm.tools.ColorHelper;
    2721import org.openstreetmap.josm.tools.GBC;
     
    3731    private final JSlider fadeAmount = new JSlider(0, 100);
    3832    private final JosmComboBox sharpen;
    39     private final JCheckBox useOffsetServer;
    40     private final JTextField offsetServerUrl;
    4133
    4234    /**
     
    8072        add(GBC.glue(5, 0), GBC.std().fill(GBC.HORIZONTAL));
    8173        add(this.sharpen, GBC.eol().fill(GBC.HORIZONTAL));
    82 
    83         this.useOffsetServer = new JCheckBox(tr("Use offset server: "));
    84         this.offsetServerUrl = new JTextField();
    85         this.useOffsetServer.addChangeListener(new ChangeListener() {
    86             @Override
    87             public void stateChanged(ChangeEvent e) {
    88                 offsetServerUrl.setEnabled(useOffsetServer.isSelected());
    89             }
    90         });
    91         offsetServerUrl.setEnabled(useOffsetServer.isSelected());
    92         add(this.useOffsetServer, GBC.eol().fill(GBC.HORIZONTAL));
    93         add(this.offsetServerUrl, GBC.eol().fill(GBC.HORIZONTAL));
    9474    }
    9575   
     
    10383        this.fadeAmount.setValue(ImageryLayer.PROP_FADE_AMOUNT.get());
    10484        this.sharpen.setSelectedIndex(Math.max(0, Math.min(2, ImageryLayer.PROP_SHARPEN_LEVEL.get())));
    105         this.useOffsetServer.setSelected(OffsetServer.PROP_SERVER_ENABLED.get());
    106         this.offsetServerUrl.setText(OsmosnimkiOffsetServer.PROP_SERVER_URL.get());
    10785    }
    10886   
     
    11290     */
    11391    public boolean saveSettings() {
    114         OffsetServer.PROP_SERVER_ENABLED.put(useOffsetServer.isSelected());
    115         OsmosnimkiOffsetServer.PROP_SERVER_URL.put(offsetServerUrl.getText());
    116 
    11792        ImageryLayer.PROP_FADE_AMOUNT.put(this.fadeAmount.getValue());
    11893        ImageryLayer.PROP_FADE_COLOR.put(this.btnFadeColor.getBackground());
Note: See TracChangeset for help on using the changeset viewer.