Ignore:
Timestamp:
2020-01-19T21:21:54+01:00 (4 years ago)
Author:
simon04
Message:

see #17220 - LayerListDialog: re-enable previous offset on click

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/dialogs/LayerListDialog.java

    r15733 r15734  
    655655                final TileSourceDisplaySettings displaySettings = ((AbstractTileSourceLayer<?>) layer).getDisplaySettings();
    656656                if (EastNorth.ZERO.equals(displaySettings.getDisplacement())) {
     657                    final boolean hasPreviousOffset = displaySettings.getPreviousOffsetBookmark() != null;
    657658                    cb.setSelected(false);
    658                     cb.setEnabled(false); // TODO: allow reselecting checkbox and thereby setting the old offset again
    659                     cb.setToolTipText(tr("layer is without a user-defined offset"));
     659                    cb.setEnabled(hasPreviousOffset);
     660                    cb.setToolTipText(tr("layer is without a user-defined offset") +
     661                            (hasPreviousOffset ? " " + tr("(click to activate previous offset)") : ""));
    660662                } else {
    661663                    cb.setSelected(true);
     
    11261128                    // reset layer offset
    11271129                    if (l instanceof AbstractTileSourceLayer<?>) {
    1128                         AbstractTileSourceLayer<?> abstractTileSourceLayer = (AbstractTileSourceLayer<?>) l;
    1129                         OffsetBookmark offsetBookmark = abstractTileSourceLayer.getDisplaySettings().getOffsetBookmark();
     1130                        final TileSourceDisplaySettings displaySettings = ((AbstractTileSourceLayer<?>) l).getDisplaySettings();
     1131                        final OffsetBookmark offsetBookmark = displaySettings.getOffsetBookmark();
    11301132                        if (offsetBookmark != null) {
    1131                             abstractTileSourceLayer.getDisplaySettings().setOffsetBookmark(null);
     1133                            displaySettings.setOffsetBookmark(null);
    11321134                            MainApplication.getMenu().imageryMenu.refreshOffsetMenu();
     1135                        } else {
     1136                            displaySettings.setOffsetBookmark(displaySettings.getPreviousOffsetBookmark());
    11331137                        }
    11341138                    }
Note: See TracChangeset for help on using the changeset viewer.