Просмотр исходного кода

Remember unit choices for each entity

master
Fen Dweller 5 лет назад
Родитель
Сommit
f1dfd9a901
1 измененных файлов: 12 добавлений и 1 удалений
  1. +12
    -1
      macrovision.js

+ 12
- 1
macrovision.js Просмотреть файл

@@ -637,6 +637,10 @@ function makeEntity(info, views, sizes) {
this.view = viewKey; this.view = viewKey;
} }


// to remember the units the user last picked

view.units = {};

Object.entries(view.attributes).forEach(([key, val]) => { Object.entries(view.attributes).forEach(([key, val]) => {
Object.defineProperty( Object.defineProperty(
view, view,
@@ -650,7 +654,7 @@ function makeEntity(info, views, sizes) {
this.parent.scale = newScale; this.parent.scale = newScale;
} }
} }
)
);
}); });
}); });


@@ -1046,6 +1050,12 @@ function configViewOptions(entity, view) {
e.stopPropagation(); e.stopPropagation();
}) })


if (entity.views[view].units[key]) {
select.value = entity.views[view].units[key];
} else {
entity.views[view].units[key] = select.value;
}

select.setAttribute("oldUnit", select.value); select.setAttribute("oldUnit", select.value);


setNumericInput(input, entity.views[view][key].toNumber(select.value)); setNumericInput(input, entity.views[view][key].toNumber(select.value));
@@ -1059,6 +1069,7 @@ function configViewOptions(entity, view) {
setNumericInput(input, entity.views[entity.view][key].toNumber(select.value)); setNumericInput(input, entity.views[entity.view][key].toNumber(select.value));


select.setAttribute("oldUnit", select.value); select.setAttribute("oldUnit", select.value);
entity.views[view].units[key] = select.value;


if (config.autoFit) { if (config.autoFit) {
fitWorld(); fitWorld();


Загрузка…
Отмена
Сохранить