]> git.saurik.com Git - wxWidgets.git/blobdiff - src/os2/toolbar.cpp
old compilation fix for AIX from Ian Brown
[wxWidgets.git] / src / os2 / toolbar.cpp
index 0d2812a206cb67c7246330d07fe8283a192e4908..e432c1b1c615e0ae60b40d17c391795dd22659a7 100644 (file)
@@ -17,6 +17,8 @@
 #ifndef WX_PRECOMP
     #include "wx/settings.h"
     #include "wx/window.h"
+    #include "wx/frame.h"
+    #include "wx/app.h"
     #include "wx/dcclient.h"
     #include "wx/dcmemory.h"
 #endif
@@ -928,11 +930,6 @@ void wxToolBar::OnMouseEvent(
     if (!pTool)
     {
         m_vToolTimer.Stop();
-        if (m_pToolTip)
-        {
-            delete m_pToolTip;
-            m_pToolTip = NULL;
-        }
         if (m_nCurrentTool > -1)
         {
             if (rEvent.LeftIsDown())
@@ -976,10 +973,12 @@ void wxToolBar::OnMouseEvent(
             OnMouseEnter(m_nCurrentTool);
             if (!pTool->GetShortHelp().IsEmpty())
             {
+                if (m_pToolTip)
+                    delete m_pToolTip;
                 m_pToolTip = new wxToolTip(pTool->GetShortHelp());
                 m_vXMouse = (wxCoord)vPoint.x;
                 m_vYMouse = (wxCoord)vPoint.y;
-                m_vToolTimer.Start(3000L, TRUE);
+                m_vToolTimer.Start(1000L, TRUE);
             }
             if (!pTool->IsToggled())
                 RaiseTool(pTool);
@@ -1442,18 +1441,21 @@ void wxToolBar::OnTimer (
   wxTimerEvent&                     rEvent
 )
 {
-    if (rEvent.GetId() == (int)m_vToolTimer.GetTimerId())
+    if (rEvent.GetId() == m_vToolTimer.GetTimerId())
     {
         wxPoint                     vPos( m_vXMouse
                                          ,m_vYMouse
                                         );
 
         m_pToolTip->DisplayToolTipWindow(vPos);
-        m_vToolExpTimer.Start(3000L, TRUE);
+        m_vToolTimer.Stop();
+        m_vToolExpTimer.Start(4000L, TRUE);
     }
-    else if (rEvent.GetId() == (int)m_vToolExpTimer.GetTimerId())
+    else if (rEvent.GetId() == m_vToolExpTimer.GetTimerId())
     {
         m_pToolTip->HideToolTipWindow();
+        GetParent()->Refresh();
+        m_vToolExpTimer.Stop();
     }
 } // end of wxToolBar::OnTimer