Qt Design Studio - це остання пропозиція від компанії Qt. Це простий у використанні інструмент проектування, який дозволяє дизайнерам імпортувати проекти з Sketch та Photoshop у Qt, анімувати та тестувати їх на цільовому устаткуванні та перетворювати їх на код QML, який можуть використовувати розробники.
Qt Bridge - це компонент плагіна для інструментів дизайну, таких як Photoshop та Sketch. Плагін в першу чергу дозволяє дизайнерам анотувати шари проектного документа та експортувати ці анотації разом з asset'ами та DOM дизайнерського документа у проміжний формат, який можна імпортувати у QDS. Плагін розроблений з використанням Javascript та використовує API, що надаються інструментами дизайну.
Плагін Qt Bridge версії 1.4 та вище дозволяє користувачам писати JSX-скрипт для розширення або налаштування поведінки плагіна Qt Bridge для Photoshop. Екран налаштувань дозволяє користувачеві вибрати власний скрипт. Скрипт оцінюється під час завантаження плагіна.
API-інтерфейси
Наступні API можуть бути визначені у файлі JSX для налаштування або розширення поведінки Qt Bridge.
• preExport (documentInstance)
preExport(...) API викликається перед експортом документа PSD. Примірник документа надсилається як аргумент. Користувач може внести зміни до документа і, якщо необхідно, скасувати ці зміни після завершення експорту, визначивши postExport(...) API.
• postExport (documentInstance)
postExport(...) API викликається після експорту документа PSD. Примірник документа надсилається як аргумент. Користувач може вносити зміни до примірника документа. Наприклад, ви можете скасувати зміни, внесені до документа в preExport(...) API.
• customQmlId (generateQmlId, psdLayerInstance)
API customQmlId(...) викликається кожного разу, коли для шару PSD генерується ідентифікатор QML за промовчанням, і користувач може повернути ідентифікатор QML, який буде призначений шару. Параметр g generatedQmlId є ідентифікатором QML за замовчуванням, згенерованим плагіном Qt Bridge для шару, а параметр layerInstance є об'єктом шару PSD.
Примітка. Поверніть нуль (null), щоб використовувати ідентифікатор QML, який згенеровано за замовчуванням.
Приклад перевизначення JSX:
Наступний скрипт записує початок та кінець експортованого документа PSD у файл export.log усередині домашнього каталогу. Ідентифікатори QML мають префікс "m_", а ідентифікатори документа та шару видаляються.
myCustomScript.jsx
var logFile = null preExport = function (documentInstance) { if (openLogFile("~/export.log")) { var date = new Date(); logFile.writeln(date + ": Exporting: " + documentInstance.name); } } postExport = function (documentInstance) { if (logFile) { var date = new Date(); logFile.writeln(date + ": Exporting done: " + documentInstance.name); logFile.close(); } } customDefaultQmlId = function(generatedQmlId, psdLayerInstance) { return "m_" + generatedQmlId.replace(/_[0-9]*_[0-9]*$/g, ""); } function openLogFile(path) { logFile = new File(path); var fileCreated = false; return logFile.open("w"); }