fnp
/
fnpeditor.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
wip: Experimenting with new approach - dividing visualEditor module
[fnpeditor.git]
/
modules
/
visualEditor.js
diff --git
a/modules/visualEditor.js
b/modules/visualEditor.js
index
1c61ef0
..
65de452
100644
(file)
--- a/
modules/visualEditor.js
+++ b/
modules/visualEditor.js
@@
-1,5
+1,6
@@
-rng.modules.visualEditor = function(sandbox) {
\r
- var transformations = rng.modules.visualEditor.transformations;
\r
+define(['./visualEditor.transformations'], function(transformations) {
\r
+
\r
+return function(sandbox) {
\r
\r
var view = {
\r
node: $(sandbox.getTemplate('main')()),
\r
\r
var view = {
\r
node: $(sandbox.getTemplate('main')()),
\r
@@
-277,6
+278,7
@@
rng.modules.visualEditor = function(sandbox) {
var view = this;
\r
this.node.find('#rng-visualEditor-sidebarButtons a').click(function(e) {
\r
e.preventDefault();
\r
var view = this;
\r
this.node.find('#rng-visualEditor-sidebarButtons a').click(function(e) {
\r
e.preventDefault();
\r
+ e.stopPropagation();
\r
var target = $(e.currentTarget);
\r
if(!target.attr('data-content-id'))
\r
return;
\r
var target = $(e.currentTarget);
\r
if(!target.attr('data-content-id'))
\r
return;
\r
@@
-315,16
+317,18
@@
rng.modules.visualEditor = function(sandbox) {
},
\r
updateEditPane: function(node) {
\r
var pane = this.node.find('#rng-visualEditor-edit');
\r
},
\r
updateEditPane: function(node) {
\r
var pane = this.node.find('#rng-visualEditor-edit');
\r
+ var parentClass = node.parent().attr('wlxml-class');
\r
pane.html( $(sandbox.getTemplate('editPane')({tag: node.attr('wlxml-tag'), klass: node.attr('wlxml-class')})));
\r
\r
var parent = node.parent('[wlxml-tag]').length ? {
\r
pane.html( $(sandbox.getTemplate('editPane')({tag: node.attr('wlxml-tag'), klass: node.attr('wlxml-class')})));
\r
\r
var parent = node.parent('[wlxml-tag]').length ? {
\r
- repr: node.parent().attr('wlxml-tag') +
' / ' + (node.parent().attr('wlxml-class') || '[[no class]]
'),
\r
+ repr: node.parent().attr('wlxml-tag') +
(parentClass ? ' / ' + parentClass : '
'),
\r
id: node.parent().attr('id')
\r
} : undefined;
\r
var children = [];
\r
node.children('[wlxml-tag]').each(function() {
\r
var child = $(this);
\r
id: node.parent().attr('id')
\r
} : undefined;
\r
var children = [];
\r
node.children('[wlxml-tag]').each(function() {
\r
var child = $(this);
\r
- children.push({repr: child.attr('wlxml-tag') + ' / ' + (child.attr('wlxml-class') || '[[no class]]'), id: child.attr('id')});
\r
+ var childClass = child.attr('wlxml-class');
\r
+ children.push({repr: child.attr('wlxml-tag') + (childClass ? ' / ' + childClass : ''), id: child.attr('id')});
\r
});
\r
var naviTemplate = sandbox.getTemplate('editPaneNavigation')({parent: parent, children: children});
\r
pane.find('.rng-visualEditor-editPaneSurrouding > div').html($(naviTemplate));
\r
});
\r
var naviTemplate = sandbox.getTemplate('editPaneNavigation')({parent: parent, children: children});
\r
pane.find('.rng-visualEditor-editPaneSurrouding > div').html($(naviTemplate));
\r
@@
-351,7
+355,7
@@
rng.modules.visualEditor = function(sandbox) {
mediator.toolbarButtonToggled(btn.attr('data-btn'), btn.hasClass('active'));
\r
}
\r
if(btn.attr('data-btn-type') === 'cmd') {
\r
mediator.toolbarButtonToggled(btn.attr('data-btn'), btn.hasClass('active'));
\r
}
\r
if(btn.attr('data-btn-type') === 'cmd') {
\r
- mediator.toolbarButtonCmd(btn.attr('data-btn'));
\r
+ mediator.toolbarButtonCmd(btn.attr('data-btn')
, btn.attr('data-meta')
);
\r
}
\r
});
\r
},
\r
}
\r
});
\r
},
\r
@@
-423,12
+427,19
@@
rng.modules.visualEditor = function(sandbox) {
if(btn === 'tags')
\r
view.toggleTags(toggle);
\r
},
\r
if(btn === 'tags')
\r
view.toggleTags(toggle);
\r
},
\r
- toolbarButtonCmd: function(btn) {
\r
+ toolbarButtonCmd: function(btn
, meta
) {
\r
if(btn === 'new-node') {
\r
if(btn === 'new-node') {
\r
+ var wlxmlTag = toolbarView.getOption('newTag-tag');
\r
+ var wlxmlClass = toolbarView.getOption('newTag-class');
\r
+ if(meta) {
\r
+ var split = meta.split('/');
\r
+ wlxmlTag = split[0];
\r
+ wlxmlClass = split[1];
\r
+ }
\r
if(window.getSelection().isCollapsed)
\r
if(window.getSelection().isCollapsed)
\r
- view.insertNewNode(
toolbarView.getOption('newTag-tag'), toolbarView.getOption('newTag-class')
);
\r
+ view.insertNewNode(
wlxmlTag, wlxmlClass
);
\r
else {
\r
else {
\r
- this.wrapWithNodeRequest(
toolbarView.getOption('newTag-tag'), toolbarView.getOption('newTag-class')
);
\r
+ this.wrapWithNodeRequest(
wlxmlTag, wlxmlClass
);
\r
}
\r
\r
\r
}
\r
\r
\r
@@
-484,4
+495,6
@@
rng.modules.visualEditor = function(sandbox) {
}
\r
\r
}
\r
}
\r
\r
}
\r
-};
\ No newline at end of file
+};
\r
+
\r
+});
\ No newline at end of file