# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.
OpenIDE-Module-Name=JavaFX 2 Project
OpenIDE-Module-Display-Category=JavaFX 2

USG_PROJECT_BUILD_NATIVE=JavaFX Native Packager invoked in project: {0}
USG_PROJECT_BUILD_NATIVE_JFX=JavaFX Native Packager invoked in JavaFX project.

Templates/Project/JavaFX=JavaFX
Templates/Project/JavaFX/javafxApp.xml=JavaFX Application
Templates/Project/JavaFX/preloaderApp.xml=JavaFX Preloader
Templates/Project/JavaFX/javafxSwingApp.xml=JavaFX in Swing Application
Templates/Project/JavaFX/javafxExisting.xml=JavaFX Project with Existing Sources
Templates/javafx=JavaFX
Templates/javafx/FXMain.java=JavaFX Main Class
Templates/javafx/FXPreloader.java=JavaFX Preloader Class
Templates/javafx/FXSwingMain.java=JavaFX-in-Swing Main Class

#New project wizard
TXT_DefaultPackageName=mypkg
TXT_FXMLFileNamePrefix=FXMLDocument

#1st panel
LBL_NWP1_ProjectName_Label=Project &Name\:
LBL_NWP1_ProjectName_LabelMnemonic=N
LBL_NWP1_ProjectLocation_Label=Project &Location\:
LBL_NWP1_ProjectLocation_LabelMnemonic=L
LBL_NWP1_BrowseLocation_Button=Br&owse...
MNE_NWP1_BrowseLocation_Button=w
LBL_NWP1_CreatedProjectFolder_Lablel=Project Fol&der\:
LBL_NWP1_CreatedProjectFolder_LablelMnemonic=d
LBL_NWP1_CreateMainClass_CheckBoxMnemonic=C
#NOI18N
LBL_NPW1_DefaultProjectName=newProject


LBL_NWP1_SelectProjectLocation=Select Project Location
TXT_NameAndLoc=Name and Location
TXT_NewJavaFXApp=JavaFX Application
TXT_NewJavaFXPreloaderApp=JavaFX Preloader
TXT_NewJavaFXSwingApp=JavaFX-in-Swing Application
TXT_NewJavaLib=JavaFX Class Library
TXT_JavaExtSourcesProjectLocation=JavaFX Project with Existing Sources
ACSD_NewJavaFXApp=Creates new JavaFX Application project
ACSD_NewJavaFXPreloaderApp=Creates new JavaFX Preloader project
ACSD_NewJavaFXSwingApp=Creates new JavaFX-in-Swing Application project
ACSD_NewJavaLib=Creates new JavaFX Class Library project
ACSD_JavaExtSourcesProjectLocation=Creates new JavaFX Project with Existing Sources
#NOI18N
TXT_ClassName=Main
TXT_ClassNamePreloader=Preloader
TXT_FileNamePreloaderPostfix=Preloader
#NOI18N
TXT_PackageNamePrefix=pkg
#following item must start with capital nonnumeric letter
TXT_ClassNamePrefix=Cls
LAB_ConfigureProject=Name and Location
LAB_ConfigureSourceRoots=Existing Sources
LAB_PanelIncludesExcludes=Includes & Excludes
LAB_IteratorName={0} of {1}
ERROR_IllegalMainClassName=Main Class name is not valid.
ERROR_IllegalPreloaderProjectName=Preloader project name is not valid.
ERROR_IllegalFXMLName=FXML Name is not valid.
MSG_IllegalProjectLocation=Project Folder is not a valid path.
MSG_ProjectInRootNotSupported=Creating a project in the filesystem root folder is not supported.

