[Qt-creator] Custom widget in Qt Creator (Designer)
Jonathan Neuhaus
neoraptor123 at gmail.com
Fri Jun 5 17:18:09 CEST 2009
Thank you Eike.
Here is the code from my widget. I really don't know where the error is
coming from. The custom widget is a hangout widget (you have a slot to
control how many error you did).
http://www.2shared.com/file/6124055/7bdb1d45/CustomPenduWidget.html
2009/6/5 Eike Ziller <eike.ziller at nokia.com>
> Hi,
> from the stack trace it looks like the crash happens when initializing
> your custom widget. It might be because it tries to load a different
> Qt than the one QtCreator *itself* ships with. I didn't come round to
> investigating further yet, though.
>
> Compiler on Mac is gcc, that shouldn't be a problem at all.
>
> ++ Eike
>
> On Jun 3, 2009, at 10:06 AM, ext Jonathan Neuhaus wrote:
>
> > 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
> >
> >
> >
> > <ATT00001.txt>
>
> --
> 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/20090605/8677ffe9/attachment.html
More information about the Qt-creator-old
mailing list