From 6f076cb30dc735bbfc57ed4f2aced6bc74e90225 Mon Sep 17 00:00:00 2001 From: Ryan Norton Date: Thu, 21 Apr 2005 23:59:52 +0000 Subject: [PATCH] implement tooltip delay git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33812 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/cocoa/tooltip.mm | 52 ++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 50 insertions(+), 2 deletions(-) diff --git a/src/cocoa/tooltip.mm b/src/cocoa/tooltip.mm index dafd53c086..fcc9c6e0aa 100644 --- a/src/cocoa/tooltip.mm +++ b/src/cocoa/tooltip.mm @@ -29,6 +29,55 @@ #import +@interface NSToolTipManager : NSObject +{ +/* + NSWindow *toolTipWindow; + NSMutableArray *toolTips; + double toolTipDelay; + NSDate *timeToolTipRemovedFromScreen; + struct __CFRunLoopTimer *toolTipDisplayTimer; + NSToolTip *currentDisplayedToolTip; + NSToolTip *currentFadingToolTip; + float currentFadeValue; + NSTimer *fadeTimer; + NSWindow *lastToolTipWindow; +*/ +} + ++ (id)sharedToolTipManager; +- (int)_addTrackingRect:(struct _NSRect)fp12 andStartToolTipIfNecessary:(BOOL)fp28 view:(id)fp32 owner:(id)fp32 toolTip:(id)fp36; +- (void)_checkToolTipDelay; +- (void)_removeToolTip:(id)fp12 stopTimerIfNecessary:(BOOL)fp16; +- (void)_removeTrackingRectForToolTip:(id)fp12 stopTimerIfNecessary:(BOOL)fp16; +- (int)_setToolTip:(id)fp12 forView:(id)fp16 cell:(id)fp20 rect:(struct _NSRect)fp20 owner:(id)fp36 ownerIsDisplayDelegate:(BOOL)fp43 userData:(void *)fp44; +- (void)_stopTimerIfRunningForToolTip:(id)fp12; +- (void)abortToolTip; +- (void)addTrackingRectForToolTip:(id)fp12; +- (void)dealloc; +- (void)displayToolTip:(id)fp12; +- (void)fadeToolTip:(id)fp12; +- (id)init; +- (void)mouseEntered:(id)fp12; +- (void)mouseEnteredToolTip:(id)fp12 inWindow:(id)fp16 withEvent:(id)fp20; +- (void)mouseExited:(id)fp12; +- (void)orderOutToolTip; +- (void)orderOutToolTipImmediately:(BOOL)fp12; +- (void)recomputeToolTipsForView:(id)fp12 remove:(BOOL)fp16 add:(BOOL)fp20; +- (void)removeAllToolTipsForView:(id)fp12; +- (void)removeToolTipForView:(id)fp12 tag:(int)fp16; +- (void)setInitialToolTipDelay:(double)fp40; +- (void)setToolTip:(id)fp12 forView:(id)fp16 cell:(id)fp20; +- (int)setToolTipForView:(id)fp12 rect:(struct _NSRect)fp16 displayDelegate:(id)fp32 userData:(void *)fp32; +- (int)setToolTipForView:(id)fp12 rect:(struct _NSRect)fp16 owner:(id)fp32 userData:(void *)fp32; +- (void)setToolTipWithOwner:(id)fp12 forView:(id)fp16 cell:(id)fp20; +- (void)startTimer:(float)fp40 userInfo:(id)fp16; +- (void)stopTimer; +- (id)toolTipForView:(id)fp12 cell:(id)fp16; +- (BOOL)viewHasToolTips:(id)fp12; + +@end + //----------------------------------------------------------------------------- // wxToolTip //----------------------------------------------------------------------------- @@ -72,8 +121,7 @@ wxWindow *wxToolTip::GetWindow() const //static void wxToolTip::SetDelay(long milliseconds) { - //TODO - wxFAIL_MSG(wxT("Not implemented")); + [[NSToolTipManager sharedToolTipManager] setInitialToolTipDelay: ((double)milliseconds) / 1000.0]; } void wxToolTip::SetWindow(wxWindow* window)