editor-exec-source-js.mustache revision 3f2ac16886fbbccf85547608b11143a8795d8db4
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge HallynYUI().use('editor', function(Y) {
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn var logFn = function(str) {
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn Y.one('#out').set('innerHTML', str);
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn };
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn //Create the Base Editor
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn var editor = new Y.EditorBase({
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn content: '<p><b>This is <i class="foo">a test</i></b></p><p><b style="color: red; font-family: Comic Sans MS">This is <span class="foo">a test</span></b></p>',
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn extracss: '.foo { font-weight: normal; color: black; background-color: yellow; }'
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn });
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn //Mixin the new commands
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn Y.mix(Y.Plugin.ExecCommand.COMMANDS, {
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn foo: function(cmd, val) {
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn logFn('You clicked on Foo');
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn var inst = this.getInstance();
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn inst.one('body').setStyle('backgroundColor', 'yellow');
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn },
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn bar: function(cmd, val) {
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn logFn('You clicked on Bar');
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn var inst = this.getInstance();
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn inst.one('body').setStyle('backgroundColor', 'green');
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn },
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn baz: function(cmd, val) {
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn logFn('You clicked on Baz');
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn var inst = this.getInstance();
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn inst.one('body').setStyle('backgroundColor', 'blue');
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn }
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn });
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn //Rendering the Editor.
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn editor.render('#editor');
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn Y.delegate('click', function(e) {
c26adb82536952e27b05d237049b938d697e8ed9Stéphane Graber editor.execCommand(e.target.get('id'));
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn }, '#buttons', 'button');
025f59ab98217b7e9caf6d3ac7e910853d95f621Serge Hallyn});
c26adb82536952e27b05d237049b938d697e8ed9Stéphane Graber
c26adb82536952e27b05d237049b938d697e8ed9Stéphane Graber