Merge pull request #52082 from williamd67/fix-custom-effects-dropdown-menu
RichTextLabel returns member (Array) for custom effects for Editor
This commit is contained in:
commit
43c896ac6a
2 changed files with 11 additions and 19 deletions
|
@ -3946,24 +3946,15 @@ float RichTextLabel::get_percent_visible() const {
|
|||
return percent_visible;
|
||||
}
|
||||
|
||||
void RichTextLabel::set_effects(const Vector<Variant> &effects) {
|
||||
custom_effects.clear();
|
||||
for (int i = 0; i < effects.size(); i++) {
|
||||
Ref<RichTextEffect> effect = Ref<RichTextEffect>(effects[i]);
|
||||
custom_effects.push_back(effect);
|
||||
}
|
||||
|
||||
void RichTextLabel::set_effects(Array p_effects) {
|
||||
custom_effects = p_effects;
|
||||
if ((bbcode != "") && use_bbcode) {
|
||||
parse_bbcode(bbcode);
|
||||
}
|
||||
}
|
||||
|
||||
Vector<Variant> RichTextLabel::get_effects() {
|
||||
Vector<Variant> r;
|
||||
for (int i = 0; i < custom_effects.size(); i++) {
|
||||
r.push_back(custom_effects[i]);
|
||||
}
|
||||
return r;
|
||||
Array RichTextLabel::get_effects() {
|
||||
return custom_effects;
|
||||
}
|
||||
|
||||
void RichTextLabel::install_effect(const Variant effect) {
|
||||
|
@ -4279,12 +4270,13 @@ void RichTextLabel::_draw_fbg_boxes(RID p_ci, RID p_rid, Vector2 line_off, Item
|
|||
|
||||
Ref<RichTextEffect> RichTextLabel::_get_custom_effect_by_code(String p_bbcode_identifier) {
|
||||
for (int i = 0; i < custom_effects.size(); i++) {
|
||||
if (!custom_effects[i].is_valid()) {
|
||||
Ref<RichTextEffect> effect = custom_effects[i];
|
||||
if (!effect.is_valid()) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (custom_effects[i]->get_bbcode() == p_bbcode_identifier) {
|
||||
return custom_effects[i];
|
||||
if (effect->get_bbcode() == p_bbcode_identifier) {
|
||||
return effect;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -363,7 +363,7 @@ private:
|
|||
ItemMeta *meta_hovering = nullptr;
|
||||
Variant current_meta;
|
||||
|
||||
Vector<Ref<RichTextEffect>> custom_effects;
|
||||
Array custom_effects;
|
||||
|
||||
void _invalidate_current_line(ItemFrame *p_frame);
|
||||
void _validate_line_caches(ItemFrame *p_frame);
|
||||
|
@ -577,8 +577,8 @@ public:
|
|||
void set_percent_visible(float p_percent);
|
||||
float get_percent_visible() const;
|
||||
|
||||
void set_effects(const Vector<Variant> &effects);
|
||||
Vector<Variant> get_effects();
|
||||
void set_effects(Array p_effects);
|
||||
Array get_effects();
|
||||
|
||||
void install_effect(const Variant effect);
|
||||
|
||||
|
|
Loading…
Reference in a new issue