use of org.eclipse.wst.dtd.core.internal.DTDNode in project webtools.sourceediting by eclipse.
the class DragAttributeCommand method execute.
public void execute() {
DTDNode referenceNode = (DTDNode) target;
DTDFile dtdFile = referenceNode.getDTDFile();
if (referenceNode instanceof Attribute) {
// $NON-NLS-1$
dtdFile.getDTDModel().beginRecording(this, DTDUIMessages._UI_MOVE_ATTRIBUTE);
AttributeList attList = (AttributeList) referenceNode.getParentNode();
Iterator iter = sources.iterator();
while (iter.hasNext()) {
DTDNode node = (DTDNode) iter.next();
if (node instanceof Attribute) {
attList.insertIntoModel(this, (Attribute) referenceNode, (Attribute) node, isAfter());
dtdFile.deleteNode(this, node);
}
}
dtdFile.getDTDModel().endRecording(this);
}
}
use of org.eclipse.wst.dtd.core.internal.DTDNode in project webtools.sourceediting by eclipse.
the class DragTopLevelNodesCommand method execute.
public void execute() {
DTDNode referenceNode = (DTDNode) target;
DTDFile dtdFile = referenceNode.getDTDFile();
dtdFile.getDTDModel().beginRecording(this, sources.size() > 1 ? moveNodes : moveNode);
Iterator iter = sources.iterator();
while (iter.hasNext()) {
DTDNode node = (DTDNode) iter.next();
if (node instanceof TopLevelNode) {
dtdFile.moveNode(this, referenceNode, node, isAfter());
}
}
dtdFile.getDTDModel().endRecording(this);
}
use of org.eclipse.wst.dtd.core.internal.DTDNode in project webtools.sourceediting by eclipse.
the class DTDSectionLabelProvider method getImage.
/**
* @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
*/
public Image getImage(Object object) {
if (object == null || object.equals(StructuredSelection.EMPTY)) {
return null;
}
Image result = null;
Object selected = object;
if (object instanceof IStructuredSelection) {
selected = ((IStructuredSelection) object).getFirstElement();
}
if (selected instanceof DTDFile) {
// ((DTDFile) selected).getImage();
return null;
} else if (selected instanceof DTDNode) {
if (selected instanceof ParameterEntityReference)
return null;
final String imgPath = ((DTDNode) selected).getImagePath();
return imgPath != null ? DTDUIPlugin.getDefault().getImage(imgPath) : null;
} else if (selected instanceof org.w3c.dom.Element) {
return null;
}
return result;
}
use of org.eclipse.wst.dtd.core.internal.DTDNode in project webtools.sourceediting by eclipse.
the class DTDSectionLabelProvider method getText.
/**
* @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
*/
public String getText(Object object) {
if (object == null || object.equals(StructuredSelection.EMPTY)) {
return null;
}
Object selected = object;
if (object instanceof IStructuredSelection) {
selected = ((IStructuredSelection) object).getFirstElement();
}
if (selected instanceof DTDFile) {
return ((DTDFile) selected).getName();
} else if (selected instanceof CMBasicNode) {
if (((CMBasicNode) selected).isReference())
return DTDPropertiesMessages._UI_PROPERTIES_VIEW_TITLE_ELEMENT_REF;
else
return ((CMBasicNode) selected).getName();
} else if (selected instanceof CMRepeatableNode) {
CMRepeatableNode node = (CMRepeatableNode) selected;
String name = node.getName();
if (node instanceof CMGroupNode) {
if (((CMGroupNode) node).getConnector() == CMGroupNode.CHOICE)
name = DTDPropertiesMessages.DTDSectionLabelProvider_0;
else
name = DTDPropertiesMessages.DTDSectionLabelProvider_1;
}
char occurrence = node.getOccurrence();
switch(occurrence) {
case CMRepeatableNode.ONCE:
// $NON-NLS-1$
name += " [1..1]";
break;
case CMRepeatableNode.OPTIONAL:
// $NON-NLS-1$
name += " [0..1]";
break;
case CMRepeatableNode.ONE_OR_MORE:
// $NON-NLS-1$
name += " [1..*]";
break;
case CMRepeatableNode.ZERO_OR_MORE:
// $NON-NLS-1$
name += " [0..*]";
break;
}
return name;
} else if (selected instanceof DTDNode) {
if (selected instanceof Element)
return DTDPropertiesMessages.DTDSectionLabelProvider_6;
else if (selected instanceof Attribute)
return DTDPropertiesMessages.DTDSectionLabelProvider_7;
else if (selected instanceof AttributeList)
return DTDPropertiesMessages.DTDSectionLabelProvider_8;
else if (selected instanceof Comment)
return DTDPropertiesMessages.DTDSectionLabelProvider_9;
else if (selected instanceof Entity)
return DTDPropertiesMessages.DTDSectionLabelProvider_10;
else if (selected instanceof Notation)
return DTDPropertiesMessages.DTDSectionLabelProvider_11;
else if (selected instanceof ParameterEntityReference)
// return "parameter entity reference";
return null;
else
return ((DTDNode) selected).getName();
} else if (selected instanceof org.w3c.dom.Element) {
return ((org.w3c.dom.Element) selected).getLocalName();
} else if (object instanceof ITextSelection) {
// $NON-NLS-1$
return "";
} else
return object.toString();
}
use of org.eclipse.wst.dtd.core.internal.DTDNode in project webtools.sourceediting by eclipse.
the class DTDBatchNodeDelete method deleteNodes.
public void deleteNodes(Object requestor) {
for (int i = nodes.size() - 1; i >= 0; i--) {
DTDNode node = (DTDNode) nodes.get(i);
dtdFile.deleteNode(requestor, node);
}
nodes.clear();
}
Aggregations