IDEMPIERE-563 HTML Editor for text fields. Revert back to ckeditor. The new 4.0.1 release is working fine again.
This commit is contained in:
parent
577ee64113
commit
4bd63b66f4
|
@ -21,7 +21,8 @@ Bundle-ClassPath: WEB-INF/classes/,
|
||||||
WEB-INF/lib/atmosphere-compat-jbossweb-1.0.4.jar,
|
WEB-INF/lib/atmosphere-compat-jbossweb-1.0.4.jar,
|
||||||
WEB-INF/lib/atmosphere-compat-tomcat-1.0.4.jar,
|
WEB-INF/lib/atmosphere-compat-tomcat-1.0.4.jar,
|
||||||
WEB-INF/lib/atmosphere-compat-tomcat7-1.0.4.jar,
|
WEB-INF/lib/atmosphere-compat-tomcat7-1.0.4.jar,
|
||||||
WEB-INF/lib/atmosphere-runtime-1.0.4.jar
|
WEB-INF/lib/atmosphere-runtime-1.0.4.jar,
|
||||||
|
.
|
||||||
Export-Package: metainfo.zk,
|
Export-Package: metainfo.zk,
|
||||||
org.adempiere.webui,
|
org.adempiere.webui,
|
||||||
org.adempiere.webui.acct,
|
org.adempiere.webui.acct,
|
||||||
|
|
|
@ -25,7 +25,6 @@ import org.adempiere.webui.adwindow.ADWindow;
|
||||||
import org.adempiere.webui.adwindow.AbstractADWindowContent;
|
import org.adempiere.webui.adwindow.AbstractADWindowContent;
|
||||||
import org.adempiere.webui.component.Combobox;
|
import org.adempiere.webui.component.Combobox;
|
||||||
import org.adempiere.webui.component.Textbox;
|
import org.adempiere.webui.component.Textbox;
|
||||||
import org.adempiere.webui.component.Window;
|
|
||||||
import org.adempiere.webui.event.ContextMenuEvent;
|
import org.adempiere.webui.event.ContextMenuEvent;
|
||||||
import org.adempiere.webui.event.ContextMenuListener;
|
import org.adempiere.webui.event.ContextMenuListener;
|
||||||
import org.adempiere.webui.event.DialogEvents;
|
import org.adempiere.webui.event.DialogEvents;
|
||||||
|
@ -231,8 +230,6 @@ public class WStringEditor extends WEditor implements ContextMenuListener
|
||||||
adwindowContent = findADWindowContent();
|
adwindowContent = findADWindowContent();
|
||||||
final WTextEditorDialog dialog = new WTextEditorDialog(this.getColumnName(), getDisplay(),
|
final WTextEditorDialog dialog = new WTextEditorDialog(this.getColumnName(), getDisplay(),
|
||||||
isReadWrite(), gridField.getFieldLength());
|
isReadWrite(), gridField.getFieldLength());
|
||||||
dialog.setAttribute(Window.MODE_KEY, Window.MODE_HIGHLIGHTED);
|
|
||||||
dialog.setSizable(true);
|
|
||||||
dialog.addEventListener(DialogEvents.ON_WINDOW_CLOSE, new EventListener<Event>() {
|
dialog.addEventListener(DialogEvents.ON_WINDOW_CLOSE, new EventListener<Event>() {
|
||||||
@Override
|
@Override
|
||||||
public void onEvent(Event event) throws Exception {
|
public void onEvent(Event event) throws Exception {
|
||||||
|
|
|
@ -21,6 +21,7 @@ import org.adempiere.webui.component.Tabpanels;
|
||||||
import org.adempiere.webui.component.Tabs;
|
import org.adempiere.webui.component.Tabs;
|
||||||
import org.adempiere.webui.component.Textbox;
|
import org.adempiere.webui.component.Textbox;
|
||||||
import org.adempiere.webui.component.Window;
|
import org.adempiere.webui.component.Window;
|
||||||
|
import org.zkforge.ckez.CKeditor;
|
||||||
import org.zkoss.zk.ui.event.Event;
|
import org.zkoss.zk.ui.event.Event;
|
||||||
import org.zkoss.zk.ui.event.EventListener;
|
import org.zkoss.zk.ui.event.EventListener;
|
||||||
import org.zkoss.zk.ui.event.Events;
|
import org.zkoss.zk.ui.event.Events;
|
||||||
|
@ -29,8 +30,6 @@ import org.zkoss.zul.Html;
|
||||||
import org.zkoss.zul.Separator;
|
import org.zkoss.zul.Separator;
|
||||||
import org.zkoss.zul.Vlayout;
|
import org.zkoss.zul.Vlayout;
|
||||||
|
|
||||||
import fi.jawsy.jawwa.zk.cleditor.Cleditor;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @author Low Heng Sin
|
* @author Low Heng Sin
|
||||||
|
@ -48,8 +47,9 @@ public class WTextEditorDialog extends Window implements EventListener<Event>{
|
||||||
private boolean cancelled;
|
private boolean cancelled;
|
||||||
private Tabbox tabbox;
|
private Tabbox tabbox;
|
||||||
private Textbox textBox;
|
private Textbox textBox;
|
||||||
private Cleditor editor;
|
private CKeditor editor;
|
||||||
private Label status;
|
private Label status;
|
||||||
|
private Tab htmlTab;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
|
@ -71,8 +71,9 @@ public class WTextEditorDialog extends Window implements EventListener<Event>{
|
||||||
private void init() {
|
private void init() {
|
||||||
setBorder("normal");
|
setBorder("normal");
|
||||||
setHeight("450px");
|
setHeight("450px");
|
||||||
setWidth("700px");
|
setWidth("800px");
|
||||||
setStyle("position: absolute;");
|
setStyle("position: absolute;");
|
||||||
|
setSizable(false);
|
||||||
|
|
||||||
Vlayout vbox = new Vlayout();
|
Vlayout vbox = new Vlayout();
|
||||||
appendChild(vbox);
|
appendChild(vbox);
|
||||||
|
@ -85,8 +86,8 @@ public class WTextEditorDialog extends Window implements EventListener<Event>{
|
||||||
tabbox.appendChild(tabs);
|
tabbox.appendChild(tabs);
|
||||||
Tabpanels tabPanels = new Tabpanels();
|
Tabpanels tabPanels = new Tabpanels();
|
||||||
tabbox.appendChild(tabPanels);
|
tabbox.appendChild(tabPanels);
|
||||||
tabbox.setVflex("true");
|
tabbox.setVflex("1");
|
||||||
tabbox.setHflex("true");
|
tabbox.setHflex("1");
|
||||||
|
|
||||||
Tab tab = new Tab("Text");
|
Tab tab = new Tab("Text");
|
||||||
tabs.appendChild(tab);
|
tabs.appendChild(tab);
|
||||||
|
@ -97,21 +98,17 @@ public class WTextEditorDialog extends Window implements EventListener<Event>{
|
||||||
textBox.setCols(80);
|
textBox.setCols(80);
|
||||||
textBox.setRows(30);
|
textBox.setRows(30);
|
||||||
textBox.setEnabled(editable);
|
textBox.setEnabled(editable);
|
||||||
textBox.setVflex("true");
|
textBox.setHflex("1");
|
||||||
textBox.setHflex("true");
|
textBox.setVflex("1");
|
||||||
tabPanel.appendChild(textBox);
|
tabPanel.appendChild(textBox);
|
||||||
|
|
||||||
tab = new Tab("HTML");
|
htmlTab = new Tab("HTML");
|
||||||
tabs.appendChild(tab);
|
tabs.appendChild(htmlTab);
|
||||||
|
|
||||||
tabPanel = new Tabpanel();
|
tabPanel = new Tabpanel();
|
||||||
tabPanels.appendChild(tabPanel);
|
tabPanels.appendChild(tabPanel);
|
||||||
if (editable) {
|
if (editable) {
|
||||||
editor = new Cleditor();
|
createEditor(tabPanel);
|
||||||
tabPanel.appendChild(editor);
|
|
||||||
editor.setWidth("100%");
|
|
||||||
editor.setHeight("100%");
|
|
||||||
editor.setValue(text);
|
|
||||||
} else {
|
} else {
|
||||||
Div div = new Div();
|
Div div = new Div();
|
||||||
div.setHeight("100%");
|
div.setHeight("100%");
|
||||||
|
@ -143,6 +140,16 @@ public class WTextEditorDialog extends Window implements EventListener<Event>{
|
||||||
tabbox.addEventListener(Events.ON_SELECT, this);
|
tabbox.addEventListener(Events.ON_SELECT, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void createEditor(org.zkoss.zul.Tabpanel tabPanel) {
|
||||||
|
editor = new CKeditor();
|
||||||
|
editor.setCustomConfigurationsPath("/js/ckeditor/config.js");
|
||||||
|
editor.setToolbar("MyToolbar");
|
||||||
|
tabPanel.appendChild(editor);
|
||||||
|
editor.setVflex("1");
|
||||||
|
editor.setWidth("100%");
|
||||||
|
editor.setValue(text);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param event
|
* @param event
|
||||||
*/
|
*/
|
||||||
|
@ -177,7 +184,7 @@ public class WTextEditorDialog extends Window implements EventListener<Event>{
|
||||||
} else if (event.getTarget() == editor) {
|
} else if (event.getTarget() == editor) {
|
||||||
updateStatus(editor.getValue().length());
|
updateStatus(editor.getValue().length());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateStatus(int newLength) {
|
private void updateStatus(int newLength) {
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
CKEDITOR.editorConfig = function(config) {
|
||||||
|
config.resize_enabled = false;
|
||||||
|
config.toolbar = 'MyToolbar';
|
||||||
|
config.toolbar_MyToolbar = [
|
||||||
|
[ 'Bold', 'Italic', 'Underline', 'Strike', 'Subscript',
|
||||||
|
'Superscript', 'TextColor', 'BGColor', '-', 'Cut', 'Copy',
|
||||||
|
'Paste', 'Link', 'Unlink' ],
|
||||||
|
[ 'Undo', 'Redo', '-', 'JustifyLeft', 'JustifyCenter',
|
||||||
|
'JustifyRight', 'JustifyBlock' ],
|
||||||
|
[ 'Table', 'Smiley', 'SpecialChar', 'PageBreak',
|
||||||
|
'Styles', 'Format', 'Font', 'FontSize', 'Maximize'] ];
|
||||||
|
};
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<classpath>
|
<classpath>
|
||||||
<classpathentry kind="src" path="src"/>
|
<classpathentry kind="src" path="src"/>
|
||||||
<classpathentry exported="true" kind="lib" path="lib/jawwa-zk-cleditor-0.4.1.jar" sourcepath="lib/src/jawwa-zk-cleditor-0.4.1-sources.jar"/>
|
<classpathentry exported="true" kind="lib" path="lib/ckez.jar" sourcepath="lib/src/ckez-sources.jar"/>
|
||||||
<classpathentry exported="true" kind="lib" path="lib/calendar.jar" sourcepath="lib/src/calendar-source.jar"/>
|
<classpathentry exported="true" kind="lib" path="lib/calendar.jar" sourcepath="lib/src/calendar-source.jar"/>
|
||||||
<classpathentry exported="true" kind="lib" path="lib/asm.jar"/>
|
<classpathentry exported="true" kind="lib" path="lib/asm.jar"/>
|
||||||
<classpathentry exported="true" kind="lib" path="lib/cglib.jar"/>
|
<classpathentry exported="true" kind="lib" path="lib/cglib.jar"/>
|
||||||
|
|
|
@ -128,7 +128,7 @@ Bundle-ClassPath: .,
|
||||||
lib/zel.jar,
|
lib/zel.jar,
|
||||||
lib/zkbind.jar,
|
lib/zkbind.jar,
|
||||||
lib/calendar.jar,
|
lib/calendar.jar,
|
||||||
lib/jawwa-zk-cleditor-0.4.1.jar
|
lib/ckez.jar
|
||||||
Export-Package: Lib,
|
Export-Package: Lib,
|
||||||
Lib.collections,
|
Lib.collections,
|
||||||
Lib.compiler,
|
Lib.compiler,
|
||||||
|
@ -188,7 +188,6 @@ Export-Package: Lib,
|
||||||
date,
|
date,
|
||||||
doc,
|
doc,
|
||||||
drb,
|
drb,
|
||||||
fi.jawsy.jawwa.zk.cleditor,
|
|
||||||
io,
|
io,
|
||||||
irb,
|
irb,
|
||||||
irb.cmd,
|
irb.cmd,
|
||||||
|
@ -518,6 +517,7 @@ Export-Package: Lib,
|
||||||
org.python.tests.props,
|
org.python.tests.props,
|
||||||
org.python.util,
|
org.python.util,
|
||||||
org.w3c.dom.html,
|
org.w3c.dom.html,
|
||||||
|
org.zkforge.ckez,
|
||||||
org.zkforge.json.simple,
|
org.zkforge.json.simple,
|
||||||
org.zkforge.json.simple.parser,
|
org.zkforge.json.simple.parser,
|
||||||
org.zkforge.timeline,
|
org.zkforge.timeline,
|
||||||
|
@ -693,19 +693,63 @@ Export-Package: Lib,
|
||||||
uri,
|
uri,
|
||||||
web,
|
web,
|
||||||
web.aud,
|
web.aud,
|
||||||
|
web.ckez.html,
|
||||||
|
web.ckez.img,
|
||||||
web.dsp.action.html,
|
web.dsp.action.html,
|
||||||
web.html,
|
web.html,
|
||||||
web.img,
|
web.img,
|
||||||
web.jawwa.ext.cleditor,
|
|
||||||
web.jawwa.ext.cleditor.images,
|
|
||||||
web.js.calendar,
|
web.js.calendar,
|
||||||
web.js.calendar.css,
|
web.js.calendar.css,
|
||||||
web.js.calendar.img,
|
web.js.calendar.img,
|
||||||
web.js.calendar.lang,
|
web.js.calendar.lang,
|
||||||
web.js.calendar.mold,
|
web.js.calendar.mold,
|
||||||
|
web.js.ckez,
|
||||||
|
web.js.ckez.ext.CKeditor,
|
||||||
|
web.js.ckez.ext.CKeditor.adapters,
|
||||||
|
web.js.ckez.ext.CKeditor.lang,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.a11yhelp.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.a11yhelp.dialogs.lang,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.about.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.clipboard.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.colordialog.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.dialog,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.div.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.fakeobjects.images,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.find.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.flash.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.flash.images,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.forms.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.forms.images,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.iframe.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.iframe.images,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.image.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.image.images,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.link.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.link.images,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.liststyle.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.magicline.images,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.pagebreak.images,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.pastefromword.filter,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.preview,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.scayt,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.scayt.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.showblocks.images,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.smiley.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.smiley.images,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.specialchar.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.specialchar.dialogs.lang,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.table.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.tabletools.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.templates.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.templates.templates,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.templates.templates.images,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.wsc,
|
||||||
|
web.js.ckez.ext.CKeditor.plugins.wsc.dialogs,
|
||||||
|
web.js.ckez.ext.CKeditor.skins.moono,
|
||||||
|
web.js.ckez.ext.CKeditor.skins.moono.images,
|
||||||
web.js.gmaps,
|
web.js.gmaps,
|
||||||
web.js.gmaps.ext,
|
web.js.gmaps.ext,
|
||||||
web.js.jawwa.cleditor,
|
|
||||||
web.js.timelinez,
|
web.js.timelinez,
|
||||||
web.js.timelinez.css,
|
web.js.timelinez.css,
|
||||||
web.js.timelinez.ext,
|
web.js.timelinez.ext,
|
||||||
|
|
|
@ -28,5 +28,5 @@ bin.includes = META-INF/,\
|
||||||
lib/zel.jar,\
|
lib/zel.jar,\
|
||||||
lib/zkbind.jar,\
|
lib/zkbind.jar,\
|
||||||
lib/calendar.jar,\
|
lib/calendar.jar,\
|
||||||
lib/jawwa-zk-cleditor-0.4.1.jar
|
lib/ckez.jar
|
||||||
source.. = src/
|
source.. = src/
|
||||||
|
|
Loading…
Reference in New Issue