Ignore:
Timestamp:
2012-04-05T14:25:07+02:00 (13 years ago)
Author:
simon04
Message:

JOSM/wikipedia: fix language argument in link, add setting to change language

File:
1 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/wikipedia/src/org/wikipedia/WikipediaToggleDialog.java

    r28187 r28194  
    1717import javax.swing.DefaultListModel;
    1818import javax.swing.JList;
     19import javax.swing.JOptionPane;
    1920import javax.xml.parsers.DocumentBuilderFactory;
    2021import javax.xml.xpath.XPathConstants;
     
    2425import org.openstreetmap.josm.data.coor.LatLon;
    2526import org.openstreetmap.josm.data.osm.visitor.BoundingXYVisitor;
     27import org.openstreetmap.josm.data.preferences.StringProperty;
    2628import org.openstreetmap.josm.gui.SideButton;
    2729import org.openstreetmap.josm.gui.dialogs.ToggleDialog;
     
    3840        createLayout(list, true, Arrays.asList(
    3941                new SideButton(new WikipediaDownloadAction()),
    40                 new SideButton(new OpenWikipediaArticleAction())));
     42                new SideButton(new OpenWikipediaArticleAction()),
     43                new SideButton(new WikipediaSettingsAction(), false)));
    4144    }
     45    final StringProperty wikipediaLang = new StringProperty("wikipedia.lang", LanguageInfo.getWikiLanguagePrefix());
    4246    final DefaultListModel<WikipediaEntry> model = new DefaultListModel<WikipediaEntry>();
    4347    final JList<WikipediaEntry> list = new JList<WikipediaEntry>(model) {
     
    106110                // construct url
    107111                final String url = "http://toolserver.org/~kolossos/geoworld/marks.php?"
    108                         + "bbox=" + bbox + "&lang=" + LanguageInfo.getWikiLanguagePrefix();
     112                        + "bbox=" + bbox + "&LANG=" + wikipediaLang.get();
    109113                System.out.println("Wikipedia: GET " + url);
    110114                // parse XML document
     
    159163        }
    160164    }
     165
     166    class WikipediaSettingsAction extends AbstractAction {
     167
     168        public WikipediaSettingsAction() {
     169            super(tr("Language"), ImageProvider.get("dialogs/settings"));
     170            putValue(SHORT_DESCRIPTION, tr("Sets the default language for the Wikipedia articles"));
     171        }
     172
     173        @Override
     174        public void actionPerformed(ActionEvent e) {
     175            String lang = JOptionPane.showInputDialog(
     176                    WikipediaToggleDialog.this,
     177                    tr("Enter the Wikipedia language"),
     178                    wikipediaLang.get());
     179            if (lang != null) {
     180                wikipediaLang.put(lang);
     181            }
     182        }
     183    }
    161184}
Note: See TracChangeset for help on using the changeset viewer.