culmer@grad1.cis.upenn.edu (06/19/89)
I have some questions and problems as a result of trying to write some
simple data entry screens. I have a model 3000, version 9.7 Aegis, and
version 9.5 Domain/IX.
(1) I can't make the thing beep consistently. I wrote the following
little program:
main()
{
char c;
while((c = getchar()) == '\n')
printf("%c", (char) 7);
}
This should beep every time I hit return, right? But it beeps 10 or so
times, then doesn't beep 10 or so times, then beeps, and so on. I don't
understand. It doesn't sound like a bad beeper.
(2) I want to be able to use the mouse to jump to different fields on
the screen. That means I have to create a frame, right?
I'm using pad_$cpr_enable to get cursor position reports when the mouse
stops moving. When the arrow turns into a block cursor, I want it to be
positioned in a line and a column, but it's not. It happily straddles
two lines. I don't know whether I should have to feed the position back
into pad_$move. I do it, but it doesn't solve the problem.
(3) The inverse video font behaved strangely.
I wanted to print a field of 20 spaces at position (10, 10) with inverse
video font. I don't remember the precise syntax, but I did the following
after loading and using the inverse font:
pad_$move(..., 10, 10, ...) go to 10, 10
pad_$put_rec(..., &space_array, ...) print spaces
pad_$move(..., 10, 10, ...) go to 10, 10
pad_$get_rec(..., &c, ...) get character from keyboard
pad_$put_rec(..., &c, ...) print character from keyboard
When I print the input character at (10, 10), its inverse video box comes
out one pixel lower than the box for the space that was there before. Am
I doing something wrong? It seems to me that the cursor should end up in
the same place each time I move it to (10, 10).
(4) Is X Windows similar to this pad stuff?
Thanks.
Charles W. Culmer
culmer@grad1.cis.upenn.edu Truth, justice, and the Canadian way