[Qt-creator] Custom widget in Qt Creator (Designer)
Jonathan Neuhaus
neoraptor123 at gmail.com
Wed Jun 3 10:06:15 CEST 2009
I manage to install my custom widget into QtCreator on Windows. I used msvc
to compile it, and then put the .dll into the /designer/plugins.I manage to
use the widget from the designer from QtCreator then.
However, I still can't figure out why it crashes under MacOS. I haven't
found the compiler used for QtCreator and though, I don't manage to make my
plugin works.
Thank you for your help.
2009/6/2 Jonathan Neuhaus <neoraptor123 at gmail.com>
> Does someone know what is the compiler used for QtCreator on Mac?
> I know that in Windows it is msvc and that we should compile our custom
> widgets with this compiler to make it works (according to the FAQ).
> I may be able to solve the problem using the good compiler.
>
> Any other thoughts?
>
>
> 2009/6/2 Jonathan Neuhaus <neoraptor123 at gmail.com>
>
> Thank you Eike.
>> I added my libCustomPenduWidget.dylib in QtCreator/Contents/MacOS/designer
>> and then QtCreator crash each time.
>> Here is my crash report :
>>
>> Process: QtCreator [690]
>> Path:
>> /Developer/Applications/Qt/QtCreator.app/Contents/MacOS/QtCreator
>> Identifier: com.nokia.qtcreator
>> Version: 1.1.0 (1.1.0)
>> Code Type: X86 (Native)
>> Parent Process: launchd [120]
>>
>> Interval Since Last Report: 29537 sec
>> Crashes Since Last Report: 1
>> Per-App Interval Since Last Report: 17636 sec
>> Per-App Crashes Since Last Report: 1
>>
>> Date/Time: 2009-06-02 12:36:08.235 +0200
>> OS Version: Mac OS X 10.5.7 (9J61)
>> Report Version: 6
>> Anonymous UUID: 045138E0-8B70-4156-BCD7-B492682EE430
>>
>> Exception Type: EXC_CRASH (SIGABRT)
>> Exception Codes: 0x0000000000000000, 0x0000000000000000
>> Crashed Thread: 0
>>
>> Thread 0 Crashed:
>> 0 libSystem.B.dylib 0x95926e42 __kill + 10
>> 1 libSystem.B.dylib 0x9599923a raise + 26
>> 2 libSystem.B.dylib 0x959a5679 abort + 73
>> 3 QtCore 0x1d63d215
>> qt_message_output(QtMsgType, char const*) + 149
>> 4 QtCore 0x1d63d309 qFatal(char const*, ...) +
>> 105
>> 5 QtGui 0x1cc348f1
>> QWidgetPrivate::QWidgetPrivate(int) + 801
>> 6 QtGui 0x1cc45596 QWidget::QWidget(QWidget*,
>> QFlags<Qt::WindowType>) + 54
>> 7 libCustomPenduWidget.dylib 0x1c3f38c6
>> PenduWidget::PenduWidget(QWidget*) + 50
>> 8 libCustomPenduWidget.dylib 0x1c3f3df1
>> CustomPenduWidget::createWidget(QWidget*) + 41
>> 9 libQtDesigner.4.5.1.dylib 0x1abc35dc
>> qdesigner_internal::WidgetFactory::createCustomWidget(QString const&,
>> QWidget*, bool*) const + 74
>> 10 libQtDesigner.4.5.1.dylib 0x1abc3b68
>> qdesigner_internal::WidgetFactory::createWidget(QString const&, QWidget*)
>> const + 116
>> 11 libQtDesigner.4.5.1.dylib 0x1abc79dc
>> qdesigner_internal::WidgetDataBase::defaultPropertyValues(QString const&) +
>> 88
>> 12 libQtDesigner.4.5.1.dylib 0x1abc7b96
>> qdesigner_internal::WidgetDataBase::grabDefaultPropertyValues() + 100
>> 13 libDesigner.dylib 0x1aa7bf43
>> Designer::Internal::FormEditorW::fullInit() + 195
>> 14 libDesigner.dylib 0x1aa7e23d
>> Designer::Internal::FormEditorW::ensureInitStage(Designer::Internal::FormEditorW::InitializationStage)
>> + 129
>> 15 libDesigner.dylib 0x1aa7e276
>> Designer::Internal::FormEditorW::instance() + 24
>> 16 libDesigner.dylib 0x1aa734c9
>> Designer::Internal::FormEditorFactory::createEditor(QWidget*) + 15
>> 17 libCore.dylib 0x00636c82
>> Core::EditorManager::createEditor(QString const&, QString const&) + 872
>> 18 libCore.dylib 0x00639d36
>> Core::EditorManager::openEditor(QString const&, QString const&,
>> QFlags<Core::EditorManager::OpenEditorFlag>) + 208
>> 19 libProjectExplorer.dylib 0x1a2fae4e
>> ProjectExplorer::Internal::ProjectTreeWidget::openItem(QModelIndex const&) +
>> 134
>> 20 libProjectExplorer.dylib 0x1a315df8
>> ProjectExplorer::Internal::ProjectTreeWidget::qt_metacall(QMetaObject::Call,
>> int, void**) + 338
>> 21 libQtCore.4.5.1.dylib 0x003e49b9
>> QMetaObject::activate(QObject*, int, int, void**) + 541
>> 22 libQtGui.4.5.1.dylib 0x010e8b85
>> QAbstractItemView::activated(QModelIndex const&) + 61
>> 23 libQtGui.4.5.1.dylib 0x01131c37
>> QTreeView::mouseDoubleClickEvent(QMouseEvent*) + 851
>> 24 libQtGui.4.5.1.dylib 0x00cb1208 QWidget::event(QEvent*) +
>> 2394
>> 25 libQtGui.4.5.1.dylib 0x00fe0f45 QFrame::event(QEvent*) + 33
>> 26 libQtGui.4.5.1.dylib 0x0106e7f3
>> QAbstractScrollArea::viewportEvent(QEvent*) + 421
>> 27 libQtGui.4.5.1.dylib 0x010f6020
>> QAbstractItemView::viewportEvent(QEvent*) + 1626
>> 28 libQtGui.4.5.1.dylib 0x0113569e
>> QTreeView::viewportEvent(QEvent*) + 580
>> 29 libQtGui.4.5.1.dylib 0x01299510
>> QAbstractScrollAreaFilter::eventFilter(QObject*, QEvent*) + 48
>> 30 libQtCore.4.5.1.dylib 0x003d3d7a
>> QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) +
>> 144
>> 31 libQtGui.4.5.1.dylib 0x00c66ca7
>> QApplicationPrivate::notify_helper(QObject*, QEvent*) + 135
>> 32 libQtGui.4.5.1.dylib 0x00c6ff64
>> QApplication::notify(QObject*, QEvent*) + 3348
>> 33 libQtCore.4.5.1.dylib 0x003d3c31
>> QCoreApplication::notifyInternal(QObject*, QEvent*) + 99
>> 34 libQtGui.4.5.1.dylib 0x00c09641
>> QApplicationPrivate::globalEventProcessor(OpaqueEventHandlerCallRef*,
>> OpaqueEventRef*, void*) + 4711
>> 35 com.apple.HIToolbox 0x932c911d
>> DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) +
>> 1181
>> 36 com.apple.HIToolbox 0x932c855b
>> SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*,
>> HandlerCallRec*) + 405
>> 37 com.apple.HIToolbox 0x932e4eac SendEventToEventTarget + 52
>> 38 libQtGui.4.5.1.dylib 0x00c1911f
>> QWidgetPrivate::qt_window_event(OpaqueEventHandlerCallRef*, OpaqueEventRef*,
>> void*) + 1521
>> 39 com.apple.HIToolbox 0x932c911d
>> DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) +
>> 1181
>> 40 com.apple.HIToolbox 0x932c855b
>> SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*,
>> HandlerCallRec*) + 405
>> 41 com.apple.HIToolbox 0x932e4eac SendEventToEventTarget + 52
>> 42 com.apple.HIToolbox 0x932f7088
>> ToolboxEventDispatcherHandler(OpaqueEventHandlerCallRef*, OpaqueEventRef*,
>> void*) + 1208
>> 43 com.apple.HIToolbox 0x932c94d6
>> DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) +
>> 2134
>> 44 com.apple.HIToolbox 0x932c855b
>> SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*,
>> HandlerCallRec*) + 405
>> 45 com.apple.HIToolbox 0x932e4eac SendEventToEventTarget + 52
>> 46 libQtGui.4.5.1.dylib 0x00c1c1f5
>> QEventDispatcherMac::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) +
>> 589
>> 47 libQtCore.4.5.1.dylib 0x003d3495
>> QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 63
>> 48 libQtCore.4.5.1.dylib 0x003d361b
>> QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 149
>> 49 libQtCore.4.5.1.dylib 0x003d4e14 QCoreApplication::exec() +
>> 160
>> 50 com.nokia.qtcreator 0x000080ec main + 5008
>> 51 com.nokia.qtcreator 0x00004d1a _start + 216
>> 52 com.nokia.qtcreator 0x00004c41 start + 41
>>
>> Thread 1:
>> 0 libSystem.B.dylib 0x959086fa select$DARWIN_EXTSN + 10
>> 1 libSystem.B.dylib 0x958ea155 _pthread_start + 321
>> 2 libSystem.B.dylib 0x958ea012 thread_start + 34
>>
>> Thread 2:
>> 0 libSystem.B.dylib 0x958b92e6
>> semaphore_timedwait_signal_trap + 10
>> 1 libSystem.B.dylib 0x958eb2af _pthread_cond_wait + 1244
>> 2 libSystem.B.dylib 0x95935aab pthread_cond_timedwait + 47
>> 3 libQtCore.4.5.1.dylib 0x002f44f6
>> QWaitCondition::wait(QMutex*, unsigned long) + 274
>> 4 libQtCore.4.5.1.dylib 0x002eb5cb QThreadPoolThread::run() +
>> 493
>> 5 libQtCore.4.5.1.dylib 0x002f3134 QThreadPrivate::start(void*)
>> + 202
>> 6 libSystem.B.dylib 0x958ea155 _pthread_start + 321
>> 7 libSystem.B.dylib 0x958ea012 thread_start + 34
>>
>> Thread 3:
>> 0 libSystem.B.dylib 0x958f03ca select$DARWIN_EXTSN$NOCANCEL
>> + 10
>> 1 libQtCore.4.5.1.dylib 0x003b51f8 QProcessManager::run() + 116
>> 2 libQtCore.4.5.1.dylib 0x002f3134 QThreadPrivate::start(void*)
>> + 202
>> 3 libSystem.B.dylib 0x958ea155 _pthread_start + 321
>> 4 libSystem.B.dylib 0x958ea012 thread_start + 34
>>
>> Thread 4:
>> 0 libSystem.B.dylib 0x958e99c6 kevent + 10
>> 1 libQtCore.4.5.1.dylib 0x002f3134 QThreadPrivate::start(void*)
>> + 202
>> 2 libSystem.B.dylib 0x958ea155 _pthread_start + 321
>> 3 libSystem.B.dylib 0x958ea012 thread_start + 34
>>
>> Thread 0 crashed with X86 Thread State (32-bit):
>> eax: 0x00000000 ebx: 0x959a5639 ecx: 0xbfffd88c edx: 0x95926e42
>> edi: 0x00000000 esi: 0x00000003 ebp: 0xbfffd8a8 esp: 0xbfffd88c
>> ss: 0x0000001f efl: 0x00000286 eip: 0x95926e42 cs: 0x00000007
>> ds: 0x0000001f es: 0x0000001f fs: 0x00000000 gs: 0x00000037
>> cr2: 0xa06d5880
>>
>>
>>
>> 2009/6/2 Eike Ziller <eike.ziller at nokia.com>
>>
>>
>>> On Jun 1, 2009, at 2:17 PM, ext Jonathan Neuhaus wrote:
>>>
>>> > Hello,
>>> >
>>> > I am actually trying to integrate a custom widget into QtCreator.
>>> > I managed to make it work with Qt Designer, but can't get it work in
>>> > QtCreator.
>>> > I put the dll (on Windows) / dylib (on MacOS) in 2009.02/bin/
>>> > designer on Windows / QtCreator.app/Contents/MacOS/designer on MacOS.
>>> >
>>> >
>>> > My custom widget uses Qt SDK 4.5.1 and I am using Qt Creator 1.1.0
>>> > (based on Qt 4.5.1) and integration works with Qt Designer (based on
>>> > Qt 4.5.1).
>>> >
>>> > I tried to make it work under Windows XP and Mac OS X 10.5.7, but it
>>> > did not work on both.
>>> > On XP, the custom widget is not found and is not display in QtCreator.
>>>
>>> Compiling with msvc should fix it.
>>>
>>> >
>>> > On Mac OS, when I tried to switch to the designer, it just crashes.
>>>
>>> It would be helpful to see the detailed crash information from
>>> CrashReporter (Report..., Problem Details tab), or any other error log
>>> (e.g. output on "Console" application).
>>>
>>> Thanks, Eike
>>>
>>> --
>>> Eike Ziller
>>> Software Engineer
>>> Nokia, Qt Software
>>> Phone +49 (0)30 6392 3255
>>> Fax +49 (0)30 6392 3256
>>> E-mail eike.ziller at nokia.com
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Qt-creator mailing list
>>> Qt-creator at trolltech.com
>>> http://lists.trolltech.com/mailman/listinfo/qt-creator
>>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.qt-project.org/pipermail/qt-creator-old/attachments/20090603/74d48a4b/attachment.html
More information about the Qt-creator-old
mailing list