XP od podszewki

Windows XP to nie tylko powierzchowne zmiany interfejsu, ale także spore modyfikacje mechanizmów działających wewnątrz systemu.

Windows XP to nie tylko powierzchowne zmiany interfejsu, ale także spore modyfikacje mechanizmów działających wewnątrz systemu.

W organizacji interfejsu użytkownika Windows XP zaszły daleko idące zmiany. Wprowadzono mechanizm definiowania stylów graficznych. W znacznie większym stopniu niż w poprzednich wersjach Windows można konfigurować wygląd okien. Oznacza to konieczność dużych zmian w kodzie programów. Umiejętne zaprojektowanie interfejsu stało się jeszcze trudniejsze.

Wszystkie aplikacje w Windows mają 2 obszary robocze: obszar kliencki i ramkę. Domyślnie dla każdej aplikacji styl graficzny określa tylko wygląd ramki (paska tytułowego, menu systemowego, pasków przewijania). Aby zmieniać pozostałe elementy okna, należy zastosować szóstą wersję kontrolki comctl32.dll, zawierającą standardowe elementy interfejsu Windows. Nie jest to jednak kontrolka, którą można dystrybuować wraz z aplikacją! Domyślnie programy używają starszej wersji kontrolki. Aby w pełni skorzystać ze stylów graficznych, konieczne jest dodanie do aplikacji manifestu wskazującego, iż program ma zastosować najnowszy plik comctl32.dll.

Theme API to zestaw funkcji, pozwalających na tworzenie kontrolek, które będą mogły wykorzystywać definicje interfejsu użytkownika zawarte w "globalnym" stylu graficznym. Są to funkcje, które odczytują bieżące ustawienie tła czy wielkości ikon. Definicja nie jest plikiem XML, strukturą raczej przypomina stare pliki INI.

Chyba po raz pierwszy Microsoft jeszcze przed oficjalną premierą systemu udostępnił dokładną specyfikację, dzięki której jest możliwe zachowanie "wizualnej" zgodności z XP. Ikony w Windows XP mogą mieć kolor 32-bitowy i rozmiar do 48 x 48 pikseli. Są również zdefiniowane ustawienia, w wyniku czego ikony pasują do trójwymiarowego wyglądu XP.

Nowe interfejsy programistyczne

Do XP dodano API, ułatwiające implementację transmisji danych "w tle". Dotychczas programista musiał korzystać z wyrafinowanych mechanizmów typu MSMQ lub samodzielnie implementować protokół typu P2P nawet w najprostszych programach. Background Intelligent Transfer Service (BITS) to miniserwer, zapewniający obsługę kolejki. Do niej można dodać zadanie kopiowania np. pliku, BITS zajmie się przekazaniem tej informacji, a do programu zostanie przekazana informacja, czy plik dostarczono.

GDI+ to następca GDI, centralnego API obsługującego grafikę użytkową w Windows. Udostępnia kilka nowych funkcji do rysowania prymitywów (m.in. cieniowanych pędzli). Warto podkreślić, że w XP można tworzyć globalne (stałe) definicje ścieżek i definiować macierze transformacji. Zastosowanie mechanizmu podobnego do tego z DirectX pozwoliło na odciążenie programisty przy skalowaniu okien. Możliwe jest także dołączanie do obiektów graficznych metadanych i wykorzystywanie ich przy innych operacjach. GDI+ to tak naprawdę dwa API. Pierwszy, dostosowany do języka C, jest kompatybilny z kodem wykorzystującym GDI. Drugi to propozycja API dostosowanego do C++, który można obsługiwać, tak jak inne instancje obiektu C++.

Winsock 2.0 w Windows XP obsługuje zarówno protokół Ipv4, jak i IPv6. Dotychczasowe aplikacje, które obsługują tylko 4-bajtowe adresy IP, będą oczywiście działały. W pakiecie SDK istnieją jednak spec-jalna aplikacja i zestaw makr, które ułatwiają migrację kodu tak, by obsługiwał adresy 4- i 6-bajtowe. W XP ma być wbudowana obsługa SOAP (zgodna z SOAP SDK 2.0), co w dużym stopniu uprości wykorzystanie usług Web. Obsługiwany jest także język opisu usług (WSDL).

Text Services Framework to API, obsługujące komunikację w języku naturalnym. Jest mechanizmem, który pozwala dołączyć do systemu operacyjnego rozpoznawanie mowy i pisma. Dostępne są dwa główne typy "ram". Jedna dostosowana do aplikacji typu edytor tekstu. Druga, znacznie bardziej rozbudowana, zawiera mechanizmy obsługi elementów hierarchicznych, np. eksploratora plików lub przeglądarki WWW.

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200