Ignore:
Timestamp:
2018-05-13T11:41:14+02:00 (6 years ago)
Author:
wiktorn
Message:

Add filter for WMTS layers, calculate preferred widths for columns.

See: #16249

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/preferences/imagery/AddWMTSLayerPanel.java

    r13745 r13746  
    44import static org.openstreetmap.josm.tools.I18n.tr;
    55
    6 import java.awt.Dimension;
    76import java.awt.GridBagLayout;
    87import java.io.IOException;
     
    1615import javax.swing.JOptionPane;
    1716import javax.swing.JPanel;
    18 import javax.swing.JScrollPane;
    19 import javax.swing.JTable;
    2017
    2118import org.openstreetmap.josm.data.imagery.DefaultLayer;
     
    2623import org.openstreetmap.josm.data.imagery.WMTSTileSource.Layer;
    2724import org.openstreetmap.josm.data.imagery.WMTSTileSource.WMTSGetCapabilitiesException;
     25import org.openstreetmap.josm.gui.layer.imagery.WMTSLayerSelection;
    2826import org.openstreetmap.josm.tools.GBC;
    2927import org.openstreetmap.josm.tools.Logging;
     
    3634public class AddWMTSLayerPanel extends AddImageryPanel {
    3735    private final transient JPanel layerPanel = new JPanel(new GridBagLayout());
    38     private transient JTable layerTable;
     36    private transient WMTSLayerSelection layerTable;
    3937    private final JCheckBox setDefaultLayer = new JCheckBox(tr("Set default layer?"));
    4038    private List<Entry<String, List<Layer>>> layers;
     
    6967                WMTSCapabilities capabilities = WMTSTileSource.getCapabilities(rawUrl.getText(), getCommonHeaders());
    7068                layers = WMTSTileSource.groupLayersByNameAndTileMatrixSet(capabilities.getLayers());
    71                 layerTable = WMTSTileSource.getLayerSelectionPanel(layers);
     69                layerTable = new WMTSLayerSelection(layers);
    7270                layerPanel.removeAll();
    73                 JScrollPane scrollPane = new JScrollPane(layerTable);
    74                 scrollPane.setPreferredSize(new Dimension(100, 100));
    75                 layerPanel.add(scrollPane, GBC.eol().fill());
     71                layerPanel.add(layerTable, GBC.eol().fill());
    7672                layerPanel.revalidate();
    7773            } catch (IOException | WMTSGetCapabilitiesException ex) {
     
    9389                throw new IllegalArgumentException(tr("You need to get fetch layers"));
    9490            }
    95             int index = layerTable.getSelectedRow();
    96             if (index < 0) {
    97                 throw new IllegalArgumentException(tr("Invalid layer selected. Index: {1}", index));
    98             }
    99             Layer selectedLayer = layers.get(layerTable.convertRowIndexToModel(index)).getValue().get(0);
     91            Layer selectedLayer = layerTable.getSelectedLayer();
    10092            ret.setDefaultLayers(
    10193                    Collections.<DefaultLayer>singletonList(
Note: See TracChangeset for help on using the changeset viewer.