#PanelSourceFolders
CTL_AddSourceRoot=Browse Source Packages Folder
CTL_AddTestRoot=Browse Test Packages Folder
LBL_SourceDirectoriesLabel=Specify the folders containing the source packages and JUnit test packages.
MSG_IllegalProjectName=Project Name is not a valid folder name.
MSG_ProjectFolderExists=Project Folder already exists and is not empty.
MSG_ProjectFolderReadOnly=Project Folder cannot be created.
MSG_ProjectFolderInvalid=Cannot place the project in a project folder that already contains {0}.
# #47611: old project metadata was deleted, but the IDE still has a "live" project there
# (should not be an error in the future: see #42422)
MSG_ProjectFolderHasDeletedProject=<html>Project folder is managed by a project {0}.<br>Instead of creating a new project just open it. If by a chance you just deleted the project {0} than restart the IDE to reuse the folder.
MSG_ProjectMightAlreadyExists=Project might already exist (probably only in memory)
TXT_NetBeansProject=NetBeans project
TXT_BuildXML="build.xml" file
TXT_BuildFolder="build" folder
TXT_DistFolder="dist" folder
MSG_IllegalSources=Source Packages Folder {0} does not exist.
MSG_IllegalTests=Test Packages Folder {0} does not exist.
MSG_IllegalProjectFolder=Project Folder has to be located outside of the folder containing packages.
MSG_WrongBuildScriptName=Non valid build script name
#NOI18N
TXT_JavaFXApplication=JavaFXApplication{0}
TXT_JavaFXPreloaderApplication=JavaFXPreloader{0}
TXT_JavaFXSwingApplication=JavaFXSwingApplication{0}
#NOI18N
TXT_JavaLibrary=JavaFXLibrary{0}
#NOI18N
TXT_JavaProject=JavaFXProject{0}
LBL_ProjectNameAndLocationLabel=Specify a name and location for the new project.
CTL_SourceRoots=Source Package Folders:
AD_SourceRoots=N/A
CTL_TestRoots=Test Package Folders:
AD_TestRoots=N/A
MNE_AddSourceFolder=A
AD_AddSourceFolder=N/A
MNE_RemoveSourceFolder=R
AD_RemoveSourceFolder=N/A
MNE_AddTestFolder=d
AD_AddTestFolder=N/A
MNE_RemoveTestFolder=e
AD_RemoveTestFolder=N/A
MNE_SourceRoots=S
MNE_TestRoots=T
AN_PanelSourceFolders=N/A
AD_PanelSourceFolders=N/A
TXT_RootOwnedByProject={0} (owned by {1})

ACSN_createMainCheckBox=Create Application Class

ACSD_createMainCheckBox=Select checkbox to create application class in project.

LBL_createMainCheckBox=&Create Application Class
LBL_createPreloaderCheckBox=&Create Preloader Class
LBL_createMainSwingCheckBox=&Create Main Class

ASCD_mainClassTextFiled=Specify the name of project's main class.

ACSN_jPanel1=N/A

ASCD_jPanel1=N/A

ACSN_projectNameLabel=Project name

ACSD_projectNameLabel=Name of new project

ACSN_projectLocationLabel=Project Location\:

ACSD_projectLocationLabel=Location of the project's root folder

ACSN_browseButton=Browse

ACSD_browseButton=Click the Browse button to open the project location chooser.

ACSN_createdFolderLabel=N/A

ACSD_createdFolderLabel=N/A

LBL_NWP1_BrowseLocation_Button1=Bro&wse...

LBL_NWP1_BrowseLocation_Button2=B&rowse...
ACSN_jLabel3=Select the folders that contain existing Java packages.

ACSD_jLabel3=N/A

ACSN_jLabel4=Specify a name and location for the new project.

ACSD_jLabel4=N/A

ACSD_jPanel1=

ACSN_optionsContainer=N/A

ACSD_optionsContainer=N/A

ACSN_locationContainer=N/A

ACSD_locationContainer=N/A

LBL_NWP1_BrowseLocation_Button3=Br&owse...

ASCN_mainClassTextFiled=Specify the name of project's main class.

ACSN_jLabel2=Test Packages Folder

ACSD_jLabel2=Specify the folder that contains the test package root.

ACSN_jLabel1=Source Packages Folder

ACSD_jLabel1=Specify the folder that contains the source package root.

ACSN_PanelSourceFolders=N/A

ACSD_PanelSourceFolders=N/A

ACSN_PanelProjectLocationVisual=N/A

ACSD_PanelProjectLocationVisual=N/A

ACSD_PanelOptionsVisual=N/A

ACSN_PanelOptionsVisual=N/A

MSG_FoundClassFiles=<html><p><strong>The specified package folder contains compiled class files (*.class).</strong></p><br>\
                    <p>Because the IDE generates compiled class files in</p>\
                    <p>the "build" folder, it is recommended that you delete</p>\
                    <p>the existing compiled class files.</p><br>\
                    <p>Do you want do delete the class files now?</p></html>
MSG_FoundClassFiles_Title=New JavaFX Project with Existing Sources
TXT_DeleteOption=Delete
TXT_KeepOption=Ignore
TXT_CancelOption=Cancel
MNE_KeepOption=I
AD_DeleteOption=N/A
AD_KeepOption=N/A
AD_CancelOption=N/A

CTL_AddFolder=Add Folder...

CTL_RemoveFolder=Remove

AD_AddFolder=N/A

AD_RemoveFolder=N/A

