Sferyx LogoSferyx Internet Based Systems
Sferyx JSyndrome HTML Editor Applet Edition
 

HTML EDITOR COMPONENT

User Manual
Oracle Forms
SWT / Eclipse
XML features
FAQ
Download
Screenshots
Licensing & Prices

HTML EDITOR APPLET

User Manual
FAQ
Drupal Integration
SAKAI Integration
IBM Lotus Notes
Download
Screenshots
Licensing & Prices

EQUATION/MATHML EDITOR

User Manual
FAQ
Download
Screenshots
Licensing & Prices

PDFEXPORT ADD-ON

User Manual
On-line store
Customers
Contacts


 

What's new in version 13.0

New features and fixes summary - changelog from 12.0 to 13.0

1) Large document loading and editing - greatly improved rendering performance in all versions and JRE's - faster loading and rendering of large documents.

2) Improved rendering and filtering of pasted MS Office and other files - better formatting of all elements and better rendering.

3) Added support for rendering of inline Base 64 encoded images - now the inline document images are rendered properly.

4) Optimized rendering performance of documents containing large inline image - now the loading of documents containing inline images has been improved and it happens almost instantly

5) setEmbedAllImagesInsideTheDocument - this new method enables the editor to embed all document images inside the HTML code which is retrieved using getContent(), getBodyContent() methods. This way is possible to create fully self contained documents to be saved as simple strings inside database fields (for example CLOB or similar) or even simple text files. You can even retrieve the entire documents easily in a client-server environment by simply getting the document content. This feature can also be very useful in the creation of e-mail like applications for embedding all images inside the message body.

public void setEmbedAllImagesInsideTheDocument(boolean embed)  - if this is set to true, you can retrieve the document HTML and all the images by simply using getContent() or getBodyContent().

6) isEmbedAllImagesInsideTheDocument() - returns whether the embedding of images is enabled.

7) public void setWrapParagraphLinesAlwaysOnEditorSize(boolean wrapAlways) this new method will force the editor to always wrap the text content to the editor size - it will break the words even if there is no whitespace.

8) Improved list handling operations - fixed some minor issues

9) Fixed various issues in table editing operations - improved table editing support, fixed some issues which were causing errors in the table and table cell editing.

10) Improved CSS standards compliance rendering - now has been added support for multiple class name declarations inside the class attribute

11) setLoadDocumentsAsynchronously(boolean load) - this new method causes the documents to be loaded asynchronously providing instant visual feedback when loading large documents - this emulates the browser behavior when the pages load in pieces and part of the content shows up immediately when the page is loaded. This is even more efficient in page loading when combined with setLoadDocumentImagesInASeparateThread(true)

12)  public boolean isLoadDocumentsAsynchronously() - returns whether the document elements are loaded asynchronously to provide instant visual feedback on the page loading.

13) Table row handling - Insert Table Rows Above and Blelow - now is possible to insert table rows before and after the current position. This simplifies greatly the various table editing operations.

14) Table column handling - Insert Table Columns Left and Right - now is possible to insert table columns before and after the current position. This simplifies greatly the various table editing operations.

15) Table cell handling - various fixes for table cell split operations when there are multicolumn and multirow cells.

16) Table cell handling - various fixes for table cell merge operations when there are multicolumn and multirow cells.

17) Greatly improved rendering of CSS properties like borders, margins and backgrounds for better standards compliance.

18) Optimized spellchecker engine for faster performance and better thread synchronization.

19) Now the document generator generates <span> tags instead of <font> to ensure better standards compliance of the generated documents.

20) Added support for more CSS 3 attributes now all inline CSS attributes are preserved when the document is generated.

21) Added support for CSS 3 2D transformations like transform:rotate(90deg) - this enables rotation of all document elements including tables and table cells

22) Improved support for links mouse over events in preview mode - now are supported all attributes and nested CSS declarations - this way is possible to create dynamic mouse over effects for links like font color, size, family, underline, bold, background etc. Please note that this will work only in the preview mode.

23) Included support for the new CSS 3 rem unit. Improved support for em units for dimensions and font sizes.

24) Fixes for some element dimensions in percentages.

25) Fixed behavior of image size in percentages to reflect new specifications base on parent element dimensions.

26) Various fixes in importing MS Word and MS Excel files. Now all the documents are rendered properly.

27) Applet Edition - now is possible to scroll the content of the editor even when it has been disable when using setEnbled(false) from javascript.

28) Applet Edition - now are available also the following javascript methods:

resetDocumentEdited() - permits to reset the state of isDocumentEdited() variable when needed.

setEditorBackgroundColor(String color) - this one takes string html colors like #FFFFFF etc.
This way you can change the color when for example enable/disable the editor or need to set different default background color without affecting the document formatting.

29) New Oracle Forms method:

public String getEditorState() -Returns the current state of the editor. The returned value is one of
VISUAL_EDITOR
SOURCE_EDITOR
PAGE_PREVIEW
 

30) New Oracle Forms method now is possible to set for reporting only pre defined keys when custom events are enabled

public void addKeyToKeyEventMask(int keyCode, boolean shiftDown, boolean altDown, boolean ctrlDown, boolean metaDown, boolean altGraphDown) - If key is added to the key event mask only events generated from this key will be dispatched as custom events, others will be ignored . To reset the event mask use resetKeyEventMask method. keyCode is the code of the key on the keyboard. Example Enter is 13, Space bar is 32 etc.

public void resetKeyEventMask() -To reset the event mask use resetKeyEventMask method

So if you want to set key event mask for the F9, Shift+F9 and F10 you will need to do like this:

htmlEditor.addKeyToKeyEventMask(120,false,false,false,false,false);
htmlEditor.addKeyToKeyEventMask(120,true,false,false,false,false);
htmlEditor.addKeyToKeyEventMask(121,false,false,false,false,false);


This way only those event will be reported. Obviously this is used in conjunction with keyPressed event mask if event masks are enabled.

31) Now is possible to load the UI translation files, custom style sheet files and the dictionaries also from the class path for easier bundling and integration.

32) New HTMLEditorOracleBean methods for better Oracle Forms integration:

public void setDisableToolbarItems(String toolbarItemNames)

33) New HTMLEditorOracleBean methods for better Oracle Forms integration:

public void setEnableToolbarItems(String toolbarItemNames)

34) New HTMLEditorOracleBean methods for better Oracle Forms integration:


public void setEnabled(boolean enabled)

public boolean isEnabled()



35) New HTMLEditorOracleBean method -  will select the word at the current caret position

public String selectCurrentWord()

36) New HTMLEditorOracleBean method -  will create an empty document inside the editor resetting all the content inside it.

public void createEmptyDocument()

37) New HTMLEditorOracleBean method - sill replace the word at the current caret position with the given word

public void replaceCurrentWord(String replaceWith)

38) New HTMLEditorOracleBean method - this method allows to be captured only specific action events from all UI elements such as toolbars and menus. discardDefaultActions specifies whether the default action for the UI element to be suppressed or not. This way you can implement easily your own handlers for all UI items of the editor by disabling the default functionality and implementing a new one.

public void setEnableActionEventMaskForUIItems(String uiItemNames,boolean discardDefaultActions)
 

39) New HTMLEditorOracleBean method - this method will enable/disable the local file dialog when needed. This will result in disabling of all browse buttons which lead to local file browsing

public void setLocalFileBrowsingDisabled(boolean disabled)

Returns whether the local file browsing is enabled

public boolean isLocalFileBrowsingDisabled()


40) New HTMLEditorOracleBean method - this allows easy reversal of the document depending on the writing system used.

public void setLTROrientation()

public void setRTLOrientation()


41) New HTMLEditorOracleBean method - this new method enables the editor to embed all document images inside the HTML code which is retrieved using getContent(), getBodyContent() methods. This way is possible to create fully self contained documents to be saved as simple strings inside database fields (for example CLOB or similar) or even simple text files.

public void setEmbedAllImagesInsideTheDocument(boolean embed)

public boolean isEmbedAllImagesInsideTheDocument()


42) New HTMLEditorOracleBean methods for internal document navigation when implemented in Oracle Forms


public void setCaretPosition(int position)  -sets the caret postion


public int getCaretPosition()
 -returns the current caret position


public void setSelection(int start, int end)
 -sets the selection start and end positions


public int getSelectionStart()
 -returns the selection start


public int getSelectionEnd()
 -returns the selection end


43) New HTMLEditorOracleBean methods for internal document navigation when implemented in Oracle Forms


public boolean isCaretPlacedInAReadOnlySection() - indicates if the caret is inside a read-only section of the document


44) These new HTMLEditorOracleBean methods have been added to extend the Oracle Forms functionalities and allow uploads and WebDAV publishing of the documents.

public void setUploadContentAsMultipartFormData(boolean uploadContentAsMultipartFormData)

public void setUploadedObjectsTranslationPath(String uploadedObjectsTranslationPath)


public boolean uploadMultipartContent(String saveLocation, boolean entireFile)


public void setPublishContentUsingWebDAV(boolean publishContentUsingWebDAV_)

public void setGenerateUniqueImageFilenames(boolean generateUniqueImageFilenames_)


public void saveToLocation(String saveLocation, boolean entireFile)

public void setGlobalReplacementFontFamilyOnPaste(String replacementFontFamily)



45) New HTMLEditorOracleBean method is used to convert the non ASCII characters to HTML entities for easier store and retrieve operations - you should set this to true - the default value is false.

public void setDontConvertCharacters(boolean convert)


46) New HTMLEditorOracleBean  method closes the existing content buffer and inserts its content inside the editor at the caret position - this method will not reset the entire content of the editor but will insert it along with the existing one. This should be used in conjunction with openContentBuffer() and appendContentToContentBuffer(String content). This methods are very useful in environments where long content strings cannot be inserted at once due to some limitations as happens for example in Oracle Forms. See supplied examples in the users manual.


public void closeBufferAndInsertAtCaretPosition()


46) New HTMLEditorOracleBean  method returns the length of the plain text content of the editor.

public int getPlainTextContentLenght()


47) New HTMLEditorOracleBean  method returns portion of the plain text content - this should be used in environments where is impossible the whole content at once due to some limitations such as the case of Oracle Forms. This should be used in conjunction with getPlainTextContentLength() and make cycle for retrieving all pieces through getPlainTextContentPortion(int start, in length)

public String getPlainTextContentPortion(int offset, int length)



48) New HTMLEditorOracleBean  method Returns the current state of the editor. The returned value is one of
VISUAL_EDITOR
SOURCE_EDITOR
PAGE_PREVIEW

public String getEditorState()

48) New HTMLEditorOracleBean  method Returns the current state of the editor. The returned value is one of
VISUAL_EDITOR
SOURCE_EDITOR
PAGE_PREVIEW

public String getEditorState()

49) New interface public interface sferyx.administration.editors.extensions.ElementEditabilityEvaluator  - this is used to implement custom read-only decision making algorithms to evaluate if given element is read-only, editable or deletable.

50) New method setElementEditabilityEvaluator

 This method allows to implement custom editability functionality on each document element. Through the provided interface is possible to define which elements are editable and which are deletable etc.

public void setElementEditabilityEvaluator(ElementEditabilityEvaluator eee)

Returns whether custom element editability evaluator has been set.

public ElementEditabilityEvaluator getElementEditabilityEvaluator()

51) Fixed various issues when applying custom style classes through the style class combobox on the toolbar - now it is easier to set and remove style classes to the various elements.

52) Fixed various translation and internationalization issues on some property dialog windows.

53) Implemented support for display and rendering of <iframe> elements.

 

What's new in version 12.0

New features and fixes summary - changelog from 11.0 to 12.0

1) Greatly improved rendering performance in all versions and JRE's - faster loading and rendering of large documents.

