Ignore:
Timestamp:
2019-01-31T16:53:52+01:00 (6 years ago)
Author:
gerdp
Message:

see #9860:

  • don't change zoom for every downloaded element, only change it once when all is done
  • fix more sonar issues
Location:
applications/editors/josm/plugins/undelete/src/org/openstreetmap/josm/plugins/undelete
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/undelete/src/org/openstreetmap/josm/plugins/undelete/Undelete.java

    r34871 r34875  
    88
    99/**
    10  * Create the undelete plugin.
     10 * Undelete action allows to restore one or more deleted objects.
    1111 */
    1212public class Undelete extends Plugin {
    1313
     14    /**
     15     * Create the undelete plugin.
     16     * @param info plugin information
     17     */
    1418    public Undelete(PluginInformation info) {
    1519        super(info);
  • applications/editors/josm/plugins/undelete/src/org/openstreetmap/josm/plugins/undelete/UndeleteAction.java

    r34871 r34875  
    8989                            // If the object is not deleted we get the real object
    9090                            DownloadPrimitivesTask download = new DownloadPrimitivesTask(layer, Collections.singletonList(pid), true);
     91                            download.setZoom(false);
    9192                            download.run();
    9293
     
    100101                                hPrimitive2 = h.getByVersion(n - idx++);
    101102                            }
    102                             if (type.equals(OsmPrimitiveType.NODE)) {
     103                            if (type == OsmPrimitiveType.NODE) {
    103104                                // We get version and user from the latest version,
    104105                                // coordinates and tags from n-1 version
     
    111112
    112113                                primitive = node;
    113                             } else if (type.equals(OsmPrimitiveType.WAY)) {
     114                            } else if (type == OsmPrimitiveType.WAY) {
    114115                                // We get version and user from the latest version,
    115116                                // nodes and tags from n-1 version
     
    174175                                restored.add(primitive);
    175176                            } else {
    176                               final String msg = OsmPrimitiveType.NODE.equals(type)
     177                              final String msg = OsmPrimitiveType.NODE == type
    177178                                  ? tr("Unable to undelete node {0}. Object has likely been redacted", id)
    178                                   : OsmPrimitiveType.WAY.equals(type)
     179                                  : OsmPrimitiveType.WAY == type
    179180                                  ? tr("Unable to undelete way {0}. Object has likely been redacted", id)
    180                                   : OsmPrimitiveType.RELATION.equals(type)
     181                                  : OsmPrimitiveType.RELATION == type
    181182                                  ? tr("Unable to undelete relation {0}. Object has likely been redacted", id)
    182183                                  : null;
     
    185186                            }
    186187                        }
    187                     } catch (Exception t) {
    188                         Logging.error(t);
     188                    } catch (Exception e) {
     189                        Logging.error(e);
    189190                    }
    190191                }
     
    196197                ((Way) parent).setNodes(nodes);
    197198            }
    198             if (!restored.isEmpty()) {
     199            if (parent == null && !restored.isEmpty()) {
    199200                layer.data.setSelected(restored);
    200201                GuiHelper.runInEDT(() -> AutoScaleAction.autoScale(AutoScaleMode.SELECTION));
     
    203204    }
    204205
     206    /**
     207     * Create undelete action.
     208     */
    205209    public UndeleteAction() {
    206210        super(tr("Undelete object..."), "undelete", tr("Undelete object by id"),
Note: See TracChangeset for help on using the changeset viewer.