# NewJ2SEProjectWizardIterator progress bar
LBL_NewJ2SEProjectWizardIterator_WizardProgress_ReadingProperties=Reading project properties
LBL_NewJ2SEProjectWizardIterator_WizardProgress_CreatingProject=Creating new project
LBL_NewJ2SEProjectWizardIterator_WizardProgress_Preloader=Creating preloader project
LBL_NewJ2SEProjectWizardIterator_WizardProgress_PreparingToOpen=Preparing new project to be opened
LBL_PanelOptions_Browse_Button=Bro&wse...
LBL_PanelOptions_SharableProject_Checkbox=&Use Dedicated Folder for Storing Libraries
LBL_PanelOptions_Location_Label=L&ibraries Folder:
LBL_PanelOptions_Progress_Label=Setting up JavaFX Platform..
LBL_PanelOptions_FXML_lbl=&FXML name:
LBL_Browse_Libraries_AcceptedFiles=*.properties files
WARN_PanelOptionsVisual.absolutePath=<html>Please make sure that the absolute path in the Libraries Folder field is valid for all users.<html>
WARN_PanelOptionsVisual.relativePath=<html>Please make sure that the relative path in the Libraries Folder field is valid for all users.<html>
ACSD_browseLibraries=Browse for folder with definitions of libraries for project that is to be created
ACSD_sharableProject=Make project sharable with other users by managing paths to third-party binaries.
ACSD_LibrariesLocation=Folder containing location of the library definition files.
MSG_BuildScriptName=Build &Script Name:
AD_BuildScriptName=Name of the main build script file
HINT_LibrariesFolder=<html>Different users and projects can share the same compilation libraries (see Help for details).
TXT_MoveRootDescription=You can drag&drop both source and test packages from one list to the other.

# NOTE TO TRANSLATORS: This is a folder name, do not use odd characters:
#NOI18N
TXT_DefaultTestFolderName=test

# J2SEProjectGenerator
# NOTE TO TRANSLATORS: COMMENT_* keys are used to create the initial project.properties
# for a project. The properties file format only accepts ISO-8859-1 characters in their
# raw form, i.e. Western European scripts. Any other characters (e.g. Asian) will be stored
# in the properties file correctly but be unreadable in text mode: \u1234 syntax is used.
# (The proper characters will be displayed only if the file is opened in the table editor.)
COMMENT_dist.dir=This directory is removed when the project is cleaned:
COMMENT_build.dir=This directory is removed when the project is cleaned:
COMMENT_run.jvmargs=Space-separated list of JVM arguments used when running the project
COMMENT_run.jvmargs_2=(you may also define separate properties like run-sys-prop.name=value instead of -Dname=value
COMMENT_run.jvmargs_3=or test-sys-prop.name=value to set system properties for unit tests):
COMMENT_build.sysclasspath=Only compile against the classpath explicitly listed here:
COMMENT_javac.compilerargs=Space-separated list of extra javac options
COMMENT_debug.transport=Uncomment to specify the preferred debugger connection transport:
COMMENT_main.class=Main class for Java launcher
COMMENT_main.fxclass=Main class for JavaFX
COMMENT_preloader=This project is a Preloader
COMMENT_use_swing=This project embeds JavaFX components in Swing container
COMMENT_use_preloader=This project uses Preloader
COMMENT_dontuse_preloader=This project does not use Preloader
COMMENT_javafx=This is a JavaFX project
COMMENT_oldjnlp=Pre-JavaFX 2.0 WebStart is deactivated in JavaFX 2.0+ projects
COMMENT_oldjar=Non-JavaFX jar file creation is deactivated in JavaFX 2.0+ projects
COMMENT_prepreloader=Preloader can not use a preloader
COMMENT_updatemode=If true, application update mode is set to 'background', if false, update mode is set to 'eager'
COMMENT_updatemode_swing=If true, application update mode is set to 'background', if false, update mode is set to 'always'
COMMENT_app_args=Do not set application arguments here, this property is re-generated from javafx.param.* properties
COMMENT_rebase_libs=Set true for GlassFish only. Rebases manifest classpaths of JARs in lib dir. Not usable with signed JARs.
COMMENT_run_as_defaults=Do not modify this property in this configuration. It can be re-generated.
COMMENT_endorsed_ant_classpath=No need to modify this property unless customizing JavaFX Ant task infrastructure
COMMENT_disable_concurrent_runs=Set true to prevent creation of temporary copy of deployment artifacts before each run (disables concurrent runs)
COMMENT_enable_concurrent_external_runs=Set true to enable multiple concurrent runs of the same WebStart or Run-in-Browser project
COMMENT_manifest_custom_codebase=For improved security specify narrower Codebase manifest attribute to prevent RIAs from being repurposed
COMMENT_manifest_custom_permissions=Specify Permissions manifest attribute to override default (choices: sandbox, all-permissions)

