I want to place a live updating component (like a timer) inside of a tab label. I was able to create a custom view Class (used instead of TabView) to insert the view of a Panel into the tab, but the component doesn’t update unless some sort of UI event happens on the tab (like a mouseover or mouseout). Is there some better way to do this? I don’t see any sort of CompTab class in the code, and the concept of the TabView class seems pretty baked into the tab implementation.
Yes, agree Tabs has baked into the tab TabView concept. Tab view rendering is triggered with Tabs painting. If you change a tab view content it doesn’t bring to it re-painting. So, if you have dynamically updated TabView you should call repaint of Tabs component every time the view is updated. To minimize re-paint overhead repaint only an area of the Tabs component that keeps the TabView with Tabs.repaint(x,y,w,h) method.