2) Many improvements in the pasting of MS Office and other files - better formatting of all elements and better rendering.

3) new method public void switchExternalDictionary(String externalDictionary) - now is possible to switch the dictionaries during runtime.

4) new method public void loadDefaultDictionary()- loads the default dictionary after it has been replaced previously by external one.

5) new method  public void setUnderline(boolean underline) new shortcut method for easier setting of basic text properties.

6)
public void setBold(boolean underline) new shortcut method for easier setting of basic text properties.

7) public void public void setItalic(boolean underline) new shortcut method for easier setting of basic text properties.

8) Improved list handling operations - fixed some minor issues

9) Improved CSS rendering - faster loading and better support for rendering the various elements.

10) Improved the loading of images in a separate thread - now all the documents in this mode load faster.

11) Improved table handling and various table resizing operations.

12) Table handling - various fixes for table cell merge operations

13) Table handling - various fixes for table cell split operations

14) Various fixes for list rendering - improved visual similarity with various browsers.

15) Border-collapse CSS property now supported for tables

16) Fixed various issues on pasting plain text

17) Improved images selection and resize

18) PDFGenerator: better rendering and faster document generation.

19) PDFGenerator: fixed some issues concerning content wrapping.

20) Fixed some compatibility issues with jre 1.7

21) Fixed some toolbar layout issues.

22) Now by default the toolbars are no longer floatable by default.

23) Improved loading of documents with international charsets. Fixed some issues when loading such documents in the preview section.

24) Improved custom XML components management

25) Improved spell checking capabilities and performance. Resolved some minor issues with both as-you-type and manual spellcheckers.

26) Some minor fixes when loading https images with expired or non valid certificates.

27) Now the file names of the uploaded files are encoded using the default encoding indicated through defaultCharset.

28) The URLs should be now encoded as expected.

29) Resetting of the default table cell backgrounds and colors should be working as expected for multiple cells. Now you can reset the multiple table cell border thickness by setting the value to 0.

30) New parameter for using custom File names as follows in the Applet Edition:

<PARAM NAME ="useCustomFileNaming" VALUE="imageFile"> - Sets the file name pattern to be used for renaming of the uploaded files - this will work only if generateUniqueImageFilenames is set to true - this way all the uploaded files will be named like "imageFile"+uniqueIdentifier+fileExtension

31) Improved content generation when not enabled setForcedSpanGeneration -some empty tags generated automatically now are discarded.

32) Improved table cell properties dialog for better handling of multiple cell selection.

33) Improved color chooser for background and foreground color selection with the possibility to reset the current color to automatic..

34)  public void setResetAllBlockQuotesOnEnter(boolean resetAll) - when set to true, the default enter action will resets all underlying blockquotes mimicking a e-mail editor behavior when replying.

35)  public boolean isResetAllBlockQuotesOnEnter() - returns whether the automatic reset of blockquotes on enter is enabled or not.

 

 

What's new in version 11.0

New features and fixes summary - changelog from 10.0 to 11.0

1) Greatly improved rendering performance in all versions and JRE's

2) new method htmlEditor.setTreatAlwaysPastedPlainTextAsPlain(true) - this method allows by default to be pasted plain text and converted automatically for proper representation by the HTMLEditor

3) new method htmlEditor.setLoadDocumentImagesInASeparateThread(true) - specfifies all the document images to be loaded into a separate thread so the initial docuemnt show more quickly accelerating the user visual perception of the document loading

4) new method public void setGlobalReplacementFontFamilyOnPaste(String replacementFontFamily) allows upon paste to be replaced all defined fonts with a specific font family

5) public void disableHTMLEditorFocusRequests(boolean disable)

6) Improved list handling operations

7) Improvements in the management of read-only sections and especially with custom XML tags

8) Improved CSS rendering

9) Oracle Forms integration:Now by default all events are enabled including keyEvents.

10) Oracle Forms integration: Now you can specify only selected events to be delivered through the method

setCustomEventDispatchingMask("mouseReleased,insertUpdate,keyTyped")

This way only the specified events in the list will be dispatched to WHEN-CUSTOM-ITEM-EVENT
To receive the cut events you should enable also the removeUpdate type events.

11) fixed some minor issues with the substance look and feel

12) New method: getPreviewPopupMenu() - allows direct customization of the preview popup menu.

13) Improved style loading and rendering

14) Improved drag and drop operations

15) Fixed issues with modifying and drag and drop of table elements - now drag& drop of entire tables is executed correctly

16) Fixed issues with drag and drop of list elements.

17) PDFGenerator: now you can specify Headers, Footers and Page numbers in any formatting and position through full HTML formatting support

18) PDFGenerator: New options for integration with OraclReports - setDiscardEmptyPages() when is specified large page so the paging is made directly by the PDFGenerator

19) PDFGenerator: now all hyperlinks inside the HTML document are generated as links (annotations) automatically inside the resulting PDF file

20) Improved user experience when editing lists, images and tables, pasted from MSWord or other external applications.

21) public void setForceCSSOutput(boolean force) - forces CSS attributes to be generated instead of deprecated HTML attributes indipendently how the attributes have been specified previously.

22) setDisableAutomaticNBSP(boolean disable) - disables automatic generation of nbps entities inside the empty paragraphs

23) Improved form components editing, rendering

24) Improved custom XML components management

25) Improved spell checking capabilities and performance. Resolved some minor issues with both as-you-type and manual spellcheckers.

26) Improved background rendering for different CSS options.

27) Greatly improved pasting of formatted content from MSOffice and other external applications - better rendering, conversion and performance

28) Performance boost for editing large files.

29) Initial support for some new HTML 5 elements.

30) Various fixes for the JavaScriptEmulation engine for more efficient referencing of the various document elements.

31) Various fixes for better performance for the methods insertTable and setInnerHTML - now is possible to use it on practically all elements.

32) Various improvements for specifying the document base through setAbsoluteDocumentTranslationURL - now applies automatically when using set content

33) Improved setPreviewModeOnly, now is possible to track the various elements, also fixed some issues on the document scroll position

34) Resolved different issues with the fonts sizes selection and the display into the font sizes combo - now are shown all the font sizes independently of the combo box content.

35) Resolved issue with Oracle Form and jre 1.4 on Win Vista and Win 7

36) New method - setOuterElement(Element elem, String content) - now together with setInnerElement(Element elem, String content) is possible to manipulate practically all the document elements.

37) Improved border and background painting for tables, better CSS implementation.

38) Faster loading of large style sheets

39) Resolved some performance issue with very large tables.

40) Now is possible to copy text when in preview mode only

41) Better handling of automatic as-you-type hyperlink insertion

42) Fixed various issues on hyperlinks concerning the applying of hyperlink attributes after pasting or inserting hyperlinks

43) Now readonly sections can be defined also through <a> attribute

44) PDFGenerator: Fixed some minor page layout and formatting issues

45) PDFGenerator: implemented support for the page formatting CSS properties like page-break-before, page-break-after, page-break-inside

46) PDFGenerator: implemented support for preserving tables and list elements to do not break across the pages

If set to true, the PDFGenerator will try to not break tables when page break is encountered if the table is not longer than the page height. The default value is false

public void setDoNotBreakTablesAcrossPages(boolean disablebreak)


public boolean isDoNotBreakTablesAcrossPages()

If set to true, the PDFGenerator will try to not break tables when page break is encountered if the table is not longer than the page height. The default value is false

public void setDoNotBreakListsAcrossPages(boolean disablebreak)

public boolean isDoNotBreakListsAcrossPages()

 

What's new in version 10.0

New features and fixes summary - changelog from 9.0 to 10.0


1) Now, the utf-8 is the default charset for decoding the intitailURLEncoding content, others can be specified through the defaultCharset parameter.

Now on the server you can do :
java.net.URLEncoder.encode("some text","utf-8");

and put it in  initialURLEncodedContent as applet parameter - by default it will be decoded properly.

2) <PARAM NAME="maxFileUploadSize" VALUE="number or 20M or 20K"> this new parameter will limit the file size of the uploads limited to a specified value. If one of the files is bigger the upload will be stopped and error message will be prompted.

3) <PARAM NAME="keepAspectRatioWhenResizeImages" VALUE="true|false"> this forces when resizing images visually to keep aspect ratio. Otherwise this can be achieved by pressing the Shift key down while resizing.

4) new method: public void addAdditionalDynamicParameter(String name, String value) - this new method allows dynamically to be added new variables to be sent to the server together with the file upload operation. This would allow complete AJAX style operations without the need to reload the page when saving the content. You can send this way all the page form fields along with the applet multipart upload.

5) <PARAM NAME="replaceCharactersAsYouType" VALUE="o=a|this=that"> - specifies characters or string literals to be replaced as-you-type. The format for replacing is as follows : charToReplace=replacementChar. The same is valid for string literals, the various pairs of replacements a separated by the "|" character. When replacing string literals, the replacement will be completed when a space, tab or new line character is typed after the string to be replaced.

6) <PARAM NAME="disabledKeyboardCharacters" VALUE="oagjiesc"> - specifies characters to be disabled as-you-type. All the single characters specified in the parameter will be denied entry from the keyboard as the user types on it. In the example here all the single characters o,a,g,j,i,s,c will not be allowed to be inserted from the keyboard.

7) <PARAM NAME="removeCTRLKeystrokes" VALUE="true|false"> - if true - this parameter will disable all the CTRL+key default operations. The default value is false.

8) <PARAM NAME="sendAddWordsToServer" VALUE="http://your_server"> - specifies the server address where to send new words if there is a need to manage them centrally for all users. This parameter will cause all new words added by the users to be sent to a central repository and added to a centralized dictionary - the word will be sent through a GET request using query string parameter name wordToAdd. This parameter could be used in conjunction with externalDictionary and appendExternalDictionary parameters

9) <PARAM NAME ="debug" VALUE="true|false"> - will force the editor to display inside the editor window the response returned from the server if any.

10) <PARAM NAME ="displayServerResponseAsWarning" VALUE="true|false"> - will force the editor to display the server response inside a popup window as a warning message. To be used in conjunction with the parameter "debug"


11) Now you can specify the HTML form components properties though CSS like background, color, font, width, height etc.
 

<html>
<head>
<style type="text/css">
.test{ font-size:30px;background-color:yellow;color:red;}
#some_id{ font-size:30px;background-color:red;color:yellow;}
</style>
</head>
<body>
<input class="test" name="my_button" type="submit" />
<input id="some_id" name="my_button2" type="submit" />
</body>
</html>

<input id="3246" class="test" name="my_button" type="submit" />


12) There were already methods for direct access to the form components like

public void addFormElementsMouseListener(MouseListener listener)

public void removeFormElementsMouseListener(MouseListener listener)

public void addFormElementsKeyListener(KeyListener listener)

public void removeFormElementsKeyListener(KeyListener listener)

and now we have added also the following new ones:

public void addFormElementsContainerListener(ContainerListener listener)

public void removeFormElementsContainerListener(ContainerListener listener)


13) Improved rendering and overall editing performance

14) Improved support for RTL languages such as Arabic and Hebrew - fixed some minor issues

15) Dual mode content editing functionalities - synchronous and asynchronous as follows:

- setContent(String htmlContent) is astynchronous - to be used according to the specific case

- setContent_(String htmlContent) is synchronous - to be used according to the specific case

- insertContent(String htmlContent) is astynchronous - to be used according to the specific case

- insertContent_(String htmlContent) is synchronous - to be used according to the specific case

16) Improved custom tags management

17) Improved CSS support

18) Several minor fixes for the spellchecker

19) Improved spelling match capabilities

20) PDFGenerator & PDFExport Add-on - several performance and file generation fixes

21) PDFGenerator & PDFExport Add-on - Added support for virtually all languages through the UTF-8 character set encoding

