]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/carbon/tooltip.cpp
added except sample
[wxWidgets.git] / src / mac / carbon / tooltip.cpp
index bee14fc9fb1174c9f70b4956f099aa27acda052d..73e70849f0e3ce8e2e3d53cced7d828ee24616ec 100644 (file)
@@ -1,9 +1,9 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        tooltip.cpp
 // Purpose:     wxToolTip implementation
-// Author:      Robert Roebling
+// Author:      Stefan Csomor
 // Id:          $Id$
-// Copyright:   (c) 1998 Robert Roebling
+// Copyright:   (c) Stefan Csomor
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
@@ -154,7 +154,7 @@ void wxToolTip::RelayEvent( wxWindow *win , wxMouseEvent &event )
                 s_ToolTipArea = wxRect2DInt( event.m_x - 2 , event.m_y - 2 , 4 , 4 ) ;
                 s_LastWindowEntered = win ;
                 
-                WindowRef window = MAC_WXHWND( win->MacGetRootWindow() ) ;
+                WindowRef window = MAC_WXHWND( win->MacGetTopLevelWindowRef() ) ;
                 int x = event.m_x ;
                 int y = event.m_y ;
                 wxPoint local( x , y ) ;
@@ -227,13 +227,10 @@ void wxMacToolTip::Draw()
         HMHelpContentRec tag ;
         tag.version = kMacHelpVersion;
         SetRect( &tag.absHotRect , m_position.x - 2 , m_position.y - 2 , m_position.x + 2 , m_position.y + 2 ) ;
-        GrafPtr port ;
-        GetPort( &port ) ;
-        SetPortWindowPort(m_window) ;
-        LocalToGlobal( (Point *) &tag.absHotRect.top );
-        LocalToGlobal( (Point *) &tag.absHotRect.bottom );
-        SetPort( port );
-        m_helpTextRef = m_label ;
+
+        QDLocalToGlobalRect( GetWindowPort( m_window ) , &tag.absHotRect ) ;
+
+        m_helpTextRef.Assign( m_label  , wxFONTENCODING_DEFAULT ) ;
         tag.content[kHMMinimumContentIndex].contentType = kHMCFStringContent ;
         tag.content[kHMMinimumContentIndex].u.tagCFString = m_helpTextRef ;
         tag.content[kHMMaximumContentIndex].contentType = kHMCFStringContent ;
@@ -256,14 +253,13 @@ void wxMacToolTip::Draw()
         ::GetFontInfo(&fontInfo);
         short lineh = fontInfo.ascent + fontInfo.descent + fontInfo.leading;
         short height = 0 ;
-        //    short width = TextWidth( m_label , 0 ,m_label.Length() ) ;
         
         int i = 0 ;
         int length = m_label.Length() ;
         int width = 0 ;
         int thiswidth = 0 ;
         int laststop = 0 ;
-        wxCharBuffer text = wxMacStringToCString( m_label ) ;
+        wxCharBuffer text = m_label.mb_str( wxConvLocal)  ;
 
         while( i < length )
         {