fun switch_to_decimals
do
+ if self.current == null then current = 0.0
if after_point != null then return
after_point = -1
var lbl_disp : GtkLabel
var but_eq : GtkButton
+ var but_dot : GtkButton
var context = new CalculatorContext
if user_data isa Char then # is an operation
var c = user_data
if c == '.' then
+ but_dot.sensitive= false
context.switch_to_decimals
lbl_disp.text = "{context.current.to_i}."
else
+ but_dot.sensitive= true
context.push_op( c )
var s = context.result.to_precision_native(6)
else if user_data isa Int then # is a number
var n = user_data
context.push_digit( n )
- lbl_disp.text = context.current.to_precision(after_point)
+ lbl_disp.text = context.current.to_precision_native(after_point)
end
end
container.attach( but_eq, 4, 3, 1, 2 )
# .
- var but_dot = new GtkButton.with_label( "." )
+ but_dot = new GtkButton.with_label( "." )
but_dot.request_size( 64, 64 )
but_dot.signal_connect( "clicked", self, '.' )
container.attach( but_dot, 1, 4, 1, 1 )