###############################################################################
# Copyright (c) 2001, 2004 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
###############################################################################

BUTTON_SHOW_ALL_DIALOGS=Show All
BUTTON_HIDE_ALL_DIALOGS=Hide All
CHECKBOX_DO_NOT_SHOW_DIALOG_AGAIN=Do not show me this dialog box again.

TOOLTIP_PPAD_PAGE=Control to show/hide the dialogs that appear when a pop-up action is executed.
TOOLTIP_DO_NOT_SHOW_DIALOG_AGAIN=To allow this dialog to show again, enable from preference - dialogs.
TOOLTIP_PPAD_BUTTON_SHOW_ALL=Show all dialogs.
TOOLTIP_PPAD_BUTTON_HIDE_ALL=Hide all dialogs and execute pop-up actions.

WIZARD_TITLE_ANT=Create Ant Files
WIZARD_PAGE_TITLE_ANT=Create Web Service Ant files
WIZARD_PAGE_DESC_ANT=Select workspace folder for Ant script and properties files
MSG_STATUS_COPYING_ANT_FILES=Copying web services Ant files
MSG_ERR_COPYING_ANT_FILES=Error encountered copying Ant files

MSG_ERROR_WIZARD_ID_NOT_FOUND=IWAB0013E Could not find wizard id: {0}
