Con l’arrivo sul mercato di Windows XP, la Microsoft ha introdotto una nuova versione delle common control library, la vecchia libreria è rimasta comunque disponibile per compatibilità, inoltre un software che gira sotto Windows XP può scegliere quale libreria utilizzare.
La principale novità della nuova common control library è che i controlli a video si adattano al tema corrente scelto dall’utente e la scelta non è affidata ad un motore fisso.
La VCL supporta i temi di Windows XP grazie ad un esteso lavoro di modifica del codice interno ed alla libreria di supporto sviluppata originariamente da Mike Lischke.
Le applicazioni sviluppate in Delphi, di default, mostrano un interfaccia tradizionale del sistema operativo. Per supportare i temi di Windows XP quindi è necessario includere nel programma un manifest, cioè un manifesto, tale inserimento è possibile farlo in tre modi:
- Primo modo: inserendo un file manifest nella stessa directory dell’applicazione, tale file non è altro che un file XML che identifica il programma e ne riporta le dipendenze. Il manifest deve avere lo stesso nome dell’eseguibile con il suffisso .manifest.
- Secondo modo: inserendo le stesse informazioni ad un file di risorse compilato nell’applicazione; quindi necessita scrivere un file di risorse che includa un file manifest. Nella VCL esiste già un file precompilato di nome WindowsXP.res, file che può essere riottenuto ricompilando WindowsXP.rc.
- Terzo modo: selezionando e posizionando il componente XPManifest presente nella palette degli strumenti di Delphi, in realtà il componente non fa nulla di particolare ma nel momento in cui viene posizionato su una form, inserisce a sua volta fra le uses la unit XPMan la quale importa sotto forma di risorsa il file. Cosa molto importante, nel caso in cui si desidera disabilitare l’utilizzo dei temi di Windows, oltre che eliminare dalla form il componente XPManifest, deve essere eliminata manualmente dalla clausola uses la unit XPMan.
