###############################################################################
# Copyright (c) 2008 Sybase, Inc. 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:
#     Sybase, Inc. - initial API and implementation
###############################################################################
! Properties file for component:  SQL Scrapbook

pluginName   = Eclipse Data Tools Platform Sqlscrapbook Plug-in
providerName = Eclipse Data Tools Platform

_UI_MENU_SELECT_CONNECTION= Select &Connection

# SQL Scrapbook
SQLScrapbookAction.title_UI_       = Open In SQL Editor

ExceptionDialog.seeErrorLogMessage = See error log for more details.
SQLScrapbookPlugin.internal_error  = Internal error

# ------- NewSQLScrapbookFileWizardPage------- 
NewWizardCategoryName=SQL Development
NewSQLScrapbookPage.label=SQL File
NewSQLScrapbookPage.description=Create a SQL File

NewSQLScrapbookFileCreationWizard.title=New SQL File
NewSQLScrapbookFileWizardPage.title=Create SQL File
NewSQLScrapbookFileWizardPage.description=Create a new SQL file

NewSQLScrapbookFileWizardPage.error.AlreadyExists=A file with the specified path already exists.
NewSQLScrapbookFileWizardPage.open_error.message=Error occurred while opening SQL File Editor
NewFileWithProfilePage.error.profile=Select a database connection profile for this resource

ScrapbookEditor.name=SQL File Editor

datatools.preferences.sqlfile.name=SQL Files/Scrapbooks

DatabaseManagement.command.attach=Set Connection Information

sql_scrapbook=SQL Scrapbook
open_sql_scrapbook=Open SQL Scrapboo&k
open_sql_scrapbook_tooltip=Open scrapbook to edit SQL statements

DatabaseManagement.ExecuteSQLFile=E&xecute SQL Files
DatabaseManagement.SetConnectionInfo=&Set Connection Info

AddBookmark.label=Add Boo&kmark...
AddBookmark.tooltip=Add Bookmark...