Dopo tre anni di sviluppo, è stato pubblicato il rilascio dell'ambiente di sviluppo integrato Lazarus 2.2, basato sul compilatore FreePascal e in grado di eseguire compiti simili a Delphi. L'ambiente è progettato per funzionare con la versione 3.2.2 del compilatore FreePascal. I pacchetti di installazione pronti per Lazarus sono disponibili per Linux, macOS e Windows.
Tra le novità della nuova versione:
- Il set di widget Qt5 supporta completamente OpenGL.
- Sono stati aggiunti pulsanti per ridurre al minimo i pannelli ancorati. Sono migliorati il supporto HighDPI e sono state aggiunte modalità per pannelli con schede multilinea («Multiline Tabs») e finestre fluttuanti in cima («Floating windows on top»).
- È stato incluso un nuovo plugin Spotter per la ricerca di comandi nell'IDE.
- È stato aggiunto il pacchetto DockedFormEditor con un nuovo editor di form, che sostituisce Sparta_DockedFormEditor.
- È migliorato il formattazione del codice Jedi e aggiunto il supporto per la maggior parte della sintassi dell'Object Pascal moderno.
- Il toolkit Codetools ora supporta le funzioni anonime.
- È stata implementata una pagina iniziale opzionale, dove è possibile scegliere il tipo di progetto da creare.
- Sono state migliorate le interfacce per l'ispezione di oggetti e progetti.
- Nel codice editor sono state aggiunte le scorciatoie da tastiera per la sostituzione, duplicazione, copia e spostamento di righe e aree selezionate.
- Le estensioni per i file di traduzione generali principali (modelli) sono state cambiate da .po a .pot. Ad esempio, il file lazaruside.ru.po rimane invariato, mentre lazaruside.po è stato rinominato in lazaruside.pot, facilitando la sua gestione nei programmatori file PO come modello per nuove traduzioni.
- Per le nuove installazioni su Windows e Linux, il debugger LazDebugger-FP (FpDebug) 1.0 è ora abilitato per impostazione predefinita.
- I componenti per il rendering dei caratteri Freetype sono stati trasferiti in un pacchetto separato "components/freetype/freetypelaz.lpk".
- Il componente PasWStr è stato rimosso a causa della presenza di codice compilabile solo nelle versioni precedenti di FreePascal.
- Ottimizzata la registrazione dei componenti interni e il loro legame con i widget attraverso la chiamata TLCLComponent.NewInstance.
- Aggiornata la libreria libQt5Pas e migliorato il supporto per i widget basati su Qt5. Aggiunto il widget QLCLOpenGLWidget, che offre supporto completo per OpenGL.
- Migliorata la precisione della selezione delle dimensioni delle finestre sui sistemi X11, Windows e macOS.
- Sono state ampliate le funzionalità o modificato il comportamento dei componenti TAChart, TSpinEditEx, TFloatSpinEditEx, TLazIntfImage, TValueListEditor, TShellTreeView, TMaskEdit, TGroupBox, TRadioGroup, TCheckGroup, TFrame, TListBox e TShellListView.
- Aggiunti i richiami per la modifica temporanea del cursore: BeginTempCursor / EndTempCursor, BeginWaitCursor / EndWaitCursor e BeginScreenCursor / EndScreenCursor, utilizzabili senza un'impostazione diretta del cursore tramite Screen.Cursor.
- Introdotto un meccanismo per disabilitare l'elaborazione dei set di maschere (interrompendo l'interpretazione di ‘[’ come inizio di un set nella maschera), attivabile tramite l'impostazione moDisableSets. Ad esempio, «MatchesMask(‘[x]’, '[x]', [moDisableSets])» nel nuovo modo restituirà True.


Fonte: opennet.ru
