base.js 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /**
  2. * @license Copyright (c) 2003-2016, CKSource - Frederico Knabben. All rights reserved.
  3. * For licensing, see LICENSE.md.
  4. */
  5. 'use strict';
  6. import CKEDITOR from '/ckeditor.js';
  7. import ClassicCreator from '/ckeditor5/creator-classic/classiccreator.js';
  8. import ModelElement from '/ckeditor5/engine/model/element.js';
  9. import ViewContainerElement from '/ckeditor5/engine/view/containerelement.js';
  10. // import Text from '/ckeditor5/engine/view/text.js';
  11. import ModelPosition from '/ckeditor5/engine/model/position.js';
  12. // import { getData } from '/tests/engine/_utils/model.js';
  13. import { insertElement } from '/ckeditor5/engine/conversion/model-to-view-converters.js';
  14. CKEDITOR.create( '#editor', {
  15. creator: ClassicCreator,
  16. features: [ 'typing', 'delete', 'enter' ],
  17. toolbar: []
  18. } )
  19. .then( editor => {
  20. const doc = editor.document;
  21. const editingView = editor.editing.view;
  22. editor.editing.toView.on( 'insert:paragraph', insertElement( new ViewContainerElement( 'p' ) ) );
  23. doc.batch().insert(
  24. new ModelPosition( doc.getRoot( 'editor' ), [ 0 ] ),
  25. [
  26. new ModelElement( 'paragraph', null, 'foobar' ),
  27. new ModelElement( 'paragraph' ),
  28. new ModelElement( 'paragraph', null, 'barfoo' )
  29. ]
  30. );
  31. editingView.render();
  32. // console.log( getData( doc, { rootName: 'editor' } ) );
  33. // editingView.viewRoots.get( 'editor' ).appendChildren( [
  34. // new Element( 'h1', null, [ new Text( 'Hello world!' ) ] ),
  35. // new Element( 'p', null, [ new Element( 'br' ) ] ),
  36. // new Element( 'p', null, [ new Text( 'I\'m an instance of CKEditor.' ) ] )
  37. // ] );
  38. // editingView.render();
  39. window.editor = editor;
  40. } )
  41. .catch( err => {
  42. console.error( err.stack ); // jshint ignore:line
  43. } );