###############################################################################
# Copyright (c) 2000, 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.ui.views.bookmarkexplorer


# ==============================================================================
# Bookmarks View
# ==============================================================================

CopyBookmark_text = &Copy

PasteBookmark_text = &Paste
PasteBookmark_errorTitle = Error pasting bookmark(s)

OpenBookmark_text = &Go To
OpenBookmark_toolTip = Go To
OpenBookmark_errorTitle = Problems Opening Editor

RemoveBookmark_text = &Delete
RemoveBookmark_toolTip = Delete
RemoveBookmark_errorTitle = Error deleting bookmarks

SelectAll_text = Select A&ll
SelectAll_toolTip = Select All

Properties_text = P&roperties

ColumnDescription_text = by &Description
ColumnResource_text = by &Resource
ColumnFolder_text = by &Folder
ColumnLocation_text = by &Location
ColumnCreationTime_text = by &Creation Time

LineIndicator_text = line {0}

ColumnIcon_header =
ColumnDescription_header = Description
ColumnResource_header = Resource
ColumnFolder_header = In Folder
ColumnLocation_header = Location

ColumnDescription_dialogText = Description:
ColumnResource_dialogText = Resource:
ColumnFolder_dialogText = In Folder:
ColumnLocation_dialogText = Location:

SortMenuGroup_text = &Sort
SortDirectionAscending_text = &Ascending
SortDirectionDescending_text = D&escending

PropertiesDialogTitle_text = Bookmark Properties

MarkerCreationTime_text = &Creation Time:

Error_text = &Error

CopyToClipboardProblemDialog_title=Problem Copying to Clipboard
CopyToClipboardProblemDialog_message=There was a problem when accessing the system clipboard. Retry?

