После трёх лет разработки опубликован релиз интегрированной среды разработки Lazarus 2.2, основанной на компиляторе FreePascal и выполняющей задачи, сходные с Delphi. Среда рассчитана на работу с выпуском компилятора FreePascal 3.2.2. Готовые установочные пакеты с Lazarus подготовлены для Linux, macOS и Windows.
Среди изменений в новом выпуске:
- В наборе виджетов Qt5 реализована полная поддержка OpenGL.
- Добавлены кнопки для сворачивания закреплённых панелей.
Улучшена поддержка HighDPI. Добавлены режимы панелей на базе многострочных вкладок (“Multiline Tabs”) и неперекрываемых окон (“Floating windows on top”). - В состав включено новое дополнение Spotter для поиска команд IDE.
- Добавлен пакет DockedFormEditor с новым редактором форм, заменившим Sparta_DockedFormEditor.
- Улучшена поддержка формата Jedi и добавлена поддержка большей части синтаксиса современного Object Pascal.
- В инструментарий Codetools добавлена поддержка анонимных функций.
- Реализована опциональная стартовая страница, на которой можно выбрать тип создаваемого проекта.
- Улучшены интерфейсы инспектирования объектов и проектов.
- В редактор кода добавлены горячие клавиши для замены, дублирования, копирования и перемещения строк и выделенных областей.
- Расширения для файлов с переводами изменены с .po на .pot.
- По умолчанию для новых установок в Windows и Linux теперь включается отладчик LazDebugger-FP (FpDebug) 1.0.
- Компоненты для отрисовки шрифтов Freetype перенесены в отдельный пакет “components/freetype/freetypelaz.lpk”
- Удалён компонент PasWStr из-за наличия кода, собираемого только в старых верcиях FreePascal.
- Оптимизирована регистрация внутренних компонентов и их привязка к виджетам через вызов TLCLComponent.NewInstance.
- Обновлена библиотека libQt5Pas и улучшена поддержка виджетов на базе Qt5. Добавлен вижет QLCLOpenGLWidget, обеспечивающий полную поддержку OpenGL.
- Повышена точность выбора размеров форм на системах X11, Windows и macOS.
- Расширены возможности или изменено поведение компонентов TAChart, TSpinEditEx, TFloatSpinEditEx, TLazIntfImage,
TValueListEditor, TShellTreeView, TMaskEdit, TGroupBox, TRadioGroup, TCheckGroup, TFrame, TListBox и TShellListView. - Добавлены вызовы для временного изменения курсора BeginTempCursor / EndTempCursor, BeginWaitCursor / EndWaitCursor и BeginScreenCursor / EndScreenCursor, которые можно использовать без прямой установки курсора через Screen.Cursor.
- Добавлен механизм для отключения обработки наборов масок (прекращение интерпретации ‘[‘ как начала набора в маске), активируемый через настройку moDisableSets. Например, “MatchesMask(‘[x]’,'[x]’,[moDisableSets])” в новом режиме вернёт True.
Release.
Ссылка here.