*/
	public void centerHorizontal(FastVector nodes) {
		// update undo stack
		if (m_bNeedsUndoAction) {
			addUndoAction(new centerHorizontalAction(nodes));
		}
		int nMinY = -1;
		int nMaxY = -1;
		for (int iNode = 0; iNode < nodes.size(); iNode++) {
			int nY = getPositionY((Integer) nodes.elementAt(iNode));
			if (nY < nMinY || iNode == 0) {
				nMinY = nY;
			}
			if (nY > nMaxY || iNode == 0) {
				nMaxY = nY;
			}
		}
		for (int iNode = 0; iNode < nodes.size(); iNode++) {
			int nNode = (Integer) nodes.elementAt(iNode);
			m_nPositionY.setElementAt((nMinY + nMaxY) / 2, nNode);
		}
	}