Week 3: Resolving Combobox Icon Flaw and TextBox Justification#
What did you do this week?#
This week, I tackled the ComboBox2D icon flaw, which was addressed using Pull Request (PR) #576. The problem arose when we added a ComboBox2D to the TabUI. The TabUI would propagate the set_visibility = true
for all its child elements, causing the combobox to appear on the screen without the icon change. To fix this issue, PR #768 updated the set_visibility
method of the UI class, ensuring that the icon change was applied correctly.
Next, I focused on the textbox justification. As discussed in our meeting, I added a new property called boundingbox to the TextBlock2D. However, I encountered a problem when resizing the TextBlock2D. The vtkTextActor
property would switch from SetTextScaleModeToNone
to SetTextScaleModeToProp
, which would scale the font according to the position1 (lower left corner) and position2 (upper right corner) of the UI. This inconsistency in font scaling resulted in misaligned text actors. I spent some time investigating this issue, and you can find my progress in the ongoing PR #803.
Additionally, I started working on creating a Scrollbar component by inheriting the LineSlider2D. I made adjustments to the position and other attributes to make it function as a scrollbar. However, I encountered some confusion regarding how to separate the scrollbar component from other elements and determine what should be included in the scrollbar itself.
Did you get stuck anywhere?#
I faced a challenge while working on the text justification. It took me several days to identify the root cause of the occasional malfunctioning of the TextBlock2D. At last, I found out the reason behind the issue.
What is coming up next?#
Next week, I have several tasks lined up. Firstly, I will be working on the CardUI PR #398. Additionally, I plan to complete the segregation of the scrollbar component, ensuring its independence and clarity. Lastly, I will be working on issue #540, which involves updating the use of the numpy_to_vtk_image_data
utility function.