Print Page | Close Window

CHM Help display problem

Printed From: Codejock Forums
Category: Codejock Products
Forum Name: Skin Framework
Forum Description: Topics Related to Codejock Skin Framework
URL: http://forum.codejock.com/forum_posts.asp?TID=17474
Printed Date: 27 September 2024 at 7:36pm
Software Version: Web Wiz Forums 12.04 - http://www.webwizforums.com


Topic: CHM Help display problem
Posted By: kelvincannon
Subject: CHM Help display problem
Date Posted: 22 October 2010 at 1:11pm
Hi

I have a display problem with a text box in the index and search pages of a CHM help screen. The image shows the problem.


This was fine in version 13.3.1 and now in version 13.4.1 it is as above.
The problem seems to come from XTPSkinManagerApiHook.cpp

int WINAPI CXTPSkinManagerApiHook::OnHookGetSystemMetrics(int nIndex)
{
    typedef int (WINAPI* LPFNGETSYSTEMMETRICS)(int nIndex);

    PROC pfnOrig = GetOriginalProc(xtpSkinApiGetSystemMetrics);
    if (!pfnOrig)
        return GetSystemMetrics(nIndex);

    int nResult = ((LPFNGETSYSTEMMETRICS)pfnOrig)(nIndex);

    CXTPSkinManager* pSkinManager = XTPSkinManager();
    if (!pSkinManager->IsEnabled() || !pSkinManager->GetMetrics() || pSkinManager->GetMetrics()->m_bRefreshMetrics)
        return nResult;

    if (!pSkinManager->HasApplyOptions(xtpSkinApplyMetrics | xtpSkinApplyColors | xtpSkinApplyFrame))
        return nResult;

    switch (nIndex)
    {
        case SM_CYCAPTION: return pSkinManager->GetMetrics()->m_cyCaption;
        case SM_CYSMCAPTION: return pSkinManager->GetMetrics()->m_cySmallCaption;

        case SM_CXBORDER: return pSkinManager->GetMetrics()->m_cxBorder;
        case SM_CYBORDER: return pSkinManager->GetMetrics()->m_cyBorder;

        case SM_CXHSCROLL: return pSkinManager->GetMetrics()->m_cxHScroll;
        case SM_CYHSCROLL: return pSkinManager->GetMetrics()->m_cyHScroll;
        case SM_CXVSCROLL: return pSkinManager->GetMetrics()->m_cxVScroll;
        case SM_CYVSCROLL: return pSkinManager->GetMetrics()->m_cyVScroll;

        case SM_CXFRAME: return pSkinManager->GetMetrics()->m_cxBorder;
        //case SM_CYFRAME: return pSkinManager->GetMetrics()->m_cyBorder;
           
        case SM_CXEDGE: return pSkinManager->GetMetrics()->m_cxEdge;
        case SM_CYEDGE: return pSkinManager->GetMetrics()->m_cyEdge;
    }

    return nResult;
}

If I stop SM_CYFRAME case statement from running it works ok.

Regards
Kelvin




Replies:
Posted By: Oleg
Date Posted: 22 October 2010 at 2:32pm
Thanks, we will remove  SM_CYFRAME/SM_CXFRAME also.

-------------
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS


Posted By: kelvincannon
Date Posted: 22 October 2010 at 2:50pm
Thanks for the quick reply.
I just need to ask will it effect anything else?

Thanks
Kelvin



Posted By: Oleg
Date Posted: 25 October 2010 at 3:15am
Hi,

I don't see problems. Our customer suggested add SM_CXEDGE/SM_CYEDGE that was good idea, but changing also SM_CXFRAME/SM_CYFRAME was not that good.


-------------
Oleg, Support Team
CODEJOCK SOFTWARE SOLUTIONS


Posted By: sirhaden
Date Posted: 03 November 2010 at 10:47am
There is also a problem with a disabled vertical scrollbar appearing on the Index panel when no scrollbar is needed.
 



Print Page | Close Window

Forum Software by Web Wiz Forums® version 12.04 - http://www.webwizforums.com
Copyright ©2001-2021 Web Wiz Ltd. - https://www.webwiz.net