When using Smooth theme, every tab I have is shown, even if the docking needs two rows to show them all. But when using Eclipse theme, I’m getting a deplegable arrow for those tabs which don’t fit in a single row.
I would like to use Eclipse theme showing every tab in as many rows as I need. Is this possible?
The position of the tabs, menus (arrow) and info panels (all the actions that are not on the tabs) are arranged by a „TabLayoutManager“. You can replace the default layout manager by a custom manager. For example like this:
// RowLayout is one of the default layout managers of the framework
TabLayoutManager layoutManager = new RowLayout();
control.putProperty( TabPane.LAYOUT_MANAGER, layoutManager );```
Now the issue is, that there is no default TabLayoutManager that works with the EclipseTheme *and* shows multiple rows of tabs. The RowLayout is the closest match, but it will ignore the "info panel" (containing the actions of the currently selected tabs). But you could copy/extend "RowLayout" and write code to handle the "info panel" as well.
The "RowLayout" gets a "TabPane", which then offers a method "getInfoComponent", which has methods like "getPreferredSize", "setBounds"... should not be hard to understand.