PDA

Просмотр полной версии : Визуальный редактор текста (WYSIWYG)


MerlinTwi
24.12.2006, 20:12
Совместная работа с Dimchansky. Сделали визуальный редактор текста и оформили процесс создания в виде статьи.
Ознакомиться и скачать исходники можно здесь (http://etcs.ru/files/WYSIWYG_editor.zip).

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
Гм, у вас конструкторы возвращают void. Это нормально или я что-то пропустил? :)

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


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

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

etc
24.12.2006, 22:12
Ну, если компилятор в 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 собственной персоной.

nouba
27.12.2006, 19:33
А если вот так тогда что ? :away:
http://continent7.su/bug.gif

Nirth
27.12.2006, 20:28
Велосипед, интересно =)

miramax
27.12.2006, 20:29
Это редактор меньше и быстрее флексовского компонента.

Nirth
27.12.2006, 20:31
Насчет кода - Теперь он красивей, правда консрукторы не должны возвращать ничего. вообще конструкторы это не методы, а возвращают значение только методы.

Ну чтож, надеюсь в следующем примере вы будете юзать JavaDocs и выпустите заодно и документацию =)

P.S. а лучше бы расширили возможности mx.controls.RichTextEditor'а.

Nirth
27.12.2006, 20:33
2 Miramax
это плюсы, а минусы в том что сотни тысяч людей по миру не будут использовать этот компонент, придумывать по нему рецепты для кукбуков, заплатки и расширения =)

А скорость, понятие временное 10 плеер будет быстрее и выход уже не за горами, да и Apollo Runtime думаю прибавит оборотов.

Nirth
27.12.2006, 20:34
и еще одно Мерлин, Дим я не заметил в вашем коде нигде выкидывания исключений, стоит поработать над этим, чтобы не было как в посте у nouba.

barby
27.12.2006, 21:05
Nirth, а чем будет концептуально отличаться 10-я версия от девятой?

CCCPirate
27.12.2006, 21:12
2nouba

аватар сам рисовал?

Nirth
27.12.2006, 21:21
2барби
не имею понятия, но каждая последующая версия была на 20-800% быстрее предыдущей, что дает основания пологать что следующая версия будет так или иначе быстрее.

Котяра
02.07.2007, 01:19
А можно работающую ссыль?

MerlinTwi
02.07.2007, 12:07
Скачать можно здесь (http://***********/1868997950)

etc
02.10.2007, 01:42
На всякий пожарный копия здесь:
http://etcs.ru/files/WYSIWYG_editor.zip

Котяра
13.10.2007, 14:22
Вопрос чайника.. где можно взять RichTextEditor и можно ли его использзовать во flash cs3?
Т.е. мне нужно вставить RTE во флэш страничку.. или его можно использовать только с Flex?

STILL.05
14.10.2007, 23:57
народ почему у меня не запускается fla ((

5000: The class 'com.editor.History' must subclass 'flash.display.MovieClip' since it is linked to a library symbol of that type.

nuway
26.11.2007, 04:57
STILL.05

как и пишется в ошибке, открои класс com\editor\Хистри и там добавь

import flash.display.MovieClip;

public class History extends MovieClip

ulik
23.02.2008, 16:13
...При этом любая манипуляция с пробелами, переводами строки и т.п. будет в этом случае громоздка, притянута за уши и абсолютно непрозрачна для пользователя...

Тут я не соглашусь. Могу выслать решение проблемы.

Dimchansky
31.03.2008, 17:30
ulik, лучше выкладывайте сюда, если некоммерческое решение :) Всем польза будет :)

A.E.M.
12.04.2008, 22:38
Ребят, подскажите пожалуйста... при проверки синтаксиса в cs3 вылетает окно c ошибкой "error with autoformat near line:}else if (property == "blockIndent"){"

Это в описании класса FormatButton

GRiNGA
27.07.2008, 21:00
А написанный текст в каком виде сохраняется? В виде html-кода? И где?

MerlinTwi
28.07.2008, 12:10
В виде html-кода.
Проблема сохранения текста в данной статье не рассматривалась.

coolin
02.09.2008, 17:49
Мало чего хорошего в данном редакторе по сравнению с
http://www.flashloaded.com/flashcomponents/flashtexteditor/example1.html.
Кроме цены, конечно (однако в сети компонент доступен).
Вот было бы неплохо сделать поддержку WYSIWYG таблиц, но как я понимаю для этого нужно что-то большее чем textarea...
В общем, пока я в полном разочаровании, нигде нет нормального компонента, который походил бы на популярные жабаскрипт версии.

telit
05.12.2008, 20:33
Здравствуйте!
У меня не получается добавить шрифты из библиотеки.
public var fontList:Array = ['_sans','_serif','_typewriter', 'june1'];
Где "june1":
public var june1:Font = new june;
но это не работает.

Niter
06.12.2009, 15:13
Фуфло там рядом за 500 баксов :)
Отлично, много качественной работы.
Вот на это посмотри http://www.flashloaded.com/flashcomponents/flashtexteditor/example2.html мне понравилось =) P.S. Кто со мной в разведку пойдет,эту флешку красть?:rolleyes:

etc
06.12.2009, 15:15
Вот на это посмотри http://www.flashloaded.com/flashcomponents/flashtexteditor/example2.html мне понравилось =) P.S. Кто со мной в разведку пойдет,эту флешку красть?:rolleyes:

В разведку с вами пойдёт третий пункт правил форума.

kei
05.01.2010, 09:23
Блин... не получается скачать. При попытке открыть скачаный файл пишет "Неожиданное завершение чего-то там...". Типа битый архив. Может у меня с раром че не то? Стоит версия 3.91...

BorisBritva
17.03.2010, 15:54
Спасибо!) То что мне надо))

inozemcev
01.04.2010, 07:13
не понимаю как во Flash Develop им пользоваться

сделал swc cо всеми мувиклипами, но они почему - то не втягиваются. Буду разбираться. Было бы круто если бы можно было тупо двумя строчками:
var editor:WYSIWYG = new WYSIWYG;
addChild (editor);

все добавить

Добавлено через 19 часов 25 минут
все разобрался!

var iconClass:Class = getDefinitionByName(newValue) as Class;
_icon = new iconClass();


FlashDevelop не сразу втянул клипы с иконками, пришлось сначала вызывать конструкторы всех иконок, типа:
new icon_cut; new icon_copy;

Почему бы просто не создавать эти иконки непосредственно в коде, а не выбрасывать их на сцену и потом пытаться их через одно место идентифицировать ?!

RomECH
20.08.2010, 23:22
А как насчет экспорта текстового файла? в смысле должна быль кнопочка save. а то столько элементов оформления текста... и для себя что-ли оформлять?)

nOobCrafter
22.08.2010, 22:03
private var _textfEditor:WYSIWYG;
.................
_textEditor.editField.htmlContent << - делаем с текстом что хотим.

Zetway
24.08.2010, 12:06
А где там лэйер кода? 0_о

etc
24.08.2010, 12:30
А где там лэйер кода? 0_о

Здрасьте-приехали, его там и нет.

Bond
29.09.2010, 08:33
Уважаемые, пытался разархивировать файл, но пишет ошибки.

etc
29.09.2010, 11:30
Уважаемые, пытался разархивировать файл, но пишет ошибки.

Поменяйте архиватор.

Bond
29.09.2010, 13:47
На какой? Никогда не было проблем, теперь нонешний (нынешний) не годится что-ли?

etc
29.09.2010, 13:50
Я не знаю, на какой, у меня распаковался без проблем.