code: def remove(self, item):
          
          if item not in self:
              raise ValueError('objectlist.remove(item) failed, item not in list')
          item_path = self._view_path_for(item)
          giter = self._iter_for(item)
          del self[giter]
          self.emit('item-removed', item, item_path)
docs: Remove an item from the list
  
          :param item: The item to remove from the list.
          :raises ValueError: If the item is not present in the list.