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

📄 tabbedpane2renderer.java

📁 It is a java server faces tab component.
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
			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( "&nbsp;&nbsp;" + localizedDesc + "&nbsp;&nbsp;" );
		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( "&nbsp;&nbsp;" + localizedDesc + "&nbsp;&nbsp;" );
			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 + -