1. C# / Говнокод #5791

    +106

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    public static bool KeyToString(Keys key, bool shitKeyPressed,
                                                                        out char character)
            {
                bool result = false;
                character = ' ';
                CharPair charPair;
    
                if ((Keys.A <= key && key <= Keys.Z) || key == Keys.Space)
                {
                    // Use as is if it is A~Z, or Space key.
                    character = (shitKeyPressed) ? (char)key : Char.ToLower((char)key);
                    result = true;
                }
                else if (keyMap.TryGetValue(key, out charPair))
                {
                    // Otherwise, convert by key map.
                    if (!shitKeyPressed)
                    {
                        character = charPair.NormalChar;
                        result = true;
                    }
                    else if (charPair.ShiftChar.HasValue)
                    {
                        character = charPair.ShiftChar.Value;
                        result = true;
                    }
                }
    
                return result;
            }

    Разбираю код, скачанный с майкросовтовского App Hub. В коде и комментариях полно маленьких грамматический ошибок, но это...
    Код выложен на полном серьёзе и качается тут http://create.msdn.com/en-US/education/catalog/utility/performance_utility

    P.S. для тупых спойлер: вместо shift написано shit.

    Запостил: Skelet0n, 23 Февраля 2011

    Комментарии (21) RSS

    Добавить комментарий