/******************************************************************************* * Copyright (c) 2009, 2015 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - initial API and implementation *******************************************************************************/ package org.eclipse.help.webapp; import java.util.Locale; /** * A view which contributes a view to the help webapp * @since 3.5 */ public abstract class AbstractView { /** * * @return a non translated name which is root name of the * View and Toolbar jsp files used in this view. For example if the name * is toc the help system will look for the files tocView.jsp * and tocToolbar.jsp */ public abstract String getName(); /** * @return a URL path, relative to /help which is the * location of the jsp files in the advanced presentation */ public abstract String getURL(); /** * @return a URL path, relative to /help which is the * location of the jsp files in the basic presentation */ public String getBasicURL() { return getURL(); } /** * @return a URL relative to /help which is the location * of the 16x16 image icon which will appear in the tab */ public abstract String getImageURL(); /** * @return a character which can be used as an accesskey to * navigate directly to this view, or (char)0 if no * acceskey is specified */ public abstract char getKey(); /** * Used to allow for views whose loading is deferred until * their contents are visible * @return true if this view has deferred loading */ public boolean isDeferred() { return false; } /** * A user visible title for the view which will appear in the tooltip * @param locale the locale of the client * @return the tooltip text to be used in this locale */ public abstract String getTitle(Locale locale); /** * @return true if the view should be shown in the advanced presentation */ public boolean isVisible() { return true; } /** * @return true if the view should be shown in the basic presentation */ public boolean isVisibleBasic() { return true; } }