* Adding sorting to chem master
* Chem Master can now sort based on following categories
- Alphabetical
- Quantity
- Time Added to Machine
* Sorting is disabled by default and persist in the machine for everyone
* Removed some pointless code from Chem Master's UI
* Changed None and Time Added's text to reflect what they do better
* Minor adjustments to the code requested by maintainers
* Creates Content.Shared.Chemistry.Solutions
Copies Solution class to new namespace
Obsoletes old Solution class
* Switches over to the Solutions.Solution Solution
* Creates Content.Shared.Chemistry.Containers
Copies relevant components/systems to the new namespace
Obsoletes old versions
* Switches over to the Containers.XYZ namespace
* Creates SolutionSystem and obsoletes old SolutionContainerSystem methods
* Start using SolutionSystem for Solution manipulation
* EnumerateSolutions
* Move TryGetMixableSolution
* Move EnsureSolution to Server
* Create Solution Entities
* Stop using obsolete solution system methods
* Fix prototype component tests
* Add using ..Audio.Systems; back
* Wrap solution container slots in ContainerSlots
* Actually add the slot to the solution container map
* Dirty SolutionContainerComponent when ensuring solutions
* Revert namespace changes
* Remerge SolutionSystem and SolutionContainerSystem
* SolutionContainerManagerComponent refactor
* Avoid wrapping necessary code in DebugTools.Assert as it is removed when compiling for release
* Readd examine reagent sorting
* Fix errors
* Poke tests
* Fix solution names not being applied
* Fix WoolyComponent including statement
* Fix merge skew
* Fix compile errors
* Make reactions use solntities
* Reindent solution class namespace
* Field attribute changes
* AutoGenerateComponentState for SolutionContainerComponent
* SolutionContainerComponent -> ContainedSolutionComponent
* ref ReactionAttemptEvent
* Denetwork preinit solutions
* Misc 1
* Nullable TryGetSolution out vars
* Cache associated solutions
* Fix merge skew
* Use explicit regions in SharedSolutionContainerSystem.Capabilities
* Add debug assert
* Use explicit regions in SharedSolutionContainerSystem.Relay + ref SolutionContainerChangedEvent
* ContainedSolutionComponent.Name -> ContainedSolutionComponent.ContainerName
* SolutionComponent doc comments
* Implicit DataField names and property purge
* ReagentEffect DataField names
* Local variables for readability
* Sort using statements + Entity<T> event handlers
* Fix compile erros
* Fix compile errors
---------
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
* Fix doc comment on FitsInDispenserComponent
It's clearly intended to be a doc comment, but wasn't.
* Allow the ChemMaster to accept canisters and bottles
* Give the ChemMaster an output container slot
* Tweak ChemMaster UI layout
* Make more ChemMaster UI tweaks
* Update ChemMaster SpinBox max handling
* Rework the ChemMaster
* Apply suggestions from code review
Co-authored-by: Flipp Syder <76629141+vulppine@users.noreply.github.com>
* Implement PR feedback
* Switch ChemMaster to a tabbed UI layout
* Rename Amount to Dosage for clarity
* Replace Amount with Dosage in messages
* Clarify dose in UI
Co-authored-by: Flipp Syder <76629141+vulppine@users.noreply.github.com>