Skip to content

Commit

Permalink
Minor edits from main repo
Browse files Browse the repository at this point in the history
  • Loading branch information
Aragas committed Apr 16, 2020
1 parent 59bda16 commit 28b706a
Show file tree
Hide file tree
Showing 9 changed files with 50 additions and 50 deletions.
4 changes: 2 additions & 2 deletions Actions/ComplexAction.cs
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ public ComplexAction(T value, Action<T> doFunction, Action<T> undoFunction)
UndoFunction = undoFunction;
}

public void Do() => DoFunction?.Invoke((T) Value);
public void Undo() => UndoFunction?.Invoke((T) Value);
public void DoAction() => DoFunction?.Invoke((T) Value);
public void UndoAction() => UndoFunction?.Invoke((T) Value);
}
}
4 changes: 2 additions & 2 deletions Actions/SetFloatSettingProperty.cs
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ public SetFloatSettingProperty(SettingProperty settingProperty, float value)
_originalValue = SettingProperty.IntValue;
}

public void Do() => SettingProperty.FloatValue = (float)Value;
public void Undo() => SettingProperty.FloatValue = _originalValue;
public void DoAction() => SettingProperty.FloatValue = (float)Value;
public void UndoAction() => SettingProperty.FloatValue = _originalValue;
}
}
4 changes: 2 additions & 2 deletions Actions/SetIntSettingProperty.cs
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ public SetIntSettingProperty(SettingProperty settingProperty, int value)
_originalValue = SettingProperty.IntValue;
}

public void Do() => SettingProperty.IntValue = (int)Value;
public void Undo() => SettingProperty.IntValue = _originalValue;
public void DoAction() => SettingProperty.IntValue = (int)Value;
public void UndoAction() => SettingProperty.IntValue = _originalValue;
}
}
4 changes: 2 additions & 2 deletions Actions/SetValueAction.cs
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ public SetValueAction(Ref context, T value)
Original = (T) Context.Value;
}

public void Do() => Context.Value = Value;
public void Undo() => Context.Value = Original;
public void DoAction() => Context.Value = Value;
public void UndoAction() => Context.Value = Original;
}
}
23 changes: 12 additions & 11 deletions GUI/v1a/Views/EditableTextWidget.cs
Original file line number Diff line number Diff line change
Expand Up @@ -62,18 +62,19 @@ public override void HandleInput(IReadOnlyList<int> lastKeysPressed)
continue;
}
base.HandleInput(lastKeysPressed);
float value;
float.TryParse(RealText, out value);
var newVal = value;
if (value > MaxValue)
newVal = MaxValue;
else if (value < MinValue)
newVal = MinValue;
if (newVal != value)
if (float.TryParse(RealText, out var value))
{
var format = SettingType == SettingType.Int ? "0" : "0.00";
RealText = newVal.ToString(format);
_editableWidget.SetCursorPosition(0, true);
float newVal = value;
if (value > MaxValue)
newVal = MaxValue;
else if (value < MinValue)
newVal = MinValue;
if (newVal != value)
{
string format = SettingType == SettingType.Int ? "0" : "0.00";
RealText = newVal.ToString(format);
_editableWidget.SetCursorPosition(0, true);
}
}
}
}
Expand Down
4 changes: 2 additions & 2 deletions Interfaces/IAction.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ public interface IAction
{
Ref Context { get; }
object Value { get; }
void Do();
void Undo();
void DoAction();
void UndoAction();
}
}
2 changes: 1 addition & 1 deletion MBOptionScreen.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
<PackageId>Bannerlord.MBOptionScreen</PackageId>
<IncludeSymbols>true</IncludeSymbols>
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
<Version>1.0.4</Version>
<Version>1.1.0</Version>
</PropertyGroup>

<ItemGroup>
Expand Down
47 changes: 23 additions & 24 deletions Settings/SimpleJsonSettingsProvider.cs
Original file line number Diff line number Diff line change
Expand Up @@ -54,30 +54,29 @@ internal class SimpleJsonSettingsProvider : ISettingsProvider

