- const wxString &label = u->GetLabel();
- if(label.Length())
- m_StatusBar->SetStatusText(label,
- m_StatusFieldLabel);
+ if(!m_HandCursor)
+ SetCursor(wxCURSOR_HAND);
+ m_HandCursor = TRUE;
+ if(m_StatusBar && m_StatusFieldLabel != -1)
+ {
+ const wxString &label = u->GetLabel();
+ if(label.Length())
+ {
+ m_StatusBar->SetStatusText(label,
+ m_StatusFieldLabel);
+ s_hasPutMessageInStatusBar = true;
+ }
+ }
+ }
+ else
+ {
+ if(m_HandCursor)
+ SetCursor(wxCURSOR_IBEAM);
+ m_HandCursor = FALSE;
+ if( m_StatusBar && m_StatusFieldLabel != -1 &&
+ s_hasPutMessageInStatusBar )
+ {
+ m_StatusBar->SetStatusText("", m_StatusFieldLabel);
+ }