void WHandleMenuSelect( WStatBar *wsb, HMENU menu, WPARAM wParam, LPARAM lParam ) { HMENU popup; WORD flags; if( wsb == NULL || menu == NULL ) { return; } flags = GET_WM_MENUSELECT_FLAGS( wParam, lParam ); if( flags == (WORD)-1 && GET_WM_MENUSELECT_HMENU( wParam, lParam ) == (HMENU)NULL ) { WSetStatusText( wsb, NULL, "" ); } else if( flags & (MF_SYSMENU | MF_SEPARATOR) ) { WSetStatusText( wsb, NULL, "" ); } else if( flags & MF_POPUP ) { popup = (HMENU)GET_WM_MENUSELECT_ITEM( wParam, lParam ); #ifdef __NT__ popup = GetSubMenu( (HMENU)lParam, (int)popup ); #endif WHandlePopupHint( wsb, menu, popup ); } else { WDisplayHint( wsb, (int)GET_WM_MENUSELECT_ITEM( wParam, lParam ) ); } }
Bool WSetStatusByID( WStatBar *wsb, DWORD id1, DWORD id2 ) { char *str1; char *str2; Bool ret; ret = FALSE; str1 = NULL; str2 = NULL; if( id1 != -1 ) { str1 = WAllocRCString( id1 ); } if( id2 != -1 ) { str2 = WAllocRCString( id2 ); } ret = WSetStatusText( wsb, str1, str2 ); if( str1 != NULL ) { WFreeRCString( str1 ); } if( str2 != NULL ) { WFreeRCString( str2 ); } return( ret ); }
void WRibbonHelpHook ( HWND hwnd, WPARAM wParam, BOOL pressed ) { _wtouch(hwnd); if ( !pressed ) { WSetStatusText ( NULL, NULL, "" ); } else { WDisplayHint ( NULL, wParam ); } }
static void wRibbonHelpHook( HWND hwnd, ctl_id id, bool pressed ) { _wtouch( hwnd ); if( !pressed ) { WSetStatusText( NULL, NULL, "" ); } else { WDisplayHint( NULL, id ); } }
void WHandlePopupHint( WStatBar *wsb, HMENU menu, HMENU popup ) { DWORD hint; if( menu != WLastMenu ) { WInitHintItems( NUM_POPUPS, menu, WPopupHints ); WLastMenu = menu; } hint = WGetPopupHint( WPopupHints, NUM_POPUPS, popup ); if( hint != 0 ) { WSetStatusByID( wsb, -1, hint ); } else { WSetStatusText( wsb, NULL, "" ); } }
Bool WSetStatusReadyText( WStatBar *wsb ) { WSetStatusText( wsb, NULL, "" ); return( WSetStatusByID( wsb, W_READYMSG, -1 ) ); }