New Features of ZK Spreadsheet 3.5.0"

From Documentation
m (correct highlight (via JWB))
 
(9 intermediate revisions by 2 users not shown)
Line 14: Line 14:
  
 
== Customizable Theme And New Skyline Theme ==
 
== Customizable Theme And New Skyline Theme ==
In this new version we have established a new theme mechanism that you can design your own theme with CSS and change it dynamically. Please see this article for details on how to do it. Also we have designed a new Skyline theme as the default theme for version 3.5. Of course, you can stick to previous classic theme if you like to with the provided <tt>classic.jar</tt>.
+
In this new version we have established a new theme mechanism that you can design your own theme with CSS and change it dynamically. Please see this [http://books.zkoss.org/wiki/ZK_Spreadsheet_Essentials/Working_with_Spreadsheet/Advanced/Creating_Custom_Themes article] for details on how to do it. Also we have designed a new Skyline theme as the default theme for version 3.5. Of course, you can stick to previous classic theme if you like to with the provided <code>classic.jar[https://github.com/zkoss/zssthemes/releases]</code>.
  
 
== Localization of Number/Formula Input ==
 
== Localization of Number/Formula Input ==
In some country/region, people use ','(comma) instead of '.'(dot) as the decimal point for decimal numbers. This will enforce users to use ';'(semicolon) as the argument separator of formula functions. In previous version, users could not input numbers and formulas in their localized way and in this version we have lift this limitation.<ref>Note that we have not been able to support localized formula function names yet.</ref>
+
{{ZSS EE}}
 +
 
 +
In some country/region, people use ','(comma) instead of '.'(dot) as the decimal point for decimal numbers. This will enforce users to use ';'(semicolon) as the argument separator of formula functions. In previous version, users could not input numbers and formulas in their localized way and in this version we have lift this limitation*.
 +
 
 +
''*Note that we have not been able to support localized formula function names yet in version 3.5.0.''
  
 
== Smart Number General Formatting ==
 
== Smart Number General Formatting ==
 +
{{ZSS EE}}
 +
 
In this version, we will show decimal number in proper precision per the width of the container cell. That is, we will round decimal number to a precision such that all digits are shown in the cell. That way, user would not misunderstand the number if the width of the cell is too narrow and some digits are cropped and hidden.
 
In this version, we will show decimal number in proper precision per the width of the container cell. That is, we will round decimal number to a precision such that all digits are shown in the cell. That way, user would not misunderstand the number if the width of the cell is too narrow and some digits are cropped and hidden.
  
Line 26: Line 32:
  
 
== Support Chart and Picture Operations for XLS Format ==
 
== Support Chart and Picture Operations for XLS Format ==
 +
{{ZSS EE}}
 +
 
In previous versions, users are not able to move or delete charts and pictures because ZK Spreadsheet's old model for XLS files doesn't support it. However, with the new model now that it has no difference in design between XLS and XLSX, it  now supports chart and picture operations for XLS files. Notice that this version still does not support exporting charts and pictures to XLS format but you can export them to a XLSX format file.
 
In previous versions, users are not able to move or delete charts and pictures because ZK Spreadsheet's old model for XLS files doesn't support it. However, with the new model now that it has no difference in design between XLS and XLSX, it  now supports chart and picture operations for XLS files. Notice that this version still does not support exporting charts and pictures to XLS format but you can export them to a XLSX format file.
  
Line 36: Line 44:
  
 
== Removed APIs  ==
 
== Removed APIs  ==
# <tt>Book.getPoiBook()</tt>: you can't get any poi model object from this version, but you can get internal book model by <tt>getInternalBook()</tt>.
+
# <code>Book.getPoiBook()</code>: you can't get any poi model object from this version, but you can get internal book model by <code>getInternalBook()</code>.
# <tt>Sheet.getPoiSheet()</tt>: get the internal sheet by <tt>getInternalSheet()</tt>
+
# <code>Sheet.getPoiSheet()</code>: get the internal sheet by <code>getInternalSheet()</code>
# <tt>ChartData getPoiChartData()</tt>: get the internal chart data by <tt>getInternalChartData()</tt>
+
# <code>ChartData getPoiChartData()</code>: get the internal chart data by <code>getInternalChartData()</code>
  
 
== Changed APIs ==
 
== Changed APIs ==
# <tt>SheetOperationUtil.addChart() </tt>: It will add a chart directly based on the selected data in the range. No need to pass a chart data object.
+
# <code>SheetOperationUtil.addChart() </code>: It will add a chart directly based on the selected data in the range. No need to pass a chart data object.
# <tt>CellSelectionType</tt> is moved from <tt>org.zkoss.zss.ui.event</tt> to <tt>org.zkoss.zss.ui</tt>
+
# <code>CellSelectionType</code> is moved from <code>org.zkoss.zss.ui.event</code> to <code>org.zkoss.zss.ui</code>
  
 
== Deprecated APIs ==
 
== Deprecated APIs ==
# <tt>Range.SyncLevel</tt> and <tt>Range.setSyncLevel()</tt>.
+
# <code>Range.SyncLevel</code> and <code>Range.setSyncLevel()</code>.
# <tt>Book.getSync()</tt> : we use a new <tt>ReadWriteSync</tt>, you can get the lock by <tt>getLock()</tt>   
+
# <code>Book.getSync()</code> : we use a new <code>ReadWriteSync</code>, you can get the lock by <code>getLock()</code>   
# <tt>CellStyle.getBackgroundColor()</tt>: use <tt>getFillColor()</tt>
+
# <code>CellStyle.getBackgroundColor()</code>: use <code>getFillColor()</code>
# <tt>EditableCellStyle.setBackgroundColor()</tt> : use <tt>setFillColor()</tt>
+
# <code>EditableCellStyle.setBackgroundColor()</code> : use <code>setFillColor()</code>
# <tt>Exporter.export(Sheet sheet, OutputStream fos)</tt> and <tt>export(Sheet sheet,AreaRef selection,OutputStream fos)</tt>: Use those subclasses of <tt>org.zkoss.zss.range.SExporterFactory</tt>. For example, to export an Excel XLSX format file, you can use <tt>new ExcelExportFactory(Type.XLSX).createExporter().export(SBook book, File file)</tt>
+
# <code>Exporter.export(Sheet sheet, OutputStream fos)</code> and <code>export(Sheet sheet,AreaRef selection,OutputStream fos)</code>: Use those subclasses of <code>org.zkoss.zss.range.SExporterFactory</code>. For example, to export an Excel XLSX format file, you can use <code>new ExcelExportFactory(Type.XLSX).createExporter().export(SBook book, File file)</code>
# <tt>Range.protectSheet(String password)</tt>: Use the new <tt>Range.protectSheet(String password,  boolean allowSelectingLockedCells, boolean allowSelectingUnlockedCells, boolean allowFormattingCells, boolean allowFormattingColumns, boolean allowFormattingRows, boolean allowInsertColumns, boolean allowInsertRows, boolean allowInsertingHyperlinks, boolean allowDeletingColumns, boolean allowDeletingRows, boolean allowSorting, boolean allowFiltering, boolean allowUsingPivotTables, boolean drawingObjects, boolean scenarios)</tt> instead.
+
# <code>Range.protectSheet(String password)</code>: Use the new <code>Range.protectSheet(String password,  boolean allowSelectingLockedCells, boolean allowSelectingUnlockedCells, boolean allowFormattingCells, boolean allowFormattingColumns, boolean allowFormattingRows, boolean allowInsertColumns, boolean allowInsertRows, boolean allowInsertingHyperlinks, boolean allowDeletingColumns, boolean allowDeletingRows, boolean allowSorting, boolean allowFiltering, boolean allowUsingPivotTables, boolean drawingObjects, boolean scenarios)</code> instead.
 
 
  
 +
[[Category:New Features]]
 
{{Template:CommentedSmalltalk_Footer_new|
 
{{Template:CommentedSmalltalk_Footer_new|
 
|name=Potix Corporation
 
|name=Potix Corporation
 
}}
 
}}

Latest revision as of 04:21, 20 January 2022

DocumentationSmall Talks2014JulyNew Features of ZK Spreadsheet 3.5.0
New Features of ZK Spreadsheet 3.5.0

Author
Hawk Chen & Henri Chen
Date
July 07, 2014
Version
ZK Spreadsheet 3.5.0


New Features / Enhancements

Model Performance Enhancement

In this new version, we introduce a brand new model implementation. This enhancement doesn't change the way you use the Spreadsheet's public API mostly, but reduces Spreadsheet's memory consumption.

According to our tests which were done with a model operation of 500 rows and each row containing 10 numbers and 3 formulas, memory consumption was reduced to 1/3 of 3.0 under Java 1.6 and 1/6 under Java 1.7. These figures reflect big improvements with lower memory consumption saving you more money not only in an enterprise environment.

Customizable Theme And New Skyline Theme

In this new version we have established a new theme mechanism that you can design your own theme with CSS and change it dynamically. Please see this article for details on how to do it. Also we have designed a new Skyline theme as the default theme for version 3.5. Of course, you can stick to previous classic theme if you like to with the provided classic.jar[1].

Localization of Number/Formula Input

Available in ZK Spreadsheet EE only

In some country/region, people use ','(comma) instead of '.'(dot) as the decimal point for decimal numbers. This will enforce users to use ';'(semicolon) as the argument separator of formula functions. In previous version, users could not input numbers and formulas in their localized way and in this version we have lift this limitation*.

*Note that we have not been able to support localized formula function names yet in version 3.5.0.

Smart Number General Formatting

Available in ZK Spreadsheet EE only

In this version, we will show decimal number in proper precision per the width of the container cell. That is, we will round decimal number to a precision such that all digits are shown in the cell. That way, user would not misunderstand the number if the width of the cell is too narrow and some digits are cropped and hidden.

Row/Column Style

In previous versions, when you apply a style on the entire row, Spreadsheet will create one style object for each visible cell of that row. Row / column style now create only one style object for the entire row (or column) which saves lots of memory.

Support Chart and Picture Operations for XLS Format

Available in ZK Spreadsheet EE only

In previous versions, users are not able to move or delete charts and pictures because ZK Spreadsheet's old model for XLS files doesn't support it. However, with the new model now that it has no difference in design between XLS and XLSX, it now supports chart and picture operations for XLS files. Notice that this version still does not support exporting charts and pictures to XLS format but you can export them to a XLSX format file.


Upgrade Notes

Removed APIs

  1. Book.getPoiBook(): you can't get any poi model object from this version, but you can get internal book model by getInternalBook().
  2. Sheet.getPoiSheet(): get the internal sheet by getInternalSheet()
  3. ChartData getPoiChartData(): get the internal chart data by getInternalChartData()

Changed APIs

  1. SheetOperationUtil.addChart() : It will add a chart directly based on the selected data in the range. No need to pass a chart data object.
  2. CellSelectionType is moved from org.zkoss.zss.ui.event to org.zkoss.zss.ui

Deprecated APIs

  1. Range.SyncLevel and Range.setSyncLevel().
  2. Book.getSync() : we use a new ReadWriteSync, you can get the lock by getLock()
  3. CellStyle.getBackgroundColor(): use getFillColor()
  4. EditableCellStyle.setBackgroundColor() : use setFillColor()
  5. Exporter.export(Sheet sheet, OutputStream fos) and export(Sheet sheet,AreaRef selection,OutputStream fos): Use those subclasses of org.zkoss.zss.range.SExporterFactory. For example, to export an Excel XLSX format file, you can use new ExcelExportFactory(Type.XLSX).createExporter().export(SBook book, File file)
  6. Range.protectSheet(String password): Use the new Range.protectSheet(String password, boolean allowSelectingLockedCells, boolean allowSelectingUnlockedCells, boolean allowFormattingCells, boolean allowFormattingColumns, boolean allowFormattingRows, boolean allowInsertColumns, boolean allowInsertRows, boolean allowInsertingHyperlinks, boolean allowDeletingColumns, boolean allowDeletingRows, boolean allowSorting, boolean allowFiltering, boolean allowUsingPivotTables, boolean drawingObjects, boolean scenarios) instead.

Comments



Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.