/***************************************************************************** * This file is part of Rinzo * * Author: Claudio Cancinos WWW: https://sourceforge.net/projects/editorxml Copyright (C): 2008, Claudio Cancinos * * This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General * Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any * later version. * * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License along with this program; If not, see * <http://www.gnu.org/licenses/> ****************************************************************************/ package com.amalto.workbench.widgets.xmlviewer.model; import java.util.Iterator; import org.eclipse.jface.text.IDocument; import org.eclipse.jface.text.ITypedRegion; import com.amalto.workbench.widgets.xmlviewer.XMLSourceViewer; /** * DOCME * */ public class XMLRootNode extends XMLNode { private XMLNode root = null; public XMLRootNode(int offset, int length, String type, IDocument document, XMLSourceViewer sourceViewer) { super(offset, length, type, document); this.setSourceViewer(sourceViewer); } public XMLRootNode(ITypedRegion region) { super(region); } public XMLNode getRootNode() { if (this.root == null) { for (Iterator<XMLNode> iter = this.getChildren().iterator(); iter.hasNext() && this.root == null;) { XMLNode node = iter.next(); if (node.isTag()) { this.root = node; } } } if (this.root != null) { this.root.documentChanged = true; } return this.root; } }