Make sure settings are listed in-order
This commit is contained in:
parent
b6a4cd59bf
commit
0e40fe7f94
@ -10,7 +10,7 @@ use godot::{
|
||||
|
||||
use crate::{game_settings::GameSettingsManager, ui::slider::SliderContainer};
|
||||
|
||||
#[derive(Debug, Clone, Copy, PartialEq, PartialOrd, Eq, Hash)]
|
||||
#[derive(Debug, Clone, Copy, PartialEq, PartialOrd, Ord, Eq, Hash)]
|
||||
pub enum Setting {
|
||||
FoV,
|
||||
DefaultName,
|
||||
@ -111,7 +111,12 @@ impl IPanelContainer for SettingsPanel {
|
||||
);
|
||||
|
||||
if let Some(mut grid) = self.settings_grid.clone() {
|
||||
for (setting, value) in &self.settings {
|
||||
let mut keys = self.settings.keys().collect::<Vec<_>>();
|
||||
keys.sort();
|
||||
|
||||
for setting in keys.into_iter() {
|
||||
let value = self.settings.get(setting).unwrap().clone();
|
||||
|
||||
let mut label = Label::new_alloc();
|
||||
label.set_text(&setting.to_string());
|
||||
label.set_h_size_flags(SizeFlags::EXPAND | SizeFlags::SHRINK_BEGIN);
|
||||
@ -148,7 +153,7 @@ impl IPanelContainer for SettingsPanel {
|
||||
SettingValue::String(value) => {
|
||||
let mut line_edit = LineEdit::new_alloc();
|
||||
line_edit.set_custom_minimum_size(Vector2::new(100., -1.));
|
||||
line_edit.set_text(value);
|
||||
line_edit.set_text(&value);
|
||||
line_edit.set_max_length(20);
|
||||
|
||||
let setting_clone = setting.clone();
|
||||
|
||||
Loading…
Reference in New Issue
Block a user