📄 tabbedpane2renderer.java
字号:
TabNode child = ( TabNode )itChildren.next();
TabNode result = findCurrentTab( currentTabName, child );
if ( result != null ) {
return result;
}
}
return null;
}
public void encodeTabButton( FacesContext context, UIComponent component, TabNode tab )
throws IOException {
ResponseWriter writer = context.getResponseWriter();
boolean isCurrentTab = tab.isCurrentTab();
boolean isDisabled = tab.isDisabled();
String desc = tab.getDescription();
String tooltip = tab.getTooltip();
String href = tab.getValue();
String localizedDesc=null;
String localizedTooltip=null;
ResourceBundle bundle = Messages.getBundle(context);
localizedDesc = Messages.getMessageResourceString(bundle, desc);
if(localizedDesc == null) localizedDesc = desc;
localizedTooltip = Messages.getMessageResourceString(bundle, tooltip);
if(localizedTooltip == null) localizedTooltip = tooltip;
//
writer.write("\n");
writer.startElement( "table", component );
writer.writeAttribute( "width", "100%", "width" );
writer.writeAttribute( "cellpadding", "0", "cellpadding" );
writer.writeAttribute( "cellspacing", "0", "cellspacing" );
writer.writeAttribute( "border", "0", "border" );
writer.writeAttribute( "height", "25", "height" );
writer.write("\n");
writer.startElement( "tr", component );
writer.writeAttribute( "class", ( isDisabled ? "textTab-disable" :
( isCurrentTab ? "textTab0" : "textTab1" ) ), null );
writer.write("\n");
writer.startElement( "td", component );
writer.writeAttribute("title", localizedTooltip, null);
writer.writeAttribute( "nowrap", "true", null );
writer.writeAttribute( "class",
( isCurrentTab ? "curBtnOff" : "btnOff" ), null );
if ( !isDisabled ) {
writer.writeAttribute( "style", "cursor:pointer;", null );
writer.writeAttribute( "onclick", "location.href='" + href + "';", null );
writer.writeAttribute( "onmouseout",
MessageFormat.format( "this.className=''{0}'';",
new Object[] {isCurrentTab ? "curBtnOff" : "btnOff"} ), null );
writer.writeAttribute( "onmouseover",
MessageFormat.format( "this.className=''{0}'';",
new Object[] {isCurrentTab ? "curBtnOn" : "btnOn"} ), null );
}
writer.write( " " + localizedDesc + " " );
writer.endElement( "td" );
writer.endElement( "tr" );
writer.endElement( "table" );
}
public void encodeTabSelect( FacesContext context, UIComponent component, TabNode tab )
throws IOException {
final String imgArrowDn = Resource.getResourceString( context,
this.getClass(), PATHFILE_TAB_ARROW_DN );
ResponseWriter writer = context.getResponseWriter();
boolean isCurrentTab = tab.isCurrentTab();
boolean isDisabled = tab.isDisabled();
String name = tab.getName();
String desc = tab.getDescription();
String tooltip = tab.getTooltip();
String href = tab.getValue();
String localizedDesc=null;
String localizedTooltip=null;
ResourceBundle bundle = Messages.getBundle(context);
localizedDesc = Messages.getMessageResourceString(bundle, desc);
if(localizedDesc == null) localizedDesc = desc;
localizedTooltip = Messages.getMessageResourceString(bundle, tooltip);
if(localizedTooltip == null) localizedTooltip = tooltip;
//
String clientID = component.getClientId( context );
String jsObject = clientID.replaceAll( ":", "_" ) + tab.getName() + TAIL_JS_OBJECT;
String itemID = clientID + name + TAIL_ID_ITEM;
String arrowID = clientID + name + TAIL_ID_ARROW;
String itemsID = clientID + name + TAIL_ID_ITEMS;
writer.write( MessageFormat.format(
"<script type='text/javascript'>var {0} = new PJSF_SelectOne(''{0}'',''{1}'',''{2}'',''{3}'',''{4}'',''{5}'',''{6}'');</script>",
new Object[] {jsObject, itemID, arrowID, itemsID,
( isCurrentTab ? "curBtnOn" : "btnOn" ),
( isCurrentTab ? "curBtnOff" : "btnOff" ),
( isCurrentTab ? "curBtnDn" : "btnDn" )} ) );
//
writer.write("\n");
writer.startElement( "table", component );
writer.writeAttribute( "width", "100%", "width" );
writer.writeAttribute( "cellpadding", "0", "cellpadding" );
writer.writeAttribute( "cellspacing", "0", "cellspacing" );
writer.writeAttribute( "border", "0", "border" );
writer.writeAttribute( "height", "25", "height" );
if ( !isDisabled ) {
writer.writeAttribute( "onmouseover", jsObject + ".mouseOver();", null );
writer.writeAttribute( "onmouseout", jsObject + ".mouseOut();", null );
}
writer.write("\n");
writer.startElement( "tr", component );
writer.writeAttribute( "class", ( isDisabled ? "textTab-disable" :
( isCurrentTab ? "textTab0" : "textTab1" ) ), null );
writer.write("\n");
writer.startElement( "td", component );
writer.writeAttribute( "id", itemID, null );
writer.writeAttribute( "nowrap", "true", null );
writer.writeAttribute("title", localizedTooltip, null);
writer.writeAttribute( "class", ( isCurrentTab ? "curBtnOff" : "btnOff" ), null );
if ( !isDisabled ) {
writer.writeAttribute( "style", "cursor:pointer;", null );
writer.writeAttribute( "onclick", "location.href='" + href + "';", null );
}
writer.write( " " + localizedDesc + " " );
writer.endElement( "td" );
writer.write("\n");
writer.startElement( "td", component );
writer.writeAttribute( "id", arrowID, null );
writer.writeAttribute( "class", ( isCurrentTab ? "curBtnOff" : "btnOff" ), null );
if ( !isDisabled ) {
writer.writeAttribute( "style", "cursor:pointer;", null );
writer.writeAttribute( "onclick", jsObject + ".arrowDnClick();", null );
}
writer.write("\n");
writer.startElement( "img", component );
writer.writeAttribute( "src", imgArrowDn, null );
writer.writeAttribute( "alt", "", null );
writer.endElement( "img" );
writer.endElement( "td" );
writer.endElement( "tr" );
writer.endElement( "table" );
//
writer.write("\n");
writer.startElement( "table", component );
writer.writeAttribute( "id", itemsID, null );
writer.writeAttribute( "class", "btnOn", null );
writer.writeAttribute( "style", "position:absolute;display:none;", null );
writer.writeAttribute( "onmouseout", jsObject + ".itemsMouseOut();", null );
writer.writeAttribute( "onmouseover", jsObject + ".itemsMouseOver();", null );
// encode tab's children
Iterator itChildren = tab.getChildren().iterator();
while ( itChildren.hasNext() ) {
TabNode child = ( TabNode )itChildren.next();
String childDesc = child.getDescription();
String childTooltip = child.getTooltip();
String childHref = child.getValue();
boolean isChildDisabled = child.isDisabled();
localizedDesc = Messages.getMessageResourceString(bundle, childDesc);
if(localizedDesc == null) localizedDesc = childDesc;
localizedTooltip = Messages.getMessageResourceString(bundle, childTooltip);
if(localizedTooltip == null) localizedTooltip = childTooltip;
//
writer.write("\n");
writer.startElement( "tr", component );
writer.writeAttribute( "class", ( isChildDisabled ? "textTab-disable" : "textTab1" ), null );
if ( !isChildDisabled ) {
writer.writeAttribute( "onmouseout",
"this.className='textTab1';", null );
writer.writeAttribute( "onmouseover",
"this.className='textTab0';", null );
}
writer.write("\n");
writer.startElement( "td", component );
writer.writeAttribute( "nowrap", "true", null );
writer.writeAttribute("title", localizedTooltip, null);
if ( !isChildDisabled ) {
writer.writeAttribute( "style", "cursor:pointer;", null );
writer.writeAttribute( "onclick", "location.href='" + childHref + "';", null );
}
writer.write( " " + localizedDesc + " " );
writer.endElement( "td" );
writer.endElement( "tr" );
}
//
writer.endElement( "table" );
}
/**
* encodeHiddenField
*
* @param context FacesContext
* @param writer ResponseWriter
* @param component UIComponent
*/
public void encodeHiddenField( FacesContext context, ResponseWriter writer,
UIComponent component ) throws IOException {
// <input type= name= />
String clientID = component.getClientId( context );
writer.write("\n");
writer.startElement( "input", component );
writer.writeAttribute( "type", "hidden", null );
writer.writeAttribute( "name", clientID + TAIL_CURRENT_TAB, null );
writer.endElement( "input" );
}
public void includePage( FacesContext context, UIComponent component ) {
ExternalContext ec = context.getExternalContext();
ServletContext sc = ( ServletContext )ec.getContext();
ServletRequest request = ( ServletRequest )ec.getRequest();
ServletResponse response = ( ServletResponse )ec.getResponse();
//
UITabbedPane2 uiTabbedPane2 = ( UITabbedPane2 )component;
TabNode tab = uiTabbedPane2.getCurrentTab();
if ( tab == null ) {
return;
}
String href = tab.getValue();
try {
sc.getRequestDispatcher( href ).include( request, response );
} catch ( ServletException se ) {
} catch ( IOException ioe ) {
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -