⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 htmltabbedpanerenderer.java

📁 一个使用struts+hibernate+spring开发的完的网站源代码。
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
            {                String paramName = tabbedPane.getClientId(facesContext) + "." + tabIdx;                String paramValue = (String)paramMap.get(paramName);                if (paramValue != null && paramValue.length() > 0)                {                    tabbedPane.queueEvent(new TabChangeEvent(tabbedPane,                                                             tabbedPane.getSelectedIndex(),                                                             tabIdx));                    return;                }                tabIdx++;            }        }    }    protected void writeFormStart(ResponseWriter writer,                                  FacesContext facesContext,                                  UIComponent tabbedPane)        throws IOException    {        ViewHandler viewHandler = facesContext.getApplication().getViewHandler();        String viewId = facesContext.getViewRoot().getViewId();        String actionURL = viewHandler.getActionURL(facesContext, viewId);        //write out auto form        writer.startElement(HTML.FORM_ELEM, null);        writer.writeAttribute(HTML.NAME_ATTR, tabbedPane.getClientId(facesContext) + AUTO_FORM_SUFFIX, null);        writer.writeAttribute(HTML.STYLE_ATTR, "display:inline", null);        writer.writeAttribute(HTML.METHOD_ATTR, "post", null);        writer.writeURIAttribute(HTML.ACTION_ATTR,                                 facesContext.getExternalContext().encodeActionURL(actionURL),                                 null);        writer.flush();    }    protected void writeTableStart(ResponseWriter writer,                                   FacesContext facesContext,                                   HtmlPanelTabbedPane tabbedPane)        throws IOException    {        String oldStyle = tabbedPane.getStyle();        if (oldStyle == null)        {            tabbedPane.setStyle(TABLE_STYLE);        }        else        {            tabbedPane.setStyle(TABLE_STYLE + "; " + oldStyle);        }        String oldBgColor = tabbedPane.getBgcolor();        tabbedPane.setBgcolor(null);        writer.startElement(HTML.TABLE_ELEM, tabbedPane);        writer.writeAttribute(HTML.CELLSPACING_ATTR, "0", null);        HtmlRendererUtils.renderHTMLAttributes(writer, tabbedPane, HTML.TABLE_PASSTHROUGH_ATTRIBUTES);        writer.flush();        tabbedPane.setStyle(oldStyle);        tabbedPane.setBgcolor(oldBgColor);    }    protected void writeHeaderCell(ResponseWriter writer,                                   FacesContext facesContext,                                   HtmlPanelTabbedPane tabbedPane,                                   HtmlPanelTab tab,                                   int tabIndex,                                   boolean active,                                   boolean disabled)        throws IOException    {        HtmlRendererUtils.writePrettyLineSeparator(facesContext);        HtmlRendererUtils.writePrettyIndent(facesContext);        writer.startElement(HTML.TD_ELEM, tabbedPane);        if (active)        {            writer.writeAttribute(HTML.STYLE_ATTR,                                  ACTIVE_HEADER_CELL_STYLE + "background-color:" + tabbedPane.getBgcolor(),                                  null);            HtmlRendererUtils.renderHTMLAttribute(writer, tabbedPane, "activeTabStyleClass", HTML.STYLE_CLASS_ATTR);        }        else if (disabled)        {            writer.writeAttribute(HTML.STYLE_ATTR,                                  INACTIVE_HEADER_CELL_STYLE,                                  null);            HtmlRendererUtils.renderHTMLAttribute(writer, tabbedPane, "disabledTabStyleClass", HTML.STYLE_CLASS_ATTR);        }        else        {            writer.writeAttribute(HTML.STYLE_ATTR,                                  INACTIVE_HEADER_CELL_STYLE,                                  null);            HtmlRendererUtils.renderHTMLAttribute(writer, tabbedPane, "inactiveTabStyleClass", HTML.STYLE_CLASS_ATTR);        }        String label = tab.getLabel();        if (label == null || label.length() == 0)        {            label = "Tab " + tabIndex;        }        if (disabled) {            writer.startElement(HTML.LABEL_ELEM, tabbedPane);            writer.writeAttribute(HTML.NAME_ATTR, tabbedPane.getClientId(facesContext) + "." + tabIndex, null);            writer.writeAttribute(HTML.STYLE_ATTR, BUTTON_STYLE_DISABLED, null);            writer.writeText(label, null);            writer.endElement(HTML.LABEL_ELEM);        } else {            //Button            writer.startElement(HTML.INPUT_ELEM, tabbedPane);            writer.writeAttribute(HTML.TYPE_ATTR, "submit", null);            writer.writeAttribute(HTML.NAME_ATTR, tabbedPane.getClientId(facesContext) + "." + tabIndex, null);            writer.writeAttribute(HTML.VALUE_ATTR, label, null);            if (active)            {                writer.writeAttribute(HTML.STYLE_ATTR,                    BUTTON_STYLE_ACTIVE + "background-color:" + tabbedPane.getBgcolor(),                    null);            }            else            {                writer.writeAttribute(HTML.STYLE_ATTR,                    BUTTON_STYLE_INACTIVE,                    null);            }            writer.endElement(HTML.INPUT_ELEM);        }        writer.endElement(HTML.TD_ELEM);    }    protected void writeSubHeaderCells(ResponseWriter writer,                                       FacesContext facesContext,                                       HtmlPanelTabbedPane tabbedPane,                                       int visibleTabCount,                                       int visibleTabSelectedIndex,                                       boolean disabled)            throws IOException    {        StringBuffer buf = new StringBuffer();        for (int i = 0, cnt = visibleTabCount + 1; i < cnt; i++)        {            HtmlRendererUtils.writePrettyLineSeparator(facesContext);            HtmlRendererUtils.writePrettyIndent(facesContext);            writer.startElement(HTML.TD_ELEM, tabbedPane);            buf.setLength(0);            buf.append(SUB_HEADER_CELL_STYLE);            buf.append("border-top:").append(i == visibleTabSelectedIndex ? NO_BORDER_STYLE : BORDER_STYLE);            buf.append("border-right:").append(i + 1 < cnt ? NO_BORDER_STYLE : BORDER_STYLE);            buf.append("border-left:").append(i > 0 ? NO_BORDER_STYLE : BORDER_STYLE);            buf.append("background-color:").append(tabbedPane.getBgcolor());            writer.writeAttribute(HTML.STYLE_ATTR, buf.toString(), null);            if (i == visibleTabSelectedIndex) {                HtmlRendererUtils.renderHTMLAttribute(writer, tabbedPane, "activeSubStyleClass", HTML.STYLE_CLASS_ATTR);            } else {                HtmlRendererUtils.renderHTMLAttribute(writer, tabbedPane, "inactiveSubStyleClass", HTML.STYLE_CLASS_ATTR);            }            writer.write("&#160;");            writer.endElement(HTML.TD_ELEM);        }    }    protected void writeTabCell(ResponseWriter writer,                                FacesContext facesContext,                                HtmlPanelTabbedPane tabbedPane,                                int tabCount,                                int selectedIndex)        throws IOException    {        HtmlRendererUtils.writePrettyLineSeparator(facesContext);        HtmlRendererUtils.writePrettyIndent(facesContext);        writer.startElement(HTML.TD_ELEM, tabbedPane);        writer.writeAttribute(HTML.COLSPAN_ATTR, Integer.toString(tabCount + 1), null);        writer.writeAttribute(HTML.STYLE_ATTR, TAB_CELL_STYLE + "background-color:" + tabbedPane.getBgcolor(), null);        HtmlRendererUtils.renderHTMLAttribute(writer, tabbedPane, "tabContentStyleClass", HTML.STYLE_CLASS_ATTR);        int tabIdx = 0;        List children = tabbedPane.getChildren();        for (int i = 0, len = children.size(); i < len; i++)        {            UIComponent child = getUIComponent((UIComponent)children.get(i));            if (child instanceof HtmlPanelTab)            {                if (tabIdx == selectedIndex)                {                    RendererUtils.renderChild(facesContext, child);                }                tabIdx++;            }            else            {                RendererUtils.renderChild(facesContext, child);            }        }        writer.endElement(HTML.TD_ELEM);    }    private UIComponent getUIComponent(UIComponent uiComponent)    {        if (uiComponent instanceof UIForm || uiComponent instanceof UINamingContainer)        {            List children = uiComponent.getChildren();            for (int i = 0, len = children.size(); i < len; i++)            {                uiComponent = getUIComponent((UIComponent)children.get(i));            }        }        return uiComponent;    }    protected void writeFormEnd(ResponseWriter writer,                                FacesContext facesContext)        throws IOException    {        //write state marker        ViewHandler viewHandler = facesContext.getApplication().getViewHandler();        viewHandler.writeState(facesContext);        writer.endElement(HTML.FORM_ELEM);    }    protected boolean isDisabled(FacesContext facesContext, UIComponent uiComponent)    {        return !UserRoleUtils.isEnabledOnUserRole(uiComponent);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -