'Add a :class:`.NodeItem` instance to the scene.'

def add_node_item(self, item):

    if (item in self.__node_items):
        raise ValueError(('%r    is    already    in    the    scene.' % item))
    if item.pos().isNull():
        if self.__node_items:
            pos = (self.__node_items[(-1)].pos() + QPointF(150, 0))
        else:
            pos = QPointF(150, 150)
        item.setPos(pos)
    item.setFont(self.font())
    self.activated_mapper.setMapping(item, item)
    item.activated.connect(self.activated_mapper.map)
    self.hovered_mapper.setMapping(item, item)
    item.hovered.connect(self.hovered_mapper.map)
    self.position_change_mapper.setMapping(item, item)
    item.positionChanged.connect(self.position_change_mapper.map)
    self.addItem(item)
    self.__node_items.append(item)
    self.node_item_added.emit(item)
    log.info(("Added    item    '%s'    to    '%s'" % (item, self)))
    return item
