next up previous contents
Next: Programowanie modemu Up: Programowanie portów We/Wy Previous: Programowanie portów We/Wy   Contents

Programowanie myszki

Myszka podłączona jest do portu szeregowego lub bezpośrednio do szyny AT, do tego różne typy myszek wysyłają różne typy danych co powoduje, iż zaprogramowanie myszki jest nieco trudniejsze. Andrew Haylett był tak miły i nadał takie copyright swojemu programowi selection, iż możesz użyć jego funkcji w swoim programie. Programując dla X11 nie musisz go używać, gdyż środowisko to dostarcza wygodnego API myszki.
Potrzebujesz tylko modułów mouse.c i mouse.h z pakietu selection Aby odebrać zdarzenia z myszki musisz wywołać ms_init() i get_ms_event(). ms_init wymaga następujących 10 argumentów:
1.
int acceleration
współczynnik akceleracji. Jeżeli przesuniesz muszkę więcej niż delta pixeli ruch stanie się szybszy zależnie od tej wartości.
2.
int baud
prędkość w bps z jaką pracuje myszka ( normalnie 1200 ).
3.
int delta
ilość pixeli o ile należy przesunąć myszkę zanim zostanie włączona akceleracja .
4.
char *device
nazwa urządzenia myszki ( np.: /dev/mouse ).
5.
int toggle
włącza DTR, RTS lub oba jednocześnie podczas inicjalizacji ( normalnie 0 ).
6.
int sample
rozdzielczość ( dpi ) myszki ( normalnie 100 ).
7.
mouse_type mouse
identyfikator podłączonej myszy, np. P_MSC (Mouse Systems Corp.) dla mojej myszki ;).
8.
int slack
amount of slack for wraparound which means if slack is -1 a try to move the mouse over the screen border will leave the mouse at the border. Values >= 0 mean that the mouse cursor will wrap to the other end after moving the mouse slack pixels against the border.
9.
int maxx
rozdzielczość x terminala. Przy domyślnej czcionce znak ma 10 pixeli szerokości co daje nam rozdzielczość 10*80-1.
10.
int maxy
rozdzielczość y terminala. Przy domyślnej czcionce znak ma 12 pixeli wysokości co daje nam rozdzielczość 12*25-1.
get_ms_event() potrzebuje tylko wskaźnika do struktury ms_event. Jeżeli get_ms_event() zwróci -1 - nastąpił błąd. Zero oznacza sukces, a struktura ms_event zawiera aktualny stan myszki.


next up previous contents
Next: Programowanie modemu Up: Programowanie portów We/Wy Previous: Programowanie portów We/Wy   Contents

2000-03-01


Poltronic