| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- #include "BsScriptPlainText.h"
- #include "BsScriptResourceManager.h"
- #include "BsScriptMeta.h"
- #include "BsMonoField.h"
- #include "BsMonoClass.h"
- #include "BsMonoManager.h"
- #include "BsMonoUtil.h"
- #include "BsPlainText.h"
- using namespace std::placeholders;
- namespace BansheeEngine
- {
- ScriptPlainText::ScriptPlainText(MonoObject* instance, const HPlainText& plainText)
- :TScriptResource(instance, plainText)
- {
- }
- void ScriptPlainText::initRuntimeData()
- {
- metaData.scriptClass->addInternalCall("Internal_CreateInstance", &ScriptPlainText::internal_createInstance);
- metaData.scriptClass->addInternalCall("Internal_GetText", &ScriptPlainText::internal_getText);
- metaData.scriptClass->addInternalCall("Internal_SetText", &ScriptPlainText::internal_setText);
- }
- void ScriptPlainText::internal_createInstance(MonoObject* instance, MonoString* text)
- {
- WString strText = MonoUtil::monoToWString(text);
- HPlainText plainText = PlainText::create(strText);
- ScriptPlainText* scriptInstance;
- ScriptResourceManager::instance().createScriptResource(instance, plainText, &scriptInstance);
- }
- MonoString* ScriptPlainText::internal_getText(ScriptPlainText* thisPtr)
- {
- HPlainText plainText = thisPtr->getHandle();
- return MonoUtil::wstringToMono(MonoManager::instance().getDomain(), plainText->getString());
- }
- void ScriptPlainText::internal_setText(ScriptPlainText* thisPtr, MonoString* text)
- {
- HPlainText plainText = thisPtr->getHandle();
- plainText->setString(MonoUtil::monoToWString(text));
- }
- }
|