22) PDFGenerator & PDFExport Add-on - Added support for RTL languages such as Arabic, Hebrew, Farsi

23) PDFGenerator & PDFExport Add-on - Added support for all Arabic ligatures and specific glyphs

24) PDFGenerator & PDFExport Add-on - Tested support for the following languages and any resulting combination of them through the UTF-8 (More languages are also supported but simply currently have not yet been tested):

English, Estonian, Finnish, French, German, Italian, Greek, Bulgarian, Czech, Danish, Dutch, Hungarian, Irish, Latvian, Lithuanian, Maltese, Polish, Portuguese, Romanian, Slovak, Slovene, Spanish, Swedish, Catalan, Galician, Basque, Albanian, Arabic, Farsi, Hebrew, Croatian, Russian, Belarusian, Serbian, Turkish, Ukrainian, Azeri, Kazakh, Kyrgyz, Tatar ,Turkish, Turkmen, Uyghur, Uzbek, Chinese, Vietnamese.

25) PDFGenerator & PDFExport Add-on - Support for embedding all TTF fonts contained inside the HTML document inside the generated PDF file. Automatic substitution of missing fonts.

26) HTML Editor - possibility to specify the caching of the document images:

public void setDisableImageCaching(boolean imageCachingDisabled)

27) HTMLEditor - possibility to specify all images to not be loaded:

public void setDontLoadDocumentImages(boolean loadImages)


27) Now the automatic file uploading and save capabilities can emulate AJAX style client - server communication without the need of reloading the page while editing

28) Improved memory management

29) Improved list editing support, overall editing experience improved.

30) Some minor fixes concerning document generation in forced span mode

31) Possibility to specify all the images to keep aspect ratio while resizing

public void setResizeImagesAlwaysKeepAspectRatio(boolean keepAspectRatio)

32) Fixes on custom font lists and rendering of the font name on missing font files

33) Several fixes for the JavaScriptEmulationEngine concerning document element references.

34) Now is possible to paste images directly from the clipboard and subsequently execute direct uploads. This permits direct interaction with applications such as Adobe Photoshop or similar image processing applications.

35) Now is possible to drop images directly from the clipboard and subsequently execute direct uploads. This permits direct interaction with applications such as Adobe Photoshop or similar image processing applications.

36) Resolved some minor UI issues with various L&F

37) Resolved some minor issues with the context menu

38) New OracleForms methods for the PDFGenerator, some example usage for the contentBuffer for large content:


FBEAN.INVOKE('block_control.PDFGenerator', 1, 'openContenBuffer');
FBEAN.ADD_ARG(hArgs, :block_control.description1);
FBEAN.INVOKE('block_control.PDFGenerator', 1, 'appendContentToContentBuffer', hArgs);
FBEAN.CLEAR_ARGLIST(hArgs);
FBEAN.ADD_ARG(hArgs, :block_control.description2);
FBEAN.INVOKE('block_control.PDFGenerator', 1, 'appendContentToContentBuffer', hArgs);
FBEAN.CLEAR_ARGLIST(hArgs);
FBEAN.ADD_ARG(hArgs, :block_control.description3);
FBEAN.INVOKE('block_control.PDFGenerator', 1, 'appendContentToContentBuffer', hArgs);
FBEAN.CLEAR_ARGLIST(hArgs);
FBEAN.ADD_ARG(hArgs, :block_control.description4);
FBEAN.INVOKE('block_control.PDFGenerator', 1, 'appendContentToContentBuffer', hArgs);
FBEAN.CLEAR_ARGLIST(hArgs);
FBEAN.ADD_ARG(hArgs, :block_control.description5);
FBEAN.INVOKE('block_control.PDFGenerator', 1, 'appendContentToContentBuffer', hArgs);
FBEAN.CLEAR_ARGLIST(hArgs);
FBEAN.ADD_ARG(hArgs, 'c:\test.pdf');
FBEAN.ADD_ARG(hArgs,'Letter');
FBEAN.ADD_ARG(hArgs,'PORTRAIT');
FBEAN.INVOKE('block_control.PDFGenerator', 1, 'closeBufferAndGeneratePDF', hArgs);
FBEAN.CLEAR_ARGLIST(hArgs);

39) New extended insert image dialog for the HTMLEditor Component Edition, now is possible to specify directly upon insertion the various images parameters

40) Several new OracleForms methods for the HTMLEditorOracleBean

41) Several new OracleForms methods for the PDFGeneratorOracleBean


42) Minor fixes for the various table dialogs

43) Now is possible to define style sheets also for inline tags like <b>, <i> etc. which will be rendered during edit mode as-you-type.

44) Several fixes for the readonly sections especially concerning the inline readonly elements

45) Some fixes for the TAB transfer operations for the Component Edition

46) Now is possible to specify default Drop operation or specify none to disable drop operations.
 

What's new in version 9.0

New features and fixes summary - changelog from 8.0 to 9.0

1) Faster rendering engine: improved rendering performance in all versions and JRE's
2) Many improvements on the editing performance and document loading time especially for larger and more complex documents.
3) Possibility to specify different  document generation mode - setForcedSpanGeneration will now force correctly to be generated standards compliant inline span styles for all the element formatting like fonts etc.
4) Reduced memory consumption improved performance with older JRE versions.
5) Improved document editing experience, resolved some annoying regression issues.
6) Improved CSS rendering according to the W3C specs in all versions and JRE's including JInitiator and JRE 1.3
7) Now is possible to specify any font size
using setForcedSpanGeneration and setRestrictedfontSize methods
8) Now is possible to specify pixels
to be used as font size units using setUsePixelsForFontSizeListCombo method
9) PDFExport - major improvements on the layout of the generated PDF documents
10) PDFExport - setPDFExportOutputEncoding - allows to be specified the encoding for the document. Currently are supported all West European languages, Cyrillic, Greek and Chinese.
11) PDFExport - setDefaultPageFormatForPDFExport - allows to be specified default page format for the PDFGeneration - this way the users will not be prompted with the Page size dialog.
12) Printing - setQuickPrint - this method allows the system default page size to be used for printing -  this way the users will not be prompted with the Page size dialog.
13) Greatly improved document filtering when pasting MS Word documents - now all unnecessary tags and comments are discarded.
14) Greatly improved document rendering when pasting MS Word documents
15) Improved importing of documents through Drag&Drop operations from external files
16) Applet Edition new parameter: forceSpanGeneration
17) Applet Edition new parameter: usePixelsForFontSizeListCombo
18) Greatly improved OraclForms integration - now are available also properties for easier customization
19) New OracleForms examples: HTMLEditorForm-customization-example.fmx and HTMLEditorForm-customization-example.fmb - this simple example illustrates the features you need and how to configure the editor in order to use them. Simply load the form and you be able to see how it works
20) HTMLEditor-OracleForms-customization-example.txt - this file contains all the code from the example which illustrates how to configure the editor easily.
21) New OracleForms integration features - it includes the following new features:

FOCUS Control Features
--------------------------------------


- Now the focus will be handled automatically and when you are tabbing across the form it will be automatically transferred to the editor.
- To move out the focus from the editor to the next form field use SHIFT+TAB
- To be able to control programmatically the focus use the following properties:

FOCUS_OUTSIDE

Declare
Begin
FBean.Set_Property( 'HTMLEDITOR_AREA', 1, 'transferFocusOutside', 'true');
End;

=============================================================================

FOCUS_INSIDE

Declare
Begin
FBean.Set_Property( 'HTMLEDITOR_AREA', 1, 'transferFocusInside', 'true');
End;


Initial Setup Features:
----------------------------------


Using the properties below you will be able to configure the following:

1) Make the editor generate single paragraph spacing:
FBean.Set_Property('HTMLEDITOR_AREA',1,'singleParagraphSpacing','true');

2) Set only a restricted list of available fonts:
FBean.set_property('HTMLEDITOR_AREA',1,'restrictedFontList','Arial,Verdana');

3) Set the default font to be used when typing text into the editor:
FBean.set_property('HTMLEDITOR_AREA',1,'defaultInitialFont','Arial');

4) Set the default font size to be used when typing text into the editor
FBean.set_property('HTMLEDITOR_AREA',1,'defaultInitialFontSize','10');


Here is the whole code when the form loads

WHEN-NEW-FORM-INSTANCE

Declare
vString1 varchar2(32000);
Begin
FBean.Set_Property('HTMLEDITOR_AREA',1,'singleParagraphSpacing','true');
FBean.set_property('HTMLEDITOR_AREA',1,'flowToolbarLayout','true');
FBean.set_property('HTMLEDITOR_AREA',1,'restrictedFontList','Arial,Verdana');
FBean.set_property('HTMLEDITOR_AREA',1,'defaultInitialFont','Arial');
FBean.set_property('HTMLEDITOR_AREA',1,'defaultInitialFontSize','10');
End;

ENABLE/DISABLE THE EDITOR
------------------------------------

Now you can easily enable/disable the editor through the following property:

DISABLE_EDITOR

Declare
Begin
FBean.set_property('HTMLEDITOR_AREA',1,'enabled','false');
End;

=============================================================================

ENABLE_EDITOR

Declare
Begin
FBean.set_property('HTMLEDITOR_AREA',1,'enabled','true');
End;


CONTROL WHETHER THE DOCUMENT IS EDITED OR NOT
-----------------------------------------------------------------------------------------


The code below illustrates how to use the document edited property:

1) Start the demo form
2) Click on "document edited" button on the form- it will print inside the text area -> documentEdited=false;
3) Now type some text inside the editor
4) Click again on the "document edited" button on the form - it will print inside the text area -> documentEdited=true;

Here is the code:

DOCUMENT_EDITED

Declare
vEdited boolean;
Begin
vEdited := FBean.Get_Bool_Property('HTMLEDITOR_AREA',1,'documentEdited');
if vEdited then
:block3.TEXT_AREA := 'documentEdited=true';
else
:block3.TEXT_AREA := 'documentEdited=false';    
end if;
End;

23) new features: - now is included also a toolbar shortcut for strikethrough
24) Faster editing for large plain text files.
25) Resolved some regression issues causing slower layout in the applet edition.
26) Improved external style sheet loading and external resource resolving.
27) Now after drag and drop of external documents the relative files are resolved correctly against the point of origin
28) Now after drag and drop of external documents the external style sheets are loaded properly and added to the head of the document.
29) PDFExport now generates files faster with better resource compression in order to generate smaller files.
30) New methods in the HTMEditorOracleBean in order to provide a way for using the new functionalities for font and inline style generation
31) Now is possible to specify a multiple font family names for the font name combo using the | spearator in order to proved custom font span generation.
32) Better paste support for OracleForms, resolved some regression issues.
33) Now by default margins are generated in pixel units in order to provide better specification compliance.
34) New units like centimeters and inches are supported for resolving styles.
35) Now is possible to specify the cell border width directly
in the cell properties dialog.
36) Now is possible to specify the paragraph border width directly in the paragraph properties dialog.
37) Improved and more efficient rendering of backgrounds resulting in faster performance.
38) Specific tuning for  better loading performance both for OracleForms and Applet Edition.
39) New getSelectedHTMLContent method - returns the current selection as html formatted string.
40) Improvements over the read-only sections, resolved some regression issues.
41) Resolved some issues regarding the justified paragraph alignment and aligned images
42) PDFExport - improved border and float elements layout generation
43) PDFExport - improved page sizing, resolved some issue concerning the page formatting and default layouts.
44) HTMLEditor - resolved some regression issues concerning the resizing and layout rebuilding of the editor
45) HTMLEditor - introduced different synchronization levels for all more more frequently used methods so now the developers can choose to provide or not custom synchronization of the integration code.
 

What's new in version 8.0

New features and fixes summary - changelog from 7.5 to 8.0

 

