wordwrap for DzLabel is broken on 4.10

Hello,

I just saw by testing some of my new scripts on 4.10 that the command wordWrap does not work any longer.

Then I just checked some of my older products and I saw that they had the same wordWrap issue. On older versions of Daz Studio, the wordWrap works.

Is there a new procedure to have a label "wrapped in the box"? Is it known and planned to be solved?

In the meantime I'm gonna try to find alternate - but less elegant - solutions to finish my products without the wordWrap, but I'm interesting to know if the function is going to come back later on, or if I have to plan a general update for my older products.

Thanks!

Comments

  • rbtwhizrbtwhiz Posts: 1,433
    edited November 2017

    In Daz Studio 4.10.0.22 the inheritance hierarchy for DzLabel (which is only accessible via script API, so inserting an intermediate class into the inheritance hierarchy of DzLabel does not break ABI for plugins/SDK) switched from QLabel directly to DzElidedLabel (an SDK class, which is a decendent of DzStyledLabel - another SDK class, which is a decendent of QLabel) and a new elideMode property was added; as noted in the change log. This new property controls where the ellipsis ('...') appears when a DzLabel displays text that does not fit the current width of the widget. The current default is DzWidget.ElideRight (the ellipsis should appear on the right end of the text). I will change the default in the pending Daz Studio 4.10.0.x update to be DzWidget.ElideNone, which is the equivalent of the behavior prior to the inheritance change.

    In the meantime, you can use the following to get the previous behavior:

    // If the application version is 4.10.0.22 or newer
    if( App.version64 >= 0x0004000a00000016 ){
    	// Disable eliding
    	wLbl.elideMode = DzWidget.ElideNone;
    }

     

    -Rob

    Post edited by rbtwhiz on
  • V3DigitimesV3Digitimes Posts: 2,174
    rbtwhiz said:

    In Daz Studio 4.10.0.22 the inheritance hierarchy for DzLabel (which is only accessible via script API, so inserting an intermediate class into the inheritance hierarchy of DzLabel does not break ABI for plugins/SDK) switched from QLabel directly to DzElidedLabel (an SDK class, which is a decendent of DzStyledLabel - another SDK class, which is a decendent of QLabel) and a new elideMode property was added; as noted in the change log. This new property controls where the ellipsis ('...') appears when a DzLabel displays text that does not fit the current width of the widget. The current default is DzWidget.ElideRight (the ellipsis should appear on the right end of the text). I will change the default in the pending Daz Studio 4.10.0.x update to be DzWidget.ElideNone, which is the equivalent of the behavior prior to the inheritance change.

    In the meantime, you can use the following to get the previous behavior:

    // If the application version is 4.10.0.22 or newer
    if( App.version64 >= 0x0004000a00000016 ){
    	// Disable eliding
    	wLbl.elideMode = DzWidget.ElideNone;
    }

     

    -Rob

    Thank you for this clarification Rob! I'm sorry when I read the change log, many times I don't see the consequences of what is written ... until it becomes a problem for me. Anyway, that's nice to change the default, because that is good to know that I won't be forced to update most of my products :)

  • Just to let you know that the updated Public Beta release has the DzLabel fix.

  • V3DigitimesV3Digitimes Posts: 2,174

    Just to let you know that the updated Public Beta release has the DzLabel fix.

    Thanks for letting me know. Great news! 

Sign In or Register to comment.