A simple though usefull calculator script.
Copy paste the code in Remote and use the right mouse button menu to launch the Calculator.
Functions overview:
And ofcourse all basic calculator functions such as +, -, /, *, entering numbers etc.
menu * {
Silverwing
.Calculator: /dialog $iif($dialog(CALCULATOR),-vie,-md) CALCULATOR CALCULATOR
}
dialog CALCULATOR {
title "Calculator"
size -1 -1 101 138
option dbu
edit "", 1, 4 5 93 10, read autohs
edit "", 35, 4 16 93 10, read autohs right
button "1", 2, 22 102 15 15
button "2", 3, 40 102 15 15
button "3", 4, 58 102 15 15
button "4", 5, 22 84 15 15
button "5", 6, 40 84 15 15
button "6", 7, 58 84 15 15
button "7", 8, 22 66 15 15
button "8", 9, 40 66 15 15
button "9", 10, 58 66 15 15
button "0", 11, 22 119 15 15
button ".", 12, 40 119 15 15
button $chr(247), 13, 82 48 15 15
button $chr(215), 14, 82 65 15 15
button $chr(151), 15, 82 83 15 15
button "+", 16, 82 101 15 15
button "=", 17, 82 119 15 15
button "(-)", 18, 58 119 15 15
button "(", 19, 40 55 15 8
button ")", 20, 58 55 15 8
button "sin", 21, 22 33 15 8
button "cos", 22, 40 33 15 8
button "tan", 23, 58 33 15 8
button "asin", 24, 22 44 15 8
button "acos", 25, 40 44 15 8
button "atan", 26, 58 44 15 8
button "pi", 27, 4 33 15 8
button "^", 28, 4 44 15 8
button "x²", 29, 4 55 15 8
button "sq( )", 30, 4 66 15 8
button "clear", 31, 82 33 15 8
button "del", 34, 4 126 15 8
button "log", 36, 4 88 15 8
button "rnd", 37, 4 77 15 8
button "abs", 38, 4 99 15 8
menu "File", 32
item "Close", 33, 32, ok
}
on *:DIALOG:CALCULATOR:*:*: {
if ($devent == sclick) {
if ($did == 2) { /did -a $dname 1 1 | /did -r $dname 35 }
if ($did == 3) { /did -a $dname 1 2 | /did -r $dname 35 }
if ($did == 4) { /did -a $dname 1 3 | /did -r $dname 35 }
if ($did == 5) { /did -a $dname 1 4 | /did -r $dname 35 }
if ($did == 6) { /did -a $dname 1 5 | /did -r $dname 35 }
if ($did == 7) { /did -a $dname 1 6 | /did -r $dname 35 }
if ($did == 8) { /did -a $dname 1 7 | /did -r $dname 35 }
if ($did == 9) { /did -a $dname 1 8 | /did -r $dname 35 }
if ($did == 10) { /did -a $dname 1 9 | /did -r $dname 35 }
if ($did == 11) { /did -a $dname 1 0 | /did -r $dname 35 }
if ($did == 12) { /did -a $dname 1 . | /did -r $dname 35 }
if ($did == 13) { /did -a $dname 1 / | /did -r $dname 35 }
if ($did == 14) { /did -a $dname 1 * | /did -r $dname 35 }
if ($did == 15) { /did -a $dname 1 - | /did -r $dname 35 }
if ($did == 16) { /did -a $dname 1 + | /did -r $dname 35 }
if ($did == 18) { /did -a $dname 1 - | /did -r $dname 35 }
if ($did == 19) { /did -a $dname 1 ( | /did -r $dname 35 }
if ($did == 20) { /did -a $dname 1 ) | /did -r $dname 35 }
if ($did == 27) { /did -a $dname 1 pi | /did -r $dname 35 }
if ($did == 28) { /did -a $dname 1 ^ | /did -r $dname 35 }
if ($did == 29) { /did -a $dname 1 ^2 | /did -r $dname 35 }
if ($did == 31) { /did -r $dname 1 | /did -r $dname 35 }
if ($did == 34) { /did -ar $dname 1 $left($did(1),-1) | /did -r $dname 35 }
if ($did == 17) { /did -ar $dname 35 $calc2($did(1)) }
if ($did == 21) { /did -ar $dname 35 $sin($calc2($did(1))) }
if ($did == 22) { /did -ar $dname 35 $cos($calc2($did(1))) }
if ($did == 23) { /did -ar $dname 35 $tan($calc2($did(1))) }
if ($did == 24) { /did -ar $dname 35 $asin($calc2($did(1))) }
if ($did == 25) { /did -ar $dname 35 $acos($calc2($did(1))) }
if ($did == 26) { /did -ar $dname 35 $atan($calc2($did(1))) }
if ($did == 30) { /did -ar $dname 35 $sqrt($calc2($did(1))) }
if ($did == 36) { /did -ar $dname 35 $log($calc2($did(1))) }
if ($did == 37) { /did -ar $dname 35 $round($calc2($did(1)),$$?="Decimals:") | /dialog -vie $dname $dname }
if ($did == 38) { /did -ar $dname 35 $abs($calc2($did(1))) }
}
}
alias calc2 {
return $calc($replace($1-,pi,3.141592653589793238462643383))
}