/*******************************************************************************
 * Copyright (c) 2004, 2005 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.wst.common.snippets.internal;

/**
 * Bundle of most images used by the Snippets plug-in.
 */
public class SnippetsPluginImages {

	public static final String IMG_CLCL_COPY = "icons/full/clcl16/copy.gif"; //$NON-NLS-1$

	public static final String IMG_CLCL_CUT = "icons/full/clcl16/cut.gif"; //$NON-NLS-1$

	public static final String IMG_CLCL_DELETE = "icons/full/clcl16/delete.gif"; //$NON-NLS-1$

	public static final String IMG_CLCL_EXPORT = "icons/full/clcl16/export.gif"; //$NON-NLS-1$

	public static final String IMG_CLCL_IMPORT = "icons/full/clcl16/import.gif"; //$NON-NLS-1$

	public static final String IMG_CLCL_INSERT = "icons/full/clcl16/insert.gif"; //$NON-NLS-1$

	public static final String IMG_CLCL_NEW_CATEGORY = "icons/full/clcl16/new_category.gif"; //$NON-NLS-1$

	public static final String IMG_CLCL_NEW_TEMPLATE = "icons/full/clcl16/new_template.gif"; //$NON-NLS-1$

	public static final String IMG_CLCL_PASTE = "icons/full/clcl16/paste.gif"; //$NON-NLS-1$
	public static final String IMG_DLCL_COPY = "icons/full/dlcl16/copy.gif"; //$NON-NLS-1$
	public static final String IMG_DLCL_CUT = "icons/full/dlcl16/cut.gif"; //$NON-NLS-1$
	public static final String IMG_DLCL_DELETE = "icons/full/dlcl16/delete.gif"; //$NON-NLS-1$
	public static final String IMG_DLCL_EXPORT = "icons/full/dlcl16/export.gif"; //$NON-NLS-1$
	public static final String IMG_DLCL_IMPORT = "icons/full/dlcl16/import.gif"; //$NON-NLS-1$
	public static final String IMG_DLCL_INSERT = "icons/full/dlcl16/insert.gif"; //$NON-NLS-1$
	public static final String IMG_DLCL_NEW_CATEGORY = "icons/full/dlcl16/new_category.gif"; //$NON-NLS-1$
	public static final String IMG_DLCL_NEW_TEMPLATE = "icons/full/dlcl16/new_template.gif"; //$NON-NLS-1$
	public static final String IMG_DLCL_PASTE = "icons/full/dlcl16/paste.gif"; //$NON-NLS-1$
	public static final String IMG_ELCL_COPY = "icons/full/elcl16/copy.gif"; //$NON-NLS-1$
	public static final String IMG_ELCL_CUT = "icons/full/elcl16/cut.gif"; //$NON-NLS-1$
	public static final String IMG_ELCL_DELETE = "icons/full/elcl16/delete.gif"; //$NON-NLS-1$
	public static final String IMG_ELCL_EXPORT = "icons/full/elcl16/export.gif"; //$NON-NLS-1$
	public static final String IMG_ELCL_IMPORT = "icons/full/elcl16/import.gif"; //$NON-NLS-1$
	public static final String IMG_ELCL_INSERT = "icons/full/elcl16/insert.gif"; //$NON-NLS-1$
	public static final String IMG_ELCL_NEW_CATEGORY = "icons/full/elcl16/new_category.gif"; //$NON-NLS-1$
	public static final String IMG_ELCL_NEW_TEMPLATE = "icons/full/elcl16/new_template.gif"; //$NON-NLS-1$
	public static final String IMG_ELCL_PASTE = "icons/full/elcl16/paste.gif"; //$NON-NLS-1$
	public static final String IMG_OBJ_SNIPPETS = "icons/full/obj16/snippets.gif"; //$NON-NLS-1$
	public static final String IMG_OBJ_TEMPLATE = "icons/full/obj16/template.gif"; //$NON-NLS-1$
}
