"add" button for new scripts

This commit is contained in:
haven1433 2023-06-19 22:00:16 -05:00
parent b3336d2bb8
commit a397cf1c71
2 changed files with 17 additions and 1 deletions

View File

@ -1274,11 +1274,22 @@ show:
public int ScriptAddress {
get => element.GetAddress("script");
set => element.SetAddress("script", value);
set {
element.SetAddress("script", value);
NotifyPropertyChanged(nameof(CanCreateScript));
}
}
public void GotoScript() => gotoAddress(ScriptAddress);
public bool CanCreateScript => ScriptAddress == Pointer.NULL;
public void CreateScript() {
var start = element.Model.FindFreeSpace(element.Model.FreeSpaceStart, 0x10);
Token.ChangeData(element.Model, start, 2);
ScriptAddress = start;
gotoAddress(start);
}
private string scriptAddressText;
public string ScriptAddressText {
get {

View File

@ -703,6 +703,11 @@
Width="22" Height="18" IsTabStop="False" Padding="0,2" BorderBrush="{DynamicResource Backlight}">
<Path Data="{res:Icon RightAngleArrow}" Fill="{DynamicResource Secondary}" Stretch="Fill" />
</local:AngleButton>
<local:AngleButton Command="{res:MethodCommand CreateScript}" Direction="Right" Grid.Row="7" Grid.Column="1" HorizontalAlignment="Right"
Visibility="{Binding CanCreateScript, Converter={StaticResource BoolToVisibility}}"
Width="22" Height="18" IsTabStop="False" Padding="0,2" BorderBrush="{DynamicResource Backlight}">
<Path Data="{res:Icon Add}" Fill="{DynamicResource Secondary}" Stretch="Fill" />
</local:AngleButton>
</Grid>
</DataTemplate>