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

# Cache preference page strings.
_UI_CONFIRM_CLEAR_CACHE_DIALOG_TITLE          = Remove All?
_UI_CONFIRM_CLEAR_CACHE_DIALOG_MESSAGE        = Remove all cache entries?
_UI_CONFIRM_DELETE_CACHE_ENTRY_DIALOG_TITLE   = Remove Entries?
_UI_CONFIRM_DELETE_CACHE_ENTRY_DIALOG_MESSAGE = Remove all selected cache entries?
_UI_BUTTON_CLEAR_CACHE                        = Remove &All
_UI_BUTTON_DELETE_ENTRY                       = &Remove
_UI_PREF_CACHE_ENTRIES_TITLE                  = &Cache entries:
_UI_PREF_CACHE_CACHE_OPTION                   = &Disable caching
_UI_PREF_CACHE_ABOUT                          = Manage the cache of remote resources, such as those downloaded from the internet.
_UI_PREF_PROMPT_FOR_DISAGREED_LICENSES        = &Prompt me for agreement for licenses for whose terms I have already disagreed.

# Cache monitor strings.
_UI_CACHE_MONITOR_NAME                        = Caching Remote Resources
_UI_CACHE_MONITOR_CACHING                     = Caching {0}

# Cache license dialog
_UI_CACHE_DIALOG_LICENSE_STATEMENT1           = A request has been made to cache the resource:
_UI_CACHE_DIALOG_LICENSE_STATEMENT2           = In order to cache the resource you must agree to the license below:
_UI_CACHE_DIALOG_AGREE_BUTTON                 = I Agree
_UI_CACHE_DIALOG_DISAGREE_BUTTON              = I Disagree
_UI_CACHE_DIALOG_TITLE                        = License Agreement