class_docstr: Glfw backend for Canvas abstract class.
class_docstr_tok: ["Glfw","backend","for","Canvas","abstract","class","."]
code: def _on_mouse_scroll(self, _id, x_off, y_off):
      if self._vispy_canvas is None and self._id is not None:
          return
      pos = glfw.get_cursor_pos(self._id)
      delta = (float(x_off), float(y_off))
      self._vispy_canvas.events.mouse_wheel(
          pos=pos, delta=delta, modifiers=self._mod
      )
  
imports: from __future__ import division
  import atexit
  from time import sleep
  import gc
  import os
  from ..base import BaseApplicationBackend, BaseCanvasBackend, BaseTimerBackend
  from ...util import keys, logger
  from ...util.ptime import time
  from ...None import config
label_desc: Use image node_id 20 for calling the CanvasBackend obj's underlying member method code with example usage: obj._on_mouse_scroll(_id, x_off, y_off) without return types