NAME_src.dir=Source Packages
NAME_test.src.dir=Test Packages
LBL_PanelOptions_Preloader_Checkbox=Create Custom &Preloader
LBL_PanelOptions_Platform_ComboBox=&JavaFX Platform:
LBL_PanelOptions_PreloaderName_TextBox=Project &Name:
TXT_PanelOptions_Preloader_Project_Name=JavaFXApplication1-Preloader
LBL_PanelOptions_Manage_Button=&Manage Platforms...
TXT_SetupFXPlatformProgress=Setting-up JavaFX enabled Java platform...

WARN_PanelOptionsVisual.notFXPlatform=<html><b>Failed to automatically set-up a JavaFX Platform.</b><br>Please go to Platform Manager, create a non-default Java SE platform, then go to the JavaFX tab,<br>enable JavaFX and fill in the paths to valid JavaFX SDK and JavaFX Runtime.<br>Note: JavaFX SDK can be downloaded from <a href='http://www.oracle.com/technetwork/java/javafx/downloads'>JavaFX website</a>.<html>
MSG_PreloaderInaccessible=<Defined Preloader Inaccessible>
MSG_ComboNoPreloaderClassAvailable=<No Preloader Class Available>
LBL_Platform_ComboBox=JavaFX Platform:

MSG_Default_Platform_Creation=Creating Default JavaFX Platform...

TXT_SWITCHED_SE_TO_FX_HEADER=Project {0} Deployment Mode Change
TXT_SWITCHED_SE_TO_FX_CONTENT=Project type has been switched to JavaFX Application.

TXT_UPDATED_DEFAULT_PLATFORM_HEADER=Project {0} Platform Change
TXT_UPDATED_DEFAULT_PLATFORM_CONTENT=Default JavaFX Platform replaced by default Java Platform.
TXT_UPDATED_README_FILE_NAME=UPDATED.TXT
TXT_UPDATED_README_FILE_CONTENT_HEADER=Project {0} build script updated
TXT_UPDATED_NOTIFICATION_CONTENT=Details logged in nbproject/UPDATED.TXT.
TXT_UPDATED_README_FILE_CONTENT=\
 \n\
 Project build script file jfx-impl.xml in nbproject sub-directory has not been recognized\n\
 as compliant with this version of NetBeans JavaFX support module. To ensure correct\n\
 and complete functionality within this NetBeans installation the script file has been\n\
 backed up to {0} and then updated to the currently supported state.\n\
 \n\
 FX Project build script auto-update may be triggered on project open either after\n\
 NetBeans installation update or by manual changes in jfx-impl.xml. Please note that\n\
 changing jfx-impl.xml manually is not recommended. Any build customization code should\n\
 be placed only in build.xml in project root directory.\n\
 \n\
 Remark: The auto-update mechanism can be disabled by setting property\n\
 javafx.disable.autoupdate=true\n\
 Automatic opening of this notification when project files are updated can be disabled by setting property\n\
 javafx.disable.autoupdate.notification=true\n\
 (in build.properties, private.properties or project.properties).\n\
 \n\
 Remark: Files nbproject/jfx-impl_backup*.xml and this file nbproject/UPDATED.TXT\n\
 are not used when building the project and can be freely deleted.\n

WARN_PreloaderExecutionUnsupported=JavaFX 2 Preloader can not be executed directly.\nPlease execute instead a JavaFX Application that uses this Preloader.
WARN_Issue204880=Project could not be created.\nThe possible reason is unfinished Feature On Demand initialization. Please retry creating the project.
ACSN_sharableProject=&Use Dedicated Folder for Storing Libraries
ACSN_fxmlLabel=&FXML name:
ACSD_fxmlLabel=Create sample FXML file with this name.
ACSN_labelPreloaderProject=Project &Name:
ACSD_labelPreloaderProject=Enter name of the preloader to be generated.
ACSN_preloaderCheckBox=Create Custom &Preloader
ACSD_preloaderCheckBox=Check to request creation of custom preloader.
ACSN_labelPlatform=&JavaFX Platform:
ACSD_labelPlatform=Choose a FX-enabled Java platform to be used with this project.
ACSN_buttonManagePlatforms=&Manage Platforms...
ACSD_buttonManagePlatforms=Press to open Java Platform manager to manually create or delete Java platforms, including FX-enabled platforms.
ACSN_labelLibrariesFolder=L&ibraries Folder:
ACSD_labelLibrariesFolder=Enter dedicated folder for storing libraries.
ACSN_progressLabel=Setting up JavaFX Platform..
ACSD_progressLabel=The progress bar shows progress when creating default FX-enabled Java platform.
ChooseOtherPlatformPanel.jLabel1.text=&Java Platform:
ChooseOtherPlatformPanel.managePlatforms.text=&Manage Platforms...

TXT_ActionInProgress=Action in progress...
