forked from MapComplete/MapComplete
Add image delete button
This commit is contained in:
parent
f548ddea84
commit
0fe6b67976
13 changed files with 303 additions and 54 deletions
|
@ -9,6 +9,18 @@ import {NameInline} from "../Questions/NameInline";
|
|||
|
||||
export class Park extends LayerDefinition {
|
||||
|
||||
|
||||
private accessByDefault = new TagRenderingOptions({
|
||||
question: "Is dit park publiek toegankelijk?",
|
||||
mappings: [
|
||||
{k: new Tag("access","yes"), txt: "Publiek toegankelijk"},
|
||||
{k: new Tag("access",""), txt: "Publiek toegankelijk"},
|
||||
{k: new Tag("access","no"), txt: "Niet-publiek toegankelijk park"},
|
||||
{k: new Tag("access","guided"), txt: "Enkel toegankelijk met een gids of op een activiteit"}
|
||||
]
|
||||
})
|
||||
|
||||
|
||||
constructor() {
|
||||
super();
|
||||
this.name = "park";
|
||||
|
@ -22,7 +34,10 @@ export class Park extends LayerDefinition {
|
|||
this.minzoom = 13;
|
||||
this.style = this.generateStyleFunction();
|
||||
this.title = new NameInline("park");
|
||||
this.elementsToShow = [new NameQuestion()];
|
||||
this.elementsToShow = [new NameQuestion(),
|
||||
this.accessByDefault
|
||||
|
||||
];
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -6,16 +6,16 @@ export class BikePumpsLayout extends Layout {
|
|||
constructor() {
|
||||
super(
|
||||
"pomp",
|
||||
"Grb import fix tool",
|
||||
"Cyclofix",
|
||||
[new BikePumps()],
|
||||
15,
|
||||
51.2083,
|
||||
3.2279,
|
||||
|
||||
|
||||
"<h3>GRB Fix tool</h3>\n" +
|
||||
"<h3>Open CycloFix</h3>\n" +
|
||||
"\n" +
|
||||
"Expert use only"
|
||||
"Something something bikes"
|
||||
|
||||
,
|
||||
"", "");
|
||||
|
|
|
@ -65,7 +65,6 @@ export class TagRenderingOptions {
|
|||
mappings?: { k: TagsFilter, txt: string, priority?: number, substitute?: boolean }[]
|
||||
}) {
|
||||
this.options = options;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@ -150,6 +149,7 @@ export class TagRendering extends UIElement {
|
|||
// Prepare the choices for the Radio buttons
|
||||
let i = 0;
|
||||
const choices: UIElement[] = [];
|
||||
const alreadyUsedTexts: string[] = [];
|
||||
|
||||
for (const choice of options.mappings ?? []) {
|
||||
if (choice.k === null) {
|
||||
|
@ -159,16 +159,21 @@ export class TagRendering extends UIElement {
|
|||
let choiceSubbed = choice;
|
||||
if (choice.substitute) {
|
||||
choiceSubbed = {
|
||||
k : choice.k.substituteValues(
|
||||
k: choice.k.substituteValues(
|
||||
options.tagsPreprocessor(this._source.data)),
|
||||
txt : this.ApplyTemplate(choice.txt),
|
||||
txt: this.ApplyTemplate(choice.txt),
|
||||
substitute: false,
|
||||
priority: choice.priority
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
choices.push(new FixedUiElement(choiceSubbed.txt));
|
||||
const txt = choiceSubbed.txt;
|
||||
if (alreadyUsedTexts.indexOf(txt) < 0) {
|
||||
choices.push(new FixedUiElement(txt));
|
||||
alreadyUsedTexts.push(txt);
|
||||
}
|
||||
|
||||
|
||||
this._mapping.push(choiceSubbed);
|
||||
i++;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue