@Nullable public IHCNode build () { if (m_aPrefixes.isEmpty () && m_aSuffixes.isEmpty ()) return m_aInput; final HCDiv aInputGroup = new HCDiv ().addClasses (CBootstrapCSS.INPUT_GROUP, m_eSize); for (final IHCNode aPrefix : m_aPrefixes) { if (aPrefix instanceof BootstrapButton) aInputGroup.addChild (new HCSpan ().addClass (CBootstrapCSS.INPUT_GROUP_BTN).addChild (aPrefix)); else aInputGroup.addChild (new HCSpan ().addClass (CBootstrapCSS.INPUT_GROUP_ADDON).addChild (aPrefix)); } aInputGroup.addChild (m_aInput); for (final IHCNode aSuffix : m_aSuffixes) { if (aSuffix instanceof BootstrapButton) aInputGroup.addChild (new HCSpan ().addClass (CBootstrapCSS.INPUT_GROUP_BTN).addChild (aSuffix)); else aInputGroup.addChild (new HCSpan ().addClass (CBootstrapCSS.INPUT_GROUP_ADDON).addChild (aSuffix)); } return aInputGroup; } }
public BootstrapNavbar (@Nonnull final EBootstrapNavbarType eType, final boolean bCollapsible, @Nonnull final Locale aDisplayLocale) { addClasses (CBootstrapCSS.NAVBAR, CBootstrapCSS.NAVBAR_DEFAULT, eType); setRole (EHTMLRole.NAVIGATION); m_aContainer = addAndReturnChild (new BootstrapContainer ()); m_aHeader = m_aContainer.addAndReturnChild (new BootstrapNavbarHeader ()); // Create the main container m_aContent = m_aContainer.addAndReturnChild (new HCDiv ()); if (bCollapsible) { // Create a per-instance class for collapsing final String sCollapseTarget = "navbar" + GlobalIDFactory.getNewIntID (); // Responsive toggle final HCButton aToggle = m_aHeader.addAndReturnChild (new HCButton ()); aToggle.addClass (CBootstrapCSS.NAVBAR_TOGGLE); aToggle.setDataAttr ("toggle", "collapse"); aToggle.setDataAttr ("target", "#" + sCollapseTarget); aToggle.addChild (new HCSpan ().addClass (CBootstrapCSS.SR_ONLY) .addChild (EBootstrapText.TOOGLE_NAVIGATION.getDisplayText (aDisplayLocale))); aToggle.addChild (new HCSpan ().addClass (CBootstrapCSS.ICON_BAR)); aToggle.addChild (new HCSpan ().addClass (CBootstrapCSS.ICON_BAR)); aToggle.addChild (new HCSpan ().addClass (CBootstrapCSS.ICON_BAR)); m_aContent.addClasses (CBootstrapCSS.COLLAPSE, CBootstrapCSS.NAVBAR_COLLAPSE).setID (sCollapseTarget); } }
@Nullable public HCDiv build () { final HCDiv ret = new HCDiv ().addClass (CBootstrapCSS.MODAL) .setRole (EHTMLRole.DIALOG) .setCustomAttr (CHTMLAttributes.ARIA_HIDDEN, "true") .setID (m_sID); if (m_bFade) ret.addClass (CBootstrapCSS.FADE); final HCDiv aDialog = ret.addAndReturnChild (new HCDiv ().addClasses (CBootstrapCSS.MODAL_DIALOG, m_eSize)); final HCDiv aContent = aDialog.addAndReturnChild (new HCDiv ().addClass (CBootstrapCSS.MODAL_CONTENT) .setID (_getContentID ())); if (m_aHeader != null) { final String sTitleID = _getTitleID (); ret.setCustomAttr (CHTMLAttributes.ARIA_LABELLEDBY, sTitleID); final HCDiv aHeader = aContent.addAndReturnChild (new HCDiv ().addClass (CBootstrapCSS.MODAL_HEADER)); if (m_bShowClose) aHeader.addChild (new BootstrapCloseIcon ().setDataAttr ("dismiss", "modal")); aHeader.addChild (new HCH4 ().addClass (CBootstrapCSS.MODAL_TITLE).setID (sTitleID).addChild (m_aHeader)); } if (m_aBody != null) aContent.addChild (new HCDiv ().addClass (CBootstrapCSS.MODAL_BODY).addChild (m_aBody)); if (m_aFooter != null) aContent.addChild (new HCDiv ().addClass (CBootstrapCSS.MODAL_FOOTER).addChild (m_aFooter)); return ret; }
aFinalNode.addClasses (aFormGroup.getCSSClasses ().getAllClasses ());