[haiku-bugs] Re: [Haiku] #5669: SetToolTip() can never change a tooltip unless HideToolTip() is called first.

  • From: "axeld" <trac@xxxxxxxxxxxx>
  • Date: Mon, 10 May 2010 16:02:14 -0000

#5669: SetToolTip() can never change a tooltip unless HideToolTip() is called
first.
----------------------------+-----------------------------------------------
 Reporter:  stippi          |       Owner:  axeld         
     Type:  enhancement     |      Status:  new           
 Priority:  normal          |   Milestone:  R1            
Component:  User Interface  |     Version:  R1/Development
 Keywords:                  |   Blockedby:                
 Platform:  All             |    Blocking:                
----------------------------+-----------------------------------------------
Changes (by axeld):

  * type:  bug => enhancement


Comment:

 Reference counting is needed because the BView is not the sole owner of
 the tip, and since showing/hiding it works asynchronously via messaging.

 The idea was that you need to subclass BToolTip if you want to have tool
 tips that change while they are shown - this is because you could
 otherwise not prevent the tip view from flickering, ie. you would need to
 remove its current view, and add the new one.

 In other words, changing the BToolTip is usually not what you should do,
 if you are just displaying text anyway. If you are using the "const char*"
 version of SetToolTip(), it should actually change the text on screen
 directly.

 If you manage to change the views without flicker, I wouldn't mind
 allowing to change  the BToolTip object that is currently being shown on
 the fly.

 Hope that counts as enlightening :-)

-- 
Ticket URL: <http://dev.haiku-os.org/ticket/5669#comment:1>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: