GUITexture.cs 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. using System;
  2. using System.Runtime.CompilerServices;
  3. namespace BansheeEngine
  4. {
  5. public enum GUIImageScaleMode
  6. {
  7. StretchToFit,
  8. ScaleToFit,
  9. CropToFit,
  10. RepeatToFit
  11. };
  12. public sealed class GUITexture : GUIElement
  13. {
  14. internal GUITexture(GUILayout parentLayout, SpriteTexture texture, GUIImageScaleMode scale, GUIElementStyle style, params GUIOption[] options)
  15. {
  16. Internal_CreateInstance(this, parentLayout, texture, scale, style, options);
  17. }
  18. public void SetTexture(SpriteTexture texture)
  19. {
  20. Internal_SetTexture(mCachedPtr, texture);
  21. }
  22. [MethodImpl(MethodImplOptions.InternalCall)]
  23. private static extern void Internal_CreateInstance(GUITexture instance, GUILayout layout, SpriteTexture texture,
  24. GUIImageScaleMode scale, GUIElementStyle style, GUIOption[] options);
  25. [MethodImpl(MethodImplOptions.InternalCall)]
  26. private static extern void Internal_SetTexture(IntPtr nativeInstance, SpriteTexture texture);
  27. }
  28. }