Commit Graph

19 Commits

Author SHA1 Message Date
maj00r
cef00c4e3c Move the battery option to the depot as a consist property
It was a global preference that rewrote the trainset speed at launch, while what
it really sets is whether this consist starts prepared or cold. Now a checkbox in
the consist-scope section, acting on the consist being edited.
2026-09-04 23:17:17 +02:00
maj00r
2cbc92ad92 Wire up 7 setting descriptions that existed in the translations but were never shown 2026-09-04 21:22:19 +02:00
maj00r
e969137824 Show the eu07.ini key on every settings row 2026-09-04 21:21:14 +02:00
maj00r
aef086e9f0 WIP: settings sections, shortcuts window, depot tweaks 2026-09-04 20:40:47 +02:00
maj00r
bcf266a167 4 px above the settings tab strip 2026-08-31 00:46:15 +02:00
maj00r
563a937eb9 wider migration from old starter 2026-08-30 22:29:45 +02:00
maj00r
e3caa9d38f Fix the language picker and tidy the graphics tab
Both language combos decided a change was the user's by checking
IsKeyboardFocusWithin on the picked item. Selecting with the mouse leaves the
focus on the combo, not on the item, so on Windows the check failed and the
language never changed. The handlers now compare the picked code with the one
already loaded instead of guessing who caused the event: filling the combo in
selects what is loaded and stops there, a real pick differs and applies.

The settings tab listed a hard-coded Polski / English pair and wrote the
language back as "Polski" or "English", so picking Czech, Hungarian or
Russian in the top bar was overwritten on save. It is filled from lang/ now,
and writes back the selected entry.

LocalizationService gains a LanguageChanged event: the main window rebuilds
the captions that code builds once (train stats, panel headers, combo items)
from there, so a pick in either place refreshes them. Its PropertyChanged
also names the indexer "Item[]", which is what bindings listen for.

Graphics tab: the track-curve quality slider moves over from Physics, the
view angle shows a degree sign instead of the Polish "stopni", and the HDR
tone-mapping picker is gone - only Reinhard.glsl ever shipped, so
ApplyHdrShader copies that one and the starter.hdr setting is dropped.
2026-08-25 22:17:11 +02:00
maj00r
ce806130f7 Add hide-archival, last-scenery, HDR tone map and external-change settings
#13 HideArchivalVehicles; #19 LastScenery; HDR tonemap + framebuffer fidelity; reload eu07.ini when it changes on disk; dump missing-vehicle log on exit.
2026-08-22 23:15:34 +02:00
Mateusz Włodarczyk
1118771486 Sync setting defaults with eu07 engine, drop dead options
Cross-checked against ../maszyna: several StarterNG defaults didn't
match the simulator's actual defaults (Globals.h), and three exposed
options never mapped to a real eu07.ini key.

- Correct defaults to match the engine: VSync=false, LiveTraction=true,
  VirtualShunting(ai.trainman)=true, DynamicLights=7 fallback,
  CabShadowsRange=0, GfxResourceSweep=true, FeedbackMode=1,
  ShadowMapResolution=2048, ReflectionsFidelity=0, Volume=50.
- Remove Post-processing (gfx.postfx.tonemapping), onboard-screen
  refresh rate (pyscreenrendererpriority), and volume-during-pause
  (sound.volume.paused) — none of these keys exist in the simulator.
- Only apply parsed UART feature tokens when eu07.ini actually has an
  uartfeature line; otherwise fall back to the engine's own defaults
  instead of all-false.
2026-07-05 19:19:06 +02:00
Mateusz Włodarczyk
c4147a2f66 Add settings profiles and expand exposed eu07.ini options
Adds save/apply named settings profiles (SettingsProfileStore), a
battery-default export option that rewrites trainset velocity on
launch, and an option to omit decorative trainsets from the exported
scenery. Also surfaces many previously-unmapped eu07.ini keys in the
Settings UI (UART/feedback port, FPS limit, shadow angle, fullscreen
windowed, ANGLE Vulkan, friction/brake sensitivity, and an Advanced
section for texture/GLES/threading tunables).
2026-07-05 18:04:07 +02:00
Mateusz Włodarczyk
211863c921 Add dynamic lights setting and fix macOS config paths
- Add DynamicLights (0–7) setting mapped to the eu07.ini dynamiclights key,
  exposed as a slider in the Graphics section of Settings.
- Fix config file paths on macOS for eu07.ini, eu07_input-keyboard.ini,
  and userpresets.json to use ~/Library/Application Support/MaSzyna/
  instead of falling through to the Linux XDG path.
2026-06-30 21:30:52 +02:00
Sebastian Krzyszkowiak
92cfb82969 Fix field of view option name and description
Cabin shadow sources range is already handled by CabShadowsRange.
This duplicated value was setting FOV instead.
2026-06-26 21:40:31 +02:00
34758bb21d Keybinds editor 2026-06-24 19:24:06 +02:00
b977d224e9 Complete UI rebuild 2026-06-23 18:20:09 +02:00
b2f693113d Starter improvements
- scenery Description
- scenery mini
- extracted translations outside
- autoselect first consist on scenery selection
- autoexpand on group click
2026-06-17 22:00:01 +02:00
a358651a98 Add settings parsing 2026-06-16 01:20:17 +02:00
ba9c16e4c4 Added system language detection 2026-02-12 11:07:36 +01:00
a9c30bbdfe LanguageManager 2026-02-11 22:39:19 +01:00
ef74d73d5e Settings design 2025-12-23 12:14:03 +01:00