papyros / qml-material

:book: Material Design implemented in QtQuick
GNU Lesser General Public License v2.1
2.56k stars 476 forks source link

Qt Creator Support #284

Open terrylu87 opened 9 years ago

terrylu87 commented 9 years ago

It's great to find such an amazing project. I just open the demo project in QtCreator, but the Qt Designer reported that "Qt Quick emulation layer crashed". I wonder is it possible to use the Material components in the way like the original Qt components in Qt Designer ? Support such action like drag and drop move, and can be preview in the IDE. Thanks in advance.

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

IdrissDimson commented 9 years ago

I think you can use QtCreator?@iBeliever am i wrong?

iBelieve commented 9 years ago

@VirusKA It doesn't quite work properly. I don't get crashing, but the Material components aren't available to add to the designer view, and don't render when added manually.

terrylu87 commented 9 years ago

@iBeliever Thank you. I'll find another way to do the job.

fotiDim commented 9 years ago

This would be useful.

nbigaouette commented 8 years ago

@iBeliever I'd really like to see QtCreator working for using qml-material. I do get the crash. Here's a screenshot:

issue284

I've made a repo to show the problem: https://github.com/nbigaouette/issue284

Note: I do not install qml-material. I simply point to it in my .qmlproject. See the repo.

Could it simply be that Qt Creator can't find the components and thus crash?

nbigaouette commented 8 years ago

Here's the output of Qt Creator after opening the .qml file in the "Design" tab:

~/Qt/Tools/QtCreator/bin/qtcreator
Process crashed: ("{3d1fbb66-5b65-4e2d-ab5f-b43bde308a8c}", "rendermode", "-graphicssystem raster") exitCode: 11
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
Process finished: ("{3d1fbb66-5b65-4e2d-ab5f-b43bde308a8c}", "editormode", "-graphicssystem raster") exitCode: 0
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
Process finished: ("{3d1fbb66-5b65-4e2d-ab5f-b43bde308a8c}", "previewmode", "-graphicssystem raster") exitCode: 0
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
Process crashed: QTimer(0x738b140) exitCode: -1
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
Process crashed: ("{dd2cdf7d-7394-403d-b0bf-54261e14494b}", "rendermode", "-graphicssystem raster") exitCode: 11
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
Process finished: ("{dd2cdf7d-7394-403d-b0bf-54261e14494b}", "editormode", "-graphicssystem raster") exitCode: 0
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
Process finished: ("{dd2cdf7d-7394-403d-b0bf-54261e14494b}", "previewmode", "-graphicssystem raster") exitCode: 0
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
nbigaouette commented 8 years ago

Accessing the "Design" tab a second time I get this (additionally to the crash):

file:///~/Qt/Tools/QtCreator/share/qtcreator/qmldesigner/statesEditorQmlSources/StatesDelegate.qml:125:9: QML Image: Failed to get image from provider: image://qmldesigner_stateseditor/baseState-3
Process crashed: ("{c9ad0682-2842-4a07-9ba3-b60813573ac7}", "rendermode", "-graphicssystem raster") exitCode: 11
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
Process finished: ("{c9ad0682-2842-4a07-9ba3-b60813573ac7}", "previewmode", "-graphicssystem raster") exitCode: 0
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
Process finished: ("{c9ad0682-2842-4a07-9ba3-b60813573ac7}", "editormode", "-graphicssystem raster") exitCode: 0
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
QAbstractSocket::waitForBytesWritten() is not allowed in UnconnectedState
nbigaouette commented 8 years ago

Could it be "Page" related? Commenting out the initialPage property of Material.ApplicationWindow so that no page is created allows opening the designer without crash or stdout output...

nbigaouette commented 8 years ago

Just an update: with Qt Creator v3.6.0 I don't get crashes anymore. If qml-material has been installed properly, loading a basic qml file that uses Material components with the Designer will show "something".

Now that something is still broken. No Material components are visible. For example, any Material components will show up with exclamation marks in Designer's "Navigator" panel (bottom left). The whole component will also not be shown in the main edit panel.

I also cannot see Material components in Creator's "QML Types".

JosephMillsAtWork commented 8 years ago

Add info file to scan after build and it works for me .

nbigaouette commented 8 years ago

@JosephMillsAtWork What do you mean? I'm not sure I understand the steps you suggest...

Note that #470 seems to be related.