Beispiel #1
0
BOOL WREToolBarHook( HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam )
{
    MINMAXINFO  *minmax;
    WREToolBar  *tbar;
    int         bstate;
    Bool        ret;

    if( (tbar = WREFindToolBar( hwnd )) == NULL || tbar->win == NULL ) {
        return( FALSE );
    }

    ret = FALSE;

    switch( msg ) {
    case WM_USER:
        if( lParam ) {
            WRESetStatusText( NULL, "", TRUE );
        } else {
            WREDisplayHint( wParam );
        }
        if( lParam ) {
            bstate = BUTTON_UP;
        } else {
            bstate = BUTTON_DOWN;
        }
        WRESetToolBarItemState( tbar, wParam, bstate );
        break;

    case WM_SIZE:
        if( wParam != SIZE_MAXIMIZED && wParam != SIZE_MINIMIZED ) {
            GetWindowRect( hwnd, &tbar->last_pos );
        }
        break;

    case WM_MOVE:
        if( !IsZoomed( hwnd ) ) {
            GetWindowRect( hwnd, &tbar->last_pos );
        }
        break;

    case WM_GETMINMAXINFO:
        minmax = (MINMAXINFO *)lParam;
        minmax->ptMinTrackSize.x = 2 * GetSystemMetrics( SM_CXFRAME ) +
                                   tbar->info->dinfo.border_size.x +
                                   tbar->info->dinfo.button_size.x - 1;
        minmax->ptMinTrackSize.y = 2 * GetSystemMetrics( SM_CYFRAME ) +
                                   tbar->info->dinfo.border_size.y +
                                   GetSystemMetrics( SM_CYCAPTION ) +
                                   tbar->info->dinfo.button_size.y - 1;
        break;

    case WM_DESTROY:
        WRECloseToolBar( tbar );
        break;
    }

    return( ret );
}
Beispiel #2
0
void WRERibbonHelpHook( HWND hwnd, WPARAM wParam, BOOL pressed )
{
    _wre_touch( hwnd );

    if( !pressed ) {
        WRESetStatusText( NULL, "", TRUE );
    } else {
        WREDisplayHint( wParam );
    }
}
Beispiel #3
0
void WREHandleMenuSelect ( WPARAM wParam, LPARAM lParam )
{
    HMENU menu;
    HMENU popup;
    WORD  flags;

    menu  = WREGetMenuHandle();
    flags = GET_WM_MENUSELECT_FLAGS(wParam,lParam);

    if( ( flags == (WORD)-1 ) &&
         ( GET_WM_MENUSELECT_HMENU(wParam,lParam) == (HMENU)NULL ) ) {
        WRESetStatusText ( NULL, "", TRUE );
    } else if ( flags & (MF_SYSMENU | MF_SEPARATOR) ) {
        WRESetStatusText ( NULL, "", TRUE );
    } else if ( flags & MF_POPUP ) {
        popup = (HMENU) GET_WM_MENUSELECT_ITEM(wParam,lParam);
        #ifdef __NT__
            popup = GetSubMenu( (HMENU)lParam, (int)popup );
        #endif
        WREHandlePopupHint ( menu, popup );
    } else {
        WREDisplayHint ( (int) GET_WM_MENUSELECT_ITEM(wParam,lParam) );
    }
}