Abstract:
Animation for the expansion and collapse of content in a user interface may be provided. The user interface may be displayed by a computer and may contain a content surface for editing content. The content may include a top data row and data items in rows below the top data row on the content surface. The computer may then receive an input to expand/collapse the data items into the top data row. The computer may then animate a display of the data items expanding/collapsing into the top data row. Animation for the sorting of content in a user interface may also be provided. The user interface may be displayed by a computer and may contain a content surface for editing a plurality of rows containing content. The computer may then receive a request to sort the content. The computer may then animate a sort of the content.
Abstract:
To sort data items in a spreadsheet table, data items in the spreadsheet table are divided into a plurality of blocks. Multiple threads are used to sort the data items in the blocks. After the data items in the blocks are sorted, multiple merge threads are used to generate a final result block. The final result block contains each of the data items in the spreadsheet table. Each of the merge threads is a thread that merges two source blocks to generate a result block. Each of the source blocks is either one of the sorted blocks or one of the result blocks generated by another one of the merge threads. A sorted version of the spreadsheet table is then displayed. The data items in the sorted version of the spreadsheet table are ordered according to an order of the data items in the final result block.
Abstract:
A method and computer-readable medium are provided for saving the contents of a memory structure stored in a volatile memory. According to the method, corrupted portions of the memory structure are identified and an attempt is made to repair these portions. If the corrupted portions cannot be repaired, the saving of these portions is skipped. The uncorrupted and repaired portions of the memory structure are then saved to a data file stored on a mass storage device. If portions of the memory structure cannot be repaired or skipped, an attempt is made to save only the user data contained in the memory structure to the data file. In this manner, the user data contained in the memory structure may be saved to a data file even in cases of severe corruption.
Abstract:
A method and computer-readable medium are provided for saving the contents of a memory structure stored in a volatile memory. According to the method, corrupted portions of the memory structure are identified and an attempt is made to repair these portions. If the corrupted portions cannot be repaired, the saving of these portions is skipped. The uncorrupted and repaired portions of the memory structure are then saved to a data file stored on a mass storage device. If portions of the memory structure cannot be repaired or skipped, an attempt is made to save only the user data contained in the memory structure to the data file. In this manner, the user data contained in the memory structure may be saved to a data file even in cases of severe corruption.
Abstract:
Animation for the expansion and collapse of content in a user interface may be provided. The user interface may be displayed by a computer and may contain a content surface for editing content. The content may include a top data row and data items in rows below the top data row on the content surface. The computer may then receive an input to expand/collapse the data items into the top data row. The computer may then animate a display of the data items expanding/collapsing into the top data row. Animation for the sorting of content in a user interface may also be provided. The user interface may be displayed by a computer and may contain a content surface for editing a plurality of rows containing content. The computer may then receive a request to sort the content. The computer may then animate a sort of the content.
Abstract:
Animation for the recalculation of formulas in a spreadsheet may be provided. A user interface may be displayed on a computer for updating formula output values. The computer may then receive an update of formula input values in a formula utilized for generating the formula output values. The computer may then animate a display the formula output values being replaced with recalculated formula output values based on the received update. Animation for sparklines and conditionally formatted content in a spreadsheet may also be provided. A user interface may be provided for displaying sparklines and conditionally formatted content in the spreadsheet. The computer may then receive an update of one or more values associated with the sparklines and the conditionally formatted content. The computer may then animate a change in the display of the sparklines and the conditionally formatted content based on the received update.
Abstract:
Embodiments of the invention involve a method of concurrent processing of chain calculations using multiple processors each having a separate recalculation engine in a spreadsheet program. The operations basically include first determining a number of available processors, then allocating a recalculation engine to each available processor, distributing the formulas between the recalculation engines, and then concurrently evaluating the formulas distributed to each recalculation engine when a recalc operation is called for in the spreadsheet program.
Abstract:
A method and computer-readable medium are provided for loading the contents of an electronic data file. According to the method, corrupted portions of a data file are identified and an attempt is made to repair these portions. If the corrupted portions cannot be repaired, the loading of these portions is skipped. The uncorrupted and repaired portions of the data file are then loaded into memory. If portions of the data file cannot be repaired or skipped, an attempt is made to load only the user data contained in the data file. In this manner, the user data contained in the data file may be loaded even in cases of severe corruption.
Abstract:
A computing system performs a column adjustment process. The column adjustment process uses multiple threads to determine overall maximum column widths for each column in a set of target columns in a spreadsheet table. For each of the target columns, the overall maximum column width for the target column is based on the width of the widest textual representation of a value in any cell in the column. The set of target columns includes at least one column. The computing system then reflows the spreadsheet table such that each column in the set of target columns has a width based on the overall maximum column width for the column. A similar process is performed to adjust the height of rows.