X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ba8c1601448fa16d64c4e75a095f1cb037909c5b..068b764a5a7cc2929b1fd8ea5643f43b5cbc8762:/src/common/cshelp.cpp?ds=sidebyside diff --git a/src/common/cshelp.cpp b/src/common/cshelp.cpp index 17b26dae36..31af18593e 100644 --- a/src/common/cshelp.cpp +++ b/src/common/cshelp.cpp @@ -13,7 +13,7 @@ // declarations // ============================================================================ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma implementation "cshelp.h" #endif @@ -77,7 +77,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxContextHelp, wxObject) wxContextHelp::wxContextHelp(wxWindow* win, bool beginHelp) { - m_inHelp = FALSE; + m_inHelp = false; if (beginHelp) BeginContextHelp(win); @@ -91,21 +91,21 @@ wxContextHelp::~wxContextHelp() // Not currently needed, but on some systems capture may not work as // expected so we'll leave it here for now. -#if 0 +#ifdef __WXMOTIF__ static void wxPushOrPopEventHandlers(wxContextHelp* help, wxWindow* win, bool push) { if (push) win->PushEventHandler(new wxContextHelpEvtHandler(help)); else - win->PopEventHandler(); + win->PopEventHandler(true); - wxNode* node = win->GetChildren().First(); + wxWindowList::compatibility_iterator node = win->GetChildren().GetFirst(); while (node) { - wxWindow* child = (wxWindow*) node->Data(); + wxWindow* child = node->GetData(); wxPushOrPopEventHandlers(help, child, push); - node = node->Next(); + node = node->GetNext(); } } #endif @@ -116,7 +116,7 @@ bool wxContextHelp::BeginContextHelp(wxWindow* win) if (!win) win = wxTheApp->GetTopWindow(); if (!win) - return FALSE; + return false; wxCursor cursor(wxCURSOR_QUESTION_ARROW); wxCursor oldCursor = win->GetCursor(); @@ -126,10 +126,13 @@ bool wxContextHelp::BeginContextHelp(wxWindow* win) // wxSetCursor(cursor); #endif - m_status = FALSE; + m_status = false; +#ifdef __WXMOTIF__ + wxPushOrPopEventHandlers(this, win, true); +#else win->PushEventHandler(new wxContextHelpEvtHandler(this)); - //wxPushOrPopEventHandlers(this, win, TRUE); +#endif win->CaptureMouse(); @@ -137,8 +140,11 @@ bool wxContextHelp::BeginContextHelp(wxWindow* win) win->ReleaseMouse(); - win->PopEventHandler(TRUE); - //wxPushOrPopEventHandlers(this, win, FALSE); +#ifdef __WXMOTIF__ + wxPushOrPopEventHandlers(this, win, false); +#else + win->PopEventHandler(true); +#endif win->SetCursor(oldCursor); @@ -146,32 +152,32 @@ bool wxContextHelp::BeginContextHelp(wxWindow* win) { wxPoint pt; wxWindow* winAtPtr = wxFindWindowAtPointer(pt); - /* + +#if 0 if (winAtPtr) { - wxString msg; - msg.Printf("Picked %s (%d)", (const char*) winAtPtr->GetName(), winAtPtr->GetId()); - cout << msg << '\n'; + printf("Picked %s (%d)\n", winAtPtr->GetName().c_str(), + winAtPtr->GetId()); } - */ +#endif if (winAtPtr) DispatchEvent(winAtPtr, pt); } - return TRUE; + return true; } bool wxContextHelp::EndContextHelp() { - m_inHelp = FALSE; + m_inHelp = false; - return TRUE; + return true; } bool wxContextHelp::EventLoop() { - m_inHelp = TRUE; + m_inHelp = true; while ( m_inHelp ) { @@ -185,16 +191,16 @@ bool wxContextHelp::EventLoop() } } - return TRUE; + return true; } bool wxContextHelpEvtHandler::ProcessEvent(wxEvent& event) { if (event.GetEventType() == wxEVT_LEFT_DOWN) { - m_contextHelp->SetStatus(TRUE); + m_contextHelp->SetStatus(true); m_contextHelp->EndContextHelp(); - return TRUE; + return true; } if ((event.GetEventType() == wxEVT_CHAR) || @@ -202,31 +208,31 @@ bool wxContextHelpEvtHandler::ProcessEvent(wxEvent& event) (event.GetEventType() == wxEVT_ACTIVATE) || (event.GetEventType() == wxEVT_MOUSE_CAPTURE_CHANGED)) { - // May have already been set to TRUE by a left-click - //m_contextHelp->SetStatus(FALSE); + // May have already been set to true by a left-click + //m_contextHelp->SetStatus(false); m_contextHelp->EndContextHelp(); - return TRUE; + return true; } if ((event.GetEventType() == wxEVT_PAINT) || (event.GetEventType() == wxEVT_ERASE_BACKGROUND)) { event.Skip(); - return FALSE; + return false; } - return TRUE; + return true; } // Dispatch the help event to the relevant window bool wxContextHelp::DispatchEvent(wxWindow* win, const wxPoint& pt) { wxWindow* subjectOfHelp = win; - bool eventProcessed = FALSE; + bool eventProcessed = false; while (subjectOfHelp && !eventProcessed) { wxHelpEvent helpEvent(wxEVT_HELP, subjectOfHelp->GetId(), pt) ; - helpEvent.SetEventObject(this); + helpEvent.SetEventObject(subjectOfHelp); eventProcessed = win->GetEventHandler()->ProcessEvent(helpEvent); @@ -346,8 +352,9 @@ void wxSimpleHelpProvider::AddHelp(wxWindowBase *window, const wxString& text) void wxSimpleHelpProvider::AddHelp(wxWindowID id, const wxString& text) { - m_hashIds.erase((long)id); - m_hashIds[id] = text; + wxLongToStringHashMap::key_type key = (wxLongToStringHashMap::key_type)id; + m_hashIds.erase(key); + m_hashIds[key] = text; } // removes the association @@ -375,11 +382,13 @@ bool wxSimpleHelpProvider::ShowHelp(wxWindowBase *window) { s_tipWindow = new wxTipWindow((wxWindow *)window, text, 100, & s_tipWindow); - return TRUE; + return true; } +#else + wxUnusedVar(window); #endif // wxUSE_TIPWINDOW - return FALSE; + return false; } // ---------------------------------------------------------------------------- @@ -404,7 +413,7 @@ bool wxHelpControllerHelpProvider::ShowHelp(wxWindowBase *window) // If the help controller is capable of popping up the text... else if (m_helpController->DisplayTextPopup(text, wxGetMousePosition())) { - return TRUE; + return true; } else // ...else use the default method. @@ -415,7 +424,7 @@ bool wxHelpControllerHelpProvider::ShowHelp(wxWindowBase *window) } - return FALSE; + return false; } // Convenience function for turning context id into wxString @@ -446,7 +455,7 @@ bool wxHelpProviderModule::OnInit() // since it could pull in extra code // wxHelpProvider::Set(new wxSimpleHelpProvider); - return TRUE; + return true; } void wxHelpProviderModule::OnExit()