docs: def append(self, panel, position=Panel.Position.LEFT):
          """
          Installs a panel on the editor.
  
          :param panel: Panel to install
          :param position: Position where the panel must be installed.
          :return: The installed panel
          """
          assert panel is not None
          pos_to_string = {
              Panel.Position.BOTTOM: 'bottom',
              Panel.Position.LEFT: 'left',
              Panel.Position.RIGHT: 'right',
              Panel.Position.TOP: 'top'
          }
          _logger().log(5, 'adding panel %s at %r', panel.name,
                        pos_to_string[position])
          panel.order_in_zone = len(self._panels[position])
          self._panels[position][panel.name] = panel
          panel.position = position
          panel.on_install(self.editor)
          _logger().log(5, 'panel %s installed', panel.name)
          return panel