
eCalc 2.0 preview 3.1


eCalc 2.0 is an easy to use, but powerful calculator for OS/2 and eComStation. 
It's based on the eCalc 1.x application, developed by Nick Morrow. eCalc 1.x was part of eComStation 1.x. eCalc is now available for OS/2 as well as for eCs.


It requires REXX and PM.


New in version eCalc 2.0


In short:

* optional: always on top
* optional: hide keyboard
* entry field and separate result field (realtime calculations during input)
* autoclip - automatic copy of result to clipboard
* expressions (Rexx enabled, extensible with external programs)
* changeable look and feel via WPS palettes
* order of operations just like in scientific calculators
* user definable output digits
* user definable decimal delimiter
* support of 'Rexx Math Function Package' by Patrick J. Mueller (scientific functions)
* Drag an drop


Installation

Just unzip the archive to a directory on your harddrive. Run install.cmd from a commandline to create objects on your desktop.



eCalc 2.0 Description:

* 'Always On Top'
Enable this to make the eCalc window floating on top over all other windows
Limitation: does not work with DOS and WINOS/2 windows.


* hide keyboard
With this option you are able to enable and disable the virtual keyboard.
This maybe handy in cunjuction with the 'always on top' function, to keep a small calculation window always on the desktop.


* realtime calculations
You don't have to hit "=" or the enter key, the result will be displayed immediately after entering an valid expression.


* auto clip
This function will copy the result of calculations immediataly to the clipboard.

* order of operations just like in scientific calculators
1. Brackets
2. Exponents
3. Division
4. Multiplication
5. Addition
6. Subtraction 

(mnemonic "BEDMAS")

For further information see
http://en.wikipedia.org/wiki/Order_of_operations


* entry field and result field
Both the calculations way and the result are always visable. It's easy to change several numbers, operators or expressions without to re-entering the whole calculation chain again.


* expressions
The interpreted result field makes it possible to use your own external routines or rexx commands. 

Here are some examples:
1. Using standard Rexx commands
1.1. Enter c2x(7) to the entry field, the result will be the hexadecimal value of 7, 'c2x' is a Rexx command, which will be interpreted.
1.2 Enter "5**2", and you will get the power of 5 (you can use other exponents). 

Note: Exponents must be integer, it's not possible to calculate the square root via x**0.5 (you have to use another external function to calculate roots).


2. Using external routines

2.1 use OS/2 2.0 Rexx Math Function Package by Patrick J. Mueller
eCalc supports this DLL, which contains functions for scientific operations.

This package comes with the following functions:
* cosine, sine, tangent, arc cosine, arc sine, arc tangent
  hyperbolic cosine, hyperbolic sine, hyperbolic tangent
* smallest integer >= x, largest  integer <= x
* e to the power x (e is natural logarithm base)
* natural logarithm
* base 10 logarithm
* square root 
* pi
* e

Note the function power (pow) from the package is not supported. Use the standard Rexx operation 'x**y' to get the power y of x instead. 

2.2 using your own Rexx scripts
Enter P() into the entry field, the result will be 3.14.
P.cmd is an external rexx routine, the return code of this routine is '3.14'.

BTW, if you are looking for Pi with more digits, take a look at 
http://3.141592653589793238462643383279502884197169399375105820974944592.com/

;-)

You may use it for other, more complex functions.
Be careful with it, don't enter any OS/2 command! You may enter your own command wich will be used internally in eCalc as a variable or procedure. eCalc is using the prefix "_eCalc" for all its internal procedures and variables, so please do, please do not use this string in your expressions.

* changeable look and feel
The main window is sizable, you can set it up like you want. E.g. you may disable the keyboard and make it very width to see long calculations without scrolling.
And you can change the fore- and background color as well as the fonts of all controls of the eCalc main window. Open Options > Settings and drop colors and fonts from OS/2 or eCs standard palettes to the sample controls, and then apply your settings. The settings will be saved. 
Note: Don't drag fonts and colors to the eCalc main window directly! This works during runtime, but will not be saved.

* user definable output digits
Select the number of decimal digits after the decimal delimiter. Select 'disable' to use the most possible digits. 
Use 'system default' setting to use the value of your local operating system setting.


* user definable decimal delimiter
Select comma, dot or 'system default' as delimiter. Use 'system default' setting to use the value of your local operating system.


* Drag and drop
After dropping a file to the entry field, only the first line of the file will be inserted.
If the WPS enhancer 'DragText' is installed, it is possible to drag and drop text from the entry or result field to other applications or folders.
You may find DragText here:
http://e-vertise.com/dragtext/



COPYRIGHT & LICENSE

We allow you to use and distribute this files freely under the condition that we are in no way responsible for any damage or loss you may suffer. Use this software at your own risk!

eCalc 2.0 is protected by the GPL

The source code and new versions will be available at http://www.subsys.de/ecalc/

eCALC 2.0 makes use of the following module:

OS2apirx - OS/2 API for Rexx
Version 03. Apr 2003
(c) Carsten Arnold
http://www.ca-arnold.de

Rexx Math Function Package
For License information see ..\RxMath\license.txt
(you will find the documentation for this dll there, too.)





Known Bugs / To-Do / Notes for developers:


Entry field:
The entry field is a multi-line entry field. This should *not* be changed, because it is neccessary for 'insert at cursor position' operations.


Keys:
Currently, the program ignores the value of the numlock setting. In both settings, numbers will be inserted into the entry field, when the user hits a key on num block. I think this is a feature for many users, but this behaviour should be optional, because it violates system standards.


Internationalizing:
All strings have been out-sourced, so as to be easily translatable. You will find the language files in the subdirectory ..\lang


Documentation
INF files in national languages are not available. Would be nice to have...


Font & Colors
Currently the reset buttons are without a function. The button should reset the fore- and background color and the font to default values.


Missing features:
- internal numeric digits should be customizable.
- external list for constants like Pi, eventually with GUI for constant management.



History
new  in v2 preview 3.1
- bugfix: eCalc does not longer crash on ObjectRexx
- bugfix / new feature: now F1 opens help file 
- new french manual: fr.txt
- fixed fr.dat
- fixed english manual
- fixed NLS.txt

new  in v2 preview 3
- national language support
- internal code optimization


new  in v2 preview 2
- support of 'Rexx Math Function Package' by Patrick J. Mueller (scientific functions)
- ESC and NUM now deletes entry and result field
- F3 closes the program
- new eCalc folder icons
- bugfix: it's not longer possible to paste multi-line text from the clipboard to the entry field using CTRL+V or SHIFT+INS. Only the first line of the clipboard content will be inserted.
Unfortunately it's still possible to insert such text with the mouse (mouse button 1 + 2 if enabled), and I have no idea how to prevent it. Please avoid it for yourself at this time.

new in v2 preview 1
- first public release of version 2.x


Frank Wochatz
Berlin, December 2005


