Example #1
0
func (x *Imp) Edit(l, c uint) {
	//
	bx.Wd(length[x.fmt])
	bx.Colours(x.cF, x.cB)
	s := x.String()
	nErr := 0
	for {
		bx.Edit(&s, l, c)
		if x.Defined(s) {
			x.Write(l, c)
			return
			/*
			   var t uint
			   if kbd.LastCommand (&t) == kbd.LookFor && t == 0 {
			     if x.year == emptyYear { x.Copy (today) }
			     errh.Hint ("Datum ändern: Kursortasten, Datum auswählen: Enter, Eingabe stornieren: Esc")
			     loop: for {
			       cm, _:= kbd.Command ()
			       x.Change (cm, t)
			       x.Write (l, c)
			       switch cm { case kbd.Enter, kbd.Here:
			         errh.DelHint(); return
			       case kbd.Back, kbd.There:
			         errh.DelHint(); break loop
			       }
			     }
			   } else {
			     x.Write (l, c)
			     return
			   }
			*/
		} else {
			nErr++
			switch nErr {
			case 1:
				errh.ErrorPos("Die Eingabe stellt kein Datum dar!", 0, l+1, c)
			case 2:
				errh.ErrorPos("Das ist auch kein Datum!", 0, l+1, c)
			case 3:
				errh.ErrorPos("Jetzt passen Sie doch mal auf!", 0, l+1, c)
			case 4:
				errh.ErrorPos("Können Sie kein Datum eingeben?", 0, l+1, c)
			default:
				errh.ErrorPos("Was soll der Quatsch?", 0, l+1, c)
				x.Actualize()
				s = x.String()
			}
		}
	}
}
Example #2
0
func (x *Imp) Edit(l, c uint) {
	//
	x.Write(l, c)
	s := x.String()
	for {
		bx.Edit(&s, l, c)
		if x.Defined(s) {
			break
		} else {
			errh.ErrorPos("Eingabe falsch", 0, l+1, c)
		}
	}
	x.Write(l, c)
}
Example #3
0
func edit(x *float64, l, c uint) {
	//
	s := String(*x)
	p := uint(0)
	for {
		bx.Edit(&s, l, c)
		if !str.Contains(s, 'e', &p) && !str.Contains(s, 'E', &p) {
			*x = number(s)
			if !math.IsNaN(*x) {
				break
			}
		} else {
		}
		errh.ErrorPos("keine Zahl", 0, l+1, c)
	}
	Write(*x, l, c)
}