1) Greatly improved rendering performance in all versions and JRE's
2) Great improvements on editing performance and document loading time
3) Added support for editing Large text files.
4) Reduced memory consumption, several fixes on various memory leaks.
5) Fast Oracle Forms and JInitiator loading time, greatly improved initial loading and performance
-now the editor loads instantly when the form is executed
6) Improved CSS rendering in all versions and JRE's
7) Greatly improved rendering and editing performance within Oracle Forms
8) Many new methods and better integration with OracleForms and JInitiator
9) Applet Edition - improved loading and startup time in all versions.
10) Applet Edition - new Flow Toolbar layout allowing dynamic resizing of the toolbars
11) PDFExport - greatly improved document generation - better rendering of the PDF documents.
12) PDFExport - new file compression algorithm for generating smaller files.
13) PDFExport - improved OracleForms integration and especially for JInitiator.
14) PDFExport - Chinese character set support - full Chinese document generation support-
see setPDFExportOutputEncoding for major details.
15) New methods for HTML Forms editing and generation -
possibility to disable automatic form insertion when inserting form elements.
16) Several fixes on form elements for better editing and generation
17) XML Mode - improved XML support, now all types of tags are rendered better,
improved editing experience of documents containing custom XML tags.
18) Improved overall CSS rendering and support both in Component and Applet editions.
19) Improved overall CSS rendering and support in XML mode
20) Improved overall CSS rendering and support for Oracle Forms with JInitiator.
21) Possibility to define your own
property dialogs replacing the existing ones with customized versions.
22) Greatly improved spellchecking accuracy.
23) Possibility to specify dictionary encodings
and also to specify additional dictionaries to be appended to the existing one also for the Applet edition.
24) New parametes for generation of the
multipart uploads in order to specify custom HTTP variable names or one single name for all files if necessary.
25) MathML Equation Editor -
improved loading time and rendering for MacOS
25) MathML Equation Editor -
better integration for both Component and Applet Editions.
26) MathML Equation Editor -
new Sakai support specific integration features
27) Drupal integration module -
Sferyx wysiwyg API module for Drupal CMS
28) Lotus Notes integration manual -
new manula for integrating the HTMLEditor both in the Lotus browser and Thick Client
29) New Drag&Drop functionalities -
now can be set Preferred Drag&Drop functionality for the content
30) New support for drag&Drop multiple external
files such as images, html documents, text documents directly inside the editor
31) All the dropped files can be
uploaded through the multipart upload or WebDAV features
32) Improved generation of unique file names during the uploads
33) Possibility to specify custom file names for SAKAI integration users
34) Drop-in replacement for SAKAI
for the entire SAKAI system in every single module and form
35) New Connector -
SferyxUploadConnector for multiple file uploads inside the SAKAI resources
36) New Sakai Integration manual for Sakai Integrators
37) Sakai compatibility mode
for workaround some tag restrictions inside the Sakai content modules.
38) Better paste operations support
39) Several fixes and Hebrew, Arabic and in general all RTL languages support during editing of formatted documents.
40) New dictionaries available for Russian, Latvian, Lithuanian, Estonian, Polish, Bulgarian, Spanish improved French, German dictionaries
41) Applet Edition -
new feature for setting character limit on the generated document for mainframe uses.
42) New toolbar icons for easier
interaction with some functionalities such as search and replace.
43) Absolute positioning of document elements as specified in CSS
45) XML Mode -
now all is possible to specify easier the rendering types of the elements like INLINE_TAG or
BLOCK_TAG using setTreatAllBlockTagsAsBlocks
and after that specify only the exceptions to this rule.
46) New methods for HTMLEditorOracleBean for grabbing the focus to the component, new methods for resting the
available fonts, headings, font sizes etc.
47) New localization features for OracleForms for loading translation files, dictionaries etc.

As for the limited headings  use the following new methods:

Declare
hArgs FBEAN.ARGLIST;
Begin
hArgs:=FBEAN.CREATE_ARGLIST;
FBEAN.ADD_ARG(hArgs,'Normal,Heading 1,Heading 2');
FBean.Invoke('HTMLEDITOR_AREA',1,'setRestrictedHeadingList',hArgs);


-------------------------
As for the limited fonts use the following new methods:

Declare
hArgs FBEAN.ARGLIST;
Begin
hArgs:=FBEAN.CREATE_ARGLIST;
FBEAN.ADD_ARG(hArgs,'arial,sans-serif,verdana,sans-serif');
FBean.Invoke('HTMLEDITOR_AREA',1,'setRestrictedFontList',hArgs);


-------------------------
As for the limited font sizes use the following new methods:

Declare
hArgs FBEAN.ARGLIST;
Begin
hArgs:=FBEAN.CREATE_ARGLIST;
FBEAN.ADD_ARG(hArgs,'8,10,11');
FBean.Invoke('HTMLEDITOR_AREA',1,'setRestrictedFontSizesList',hArgs);

--------------------------
Request the focus:

Declare
hArgsEmpty FBEAN.ARGLIST;
Begin
hArgsEmpty:=FBEAN.CREATE_ARGLIST;
FBean.Invoke('HTMLEDITOR_AREA',1,'requestFocus', hArgsEmpty);

--------------------------
Restricted fonts & setWrapNewLineIntoBR - for single line spacing - this is inside  the WHEN-NEW-ITEM-INSTANCE on the bean area

Declare
vString BOOLEAN;
hArgs FBEAN.ARGLIST;
hArgs2 FBEAN.ARGLIST;
Begin
hArgs:=FBEAN.CREATE_ARGLIST;
hArgs2:=FBEAN.CREATE_ARGLIST;
FBEAN.ADD_ARG(hArgs,'arial,sans-serif,verdana,sans-serif,tahoma,times new roman');
FBEAN.ADD_ARG(hArgs2,true);

FBean.Invoke('HTMLEDITOR_AREA',1,'setRestrictedFontList', hArgs);
FBean.Invoke('HTMLEDITOR_AREA',1,'setWrapNewLineIntoBR',hArgs2);
End;


--------------------------
Loading a translation file

hArgs3 FBEAN.ARGLIST;
FBEAN.ADD_ARG(hArgs3,'http://your_host/your-translation.txt');
FBean.Invoke('HTMLEDITOR_AREA',1,'loadInterfaceLanguageFile',hArgs3);

 

New Oracle Forms methods

public void setRestrictedHeadingList(String headingList) - his method allows only certain fonts to be shown in the font list combo. The string must contain comma delimited list of the font names to be used like "Normal,Heading 1,Heading 2"

public void setRestrictedFontList(String fontList) - his method allows only certain fonts to be shown in the font list combo. The string must contain comma delimited list of the font names to be used like "arial,sans-serif,tahoma"

public void setRestrictedFontSizesList(String fontList) - his method allows only certain font sizes to be shown in the font size list combo. The string must contain comma delimited list of the font names to be used like "8,10,11"

public void setDefaultInitialFont(String initialFont) - sets the default font to be used

public void setDefaultInitialFontSize(String fontSize) - sets the default font size to be used

public void setWrapNewLineIntoBR(boolean wrap)
- causes <br> to be generated instead of <p> - and to emulate Microsoft Word like paragraph spacing.

public void setSingleParagraphSpacing(boolean wrap) - causes <p> to be generated with default single paragraph spacing- and to emulate Microsoft Word like paragraph spacing.

public String getContentAccessibleForScreenReaders() - converts some tags to be used properly by screen readers when needed.

public String getBodyContentAccessibleForScreenReaders() - converts some tags to be used properly by screen readers when needed.

public void resetDocumentEdited() -resets the point from which isDocumentEdited() to report changes, Useful to be reset after setting the content etc.

public void setPDFExportOutputEncoding(String encoding)  -sets the encoding for the PDF output when the PDFExport Add-on is installed - useful for Chinese etc.

public void setFlowToolbarLayout() - Sets the flow toolbar layout - all the toolbar items will be ordered one after another in a flowing manner in order to wrap around the available space.

public void loadInterfaceLanguageFile(String fileURL) -
Loads external language file for localization of the UI.


48) Fixed some spellchecker issues for MacOS for selecting of the matched words.
49) Fixed Linux pasting issue
50) Improved CSS layout algorithm for faster performance.
51) Faster preview rendering and loading
52) Resolved various issues
with the preview section for updating dynamically the content both when the preview is selected and when is set preview mode only.
53) New oracle forms integration
examples and updated users manual.
54) Drag & drop improvements for Linux from external applications
55) Various MacOS UI rendering fixes for older java releases.
56) New field for setting onmouseclick attribute for button form field
57) PDFExport - improved document generation for western character sets, various fixers for MacOS X and Linux
document rendering
58) PDFExport - reduced the number of font entities inside the generated documents for faster rendering within
the PDF viewers.
59) Drag&Drop now allows dropping of mixed content including images, html and text files together as html and
text files will be inserted at the caret position along with the images.
60) XML Mode - improved block tag handling for all jre versions - better editing experience during paste
operations, possibility to insert custom tags dynamically

 

What's new in version 7.5

New features and fixes summary - changelog from 7.0 to 7.5

 

1) Improved generation of &nbsp; - now it is done automatically depending on the Space usage
2) Nested Lists
- fixes of some regression issues.
3) Oracle Forms -
improved integration with the default JInitiator and with jre 1.3 overall
4) Oracle Forms - new methods added to the sferyx.administration.editors.HTMLEditorOracleBean class as follows:

public void setEnableCustomEventDispatching(boolean customEventsDispatchingEnabled) - this method allows to enable/disable dispatching of the events from the editor to the underlying form
public boolean isEnableCustomEventDispatching() 
- this method returns whether is enabled/disabled dispatching of the events from the editor to the underlying form

public void dispatchOracleFormsEvent(String name, Object event) - this method allows to dispatch events from the editor to the underlying form which will captured into the WHEN-CUSTOM-ITEM-EVENT trigger of the form.

public void setContent(String htmlContent)
- sets the content of the editor

public void insertContent(String htmlContent)
- inserts new content into the editor at the caret position

public void insertPlainText(String htmlContent)
- inserts new plain text into the editor at the caret position

public void setRemovedToolbarItems(String itemList)
-allows customization of the toolbars

public void setRemovedMenuItems(String itemList)
-allows customization of the menu items

public void setRemovedMenus(String itemList)
- allows customization of the menus

public void setStatusBarVisible(boolean visible)
-sets the state of the status bar.

public void setPopupMenuVisible(boolean visible) -sets the state of the popup menu.
 
public String getContent()
-gets the content of the editor.

public String getPlainText()
-gets the content of the editor as plain text.

public void setToolBarVisible(boolean visible)
-sets the state of the toolbar bar.

public String getBodyContent() 
-gets the body contentof the editor - no html and head tags will be generated

public void insertImage(String imageURL)
- inserts image at the caret position

public void insertLink(String linkURL) 
- inserts link over the selected text

public void setDefaultCharset(String encoding)
 
public void openLocation(String location)
- opens the given location inside the editor

public void setExternalDictionary(String externalDictionary)
- loads external dictionary

public void setPreviewModeOnly(boolean previewModeOnly)
- sets the preview mode only

public void openContentBuffer()
- opens a content buffer for loading large content

public void appendContentToContentBuffer(String content)
- appends new content to a content buffer for loading large content

public void closeBufferAndInsert()
- closes the buffer and inserts the content into the editor

public int getBodyContentLenght()
- returns a length limit set previously for the editor

public int getContentLenght()
- returns a length of the content.

public String getBodyContentPortion(int offset, int length)
- returns a portion of the body content.

public String getContentPortion(int offset, int length)
- returns a portion of the content.

public void setSourceEditorVisible(boolean visible)
-sets the state of the source editor.

public void setPreviewVisible(boolean visible) 
-sets the state of the preview.

