Example #1
0
/*
 * GetErrorMsg - return pointer to message
 */
char *GetErrorMsg( vi_rc err )
{
    char        *msg;

    if( !readMsgData ) {
        readErrorMsgData();
    }
    LastError = err;
    if( EditFlags.InputKeyMapMode ) {
        DoneInputKeyMap();
        EditFlags.NoInputWindow = false;
        EditFlags.Dotable = false;
    }
    if( err < 0 || err > errCnt ) {
        MySprintf( strBuff, "Err no. %d (no msg)", err );
        return( strBuff );
    }
    msg = GetTokenString( errorList, (int)err );
    if( msg == NULL ) {
        MySprintf( strBuff, "Err no. %d (no msg)", err );
        return( strBuff );
    }
    return( msg );

} /* GetErrorMsg */
Example #2
0
/*
 * GetNextEvent - return next event from appropriate source
 */
vi_key GetNextEvent( bool usemouse )
{
    vi_key  key;

    if( EditFlags.NoCapsLock ) {
        TurnOffCapsLock();
    }
    if( EditFlags.KeyOverride ) {
        key = getOverrideKey();
        LastEvent = key;
        return( key );
    }

    if( EditFlags.InputKeyMapMode || EditFlags.KeyMapMode ) {

        key = CurrentKeyMap[CurrentKeyMapCount++];

        if( key == VI_KEY( NULL ) ) {
            EditFlags.NoInputWindow = false;
            if( EditFlags.InputKeyMapMode ) {
                DoneInputKeyMap();
            } else {
                EditFlags.KeyMapMode = false;
            }
        } else {
            LastEvent = key;
            return( key );
        }

    }

    if( EditFlags.DotMode ) {
        LastEvent = DotCmd[DotCount++];
        return( LastEvent );
    }
    if( EditFlags.AltDotMode ) {
        if( AltDotCount > AltDotDigits ) {
            return( VI_KEY( ESC ) );
        }
        key = AltDotBuffer[AltDotCount++];
    } else {
        key = GetKey( usemouse );
    }

    if( !EditFlags.NoAddToDotBuffer ) {
        if( key != VI_KEY( MOUSEEVENT ) ) {
            if( EditFlags.AltMemorizeMode ) {
                if( AltDotDigits < maxdotbuffer ) {
                    AltDotBuffer[AltDotDigits++] = key;
                } else {
                    AltDotBuffer[AltDotDigits - 1] = VI_KEY( ESC );
                }
            }
            if( DotDigits < maxdotbuffer ) {
                DotBuffer[DotDigits++] = key;
            } else {
                DotBuffer[DotDigits - 1] = VI_KEY( ESC );
            }
        }
    }
    LastEvent = key;
    return( key );

} /* GetNextEvent */