\ ob.numeric.grid+ \ \ ctrl_numeric+ \ class of numeric.grid that fixes a bug when get.enable: returns false. \ \ code: Han-earl Park \ copyright 2004 buster & friends' C-ALTO Labs \ (Southampton, October 2000 - \ \ MOD: HeP 10/02/00 Started project. \ MOD: HeP 10/18/00 Sets font size before drawing number. \ MOD: HeP 04-08-04 Also sets font. Can set different font for the number. anew task-ctrl_numeric+ method PUT.NUMBER.FONT: method GET.NUMBER.FONT: :class ob.numeric.grid+ iv-cg-number-font ;m :m PUT.NUMBER.FONT: ( n -- ) iv=> iv-cg-number-font ;m :m GET.NUMBER.FONT: ( -- n ) iv-cg-number-font ;m :m DRAW.PART: ( part -- , draw a single part of a control ) >r \ \ Use smaller characters or color 2 if the cell is disabled. r@ get.enable: self 0= IF r@ gr.start.dim THEN service.tasks \ gr.font@ \ MOD: HeP \ iv-cg-number-font gr.font! \ MOD: HeP iv-cg-text-size gr.height! \ MOD: HeP \ \ Position in cell r@ cg.part.topleft iv-cg-text-size + 1+ swap \ -- y x r@ get.value: self n>text gr.textlen - \ right justify \ \ move in farther if using 3D bevel, 00001 cg-3d @ IF cg-bevel-thickness @ - ELSE 1- THEN iv-cg-width + swap gr.move \ \ Draw number \ \ r@ get.value: self gr.number r@ get.enable: self 0= IF r@ gr.end.dim \ MOD: HeP THEN rdrop \ gr.font! \ MOD: HeP ;m :m MOUSE.UP: ( x y -- , process mouse UP event ) ev.track.off iv-cg-lasthit clear.part: self \ method redefined because these calls iv-cg-lasthit draw.part: self \ are not late bound. mouse.up: super-dooper \ call super-dooper instead of super ;m ;class