Вы можете создать собственный плагин на основе flash-плагина.
Заглавные буквы имеют значение, вот руководство по стилю: Руководство по стилю кодирования http://docs.cksource.com/FCKeditor_3.x/Design_and_Architecture/Coding_Style
Скопируйте каталог _source/plugins/flash
и переименуйте его, назовем его mediaelement.
Поместите переименованный каталог сюда /plugins/mediaelement
.
Затем переименуйте /plugins/mediaelement/dialogs/flash.js
в mediaelement.js
.
Добавьте изображение кнопки панели инструментов 16px X 16px
в каталог /plugins/mediaelement/images/
.
Я знаю, что файлы .png
работают, другие не пробовал.
Конфигурация:
Загрузите новый плагин в конфигурацию:
config.extraPlugins = 'mediaelement';
Добавьте кнопку в настройку конфигурации панели инструментов 'MediaElement'
config.toolbar_xxx
Изменения файлов
Вам потребуется изменить ссылки на имя и файлы подключаемого модуля "flash". Вот минимальные изменения, необходимые для загрузки плагина и открытия диалогового окна:
plugins/mediaelement/dialogs/mediaelement.js (174)
CKEDITOR.dialog.add( 'mediaelement', function( editor )
plugins/mediaelement/plugin.js (22–33)
CKEDITOR.plugins.add( 'mediaelement',
{
init : function( editor )
{
editor.addCommand( 'mediaelement', new CKEDITOR.dialogCommand( 'mediaelement' ) );
editor.ui.addButton( 'MediaElement',
{
label : 'Media Element',
command : 'mediaelement',
icon: this.path + 'images/mediaelement_btn.png'
});
CKEDITOR.dialog.add( 'mediaelement', this.path + 'dialogs/mediaelement.js' );
Здесь есть несколько руководств по созданию подключаемых модулей:
http://docs.cksource.com/CKEditor_3.x/Tutorials
Они дадут вам представление о структуре и необходимых элементах. Я узнал об этом, просматривая руководства при работе с копией существующего плагина, это заняло некоторое время, но большая часть того, что вам нужно, уже есть.
Учебники содержат информацию о создании диалоговых окон и используемых параметрах, они помогут вам понять, что происходит в файле plugins/mediaelement/dialogs/mediaelement.js
.
Вы можете изменить файл диалога, чтобы он содержал поля, используемые реализацией MediaElement. Я предлагаю вам сравнить код внедрения для flash с кодом, используемым для элемента мультимедиа, чтобы увидеть, какие части соответствуют друг другу, и соответствующим образом изменить файл диалога.
person
codewaggle
schedule
18.07.2012