(UIManager manager)
| 261 | |
| 262 | /// {@inheritDoc} |
| 263 | @Override |
| 264 | protected void initLaf(UIManager manager) { |
| 265 | super.initLaf(manager); |
| 266 | int tabPlace = manager.getThemeConstant("tabPlacementInt", -1); |
| 267 | tabsFillRows = manager.isThemeConstant("tabsFillRowsBool", false); |
| 268 | tabsGridLayout = manager.isThemeConstant("tabsGridBool", false); |
| 269 | changeTabOnFocus = manager.isThemeConstant("changeTabOnFocusBool", false); |
| 270 | BorderLayout bd = (BorderLayout) super.getLayout(); |
| 271 | if (bd != null) { |
| 272 | if (manager.isThemeConstant("tabsOnTopBool", false)) { |
| 273 | if (bd.getCenterBehavior() != BorderLayout.CENTER_BEHAVIOR_TOTAL_BELOW) { |
| 274 | bd.setCenterBehavior(BorderLayout.CENTER_BEHAVIOR_TOTAL_BELOW); |
| 275 | checkTabsCanBeSeen(); |
| 276 | } |
| 277 | } else { |
| 278 | bd.setCenterBehavior(BorderLayout.CENTER_BEHAVIOR_SCALE); |
| 279 | } |
| 280 | } |
| 281 | changeTabContainerStyleOnFocus = manager.isThemeConstant("changeTabContainerStyleOnFocusBool", false); |
| 282 | // tabPlacementInt lets a theme dictate whether tabs live at TOP / |
| 283 | // BOTTOM / LEFT / RIGHT. initLaf is called both during the |
| 284 | // Component() super() chain (before the Tabs ctor body has |
| 285 | // allocated tabsContainer) and again later when styles refresh. |
| 286 | // First call: tabsContainer is null, so just stash the value in |
| 287 | // the field; the ctor's setTabPlacement call at the end will |
| 288 | // pick it up and move the (then-allocated) container. |
| 289 | // Second call and beyond: container exists, so reparent it. |
| 290 | if (tabPlace != -1) { |
| 291 | if (tabsContainer == null) { |
| 292 | tabPlacement = tabPlace; |
| 293 | } else if (tabPlace != tabPlacement) { |
| 294 | setTabPlacement(tabPlace); |
| 295 | } |
| 296 | } |
| 297 | } |
| 298 | |
| 299 | /// {@inheritDoc} |
| 300 | @Override |
nothing calls this directly
no test coverage detected