Changeset 31263 in osm for applications


Ignore:
Timestamp:
2015-06-12T16:24:50+02:00 (9 years ago)
Author:
nokutu
Message:

Several bugs fixed

Location:
applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/MapillaryData.java

    r31261 r31263  
    2525        private MapillaryAbstractImage selectedImage;
    2626        private final List<MapillaryAbstractImage> multiSelectedImages;
    27        
    28         private List<MapillaryDataListener> listeners= new ArrayList<>();
     27
     28        private List<MapillaryDataListener> listeners = new ArrayList<>();
    2929
    3030        public MapillaryData() {
     
    6565                dataUpdated();
    6666        }
    67        
     67
    6868        public void addListener(MapillaryDataListener lis) {
    6969                listeners.add(lis);
    7070        }
    71        
     71
    7272        public void removeListener(MapillaryDataListener lis) {
    7373                listeners.remove(lis);
     
    137137                        if (((MapillaryImage) getSelectedImage()).getSequence() == null)
    138138                                return;
    139                         setSelectedImage(((MapillaryImage) getSelectedImage()).next());
     139                        setSelectedImage(((MapillaryImage) getSelectedImage()).next(), true);
    140140                }
    141141        }
     
    151151                        if (((MapillaryImage) getSelectedImage()).getSequence() == null)
    152152                                throw new IllegalStateException();
    153                         setSelectedImage(((MapillaryImage) getSelectedImage()).previous());
     153                        setSelectedImage(((MapillaryImage) getSelectedImage()).previous(),
     154                                        true);
    154155                }
    155156        }
     
    164165         */
    165166        public void setSelectedImage(MapillaryAbstractImage image) {
     167                setSelectedImage(image, false);
     168        }
     169
     170        /**
     171         * Selects a new image and then starts a new MapillaryImageDownloadThread
     172         * thread in order to download its surrounding thumbnails. If the user does
     173         * ctrl+click, this isn't triggered. You can choose wheter to center the
     174         * view on the new image or not.
     175         *
     176         * @param image
     177         * @param zoom
     178         */
     179        public void setSelectedImage(MapillaryAbstractImage image, boolean zoom) {
    166180                selectedImage = image;
    167181                multiSelectedImages.clear();
     
    188202                        }
    189203                }
     204                if (zoom)
     205                        Main.map.mapView.zoomTo(MapillaryData.getInstance()
     206                                        .getSelectedImage().getLatLon());
    190207                if (Main.map != null) {
    191208                        Main.map.mapView.repaint();
     
    193210                fireSelectedImageChanged();
    194211        }
    195        
     212
    196213        private void fireSelectedImageChanged() {
    197214                if (listeners.isEmpty())
  • applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/MapillaryDataListener.java

    r31261 r31263  
    22
    33public interface MapillaryDataListener {
    4        
     4        /**
     5         * Fired when the selected image is changed by something different from
     6         * manually clicking on the icon.
     7         */
    58        public void selectedImageChanged();
    6        
     9
    710}
  • applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/actions/MapillarySignalAction.java

    r31261 r31263  
    1111import org.openstreetmap.josm.tools.Shortcut;
    1212
     13/**
     14 * Switches the window mode from normal to signal and viceversa.
     15 *
     16 * @author nokutu
     17 * @see MapillaryToggleDialog
     18 *
     19 */
    1320public class MapillarySignalAction extends JosmAction {
    1421
     
    2027                                "mapillarySignal", false);
    2128        }
     29
    2230        @Override
    2331        public void actionPerformed(ActionEvent e) {
  • applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/gui/MapillaryToggleDialog.java

    r31262 r31263  
    6565
    6666        public final static int NORMAL_MODE = 0;
    67         public final static int SIGNAL_MODE = 0;
     67        public final static int SIGNAL_MODE = 1;
    6868
    6969        private JPanel buttonsPanel;
     
    112112        }
    113113
     114        /**
     115         * Switches from one mode to the other one.
     116         */
    114117        public void switchMode() {
    115118                this.removeAll();
     
    122125                        mode = NORMAL_MODE;
    123126                }
    124                 this.setLayout(new BorderLayout());
    125127                top = new JPanel();
    126128                top.setLayout(new BorderLayout());
     
    128130                createLayout(mapillaryImageDisplay, list,
    129131                                Main.pref.getBoolean("mapillary.reverse-buttons"));
     132                updateImage();
    130133        }
    131134
     
    232235        }
    233236
    234         private void centerAtSelected() {
    235                 Main.map.mapView.zoomTo(MapillaryData.getInstance().getSelectedImage()
    236                                 .getLatLon());
    237         }
    238 
    239237        /**
    240238         * Action class form the next image button.
     
    254252                        if (MapillaryToggleDialog.getInstance().getImage() != null) {
    255253                                MapillaryData.getInstance().selectNext();
    256                                 if (MapillaryData.getInstance().getSelectedImage() != null)
    257                                         centerAtSelected();
    258254                        }
    259255                }
     
    277273                        if (MapillaryToggleDialog.getInstance().getImage() != null) {
    278274                                MapillaryData.getInstance().selectPrevious();
    279                                 if (MapillaryData.getInstance().getSelectedImage() != null)
    280                                         centerAtSelected();
    281275                        }
    282276                }
     
    294288                public void actionPerformed(ActionEvent e) {
    295289                        if (MapillaryToggleDialog.getInstance().getImage() != null) {
    296                                 MapillaryData.getInstance()
    297                                                 .setSelectedImage(MapillaryLayer.RED);
    298                                 MapillaryToggleDialog.getInstance()
    299                                                 .setImage(MapillaryLayer.RED);
    300                                 MapillaryToggleDialog.getInstance().updateImage();
    301                                 centerAtSelected();
     290                                MapillaryData.getInstance().setSelectedImage(
     291                                                MapillaryLayer.RED, true);
    302292                        }
    303293                }
     
    316306                        if (MapillaryToggleDialog.getInstance().getImage() != null) {
    317307                                MapillaryData.getInstance().setSelectedImage(
    318                                                 MapillaryLayer.BLUE);
    319                                 MapillaryToggleDialog.getInstance().setImage(
    320                                                 MapillaryLayer.BLUE);
    321                                 MapillaryToggleDialog.getInstance().updateImage();
    322                                 centerAtSelected();
     308                                                MapillaryLayer.BLUE, true);
    323309                        }
    324310                }
     
    411397                                        if (img instanceof MapillaryImage)
    412398                                                if (!((MapillaryImage) img).getSignals().isEmpty()) {
    413                                                         MapillaryData.getInstance().setSelectedImage(img);
     399                                                        MapillaryData.getInstance().setSelectedImage(img,
     400                                                                        true);
    414401                                                        return;
    415402                                                }
    416403                                }
    417                                 centerAtSelected();
    418404                        }
    419405                }
     
    439425                                        if (img instanceof MapillaryImage)
    440426                                                if (!((MapillaryImage) img).getSignals().isEmpty()) {
    441                                                         MapillaryData.getInstance().setSelectedImage(img);
     427                                                        MapillaryData.getInstance().setSelectedImage(img,
     428                                                                        true);
    442429                                                        return;
    443430                                                }
    444431                                }
    445                                 centerAtSelected();
    446432                        }
    447433                }
Note: See TracChangeset for help on using the changeset viewer.