GUISpace.cs 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. using System;
  2. using System.Runtime.CompilerServices;
  3. namespace BansheeEngine
  4. {
  5. public sealed class GUIFixedSpace : GUIElement
  6. {
  7. public GUIFixedSpace(int size)
  8. {
  9. Internal_CreateInstance(this, size);
  10. }
  11. internal override void SetParent(GUILayout layout)
  12. {
  13. // Space only gets one parent set on initialization and then it cannot be moved
  14. if (parent == null)
  15. {
  16. parent = layout;
  17. if (parent != null)
  18. parent.children.Add(this);
  19. }
  20. }
  21. public void SetSize(int size)
  22. {
  23. Internal_SetSize(mCachedPtr, size);
  24. }
  25. [MethodImpl(MethodImplOptions.InternalCall)]
  26. private static extern void Internal_CreateInstance(GUIFixedSpace instance, int size);
  27. [MethodImpl(MethodImplOptions.InternalCall)]
  28. private static extern void Internal_SetSize(IntPtr nativeInstance, int size);
  29. }
  30. public sealed class GUIFlexibleSpace : GUIElement
  31. {
  32. public GUIFlexibleSpace()
  33. {
  34. Internal_CreateInstance(this);
  35. }
  36. internal override void SetParent(GUILayout layout)
  37. {
  38. // Space only gets one parent set on initialization and then it cannot be moved
  39. if (parent == null)
  40. {
  41. parent = layout;
  42. if (parent != null)
  43. parent.children.Add(this);
  44. }
  45. }
  46. [MethodImpl(MethodImplOptions.InternalCall)]
  47. private static extern void Internal_CreateInstance(GUIFlexibleSpace instance);
  48. }
  49. }