Changes between Version 11 and Version 12 of Help/Plugin/Scripting/Python
- Timestamp:
- 2017-10-09T17:11:44+02:00 (8 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Help/Plugin/Scripting/Python
v11 v12 120 120 121 121 This code illustrates how to use Jython to: 122 * Download all referrer for an element 122 * Download all referrers for an element 123 123 124 124 ''' 125 125 from javax.swing import JOptionPane 126 126 from org.openstreetmap.josm import Main 127 import org.openstreetmap.josm.data.osm.Node as Node128 import org.openstreetmap.josm.data.osm.Way as Way129 import org.openstreetmap.josm.data.osm.Relation as Relation130 import org.openstreetmap.josm.data.osm.TagCollection as TagCollection131 import org.openstreetmap.josm.data.osm.DataSet as DataSet132 import org.openstreetmap.josm.data.osm.RelationMember as RelationMember133 127 import org.openstreetmap.josm.actions.DownloadReferrersAction as DownloadReferrersAction 134 #import org.openstreetmap.josm.actions.downloadtasks.DownloadReferrersTask as DownloadReferrersTask; 135 136 def getMapView(): 137 if Main.main and Main.main.map: 138 return Main.main.map.mapView 139 else: 140 return None 141 142 mv = getMapView() 143 if mv and mv.editLayer and mv.editLayer.data: 144 selectedElements = mv.editLayer.data.getSelected() 128 129 editLayer = Main.getLayerManager().getEditLayer() 130 if editLayer and editLayer.data: 131 selectedElements = editLayer.data.getSelected() 145 132 146 133 if not(selectedElements): 147 134 JOptionPane.showMessageDialog(Main.parent, "Please select an element") 148 135 else: 149 DownloadReferrersAction.downloadReferrers( mv.editLayer, selectedElements)136 DownloadReferrersAction.downloadReferrers(editLayer, selectedElements) 150 137 }}} 151 138 152 139 153 140 Download missing relation members: 154 155 141 156 142 {{{ … … 183 169 import org.openstreetmap.josm.gui.dialogs.relation.DownloadRelationMemberTask as DownloadRelationMemberTask 184 170 185 def getMapView(): 186 if Main.main and Main.main.map: 187 return Main.main.map.mapView 188 else: 189 return None 190 191 mv = getMapView() 192 if mv and mv.editLayer and mv.editLayer.data: 193 selectedRelations = mv.editLayer.data.getSelectedRelations() 171 editLayer = Main.getLayerManager().getEditLayer() 172 if editLayer: 173 selectedRelations = editLayer.data.getSelectedRelations() 194 174 195 175 if not(selectedRelations): 196 JOptionPane.showMessageDialog(Main.parent, "Please select a node")176 JOptionPane.showMessageDialog(Main.parent, "Please select a relation") 197 177 else: 198 178 for relation in selectedRelations: … … 200 180 #print dir(relation) 201 181 print dir(DownloadRelationMemberTask) 202 DownloadRelationMemberTask.run(DownloadRelationMemberTask(relation, relation.getIncompleteMembers(), mv.editLayer )) 203 182 DownloadRelationMemberTask.run(DownloadRelationMemberTask(relation, relation.getIncompleteMembers(), editLayer )) 204 183 }}} 205 184
