* 20170818: move Text, Textblock object based on its original position in smart move
* 20170830: fix valign issue when slide_roll style.
* 20170906: apply x/y offset to run marquee with short text
+ * 20171204: add text marquee always set/get APIs for internal usages
*
**********************************************************************************/
#define EDJE_DEFAULT_FADE_IMAGE "edje_default_fade_image.png"
}
/* Hide fade image if text is not exceed the given area. */
- if ((chosen_desc->text.ellipsize.marquee.mode != EDJE_TEXT_ELLIPSIZE_MARQUEE_MODE_ALWAYS) &&
+ if (((chosen_desc->text.ellipsize.marquee.mode != EDJE_TEXT_ELLIPSIZE_MARQUEE_MODE_ALWAYS) &&
+ (!ep->typedata.text->ellipsize.marquee.always)) &&
((tw <= pf->final.w) && (th <= pf->final.h)))
{
if (ep->typedata.text->ellipsize.clipper_obj)
}
}
/* END */
+ /* TIZEN_ONLY(20171204): add text marquee always set/get APIs for internal usages */
+ @property part_text_marquee_always @internal {
+ set {
+ [[Sets the always mode for text's marquee.
+
+ Do not use this API without understanding whats going on.
+ It is made for internal usage.
+ ]]
+ return: bool; [[$true, on success or $false, on error]]
+ }
+ get {
+ [[Gets the always mode for text's marquee.
+
+ Do not use this API without understanding whats going on.
+ It is made for internal usage.
+ ]]
+ }
+ keys {
+ part: const(char)*; [[The part name]]
+ }
+ values {
+ always: bool; [[The always mode]]
+ }
+ }
+ /* END */
}
implements {
Eo.Base.constructor;
double duration;
double speed;
+ Eina_Bool always : 1;
} marquee;
} ellipsize;
/* END */
}
/* END */
+/* TIZEN_ONLY(20171204): add text marquee always set/get APIs for internal usages */
+EOLIAN Eina_Bool
+_edje_object_part_text_marquee_always_set(Eo *eo_obj EINA_UNUSED, Edje *ed, const char *part, Eina_Bool always)
+{
+ Edje_Real_Part *rp;
+
+ if (!part) return EINA_FALSE;
+ rp = _edje_real_part_recursive_get(&ed, part);
+ if (!rp) return EINA_FALSE;
+ if ((rp->part->type != EDJE_PART_TYPE_TEXTBLOCK) &&
+ (rp->part->type != EDJE_PART_TYPE_TEXT))
+ return EINA_FALSE;
+
+ if (rp->typedata.text)
+ {
+ if (rp->typedata.text->ellipsize.marquee.always == always)
+ return EINA_TRUE;
+
+ rp->typedata.text->ellipsize.marquee.always = always;
+
+ return EINA_TRUE;
+ }
+
+ return EINA_FALSE;
+}
+
+EOLIAN Eina_Bool
+_edje_object_part_text_marquee_always_get(Eo *eo_obj EINA_UNUSED, Edje *ed, const char *part)
+{
+ Edje_Real_Part *rp;
+ Edje_Part_Description_Text *desc;
+
+ if (!part) return EINA_FALSE;
+ rp = _edje_real_part_recursive_get(&ed, part);
+ if (!rp) return EINA_FALSE;
+ if ((rp->part->type != EDJE_PART_TYPE_TEXTBLOCK) &&
+ (rp->part->type != EDJE_PART_TYPE_TEXT))
+ return EINA_FALSE;
+
+ if (rp->typedata.text)
+ return rp->typedata.text->ellipsize.marquee.always;
+
+ return EINA_FALSE;
+}
+/* END */
+
/* vim:set ts=8 sw=3 sts=3 expandtab cino=>5n-2f0^-2{2(0W1st0 :*/