Browse Source

Merge pull request #15 from ckeditor/t/ckeditor5-ui/26

T/ckeditor5 ui/26: Review our approach to MVVM.
Piotrek Koszuliński 9 năm trước cách đây
mục cha
commit
76a0cc6f3e

+ 1 - 1
packages/ckeditor5-editor-classic/src/classic.js

@@ -39,7 +39,7 @@ export default class ClassicEditor extends StandardEditor {
 		this.data.processor = new HtmlDataProcessor();
 
 		this.ui = new ClassicEditorUI( this );
-		this.ui.view = new BoxedEditorUIView( this.ui.viewModel, this.locale );
+		this.ui.view = new BoxedEditorUIView( this.locale );
 
 		/**
 		 * The element replacer instance used to hide editor element.

+ 6 - 11
packages/ckeditor5-editor-classic/src/classiceditorui.js

@@ -11,8 +11,8 @@ import EditableUI from '../ui/editableui/editableui.js';
 import InlineEditableUIView from '../ui/editableui/inline/inlineeditableuiview.js';
 
 import Model from '../ui/model.js';
-import Toolbar from '../ui/bindings/toolbar.js';
-import StickyToolbarView from '../ui/stickytoolbar/stickytoolbarview.js';
+import StickyToolbar from '../ui/bindings/stickytoolbar.js';
+import StickyToolbarView from '../ui/toolbar/sticky/stickytoolbarview.js';
 
 /**
  * Classic editor UI. Uses inline editable and sticky toolbar, all
@@ -79,12 +79,10 @@ export default class ClassicEditorUI extends BoxedEditorUI {
 	_createToolbar() {
 		const editor = this.editor;
 
-		const toolbarModel = new Model();
-		const toolbarView = new StickyToolbarView( toolbarModel, editor.locale );
-		const toolbar = new Toolbar( toolbarModel, toolbarView, editor );
-
-		toolbarModel.bind( 'isActive' ).to( editor.editing.view.getRoot(), 'isFocused' );
+		const model = new Model();
+		model.bind( 'isActive' ).to( editor.editing.view.getRoot(), 'isFocused' );
 
+		const toolbar = new StickyToolbar( model, new StickyToolbarView( editor.locale ), editor );
 		this.add( 'top', toolbar );
 
 		return toolbar;
@@ -100,10 +98,7 @@ export default class ClassicEditorUI extends BoxedEditorUI {
 		const editor = this.editor;
 
 		const editable = editor.editing.view.getRoot();
-		const editableUI = new EditableUI( editor, editable );
-		const editableUIView = new InlineEditableUIView( editableUI.viewModel, editor.locale );
-
-		editableUI.view = editableUIView;
+		const editableUI = new EditableUI( editable, new InlineEditableUIView( editor.locale ), editor );
 
 		this.add( 'main', editableUI );
 

+ 2 - 2
packages/ckeditor5-editor-classic/tests/classiceditorui.js

@@ -11,7 +11,7 @@ import ClassicEditorUI from '/ckeditor5/editor-classic/classiceditorui.js';
 import BoxedEditorUIView from '/ckeditor5/ui/editorui/boxed/boxededitoruiview.js';
 
 import Toolbar from '/ckeditor5/ui/toolbar/toolbar.js';
-import StickyToolbarView from '/ckeditor5/ui/stickytoolbar/stickytoolbarview.js';
+import StickyToolbarView from '/ckeditor5/ui/toolbar/sticky/stickytoolbarview.js';
 
 import EditableUI from '/ckeditor5/ui/editableui/editableui.js';
 import InlineEditableUIView from '/ckeditor5/ui/editableui/inline/inlineeditableuiview.js';
@@ -27,7 +27,7 @@ describe( 'ClassicEditorUI', () => {
 
 		editor = new ClassicTestEditor( editorElement );
 		editorUI = new ClassicEditorUI( editor );
-		editorUI.view = new BoxedEditorUIView( editorUI.viewModel, editor.locale );
+		editorUI.view = new BoxedEditorUIView( editor.locale );
 	} );
 
 	describe( 'constructor', () => {