Библиотека EremexControls.NET для Avalonia UI — Обновление май-июнь 2024

Наконец это свершилось. Сегодня мы официально выпускаем первую версию наших контролов, которые получили немало важных изменений с момента публикации нашей предыдущей статьи.

Развитие линейки Chart-контролов

Новая версия библиотеки существенно расширяет возможности контролов для отображения графиков.

Были добавлены новые chart-контролы, а в CartesianChart (построение графиков в декартовой системе координат) появилась поддержка дополнительных серий данных.

PolarChart

Новый chart-контрол, который позволяет строить графики в полярных системах координат.

PolarChart

PolarChart

Основные функции включают:

  • Пометка уровней с помощью линий и полос (strips and constant lines)

  • Прицел (crosshair)

  • Направление и угол отсчета координат (sweep direction and start angle)

  • Поддержка MVVM-паттерна для задания данных и свойств элементов диаграммы

Серии данных:

  • Точечный график (PolarPointSeriesView)

  • Линейный график с сортировкой точек (PolarLineSeriesView)

  • Линейный график без сортировки точек (PolarScatterLineSeriesView)

  • Область (PolarAreaSeriesView)

  • Диапазон (PolarRangeAreaSeriesView)

SmithChart

Специализированный chart-контрол для построения графиков на диаграмме Смита.

SmithChart

SmithChart

Серии данных:

  • Точечный график (SmithPointSeriesView)

  • Линия рассеяния — линейный график без сортировки точек (SmithScatterLineSeriesView)

CartesianChart — Дополнительные серии данных

CartesianChart, о котором мы рассказывали в предыдущей статье, получил новые функции и новые серии данных.

CartesianChart - Подсветка уровней

CartesianChart — Подсветка уровней

CartesianChart - Столбчатая диаграмма

CartesianChart — Столбчатая диаграмма

  • Пометка уровней с помощью линий и полос (strips and constant lines)

  • Поддержка MVVM-паттерна.

Новые серии данных:

  • Точечный график (CartesianPointSeriesView)

  • Область (CartesianAreaSeriesView)

  • Линейный график без сортировки точек (CartesianScatterLineSeriesView)

  • Ступенчатый график (CartesianStepLineSeriesView)

  • Ступенчатые области (CartesianStepAreaSeriesView)

  • Диапазон областей (CartesianRangeAreaSeriesView)

  • Столбчатая диаграмма (CartesianSideBySideBarSeriesView)

  • Столбчатые диапазоны (CartesianSideBySideRangeBarSeriesView)

Темная тема

Все chart-контролы теперь автоматически умеют подстраивать свои цвета под темную тему оформления.

58f9d01f5832efa1a7c6154a11704264.png

Скачайте Демо-приложение, чтобы увидеть и протестировать все новые возможности chart-контролов.

Обновления в других контролах

Чтобы добавить в окно индикатор загрузки или показать прогресс операции, вы можете использовать наш новый контрол CircleProgressIndicator.

08f7ecf06ca68ba146d9292454ab620e.gif

  • Доступны опции для задания прогресса, минимального и максимального значений.

  • Вы можете выбрать заполнение индикатора с использованием анимации или без нее.

Другие контролы получили не столь значительные изменения. В основном они касаются появления нового и изменения существующего 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 при создании нового проекта.

e593c763b7c9fbcd5d76a4cde2b09ec4.png

Лицензирование

В библиотеку Eremex Controls был добавлен код для лицензирования продукта на основе решения от Guardant. Лицензия приобретается на 1 год на каждое рабочее место разработчика приложений. Она позволяет в течение этого срока создавать любое количество проектов с нашими контролами.

В случае, если лицензия не найдена, показывается триальное сообщение.

79d70e361727be3c17982f30937a6375.png

Также это сообщение будет выдаваться по окончании срока лицензии при создании новых приложений или изменении имени старого проекта.

Обновленное Демо-приложение

Обновленное Демо-приложение иллюстрирует не только новые возможности чарт-контролов. Были расширены модули и по другим контролам (Data Grid, Tree List и редакторы), чтобы показать дополнительные функции.

Надеемся, что вы найдете изменения в новой версии контролов полезными и поделитесь своими комментариями и пожеланиями.

Habrahabr.ru прочитано 2016 раз