Home | Informazioni | Community | Sviluppo | myReactOS | Contattaci
|
Community > ReactOS Newsletter Archive > ReactOS Newsletter: newsletter_64newsletter_64by Z98 on 2009-09-15 Colore e riempimentoI puntatori colorati non sono una caratteristica molto usata dalle normali applicazioni, mentre i giochi ne fanno uso certamente, Winamp è un esempio di programma non-gioco che li usa. Mentre usava Winamp, Gregor Schneider aveva notato che il puntatore diventava un quadrato nero e quindi aveva deciso di scavare nel codice per vedere se lo poteva sistemare. C'erano commenti in diverse parti denotando il bisogno per il supporto ai puntatori colorati, Gregor aveva delle idee di dove bisognava aggiungere del codice. Fortunatamente la maggior parte del lavoro è stato semplice e sono bastate le modifiche ai parametri delle funzioni assieme all'uso di una superficie colorata per avere le funzionalità di base. Tuttavia, c'erano ancora dei problemi nel codice sottostante nel sottosistema Win32 e la maggior parte era commentata. Adesso compare il puntatore ma c'è un quadrato nero attorno. Mentre Gregor lavorava su questo, Timo Kreuzer aveva deciso di dare un'occhiata ai problemi dell'applicazione Paint di Benedikt Freisen. Mentre Paint si vede e funziona ottimamente in Windows, Timo considerava che si vedeva orribile in ReactOS. Uno dei motivi era il puntatore colorato, quindi ha sistemato i problemi nel motore grafico. La funzione chiave è SetPointerShape, di cui c'è una versione Drv e una Eng dipendendo dal fatto che il driver grafico supporti la funzione oppure richieda che il motore grafico di Windows la gestisca. Comunque sia, la funzione riceve due bitmap, la seconda contenente l'informazione di colore per disegnare il puntatore. Questa seconda bitmap era ignorata nel codice originariamente, ma Timo ha aggiunto la funzionalità necessaria per farla funzionare. Il prossimo item nella lista è la gestione dell'alphablending. Paint aveva messo in evidenza un'altra questione sulla quale ha lavorato Gregor. Nell'usare Paint, aveva visto che il suo tool preferito, il secchio per riempire, non funzionava. Indagando, aveva trovato che la funzionalità di riempimento per inondazione era incompleta. La maggior parte del codice era al suo posto, anche l'intera catena di chiamate di funzioni che facevano il riempimento, eccetto per l'ultimo set che faceva effettivamente il disegno. Gregor ha creato un'implementazione molto semplicistica e l'ha ottimizzata fino a che la sua performance è stata ragionevole per l'uso. topDelay ImportLe librerie a collegamento dinamico si usano per condividere codice e funzionalità tra applicazioni senza dover duplicare funzionalità in ogni applicazione. Così facendo si risparmia memoria poiché una singola istanza della libreria si carica in memoria per essere utilizzata da diverse applicazioni. Nello stesso tempo, il caricamento iniziale della libreria può richiedere qualche tempo e potrebbe anche ritardare l'avvio dell'applicazione. Un modo per evitare questo ritardo è rimandare il caricamento della libreria fino a che non è effettivamente necessario, presumibilmente dopo che l'applicazione si è avviata. A questo scopo serve la delay import, sfortunatamente il supporto per la stessa non era implementato in dlltool, quindi Timo Kreuzer l'ha aggiunto. L'implementazione in sé è stata semplice, anche se Timo ha faticato a trovare un ambiente di build per dlltool. La patch è stata mandata agli sviluppatori originali, quindi se tutto va bene ne dovrebbero beneficiare altre persone, il team di mingw x64 ha manifestato il proprio interesse in questa patch. Il porting dovrebbe essere abbastanza semplice secondo Timo. topDatabase di compatibilitàDopo essere stato abbandonato per diversi anni, Danny Götte ha riscritto sia l'interfaccia frontend che il backend del layout del database, rendendo più facile la creazione e modifica di voci. Al momento il database si vede molto meglio che in passato e dal lancio, Danny ha continuato a ripulirlo basandosi sul feedback degli utenti. L'ultima intenzione è che il database abbia anche voci hardware, sostituendo la lista ad-hoc nella wiki. Siete tutti invitati a testarlo per vedere come funziona. Più voci ci saranno, più sarà facile per la gente vedere cosa funziona e cosa non funziona in ReactOS. topVincitore del design per il sito WebComplimenti a Shek-Yu Leung, conosciuto anche come numpy nel forum. I suoi disegni si sono evoluti nel corso di quattro presentazioni e l'ultima è stata considerata la migliore dai giudici. In genere le presentazioni variavano da semplici cambiamenti di disposizione del layout attuale e dello stile fino a skin completamente nuovi e scambio degli schemi di colori. Ci sono stati dei layout creativi che potrebbero servire come ispirazione per il refresh finale del sito, ma quello di Leung è stato uno dei pochi che ha combinato un refresh visuale con idee interessanti per una nuova pagina frontale. Il team di ReactOS team ringrazia tutti i partecipanti per i loro sforzi.
top |