It's possible, but ugly.  I did a similar thing in a project I'm working
on where I wanted errorTips to show on focusIn/focusOut.  I created a
subclass of ToolTipManagerImpl and overrode the registerErrorTip method
- you'd want to override registerToolTip instead.  The current
implementation adds mouseOver/Out listeners to decide when to show/hide
the tooltip.  You can change this to add a click listener instead.

Then, you have to monkey patch ToolTipManager so that it uses your
ToolTipManagerImpl subclass.  In the getter for the impl property, just
change it to create a new instance of your subclass instead of checking
the Singleton registry.



That should be a start, anyway, if you're up to some hacks.

--- In [email protected], "Borek" <[EMAIL PROTECTED]> wrote:
>
> My situation is that users can hover over a help icon and get a nice
> help tooltip. One problem is that this tooltip isn't displayed
> immediately (there is a 0.5s lag by default) which is easily fixed by
> showDelay property on ToolTipManager. However, there is this second
> problem: some users click the help icon instead of just hovering over
> it. This will unfortunately hide the tooltip so the action is exactly
> opposite of what the users expected.
>
> The was to fix this would be something like
>
> <Image id="helpIcon" click="helpIcon.showTooltip()" tooltip="Some help
> text" ... />
>
> which would trigger tooltip creation as usual. Unfortunately, there is
> no method like that [in Flex 2] and I couldn't find any feasible
> replacement. Is there any solution to this?
>
> N.B. ToolTipManager.createToolTip() doesn't help - first of all, it
> creates an instance of ToolTip (which is hardcoded which I think is
> wrong - it should respect ToolTipManager.toolTipClass IMO). Second,
> this method is for generic creation of arbitraty tooltips which is not
> my case - I like my tooltip and just want to find a way to trigger it
> other than hovering over the UIComponent with a mouse.
>
> P.P.S In the internal ToolTipManagerImls class, there is a (private)
> method createTip(). Well that sounds good except it's a private method
> in an internal class...
>


Reply via email to