summaryrefslogtreecommitdiff
path: root/editor/plugins
diff options
context:
space:
mode:
authorbruvzg <7645683+bruvzg@users.noreply.github.com>2022-04-25 13:14:30 +0300
committerbruvzg <7645683+bruvzg@users.noreply.github.com>2022-05-13 08:20:22 +0300
commit05963674a7a59ae949095173da7278044e58ced8 (patch)
treeacfdb6ce36333cf714b8eee70cc0072ee8c86015 /editor/plugins
parent2f47a0747cd0ab0c823dee831167d168ec844f11 (diff)
Implement TextMesh resource.
Apply simulated slant and embolden to the TextServer `gont_get_glyph_contours` results.
Diffstat (limited to 'editor/plugins')
-rw-r--r--editor/plugins/ot_features_plugin.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/editor/plugins/ot_features_plugin.cpp b/editor/plugins/ot_features_plugin.cpp
index ffa74173be..f8526fb715 100644
--- a/editor/plugins/ot_features_plugin.cpp
+++ b/editor/plugins/ot_features_plugin.cpp
@@ -31,6 +31,7 @@
#include "ot_features_plugin.h"
#include "scene/3d/label_3d.h"
+#include "scene/resources/primitive_meshes.h"
void OpenTypeFeaturesEditor::_value_changed(double val) {
if (setting) {
@@ -124,11 +125,14 @@ void OpenTypeFeaturesAdd::setup(Object *p_object) {
Control *ctrl = Object::cast_to<Control>(edited_object);
if (ctrl != nullptr) {
font = ctrl->get_theme_font(SNAME("font"));
- } else {
- Label3D *l3d = Object::cast_to<Label3D>(edited_object);
- if (l3d != nullptr) {
- font = l3d->_get_font_or_default();
- }
+ }
+ Label3D *l3d = Object::cast_to<Label3D>(edited_object);
+ if (l3d != nullptr) {
+ font = l3d->_get_font_or_default();
+ }
+ TextMesh *tm = Object::cast_to<TextMesh>(edited_object);
+ if (tm != nullptr) {
+ font = tm->_get_font_or_default();
}
if (font.is_null()) {
@@ -205,7 +209,7 @@ OpenTypeFeaturesAdd::OpenTypeFeaturesAdd() {
/*************************************************************************/
bool EditorInspectorPluginOpenTypeFeatures::can_handle(Object *p_object) {
- return (Object::cast_to<Control>(p_object) != nullptr) || (Object::cast_to<Label3D>(p_object) != nullptr);
+ return (Object::cast_to<Control>(p_object) != nullptr) || (Object::cast_to<Label3D>(p_object) != nullptr) || (Object::cast_to<TextMesh>(p_object) != nullptr);
}
bool EditorInspectorPluginOpenTypeFeatures::parse_property(Object *p_object, const Variant::Type p_type, const String &p_path, const PropertyHint p_hint, const String &p_hint_text, const uint32_t p_usage, const bool p_wide) {