Jump to content

Recommended Posts

  • Administrators
Posted

Скачать:
Релиз доступен только по запросу.

Дата релиза:

19 января 2021


Потеря обратной совместимости 🚨

TfgCanvas

Теперь по умолчанию направление градиента слева-направо, а не сверху-вниз

TfgBottomSheetLayout

Мы пересмотрели модальный режим работы TfgBottomSheetLayout компонента и решили расширить возможности компонента. Для этого мы ввели две новые группы настроек: 

  • TfgBottomSheetLayout.ContentShadingSettings - настройки затемнения основной области содержимого TfgBottomSheetContent, позволяющие указать цвет и включить/выключить отображение затемнения.
  • TfgBottomSheetLayout.BlockContentMode - позволяет указать, когда нужно блокировать доступ к основному содержимому TfgBottomSheetContent.

При помощи этих настроек вы можете, как с легкостью настроить модальный режим, так и сделать комбинированный модальный режим при котором основное содержимое будет доступно в Collapsed режиме. Чтобы отобразить страницу в модальном режиме достаточно включить затемнение через TfgBottomSheetLayout.ContentShadingSettings.Enabled = True и блокирование через TfgBottomSheetLayout.BlockContentMode = WhenCollapsedOrExpanded.

Новое

TfgListMenu

Добавлено новое свойство TfgListMenu.Appearance, которое предназначено для настройки цветовой схемы элементов пунктов меню. Данная группа настроек не позволяет раскрасить в разные цвета все пункты меню, так как компонент следует концепции Material Design, где используется именно общая цветовая схема. Однако, теперь вы можете указать базовые цвета схемы и цвета для разделителя для обычного режима отображения пункта меню и выделенного, чего нельзя было делать ранее.

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

Решение данной проблемы теперь лаконично сделано через новую группу настроек Appearance.Icon, работающей по такому же принципу, как и аналогичное свойство у TfgButton. Здесь вы можете указать цвет иконки без и с выделением. В результате вам достаточно иметь всего лишь одну иконку в ресурсах данного базового размера для всех остальных мест.

Буфер обмена

Реализован новый кроссплатформенный сервис по работе с буфером обмена FGX.Clipboard.TfgClipboardService для Android и iOS. На текущий момент сервис позволяет работать только с текстом. Для ознакомления с работой сервиса доступен пример "Системные сервисы" -> "Текстовый  буфер обмена".

Замер размера текста

Добавлен метод TfgCanvas.MeasureText, позволяющий получить размер текста.

Прочее 

  • Раньше, использование не реализованных компонентов под iOS (TfgCalender, TfgVideoControl, TfgSearchEdit, TfgAutocompleteEdit), приводило к падению приложения. Теперь приложение не будет падать, а вместо компонентов будет отображаться заглушка с названием класса компонента.
  • Добавлены заголовочные файлы для iOS API: AVFoundation, CoreMedia и CoreVideo.

Улучшения 🙌

Темы

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

Теперь мы всегда отображаем название ресурса, используемого по умолчанию у свойства даже если ресурса нет, если другое не указано. Мы решили, что это облегчит понимание какие ресурсы использует компонент по умолчанию.

Прочее 

  • Добавлены новые два ресурса цвета для темы: "On Surface" и "On Background" - это контрастные цвета, предназначенные для использования отображения элементах, использующих цвета "Surface" или "Background". Чтобы получить данные цвета, достаточно заново сгенерировать тему в дизайнере ресурсов.
  • Добавили дополнительные хелперы для типа TAlphaColor (см. FGX.Types.Color), позволяющие работать с компонентами цвета, выполнять базовые преобразования альфа канала и т.д.
  • Оптимизация использования шрифтов для рисования на холсте TfgCanvas.FillText (Android).

Исправление ошибок 🐛

TfgCanvas

  • TfgArch with SweepAngle 360 not drawing properly (iOS).
  • Исправлено рисование градиентной кистью TfgCanvas.Fill и градиентным пером TfgCanvas.Draw (Android).
  • Исправлено рисование точек пером TfgCanvas.DrawPoints(s) (Android).
  • Исправлено рисование дуги пером TfgCanvas.DrawArc (Android).
  • Исправлена заливка полигона TfgCanvas.FillPolygon (Android).
  • Исправлено рисование дуги являющейся частью TfgCanvas.TfgPath (Android).
  • Исправлено положение рисования текста на холсте TfgCanvas.FillText (iOS).

Прочее

  • Компоненты TfgArch и TfgArc неверно отображали круглое состояние при IsCircle=True, если высота компонента была больше, чем ширина.
  • Поправили декларации всех внешних процедур и функции iOS API.
  • Исправлены задержки в выравнивании компонентов (iOS).
  • Теперь после создания формы она имеет корректные размеры (iOS).
  • Исправлена ошибка распаковки файла ресурсов (iOS).
  • При указании фиксированного размера иконки в кнопке через Appearance.Icon.Size, неверно центрировалась иконка (Android).
  • Событие TfgListMenu.OnTapItem могло иногда не работать (iOS).
  • Событие TfgTrackBar.OnChanging не работало (iOS).
  • Теперь событие TfgTrackBar.OnChanging не вызывается, если ContinuesUpdates = False (Android).
  • Открытие формы с TfgForm.IsTransparen = True приводило к падению приложения (iOS).
  • Like 5
  • Thanks 3
×
×
  • Create New...