GDI, mysz, menu
Wersja C
Program rysujący tło i figurę geometryczną.
- Zawartość obszaru roboczego okna:
- tło wypełnione płynnym przejściem pomiędzy dwoma aktualnie wybranymi
kolorami od lewego do prawego brzegu okna
- narysowana figura
- zapamiętywać tylko ostatnio narysowaną figurę
- po odświeżeniu zawartości okna tło i co najwyżej jedna (ostatnio
narysowana) figura powinny zostać odrysowane
- Schemat rysowania figury
- przyciśnięcie lewego przycisku myszy - rozpoczęcie rysowania figury
z jednym rogiem zaczepionym w punkcie przyciśnięcia
- poruszanie myszą z naciśniętym lewym przyciskiem myszy - rysowanie
konturu figury (z wykorzystaniem XOR)
- nie tracić kontroli nad myszą po wyjściu kursora poza obszar
okna
- dzięki wykorzystaniu XOR rysowanie musi być szybkie i nie
może powodować mrugania
- sterowanie aktualnym położeniem i rozmiarem konturu:
- jeśli prawy przycisk myszy jest naciśnięty - przenoszenie
konturu zgodnie z ruchami myszy (jest to jedyny sposób zmiany
położenia rogu wyznaczonego przez punkt naciśnięcia lewego przycisku
myszy)
- jeśli prawy przycisk myszy nie jest naciśnięty - zmiana rozmiaru
konturu poprzez zmianę położenia przeciwległego rogu prostokątnego
otoczenia figury
- jeden róg prostokątnego otoczenia figury powinien być zawsze
w aktualnym położeniu kursora myszy
- zwolnienie przycisku myszy - zatwierdzenie figury - zamiast konturu
powinna się pojawić figura narysowana według aktualnych ustawień
- Możliwość zmiany aktualnych ustawień w menu:
- kolor lewego i prawego brzegu płynnego wypełnienia tła (czarny,
czerwony, zielony, niebieski)
- wzór wypełnienia figury (dowolnie wybrane trzy różne standardowo
dostępne style)
- figura (prostokąt, elipsa, prostokąt z zaokrąglonymi rogami)
- grubość pióra (1, 3, 5, 7)
- styl pióra (dowolnie wybrane trzy różne standardowo dostępne style)
- aktualnie wybrane ustawienia powinny być zaznaczone w menu
- zmiana ustawień powinna spowodować odrysowanie zawartości okna
z uwzględniem nowych ustawień
- figura zawsze powinna być rysowana z wykorzystaniem tylko dwóch
kolorów - białego i czarnego