pro xy_edit,x,y,bins,limits = lim,norm=distance,indexes=indexes,oplot=oplot
if not keyword_set(norm) then distance = 5
extract_tags,plotstuff,lim,/plot
psym = 1
if not keyword_set(oplot) then plot,x,y,_extra = plotstuff,psym=psym
n = n_elements(x)
if n_elements(bins) ne n then bins = fix(x) * 0
c = get_colors()
on = c.green
off = c.red
res = convert_coord(x,y,/data,/to_device)
xn = reform(res(0,*))
yn = reform(res(1,*))
ind = where(bins,count)
if count ne 0 then oplot,x(ind),y(ind),psym=psym,color=on
ind = where(bins eq 0,count)
if count ne 0 then oplot,x(ind),y(ind),psym=psym,color=off
prompt = 'Select a point...'
repeat begin
cursor,xp,yp,/down,/device
button = !err
if button eq 4 then goto,quit
dist = sqrt((xn-xp)^2 + (yn-yp)^2)
ind = where(dist lt distance,count)
if count ne 0 then begin
if button eq 1 then begin
bins(ind) = 1
col = on
endif else begin
bins(ind) = 0
col = off
endelse
oplot,x(ind),y(ind),psym=psym,color=col
for i=0,count-1 do $
print,ind(i),x(ind(i)),y(ind(i)),button
endif
endrep until 0
quit:
indexes = where(bins)
end