public bool RegisterSettings(SettingsBase settingsInstance)
{
if (!LoadedSettings.ContainsKey(settingsInstance.Id))
if (settingsInstance == null || LoadedSettings.ContainsKey(settingsInstance.Id))
return false;

LoadedSettings.Add(settingsInstance.Id, settingsInstance);

var path = Path.Combine(_defaultRootFolder, settingsInstance.ModuleFolderName,
$"{settingsInstance.Id}.json");
var file = new FileInfo(path);
if (file.Exists)
{
LoadedSettings.Add(settingsInstance.Id, settingsInstance);

var path = Path.Combine(_defaultRootFolder, settingsInstance.ModuleFolderName, $"{settingsInstance.Id}.json");
var file = new FileInfo(path);
if (file.Exists)
{
using var reader = file.OpenText();
var content = reader.ReadToEnd();
JsonConvert.PopulateObject(content, settingsInstance, _jsonSerializerSettings);
}
else
{
var content = JsonConvert.SerializeObject(settingsInstance, _jsonSerializerSettings);
file.Directory?.Create();
using var writer = file.CreateText();
writer.Write(content);
}

return true;
using var reader = file.OpenText();
var content = reader.ReadToEnd();
JsonConvert.PopulateObject(content, settingsInstance, _jsonSerializerSettings);
}
else
return false;
{
var content = JsonConvert.SerializeObject(settingsInstance, _jsonSerializerSettings);
file.Directory?.Create();
using var writer = file.CreateText();
writer.Write(content);
}

return true;
}

public SettingsBase? GetSettings(string id) => LoadedSettings.TryGetValue(id, out var result)
Expand All @@ -86,7 +85,7 @@ public bool RegisterSettings(SettingsBase settingsInstance)

public void SaveSettings(SettingsBase settingsInstance)
{
if (!LoadedSettings.ContainsKey(settingsInstance.Id))
if (settingsInstance == null || !LoadedSettings.ContainsKey(settingsInstance.Id))
return;

var path = Path.Combine(_defaultRootFolder, settingsInstance.ModuleFolderName, $"{settingsInstance.Id}.json");
Expand All @@ -100,7 +99,7 @@ public void SaveSettings(SettingsBase settingsInstance)

public bool OverrideSettingsWithId(SettingsBase newSettingsInstance, string id)
{
if (!LoadedSettings.ContainsKey(newSettingsInstance.Id))
if (newSettingsInstance == null || !LoadedSettings.ContainsKey(newSettingsInstance.Id))
return false;

LoadedSettings[id] = newSettingsInstance;
Expand All @@ -109,7 +108,7 @@ public bool OverrideSettingsWithId(SettingsBase newSettingsInstance, string id)

public SettingsBase ResetSettingsInstance(SettingsBase settingsInstance)
{
if (!LoadedSettings.ContainsKey(settingsInstance.Id))
if (settingsInstance == null || !LoadedSettings.ContainsKey(settingsInstance.Id))
return null;

var defaultSettingsInstance = (SettingsBase) Activator.CreateInstance(settingsInstance.GetType());
Expand Down
8 changes: 4 additions & 4 deletions UndoRedoStack.cs
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ public UndoRedoStack()
/// <param name="action"></param>
public void Do(IAction action)
{
action.Do();
action.DoAction();
UndoStack.Push(action);
RedoStack.Clear();
}
Expand All @@ -41,7 +41,7 @@ public void Undo()
if (CanUndo)
{
var a = UndoStack.Pop();
a.Undo();
a.UndoAction();
RedoStack.Push(a);
}
}
Expand All @@ -54,7 +54,7 @@ public void Redo()
if (CanRedo)
{
var a = RedoStack.Pop();
a.Do();
a.DoAction();
UndoStack.Push(a);
}
}
Expand All @@ -69,7 +69,7 @@ public void UndoAll()
while (UndoStack.Count > 0)
{
var a = UndoStack.Pop();
a.Undo();
a.UndoAction();
}
}
if (HasInitials)
Expand Down

0 comments on commit 28b706a

Please sign in to comment.