From OpenSCADAWiki
< Documents | Release 0.8.0
Это обновление является последним обновлением релиза 0.8 LTS, которое предусматривается в основном как переходное для обновления до 0.9 LTS. Исправлено около 30 ошибок и добавлены некоторые улучшения, которые целиком вы можете почитать в протоколе изменений обновления.
API
!!!!:Изменения:
- SYS.*: Унифицирована помощь по командной строке в функции optDescr() для получения иерархической помощи в строку и дальнейшей её печати в одном месте функции TSYS::load_().
- DAQ.JavaLikeCalc: Функция String.toInt() пользовательского API установлена в основание "10", по умолчанию.
- UI.{VCAEngine,Vision}: Определение "quittance" переименовано в "quietance", от слова "тихо (quiet)", что логично для нарушений, и пользовательское API оставлено совместимым. Перенесена реализация видов "Загрузка", "Сохранение", "Меню" вида "Кнопка" примитива "FormEl" и атрибут "checkable" переименован в "mode"!
- TFunction,TPrmTmpl,DAQ.JavaLikeCalc.FLib: Некоторые свойства интерфейса управления (ID, NAME, DESCR) установлены связанными с конфигурацией БД.
Дополнения:
- SYS:
- Добавлена функция cmdOptPresent() и использована исключительно для проверки наличия параметра.
- DB.DBF,Archive.FSArch,UI.Vision: Добавлен общий контроль за правами создаваемых OpenSCADA файлов, параметром командной строки "--permCrtFiles" и функцией TSYS::permCrtFiles().
- TRegExp: Перенесена реализация признака UTF8, по умолчанию не установлена. Добавлен атрибут "err" к результату массива запроса match().
- Добавлены виртуальные функции TSubSYS::optDescr() и TModule::optDescr() для унификации помощи по командной строке.
- Общие метки дополнены категориями сообщений в функции TMess::labMessCat().
- DAQ.JavaLikeCalc: API пользователя расширено функциями приведения {Boolean,Integer,Real}.{toReal,toInt}().
SYS
- *: Большинство оригинальных сообщений отревизированы и улучшены. Отревизированы все сообщения помощи для командной строки библиотеки ядра и модулей OpenSCADA, на предмет оригинальных текстов и их перевода на Украинский, Российский и Немецкий. "Библиотека шаблона" переименована в "Библиотеки шаблону", "Архивы" переименованы в "Архивы-История", "ID" переименован в "Идентификатор".
- TCntrNode: В качестве таймаута отключения/отсоединения узлов использован стандартный STD_WAIT_TM(10) и при выходе он устанавливается в STD_WAIT_TM*5, вместо DEF_TIMEOUT.
- Добавлен новый аргумент командной строки --consoleCharSet для контроля кодирования консоли, в сообщениях и помощи.
- Добавлен аргумент командной строки --modDir, как копия параметра конфигурационного файла "ModDir".
БД
- {SQLite,MySQL,PostgreSQL,FireBird}: Добавлено создание колонки перевода во время исправления таблицы, для уже частично переведенных таблиц в не многоязыковом режиме.
DAQ
- {TPrmTempl,JavaLikeCalc}: Завершена и проверена реализация класса TPrmTempl::Impl, унификацией использования DAQ шаблонов.
- SNMP: Расширен контролем ошибок подключений на уровне параметра.
Архивы-История
- Копирование объектов архиваторов защищено от копирования поля "ADDR", защищено от запуска и исправлено копирование дополнительных свойств.
- Исправлена загрузка архиваторов по отсутствию некоторых модулей архивов.
- FSArch: Доступ к кешу перемещен под критическую секцию, для предотвращения падениям при высокой нагрузке. Жестко защищено от изменения конфигурационного поля "ADDR" при исполнении, для сообщений и значений. Добавлена процедура проверки дублирования конфигурационного поля "ADDR". Файлы архивов переименованы в формат "%F %H.%M.%S" для возможности их создания на FAT.
- DBArch: Исправлено на предмет запроса одного значения в архиве значений.
Транспорты
- Serial: Добавлено измерение максимального времени символа выходных транспортов в режиме запроса и отладки.
Интерфейс Пользователя
- {VCAEngine,Vision,WebVision}: Примитив "Text" дополнен атрибутом "inHtml" и поддержкой отображения HTML.
- FIX:{QTStarter,QTCfg,Vision}:
- Удаление большинства объектов Qt переведено на использование deleteLater(), для безопасного удаления под вызовом processEvents().
- Размер иконок и шрифтов сделаны адаптируемыми к реальному размеру основного-системного шрифта, с помощью новой функции icoSize(), для: инициирующего размера основного окна, шрифта заголовка, иконок панелей инструментов, иконок дерева навигации, вида дерева навигации, ширины разделителя.
- Изменено формирование меню QTStarter с целью независимого создания действий, из-за проблемы формирования родной панели меню в Unity.
- Удалено принудительное переключение стиля QPlastiqueStyle() (Qt4) или QCommonStyle() (Qt5) благодаря реализации контроля за видом и ощущениями в OpenSCADA.
- {VCAEngine,Vision}: Осуществлены некоторые мероприятия, которые предусматривают полноценную "гарячую" разработку для уже исполняемых и удаленных сеансов:
- Проекты расширены учётом использующих сеансов для "гарячего" включения страниц в сеансах.
- FIX: Защищено атрибут "value" примитива "FormEl" от установки признака модификации при изменении типа.
- FIX: Восстановлено и исправлено гарячее слежение, в сеансах, за изменениями в связях виджетов.
- Реализовано гарячее обновление процедур виджетов в режиме исполнения.
- ElFigure: Некоторые свойства общей части режима разработки перенесены в приватные части.
- QTStarter: Расширен собственным контролем за видом и ощущениями и поддержкой их профилями с таблицы "LookFeel" конфигурационного файла модуля, для: Общий шрифт, Стиль виджетов, Палитра, Стиль CSS.
- QTCfg:
- Исправлена, в основном при закритии, обработка запросов в отдельных потоках и на предмет падений при открытом диалоге предупреждения-ошибки.
- Формирование WhatsThis, ToolTip и StatusTip елемента, унифицировано переносом в одну функцию setHelp().
- Механизм подстройки вертикально-масштабированных елементов сделан: сбрасываемым для предварительного вписывания, более быстрым и точным.
- VCAEngine:
- Защищён от сохранения ещё не включенных элементов по "enableByNeed".
- Улучшен архивный режим примитива "Документ", установкой специфических атрибутов в режим Attr::NotStored. Защищён от предупреждений про отсутствие атрибутов при переключении примитива "Документ" в динамический режим.
- Vision:
- Масштабирование главного окна режима исполнения сделано абсолютным, от оригинального размера окна.
- Виджет InputDlg расширен контролируемым сохранением и восстановлением размера окна, для очень расширяемых окон, например — полноэкранный текстовый редактор.
- WebVision: Реализованы режимы: "Меню", "Загрузка" и "Сохранение" вида "Кнопка" примитива "FormEl".