Class TabbedPaneStateStore

java.lang.Object
com.vaadin.swingbridge.surrogates.internal.TabbedPaneStateStore

public final class TabbedPaneStateStore extends Object
State holder for SJTabbedPane (SD_sjtabbedpane).

What lives here per R_vaadin_first: things Vaadin's TabSheet has no counterpart for — the JDK SingleSelectionModel facade, the ChangeListener fan-out list, the parallel-indexed TabbedPaneStateStore.TabMeta list (per-tab title/icon/tooltip/customComponent shadow needed for the children-based render strategy — see SD_sjtabbedpane for why we never use Tab.setLabel), the preventPeerEvents loop guard, and headline shadows for tabPlacement + tabLayoutPolicy that round-trip without a Vaadin counterpart (only TOP placement is actually delivered; SCROLL policy is silently accepted; WRAP/LEFT/RIGHT/BOTTOM WARN).

Selection itself lives on Vaadin TabSheet (R_vaadin_first source-of-truth); the model below is a JDK-faithful pass-through whose state is kept in lockstep with the peer via the bridge wired in SJTabbedPane's ctor.

  • Field Details

    • tabMetas

      public final List<TabbedPaneStateStore.TabMeta> tabMetas
    • model

      public SingleSelectionModel model
      JDK-faithful model facade. Default DefaultSingleSelectionModel; swappable via SJTabbedPane.setModel, which rewires modelListener.
    • modelListener

      public ChangeListener modelListener
      Internal listener installed on model that pushes to peer + re-fires through changeListeners.
    • changeListeners

      public final List<ChangeListener> changeListeners
    • preventPeerEvents

      public boolean preventPeerEvents
      Loop guard: set true around any peer-write so the resulting SelectedChangeEvent listener bails. Pattern matches SJComboBox's peer-push protection.
    • tabPlacement

      public int tabPlacement
      Headline shadow — JDK default TOP. Round-trips; only TOP is delivered.
    • tabLayoutPolicy

      public int tabLayoutPolicy
      Headline shadow — JDK default WRAP_TAB_LAYOUT. Round-trips; only SCROLL is delivered (silently).
  • Method Details