InspectableFieldStyle.cs 1.2 KB

12345678910111213141516171819202122232425262728
  1. //********************************** Banshee Engine (www.banshee3d.com) **************************************************//
  2. //**************** Copyright (c) 2016 Marko Pintera ([email protected]). All rights reserved. **********************//
  3. using BansheeEngine;
  4. namespace BansheeEditor
  5. {
  6. /// <summary>
  7. /// Contains style information about inspectable items.
  8. /// </summary>
  9. public abstract class InspectableFieldStyle
  10. {
  11. /// <summary>
  12. /// Creates all the relevant style information for a SerializableField.
  13. /// </summary>
  14. /// <param name="field">Field to create the style info structure for.</param>
  15. /// <returns>Style information retrieved from the field.</returns>
  16. public static InspectableFieldStyleInfo Create(SerializableField field)
  17. {
  18. SerializableFieldStyle style = field.Style;
  19. var styleInfo = new InspectableFieldStyleInfo();
  20. styleInfo.RangeStyle = style.HasRange ? new InspectableFieldRangeStyle(style.RangeMin, style.RangeMax, style.DisplayAsSlider) : null;
  21. styleInfo.StepStyle = style.HasStep ? new InspectableFieldStepStyle(style.StepIncrement) : null;
  22. return styleInfo;
  23. }
  24. }
  25. }