Инструменты пользователя

Инструменты сайта


blackbox20

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
blackbox20 [2021/12/03 16:31]
iadenisov
blackbox20 [2023/01/09 22:08] (текущий)
iadenisov [Библиотекарь]
Строка 1: Строка 1:
-====== Информация по миграции на Блэкбокс 2.0 ======+====== Блэкбокс 2.0 ======
  
-HostCFrames -> WinCFrames 
  
-HostMenus -> MdiMenus+На данной странице находится перечень основных изменений системы Блэкбокс версии 2.0 от версии 1.7.2, а также некоторые рекомендации по адаптации программных кодов под новую версию.
  
 +===== Нововведения =====
  
-===== Преобразование HostBitmaps и HostPictures =====+==== Настойчивые действия ====
  
 +''Services.InsistentAction'' --- это подтип ''Services.Action'', который не блокируется при зажатии кнопок мыши.
  
 +==== Безопасные действия ====
 +
 +''Services.SafeAction''  --- это удобная высокоуровневая обёртка над ''Kernel.Try''. Возможно выполнить код, и узнать после, упал он или нет, в процессе выполнения. При этом работа каркаса не будет повреждена.
 +==== История операций не удаляется при сохранении файла ====
 +
 +Старое поведение возможно вернуть, установив константу ''StdCmds.clearSeqOnSave'' в ''TRUE''.
 +
 +==== Три уровня виртуальной файловой системы ====
 +
 +Кроме переменной окружения USE, теперь возможно использовать дополнительный промежуточный каталог CUSTOM.
 +
 +Таким образом существует три каталога: STANDARD, CUSTOM и USE. 
 +
 +Возможно получить их локаторы при обращении к Files, соответственно:
 +
 +<code>
 +loc := Files.dir.This("STANDARD:");
 +loc := Files.dir.This("CUSTOM:");
 +loc := Files.dir.This("");
 +</code>
 +
 +
 +==== Библиотекарь ====
 +
 +''StdLibrarian'' --- это новый инструмент для управления расположением исходников и артефактов компиляции. Библиотекарь определяет также правила разделения имени модуля на подсистему и имя файла модуля, а также определяет расширения файлов в системе для исходников и артефактов (кодовый, символьных файлов).
 +
 +
 +===== Миграция =====
 +
 +==== Получение пути локатора ====
 +
 +Для получения пути от локатора теперь есть платформенно-независимая команда. Теперь не требуется импортировать для этой задачи платформенную реализацию модуля Files.
 +
 +<code>
 +Dialog.GetLocPath(loc: Files.Locator; OUT path: ARRAY OF CHAR);
 +</code>
 +
 +
 +==== Закрыть диалоговое окно ====
 +
 +Вместо команды ''HostCmds.Close'' используйте ''StdCmds.CloseTopDialog''
 +
 +
 +==== Получить имя файла с добавкой стандартного расширения ====
 +
 +Вместо команды ''Kernel.MakeFileName'' используйте ''Files.dir.GetFileName''
 +
 +
 +
 +==== Получить название подсистемы и название файла из имени модуля ====
 +
 +Вместо команды ''Kernel.SplitName'' используйте ''StdLibrarian.SplitName''
 +
 +
 +==== Вместо StdDialog.GetSubLoc используйте StdLibrarian ====
 +
 +<code>
 +StdDialog.GetSubLoc(n, "Mod", loc, fname);
 +</code>
 +
 +стоит заменять на
 +<code>
 +StdLibrarian.GetSourceSpec(n, loc, fname, ftype);
 +Files.dir.GetFileName(fname, ftype, fname);
 +</code>
blackbox20.1638538308.txt.gz · Последнее изменение: 2021/12/03 16:31 — iadenisov