URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 111316
[ Назад ]

Исходное сообщение
"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "

Отправлено opennews , 25-Май-17 00:21 
Представлен (http://blog.qt.io/blog/2017/05/24/qt-creator-4-3-0-released/) выпуск интегрированной среды разработки Qt Creator 4.3.0 (http://www.qt.io/download-open-source/), предназначенной для создания кроссплатформенных приложений с использованием библиотеки Qt. Поддерживается разработка как классических программ на языке C++, так и использование языка QML, в котором для определения сценариев используется JavaScript, а структура и параметры элементов интерфейса задаются CSS-подобными блоками.

В новой версии:


-  В визуальный проектировщик интерфейса Qt Quick Designer интегрирован (https://blog.qt.io/blog/2017/05/24/qt-quick-designer-qt-crea.../) редактор кода, который позволяет изменять код одновременно с изменением свойств и навигацией по дереву элементов.
В том числе на одном экране можно разместить визуальный  и текстовый редакторы, непосредственно наблюдая как сказываются на интерфейсе вносимые в код изменения и, наоборот, как меняется код при манипуляциях в графическом построителе интерфейса.


В Qt Quick Designer  также представлена новая панель инструментов. Реализована поддержка стиля кнопок Qt Quick Controls 2, возможность чтения информации о стилях из файла конфигурации  qtquickcontrols2.conf и поддержка смены стилей Qt Quick Controls 2 на лету для оценки изменения интерфейса при выборе разных стилей (https://doc.qt.io/qt-5/qtquickcontrols2-styles.html). Упрощены манипуляции с вкладками и стековыми элементами при визуальном построении интерфейса. Добавлена функция перемещения компонента в отдельный файл.

-  При использовании сборочной системы CMake 3.7+, для взаимодействия с IDE теперь применяется серверный режим CMake, который предоставляет больше информации о структуре проекта и путях размещения заголовочных файлов, не  требуя разбора генераторов и файлов Makefile. Применение серверного режима работы с CMake  позволяет просматривать в дереве проекта отдельные продукты и сборочные цели, а также собирать их по отдельности. Из других изменений в поддержке CMake отмечается добавление заголовочных файлов в дерево проекта, даже если они явно не упоминаются в файлах проекта, и возможность импорта уже осуществлённых сборок, используя сведения из кэша CMake;

-  В редакторе кода на языке C++ добавлена поддержка контекстов редактирования, позволяющих определить проекты и языки программирования, которые следует применять для файла, в случае его применения в нескольких проектах или использования в нём языка C вместо C++. Разработчикам на C++ также предлагается оценить экспериментальный плагин ClangRefactoring, обеспечивающий начальную поддержку clang-query в диалоге поиска и возможность задействования средств Clang для локального переименования;

-  Для взаимодействие с отладчиком  CDB, применяемым для кода MSVC,  теперь используется бэкенд на языке Python, в котором задействованы те же методы вывода кода, что и в бэкендах для GDB и LLDB;

-  Решены проблемы при работе с проектами для платформы Android, вызванные изменениями в Android SDK 25.3.1;


-  В QML Profiler при профилировании приложений Qt Quick обеспечен вывод информации о производительности непосредственно в интерфейсе редактора кода QML. В QML Profiler также проведена оптимизация производительности и устранены мелкие недоработки в интерфейсе.

URL: http://blog.qt.io/blog/2017/05/24/qt-creator-4-3-0-released/
Новость: http://www.opennet.ru/opennews/art.shtml?num=46594


Содержание

Сообщения в этом обсуждении
"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 00:21 
Добавлять файлы в cmake-проект надо по прежнему в ручную?

Разработка на Си по прежнему боль?


"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 00:28 
Сам себе отвечаю:

Да (по прежнему надо файлы вписывать вручную, меня Add не работает).

Да (по прежнему в си-файле считает легитимным плюсовый синтаксис).


"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено nib , 25-Май-17 00:48 
второе уже поправлено, не?

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 00:56 
> второе уже поправлено, не?

Я не знаю что там поправлено, я только что обновился, создал Non-qt c project, пишу в файле main.c "cla" и он мне предлагает создать class.


"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Шарп , 25-Май-17 06:10 
Тонкий намёк, что пора завязывать с сишечкой и переходить на божественные кресты.

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 08:02 
Кресты на кладбище

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено key , 26-Май-17 02:47 
Вы хотели сказать, что в итоге только плюсы останутся, а остальные будут в земле?

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 11:59 
> божественные кресты

высоко вы их задрали...


"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Вареник , 25-Май-17 16:19 
Нормально. Справедливо.

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено LanGhost , 27-Май-17 20:39 
Эти божественные кресты уже так разбухли, что скоро одно и тоже действие можно будет 20 способами сделать, в отличается от простого и понятного Си

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 30-Май-17 21:51 
Надо же, есть ещё понимающие программисты...

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено nib , 25-Май-17 12:07 
да, извиняюсь, поправили но будет в следующей версии. см 837cb2e3974b4b8d157be8234adcd11b226a7caf

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 11:38 
gccшные расширения всё ещё не понимает?

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено макс , 25-Май-17 10:24 
О боже, школота ещё захочет добавлять методы в С++ через IDE.
CMake - это программа о том как собирать, текстовая программа.
Хочешь добавлять в IDE - не пользуй CMake. А если сложный проект, то никакой IDE в текст программы (CMakeLists.txt) тебе код не вставит.

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено anonymous , 25-Май-17 12:26 
Добавлять в дерево файлов != добавлять к сборке.

Собственно в своих модификациях я это и сделал:
1. отображаются все файлы из директории проекта
2. добавления/удаление/переименование активировано, но ответственность за добавление к самому CMake - на пользователе. Или глоббинг (что часто не есть хорошо).

Да, эти модицикации противоречат "духу" Project View в QtC (можно найти подтверждения в их рассылке), поэтому никогда не будут приняты в апстрим :)


"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено макс , 25-Май-17 14:38 
"Добавлять к сборке" = выбрать target. Сказал строить что-то, и оно строится. Не сказал, не строится. Но в проекте висит.

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено nib , 25-Май-17 14:53 
Ну если вы предложите патч с рабочей версией, её не будут отклонять только потому, что она противоречит чьим-то идеалам. Добавления файлов до сих пор нет, потому что никто не сделал, а не из-за конспирологии

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено анонимус , 26-Май-17 03:50 
Вы, видно, не часто принимали участие в проектах. Я не патч, я ревью в геррите завёл, благо у меня уже несколько комитов в QtC есть. Его и забородили с таким обоснованием. Некоторые сопутствующие изменения пропихнуть таки получилось, так что на текущий момент поддерживаемая кодовая база ощутимо уменьшилась.

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено nib , 26-Май-17 11:06 
https://codereview.qt-project.org/#/c/180827/ этот патч?

Там довольно развёрнуто вам ответили.
Со своей стороны могу дополнить. Люди не хотят затаскивать полу-рабочие решения. Или решения которые не будут работать на определённых конфигурациях.
Отображать файлы как видит билд система мб спорное решение. Но если отображать всё, то, для примера, ваш проект утонет в сборочных артефактах, содержимом gitignore или весь экран будет занимать внутренности .git. Гит только для примера. Как в таком случае семантично поделить сущности на сорсы из проекта, а потом включить для них функционал, затрудняюсь сказать.

На счёт добавления файлов, просмотрел в вашем сообщении "ответственность за добавление к самому CMake - на пользователе".
Если делать, то как раз с редактированием проектных файлов в первую очередь. Если делать как вы предлагаете, то креатор утонет в багрепортах(добавили файл, ничего не компилится) и разрабам ничего не останется, только как ревертнуть ваш коммит.

Пс патч/коммит/etc к словам можно было бы не придираться и не заниматься писькомерством


"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено dhamp , 27-Май-17 00:02 
>Отображать файлы как видит билд система мб спорное решение.

Если CMakeLists.txt не содержит явного списка файлов(список файлов генерируется, часть файлов должна собираться только на некотором подмножестве поддерживаемых платформ)
Что предлагается ?
>ваш проект утонет в сборочных артефактах, содержимом gitignore или весь экран будет занимать внутренности .git.

по поводу артифактов - out-of-source-build придумали как раз для того чтобы не срать разной генерируемой дичью в дерево исходников
содержимое gitignore - а файлы перечисленные в нём могут быть текстовыми и их вполне можно редактировать
cmakeprojectmanager2 внутренности .git директории не показывал.

>Если делать, то как раз с редактированием проектных файлов в первую очередь.

Не всем это нужно, особенно если CMakeLists.txt не тривиальны.


"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено nib , 27-Май-17 01:26 
> часть файлов должна собираться только на некотором подмножестве поддерживаемых платформ

аналогично с qmake проектами: отображать все возможные варианты, без учета условий

> по поводу артифактов - out-of-source-build придумали как раз для того чтобы не срать разной генерируемой дичью в дерево исходников

но это не логично ломать у одного пользователя, чтобы добавить фичу для второго

> cmakeprojectmanager2 внутренности .git директории не показывал.

Круто а как у него с MySuperCoolDvcs, игнорируется только всё что начинается с точки?

> Не всем это нужно, особенно если CMakeLists.txt не тривиальны.

Опять же странная логика, если кому-то не нужно, то давайте ломать всем.
Следуя этой логике, намного логичнее не использовать cmake, например, а использовать любую другую систему сборки. В qmake проекты можно добавлять файлы, значит не используйте cmake.:/ Или еще хороший пример, почему вы не листите файлы через Ctrl+O -> диалог выбора файла, там можно даже вид вьюх настроить. Не говоря уже о том, что есть локатор с фильтрами.

Надеюсь хотя бы минимально получилось донести, что это плохая идея добавлять функционал, который ломает что-либо работающее. Или делает что-то неоднородно с существующим функционалом.


"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 07:58 
Плохо, что файлы, отключенные при конфигурировании, в проект как бы уже не входят. Надо добавлять их окольными путями. Жутко бесит. Очень плохо зделоли.

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Буратино , 25-Май-17 11:10 
Да это беда всех вумных парсеров cmakelist'ов.
Поэтому лично я пользуюсь generic-проектом, добавляя тупо всю папочку с проектом плюс ручками набив инклуд-пути и задефайнив макросы.
Благо всякие дизигнеры и qml мне не нужны - пишу не на Qt.

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено nib , 25-Май-17 12:10 
добавляйте через add_custom_target(могу ошибаться давно не имел дело с cmake). Для qmake проектов через OTHER_FILES.

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено anonymous , 25-Май-17 12:27 
> Плохо, что файлы, отключенные при конфигурировании, в проект как бы уже не
> входят. Надо добавлять их окольными путями. Жутко бесит. Очень плохо зделоли.

Попробуй подход CMakeProjectManager2. В ближайшее время постараюсь сделать "стабильную" ветку для 4.3.


"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 11:21 
Эмн, серая цевтовая гамма? Я понимаю её использовать для всяких рисовалок, но для редакторов текста хз-хз

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 11:39 
Многие кодеры страдают фотофобией.

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено gitter , 25-Май-17 11:56 
Эмн, сабж поддерживает много разных тем, включая создание своих

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено trdm , 25-Май-17 11:56 
Для с++-ников чего вкусное есть?

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 11:56 
Многопоточную сборку проектов не добавили? VS, если проектов несколько, может каждый в отдельном потоке собирать...

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено kachsheev , 25-Май-17 12:06 
Всегда существовала. В настройках проекта в аргументах сборки ставишь столько потоков, сколько тебе нужно.

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 12:32 
Проектов, не объектников.

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 15:16 
А какая разница, будет он собирать проекты по очереди на всех ядрах процессора или несколько проектов одновременно?

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 19:34 
Может потому что линковка не параллелится?

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 22:23 
cmake + make делает параллельную сборку cmake targets. В связке с msbuild, вроде, тоже. Причем в обоих случаях QtCreator запускает cmake --build (или что будет задано для сборки, т.е. в сборке по сути он не участвует).

Расскажи, что у тебя там не параллелится...


"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 26-Май-17 11:56 
LTO тоже параллелится?

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Led , 26-Май-17 22:39 
> LTO тоже параллелится?

-flto=n

Мануалы читать побовал?


"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Владимир , 29-Май-17 17:39 
Ребята, почитайте про object libraries - плюс юзайте ninja а не makefiles - и будет вам счастье) Параллеление идеальное выходит, никаких тупняков.
Ну и если еще прикрутить к этому что-нибудь распределённое типа https://github.com/mapron/Wuild - то вообще о тормозах сборки можно забыть)

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Вареник , 25-Май-17 16:22 
> Многопоточную сборку проектов не добавили? VS, если проектов несколько, может каждый в
> отдельном потоке собирать...

Добавь MAKEFLAGS="-j8" в environment (цифра - твое к-во ядер).


"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено sdfgsdg , 25-Май-17 21:23 
cmake -GNinja

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено dhamp , 27-Май-17 00:14 
> Многопоточную сборку проектов не добавили?

нет


"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено sdfgsdg , 25-Май-17 21:24 
* Fixed that quotes were added when splitting raw string literals
  (QTCREATORBUG-17717)

Наконец-то!


"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Аноним , 25-Май-17 23:32 
Когда уже HiDPI нормальный завезут? Достало смотреть на этот мыльный пережатый джепег.

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Sunderland93 , 26-Май-17 15:24 
Когда уже HiDPI мониторы перестанут производить? Есть же хорошие 1024*768. ЭЛТ. Нет этим хипсторам всё мало!

"Выпуск интегрированной среды разработки Qt Creator 4.3.0 "
Отправлено Владимир , 29-Май-17 17:41 
А меня, ребята, что-то новый cmake-server mode разочаровал. Хотя бы тем, что он не отключаемый, если юзаешь новый cmake (а у меня проект сейчас с 3.7.2, он конечно конфигурится и с 3.5 и 3.6, но неохота ради этого дефолтные конфиги править).
Все таргеты, нужные и вспомогательные видеть в списке - ахтунгъ.
Написал пока в рассылку)