TerpSpreadsheet
Installation Guide and User Manual
by OfficeSoft, Inc.
(Coders)
Johnson, Johny
Ivanov, Alexei
Table of Contents
Introduction ........................................................................................................................................................................................... 3
Installing and Running..................................................................................................................................................................... 4
Windows................................................................................................................................................................................................... 4
Compiling from Source.......................................................................................................................................................................... 4
Linux/Solaris ........................................................................................................................................................................................ 4
Compiling from Source.......................................................................................................................................................................... 4
Layout........................................................................................................................................................................................................ 5
Menu Bar................................................................................................................................................................................................... 5
File............................................................................................................................................................................................................ 5
Save ....................................................................................................................................................................................................... 6
Save As... ............................................................................................................................................................................................... 6
Print... .................................................................................................................................................................................................... 6
Exit......................................................................................................................................................................................................... 7
Edit............................................................................................................................................................................................................ 7
Cut.......................................................................................................................................................................................................... 7
Copy...................................................................................................................................................................................................... 7
Paste....................................................................................................................................................................................................... 7
Clear....................................................................................................................................................................................................... 8
Format...................................................................................................................................................................................................... 8
Column Width........................................................................................................................................................................................ 8
Row Height............................................................................................................................................................................................ 8
Format Cell............................................................................................................................................................................................. 8
Functions................................................................................................................................................................................................. 8
Sum......................................................................................................................................................................................................... 8
Average................................................................................................................................................................................................... 8
Min......................................................................................................................................................................................................... 8
Max........................................................................................................................................................................................................ 8
Square Root............................................................................................................................................................................................ 8
Sine......................................................................................................................................................................................................... 8
Count...................................................................................................................................................................................................... 8
Toolbar .................................................................................................................................................................................................... 8
Formulas................................................................................................................................................................................................... 10
Input ......................................................................................................................................................................................................... 10
Symbolic Operators ....................................................................................................................................................................... 10
Functions............................................................................................................................................................................................... 10
Arguments.............................................................................................................................................................................................. 10
Function Usage.................................................................................................................................................................................... 11
Addressing modes................................................................................................................................................................................. 11
Errors ...................................................................................................................................................................................................... 12
Credits ....................................................................................................................................................................................................... 13
Thank you for choosing TerpSpreadsheet. TerpSpreadsheet is a Pure Java product written primarily for business and academic transactions. The software is a part of the OfficeSoft package. This user manual can help you get the most out of our product and treats the spreadsheet as a stand alone package. TerpSpreadsheet features
TerpSpreadsheet is written for Java (TM) 2 SDK, v1.4.2. It
is required that you have Java (TM) 2 SDK, v1.4.2 installed on your maching
before installing TerpSpreadsheet. If you do not have Java (TM) 2 SDK, v1.4.2
you can download Java from http://java.sun.com.
The first step to installing
TerpSpreadsheet 3.0 is to make sure Java 1.4.2 or higher is installed on your
computer. If Java 1.4.2 is not
installed, it can be downloaded from http://java.sun.com/. Once java is installed onto your computer,
download the file win_tss3.exe from our website. Once the download completes,
double click the win_tss3.exe file to begin the installation process. Follow the instructions provided by the
installer to complete the install. Once finished, you can run TerpSpreadsheet
by locating the shortcut icon you specified during the install process. You man
also run TerpSpreadsheet by double clicking the file "RunMe.bat" from
the directory in which you installed TerpSpreadsheet.
Compiling from Source
TerpSpreadsheet may also be compiled from its source by entering the src directory and running the Make.bat file, or by first setting the classpath to the current directory and incorporating the following jar files: jcommon.jar, jfreechart.jar, images.jar, smartj_common1.0.jar and smartprint_1.1.jar and issuing the command
javac *.java. After compiling the program from its source, you may then run it by issuing the following command:
java cp
images.jar;smartj_common1.0.jar;smartprint_1.1.jar;TerpSpreadsheet.jar;jcommon.jar;jfreechart.jar;TerpSpreadsheet
&
Mac OSX
Installing from zip file
The first step to installing
TerpSpreadsheet 3.0 is to make sure Java 1.4.2 or higher is installed on your
computer. If Java 1.4.2 is not
installed, it can be downloaded from http://java.sun.com/. Once java is installed onto your computer,
download the file mac_tss3.zip from our website. Once the download completes,
double click the file and follow the instructions for installing
TerpSpreadsheet. Please note that for your machine to recognize the download,
StuffIt Expander must be installed.
Compiling from Source
Once all the source files are obtained, open a terminal window and change to the directory of the source files and invoke the following command to compile:
./Make.sh
You can invoke the "javac *.java" command to compile your source
files as well. After compilation, you man run TerpSpreadsheet by executing the
following command:
./RunMe.sh
Please note that your classpath must contain the follwing jar files:
jcommon.jar, jfreechart.jar, images.jar, smartj_common1.0.jar and
smartprint_1.1.jar. You may also need to give RunMe.sh permission to execute,
this can be done by the command "chmod u+x RunMe.sh.
Yet another way to run TerpSpreadsheet after compilation is by using the
following command within a terminal window:
java cp
images.jar;smartj_common1.0.jar;smartprint_1.1.jar;TerpSpreadsheet.jar;jcommon.jar;jfreechart.jar;TerpSpreadsheet
&
Installing from bin file
The first step to installing TerpSpreadsheet in a *NIX environment is to have Java 1.4.2 or higher installed. If it is not installed, it can be downloaded from http://java.sun.com/. Once Java is installed on your computer, download the binary named linux_tss3.bin. To run that file, once download completes, use the command:
./linux_tss4.bin
You can also double click the file itself to begin the install process. Please
note that the user must have install privileges to complete the installation.
After installation completes, find the directory that contains
"./TerpSpreadsheet_v3.0" and invoke the following command to run the
program:
./TerpSpreadsheet3.0
Compiling from Source
Once all the source files are obtained, change to the directory of those files and invoke the following command to compile:
./Make.sh
You can invoke the "javac *.java" command to compile your source
files as well. After compilation, you man run TerpSpreadsheet by executing the
following command:
./RunMe.sh
Please note that your classpath must contain the follwing jar files: jcommon.jar,
jfreechart.jar, images.jar, smartj_common1.0.jar and smartprint_1.1.jar. You
may also need to give RunMe.sh permission to execute, this can be done by the
command "chmod u+x RunMe.sh.
Yet another way to run TerpSpreadsheet after compilation is by using the
following command within a terminal window:
java cp
images.jar;smartj_common1.0.jar;smartprint_1.1.jar;TerpSpreadsheet.jar;jcommon.jar;jfreechart.jar;TerpSpreadsheet
&
New
Keyboard Shortcut: Ctrl-N
Creates a new SpreadSheet.
Open
Keyboard Shortcut: Ctrl-O
Open a SpreadSheet. There is a file preview for you to view the content you are browsing.
Keyboard Shortcut: Ctrl-S
Saves the current file, with current password (if set) and location; not
available if the spreadsheet is unchanged from the last save. There is a file preview for you to view the
content you are browsing.
Keyboard Shortcut: None.
Saves the current file, allowing for a different filename and location; begins Save
dialog.
Files are filtered to list only those ending .ums. You can list all files by
selecting All Files (*.*) from the Files of type menu. To
save the file as a file listed in the dialog, click on the name once, then
click Save. To save the file with a different name, enter the filename
in the File name field. If you wish to change directories, use the Look
in menu. You may also navigate by using the Up one directory button,
or the Home button, and then double-clicking on the folder you wish to
navigate to. Use the Create new folder button to make a new folder in
the current directory. You may cancel at any time by clicking the Cancel
button. There is a file preview for you
to view the content you are browsing.
Keyboard Shortcut: Ctrl-P.
The print menu allows you to select four options. Clicking on the print selected area option will print the area of the spreadsheet
that is highlighted. Clicking on the print entire document option will print
the entire spreadsheet document.
Clicking the preview option
will open up a new window and show the content of your current spreadsheet as
it would be printed out. Clicking cancel
will just cancel the action and take you back to the spreadsheet.
This is a screenshot of the Preview option.
Exits program
Keyboard Shortcut: Ctrl-Z
Undo the last operation except for text operations.
Keyboard Shortcut: Ctrl-Y
Redo the last undo operation except for text operations.
Keyboard Shortcut: Ctrl-X
Simply select a cell or range of cells to cut, then select either the Cut
menu item or button to cut the selection. If a row or column header is
selected, Cut will cut all the values, but will not actually remove
the row or column. Cut clears all the cells in the selected range and
copies the contents to the clipboard
Keyboard Shortcut:
Ctrl-C
Copy is very similar to Cut. Simply select a cell or
range of cells to cut, then select either the Copy menu item or button
to copy the selection. Copy leaves the contents of the selected cells
where they are and copies the values to the clipboard.
Keyboard Shortcut:
Ctrl-V
Paste takes the contents of the clipboard and pastes the value
back into the spreadsheet. Simple select a cell on the spreadsheet, then select
either the Paste menu item or button to paste the contents of the
clipboard. The region in the clipboard will be inserted with the selected cell
as the upper left-hand corner of the region. If the clipboard region is larger
than the region that is available in the current spreadsheet, as much of the
clipboard region will be pasted as possible.
Keyboard Shortcut: Delete
Clear deletes the values of all selected cells
Keyboard Shortcut: Ctrl-F
The find/replace option can be used as a find function or a find/replace
function. In order to use the find
function, the user type in the value/word in the first text field box. They have the option of matching the entire
cell or case sensitive searching. Once
OK is clicked, it will search for that value and highlight the cell. In order to use find/replace, you would
perform the same action as find, but in the second text field you would type in
the value/word you want to replace with.
Keyboard Shortcut: Ctrl-Insert/Ctrl-Shift-Insert
Inserts a Row or Column where the selected cell is located.
Keyboard Shortcut: Ctrl-Delete/Ctrl-Shift-Delete
Deletes a Row or Column where the selected cell is located.
Resize the width of every cell in the selected column.
Resizes the height of every cell in the selected row.
Provides options to format cell attributes. These attributes include the cells font face, font color, background color, and borders.
Sums the numbers or cells listed as the arguments.
Averages the numbers or cells listed as the arguments.
Computes the minimum of the numbers or cells listed in the arguments.
Computes the maximum of the numbers or cells listed in the arguments.
Computes the square root of the number or cell listed as the argument.
Computes the Sine of the number or cell listed as the argument.
Counts the number of cells in the range listed as the argument.
The use of these functions are described in the Formulas section of this manual.
If the information is not structured in the following manner, the graphing option
will not produce any charts.
To be able to use the graphing utility, you must structure your
information in the following manner to produce the above charts:
Use string labels down the first column to label the
parts of the graph. The values that correspond to these
labels belong in the succeeding columns. See examples below.
COLUMN/ROW
1 2 3 4....
1 label1 12.0 13.0
2 label2 5.6 14.9
3 label3 7.6 6.0
4
.
.
.
PIE
1 2
1 label1 12.0
2 label2 5.6
1. label3 7.6
Note: With a Pie chart, you can have only 1 column of values.
Line
To create a Line chart, use 2 columns. The first column should contain values
that belong on the X-axis. The second column should contain values that correspond
to the Y-axis.
X
Y
2.0 40.0
4.0 23.0
6.0 56.0
20.0 2.0
TerpSpreadsheet provides a framework for designing your own graph. In order to do this, you must know how to program in java. The idea of user defined graph is that we have a class called UserGraphs (under UserGraphs.java) and under this class you add a static function which you define your graph. Using this static function, you code up your own graph, compile this class, and use it with TerpSpreadsheet. When you load TerpSpreadsheet, the user defined graph will be located under the Graphs menu. For an example of how this works open UserGraphs.java and look through the code to see how Scattered Graph works. You will need to download the source code to do this.
Here is an example of a User-Defined Graph.
Data is input to cells in the workspace. When a cell is clicked on, or highlighted, it is said to be selected. To make a cell editable, double-click on it. To select a range, select a cell and drag the mouse over the desired region. The selected range will be highlighted. When editing a cell, you may enter text, literals, or functions. These are a few examples of each:
Formulas can be recognized because they all begin with the = sign. More information on formulas can be found later in this manual.
TerpSpreadsheet implements various symbolic formula operations:
These operators can be used in formulas between number, other formulas, or combinations of both.
Functions are predefined formulas provided by TerpSpreadsheet which perform a mathematical calculation.
Arguments to a function can be numbers, cell addresses, or a range of cell addresses. A cell address is the address of a single cell, such as A1, or B5. A range of cell addresses is constructed by the first cell address of the range followed by a colon which is then followed by the last cell address of the range. For example, the range of cells from A1 to A3 (A1, A2, and A3) would be constructed as A1:A3. Ranges can also span columns such as A1:B3.
The structure of a function begins
with the equal sign (=), the function name, an opening parenthesis, the
arguments for the function separated by commas, and a closing parenthesis.
=FUNCTION(ARGUMENT1,ARGUMENT2,...)
The following are
the details of the functions provided by TerpSpreadsheet
Usage: =AVERAGE(argument1,argument2,...)
Returns the average (arithmetic mean) of its arguments.
Examples: =AVERAGE(A1, A2, B1:B3)
=AVERAGE(1, 2, 3)
Usage: =COUNT(argument1,argument2,...)
Returns the number of its arguments.
Example: =COUNT(A1:A25,B1) returns 26.0.
Usage: =MAX(argument1,argument2,...)
Returns the largest number among its arguments.
Example:=MAX(99.99,100,99.9999) returns 100.0.
Usage: =MIN(argument1,argument2,...)
Returns the largest average absolute deviation of its arguments.
Example: =MIN(5, 4, 3) returns 3
Usage: =SQRT(argument)
Returns the square root of its argument.
Example: =SQRT(A1)
Usage: =SUM(argument1,argument2,...)
Adds up the specified arguments.
Example: =SUM(A1:A3, B1:B5)
Usage: =SIN(argument)
Returns the sine of the argument
Example: =SIN(3.14)
TerpSpreadsheet uses two types of addressing in formulas, relative and absolute. Relative addressing means that when a cell is copied, the cell addresses in its function are changed to reflect their new position. Absolute addressing means that the addresses in the formula never change. To use absolute addressing place dollar signs ($) in front of the cell column and row. For example the cell A1 would become $A$1. Absolute and relative addressing may both be used in the same formula like in the following example:
If the cell C1 contained the formula =(B1/$A$1), if this formula is copied and pasted into the cell C2, that cell would then contain the formula =(B2/$A$1). The use of relative and absolute addressing can be used with any formula or function.
TerpSpreadsheet provides a framework for designing your own functions. In order to do this, you must know how to program in java. The idea of user defined function is that we have a class called Functions (under Functions.java) and you must extend this class in order to define your own functions. Once you extend this class, you can code up your function, compile it, and use it with TerpSpreadsheet. When you load TerpSpreadsheet, the user defined function will be located under the Functions menu. For an example of how this works open UserFunctions.java and look through the code to see how it is done. We have defined the POWER function to use in TerpSpreadsheet. You will need to download the source code to do this.
Errors are of the form #ERROR?, where ERROR is the type of error. There are several errors that are possible when entering formulas:
Example: =SUM(A1:A25
Example: 2.3.4
Example: =2++3
Example: =AD
Example: =QQ123
Example: =A4:B4+1
Example: =NOP()
Example: =MIN()
Example: Cell
A1 contains =SUM(A2,
A3)
Cell A3 contains =SUM(A1:A2)
TerpSpreadsheet version 3.0 is a product of the OfficeSoft Engineering team:
· Johny Johnson (Coder)
· Michael Hill (Coder)
· Alexei Ivanov (Coder)
· Tony Fu (Tester)
· Ashy Palliparambil (Tester)
·