Esempio n. 1
0
void TabView_CalculateNextTab(HWND hWndTabView)
{
    struct TabViewInfo *pTabViewInfo = GetTabViewInfo(hWndTabView);

    // at most loop once through all options
    for (int i = 0; i < pTabViewInfo->nTabCount; i++)
    {
        int nCurrentTab = TabView_GetCurrentTab(hWndTabView);
        TabView_SetCurrentTab(hWndTabView, (nCurrentTab + 1) % pTabViewInfo->nTabCount);
        nCurrentTab = TabView_GetCurrentTab(hWndTabView);

        if (!pTabViewInfo->pCallbacks->pfnGetShowTab || pTabViewInfo->pCallbacks->pfnGetShowTab(nCurrentTab))
            // this tab is being shown, so we're all set
            return;
    }
}
Esempio n. 2
0
bool TabView_HandleNotify(LPNMHDR lpNmHdr)
{
    HWND hWndTabView = lpNmHdr->hwndFrom;
    struct TabViewInfo *pTabViewInfo = GetTabViewInfo(hWndTabView);
    bool bResult = false;

    switch (lpNmHdr->code)
    {
    case TCN_SELCHANGE:
        int nTabIndex = TabCtrl_GetCurSel(hWndTabView);
        int nTab = TabView_GetTabFromTabIndex(hWndTabView, nTabIndex);
        TabView_SetCurrentTab(hWndTabView, nTab);

        if (pTabViewInfo->pCallbacks->pfnOnSelectionChanged)
            pTabViewInfo->pCallbacks->pfnOnSelectionChanged();

        bResult = true;
        break;
    }

    return bResult;
}
Esempio n. 3
0
BOOL TabView_HandleNotify(LPNMHDR lpNmHdr)
{
	HWND hwndTabView;
	struct TabViewInfo *pTabViewInfo;
	BOOL bResult = FALSE;
	int nTabIndex, nTab;

	hwndTabView = lpNmHdr->hwndFrom;
	pTabViewInfo = GetTabViewInfo(hwndTabView);

	switch (lpNmHdr->code)
	{
		case TCN_SELCHANGE:
			nTabIndex = TabCtrl_GetCurSel(hwndTabView);
			nTab = TabView_GetTabFromTabIndex(hwndTabView, nTabIndex);
			TabView_SetCurrentTab(hwndTabView, nTab);
			if (pTabViewInfo->pCallbacks->pfnOnSelectionChanged)
				pTabViewInfo->pCallbacks->pfnOnSelectionChanged();
			bResult = TRUE;
			break;
	}
	return bResult;
}