My solution to this problem is following one in my custom validator.

var host:IPopUpHost = UIUtils.findPopUpHost(hostComponent);
(host as IUIBase).dispatchEvent(new Event("cleanValidationErrors"));

czw., 9 maj 2019 o 10:34 Piotr Zarzycki <[email protected]>
napisał(a):

> Hi Carlos,
>
> Maybe let's ask differently. I have custom Validator which creates error
> tooltip. I would like to have an ability to remove that tooltip - I'm not
> interested on removing other tooltips, I would like to remove this specific.
>
> I thought that I can use destroyErrorTip (Validator class), but it's
> internal - Do you have any other proposition than making it public ?
>
> Thanks,
> Piotr
>
> czw., 9 maj 2019 o 09:43 Carlos Rovira <[email protected]>
> napisał(a):
>
>> Hi Piotr,
>>
>> please, I read the conversation but I'll need some recap here. If you
>> could
>> let me know about your needs and what's the proposed change it will help
>> to
>> me on track
>>
>> just say that "cleanValidationErrors" was introduced to be able to remove
>> all tips when user navigates from some other part of the application.
>> Since the tips are "floating" we need some "global management" to
>> hide/remove them. I think this is a usability problem and my plan is to
>> change this in the future when I redo the Form/FormItems to be more
>> responsive and flexible by making the error tips be shown below the
>> control(s) in a form item, as many forms as setup actually.
>> Other thing we need to do here is to separate the "view" part from the
>> "logic" part as Alex proposed time ago.
>>
>> thanks!
>>
>> El jue., 9 may. 2019 a las 8:10, Piotr Zarzycki (<
>> [email protected]>)
>> escribió:
>>
>> > I will wait to his response to that. Thanks for your input!
>> >
>> > czw., 9 maj 2019 o 08:06 Greg Dove <[email protected]> napisał(a):
>> >
>> > > public might be the only easy option. Maybe you want to discuss with
>> > > Carlos.
>> > >
>> > >
>> > > On Thu, May 9, 2019 at 6:04 PM Greg Dove <[email protected]> wrote:
>> > >
>> > > > Sorry my mistake Piotr, I did not check properly
>> > > > I was thinking about this and  thought it was listening to the
>> > Validator
>> > > > itself, and not just for popup host
>> > > >
>> > > >
>> > >
>> >
>> https://github.com/apache/royale-asjs/blob/3d59ccad9e5ecb4515c41ff386a0fbec28707816/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/Validator.as#L375
>> > > >
>> > > > On Thu, May 9, 2019 at 6:00 PM Piotr Zarzycki <
>> > [email protected]
>> > > >
>> > > > wrote:
>> > > >
>> > > >> What that event achieve than ? When you create your custom
>> Validator
>> > > which
>> > > >> extends Validator class - how that event help me destroy my
>> tooltips
>> > in
>> > > my
>> > > >> custom validator? It can help notify some external view when it
>> > > happened,
>> > > >> but nothing more.
>> > > >>
>> > > >> Either we go with public for that method or figure out some kind of
>> > > >> different way of doing removing, but I'm not in favor doing
>> something
>> > > >> sophisticated because we would like to remove them. Method for
>> > creation
>> > > >> tooltip is public.
>> > > >>
>> > > >> czw., 9 maj 2019 o 07:54 Greg Dove <[email protected]>
>> napisał(a):
>> > > >>
>> > > >> > Ah, so that was the other reason.... may be that can dispatch the
>> > new
>> > > >> > 'cleanValidationErrors' event now - I think I saw an event to do
>> it
>> > > now
>> > > >> > that Carlos added around March 18 ? I have not checked this, but
>> > maybe
>> > > >> you
>> > > >> > can?
>> > > >> >
>> > > >> >
>> > > >> > On Thu, May 9, 2019 at 5:45 PM Piotr Zarzycki <
>> > > >> [email protected]>
>> > > >> > wrote:
>> > > >> >
>> > > >> > > However when I make it internal following code [1] won't work,
>> > cause
>> > > >> > > retrieved validator will not have access to that method.
>> > > >> > >
>> > > >> > > [1]
>> > > >> > >
>> > > >> > >
>> > > >> >
>> > > >>
>> > >
>> >
>> https://github.com/apache/royale-asjs/blob/3d59ccad9e5ecb4515c41ff386a0fbec28707816/frameworks/projects/Jewel/src/main/royale/org/apache/royale/jewel/beads/validators/FormValidator.as#L127
>> > > >> > >
>> > > >> > > czw., 9 maj 2019 o 07:36 Piotr Zarzycki <
>> > [email protected]>
>> > > >> > > napisał(a):
>> > > >> > >
>> > > >> > > > Hi Greg,
>> > > >> > > >
>> > > >> > > > Thanks for detailed explanation. I will make destroyErrorTip
>> > > >> protected.
>> > > >> > > >
>> > > >> > > > Piotr
>> > > >> > > >
>> > > >> > > > śr., 8 maj 2019 o 22:46 Greg Dove <[email protected]>
>> > > napisał(a):
>> > > >> > > >
>> > > >> > > >> Hi Piotr,
>> > > >> > > >>
>> > > >> > > >> I remember a bit more now. I believe this was related to
>> error
>> > > tips
>> > > >> > not
>> > > >> > > >> being removed when a view state that 'owns' them changes or
>> > there
>> > > >> is
>> > > >> > > some
>> > > >> > > >> need to remove them like that other than via the Validator's
>> > > >> internal
>> > > >> > > >> code.
>> > > >> > > >> I added a utility method into FormValidator which does the
>> hard
>> > > >> work
>> > > >> > of
>> > > >> > > >> iterating validators it finds and removing errorTips, but
>> iirc
>> > > this
>> > > >> > was
>> > > >> > > >> intended to be available for individual Validators. The
>> > > alternative
>> > > >> > was
>> > > >> > > >> making the protected method public which did not seem right
>> to
>> > me
>> > > >> at
>> > > >> > the
>> > > >> > > >> time. By making it internal, I could 'export' it via a
>> utility
>> > > >> > function
>> > > >> > > so
>> > > >> > > >> that it was available externally in the rare cases that
>> needed
>> > > it.
>> > > >> > > >> I agree it is unconventional, and probably it was never the
>> > right
>> > > >> > > >> solution.
>> > > >> > > >> It looks like Carlos added a new approach near middile of
>> March
>> > > >> which
>> > > >> > is
>> > > >> > > >> event driven using 'cleanValidationErrors' to support that
>> type
>> > > of
>> > > >> > > thing,
>> > > >> > > >> so if you are happy to make that change back to protected,
>> I'd
>> > > >> suggest
>> > > >> > > go
>> > > >> > > >> ahead, or let me know if you want to do it (I will probably
>> be
>> > 1
>> > > >> day
>> > > >> > or
>> > > >> > > 2
>> > > >> > > >> before I can do that). I will need to make parallel changes
>> in
>> > > >> Carlos'
>> > > >> > > >> project, which has a number of custom validators, and which
>> > uses
>> > > >> the
>> > > >> > > >> exported utility function for override like behaviour. But
>> that
>> > > >> will
>> > > >> > be
>> > > >> > > >> easy to switch back - just a simple replace of
>> > > >> removeErrorTip(this) to
>> > > >> > > >> destroyErrorTip() once it is back to protected instead of
>> > > >> internal, I
>> > > >> > > >> think.
>> > > >> > > >>
>> > > >> > > >>
>> > > >> > > >>
>> > > >> > > >>
>> > > >> > > >>
>> > > >> > > >> On Thu, May 9, 2019 at 3:39 AM Greg Dove <
>> [email protected]>
>> > > >> wrote:
>> > > >> > > >>
>> > > >> > > >> > That was me. Iirc it was to make it possible to remove
>> error
>> > > tips
>> > > >> > from
>> > > >> > > >> > other code elsewhere... see the importable utility
>> function
>> > in
>> > > >> the
>> > > >> > > >> package
>> > > >> > > >> > and search for where it is being used. I used this inside
>> > some
>> > > >> > > >> subclasses
>> > > >> > > >> > too to achieve 'override' while still making that support
>> > > >> available
>> > > >> > > >> > elsewhere. Maybe you can find a better way.... sorry just
>> a
>> > > quick
>> > > >> > > >> reply...
>> > > >> > > >> > 3.30 am for me. I should be asleep! Will look more
>> tomorrow
>> > and
>> > > >> give
>> > > >> > > >> more
>> > > >> > > >> > detail if needed.
>> > > >> > > >> >
>> > > >> > > >> > On Thu, 9 May 2019, 03:24 Carlos Rovira, <
>> > > >> > > [email protected]
>> > > >> > > >> >
>> > > >> > > >> > wrote:
>> > > >> > > >> >
>> > > >> > > >> >> Hi Piotr,
>> > > >> > > >> >>
>> > > >> > > >> >> I'm surprised too. Maybe this change was done by Harbs
>> blur
>> > > >> > listener
>> > > >> > > /
>> > > >> > > >> >> removeTip
>> > > >> > > >> >>
>> > > >> > > >> >> Hope he can let us know the reason
>> > > >> > > >> >>
>> > > >> > > >> >>
>> > > >> > > >> >>
>> > > >> > > >> >> El mié., 8 may. 2019 a las 14:48, Piotr Zarzycki (<
>> > > >> > > >> >> [email protected]>)
>> > > >> > > >> >> escribió:
>> > > >> > > >> >>
>> > > >> > > >> >> > Hi Carlos,
>> > > >> > > >> >> >
>> > > >> > > >> >> > I have found that I cannot use destroyErrorTip  in my
>> > > project
>> > > >> > cause
>> > > >> > > >> it's
>> > > >> > > >> >> > internal. Is there any reason why it is not protected ?
>> > > >> > > >> >> >
>> > > >> > > >> >> > Thanks,
>> > > >> > > >> >> > --
>> > > >> > > >> >> >
>> > > >> > > >> >> > Piotr Zarzycki
>> > > >> > > >> >> >
>> > > >> > > >> >> > Patreon: *https://www.patreon.com/piotrzarzycki
>> > > >> > > >> >> > <https://www.patreon.com/piotrzarzycki>*
>> > > >> > > >> >> >
>> > > >> > > >> >>
>> > > >> > > >> >>
>> > > >> > > >> >> --
>> > > >> > > >> >>
>> > > >> > > >> >> <http://www.codeoscopic.com>
>> > > >> > > >> >>
>> > > >> > > >> >> Carlos Rovira
>> > > >> > > >> >>
>> > > >> > > >> >> Presidente Ejecutivo
>> > > >> > > >> >>
>> > > >> > > >> >> M: +34 607 22 60 05
>> > > >> > > >> >>
>> > > >> > > >> >> http://www.codeoscopic.com
>> > > >> > > >> >>
>> > > >> > > >> >>
>> > > >> > > >> >> Conócenos en 1 minuto! <https://avant2.es/#video>
>> > > >> > > >> >>
>> > > >> > > >> >>
>> > > >> > > >> >> AVISO LEGAL: La información contenida en este correo
>> > > >> electrónico, y
>> > > >> > > en
>> > > >> > > >> su
>> > > >> > > >> >> caso en los documentos adjuntos, es información
>> privilegiada
>> > > >> para
>> > > >> > uso
>> > > >> > > >> >> exclusivo de la persona y/o personas a las que va
>> dirigido.
>> > No
>> > > >> está
>> > > >> > > >> >> permitido el acceso a este mensaje a cualquier otra
>> persona
>> > > >> > distinta
>> > > >> > > a
>> > > >> > > >> los
>> > > >> > > >> >> indicados. Si Usted no es uno de los destinatarios,
>> > cualquier
>> > > >> > > >> duplicación,
>> > > >> > > >> >> reproducción, distribución, así como cualquier uso de la
>> > > >> > información
>> > > >> > > >> >> contenida en él o cualquiera otra acción u omisión
>> tomada en
>> > > >> > relación
>> > > >> > > >> con
>> > > >> > > >> >> el mismo, está prohibida y puede ser ilegal. En dicho
>> caso,
>> > > por
>> > > >> > > favor,
>> > > >> > > >> >> notifíquelo al remitente y proceda a la eliminación de
>> este
>> > > >> correo
>> > > >> > > >> >> electrónico, así como de sus adjuntos si los hubiere. En
>> > > >> > cumplimiento
>> > > >> > > >> de
>> > > >> > > >> >> la
>> > > >> > > >> >> legislación española vigente en materia de protección de
>> > datos
>> > > >> de
>> > > >> > > >> carácter
>> > > >> > > >> >> personal y del RGPD 679/2016 le informamos que sus datos
>> > están
>> > > >> > siendo
>> > > >> > > >> >> objeto de tratamiento por parte de CODEOSCOPIC S.A. con
>> > > >> > CIFA85677342,
>> > > >> > > >> con
>> > > >> > > >> >> la finalidad del mantenimiento y gestión de relaciones
>> > > >> comerciales
>> > > >> > y
>> > > >> > > >> >> administrativas. La base jurídica del tratamiento es el
>> > > interés
>> > > >> > > >> legítimo
>> > > >> > > >> >> de
>> > > >> > > >> >> la empresa. No se prevén cesiones de sus datos, salvo que
>> > > exista
>> > > >> > una
>> > > >> > > >> >> obligación legal. Para ejercitar sus derechos puede
>> > dirigirse
>> > > a
>> > > >> > > >> >> CODEOSCOPIC
>> > > >> > > >> >> S.A., domiciliada enPaseo de la Habana, 9-11, 28036 de
>> > Madrid
>> > > >> > > >> (MADRID), o
>> > > >> > > >> >> bien por email [email protected], con el fin de
>> ejercer
>> > > sus
>> > > >> > > >> derechos
>> > > >> > > >> >> de
>> > > >> > > >> >> acceso, rectificación, supresión (derecho al olvido),
>> > > >> limitación de
>> > > >> > > >> >> tratamiento, portabilidad de los datos, oposición, y a no
>> > ser
>> > > >> > objeto
>> > > >> > > de
>> > > >> > > >> >> decisiones automatizadas, indicando como Asunto:
>> “Derechos
>> > Ley
>> > > >> > > >> Protección
>> > > >> > > >> >> de Datos”, y adjuntando fotocopia de su DNI. Delegado de
>> > > >> protección
>> > > >> > > de
>> > > >> > > >> >> datos:[email protected]
>> > > >> > > >> >>
>> > > >> > > >> >
>> > > >> > > >>
>> > > >> > > >
>> > > >> > > >
>> > > >> > > > --
>> > > >> > > >
>> > > >> > > > Piotr Zarzycki
>> > > >> > > >
>> > > >> > > > Patreon: *https://www.patreon.com/piotrzarzycki
>> > > >> > > > <https://www.patreon.com/piotrzarzycki>*
>> > > >> > > >
>> > > >> > >
>> > > >> > >
>> > > >> > > --
>> > > >> > >
>> > > >> > > Piotr Zarzycki
>> > > >> > >
>> > > >> > > Patreon: *https://www.patreon.com/piotrzarzycki
>> > > >> > > <https://www.patreon.com/piotrzarzycki>*
>> > > >> > >
>> > > >> >
>> > > >>
>> > > >>
>> > > >> --
>> > > >>
>> > > >> Piotr Zarzycki
>> > > >>
>> > > >> Patreon: *https://www.patreon.com/piotrzarzycki
>> > > >> <https://www.patreon.com/piotrzarzycki>*
>> > > >>
>> > > >
>> > >
>> >
>> >
>> > --
>> >
>> > Piotr Zarzycki
>> >
>> > Patreon: *https://www.patreon.com/piotrzarzycki
>> > <https://www.patreon.com/piotrzarzycki>*
>> >
>>
>>
>> --
>> Carlos Rovira
>> http://about.me/carlosrovira
>>
>
>
> --
>
> Piotr Zarzycki
>
> Patreon: *https://www.patreon.com/piotrzarzycki
> <https://www.patreon.com/piotrzarzycki>*
>


-- 

Piotr Zarzycki

Patreon: *https://www.patreon.com/piotrzarzycki
<https://www.patreon.com/piotrzarzycki>*

Reply via email to