blob: 1a3c1b430e6681da32a3921a6ef4abdb70367c86 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2006 Sybase, Inc. 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:
* Sybase, Inc. - initial API and implementation
*******************************************************************************/
package org.eclipse.jst.pagedesigner.editors.actions;
import org.eclipse.jface.action.IAction;
import org.eclipse.jst.pagedesigner.IHTMLConstants;
import org.eclipse.jst.pagedesigner.PDPlugin;
import org.eclipse.jst.pagedesigner.actions.range.ChangeStyleAction;
import org.eclipse.jst.pagedesigner.actions.range.DesignerToolBarAction;
import org.eclipse.jst.pagedesigner.actions.range.HTagsInsertGroupAction;
/**
* @author mengbo
*/
public class DesignActionBarFactory {
private static final String TOOLBAR_PARAGRAPH_IMAGE_FILE = "PD_Toolbar_paragraph.gif"; //$NON-NLS-1$
private static final String TOOLBAR_LARGEFONT_DISABLED_IMAGE_FILE = "PD_Toolbar_largefont_disabled.gif"; //$NON-NLS-1$
private static final String TOOLBAR_LARGEFONT_IMAGE_FILE = "PD_Toolbar_largefont.gif"; //$NON-NLS-1$
private static final String TOOLBAR_SMALLFONT_DISABLED_IMAGE_FILE = "PD_Toolbar_smallfont_disabled.gif"; //$NON-NLS-1$
private static final String TOOLBAR_SMALLFONT_IMAGE_FILE = "PD_Toolbar_smallfont.gif"; //$NON-NLS-1$
private static final String TOOLBAR_BOLD_DISABLED_IMAGE_FILE = "PD_Toolbar_bold_disabled.gif"; //$NON-NLS-1$
private static final String TOOLBAR_BOLD_IMAGE_FILE = "PD_Toolbar_bold.gif"; //$NON-NLS-1$
private static final String TOOLBAR_ITALIC_DISABLED_IMAGE_FILE = "PD_Toolbar_italic_disabled.gif"; //$NON-NLS-1$
private static final String TOOLBAR_ITALIC_IMAGE_FILE = "PD_Toolbar_italic.gif"; //$NON-NLS-1$
private static final String TOOLBAR_UNDERLINE_DISABLED_IMAGE_FILE = "PD_Toolbar_underline_disabled.gif"; //$NON-NLS-1$
private static final String TOOLBAR_UNDERLINE_IMAGE_FILE = "PD_Toolbar_underline.gif"; //$NON-NLS-1$
private static DesignActionBarFactory _instance;
private DesignActionBarFactory() {
// no external instantiation
}
/**
* @return get the factory singleton
*/
public static DesignActionBarFactory getInstance() {
if (_instance == null) {
_instance = new DesignActionBarFactory();
}
return _instance;
}
/**
* @param name
* @return the tool bar action
*/
public DesignerToolBarAction getStyleAction(String name) {
DesignerToolBarAction action = null;
if (name.equals(IHTMLConstants.TAG_U)) {
action = new ChangeStyleAction(ActionsMessages
.getString("DesignActionBarFactory.Underline.Text"), name, //$NON-NLS-1$
PDPlugin.getDefault().getImageDescriptor(
TOOLBAR_UNDERLINE_IMAGE_FILE), PDPlugin.getDefault()
.getImageDescriptor(
TOOLBAR_UNDERLINE_DISABLED_IMAGE_FILE),
IAction.AS_CHECK_BOX);
action.setToolTipText(ActionsMessages
.getString("DesignActionBarFactory.Underline")); //$NON-NLS-1$
} else if (name.equals(IHTMLConstants.TAG_I)) {
action = new ChangeStyleAction(ActionsMessages
.getString("DesignActionBarFactory.Italic.Text"), name, //$NON-NLS-1$
PDPlugin.getDefault().getImageDescriptor(
TOOLBAR_ITALIC_IMAGE_FILE), PDPlugin.getDefault()
.getImageDescriptor(
TOOLBAR_ITALIC_DISABLED_IMAGE_FILE),
IAction.AS_CHECK_BOX);
action.setToolTipText(ActionsMessages
.getString("DesignActionBarFactory.Italic")); //$NON-NLS-1$
} else if (name.equals(IHTMLConstants.TAG_B)) {
action = new ChangeStyleAction(ActionsMessages
.getString("DesignActionBarFactory.Bold.Text"), name, //$NON-NLS-1$
PDPlugin.getDefault().getImageDescriptor(
TOOLBAR_BOLD_IMAGE_FILE),
PDPlugin.getDefault().getImageDescriptor(
TOOLBAR_BOLD_DISABLED_IMAGE_FILE),
IAction.AS_CHECK_BOX);
action.setToolTipText(ActionsMessages
.getString("DesignActionBarFactory.Bold")); //$NON-NLS-1$
} else if (name.equals(IHTMLConstants.TAG_SMALL)) {
action = new ChangeStyleAction(ActionsMessages
.getString("DesignActionBarFactory.Small.Text"), name, //$NON-NLS-1$
PDPlugin.getDefault().getImageDescriptor(
TOOLBAR_SMALLFONT_IMAGE_FILE), PDPlugin.getDefault()
.getImageDescriptor(
TOOLBAR_SMALLFONT_DISABLED_IMAGE_FILE),
IAction.AS_CHECK_BOX);
action.setToolTipText(ActionsMessages
.getString("DesignActionBarFactory.Small")); //$NON-NLS-1$
} else if (name.equals(IHTMLConstants.TAG_BIG)) {
action = new ChangeStyleAction(ActionsMessages
.getString("DesignActionBarFactory.Big.Text"), name, //$NON-NLS-1$
PDPlugin.getDefault().getImageDescriptor(
TOOLBAR_LARGEFONT_IMAGE_FILE), PDPlugin.getDefault()
.getImageDescriptor(
TOOLBAR_LARGEFONT_DISABLED_IMAGE_FILE),
IAction.AS_CHECK_BOX);
action.setToolTipText(ActionsMessages
.getString("DesignActionBarFactory.Big")); //$NON-NLS-1$
} else if (name
.equalsIgnoreCase(DesignPageActionContributor.PARAGRAPH_ACTION_ID)) {
action = new HTagsInsertGroupAction(PDPlugin.getDefault()
.getImageDescriptor(TOOLBAR_PARAGRAPH_IMAGE_FILE),
IAction.AS_DROP_DOWN_MENU);
action.setToolTipText(ActionsMessages
.getString("DesignActionBarFactory.Paragraph")); //$NON-NLS-1$
}
return action;
}
}