// headers
// ----------------------------------------------------------------------------
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
- #pragma implementation "containr.h"
-#endif
-
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#include "wx/radiobut.h"
#endif
+// trace mask for focus messages
+#define TRACE_FOCUS _T("focus")
+
// ============================================================================
// implementation
// ============================================================================
if ( win )
{
- wxLogTrace(_T("focus"), _T("Set last focus to %s(%s)"),
+ wxLogTrace(TRACE_FOCUS, _T("Set last focus to %s(%s)"),
win->GetClassInfo()->GetClassName(),
win->GetLabel().c_str());
}
else
{
- wxLogTrace(_T("focus"), _T("No more last focus"));
+ wxLogTrace(TRACE_FOCUS, _T("No more last focus"));
}
}
}
// --------------------------------------------------------------------
-// The following four functions are used to find other radio buttons
+// The following four functions are used to find other radio buttons
// within the same group. Used by wxSetFocusToChild on wxMSW
// --------------------------------------------------------------------
nodeBefore = nodeBefore->GetPrevious();
}
-
+
if (!prevBtn || prevBtn->HasFlag(wxRB_SINGLE))
{
// no more buttons in group
wxRadioButton* prevBtn = wxGetPreviousButtonInGroup(btn);
if (!prevBtn)
return btn;
-
+
btn = prevBtn;
}
}
return NULL;
}
-#endif __WXMSW__
+#endif // __WXMSW__
// ----------------------------------------------------------------------------
// Keyboard handling - this is the place where the TAB traversal logic is
if ( winFocus )
{
#ifdef __WXMSW__
- // If we are in a radio button group, start from the first item in the
+ // If we are in a radio button group, start from the first item in the
// group
if ( event.IsFromTab() && wxIsKindOf(winFocus, wxRadioButton ) )
winFocus = wxGetFirstButtonInGroup((wxRadioButton*)winFocus);
{
if (!wxIsKindOf(child, wxRadioButton))
{
- child = forward ?
- wxGetNextButtonInGroup((wxRadioButton*)m_winLastFocused) :
+ child = forward ?
+ wxGetNextButtonInGroup((wxRadioButton*)m_winLastFocused) :
wxGetPreviousButtonInGroup((wxRadioButton*)m_winLastFocused);
if (!child)
{
bool wxControlContainer::DoSetFocus()
{
- wxLogTrace(_T("focus"), _T("SetFocus on wxPanel 0x%08lx."),
- (unsigned long)m_winParent->GetHandle());
+ wxLogTrace(TRACE_FOCUS, _T("SetFocus on wxPanel 0x%p."),
+ m_winParent->GetHandle());
if (m_inSetFocus)
return true;
void wxControlContainer::HandleOnFocus(wxFocusEvent& event)
{
- wxLogTrace(_T("focus"), _T("OnFocus on wxPanel 0x%08lx, name: %s"),
- (unsigned long)m_winParent->GetHandle(),
+ wxLogTrace(TRACE_FOCUS, _T("OnFocus on wxPanel 0x%p, name: %s"),
+ m_winParent->GetHandle(),
m_winParent->GetName().c_str() );
DoSetFocus();
// It might happen that the window got reparented
if ( (*childLastFocused)->GetParent() == win )
{
- wxLogTrace(_T("focus"),
- _T("SetFocusToChild() => last child (0x%08lx)."),
- (unsigned long)(*childLastFocused)->GetHandle());
+ wxLogTrace(TRACE_FOCUS,
+ _T("SetFocusToChild() => last child (0x%p)."),
+ (*childLastFocused)->GetHandle());
// not SetFocusFromKbd(): we're restoring focus back to the old
// window and not setting it as the result of a kbd action
if ( child->AcceptsFocusFromKeyboard() && !child->IsTopLevel() )
{
#ifdef __WXMSW__
- // If a radiobutton is the first focusable child, search for the
+ // If a radiobutton is the first focusable child, search for the
// selected radiobutton in the same group
wxRadioButton* btn = wxDynamicCast(child, wxRadioButton);
if (btn)
}
#endif
- wxLogTrace(_T("focus"),
- _T("SetFocusToChild() => first child (0x%08lx)."),
- (unsigned long)child->GetHandle());
+ wxLogTrace(TRACE_FOCUS,
+ _T("SetFocusToChild() => first child (0x%p)."),
+ child->GetHandle());
*childLastFocused = child;
child->SetFocusFromKbd();