BsScriptImportOptions.h 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. #pragma once
  2. #include "BsScriptEditorPrerequisites.h"
  3. #include "BsScriptObject.h"
  4. #include "BsPixelData.h"
  5. #include "BsGpuProgram.h"
  6. namespace BansheeEngine
  7. {
  8. class BS_SCR_BED_EXPORT ScriptImportOptionsBase : public ScriptObjectBase
  9. {
  10. public:
  11. SPtr<ImportOptions> getImportOptions() const { return mImportOptions; }
  12. protected:
  13. ScriptImportOptionsBase(MonoObject* instance);
  14. virtual ~ScriptImportOptionsBase() {}
  15. SPtr<ImportOptions> mImportOptions;
  16. };
  17. class BS_SCR_BED_EXPORT ScriptImportOptions : public ScriptObject <ScriptImportOptions, ScriptImportOptionsBase>
  18. {
  19. public:
  20. static String getAssemblyName() { return EDITOR_ASSEMBLY; }
  21. static String getNamespace() { return "BansheeEditor"; }
  22. static String getTypeName() { return "ImportOptions"; }
  23. static void initRuntimeData() { }
  24. static MonoObject* create(const SPtr<ImportOptions>& importOptions);
  25. private:
  26. ScriptImportOptions(MonoObject* instance);
  27. };
  28. class BS_SCR_BED_EXPORT ScriptTextureImportOptions : public ScriptObject<ScriptTextureImportOptions, ScriptImportOptionsBase>
  29. {
  30. public:
  31. SCRIPT_OBJ(EDITOR_ASSEMBLY, "BansheeEditor", "TextureImportOptions")
  32. static MonoObject* create();
  33. static MonoObject* create(const SPtr<TextureImportOptions>& options);
  34. private:
  35. SPtr<TextureImportOptions> getTexImportOptions();
  36. static void internal_CreateInstance(MonoObject* instance);
  37. static PixelFormat internal_GetPixelFormat(ScriptTextureImportOptions* thisPtr);
  38. static void internal_SetPixelFormat(ScriptTextureImportOptions* thisPtr, PixelFormat value);
  39. static bool internal_GetGenerateMipmaps(ScriptTextureImportOptions* thisPtr);
  40. static void internal_SetGenerateMipmaps(ScriptTextureImportOptions* thisPtr, bool value);
  41. static UINT32 internal_GetMaxMipmapLevel(ScriptTextureImportOptions* thisPtr);
  42. static void internal_SetMaxMipmapLevel(ScriptTextureImportOptions* thisPtr, UINT32 value);
  43. ScriptTextureImportOptions(MonoObject* instance);
  44. };
  45. class BS_SCR_BED_EXPORT ScriptFontImportOptions : public ScriptObject <ScriptFontImportOptions, ScriptImportOptionsBase>
  46. {
  47. public:
  48. SCRIPT_OBJ(EDITOR_ASSEMBLY, "BansheeEditor", "FontImportOptions")
  49. static MonoObject* create();
  50. static MonoObject* create(const SPtr<FontImportOptions>& options);
  51. private:
  52. SPtr<FontImportOptions> getFontImportOptions();
  53. static void internal_CreateInstance(MonoObject* instance);
  54. static MonoArray* internal_GetFontSizes(ScriptFontImportOptions* thisPtr);
  55. static void internal_SetFontSizes(ScriptFontImportOptions* thisPtr, MonoArray* value);
  56. static UINT32 internal_GetDPI(ScriptFontImportOptions* thisPtr);
  57. static void internal_SetDPI(ScriptFontImportOptions* thisPtr, UINT32 value);
  58. static bool internal_GetAntialiasing(ScriptFontImportOptions* thisPtr);
  59. static void internal_SetAntialiasing(ScriptFontImportOptions* thisPtr, bool value);
  60. static MonoArray* internal_GetCharRanges(ScriptFontImportOptions* thisPtr);
  61. static void internal_SetCharRanges(ScriptFontImportOptions* thisPtr, MonoArray* value);
  62. ScriptFontImportOptions(MonoObject* instance);
  63. };
  64. class BS_SCR_BED_EXPORT ScriptScriptCodeImportOptions : public ScriptObject <ScriptScriptCodeImportOptions, ScriptImportOptionsBase>
  65. {
  66. public:
  67. SCRIPT_OBJ(EDITOR_ASSEMBLY, "BansheeEditor", "ScriptCodeImportOptions")
  68. static MonoObject* create();
  69. static MonoObject* create(const SPtr<ScriptCodeImportOptions>& options);
  70. private:
  71. SPtr<ScriptCodeImportOptions> getCodeImportOptions();
  72. static void internal_CreateInstance(MonoObject* instance);
  73. static bool internal_IsEditorScript(ScriptScriptCodeImportOptions* thisPtr);
  74. static void internal_SetEditorScript(ScriptScriptCodeImportOptions* thisPtr, bool value);
  75. ScriptScriptCodeImportOptions(MonoObject* instance);
  76. };
  77. }