Community
Participate
Working Groups
Could you please implement some container widget to be available in BIRT pallete? This container itself will be normal widget with basic properties (margin, visibility, ..) but it will have no content to display. User could insert into other widgets (like grid) and they will be rendered side by side. My use case: I want to display image and label besides each other. They both will have same visibility condition. There are three such couples (image, label) with same conditions. From maintainability it would be better to extract this common condition to parent container of each couple. Another reason is that I currently face display issues, the image is displayed on separate line than label. I want to display them on same line, side by side. I hope that I will find solution now, even without this new container (box) widget. I think that this container widget will be more lightweight and easier to use than grid. Think of it as <span> HTML element.
Can you comment on the difficulties in using grid for this usage case?
Yes, grid will output <table><tr><td></td><td></td><tr></table>. It is very hard to work with tables, as they have padding, margins, borders, table size, ration between columns etc. You spent a lot of time to tune its look and feel. And actually I don't achieve desired effect in many cases. My current use case is: [image ok; rendered state==ok][text Compliant;rendered state==ok][image review; rendered state==review][text Review;rendered state==review][image failed; rendered state==failed][text Not compliant;rendered state==failed] In fact I've got more states and condition is much more complicated and longer. If I found error in condition for some state, I have to fix it for both icon and text. I'd rather achieve: [group;rendered state==ok][image ok][text Compliant][/group] [group;rendered state==review][image review][text Review][/group] [group;rendered state==failed[image failed][text Not compliant][/group] This is much more clear and maintainable. If I used table, it would take a lot of time and probably it would look ugly in my layout.
Wei, could you comment if we shall add a new report item or we shall change the HTML tag used to output grid?
I think we should add such a container report item into BIRT design.
consider to add a container widget in next release.
Leos, Out of curiosity, have you tried the Display "Inline" vs. "Block" property. This might give you what you need for your side-by-side layout. This is an advanced property and can be found in the property for any report item in Properties > Advanced Tab > Section > Display. By defaul it is set to "Block", which would give you in a label + data in a Table scenario, for example: Country: USA Country: Japan etc. If you change the property for the country to be "Inline", this would change to: Country: USA Country: Japan etc. In other words, this property causes BIRT to not take a new line for each item in side-by-side controls. If you have tried this and it does not work for some reason or does not address your scenario, let us know.
need more time to resolve those issues.
defer to RC0
It is unclear if we need this capability. Leos' Use Case would seem to be addressed by using the Inline/Block values for "Display".
defer to future as it is not a committed feature in 2.5.0
In addition to the Display "Inline" vs. "Block" property, which exists in BIRT today, we are making some other improvements in the layout engine in BIRT 2.5. We will wait to get feedback on all these capabilities before considering this particular Bugzilla item again. It is possible we will decide to close this as "Won't Fix". In the meantime, if you are using BIRT and have additional feedback on this Bugzilla item, please add your comments.