* initial system (this math is probably WRONG) * General code cleanup and OnExamined support (holy moly this code sucks) * UICode and related events foundation TODO: - Actually write the XAML UI and the underlying system - Un-shitcode the entire thing - Actually test everything... * Working UI code TODO: Make predicted, as this certainly isn't predicted. Even though I said it was. It isn't. * Remove one TODO for unshitcoding the examine code * Add reminder yea * Make predicted (defenitely isn't) (also defenitely isn't a copypaste from pressure pump code) * It's predicted! TODO: - Give it snazzy predicted visuals! - Have a different field for pressure entry, lest it gets bulldozed every UI update. * Improve gas pressure relief valve UI TODO: Reminder to reduce amount of dirties using deltafields * Implement DirtyField prediction * Entity<T> cleanup A lot of Entity<T> conversions and lukewarm cleanup. Also got caught copy pasting code in 4K UHD but it's not like you couldn't tell. * More cleanup and comments * Remove TODO comment on bulldozing window title * """refactoring""" - Move appearance out of shared and finally fix it. Pointless to predict appearance in this instance. - More Entity<T> conversions because I like them. - Move UI creation handling over entirely to the ActivatableUI system. - Fix a hardcoded locale string (why????). * Add visuals * Revert debugging variable replacememt yea * Revert skissue * Remove unused using directives and remove TODO * Localize, cleanup, document * Fix adminlogging discrepancy * Add ability to construct, add guidebook entry * Clear up comment * Add guidebook tooltip to valve * Convert GasPressureReliefValveBoundUserInterface declaration into primary constructor * Adds more input handling and adds autofill on open * Un-deepfry input validator shitcode Genuinely what was I smoking * improve visuals logic * Refactor again - Update math to the correct implementation - Moved code that could be re-used in the future into a helper method under AtmosphereSystem.Gases.cs * I'm sorry but I hate warnings * Remove unused using directive in AtmosphereSystem.Gases.cs * Review and cleanup * Lukewarm UI glossup * Maintainer for the upstream project btw * Remove redundant state sets and messy logic * Unduplicate valve updater code * Redo UI (im sorry Slarti) * run tests * Test refactored UI messaging * Second round of UI improvements - God please find a way to improve this system. Feels bad. * Update loop implementation * Further predict UI * Clear up SetToCurrentThreshold * cleanup * Update to master + pipe layers and bug fixes want to run tests * fixes * Deploy rename pipebomb * Documentation and requested changes * Rename the method that wiggled away * Undo rounding changes * Fix comment * Rename and cleanup * Apply suggestions from code review --------- Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
97 lines
5.5 KiB
XML
97 lines
5.5 KiB
XML
<controls:FancyWindow xmlns="https://spacestation14.io"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
xmlns:controls="clr-namespace:Content.Client.UserInterface.Controls"
|
|
SetSize="345 380"
|
|
MinSize="345 380"
|
|
Title="{Loc gas-pressure-regulator-ui-title}"
|
|
Resizable="False">
|
|
|
|
<BoxContainer Orientation="Vertical">
|
|
|
|
<BoxContainer Orientation="Vertical" Margin="0 10 0 10">
|
|
|
|
<BoxContainer Orientation="Vertical" Align="Center">
|
|
<Label Text="{Loc gas-pressure-regulator-ui-outlet}" Align="Center" StyleClasses="LabelKeyText" />
|
|
<BoxContainer Orientation="Horizontal" HorizontalAlignment="Center">
|
|
<Label Name="OutletPressureLabel" Text="N/A" Margin="0 0 4 0" />
|
|
<Label Text="{Loc gas-pressure-regulator-ui-pressure-unit}" />
|
|
</BoxContainer>
|
|
</BoxContainer>
|
|
|
|
<BoxContainer Orientation="Horizontal" Align="Center">
|
|
<BoxContainer Orientation="Vertical" Align="Center" HorizontalExpand="True">
|
|
<Label Text="{Loc gas-pressure-regulator-ui-target}" Align="Right" StyleClasses="LabelKeyText" />
|
|
<BoxContainer Orientation="Horizontal" HorizontalAlignment="Right">
|
|
<Label Name="TargetPressureLabel" Margin="0 0 4 0" />
|
|
<Label Text="{Loc gas-pressure-regulator-ui-pressure-unit}" />
|
|
</BoxContainer>
|
|
</BoxContainer>
|
|
|
|
<ProgressBar Name="ToTargetBar" MaxValue="1" SetSize="5 75" Margin="10" Vertical="True" />
|
|
|
|
<SpriteView Name="EntityView" SetSize="64 64" Scale="3 3" OverrideDirection="North" Margin="0" />
|
|
|
|
<ProgressBar Name="FlowRateBar" MaxValue="1" SetSize="5 75" Margin="10" Vertical="True" />
|
|
|
|
<BoxContainer Orientation="Vertical" Align="Center" HorizontalExpand="True">
|
|
<Label Text="{Loc gas-pressure-regulator-ui-flow}" StyleClasses="LabelKeyText" />
|
|
<BoxContainer Orientation="Horizontal">
|
|
<Label Name="CurrentFlowLabel" Text="N/A" Margin="0 0 4 0" />
|
|
<Label Text="{Loc gas-pressure-regulator-ui-flow-rate-unit}" />
|
|
</BoxContainer>
|
|
</BoxContainer>
|
|
</BoxContainer>
|
|
|
|
<BoxContainer Orientation="Vertical" Align="Center" Margin="1">
|
|
<Label Text="{Loc gas-pressure-regulator-ui-inlet}" Align="Center" StyleClasses="LabelKeyText" />
|
|
<BoxContainer Orientation="Horizontal" HorizontalAlignment="Center">
|
|
<Label Name="InletPressureLabel" Text="N/A" Margin="0 0 4 0" />
|
|
<Label Text="{Loc gas-pressure-regulator-ui-pressure-unit}" />
|
|
</BoxContainer>
|
|
</BoxContainer>
|
|
|
|
</BoxContainer>
|
|
|
|
<!-- Controls to Set Pressure -->
|
|
<controls:StripeBack Name="SetPressureStripeBack" HorizontalExpand="True">
|
|
<BoxContainer Orientation="Vertical" HorizontalExpand="True" Margin="10 10 10 10">
|
|
<BoxContainer Orientation="Horizontal" HorizontalExpand="True">
|
|
<LineEdit Name="ThresholdInput" HorizontalExpand="True" MinSize="70 0" />
|
|
<Button Name="SetThresholdButton" Text="{Loc gas-pressure-regulator-ui-set-threshold}"
|
|
Disabled="True" Margin="5 0 0 0" />
|
|
</BoxContainer>
|
|
|
|
<BoxContainer Orientation="Horizontal" HorizontalExpand="True" Margin="0 5 0 0">
|
|
<Button Name="Subtract1000Button" Text="{Loc gas-pressure-regulator-ui-subtract-1000}"
|
|
HorizontalExpand="True" Margin="0 2 2 0"
|
|
StyleClasses="OpenBoth" />
|
|
<Button Name="Subtract100Button" Text="{Loc gas-pressure-regulator-ui-subtract-100}"
|
|
HorizontalExpand="True" Margin="0 2 2 0"
|
|
StyleClasses="OpenBoth" />
|
|
<Button Name="Subtract10Button" Text="{Loc gas-pressure-regulator-ui-subtract-10}"
|
|
HorizontalExpand="True" Margin="0 2 2 0"
|
|
StyleClasses="OpenBoth" />
|
|
<Button Name="Add10Button" Text="{Loc gas-pressure-regulator-ui-add-10}" HorizontalExpand="True"
|
|
Margin="0 2 2 0"
|
|
StyleClasses="OpenBoth" />
|
|
<Button Name="Add100Button" Text="{Loc gas-pressure-regulator-ui-add-100}"
|
|
HorizontalExpand="True" Margin="0 2 2 0"
|
|
StyleClasses="OpenBoth" />
|
|
<Button Name="Add1000Button" Text="{Loc gas-pressure-regulator-ui-add-1000}"
|
|
HorizontalExpand="True" Margin="0 2 2 0"
|
|
StyleClasses="OpenBoth" />
|
|
</BoxContainer>
|
|
|
|
<BoxContainer Orientation="Horizontal" HorizontalExpand="True" Margin="0 5 0 0">
|
|
<Button Name="ZeroThresholdButton" Text="{Loc gas-pressure-regulator-ui-zero-threshold}"
|
|
HorizontalExpand="True" Margin="0 0 5 0" />
|
|
<Button Name="SetToCurrentPressureButton"
|
|
Text="{Loc gas-pressure-regulator-ui-set-to-current-pressure}" HorizontalExpand="True" />
|
|
</BoxContainer>
|
|
</BoxContainer>
|
|
</controls:StripeBack>
|
|
|
|
</BoxContainer>
|
|
|
|
</controls:FancyWindow>
|