In the end I was able to integrate the widget to Qt Designer<br><br>I added some more stuff to the widget class and I remove the reimplementation of text() and setText(). I wanted a rich text button without the other text property.<br>

<br>I could not hide the text property to Qt Designer though<br><br>I have attached what I have now<br><br>Best Regards<br><br><div class="gmail_quote">On 27 January 2011 18:13, Hans-Peter Jansen <span dir="ltr"><<a href="mailto:hpj@urpla.net">hpj@urpla.net</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div class="im">On Thursday 27 January 2011, 05:19:12 Fernando Cosso wrote:<br>
> Many Thanks Pete<br>
><br>
> I forgot to answer back, but eventually I did convert the code from<br>
> C++ to Python<br>
><br>
> I could solve the crash issue doing this:<br>
><br>
>            richTextLabel.drawContents(QPainter(richTextPixmap),<br>
> QRectF(richTextPixmap.rect()))<br>
<br>
</div>Hey, I like this better than what Phil suggested.<br>
<div class="im"><br>
> I am fighting now with Qt Designer. I am trying to put the Html<br>
> property in the Property editor panel as a rich Text Property, but no<br>
> luck.<br>
><br>
> I am trying to get the right xml on the method domXml of the class<br>
> QtDesigner.QPyDesignerCustomWidgetPlugin<br>
<br>
</div>Send it over, what you have now, and I will look, if I can do something<br>
about.. I would add it to the example, that I plan to send over to<br>
Phil, if you don't mind.<br>
<br>
Pete<br>
<br>
> (<br>
<div><div></div><div class="h5">> <a href="http://trinity.pearsoncomputing.net/docs/qt4/designer-creating-custom" target="_blank">http://trinity.pearsoncomputing.net/docs/qt4/designer-creating-custom</a><br>
>-widgets.html )<br>
><br>
><br>
> Best Regards<br>
><br>
> On 26 January 2011 22:03, Hans-Peter Jansen <<a href="mailto:hpj@urpla.net">hpj@urpla.net</a>> wrote:<br>
> > On Wednesday 26 January 2011, 14:35:35 <a href="mailto:ferdemza@gmail.com">ferdemza@gmail.com</a> wrote:<br>
> > > Thanks again Pete<br>
> > ><br>
> > > I think i will do my own custom widget from scratch following a<br>
> > > book i have and then use the link you gave me to integrate it to<br>
> > > the designer.<br>
> ><br>
> > As I told you, it is simpler to convert the Qt code.<br>
> ><br>
> > @Phil: for some reason, the richTextPainter.end() is needed in the<br>
> > PyQt version to avoid a SIGSEGV crash during paint event:<br>
> ><br>
> > QPaintDevice: Cannot destroy paint device that is being painted<br>
> ><br>
> > (gdb) bt<br>
> > #0  0x08339d10 in ?? ()<br>
> > #1  0xb647c3f8 in ~QPainter (this=0x1) at<br>
> > painting/qpainter.cpp:1491 #2  0xb6fdfe80 in release_QPainter<br>
> > (sipCppV=0x82514d8) at<br>
> > sipQtGuiQPainter.cpp:5371<br>
> > #3  0xb6fdfedc in dealloc_QPainter (sipSelf=0xb4ae4454) at<br>
> > sipQtGuiQPainter.cpp:5382<br>
> > #4  0xb7fc4f5f in forgetObject (sw=0xb4ae4454) at siplib.c:10004<br>
> > #5  0xb7fc4ff1 in sipSimpleWrapper_dealloc (self=0xb4ae4454) at<br>
> > siplib.c:9233<br>
> > #6  0xb7eba68d in subtype_dealloc (self=0xb4ae4454) at<br>
> > Objects/typeobject.c:1018<br>
> > #7  0xb7e8c24a in frame_dealloc (f=0x8301c4c) at<br>
> > Objects/frameobject.c:417 #8  0xb7ef8bec in PyEval_EvalCodeEx<br>
> > (co=0xb7c32260, globals=0xb7c7602c, locals=0x0, args=0xb7c42418,<br>
> > argcount=2,<br>
> >    kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at<br>
> > Python/ceval.c:2953<br>
> > #9  0xb7e8da29 in function_call (func=0xb5f37994, arg=0xb7c4240c,<br>
> > kw=0x0) at Objects/funcobject.c:524<br>
> > #10 0xb7e68c1c in PyObject_Call (func=0xb5f37994, arg=0xb7c4240c,<br>
> > kw=0x0) at Objects/abstract.c:2487<br>
> > #11 0xb7e769fe in instancemethod_call (func=0xb5f37994,<br>
> > arg=0xb7c4240c, kw=0x0) at Objects/classobject.c:2579<br>
> > #12 0xb7e68c1c in PyObject_Call (func=0xb7c26694, arg=0xb5f5b02c,<br>
> > kw=0x0) at Objects/abstract.c:2487<br>
> > #13 0xb7ef177f in PyEval_CallObjectWithKeywords (func=0xb7c26694,<br>
> > arg=0xb5f5b02c, kw=0x0) at Python/ceval.c:3548<br>
> > #14 0xb7fc6b03 in sip_api_call_method (isErr=0x0,<br>
> > method=0xb7c26694, fmt=0xb721cf4c "D") at siplib.c:1721<br>
> > #15 0xb6e3b5f9 in sipVH_QtGui_3 (sipGILState=PyGILState_UNLOCKED,<br>
> > sipMethod=0xb7c26694, a0=0xbfffdaa4)<br>
> >    at sipQtGuicmodule.cpp:7343<br>
> > #16 0xb7199dc9 in sipQPushButton::paintEvent (this=0x81f0718,<br>
> > a0=0xbfffdaa4) at sipQtGuiQPushButton.cpp:420<br>
> ><br>
> > Do you want me to prepare that code for inclusion into examples?<br>
> ><br>
> > Pete<br>
<br>
<br>
</div></div></blockquote></div><br>