В рамках проекта Emscripten-Qt развивается порт Qt, работающий в web-браузере

15 января 2013 года

Представлен проект Emscripten-Qt, в рамках которого ведётся работа по созданию порта тулкита Qt, нацеленного на использование в web-браузере. В настоящее время для использования доступны компоненты QtCore и QtGui, преобразованные в JavaScript-представление. Изначальный С++ код данных компонентов был преобразован в биткод LLVM и затем транслирован в JavaScript при помощи компилятора Emscripten. Работа Emscripten-Qt возможна в любом браузере с поддержкой HTML5-элемента canvas и типизированных массивов, но тестирование проекта ведётся в Firefox и Chrome. Код проекта можно загрузить через Gitorious.

Кроме автоматизированного преобразования в JavaScript разработчиками ведётся работа по профилированию и выборочной оптимизации полученного кода (например, для некоторых классов было применено inline-развёртывание конструкций). По сравнению с первыми вариантами проекта уже удалось достигнуть неплохого повышения производительности. Например, демонстрация "сталкивающиеся мыши" раньше тратила на отрисовку кадра несколько секунд, после оптимизации производительность возросла до нескольких кадров в секунду. Кроме оптимизации проведена работа по улучшению поддержки клавиатуры, в том числе обработки в приложениях состояния таких клавиш как Shift и Ctrl.

Подготовленные проектом компоненты можно использовать для организации выполнения в браузере нативных Qt-приложений, также преобразованных при помощи Emscripten. В конечном счёте проект планирует обеспечить полный набор средств для упрощения сборки и адаптации таких приложений для работы в браузере. В настоящее время проектом уже подготовлено и собрано для запуска в браузере несколько десятков демонстрационных приложений из состава Qt. Из не поддерживаемых в Emscripten-Qt приложений отмечаются многопоточные программы, программы с локальным циклом обработки событий, программы с интерфейсом drag and drop, программы, использующие расширенные модули (например, не планируется портировать QtScript и QtWebkit).

Источники

править


 
 
Creative Commons
Эта статья содержит материалы из статьи «В рамках проекта Emscripten-Qt развивается порт Qt, работающий в web-браузере», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.