public void setAsYouTypeSpellcheckingEnabled(boolean enabled)
- sets the state of spellchecker

public boolean isDocumentEdited()
- returns whether the document has been edited or not.

public void setPreferredPasteOperation(int preferredPasteOperation)
- sets the preferred paste operation

public int getPreferredPasteOperation()
- gets the preferred paste operation

public void loadExternalStyleSheet(String externalStyleSheetLocation)
-loads external CSS file

public String getBodyUnicodeContent()
 - returns the unicode content

public void setSourceCodeModeOnly(boolean sourceCodeModeOnly)
 - sets the source mode only

public void setShowBodyContentOnlyInSource(java.lang.String _showBodyContentOnlyInSource) -
This method will cause the editor to show only the body content when switching to the HTML source editor.

public String getExternalStyleSheetLocation() -
Returns the URL as string of the external style sheet loaded and used to apply style classes to the document elements

public void loadExternalStyleSheet(javax.swing.text.html.StyleSheet styleSheet, java.lang.String styleSheetURL) -
Loads external style sheet specified by the given URL and adds its content to the existing style classes.

public void setExternalStyleSheetLocation(java.lang.String externalStyleSheetLocation) -
Sets the external style sheet to be loaded and used for rendering and editing of the document.

public void loadStyleSheetRules(java.lang.String styleSheet) -
Allows to load some style rules dynamically like for example body{background-color:red} etc.

public void setDefaultInitialFont(String initialFont)
- sets the default font family to be used by the editor.

public void setDefaultInitialFontSize(String fontSize)
- sets the default font size to be used by the editor.

public String getContentAccessibleForScreenReaders()
- gets accessible content intended for screen readers - this will generate tags which are understood by the screen readers.

public String getBodyContentAccessibleForScreenReaders()
- gets accessible cbody ontent intended for screen readers - this will generate tags which are understood by the screen readers.

public HTMLEditor getHTMLEditorInstance() - you can use this method to get a direct reference to the HTMLEditor instance and use all the available API as you whish. This allows full customization and access to all the available features of the HTMLEditor class.

5) Oracle Forms - new custom events reported to the underlying form:

This will enable the generation of the events from the editor to the form:

Declare
hArgs FBEAN.ARGLIST;
Begin
hArgs:=FBEAN.CREATE_ARGLIST;
FBEAN.ADD_ARG(hArgs,true);
FBean.Invoke('HTMLEDITOR_AREA',1,'setEnableCustomEventDispatching',hArgs);
End;

This code will capture the events using the WHEN-CUSTOM-ITEM-EVENT trigger of the form:

Declare
EventName VarChar2(32000);
Begin
EventName := :SYSTEM.Custom_Item_Event;

-- the event name contains all the event data starting with the event type like
-- keyPressed==>all the event data - for this make sure the variable used is long enough
-- you can later parse the data and use it accordingly:
-- here we put all in a text area to display it easily:

:block3.TEXT_AREA :=:block3.TEXT_AREA|| 'Event name: ' || EventName;
End;

Current event names start with the following names:

mouseReleased
mousePressed
mouseExited
mouseEntered
mouseClicked
mouseMoved
mouseDragged
focusGained
focusLost
insertUpdate
changedUpdate
keyTyped
keyPressed
keyReleased

6) Improved Oracle Forms pasting operations with JRE 1.3 now the pasted content is handled properly
7) Improved overall
dialog layout for the new universal resolution Nimbus Look & Feel under JRE 1.6_10 and higher
8) Fixes for proper
handling of Turkish locale settings
9) Symbol fonts
now handled properly when typing
10) Applet Edition
- fixes for proper handling of URLEncoded Unicode content
11) Applet Edition
- better synchronization of set methods and remote save methods
12) Applet Edition - now insert image dialog displays all available options
13) Various fixes on
setting different document properties.
14) Improved Equation Editor integration with all versions
15) Improved and enhanced PDFExport f
unctionalities for all versions
16) Applet Edition -
with support for the PDFExport
17) Now public String getEditorVersion()
returns current editor version
18) Applet Edition -
improved general performance
19) getPlainText()
returns correctly the text from the preview mode only when set.
20) Now can be specified the mode for the setDocumentLengthLimit() -
whether to concern the html tags or only the plain text
21) Resolved some status bar regression issues
22) Resolved some equation toolbar button issues when enabled/disabled
23) setSingleParagraphSpacing()
now is more efficient and performs better for inserting MS Word style paragraphs.
24) Various XML more fixes for better constructing the XML grammars.
25) Applet Editon
- new parameter: restrictedHeadingsList - for providing limited heading styles
26) Applet Editon - new parameter: enablePDFExport
- for enabling PDFExport plugin when installed
27) Applet Editon - new parameter: singleParagraphSpacing
- for generating Word style paragraphs

 

What's new in version 7.0

New features and fixes summary - changelog from 6.5 to 7.0

 

1) Document handling - fixed issues with span elements, now it adds the font properties properly.
2) Parser -
fixed issues with span rendering with 1.4.2 for backward compatibility
3) Added support for OpenOffice styles format rendering
4) Added support for OpenOffice style format when pasting documents
5) Updated the document generation (writer)
in order to convert font properties correctly for java 1,3 and OracleForms.
6) Fixed various issues with the inline document equation editing features -
now the edited equations are generated and updated as mathml properly.
7) Handling of block and section elements
updated in order to provide more efficient layouts upon loading
8) Uploading files -
fixes for generateUniqueFileNames in order to not append unique name identifier on the end of the filename.
9) Added the possibility to
generate the mulpiart-form data to a stream in order to create easier and more customizable content for e-mail like clients.
10) uploadMultipartContent() -
added Swing thread fix
11) fixes when inserting
non breakable white spaces and paragraphs.
12) fixed selectAll() 
in order to provide consistent selection.
13) BODY and HTML tags
updated in order to paint fully page backgrounds
14) fixed issues with resetting nested list entries
15) Removing of nested table cells and list items fixed
in order to provide undo operations properly
16) Updated internal document handling-
inserted check for the body start offset when locating caret, selection etc.
17) fixed mangeTabKeyInternally -
included fix for preserving the font selection when tab pressed
18) Updated CustomEmptyXMLTagView
in order to render properly empty xml tags.
19) Updated the document parser,
included $ as valid identifier.
20) Added addFormComponentsKeyListener
to Component Edition for tracing form elements events by user code.
21) Improved general rendering,
greatly improved overall performance on editing /resizing tables and images for remotely loaded documents
22) Resolved issues regarding copy/paste
of special symbols from MS Office
23) Improved Japanese/ Chinese
language support for layout and rendering
24) Added the possibility of
appending external dictionary to the existing built-in one
25) Improved unordered/ordered lists handling
26) Improved table performance and rendering -
added betted css support
27) Generally improved OracleForms integration -
improved stability and component loading performance.
28) Added many new methods for better OracleForms integration.
29) Generally improved java 1.3 support for legacy applications
30) Improved / added many fixed for custom tags and custom objects support
31) Image maps functionality added -
now is possible to visually add/modify image maps directly inside the visual
editor.
32) Added support for different dictionary encodings -
this now can be specified through public void
setExternalDictionaryEncoding(String externalDictionaryEncoding) -
now this way is possible to load international
dictionaries for wide range of encodings.
33) PDFExport integration support -
allows the entire content of the editor to be exported easily as PDF document.
34) Improved PDF generation -
now large documents are generated much faster.
35) Improved Equation/MathML editor integration
36) Greatly improved performance
of inline editing of equations directly inside the documents.
37) Better support for the various
paragraph and block elements on edit/delete actions.
38) Improved copy/paste from external applications.
39) Improved copy/paste from
MSOffice for java 1.3 legacy applications/ OracleForms
40) Improved printing support -
better pagination and rendering.
41) Added support for printing
of custom tags/objects and for components
42) PDFExport -
added support for exporting of custom tags/objects and for components
43) PDFExport -
added support for exporting of inline mathml equations
43) Printing support -
added support for printing of inline mathml equations
44) Added support for rendering of BMP images
45) Now will be rendered
also images with file paths like c:\ etc. which do not construct correct URLs
46) Improved support for Japanese
text input through the Microsoft IME
47) various fixes for the multipart file uploads
48) various fixes for the
webdav support and generation of unique files names
49) New Avantgarde DocumentPack
available for enhanced document editing and easier drag& drop operations.
50) Fixes for the spell checker for
improved performance and loading times. The the as-you-type spellchecker will refresh correctly after loading new documents through openLocation
51) Improved spelling algorithm
for providing more accurate suggestions

 

 

 


 

 

     

 

 

52) Better internationalization support, added some missing strings for UI language translation
53) fixed printing from EquationEditor
54) fixed some select/insert
over selection operation in the EquationEditor
55) Improved image generation from the EquaitonEditor -
now is possible to generate offscreen images even for server-side applications
56) Provided methods for direct
conversion of MathML to images PNG without the need of displaying of the EquationEditor
57) Fixed list rendering in some
situations when containing headings etc.
58) Added support for css
loading options like media print/screen etc.
59) Improved parsing of XML documents.
60) Fixed various issues with undo/redo
operations and improved undo/redo mechanism for java 1.3 and OracleForms.
61) Improved layout for floating
objects and better support for css layout and positioning
62) Various fixes over fonts
properties handling and text input operations.
63) Resolved issues with xhtml
document generation and the inclusion of unwanted synthesized attributes.
64) Defined new editor plug-in
mechanism for adding external modules and add-ons for further enhancements
65) Added user accessible features
for zoom in/zoom out of the text for edit/preview without changing the document formatting - this is very useful for users with visual impairments.
66) Available the new bundles with HTMLEditor Component+EquationEditor and HTMLEditor Component +EquationEditor+PDFExport
67) Improved editing of MS Word generated documents -
better support for modifying fonts etc.
68) Fixes for better handling of saveEntireDocumentTree
for saving relatively of the entire document structure
69) Document map feature
combined with instant drag&drop available through the Avantgarde DocumentPack
70) Resolved issues with
table resizing and rendering with java 1.3 and OracleForms Jinitiator.
71) Greatly improved loading
time and faster responsiveness of the component with java 1.3 and OracleForms JInitiator
72) Updated manual for
integration with Oracleforms added new examples and tips.
73) HTMLEditorOracleBean
enhanced in order to provide more methods from HTMLEditor in order to be accessed directly from OracleForms
74) PDFExport scales better
images and text with updated algorithm for image compression for to achieve better smoothing and better rendering results
75) PDFExport smart table
handling in order to cut tables and rows accordingly to the page breaks.
76) Reduced memory footprint for HTMLEditor -
created and reused shared resources.
77) Reduced memory footprint for EquationEditor -
created shared resources for multiple instances environment.
78) Reduced network loading times for EquationEditor
by removing unexisting resource references
79) Reduced memory footprint for HTMLEditor
while exporting to PDF by the PDFExport - removed unnecessary document updates during export.
80) Improved support for forms
components and form buttons which are not submit.
81) Improved navigation in the
preview pane with better rendering and faster document loading.
82) Improved loading of translation
files and dictionaries from classpath and as relative resources

 

 

What's new in version 6.5

New features and fixes summary - changelog from 6.0 to 6.5

 

