Public feed
#887885
;Calculator Dialog - By Panda200x
;Load Dialog
alias calcu dialog -m calc calc
;The Dialog
dialog calc {
title "Calculator"
size -1 -1 189 172
option dbu
button "MRC", 1, 10 30 37 12
button "AC", 2, 142 30 37 12
edit "", 3, 10 7 170 19, multi
button "M+", 4, 54 30 37 12
button "M-", 5, 98 30 37 12
button "7", 6, 10 50 37 12
button "4", 7, 10 70 37 12
button "6", 8, 98 70 37 12
button "9", 9, 98 50 37 12
button "8", 10, 54 50 37 12
button "5", 11, 54 70 37 12
button "1", 12, 10 90 37 12
button "3", 13, 98 90 37 12
button "2", 14, 54 90 37 12
button "0", 15, 10 110 37 12
button ".", 16, 98 110 37 12
button "+/-", 17, 54 110 37 12
button "/", 18, 142 50 37 12
button "*", 19, 142 70 37 12
button "Pi", 20, 10 130 37 12
button "+", 21, 142 90 37 12
button "-", 22, 142 110 37 12
button "Sin", 23, 54 130 37 12
button "Tan", 24, 141 130 37 12
button "Cos", 25, 98 130 37 12
button "Log", 26, 10 150 37 12
button "=", 27, 141 150 37 12
button ")", 28, 98 150 37 12
button "(", 29, 54 150 37 12
}
;Calculator Alias
alias calcul {
var %method = $replace($1-,pi,$pi)
var %method = $($replace(%method,sin $+ $chr(40),$chr(32) $+ $chr(36) $+ sin $+ $chr(40)),2)
var %method = $($replace(%method,cos $+ $chr(40),$chr(32) $+ $chr(36) $+ cos $+ $chr(40)),2)
var %method = $($replace(%method,tan $+ $chr(40),$chr(32) $+ $chr(36) $+ tan $+ $chr(40)),2)
var %method = $($replace(%method,log $+ $chr(40),$chr(32) $+ $chr(36) $+ log $+ $chr(40)),2)
return $calc(%method)
}
;All The /did -a
on *:dialog:calc:sclick:12:did -a calc 3 1
on *:dialog:calc:sclick:14:did -a calc 3 2
on *:dialog:calc:sclick:13:did -a calc 3 3
on *:dialog:calc:sclick:7:did -a calc 3 4
on *:dialog:calc:sclick:11:did -a calc 3 5
on *:dialog:calc:sclick:8:did -a calc 3 6
on *:dialog:calc:sclick:7:did -a calc 3 6
on *:dialog:calc:sclick:10:did -a calc 3 8
on *:dialog:calc:sclick:9:did -a calc 3 9
on *:dialog:calc:sclick:15:did -a calc 3 0
on *:dialog:calc:sclick:20:did -a calc 3 pi
on *:dialog:calc:sclick:23:did -a calc 3 sin(
on *:dialog:calc:sclick:24:did -a calc 3 tan(
on *:dialog:calc:sclick:25:did -a calc 3 cos(
on *:dialog:calc:sclick:26:did -a calc 3 log(
on *:dialog:calc:sclick:28:did -a calc 3 )
on *:dialog:calc:sclick:29:did -a calc 3 (
on *:dialog:calc:sclick:27:var %x = $calcul($did(calc,3).text) | did -r calc 3 | did -a calc 3 %x
on *:dialog:calc:sclick:18:did -a calc 3 /
on *:dialog:calc:sclick:19:did -a calc 3 *
on *:dialog:calc:sclick:21:did -a calc 3 +
on *:dialog:calc:sclick:22:did -a calc 3 -
on *:dialog:calc:sclick:17:did -r calc 3 | if ($left($did(calc,3).text,1) == -) { did -a calc 3 $right($did(calc,3).text,$len($calc($did(calc,3).text - 1))) } | elseif ($left($did(calc,3).text) != -) { did -a calc 3 + $+ $did(calc,3).text }
on *:dialog:calc:sclick:16:did -a calc 3 .
;Memory Recall
on *:dialog:calc:sclick:2:did -r calc 3
on *:dialog:calc:sclick:4:set %mem $did(calc,3).text
on *:dialog:calc:sclick:5:unset %mem
on *:dialog:calc:sclick:1:if (%mem) { did -r calc 3 | did -a calc 3 %mem }