/*******************************************************************************
 * Copyright (c) 2010 xored software, Inc.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 * 
 * SPDX-License-Identifier: EPL-2.0
 *
 * Contributors:
 *     xored software, Inc. - initial API and Implementation (Alex Panchenko)
 *******************************************************************************/
package org.eclipse.dltk.ui.coloring;

import org.eclipse.dltk.ui.preferences.PreferencesMessages;

/**
 * @since 3.0
 */
public interface IColoringCategoryConstants {

	String sCoreCategory = PreferencesMessages.DLTKEditorPreferencePage_coloring_category_DLTK;

	String sDocumentationCategory = PreferencesMessages.DLTKEditorPreferencePage_coloring_category_DLTKdoc;

	String sCommentsCategory = PreferencesMessages.DLTKEditorPreferencePage_coloring_category_comments;

}
