use of com.intellij.psi.formatter.xml.XmlPolicy in project android by JetBrains.
the class AndroidXmlFormattingModelBuilder method createDelegatingBlock.
private static Block createDelegatingBlock(FormattingModel model, AndroidXmlCodeStyleSettings.MySettings customSettings, CodeStyleSettings settings) {
final Block block = model.getRootBlock();
if (block instanceof XmlBlock) {
final XmlBlock b = (XmlBlock) block;
final XmlPolicy policy = customSettings.createXmlPolicy(settings, model.getDocumentModel());
return new XmlBlock(b.getNode(), b.getWrap(), b.getAlignment(), policy, b.getIndent(), b.getTextRange()) {
@Override
protected XmlTagBlock createTagBlock(ASTNode child, Indent indent, Wrap wrap, Alignment alignment) {
return new XmlTagBlock(child, wrap, alignment, myXmlFormattingPolicy, indent != null ? indent : Indent.getNoneIndent(), isPreserveSpace());
}
};
} else {
return block;
}
}
use of com.intellij.psi.formatter.xml.XmlPolicy in project intellij-community by JetBrains.
the class XsltFormattingModelBuilder method getDelegatingBlock.
static Block getDelegatingBlock(final CodeStyleSettings settings, FormattingModel baseModel) {
final Block block = baseModel.getRootBlock();
if (block instanceof XmlBlock) {
final XmlBlock xmlBlock = (XmlBlock) block;
final XmlPolicy xmlPolicy = new XmlPolicy(settings, baseModel.getDocumentModel()) {
@Override
public boolean keepWhiteSpacesInsideTag(XmlTag xmlTag) {
return super.keepWhiteSpacesInsideTag(xmlTag) || isXslTextTag(xmlTag);
}
@Override
public boolean isTextElement(XmlTag tag) {
return super.isTextElement(tag) || isXslTextTag(tag) || isXslValueOfTag(tag);
}
};
final ASTNode node = xmlBlock.getNode();
final Wrap wrap = xmlBlock.getWrap();
final Alignment alignment = xmlBlock.getAlignment();
final Indent indent = xmlBlock.getIndent();
final TextRange textRange = xmlBlock.getTextRange();
return new XmlBlock(node, wrap, alignment, xmlPolicy, indent, textRange);
} else {
return block;
}
}
Aggregations