Библиотека EremexControls.NET для Avalonia UI — Обновление май-июнь 2024
Наконец это свершилось. Сегодня мы официально выпускаем первую версию наших контролов, которые получили немало важных изменений с момента публикации нашей предыдущей статьи.
Развитие линейки Chart-контролов
Новая версия библиотеки существенно расширяет возможности контролов для отображения графиков.
Были добавлены новые chart-контролы, а в CartesianChart (построение графиков в декартовой системе координат) появилась поддержка дополнительных серий данных.
PolarChart
Новый chart-контрол, который позволяет строить графики в полярных системах координат.
PolarChart
Основные функции включают:
Пометка уровней с помощью линий и полос (strips and constant lines)
Прицел (crosshair)
Направление и угол отсчета координат (sweep direction and start angle)
Поддержка MVVM-паттерна для задания данных и свойств элементов диаграммы
Серии данных:
Точечный график (PolarPointSeriesView)
Линейный график с сортировкой точек (PolarLineSeriesView)
Линейный график без сортировки точек (PolarScatterLineSeriesView)
Область (PolarAreaSeriesView)
Диапазон (PolarRangeAreaSeriesView)
SmithChart
Специализированный chart-контрол для построения графиков на диаграмме Смита.
SmithChart
Серии данных:
Точечный график (SmithPointSeriesView)
Линия рассеяния — линейный график без сортировки точек (SmithScatterLineSeriesView)
CartesianChart — Дополнительные серии данных
CartesianChart, о котором мы рассказывали в предыдущей статье, получил новые функции и новые серии данных.
CartesianChart — Подсветка уровней
CartesianChart — Столбчатая диаграмма
Пометка уровней с помощью линий и полос (strips and constant lines)
Поддержка MVVM-паттерна.
Новые серии данных:
Точечный график (CartesianPointSeriesView)
Область (CartesianAreaSeriesView)
Линейный график без сортировки точек (CartesianScatterLineSeriesView)
Ступенчатый график (CartesianStepLineSeriesView)
Ступенчатые области (CartesianStepAreaSeriesView)
Диапазон областей (CartesianRangeAreaSeriesView)
Столбчатая диаграмма (CartesianSideBySideBarSeriesView)
Столбчатые диапазоны (CartesianSideBySideRangeBarSeriesView)
Темная тема
Все chart-контролы теперь автоматически умеют подстраивать свои цвета под темную тему оформления.
Скачайте Демо-приложение, чтобы увидеть и протестировать все новые возможности chart-контролов.
Обновления в других контролах
Чтобы добавить в окно индикатор загрузки или показать прогресс операции, вы можете использовать наш новый контрол CircleProgressIndicator
.
Доступны опции для задания прогресса, минимального и максимального значений.
Вы можете выбрать заполнение индикатора с использованием анимации или без нее.
Другие контролы получили не столь значительные изменения. В основном они касаются появления нового и изменения существующего API. Более подробную информацию мы собрали на страничке нашей документации: Version 1.0
Визуальная тема
В одной из предыдущих статей говорилось про единую дизайн-систему для оформления контролов Eremex. В этом релизе мы решили создать отдельную библиотеку с данной визуальной темой и назвали ее DeltaDesign
. Как можно догадаться, название было дано в честь САПР Delta Design, графический интерфейс которой в значительной степени базируется на библиотеке Eremex Controls.
Выделение темы в отдельную библиотеку позволит вам ее изменить в соответствии с вашими требованиями и создать новую подключаемую тему оформления.
Исходный код визуальной темы DeltaDesign
будет в свободном доступе. А в дальнейшем мы планируем создать примеры, показывающие возможности по модификации визуальной темы.
NuGet пакеты
Теперь последняя версия пакетов с нашими контролами, темой и шаблонами доступна на сайте nuget.org.
— Eremex.Avalonia.Controls
— Основной пакет, который содержит все контролы Eremex для Avalonia UI, включая редакторы, гриды и чарты.
— Eremex.Avalonia.Themes.DeltaDesign
— Библиотека с подключаемой темой оформления DeltaDesign
для наших контролов.
— Eremex.Avalonia.Templates
— Пакет с шаблонами, которые позволяют легко создавать новые Avalonia-приложения с нашими контролами.
Все наши пакеты и библиотеки подписываются, что позволяет проверить подлинность и целостность сборок.
Шаблоны новых проектов
Пакет Eremex.Avalonia.Templates позволит вам установить шаблоны для быстрого создания Avalonia-приложений на основе библиотеки Eremex Controls.
После установки пакета с помощью команды:
dotnet new install Eremex.Avalonia.Templates
будут доступны шаблоны для создания новых проектов и модулей:
Eremex Avalonia .NET App (eremex.avalonia.app) — Создает новое Avalonia-приложение и подключает последнюю версию наших контролов. В качестве окна используется класс MxWindow, который поддерживает темирование заголовка и бордюра окна. Шаблон также добавляет код для регистрации темы
DeltaDesign
.Eremex Avalonia .NET MVVM App (eremex.avalonia.mvvm) — Создает новое Avalonia-приложение на основе паттерна MVVM, выделяя классы Window (View) и ViewModel. В остальном действие шаблона схоже с предыдущим.
Eremex Avalonia Window (eremex.avalonia.window) — Создает темированное окно на основе объекта MxWindow.
Чтобы создать новое приложение на основе шаблона, можно выполнить команду:
dotnet new eremex.avalonia.mvvm -n AvaloniaApplication1
Или можно найти нужный шаблон в Visual Studio при создании нового проекта.
Лицензирование
В библиотеку Eremex Controls был добавлен код для лицензирования продукта на основе решения от Guardant. Лицензия приобретается на 1 год на каждое рабочее место разработчика приложений. Она позволяет в течение этого срока создавать любое количество проектов с нашими контролами.
В случае, если лицензия не найдена, показывается триальное сообщение.
Также это сообщение будет выдаваться по окончании срока лицензии при создании новых приложений или изменении имени старого проекта.
Обновленное Демо-приложение
Обновленное Демо-приложение иллюстрирует не только новые возможности чарт-контролов. Были расширены модули и по другим контролам (Data Grid, Tree List и редакторы), чтобы показать дополнительные функции.
Надеемся, что вы найдете изменения в новой версии контролов полезными и поделитесь своими комментариями и пожеланиями.