1. ActionScript / Говнокод #6615

    −104

    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
    protected function dragDropHandler(event:DragEvent):void
        {
            // Куча всего разного...
    
            // Scroll the caret index in view
            if (caretIndex != -1)
            {
                // Sometimes we may need to scroll several times as for virtual layouts
                // this is not guaranteed to bring in the element in view the first try
                // as some items in between may not be loaded yet and their size is only
                // estimated.
                var delta:Point;
                var loopCount:int = 0;
                // А зачем мучатся, проверять видно выделеный элемент списка или нет, 
                // с десяти раз ведь верняк заработает!
                while (loopCount++ < 10)
                {
                    validateNow();
                    delta = layout.getScrollPositionDeltaToElement(dropIndex + caretIndex);
                    if (!delta || (delta.x == 0 && delta.y == 0))
                        break;
                    layout.horizontalScrollPosition += delta.x;
                    layout.verticalScrollPosition += delta.y;
                }
            }
        }

    Flex Framework продолжает радовать. Так авторы этого творения пытаются скролить список (spark.components.List), чтобы показать выделенный элемент.

    Запостил: wvxvw, 10 Мая 2011

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

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