add RuleBuilder setters for Rule- and Style-Builders
This commit is contained in:
parent
4f254bde75
commit
120797fe96
@ -155,7 +155,7 @@ public class XmlThemeBuilder extends DefaultHandler {
|
|||||||
|
|
||||||
Rule[] rules = new Rule[mRulesList.size()];
|
Rule[] rules = new Rule[mRulesList.size()];
|
||||||
for (int i = 0, n = rules.length; i < n; i++)
|
for (int i = 0, n = rules.length; i < n; i++)
|
||||||
rules[i] = mRulesList.get(i).onComplete();
|
rules[i] = mRulesList.get(i).onComplete(null);
|
||||||
|
|
||||||
mRenderTheme = new RenderTheme(mMapBackground, mBaseTextSize, rules, mLevels);
|
mRenderTheme = new RenderTheme(mMapBackground, mBaseTextSize, rules, mLevels);
|
||||||
|
|
||||||
|
|||||||
@ -36,6 +36,7 @@ public class RuleBuilder {
|
|||||||
|
|
||||||
ArrayList<RenderStyle> renderStyles = new ArrayList<RenderStyle>(4);
|
ArrayList<RenderStyle> renderStyles = new ArrayList<RenderStyle>(4);
|
||||||
ArrayList<RuleBuilder> subRules = new ArrayList<RuleBuilder>(4);
|
ArrayList<RuleBuilder> subRules = new ArrayList<RuleBuilder>(4);
|
||||||
|
StyleBuilder[] styleBuilder;
|
||||||
|
|
||||||
private static final String STRING_NEGATION = "~";
|
private static final String STRING_NEGATION = "~";
|
||||||
private static final String STRING_EXCLUSIVE = "-";
|
private static final String STRING_EXCLUSIVE = "-";
|
||||||
@ -112,11 +113,17 @@ public class RuleBuilder {
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Rule onComplete() {
|
public Rule onComplete(int[] level) {
|
||||||
|
|
||||||
RenderStyle[] styles = null;
|
RenderStyle[] styles = null;
|
||||||
Rule[] rules = null;
|
Rule[] rules = null;
|
||||||
|
|
||||||
|
if (styleBuilder != null)
|
||||||
|
for (StyleBuilder style : styleBuilder) {
|
||||||
|
renderStyles.add(style.level(level[0]).build());
|
||||||
|
level[0] += 2;
|
||||||
|
}
|
||||||
|
|
||||||
if (renderStyles.size() > 0) {
|
if (renderStyles.size() > 0) {
|
||||||
styles = new RenderStyle[renderStyles.size()];
|
styles = new RenderStyle[renderStyles.size()];
|
||||||
renderStyles.toArray(styles);
|
renderStyles.toArray(styles);
|
||||||
@ -125,7 +132,7 @@ public class RuleBuilder {
|
|||||||
if (subRules.size() > 0) {
|
if (subRules.size() > 0) {
|
||||||
rules = new Rule[subRules.size()];
|
rules = new Rule[subRules.size()];
|
||||||
for (int i = 0; i < rules.length; i++)
|
for (int i = 0; i < rules.length; i++)
|
||||||
rules[i] = subRules.get(i).onComplete();
|
rules[i] = subRules.get(i).onComplete(level);
|
||||||
}
|
}
|
||||||
|
|
||||||
int numKeys = keys.length;
|
int numKeys = keys.length;
|
||||||
@ -163,22 +170,25 @@ public class RuleBuilder {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addStyle(RenderStyle style) {
|
public RuleBuilder addStyle(RenderStyle style) {
|
||||||
renderStyles.add(style);
|
renderStyles.add(style);
|
||||||
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addSubRule(RuleBuilder rule) {
|
public RuleBuilder addSubRule(RuleBuilder rule) {
|
||||||
subRules.add(rule);
|
subRules.add(rule);
|
||||||
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
RuleBuilder(boolean positive) {
|
public RuleBuilder style(StyleBuilder... styles) {
|
||||||
this.positiveRule = positive;
|
styleBuilder = styles;
|
||||||
this.element = Element.ANY;
|
return this;
|
||||||
this.zoom = ~0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static RuleBuilder get() {
|
public RuleBuilder rules(RuleBuilder... rules) {
|
||||||
return new RuleBuilder(true);
|
for (RuleBuilder rule : rules)
|
||||||
|
subRules.add(rule);
|
||||||
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public RuleBuilder select(int selector) {
|
public RuleBuilder select(int selector) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user