1) Text Folding functionalities implemented
2) insertContent() - fixed various issues regarding content handling
3) Table border - topInset - fixed for correct rendering
4) Image resize - fixed some resizing issues
5) Justification alignment
6) Improved pasting of complex formatting with nested layers
7) Fix custom image view in order to display properly images with one attribute only.
8) Fix for some duplicate <font> <span> generations 
9) Caret handling issues resolved
10) Fixed issues for alignment of right/left floating views
11) Fix for generation of attirbutes in end tags/script tags 
12) Spellchecker performance improved
13) Pragraph perfomance improved
14) HTMLEditor - performInstantSpell corrections 
15) PasteFormattedText from clipboard fix for loosing formatting of the first paragraph
16) Fix pastePlainText from clipboard in order to properly handle line breaks.
17) Fixed in Paragraph views -  removed to improve performance
18) adjustPopupElementsForEvent -try{}catch
19) FormComponentsListener -try{}catch
20) PreviewEditorKit - PreviewHTMLFactory - CustomFormInputView - submitData fix throwing exception
21) Spellyx - customwords dictionary improved, fix for adding normalized words.
22) Parsing issue fix for indocument styles formatting
23) Style Sheet handling - fix for loading external  style sheets
24) SferyxUtilities - replaceAllBlockComments method
25) Style Sheet handling  - fix for rendering - in order to reflect properly nested formatting between fonts, spans etc.
26) added form component listeners in the Applet Edition 
27) Various fixes to proper rendering of aligned images 
28) RubyTag support implemented resolve loss of style attribute in font
29) Fixes to document generation to resolve loss of text_align attribute i
30) HyperlinkPropertiesDialog  - fix for loosing inline style attribute when editing hyperlinks
31) Updated GenericTagAdapter and CustomTagAdapter in order to update the chnages in the mappings.
32) Updated CustomEditorKit to reflect the changes.
33) Updated Form views
34) Updated icons
35) Equation editor - added new functionalities for easier component management enabling/disabling
36) Corrected the refreshing of the document structure in order to improve performance
37) CustomEditorKit - commented removeAttributes in order to preserve the inputAttributes when moving the cursor.
38) Updated EquationEditor - slow performance as applet when loading null images
39) default style sheet attributes  fixed p attributes for better rendering closer to the popular browser's one.
40) Various fixes on insertBreak and CustomEditorKit
41) getPlainText fied in order to return properly line breaks where <br> is found into the html
42) Fixed resetCurrentListFollowingOrderedCommand, insertOrderedList insertUnorderedList
43) fixes to printingsystem and customstylesheet getFont to include better printing support
44) Added setEditable and isEditable in CustomEditorPane to fix issue with readonly=true
45) updated updateEditedDocument() for faster and more efficient performance
46) MacOS - fixes over drag & drop now is possible to drag& drop items - initContainers & isDragPossible
47) fixed stylesheet to display blockquotes properly - converted from margin-left/right to padding-left/right
48) Improved EquationEditor integration within the HTMLEditor
49) Improved performance in painting background images
50) Improvements over content deletion/addition for faster edits.
51) added new utility methids methods for handling lists
52) Fixed lsits for correct rendering
53) Included EquationEditor inline/indocument editing functionalities.
54) Fixed various list issues, replace all list methods.
55) Fixes for to request focus on the html pane when creating new documens
56) Various fixes over lists, completely reworked reseting of lists
57) Fixes over table manipulation functions
58) Fixes in order to be handled properly float:left and display:inline
59) New rows and columns now respect previous cells formatting
66) Table cell properties dialog and Table properties dialog - introduced numeric limitations of the text input to numbers only
67) Now inserting table allows basic table properties to be specified directly
70) Updated document generation in order to handle properly nested fonts.
71) Fixed pasting problem - now pasting symbols is handled correctly
72) Image handling updated in order to improve performance when refreshing the document, resiolved some caching issues.

 

What's new in version 6.0

New features and fixes summary - changelog from 5.5 to 6.0

 

1) Added support for floating elements according to the CSS specification

2) Improved CSS support for borders for all elements

3) Improved CSS support for margins, padding etc.

4) Improved fonts matching through CSS declarations.

5) Included antialiasing support for rendering in order to mimic last generation browser behaviour

6) Improved overall layout and rendering

7) Resolved several performance issues related to rendering of long pages

8) Improved memory management, reduced memory usage

9) Memory leaks issues resolved

10) Improved MS Office applications paste and integration support

11) Improved pasting from Outlook/Outlook express

12) Improved Oracle Forms support

13) Improved lists support

14) SWT integration support - full integration with Eclipse

15) Added support for image uploads and remote saving capabilities through ASP /ASP.NET

16) Added support for image uploads and remote saving capabilities through Cold Fusion

17) Added support for image uploads and remote saving capabilities through Perl scripts

18) Improved layout of elements with fixed widths and heights through css declarations

19) Improved XHTML compatibility and document generation

20) Improved XML compatibility and document generation

21) Now class names and tag id are generated correctly according to W3C specs.

22) Added support for arbitrary font size from the toolbar font size combo

23) Now the style combo on all dialogs and the toolbar renders the style preview

24) Hidden elements support added in the Preview section

25) Improved browsing capabilities in the Preview section

26) improved nested font tags handling

27) fixed some issues over dragging images

28) Improved aligned images rendering

29) UI refresh with adding some new icons to popup menus

30) Fixed some issues with line breaks/paragraphs and jre 1.3

31) Pasting plain text improved, automatic conversion of escape characters.

32) Subscript/superscript functionalities added as toolbar shortcuts

33) Improved document loading/ scripts and comments section handled better.

34) Added support for inline elements - lists specified as inline will be rendered as expected

35) Added support for display as block for hyperlinks.

36) Nested inline tags now will be generated back in the correct order.

37) resolved some issues with inline style generation

38) Included partial support for revealing tags while editing the document visually

39) Included support for revealing floating block tags according to their float orientation

40) TextArea and Select elements will not be reproduced anymore erroneously

41) Several fixes for the Browsable interface and the related ui components

42) Outdenting issue fixed -provideOutdentFeedback

43) Fixed pre issue - insertParagraph() , XHTMLWriter

44) Fixed issue with <pre> tags when there are nested <b> etc. tags

45) Resolved <pre> formatting issue with jre 1.4 XHTMLWriter

46) Pasting <pre> fixed pasteFormattedTextFromClipboard(). Needs to be updated in the Component version.

47) Fixed insertImage for inserting images in the <head>

48) Fixed pasting between list elements

49) Fixed image upload for local relative image paths (not only absolute)

50) Fixed save entire document tree to save also relative images paths (not only absolute)

51) Resolved several issues with the remote browsing and selecting absolute images and absoluteDocumentTranslationURL

52) Included better support for backgrounds.

53) Improved overall performance and stability.

54) Resolved some issues with table border colour and paragraph border colour property dialogs.

55) Resolved some issues with hyperlinks generation through the hyperlink property dialog

56) Resolved issue with the generation of style attributes inside end tags.

57) Form button elements now support html texts and labels

58) Form image button elements now will be displayed as expected as images

59) Resolved some issue with insertContent() and java 1.3

60) Inserting new row in a table will be done below the current row and not appended to the end of the table anymore.

61) Fixed some regression issues when inserting form elements.

 

 

 

 

 

What's new in version 5.5

New features and fixes summary - changelog from 5.0 to 5.5

 

1) setContent(String content) works automatically on visual and source editor modes

2) insertContent(String content)
works automatically on visual and source editor modes

3) getContent()
works automatically on visual and source editor modes

4) saveFile() and saveToLocation()
character encoding fixes.

5) loadInterfaceLanguageFile()
will seek first for an url and subsequently
in the class path for the file. This now allows not only URLs to be
specified as parameters but also resources.

6) loadStyleDescriptionsFile()
will seek first for an url and subsequently
in the class path for the file. This now allows not only URLs to be
specified as parameters but also resources.

7) Several fixes over XML rendering of the components.
Updated examples
section
- setXMLMode(boolean mode) - improved automatic XML grammar builder
- easier management of custom listeners on CustomXML components

8) Now is possible to type
also after tables near the body end.

9) Several fixes over image rendering and loading.
Now images with only one
parameter (width|height) specified will be rendered properly

10) Improvements over list management. Sublists supported -
indent outdent
of lists. Improved usability support - TAB key will create sublists
depending on the selection and Shift+TAB will outdent the lists on the
selection.

11) Improved usability on tables -
tab key will move to the next cell on tab
or create new row if last.

12) Internationalization support
- improvements on bidi  languages, support
for western characters and numbers and Hebrew ion the same document.

13) improved rendering of tables,
enhanced background and borders rendering
of nested tables.

14) Applet Edition -
improved remote file dialog.

15) New examples for php scripts
for directory browsing for the remote file
dialog.

16) Several fixes over
charsets handling on open/save operations

17) Applet Edition -
fixes on loaded and embedded style definitions

18) Much improved the automatic  XML mode - faster custom tags detection and
identification

19) Copy & paste oprations on custom XML
tags now works as expected in
automatic XML mode, previously it was working only in manual mode through
registerTag...

20) Fixes the issue with <b> + inline styles

21) Improved XML generation -
now the editor will respect the case of  the
custom tags - previously everything was converted in lower case which was
causing problems with some strict parsers.

22) support for <? xml ?> tags inside the document -
now all these tags will
be preserved and treated as expected.

23) Improved behavior for backspace in lists and paragraphs.
Now the text
flow will be continuous when passing from list to paragraph and vice versa.

24) Enterprise Component & Applet Edition - now spellchecking dictionaries will be searched in the following sequence - URL, classpath automatically. This way you can easily add a fully qualified URL or if you prefer simply a resource located in the classpath, for the applet this could be also the document base.

25) Enterprise Component & Applet Edition - improved spellchecking match capabilities

26) Component & Applet Edition - now interface translation resources will be searched in the following sequence - URL, classpath automatically. This way you can easily add a fully qualified URL or if you prefer simply a resource located in the classpath, for the applet this could be also the document base.

27) Improved printing - resolved some issues on printing tables, lists

28) Component Edition - easy addition of custom browsing component through the new browsable interface.

 

 

 

What's new in version 5.0

New features and fixes summary - changelog from 4.5 to 5.0

 

1. Entirely new package sferyx.javascript.engine which emulates a generic
javascript access to all document elements.  (Component Edition Enterprise only)

This will work both on Visual editor and Preivew automatically reflecting the state of the editor.

Now you can easily access all document and form elements in a javascript like manner.

Example on accessing form elements:

JavaScriptEmulatorEngine jsEngine=new JavaScriptEmulatorEngine(hTMLEditor1);

DocumentElement[] elements=jsEngine.getDocument().forms[0].elements;


for(int i=0;i<elements.length;i++)
{
System.out.println("------Element Start---------");
System.out.print(elements[i]);
System.out.println("------Element End---------");
}

To access easily the attributes as Strings you can now use directly
element.getAttributes() or element.getAttribute(attributeName)


Example on referencing the document elements by ID

JavaScriptEmulatorEngine jsEngine=new JavaScriptEmulatorEngine(hTMLEditor1);
DocumentElement element=jsEngine.getDocument().getElementById("3246");

System.out.println("------Element Start---------");
System.out.print(element);
System.out.println("------Element End---------");

 

Example on referencing the document elements by ID and adding Mouse listener to it.

JavaScriptEmulatorEngine jsEngine=new JavaScriptEmulatorEngine(hTMLEditor1);
DocumentElement element=jsEngine.getDocument().getElementById("3246");

JComponent component=SferyxUtilities.getJavaFormItemComponent(element,
hTMLEditor1);
System.out.println("Adding Mouse Listener to :"+component);
component.addMouseListener(this);

 

Example on referencing the document elements by Tag Name

JavaScriptEmulatorEngine jsEngine=new JavaScriptEmulatorEngine(hTMLEditor1);
DocumentElement[] elements=jsEngine.getDocument().getElementsByTagName("INPUT");

for(int i=0;i<elements.length;i++)
{
System.out.println("------Element Start---------");
System.out.print(elements[i]);
System.out.println("------Element End---------");
}

@See ReferencingDocumentElements.java example for major details.


2. New utilitiy methods added in the SferyxUtility package which eases accessing components through the document elements.

3. Fixes over the numbered/bulleted lists handling and deletion etc.

