private int getInsertionMarkerPosition(TreeContainerRow parent, int insertAt) {
		int y = 0;
		int dividerHeight = getRowDividerHeight();
		if (mRoot != parent) {
			for (TreeRow one : new TreeRowViewIterator(this, mRoot.getChildren())) {
				y += getRowHeight(one) + dividerHeight;
				if (one == parent) {
					break;
				}
			}
		}
		if (insertAt > 0) {
			for (TreeRow one : new TreeRowViewIterator(this, parent.getChildren())) {
				y += getRowHeight(one) + dividerHeight;
				if (one.getParent() == parent) {
					if (--insertAt == 0) {
						break;
					}
				}
			}
		}
		return y > 0 ? y - 1 : 0;
	}