Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   Статьи (http://www.flasher.ru/forum/forumdisplay.php?f=101)
-   -   Визуальный редактор текста (WYSIWYG) (http://www.flasher.ru/forum/showthread.php?t=89822)

MerlinTwi 24.12.2006 20:12

Визуальный редактор текста (WYSIWYG)
 
Совместная работа с Dimchansky. Сделали визуальный редактор текста и оформили процесс создания в виде статьи.
Ознакомиться и скачать исходники можно здесь.

miramax 24.12.2006 20:30

Фуфло там рядом за 500 баксов :)
Отлично, много качественной работы.

etc 24.12.2006 21:14

Гм, у вас конструкторы возвращают void. Это нормально или я что-то пропустил? :)
Код:

    public class BaseButton extends BaseFormatComponent {
       
        public function BaseButton():void {
            // ведем себя как кнопка
            buttonMode=true;
            mouseChildren=false;
            // слушаем события от мышки
            addEventListener(MouseEvent.MOUSE_OVER, onOver, false,0,true);
            addEventListener(MouseEvent.MOUSE_OUT, onOut, false,0,true);
            addEventListener(MouseEvent.MOUSE_DOWN, onDown, false,0,true);
            addEventListener(MouseEvent.MOUSE_UP, onUp, false,0,true);
            // переходим на правильный фрейм
            goto();
        }

Щас глянул в BaseButton, там выдергивается иконка из либы. ОК, а если её нет, что будет? :)
Впрочем, ладно, это мелочи. В целом как всегда всё очень и очень круто. Прогресс по сравнению с предыдущей статьей заметный.

MerlinTwi 24.12.2006 21:50

Цитата:

Сообщение от __etc
Гм, у вас конструкторы возвращают void. Это нормально или я что-то пропустил? :)

Ну, если компилятор в Strict mode не выдет ошибки, то значит нормально. Я всегда полагал, что конструктор не создает класс, а лишь вызывается при его создании.

Цитата:

Сообщение от __etc
Щас глянул в BaseButton, там выдергивается иконка из либы. ОК, а если её нет, что будет?

В данном примере иконки и код компилируются в один swf, так что нормально :) В большом проекте, конечно надо иконки вынести в подгружаемую либу и тогда надо ставить проверки... но это уже совсем другая тема.

На мой взгляд, в статье главное общая структура элементов и описание сложностей/особенностей/глюков, с которыми столкнулись в процессе работы. Просто взять эту компоненту и вставить в свой проект вряд ли получится, там нет хинтов и скроллбара, надо будет убрать лишние элементы и добавить недостающие, а потом еще долго все подгонять напильником.

etc 24.12.2006 22:12

Цитата:

Сообщение от MerlinTwi
Ну, если компилятор в Strict mode не выдет ошибки, то значит нормально. Я всегда полагал, что конструктор не создает класс, а лишь вызывается при его создании.

Ну, вообще конструктор есть объект заданного класса (а не функция), а new создает новый экземпляр такого объекта. Вообще, возврат не пишется, для того, чтобы отличить конструктор от методов. А в AS2 бы точно ошибку выдал, мол, конструктор класса не может ничего возвращать. Просто я ни в одном AS3 классе не видел возврата :)

barby 25.12.2006 05:51

Отличная работа, молодцы! Распечатаю и буду втыкать потихоньку :)

flash33 25.12.2006 20:12

С вставкой картинок у авторов не все ок. Совсем не продумановставка внутрь текста.- здесь придет на помощь просто замена символов пробелом.
А так - мощно!

Dimchansky 26.12.2006 10:40

Цитата:

С вставкой картинок у авторов не все ок. Совсем не продумановставка внутрь текста.- здесь придет на помощь просто замена символов пробелом.
К сожалению (а может и к счастью :)) это редактор, а не текстовое поле, не предназначенное для редактирования. При этом любая манипуляция с пробелами, переводами строки и т.п. будет в этом случае громоздка, притянута за уши и абсолютно непрозрачна для пользователя. Поэтому и приняли решение упростить (:

Да и сама статья, позвольте заметить - обучающая (; Кому не хватает функционала - расширяйте на здоровье (:

CCCPirate 26.12.2006 16:03

спасибо, будем изучать

baron27 26.12.2006 16:24

Сильная работа. Кстати, сколько времени было потрачено на написание?

Цитата:

Ладно, пора уже переходить к делу, поклонники flex наверняка уже ухмыляются, зачем изобретать велосипед, если все необходимые компоненты и так есть встроенные.
да, RichTextEditor собственной персоной.


Часовой пояс GMT +4, время: 15:55.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.