4. Now Source code pane
will also report document events through addDocumentListener

5. Improvements over the paragraph styles:
now styles are preserved over different paragraphs when typing.

6. New examples included in the examples folder.

7. htmlEditor.setBrowsingInPreviewEnabled(true);
(Component Edition Enterprise only) will enable browsing in the preview mode. Using this functionality the editor can be used also like a browser.

8. boolean isBrowsingInPreviewEnabled()
- returns the state of the browsing features (Component Edition Enterprise only)

9. htmlEditor.setVisualEditorFollowsPreview(true);
- will enable the visual editor to reflect changes in the preview. Otherwise the initial page will be preserved. (Component Edition Enterprise only)

10. boolean isVisualEditorFollowsPreview();
- returns the state of the visual editor and the browsing (Component Edition Enterprise only)

11. Preview mode only - new method: void setPreviewModeOnly(boolean mode);
- (Component Edition Enterprise only) sets the editor in preview mode only and defacto turns it in a browser component

12. htmlEditor.addFormElementsMouseListener(mouseListener);
- will forward mouse events fired on form elements to your mouse listener. This will work both in preview and edit modes.

13. void removeFormElementMouseListener();
- allows mouse listeners to be added to form components inside the HTML document. This way easily can be tracked the user input inside the form elements. Here is example of retrieving of the attributes:

@See the new example ButtonListenersExample.java in the examples folder.

AttributeSet attribs=htmlEditor.getAttributesForComponent((Component)mouseEvent.getSource(), htmlEditor.getSelectedEditorComponent());

This method allows to retrieve easily attributes such as name, id, style etc.

@See the new example ButtonListenersExample.java in the examples folder.

13. setForcedSpanGeneration(true); will force generation of span statements instead of font. In this case some extended style attributes may be added to the generated content.

14. boolean isForsedSpanGeneration();
will return the state of the span generation.

15. CSS no more throws exceptions under JRE 1.5

16. Paragraph Properties
now works as expected

17. Enabled preview hyperlinkListener mode - see the attached example for details

18. List deletion issue now fixed

19. Cursor does not disappea
r anymore after Shift+Enter with jre 1.5

20. New methods:

public void setSingleParagraphSpacing(boolean enabled);

public boolean isSingleParagraphSpacing();

This will cause single line spacing paragraph to be generated. Code will include 0 top margin style attribute. This is introduced to simulate the default MS Word behavior.

21. HTML Source document does not generate changedEvents during switching to the source tab. However events are reported correctly when the document is being edited.

22. Initial doc entity by default
now suppressed.

23. As-you-type spellchecker
added to the traditional one. (Component Edition Enterprise only)

24. Now the & in hyperlinks are generated properly
following the XHMTL specification.

25. Custom tags handling (Component Edition Enterprise only)
Now the editor will try to guess the various custom tags and provide the necessary visualization. You can customize easily the rendering of custom tags using style sheets.

This is quite simple now and is sufficient to do the following:

<style>

my_tag {background-color:red; }

</style>

<my_tag>
Some content here
</my_tag>


26. For custom empty tags you can specify (Component Edition Enterprise only) your own rendering components for each element, so you have the full control over this.

See the examples folder, custom tags folder - there are different examples:

CustomTagsExample.java which uses MyCustomEmptyTag.java for rendering , also the sample-menu.xhml shows how custom block tags can be rendered with style sheets.

27. Now also you can reveal all paragraphs within the document with reveal paragraphs button "¶"

28. Enhaced javascript engine, values of forms elements are dynamically updated and reflected in the "value" property.

29. New package sferyx.administration.xmlcomponents (Component Edition Enterprise only) Allows easy customization, access and handling of custom xml tags.

30. Default: all block tags will be rendered as inline tags (Component Edition Enterprise only)
- this will emulate span tags.

31. XML mode: all block tags will be rendered as blocks (Component Edition Enterprise only) - this will emulate rendering of xml documents inside a browser

This can be achieved by simply setting this method: CustomXMLTagsGrammarSpecification.setTreatAllBlockTagsAsBlocks(true); - this is a static method and will affect all running HTMLEditor instances.

32. Mixed Mode (Component Edition Enterprise only): in this mode you can indicate which tags should be rendered as block and which as inline tags.

33. Improved style sheet support - support for style ID

34. Improved internationaisation support, imporved support for different charsets and UTF.

35. Included support for all HTML/XHTML
character entities as follows:

36. HTMLEditorOracleBean wrapper class for easier integration within OracleForms

37. Newly introduced methods for adding and retrieving content by pieces for environments that do not allow large data chunks to be exchanged with the editor like Oracle Forms:

Insert operations

    public void openContentBuffer()

    public void appendContentToContentBuffer(String content)

    public void closeBufferAndInsert()

Retrieve operations

    public int getBodyContentLenght()  for bodyContent only

    public int getContentLenght() for entire content

    public String getBodyContentPortion(int offset, int length) for bodyContent only

    public String getContentPortion(int offset, int length) for entire content


Sample code:

Here we insert some content:
--------------------------------------
      htmlEditor.openContentBuffer();
      htmlEditor.appendContentToContentBuffer("This is ");
      htmlEditor.appendContentToContentBuffer("some sample content");
      htmlEditor.appendContentToContentBuffer(" long engouh to be tested...");


Close the buffer and insert it in the editor
--------------------------------------
     htmlEditor.closeBufferAndInsert();


 Retrieve the content in small pieces
---------------------------------------
     int length=htmlEditor.getBodyContentLenght();
     int portionLength=5;
     int i=0;
     while(i+portionLength<length)
     {
         System.out.println(htmlEditor.getBodyContentPortion(i,portionLength<length-i?portionLength:length-i));
         i=i+portionLength;
     }

38. New method public boolean isDocumentEdited() will tell you whether the document has been changed or not

39. New methods for setting up default paste operations:

public void setPreferredPasteOperation(int preferredPasteOperation)

public int getPreferredPasteOperation()

You can switch between the default oprations as follows:

PASTE_FORMATTED_TEXT=0; 
PASTE_PLAIN_TEXT=1; 
PASTE_FORMATTED_PARAGRAPHS_WITHOUT_STYLE=2; 
PASTE_FILTERED_FORMATTED_TEXT=3; 

That means you can do the following:

setPreferredPasteOperation(HTMLEditor.PASTE_PLAIN_TEXT);

or simply

setPreferredPasteOperation(1);

40. setEnabled(true|false) now works as expected - will disable/enable the whole editor at once. This can be used like java bean property in visual IDEs.

41. htmlEditor.setDocumentLenghtLimit(150, null);
will set the document lentght limit including the html tags will display the default message. 

or htmlEditor.setDocumentLenghtLimit(150, "You reached the limit");
will set the document lentght limit including the html tags and will display custom message.

42. WebDAV publishing support for the applet edition.
(Applet Edition only) See <PARAM NAME="publishContentUsingWebDAV" VALUE="true"> for details

43. Now using WebDAV you can publish both content and images (Applet Edition only)  In order to enable direct save to WebDav enabled server you will need to specify the following parameters:

document.writeln('<PARAM NAME="saveURL" VALUE="http://localhost/dav/test.htm">');
document.writeln('<PARAM NAME="useSaveAsSaveRemote" VALUE="true">');
document.writeln('<PARAM NAME="publishContentUsingWebDAV" VALUE="true">');
document.writeln('<PARAM NAME="uploadedObjectsTranslationPath" VALUE=http://localhost/dav/images">');

"saveURL" - this is where the content of the page is placed. The file name will be used as file name for saving in webDav. If you need this to be set dinamically you can use also the following javascript function:You can use this to set easily the save location for different files like this:

