class_docstr: Generate callbacks with the current end line number.
  
  The provided callback is called after every insert and delete.
code: def delete(self, index1, index2=None):
      self.delegate.delete(index1, index2)
      self.changed_callback(get_end_linenumber(self.delegate))
  
imports: import contextlib
  import functools
  import itertools
  import tkinter
  from tkinter.font import Font
  from idlelib.config import idleConf
  from idlelib.delegator import Delegator
  from idlelib import macosx
label_desc: Use image node_id 3 for calling the EndLineDelegator obj's underlying member method code with example usage: obj.delete(index1, index2) without return types