Files
@ 6697a68800d2
Branch filter:
Location: light9/web/edit-choice.coffee - annotation
6697a68800d2
1.5 KiB
text/coffeescript
junk merge just to avoid two heads
4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 4556eebe5d73 | log = debug('editchoice')
RDFS = 'http://www.w3.org/2000/01/rdf-schema#'
window.setupDrop = (senseElem, highlightElem, coordinateOriginElem, onDrop) ->
highlight = -> highlightElem.classList.add('dragging')
unhighlight = -> highlightElem.classList.remove('dragging')
senseElem.addEventListener 'drag', (event) =>
senseElem.addEventListener 'dragstart', (event) =>
senseElem.addEventListener 'dragend', (event) =>
senseElem.addEventListener 'dragover', (event) =>
event.preventDefault()
event.dataTransfer.dropEffect = 'copy'
highlight()
senseElem.addEventListener 'dragenter', (event) =>
highlight()
senseElem.addEventListener 'dragleave', (event) =>
unhighlight()
senseElem.addEventListener 'drop', (event) ->
event.preventDefault()
uri = event.dataTransfer.getData('text/uri-list')
pos = if coordinateOriginElem?
root = coordinateOriginElem.getBoundingClientRect()
$V([event.pageX - root.left, event.pageY - root.top])
else
null
try
onDrop(uri, pos)
catch e
log(e)
unhighlight()
coffeeElementSetup(class EditChoice extends Polymer.Element
@is: "edit-choice",
@getter_properties:
graph: {type: Object, notify: true},
uri: {type: String, notify: true},
_setUri: (u) ->
@uri = u
@dispatchEvent(new CustomEvent('edited'))
connectedCallback: ->
super.connectedCallback()
setupDrop(@$.box, @$.box, null, @_setUri.bind(@))
unlink: ->
@_setUri(null)
)
|