Fixed some bugs and added parsing

This commit is contained in:
2023-06-16 15:48:33 -07:00
parent b35c9c3505
commit 4cbff34034
18 changed files with 167 additions and 53 deletions

View File

@@ -8,6 +8,7 @@
#include "prefabs/SimpleSpinningCubePrefab.hpp"
#include "scene/components/display/Camera.hpp"
#include "scene/components/ui/text/UIRichTextLabel.hpp"
#include "prefabs/VNTextbox.hpp"
namespace Dawn {
class HelloWorldScene : public Scene {
@@ -25,38 +26,15 @@ namespace Dawn {
auto canvas = canvasItem->addComponent<UICanvas>();
canvas->camera = camera;
auto newLabelItem = this->createSceneItem();
auto newLabel = newLabelItem->addComponent<UIRichTextLabel>();
newLabel->alignment = glm::vec4(0, 0, 0, 0);
newLabel->alignX = UI_COMPONENT_ALIGN_STRETCH;
newLabel->alignY = UI_COMPONENT_ALIGN_STRETCH;
// newLabel->maxWidth = 300.0f;
newLabel->richText = std::string(
"<font font=\"font_arial\" size=\"32\" color=\"COLOR_BLUE\">"
"Hello World\nHow are you?"
// "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
// "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
// "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
// "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
// "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
// "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
// "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
// "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
// "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
// "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
// "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
// "Lorem ipsum dolor sit amet, consectetur adipiscing elit. "
"</font>"
);
newLabelItem->transform.setParent(canvas->transform);
auto vnTextbox = VNTextbox::prefabCreate(this);
vnTextbox->transform.setParent(canvas->transform);
}
std::vector<Asset*> getRequiredAssets() override {
auto assMan = &this->game->assetManager;
std::vector<Asset*> assets;
vectorAppend(&assets, SimpleSpinningCubePrefab::getRequiredAssets(assMan));
assets.push_back(assMan->get<TrueTypeAsset>("font_arial"));
vectorAppend(&assets, VNTextbox::prefabAssets(assMan));
return assets;
}