Hello,

There's still one case where the "Show All"/"Show Range..." button in the
Log window does the wrong thing. For example, if you open two Log windows
that have the "Show All" button, but change one of them to "Show Range",
the second dialog will do the Show Range action even though its button
still says "Show All".

The button text is set based on the registry setting during dialog
initialization. The code below changes it to *not* look at the registry
again when you click the button. It always will do the action that
corresponds to the current button text.

void CLogDlg::GetAll(bool bForceAll /* = false */)

{

    // fetch all requested log messages, either the specified range or

    // really *all* available log messages.

    UpdateData();



    INT_PTR entry = m_btnShow.m_nMenuResult;

    if (bForceAll)

        entry = ID_CMD_SHOWALL;



    if (entry == ID_CMD_DEFAULT)

    {

        CString buttonText;

        m_btnShow.GetWindowText(buttonText);

        if (buttonText == CString(MAKEINTRESOURCE(IDS_LOG_SHOWRANGE)))

            entry = ID_CMD_SHOWRANGE;

        else

            entry = ID_CMD_SHOWALL;

    }



    CRegDWORD reg = CRegDWORD(L"Software\\TortoiseSVN\\ShowAllEntry");

    reg = static_cast<DWORD>(entry);

...

-- 
You received this message because you are subscribed to the Google Groups 
"TortoiseSVN" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to tortoisesvn+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/tortoisesvn/CADN%2BUxxDfZ6A1REs%2BCZAOJWtJT7nv51vmp9xSJc2ia90vUAZYg%40mail.gmail.com.

Reply via email to