Issue #6: Events carry creator information
This commit is contained in:
@@ -272,7 +272,7 @@ module.exports = (HB)->
|
||||
@deleted_by ?= []
|
||||
if @parent? and not @isDeleted()
|
||||
# call iff wasn't deleted earlyer
|
||||
@parent.callEvent "delete", @
|
||||
@parent.callEvent "delete", @, o
|
||||
if o?
|
||||
@deleted_by.push o
|
||||
garbagecollect = false
|
||||
|
||||
@@ -248,16 +248,18 @@ module.exports = (HB)->
|
||||
# Add change listeners for parent.
|
||||
#
|
||||
setParent: (parent, property_name)->
|
||||
@on 'insert', (event, op)=>
|
||||
repl_manager = this
|
||||
@on 'insert', (event, op)->
|
||||
if op.next_cl instanceof types.Delimiter
|
||||
@parent.callEvent 'change', property_name
|
||||
@on 'change', (event)=>
|
||||
@parent.callEvent 'change', property_name
|
||||
repl_manager.parent.callEvent 'change', property_name, op
|
||||
@on 'change', (event, op)->
|
||||
if repl_manager isnt this
|
||||
repl_manager.parent.callEvent 'change', property_name, op
|
||||
# Call this, when the first element is inserted. Then delete the listener.
|
||||
addPropertyListener = (event, op)=>
|
||||
addPropertyListener = (event, op)->
|
||||
if op.next_cl instanceof types.Delimiter and op.prev_cl instanceof types.Delimiter
|
||||
@parent.callEvent 'addProperty', property_name
|
||||
@deleteListener 'addProperty', addPropertyListener
|
||||
repl_manager.parent.callEvent 'addProperty', property_name, op
|
||||
repl_manager.deleteListener 'addProperty', addPropertyListener
|
||||
@on 'insert', addPropertyListener
|
||||
super parent
|
||||
|
||||
|
||||
@@ -196,9 +196,10 @@ module.exports = (HB)->
|
||||
setReplaceManager: (op)->
|
||||
@saveOperation 'replace_manager', op
|
||||
@validateSavedOperations()
|
||||
@on ['insert', 'delete'], ()=>
|
||||
@replace_manager?.callEvent 'change'
|
||||
|
||||
@on 'insert', (event, ins)=>
|
||||
@replace_manager?.forwardEvent @, 'change', ins
|
||||
@on 'delete', (event, ins, del)=>
|
||||
@replace_manager?.forwardEvent @, 'change', del
|
||||
#
|
||||
# Bind this WordType to a textfield or input field.
|
||||
#
|
||||
|
||||
Reference in New Issue
Block a user