Version 0.8.5 prerelease (2009.06.14): * added: new language: Chinese translation made by: Juis * changed: version of the TTMath library: 0.8.5 now Changes from TTMath 0.8.5 relating to TTCalc: * fixed: Big::Mod(x) didn't correctly return a carry and the result was sometimes very big (even greater than x) Version 0.8.4 (2009.05.08): * added: new language: Danish translation made by: Rune Bisgaard Vammen Version 0.8.3 (2009.04.06): * fixed: calculating the size of the main window now it looks good on MS Vista and when a user changes size of some widgets such as a border, font size, etc. * changed: variables and functions are case-sensitive now, e.g. 'x' is not the same as 'X' * changed: precision: small - the same as previous medium - 288 bits for the mantissa, 64 bits for the exponent big - 864 bits for the mantissa, 128 bits for the exponent previous were: medium - 192 bits for the mantissa, 64 bits for the exponent big - 288 bits for the mantissa, 96 bits for the exponent * changed: new version of TTMath bignum library: 0.8.3 * added: when a user presses CTRL+C then the result will be copied into the clipboard (if the current control which has a focus is not an edit control, or if it is an edit but has no selection) * added: when a user presses CTRL+V then the text from the clipboard will be copied into the edit control (the focus can be anywhere but it cannot be on another edit control) * added: 'decimal point' option on the display tab * added: variables and functions can have underline characters in their names * added: 'remove trailing zeroes' option on 'display' tab * added: new language: Spanish translation made by Alejandro S. Valdezate alesanval at gmail dot com * added: on display tab: we can select 'deg' 'rad' or 'grad' for calculating in such functions: sin,cos,tan,cot,asin,acos,atan,acot * added: when the program exits new variables and functions are read from the configuration file and then the file is saved (if you have inserted some variables or functions in a different instance of TTCalc those variables or functions were previously skipped) * removed: 'cut off last non valid digits' on 'rounding' option on 'display' tab Changes from TTMath 0.8.3 relating to TTCalc: * fixed: Big::Add incorrectly rounded 'this' when both exponents were equal it caused that sometimes when adding a zero the result has changed this had impact among other things on FromString() method "0,8" had different binary representation from "0,80" * fixed: Big::Pow(const Big & pow) it's using PowInt() only when pow.exponent is in range (-man*TTMATH_BITS_PER_UINT; 0] previously the powering 'hung' on an input like this: "(1+ 1e-10000) ^ 10e100000000" (there was 10e100000000 iterations in PowInt()) * fixed: in function DegToRad(const ValueType & x, ErrorCode * err = 0) it is better to make division first and then mutliplication -- the result is more accurate especially when x is: 90,180,270 or 360 * fixed: the parser didn't correctly treat operators for changing the base (radix) -- operators '#' and '&', e.g.: '#sin(1)' was equal '0' -- there was a zero from '#' and then it was multiplied by 'sin(1)' the parser didn't check whether Big::FromString() has actually read a proper value -- the method Big::FromString() didn't have something to report such a situation * fixed: Big::FromString() when the base is 10, the method reads the scientific part only if such a part it correctly supplied, e.g: '1234e10', '1234e+10', '1234e-5' previous '1234e' was treated as: '1234e0' (now parsing stops on 'e' and the 'e' can be parsed by other parsers, e.g. the mathematical parser -- now in the parser would be: '1234e' = '1234 * e' = '3354,3597...' ) * changed: in the parser: the form with operators '#' and '&' is as follows: [-|+][#|&]numeric_value previous was: [-|+][#|&][-|+]numeric_value * changed: the parser is allowed to recognize values which begin with a dot, e.g '.5' is treated as '0.5' * added: functions to the parser: gradtorad(grad), radtograd(rad), degtograd(deg), degtograd(d,m,s), gradtodeg(grad) * added: a short form of multiplication (without the '*' character) e.g. '5y' (it's used only if the second parameter is a variable or function) Version 0.8.2 portable (2007.07.01): * added: the portable version of the program TTCalc it uses *.ini config file from the same folder where is the executable file, and it's much smaller in size (in the portable version there's only one kind of precision and the program is packed with UPX - the Ultimate Packer for eXecutables) there are no other differences between version 0.8.1 and this one Version 0.8.1 (2007.04.17): * changed: on win9x the configuration file is in a folder like: "c:\windows\data application\ttcalc\" now * changed: the program uses the TTMath 0.8.1 now * added: from TTMath 0.8.1: root(x, index), bitand(x,y), bitor(x,y), bitxor(x,y) /band(x,y), bor(x,y), bxor(x,y)/ asinh(x), acosh(x), atanh(x), acoth(x) /atgh(x), actgh(x)/ * changed: from TTMath 0.8.1: calculations are much faster now especially the factorial() function * changed: from TTMath 0.8.1: the way of parsing operators Version 0.8.0 (2007.04.02): * added: the del key deletes a variable or a function now (if the focus is on the list) * added: a user can change the names of variables or functions now * changed: the program uses TTMath 0.8.0 now * added: functions: from TTMath 0.8.0: DegToDeg(deg, min, sec), DegToRad(deg), DegToRad(deg, min, sec), RadToDeg(rad), Ceil(x), Floor(x), Sqrt(x), Sinh(x), Cosh(x), Tanh(x) /Tgh(x)/, Coth(x) /Ctgh(x)/ * added: help * changed: from TTMath 0.8.0: renamed: CTan() into Cot() or Ctg() renamed: ACTan() into ACot() or ACtg() Factorial() has a history log now (it can remember last 10 calculated values) * fixed: the vertical size of the main window when a user uses a different size of the window caption (especially under the Windows XP Luna) * fixed: on Windows 9x: the program hung when a user clicks on a control on the first tab * fixed: when a user started navigating from the keyboard the program showed a wrong variable or a funtion in the edit dialog Version 0.7.3 (2007.03.08): * added: the program shows some kind of errors itself * added: checking whether an user has inserted a correct value of a variable or a function * fixed: navigation from the keyboard * changed: the esc key selects the entire input text now (in the input edit) * added: a test when the program is being starded which checks if the coordinates of the main window actually pointing at the valid area (for example when someone took his configuration file into a new computer and the new computer has a smaller screen) Version 0.7.2 (2007.02.28): * added: buttons Sgn and Mod * changed: the button 'err' is active when there's actually an error now * added: buttons: ASin, ACos, ATan, ACTan * fixed: the program didn't save the current language into the configuration file * fixed: the second thread didn't read the main window correctly and it caused small problems when an user was typing into the first edit control Version 0.7.1 (2007.02.08): * added: button 'err' (error) on the first tab * changed: the input edit can have 2048 characters now * added: remembering the vertical size into the config file * fixed: a problem with the 'tab' key * added: a message 'Calculating...' when an user clicks on the 'err' button during calculating something