From 0e20640584134374554a553e2e6a20f7d2b75a3b Mon Sep 17 00:00:00 2001 From: barlas <yannisbarlas@gmail.com> Date: Fri, 17 Mar 2017 17:15:02 +0200 Subject: [PATCH] clean up main editor after changes --- .../SimpleEditor/ContainerEditor.js | 4 +- app/components/SimpleEditor/Editor.js | 52 ++++++++++++------- 2 files changed, 36 insertions(+), 20 deletions(-) diff --git a/app/components/SimpleEditor/ContainerEditor.js b/app/components/SimpleEditor/ContainerEditor.js index 4e18d0d..58f0df1 100644 --- a/app/components/SimpleEditor/ContainerEditor.js +++ b/app/components/SimpleEditor/ContainerEditor.js @@ -51,7 +51,7 @@ class ContainerEditor extends SubstanceContainerEditor { if (commandStates['save'].disabled === false) { const editor = this.getEditor() - editor.send('ChangesNotSaved') + editor.send('changesNotSaved') editor.emit('send:route', location.pathname) return callback(false) @@ -76,7 +76,7 @@ class ContainerEditor extends SubstanceContainerEditor { window.history.pushState(null, null, document.URL) - editor.send('ChangesNotSaved') + editor.send('changesNotSaved') editor.emit('send:route', url) } else { this.props.history.push(url) diff --git a/app/components/SimpleEditor/Editor.js b/app/components/SimpleEditor/Editor.js index 6e04486..bc9b25c 100644 --- a/app/components/SimpleEditor/Editor.js +++ b/app/components/SimpleEditor/Editor.js @@ -22,13 +22,16 @@ class Editor extends ProseEditor { this.handleActions({ 'showComments': function () { this.toggleCommentsArea(true) }, 'hideComments': function () { this.toggleCommentsArea(false) }, + + // TODO -- clean them up like changesNotSaved 'trackChangesUpdate': function () { this.updateTrackChange() }, 'trackChangesViewToggle': function () { this.trackChangesViewToggle() }, - 'ChangesNotSaved': function () { this.ChangesNotSaved() } + // 'changesNotSaved': function () { this.changesNotSaved() } + 'changesNotSaved': this.changesNotSaved }) } - ChangesNotSaved () { + changesNotSaved () { this.extendState({ changesNotSaved: true }) } @@ -39,10 +42,9 @@ class Editor extends ProseEditor { } updateTrackChange () { - this.extendProps({trackChanges: !this.props.trackChanges}) - + // TODO -- clean up this.props and this.refs + this.extendProps({ trackChanges: !this.props.trackChanges }) this.props.updateTrackChangesStatus(!this.props.trackChanges) - this.refs.toolbar.extendProps({trackChanges: this.props.trackChanges}) } @@ -65,6 +67,8 @@ class Editor extends ProseEditor { let SplitPane = this.componentRegistry.get('split-pane') let ScrollPane = this.componentRegistry.get('scroll-pane') let Overlay = this.componentRegistry.get('overlay') + + // TODO -- unnecessary // posssibly breaks book builder dnd let ContextMenu = this.componentRegistry.get('context-menu') // new what does it do? let Dropzones = this.componentRegistry.get('dropzones') // new what does it do? @@ -137,26 +141,38 @@ class Editor extends ProseEditor { if (this.state.changesNotSaved) { return el.append(modal) - } else { - return el } + + return el } - // TODO -- use this to insert read-only mode alert + // TODO -- leverage ProseEditor's this._renderToolbar maybe? _renderToolbar ($$) { let viewMode = this.props.disabled ? $$('span') .addClass('view-mode') .append('Editor is in Read-Only mode') : '' + let commandStates = this.commandManager.getCommandStates() - return $$('div').addClass('se-toolbar-wrapper').append( - $$(Toolbar, { - commandStates: commandStates, - trackChanges: this.props.trackChanges, - trackChangesView: this.state.trackChangesView, - toolGroups: ['text', 'document', 'annotations', 'default', 'track-change-enable', 'track-change-toggle-view'] - }).ref('toolbar') - ).append(viewMode) + + return $$('div') + .addClass('se-toolbar-wrapper') + .append( + $$(Toolbar, { + commandStates: commandStates, + trackChanges: this.props.trackChanges, + trackChangesView: this.state.trackChangesView, + toolGroups: [ + 'annotations', + 'default', + 'document', + 'text', + 'track-change-enable', + 'track-change-toggle-view' + ] + }).ref('toolbar') + ) + .append(viewMode) } _renderEditor ($$) { @@ -178,9 +194,9 @@ class Editor extends ProseEditor { getInitialState () { return { + changesNotSaved: false, editorReady: false, - trackChangesView: true, - changesNotSaved: false + trackChangesView: true } } -- GitLab