if(window.document.htmleditor!=null)
{
     window.document.htmleditor.start();
     window.document.htmleditor.startVisualEditor();
     window.document.htmleditor.setSaveLocation(https://yoursavelocationhere);
     window.document.htmleditor.openLocation(" https://somelocation ");
}

Use setSaveLocation *AFTER* the start() method in order to be sure it ovverrides evetually the parameter setting."uploadedObjectsTranslationPath" will be used for to translate the uploaded images in server side paths. Without it the images may not be translated properly. It will be like the directory where the images are placed. Make
sure you have granted the necessary writing privileges there.

44. Sferyx EquationEditor if installed will work also in external window mode for the Applet Edition.

45. The RemoteFileBrowser will not cache its content anymore.(Applet Edition only)  Now the page will be reloaded each time it is shown.

46. Sferyx EquationEditor will be working properly also (Applet Edition only)  in Mozilla/FireFox on Mac.

47. Resolved some integration isses with ColdFusion file uploads.

48. Resolved some issues related to caching uploaded images.

49. Added a new javascript function which is called setSaveLocation(String url_location) which allows the saveURL to be set dinamically through javascript (Applet Edition only).

You can use this to set easily the save location for different files like this:

if(window.document.htmleditor!=null) 

   window.document.htmleditor.start(); 
   window.document.htmleditor.startVisualEditor(); 
   window.document.htmleditor.setSaveLocation(https://yoursavelocationhere); 
   window.document.htmleditor.openLocation(" https://www.ridgefield.sdr.slb.com/Travel/Ridgefield/restaurants.html "); 

50. Added a new javascript functions  setUploadedObjectsTranslationPath(String urtl) and setExternalStyleSheetLocation(String urtl) which will allow dynamic control of the translation path and the loaded style sheets.

51. New method: public void loadStyleDescriptionsFile(final String fileURL)  This method allows sample style descriptions to be loaded for use in the dropdown combo box. That means the style description will be displayed to the user instead of the style class names which will result in more user friendly editing experience. See the users manual for the file format

52. New methods for handling document tree (Component Edition only)

public void setSaveEntireDocumentTree(boolean saveEntrireDocTree)

Returns whether the entire document tree should be saved upon saving. This means that all external objects can be moved to a specific subfolder relative to the document path
 
public boolean getSaveEntireDocumentTree()

This method is used to set the folder name where all linked objects should be moved upon save. This is used in conjuction with saveEntireDocumentTree(). This will cause all linked objects to be moved in a relative to the document folder which will contain all external objects - images, link targets etc.

public void setLinkedObjectsFolderName(String linkedObjectsFolderName)

This method is used to retrieve the folder name where all linked objects should be moved upon save. This is used in conjuction with setSaveEntireDocumentTree(). This will cause all linked objects to be moved in a relative to the document folder which will contain all external objects - images, link targets etc.

public String getLinkedObjectsFolderName()

Will save the entire documnet tree in a relative folder under the document path. All external objects will be copied to that location. Default relative path is "images" - can be changed using setLinkedObjectsFolderNAme(String name)
 
public boolean saveEntireDocumentTree() will save the entire document tree as specified in the methods described above.

53. Style classes in the quick style dropdown on the toolbar will be ordered alphabetically.

54. New style class comboboxes
on each property dialog allows easy access to the style classes for all document elements. 

55. Greatly enhanced memory management - now the memory management is more effective, resulting in a faster performance and reduced memory consumption.

56. Support for editing of attributes of custom objects. Custom property dialogs can be specified easily directly through the object attributes inside the HTML page. If not specified, generic property dialog is displayed allowing basic attribute editing.

57. Support for edit time display of java applets and flash movies. Flash movies and applets are recognized automatically through the classid attribute and visual representation is displayed accordingly.

58. Simplified support for changing the editor icons. Now through setSharedIcon(String icon name, Image icon) icons can be easily replaced

59. Popup menu items now can be suppressed easily through applet parameters. This way for the applet edition the popup menu can display only desired items.

60. Improved UTF-8 document handling - load & save - fixed several issues with character conversion upon loading and saving. Now all unicode documents should be handled proeprly.

 
New Custom rendering and support for custom property dialogs for objects - now can be easily specified custom rendering options and property dialogs for custom objects.All object attributes can be edited using your own property dialogs.
New Editing support for flash movies - now java applets will be displayed for editing. You can easily set the different object attributes.
New Editing support for java applets - now java applets will be displayed for editing. You can easily set the different applet attributes.
New Reveal paragraphs - new toolbar button allows paragraphs to be revealed for easier editing of documents..
New As-you-type spellchecker - now the spellchecking is performed when you type.Various suggestion options are presented to the user. Now loading of external dictionaries is implemented in a separate thread so it does not slow the applet loading and the spellcheck starts immediately when the dictionary is loaded and ready.
New Paragraph properties dialog - now is possible to change the paragraph properties easily through the new intuitive Paragraph properties dialog. You can set background color, border color, top, left, right, bottom margins and also line spacing and first line indenting.
New Image preview - for local file browsing is possible to  preview  the images before inserting them. 
New Automatic hyperlinking as you type - e-mail addresses and URLs will be hyperlinked automatically as you type.  
New Numerous copy and paste options to choose from - to satisfy the needs of different appliances, have been introduced a wide number of copy and paste options in order to allow the right content to be used and rendered.  
New Table and cell border colors - now all users can easily select different border colors for tables and table cells. Each cell can have its own border and  table border can be chosen as well.
New Improved internationalization support - Cyrillic- now different character sets are rendered properly. Enhanced Cyrillic support.
New Improved internationalization support - Arabic - now different character sets are rendered properly. Enhanced Arabic support. Full support for right-to-left writing and rendering.
New Improved internationalization support Chinese, Japanese and Korean - now different character sets are rendered properly. Enhanced Chinese, Japanese and Korean support. 

 
New Improved Visual resizing of images- now is possible to resize images simply by dragging them. Now you can easily adjust the size of the picture directly inside the document - viewing immediately the results. The document structure is updated in real time the reflect the changes immediately. 

 
  New Improved Visual resizing of table rows - now is possible to resize table rows and columns simply by dragging them. Now you can easily adjust the height of the table rows directly inside the document - viewing immediately the results. The document structure is updated in real time the reflect the changes immediately. A ruler is shown while dragging to represent the exact resize of the table rows.

 
Visual resizing of table columns - now is possible to resize table rows and columns simply by dragging them. Now you can easily adjust the width of the table columns directly inside the document - viewing immediately the results. The document structure is updated in real time the reflect the changes immediately. A ruler is shown while dragging to represent the exact resize of the table columns.

 
Easy table  columns selection - now rows and columns can be selected from the borders of the table. Now you can easily select table columns and rows with a single click when the respective cursor is shown. You can adjust all properties of the selection using the popup menu or the shortcut toolbar buttons.

 
Easy table row selection - now rows and columns can be selected from the borders of the table. Now you can easily select table columns and rows with a single click when the respective cursor is shown. You can adjust all properties of the selection using the popup menu or the shortcut toolbar buttons.

 
List properties - now on the context menu appear also list properties when ordered/unordered list is detected. You can choose from roman numbers, various type of bullets, letters etc. You can also select the starting point of your lists.

 
Quick Style - toolbar combo box for quick style application

 

Table properties toolbar buttons - all table related functionalities now are exported as toolbar buttons

 

 

New features from 4.5 update

 

  • New Improved style sheet loading for the Component Edition through the loadExternalStyleSheet.
  • New Improved compatibility with FarEast char sets and internationalization support. This update includes examples for rendering of Chinese fonts and pages on Western workstations without the need to load fonts explicitly before the startup such as renaming the font.properties file etc. Please
    refer to the ChineseRenderingExample.java in the examples folder.
  • New Bookmarks Property Dialog. Now is possible to insert your own bookmarks inside the text and after that insert references to them through the hyperlinks. This is available through the Menu --> Insert--> Insert Bookmark
  • New Source Editor now renders properly the Chinese chars if the correct Chinese font is set up. Please refer to the ChineseRenderingExample.java in the examples folder.
  • New Table border color - now is possible to set the table border color separately from the table cells.
  • New Table cell border color - now is possible to set the border color of each
    cell separately using the appropriate style attributes.
  • New Paste formatted text menu item now is associated with the new HTMLFilter class in order to provide filtering of the pasted content. In this release is implemented basic filtering mechanism where are filtered all layout tags such as tables, head, body etc. in order to leave basically formatted text. Future implementation will provide a way to parameterize the filtering process.
  • New Various fixes and improvements over the XHTML generation.
  • New Automatic hyperlinking of URLs and e-mails while typing
  • New Improved image resize features
  • New Image preview in browse dialogs
  • New Extended paste features - paste special functionalities Memory leaks fixes
  • New Javascript call mechanism updated in order to workaround IE issues.
  • New JRE 5.0 CSS compatibility issues resolved
  • New TAB key assignments moved to JS function calls. Please refer to the transferFocusOnTAB parameter.
  • New Component Edition Enterprise transparency features introduced
  • New Improved internationalization support
  • New Fixes over save remote and variable formats
  • New Updated quick style sheet combo in order to load style classes properly on startup
  • New Enhanced Cyrillic support
  • New Possibility to save entire pages to a folder and include all linked objects in it
  • New Javascript function focus()
  • New Parameter defaultCharset
  • New Parameter forceInternalJSExecution
  • New Parameter generateUniqueImageFilenames
  • New Parameter transferFocusOnTAB
  • New Possibility to treat font sizes as points
  • New Improved bullets/numbering lists handling
  • New Paragraph properties dialog
  • New Support for line spacing, paragraph margins
  • New First line indentation implemented

 

Features inherited from 4.0 update

  • Visual resizing of images - now is possible to resize images simply by dragging them.
  • Visual resizing of table rows - now is possible to resize table rows and columns simply by dragging them.
  • Visual resizing of table columns - now is possible to resize table rows and columns simply by dragging them.
  • Easy table  columns selection - now rows and columns can be selected from the borders of the table.
  • Easy table row selection - now rows and columns can be selected from the borders of the table.
  • List properties dialog - now on the context menu appear also list properties when ordered/unordered list is detected
  • Quick style toolbar combobox for quick style application
  • Table toolbar buttons - all table related functionalities now are exported as toolbar buttons
  • Improved ordered /unordered list handling - now the toolbar buttons keep track of whether there is a list or not. Subsequent pressing of the toolbar button interrupts the list as most of the word processing apps do.
  • Improved overall stylesheet rendering
  • Improved paste handler - now new paragraph should not be generated any more. When text is pasted is should remain on the same line without
    generating new paragraphs any more.
  • Span sections with styles are rendered properly
  • Possibility to create nested oredered/unordered lists using increase indent toobar button.
  • Improved drag & drop operations - now is indicated the drop position and the drag & drop is much more accurate.
  • Fixed the issue with the onclick handlers when using the Image Properties and Hyperlink properties dialogs.
  • Parameter for disabling code indenting causing empty spaces and new lines which disturb rendering in IE: disableIndentingAndLineBreaks=true
  • Improved performance when switching to source view for large documents
  • Upload Multipart content functionalities modified in order to be fully compatible with PHP and ASP server side scripts and now the posted content is easily accessible by PHP's files variable.
  • Span sections are now generated correctly.
  • Parameter : remoteFileDialogWidth  - see applet parameters for details
  • Parameter : remoteFileDialogHeight - see applet parameters for details
  • Parameter : remoteFileDialogResizable - see applet parameters for details
  • Parameter : disableIndentingAndLineBreaks - see applet parameters for details
  • Parameter : preserveComments - see applet parameters for details
  • Parameter : popupMenuVisible - see applet parameters for details
  • Parameter : useSaveAsSaveRemote - see applet parameters for details
  • Parameter : saveEntireFile - see applet parameters for details

 

Features inherited from previous updates

 

  • Full internationalization support. Now the entire editor interface can be translated in any language. See loadInterfaceLanguageFile
  • Image alignment and text wrapping - can be enabled/disabled for backward compatibility
  • Internal Drag & Drop operations. Move with drag & drop, copy with Ctrl+Drag & Drop
  • Source code mode only operation - Enterprise Edition
  • Possibility to change the font rendering size in order to help people with visual impairments - see fontRenderingZoomLevel parameter for details
  • Powerful HTML filter for cleanup of pasted MS Word content - the newly pasted content is rendered almost equally to Word with standard HTML tags see  smartWordContentHanldingEnabled parameter for details
  • Support for inline CSS declaration - can be enabled/disabled see forceInlineCSSGeneration for details
  • Possibility to show only the body content in the source editor instead of entire document showBodyContentOnlyInSource
  • Now stylesheets  defined through <style> tags can be placed anywhere in the document.
  • Popup menu for the source editor for easy cut/copy/paste operations
  • Instant hypelink/font size/foreground applying to the current word even without selection.
  • Improved overall Mac integration.
  • Improved layout and rendering
  • Now javascript buttons can be added through applet parameters.
  • geSelectedContent() javascript function
  • Improved handling of unknown/XML tags
  • Now the initial content can be set as initialURLEncodedContent in order to avoid interferences with javascripts and html tags. This way even very complex pages can be set through server-side scripts directly as applet parameter. See initialURLEncodedContent parameter
  • Automatic upload of all local images and objects to the server as multipart form encoded content. All images, hyperlink targets - documents, images pages, table/cell/page backgrounds etc. will be uploaded automatically if desired to the server as multipart/form-data. All images pasted from MS Word, Excel etc. will be uploaded to the server. Automatic conversion of the image and hyperlink URLs before uploading to the server in order to be resolved correctly.
  • Copy formatting brush tool available - now it is easier to copy formatting of the text.
  • Headings combo box for setting the heading style of the text
  • Full backward compatibility with java 1.3 - full support for all browsers on Mac OS X. See the updated  Compatibility section.
  • Full support for java-javascript communication on platforms where missing through Sferyx LiveConnectProxy
  • Mixed mode file browsing - now is possible to use simultaneously local and remote file browsing
  • Improved remote browsing - possibility to specify the text of the remote links/objects to be displayed
  • Improved layout and document rendering
  • Possibility to specify reduced font lists through the applet parameters
  • Possibility to specify font sizes through applet parameters.
  • Possibility to integrate custom objects inside the documents and custom property dialogs (Enterprise Edition)
  • Possibility to specify font sizes through applet parameters.
  • Possibility to specify the initial content as URLEncoded applet parameter - this way setting of the initial content is much easier and do not require any javascript etc.
  • Full support for multiple instances of the editor on the same page.
  • Now is possible to add custom javascript buttons on the toolbars - buttons which invoke custom javascript functions from the document.
  • Two different remote browse location parameters for hyperlinks and images, new parameter remoteLinksBrowseLocation
  • Improved table handling support
  • Entirely renewed copy & paste handler
  • Improved image selection - cut, copy, paste, attributes
  • Keyboard shortcuts for the most used actions such as bold, italic etc.
  • Improved ordered/unordered lists management
  • Possibility to wrap the line breaks into paragraphs or html line breaks
  • Improved paragraph alignment features
  • Improved paragraph indenting
  • Full style sheet editing support - style classes can be applied through the property dialogs to each element - font, tables, images, all form elements etc.
  • Ability to specify external style sheet to be loaded through applet parameters
  • Spellchecker component 
  • Replaceable dictionary functionality for the spellchecker
  • Custom dictionary functionality (add new words to dictionary) for each user
  • Possibility to mark sections/elements of the document as readonly and not editable
  • Optional built-in full featured Visual FTP component

 

| Home | Screenshots | Users Manual | LicenseDemo & Download

Copyright 2002-2006 Sferyx Srl. All rights reserved. Sferyx and the Sferyx logo are registered trademarks of Sferyx Srl. http://www.sferyx.com
All other trademarks and logos are the property of their respective owners.