diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 2295bf673c052e5d62d30c6d8c1a8bb8024d5a89..45c8705520199aa76321eb88fd1458292e0fe08b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,4 +1,4 @@ -image: kaiwinter/docker-java8-maven +image: tobask/jdk10-maven3 # in MAVEN_OPTS: -Djava.awt.headless=true # most of this taken from https://stackoverflow.com/questions/37785154/how-to-enable-maven-artifact-caching-for-gitlab-ci-runner diff --git a/Dockerfile b/Dockerfile index 61cb87bd1a8534cd82493cd7792a188c0e04226b..3e0953ff4e2a9ebf7f8a7647981482fc4b9b8307 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,6 @@ # Ubuntu 16.04 -# Oracle Java 1.8.0_101 64 bit -# Maven 3.3.9 +# Oracle Java 10.0.1 64 bit +# Maven 3.5.3 FROM ubuntu:16.04 @@ -15,44 +15,33 @@ RUN apt-get update # install wget RUN apt-get install -y wget -# get maven 3.3.9 -RUN wget --no-verbose -O /tmp/apache-maven-3.3.9.tar.gz http://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz - -# verify checksum -RUN echo "516923b3955b6035ba6b0a5b031fbd8b /tmp/apache-maven-3.3.9.tar.gz" | md5sum -c +# get maven 3.5.3 +RUN wget --no-verbose -O /tmp/apache-maven-3.5.3.tar.gz http://archive.apache.org/dist/maven/maven-3/3.5.3/binaries/apache-maven-3.5.3-bin.tar.gz # install maven -RUN tar xzf /tmp/apache-maven-3.3.9.tar.gz -C /opt/ -RUN ln -s /opt/apache-maven-3.3.9 /opt/maven +RUN tar xzf /tmp/apache-maven-3.5.3.tar.gz -C /opt/ +RUN ln -s /opt/apache-maven-3.5.3 /opt/maven RUN ln -s /opt/maven/bin/mvn /usr/local/bin -RUN rm -f /tmp/apache-maven-3.3.9.tar.gz +RUN rm -f /tmp/apache-maven-3.5.3.tar.gz ENV MAVEN_HOME /opt/maven # remove download archive files RUN apt-get clean # set shell variables for java installation -ENV java_version 1.8.0_101 -ENV filename jdk-8u101-linux-x64.tar.gz -ENV downloadlink http://download.oracle.com/otn-pub/java/jdk/8u101-b13/$filename +ENV java_version 10.0.1 +ENV filename jdk-10.0.1_linux-x64_bin.tar.gz +ENV downloadlink http://download.oracle.com/otn-pub/java/jdk/10.0.1+10/fb4372174a714e6b8c52526dc134031e/$filename # download java, accepting the license agreement -RUN wget --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" -O /tmp/$filename $downloadlink +RUN wget -c --header "Cookie: oraclelicense=accept-securebackup-cookie" -O /tmp/$filename $downloadlink # unpack java RUN mkdir /opt/java-oracle && tar -zxf /tmp/$filename -C /opt/java-oracle/ -ENV JAVA_HOME /opt/java-oracle/jdk$java_version +ENV JAVA_HOME /opt/java-oracle/jdk-$java_version ENV PATH $JAVA_HOME/bin:$PATH -# install xvfb -RUN apt-get install xvfb firefox - -# setup Xvfb -RUN Xvfb :99 & -RUN export DISPLAY=:99 - # configure symbolic links for the java and javac executables RUN update-alternatives --install /usr/bin/java java $JAVA_HOME/bin/java 20000 && update-alternatives --install /usr/bin/javac javac $JAVA_HOME/bin/javac 20000 CMD [""] - diff --git a/sb/.classpath b/sb/.classpath index 6fe5626579ad1fa55ec40ea351589eb057038465..db1f6e555c5147c973ee74524806f31909304a53 100644 --- a/sb/.classpath +++ b/sb/.classpath @@ -1,7 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> <classpath> - <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-9"> <attributes> + <attribute name="module" value="true"/> <attribute name="maven.pomderived" value="true"/> </attributes> </classpathentry> diff --git a/sb/.settings/org.eclipse.jdt.core.prefs b/sb/.settings/org.eclipse.jdt.core.prefs index 672496e107ed4e070613aad776b4df5146306bd4..b8ee0f533704e20691f752146bfe03af57c7af45 100644 --- a/sb/.settings/org.eclipse.jdt.core.prefs +++ b/sb/.settings/org.eclipse.jdt.core.prefs @@ -1,12 +1,12 @@ eclipse.preferences.version=1 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=9 org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.compliance=9 org.eclipse.jdt.core.compiler.debug.lineNumber=generate org.eclipse.jdt.core.compiler.debug.localVariable=generate org.eclipse.jdt.core.compiler.debug.sourceFile=generate org.eclipse.jdt.core.compiler.problem.assertIdentifier=error org.eclipse.jdt.core.compiler.problem.enumIdentifier=error org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning -org.eclipse.jdt.core.compiler.source=1.8 +org.eclipse.jdt.core.compiler.source=9 diff --git a/sb/META-INF/MANIFEST.MF b/sb/META-INF/MANIFEST.MF index 497ed6fe2e6f5e421dec1ef95cc0ad31967fc98a..f8fc8c2f6dc34f8cd0ee9f1af20b1fcc83b39460 100644 --- a/sb/META-INF/MANIFEST.MF +++ b/sb/META-INF/MANIFEST.MF @@ -2,16 +2,15 @@ Manifest-Version: 1.0 Bundle-ManifestVersion: 2 Bundle-Name: Scenebuilder Bundle-SymbolicName: com.oracle.javafx.scenebuilder;singleton:=true -Bundle-Version: 8.3.0 +Bundle-Version: 9.0.1 Bundle-ClassPath: lib/javax.json-api-1.0.jar, lib/plexus-utils-2.1.jar, . Export-Package: com.oracle.javafx.scenebuilder.app, com.oracle.javafx.scenebuilder.app.info, com.oracle.javafx.scenebuilder.app.message, - com.oracle.javafx.scenebuilder.app.selectionbar, + com.oracle.javafx.scenebuilder.app.preferences, com.oracle.javafx.scenebuilder.kit.editor, - com.oracle.javafx.scenebuilder.kit.editor.i18n, com.oracle.javafx.scenebuilder.kit.editor.job, com.oracle.javafx.scenebuilder.kit.editor.panel.content, com.oracle.javafx.scenebuilder.kit.editor.panel.hierarchy, @@ -22,6 +21,7 @@ Export-Package: com.oracle.javafx.scenebuilder.app, com.oracle.javafx.scenebuilder.kit.editor.selection, com.oracle.javafx.scenebuilder.kit.fxom, com.oracle.javafx.scenebuilder.kit.glossary, + com.oracle.javafx.scenebuilder.kit.i18n, com.oracle.javafx.scenebuilder.kit.library, com.oracle.javafx.scenebuilder.kit.metadata, com.oracle.javafx.scenebuilder.kit.metadata.klass, @@ -31,7 +31,9 @@ Export-Package: com.oracle.javafx.scenebuilder.app, com.oracle.javafx.scenebuilder.kit.metadata.property.value.keycombination, com.oracle.javafx.scenebuilder.kit.metadata.property.value.list, com.oracle.javafx.scenebuilder.kit.metadata.property.value.paint, - com.oracle.javafx.scenebuilder.kit.metadata.util + com.oracle.javafx.scenebuilder.kit.metadata.util, + com.oracle.javafx.scenebuilder.kit.preferences, + com.oracle.javafx.scenebuilder.kit.selectionbar Import-Package: org.apache.commons.codec.binary;version="1.9.0", org.apache.commons.lang3;version="3.1.0", org.apache.http;version="4.4.6", @@ -44,4 +46,5 @@ Import-Package: org.apache.commons.codec.binary;version="1.9.0", org.eclipse.aether.transport.file;version="1.0.3", org.eclipse.aether.transport.http;version="1.0.3", org.eclipse.aether.util;version="1.0.3" -Bundle-RequiredExecutionEnvironment: JavaSE-1.8 +Bundle-RequiredExecutionEnvironment: JavaSE-9 +Automatic-Module-Name: com.oracle.javafx.scenebuilder diff --git a/sb/pom.xml b/sb/pom.xml index 0f60cfb65bd7862cf9d754cf7dd5eaf04cb4681d..cfdd7a95a1e9d8d4820e921849683381b328f8c7 100644 --- a/sb/pom.xml +++ b/sb/pom.xml @@ -1,4 +1,5 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <artifactId>com.oracle.javafx.scenebuilder</artifactId> @@ -11,5 +12,13 @@ <relativePath>../sb4e.parent</relativePath> </parent> - <version>8.3.0</version> + <version>9.0.1</version> + + <dependencies> + <dependency> + <groupId>org.glassfish</groupId> + <artifactId>javax.json</artifactId> + <version>1.0.4</version> + </dependency> + </dependencies> </project> \ No newline at end of file diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/AppPlatform.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/AppPlatform.java index a8355da14ab81f384d69d78c057335a1336fc08b..e399bd6a5e05898cdb5d098e7789cdcf0acbdbc0 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/AppPlatform.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/AppPlatform.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -36,15 +37,11 @@ import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import static com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform.IS_LINUX; import static com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform.IS_MAC; import static com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform.IS_WINDOWS; -import com.oracle.javafx.scenebuilder.kit.util.Deprecation; -import java.io.File; import java.io.IOException; import java.nio.file.FileAlreadyExistsException; import java.nio.file.Files; import java.nio.file.Paths; import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; import java.util.List; import javafx.application.Application; import javafx.application.Platform; @@ -92,39 +89,16 @@ public class AppPlatform { return userLibraryFolder; } - - public static synchronized String getUserM2Repository() { - String m2Path = System.getProperty("user.home") + File.separator + - ".m2" + File.separator + "repository"; //NOI18N - - // TODO: Allow custom path for .m2 - - assert m2Path != null; - - return m2Path; - } - - public static synchronized String getTempM2Repository() { - String m2Path = System.getProperty("java.io.tmpdir") + File.separator + "m2Tmp"; //NOI18N - - assert m2Path != null; - - return m2Path; - } - + public static boolean requestStart( AppNotificationHandler notificationHandler, Application.Parameters parameters) throws IOException { - if (IS_MAC) { - return requestStartMac(notificationHandler, parameters); + if (EditorPlatform.isAssertionEnabled()) { + // Development mode : we do not delegate to the existing instance + notificationHandler.handleLaunch(parameters.getUnnamed()); + return true; } else { - if (EditorPlatform.isAssertionEnabled()) { - // Development mode : we do not delegate to the existing instance - notificationHandler.handleLaunch(parameters.getUnnamed()); - return true; - } else { - return requestStartGeneric(notificationHandler, parameters); - } + return requestStartGeneric(notificationHandler, parameters); } } @@ -213,105 +187,4 @@ public class AppPlatform { } } - - - - /* - * Private (requestStartMac) - */ - - private static boolean requestStartMac( - AppNotificationHandler notificationHandler, Application.Parameters parameters) { - - Platform.setImplicitExit(false); - notificationHandler.handleLaunch(Collections.emptyList()); - Deprecation.setPlatformEventHandler(new MacEventHandler(notificationHandler, - Deprecation.getPlatformEventHandler())); - - return true; - } - - private static class MacEventHandler extends com.sun.glass.ui.Application.EventHandler { - - private final AppNotificationHandler notificationHandler; - private final com.sun.glass.ui.Application.EventHandler oldEventHandler; - private int openFilesCount; - - public MacEventHandler(AppNotificationHandler notificationHandler, - com.sun.glass.ui.Application.EventHandler oldEventHandler) { - assert notificationHandler != null; - this.notificationHandler = notificationHandler; - this.oldEventHandler = oldEventHandler; - } - - /* - * com.sun.glass.ui.Application.AppNotificationHandler - */ - @Override - public void handleDidFinishLaunchingAction(com.sun.glass.ui.Application app, long time) { - if (oldEventHandler != null) { - oldEventHandler.handleDidFinishLaunchingAction(app, time); - } - } - - @Override - public void handleDidBecomeActiveAction(com.sun.glass.ui.Application app, long time) { - if (oldEventHandler != null) { - oldEventHandler.handleDidBecomeActiveAction(app, time); - } - } - - @Override - public void handleOpenFilesAction(com.sun.glass.ui.Application app, long time, final String[] files) { - if (oldEventHandler != null) { - oldEventHandler.handleOpenFilesAction(app, time, files); - } - - /* - * When SB is started from NB or test environment on Mac OS, this - * method is called a first time with dummy parameter like this: - * files[0] == "com.oracle.javafx.scenebuilder.app.SceneBuilderApp". //NOI18N - * We ignore this call here. - * - * With Eclipse on Mac, files[0] == System.getProperty("java.class.path") (!) //NOI18N - */ - final boolean openRejected; - if (startingFromTestBed) { - openRejected = true; - } else if (openFilesCount++ == 0) { - openRejected = (files.length == 1) - && ( files[0].equals(SceneBuilderApp.class.getName()) || //NOI18N - files[0].equals(System.getProperty("java.class.path"))); //NOI18N - } else { - openRejected = false; - } - - if (openRejected == false) { - // We're starting Scene Builder by opening a file so - // we shouldn't show the Welcome Dialog - WelcomeDialog.getInstance().hide(); - notificationHandler.handleOpenFilesAction(Arrays.asList(files)); - } - } - - @Override - public void handleQuitAction(com.sun.glass.ui.Application app, long time) { - if (oldEventHandler != null) { - oldEventHandler.handleQuitAction(app, time); - } - notificationHandler.handleQuitAction(); - } - } - - - /* - * Some code to help starting Scene Builder application from SQE java code. - * This is relevant on Mac only. - */ - - private static boolean startingFromTestBed; - - public static void setStartingFromTestBed(boolean macWorkaroundEnabled) { - AppPlatform.startingFromTestBed = macWorkaroundEnabled; - } } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/DocumentWindowController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/DocumentWindowController.java index aac8d03cd923b36064c45c41e88631eb7694abc6..fa1e7ab54b24a9cfa95de0783f706941ef5aeb9c 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/DocumentWindowController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/DocumentWindowController.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -38,11 +39,13 @@ import com.oracle.javafx.scenebuilder.app.message.MessageBarController; import com.oracle.javafx.scenebuilder.app.preferences.PreferencesController; import com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordDocument; import com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal; -import com.oracle.javafx.scenebuilder.app.preview.PreviewWindowController; +import com.oracle.javafx.scenebuilder.app.util.AppSettings; +import com.oracle.javafx.scenebuilder.kit.ResourceUtils; +import com.oracle.javafx.scenebuilder.kit.preview.PreviewWindowController; import com.oracle.javafx.scenebuilder.app.report.JarAnalysisReportController; -import com.oracle.javafx.scenebuilder.app.selectionbar.SelectionBarController; -import com.oracle.javafx.scenebuilder.app.skeleton.SkeletonWindowController; -import com.oracle.javafx.scenebuilder.app.util.SBSettings; +import com.oracle.javafx.scenebuilder.kit.selectionbar.SelectionBarController; +import com.oracle.javafx.scenebuilder.kit.skeleton.SkeletonWindowController; +import com.oracle.javafx.scenebuilder.kit.alert.WarnThemeAlert; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.EditorController.ControlAction; import com.oracle.javafx.scenebuilder.kit.editor.EditorController.EditAction; @@ -72,7 +75,7 @@ import com.oracle.javafx.scenebuilder.kit.fxom.FXOMNodes; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; import com.oracle.javafx.scenebuilder.kit.library.Library; import com.oracle.javafx.scenebuilder.kit.library.user.UserLibrary; -import com.sun.javafx.scene.control.behavior.KeyBinding; +import com.oracle.javafx.scenebuilder.kit.util.Utils; import java.io.File; import java.io.IOException; @@ -86,7 +89,6 @@ import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.attribute.FileTime; import java.util.ArrayList; -import java.util.Collections; import java.util.Comparator; import java.util.HashMap; import java.util.List; @@ -114,6 +116,7 @@ import javafx.scene.input.KeyCombination; import javafx.scene.input.KeyEvent; import javafx.scene.layout.StackPane; import javafx.scene.layout.VBox; +import javafx.scene.paint.Color; import javafx.stage.FileChooser; import javafx.stage.FileChooser.ExtensionFilter; import javafx.stage.Window; @@ -177,7 +180,8 @@ public class DocumentWindowController extends AbstractFxmlWindowController { private final InspectorPanelController inspectorPanelController = new InspectorPanelController(editorController); private final CssPanelDelegate cssPanelDelegate = new CssPanelDelegate(inspectorPanelController, this); private final CssPanelController cssPanelController = new CssPanelController(editorController, cssPanelDelegate); - private final LibraryPanelController libraryPanelController = new LibraryPanelController(editorController); + private final LibraryPanelController libraryPanelController = new LibraryPanelController(editorController, + PreferencesController.getSingleton().getMavenPreferences()); private final SelectionBarController selectionBarController = new SelectionBarController(editorController); private final MessageBarController messageBarController = new MessageBarController(editorController); private final SearchController librarySearchController = new SearchController(editorController); @@ -185,7 +189,7 @@ public class DocumentWindowController extends AbstractFxmlWindowController { private final SearchController cssPanelSearchController = new SearchController(editorController);; private final SceneStyleSheetMenuController sceneStyleSheetMenuController = new SceneStyleSheetMenuController(this); private final CssPanelMenuController cssPanelMenuController = new CssPanelMenuController(cssPanelController); - private final ResourceController resourceController = new ResourceController((this)); + private final ResourceController resourceController = new ResourceController((this)); private final DocumentWatchingController watchingController = new DocumentWatchingController(this); // The controller below are created lazily because they need an owner @@ -236,11 +240,6 @@ public class DocumentWindowController extends AbstractFxmlWindowController { private FileTime loadFileTime; private Job saveJob; - private static List<String> imageExtensions; - private static List<String> audioExtensions; - private static List<String> videoExtensions; - private static List<String> mediaExtensions; - private final EventHandler<KeyEvent> mainKeyEventFilter = event -> { //------------------------------------------------------------------ // TEXT INPUT CONTROL @@ -262,19 +261,21 @@ public class DocumentWindowController extends AbstractFxmlWindowController { final KeyCombination accelerator = getAccelerator(event); if (isTextInputControlEditing(focusOwner) == true && accelerator != null) { - for (KeyBinding binding : SBTextInputControlBindings.getBindings()) { - // The event is handled natively - if (binding.getSpecificity(null, event) > 0) { - // - // When using system menu bar, the event is handled natively - // before the application receives it : we just consume the event - // so the editing action is not performed a second time by the app. - if (menuBarController.getMenuBar().isUseSystemMenuBar()) { - event.consume(); - } - break; - } - } + +// focusOwner.getInputMap() +// .lookupMapping(KeyBinding.toKeyBinding(event)) +// .ifPresent(mapping -> { +// // The event is handled natively +// if (mapping.getSpecificity(event) > 0) { +// // When using system menu bar, the event is handled natively +// // before the application receives it : we just consume the event +// // so the editing action is not performed a second time by the app. +// if (menuBarController.getMenuBar().isUseSystemMenuBar()) { +// event.consume(); +// } +// } +// }); + } //------------------------------------------------------------------ @@ -382,30 +383,32 @@ public class DocumentWindowController extends AbstractFxmlWindowController { public void loadFromFile(File fxmlFile) throws IOException { final URL fxmlURL = fxmlFile.toURI().toURL(); final String fxmlText = FXOMDocument.readContentFromURL(fxmlURL); - editorController.setFxmlTextAndLocation(fxmlText, fxmlURL); + editorController.setFxmlTextAndLocation(fxmlText, fxmlURL, false); updateLoadFileTime(); updateStageTitle(); // No-op if fxml has not been loaded yet - updateFromDocumentPreferences(); + updateFromDocumentPreferences(true); watchingController.update(); + + WarnThemeAlert.showAlertIfRequired(editorController, editorController.getFxomDocument(), getStage()); } - public void loadFromURL(URL fxmlURL) { + public void loadFromURL(URL fxmlURL, boolean refreshThemeFromDocumentPreferences) { assert fxmlURL != null; try { final String fxmlText = FXOMDocument.readContentFromURL(fxmlURL); - editorController.setFxmlTextAndLocation(fxmlText, null); + editorController.setFxmlTextAndLocation(fxmlText, null, false); updateLoadFileTime(); updateStageTitle(); // No-op if fxml has not been loaded yet - updateFromDocumentPreferences(); + updateFromDocumentPreferences(refreshThemeFromDocumentPreferences); watchingController.update(); } catch(IOException x) { throw new IllegalStateException(x); } } - public void loadWithDefaultContent() { + public void updateWithDefaultContent() { try { - editorController.setFxmlTextAndLocation("", null); //NOI18N + editorController.setFxmlTextAndLocation("", null, true); //NOI18N updateLoadFileTime(); updateStageTitle(); // No-op if fxml has not been loaded yet watchingController.update(); @@ -419,7 +422,7 @@ public class DocumentWindowController extends AbstractFxmlWindowController { assert (fxomDocument != null) && (fxomDocument.getLocation() != null); final URL fxmlURL = fxomDocument.getLocation(); final String fxmlText = FXOMDocument.readContentFromURL(fxmlURL); - editorController.setFxmlTextAndLocation(fxmlText, fxmlURL); + editorController.setFxmlTextAndLocation(fxmlText, fxmlURL, true); updateLoadFileTime(); // Here we do not invoke updateStageTitleAndPreferences() neither watchingController.update() } @@ -465,27 +468,79 @@ public class DocumentWindowController extends AbstractFxmlWindowController { cssPanelController.setTableColumnsOrderingReversed(cssTableColumnsOrderingReversed); } - public static final String makeTitle(FXOMDocument fxomDocument) { - final String title; - - if (fxomDocument == null) { - title = I18N.getString("label.no.document"); - } else if (fxomDocument.getLocation() == null) { - title = I18N.getString("label.untitled"); - } else { - String name = ""; //NOI18N - try { - final File toto = new File(fxomDocument.getLocation().toURI()); - name = toto.getName(); - } catch (URISyntaxException ex) { - throw new RuntimeException("Bug", ex); //NOI18N - } - title = name; + public void refreshCssTableColumnsOrderingReversed(PreferencesRecordGlobal preferences) { + refreshCssTableColumnsOrderingReversed(preferences.isCssTableColumnsOrderingReversed()); + } + + public void refreshAlignmentGuidesColor(PreferencesRecordGlobal preferences) { + final ContentPanelController cpc = getContentPanelController(); + cpc.setGuidesColor(preferences.getAlignmentGuidesColor()); + } + + public void refreshBackgroundImage(PreferencesRecordGlobal preferences) { + // Background images + getContentPanelController().setWorkspaceBackground(preferences.getBackgroundImageImage()); + } + + public void refreshToolTheme(PreferencesRecordGlobal preferences) { + final SceneBuilderApp app = SceneBuilderApp.getSingleton(); + final SceneBuilderApp.ApplicationControlAction aca; + switch(preferences.getToolTheme()) { + case DEFAULT: + aca = SceneBuilderApp.ApplicationControlAction.USE_DEFAULT_THEME; + break; + case DARK: + aca = SceneBuilderApp.ApplicationControlAction.USE_DARK_THEME; + break; + default: + assert false; + aca = null; + break; } - - return title; + app.performControlAction(aca, this); } - + + public void refreshLibraryDisplayOption(PreferencesRecordGlobal preferences) { + refreshLibraryDisplayOption(preferences.getLibraryDisplayOption()); + } + + public void refreshHierarchyDisplayOption(PreferencesRecordGlobal preferences) { + refreshHierarchyDisplayOption(preferences.getHierarchyDisplayOption()); + } + + public void refreshParentRingColor(PreferencesRecordGlobal preferences) { + Color parentRingColor = preferences.getParentRingColor(); + final ContentPanelController cpc = getContentPanelController(); + cpc.setPringColor(parentRingColor); + final AbstractHierarchyPanelController hpc = getHierarchyPanelController(); + hpc.setParentRingColor(parentRingColor); + } + + public void refreshRootContainerHeight(PreferencesRecordGlobal preferencesRecordGlobal) { + final EditorController ec = getEditorController(); + ec.setDefaultRootContainerHeight(preferencesRecordGlobal.getRootContainerHeight()); + } + + public void refreshRootContainerWidth(PreferencesRecordGlobal preferencesRecordGlobal) { + final EditorController ec = getEditorController(); + ec.setDefaultRootContainerWidth(preferencesRecordGlobal.getRootContainerWidth()); + } + + public void refreshTheme(PreferencesRecordGlobal preferencesRecordGlobal) { + final EditorController ec = getEditorController(); + ec.setTheme(preferencesRecordGlobal.getTheme()); + } + + public void refreshSwatch(PreferencesRecordGlobal preferencesRecordGlobal) { + final EditorController ec = getEditorController(); + ec.setGluonSwatch(preferencesRecordGlobal.getSwatch()); + } + + public void refreshGluonTheme(PreferencesRecordGlobal preferencesRecordGlobal) { + final EditorController ec = getEditorController(); + ec.setGluonTheme(preferencesRecordGlobal.getGluonTheme()); + } + public boolean canPerformControlAction(DocumentControlAction controlAction) { final boolean result; @@ -603,6 +658,7 @@ public class DocumentWindowController extends AbstractFxmlWindowController { previewWindowController = new PreviewWindowController(editorController, getStage()); previewWindowController.setToolStylesheet(getToolStylesheet()); } + previewWindowController.getStage().centerOnScreen(); previewWindowController.openWindow(); break; @@ -773,10 +829,10 @@ public class DocumentWindowController extends AbstractFxmlWindowController { case SHOW_SAMPLE_CONTROLLER: if (skeletonWindowController == null) { - skeletonWindowController = new SkeletonWindowController(editorController, getStage()); + skeletonWindowController = new SkeletonWindowController(editorController, + Utils.makeTitle(editorController.getFxomDocument()), getStage()); skeletonWindowController.setToolStylesheet(getToolStylesheet()); } - SBSettings.setWindowIcon(skeletonWindowController.getStage()); skeletonWindowController.openWindow(); break; @@ -1083,7 +1139,8 @@ public class DocumentWindowController extends AbstractFxmlWindowController { @Override protected void controllerDidCreateStage() { updateStageTitle(); - updateFromDocumentPreferences(); + updateFromDocumentPreferences(true); + editorController.setOwnerWindow(getStage()); } @Override @@ -1100,7 +1157,9 @@ public class DocumentWindowController extends AbstractFxmlWindowController { } super.openWindow(); - + if (!EditorPlatform.IS_MAC) { + getStage().setMaximized(true); + } // Give focus to the library search TextField assert librarySearchController != null; librarySearchController.requestFocus(); @@ -1267,9 +1326,17 @@ public class DocumentWindowController extends AbstractFxmlWindowController { @FXML public void onManageJarFxml(ActionEvent event) { if(libraryDialogController==null){ - libraryDialogController = new LibraryDialogController(editorController, this, getStage()); + libraryDialogController = new LibraryDialogController(editorController, AppSettings.getUserM2Repository(), + AppSettings.getTempM2Repository(), PreferencesController.getSingleton(), getStage()); + libraryDialogController.setOnAddJar(() -> onImportJarFxml(libraryDialogController.getStage())); + libraryDialogController.setOnEditFXML(fxmlPath -> { + if (SceneBuilderApp.getSingleton().lookupUnusedDocumentWindowController() != null) { + libraryDialogController.closeWindow(); + } + SceneBuilderApp.getSingleton().performOpenRecent(this, + fxmlPath.toFile()); + }); } - SBSettings.setWindowIcon(libraryDialogController.getStage()); libraryDialogController.openWindow(); } @@ -1341,7 +1408,6 @@ public class DocumentWindowController extends AbstractFxmlWindowController { jarAnalysisReportController = new JarAnalysisReportController(getEditorController(), getStage()); jarAnalysisReportController.setToolStylesheet(getToolStylesheet()); } - SBSettings.setWindowIcon(jarAnalysisReportController.getStage()); jarAnalysisReportController.openWindow(); } @@ -1507,19 +1573,7 @@ public class DocumentWindowController extends AbstractFxmlWindowController { final TextInputControl tic = getTextInputControl(focusOwner); tic.deleteNextChar(); } else { - - // Collects all the selected objects - final List<FXOMObject> selectedObjects = new ArrayList<>(); - final Selection selection = editorController.getSelection(); - if (selection.getGroup() instanceof ObjectSelectionGroup) { - final ObjectSelectionGroup osg = (ObjectSelectionGroup) selection.getGroup(); - selectedObjects.addAll(osg.getItems()); - } else if (selection.getGroup() instanceof GridSelectionGroup) { - final GridSelectionGroup gsg = (GridSelectionGroup) selection.getGroup(); - selectedObjects.addAll(gsg.collectSelectedObjects()); - } else { - assert false; - } + final List<FXOMObject> selectedObjects = editorController.getSelectedObjects(); // Collects fx:ids in selected objects and their descendants. // We filter out toggle groups because their fx:ids are managed automatically. @@ -1593,16 +1647,16 @@ public class DocumentWindowController extends AbstractFxmlWindowController { final FileChooser fileChooser = new FileChooser(); final ExtensionFilter imageFilter = new ExtensionFilter(I18N.getString("file.filter.label.image"), - getImageExtensions()); + ResourceUtils.getSupportedImageExtensions()); final ExtensionFilter audioFilter = new ExtensionFilter(I18N.getString("file.filter.label.audio"), - getAudioExtensions()); + ResourceUtils.getSupportedAudioExtensions()); final ExtensionFilter videoFilter = new ExtensionFilter(I18N.getString("file.filter.label.video"), - getVideoExtensions()); + ResourceUtils.getSupportedVideoExtensions()); final ExtensionFilter mediaFilter = new ExtensionFilter(I18N.getString("file.filter.label.media"), - getMediaExtensions()); + ResourceUtils.getSupportedMediaExtensions()); fileChooser.getExtensionFilters().add(mediaFilter); fileChooser.getExtensionFilters().add(imageFilter); @@ -1620,57 +1674,7 @@ public class DocumentWindowController extends AbstractFxmlWindowController { this.getEditorController().performImportMedia(mediaFile); } } - - private static synchronized List<String> getImageExtensions() { - if (imageExtensions == null) { - imageExtensions = new ArrayList<>(); - imageExtensions.add("*.jpg"); //NOI18N - imageExtensions.add("*.jpeg"); //NOI18N - imageExtensions.add("*.png"); //NOI18N - imageExtensions.add("*.gif"); //NOI18N - imageExtensions = Collections.unmodifiableList(imageExtensions); - } - return imageExtensions; - } - private static synchronized List<String> getAudioExtensions() { - if (audioExtensions == null) { - audioExtensions = new ArrayList<>(); - audioExtensions.add("*.aif"); //NOI18N - audioExtensions.add("*.aiff"); //NOI18N - audioExtensions.add("*.mp3"); //NOI18N - audioExtensions.add("*.m4a"); //NOI18N - audioExtensions.add("*.wav"); //NOI18N - audioExtensions.add("*.m3u"); //NOI18N - audioExtensions.add("*.m3u8"); //NOI18N - audioExtensions = Collections.unmodifiableList(audioExtensions); - } - return audioExtensions; - } - - private static synchronized List<String> getVideoExtensions() { - if (videoExtensions == null) { - videoExtensions = new ArrayList<>(); - videoExtensions.add("*.flv"); //NOI18N - videoExtensions.add("*.fxm"); //NOI18N - videoExtensions.add("*.mp4"); //NOI18N - videoExtensions.add("*.m4v"); //NOI18N - videoExtensions = Collections.unmodifiableList(videoExtensions); - } - return videoExtensions; - } - - private static synchronized List<String> getMediaExtensions() { - if (mediaExtensions == null) { - mediaExtensions = new ArrayList<>(); - mediaExtensions.addAll(getImageExtensions()); - mediaExtensions.addAll(getAudioExtensions()); - mediaExtensions.addAll(getVideoExtensions()); - mediaExtensions = Collections.unmodifiableList(mediaExtensions); - } - return mediaExtensions; - } - private void performIncludeFxml() { final FileChooser fileChooser = new FileChooser(); @@ -1773,17 +1777,18 @@ public class DocumentWindowController extends AbstractFxmlWindowController { private void updateStageTitle() { if (libraryPanelHost != null) { - getStage().setTitle(makeTitle(editorController.getFxomDocument())); + getStage().setTitle(Utils.makeTitle(editorController.getFxomDocument())); } // else controllerDidLoadFxml() will invoke me again } - private void updateFromDocumentPreferences() { + private void updateFromDocumentPreferences(boolean refreshTheme) { if (libraryPanelHost != null) { // Layout is over // Refresh UI with preferences final PreferencesController pc = PreferencesController.getSingleton(); // Preferences global to the application final PreferencesRecordGlobal recordGlobal = pc.getRecordGlobal(); - recordGlobal.refresh(this); +// recordGlobal.refresh(this, refreshTheme); + refreshFromPreferencesRecordGlobal(recordGlobal, refreshTheme); // Preferences specific to the document final PreferencesRecordDocument recordDocument = pc.getRecordDocument(this); recordDocument.readFromJavaPreferences(); @@ -1791,7 +1796,24 @@ public class DocumentWindowController extends AbstractFxmlWindowController { recordDocument.refresh(); } } - + + public void refreshFromPreferencesRecordGlobal(PreferencesRecordGlobal recordGlobal, boolean refreshTheme) { + refreshAlignmentGuidesColor(recordGlobal); + refreshBackgroundImage(recordGlobal); + refreshCssTableColumnsOrderingReversed(recordGlobal); + refreshToolTheme(recordGlobal); + refreshLibraryDisplayOption(recordGlobal); + refreshHierarchyDisplayOption(recordGlobal); + refreshParentRingColor(recordGlobal); + refreshRootContainerHeight(recordGlobal); + refreshRootContainerWidth(recordGlobal); + if (refreshTheme) { + refreshTheme(recordGlobal); + refreshSwatch(recordGlobal); + refreshGluonTheme(recordGlobal); + } + } + private void resetDocumentPreferences() { final PreferencesController pc = PreferencesController.getSingleton(); final PreferencesRecordDocument recordDocument = pc.getRecordDocument(this); @@ -2061,8 +2083,7 @@ public class DocumentWindowController extends AbstractFxmlWindowController { d.setOKButtonTitle(I18N.getString("label.save")); d.setActionButtonTitle(I18N.getString("label.do.not.save")); d.setActionButtonVisible(true); - SBSettings.setWindowIcon(d.getStage()); - + switch(d.showAndWait()) { default: case OK: @@ -2194,17 +2215,17 @@ public class DocumentWindowController extends AbstractFxmlWindowController { } } -/** - * This class setup key bindings for the TextInputControl type classes and - * provide a way to access the key binding list. - */ -class SBTextInputControlBindings extends com.sun.javafx.scene.control.behavior.TextInputControlBindings { - - private SBTextInputControlBindings() { - assert false; - } - - public static List<KeyBinding> getBindings() { - return BINDINGS; - } -} +///** +// * This class setup key bindings for the TextInputControl type classes and +// * provide a way to access the key binding list. +// */ +//class SBTextInputControlBindings extends TextInputControlBindings { +// +// private SBTextInputControlBindings() { +// assert false; +// } +// +// public static List<KeyBinding> getBindings() { +// return BINDINGS; +// } +//} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/ResourceController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/ResourceController.java index e14c0683c247352d9f02b3a645ae318611a74601..ced064bbcbb91e112fb042751c94a67fa0494597 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/ResourceController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/ResourceController.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/SceneBuilderApp.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/SceneBuilderApp.java index fa599181f059fcad1e54b0717fa4a27d3418853d..1c228426512719b45f9e631ccc40676a8f01e195 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/SceneBuilderApp.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/SceneBuilderApp.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -33,16 +34,24 @@ package com.oracle.javafx.scenebuilder.app; import com.oracle.javafx.scenebuilder.app.DocumentWindowController.ActionStatus; import com.oracle.javafx.scenebuilder.app.about.AboutWindowController; +import com.oracle.javafx.scenebuilder.kit.preferences.MavenPreferences; +import com.oracle.javafx.scenebuilder.kit.ResourceUtils; +import com.oracle.javafx.scenebuilder.kit.ToolTheme; +import com.oracle.javafx.scenebuilder.kit.alert.ImportingGluonControlsAlert; +import com.oracle.javafx.scenebuilder.kit.alert.SBAlert; import com.oracle.javafx.scenebuilder.app.i18n.I18N; import com.oracle.javafx.scenebuilder.app.menubar.MenuBarController; import com.oracle.javafx.scenebuilder.app.preferences.PreferencesController; import com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal; import com.oracle.javafx.scenebuilder.app.preferences.PreferencesWindowController; import com.oracle.javafx.scenebuilder.app.registration.RegistrationWindowController; -import com.oracle.javafx.scenebuilder.app.template.FxmlTemplates; -import com.oracle.javafx.scenebuilder.app.template.TemplateDialogController; +import com.oracle.javafx.scenebuilder.kit.library.util.JarReport; +import com.oracle.javafx.scenebuilder.kit.template.Template; +import com.oracle.javafx.scenebuilder.kit.template.TemplatesWindowController; +import com.oracle.javafx.scenebuilder.kit.template.Type; import com.oracle.javafx.scenebuilder.app.tracking.Tracking; -import com.oracle.javafx.scenebuilder.app.util.SBSettings; +import com.oracle.javafx.scenebuilder.app.util.AppSettings; +import com.oracle.javafx.scenebuilder.app.welcomedialog.WelcomeDialogWindowController; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog.AlertDialog; @@ -50,7 +59,6 @@ import com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog.ErrorDialog; import com.oracle.javafx.scenebuilder.kit.library.BuiltinLibrary; import com.oracle.javafx.scenebuilder.kit.library.user.UserLibrary; import com.oracle.javafx.scenebuilder.kit.metadata.Metadata; -import com.oracle.javafx.scenebuilder.kit.util.Deprecation; import com.oracle.javafx.scenebuilder.kit.util.control.effectpicker.EffectPicker; import java.io.File; @@ -67,6 +75,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.concurrent.CountDownLatch; +import java.util.function.Consumer; import java.util.logging.Level; import java.util.logging.Logger; @@ -75,6 +84,10 @@ import javafx.application.Platform; import javafx.beans.InvalidationListener; import javafx.beans.Observable; import javafx.beans.value.ChangeListener; +import javafx.collections.FXCollections; +import javafx.collections.ListChangeListener; +import javafx.collections.ObservableList; +import javafx.scene.control.Alert; import javafx.stage.FileChooser; import javafx.stage.Stage; @@ -82,22 +95,14 @@ import javafx.stage.Stage; * */ public class SceneBuilderApp extends Application implements AppPlatform.AppNotificationHandler { - public static final String VERSION = "8.3.0"; public enum ApplicationControlAction { ABOUT, + CHECK_UPDATES, REGISTER, NEW_FILE, - NEW_ALERT_DIALOG, - NEW_ALERT_DIALOG_CSS, - NEW_ALERT_DIALOG_I18N, - NEW_BASIC_APPLICATION, - NEW_BASIC_APPLICATION_CSS, - NEW_BASIC_APPLICATION_I18N, - NEW_COMPLEX_APPLICATION, - NEW_COMPLEX_APPLICATION_CSS, - NEW_COMPLEX_APPLICATION_I18N, + NEW_TEMPLATE, OPEN_FILE, CLOSE_FRONT_WINDOW, USE_DEFAULT_THEME, @@ -106,31 +111,11 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif EXIT } - public enum ToolTheme { - - DEFAULT { - @Override - public String toString() { - return I18N.getString("prefs.tool.theme.default"); - } - }, - DARK { - @Override - public String toString() { - return I18N.getString("prefs.tool.theme.dark"); - } - } - } - private static SceneBuilderApp singleton; private static String darkToolStylesheet; private static final CountDownLatch launchLatch = new CountDownLatch(1); - private final List<DocumentWindowController> windowList = new ArrayList<>(); - private final PreferencesWindowController preferencesWindowController - = new PreferencesWindowController(); - private final AboutWindowController aboutWindowController - = new AboutWindowController(); + private final ObservableList<DocumentWindowController> windowList = FXCollections.observableArrayList(); private UserLibrary userLibrary; private ToolTheme toolTheme = ToolTheme.DEFAULT; @@ -149,6 +134,18 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif // set design time flag java.beans.Beans.setDesignTime(true); + // SB-270 + windowList.addListener((ListChangeListener.Change<? extends DocumentWindowController> c) -> { + while (c.next()) { + if (c.wasAdded()) { + final String toolStylesheet = getToolStylesheet(); + for (DocumentWindowController dwc : c.getAddedSubList()) { + dwc.setToolStylesheet(toolStylesheet); + } + } + } + }); + /* * We spawn our two threads for handling background startup. */ @@ -175,34 +172,31 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif public void performControlAction(ApplicationControlAction a, DocumentWindowController source) { switch (a) { case ABOUT: + AboutWindowController aboutWindowController = new AboutWindowController(); + aboutWindowController.setToolStylesheet(getToolStylesheet()); aboutWindowController.openWindow(); - SBSettings.setWindowIcon(aboutWindowController.getStage()); + AppSettings.setWindowIcon(aboutWindowController.getStage()); break; case REGISTER: - final RegistrationWindowController registrationWindowController = new RegistrationWindowController(); + final RegistrationWindowController registrationWindowController = new RegistrationWindowController(source.getStage()); registrationWindowController.openWindow(); break; + case CHECK_UPDATES: + checkUpdates(source); + break; + case NEW_FILE: final DocumentWindowController newWindow = makeNewWindow(); - newWindow.loadWithDefaultContent(); + newWindow.updateWithDefaultContent(); newWindow.openWindow(); break; - case NEW_ALERT_DIALOG: - case NEW_BASIC_APPLICATION: - case NEW_COMPLEX_APPLICATION: - performNewTemplate(a); - break; - - case NEW_ALERT_DIALOG_CSS: - case NEW_ALERT_DIALOG_I18N: - case NEW_BASIC_APPLICATION_CSS: - case NEW_BASIC_APPLICATION_I18N: - case NEW_COMPLEX_APPLICATION_CSS: - case NEW_COMPLEX_APPLICATION_I18N: - performNewTemplateWithResources(a); + case NEW_TEMPLATE: + final TemplatesWindowController templatesWindowController = new TemplatesWindowController(source.getStage()); + templatesWindowController.setOnTemplateChosen(this::performNewTemplateInNewWindow); + templatesWindowController.openWindow(); break; case OPEN_FILE: @@ -222,7 +216,8 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif break; case SHOW_PREFERENCES: - SBSettings.setWindowIcon(preferencesWindowController.getStage()); + PreferencesWindowController preferencesWindowController = new PreferencesWindowController(source.getStage()); + preferencesWindowController.setToolStylesheet(getToolStylesheet()); preferencesWindowController.openWindow(); break; @@ -238,16 +233,9 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif switch (a) { case ABOUT: case REGISTER: + case CHECK_UPDATES: case NEW_FILE: - case NEW_ALERT_DIALOG: - case NEW_BASIC_APPLICATION: - case NEW_COMPLEX_APPLICATION: - case NEW_ALERT_DIALOG_CSS: - case NEW_ALERT_DIALOG_I18N: - case NEW_BASIC_APPLICATION_CSS: - case NEW_BASIC_APPLICATION_I18N: - case NEW_COMPLEX_APPLICATION_CSS: - case NEW_COMPLEX_APPLICATION_I18N: + case NEW_TEMPLATE: case OPEN_FILE: case SHOW_PREFERENCES: case EXIT: @@ -349,9 +337,7 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif public static synchronized String getDarkToolStylesheet() { if (darkToolStylesheet == null) { - final URL url = SceneBuilderApp.class.getResource("css/ThemeDark.css"); //NOI18N - assert url != null; - darkToolStylesheet = url.toExternalForm(); + darkToolStylesheet = ResourceUtils.THEME_DARK_STYLESHEET; } return darkToolStylesheet; } @@ -397,8 +383,36 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif public void handleLaunch(List<String> files) { setApplicationUncaughtExceptionHandler(); + MavenPreferences mavenPreferences = PreferencesController.getSingleton().getMavenPreferences(); // Creates the user library - userLibrary = new UserLibrary(AppPlatform.getUserLibraryFolder()); + userLibrary = new UserLibrary(AppPlatform.getUserLibraryFolder(), + () -> mavenPreferences.getArtifactsPathsWithDependencies(), + () -> mavenPreferences.getArtifactsFilter()); + + userLibrary.setOnUpdatedJarReports(jarReports -> { + boolean shouldShowImportGluonJarAlert = false; + for (JarReport jarReport : jarReports) { + if (jarReport.hasGluonControls()) { + // We check if the jar has already been imported to avoid showing the import gluon jar + // alert every time Scene Builder starts for jars that have already been imported + if (!hasGluonJarBeenImported(jarReport.getJar().getFileName().toString())) { + shouldShowImportGluonJarAlert = true; + } + + } + } + if (shouldShowImportGluonJarAlert) { + SceneBuilderApp sceneBuilderApp = SceneBuilderApp.getSingleton(); + DocumentWindowController dwc = sceneBuilderApp.getFrontDocumentWindow(); + if (dwc == null) { + dwc = sceneBuilderApp.getDocumentWindowControllers().get(0); + } + ImportingGluonControlsAlert alert = new ImportingGluonControlsAlert(dwc.getStage()); + AppSettings.setWindowIcon(alert); + alert.showAndWait(); + } + updateImportedGluonJars(jarReports); + }); userLibrary.explorationCountProperty().addListener((ChangeListener<Number>) (ov, t, t1) -> userLibraryExplorationCountDidChange()); @@ -409,7 +423,7 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif if (files.isEmpty()) { // Creates an empty document final DocumentWindowController newWindow = makeNewWindow(); - newWindow.loadWithDefaultContent(); + newWindow.updateWithDefaultContent(); newWindow.openWindow(); // Show ScenicView Tool when the JVM is started with option -Dscenic. @@ -418,26 +432,26 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif Platform.runLater(new ScenicViewStarter(newWindow.getScene())); } - WelcomeDialog.getInstance().setOnHidden(event -> { - verifyLatestVersion(); - verifyRegistration(); + WelcomeDialogWindowController.getInstance().getStage().setOnHidden(event -> { + showUpdateDialogIfRequired(newWindow, () -> { + if (!Platform.isFxApplicationThread()) { + Platform.runLater(() -> showRegistrationDialogIfRequired(newWindow)); + } else { + showRegistrationDialogIfRequired(newWindow); + } + + }); }); // Unless we're on a Mac we're starting SB directly (fresh start) // so we're not opening any file and as such we should show the Welcome Dialog - WelcomeDialog.getInstance().show(); + WelcomeDialogWindowController.getInstance().getStage().show(); } else { // Open files passed as arguments by the platform handleOpenFilesAction(files); } - // On Mac, AppPlatform disables implicit exit. - // So we need to set a default system menu bar. - if (Platform.isImplicitExit() == false) { - Deprecation.setDefaultSystemMenuBar(MenuBarController.getSystemMenuBarController().getMenuBar()); - } - } private void sendTrackingStartupInfo() { @@ -548,7 +562,7 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif public DocumentWindowController makeNewWindow() { final DocumentWindowController result = new DocumentWindowController(); - SBSettings.setWindowIcon(result.getStage()); + AppSettings.setWindowIcon(result.getStage()); windowList.add(result); return result; @@ -581,33 +595,43 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif } } - private void performNewTemplate(ApplicationControlAction action) { + public void performNewTemplate(Template template) { + DocumentWindowController documentWC = getDocumentWindowControllers().get(0); + loadTemplateInWindow(template, documentWC); + } + + public void performNewTemplateInNewWindow(Template template) { final DocumentWindowController newTemplateWindow = makeNewWindow(); - final URL url = FxmlTemplates.getContentURL(action); - newTemplateWindow.loadFromURL(url); - newTemplateWindow.openWindow(); + loadTemplateInWindow(template, newTemplateWindow); } - private void performNewTemplateWithResources(ApplicationControlAction action) { - final TemplateDialogController tdc = new TemplateDialogController(action); - tdc.setToolStylesheet(getToolStylesheet()); - tdc.openWindow(); + private void loadTemplateInWindow(Template template, DocumentWindowController documentWindowController) { + final URL url = template.getFXMLURL(); + if (url != null) { + documentWindowController.loadFromURL(url, template.getType() != Type.PHONE); + } + Template.prepareDocument(documentWindowController.getEditorController(), template); + documentWindowController.openWindow(); } private void performCloseFrontWindow() { - if (preferencesWindowController != null - && preferencesWindowController.getStage().isFocused()) { - preferencesWindowController.closeWindow(); - } else { - for (DocumentWindowController dwc : windowList) { - if (dwc.isFrontDocumentWindow()) { - dwc.performCloseFrontDocumentWindow(); - break; - } + for (DocumentWindowController dwc : windowList) { + if (dwc.isFrontDocumentWindow()) { + dwc.performCloseFrontDocumentWindow(); + break; } } } + public DocumentWindowController getFrontDocumentWindow() { + for (DocumentWindowController dwc : windowList) { + if (dwc.isFrontDocumentWindow()) { + return dwc; + } + } + return null; + } + private void performOpenFiles(List<File> fxmlFiles, DocumentWindowController fromWindow) { assert fxmlFiles != null; @@ -643,8 +667,7 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif case 0: { // Good // Update recent items with opened files final PreferencesController pc = PreferencesController.getSingleton(); - final PreferencesRecordGlobal recordGlobal = pc.getRecordGlobal(); - recordGlobal.addRecentItems(fxmlFiles); + pc.getRecordGlobal().addRecentItems(fxmlFiles); break; } case 1: { @@ -801,27 +824,11 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif for (DocumentWindowController dwc : windowList) { dwc.setToolStylesheet(toolStylesheet); } - preferencesWindowController.setToolStylesheet(toolStylesheet); - aboutWindowController.setToolStylesheet(toolStylesheet); } private String getToolStylesheet() { - final String result; - - switch (this.toolTheme) { - - default: - case DEFAULT: - result = EditorController.getBuiltinToolStylesheet(); - break; - - case DARK: - result = getDarkToolStylesheet(); - break; - } - - return result; + return ResourceUtils.getToolStylesheet(toolTheme); } @@ -917,30 +924,88 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif } } - private void verifyLatestVersion() { - SBSettings.getLatestVersion(latestVersion -> { + private void showUpdateDialogIfRequired(DocumentWindowController dwc, Runnable runAfterUpdateDialog) { + AppSettings.getLatestVersion(latestVersion -> { if (latestVersion == null) { - // This can be because the url was not reachable so we don't show the update dialog + // This can be because the url was not reachable so we don't show the update dialog. return; } - if (SBSettings.isCurrentVersionLowerThan(latestVersion)) { - PreferencesController pc = PreferencesController.getSingleton(); - PreferencesRecordGlobal recordGlobal = pc.getRecordGlobal(); + try { + boolean showUpdateDialog = true; + if (AppSettings.isCurrentVersionLowerThan(latestVersion)) { + PreferencesController pc = PreferencesController.getSingleton(); + PreferencesRecordGlobal recordGlobal = pc.getRecordGlobal(); - if (isVersionToBeIgnored(recordGlobal, latestVersion)) { - return; + if (isVersionToBeIgnored(recordGlobal, latestVersion)) { + showUpdateDialog = false; + } + + if (!isUpdateDialogDateReached(recordGlobal)) { + showUpdateDialog = false; + } + } else { + showUpdateDialog = false; } - if (!isUpdateDialogDateReached(recordGlobal)) { - return; + if (showUpdateDialog) { + String latestVersionText = AppSettings.getLatestVersionText(); + String latestVersionAnnouncementURL = AppSettings.getLatestVersionAnnouncementURL(); + Platform.runLater(() -> { + UpdateSceneBuilderDialog dialog = new UpdateSceneBuilderDialog(latestVersion, latestVersionText, + latestVersionAnnouncementURL, dwc.getStage()); + dialog.setOnHidden(event -> runAfterUpdateDialog.run()); + dialog.showAndWait(); + }); + } else { + runAfterUpdateDialog.run(); } + } catch (NumberFormatException ex) { + Platform.runLater(() -> showVersionNumberFormatError(dwc)); + } + }); + } + + private void checkUpdates(DocumentWindowController source) { + AppSettings.getLatestVersion(latestVersion -> { + if (latestVersion == null) { Platform.runLater(() -> { - UpdateSceneBuilderDialog dialog = new UpdateSceneBuilderDialog(latestVersion); - dialog.showAndWait(); + SBAlert alert = new SBAlert(Alert.AlertType.ERROR, getFrontDocumentWindow().getStage()); + alert.setTitle(I18N.getString("check_for_updates.alert.error.title")); + alert.setHeaderText(I18N.getString("check_for_updates.alert.headertext")); + alert.setContentText(I18N.getString("check_for_updates.alert.error.message")); + alert.showAndWait(); }); } + try { + if (AppSettings.isCurrentVersionLowerThan(latestVersion)) { + String latestVersionText = AppSettings.getLatestVersionText(); + String latestVersionAnnouncementURL = AppSettings.getLatestVersionAnnouncementURL(); + Platform.runLater(() -> { + UpdateSceneBuilderDialog dialog = new UpdateSceneBuilderDialog(latestVersion, latestVersionText, + latestVersionAnnouncementURL, source.getStage()); + dialog.showAndWait(); + }); + } else { + SBAlert alert = new SBAlert(Alert.AlertType.INFORMATION, getFrontDocumentWindow().getStage()); + alert.setTitle(I18N.getString("check_for_updates.alert.up_to_date.title")); + alert.setHeaderText(I18N.getString("check_for_updates.alert.headertext")); + alert.setContentText(I18N.getString("check_for_updates.alert.up_to_date.message")); + alert.showAndWait(); + } + } catch (NumberFormatException ex) { + Platform.runLater(() -> showVersionNumberFormatError(source)); + } }); + } + private void showVersionNumberFormatError(DocumentWindowController dwc) { + SBAlert alert = new SBAlert(Alert.AlertType.ERROR, dwc.getStage()); + // The version number format is not supported and this is most probably only happening + // in development so we don't localize the strings + alert.setTitle("Error"); + alert.setHeaderText(I18N.getString("check_for_updates.alert.headertext")); + alert.setContentText("Version number format not supported. Maybe using SNAPSHOT or RC versions."); + alert.showAndWait(); } private boolean isVersionToBeIgnored(PreferencesRecordGlobal recordGlobal, String latestVersion) { @@ -959,16 +1024,16 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif } } - private void verifyRegistration() { + private void showRegistrationDialogIfRequired(DocumentWindowController dwc) { PreferencesController pc = PreferencesController.getSingleton(); PreferencesRecordGlobal recordGlobal = pc.getRecordGlobal(); String registrationHash = recordGlobal.getRegistrationHash(); if (registrationHash == null) { - performControlAction(ApplicationControlAction.REGISTER, null); + performControlAction(ApplicationControlAction.REGISTER, dwc); } else { String registrationEmail = recordGlobal.getRegistrationEmail(); if (registrationEmail == null && Math.random() > 0.8) { - performControlAction(ApplicationControlAction.REGISTER, null); + performControlAction(ApplicationControlAction.REGISTER, dwc); } } } @@ -984,4 +1049,42 @@ public class SceneBuilderApp extends Application implements AppPlatform.AppNotif dwc.getEditorController().getMessageLog().logInfoMessage(key, I18N.getBundle(), args); } } + + private static void updateImportedGluonJars(List<JarReport> jars) { + PreferencesController pc = PreferencesController.getSingleton(); + PreferencesRecordGlobal recordGlobal = pc.getRecordGlobal(); + List<String> jarReportCollection = new ArrayList<>(); + for (JarReport jarReport : jars) { + if (jarReport.hasGluonControls()) { + jarReportCollection.add(jarReport.getJar().getFileName().toString()); + } + } + if (jarReportCollection.isEmpty()) { + recordGlobal.setImportedGluonJars(new String[0]); + } else { + recordGlobal.setImportedGluonJars(jarReportCollection.toArray(new String[0])); + } + } + + private static boolean hasGluonJarBeenImported(String jar) { + PreferencesController pc = PreferencesController.getSingleton(); + String[] importedJars = pc.getRecordGlobal().getImportedGluonJars(); + if (importedJars == null) { + return false; + } + + for (String importedJar : importedJars) { + if (jar.equals(importedJar)) { + return true; + } + } + return false; + } + + public static void applyToAllDocumentWindows(Consumer<DocumentWindowController> consumer) { + for (DocumentWindowController dwc : getSingleton().getDocumentWindowControllers()) { + consumer.accept(dwc); + } + } + } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/SceneBuilderTest.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/SceneBuilderTest.java index bfc751b75e0abf9a91a79f6f37e7982b6d605e33..5faa77190c5907808578b1b171c277cea5e1b1c6 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/SceneBuilderTest.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/SceneBuilderTest.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -410,7 +411,6 @@ public class SceneBuilderTest { * @param args arguments to SceneBuilderApp.main() */ public static void startApplication(String[] args) { - AppPlatform.setStartingFromTestBed(true); SceneBuilderApp.main(args); } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/SceneStyleSheetMenuController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/SceneStyleSheetMenuController.java index 67c9ec9d479c4ba3e190303345169935fcec13b7..e8c977fc6eb055ae568a1b652c746c9a0e673446 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/SceneStyleSheetMenuController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/SceneStyleSheetMenuController.java @@ -64,7 +64,8 @@ public class SceneStyleSheetMenuController { // Open a file chooser for *.css & *.bss FileChooser fileChooser = new FileChooser(); - fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter(I18N.getString("scenestylesheet.filechooser.filter.msg"), + fileChooser.getExtensionFilters().add(new FileChooser.ExtensionFilter( + com.oracle.javafx.scenebuilder.kit.i18n.I18N.getString("scenestylesheet.filechooser.filter.msg"), "*.css", "*.bss")); //NOI18N fileChooser.setInitialDirectory(EditorController.getNextInitialDirectory()); List<File> selectedFiles = fileChooser.showOpenMultipleDialog(documentWindowController.getStage()); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/UpdateSceneBuilderDialog.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/UpdateSceneBuilderDialog.java index 5aadd6100f9cfe7c5d999dd1135972f5d74651ae..aa8b48cf656a950988e562c26660e20951d80fb7 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/UpdateSceneBuilderDialog.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/UpdateSceneBuilderDialog.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, Gluon and/or its affiliates. + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. * All rights reserved. Use is subject to license terms. * * This file is available and licensed under the following license: @@ -35,7 +35,8 @@ package com.oracle.javafx.scenebuilder.app; import com.oracle.javafx.scenebuilder.app.i18n.I18N; import com.oracle.javafx.scenebuilder.app.preferences.PreferencesController; import com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal; -import com.oracle.javafx.scenebuilder.app.util.SBSettings; +import com.oracle.javafx.scenebuilder.app.util.AppSettings; +import javafx.application.HostServices; import javafx.scene.control.ButtonBar; import javafx.scene.control.ButtonType; import javafx.scene.control.Dialog; @@ -45,34 +46,38 @@ import javafx.scene.layout.BorderPane; import javafx.scene.layout.ColumnConstraints; import javafx.scene.layout.GridPane; import javafx.scene.layout.VBox; +import javafx.stage.Stage; +import javafx.stage.Window; -import java.awt.*; -import java.io.IOException; -import java.net.URI; -import java.net.URISyntaxException; import java.time.LocalDate; public class UpdateSceneBuilderDialog extends Dialog { - public UpdateSceneBuilderDialog(String latestVersion) { - setTitle(I18N.getString("download_scene_builder.title")); - Label header = new Label(I18N.getString("download_scene_builder.header.label")); - Label currentVersionTextLabel = new Label(I18N.getString("download_scene_builder.current_version.label")); - Label latestVersionTextLabel = new Label(I18N.getString("download_scene_builder.last_version_number.label")); - Label currentVersionLabel = new Label(SBSettings.getSceneBuilderVersion()); + public UpdateSceneBuilderDialog(String latestVersion, String latestVersionTextString, String announcementURL, Window owner) { + initOwner(owner); + setTitle(I18N.getString("download.scene.builder.title")); + Label header = new Label(I18N.getString("download.scene.builder.header.label")); + Label currentVersionTextLabel = new Label(I18N.getString("download.scene.builder.current.version.label")); + Label latestVersionTextLabel = new Label(I18N.getString("download.scene.builder.last.version.number.label")); + Label currentVersionLabel = new Label(AppSettings.getSceneBuilderVersion()); Label latestVersionLabel = new Label(latestVersion); GridPane gridPane = new GridPane(); gridPane.add(currentVersionTextLabel, 0, 0); gridPane.add(currentVersionLabel, 1, 0); gridPane.add(latestVersionTextLabel, 0, 1); gridPane.add(latestVersionLabel, 1, 1); + + Label latestVersionText = new Label(latestVersionTextString); + gridPane.getColumnConstraints().add(new ColumnConstraints(100)); + VBox contentContainer = new VBox(); contentContainer.getChildren().addAll(header, gridPane); BorderPane mainContainer = new BorderPane(); mainContainer.setCenter(contentContainer); ImageView imageView = new ImageView(UpdateSceneBuilderDialog.class.getResource("computerDownload.png").toExternalForm()); mainContainer.setRight(imageView); + mainContainer.setBottom(latestVersionText); getDialogPane().setContent(mainContainer); @@ -80,25 +85,20 @@ public class UpdateSceneBuilderDialog extends Dialog { contentContainer.getStyleClass().add("content-container"); getDialogPane().getStyleClass().add("download_scenebuilder-dialog"); header.getStyleClass().add("header"); + latestVersionText.getStyleClass().add("latest-version-text"); - ButtonType downloadButton = new ButtonType(I18N.getString("download_scene_builder.download.label"), ButtonBar.ButtonData.OK_DONE); - ButtonType ignoreThisUpdate = new ButtonType(I18N.getString("download_scene_builder.ignore.label")); - ButtonType remindLater = new ButtonType(I18N.getString("download_scene_builder.remind_later.label"), ButtonBar.ButtonData.CANCEL_CLOSE); - getDialogPane().getButtonTypes().addAll(downloadButton, ignoreThisUpdate, remindLater); + ButtonType downloadButton = new ButtonType(I18N.getString("download.scene.builder.download.label"), ButtonBar.ButtonData.OK_DONE); + ButtonType ignoreThisUpdate = new ButtonType(I18N.getString("download.scene.builder.ignore.label")); + ButtonType remindLater = new ButtonType(I18N.getString("download.scene.builder.remind.later.label"), ButtonBar.ButtonData.CANCEL_CLOSE); + ButtonType learnMore = new ButtonType(I18N.getString("download.scene.builder.learn.mode.label")); + getDialogPane().getButtonTypes().addAll(learnMore, downloadButton, ignoreThisUpdate, remindLater); getDialogPane().getStylesheets().add(SceneBuilderApp.class.getResource("css/UpdateSceneBuilderDialog.css").toString()); resultProperty().addListener((observable, oldValue, newValue) -> { + HostServices hostServices = SceneBuilderApp.getSingleton().getHostServices(); if (newValue == downloadButton) { - URI uri = null; - try { - uri = new URI("http://gluonhq.com/labs/scene-builder/#download"); - Desktop.getDesktop().browse(uri); - } catch (URISyntaxException e) { - e.printStackTrace(); - } catch (IOException e) { - e.printStackTrace(); - } + hostServices.showDocument(AppSettings.DOWNLOAD_URL); } else if (newValue == remindLater) { LocalDate now = LocalDate.now(); LocalDate futureDate = now.plusWeeks(1); @@ -109,7 +109,11 @@ public class UpdateSceneBuilderDialog extends Dialog { PreferencesController pc = PreferencesController.getSingleton(); PreferencesRecordGlobal recordGlobal = pc.getRecordGlobal(); recordGlobal.setIgnoreVersion(latestVersion); + } else if (newValue == learnMore) { + hostServices.showDocument(announcementURL); } }); + + AppSettings.setWindowIcon((Stage)getDialogPane().getScene().getWindow()); } } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/WelcomeDialog.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/WelcomeDialog.java deleted file mode 100644 index b9e32739d2f167e0f46d994ba5b0e5f63a7203c3..0000000000000000000000000000000000000000 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/WelcomeDialog.java +++ /dev/null @@ -1,191 +0,0 @@ -/* - * Copyright (c) 2016, Gluon and/or its affiliates. - * All rights reserved. Use is subject to license terms. - * - * This file is available and licensed under the following license: - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * - Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the distribution. - * - Neither the name of Oracle Corporation and Gluon nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package com.oracle.javafx.scenebuilder.app; - -import com.oracle.javafx.scenebuilder.app.i18n.I18N; -import com.oracle.javafx.scenebuilder.app.preferences.PreferencesController; -import com.oracle.javafx.scenebuilder.app.util.SBSettings; -import javafx.event.ActionEvent; -import javafx.geometry.Orientation; -import javafx.geometry.Pos; -import javafx.scene.control.ButtonBar; -import javafx.scene.control.ButtonType; -import javafx.scene.control.Dialog; -import javafx.scene.control.Hyperlink; -import javafx.scene.control.Label; -import javafx.scene.control.ScrollPane; -import javafx.scene.control.Separator; -import javafx.scene.control.Tooltip; -import javafx.scene.image.ImageView; -import javafx.scene.layout.HBox; -import javafx.scene.layout.VBox; -import javafx.stage.Stage; - -import java.io.File; -import java.util.Arrays; -import java.util.List; - -public class WelcomeDialog extends Dialog { - private static final String HEADER_IMAGE = WelcomeDialog.class.getResource("gluon_scene_builder.png").toString(); - - private static final String NEW_DESKTOP_PROJECT_ICON = WelcomeDialog.class.getResource("earthGlobalSolu.png").toString(); -// private static final String NEW_DESKTOP_AND_MOBILE_PROJ_ICON = WelcomeDialog.class.getResource("checkListDevice.png").toString(); - private static final String OPEN_PROJECT_ICON = WelcomeDialog.class.getResource("open_document.png").toString(); - - private static final int NUMBER_OF_ITEMS_WITHOUT_SCROLLPANE = 8; - - private static WelcomeDialog instance; - - SceneBuilderApp sceneBuilderApp; - - private WelcomeDialog() { - sceneBuilderApp = SceneBuilderApp.getSingleton(); - - setTitle(I18N.getString("welcome.title")); - // We want an empty header text but we don't want the graphic to go to the left which is what happens - // if you don't provide a header text. - setHeaderText(" "); - setGraphic(new ImageView(HEADER_IMAGE)); - - HBox mainContainer = new HBox(); - VBox actionsContainer = new VBox(); - VBox recentItemsContainer = new VBox(); - mainContainer.getChildren().addAll(recentItemsContainer, new Separator(Orientation.VERTICAL), actionsContainer); - - actionsContainer.getStyleClass().add("actions-container"); - recentItemsContainer.getStyleClass().add("recent-items-container"); - mainContainer.getStyleClass().add("main-container"); - - Label recentItemsTitle = new Label(I18N.getString("welcome.recentitems.header")); - recentItemsContainer.getChildren().add(recentItemsTitle); - - Label newProjectTitle = new Label(I18N.getString("welcome.actions.header")); - actionsContainer.getChildren().add(newProjectTitle); - Hyperlink desktopProject = new Hyperlink(I18N.getString("welcome.desktopproject.label")); -// Hyperlink desktopAndMobileProj = new Hyperlink(I18N.getString("welcome.desktopandmobile.label")); - Hyperlink openExistingProj = new Hyperlink(I18N.getString("welcome.openproject.label")); - - desktopProject.setOnAction(this::fireNewDesktopProject); - openExistingProj.setOnAction(this::fireOpenProject); - - HBox desktopProjectContainer = new HBox(); - HBox desktopAndMobileProjContainer = new HBox(); - HBox openExistingProjContainer = new HBox(); - desktopProjectContainer.getStyleClass().add("action-option-container"); - desktopAndMobileProjContainer.getStyleClass().add("action-option-container"); - openExistingProjContainer.getStyleClass().add("action-option-container"); - ImageView imageView = new ImageView(NEW_DESKTOP_PROJECT_ICON); - HBox imageViewHBox = new HBox(imageView); - imageViewHBox.setAlignment(Pos.CENTER_LEFT); - desktopProjectContainer.getChildren().addAll(imageViewHBox, desktopProject); - /*imageView = new ImageView(NEW_DESKTOP_AND_MOBILE_PROJ_ICON); - imageViewHBox = new HBox(imageView); - imageViewHBox.setAlignment(Pos.CENTER_LEFT); - desktopAndMobileProjContainer.getChildren().addAll(imageViewHBox, desktopAndMobileProj);*/ - imageView = new ImageView(OPEN_PROJECT_ICON); - imageViewHBox = new HBox(imageView); - imageViewHBox.setAlignment(Pos.CENTER_LEFT); - openExistingProjContainer.getChildren().addAll(imageViewHBox, openExistingProj); - VBox actionOptions = new VBox(); - actionOptions.getChildren().addAll(desktopProjectContainer, desktopAndMobileProjContainer, openExistingProjContainer); - - actionsContainer.getChildren().add(actionOptions); - - List<String> recentItems = PreferencesController.getSingleton().getRecordGlobal().getRecentItems(); - - VBox recentItemsOptions = new VBox(); - recentItemsOptions.getStyleClass().add("recent-items-options"); - if (recentItems.size() == 0) { - recentItemsOptions.getChildren().add(new Label(I18N.getString("welcome.recentitems.empty"))); - } - for (int row = 0; row < PreferencesController.getSingleton().getRecordGlobal().getRecentItemsSize(); ++row) { - if (recentItems.size() < row + 1) { - break; - } - - String recentItem = recentItems.get(row); - File recentItemFile = new File(recentItems.get(row)); - String recentItemTitle = recentItemFile.getName(); - Hyperlink titleLabel = new Hyperlink(recentItemTitle); - recentItemsOptions.getChildren().add(titleLabel); - - titleLabel.getStyleClass().add("recent-item-title"); - titleLabel.setOnAction(event -> fireOpenRecentProject(event, recentItem)); - titleLabel.setTooltip(new Tooltip(recentItem)); - } - if (recentItems.size() > NUMBER_OF_ITEMS_WITHOUT_SCROLLPANE) { - ScrollPane scrollPane = new ScrollPane(recentItemsOptions); - VBox scrollPaneContainer = new VBox(scrollPane); - scrollPaneContainer.getStyleClass().add("scroll-pane-container"); - recentItemsContainer.getChildren().add(scrollPaneContainer); - } else { - recentItemsContainer.getChildren().add(recentItemsOptions); - } - - ButtonType closeButton = new ButtonType(I18N.getString("welcome.close"), ButtonBar.ButtonData.CANCEL_CLOSE); - getDialogPane().getButtonTypes().add(closeButton); - getDialogPane().setContent(mainContainer); - - getDialogPane().getStyleClass().add("welcome-dialog"); - recentItemsTitle.getStyleClass().add("header"); - newProjectTitle.getStyleClass().add("header"); - actionOptions.getStyleClass().add("actions-options"); - - - getDialogPane().getStylesheets().add(SceneBuilderApp.class.getResource("css/WelcomeScreen.css").toString()); - } - - private void fireNewDesktopProject(ActionEvent event) { - close(); - } - - private void fireOpenProject(ActionEvent event) { - // Right now there is only one window open by default - DocumentWindowController documentWC = sceneBuilderApp.getDocumentWindowControllers().get(0); - sceneBuilderApp.performControlAction(SceneBuilderApp.ApplicationControlAction.OPEN_FILE, documentWC); - close(); - } - - private void fireOpenRecentProject(ActionEvent event, String projectPath) { - sceneBuilderApp.handleOpenFilesAction(Arrays.asList(projectPath)); - close(); - } - - public static WelcomeDialog getInstance() { - if (instance == null){ - instance = new WelcomeDialog(); - SBSettings.setWindowIcon((Stage)instance.getDialogPane().getScene().getWindow()); - } - return instance; - } -} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/about/AboutWindowController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/about/AboutWindowController.java index 4cb32cb6cc5361cfc2f43d831233a609abe5d8b1..cdc5838ad66c687966a6905c7266e78e0f67da39 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/about/AboutWindowController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/about/AboutWindowController.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates, 2015, Gluon. * All rights reserved. Use is subject to license terms. * @@ -33,9 +34,8 @@ package com.oracle.javafx.scenebuilder.app.about; import com.oracle.javafx.scenebuilder.app.SceneBuilderApp; import com.oracle.javafx.scenebuilder.app.i18n.I18N; +import com.oracle.javafx.scenebuilder.app.util.AppSettings; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractFxmlWindowController; -import com.sun.javafx.tk.Toolkit; -import com.sun.prism.GraphicsPipeline; import java.io.File; import java.io.IOException; import java.io.InputStream; @@ -57,14 +57,14 @@ public final class AboutWindowController extends AbstractFxmlWindowController { @FXML private TextArea textArea; - private String sbBuildInfo = "Version 8.3.0"; //NOI18N - private String sbBuildVersion = "8.3.0"; //NOI18N - private String sbBuildDate = "2015-03-03"; //NOI18N - private String sbBuildJavaVersion = "8u60"; //NOI18N + private String sbBuildInfo; + private String sbBuildVersion; + private String sbBuildDate; + private String sbBuildJavaVersion; // The resource bundle contains two keys: about.copyright and about.copyright.open - private String sbAboutCopyrightKeyName = "about.copyright.open"; //NOI18N - // File name must be in sync with what we use in logging.properties - private final String LOG_FILE_NAME = "scenebuilder-8.3.0.log"; //NOI18N + private String sbAboutCopyrightKeyName; + // File name must be in sync with what we use in logging.properties (Don't understand this comment, haven't found any logging.properties file + private final String LOG_FILE_NAME = "scenebuilder-" + AppSettings.getSceneBuilderVersion() + ".log"; //NOI18N public AboutWindowController() { super(AboutWindowController.class.getResource("About.fxml"), //NOI18N @@ -123,7 +123,6 @@ public final class AboutWindowController extends AbstractFxmlWindowController { StringBuilder text = getVersionParagraph() .append(getBuildInfoParagraph()) .append(getLoggingParagraph()) - .append(getFxParagraph()) .append(getJavaParagraph()) .append(getOsParagraph()) .append(I18N.getString(sbAboutCopyrightKeyName)); @@ -182,33 +181,6 @@ public final class AboutWindowController extends AbstractFxmlWindowController { return sb; } - private StringBuilder getFxParagraph() { - boolean hwAccelerated = false; - String tk = Toolkit.getToolkit().getClass().getSimpleName(); - StringBuilder fxtra = new StringBuilder("JavaFX\n"); //NOI18N - fxtra.append(I18N.getString("about.fx.toolkit")) - .append(" = ").append(tk).append("\n"); //NOI18N - - if ("GlassToolkit".equals(tk) || "PrismToolkit".equals(tk) //NOI18N - || "QuantumToolkit".equals(tk)) { //NOI18N - String ppl = GraphicsPipeline.getPipeline().getClass().getSimpleName(); - fxtra.append(I18N.getString("about.fx.pipeline")) - .append(" = ").append(ppl).append("\n"); //NOI18N - if (ppl.trim().equals("D3DPipeline") //NOI18N - || ppl.trim().equals("ES1Pipeline") //NOI18N - || ppl.trim().equals("ES2Pipeline")) { //NOI18N - hwAccelerated = true; - } - } - fxtra.append(I18N.getString("about.fx.hardware.acceleration")) - .append(" ") //NOI18N - .append(hwAccelerated ? I18N.getString("about.fx.hardware.acceleration.enabled") - : I18N.getString("about.fx.hardware.acceleration.disabled")) - .append("\n\n"); //NOI18N - - return fxtra; - } - private StringBuilder getJavaParagraph() { StringBuilder sb = new StringBuilder("Java\n"); //NOI18N sb.append(System.getProperty("java.runtime.version")).append(", ") //NOI18N diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/menubar/MenuBarController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/menubar/MenuBarController.java index da0bc8c19deced93e7717634e83471f6c950c848..cbb6392d3a49cc0e708e710151858d76cb07a21d 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/menubar/MenuBarController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/menubar/MenuBarController.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -117,23 +118,7 @@ public class MenuBarController { @FXML private MenuItem newMenuItem; @FXML - private MenuItem newAlertDialogMenuItem; - @FXML - private MenuItem newAlertDialogCssMenuItem; - @FXML - private MenuItem newAlertDialogI18nMenuItem; - @FXML - private MenuItem newBasicAppMenuItem; - @FXML - private MenuItem newBasicAppCssMenuItem; - @FXML - private MenuItem newBasicAppI18nMenuItem; - @FXML - private MenuItem newComplexAppMenuItem; - @FXML - private MenuItem newComplexAppCssMenuItem; - @FXML - private MenuItem newComplexAppI18nMenuItem; + private MenuItem newTemplateMenuItem; @FXML private MenuItem openMenuItem; @FXML @@ -257,6 +242,10 @@ public class MenuBarController { @FXML private MenuItem decreaseColumnSpanMenuItem; @FXML + private MenuItem phoneSetSizeMenuItem; + @FXML + private MenuItem tabletSetSizeMenuItem; + @FXML private RadioMenuItem qvgaSetSizeMenuItem; @FXML private RadioMenuItem vgaSetSizeMenuItem; @@ -319,7 +308,9 @@ public class MenuBarController { @FXML private MenuItem showPreviewInDialogMenuItem; @FXML - private RadioMenuItem gluonMobileThemeMenuItem; + private RadioMenuItem gluonMobileLightThemeMenuItem; + @FXML + private RadioMenuItem gluonMobileDarkThemeMenuItem; @FXML private RadioMenuItem modenaThemeMenuItem; @FXML @@ -351,6 +342,10 @@ public class MenuBarController { @FXML private MenuItem revealResourceMenuItem; @FXML + private RadioMenuItem phonePreviewSizeMenuItem; + @FXML + private RadioMenuItem tabletPreviewSizeMenuItem; + @FXML private RadioMenuItem qvgaPreviewSizeMenuItem; @FXML private RadioMenuItem vgaPreviewSizeMenuItem; @@ -361,12 +356,53 @@ public class MenuBarController { @FXML private RadioMenuItem preferredPreviewSizeMenuItem; + @FXML + private RadioMenuItem blueSwatch; + @FXML + private RadioMenuItem cyanSwatch; + @FXML + private RadioMenuItem deepOrangeSwatch; + @FXML + private RadioMenuItem deepPurpleSwatch; + @FXML + private RadioMenuItem greenSwatch; + @FXML + private RadioMenuItem indigoSwatch; + @FXML + private RadioMenuItem lightBlueSwatch; + @FXML + private RadioMenuItem pinkSwatch; + @FXML + private RadioMenuItem purpleSwatch; + @FXML + private RadioMenuItem redSwatch; + @FXML + private RadioMenuItem tealSwatch; + @FXML + private RadioMenuItem lightGreenSwatch; + @FXML + private RadioMenuItem limeSwatch; + @FXML + private RadioMenuItem yellowSwatch; + @FXML + private RadioMenuItem amberSwatch; + @FXML + private RadioMenuItem orangeSwatch; + @FXML + private RadioMenuItem brownSwatch; + @FXML + private RadioMenuItem greySwatch; + @FXML + private RadioMenuItem blueGreySwatch; + // Window // Help @FXML private MenuItem helpMenuItem; @FXML private MenuItem aboutMenuItem; + @FXML + private MenuItem checkUpdatesMenuItem; private static final KeyCombination.Modifier modifier; private final Map<KeyCombination, MenuItem> keyToMenu = new HashMap<>(); @@ -450,15 +486,7 @@ public class MenuBarController { assert windowMenu != null; assert newMenuItem != null; - assert newAlertDialogMenuItem != null; - assert newAlertDialogCssMenuItem != null; - assert newAlertDialogI18nMenuItem != null; - assert newBasicAppMenuItem != null; - assert newBasicAppCssMenuItem != null; - assert newBasicAppI18nMenuItem != null; - assert newComplexAppMenuItem != null; - assert newComplexAppCssMenuItem != null; - assert newComplexAppI18nMenuItem != null; + assert newTemplateMenuItem != null; assert openMenuItem != null; assert openRecentMenu != null; assert saveMenuItem != null; @@ -521,6 +549,8 @@ public class MenuBarController { assert decreaseRowSpanMenuItem != null; assert increaseColumnSpanMenuItem != null; assert decreaseColumnSpanMenuItem != null; + assert phoneSetSizeMenuItem != null; + assert tabletSetSizeMenuItem != null; assert qvgaSetSizeMenuItem != null; assert vgaSetSizeMenuItem != null; assert touchSetSizeMenuItem != null; @@ -552,7 +582,8 @@ public class MenuBarController { assert showPreviewInWindowMenuItem != null; assert showPreviewInDialogMenuItem != null; - assert gluonMobileThemeMenuItem != null; + assert gluonMobileLightThemeMenuItem != null; + assert gluonMobileDarkThemeMenuItem != null; assert modenaThemeMenuItem != null; assert modenaTouchThemeMenuItem != null; assert modenaHighContrastBlackonwhiteThemeMenuItem != null; @@ -568,6 +599,8 @@ public class MenuBarController { assert setResourceMenuItem != null; assert removeResourceMenuItem != null; assert revealResourceMenuItem != null; + assert phonePreviewSizeMenuItem != null; + assert tabletPreviewSizeMenuItem != null; assert qvgaPreviewSizeMenuItem != null; assert vgaPreviewSizeMenuItem != null; assert touchPreviewSizeMenuItem != null; @@ -576,6 +609,7 @@ public class MenuBarController { assert helpMenuItem != null; assert aboutMenuItem != null; + assert checkUpdatesMenuItem != null; /* * To make MenuBar.fxml editable with SB 1.1, the menu bar is enclosed @@ -591,6 +625,13 @@ public class MenuBarController { */ if (EditorPlatform.IS_MAC) { menuBar.setUseSystemMenuBar(true); + // SB-269 + menuBar.useSystemMenuBarProperty().addListener((obs, ov, nv) -> { + if (! nv) { + // Restore System MenuBar + menuBar.setUseSystemMenuBar(true); + } + }); exitMenuItem.getParentMenu().getItems().remove(exitMenuItem); } @@ -613,15 +654,7 @@ public class MenuBarController { */ newMenuItem.setUserData(new ApplicationControlActionController(ApplicationControlAction.NEW_FILE)); newMenuItem.setAccelerator(new KeyCodeCombination(KeyCode.N, modifier)); - newAlertDialogMenuItem.setUserData(new ApplicationControlActionController(ApplicationControlAction.NEW_ALERT_DIALOG)); - newAlertDialogCssMenuItem.setUserData(new ApplicationControlActionController(ApplicationControlAction.NEW_ALERT_DIALOG_CSS)); - newAlertDialogI18nMenuItem.setUserData(new ApplicationControlActionController(ApplicationControlAction.NEW_ALERT_DIALOG_I18N)); - newBasicAppMenuItem.setUserData(new ApplicationControlActionController(ApplicationControlAction.NEW_BASIC_APPLICATION)); - newBasicAppCssMenuItem.setUserData(new ApplicationControlActionController(ApplicationControlAction.NEW_BASIC_APPLICATION_CSS)); - newBasicAppI18nMenuItem.setUserData(new ApplicationControlActionController(ApplicationControlAction.NEW_BASIC_APPLICATION_I18N)); - newComplexAppMenuItem.setUserData(new ApplicationControlActionController(ApplicationControlAction.NEW_COMPLEX_APPLICATION)); - newComplexAppCssMenuItem.setUserData(new ApplicationControlActionController(ApplicationControlAction.NEW_COMPLEX_APPLICATION_CSS)); - newComplexAppI18nMenuItem.setUserData(new ApplicationControlActionController(ApplicationControlAction.NEW_COMPLEX_APPLICATION_I18N)); + newTemplateMenuItem.setUserData(new ApplicationControlActionController(ApplicationControlAction.NEW_TEMPLATE)); openMenuItem.setUserData(new ApplicationControlActionController(ApplicationControlAction.OPEN_FILE)); openMenuItem.setAccelerator(new KeyCodeCombination(KeyCode.O, modifier)); openRecentMenu.setOnShowing(t -> updateOpenRecentMenuItems()); @@ -874,6 +907,21 @@ public class MenuBarController { decreaseRowSpanMenuItem.setUserData(new EditActionController(EditAction.DECREASE_ROW_SPAN)); increaseColumnSpanMenuItem.setUserData(new EditActionController(EditAction.INCREASE_COLUMN_SPAN)); decreaseColumnSpanMenuItem.setUserData(new EditActionController(EditAction.DECREASE_COLUMN_SPAN)); + + phoneSetSizeMenuItem.setUserData(new EditActionController(EditAction.SET_SIZE_335x600) { + @Override + public void perform() { + super.perform(); + updatePreviewWindowSize(Size.SIZE_335x600); + } + }); + tabletSetSizeMenuItem.setUserData(new EditActionController(EditAction.SET_SIZE_900x600) { + @Override + public void perform() { + super.perform(); + updatePreviewWindowSize(Size.SIZE_900x600); + } + }); qvgaSetSizeMenuItem.setUserData(new EditActionController(EditAction.SET_SIZE_320x240) { @Override public void perform() { @@ -955,13 +1003,53 @@ public class MenuBarController { caspianEmbeddedThemeMenuItem.setUserData(new SetThemeActionController(EditorPlatform.Theme.CASPIAN_EMBEDDED)); caspianEmbeddedQVGAThemeMenuItem.setUserData(new SetThemeActionController(EditorPlatform.Theme.CASPIAN_EMBEDDED_QVGA)); - gluonMobileThemeMenuItem.setUserData(new SetThemeActionController(EditorPlatform.Theme.GLUON_MOBILE)); + gluonMobileLightThemeMenuItem.setUserData(new SetThemeActionController(EditorPlatform.Theme.GLUON_MOBILE_LIGHT)); + gluonMobileDarkThemeMenuItem.setUserData(new SetThemeActionController(EditorPlatform.Theme.GLUON_MOBILE_DARK)); modenaThemeMenuItem.setUserData(new SetThemeActionController(EditorPlatform.Theme.MODENA)); modenaTouchThemeMenuItem.setUserData(new SetThemeActionController(EditorPlatform.Theme.MODENA_TOUCH)); modenaHighContrastBlackonwhiteThemeMenuItem.setUserData(new SetThemeActionController(EditorPlatform.Theme.MODENA_HIGH_CONTRAST_BLACK_ON_WHITE)); modenaHighContrastWhiteonblackThemeMenuItem.setUserData(new SetThemeActionController(EditorPlatform.Theme.MODENA_HIGH_CONTRAST_WHITE_ON_BLACK)); modenaHighContrastYellowonblackThemeMenuItem.setUserData(new SetThemeActionController(EditorPlatform.Theme.MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK)); + blueSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.BLUE)); + addSwatchGraphic(blueSwatch); + cyanSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.CYAN)); + addSwatchGraphic(cyanSwatch); + deepOrangeSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.DEEP_ORANGE)); + addSwatchGraphic(deepOrangeSwatch); + deepPurpleSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.DEEP_PURPLE)); + addSwatchGraphic(deepPurpleSwatch); + greenSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.GREEN)); + addSwatchGraphic(greenSwatch); + indigoSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.INDIGO)); + addSwatchGraphic(indigoSwatch); + lightBlueSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.LIGHT_BLUE)); + addSwatchGraphic(lightBlueSwatch); + pinkSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.PINK)); + addSwatchGraphic(pinkSwatch); + purpleSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.PURPLE)); + addSwatchGraphic(purpleSwatch); + redSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.RED)); + addSwatchGraphic(redSwatch); + tealSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.TEAL)); + addSwatchGraphic(tealSwatch); + lightGreenSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.LIGHT_GREEN)); + addSwatchGraphic(lightGreenSwatch); + limeSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.LIME)); + addSwatchGraphic(limeSwatch); + yellowSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.YELLOW)); + addSwatchGraphic(yellowSwatch); + amberSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.AMBER)); + addSwatchGraphic(amberSwatch); + orangeSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.ORANGE)); + addSwatchGraphic(orangeSwatch); + brownSwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.BROWN)); + addSwatchGraphic(brownSwatch); + greySwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.GREY)); + addSwatchGraphic(greySwatch); + blueGreySwatch.setUserData(new GluonActionController(EditorPlatform.GluonSwatch.BLUE_GREY)); + addSwatchGraphic(blueGreySwatch); + addSceneStyleSheetMenuItem.setUserData(new DocumentControlActionController(DocumentControlAction.ADD_SCENE_STYLE_SHEET)); updateOpenAndRemoveSceneStyleSheetMenus(); if (documentWindowController != null) { @@ -1002,11 +1090,13 @@ public class MenuBarController { return title; } }); - qvgaPreviewSizeMenuItem.setUserData(new SetSizeActionController(EditorController.Size.SIZE_320x240)); - vgaPreviewSizeMenuItem.setUserData(new SetSizeActionController(EditorController.Size.SIZE_640x480)); - touchPreviewSizeMenuItem.setUserData(new SetSizeActionController(EditorController.Size.SIZE_1280x800)); - hdPreviewSizeMenuItem.setUserData(new SetSizeActionController(EditorController.Size.SIZE_1920x1080)); - preferredPreviewSizeMenuItem.setUserData(new SetSizeActionController(EditorController.Size.SIZE_PREFERRED)); + phonePreviewSizeMenuItem.setUserData(new SetSizeActionController(Size.SIZE_335x600)); + tabletPreviewSizeMenuItem.setUserData(new SetSizeActionController(Size.SIZE_900x600)); + qvgaPreviewSizeMenuItem.setUserData(new SetSizeActionController(Size.SIZE_320x240)); + vgaPreviewSizeMenuItem.setUserData(new SetSizeActionController(Size.SIZE_640x480)); + touchPreviewSizeMenuItem.setUserData(new SetSizeActionController(Size.SIZE_1280x800)); + hdPreviewSizeMenuItem.setUserData(new SetSizeActionController(Size.SIZE_1920x1080)); + preferredPreviewSizeMenuItem.setUserData(new SetSizeActionController(Size.SIZE_PREFERRED)); /* * Window menu : it is setup after the other menus @@ -1018,6 +1108,7 @@ public class MenuBarController { aboutMenuItem.setUserData(new ApplicationControlActionController(ApplicationControlAction.ABOUT)); helpMenuItem.setUserData(new DocumentControlActionController(DocumentControlAction.HELP)); helpMenuItem.setAccelerator(new KeyCodeCombination(KeyCode.F1)); + checkUpdatesMenuItem.setUserData(new ApplicationControlActionController(ApplicationControlAction.CHECK_UPDATES)); /* * Put some generic handlers on each Menu and MenuItem. @@ -1039,6 +1130,10 @@ public class MenuBarController { windowMenu.setOnMenuValidation(onWindowMenuValidationHandler); } + private void addSwatchGraphic(RadioMenuItem swatchMenuItem) { + swatchMenuItem.setGraphic(((GluonActionController)swatchMenuItem.getUserData()).getSwatch().createGraphic()); + } + /* * Generic menu and item handlers */ @@ -1928,54 +2023,54 @@ public class MenuBarController { assert documentWindowController != null; EditorPlatform.Theme currentTheme = documentWindowController.getEditorController().getTheme(); - EditorPlatform.Theme overiddingTheme = theme; + EditorPlatform.Theme overridingTheme = theme; switch (theme) { case CASPIAN: if (caspianHighContrastThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.CASPIAN_HIGH_CONTRAST; + overridingTheme = EditorPlatform.Theme.CASPIAN_HIGH_CONTRAST; } break; case CASPIAN_EMBEDDED: if (caspianHighContrastThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_HIGH_CONTRAST; + overridingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_HIGH_CONTRAST; } break; case CASPIAN_EMBEDDED_QVGA: if (caspianHighContrastThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_QVGA_HIGH_CONTRAST; + overridingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_QVGA_HIGH_CONTRAST; } break; case CASPIAN_HIGH_CONTRAST: switch (currentTheme) { case CASPIAN: if (caspianHighContrastThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.CASPIAN_HIGH_CONTRAST; + overridingTheme = EditorPlatform.Theme.CASPIAN_HIGH_CONTRAST; } break; case CASPIAN_EMBEDDED: if (caspianHighContrastThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_HIGH_CONTRAST; + overridingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_HIGH_CONTRAST; } break; case CASPIAN_EMBEDDED_QVGA: if (caspianHighContrastThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_QVGA_HIGH_CONTRAST; + overridingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_QVGA_HIGH_CONTRAST; } break; case CASPIAN_HIGH_CONTRAST: if (!caspianHighContrastThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.CASPIAN; + overridingTheme = EditorPlatform.Theme.CASPIAN; } break; case CASPIAN_EMBEDDED_HIGH_CONTRAST: if (!caspianHighContrastThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED; + overridingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED; } break; case CASPIAN_EMBEDDED_QVGA_HIGH_CONTRAST: if (!caspianHighContrastThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_QVGA; + overridingTheme = EditorPlatform.Theme.CASPIAN_EMBEDDED_QVGA; } break; default: @@ -1986,37 +2081,37 @@ public class MenuBarController { break; case MODENA: if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_BLACK_ON_WHITE; + overridingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_BLACK_ON_WHITE; } else if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_WHITE_ON_BLACK; + overridingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_WHITE_ON_BLACK; } else if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK; + overridingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK; } break; case MODENA_TOUCH: if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE; } else if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK; } else if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK; } break; case MODENA_HIGH_CONTRAST_BLACK_ON_WHITE: switch (currentTheme) { case MODENA: if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_BLACK_ON_WHITE; + overridingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_BLACK_ON_WHITE; } break; case MODENA_TOUCH: if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE; } break; case MODENA_HIGH_CONTRAST_BLACK_ON_WHITE: if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA; + overridingTheme = EditorPlatform.Theme.MODENA; } break; case MODENA_HIGH_CONTRAST_WHITE_ON_BLACK: @@ -2025,17 +2120,17 @@ public class MenuBarController { break; case MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE: if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH; } break; case MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK: if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE; } break; case MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK: if (modenaHighContrastBlackonwhiteThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE; } break; default: @@ -2046,36 +2141,36 @@ public class MenuBarController { switch (currentTheme) { case MODENA: if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_WHITE_ON_BLACK; + overridingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_WHITE_ON_BLACK; } break; case MODENA_TOUCH: if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK; } break; case MODENA_HIGH_CONTRAST_BLACK_ON_WHITE: break; case MODENA_HIGH_CONTRAST_WHITE_ON_BLACK: if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA; + overridingTheme = EditorPlatform.Theme.MODENA; } break; case MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK: break; case MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE: if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK; } break; case MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK: if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH; } break; case MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK: if (modenaHighContrastWhiteonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK; } break; default: @@ -2086,12 +2181,12 @@ public class MenuBarController { switch (currentTheme) { case MODENA: if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK; + overridingTheme = EditorPlatform.Theme.MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK; } break; case MODENA_TOUCH: if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK; } break; case MODENA_HIGH_CONTRAST_BLACK_ON_WHITE: @@ -2100,22 +2195,22 @@ public class MenuBarController { break; case MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK: if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA; + overridingTheme = EditorPlatform.Theme.MODENA; } break; case MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE: if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK; } break; case MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK: if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK; } break; case MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK: if (modenaHighContrastYellowonblackThemeMenuItem.isSelected()) { - overiddingTheme = EditorPlatform.Theme.MODENA_TOUCH; + overridingTheme = EditorPlatform.Theme.MODENA_TOUCH; } break; default: @@ -2127,7 +2222,12 @@ public class MenuBarController { break; } - documentWindowController.getEditorController().setTheme(overiddingTheme); + documentWindowController.getEditorController().setTheme(overridingTheme); + if (overridingTheme == EditorPlatform.Theme.GLUON_MOBILE_LIGHT) { + documentWindowController.getEditorController().setGluonTheme(EditorPlatform.GluonTheme.LIGHT); + } else if (overridingTheme == EditorPlatform.Theme.GLUON_MOBILE_DARK) { + documentWindowController.getEditorController().setGluonTheme(EditorPlatform.GluonTheme.DARK); + } } @Override @@ -2141,8 +2241,11 @@ public class MenuBarController { = documentWindowController.getEditorController().getTheme(); switch (theme) { - case GLUON_MOBILE: - res = EditorPlatform.isGluonMobile(currentTheme); + case GLUON_MOBILE_LIGHT: + res = EditorPlatform.isGluonMobileLight(currentTheme); + break; + case GLUON_MOBILE_DARK: + res = EditorPlatform.isGluonMobileDark(currentTheme); break; // CASPIAN_HIGH_CONTRAST can be selected only if another CASPIAN // theme is active. @@ -2189,6 +2292,42 @@ public class MenuBarController { } } + class GluonActionController extends MenuItemController { + + private EditorPlatform.GluonSwatch gluonSwatch; + + public GluonActionController(EditorPlatform.GluonSwatch gluonSwatch) { + this.gluonSwatch = gluonSwatch; + } + + public EditorPlatform.GluonSwatch getSwatch() { + return gluonSwatch; + } + + @Override + public boolean canPerform() { + EditorPlatform.Theme currentTheme + = documentWindowController.getEditorController().getTheme(); + return currentTheme.equals(EditorPlatform.Theme.GLUON_MOBILE_LIGHT) || currentTheme.equals(EditorPlatform.Theme.GLUON_MOBILE_DARK); + } + + @Override + public void perform() { + documentWindowController.getEditorController().setGluonSwatch(gluonSwatch); + } + + @Override + public boolean isSelected() { + boolean res = false; + if (documentWindowController == null) { + res = false; + } else if (gluonSwatch != null) { + res = gluonSwatch == documentWindowController.getEditorController().getGluonSwatch(); + } + return res; + } + } + class RemoveSceneStyleSheetActionController extends MenuItemController { private final File styleSheet; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesController.java index 2dbf6768427bcf609219bf7428daf6d3365904f8..cf33a7ebf5f6013765c270dc8c19614dddd13741 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesController.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,8 +33,8 @@ package com.oracle.javafx.scenebuilder.app.preferences; import com.oracle.javafx.scenebuilder.app.DocumentWindowController; -import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.MavenArtifact; -import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository.Repository; +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase; + import java.util.HashMap; import java.util.Map; import java.util.logging.Level; @@ -42,35 +43,26 @@ import java.util.prefs.BackingStoreException; import java.util.prefs.Preferences; /** - * Defines preferences for Scene Builder. + * Defines preferences for Scene Builder App. */ -public class PreferencesController { +public class PreferencesController extends PreferencesControllerBase{ + + /*************************************************************************** + * * + * Static fields * + * * + **************************************************************************/ - // JAVA PREFERENCES KEYS DEFINITIONS + // PREFERENCES NODE NAME static final String SB_RELEASE_NODE = "SB_2.0"; //NOI18N // GLOBAL PREFERENCES - static final String ROOT_CONTAINER_HEIGHT = "ROOT_CONTAINER_HEIGHT"; //NOI18N - static final String ROOT_CONTAINER_WIDTH = "ROOT_CONTAINER_WIDTH"; //NOI18N - - static final String BACKGROUND_IMAGE = "BACKGROUND_IMAGE"; //NOI18N - static final String ALIGNMENT_GUIDES_COLOR = "ALIGNMENT_GUIDES_COLOR"; //NOI18N - static final String PARENT_RING_COLOR = "PARENT_RING_COLOR"; //NOI18N - static final String TOOL_THEME = "TOOL_THEME"; //NOI18N - static final String LIBRARY_DISPLAY_OPTION = "LIBRARY_DISPLAY_OPTION"; //NOI18N - static final String HIERARCHY_DISPLAY_OPTION = "HIERARCHY_DISPLAY_OPTION"; //NOI18N static final String CSS_TABLE_COLUMNS_ORDERING_REVERSED = "CSS_TABLE_COLUMNS_ORDERING_REVERSED"; //NOI18N static final String RECENT_ITEMS = "RECENT_ITEMS"; //NOI18N static final String RECENT_ITEMS_SIZE = "RECENT_ITEMS_SIZE"; //NOI18N - static final String DOCUMENTS = "DOCUMENTS"; //NOI18N - - static final String ARTIFACTS = "ARTIFACTS"; //NOI18N - - static final String REPOSITORIES = "REPOSITORIES"; //NOI18N - static final String REGISTRATION_HASH = "REGISTRATION_HASH"; //NOI18N static final String REGISTRATION_EMAIL = "REGISTRATION_EMAIL"; //NOI18N static final String REGISTRATION_OPT_IN = "REGISTRATION_OPT_IN"; //NOI18N @@ -78,14 +70,11 @@ public class PreferencesController { static final String UPDATE_DIALOG_DATE = "UPDATE_DIALOG_DATE"; static final String IGNORE_VERSION = "IGNORE_VERSION"; + static final String IMPORTED_GLUON_JARS = "IMPORTED_GLUON_JARS"; + static final String LAST_SENT_TRACKING_INFO_DATE = "LAST_SENT_TRACKING_INFO_DATE"; // DOCUMENT SPECIFIC PREFERENCES - static final String PATH = "path"; //NOI18N - static final String X_POS = "X"; //NOI18N - static final String Y_POS = "Y"; //NOI18N - static final String STAGE_HEIGHT = "height"; //NOI18N - static final String STAGE_WIDTH = "width"; //NOI18N static final String BOTTOM_VISIBLE = "bottomVisible";//NOI18N static final String LEFT_VISIBLE = "leftVisible"; //NOI18N static final String RIGHT_VISIBLE = "rightVisible"; //NOI18N @@ -96,41 +85,27 @@ public class PreferencesController { static final String RIGHT_DIVIDER_HPOS = "rightDividerHPos"; //NOI18N static final String BOTTOM_DIVIDER_VPOS = "bottomDividerVPos"; //NOI18N static final String LEFT_DIVIDER_VPOS = "leftDividerVPos"; //NOI18N - static final String SCENE_STYLE_SHEETS = "sceneStyleSheets"; //NOI18N - static final String I18N_RESOURCE = "I18NResource"; //NOI18N private static PreferencesController singleton; - private final Preferences applicationRootPreferences; - private final Preferences documentsRootPreferences; - private final Preferences artifactsRootPreferences; - private final Preferences repositoriesRootPreferences; - private final PreferencesRecordGlobal recordGlobal; - private final MavenPreferences mavenPreferences; - private final RepositoryPreferences repositoryPreferences; - private final Map<DocumentWindowController, PreferencesRecordDocument> recordDocuments = new HashMap<>(); + /*************************************************************************** + * * + * Instance fields * + * * + **************************************************************************/ - private PreferencesController() { - applicationRootPreferences = Preferences.userNodeForPackage( - PreferencesController.class).node(SB_RELEASE_NODE); + private final Map<DocumentWindowController, PreferencesRecordDocument> recordDocuments = new HashMap<>(); - // Preferences global to the SB application - recordGlobal = new PreferencesRecordGlobal(applicationRootPreferences); + /*************************************************************************** + * * + * Constructors * + * * + **************************************************************************/ - // Preferences specific to the document - // Create the root node for all documents preferences - documentsRootPreferences = applicationRootPreferences.node(DOCUMENTS); + private PreferencesController() { + super(SB_RELEASE_NODE, new PreferencesRecordGlobal()); - // Preferences specific to the maven artifacts - // Create the root node for all artifacts preferences - artifactsRootPreferences = applicationRootPreferences.node(ARTIFACTS); - - // Preferences specific to the repositories - // Create the root node for all repositories preferences - repositoriesRootPreferences = applicationRootPreferences.node(REPOSITORIES); - // Cleanup document preferences at start time : - // We keep only document preferences for the documents defined in RECENT_ITEMS final String items = applicationRootPreferences.get(RECENT_ITEMS, null); //NOI18N if (items != null && items.isEmpty() == false) { // Remove document preferences node if needed @@ -145,57 +120,23 @@ public class PreferencesController { // If path is null or empty, this means preferences DB has been corrupted if (nodePath == null || nodePath.isEmpty()) { documentPreferences.removeNode(); - } else if (items.contains(nodePath) == false) { - documentPreferences.removeNode(); } } } catch (BackingStoreException ex) { Logger.getLogger(PreferencesController.class.getName()).log(Level.SEVERE, null, ex); } } - - // maven artifacts - mavenPreferences = new MavenPreferences(); - - // create initial map of existing artifacts - try { - final String[] childrenNames = artifactsRootPreferences.childrenNames(); - for (String child : childrenNames) { - Preferences artifactPreferences = artifactsRootPreferences.node(child); - MavenArtifact mavenArtifact = new MavenArtifact(child); - mavenArtifact.setPath(artifactPreferences.get(PreferencesRecordArtifact.PATH, null)); - mavenArtifact.setDependencies(artifactPreferences.get(PreferencesRecordArtifact.DEPENDENCIES, null)); - mavenArtifact.setFilter(artifactPreferences.get(PreferencesRecordArtifact.FILTER, null)); - final PreferencesRecordArtifact recordArtifact = new PreferencesRecordArtifact( - artifactsRootPreferences, mavenArtifact); - mavenPreferences.addRecordArtifact(child, recordArtifact); - } - } catch (BackingStoreException ex) { - Logger.getLogger(PreferencesController.class.getName()).log(Level.SEVERE, null, ex); - } - - // repositories - repositoryPreferences = new RepositoryPreferences(); - - // create initial map of existing repositories - try { - final String[] childrenNames = repositoriesRootPreferences.childrenNames(); -// for (String child : childrenNames) { -// Preferences rp = repositoriesRootPreferences.node(child); -// Repository repository = new Repository(rp.get(PreferencesRecordRepository.REPO_ID, null), -// rp.get(PreferencesRecordRepository.REPO_TYPE, null), -// rp.get(PreferencesRecordRepository.REPO_URL, null), -// rp.get(PreferencesRecordRepository.REPO_USER, null), -// rp.get(PreferencesRecordRepository.REPO_PASS, null)); -// final PreferencesRecordRepository recordRepository = new PreferencesRecordRepository( -// artifactsRootPreferences, repository); -// repositoryPreferences.addRecordRepository(child, recordRepository); -// } - } catch (BackingStoreException ex) { - Logger.getLogger(PreferencesController.class.getName()).log(Level.SEVERE, null, ex); - } + + + } + /*************************************************************************** + * * + * Methods * + * * + **************************************************************************/ + public static synchronized PreferencesController getSingleton() { if (singleton == null) { singleton = new PreferencesController(); @@ -204,9 +145,6 @@ public class PreferencesController { return singleton; } - public PreferencesRecordGlobal getRecordGlobal() { - return recordGlobal; - } public PreferencesRecordDocument getRecordDocument(final DocumentWindowController dwc) { final PreferencesRecordDocument recordDocument; @@ -237,56 +175,9 @@ public class PreferencesController { Logger.getLogger(PreferencesController.class.getName()).log(Level.SEVERE, null, ex); } } - - public MavenPreferences getMavenPreferences() { - return mavenPreferences; - } - - public PreferencesRecordArtifact getRecordArtifact(MavenArtifact mavenArtifact) { - PreferencesRecordArtifact recordArtifact = mavenPreferences.getRecordArtifact(mavenArtifact.getCoordinates()); - if (recordArtifact == null) { - recordArtifact = new PreferencesRecordArtifact(artifactsRootPreferences, mavenArtifact); - mavenPreferences.addRecordArtifact(mavenArtifact.getCoordinates(), recordArtifact); - } - return recordArtifact; - } - - public void removeArtifact(String coordinates) { - if (coordinates != null && !coordinates.isEmpty() && - mavenPreferences.getRecordArtifact(coordinates) != null) { - Preferences node = artifactsRootPreferences.node(coordinates); - try { - node.removeNode(); - mavenPreferences.removeRecordArtifact(coordinates); - } catch (BackingStoreException ex) { - Logger.getLogger(PreferencesController.class.getName()).log(Level.SEVERE, null, ex); - } - } - } - - public RepositoryPreferences getRepositoryPreferences() { - return repositoryPreferences; - } - - public PreferencesRecordRepository getRecordRepository(Repository repository) { - PreferencesRecordRepository recordRepository = repositoryPreferences.getRecordRepository(repository.getId()); - if (recordRepository == null) { - recordRepository = new PreferencesRecordRepository(repositoriesRootPreferences, repository); - repositoryPreferences.addRecordRepository(repository.getId(), recordRepository); - } - return recordRepository; - } - - public void removeRepository(String id) { - if (id != null && !id.isEmpty() && - repositoryPreferences.getRecordRepository(id) != null) { - Preferences node = repositoriesRootPreferences.node(id); - try { - node.removeNode(); - repositoryPreferences.removeRecordRepository(id); - } catch (BackingStoreException ex) { - Logger.getLogger(PreferencesController.class.getName()).log(Level.SEVERE, null, ex); - } - } + + @Override + public PreferencesRecordGlobal getRecordGlobal() { + return (PreferencesRecordGlobal) recordGlobal; } } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesRecordDocument.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesRecordDocument.java index 88784330054c24cdb00d9833221602f7148449ed..722c7d831472f23999e5efb89af156385c50c29f 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesRecordDocument.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesRecordDocument.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -37,22 +38,26 @@ import com.oracle.javafx.scenebuilder.app.SplitController; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.BOTTOM_DIVIDER_VPOS; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.BOTTOM_VISIBLE; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.DOCUMENT_VISIBLE; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.I18N_RESOURCE; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.STAGE_HEIGHT; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.GLUON_SWATCH; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.GLUON_THEME; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.I18N_RESOURCE; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.STAGE_HEIGHT; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.INSPECTOR_SECTION_ID; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.LEFT_VISIBLE; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.LEFT_DIVIDER_HPOS; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.LEFT_DIVIDER_VPOS; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.LIBRARY_VISIBLE; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.PATH; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.PATH; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.RIGHT_DIVIDER_HPOS; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.RIGHT_VISIBLE; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.SCENE_STYLE_SHEETS; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.STAGE_WIDTH; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.X_POS; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.Y_POS; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.SCENE_STYLE_SHEETS; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.STAGE_WIDTH; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.THEME; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.X_POS; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.Y_POS; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; +import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.InspectorPanelController; import com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.InspectorPanelController.SectionId; @@ -114,6 +119,9 @@ public class PreferencesRecordDocument { private double leftDividerVPos = DEFAULT_LEFT_DIVIDER_VPOS; private final List<String> sceneStyleSheets = new ArrayList<>(); private String I18NResource = null; + private EditorPlatform.Theme theme; + private EditorPlatform.GluonSwatch gluonSwatch; + private EditorPlatform.GluonTheme gluonTheme; private Preferences documentPreferences; private final Preferences documentsRootPreferences; // preference root node for all documents records @@ -135,6 +143,7 @@ public class PreferencesRecordDocument { stage.xProperty().addListener((ChangeListener<Number>) (ov, t, t1) -> setXPos(t1.doubleValue())); stage.yProperty().addListener((ChangeListener<Number>) (ov, t, t1) -> setYPos(t1.doubleValue())); + // Add stage height and width listeners stage.heightProperty().addListener((ChangeListener<Number>) (ov, t, t1) -> setStageHeight(t1.doubleValue())); stage.widthProperty().addListener((ChangeListener<Number>) (ov, t, t1) -> setStageWidth(t1.doubleValue())); @@ -159,6 +168,11 @@ public class PreferencesRecordDocument { // Add scene style sheets listener final EditorController ec = documentWindowController.getEditorController(); ec.sceneStyleSheetProperty().addListener(sceneStyleSheetsListener); + + // Add theme and Gluon theme listener + ec.themeProperty().addListener(((observable, oldValue, newValue) -> setTheme(newValue))); + ec.gluonSwatchProperty().addListener(((observable, oldValue, newValue) -> setGluonSwatch(newValue))); + ec.gluonThemeProperty().addListener(((observable, oldValue, newValue) -> setGluonTheme(newValue))); } public void resetDocumentPreferences() { @@ -313,6 +327,39 @@ public class PreferencesRecordDocument { } } + private void setTheme(EditorPlatform.Theme theme) { + this.theme = theme; + } + + private EditorPlatform.Theme getTheme() { + if (theme == null) { + theme = documentWindowController.getEditorController().getTheme(); + } + return theme; + } + + public void setGluonSwatch(EditorPlatform.GluonSwatch gluonSwatch) { + this.gluonSwatch = gluonSwatch; + } + + public EditorPlatform.GluonSwatch getGluonSwatch() { + if (gluonSwatch == null) { + return documentWindowController.getEditorController().getGluonSwatch(); + } + return gluonSwatch; + } + + public void setGluonTheme(EditorPlatform.GluonTheme gluonTheme) { + this.gluonTheme = gluonTheme; + } + + public EditorPlatform.GluonTheme getGluonTheme() { + if (gluonTheme == null) { + return documentWindowController.getEditorController().getGluonTheme(); + } + return gluonTheme; + } + public void refreshXPos() { if (xPos != UNDEFINED_POS) { documentWindowController.getStage().setX(xPos); @@ -429,6 +476,33 @@ public class PreferencesRecordDocument { } } + public void refreshTheme() { + if (theme == null) { + return; + } + + EditorController editorController = documentWindowController.getEditorController(); + editorController.setTheme(theme); + } + + public void refreshGluonSwatch() { + if (gluonSwatch == null) { + return; + } + + EditorController editorController = documentWindowController.getEditorController(); + editorController.setGluonSwatch(gluonSwatch); + } + + public void refreshGluonTheme() { + if (gluonTheme == null) { + return; + } + + EditorController editorController = documentWindowController.getEditorController(); + editorController.setGluonTheme(gluonTheme); + } + public void refresh() { refreshXPos(); refreshYPos(); @@ -446,6 +520,9 @@ public class PreferencesRecordDocument { refreshLeftDividerVPos(); refreshSceneStyleSheets(); refreshI18NResource(); + refreshTheme(); + refreshGluonSwatch(); + refreshGluonTheme(); } /** @@ -564,6 +641,28 @@ public class PreferencesRecordDocument { // I18NResource final String resource = documentPreferences.get(I18N_RESOURCE, null); //NOI18N setI18NResource(resource); + + // Theme and Gluon Theme + final String theme = documentPreferences.get(THEME, null); + if (theme != null) { + setTheme(EditorPlatform.Theme.valueOf(theme)); + } else { + setTheme(documentWindowController.getEditorController().getTheme()); + } + + final String gluonSwatch = documentPreferences.get(GLUON_SWATCH, null); + if (gluonSwatch != null) { + setGluonSwatch(EditorPlatform.GluonSwatch.valueOf(gluonSwatch)); + } else { + setGluonSwatch(documentWindowController.getEditorController().getGluonSwatch()); + } + + final String gluonTheme = documentPreferences.get(GLUON_THEME, null); + if (gluonTheme != null) { + setGluonTheme(EditorPlatform.GluonTheme.valueOf(gluonTheme)); + } else { + setGluonTheme(documentWindowController.getEditorController().getGluonTheme()); + } } /** @@ -641,6 +740,17 @@ public class PreferencesRecordDocument { } else { documentPreferences.remove(I18N_RESOURCE); } + + // Theme and Gluon Theme + final EditorPlatform.Theme docTheme = getTheme(); + documentPreferences.put(THEME, docTheme.name()); + if (docTheme == EditorPlatform.Theme.GLUON_MOBILE_LIGHT || docTheme == EditorPlatform.Theme.GLUON_MOBILE_DARK) { + documentPreferences.put(GLUON_SWATCH, getGluonSwatch().name()); + documentPreferences.put(GLUON_THEME, getGluonTheme().name()); + } else { + documentPreferences.remove(GLUON_SWATCH); + documentPreferences.remove(GLUON_THEME); + } } /** diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesRecordGlobal.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesRecordGlobal.java index 8d90d054cb6bc93fa51ef7570f2a7ed9327291eb..667b591916c227e220ee2647a3fa0975f9324755 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesRecordGlobal.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesRecordGlobal.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -31,14 +32,8 @@ */ package com.oracle.javafx.scenebuilder.app.preferences; -import com.oracle.javafx.scenebuilder.app.DocumentWindowController; -import com.oracle.javafx.scenebuilder.app.SceneBuilderApp; -import com.oracle.javafx.scenebuilder.app.SceneBuilderApp.ApplicationControlAction; -import com.oracle.javafx.scenebuilder.app.SceneBuilderApp.ToolTheme; +import com.oracle.javafx.scenebuilder.kit.ToolTheme; import com.oracle.javafx.scenebuilder.app.i18n.I18N; -import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.panel.content.ContentPanelController; -import com.oracle.javafx.scenebuilder.kit.editor.panel.hierarchy.AbstractHierarchyPanelController; import com.oracle.javafx.scenebuilder.kit.editor.panel.hierarchy.AbstractHierarchyPanelController.DisplayOption; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.LibraryPanelController.DISPLAY_MODE; import java.io.File; @@ -50,26 +45,49 @@ import java.util.Arrays; import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; -import java.util.prefs.Preferences; -import javafx.scene.image.Image; -import javafx.scene.paint.Color; - +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase; +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesRecordGlobalBase; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.*; /** - * Defines preferences global to the application. + * Defines preferences global to the SB application. */ -public class PreferencesRecordGlobal { +public class PreferencesRecordGlobal extends PreferencesRecordGlobalBase { + + /*************************************************************************** + * * + * Support Classes * + * * + **************************************************************************/ + + public enum CSSAnalyzerColumnsOrder { + + DEFAULTS_FIRST { + + @Override + public String toString() { + return I18N.getString("prefs.cssanalyzer.columns.defaults.first"); + } + }, + DEFAULTS_LAST { + + @Override + public String toString() { + return I18N.getString("prefs.cssanalyzer.columns.defaults.last"); + } + } + } + + /*************************************************************************** + * * + * Static fields * + * * + **************************************************************************/ // Default values static final double DEFAULT_ROOT_CONTAINER_HEIGHT = 400; static final double DEFAULT_ROOT_CONTAINER_WIDTH = 600; - static final BackgroundImage DEFAULT_BACKGROUND_IMAGE - = BackgroundImage.BACKGROUND_03; - static final Color DEFAULT_ALIGNMENT_GUIDES_COLOR = Color.RED; - static final Color DEFAULT_PARENT_RING_COLOR = Color.rgb(238, 168, 47); - static final ToolTheme DEFAULT_TOOL_THEME = ToolTheme.DEFAULT; static final DISPLAY_MODE DEFAULT_LIBRARY_DISPLAY_OPTION = DISPLAY_MODE.SECTIONS; @@ -79,12 +97,13 @@ public class PreferencesRecordGlobal { static final int DEFAULT_RECENT_ITEMS_SIZE = 15; + /*************************************************************************** + * * + * Instance fields * + * * + **************************************************************************/ + // Global preferences - private double rootContainerHeight = DEFAULT_ROOT_CONTAINER_HEIGHT; - private double rootContainerWidth = DEFAULT_ROOT_CONTAINER_WIDTH; - private BackgroundImage backgroundImage = DEFAULT_BACKGROUND_IMAGE; - private Color alignmentGuidesColor = DEFAULT_ALIGNMENT_GUIDES_COLOR; - private Color parentRingColor = DEFAULT_PARENT_RING_COLOR; private ToolTheme toolTheme = DEFAULT_TOOL_THEME; private DISPLAY_MODE libraryDisplayOption = DEFAULT_LIBRARY_DISPLAY_OPTION; private DisplayOption hierarchyDisplayOption = DEFAULT_HIERARCHY_DISPLAY_OPTION; @@ -95,103 +114,30 @@ public class PreferencesRecordGlobal { private LocalDate showUpdateDialogDate = null; private String ignoreVersion = null; + private String[] importedGluonJars = new String[0]; + private String registrationHash = null; private String registrationEmail = null; private boolean registrationOptIn = false; private LocalDate lastSentTrackingInfoDate = null; - private final Preferences applicationRootPreferences; - final static Integer[] recentItemsSizes = {5, 10, 15, 20}; + /*************************************************************************** + * * + * Constructors * + * * + **************************************************************************/ - public enum BackgroundImage { - - BACKGROUND_01 { - - @Override - public String toString() { - return I18N.getString("prefs.background.value1"); - } - }, - BACKGROUND_02 { - - @Override - public String toString() { - return I18N.getString("prefs.background.value2"); - } - }, - BACKGROUND_03 { - - @Override - public String toString() { - return I18N.getString("prefs.background.value3"); - } - } + public PreferencesRecordGlobal() { } - public enum CSSAnalyzerColumnsOrder { - - DEFAULTS_FIRST { - - @Override - public String toString() { - return I18N.getString("prefs.cssanalyzer.columns.defaults.first"); - } - }, - DEFAULTS_LAST { - - @Override - public String toString() { - return I18N.getString("prefs.cssanalyzer.columns.defaults.last"); - } - } - } - - public PreferencesRecordGlobal(Preferences applicationRootPreferences) { - this.applicationRootPreferences = applicationRootPreferences; - } - - public double getRootContainerHeight() { - return rootContainerHeight; - } - - public void setRootContainerHeight(double value) { - rootContainerHeight = value; - } - - public double getRootContainerWidth() { - return rootContainerWidth; - } - - public void setRootContainerWidth(double value) { - rootContainerWidth = value; - } - - public BackgroundImage getBackgroundImage() { - return backgroundImage; - } - - public void setBackgroundImage(BackgroundImage value) { - backgroundImage = value; - } - - public Color getAlignmentGuidesColor() { - return alignmentGuidesColor; - } - - public void setAlignmentGuidesColor(Color value) { - alignmentGuidesColor = value; - } - - public Color getParentRingColor() { - return parentRingColor; - } - - public void setParentRingColor(Color value) { - parentRingColor = value; - } + /*************************************************************************** + * * + * Methods * + * * + **************************************************************************/ public ToolTheme getToolTheme() { return toolTheme; @@ -211,7 +157,7 @@ public class PreferencesRecordGlobal { public void updateLibraryDisplayOption(DISPLAY_MODE value) { libraryDisplayOption = value; - writeToJavaPreferences(LIBRARY_DISPLAY_OPTION); + writeToJavaPreferences(PreferencesControllerBase.LIBRARY_DISPLAY_OPTION); } public DisplayOption getHierarchyDisplayOption() { @@ -224,7 +170,7 @@ public class PreferencesRecordGlobal { public void updateHierarchyDisplayOption(DisplayOption value) { hierarchyDisplayOption = value; - writeToJavaPreferences(HIERARCHY_DISPLAY_OPTION); + writeToJavaPreferences(PreferencesControllerBase.HIERARCHY_DISPLAY_OPTION); } public CSSAnalyzerColumnsOrder getDefaultCSSAnalyzerColumnsOrder() { @@ -380,11 +326,6 @@ public class PreferencesRecordGlobal { this.registrationOptIn = registrationOptIn; } - public void refreshAlignmentGuidesColor(DocumentWindowController dwc) { - final ContentPanelController cpc = dwc.getContentPanelController(); - cpc.setGuidesColor(alignmentGuidesColor); - } - public void setShowUpdateDialogAfter(LocalDate showUpdateDialogDate) { this.showUpdateDialogDate = showUpdateDialogDate; writeToJavaPreferences(UPDATE_DIALOG_DATE); @@ -403,6 +344,15 @@ public class PreferencesRecordGlobal { return ignoreVersion; } + public void setImportedGluonJars(String[] importedJars) { + this.importedGluonJars = importedJars; + writeToJavaPreferences(IMPORTED_GLUON_JARS); + } + + public String[] getImportedGluonJars() { + return importedGluonJars; + } + public LocalDate getLastSentTrackingInfoDate() { return lastSentTrackingInfoDate; } @@ -412,159 +362,20 @@ public class PreferencesRecordGlobal { writeToJavaPreferences(LAST_SENT_TRACKING_INFO_DATE); } - public void refreshBackgroundImage(DocumentWindowController dwc) { - // Background images - dwc.getContentPanelController().setWorkspaceBackground(getImage(backgroundImage)); - } - - public void refreshCSSAnalyzerColumnsOrder(DocumentWindowController dwc) { - dwc.refreshCssTableColumnsOrderingReversed(cssTableColumnsOrderingReversed); - } - - public void refreshToolTheme(DocumentWindowController dwc) { - final SceneBuilderApp app = SceneBuilderApp.getSingleton(); - final ApplicationControlAction aca; - switch(toolTheme) { - case DEFAULT: - aca = ApplicationControlAction.USE_DEFAULT_THEME; - break; - case DARK: - aca = ApplicationControlAction.USE_DARK_THEME; - break; - default: - assert false; - aca = null; - break; - } - app.performControlAction(aca, dwc); - } - - public void refreshLibraryDisplayOption(DocumentWindowController dwc) { - dwc.refreshLibraryDisplayOption(libraryDisplayOption); - } - - public void refreshHierarchyDisplayOption(DocumentWindowController dwc) { - dwc.refreshHierarchyDisplayOption(hierarchyDisplayOption); - } - - public void refreshParentRingColor(DocumentWindowController dwc) { - final ContentPanelController cpc = dwc.getContentPanelController(); - cpc.setPringColor(parentRingColor); - final AbstractHierarchyPanelController hpc = dwc.getHierarchyPanelController(); - hpc.setParentRingColor(parentRingColor); - } - - public void refreshRootContainerHeight(DocumentWindowController dwc) { - final EditorController ec = dwc.getEditorController(); - ec.setDefaultRootContainerHeight(rootContainerHeight); - } - - public void refreshRootContainerWidth(DocumentWindowController dwc) { - final EditorController ec = dwc.getEditorController(); - ec.setDefaultRootContainerWidth(rootContainerWidth); - } - - public void refreshAlignmentGuidesColor() { - final SceneBuilderApp app = SceneBuilderApp.getSingleton(); - for (DocumentWindowController dwc : app.getDocumentWindowControllers()) { - refreshAlignmentGuidesColor(dwc); - } - } - - public void refreshBackgroundImage() { - final SceneBuilderApp app = SceneBuilderApp.getSingleton(); - for (DocumentWindowController dwc : app.getDocumentWindowControllers()) { - refreshBackgroundImage(dwc); - } - } - - public void refreshCSSAnalyzerColumnsOrder() { - final SceneBuilderApp app = SceneBuilderApp.getSingleton(); - for (DocumentWindowController dwc : app.getDocumentWindowControllers()) { - refreshCSSAnalyzerColumnsOrder(dwc); - } - } - - public void refreshToolTheme() { - refreshToolTheme(null); - } - - public void refreshLibraryDisplayOption() { - final SceneBuilderApp app = SceneBuilderApp.getSingleton(); - for (DocumentWindowController dwc : app.getDocumentWindowControllers()) { - refreshLibraryDisplayOption(dwc); - } - } - - public void refreshHierarchyDisplayOption() { - final SceneBuilderApp app = SceneBuilderApp.getSingleton(); - for (DocumentWindowController dwc : app.getDocumentWindowControllers()) { - refreshHierarchyDisplayOption(dwc); - } - } - - public void refreshParentRingColor() { - final SceneBuilderApp app = SceneBuilderApp.getSingleton(); - for (DocumentWindowController dwc : app.getDocumentWindowControllers()) { - refreshParentRingColor(dwc); - } - } - - public void refreshRootContainerHeight() { - final SceneBuilderApp app = SceneBuilderApp.getSingleton(); - for (DocumentWindowController dwc : app.getDocumentWindowControllers()) { - refreshRootContainerHeight(dwc); - } - } - - public void refreshRootContainerWidth() { - final SceneBuilderApp app = SceneBuilderApp.getSingleton(); - for (DocumentWindowController dwc : app.getDocumentWindowControllers()) { - refreshRootContainerWidth(dwc); - } - } - - public void refresh(DocumentWindowController dwc) { - refreshAlignmentGuidesColor(dwc); - refreshBackgroundImage(dwc); - refreshCSSAnalyzerColumnsOrder(dwc); - refreshToolTheme(dwc); - refreshLibraryDisplayOption(dwc); - refreshHierarchyDisplayOption(dwc); - refreshParentRingColor(dwc); - refreshRootContainerHeight(dwc); - refreshRootContainerWidth(dwc); - } - /** * Read data from the java preferences DB and initialize properties. */ public void readFromJavaPreferences() { - - assert applicationRootPreferences != null; + super.readFromJavaPreferences(); // Document size - final double height = applicationRootPreferences.getDouble(ROOT_CONTAINER_HEIGHT, - DEFAULT_ROOT_CONTAINER_HEIGHT); - setRootContainerHeight(height); - final double width = applicationRootPreferences.getDouble(ROOT_CONTAINER_WIDTH, - DEFAULT_ROOT_CONTAINER_WIDTH); - setRootContainerWidth(width); - - // Background image - final String image = applicationRootPreferences.get(BACKGROUND_IMAGE, - DEFAULT_BACKGROUND_IMAGE.name()); - setBackgroundImage(BackgroundImage.valueOf(image)); - - // Alignment guides color - final String agColor = applicationRootPreferences.get(ALIGNMENT_GUIDES_COLOR, - DEFAULT_ALIGNMENT_GUIDES_COLOR.toString()); - setAlignmentGuidesColor(Color.valueOf(agColor)); - - // Parent ring color - final String prColor = applicationRootPreferences.get(PARENT_RING_COLOR, - DEFAULT_PARENT_RING_COLOR.toString()); - setParentRingColor(Color.valueOf(prColor)); + if (getRootContainerHeight() == -1) { + setRootContainerHeight(DEFAULT_ROOT_CONTAINER_HEIGHT); + } + + if (getRootContainerWidth() == -1) { + setRootContainerWidth(DEFAULT_ROOT_CONTAINER_WIDTH); + } // Tool Theme final String tool_theme = applicationRootPreferences.get(TOOL_THEME, @@ -572,12 +383,12 @@ public class PreferencesRecordGlobal { setToolTheme(ToolTheme.valueOf(tool_theme)); // Library display option - final String library_DisplayOption = applicationRootPreferences.get(LIBRARY_DISPLAY_OPTION, + final String library_DisplayOption = applicationRootPreferences.get(PreferencesControllerBase.LIBRARY_DISPLAY_OPTION, DEFAULT_LIBRARY_DISPLAY_OPTION.name()); setLibraryDisplayOption(DISPLAY_MODE.valueOf(library_DisplayOption)); // Hierarchy display option - final String hierarchy_DisplayOption = applicationRootPreferences.get(HIERARCHY_DISPLAY_OPTION, + final String hierarchy_DisplayOption = applicationRootPreferences.get(PreferencesControllerBase.HIERARCHY_DISPLAY_OPTION, DEFAULT_HIERARCHY_DISPLAY_OPTION.name()); setHierarchyDisplayOption(DisplayOption.valueOf(hierarchy_DisplayOption)); @@ -623,6 +434,14 @@ public class PreferencesRecordGlobal { } else { lastSentTrackingInfoDate = LocalDate.parse(dateString); } + + // Import Gluon Controls Alert + final String importedGluonJarsString = applicationRootPreferences.get(IMPORTED_GLUON_JARS, null); + if (importedGluonJarsString == null) { + this.importedGluonJars = new String[0]; + } else { + this.importedGluonJars= importedGluonJarsString.split(","); + } } public void writeToJavaPreferences(String key) { @@ -630,29 +449,14 @@ public class PreferencesRecordGlobal { assert applicationRootPreferences != null; assert key != null; switch (key) { - case ROOT_CONTAINER_HEIGHT: - applicationRootPreferences.putDouble(ROOT_CONTAINER_HEIGHT, getRootContainerHeight()); - break; - case ROOT_CONTAINER_WIDTH: - applicationRootPreferences.putDouble(ROOT_CONTAINER_WIDTH, getRootContainerWidth()); - break; - case BACKGROUND_IMAGE: - applicationRootPreferences.put(BACKGROUND_IMAGE, getBackgroundImage().name()); - break; - case ALIGNMENT_GUIDES_COLOR: - applicationRootPreferences.put(ALIGNMENT_GUIDES_COLOR, getAlignmentGuidesColor().toString()); - break; - case PARENT_RING_COLOR: - applicationRootPreferences.put(PARENT_RING_COLOR, getParentRingColor().toString()); - break; case TOOL_THEME: applicationRootPreferences.put(TOOL_THEME, getToolTheme().name()); break; - case LIBRARY_DISPLAY_OPTION: - applicationRootPreferences.put(LIBRARY_DISPLAY_OPTION, getLibraryDisplayOption().name()); + case PreferencesControllerBase.LIBRARY_DISPLAY_OPTION: + applicationRootPreferences.put(PreferencesControllerBase.LIBRARY_DISPLAY_OPTION, getLibraryDisplayOption().name()); break; - case HIERARCHY_DISPLAY_OPTION: - applicationRootPreferences.put(HIERARCHY_DISPLAY_OPTION, getHierarchyDisplayOption().name()); + case PreferencesControllerBase.HIERARCHY_DISPLAY_OPTION: + applicationRootPreferences.put(PreferencesControllerBase.HIERARCHY_DISPLAY_OPTION, getHierarchyDisplayOption().name()); break; case CSS_TABLE_COLUMNS_ORDERING_REVERSED: applicationRootPreferences.putBoolean(CSS_TABLE_COLUMNS_ORDERING_REVERSED, isCssTableColumnsOrderingReversed()); @@ -686,31 +490,22 @@ public class PreferencesRecordGlobal { case LAST_SENT_TRACKING_INFO_DATE: applicationRootPreferences.put(LAST_SENT_TRACKING_INFO_DATE, getLastSentTrackingInfoDate().toString()); break; - default: - assert false; - break; - } - } - - private static Image getImage(BackgroundImage bgi) { - final URL url; - switch (bgi) { - case BACKGROUND_01: - url = PreferencesRecordGlobal.class.getResource("Background-Blue-Grid.png"); //NOI18N - break; - case BACKGROUND_02: - url = PreferencesRecordGlobal.class.getResource("Background-Neutral-Grid.png"); //NOI18N - break; - case BACKGROUND_03: - url = ContentPanelController.getDefaultWorkspaceBackgroundURL(); + case IMPORTED_GLUON_JARS: + if (importedGluonJars.length == 0) { + applicationRootPreferences.put(IMPORTED_GLUON_JARS, ""); + } else { + StringBuilder stringBuilder = new StringBuilder(); + for (String s : importedGluonJars) { + stringBuilder.append(s); + stringBuilder.append(","); + } + applicationRootPreferences.put(IMPORTED_GLUON_JARS, stringBuilder.toString()); + } break; default: - url = null; - assert false; + super.writeToJavaPreferences(key); break; } - assert url != null; - return new Image(url.toExternalForm()); } // private static Image getShadowImage() { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesWindowController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesWindowController.java index 1e25a5ef8b11c1f46c1a230b2343742cb32b8665..cbe882c230424c20c2019ae081d02cf1c5b75545 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesWindowController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesWindowController.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -31,35 +32,45 @@ */ package com.oracle.javafx.scenebuilder.app.preferences; -import com.oracle.javafx.scenebuilder.app.SceneBuilderApp.ToolTheme; +import com.oracle.javafx.scenebuilder.app.SceneBuilderApp; +import com.oracle.javafx.scenebuilder.kit.ToolTheme; import com.oracle.javafx.scenebuilder.app.i18n.I18N; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.ALIGNMENT_GUIDES_COLOR; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.BACKGROUND_IMAGE; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.ALIGNMENT_GUIDES_COLOR; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.BACKGROUND_IMAGE; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.CSS_TABLE_COLUMNS_ORDERING_REVERSED; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.ROOT_CONTAINER_HEIGHT; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.ROOT_CONTAINER_WIDTH; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.HIERARCHY_DISPLAY_OPTION; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.LIBRARY_DISPLAY_OPTION; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.PARENT_RING_COLOR; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.GLUON_SWATCH; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.GLUON_THEME; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.ROOT_CONTAINER_HEIGHT; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.ROOT_CONTAINER_WIDTH; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.HIERARCHY_DISPLAY_OPTION; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.LIBRARY_DISPLAY_OPTION; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.PARENT_RING_COLOR; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.RECENT_ITEMS; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.RECENT_ITEMS_SIZE; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase.THEME; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesController.TOOL_THEME; -import com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal.BackgroundImage; +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesRecordGlobalBase.BackgroundImage; import com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal.CSSAnalyzerColumnsOrder; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal.DEFAULT_ALIGNMENT_GUIDES_COLOR; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal.DEFAULT_BACKGROUND_IMAGE; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesRecordGlobalBase.DEFAULT_ALIGNMENT_GUIDES_COLOR; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesRecordGlobalBase.DEFAULT_BACKGROUND_IMAGE; + +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesRecordGlobalBase.DEFAULT_PARENT_RING_COLOR; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesRecordGlobalBase.DEFAULT_SWATCH; +import static com.oracle.javafx.scenebuilder.kit.preferences.PreferencesRecordGlobalBase.DEFAULT_THEME; + +import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal.DEFAULT_TOOL_THEME; +import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal.recentItemsSizes; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal.DEFAULT_HIERARCHY_DISPLAY_OPTION; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal.DEFAULT_LIBRARY_DISPLAY_OPTION; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal.DEFAULT_PARENT_RING_COLOR; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal.DEFAULT_RECENT_ITEMS_SIZE; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal.DEFAULT_ROOT_CONTAINER_HEIGHT; import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal.DEFAULT_ROOT_CONTAINER_WIDTH; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal.DEFAULT_TOOL_THEME; -import static com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal.recentItemsSizes; + +import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import com.oracle.javafx.scenebuilder.kit.editor.panel.hierarchy.AbstractHierarchyPanelController.DisplayOption; import com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors.DoubleField; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.LibraryPanelController.DISPLAY_MODE; @@ -68,17 +79,21 @@ import com.oracle.javafx.scenebuilder.kit.util.control.paintpicker.PaintPicker; import com.oracle.javafx.scenebuilder.kit.util.control.paintpicker.PaintPicker.Mode; import java.util.Arrays; +import java.util.List; import javafx.beans.value.ChangeListener; import javafx.beans.value.ObservableValue; import javafx.event.ActionEvent; import javafx.fxml.FXML; +import javafx.scene.Scene; import javafx.scene.control.ChoiceBox; import javafx.scene.control.CustomMenuItem; import javafx.scene.control.MenuButton; import javafx.scene.paint.Color; import javafx.scene.paint.Paint; import javafx.scene.shape.Rectangle; +import javafx.stage.Modality; +import javafx.stage.Stage; import javafx.stage.WindowEvent; /** @@ -93,7 +108,7 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { @FXML private ChoiceBox<BackgroundImage> backgroundImage; @FXML - private ChoiceBox<ToolTheme> toolTheme; + private ChoiceBox<ToolTheme> scenebuilderTheme; @FXML private ChoiceBox<DISPLAY_MODE> libraryDisplayOption; @FXML @@ -114,13 +129,20 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { private Rectangle parentRingGraphic; @FXML private ChoiceBox<Integer> recentItemsSize; + @FXML + private ChoiceBox<EditorPlatform.Theme> themes; + @FXML + private ChoiceBox<EditorPlatform.GluonSwatch> gluonSwatch; private PaintPicker alignmentColorPicker; private PaintPicker parentRingColorPicker; - public PreferencesWindowController() { + private Stage ownerWindow; + + public PreferencesWindowController(Stage ownerWindow) { super(PreferencesWindowController.class.getResource("Preferences.fxml"), //NOI18N - I18N.getBundle()); + I18N.getBundle(), ownerWindow); + this.ownerWindow = ownerWindow; } /* @@ -144,7 +166,8 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { // Update preferences recordGlobal.writeToJavaPreferences(ROOT_CONTAINER_HEIGHT); // Update UI - recordGlobal.refreshRootContainerHeight(); +// recordGlobal.refreshRootContainerHeight(); + SceneBuilderApp.applyToAllDocumentWindows(dwc -> dwc.refreshRootContainerHeight(recordGlobal)); }); rootContainerWidth.setText(String.valueOf(recordGlobal.getRootContainerWidth())); rootContainerWidth.setOnAction(t -> { @@ -154,7 +177,8 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { // Update preferences recordGlobal.writeToJavaPreferences(ROOT_CONTAINER_WIDTH); // Update UI - recordGlobal.refreshRootContainerWidth(); +// recordGlobal.refreshRootContainerWidth(); + SceneBuilderApp.applyToAllDocumentWindows(dwc -> dwc.refreshRootContainerWidth(recordGlobal)); }); // Background image @@ -184,9 +208,9 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { new ParentRingColorListener(parentRingGraphic)); // Tool theme - toolTheme.getItems().setAll(Arrays.asList(ToolTheme.class.getEnumConstants())); - toolTheme.setValue(recordGlobal.getToolTheme()); - toolTheme.getSelectionModel().selectedItemProperty().addListener(new ToolThemeListener()); + scenebuilderTheme.getItems().setAll(Arrays.asList(ToolTheme.class.getEnumConstants())); + scenebuilderTheme.setValue(recordGlobal.getToolTheme()); + scenebuilderTheme.getSelectionModel().selectedItemProperty().addListener(new ToolThemeListener()); // Library view option final DISPLAY_MODE availableDisplayMode[] = new DISPLAY_MODE[]{ @@ -205,6 +229,18 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { cssAnalyzerColumnsOrder.setValue(recordGlobal.getCSSAnalyzerColumnsOrder()); cssAnalyzerColumnsOrder.getSelectionModel().selectedItemProperty().addListener(new ColumnOrderListener()); + // Theme and Gluon Theme + themes.getItems().setAll(Arrays.asList(EditorPlatform.Theme.class.getEnumConstants())); + themes.setValue(recordGlobal.getTheme()); + themes.getSelectionModel().selectedItemProperty().addListener(new ThemesListener()); + + List<EditorPlatform.GluonSwatch> gluonSwatches = Arrays.asList(EditorPlatform.GluonSwatch.class.getEnumConstants()); + // Sort alphabetically + gluonSwatches.sort((s1, s2) -> s1.toString().compareTo(s2.toString())); + gluonSwatch.getItems().setAll(gluonSwatches); + gluonSwatch.setValue(recordGlobal.getSwatch()); + gluonSwatch.getSelectionModel().selectedItemProperty().addListener(new SwatchListener()); + // Number of open recent items recentItemsSize.getItems().setAll(recentItemsSizes); recentItemsSize.setValue(recordGlobal.getRecentItemsSize()); @@ -221,6 +257,8 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { assert getRoot().getScene().getWindow() != null; getStage().setTitle(I18N.getString("prefs.title")); + getStage().initModality(Modality.APPLICATION_MODAL); + getStage().initOwner(ownerWindow); getStage().setResizable(false); } @@ -251,8 +289,8 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { // Parent ring color parentRingColorPicker.setPaintProperty(DEFAULT_PARENT_RING_COLOR); - // Tool theme - toolTheme.setValue(DEFAULT_TOOL_THEME); + // SceneBuilder theme + scenebuilderTheme.setValue(DEFAULT_TOOL_THEME); // Library view option libraryDisplayOption.setValue(DEFAULT_LIBRARY_DISPLAY_OPTION); @@ -265,6 +303,12 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { // Number of open recent items recentItemsSize.setValue(DEFAULT_RECENT_ITEMS_SIZE); + + // Default theme + themes.setValue(DEFAULT_THEME); + + // Default Gluon swatch + gluonSwatch.setValue(DEFAULT_SWATCH); } /** @@ -285,7 +329,8 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { recordGlobal.setBackgroundImage(newValue); recordGlobal.writeToJavaPreferences(BACKGROUND_IMAGE); // Update UI - recordGlobal.refreshBackgroundImage(); +// recordGlobal.refreshBackgroundImage(); + SceneBuilderApp.applyToAllDocumentWindows(dwc -> dwc.refreshBackgroundImage(recordGlobal)); } } @@ -302,7 +347,8 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { recordGlobal.setToolTheme(newValue); recordGlobal.writeToJavaPreferences(TOOL_THEME); // Update UI - recordGlobal.refreshToolTheme(); +// recordGlobal.refreshToolTheme(); + SceneBuilderApp.applyToAllDocumentWindows(dwc -> dwc.refreshToolTheme(recordGlobal)); } } @@ -318,7 +364,8 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { recordGlobal.setLibraryDisplayOption(newValue); recordGlobal.writeToJavaPreferences(LIBRARY_DISPLAY_OPTION); // Update UI - recordGlobal.refreshLibraryDisplayOption(); +// recordGlobal.refreshLibraryDisplayOption(); + SceneBuilderApp.applyToAllDocumentWindows(dwc -> dwc.refreshLibraryDisplayOption(recordGlobal)); } } @@ -335,7 +382,8 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { recordGlobal.setHierarchyDisplayOption(newValue); recordGlobal.writeToJavaPreferences(HIERARCHY_DISPLAY_OPTION); // Update UI - recordGlobal.refreshHierarchyDisplayOption(); +// recordGlobal.refreshHierarchyDisplayOption(); + SceneBuilderApp.applyToAllDocumentWindows(dwc -> dwc.refreshHierarchyDisplayOption(recordGlobal)); } } @@ -352,7 +400,56 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { recordGlobal.setCSSAnalyzerColumnsOrder(newValue); recordGlobal.writeToJavaPreferences(CSS_TABLE_COLUMNS_ORDERING_REVERSED); // Update UI - recordGlobal.refreshCSSAnalyzerColumnsOrder(); +// recordGlobal.refreshCSSAnalyzerColumnsOrder(); + SceneBuilderApp.applyToAllDocumentWindows(dwc -> dwc.refreshCssTableColumnsOrderingReversed(recordGlobal)); + } + } + + private static class ThemesListener implements ChangeListener<EditorPlatform.Theme> { + @Override + public void changed(ObservableValue<? extends EditorPlatform.Theme> observable, EditorPlatform.Theme oldValue, EditorPlatform.Theme newValue) { + final PreferencesController preferencesController + = PreferencesController.getSingleton(); + final PreferencesRecordGlobal recordGlobal + = preferencesController.getRecordGlobal(); + // Update preferences + recordGlobal.setTheme(newValue); + recordGlobal.writeToJavaPreferences(THEME); + // Update UI +// recordGlobal.refreshTheme(); + SceneBuilderApp.applyToAllDocumentWindows(dwc -> dwc.refreshTheme(recordGlobal)); + } + } + + private static class SwatchListener implements ChangeListener<EditorPlatform.GluonSwatch> { + @Override + public void changed(ObservableValue<? extends EditorPlatform.GluonSwatch> observable, EditorPlatform.GluonSwatch oldValue, EditorPlatform.GluonSwatch newValue) { + final PreferencesController preferencesController + = PreferencesController.getSingleton(); + final PreferencesRecordGlobal recordGlobal + = preferencesController.getRecordGlobal(); + // Update preferences + recordGlobal.setSwatch(newValue); + recordGlobal.writeToJavaPreferences(GLUON_SWATCH); + // Update UI +// recordGlobal.refreshSwatch(); + SceneBuilderApp.applyToAllDocumentWindows(dwc -> dwc.refreshSwatch(recordGlobal)); + } + } + + private static class GluonThemeListener implements ChangeListener<EditorPlatform.GluonTheme> { + @Override + public void changed(ObservableValue<? extends EditorPlatform.GluonTheme> observable, EditorPlatform.GluonTheme oldValue, EditorPlatform.GluonTheme newValue) { + final PreferencesController preferencesController + = PreferencesController.getSingleton(); + final PreferencesRecordGlobal recordGlobal + = preferencesController.getRecordGlobal(); + // Update preferences + recordGlobal.setGluonTheme(newValue); + recordGlobal.writeToJavaPreferences(GLUON_THEME); + // Update UI +// recordGlobal.refreshGluonTheme(); + SceneBuilderApp.applyToAllDocumentWindows(dwc -> dwc.refreshGluonTheme(recordGlobal)); } } @@ -391,7 +488,8 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { recordGlobal.setAlignmentGuidesColor((Color) newValue); recordGlobal.writeToJavaPreferences(ALIGNMENT_GUIDES_COLOR); // Update UI - recordGlobal.refreshAlignmentGuidesColor(); +// recordGlobal.refreshAlignmentGuidesColor(); + SceneBuilderApp.applyToAllDocumentWindows(dwc -> dwc.refreshAlignmentGuidesColor(recordGlobal)); graphic.setFill(newValue); } } @@ -415,7 +513,8 @@ public class PreferencesWindowController extends AbstractFxmlWindowController { recordGlobal.setParentRingColor((Color) newValue); recordGlobal.writeToJavaPreferences(PARENT_RING_COLOR); // Update UI - recordGlobal.refreshParentRingColor(); +// recordGlobal.refreshParentRingColor(); + SceneBuilderApp.applyToAllDocumentWindows(dwc -> dwc.refreshParentRingColor(recordGlobal)); graphic.setFill(newValue); } } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/RepositoryPreferences.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/RepositoryPreferences.java deleted file mode 100644 index 96fd9a51b372ef13f2cbed46e61f6faa0b0d92bd..0000000000000000000000000000000000000000 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/RepositoryPreferences.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.oracle.javafx.scenebuilder.app.preferences; - -import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository.Repository; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; - -public class RepositoryPreferences { - - private final Map<String, PreferencesRecordRepository> recordRepositories; - - public RepositoryPreferences() { - this.recordRepositories = new HashMap<>(); - } - - public PreferencesRecordRepository getRecordRepository(String id) { - return recordRepositories.get(id); - } - - public void addRecordRepository(String key, PreferencesRecordRepository object) { - recordRepositories.put(key, object); - } - - public void removeRecordRepository(String id) { - recordRepositories.remove(id); - } - - public List<Repository> getRepositories() { - return recordRepositories.values() - .stream() - .map(p -> p.getRepository()) - .collect(Collectors.toList()); - } - -} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/registration/RegistrationWindowController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/registration/RegistrationWindowController.java index 247f7c4843ce48c47ee64ca12248e1cf35a96b71..ae49d7efa3b71d2e1091f8eb94bb826019c8ca1b 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/registration/RegistrationWindowController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/registration/RegistrationWindowController.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates, 2016, Gluon. * All rights reserved. Use is subject to license terms. * @@ -41,6 +42,8 @@ import javafx.scene.control.CheckBox; import javafx.scene.control.Label; import javafx.scene.control.TextField; import javafx.stage.Modality; +import javafx.stage.Stage; +import javafx.stage.Window; import javafx.stage.WindowEvent; import java.net.*; @@ -63,9 +66,12 @@ public class RegistrationWindowController extends AbstractFxmlWindowController { @FXML private CheckBox cbOptIn; - public RegistrationWindowController() { + final private Window owner; + + public RegistrationWindowController(Stage owner) { super(RegistrationWindowController.class.getResource("Registration.fxml"), //NOI18N - I18N.getBundle()); + I18N.getBundle(), owner); + this.owner = owner; } @Override @@ -85,7 +91,15 @@ public class RegistrationWindowController extends AbstractFxmlWindowController { assert getRoot().getScene().getWindow() != null; getStage().setTitle(I18N.getString("registration.title")); - getStage().initModality(Modality.APPLICATION_MODAL); + + if (this.owner == null) { + // Window will be application modal + getStage().initModality(Modality.APPLICATION_MODAL); + } else { + // Window will be window modal + getStage().initOwner(this.owner); + getStage().initModality(Modality.WINDOW_MODAL); + } } @Override diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/report/JarAnalysisReportController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/report/JarAnalysisReportController.java index 54d786dcbbbac39b6150fccb4f8f80c0daa67f2e..6caf91c1b3f29c9a66a5235128382bb059d47289 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/report/JarAnalysisReportController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/report/JarAnalysisReportController.java @@ -47,6 +47,7 @@ import javafx.fxml.FXML; import javafx.scene.control.Label; import javafx.scene.input.Clipboard; import javafx.scene.input.DataFormat; +import javafx.stage.Stage; import javafx.stage.Window; import java.io.PrintWriter; import java.io.StringWriter; @@ -86,7 +87,7 @@ public class JarAnalysisReportController extends AbstractFxmlWindowController { private int prefixCounter = 0; private boolean dirty = false; - public JarAnalysisReportController(EditorController editorController, Window owner) { + public JarAnalysisReportController(EditorController editorController, Stage owner) { super(JarAnalysisReportController.class.getResource("JarAnalysisReport.fxml"), I18N.getBundle(), owner); //NOI18N this.editorController = editorController; } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/template/FxmlTemplates.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/template/FxmlTemplates.java deleted file mode 100644 index b30c019f46ba53d0f6c439c31e6d7d8c92f981e2..0000000000000000000000000000000000000000 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/template/FxmlTemplates.java +++ /dev/null @@ -1,126 +0,0 @@ -/* - * Copyright (c) 2012, 2014, Oracle and/or its affiliates. - * All rights reserved. Use is subject to license terms. - * - * This file is available and licensed under the following license: - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * - Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the distribution. - * - Neither the name of Oracle Corporation nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.oracle.javafx.scenebuilder.app.template; - -import java.net.URL; -import java.util.HashSet; -import java.util.Set; - -import com.oracle.javafx.scenebuilder.app.SceneBuilderApp.ApplicationControlAction; - -/** - * - */ -public class FxmlTemplates { - - public static URL getContentURL(ApplicationControlAction action) { - final String name = getTemplateFileName(action); - return FxmlTemplates.class.getResource(name); - } - - public static String getTemplateName(ApplicationControlAction action) { - final String name = getTemplateFileName(action); - return name.substring(0, name.indexOf(".fxml")); //NOI18N - } - - public static String getTemplateFileName(ApplicationControlAction action) { - String name; - switch (action) { - case NEW_ALERT_DIALOG: - name = "AlertDialog.fxml"; //NOI18N - break; - case NEW_ALERT_DIALOG_CSS: - name = "AlertDialog_css.fxml"; //NOI18N - break; - case NEW_ALERT_DIALOG_I18N: - name = "AlertDialog_i18n.fxml"; //NOI18N - break; - case NEW_BASIC_APPLICATION: - name = "BasicApplication.fxml"; //NOI18N - break; - case NEW_BASIC_APPLICATION_CSS: - name = "BasicApplication_css.fxml"; //NOI18N - break; - case NEW_BASIC_APPLICATION_I18N: - name = "BasicApplication_i18n.fxml"; //NOI18N - break; - case NEW_COMPLEX_APPLICATION: - name = "ComplexApplication.fxml"; //NOI18N - break; - case NEW_COMPLEX_APPLICATION_CSS: - name = "ComplexApplication_css.fxml"; //NOI18N - break; - case NEW_COMPLEX_APPLICATION_I18N: - name = "ComplexApplication_i18n.fxml"; //NOI18N - break; - default: - name = null; - break; - } - return name; - } - - public static Set<String> getResourceFileNames(ApplicationControlAction action) { - final Set<String> names = new HashSet<>(); - switch (action) { - case NEW_ALERT_DIALOG_CSS: - names.add("AlertDialog.css"); //NOI18N - names.add("AlertDialog.png"); //NOI18N - break; - case NEW_ALERT_DIALOG_I18N: - names.add("AlertDialog.css"); //NOI18N - names.add("AlertDialog.png"); //NOI18N - names.add("AlertDialog_en.properties"); //NOI18N - names.add("AlertDialog_fr.properties"); //NOI18N - break; - case NEW_BASIC_APPLICATION_CSS: - names.add("BasicApplication.css"); //NOI18N - break; - case NEW_BASIC_APPLICATION_I18N: - names.add("BasicApplication.css"); //NOI18N - names.add("BasicApplication_en.properties"); //NOI18N - names.add("BasicApplication_fr.properties"); //NOI18N - break; - case NEW_COMPLEX_APPLICATION_CSS: - names.add("ComplexApplication.css"); //NOI18N - break; - case NEW_COMPLEX_APPLICATION_I18N: - names.add("ComplexApplication.css"); //NOI18N - names.add("ComplexApplication_en.properties"); //NOI18N - names.add("ComplexApplication_fr.properties"); //NOI18N - break; - default: - break; - } - return names; - } -} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/template/TemplateDialogController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/template/TemplateDialogController.java deleted file mode 100644 index 434ab3eeb4ee7e1a2af261bc1f37039b7ab9b174..0000000000000000000000000000000000000000 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/template/TemplateDialogController.java +++ /dev/null @@ -1,304 +0,0 @@ -/* - * Copyright (c) 2012, 2014, Oracle and/or its affiliates. - * All rights reserved. Use is subject to license terms. - * - * This file is available and licensed under the following license: - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * - Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the distribution. - * - Neither the name of Oracle Corporation nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.oracle.javafx.scenebuilder.app.template; - -import com.oracle.javafx.scenebuilder.app.DocumentWindowController; -import com.oracle.javafx.scenebuilder.app.SceneBuilderApp; -import com.oracle.javafx.scenebuilder.app.SceneBuilderApp.ApplicationControlAction; -import com.oracle.javafx.scenebuilder.app.i18n.I18N; -import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog.AbstractModalDialog; -import com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog.ErrorDialog; -import javafx.event.ActionEvent; -import javafx.fxml.FXML; -import javafx.scene.control.Button; -import javafx.scene.control.Label; -import javafx.scene.control.TextField; -import javafx.stage.DirectoryChooser; - -import java.io.File; -import java.io.IOException; -import java.io.InputStream; -import java.nio.file.*; -import java.text.MessageFormat; - -public class TemplateDialogController extends AbstractModalDialog { - - @FXML // fx:id="chooseButton" - private Button chooseButton; // Value injected by FXMLLoader - @FXML // fx:id="detailsLabel" - private Label detailsLabel; // Value injected by FXMLLoader - @FXML // fx:id="messageLabel" - private Label messageLabel; // Value injected by FXMLLoader - @FXML // fx:id="locationTextField" - private TextField locationTextField; // Value injected by FXMLLoader - @FXML // fx:id="nameTextField" - private TextField nameTextField; // Value injected by FXMLLoader -// private final Template template; - private final ApplicationControlAction template; - - public TemplateDialogController(ApplicationControlAction template) { - super(TemplateDialogController.class.getResource("TemplateDialog.fxml"), //NOI18N - I18N.getBundle(), null); - this.template = template; - } - - /* - * AbstractModalDialog - */ - @Override - protected void controllerDidLoadFxml() { - super.controllerDidLoadFxml(); - setActionButtonVisible(false); - setDefaultButtonID(AbstractModalDialog.ButtonID.OK); - setShowDefaultButton(true); - // Update title - final String title = MessageFormat.format( - I18N.getString("template.title.new.project"), - FxmlTemplates.getTemplateName(template)); - getStage().setTitle(title); - } - - @Override - protected void controllerDidLoadContentFxml() { - - nameTextField.textProperty().addListener(observable -> { - // Update details section - updateDetails(); - // Update OK button - updateOkButtonState(); - - }); - locationTextField.textProperty().addListener(observable -> { - // Update details section - updateDetails(); - // Update OK button - updateOkButtonState(); - }); - - // Update name text field - nameTextField.setText(FxmlTemplates.getTemplateName(template)); - - // Update location text field - final File initialDirectory = EditorController.getNextInitialDirectory(); - if (initialDirectory != null) { - locationTextField.setText(initialDirectory.getAbsolutePath()); - } else { - locationTextField.setText(System.getProperty("user.home")); //NOI18N - } - } - - public File getNewProjectDirectory() { - final String location = locationTextField.getText().trim(); - final String name = nameTextField.getText().trim(); - return new File(location, name); - } - - @FXML - public void chooseButtonPressed(ActionEvent e) { - final DirectoryChooser directoryChooser = new DirectoryChooser(); - final File selectedDir = directoryChooser.showDialog(getStage().getOwner()); - // Directory is null when pressing cancel button - if (selectedDir != null) { - locationTextField.setText(selectedDir.getAbsolutePath()); - } - } - - public void locationTextFieldOnAction(ActionEvent e) { - locationTextField.selectAll(); - } - - public void nameTextFieldOnAction(ActionEvent e) { - nameTextField.selectAll(); - } - - @Override - protected void okButtonPressed(ActionEvent e) { - final File newProjectDirectory = getNewProjectDirectory(); - // OK button is enabled => directory creation should succeed - assert newProjectDirectory.mkdir(); - - try { - // Create template directory - Files.createDirectories(newProjectDirectory.toPath() - ); - // Create FXML and resource files - if (createTemplateFiles(newProjectDirectory)) { - final String fxmlFileName = FxmlTemplates.getTemplateFileName(template); - final File fxmlFile = new File(newProjectDirectory, fxmlFileName); - - final DocumentWindowController newTemplateWindow - = SceneBuilderApp.getSingleton().makeNewWindow(); - newTemplateWindow.loadFromFile(fxmlFile); - newTemplateWindow.openWindow(); - } - } catch (IOException ex) { - final ErrorDialog errorDialog = new ErrorDialog(null); - errorDialog.setMessage(I18N.getString("alert.open.failure1.message", getStage().getTitle())); - errorDialog.setDetails(I18N.getString("alert.open.failure1.details")); - errorDialog.setDebugInfoWithThrowable(ex); - errorDialog.setTitle(I18N.getString("alert.title.open")); - errorDialog.showAndWait(); - } - - EditorController.updateNextInitialDirectory(newProjectDirectory); - closeWindow(); - } - - @Override - protected void cancelButtonPressed(ActionEvent e) { - closeWindow(); - } - - @Override - protected void actionButtonPressed(ActionEvent e) { - // Should not be called because button is hidden - throw new IllegalStateException(); - } - - private boolean createTemplateFiles(final File newProjectDirectory) { - - assert newProjectDirectory.exists(); - final String fxmlFileName = FxmlTemplates.getTemplateFileName(template); - - // Copy FXML file - if ( !copyResource(fxmlFileName, newProjectDirectory)) { - return false; - } - - // Copy resource files - for (String resourceFileName : FxmlTemplates.getResourceFileNames(template)) { - if ( !copyResource(resourceFileName, newProjectDirectory)) { - return false; - } - } - return true; - } - - private boolean copyResource(String resourceFileName, File destinationDirectory ) { - try ( InputStream fromResourceFile = TemplateDialogController.class.getResourceAsStream(resourceFileName)) { - final File toResourceFile = new File(destinationDirectory, resourceFileName); - return copyFile(fromResourceFile, toResourceFile, StandardCopyOption.REPLACE_EXISTING); - } catch (IOException e) { - e.printStackTrace(); - - } - return false; - } - - /** - * The OK button should be enabled according the validity of the user - * inputs. - */ - private void updateOkButtonState() { - final String location = locationTextField.getText().trim(); - final File newProjectDirectory = getNewProjectDirectory(); - boolean disabled = false; - - // User inputs are declared *valid* if: - // 1) "Location" matches an existing folder file - // 2) "Location" / "Name" does not match any existing file - // 3) "Name" is a valid file name (i.e. it does not contain any '/' e.g.) - if (!new File(location).exists()) { - messageLabel.setText(MessageFormat.format( - I18N.getString("template.location.does.not.exist"), - location)); - disabled = true; - } else if (newProjectDirectory.exists()) { - messageLabel.setText(MessageFormat.format( - I18N.getString("template.name.already.exists"), - newProjectDirectory.getName())); - disabled = true; - } else if (!isValidFileName(newProjectDirectory)) { - messageLabel.setText(MessageFormat.format( - I18N.getString("template.cannot.create"), - newProjectDirectory.getAbsolutePath())); - disabled = true; - } - if (disabled) { - messageLabel.setVisible(true); - } else { - messageLabel.setVisible(false); - } - setOKButtonDisable(disabled); - } - - private boolean isValidFileName(final File file) { - boolean isValid = true; - try { - if (file.mkdir()) { - // Code below to please findbugs - if (file.delete() == false) { - isValid = false; - } - } else { - isValid = false; - } - } catch (RuntimeException e) { - isValid = false; - } - return isValid; - } - - private void updateDetails() { - final String location = locationTextField.getText().trim(); - final String name = nameTextField.getText().trim(); - final String path = location + File.separator + name + File.separator; - final String fxmlFileName = FxmlTemplates.getTemplateFileName(template); - final StringBuilder sb = new StringBuilder(); - // List fxml file - sb.append(path); - sb.append(fxmlFileName); - // List resource files - for (String resourceFileName : FxmlTemplates.getResourceFileNames(template)) { - sb.append("\n"); //NOI18N - sb.append(path); - sb.append(resourceFileName); - } - detailsLabel.setText(sb.toString()); - } - - private boolean copyFile(final InputStream in, final File toFile, final CopyOption... options) { - try { - final Path target = Paths.get(toFile.toURI()); - Files.copy(in, target, options); - } catch (IOException ioe) { - final ErrorDialog errorDialog = new ErrorDialog(null); - errorDialog.setMessage(I18N.getString("alert.copy.failure.message", getStage().getTitle())); - errorDialog.setDebugInfoWithThrowable(ioe); - errorDialog.setTitle(I18N.getString("alert.title.copy")); - errorDialog.showAndWait(); - return false; - } - return true; - } -} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/tracking/Tracking.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/tracking/Tracking.java index e3300ab9d28f6cdbbeca214353ef806b82402e3c..54c972ca3babcf23ce6662db00d35a74cc8ac5e0 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/tracking/Tracking.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/tracking/Tracking.java @@ -1,6 +1,38 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.app.tracking; import com.oracle.javafx.scenebuilder.app.SceneBuilderApp; +import com.oracle.javafx.scenebuilder.app.util.AppSettings; import java.io.DataInputStream; import java.io.IOException; @@ -24,7 +56,7 @@ public class Tracking { + "&java=" + URLEncoder.encode(java, "UTF-8") + "&type=" + type + "&id=" + hash - + "&version=" + SceneBuilderApp.VERSION + + "&version=" + AppSettings.getSceneBuilderVersion() + (update ? "&update=true" : ""); URL url = new URL("http://usage.gluonhq.com/ul/log?" + urlParameters); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/SBSettings.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/AppSettings.java similarity index 50% rename from sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/SBSettings.java rename to sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/AppSettings.java index d52019a5e6c90cfd8e5466f5b6297b6cec19f759..cffff69683b9d7d9214c76d0bc7ca154a72a0f96 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/SBSettings.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/AppSettings.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, Gluon and/or its affiliates. + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. * All rights reserved. Use is subject to license terms. * * This file is available and licensed under the following license: @@ -34,23 +34,42 @@ package com.oracle.javafx.scenebuilder.app.util; import com.oracle.javafx.scenebuilder.app.SceneBuilderApp; import com.oracle.javafx.scenebuilder.app.about.AboutWindowController; +import javafx.scene.control.Alert; import javafx.scene.image.Image; import javafx.stage.Stage; +import javax.json.Json; +import javax.json.JsonObject; +import javax.json.JsonReader; +import javax.json.JsonReaderFactory; +import java.io.File; import java.io.IOException; import java.io.InputStream; +import java.io.InputStreamReader; import java.net.MalformedURLException; import java.net.URL; import java.util.Properties; import java.util.function.Consumer; -public class SBSettings { +public class AppSettings { public static final String APP_ICON_16 = SceneBuilderApp.class.getResource("SceneBuilderLogo_16.png").toString(); public static final String APP_ICON_32 = SceneBuilderApp.class.getResource("SceneBuilderLogo_32.png").toString(); + public static final String LATEST_VERSION_CHECK_URL = "http://download.gluonhq.com/scenebuilder/settings.properties"; + public static final String LATEST_VERSION_NUMBER_PROPERTY = "latestversion"; + + public static final String LATEST_VERSION_INFORMATION_URL = "http://download.gluonhq.com/scenebuilder/version-8.4.0.json"; + + public static final String DOWNLOAD_URL = "http://gluonhq.com/labs/scene-builder"; + private static String sceneBuilderVersion; private static String latestVersion; + private static String latestVersionText; + private static String latestVersionAnnouncementURL; + + private static final JsonReaderFactory readerFactory = Json.createReaderFactory(null); + static { initSceneBuiderVersion(); } @@ -67,9 +86,12 @@ public class SBSettings { } } + public static void setWindowIcon(Alert alert) { + setWindowIcon((Stage)alert.getDialogPane().getScene().getWindow()); + } public static void setWindowIcon(Stage stage) { - Image icon16 = new Image(SBSettings.APP_ICON_16); - Image icon32 = new Image(SBSettings.APP_ICON_32); + Image icon16 = new Image(AppSettings.APP_ICON_16); + Image icon32 = new Image(AppSettings.APP_ICON_32); stage.getIcons().addAll(icon16, icon32); } @@ -85,6 +107,8 @@ public class SBSettings { int currentVersionNumber = Integer.parseInt(currentVersionNumbers[i]); if (number > currentVersionNumber) { return true; + } else if (number < currentVersionNumber) { + return false; } } return false; @@ -92,31 +116,80 @@ public class SBSettings { public static void getLatestVersion(Consumer<String> consumer) { - if (latestVersion == null) { - new Thread (() -> { - Properties prop = new Properties(); - String onlineVersionNumber = null; - - URL url = null; - try { - url = new URL("http://download.gluonhq.com/scenebuilder/settings.properties"); - } catch (MalformedURLException e) { - e.printStackTrace(); - } - - try (InputStream inputStream = url.openStream()) { - prop.load(inputStream); - onlineVersionNumber = prop.getProperty("latestversion"); - - } catch (IOException ex) { - ex.printStackTrace(); - } - latestVersion = onlineVersionNumber; - consumer.accept(latestVersion); - }, "GetLatestVersion").start(); - } else { + if (latestVersion == null) { + new Thread (() -> { + Properties prop = new Properties(); + String onlineVersionNumber = null; + + URL url = null; + try { + url = new URL(LATEST_VERSION_CHECK_URL); + } catch (MalformedURLException e) { + e.printStackTrace(); + } + + try (InputStream inputStream = url.openStream()) { + prop.load(inputStream); + onlineVersionNumber = prop.getProperty(LATEST_VERSION_NUMBER_PROPERTY); + + } catch (IOException ex) { + ex.printStackTrace(); + } + latestVersion = onlineVersionNumber; consumer.accept(latestVersion); + }, "GetLatestVersion").start(); + } else { + consumer.accept(latestVersion); + } + } + + public static String getLatestVersionText() { + if (latestVersionText == null) { + updateLatestVersionInfo(); + } + return latestVersionText; + } + + private static void updateLatestVersionInfo() { + try { + URL url = new URL(LATEST_VERSION_INFORMATION_URL); + + try (JsonReader reader = readerFactory.createReader(new InputStreamReader(url.openStream()))) { + JsonObject object = reader.readObject(); + JsonObject announcementObject = object.getJsonObject("announcement"); + latestVersionText = announcementObject.getString("text"); + latestVersionAnnouncementURL = announcementObject.getString("url"); + } catch (IOException e) { + e.printStackTrace(); } + } catch (MalformedURLException e) { + e.printStackTrace(); + } + } + + public static String getLatestVersionAnnouncementURL() { + if (latestVersionAnnouncementURL == null) { + updateLatestVersionInfo(); + } + return latestVersionAnnouncementURL; + } + + public static String getUserM2Repository() { + String m2Path = System.getProperty("user.home") + File.separator + + ".m2" + File.separator + "repository"; //NOI18N + + // TODO: Allow custom path for .m2 + + assert m2Path != null; + + return m2Path; } + public static String getTempM2Repository() { + String m2Path = System.getProperty("java.io.tmpdir") + File.separator + "m2Tmp"; //NOI18N + + assert m2Path != null; + + return m2Path; + } } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/welcomedialog/WelcomeDialogWindowController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/welcomedialog/WelcomeDialogWindowController.java new file mode 100644 index 0000000000000000000000000000000000000000..39a4e78fd829c0cd1395d059c2bea8bfd493565d --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/app/welcomedialog/WelcomeDialogWindowController.java @@ -0,0 +1,157 @@ +/* + * Copyright (c) 2017, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package com.oracle.javafx.scenebuilder.app.welcomedialog; + +import com.oracle.javafx.scenebuilder.app.DocumentWindowController; +import com.oracle.javafx.scenebuilder.app.SceneBuilderApp; +import com.oracle.javafx.scenebuilder.app.i18n.I18N; +import com.oracle.javafx.scenebuilder.app.preferences.PreferencesController; +import com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordGlobal; +import com.oracle.javafx.scenebuilder.kit.template.Template; +import com.oracle.javafx.scenebuilder.kit.template.TemplatesBaseWindowController; +import com.oracle.javafx.scenebuilder.app.util.AppSettings; +import javafx.event.ActionEvent; +import javafx.fxml.FXML; +import javafx.geometry.Pos; +import javafx.scene.control.Button; +import javafx.scene.control.Label; +import javafx.scene.control.Tooltip; +import javafx.scene.layout.VBox; +import javafx.stage.Modality; +import javafx.stage.Stage; +import javafx.stage.WindowEvent; + +import java.io.File; +import java.util.Arrays; +import java.util.List; + + +public class WelcomeDialogWindowController extends TemplatesBaseWindowController { + + @FXML + private VBox recentDocuments; + + @FXML + private Button emptyApp; + + + private static WelcomeDialogWindowController instance; + + private SceneBuilderApp sceneBuilderApp; + + private WelcomeDialogWindowController() { + super(WelcomeDialogWindowController.class.getResource("WelcomeWindow.fxml"), //NOI18N + I18N.getBundle(), + null); // We want it to be a top level window so we're setting the owner to null. + + sceneBuilderApp = SceneBuilderApp.getSingleton(); + } + + + @Override + public void onCloseRequest(WindowEvent event) { + getStage().hide(); + } + + /* + * AbstractWindowController + */ + @Override + protected void controllerDidCreateStage() { + assert getRoot() != null; + assert getRoot().getScene() != null; + assert getRoot().getScene().getWindow() != null; + + getStage().setTitle(I18N.getString("welcome.title")); + getStage().initModality(Modality.APPLICATION_MODAL); + } + + @Override + protected void controllerDidLoadFxml() { + super.controllerDidLoadFxml(); + assert recentDocuments != null; + + PreferencesRecordGlobal preferencesRecordGlobal = PreferencesController + .getSingleton().getRecordGlobal(); + List<String> recentItems = preferencesRecordGlobal.getRecentItems(); + if (recentItems.size() == 0) { + Label noRecentItems = new Label(I18N.getString("welcome.recent.items.no.recent.items")); + noRecentItems.getStyleClass().add("no-recent-items-label"); + recentDocuments.getChildren().add(noRecentItems); + } + for (int row = 0; row < preferencesRecordGlobal.getRecentItemsSize(); ++row) { + if (recentItems.size() < row + 1) { + break; + } + + String recentItem = recentItems.get(row); + File recentItemFile = new File(recentItems.get(row)); + String recentItemTitle = recentItemFile.getName(); + Button recentDocument = new Button(recentItemTitle); + recentDocument.getStyleClass().add("recent-document"); + recentDocument.setMaxWidth(Double.MAX_VALUE); + recentDocument.setAlignment(Pos.BASELINE_LEFT); + recentDocuments.getChildren().add(recentDocument); + + recentDocument.setOnAction(event -> fireOpenRecentProject(event, recentItem)); + recentDocument.setTooltip(new Tooltip(recentItem)); + } + + emptyApp.setUserData(Template.EMPTY_APP); + + setOnTemplateChosen(sceneBuilderApp::performNewTemplate); + setupTemplateButtonHandlers(); + } + + public static WelcomeDialogWindowController getInstance() { + if (instance == null){ + instance = new WelcomeDialogWindowController(); + AppSettings.setWindowIcon((Stage)instance.getStage()); + } + return instance; + } + + private void fireOpenRecentProject(ActionEvent event, String projectPath) { + sceneBuilderApp.handleOpenFilesAction(Arrays.asList(projectPath)); + getStage().hide(); + } + + @FXML + private void openDocument() { + // Right now there is only one window open by default + DocumentWindowController documentWC = sceneBuilderApp.getDocumentWindowControllers().get(0); + sceneBuilderApp.performControlAction(SceneBuilderApp.ApplicationControlAction.OPEN_FILE, documentWC); + getStage().hide(); + } +} + diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/ResourceUtils.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/ResourceUtils.java new file mode 100644 index 0000000000000000000000000000000000000000..c1bb2a2c99e147e29673625f5b455030b0def5dd --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/ResourceUtils.java @@ -0,0 +1,130 @@ +/* + * Copyright (c) 2017 Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package com.oracle.javafx.scenebuilder.kit; + +import javafx.collections.ObservableList; +import javafx.scene.Parent; +import javafx.scene.Scene; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +public class ResourceUtils { + + public static final String BASE = ResourceUtils.class.getResource("css/Base.css").toExternalForm(); + public static final String THEME_DARK_STYLESHEET = ResourceUtils.class.getResource("css/ThemeDark.css").toExternalForm(); + public static final String THEME_DEFAULT_STYLESHEET = ResourceUtils.class.getResource("css/ThemeDefault.css").toExternalForm(); + private static List<String> imageExtensions; + private static List<String> audioExtensions; + private static List<String> videoExtensions; + private static List<String> mediaExtensions; + + public static String getToolStylesheet(ToolTheme theme) { + switch(theme) { + case DARK: + return THEME_DARK_STYLESHEET; + case DEFAULT: + return THEME_DEFAULT_STYLESHEET; + } + return null; + } + + public static void setToolTheme(ToolTheme theme, Scene scene) { + setToolTheme(theme, scene.getStylesheets()); + } + + public static void setToolTheme(ToolTheme theme, Parent parent) { + setToolTheme(theme, parent.getStylesheets()); + } + + private static void setToolTheme(ToolTheme theme, ObservableList<String> stylesheets) { + if (!stylesheets.contains(BASE)) { + stylesheets.add(BASE); + } + String themeStylesheet = getToolStylesheet(theme); + if (!stylesheets.contains(themeStylesheet)) { + stylesheets.add(themeStylesheet); + } + } + + public static List<String> getSupportedImageExtensions() { + if (imageExtensions == null) { + imageExtensions = new ArrayList<>(); + imageExtensions.add("*.jpg"); //NOI18N + imageExtensions.add("*.jpeg"); //NOI18N + imageExtensions.add("*.png"); //NOI18N + imageExtensions.add("*.gif"); //NOI18N + imageExtensions = Collections.unmodifiableList(imageExtensions); + } + return imageExtensions; + } + + public static List<String> getSupportedAudioExtensions() { + if (audioExtensions == null) { + audioExtensions = new ArrayList<>(); + audioExtensions.add("*.aif"); //NOI18N + audioExtensions.add("*.aiff"); //NOI18N + audioExtensions.add("*.mp3"); //NOI18N + audioExtensions.add("*.m4a"); //NOI18N + audioExtensions.add("*.wav"); //NOI18N + audioExtensions.add("*.m3u"); //NOI18N + audioExtensions.add("*.m3u8"); //NOI18N + audioExtensions = Collections.unmodifiableList(audioExtensions); + } + return audioExtensions; + } + + public static List<String> getSupportedVideoExtensions() { + if (videoExtensions == null) { + videoExtensions = new ArrayList<>(); + videoExtensions.add("*.flv"); //NOI18N + videoExtensions.add("*.fxm"); //NOI18N + videoExtensions.add("*.mp4"); //NOI18N + videoExtensions.add("*.m4v"); //NOI18N + videoExtensions = Collections.unmodifiableList(videoExtensions); + } + return videoExtensions; + } + + public static List<String> getSupportedMediaExtensions() { + if (mediaExtensions == null) { + mediaExtensions = new ArrayList<>(); + mediaExtensions.addAll(getSupportedImageExtensions()); + mediaExtensions.addAll(getSupportedAudioExtensions()); + mediaExtensions.addAll(getSupportedVideoExtensions()); + mediaExtensions = Collections.unmodifiableList(mediaExtensions); + } + return mediaExtensions; + } +} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/ToolTheme.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/ToolTheme.java new file mode 100644 index 0000000000000000000000000000000000000000..d3f43464573a9cda1e99a3ddbc14ab1fb3006d90 --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/ToolTheme.java @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2017 Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package com.oracle.javafx.scenebuilder.kit; + +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; + +public enum ToolTheme { + + DEFAULT { + @Override + public String toString() { + return I18N.getString("prefs.tool.theme.default"); + } + }, + DARK { + @Override + public String toString() { + return I18N.getString("prefs.tool.theme.dark"); + } + } +} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/alert/ImportingGluonControlsAlert.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/alert/ImportingGluonControlsAlert.java new file mode 100644 index 0000000000000000000000000000000000000000..d1164cab01615547cd773c3bd8e54ba1b39b95b6 --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/alert/ImportingGluonControlsAlert.java @@ -0,0 +1,58 @@ +/* + * Copyright (c) 2017, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package com.oracle.javafx.scenebuilder.kit.alert; + +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; +import javafx.scene.control.ButtonBar; +import javafx.scene.control.ButtonType; +import javafx.stage.Stage; + + +/** + * Used when the user is importing Gluon controls + */ +public class ImportingGluonControlsAlert extends SBAlert { + + public ImportingGluonControlsAlert(Stage owner) { + super(AlertType.WARNING, owner); + + setTitle(I18N.getString("alert.importing.gluon.title")); + setHeaderText(I18N.getString("alert.importing.gluon.headertext")); + setContentText(I18N.getString("alert.importing.gluon.contenttext")); + + ButtonType OKButton = new ButtonType(I18N.getString("alert.importing.gluon.ok.button"), ButtonBar.ButtonData.OK_DONE); + + getButtonTypes().setAll(OKButton); + } + +} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMBuilderFactory.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/alert/SBAlert.java similarity index 61% rename from sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMBuilderFactory.java rename to sb/src/main/java/com/oracle/javafx/scenebuilder/kit/alert/SBAlert.java index 2d40c64d3b7f3d51207e589ec4888a49e05f0764..655a6e135c4d29509fcd58fe67547c2292438dd9 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMBuilderFactory.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/alert/SBAlert.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012, 2014, Oracle and/or its affiliates. + * Copyright (c) 2017 Gluon and/or its affiliates. * All rights reserved. Use is subject to license terms. * * This file is available and licensed under the following license: @@ -13,7 +13,7 @@ * - Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the distribution. - * - Neither the name of Oracle Corporation nor the names of its + * - Neither the name of Oracle Corporation and Gluon nor the names of its * contributors may be used to endorse or promote products derived * from this software without specific prior written permission. * @@ -29,43 +29,27 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.oracle.javafx.scenebuilder.kit.fxom; +package com.oracle.javafx.scenebuilder.kit.alert; -import javafx.fxml.JavaFXBuilderFactory; -import javafx.scene.image.Image; -import javafx.util.Builder; -import javafx.util.BuilderFactory; - -import com.oracle.javafx.scenebuilder.kit.util.Deprecation; +import javafx.scene.control.Alert; +import javafx.stage.Stage; /** - * + * All SB alerts should extend from this class to have a consistent look and feel */ -class FXOMBuilderFactory implements BuilderFactory { +public class SBAlert extends Alert { - final JavaFXBuilderFactory delegate; - - public FXOMBuilderFactory(ClassLoader classLoader) { - assert classLoader != null; - - this.delegate = Deprecation.newJavaFXBuilderFactory(classLoader); + public SBAlert(AlertType alertType, Stage owner) { + super(alertType); + + initOwner(owner); + getDialogPane().getStyleClass().add("SB-alert"); + getDialogPane().getStylesheets().add(SBAlert.class.getResource("Alert.css").toString()); + setIcons(owner); } - - /* - * BuilderFactory - */ - - @Override - public Builder<?> getBuilder(Class<?> type) { - final Builder<?> result; - - if (Image.class == type) { - result = new FXOMImageBuilder(); - } else { - result = delegate.getBuilder(type); - } - - return result; + + private void setIcons(Stage owner) { + Stage alertStage = (Stage) getDialogPane().getScene().getWindow(); + alertStage.getIcons().setAll(owner.getIcons()); } - } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/alert/WarnThemeAlert.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/alert/WarnThemeAlert.java new file mode 100644 index 0000000000000000000000000000000000000000..b115f153e85f059e7bbedbc02e3fe6fc3c2f1d71 --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/alert/WarnThemeAlert.java @@ -0,0 +1,87 @@ +/* + * Copyright (c) 2017, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package com.oracle.javafx.scenebuilder.kit.alert; + +import com.oracle.javafx.scenebuilder.kit.editor.EditorController; +import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; +import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; +import javafx.scene.control.ButtonBar; +import javafx.scene.control.ButtonType; +import javafx.stage.Stage; + +/** + * Used when the user adds a Gluon control to the document or loads a document with a Gluon control and + * Gluon Mobile theme is not set. + * When a Gluon control is used, Gluon Mobile theme must be set in order for the control to work correctly. + */ +public class WarnThemeAlert extends SBAlert { + private static boolean hasBeenShown = false; + + private WarnThemeAlert(EditorController editorController, Stage owner) { + super(AlertType.WARNING, owner); + + setTitle(I18N.getString("alert.theme.gluon.mobile.title")); + setHeaderText(I18N.getString("alert.theme.gluon.mobile.headertext")); + setContentText(I18N.getString("alert.theme.gluon.mobile.contenttext")); + + ButtonType setGluonTheme = new ButtonType(I18N.getString("alert.theme.gluon.mobile.setgluontheme"), ButtonBar.ButtonData.OK_DONE); + ButtonType ignore = new ButtonType(I18N.getString("alert.theme.gluon.mobile.ignore"), ButtonBar.ButtonData.CANCEL_CLOSE); + + getButtonTypes().setAll(setGluonTheme, ignore); + + resultProperty().addListener((observable, oldValue, newValue) -> { + if (newValue == setGluonTheme) { + editorController.setTheme(EditorPlatform.Theme.GLUON_MOBILE_LIGHT); + } + }); + + setOnShown(event -> hasBeenShown = true); + } + + public static void showAlertIfRequired(EditorController editorController, FXOMObject fxomObject, Stage owner) { + if (!hasBeenShown && fxomObject != null && fxomObject.isGluon() && (editorController.getTheme() != EditorPlatform.Theme.GLUON_MOBILE_LIGHT + && editorController.getTheme() != EditorPlatform.Theme.GLUON_MOBILE_DARK)) { + new WarnThemeAlert(editorController, owner).showAndWait(); + } + } + + public static void showAlertIfRequired(EditorController editorController, FXOMDocument fxomDocument, Stage owner) { + if (!hasBeenShown && fxomDocument != null && fxomDocument.hasGluonControls() && (editorController.getTheme() != EditorPlatform.Theme.GLUON_MOBILE_LIGHT + && editorController.getTheme() != EditorPlatform.Theme.GLUON_MOBILE_DARK)) { + new WarnThemeAlert(editorController, owner).showAndWait(); + } + } + +} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/EditorController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/EditorController.java index c59d7d5e5843f0ee81ccd2322664ab00d52db6ad..3d79d164566a5550333d8e9e98ac6dd8e7d2cda9 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/EditorController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/EditorController.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -31,9 +32,11 @@ */ package com.oracle.javafx.scenebuilder.kit.editor; +import com.oracle.javafx.scenebuilder.kit.ResourceUtils; +import com.oracle.javafx.scenebuilder.kit.alert.WarnThemeAlert; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform.Theme; import com.oracle.javafx.scenebuilder.kit.editor.drag.DragController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.job.AddContextMenuToSelectionJob; import com.oracle.javafx.scenebuilder.kit.editor.job.AddTooltipToSelectionJob; import com.oracle.javafx.scenebuilder.kit.editor.job.ModifySelectionJob; @@ -122,6 +125,7 @@ import javafx.scene.control.Control; import javafx.scene.effect.Effect; import javafx.scene.input.Clipboard; import javafx.scene.layout.BorderPane; +import javafx.stage.Stage; import javafx.util.Callback; /** @@ -157,6 +161,8 @@ public class EditorController { USE_COMPUTED_SIZES, ADD_CONTEXT_MENU, ADD_TOOLTIP, + SET_SIZE_335x600, + SET_SIZE_900x600, SET_SIZE_320x240, SET_SIZE_640x480, SET_SIZE_1280x800, @@ -226,6 +232,8 @@ public class EditorController { * under user control. */ public enum Size { + SIZE_335x600, + SIZE_900x600, SIZE_320x240, SIZE_640x480, SIZE_1280x800, @@ -258,8 +266,10 @@ public class EditorController { = new SimpleObjectProperty<>(new BuiltinGlossary()); private final ObjectProperty<ResourceBundle> resourcesProperty = new SimpleObjectProperty<>(null); - private final ObjectProperty<Theme> themeProperty - = new SimpleObjectProperty<>(Theme.MODENA); + private final ObjectProperty<EditorPlatform.GluonTheme> gluonThemeProperty + = new SimpleObjectProperty<>(EditorPlatform.DEFAULT_GLUON_THEME); + private final ObjectProperty<EditorPlatform.GluonSwatch> gluonSwatchProperty + = new SimpleObjectProperty<>(EditorPlatform.DEFAULT_SWATCH); private final ListProperty<File> sceneStyleSheetProperty = new SimpleListProperty<>(); private final BooleanProperty pickModeEnabledProperty @@ -270,6 +280,8 @@ public class EditorController { = new SimpleStringProperty(getBuiltinToolStylesheet()); private Callback<Void, Boolean> requestTextEditingSessionEnd; + + private Stage ownerWindow; private static String builtinToolStylesheet; private static File nextInitialDirectory = new File(System.getProperty("user.home")); //NOI18N @@ -325,8 +337,8 @@ public class EditorController { * @param fxmlText null or the fxml text to be edited * @throws IOException if fxml text cannot be parsed and loaded correctly. */ - public void setFxmlText(String fxmlText) throws IOException { - setFxmlTextAndLocation(fxmlText, getFxmlLocation()); + public void setFxmlText(String fxmlText, boolean checkGluonControls) throws IOException { + setFxmlTextAndLocation(fxmlText, getFxmlLocation(), checkGluonControls); } /** @@ -526,7 +538,19 @@ public class EditorController { public ObservableValue<ResourceBundle> resourcesProperty() { return resourcesProperty; } - + + // -- Theme property + private final ObjectProperty<Theme> themeProperty + = new SimpleObjectProperty<Theme>(EditorPlatform.DEFAULT_THEME) { + @Override + protected void invalidated() { + FXOMDocument fxomDocument = getFxomDocument(); + if (fxomDocument != null) { + fxomDocument.refreshSceneGraph(); + } + } + }; + /** * Returns the theme used by this editor. * @@ -555,7 +579,65 @@ public class EditorController { public ObservableValue<Theme> themeProperty() { return themeProperty; } - + + /** + * Returns the gluon theme used by this editor + * + * @return the gluon theme used by this editor + */ + public EditorPlatform.GluonTheme getGluonTheme() { + return gluonThemeProperty.get(); + } + + /** + * Sets the gluon theme used by this editor. + * Content and Preview panels sharing this editor will update + * their content to use this new theme. + * + * @param theme the theme to be used in this editor + */ + public void setGluonTheme(EditorPlatform.GluonTheme theme) { + gluonThemeProperty.set(theme); + } + + /** + * The property holding the gluon theme used by this editor + * + * @return the property holding the gluon theme used by this editor. + */ + public ObjectProperty<EditorPlatform.GluonTheme> gluonThemeProperty() { + return gluonThemeProperty; + } + + /** + * Sets the gluon swatch used by this editor. + * Content and Preview panels sharing this editor will update + * their content to use this new swatch. + * + * @param swatch the swatch to be used in this editor + */ + public void setGluonSwatch(EditorPlatform.GluonSwatch swatch) { + gluonSwatchProperty.set(swatch); + } + + /** + * Returns the gluon swatch used by this editor + * + * @return the gluon swatch used by this editor + */ + public EditorPlatform.GluonSwatch getGluonSwatch() { + return gluonSwatchProperty.get(); + } + + /** + * The property holding the gluon swatch used by this editor + * + * @return the property holding the gluon swatch used by this editor. + */ + public ObjectProperty<EditorPlatform.GluonSwatch> gluonSwatchProperty() { + return gluonSwatchProperty; + } + /** * * @return the list of scene style sheet used by this editor @@ -650,21 +732,52 @@ public class EditorController { public URL getFxmlLocation() { return fxmlLocationProperty.getValue(); } - + /** * Sets both fxml text and location to be edited by this editor. * Performs setFxmlText() and setFxmlLocation() but in a optimized manner * (it avoids an extra scene graph refresh). - * + * * @param fxmlText null or the fxml text to be edited * @param fxmlLocation null or the location of the fxml text being edited * @throws IOException if fxml text cannot be parsed and loaded correctly. */ public void setFxmlTextAndLocation(String fxmlText, URL fxmlLocation) throws IOException { - updateFxomDocument(fxmlText, fxmlLocation, getResources()); + setFxmlTextAndLocation(fxmlText, fxmlLocation, false); + } + + /** + * Sets both fxml text and location to be edited by this editor. + * Performs setFxmlText() and setFxmlLocation() but in a optimized manner + * (it avoids an extra scene graph refresh). + * + * @param fxmlText null or the fxml text to be edited + * @param fxmlLocation null or the location of the fxml text being edited + * @param checkTheme if set to true a check will be made if the fxml contains + * Gluon controls and if so, the correct theme is set + * @throws IOException if fxml text cannot be parsed and loaded correctly. + */ + public void setFxmlTextAndLocation(String fxmlText, URL fxmlLocation, boolean checkTheme) throws IOException { + updateFxomDocument(fxmlText, fxmlLocation, getResources(), checkTheme); this.fxmlLocationProperty.setValue(fxmlLocation); } - + + /** + * Sets fxml text, location and resources to be edited by this editor. + * Performs setFxmlText(), setFxmlLocation() and setResources() but in an + * optimized manner (it avoids extra scene graph refresh). + * + * @param fxmlText null or the fxml text to be edited + * @param fxmlLocation null or the location of the fxml text being edited + * @param resources null or the resource bundle used to load the fxml text + * + * @throws IOException if fxml text cannot be parsed and loaded correctly. + */ + public void setFxmlTextLocationAndResources(String fxmlText, URL fxmlLocation, + ResourceBundle resources) throws IOException { + setFxmlTextLocationAndResources(fxmlText, fxmlLocation, resources, false); + } + /** * Sets fxml text, location and resources to be edited by this editor. * Performs setFxmlText(), setFxmlLocation() and setResources() but in an @@ -673,11 +786,13 @@ public class EditorController { * @param fxmlText null or the fxml text to be edited * @param fxmlLocation null or the location of the fxml text being edited * @param resources null or the resource bundle used to load the fxml text + * @param checkTheme if set to true a check will be made if the fxml contains G + * Gluon controls and if so, the correct theme is set * @throws IOException if fxml text cannot be parsed and loaded correctly. */ public void setFxmlTextLocationAndResources(String fxmlText, URL fxmlLocation, - ResourceBundle resources) throws IOException { - updateFxomDocument(fxmlText, fxmlLocation, resources); + ResourceBundle resources, boolean checkTheme) throws IOException { + updateFxomDocument(fxmlText, fxmlLocation, resources, checkTheme); this.fxmlLocationProperty.setValue(fxmlLocation); } @@ -736,9 +851,7 @@ public class EditorController { */ public static synchronized String getBuiltinToolStylesheet() { if (builtinToolStylesheet == null) { - final URL url = EditorController.class.getResource("css/Theme.css"); //NOI18N - assert url != null; - builtinToolStylesheet = url.toExternalForm(); + builtinToolStylesheet = ResourceUtils.THEME_DEFAULT_STYLESHEET; } return builtinToolStylesheet; } @@ -777,6 +890,27 @@ public class EditorController { public Selection getSelection() { return selection; } + + /** + * Returns the list of selected objects + * + * @return the selected objects + */ + public List<FXOMObject> getSelectedObjects() { + // Collects all the selected objects + final List<FXOMObject> selectedObjects = new ArrayList<>(); + final Selection selection = getSelection(); + if (selection.getGroup() instanceof ObjectSelectionGroup) { + final ObjectSelectionGroup osg = (ObjectSelectionGroup) selection.getGroup(); + selectedObjects.addAll(osg.getItems()); + } else if (selection.getGroup() instanceof GridSelectionGroup) { + final GridSelectionGroup gsg = (GridSelectionGroup) selection.getGroup(); + selectedObjects.addAll(gsg.collectSelectedObjects()); + } else { + assert false; + } + return selectedObjects; + } /** @@ -1020,6 +1154,16 @@ public class EditorController { jobManager.push(job); break; } + case SET_SIZE_335x600: { + final UsePredefinedSizeJob job = new UsePredefinedSizeJob(this, Size.SIZE_335x600); + jobManager.push(job); + break; + } + case SET_SIZE_900x600: { + final UsePredefinedSizeJob job = new UsePredefinedSizeJob(this, Size.SIZE_900x600); + jobManager.push(job); + break; + } case SET_SIZE_320x240: { final UsePredefinedSizeJob job = new UsePredefinedSizeJob(this, Size.SIZE_320x240); jobManager.push(job); @@ -1262,6 +1406,16 @@ public class EditorController { result = job.isExecutable(); break; } + case SET_SIZE_335x600: { + final UsePredefinedSizeJob job = new UsePredefinedSizeJob(this, Size.SIZE_335x600); + result = job.isExecutable(); + break; + } + case SET_SIZE_900x600: { + final UsePredefinedSizeJob job = new UsePredefinedSizeJob(this, Size.SIZE_900x600); + result = job.isExecutable(); + break; + } case SET_SIZE_320x240: { final UsePredefinedSizeJob job = new UsePredefinedSizeJob(this, Size.SIZE_320x240); result = job.isExecutable(); @@ -1608,6 +1762,8 @@ public class EditorController { } jobManager.push(job); + + WarnThemeAlert.showAlertIfRequired(this, newObject, ownerWindow); } /** @@ -2377,7 +2533,7 @@ public class EditorController { return true; } - private void updateFxomDocument(String fxmlText, URL fxmlLocation, ResourceBundle resources) throws IOException { + private void updateFxomDocument(String fxmlText, URL fxmlLocation, ResourceBundle resources, boolean checkTheme) throws IOException { final FXOMDocument newFxomDocument; if (fxmlText != null) { @@ -2392,7 +2548,10 @@ public class EditorController { fxomDocumentProperty.setValue(newFxomDocument); watchingController.fxomDocumentDidChange(); - + + if (checkTheme) { + WarnThemeAlert.showAlertIfRequired(this, newFxomDocument, ownerWindow); + } } private final ChangeListener<ClassLoader> libraryClassLoaderListener @@ -2417,4 +2576,12 @@ public class EditorController { watchingController.jobManagerRevisionDidChange(); // setPickModeEnabled(false); } + + public void setOwnerWindow(Stage ownerWindow) { + this.ownerWindow = ownerWindow; + } + + public Stage getOwnerWindow() { + return ownerWindow; + } } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/EditorPlatform.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/EditorPlatform.java index 207c2e42c72a475c8202b614a8a603bab7170bca..92b4e29a121ce2655ff4052f7d1582139a847434 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/EditorPlatform.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/EditorPlatform.java @@ -33,14 +33,21 @@ package com.oracle.javafx.scenebuilder.kit.editor; //import com.gluonhq.charm.glisten.visual.GlistenStyleClasses; -import com.oracle.javafx.scenebuilder.kit.util.Deprecation; + +import java.io.BufferedReader; import java.io.File; import java.io.IOException; +import java.io.InputStreamReader; +import java.net.URL; import java.util.ArrayList; -import java.util.Arrays; import java.util.List; import java.util.Locale; + +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; +import javafx.scene.Node; import javafx.scene.input.MouseEvent; +import javafx.scene.paint.Color; +import javafx.scene.shape.Rectangle; /** * This class contains static methods that depends on the platform. @@ -65,7 +72,12 @@ public class EditorPlatform { * True if current platform is running Windows. */ public static final boolean IS_WINDOWS = osName.contains("windows"); //NOI18N - + + /** + * Gluon Glisten package + */ + public static final String GLUON_PACKAGE = "com.gluonhq.charm.glisten"; + /** * This URL is where you go when the user takes Scene Builder Help action (shortcut F1) */ @@ -73,117 +85,181 @@ public class EditorPlatform { /** * Javadoc home (for Inspector and CSS Analyzer properties) + * // TODO: Update to 9 */ public final static String JAVADOC_HOME = "https://docs.oracle.com/javase/8/javafx/api/"; //NOI18N - + + /** + * Gluon javadoc home (for Inspector and CSS Analyzer properties) + */ + public final static String GLUON_JAVADOC_HOME = "http://docs.gluonhq.com/charm/javadoc/" + "latest" +"/"; //NOI18N + + /** + * scene builder specific tweaks to Gluon theme + */ + public static final String GLUON_DOCUMENT_STYLESHEET = "com/oracle/javafx/scenebuilder/app/css/GluonDocument.css"; + + /** + * Default theme + */ + public static final Theme DEFAULT_THEME = Theme.MODENA; + + /** + * Default Gluon Swatch + */ + public static final EditorPlatform.GluonSwatch DEFAULT_SWATCH = GluonSwatch.BLUE; + + /** + * Default Gluon Theme + */ + public static final EditorPlatform.GluonTheme DEFAULT_GLUON_THEME = GluonTheme.LIGHT; + + interface StylesheetProvider { + String getStylesheetURL(); + } /** * Themes supported by Scene Builder Kit. */ - public enum Theme { - GLUON_MOBILE, - MODENA, - MODENA_TOUCH, - MODENA_HIGH_CONTRAST_BLACK_ON_WHITE, - MODENA_HIGH_CONTRAST_WHITE_ON_BLACK, - MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK, - MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE, - MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK, - MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK, - CASPIAN, - CASPIAN_HIGH_CONTRAST, - CASPIAN_EMBEDDED, - CASPIAN_EMBEDDED_HIGH_CONTRAST, - CASPIAN_EMBEDDED_QVGA, - CASPIAN_EMBEDDED_QVGA_HIGH_CONTRAST + public enum Theme implements StylesheetProvider { + GLUON_MOBILE_LIGHT(null), + GLUON_MOBILE_DARK(null), + MODENA("com/sun/javafx/scene/control/skin/modena/modena.bss"), + MODENA_TOUCH("com/oracle/javafx/scenebuilder/kit/util/css/modena/modena-touch.css"), + MODENA_HIGH_CONTRAST_BLACK_ON_WHITE("com/oracle/javafx/scenebuilder/kit/util/css/modena/modena-highContrast-blackOnWhite.css"), + MODENA_HIGH_CONTRAST_WHITE_ON_BLACK("com/oracle/javafx/scenebuilder/kit/util/css/modena/modena-highContrast-whiteOnBlack.css"), + MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK("com/oracle/javafx/scenebuilder/kit/util/css/modena/modena-highContrast-yellowOnBlack.css"), + MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE("com/oracle/javafx/scenebuilder/kit/util/css/modena/modena-touch-highContrast-blackOnWhite.css"), + MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK("com/oracle/javafx/scenebuilder/kit/util/css/modena/modena-touch-highContrast-whiteOnBlack.css"), + MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK("com/oracle/javafx/scenebuilder/kit/util/css/modena/modena-touch-highContrast-yellowOnBlack.css"), + CASPIAN("com/sun/javafx/scene/control/skin/caspian/caspian.bss"), + CASPIAN_HIGH_CONTRAST("com/oracle/javafx/scenebuilder/kit/util/css/caspian/caspian-highContrast.css"), + CASPIAN_EMBEDDED("com/oracle/javafx/scenebuilder/kit/util/css/caspian/caspian-embedded.css"), + CASPIAN_EMBEDDED_HIGH_CONTRAST("com/oracle/javafx/scenebuilder/kit/util/css/caspian/caspian-embedded-highContrast.css"), + CASPIAN_EMBEDDED_QVGA("com/oracle/javafx/scenebuilder/kit/util/css/caspian/caspian-embedded-qvga.css"), + CASPIAN_EMBEDDED_QVGA_HIGH_CONTRAST("com/oracle/javafx/scenebuilder/kit/util/css/caspian/caspian-embedded-qvga-highContrast.css"); + + private String url; + + Theme(String url) { + this.url = url; + } + + @Override + public String getStylesheetURL() { + return url; + } + + @Override + public String toString() { + String lowerCaseName = name().toLowerCase(Locale.ROOT); + return I18N.getString("title.theme." + lowerCaseName); + } } /** - * Returns the url string for locating the specified stylesheet. - * SB uses a set of CSS files aggregating several @import statements (see DTL-6799). - * - * @param theme theme for which string should be computed - * @return string for locating the specified stylesheet. + * Gluon Swatch */ - public static String getThemeStylesheetURL(Theme theme) { - final String result; - - switch (theme) { - default: - result = null; - break; -// case GLUON_MOBILE: -// result = GlistenStyleClasses.impl_loadResource(Deprecation.GLUON_STYLESHEET); -// break; - case MODENA: - result = Deprecation.MODENA_STYLESHEET; - break; - case MODENA_TOUCH: - result = Deprecation.MODENA_TOUCH_STYLESHEET; - break; - case MODENA_HIGH_CONTRAST_BLACK_ON_WHITE: - result = Deprecation.MODENA_HIGHCONTRAST_BLACKONWHITE_STYLESHEET; - break; - case MODENA_HIGH_CONTRAST_WHITE_ON_BLACK: - result = Deprecation.MODENA_HIGHCONTRAST_WHITEONBLACK_STYLESHEET; - break; - case MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK: - result = Deprecation.MODENA_HIGHCONTRAST_YELLOWONBLACK_STYLESHEET; - break; - case MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE: - result = Deprecation.MODENA_TOUCH_HIGHCONTRAST_BLACKONWHITE_STYLESHEET; - break; - case MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK: - result = Deprecation.MODENA_TOUCH_HIGHCONTRAST_WHITEONBLACK_STYLESHEET; - break; - case MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK: - result = Deprecation.MODENA_TOUCH_HIGHCONTRAST_YELLOWONBLACK_STYLESHEET; - break; - case CASPIAN: - result = Deprecation.CASPIAN_STYLESHEET; - break; - case CASPIAN_HIGH_CONTRAST: - result = Deprecation.CASPIAN_HIGHCONTRAST_STYLESHEET; - break; - case CASPIAN_EMBEDDED: - result = Deprecation.CASPIAN_EMBEDDED_STYLESHEET; - break; - case CASPIAN_EMBEDDED_HIGH_CONTRAST: - result = Deprecation.CASPIAN_EMBEDDED_HIGHCONTRAST_STYLESHEET; - break; - case CASPIAN_EMBEDDED_QVGA: - result = Deprecation.CASPIAN_EMBEDDED_QVGA_STYLESHEET; - break; - case CASPIAN_EMBEDDED_QVGA_HIGH_CONTRAST: - result = Deprecation.CASPIAN_EMBEDDED_QVGA_HIGHCONTRAST_STYLESHEET; - break; + public enum GluonSwatch implements StylesheetProvider { + BLUE, + CYAN, + DEEP_ORANGE, + DEEP_PURPLE, + GREEN, + INDIGO, + LIGHT_BLUE, + PINK, + PURPLE, + RED, + TEAL, + LIGHT_GREEN, + LIME, + YELLOW, + AMBER, + ORANGE, + BROWN, + GREY, + BLUE_GREY; + + private static final String PRIMARY_SWATCH_500_STR = "-primary-swatch-500:"; + + Color color; + + @Override + public String toString() { + String lowerCaseSwatch = "title.gluon.swatch." + name().toLowerCase(Locale.ROOT); + return I18N.getString(lowerCaseSwatch); } - - if (!theme.equals(Theme.MODENA)) { - assert result != null : "Missing logic for " + theme; + + @Override + public String getStylesheetURL() { + return null; +// return GlistenStyleClasses.impl_loadResource("swatch_" + name().toLowerCase(Locale.ROOT) + ".gls"); + } + + public Color getColor() { + if (color == null) { + URL url = null; + try { + url = new URL(getStylesheetURL()); + try (BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream()))) { + String s = reader.readLine(); + while (s != null) { + // Remove white spaces + String trimmedString = s.replaceAll("\\s+", ""); + int indexOf = trimmedString.indexOf(PRIMARY_SWATCH_500_STR); + if (indexOf != -1) { + int indexOfSemiColon = trimmedString.indexOf(";"); + String colorString = trimmedString.substring(indexOf + PRIMARY_SWATCH_500_STR.length(), indexOfSemiColon); + color = Color.web(colorString); + } + s = reader.readLine(); + } + } + } catch (IOException e) { + e.printStackTrace(); + } + } + return color; } - return result; + public Node createGraphic() { + Rectangle rect = new Rectangle(8, 8); + rect.setFill(getColor()); + rect.setStroke(Color.BLACK); + return rect; + } } - public static List<String> getAdditionalStylesheetsURL(Theme theme) { - List<String> result; - switch(theme) { -// case GLUON_MOBILE: -// result = Arrays.asList(GlistenStyleClasses.impl_loadResource(Deprecation.GLUON_BLUE_SWATCH), GlistenStyleClasses.impl_loadResource(Deprecation.GLUON_LIGHT_THEME)); -// break; - default: - result = null; - break; + /** + * Gluon Theme + */ + public enum GluonTheme implements StylesheetProvider { + LIGHT, + DARK; + + @Override + public String toString() { + String lowerCaseName = "title.gluon.theme." + name().toLowerCase(Locale.ROOT); + return I18N.getString(lowerCaseName); + } + + @Override + public String getStylesheetURL() { + return null; +// return GlistenStyleClasses.impl_loadResource("theme_" + name().toLowerCase(Locale.ROOT) + ".gls"); } - return result; } public static String getPlatformThemeStylesheetURL() { // Return USER_AGENT css, which is Modena for fx 8.0 - return Deprecation.MODENA_STYLESHEET; + return Theme.MODENA.getStylesheetURL(); } - + + public static String getGluonDocumentStylesheetURL() { + return GLUON_DOCUMENT_STYLESHEET; + } + public static boolean isModena(Theme theme) { return theme.toString().startsWith("MODENA"); } @@ -223,8 +299,10 @@ public class EditorPlatform { return theme.toString().startsWith("CASPIAN"); } - public static boolean isGluonMobile(Theme theme) { - return theme.toString().startsWith("GLUON_MOBILE"); + public static boolean isGluonMobileLight(Theme theme) { return theme == Theme.GLUON_MOBILE_LIGHT; } + + public static boolean isGluonMobileDark(Theme theme) { + return theme == Theme.GLUON_MOBILE_DARK; } /** diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/drag/source/DocumentDragSource.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/drag/source/DocumentDragSource.java index 3f76e2d8a2990950aeb38f42e68039577cd34f37..543ce5de43d051ab35af5f1d8772753fb3dd51c0 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/drag/source/DocumentDragSource.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/drag/source/DocumentDragSource.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.drag.source; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.images.ImageUtils; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMInstance; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/drag/source/ExternalDragSource.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/drag/source/ExternalDragSource.java index b2cd56504e436ff838a55a68c8f6acfdbf55a44a..560e3299bdbfa843f03027b97ce436d497424526 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/drag/source/ExternalDragSource.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/drag/source/ExternalDragSource.java @@ -51,7 +51,7 @@ import javafx.scene.input.Dragboard; import javafx.stage.Window; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMInstance; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMNodes; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/drag/source/LibraryDragSource.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/drag/source/LibraryDragSource.java index 6902ed5480ebf30530aaa6131768d692f9528fcd..315ca1bfe3aa0169c7be8f2ac072a9a298ba0d28 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/drag/source/LibraryDragSource.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/drag/source/LibraryDragSource.java @@ -48,7 +48,7 @@ import javafx.scene.input.ClipboardContent; import javafx.stage.Window; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.images.ImageUtils; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMInstance; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/images/ImageUtils.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/images/ImageUtils.java index 259ea6967263e6d3f45c0e879c0328b1ce094a8e..ec409e91557396d3823fc312c7bb822362546a47 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/images/ImageUtils.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/images/ImageUtils.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/AddContextMenuToSelectionJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/AddContextMenuToSelectionJob.java index c7b44dcbf81871f2303512bbb2c071e0bc83571f..2602b608716f6bd91d8fa5363aa45fdf6f4abff6 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/AddContextMenuToSelectionJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/AddContextMenuToSelectionJob.java @@ -33,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.selection.AbstractSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.ObjectSelectionGroup; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/AddTooltipToSelectionJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/AddTooltipToSelectionJob.java index 2759fd23036284c96797191fdba5096fa3d82409..3bd26f800cece5b1e36ef8cd5c2bb1d4c1b67fa9 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/AddTooltipToSelectionJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/AddTooltipToSelectionJob.java @@ -33,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.selection.AbstractSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.ObjectSelectionGroup; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/DeleteObjectSelectionJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/DeleteObjectSelectionJob.java index 15f98174584a2379412761f47bbb1f80316c1db9..f4ad3b7b0d444e9a5963171e860f26505173a91f 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/DeleteObjectSelectionJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/DeleteObjectSelectionJob.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.selection.AbstractSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.ObjectSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.Selection; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/DuplicateSelectionJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/DuplicateSelectionJob.java index 7cc988ffad85ecf78a9b5bc84bf12525d6fcb0e9..0241ea6ab14a356d196476fee2f9df9a1587ca6d 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/DuplicateSelectionJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/DuplicateSelectionJob.java @@ -33,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.RelocateNodeJob; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.selection.AbstractSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.ObjectSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.Selection; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/ImportFileJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/ImportFileJob.java index 0eb1a0a7392f8acac823ca9c3ad55fb0edb12073..cdbca0a294ae533c48683e697312e65e28d6ab25 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/ImportFileJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/ImportFileJob.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.selection.AbstractSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.ObjectSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.Selection; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/IncludeFileJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/IncludeFileJob.java index 5be0cc680b6e8a3b39a80881948a14c6d71d2394..dd5a17198bc8b94ce33f9d329decf388afac739e 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/IncludeFileJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/IncludeFileJob.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.selection.AbstractSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.ObjectSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.Selection; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/ModifyCacheHintJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/ModifyCacheHintJob.java index baddd8e1dddfd9a836c493a2bc007161cc61a98a..9d0d4c6352c71f2be556da4c8375164fe76eade6 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/ModifyCacheHintJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/ModifyCacheHintJob.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.ModifyObjectJob; import com.oracle.javafx.scenebuilder.kit.editor.selection.ObjectSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.Selection; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/ModifySelectionJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/ModifySelectionJob.java index 1c60078a788f249c5c2fa2c50796f0bc98d714aa..ea6cc080fe1c5b4c67ff24a2bd4fe09fe0a01d7e 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/ModifySelectionJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/ModifySelectionJob.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.ModifyObjectJob; import com.oracle.javafx.scenebuilder.kit.editor.selection.AbstractSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.GridSelectionGroup; @@ -91,7 +92,7 @@ public class ModifySelectionJob extends BatchDocumentJob { final ObjectSelectionGroup osg = (ObjectSelectionGroup) group; for (FXOMObject fxomObject : osg.getItems()) { handleFxomInstance(fxomObject, candidates); - handleFxomIntrincis(fxomObject, candidates); + handleFxomIntrinsic(fxomObject, candidates); } } @@ -103,7 +104,7 @@ public class ModifySelectionJob extends BatchDocumentJob { } - private void handleFxomIntrincis(FXOMObject fxomObject, Set<FXOMInstance> candidates) { + private void handleFxomIntrinsic(FXOMObject fxomObject, Set<FXOMInstance> candidates) { if(fxomObject instanceof FXOMIntrinsic) { FXOMIntrinsic intrinsic = (FXOMIntrinsic) fxomObject; FXOMInstance fxomInstance = intrinsic.createFxomInstanceFromIntrinsic(); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/PasteIntoJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/PasteIntoJob.java index 152f8d2c5c42657b2c177e2242cf6a54df98a047..17cc7662c69d44549e3b93355f93bc8cac328028 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/PasteIntoJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/PasteIntoJob.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.selection.AbstractSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.ObjectSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.Selection; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/PasteJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/PasteJob.java index 11d7afcdb0a4d348e1f77fdd49654214d13748ea..ae1c900bbe1bfc02bc1f7a21e75fdb25e280575c 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/PasteJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/PasteJob.java @@ -33,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.RelocateNodeJob; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.selection.AbstractSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.ObjectSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.Selection; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/RelocateSelectionJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/RelocateSelectionJob.java index 7e2f284caa019580efead16d9f0a22b7ec40e04f..27ba4765fad57bc673e287311067b1841c6d790f 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/RelocateSelectionJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/RelocateSelectionJob.java @@ -34,7 +34,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.RelocateNodeJob; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.selection.ObjectSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.Selection; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMInstance; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/TrimSelectionJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/TrimSelectionJob.java index b82f8d8c7d54663c1c9b0c6e65926a70303fa20e..62300938d9ede558acd3a0c7eec6efb923ccb73a 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/TrimSelectionJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/TrimSelectionJob.java @@ -34,7 +34,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.ToggleFxRootJob; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.ModifyFxControllerJob; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.RemoveObjectJob; import com.oracle.javafx.scenebuilder.kit.editor.selection.AbstractSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.ObjectSelectionGroup; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/UsePredefinedSizeJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/UsePredefinedSizeJob.java index 46e2399c85a8feb8b353a30c147b3dc5c9197e06..653b1e5202f40cb8a689062c276d20bfdde80be0 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/UsePredefinedSizeJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/UsePredefinedSizeJob.java @@ -34,7 +34,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.ModifyObjectJob; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.EditorController.Size; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMInstance; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/AddPropertyJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/AddPropertyJob.java index fd545c8266d7e9912352d33270f6b0f4437ebfd3..3e70afa838913da85600cb18b8cf11f77c4a3531 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/AddPropertyJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/AddPropertyJob.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/AddPropertyValueJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/AddPropertyValueJob.java index 355c0c77ddbda16e263b80cd3479ae4634c1e1b9..38278f9db82cad4d894fb6bae18d7ec25dd9073a 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/AddPropertyValueJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/AddPropertyValueJob.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -31,10 +32,12 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.job.atomic; +import com.oracle.javafx.scenebuilder.kit.alert.WarnThemeAlert; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.job.Job; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMPropertyC; +import javafx.stage.Stage; /** * @@ -95,7 +98,9 @@ public class AddPropertyValueJob extends Job { getEditorController().getFxomDocument().beginUpdate(); value.addToParentProperty(targetIndex, targetProperty); getEditorController().getFxomDocument().endUpdate(); - + + WarnThemeAlert.showAlertIfRequired(getEditorController(), value, (Stage)getEditorController().getOwnerWindow()); + assert value.getParentProperty() == targetProperty; assert value.getParentCollection() == null; } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/ModifyFxIdJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/ModifyFxIdJob.java index edbed494340808a0524edce45d3ed4c6c2d24960..96cc0d4f2cbdf57f213ee049562635e87b42335b 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/ModifyFxIdJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/ModifyFxIdJob.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job.atomic; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.job.Job; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; import com.oracle.javafx.scenebuilder.kit.util.JavaLanguage; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/ModifyObjectJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/ModifyObjectJob.java index 77fe82d7c5b801e62c284f174ab1aea3ad4574a7..a3f721f512ae7f8f728d48e49a51ff825ce08cdf 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/ModifyObjectJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/ModifyObjectJob.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job.atomic; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.job.Job; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMInstance; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/SetFxomRootJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/SetFxomRootJob.java index db6eff86a2023eb4d72bba0105d249265d7fa268..8a8948b8ae71d25ed8e39ef4f102507d6cf0cd0f 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/SetFxomRootJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/SetFxomRootJob.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -31,6 +32,7 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.job.atomic; +import com.oracle.javafx.scenebuilder.kit.alert.WarnThemeAlert; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.job.Job; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; @@ -71,6 +73,8 @@ public class SetFxomRootJob extends Job { fxomDocument.beginUpdate(); fxomDocument.setFxomRoot(newRoot); fxomDocument.endUpdate(); + + WarnThemeAlert.showAlertIfRequired(getEditorController(), newRoot, getEditorController().getOwnerWindow()); } @Override diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/ToggleFxRootJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/ToggleFxRootJob.java index e66a6fffee3d37b3983f2bbb2fd2829156158a46..452fea05e132d99a969379ec441772051949b45d 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/ToggleFxRootJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/atomic/ToggleFxRootJob.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job.atomic; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.job.Job; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMInstance; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/gridpane/v2/SpanJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/gridpane/v2/SpanJob.java index 661beb6a3e42e1dec004d24336060d6c4d58e2e2..5ae64a44c57422c534adaf1c87e4ee1f9a0576d6 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/gridpane/v2/SpanJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/gridpane/v2/SpanJob.java @@ -33,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job.gridpane.v2; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.EditorController.EditAction; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.job.BatchDocumentJob; import com.oracle.javafx.scenebuilder.kit.editor.job.Job; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.ModifyObjectJob; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/togglegroup/ModifySelectionToggleGroupJob.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/togglegroup/ModifySelectionToggleGroupJob.java index 6e24b089965c07c20f3bd6dcfec3b37801f30351..759e856a94e69adc43e2ee05d14e93b4b2034896 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/togglegroup/ModifySelectionToggleGroupJob.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/job/togglegroup/ModifySelectionToggleGroupJob.java @@ -33,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.job.togglegroup; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.job.BatchDocumentJob; import com.oracle.javafx.scenebuilder.kit.editor.job.Job; import com.oracle.javafx.scenebuilder.kit.editor.selection.ObjectSelectionGroup; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/messagelog/MessageLog.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/messagelog/MessageLog.java index 681394a0099269180fbb582a25fee3f1092a5174..91aab16094213c7da6327cf056903cae3e41c6c6 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/messagelog/MessageLog.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/messagelog/MessageLog.java @@ -31,7 +31,7 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.messagelog; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import java.text.MessageFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/ContentPanelController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/ContentPanelController.java index fa6a585e5e45ae204b050146a26779854be1afad..15a20b709e9d6d6b8a56bb91267df65b21299ea6 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/ContentPanelController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/ContentPanelController.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -87,7 +88,7 @@ import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform.Theme; import com.oracle.javafx.scenebuilder.kit.editor.drag.source.AbstractDragSource; import com.oracle.javafx.scenebuilder.kit.editor.drag.target.AbstractDropTarget; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.images.ImageUtils; import com.oracle.javafx.scenebuilder.kit.editor.panel.content.driver.AbstractDriver; import com.oracle.javafx.scenebuilder.kit.editor.panel.content.driver.BorderPaneDriver; @@ -148,8 +149,7 @@ public class ContentPanelController extends AbstractFxmlPanelController private Paint pringColor = Color.rgb(238, 168, 47); private Paint guidesColor = Color.RED; - private final WorkspaceController workspaceController - = new WorkspaceController(); + private WorkspaceController workspaceController; private final HudWindowController hudWindowController = new HudWindowController(); @@ -175,6 +175,7 @@ public class ContentPanelController extends AbstractFxmlPanelController super(ContentPanelController.class.getResource("ContentPanel.fxml"), I18N.getBundle(), editorController); //NOI18N this.editModeController = new EditModeController(this); this.pickModeController = new PickModeController(this); + this.workspaceController = new WorkspaceController(editorController); editorController.getDragController().dragSourceProperty().addListener((ChangeListener<AbstractDragSource>) (ov, t, t1) -> dragSourceDidChange() ); @@ -184,6 +185,10 @@ public class ContentPanelController extends AbstractFxmlPanelController editorController.themeProperty().addListener((ChangeListener<Theme>) (ov, t, t1) -> themeDidChange() ); + + editorController.gluonSwatchProperty().addListener(((observable, oldValue, newValue) -> themeDidChange())); + + editorController.gluonThemeProperty().addListener(((observable, oldValue, newValue) -> themeDidChange())); editorController.sceneStyleSheetProperty().addListener((ListChangeListener<File>) change -> sceneStyleSheetsDidChange() ); @@ -1024,8 +1029,10 @@ public class ContentPanelController extends AbstractFxmlPanelController private void themeDidChange() { if (contentGroup != null) { final EditorPlatform.Theme theme = getEditorController().getTheme(); - final String themeStyleSheet = EditorPlatform.getThemeStylesheetURL(theme); - workspaceController.setThemeStyleSheet(themeStyleSheet, theme); + final EditorPlatform.GluonSwatch gluonSwatch = getEditorController().getGluonSwatch(); + final EditorPlatform.GluonTheme gluonTheme = getEditorController().getGluonTheme(); + final String themeStyleSheet = theme.getStylesheetURL(); + workspaceController.setThemeStyleSheet(themeStyleSheet, theme, gluonSwatch, gluonTheme); } } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/WorkspaceController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/WorkspaceController.java index 5c60569345c68ea2e90866fa56c0e5b6984fa978..9f29c4942e9ab0cdcc2fd9a771e942e67f82c3ba 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/WorkspaceController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/WorkspaceController.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, Gluon and/or its affiliates. + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,10 +32,9 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.panel.content; -import com.oracle.javafx.scenebuilder.app.SceneBuilderApp; +import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; -import com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors.Editor; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; import java.util.List; @@ -76,9 +75,14 @@ class WorkspaceController { private boolean autoResize3DContent = true; private double scaling = 1.0; private RuntimeException layoutException; + private EditorController editorController; private FXOMDocument fxomDocument; + public WorkspaceController(EditorController editorController) { + this.editorController = editorController; + } + public void panelControllerDidLoadFxml(ScrollPane scrollPane, Group scalingGroup, SubScene contentSubScene, Group contentGroup, Label backgroundPane, Rectangle extensionRect) { @@ -155,51 +159,63 @@ class WorkspaceController { return result; } - public void setThemeStyleSheet(String themeStyleSheet, EditorPlatform.Theme theme) { + public void setThemeStyleSheet(String themeStyleSheet, EditorPlatform.Theme theme, EditorPlatform.GluonSwatch gluonSwatch, EditorPlatform.GluonTheme gluonTheme) { assert themeStyleSheet != null; assert theme != null; - String gluonDocumentStylesheet = SceneBuilderApp.class.getResource("css/GluonDocument.css").toExternalForm(); - List<String> additionalGluonStylesheets = EditorPlatform.getAdditionalStylesheetsURL(EditorPlatform.Theme.GLUON_MOBILE); - if (theme == EditorPlatform.Theme.GLUON_MOBILE) { - contentSubScene.setUserAgentStylesheet(EditorPlatform.getThemeStylesheetURL(EditorPlatform.Theme.MODENA)); + assert gluonSwatch != null; + assert gluonTheme != null; + String gluonDocumentStylesheet = EditorPlatform.getGluonDocumentStylesheetURL(); + String gluonSwatchStylesheet = gluonSwatch.getStylesheetURL(); + String gluonThemeStylesheet = gluonTheme.getStylesheetURL(); + String previousGluonSwatchStylesheet = editorController.getGluonSwatch().getStylesheetURL(); + String previousGluonThemeStylesheet = editorController.getGluonTheme().getStylesheetURL(); + if (theme == EditorPlatform.Theme.GLUON_MOBILE_LIGHT || theme == EditorPlatform.Theme.GLUON_MOBILE_DARK) { + contentSubScene.setUserAgentStylesheet(EditorPlatform.Theme.MODENA.getStylesheetURL()); ObservableList<String> currentStyleSheets = FXCollections.observableArrayList(contentGroup.getStylesheets()); + currentStyleSheets.remove(previousGluonSwatchStylesheet); + currentStyleSheets.remove(previousGluonThemeStylesheet); if (!currentStyleSheets.contains(themeStyleSheet)) { currentStyleSheets.add(themeStyleSheet); } if (!currentStyleSheets.contains(gluonDocumentStylesheet)) { currentStyleSheets.add(gluonDocumentStylesheet); } - if (!currentStyleSheets.contains(additionalGluonStylesheets)) { - currentStyleSheets.addAll(additionalGluonStylesheets); + if (!currentStyleSheets.contains(gluonSwatchStylesheet)) { + currentStyleSheets.add(gluonSwatchStylesheet); + } + if (!currentStyleSheets.contains(gluonThemeStylesheet)) { + currentStyleSheets.add(gluonThemeStylesheet); } contentGroup.getStylesheets().clear(); contentGroup.getStylesheets().setAll(currentStyleSheets); contentGroup.applyCss(); // setPreviewStyleSheets(Arrays.asList(themeStyleSheet)); - } else { contentSubScene.setUserAgentStylesheet(themeStyleSheet); - String gluonMobileStyleSheet = EditorPlatform.getThemeStylesheetURL(EditorPlatform.Theme.GLUON_MOBILE); + String gluonMobileStyleSheet = EditorPlatform.Theme.GLUON_MOBILE_LIGHT.getStylesheetURL(); // We can call this with GLUON_MOBILE_LIGHT or GLUON_MOBILE_DARK contentGroup.getStylesheets().remove(gluonMobileStyleSheet); contentGroup.getStylesheets().remove(gluonDocumentStylesheet); - contentGroup.getStylesheets().remove(additionalGluonStylesheets); + contentGroup.getStylesheets().remove(previousGluonSwatchStylesheet); + contentGroup.getStylesheets().remove(previousGluonThemeStylesheet); + } + + // Update scenegraph layout, etc + FXOMDocument fxomDocument = editorController.getFxomDocument(); + if (fxomDocument != null) { + fxomDocument.refreshSceneGraph(); } } public void setPreviewStyleSheets(List<String> previewStyleSheets) { - boolean shouldAddGluonMobile = false; - String gluonMobileStyleSheet = EditorPlatform.getThemeStylesheetURL(EditorPlatform.Theme.GLUON_MOBILE); - ObservableList<String> currentStyleSheets = contentGroup.getStylesheets(); - if (currentStyleSheets.contains(gluonMobileStyleSheet)) { - shouldAddGluonMobile = true; - } + EditorPlatform.Theme currentTheme = editorController.getTheme(); contentGroup.getStylesheets().clear(); contentGroup.getStylesheets().addAll(previewStyleSheets); - if (shouldAddGluonMobile) { - contentGroup.getStylesheets().add(gluonMobileStyleSheet); - List<String> additionalGluonStylesheets = EditorPlatform.getAdditionalStylesheetsURL(EditorPlatform.Theme.GLUON_MOBILE); - contentGroup.getStylesheets().addAll(additionalGluonStylesheets); + if (currentTheme == EditorPlatform.Theme.GLUON_MOBILE_LIGHT || currentTheme == EditorPlatform.Theme.GLUON_MOBILE_DARK) { + contentGroup.getStylesheets().add(EditorPlatform.Theme.GLUON_MOBILE_LIGHT.getStylesheetURL()); // We can call this with GLUON_MOBILE_LIGHT or GLUON_MOBILE_DARK + contentGroup.getStylesheets().add(editorController.getGluonSwatch().getStylesheetURL()); + contentGroup.getStylesheets().add(editorController.getGluonTheme().getStylesheetURL()); + contentGroup.getStylesheets().add(EditorPlatform.getGluonDocumentStylesheetURL()); } contentGroup.applyCss(); } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/TabPaneDesignInfoX.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/TabPaneDesignInfoX.java index 8fc43c49602f15b9daacef436d3796af35e62d2f..b28d78c2d5b79439b0e2a6ac250768a536224e2d 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/TabPaneDesignInfoX.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/TabPaneDesignInfoX.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.content.driver; import com.oracle.javafx.scenebuilder.kit.util.Deprecation; -import com.sun.javafx.scene.control.skin.TabPaneSkin; +import javafx.scene.control.skin.TabPaneSkin; import java.util.Iterator; import java.util.Set; import javafx.geometry.BoundingBox; @@ -90,10 +91,17 @@ public class TabPaneDesignInfoX /* extends TabDesignInfo */ { final Node result; - if (tabPane.getSkin() != null) { - assert tabPane.getSkin() instanceof TabPaneSkin; - final TabPaneSkin tabPaneSkin = (TabPaneSkin) tabPane.getSkin(); - result = tabPaneSkin.getSelectedTabContentRegion(); +// if (tabPane.getSkin() != null) { +// assert tabPane.getSkin() instanceof TabPaneSkin; +// final TabPaneSkin tabPaneSkin = (TabPaneSkin) tabPane.getSkin(); +// result = tabPaneSkin.getSelectedTabContentRegion(); +// } else { +// result = null; +// } + + Tab selectedTab = tabPane.getSelectionModel().getSelectedItem(); + if (selectedTab != null) { + result = selectedTab.getContent(); } else { result = null; } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/TableViewDesignInfoX.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/TableViewDesignInfoX.java index 0252e1f33f7815de6ccb5c168f33822d83141800..47ea3e39f6c0fde56c578435dc35f05dacd80d5d 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/TableViewDesignInfoX.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/TableViewDesignInfoX.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.content.driver; import com.oracle.javafx.scenebuilder.kit.util.Deprecation; -import com.sun.javafx.scene.control.skin.TableColumnHeader; +import javafx.scene.control.skin.TableColumnHeader; import java.util.ArrayList; import java.util.Collections; import java.util.Iterator; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/TreeTableViewDesignInfoX.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/TreeTableViewDesignInfoX.java index 5f047ef9f7ebdecf58aa14f680980aae3066b7b4..2923f90544e2ed2b331c7bb7f8aad8721c42b279 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/TreeTableViewDesignInfoX.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/driver/TreeTableViewDesignInfoX.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.content.driver; import com.oracle.javafx.scenebuilder.kit.util.Deprecation; -import com.sun.javafx.scene.control.skin.TableColumnHeader; +import javafx.scene.control.skin.TableColumnHeader; import java.util.ArrayList; import java.util.Collections; import java.util.Iterator; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeColumnGesture.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeColumnGesture.java index 60aa45a7928c89d77eb6c550c08272efc3294379..0f395d1e78017fa7ea143c36db085f335088dec8 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeColumnGesture.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeColumnGesture.java @@ -33,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.content.gesture.mouse; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.ModifyObjectJob; import com.oracle.javafx.scenebuilder.kit.editor.panel.content.driver.gridpane.GridPaneHandles; import com.oracle.javafx.scenebuilder.kit.editor.panel.content.driver.resizer.GridPaneColumnResizer; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeRowGesture.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeRowGesture.java index 33f64b7a55012c7c2e8b4412da8f605e7976bca5..ac85ffd949591b059210329c29bfafa647185f9a 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeRowGesture.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeRowGesture.java @@ -33,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.content.gesture.mouse; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.ModifyObjectJob; import com.oracle.javafx.scenebuilder.kit.editor.panel.content.driver.gridpane.GridPaneHandles; import com.oracle.javafx.scenebuilder.kit.editor.panel.content.driver.resizer.GridPaneRowResizer; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeTableColumnGesture.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeTableColumnGesture.java index 016a7f4474091a6160076f4e5cc5b9e5d16978cc..78aabaa86f2f5700af2ab51a64df5b102c43102a 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeTableColumnGesture.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeTableColumnGesture.java @@ -33,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.content.gesture.mouse; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.job.BatchJob; import com.oracle.javafx.scenebuilder.kit.editor.job.Job; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.ModifyObjectJob; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeTreeTableColumnGesture.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeTreeTableColumnGesture.java index 9eb68b3793733ad2993fc246a589ec886f6a4c11..4001d8d892e5f766693526049804ab9acc12e2ad 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeTreeTableColumnGesture.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/content/gesture/mouse/ResizeTreeTableColumnGesture.java @@ -33,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.content.gesture.mouse; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.job.BatchJob; import com.oracle.javafx.scenebuilder.kit.editor.job.Job; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.ModifyObjectJob; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssContentMaker.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssContentMaker.java index 59baeaec242ca00068084606604ca20da4a26ca4..df14528224805a0f18142a8ea0c80f9a0b0f4be1 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssContentMaker.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssContentMaker.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -41,9 +42,8 @@ import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadat import com.oracle.javafx.scenebuilder.kit.metadata.util.PropertyName; import com.oracle.javafx.scenebuilder.kit.util.CssInternal; import com.oracle.javafx.scenebuilder.kit.util.Deprecation; -import com.sun.javafx.css.ParsedValueImpl; -import com.sun.javafx.css.Rule; -import com.sun.javafx.css.Style; +import javafx.css.Rule; +import javafx.css.Style; import javafx.css.StyleOrigin; import java.net.MalformedURLException; import java.net.URL; @@ -289,9 +289,7 @@ public class CssContentMaker { protected static CssStyle retrieveStyle(List<Style> styles, Style style) { CssStyle st = new CssStyle(style); ParsedValue parsedValue = style.getDeclaration().getParsedValue(); - assert parsedValue instanceof ParsedValueImpl; - ParsedValueImpl parsedValueImpl = (ParsedValueImpl) parsedValue; - if (parsedValueImpl.isContainsLookups() || parsedValueImpl.isLookup()) { + if (parsedValue.isContainsLookups() || parsedValue.isLookup()) { retrieveStylesFromParsedValue(styles, st, style.getDeclaration().getParsedValue()); } return st; @@ -366,7 +364,7 @@ public class CssContentMaker { protected static List<Style> removeUserAgentStyles(List<Style> allStyles) { // With SB 2, we apply explicitly Modena/Caspian theme css on user scene graph. // The rules that appear with an AUTHOR origin has already been considered as USER_AGENT. - // So when an internal css method (such as impl_getMatchingStyles()) is called, + // So when an internal css method (such as getMatchingStyles()) is called, // we need here to remove all USER_AGENT styles, to avoid doublons. List<Style> matchingStyles = new ArrayList<>(); for (Style style : allStyles) { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssPanelController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssPanelController.java index bac39fbf19900fb83906662230bc645b7fc76e8a..14bfa5812ecdfad954a5f450bbf45445e4271314 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssPanelController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssPanelController.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -35,7 +36,7 @@ import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform.Theme; import com.oracle.javafx.scenebuilder.kit.editor.drag.source.AbstractDragSource; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.css.CssContentMaker.BeanPropertyState; import com.oracle.javafx.scenebuilder.kit.editor.panel.css.CssContentMaker.CssPropertyState; import com.oracle.javafx.scenebuilder.kit.editor.panel.css.CssContentMaker.CssPropertyState.CssStyle; @@ -54,10 +55,6 @@ import com.oracle.javafx.scenebuilder.kit.metadata.Metadata; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; import com.oracle.javafx.scenebuilder.kit.metadata.util.PropertyName; import com.oracle.javafx.scenebuilder.kit.util.CssInternal; -import com.oracle.javafx.scenebuilder.kit.util.Deprecation; -import com.sun.javafx.css.ParsedValueImpl; -import com.sun.javafx.css.Rule; - import java.io.File; import java.io.IOException; import java.lang.reflect.Array; @@ -76,6 +73,7 @@ import javafx.collections.FXCollections; import javafx.collections.ObservableList; import javafx.css.ParsedValue; import javafx.css.PseudoClass; +import javafx.css.Rule; import javafx.css.StyleOrigin; import javafx.event.ActionEvent; import javafx.event.EventHandler; @@ -835,7 +833,7 @@ public class CssPanelController extends AbstractFxmlPanelController { private void disableColumnReordering() { for (TableColumn<CssProperty, ?> column : table.getColumns()) { - Deprecation.setTableColumnReordable(column, false); + column.setReorderable(false); } } @@ -1981,7 +1979,7 @@ public class CssPanelController extends AbstractFxmlPanelController { boolean lookup = false; if (parsedValues != null) { ParsedValue<?, ?> pv = parsedValues[i]; - lookup = ((ParsedValueImpl<?, ?>) pv).isContainsLookups(); + lookup = pv.isContainsLookups(); } if (lookup) { assert style != null; @@ -2034,7 +2032,7 @@ public class CssPanelController extends AbstractFxmlPanelController { boolean lookup = false; if (parsedValues != null) { ParsedValue<?, ?> pv = parsedValues[index]; - lookup = ((ParsedValueImpl<?, ?>) pv).isContainsLookups(); + lookup = pv.isContainsLookups(); } if (lookup) { CssStyle lookupRoot = null; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssUtils.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssUtils.java index 62e992217f8c23d92db66674227a1b52333d1cf0..b411dc6859dcdd52daa5a1b35934f0cbe94ab78d 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssUtils.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssUtils.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -33,7 +34,6 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.css; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; import com.oracle.javafx.scenebuilder.kit.util.CssInternal; -import com.oracle.javafx.scenebuilder.kit.util.Deprecation; import java.util.Set; import javafx.css.CssMetaData; import javafx.css.Styleable; @@ -383,7 +383,7 @@ public class CssUtils { // // static { // try { -// STYLE_SHEET_TOOL_CSS = CSSParser.getInstance().parse(new URL(TOOL_ROOT_CSS)); +// STYLE_SHEET_TOOL_CSS = new CssParser().parse(new URL(TOOL_ROOT_CSS)); // } catch (IOException ex) { // Utils.println("Failed to parse " + TOOL_ROOT_CSS, ex); //NOI18N // } @@ -455,7 +455,7 @@ public class CssUtils { // Set<String> styleClasses = new HashSet<>(); // Stylesheet s; // try { -// s = CSSParser.getInstance().parse(url); +// s = new CssParser().parse(url); // } catch (IOException ex) { // Utils.println("Invalid Stylesheet " + url); // return styleClasses; @@ -753,14 +753,14 @@ public class CssUtils { Styleable styleable = (target instanceof Styleable) ? (Styleable) target : null; Node node = null; if (styleable != null) { - node = Deprecation.getNode(styleable); + node = styleable.getStyleableNode(); if (node == null) { if (target instanceof MenuItem) { final MenuItem mi = (MenuItem) target; PopupControl pc = mi.getParentPopup(); if (pc != null) { // can be null for Menu. - node = Deprecation.getNode(pc); + node = pc.getStyleableNode(); } } else { if (target instanceof Tab) { @@ -1023,7 +1023,7 @@ public class CssUtils { // // private static final CssParsingListener cssListener = new CssParsingListener(); // static { -// StyleManager.errorsProperty().addListener(cssListener); +// CssParser.errorsProperty().addListener(cssListener); // } // // public static void updateStylesheets(Project project, Parent parent, File file) { @@ -1151,11 +1151,11 @@ public class CssUtils { // // Synchronous listener to get errors synchronously. // // Required for synchronous validation // CssInlineStyleListener listener = new CssInlineStyleListener(); -// StyleManager.errorsProperty().addListener(listener); +// CssParser.errorsProperty().addListener(listener); // startListeningToCssErrors(project); // try { // try { -// s = CSSParser.getInstance().parseInlineStyle(new StyleableStub(style)); +// s = new CssParser().parseInlineStyle(new StyleableStub(style)); // }catch(final RuntimeException ex){ // // Parser exception that has not been tracked by the listener. // // Bug in CSS RT @@ -1163,7 +1163,7 @@ public class CssUtils { // } // } finally { // stopListeningToCssErrors(project); -// StyleManager.errorsProperty().removeListener(listener); +// CssParser.errorsProperty().removeListener(listener); // } // // return s != null && listener.getErrors().isEmpty(); @@ -1253,7 +1253,7 @@ public class CssUtils { // public static Set<String> lookupImagesInStyle(String style) { // if (style != null) { // try { -// Stylesheet s = CSSParser.getInstance().parseInlineStyle(new StyleableStub(style)); +// Stylesheet s = new CssParser().parseInlineStyle(new StyleableStub(style)); // return lookupImagesInStylesheet(s); // } catch (RuntimeException ex) { // Utils.println(ex.getMessage()); @@ -1268,7 +1268,7 @@ public class CssUtils { // startListeningToCssErrors(project); // } // try { -// Stylesheet s = CSSParser.getInstance().parse(uri.toURL()); +// Stylesheet s = new CssParser().parse(uri.toURL()); // return lookupImagesInStylesheet(s); // } catch (Exception ex) { // Utils.println(ex.getMessage()); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssValueConverter.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssValueConverter.java index c47b7eefb9c1f24db2ddfe50f733118d63b54e20..906736a193824b953c3a9cd2d8aca8d299329dc4 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssValueConverter.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssValueConverter.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -33,16 +34,15 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.css; import com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors.EditorUtils; import com.oracle.javafx.scenebuilder.kit.metadata.util.ColorEncoder; -import com.oracle.javafx.scenebuilder.kit.util.Deprecation; import com.oracle.javafx.scenebuilder.kit.util.MathUtils; -import com.sun.javafx.css.Declaration; -import com.sun.javafx.css.Rule; -import com.sun.javafx.css.Size; -import com.sun.javafx.css.converters.PaintConverter; -import com.sun.javafx.css.converters.PaintConverter.LinearGradientConverter; -import com.sun.javafx.css.parser.DeriveColorConverter; -import com.sun.javafx.css.parser.DeriveSizeConverter; -import com.sun.javafx.css.parser.LadderConverter; +import javafx.css.Declaration; +import javafx.css.Rule; +import javafx.css.Size; +import javafx.css.converter.PaintConverter; +import javafx.css.converter.PaintConverter.LinearGradientConverter; +import javafx.css.converter.DeriveColorConverter; +import javafx.css.converter.DeriveSizeConverter; +import javafx.css.converter.LadderConverter; import java.lang.reflect.Array; import java.util.ArrayList; import java.util.Collection; @@ -541,7 +541,7 @@ public class CssValueConverter { StringBuilder builder = new StringBuilder(); if (property.equals("-fx-background-image")) { //NOI18N Image p = bi.getImage(); - builder.append(Deprecation.getUrl(p)); + builder.append(p.getUrl()); } else { if (property.equals("-fx-background-position")) { //NOI18N double left = 0, right = 0, top = 0, bottom = 0; @@ -609,7 +609,7 @@ public class CssValueConverter { StringBuilder builder = new StringBuilder(); if (property.equals("-fx-border-image")) { //NOI18N Image p = bi.getImage(); - builder.append(Deprecation.getUrl(p)); + builder.append(p.getUrl()); } else { if (property.equals("-fx-background-position")) { //NOI18N diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/NodeCssState.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/NodeCssState.java index 38e05c1e2c17c07fd24fe7f4122cd34330c967c4..28c8fd6f41dc330db9dad751b1954b7ab93ba850 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/NodeCssState.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/css/NodeCssState.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -35,8 +36,8 @@ import com.oracle.javafx.scenebuilder.kit.editor.panel.css.CssContentMaker.CssPr import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; import com.oracle.javafx.scenebuilder.kit.util.CssInternal; import com.oracle.javafx.scenebuilder.kit.util.Deprecation; -import com.sun.javafx.css.Rule; -import com.sun.javafx.css.Style; +import javafx.css.Rule; +import javafx.css.Style; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/AbstractHierarchyPanelController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/AbstractHierarchyPanelController.java index c0b65877cf3c0d9f51c853bc371ce7e26ab93221..6dc413610b2291dc661b0c4031f00ba4f5f26a70 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/AbstractHierarchyPanelController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/AbstractHierarchyPanelController.java @@ -36,7 +36,7 @@ import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.drag.DragController; import com.oracle.javafx.scenebuilder.kit.editor.drag.source.DocumentDragSource; import com.oracle.javafx.scenebuilder.kit.editor.drag.source.ExternalDragSource; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import static com.oracle.javafx.scenebuilder.kit.editor.panel.hierarchy.treeview.HierarchyTreeCell.HIERARCHY_FIRST_CELL; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractFxmlPanelController; import com.oracle.javafx.scenebuilder.kit.editor.selection.GridSelectionGroup; @@ -667,6 +667,21 @@ public abstract class AbstractHierarchyPanelController extends AbstractFxmlPanel return treeItem; } + private TreeItem<HierarchyItem> makeTreeItemExpandedPanel(final DesignHierarchyMask owner, final FXOMObject fxomObject) { + final HierarchyItemExpandedPanel item = new HierarchyItemExpandedPanel(owner, fxomObject); + final TreeItem<HierarchyItem> treeItem = new TreeItem<>(item); + // Set back the TreeItem expanded property if any + Boolean expanded = treeItemsExpandedMapProperty.get(fxomObject); + if (expanded != null) { + treeItem.setExpanded(expanded); + } + // Mask may be null for empty place holder + if (item.getMask() != null) { + updateTreeItem(treeItem); + } + return treeItem; + } + private TreeItem<HierarchyItem> makeTreeItemBorderPane( final DesignHierarchyMask owner, final FXOMObject fxomObject, @@ -865,7 +880,13 @@ public abstract class AbstractHierarchyPanelController extends AbstractFxmlPanel treeItem.getChildren().add(makeTreeItemExpansionPanel(mask, value, accessory)); } } - + + // Gluon ExpandedPanel + if (mask.isAcceptingAccessory(Accessory.EX_CONTENT)) { + final FXOMObject value = mask.getAccessory(Accessory.EX_CONTENT); + treeItem.getChildren().add(makeTreeItemExpandedPanel(mask, value)); + } + // Content (ScrollPane, Tab...) //--------------------------------- if (mask.isAcceptingAccessory(Accessory.CONTENT)) { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyDNDController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyDNDController.java index 50d5684cef935d02eb58fd463f3e3a5d6a8d22a9..e5dd65c382b31084d8b8af168615818f738279af 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyDNDController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyDNDController.java @@ -286,6 +286,8 @@ public class HierarchyDNDController { accessory = ((HierarchyItemDialogPane) item).getAccessory(); } else if (item instanceof HierarchyItemExpansionPanel) { accessory = ((HierarchyItemExpansionPanel) item).getAccessory(); + } else if (item instanceof HierarchyItemExpandedPanel) { + accessory = ((HierarchyItemExpandedPanel) item).getAccessory(); } else { accessory = Accessory.GRAPHIC; } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemBorderPane.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemBorderPane.java index 0fcab41ad84018e615c0bfe138808d1254b2b97b..a8d653da41e0ae4923829194ac6f68ec3c128808 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemBorderPane.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemBorderPane.java @@ -31,7 +31,7 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.panel.hierarchy; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.images.ImageUtils; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; import com.oracle.javafx.scenebuilder.kit.metadata.util.DesignHierarchyMask; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemDialogPane.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemDialogPane.java index a64fd84815aef63ddfc5ecf8503eb63455a9d9b7..13c89adbe663bde1d1e2c099a7ba86e1e6634632 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemDialogPane.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemDialogPane.java @@ -31,7 +31,7 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.panel.hierarchy; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.images.ImageUtils; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; import com.oracle.javafx.scenebuilder.kit.metadata.util.DesignHierarchyMask; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemExpandedPanel.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemExpandedPanel.java new file mode 100644 index 0000000000000000000000000000000000000000..6ac7a9c3ad69966e43f5bfaa1904433b917e1b66 --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemExpandedPanel.java @@ -0,0 +1,148 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package com.oracle.javafx.scenebuilder.kit.editor.panel.hierarchy; + +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.editor.images.ImageUtils; +import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; +import com.oracle.javafx.scenebuilder.kit.metadata.util.DesignHierarchyMask; +import javafx.scene.image.Image; + +import java.net.URL; +import java.util.Locale; +import java.util.Objects; + +public class HierarchyItemExpandedPanel extends HierarchyItem { + + private final DesignHierarchyMask.Accessory accessory; + // The accessory owner. Used for the equals method. + private final DesignHierarchyMask owner; + + /** + * Creates a hierarchy item. + * + * @param owner The accessory owner + * @param fxomObject The FX object represented by this item + */ + public HierarchyItemExpandedPanel( + final DesignHierarchyMask owner, + final FXOMObject fxomObject) { + assert owner != null; + this.owner = owner; + // fxomObject can be null for place holder items + this.mask = fxomObject == null ? null : new DesignHierarchyMask(fxomObject); + this.accessory = DesignHierarchyMask.Accessory.EX_CONTENT; + } + + @Override + public boolean equals(Object obj) { + if (obj == null) { + return false; + } + if (getClass() != obj.getClass()) { + return false; + } + final HierarchyItemExpandedPanel item = (HierarchyItemExpandedPanel) obj; + if (!isEmpty()) { + // If the place holder is not empty, we compare the fxom object + assert getFxomObject() != null; + return getFxomObject().equals(item.getFxomObject()); + } else { + // If the place holder is empty, we compare the accessory + owner + return getOwner().equals(item.getOwner()) + && getAccessory().equals(item.getAccessory()); + } + } + + @Override + public int hashCode() { + int hash = 7; + hash = 37 * hash + Objects.hashCode(this.mask); + hash = 37 * hash + Objects.hashCode(this.owner); + hash = 37 * hash + Objects.hashCode(this.accessory); + return hash; + } + + @Override + public boolean isPlaceHolder() { + return true; + } + + @Override + public boolean isEmpty() { + return mask == null; + } + + /** + * Returns the DesignHierarchyMask owner of this accessory. Cannot be null. + * + * @return the DesignHierarchyMask owner + */ + public DesignHierarchyMask getOwner() { + return owner; + } + + /** + * Returns the ExpandedPanel accessory represented by this item. + * + * @return the ExpandedPanel accessory represented by this item. + */ + public DesignHierarchyMask.Accessory getAccessory() { + return this.accessory; + } + + @Override + public Image getPlaceHolderImage() { + return ImageUtils.getNodeIcon("CustomNode.png"); + } + + @Override + public String getPlaceHolderInfo() { + return (mask != null ? null : I18N.getString("hierarchy.placeholder.insert") + accessory.toString().toUpperCase(Locale.getDefault())); + } + + @Override + public Image getClassNameIcon() { + return (mask == null ? null : mask.getClassNameIcon()); + } + + @Override + public URL getClassNameIconURL() { + return (mask == null ? null : mask.getClassNameIconURL()); + } + + @Override + public String getClassNameInfo() { + return (mask == null ? null : mask.getClassNameInfo()); + } +} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemExpansionPanel.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemExpansionPanel.java index 1fb8d41c591a92fd92277c97b5030f03d323eb9e..8cd680a03d0ccf88fa6719649ef73b50d1e9fcef 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemExpansionPanel.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemExpansionPanel.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.hierarchy; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.images.ImageUtils; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; import com.oracle.javafx.scenebuilder.kit.metadata.util.DesignHierarchyMask; @@ -125,7 +125,7 @@ public class HierarchyItemExpansionPanel extends HierarchyItem { @Override public Image getPlaceHolderImage() { - return ImageUtils.getNodeIcon("CustomNode.png"); + return ImageUtils.getNodeIcon("Gluon_ExpansionPanel-" + accessory.name().toLowerCase(Locale.ROOT) + ".png"); } @Override diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemGraphic.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemGraphic.java index b6c46d2f37c3f5be96dcb8c0b8e85625212a3427..4c9b4a4a6b53cae4c3765e125ea2f59839f15c50 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemGraphic.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/HierarchyItemGraphic.java @@ -31,7 +31,7 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.panel.hierarchy; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.images.ImageUtils; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; import com.oracle.javafx.scenebuilder.kit.metadata.util.DesignHierarchyMask; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/treeview/HierarchyTreeCell.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/treeview/HierarchyTreeCell.java index 949bc34bfe59f7d1e9eb157f7cf228233c43bf5a..c66e3ecb897385ad928e2fcf589f49af7955f819 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/treeview/HierarchyTreeCell.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/treeview/HierarchyTreeCell.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -38,7 +39,7 @@ import com.oracle.javafx.scenebuilder.kit.editor.drag.target.AccessoryDropTarget import com.oracle.javafx.scenebuilder.kit.editor.drag.target.ContainerZDropTarget; import com.oracle.javafx.scenebuilder.kit.editor.drag.target.GridPaneDropTarget; import com.oracle.javafx.scenebuilder.kit.editor.drag.target.RootDropTarget; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.images.ImageUtils; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.ModifyFxIdJob; import com.oracle.javafx.scenebuilder.kit.editor.job.atomic.ModifyObjectJob; @@ -65,7 +66,6 @@ import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadat import com.oracle.javafx.scenebuilder.kit.metadata.util.DesignHierarchyMask; import com.oracle.javafx.scenebuilder.kit.metadata.util.DesignHierarchyMask.Accessory; import com.oracle.javafx.scenebuilder.kit.metadata.util.PropertyName; -import com.sun.javafx.css.CssError; import java.net.URL; import java.util.List; @@ -74,6 +74,7 @@ import java.util.Set; import javafx.beans.value.ChangeListener; import javafx.beans.value.WeakChangeListener; import javafx.collections.ObservableList; +import javafx.css.CssParser; import javafx.event.EventHandler; import javafx.scene.control.TreeCell; import javafx.scene.control.TreeItem; @@ -908,9 +909,9 @@ public class HierarchyTreeCell<T extends HierarchyItem> extends TreeCell<Hierarc if (r.getIOException() != null) { result.append(r.getIOException()); } else { - assert r.getCssErrors().isEmpty() == false; + assert r.getParseErrors().isEmpty() == false; int errorCount = 0; - for (CssError e : r.getCssErrors()) { + for (CssParser.ParseError e : r.getParseErrors()) { result.append(e.getMessage()); errorCount++; if (errorCount < 5) { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/InspectorPanelController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/InspectorPanelController.java index 296257ddb3ffeedf4a2cd38944d53bc0d00602f2..12fd88bee258916fb90d71426c88f5b33bb18bd9 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/InspectorPanelController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/InspectorPanelController.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, Gluon and/or its affiliates. + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -34,7 +34,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.drag.source.AbstractDragSource; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.job.Job; import com.oracle.javafx.scenebuilder.kit.editor.job.ModifyCacheHintJob; import com.oracle.javafx.scenebuilder.kit.editor.job.ModifySelectionJob; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/AnchorPaneConstraintsEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/AnchorPaneConstraintsEditor.java index 11a6b2ac919970c4fd8c6a03c5b6890eb4abfa82..deda60e7988ef4775c6d07b1865b4f2d077901a2 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/AnchorPaneConstraintsEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/AnchorPaneConstraintsEditor.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -113,6 +114,32 @@ public class AnchorPaneConstraintsEditor extends PropertiesEditor { new ConstraintEditor(bottomTf, bottomTb, selectedInstances, bottomPropMeta, constraintListener)); contraintEditors.add( new ConstraintEditor(leftTf, leftTb, selectedInstances, leftPropMeta, constraintListener)); + + // Select all text when this editor textfield is selected + topTf.setOnMousePressed(event -> topTf.selectAll()); + topTf.focusedProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue) { + topTf.selectAll(); + } + })); + rightTf.setOnMousePressed(event -> rightTf.selectAll()); + rightTf.focusedProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue) { + rightTf.selectAll(); + } + })); + bottomTf.setOnMousePressed(event -> rightTf.selectAll()); + bottomTf.focusedProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue) { + rightTf.selectAll(); + } + })); + leftTf.setOnMousePressed(event -> rightTf.selectAll()); + leftTf.focusedProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue) { + rightTf.selectAll(); + } + })); } @Override diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/AutoSuggestEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/AutoSuggestEditor.java index f1bd939d8ae62a2b35345ab3fa65f9c9424ead9c..7e58b78824a23959c23a72c5b178be2d0f647926 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/AutoSuggestEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/AutoSuggestEditor.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -122,6 +123,14 @@ public abstract class AutoSuggestEditor extends PropertyEditor { if (type == Type.ALPHA) { root = EditorUtils.loadFxml("StringAutoSuggestEditor.fxml", this); //NOI18N assert textField != null; + // Select all text when selected + textField.setOnMousePressed(event -> textField.selectAll()); + textField.focusedProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue) { + textField.selectAll(); + } + })); + entryField = textField; } else if (type == Type.DOUBLE) { root = EditorUtils.loadFxml("DoubleAutoSuggestEditor.fxml", this); //NOI18N @@ -151,6 +160,7 @@ public abstract class AutoSuggestEditor extends PropertyEditor { // suggestedLv.prefWidthProperty().bind(entryField.widthProperty()); updateMenuButtonIfNeeded(); + } @Override @@ -381,5 +391,4 @@ public abstract class AutoSuggestEditor extends PropertyEditor { menuButton.getItems().add(menuItem); } } - } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/CharsetEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/CharsetEditor.java index 62cd9c23e775a3249f705630b46e3456c78067a1..4f0db6240bf3a29e93a701fce1197446c4d03f89 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/CharsetEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/CharsetEditor.java @@ -1,3 +1,34 @@ +/* + * Copyright (c) 2017, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; @@ -13,7 +44,7 @@ import java.util.*; */ public class CharsetEditor extends AutoSuggestEditor { - private Map<String, Charset> availableCharsets; + private final Map<String, Charset> availableCharsets; public CharsetEditor(ValuePropertyMetadata propMeta, Set<Class<?>> selectedClasses, Map<String, Charset> availableCharsets) { super(propMeta, selectedClasses, new ArrayList<>(availableCharsets.keySet()), Type.ALPHA); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/CursorEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/CursorEditor.java index d7daf9d705a6144b4db5508ab9589c0166dd7a88..3ecef2cb284f81f6d3a6a4707d36da6e8b3cb65c 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/CursorEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/CursorEditor.java @@ -31,7 +31,7 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; import com.oracle.javafx.scenebuilder.kit.metadata.property.value.CursorPropertyMetadata; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/DurationEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/DurationEditor.java index e716ae808fb86b8e19eff739f5d0dbc282075254..9bd7d444266aec57c1c6af1084c4b424f8974451 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/DurationEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/DurationEditor.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors.util.SBDuration; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; import javafx.event.ActionEvent; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/EditorUtils.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/EditorUtils.java index dcaf45c996fe5c01d1e34419b623820e9bce66a1..b4fb2b42fd3ae4c144496f0972ee184abf981dcb 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/EditorUtils.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/EditorUtils.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,10 +33,9 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors.PropertyEditor.LayoutFormat; import com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.popupeditors.PopupEditor; -import com.oracle.javafx.scenebuilder.kit.fxom.FXOMIntrinsic; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; import com.oracle.javafx.scenebuilder.kit.metadata.Metadata; import com.oracle.javafx.scenebuilder.kit.metadata.klass.ComponentClassMetadata; @@ -408,38 +408,38 @@ public class EditorUtils { protected static void openUrl(Set<Class<?>> selectedClasses, ValuePropertyMetadata propMeta) throws IOException { Class<?> clazz = null; - String url; // In case of static property, we don't care of the selectedClasses if (selectedClasses != null) { for (Class<?> cl : selectedClasses) { clazz = cl; } } - if(clazz == FXOMIntrinsic.class) { - url = FXINCLUDE_JAVADOC_URL; + PropertyName propertyName = propMeta.getName(); + if (propMeta.isStaticProperty()) { + clazz = propertyName.getResidenceClass(); + } else { + clazz = getDefiningClass(clazz, propertyName).getKlass(); + } + String propNameStr = propertyName.getName(); + // First char in uppercase + propNameStr = propNameStr.substring(0, 1).toUpperCase(Locale.ENGLISH) + propNameStr.substring(1); + String methodName; + if (propMeta.getValueClass() == Boolean.class) { + methodName = "is" + propNameStr + "--"; //NOI18N + } else if (propMeta.isStaticProperty()) { + methodName = "get" + propNameStr + "-" + Node.class.getName() + "-"; //NOI18N + } else { + methodName = "get" + propNameStr + "--"; //NOI18N } - else { - PropertyName propertyName = propMeta.getName(); - if (propMeta.isStaticProperty()) { - clazz = propertyName.getResidenceClass(); - } else { - clazz = getDefiningClass(clazz, propertyName).getKlass(); - } - String propNameStr = propertyName.getName(); - // First char in uppercase - propNameStr = propNameStr.substring(0, 1).toUpperCase(Locale.ENGLISH) + propNameStr.substring(1); - String methodName; - if (propMeta.getValueClass() == Boolean.class) { - methodName = "is" + propNameStr + "--"; //NOI18N - } else if (propMeta.isStaticProperty()) { - methodName = "get" + propNameStr + "-" + Node.class.getName() + "-"; //NOI18N - } else { - methodName = "get" + propNameStr + "--"; //NOI18N - } - url = EditorPlatform.JAVADOC_HOME + clazz.getName().replaceAll("\\.", "/") + ".html"; //NOI18N - url += "#" + methodName; //NOI18N + String url; + if (clazz.getName().startsWith(EditorPlatform.GLUON_PACKAGE)) { + url = EditorPlatform.GLUON_JAVADOC_HOME; + } else { + url = EditorPlatform.JAVADOC_HOME; } + url += clazz.getName().replaceAll("\\.", "/") + ".html"; //NOI18N + url += "#" + methodName; //NOI18N EditorPlatform.open(url); } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/EventHandlerEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/EventHandlerEditor.java index 85f309ee0cc434f56245029cf4f58658932e792d..b91cf7fc8dfad40aecc81e4c853c64479ea57007 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/EventHandlerEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/EventHandlerEditor.java @@ -31,7 +31,7 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; import com.oracle.javafx.scenebuilder.kit.util.JavaLanguage; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/FunctionalInterfaceEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/FunctionalInterfaceEditor.java index 823b5d2e1f541fd096d9758b0e4fceb7ad48bfc5..fcd9a23696a85f31fc7403e8df6a71ed930433f1 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/FunctionalInterfaceEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/FunctionalInterfaceEditor.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; import com.oracle.javafx.scenebuilder.kit.util.JavaLanguage; import javafx.event.ActionEvent; @@ -49,7 +49,7 @@ import java.util.ArrayList; import java.util.List; import java.util.Set; -public class FunctionalInterfaceEditor extends AutoSuggestEditor { +public class FunctionalInterfaceEditor extends AutoSuggestEditor { private static final String HASH_STR = "#"; //NOI18N private final MenuItem controllerMethodMenuItem = new MenuItem(I18N.getString("inspector.event.menu.methodmode")); private final MenuItem scriptMenuItem = new MenuItem(I18N.getString("inspector.event.menu.scriptmode")); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/FxIdEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/FxIdEditor.java index a3a672e936eddc4a9db3683530f86d9572c32e0b..da97aaf4782b7e1165dbc15b955e57d2c6cce6b0 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/FxIdEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/FxIdEditor.java @@ -49,19 +49,9 @@ public class FxIdEditor extends AutoSuggestEditor { private static final String PROPERTY_NAME = "fx:id"; private static final String DEFAULT_VALUE = null; private EditorController editorController; - - public FxIdEditor(List<String> suggestedFxIds, EditorController editorController) { - super(PROPERTY_NAME, DEFAULT_VALUE, suggestedFxIds); //NOI18N - initialize(editorController); - } - - private void initialize(EditorController editorController) { - this.editorController = editorController; - setTextEditorBehavior(this, textField, onActionListener); - } // text field events handling - private EventHandler<ActionEvent> onActionListener = event -> { + EventHandler<ActionEvent> onActionListener = event -> { if (isHandlingError()) { // Event received because of focus lost due to error dialog return; @@ -88,6 +78,16 @@ public class FxIdEditor extends AutoSuggestEditor { textField.selectAll(); }; + public FxIdEditor(List<String> suggestedFxIds, EditorController editorController) { + super(PROPERTY_NAME, DEFAULT_VALUE, suggestedFxIds); //NOI18N + initialize(editorController); + } + + private void initialize(EditorController editorController) { + this.editorController = editorController; + setTextEditorBehavior(this, textField, onActionListener); + } + public void reset(List<String> suggestedFxIds, EditorController editorController) { reset(PROPERTY_NAME, DEFAULT_VALUE, suggestedFxIds); this.editorController = editorController; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/GenericEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/GenericEditor.java index 20b8fae6ad2f88f91485f504667a077de4eff690..8bc7a3f21582475caed524c61f768ee1d6277cc5 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/GenericEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/GenericEditor.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -59,6 +60,14 @@ public class GenericEditor extends PropertyEditor { EventHandler<ActionEvent> onActionListener = event -> userUpdateValueProperty(getValue()); setTextEditorBehavior(this, textField, onActionListener); setDisable(true); + + // Select all text when this editor is selected + textField.setOnMousePressed(event -> textField.selectAll()); + textField.focusedProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue) { + textField.selectAll(); + } + })); } @Override diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/I18nStringEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/I18nStringEditor.java index 773b703f2cf9369b09769a2e56d74a72d3afc6e6..88f4d3a0b3b6259132da71896cb03ae3c92b8ebe 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/I18nStringEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/I18nStringEditor.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -31,7 +32,7 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; import com.oracle.javafx.scenebuilder.kit.metadata.util.PrefixedValue; @@ -105,6 +106,14 @@ public class I18nStringEditor extends PropertyEditor { multiLineMode = !multiLineMode; updateMenuItems(); }); + + // Select all text when this editor is selected + textNode.setOnMousePressed(event -> textNode.selectAll()); + textNode.focusedProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue) { + textNode.selectAll(); + } + })); } @Override diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/ImageEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/ImageEditor.java index 208b485a454041c6b9b35ed4a813c05bcc4a3dc4..4e503be28c5baf6dee9703ffd64f06756f9335bb 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/ImageEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/ImageEditor.java @@ -50,7 +50,7 @@ import javafx.scene.image.Image; import javafx.stage.FileChooser; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; import com.oracle.javafx.scenebuilder.kit.metadata.util.DesignImage; import com.oracle.javafx.scenebuilder.kit.metadata.util.PrefixedValue; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/IncludeFxmlEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/IncludeFxmlEditor.java index ab557b4094b5c65dad0217110f441a7c7d97efb4..92fc8bb2dfd6fc1cfe943094c86821ae2fea0b25 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/IncludeFxmlEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/IncludeFxmlEditor.java @@ -1,6 +1,37 @@ +/* + * Copyright (c) 2017, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; -import com.oracle.javafx.scenebuilder.app.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; import com.oracle.javafx.scenebuilder.kit.metadata.util.PrefixedValue; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/InsetsEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/InsetsEditor.java index 61b2d72b44ee7de2770aa4e54100f91b647802e6..579030ee45e59321aa71366a142f7836ddbc1904 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/InsetsEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/InsetsEditor.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -89,6 +90,13 @@ public class InsetsEditor extends PropertyEditor { userUpdateValueProperty(getValue()); }; setNumericEditorBehavior(this, tf, valueListener, false); + // Select all text when this editor is selected + tf.setOnMousePressed(event -> tf.selectAll()); + tf.focusedProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue){ + tf.selectAll(); + } + })); } linkBt.disableProperty().bind(disableProperty()); setLayoutFormat(LayoutFormat.SIMPLE_LINE_BOTTOM); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/NumberField.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/NumberField.java index c1695eed18609dcf1fbf3387603fa504614b60cf..7b86fe65fa76bcc695f961078ee32ff637f2f3a0 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/NumberField.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/NumberField.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -34,6 +35,8 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; import java.util.ArrayList; import java.util.List; import java.util.Locale; + +import javafx.beans.value.ChangeListener; import javafx.scene.control.TextField; /** @@ -45,6 +48,13 @@ public abstract class NumberField extends TextField { List<String> constants = new ArrayList<>(); public NumberField() { + // Select all text when this editor is selected + setOnMousePressed(event -> selectAll()); + focusedProperty().addListener((ChangeListener<Boolean>) (ov, prevVal, newVal) -> { + if (newVal) { + selectAll(); + } + }); } public void setConstants(List<String> constants) { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/PropertiesEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/PropertiesEditor.java index b6c915b36d15700c4513820f7e4a45c26b9a5a1e..3941f40ebda0da05b63093150cda0895e7ee286c 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/PropertiesEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/PropertiesEditor.java @@ -31,7 +31,7 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; import java.util.List; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/PropertyEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/PropertyEditor.java index 0fbe619656097813dbf9be137fe8c276de825f7f..7167d068b4390eb6ee0e2b75882c8869457ec291 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/PropertyEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/PropertyEditor.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.InspectorPanelController; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog.AbstractModalDialog.ButtonID; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog.AlertDialog; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/RotateEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/RotateEditor.java index e370f99b865ececdb477090f57f17425a9306bf8..43111b87c60bd09a53953960217027b1469ad435 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/RotateEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/RotateEditor.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -102,6 +103,14 @@ public class RotateEditor extends PropertyEditor { }; setNumericEditorBehavior(this, rotateTf, valueListener, false); + + // Select all text when this editor is selected + rotateTf.setOnMousePressed(event -> rotateTf.selectAll()); + rotateTf.focusedProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue) { + rotateTf.selectAll(); + } + })); } @Override diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StringEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StringEditor.java index 33238f8a3f65a36059cf2010c3527fd218b5ba3b..12ca3bffc53d3b9f8e50fcba3ebbef7ac079660a 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StringEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StringEditor.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -65,6 +66,14 @@ public class StringEditor extends PropertyEditor { // Double line editor by default setLayoutFormat(LayoutFormat.DOUBLE_LINE); + + // Select all text when this editor is selected + textField.setOnMousePressed(event -> textField.selectAll()); + textField.focusedProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue) { + textField.selectAll(); + } + })); } @Override diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StringListEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StringListEditor.java index 9524f0fd2539adc744824ae9feb071fade5e1dc6..f6cc849074c5fab3a73f36341515ae197802e6b6 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StringListEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StringListEditor.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2016, Gluon and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,7 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMInstance; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; import com.oracle.javafx.scenebuilder.kit.metadata.util.PrefixedValue; @@ -206,6 +207,14 @@ public class StringListEditor extends InlineListEditor { removeMi.setText(I18N.getString("inspector.list.remove")); moveUpMi.setText(I18N.getString("inspector.list.moveup")); moveDownMi.setText(I18N.getString("inspector.list.movedown")); + + // Select all text when this editor is selected + textTextfield.setOnMousePressed(event -> textTextfield.selectAll()); + textTextfield.focusedProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue) { + textTextfield.selectAll(); + } + })); } @Override diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StyleClassEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StyleClassEditor.java index 3d57f2c7fe2bec04b4aa7ce8335101a410b7c66e..04b2028dd32b425fb724ec6aaf56e1375b8dbf16 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StyleClassEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StyleClassEditor.java @@ -34,7 +34,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform.Theme; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMInstance; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; import com.oracle.javafx.scenebuilder.kit.util.CssInternal; @@ -77,6 +77,10 @@ public class StyleClassEditor extends InlineListEditor { private Map<String, String> cssClassesMap; private List<String> themeClasses; private EditorController editorController; + + private ChangeListener<Theme> themeListener = (ov, t, t1) -> { + themeClasses = CssInternal.getThemeStyleClasses(editorController.getTheme()); + }; public StyleClassEditor(ValuePropertyMetadata propMeta, Set<Class<?>> selectedClasses, Set<FXOMInstance> selectedInstances, EditorController editorController) { @@ -94,10 +98,6 @@ public class StyleClassEditor extends InlineListEditor { // On Theme change, update the themeClasses editorController.themeProperty().addListener(themeListener); } - - private ChangeListener<Theme> themeListener = (ov, t, t1) -> { - themeClasses = CssInternal.getThemeStyleClasses(editorController.getTheme()); - }; private StyleClassItem getNewStyleClassItem() { if (cssClassesMap == null) { @@ -185,8 +185,8 @@ public class StyleClassEditor extends InlineListEditor { EditorController oldEditorController = this.editorController; if (oldEditorController != editorController) { oldEditorController.themeProperty().removeListener(themeListener); - this.editorController = editorController; - editorController.themeProperty().addListener(themeListener); + this.editorController = editorController; + editorController.themeProperty().addListener(themeListener); } cssClassesMap = null; // add an empty item diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StyleEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StyleEditor.java index 8c55388716563546e8cdbcf4e33180b615b3c6ce..9a633588a10fbe3ca099a8ca8876d88709d366ba 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StyleEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StyleEditor.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,12 +33,9 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; import com.oracle.javafx.scenebuilder.kit.util.CssInternal; -import com.sun.javafx.css.CssError; -import com.sun.javafx.css.StyleManager; -import com.sun.javafx.css.parser.CSSParser; import java.util.ArrayList; import java.util.Collections; @@ -51,6 +49,7 @@ import javafx.collections.ListChangeListener; import javafx.collections.ObservableList; import javafx.collections.ObservableSet; import javafx.css.CssMetaData; +import javafx.css.CssParser; import javafx.css.PseudoClass; import javafx.css.Styleable; import javafx.event.ActionEvent; @@ -235,7 +234,7 @@ public class StyleEditor extends InlineListEditor { private String currentValue; private EditorItemDelegate editor; private boolean parsingError = false; - private ListChangeListener<CssError> errorListener; + private ListChangeListener<CssParser.ParseError> errorListener; public StyleItem(EditorItemDelegate editor, List<String> suggestedList) { // System.out.println("New StyleItem."); @@ -309,8 +308,8 @@ public class StyleEditor extends InlineListEditor { errorListener = change -> { while (change.next()) { if (change.wasAdded()) { - for (CssError error : change.getAddedSubList()) { - if (error instanceof CssError.InlineStyleParsingError) { + for (CssParser.ParseError error : change.getAddedSubList()) { + if ("InlineStyleParsingError".equals(error.getClass().getSimpleName())) { parsingError = true; break; } @@ -319,6 +318,15 @@ public class StyleEditor extends InlineListEditor { } }; + // Select all text when the value of this editor is selected + // property text field is already taken care of in AutoSuggestEditor + valueTf.setOnMousePressed(event -> valueTf.selectAll()); + valueTf.focusedProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue) { + valueTf.selectAll(); + } + })); + } @Override @@ -339,9 +347,9 @@ public class StyleEditor extends InlineListEditor { // Parse the style, and set the parsingError boolean if any error parsingError = false; - StyleManager.errorsProperty().addListener(errorListener); - new CSSParser().parseInlineStyle(new StyleableStub(value)); - StyleManager.errorsProperty().removeListener(errorListener); + CssParser.errorsProperty().addListener(errorListener); + new CssParser().parseInlineStyle(new StyleableStub(value)); + CssParser.errorsProperty().removeListener(errorListener); return value; } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StylesheetEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StylesheetEditor.java index fc72a4667a34ca48d4d5a95a86076659f902c8f8..eb414e0ca9310e8f4ae95ef3f1d64b6d9f632ae9 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StylesheetEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StylesheetEditor.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -33,7 +34,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; import com.oracle.javafx.scenebuilder.kit.metadata.util.PrefixedValue; import com.oracle.javafx.scenebuilder.kit.metadata.util.PrefixedValue.Type; @@ -408,7 +409,6 @@ public class StylesheetEditor extends InlineListEditor { private Type itemType = Type.PLAIN_STRING; public StylesheetItem(EditorItemDelegate editor, String url) { -// System.out.println("New StylesheetItem."); initialize(editor, url); } @@ -421,7 +421,6 @@ public class StylesheetEditor extends InlineListEditor { setValue(url); EventHandler<ActionEvent> onActionListener = event -> { -// System.out.println("StylesheetItem : onActionListener"); if (getValue().equals(currentValue)) { // no change return; @@ -429,7 +428,6 @@ public class StylesheetEditor extends InlineListEditor { if (stylesheetTf.getText().isEmpty()) { remove(null); } -// System.out.println("StyleEditorItem : COMMIT"); editor.commit(StylesheetItem.this); if (event != null && event.getSource() instanceof TextField) { ((TextField) event.getSource()).selectAll(); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/EffectPopupEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/EffectPopupEditor.java index 9ad2932c0f555e81eaedceea5b654a454b1653bc..7a72c336218c80f539658f8400a5e98996a953a6 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/EffectPopupEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/EffectPopupEditor.java @@ -88,9 +88,10 @@ public class EffectPopupEditor extends PopupEditor { this.editorController = editorController; } - public void reset(ValuePropertyMetadata propMeta, Set<Class<?>> selectedClasses, EditorController editorController) { - super.reset(propMeta, selectedClasses); - this.editorController = editorController; + public void reset(ValuePropertyMetadata propMeta, Set<Class<?>> selectedClasses, + EditorController editorController) { + super.reset(propMeta, selectedClasses); + this.editorController = editorController; } @Override diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/FontPopupEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/FontPopupEditor.java index 11360adf26afe0faf4304fdc28c175a1e8cc5afe..562d668f5048b4334fcc4018fd850347b5203cc6 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/FontPopupEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/FontPopupEditor.java @@ -130,7 +130,7 @@ public class FontPopupEditor extends PopupEditor { familyEditor.setEditorController(editorController); } if (styleEditor != null) { - styleEditor.setEditorController(editorController); + styleEditor.setEditorController(editorController); } } @@ -216,6 +216,21 @@ public class FontPopupEditor extends PopupEditor { private List<String> families; private String family = null; private EditorController editorController; + + EventHandler<ActionEvent> onActionListener = event -> { + if (Objects.equals(family, getTextField().getText())) { + // no change + return; + } + family = getTextField().getText(); + if (family.isEmpty() || !FamilyEditor.this.families.contains(family)) { + editorController.getMessageLog().logWarningMessage( + "inspector.font.invalidfamily", family); //NOI18N + return; + } +// System.out.println("Setting family from '" + valueProperty().get() + "' to '" + value + "'"); + valueProperty().setValue(family); + }; public FamilyEditor(String name, String defaultValue, List<String> families, EditorController editorController) { super(name, defaultValue, families); @@ -232,21 +247,6 @@ public class FontPopupEditor extends PopupEditor { public void setEditorController(EditorController editorController) { this.editorController = editorController; } - - private EventHandler<ActionEvent> onActionListener = event -> { - if (Objects.equals(family, getTextField().getText())) { - // no change - return; - } - family = getTextField().getText(); - if (family.isEmpty() || !FamilyEditor.this.families.contains(family)) { - editorController.getMessageLog().logWarningMessage( - "inspector.font.invalidfamily", family); //NOI18N - return; - } -// System.out.println("Setting family from '" + valueProperty().get() + "' to '" + value + "'"); - valueProperty().setValue(family); - }; @Override public Object getValue() { @@ -263,23 +263,8 @@ public class FontPopupEditor extends PopupEditor { private String style = null; private EditorController editorController; - - public StyleEditor(String name, String defaultValue, List<String> suggestedList, EditorController editorController) { - super(name, defaultValue, suggestedList); - initialize(editorController); - } - - private void initialize(EditorController editorController) { - this.editorController = editorController; - setTextEditorBehavior(this, getTextField(), onActionListener); - commitOnFocusLost(this); - } - - public void setEditorController(EditorController editorController) { - this.editorController = editorController; - } - private EventHandler<ActionEvent> onActionListener = event -> { + EventHandler<ActionEvent> onActionListener = event -> { if (Objects.equals(style, getTextField().getText())) { // no change return; @@ -293,6 +278,21 @@ public class FontPopupEditor extends PopupEditor { valueProperty().setValue(style); }; + public StyleEditor(String name, String defaultValue, List<String> suggestedList, EditorController editorController) { + super(name, defaultValue, suggestedList); + initialize(editorController); + } + + private void initialize(EditorController editorController) { + this.editorController = editorController; + setTextEditorBehavior(this, getTextField(), onActionListener); + commitOnFocusLost(this); + } + + public void setEditorController(EditorController editorController) { + this.editorController = editorController; + } + @Override public Object getValue() { return getTextField().getText(); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/KeyCombinationPopupEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/KeyCombinationPopupEditor.java index af891170b6a114d28f5c460799a4955f24504166..3744fedfab9f2273a801164dfbb8d92ce994e5fb 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/KeyCombinationPopupEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/KeyCombinationPopupEditor.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.popupeditors; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors.AutoSuggestEditor; import com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors.EditorUtils; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/PaintPopupEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/PaintPopupEditor.java index 35aaefc61b1ad47bad9bbae19e775228706daedb..ccd7ada9e4e6c541ec12414dbe3135eb7f1de577 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/PaintPopupEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/PaintPopupEditor.java @@ -92,7 +92,8 @@ public class PaintPopupEditor extends PopupEditor { paintPicker = new PaintPicker(delegate); } - public void reset(ValuePropertyMetadata propMeta, Set<Class<?>> selectedClasses, EditorController editorController) { + public void reset(ValuePropertyMetadata propMeta, Set<Class<?>> selectedClasses, + EditorController editorController) { super.reset(propMeta, selectedClasses); this.editorController = editorController; } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/Rectangle2DPopupEditor.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/Rectangle2DPopupEditor.java index 4c46ecd5355b23047169ce7fb3b49e70a953b310..c488358cbb55eab99f11b4a53a68c55b5b871696 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/Rectangle2DPopupEditor.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/Rectangle2DPopupEditor.java @@ -31,7 +31,7 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.popupeditors; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors.DoubleField; import com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.editors.EditorUtils; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/ImportWindowController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/ImportWindowController.java index 8fae5e544b723caf413b3e2e00640f3600b2a35a..78b80883cf4d20c7609a6a1de6f903740b5fb3ab 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/ImportWindowController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/ImportWindowController.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -31,8 +32,8 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library; -import com.oracle.javafx.scenebuilder.app.preferences.PreferencesController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.alert.ImportingGluonControlsAlert; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog.AbstractModalDialog; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog.ErrorDialog; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; @@ -56,6 +57,7 @@ import java.util.List; import java.util.concurrent.ExecutionException; import java.util.stream.Collectors; +import com.oracle.javafx.scenebuilder.kit.preferences.MavenPreferences; import javafx.application.Platform; import javafx.beans.value.ChangeListener; import javafx.beans.value.ObservableValue; @@ -75,9 +77,7 @@ import javafx.scene.control.ToggleButton; import javafx.scene.control.cell.CheckBoxListCell; import javafx.scene.layout.Region; import javafx.scene.layout.VBox; -import javafx.stage.Modality; import javafx.stage.Stage; -import javafx.stage.Window; import javafx.stage.WindowEvent; import javafx.util.Callback; @@ -86,6 +86,11 @@ import javafx.util.Callback; */ public class ImportWindowController extends AbstractModalDialog { + public enum PrefSize { + + DEFAULT, TWO_HUNDRED_BY_ONE_HUNDRED, TWO_HUNDRED_BY_TWO_HUNDRED + }; + final List<File> importFiles; private final LibraryPanelController libPanelController; Task<List<JarReport>> exploringTask = null; @@ -95,6 +100,7 @@ public class ImportWindowController extends AbstractModalDialog { double builtinPrefHeight; private int numOfImportedJar; private boolean copyFilesToUserLibraryDir; + private Stage owner; // At first we put in this collection the items which are already excluded, // basically all which are listed in the filter file. @@ -105,10 +111,7 @@ public class ImportWindowController extends AbstractModalDialog { private List<String> alreadyExcludedItems = new ArrayList<>(); private final List<String> artifactsFilter; - public enum PrefSize { - - DEFAULT, TWO_HUNDRED_BY_ONE_HUNDRED, TWO_HUNDRED_BY_TWO_HUNDRED - }; + private final MavenPreferences mavenPreferences; @FXML private VBox leftHandSidePart; @@ -145,18 +148,21 @@ public class ImportWindowController extends AbstractModalDialog { @FXML ToggleButton checkAllUncheckAllToggle; + - public ImportWindowController(LibraryPanelController lpc, List<File> files, Window owner) { - this(lpc, files, owner, true, new ArrayList<>()); + public ImportWindowController(LibraryPanelController lpc, List<File> files, MavenPreferences mavenPreferences, Stage owner) { + this(lpc, files, mavenPreferences, owner, true, new ArrayList<>()); } - public ImportWindowController(LibraryPanelController lpc, List<File> files, Window owner, + public ImportWindowController(LibraryPanelController lpc, List<File> files, MavenPreferences mavenPreferences, Stage owner, boolean copyFilesToUserLibraryDir, List<String> artifactsFilter) { super(ImportWindowController.class.getResource("ImportDialog.fxml"), I18N.getBundle(), owner); //NOI18N libPanelController = lpc; importFiles = new ArrayList<>(files); this.copyFilesToUserLibraryDir = copyFilesToUserLibraryDir; this.artifactsFilter = artifactsFilter; + this.owner = owner; + this.mavenPreferences = mavenPreferences; } /* @@ -312,8 +318,8 @@ public class ImportWindowController extends AbstractModalDialog { */ @Override protected void controllerDidCreateStage() { + super.controllerDidCreateStage(); getStage().setTitle(I18N.getString("import.window.title")); - getStage().initModality(Modality.APPLICATION_MODAL); } /* @@ -343,7 +349,7 @@ public class ImportWindowController extends AbstractModalDialog { } } // add artifacts jars (main and dependencies) - res.addAll(PreferencesController.getSingleton().getMavenPreferences().getArtifactsFilesWithDependencies()); + res.addAll(mavenPreferences.getArtifactsFilesWithDependencies()); return res; } @@ -418,6 +424,7 @@ public class ImportWindowController extends AbstractModalDialog { = row -> row.importRequired(); importList.setCellFactory(CheckBoxListCell.forListView(importRequired)); + boolean importingGluonControls = false; for (JarReport jarReport : jarReportList) { for (JarReportEntry e : jarReport.getEntries()) { if ((e.getStatus() == JarReportEntry.Status.OK) && e.isNode()) { @@ -442,13 +449,22 @@ public class ImportWindowController extends AbstractModalDialog { }); } } + if (jarReport.hasGluonControls()) { + importingGluonControls = true; + } } - + + if (importingGluonControls) { + ImportingGluonControlsAlert alert = new ImportingGluonControlsAlert(owner); + alert.showAndWait(); + } + // Sort based on the simple class name. Collections.sort(importList.getItems(), new ImportRowComparator()); final int numOfComponentToImport = getNumOfComponentToImport(importList); updateOKButtonTitle(numOfComponentToImport); + updateOKCancelDefaultState(numOfComponentToImport); updateSelectionToggleText(numOfComponentToImport); updateNumOfItemsLabelAndSelectionToggleState(); } catch (InterruptedException | ExecutionException | IOException ex) { @@ -583,7 +599,7 @@ public class ImportWindowController extends AbstractModalDialog { .stream() .filter(r -> !r.isImportRequired()) .map(ImportRow::getCanonicalClassName) - .collect(Collectors.joining(":")); + .collect(Collectors.joining(File.pathSeparator)); } // The title of the button is important in the sense it says to the user @@ -606,6 +622,16 @@ public class ImportWindowController extends AbstractModalDialog { setOKButtonTitle(I18N.getString("import.button.import.components")); } } + + private void updateOKCancelDefaultState(int numOfComponentsToImport) { + if (numOfComponentsToImport == 0) { + cancelButton.setDefaultButton(true); + cancelButton.requestFocus(); + } else { + okButton.setDefaultButton(true); + okButton.requestFocus(); + } + } void updateNumOfItemsLabelAndSelectionToggleState() { final int num = importList.getItems().size(); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/LibraryPanelController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/LibraryPanelController.java index 487f900b1b14d219c25fbb86d15152b57844ef8c..25a3421f865e7323c3a58ee41030a93e7aabaf3c 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/LibraryPanelController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/LibraryPanelController.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -34,7 +35,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.library; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.drag.source.AbstractDragSource; import com.oracle.javafx.scenebuilder.kit.editor.drag.source.DocumentDragSource; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractFxmlPanelController; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog.AbstractModalDialog.ButtonID; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog.AlertDialog; @@ -74,6 +75,7 @@ import java.util.Timer; import java.util.TimerTask; import java.util.TreeSet; +import com.oracle.javafx.scenebuilder.kit.preferences.MavenPreferences; import javafx.application.Platform; import javafx.beans.value.ChangeListener; import javafx.collections.ListChangeListener; @@ -113,6 +115,7 @@ public class LibraryPanelController extends AbstractFxmlPanelController { boolean initiateImportDialog = false; final List<File> jarAndFxmlFiles = new ArrayList<>(); private String userLibraryPathString = null; + private final MavenPreferences mavenPreferences; @FXML private Accordion libAccordion; @@ -133,9 +136,10 @@ public class LibraryPanelController extends AbstractFxmlPanelController { * * @param c the editor controller (never null). */ - public LibraryPanelController(EditorController c) { + public LibraryPanelController(EditorController c, MavenPreferences mavenPreferences) { super(LibraryPanelController.class.getResource("LibraryPanel.fxml"), I18N.getBundle(), c); //NOI18N startListeningToLibrary(); + this.mavenPreferences = mavenPreferences; } /** @@ -752,7 +756,7 @@ public class LibraryPanelController extends AbstractFxmlPanelController { } final ImportWindowController iwc - = new ImportWindowController(this, jarFiles, window); + = new ImportWindowController(this, jarFiles, mavenPreferences, (Stage) window); iwc.setToolStylesheet(getEditorController().getToolStylesheet()); // See comment in OnDragDropped handle set in method startListeningToDrop. ButtonID userChoice = iwc.showAndWait(); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/ArtifactDialogListItem.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/ArtifactDialogListItem.java index 68c01353925be59b2163b8a993896772232ce299..e7aed8544c75dae5f40569e707945c530a46b17f 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/ArtifactDialogListItem.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/ArtifactDialogListItem.java @@ -1,3 +1,35 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + package com.oracle.javafx.scenebuilder.kit.editor.panel.library.manager; /** diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/DialogListItem.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/DialogListItem.java index f6196941691d4a2ad5f7d004f3c82bfb9a70fac9..7108d4ea05745e4d6c176e52050a477acd433b90 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/DialogListItem.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/DialogListItem.java @@ -1,3 +1,35 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + package com.oracle.javafx.scenebuilder.kit.editor.panel.library.manager; public interface DialogListItem { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/LibraryDialogController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/LibraryDialogController.java index 7b279f8a525a70c37decd4faa098d13e44f567fa..0b743e75e446c05e9aa73f0f41c5e0f8fcb1a720 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/LibraryDialogController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/LibraryDialogController.java @@ -1,14 +1,42 @@ +/* + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + package com.oracle.javafx.scenebuilder.kit.editor.panel.library.manager; -import com.oracle.javafx.scenebuilder.app.DocumentWindowController; -import com.oracle.javafx.scenebuilder.app.SceneBuilderApp; -import com.oracle.javafx.scenebuilder.app.preferences.PreferencesController; -import com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordArtifact; -import com.oracle.javafx.scenebuilder.app.util.SBSettings; +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesRecordArtifact; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.MavenArtifact; -import com.oracle.javafx.scenebuilder.app.preferences.MavenPreferences; +import com.oracle.javafx.scenebuilder.kit.preferences.MavenPreferences; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.ImportWindowController; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.LibraryPanelController; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.MavenDialogController; @@ -17,11 +45,12 @@ import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository. import com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractFxmlWindowController; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog.AbstractModalDialog; import com.oracle.javafx.scenebuilder.kit.library.user.UserLibrary; +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase; import javafx.collections.FXCollections; import javafx.collections.ObservableList; import javafx.fxml.FXML; import javafx.scene.control.ListView; -import javafx.stage.Window; +import javafx.stage.Stage; import javafx.stage.WindowEvent; import java.io.File; @@ -33,6 +62,7 @@ import java.nio.file.Paths; import java.util.Arrays; import java.util.List; import java.util.Locale; +import java.util.function.Consumer; import java.util.logging.Level; import java.util.logging.Logger; import java.util.stream.Collectors; @@ -52,20 +82,29 @@ public class LibraryDialogController extends AbstractFxmlWindowController { @FXML private Button manageButton; - private final DocumentWindowController documentWindowController; - private final EditorController editorController; private final UserLibrary userLibrary; - private final Window owner; + private final Stage owner; private ObservableList<DialogListItem> listItems; + + private Runnable onAddJar; + private Consumer<Path> onEditFXML; + + private String userM2Repository; + private String tempM2Repository; + + private final PreferencesControllerBase preferencesControllerBase; - public LibraryDialogController(EditorController editorController, DocumentWindowController documentWindowController, Window owner) { + public LibraryDialogController(EditorController editorController, String userM2Repository, String tempM2Repository, + PreferencesControllerBase preferencesController, Stage owner) { super(LibraryPanelController.class.getResource("LibraryDialog.fxml"), I18N.getBundle(), owner); //NOI18N - this.documentWindowController = documentWindowController; this.owner = owner; this.editorController = editorController; this.userLibrary = (UserLibrary) editorController.getLibrary(); + this.userM2Repository = userM2Repository; + this.tempM2Repository = tempM2Repository; + this.preferencesControllerBase = preferencesController; } @Override @@ -115,7 +154,7 @@ public class LibraryDialogController extends AbstractFxmlWindowController { } // main artifacts - listItems.addAll(PreferencesController.getSingleton().getMavenPreferences().getArtifactsCoordinates() + listItems.addAll(preferencesControllerBase.getMavenPreferences().getArtifactsCoordinates() .stream() .map(c -> new ArtifactDialogListItem(this, c)) .collect(Collectors.toList())); @@ -139,21 +178,24 @@ public class LibraryDialogController extends AbstractFxmlWindowController { @FXML private void manage() { - RepositoryManagerController repositoryDialogController = new RepositoryManagerController(editorController, documentWindowController, getStage()); - SBSettings.setWindowIcon(repositoryDialogController.getStage()); + RepositoryManagerController repositoryDialogController = new RepositoryManagerController(editorController, + userM2Repository, tempM2Repository, preferencesControllerBase, getStage()); repositoryDialogController.openWindow(); } @FXML private void addJar() { - documentWindowController.onImportJarFxml(getStage()); +// documentWindowController.onImportJarFxml(getStage()); + if (onAddJar != null) { + onAddJar.run(); + } loadLibraryList(); } @FXML private void addRelease() { - SearchMavenDialogController mavenDialogController = new SearchMavenDialogController(editorController, documentWindowController, getStage()); - SBSettings.setWindowIcon(mavenDialogController.getStage()); + SearchMavenDialogController mavenDialogController = new SearchMavenDialogController(editorController, + userM2Repository, tempM2Repository, preferencesControllerBase, getStage()); mavenDialogController.openWindow(); mavenDialogController.getStage().showingProperty().addListener(new InvalidationListener() { @Override @@ -168,8 +210,8 @@ public class LibraryDialogController extends AbstractFxmlWindowController { @FXML private void addManually() { - MavenDialogController mavenDialogController = new MavenDialogController(editorController, documentWindowController, getStage()); - SBSettings.setWindowIcon(mavenDialogController.getStage()); + MavenDialogController mavenDialogController = new MavenDialogController(editorController, userM2Repository, + tempM2Repository, preferencesControllerBase, getStage()); mavenDialogController.openWindow(); mavenDialogController.getStage().showingProperty().addListener(new InvalidationListener() { @Override @@ -214,8 +256,7 @@ public class LibraryDialogController extends AbstractFxmlWindowController { listItems.remove(item); } } else if (dialogListItem instanceof ArtifactDialogListItem) { - PreferencesController.getSingleton() - .removeArtifact(((ArtifactDialogListItem) dialogListItem).getCoordinates()); + preferencesControllerBase.removeArtifact(((ArtifactDialogListItem) dialogListItem).getCoordinates()); listItems.remove(dialogListItem); } } catch (IOException x) { @@ -230,25 +271,28 @@ public class LibraryDialogController extends AbstractFxmlWindowController { if (Files.exists(item.getFilePath())) { if (isJarPath(item.getFilePath())) { final ImportWindowController iwc = new ImportWindowController( - new LibraryPanelController(editorController), - Arrays.asList(item.getFilePath().toFile()), getStage()); + new LibraryPanelController(editorController, preferencesControllerBase.getMavenPreferences()), + Arrays.asList(item.getFilePath().toFile()), preferencesControllerBase.getMavenPreferences(), + getStage()); iwc.setToolStylesheet(editorController.getToolStylesheet()); // See comment in OnDragDropped handle set in method startListeningToDrop. - SBSettings.setWindowIcon(iwc.getStage()); AbstractModalDialog.ButtonID userChoice = iwc.showAndWait(); if (userChoice == AbstractModalDialog.ButtonID.OK) { logInfoMessage("log.user.maven.updated", item); } } else { - if (SceneBuilderApp.getSingleton().lookupUnusedDocumentWindowController() != null) { - closeWindow(); +// if (SceneBuilderApp.getSingleton().lookupUnusedDocumentWindowController() != null) { +// closeWindow(); +// } +// SceneBuilderApp.getSingleton().performOpenRecent(documentWindowController, +// item.getFilePath().toFile()); + if (onEditFXML != null) { + onEditFXML.accept(item.getFilePath()); } - SceneBuilderApp.getSingleton().performOpenRecent(documentWindowController, - item.getFilePath().toFile()); } } } else if (dialogListItem instanceof ArtifactDialogListItem) { - MavenPreferences mavenPreferences = PreferencesController.getSingleton().getMavenPreferences(); + MavenPreferences mavenPreferences = preferencesControllerBase.getMavenPreferences(); MavenArtifact mavenArtifact = mavenPreferences .getRecordArtifact(((ArtifactDialogListItem) dialogListItem).getCoordinates()) .getMavenArtifact(); @@ -256,10 +300,10 @@ public class LibraryDialogController extends AbstractFxmlWindowController { List<String> filter = mavenPreferences.getArtifactFilter(mavenArtifact); final ImportWindowController iwc = new ImportWindowController( - new LibraryPanelController(editorController), - files, getStage(), false, filter); + new LibraryPanelController(editorController, preferencesControllerBase.getMavenPreferences()), + files, preferencesControllerBase.getMavenPreferences(), getStage(), + false, filter); iwc.setToolStylesheet(editorController.getToolStylesheet()); - SBSettings.setWindowIcon(iwc.getStage()); AbstractModalDialog.ButtonID userChoice = iwc.showAndWait(); if (userChoice == AbstractModalDialog.ButtonID.OK) { mavenArtifact.setFilter(iwc.getNewExcludedItems()); @@ -281,11 +325,19 @@ public class LibraryDialogController extends AbstractFxmlWindowController { userLibrary.stopWatching(); // Update record artifact - final PreferencesRecordArtifact recordArtifact = PreferencesController.getSingleton(). + final PreferencesRecordArtifact recordArtifact = preferencesControllerBase. getRecordArtifact(mavenArtifact); recordArtifact.writeToJavaPreferences(); userLibrary.startWatching(); } + + public void setOnAddJar(Runnable onAddJar) { + this.onAddJar = onAddJar; + } + + public void setOnEditFXML(Consumer<Path> onEditFXML) { + this.onEditFXML = onEditFXML; + } } \ No newline at end of file diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/LibraryDialogListCell.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/LibraryDialogListCell.java index 3d95851acf9e9fa8d6eee6ffb6b26604f0771fd6..7829049beeb8e4519c4ad3a8169298a424c05d9d 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/LibraryDialogListCell.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/LibraryDialogListCell.java @@ -1,6 +1,38 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + package com.oracle.javafx.scenebuilder.kit.editor.panel.library.manager; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.images.ImageUtils; import javafx.geometry.Pos; import javafx.scene.control.Button; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/LibraryDialogListItem.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/LibraryDialogListItem.java index 9de06142fb3ac59f3492bff1d92930db25e41504..a16821b49179df51bbe21340cb4cdb624e0e2794 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/LibraryDialogListItem.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/manager/LibraryDialogListItem.java @@ -1,3 +1,35 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + package com.oracle.javafx.scenebuilder.kit.editor.panel.library.manager; import java.nio.file.Path; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/MavenArtifact.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/MavenArtifact.java index 934011c0eab666319f2a8a17fc7382d7c0e48282..76c8db6648b5cb8a6dd5bddf722616d881db4a27 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/MavenArtifact.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/MavenArtifact.java @@ -1,3 +1,35 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven; import java.util.Objects; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/MavenDialogController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/MavenDialogController.java index 7347ea4498b2570b2947085b6101b686ef24977f..e214a40f98a47211b3e9b845825ea08f9f873207 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/MavenDialogController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/MavenDialogController.java @@ -1,10 +1,38 @@ +/* + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven; -import com.oracle.javafx.scenebuilder.app.DocumentWindowController; -import com.oracle.javafx.scenebuilder.app.preferences.PreferencesController; -import com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordArtifact; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.ImportWindowController; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.LibraryPanelController; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractFxmlWindowController; @@ -15,6 +43,9 @@ import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; import java.util.stream.Stream; + +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase; +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesRecordArtifact; import javafx.beans.value.ChangeListener; import javafx.collections.FXCollections; import javafx.collections.ObservableList; @@ -29,6 +60,7 @@ import javafx.scene.control.ProgressIndicator; import javafx.scene.control.TextField; import javafx.scene.control.Tooltip; import javafx.stage.Modality; +import javafx.stage.Stage; import javafx.stage.Window; import javafx.stage.WindowEvent; import org.eclipse.aether.artifact.Artifact; @@ -57,8 +89,6 @@ public class MavenDialogController extends AbstractFxmlWindowController { @FXML private Button installButton; - private final DocumentWindowController documentWindowController; - private final UserLibrary userLibrary; private MavenRepositorySystem maven; @@ -66,6 +96,7 @@ public class MavenDialogController extends AbstractFxmlWindowController { private Service<ObservableList<Version>> versionsService; private final Service<MavenArtifact> installService; private final Window owner; + private final EditorController editorController; private final ChangeListener<Version> comboBoxListener = (obs, ov, nv) -> { remoteRepository = maven.getRemoteRepository(nv); @@ -76,16 +107,19 @@ public class MavenDialogController extends AbstractFxmlWindowController { callVersionsService(); } }; + + private final PreferencesControllerBase preferencesControllerBase; - - public MavenDialogController(EditorController editorController, DocumentWindowController documentWindowController, - Window owner) { + public MavenDialogController(EditorController editorController, String userM2Repository, + String tempM2Repository, PreferencesControllerBase preferencesControllerBase, Stage owner) { super(LibraryPanelController.class.getResource("MavenDialog.fxml"), I18N.getBundle(), owner); //NOI18N - this.documentWindowController = documentWindowController; this.userLibrary = (UserLibrary) editorController.getLibrary(); this.owner = owner; + this.editorController = editorController; + this.preferencesControllerBase = preferencesControllerBase; - maven = new MavenRepositorySystem(false); + maven = new MavenRepositorySystem(false, userM2Repository, tempM2Repository, + preferencesControllerBase.getRepositoryPreferences()); versionsService = new Service<ObservableList<Version>>() { @Override @@ -138,8 +172,6 @@ public class MavenDialogController extends AbstractFxmlWindowController { installService.stateProperty().addListener((obs, ov, nv) -> { if (nv.equals(Worker.State.SUCCEEDED)) { final MavenArtifact mavenArtifact = installService.getValue(); - final PreferencesController pc = PreferencesController.getSingleton(); - if (mavenArtifact == null || mavenArtifact.getPath().isEmpty() || !new File(mavenArtifact.getPath()).exists()) { logInfoMessage("log.user.maven.failed", getArtifactCoordinates()); @@ -148,16 +180,17 @@ public class MavenDialogController extends AbstractFxmlWindowController { files.add(new File(mavenArtifact.getPath())); if (!mavenArtifact.getDependencies().isEmpty()) { files.addAll(Stream - .of(mavenArtifact.getDependencies().split(":")) + .of(mavenArtifact.getDependencies().split(File.pathSeparator)) .map(File::new) .collect(Collectors.toList())); } final ImportWindowController iwc = new ImportWindowController( - new LibraryPanelController(editorController), - files, installButton.getScene().getWindow(), false, - pc.getMavenPreferences().getArtifactsFilter()); + new LibraryPanelController(editorController, preferencesControllerBase.getMavenPreferences()), + files, preferencesControllerBase.getMavenPreferences(), + (Stage)installButton.getScene().getWindow(), false, + preferencesControllerBase.getMavenPreferences().getArtifactsFilter()); iwc.setToolStylesheet(editorController.getToolStylesheet()); ButtonID userChoice = iwc.showAndWait(); if (userChoice == ButtonID.OK) { @@ -272,7 +305,7 @@ public class MavenDialogController extends AbstractFxmlWindowController { } private void logInfoMessage(String key, Object... args) { - documentWindowController.getEditorController().getMessageLog().logInfoMessage(key, I18N.getBundle(), args); + editorController.getMessageLog().logInfoMessage(key, I18N.getBundle(), args); } private String getArtifactCoordinates() { @@ -288,7 +321,7 @@ public class MavenDialogController extends AbstractFxmlWindowController { userLibrary.stopWatching(); // Update record artifact - final PreferencesRecordArtifact recordArtifact = PreferencesController.getSingleton(). + final PreferencesRecordArtifact recordArtifact = preferencesControllerBase. getRecordArtifact(mavenArtifact); recordArtifact.writeToJavaPreferences(); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/MavenRepositorySystem.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/MavenRepositorySystem.java index 3bdf8b060782fabdd4c48962338b7e9141444172..4bf55929bb4fa54aa7f087e7c132d02a1c2ef1b7 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/MavenRepositorySystem.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/MavenRepositorySystem.java @@ -1,9 +1,37 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository.Repository; -import com.oracle.javafx.scenebuilder.app.AppPlatform; -import com.oracle.javafx.scenebuilder.app.i18n.I18N; -import com.oracle.javafx.scenebuilder.app.preferences.PreferencesController; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.preset.MavenPresets; import java.io.File; import java.io.IOException; @@ -16,6 +44,8 @@ import java.util.Objects; import java.util.regex.Matcher; import java.util.stream.Collectors; import java.util.stream.Stream; + +import com.oracle.javafx.scenebuilder.kit.preferences.RepositoryPreferences; import org.apache.commons.lang3.exception.ExceptionUtils; import org.apache.maven.repository.internal.MavenRepositorySystemUtils; import org.codehaus.plexus.util.FileUtils; @@ -73,9 +103,17 @@ public class MavenRepositorySystem { private final boolean onlyReleases; private BasicRepositoryConnectorFactory basicRepositoryConnectorFactory; + + private final String userM2Repository; + private final String tempM2Repository; + private final RepositoryPreferences repositoryPreferences; - public MavenRepositorySystem(boolean onlyReleases) { + public MavenRepositorySystem(boolean onlyReleases, String userM2Repository, String tempM2Repository, + RepositoryPreferences repositoryPreferences) { this.onlyReleases = onlyReleases; + this.userM2Repository = userM2Repository; + this.tempM2Repository = tempM2Repository; + this.repositoryPreferences = repositoryPreferences; initRepositorySystem(); } @@ -87,7 +125,7 @@ public class MavenRepositorySystem { locator.setErrorHandler(new DefaultServiceLocator.ErrorHandler() { @Override public void serviceCreationFailed(Class<?> type, Class<?> impl, Throwable exception) { - throw new RuntimeException(I18N.getString("maven.dialog.creation.failed"), exception); + throw new RuntimeException(exception); } }); @@ -98,7 +136,7 @@ public class MavenRepositorySystem { session = MavenRepositorySystemUtils.newSession(); - localRepo = new LocalRepository(new File(AppPlatform.getUserM2Repository())); + localRepo = new LocalRepository(new File(userM2Repository)); session.setLocalRepositoryManager(system.newLocalRepositoryManager(session, localRepo)); // TODO: log file transfers @@ -132,7 +170,7 @@ public class MavenRepositorySystem { (onlyReleases && !r.getId().toUpperCase(Locale.ROOT).contains("SNAPSHOT"))) .map(this::createRepository) .collect(Collectors.toList()); - list.addAll(PreferencesController.getSingleton().getRepositoryPreferences().getRepositories().stream() + list.addAll(repositoryPreferences.getRepositories().stream() .filter(r -> !onlyReleases || (onlyReleases && !r.getId().toUpperCase(Locale.ROOT).contains("SNAPSHOT"))) .map(this::createRepository) @@ -214,7 +252,7 @@ public class MavenRepositorySystem { public String resolveArtifacts(RemoteRepository remoteRepository, Artifact... artifact) { - LocalRepository localTmpRepo = new LocalRepository(AppPlatform.getTempM2Repository()); + LocalRepository localTmpRepo = new LocalRepository(tempM2Repository); session.setLocalRepositoryManager(system.newLocalRepositoryManager(session, localTmpRepo)); List<Artifact> artifacts = Stream.of(artifact) @@ -269,7 +307,7 @@ public class MavenRepositorySystem { } catch (ArtifactResolutionException ex) { } try { - FileUtils.deleteDirectory(AppPlatform.getTempM2Repository()); + FileUtils.deleteDirectory(tempM2Repository); } catch (IOException ex) { } return absolutePath; @@ -290,7 +328,7 @@ public class MavenRepositorySystem { return artifactResults.stream() .skip(1) // exclude jar itself .map(a -> a.getArtifact().getFile().getAbsolutePath()) - .collect(Collectors.joining(":")); + .collect(Collectors.joining(File.pathSeparator)); } catch (DependencyResolutionException ex) { } return ""; } @@ -330,5 +368,4 @@ public class MavenRepositorySystem { return ""; } - } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/preset/MavenPresets.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/preset/MavenPresets.java index 6dff161e5ee9054c77dfcff8124b86741601380c..d2fd9c6814e666b3d08eea937dfb0c7eab69b70a 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/preset/MavenPresets.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/preset/MavenPresets.java @@ -1,3 +1,34 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.preset; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository.Repository; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/CustomRepositoryListItem.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/CustomRepositoryListItem.java index 10f515addff40d5ba335d28788b2f9294c6fc65c..52ea83bb91b7dd0ce6448d20a3b963426174f7cd 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/CustomRepositoryListItem.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/CustomRepositoryListItem.java @@ -1,3 +1,34 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository; public class CustomRepositoryListItem extends RepositoryListItem { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/Repository.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/Repository.java index 659c0dfc456bbd2240c0780815e4f6013baa49a7..a79a99bf5868e883bf7a15a0eed75529a39b8c02 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/Repository.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/Repository.java @@ -1,3 +1,34 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository; public class Repository { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/RepositoryListItem.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/RepositoryListItem.java index 8169795802bcb356926d07f5ef4c88c201ed4ed5..0cc95762b58d5e28a7b4722f0bf6d7af4d25f403 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/RepositoryListItem.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/RepositoryListItem.java @@ -1,3 +1,34 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository; public class RepositoryListItem { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/RepositoryManagerController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/RepositoryManagerController.java index a047a9ace38677f28593936548af8b0060e98baa..29b883c3ee73eb5e0f21e78e55afa7ad3a9806bd 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/RepositoryManagerController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/RepositoryManagerController.java @@ -1,17 +1,48 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository; -import com.oracle.javafx.scenebuilder.app.DocumentWindowController; -import com.oracle.javafx.scenebuilder.app.preferences.PreferencesController; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.LibraryPanelController; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.preset.MavenPresets; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository.dialog.RepositoryDialogController; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractFxmlWindowController; +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase; import javafx.collections.FXCollections; import javafx.collections.ObservableList; import javafx.fxml.FXML; import javafx.scene.control.ListView; +import javafx.stage.Stage; import javafx.stage.Window; import javafx.stage.WindowEvent; @@ -27,19 +58,25 @@ public class RepositoryManagerController extends AbstractFxmlWindowController { @FXML private ListView<RepositoryListItem> repositoryListView; - - private final DocumentWindowController documentWindowController; private final EditorController editorController; - private final Window owner; - + private final Stage owner; + private ObservableList<RepositoryListItem> listItems; + + private final String userM2Repository; + private final String tempM2Repository; + private final PreferencesControllerBase preferencesControllerBase; - public RepositoryManagerController(EditorController editorController, DocumentWindowController documentWindowController, Window owner) { + public RepositoryManagerController(EditorController editorController, String userM2Repository, + String tempM2Repository, PreferencesControllerBase preferencesControllerBase, + Stage owner) { super(LibraryPanelController.class.getResource("RepositoryManager.fxml"), I18N.getBundle(), owner); //NOI18N - this.documentWindowController = documentWindowController; this.owner = owner; this.editorController = editorController; + this.userM2Repository = userM2Repository; + this.tempM2Repository = tempM2Repository; + this.preferencesControllerBase = preferencesControllerBase; } @Override @@ -75,7 +112,7 @@ public class RepositoryManagerController extends AbstractFxmlWindowController { repositoryListView.setCellFactory(param -> new RepositoryManagerListCell()); // custom repositories - listItems.addAll(PreferencesController.getSingleton().getRepositoryPreferences().getRepositories() + listItems.addAll(preferencesControllerBase.getRepositoryPreferences().getRepositories() .stream() .map(r -> new CustomRepositoryListItem(this, r)) .collect(Collectors.toList())); @@ -99,7 +136,8 @@ public class RepositoryManagerController extends AbstractFxmlWindowController { } private void repositoryDialog(Repository repository) { - RepositoryDialogController repositoryDialogController = new RepositoryDialogController(editorController, getStage()); + RepositoryDialogController repositoryDialogController = new RepositoryDialogController(editorController, + userM2Repository, tempM2Repository, preferencesControllerBase, getStage()); repositoryDialogController.openWindow(); repositoryDialogController.setRepository(repository); repositoryDialogController.getStage().showingProperty().addListener(new InvalidationListener() { @@ -120,7 +158,7 @@ public class RepositoryManagerController extends AbstractFxmlWindowController { public void delete(RepositoryListItem item) { // Remove repository logInfoMessage("log.user.repository.removed", item.getRepository().getId()); - PreferencesController.getSingleton().removeRepository(item.getRepository().getId()); + preferencesControllerBase.removeRepository(item.getRepository().getId()); loadRepositoryList(); } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/RepositoryManagerListCell.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/RepositoryManagerListCell.java index 9b5a955afca1b3ff01df390e8001728b4feea24d..2c9d445f64824b2167c4e8bd4d2c783ce237fca9 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/RepositoryManagerListCell.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/RepositoryManagerListCell.java @@ -1,6 +1,37 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.images.ImageUtils; import javafx.geometry.Pos; import javafx.scene.control.Button; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/dialog/RepositoryDialogController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/dialog/RepositoryDialogController.java index 4cf0447109f48df8ceee017a72c423ccfdeca807..7a5187292c866d53a148ea9e49da1013de20050f 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/dialog/RepositoryDialogController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/repository/dialog/RepositoryDialogController.java @@ -1,13 +1,44 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository.dialog; -import com.oracle.javafx.scenebuilder.app.preferences.PreferencesController; -import com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordRepository; +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesRecordRepository; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.LibraryPanelController; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.MavenRepositorySystem; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository.Repository; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractFxmlWindowController; +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase; import javafx.concurrent.Service; import javafx.concurrent.Task; import javafx.concurrent.Worker; @@ -21,6 +52,7 @@ import javafx.scene.control.TextField; import javafx.scene.control.Tooltip; import javafx.scene.layout.AnchorPane; import javafx.stage.Modality; +import javafx.stage.Stage; import javafx.stage.Window; import javafx.stage.WindowEvent; @@ -76,11 +108,20 @@ public class RepositoryDialogController extends AbstractFxmlWindowController { private MavenRepositorySystem maven; private Repository oldRepository; private final Service<String> testService; + + private final String userM2Repository; + private final String tempM2Repository; + private final PreferencesControllerBase preferencesControllerBase; - public RepositoryDialogController(EditorController editorController, Window owner) { + public RepositoryDialogController(EditorController editorController, String userM2Repository, + String tempM2Repository, PreferencesControllerBase preferencesControllerBase, + Stage owner) { super(LibraryPanelController.class.getResource("RepositoryDialog.fxml"), I18N.getBundle(), owner); //NOI18N this.owner = owner; this.editorController = editorController; + this.userM2Repository = userM2Repository; + this.tempM2Repository = tempM2Repository; + this.preferencesControllerBase = preferencesControllerBase; testService = new Service<String>() { @Override @@ -152,7 +193,7 @@ public class RepositoryDialogController extends AbstractFxmlWindowController { typeTextfield.getText(), urlTextfield.getText()); } if (oldRepository != null) { - PreferencesController.getSingleton().removeRepository(oldRepository.getId()); + preferencesControllerBase.removeRepository(oldRepository.getId()); } updatePreferences(repository); logInfoMessage(oldRepository == null ? "log.user.repository.added" : @@ -180,7 +221,8 @@ public class RepositoryDialogController extends AbstractFxmlWindowController { passwordTextfield.disableProperty().bind(privateCheckBox.selectedProperty().not()); progress.visibleProperty().bind(testService.runningProperty()); resultLabel.setText(""); - maven = new MavenRepositorySystem(false); + maven = new MavenRepositorySystem(false, userM2Repository, tempM2Repository, + preferencesControllerBase.getRepositoryPreferences()); } private void logInfoMessage(String key, Object... args) { @@ -193,7 +235,7 @@ public class RepositoryDialogController extends AbstractFxmlWindowController { } // Update record repository - final PreferencesRecordRepository recordRepository = PreferencesController.getSingleton(). + final PreferencesRecordRepository recordRepository = preferencesControllerBase. getRecordRepository(repository); recordRepository.writeToJavaPreferences(); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/JcenterSearch.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/JcenterSearch.java index 2ffe6a4a61ba755a4c863f33c699f7bbe7192277..0822d653ca2d21bdc190cfebd0d0723171800c5c 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/JcenterSearch.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/JcenterSearch.java @@ -1,3 +1,34 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.search; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.preset.MavenPresets; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/LocalSearch.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/LocalSearch.java index 1b83c8e61c30ccc3bd8868b6a3057aff1ca65398..cce72c7ffc3a5bf7d50ec58441a1bff3fab5c2d8 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/LocalSearch.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/LocalSearch.java @@ -1,6 +1,36 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.search; -import com.oracle.javafx.scenebuilder.app.AppPlatform; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.preset.MavenPresets; import java.io.File; import java.io.IOException; @@ -17,8 +47,8 @@ public class LocalSearch implements Search { private final String m2; - public LocalSearch() { - m2 = AppPlatform.getUserM2Repository() + File.separator; + public LocalSearch(String userM2Repostory) { + m2 = userM2Repostory + File.separator; } @Override diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/MavenSearch.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/MavenSearch.java index 44c1f93745e445660322c4fe659a8f1233c6ccd4..ef46580c83fcab89d65f315e90e9de0e0c8fc952 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/MavenSearch.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/MavenSearch.java @@ -1,3 +1,34 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.search; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.preset.MavenPresets; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/NexusSearch.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/NexusSearch.java index d8c39f049e819022bfe2c6545728a4291d9f151d..e79b0cddd5cc07d8dfe1a68e42503a0a9a2e39b9 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/NexusSearch.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/NexusSearch.java @@ -1,3 +1,34 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.search; import java.io.IOException; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/Search.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/Search.java index 2d0532188a13556c0beffdf2dc5ae6ec63e27ac5..d4dc02156ead2712a907ddfb2e0743324568a1a5 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/Search.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/Search.java @@ -1,3 +1,34 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.search; import java.util.List; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/SearchMavenDialogController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/SearchMavenDialogController.java index 745b3b01839cb1d4d951660ec7bb742423759b3e..cc6962c3a36e61fcd4396aaededda445ba18e3f5 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/SearchMavenDialogController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/SearchMavenDialogController.java @@ -1,10 +1,38 @@ +/* + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.search; -import com.oracle.javafx.scenebuilder.app.DocumentWindowController; -import com.oracle.javafx.scenebuilder.app.preferences.PreferencesController; -import com.oracle.javafx.scenebuilder.app.preferences.PreferencesRecordArtifact; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.ImportWindowController; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.LibraryPanelController; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.MavenArtifact; @@ -19,6 +47,9 @@ import java.util.List; import java.util.Map; import java.util.stream.Collectors; import java.util.stream.Stream; + +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase; +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesRecordArtifact; import javafx.application.Platform; import javafx.beans.binding.Bindings; import javafx.collections.ListChangeListener; @@ -34,6 +65,7 @@ import javafx.scene.control.ProgressIndicator; import javafx.scene.control.TextField; import javafx.scene.control.Tooltip; import javafx.stage.Modality; +import javafx.stage.Stage; import javafx.stage.Window; import javafx.stage.WindowEvent; import org.eclipse.aether.artifact.Artifact; @@ -65,7 +97,7 @@ public class SearchMavenDialogController extends AbstractFxmlWindowController { @FXML private Button installButton; - private final DocumentWindowController documentWindowController; + private final EditorController editorController; private final UserLibrary userLibrary; @@ -74,18 +106,22 @@ public class SearchMavenDialogController extends AbstractFxmlWindowController { private final SearchService searchService; private final Service<MavenArtifact> installService; private DefaultArtifact artifact; - private final Window owner; + private final Stage owner; + private final PreferencesControllerBase preferencesControllerBase; - public SearchMavenDialogController(EditorController editorController, DocumentWindowController documentWindowController, - Window owner) { + public SearchMavenDialogController(EditorController editorController, String userM2Repository, + String tempM2Repository, PreferencesControllerBase preferencesControllerBase, + Stage owner) { super(LibraryPanelController.class.getResource("SearchMavenDialog.fxml"), I18N.getBundle(), owner); //NOI18N - this.documentWindowController = documentWindowController; this.userLibrary = (UserLibrary) editorController.getLibrary(); this.owner = owner; + this.editorController = editorController; + this.preferencesControllerBase = preferencesControllerBase; - maven = new MavenRepositorySystem(true); // only releases + maven = new MavenRepositorySystem(true, userM2Repository, tempM2Repository, + preferencesControllerBase.getRepositoryPreferences()); // only releases - searchService = new SearchService(); + searchService = new SearchService(userM2Repository); searchService.getResult().addListener((ListChangeListener.Change<? extends Artifact> c) -> { while (c.next()) { resultsListView.getItems().setAll(searchService.getResult() @@ -111,7 +147,6 @@ public class SearchMavenDialogController extends AbstractFxmlWindowController { if (ov.equals(Worker.State.RUNNING)) { if (nv.equals(Worker.State.SUCCEEDED)) { final MavenArtifact mavenArtifact = installService.getValue(); - final PreferencesController pc = PreferencesController.getSingleton(); if (mavenArtifact == null || mavenArtifact.getPath().isEmpty() || !new File(mavenArtifact.getPath()).exists()) { @@ -121,16 +156,18 @@ public class SearchMavenDialogController extends AbstractFxmlWindowController { files.add(new File(mavenArtifact.getPath())); if (!mavenArtifact.getDependencies().isEmpty()) { files.addAll(Stream - .of(mavenArtifact.getDependencies().split(":")) + .of(mavenArtifact.getDependencies().split(File.pathSeparator)) .map(File::new) .collect(Collectors.toList())); } final ImportWindowController iwc = new ImportWindowController( - new LibraryPanelController(editorController), - files, installButton.getScene().getWindow(), false, - pc.getMavenPreferences().getArtifactsFilter()); + new LibraryPanelController(editorController, + preferencesControllerBase.getMavenPreferences()), + files, preferencesControllerBase.getMavenPreferences(), + (Stage) installButton.getScene().getWindow(), false, + preferencesControllerBase.getMavenPreferences().getArtifactsFilter()); iwc.setToolStylesheet(editorController.getToolStylesheet()); ButtonID userChoice = iwc.showAndWait(); if (userChoice == ButtonID.OK) { @@ -276,7 +313,7 @@ public class SearchMavenDialogController extends AbstractFxmlWindowController { } private void logInfoMessage(String key, Object... args) { - documentWindowController.getEditorController().getMessageLog().logInfoMessage(key, I18N.getBundle(), args); + editorController.getMessageLog().logInfoMessage(key, I18N.getBundle(), args); } private String getArtifactCoordinates() { @@ -295,7 +332,7 @@ public class SearchMavenDialogController extends AbstractFxmlWindowController { userLibrary.stopWatching(); // Update record artifact - final PreferencesRecordArtifact recordArtifact = PreferencesController.getSingleton(). + final PreferencesRecordArtifact recordArtifact = preferencesControllerBase. getRecordArtifact(mavenArtifact); recordArtifact.writeToJavaPreferences(); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/SearchService.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/SearchService.java index 55db27311b1f814511796e89a330d4fbbf385688..f2d70cd4210e63f8c6ec44b0a8c24a35417dfd4a 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/SearchService.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/library/maven/search/SearchService.java @@ -1,3 +1,34 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ package com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.search; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.preset.MavenPresets; @@ -37,11 +68,14 @@ public class SearchService extends Service<Void> { private final BooleanProperty searching; private List<Task<ObservableList<DefaultArtifact>>> tasks; + + private final String userM2Repository; - public SearchService() { + public SearchService(String userM2Repository) { setExecutor(exec); result = FXCollections.observableArrayList(); searching = new SimpleBooleanProperty(); + this.userM2Repository = userM2Repository; } public void setQuery(String query) { @@ -79,7 +113,7 @@ public class SearchService extends Service<Void> { createSearchTask(new NexusSearch(MavenPresets.SONATYPE, "http://oss.sonatype.org", "", "")), createSearchTask(new JcenterSearch("", "")), createSearchTask(new NexusSearch(MavenPresets.GLUON_NEXUS, "http://nexus.gluonhq.com/nexus", "", "")), - createSearchTask(new LocalSearch())); + createSearchTask(new LocalSearch(userM2Repository))); AtomicInteger count = new AtomicInteger(); tasks.forEach(task -> diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractFxmlController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractFxmlController.java index 2127bd8daffd2540574221491d7faa3b724e2322..03c4358bd13651c1e61cecfc7351ede74dddd023 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractFxmlController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractFxmlController.java @@ -32,7 +32,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.util; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; import java.io.IOException; import java.net.URL; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractFxmlWindowController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractFxmlWindowController.java index fe5c13b7166f098854da521b9527bbc3eb8e8ca5..d6508ead14fdb19b7e1e311666177ef1ae2f11a7 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractFxmlWindowController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractFxmlWindowController.java @@ -36,6 +36,7 @@ import java.net.URL; import java.util.ResourceBundle; import javafx.fxml.FXMLLoader; import javafx.scene.layout.Region; +import javafx.stage.Stage; import javafx.stage.Window; /** @@ -59,14 +60,14 @@ public abstract class AbstractFxmlWindowController extends AbstractWindowControl this(fxmlURL, resources, null, sizeToScene); } - public AbstractFxmlWindowController(URL fxmlURL, ResourceBundle resources, Window owner) { + public AbstractFxmlWindowController(URL fxmlURL, ResourceBundle resources, Stage owner) { super(owner); assert fxmlURL != null : "Check fxml path given to " + getClass().getSimpleName(); this.fxmlURL = fxmlURL; this.resources = resources; } - public AbstractFxmlWindowController(URL fxmlURL, ResourceBundle resources, Window owner, boolean sizeToScene) { + public AbstractFxmlWindowController(URL fxmlURL, ResourceBundle resources, Stage owner, boolean sizeToScene) { super(owner, sizeToScene); assert fxmlURL != null : "Check fxml path given to " + getClass().getSimpleName(); this.fxmlURL = fxmlURL; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractPanelController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractPanelController.java index af910f8fdfb51eea322d6119f213820622730229..1d97ce9a7a283910ddbdf11a29f7d337f2e41f40 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractPanelController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractPanelController.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -34,7 +35,6 @@ package com.oracle.javafx.scenebuilder.kit.editor.panel.util; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; -import java.util.Collection; import java.util.List; import java.util.logging.Level; import java.util.logging.Logger; @@ -87,39 +87,40 @@ public abstract class AbstractPanelController { public EditorController getEditorController() { return editorController; } - + public void setEditorController(EditorController editorController) { - assert editorController != null; - EditorController oldEditorController = this.editorController; - if (oldEditorController == editorController) { - return; - } - if (oldEditorController != null) { - stopListeningToEditorSelection(); - stopListeningToJobManagerRevision(); - stopListeningToFxomDocumentChange(); - stopListeningToToolStylesheet(); - - if (oldEditorController.getFxomDocument() != null) { - stopListeningToFxomDocumentSceneGraphRevision(); - stopListeningToFxomDocumentCssRevision(); - } - } - - this.editorController = editorController; - startListeningToEditorSelection(); - startListeningToJobManagerRevision(); - startListeningToFxomDocumentChange(); - startListeningToToolStylesheet(); - - if (editorController.getFxomDocument() != null) { - startListeningToFxomDocumentSceneGraphRevision(); - startListeningToFxomDocumentCssRevision(); - } - - if (oldEditorController != null) { - editorSelectionDidChange(); - } + assert editorController != null; + EditorController old = this.editorController; + if (old == editorController) { + return; + } + + if (old != null) { + stopListeningToEditorSelection(); + stopListeningToJobManagerRevision(); + stopListeningToFxomDocumentChange(); + stopListeningToToolStylesheet(); + + if (old.getFxomDocument() != null) { + stopListeningToFxomDocumentSceneGraphRevision(); + stopListeningToFxomDocumentCssRevision(); + } + } + + this.editorController = editorController; + startListeningToEditorSelection(); + startListeningToJobManagerRevision(); + startListeningToFxomDocumentChange(); + startListeningToToolStylesheet(); + + if (editorController.getFxomDocument() != null) { + startListeningToFxomDocumentSceneGraphRevision(); + startListeningToFxomDocumentCssRevision(); + } + + if (old != null) { + editorSelectionDidChange(); + } } /** @@ -246,7 +247,7 @@ public abstract class AbstractPanelController { }; private final ChangeListener<FXOMDocument> fxomDocumentChangeListener - = (ov, od, nd) -> { + = (observable, od, nd) -> { assert editorController.getFxomDocument() == nd; if (od != null) { od.sceneGraphRevisionProperty().removeListener(fxomDocumentRevisionListener); @@ -264,7 +265,13 @@ public abstract class AbstractPanelController { }; private final ChangeListener<String> toolStylesheetListener - = (ov, od, nd) -> toolStylesheetDidChange(od); + = (observable, oldValue, newValue) -> { + try { + toolStylesheetDidChange(newValue); + } catch(RuntimeException x) { + LOG.log(Level.SEVERE, "Bug", x); //NOI18N + } + }; /** * Setup a listener which invokes {@link #editorSelectionDidChange} each @@ -314,45 +321,38 @@ public abstract class AbstractPanelController { editorController.getJobManager().revisionProperty().removeListener(jobManagerRevisionListener); } - protected final void startListeningToFxomDocumentChange() { editorController.fxomDocumentProperty().addListener(fxomDocumentChangeListener); } - protected final void stopListeningToFxomDocumentChange() { editorController.fxomDocumentProperty().removeListener(fxomDocumentChangeListener); } + protected final void startListeningToToolStylesheet() { + editorController.toolStylesheetProperty().addListener(toolStylesheetListener); + } - protected final void startListeningToFxomDocumentSceneGraphRevision() { - editorController.getFxomDocument().sceneGraphRevisionProperty().addListener(fxomDocumentRevisionListener); + protected final void stopListeningToToolStylesheet() { + editorController.toolStylesheetProperty().removeListener(toolStylesheetListener); } + protected final void startListeningToFxomDocumentSceneGraphRevision() { + editorController.getFxomDocument().sceneGraphRevisionProperty().addListener(fxomDocumentRevisionListener); + } protected final void stopListeningToFxomDocumentSceneGraphRevision() { editorController.getFxomDocument().sceneGraphRevisionProperty().removeListener(fxomDocumentRevisionListener); } - protected final void startListeningToFxomDocumentCssRevision() { - editorController.getFxomDocument().cssRevisionProperty().addListener(cssRevisionListener); + editorController.getFxomDocument().cssRevisionProperty().addListener(cssRevisionListener); } - protected final void stopListeningToFxomDocumentCssRevision() { editorController.getFxomDocument().cssRevisionProperty().removeListener(cssRevisionListener); } - - - protected final void startListeningToToolStylesheet() { - editorController.toolStylesheetProperty().addListener(toolStylesheetListener); - } - - protected final void stopListeningToToolStylesheet() { - editorController.toolStylesheetProperty().removeListener(toolStylesheetListener); - } - + /** * Replaces oldStylesheet by the tool style sheet assigned to the editor * controller. This methods {@link EditorController#getToolStylesheet}. diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractWindowController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractWindowController.java index 6c91cb732dd311449ce08165eb5354298ded52d8..3ad6f1a33341cbc8c4b244dcfe9df5ae8d6db1cd 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractWindowController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/AbstractWindowController.java @@ -41,7 +41,6 @@ import javafx.scene.Scene; import javafx.scene.layout.Region; import javafx.stage.Screen; import javafx.stage.Stage; -import javafx.stage.Window; import javafx.stage.WindowEvent; /** @@ -50,7 +49,7 @@ import javafx.stage.WindowEvent; */ public abstract class AbstractWindowController { - final private Window owner; + final private Stage owner; private Parent root; private Scene scene; private Stage stage; @@ -67,11 +66,11 @@ public abstract class AbstractWindowController { this(null, true); } - public AbstractWindowController(Window owner) { + public AbstractWindowController(Stage owner) { this(owner, true); } - public AbstractWindowController(Window owner, boolean sizeToScene) { + public AbstractWindowController(Stage owner, boolean sizeToScene) { this.owner = owner; this.sizeToScene = sizeToScene; } @@ -133,6 +132,11 @@ public abstract class AbstractWindowController { if (sizeToScene) { stage.sizeToScene(); } + // By default we set the same icons as the owner + if (owner != null) { + stage.getIcons().addAll(owner.getIcons()); + } + controllerDidCreateStage(); } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/AbstractModalDialog.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/AbstractModalDialog.java index bcfa5ece4354c1a7e3463c12fe91f10cb1b2b1c9..9166541beb66295925cb9efa92484e1af5d91a5e 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/AbstractModalDialog.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/AbstractModalDialog.java @@ -31,7 +31,7 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractFxmlWindowController; import java.io.IOException; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/ErrorDialog.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/ErrorDialog.java index 1344c31ae6e42b9ad22e566210ce18d0da45e984..2696e8518368d335b8c8dc07e3d3ee594b60820d 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/ErrorDialog.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/ErrorDialog.java @@ -31,7 +31,7 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import java.io.PrintWriter; import java.io.StringWriter; import javafx.stage.Window; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/TextViewDialog.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/TextViewDialog.java index 46809cf875612b6f30cbadaf58ef3561f08c4a69..5b5eadce6412def552746b68e4908eda3ca017d2 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/TextViewDialog.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/TextViewDialog.java @@ -31,7 +31,7 @@ */ package com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import java.util.HashMap; import java.util.Map; import javafx.event.ActionEvent; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/report/CSSParsingReport.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/report/CSSParsingReport.java index 2b979540533a03e87ae6a29aa82ceecedc8500c3..d2a85f61627709f154e854d7e70b5d0c3f4500f6 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/report/CSSParsingReport.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/report/CSSParsingReport.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,9 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.report; -import com.sun.javafx.css.CssError; -import com.sun.javafx.css.StyleManager; -import com.sun.javafx.css.parser.CSSParser; +import javafx.css.CssParser; import java.io.IOException; import java.nio.file.Path; import java.util.ArrayList; @@ -49,22 +48,22 @@ import java.util.Set; public class CSSParsingReport { private final Path stylesheetPath; private IOException ioException; - private final List<CssError> cssErrors = new ArrayList<>(); + private final List<CssParser.ParseError> parseErrors = new ArrayList<>(); public CSSParsingReport(Path stylesheetPath) { assert stylesheetPath != null; this.stylesheetPath = stylesheetPath; - final Set<CssError> previousErrors = new HashSet<>(StyleManager.errorsProperty()); + final Set<CssParser.ParseError> previousErrors = new HashSet<>(CssParser.errorsProperty()); try { - new CSSParser().parse(stylesheetPath.toUri().toURL()); + new CssParser().parse(stylesheetPath.toUri().toURL()); // Leave this.ioException to null - cssErrors.addAll(StyleManager.errorsProperty()); - cssErrors.removeAll(previousErrors); + parseErrors.addAll(CssParser.errorsProperty()); + parseErrors.removeAll(previousErrors); } catch(IOException x) { this.ioException = x; } finally { - StyleManager.errorsProperty().removeAll(cssErrors); + CssParser.errorsProperty().removeAll(parseErrors); } } @@ -73,14 +72,14 @@ public class CSSParsingReport { } public boolean isEmpty() { - return (ioException == null) && cssErrors.isEmpty(); + return (ioException == null) && parseErrors.isEmpty(); } public IOException getIOException() { return ioException; } - public List<CssError> getCssErrors() { - return Collections.unmodifiableList(cssErrors); + public List<CssParser.ParseError> getParseErrors() { + return Collections.unmodifiableList(parseErrors); } } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/search/SearchController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/search/SearchController.java index cd9ea7bab2f675d89714ecb2728efa8bc0212e96..69c17a960a921b7f4962b04350db9a08891c36cc 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/search/SearchController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/search/SearchController.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -57,6 +58,8 @@ public class SearchController extends AbstractFxmlController { public SearchController(EditorController c) { super(SearchController.class.getResource("Search.fxml"), c); //NOI18N + + } public final StringProperty textProperty() { @@ -91,6 +94,14 @@ public class SearchController extends AbstractFxmlController { searchField.clear(); } }); + + // Select all text when this editor is selected + searchField.setOnMousePressed(event -> searchField.selectAll()); + searchField.focusedProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue) { + searchField.selectAll(); + } + })); searchIcon.setOnMouseClicked(t -> searchField.clear()); } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/util/ContextMenuController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/util/ContextMenuController.java index 1a5559807d1900be910579887aecd5a75eab5026..92891e35aad44a57528721a20c920f82dcf2ae66 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/util/ContextMenuController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/util/ContextMenuController.java @@ -34,7 +34,7 @@ package com.oracle.javafx.scenebuilder.kit.editor.util; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.EditorController.ControlAction; import com.oracle.javafx.scenebuilder.kit.editor.EditorController.EditAction; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.selection.AbstractSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.GridSelectionGroup; import com.oracle.javafx.scenebuilder.kit.editor.selection.ObjectSelectionGroup; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMDocument.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMDocument.java index de617d28a724479d99718255e8775d1bc24f2d39..dbbb43ccc36805a8777d4d00f6445bca2a6f2197 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMDocument.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMDocument.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -42,6 +43,7 @@ import java.util.Collections; import java.util.Map; import java.util.ResourceBundle; +import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import javafx.beans.property.ReadOnlyIntegerProperty; import javafx.beans.property.SimpleIntegerProperty; import javafx.scene.Node; @@ -69,7 +71,8 @@ public class FXOMDocument { private final SimpleIntegerProperty cssRevision = new SimpleIntegerProperty(); private SceneGraphHolder sceneGraphHolder; private int updateDepth; - + + private boolean hasGluonControls; public FXOMDocument(String fxmlText, URL location, ClassLoader classLoader, ResourceBundle resources, boolean normalize) throws IOException { @@ -90,6 +93,8 @@ public class FXOMDocument { // Keeps this.fxomRoot == null // Keeps this.sceneGraphRoot == null } + + hasGluonControls = fxmlText.contains(EditorPlatform.GLUON_PACKAGE); } @@ -373,6 +378,10 @@ public class FXOMDocument { assert sceneGraphHolder != null; sceneGraphHolder = null; } + + public boolean hasGluonControls() { + return hasGluonControls; + } /** * Returns null or the object holding the scene graph of this fxom document. @@ -386,5 +395,5 @@ public class FXOMDocument { public static interface SceneGraphHolder { public void fxomDocumentWillRefreshSceneGraph(FXOMDocument fxomDocument); public void fxomDocumentDidRefreshSceneGraph(FXOMDocument fxomDocument); - }; + } } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMImageBuilder.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMImageBuilder.java deleted file mode 100644 index 197f6be4e8bc0e12baeeac4697e33d4e43fe9e52..0000000000000000000000000000000000000000 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMImageBuilder.java +++ /dev/null @@ -1,95 +0,0 @@ -/* - * Copyright (c) 2012, 2014, Oracle and/or its affiliates. - * All rights reserved. Use is subject to license terms. - * - * This file is available and licensed under the following license: - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * - Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the distribution. - * - Neither the name of Oracle Corporation nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package com.oracle.javafx.scenebuilder.kit.fxom; - -import com.oracle.javafx.scenebuilder.kit.util.URLUtils; -import com.sun.javafx.fxml.builder.JavaFXImageBuilder; -import java.io.File; -import java.net.URISyntaxException; -import java.net.URL; - -/** - * - */ -class FXOMImageBuilder extends JavaFXImageBuilder { - - /* - * JavaFXImageBuilder - */ - - @Override - public Object put(String key, Object value) { - Object fixedValue; - - if ("url".equals(key)) { //NOI18N - if (value == null) { - fixedValue = getMissingImageURL().toExternalForm(); - } else { - try { - // Check that value is a valid URI - final File imageFile = URLUtils.getFile(value.toString()); - if (imageFile == null) { // Not a file URI - fixedValue = getMissingImageURL().toExternalForm(); - } else if (imageFile.canRead()) { - fixedValue = value; - } else { - fixedValue = getMissingImageURL().toExternalForm(); - } - } catch(URISyntaxException x) { - fixedValue = getMissingImageURL().toExternalForm(); - } - } - } else { - fixedValue = value; - } - - return super.put(key, fixedValue); - } - - - /* - * Private - */ - - private static URL missingImageURL; - - private static URL getMissingImageURL() { - if (missingImageURL == null) { - missingImageURL = FXOMImageBuilder.class.getResource("missing-image.png"); //NOI18N - if (missingImageURL == null) { - throw new RuntimeException("Cannot find missing-image.png"); //NOI18N - } - } - return missingImageURL; - } -} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMLoader.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMLoader.java index ca74a9ce041af205bf5b6ef48028f90adcd42b8e..82e09340ae22a29a4b10c9d8c3c40488cd665866 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMLoader.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMLoader.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -31,11 +32,11 @@ */ package com.oracle.javafx.scenebuilder.kit.fxom; -import com.oracle.javafx.scenebuilder.app.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.dialog.ErrorDialog; import com.oracle.javafx.scenebuilder.kit.metadata.util.PropertyName; import com.oracle.javafx.scenebuilder.kit.util.Deprecation; -import com.sun.javafx.fxml.LoadListener; +import javafx.fxml.LoadListener; import javafx.fxml.FXMLLoader; import javax.xml.stream.XMLStreamException; @@ -79,9 +80,8 @@ class FXOMLoader implements LoadListener { fxmlLoader.setLocation(document.getLocation()); fxmlLoader.setResources(new ResourceKeyCollector(document.getResources())); fxmlLoader.setClassLoader(new TransientClassLoader(classLoader)); - fxmlLoader.setBuilderFactory(new FXOMBuilderFactory(classLoader)); + fxmlLoader.setLoadListener(this); Deprecation.setStaticLoad(fxmlLoader, true); - Deprecation.setLoadListener(fxmlLoader, this); final Charset utf8 = Charset.forName("UTF-8"); try (final InputStream is = new ByteArrayInputStream(fxmlText.getBytes(utf8))) { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMObject.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMObject.java index 9d5f6dc0298304ee1f1e11ec88638cc4a8a0f68b..63366415148f7bbe7d92f2007b88507c4405e819 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMObject.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMObject.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -31,6 +32,7 @@ */ package com.oracle.javafx.scenebuilder.kit.fxom; +import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import com.oracle.javafx.scenebuilder.kit.fxom.glue.GlueElement; import com.oracle.javafx.scenebuilder.kit.metadata.util.PrefixedValue; import com.oracle.javafx.scenebuilder.kit.metadata.util.PropertyName; @@ -733,7 +735,10 @@ public abstract class FXOMObject extends FXOMNode { parentCollection = newParentCollection; } - + public boolean isGluon() { + return sceneGraphObject.getClass().getName().startsWith(EditorPlatform.GLUON_PACKAGE); + } + /* * Private diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMSaver.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMSaver.java index 74ca07743c5887a286a77af3855c97598f64d761..7c6bc9c6bfa1fbfc785e2b2a5ae3affee67b9b7f 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMSaver.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/FXOMSaver.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/glue/GlueElement.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/glue/GlueElement.java index c8d217ed93485202000801e42063483dc52c35d6..b96d7110a20a8a91215f73d15cf3cbba5fb70133 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/glue/GlueElement.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/fxom/glue/GlueElement.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/glossary/ControllerClass.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/glossary/ControllerClass.java index ea06eebb5cdb22f074a772b34c77830d7fa4c72b..e1a9766be6702767f3876736f417347f5d95cf72 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/glossary/ControllerClass.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/glossary/ControllerClass.java @@ -93,6 +93,10 @@ class ControllerClass { private static final String MAVEN_DIR_STRUCTURE = "src" + FILE_SEPARATOR + "main"; private static final String MAVEN_JAVA_DIR_STRUCTURE = MAVEN_DIR_STRUCTURE + FILE_SEPARATOR + "java"; private static final String MAVEN_RESOURCES_DIR_STRUCTURE = MAVEN_DIR_STRUCTURE + FILE_SEPARATOR + "resources"; + private static final String MAVEN_RESOURCES_DIR_REGEX = FILE_SEPARATOR.equals("\\") ? MAVEN_RESOURCES_DIR_STRUCTURE.replace("\\", "\\\\") + : MAVEN_RESOURCES_DIR_STRUCTURE; + private static final String MAVEN_JAVA_DIR_STRUCTURE_REPLACEMENT = FILE_SEPARATOR.equals("\\") ? MAVEN_JAVA_DIR_STRUCTURE.replace("\\", "\\\\") + : MAVEN_JAVA_DIR_STRUCTURE; private static final boolean IGNORE_MAVEN_DIR_STRUCTURE = System.getProperty("ignore.maven.structure") != null; private ControllerClass(File file) throws IOException, JavaTokenizer.ParseException { @@ -125,7 +129,7 @@ class ControllerClass { // Check if FXML file path contains the default Maven resources path as a sub-string. if (!IGNORE_MAVEN_DIR_STRUCTURE && fxmlFile.getAbsolutePath().contains(MAVEN_RESOURCES_DIR_STRUCTURE)) { - parentFile = new File(fxmlFile.getParent().replaceFirst(MAVEN_RESOURCES_DIR_STRUCTURE, MAVEN_JAVA_DIR_STRUCTURE)); + parentFile = new File(fxmlFile.getParent().replaceFirst(MAVEN_RESOURCES_DIR_REGEX, MAVEN_JAVA_DIR_STRUCTURE_REPLACEMENT)); } else { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/i18n/I18N.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/i18n/I18N.java similarity index 97% rename from sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/i18n/I18N.java rename to sb/src/main/java/com/oracle/javafx/scenebuilder/kit/i18n/I18N.java index 32f6b45c7074bfbb22082c1b73d00fdff635deb4..75e63857f9384c5bb7ab48fdc7bf526415d63914 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/editor/i18n/I18N.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/i18n/I18N.java @@ -29,7 +29,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.oracle.javafx.scenebuilder.kit.editor.i18n; +package com.oracle.javafx.scenebuilder.kit.i18n; import java.text.MessageFormat; import java.util.ResourceBundle; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/BuiltinLibrary.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/BuiltinLibrary.java index 4788dba4720dd149a5cced84788d57421c5e30f3..6a81891029ed8f30a8a463298113be5ddd16b7a5 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/BuiltinLibrary.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/BuiltinLibrary.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, Gluon and/or its affiliates. + * Copyright (c) 2016, 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,7 +32,8 @@ */ package com.oracle.javafx.scenebuilder.kit.library; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.images.ImageUtils; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; import java.io.IOException; @@ -46,12 +47,11 @@ import javafx.scene.layout.Region; */ public class BuiltinLibrary extends Library { - public static final String GLUON_PACKAGE = "com.gluonhq.charm.glisten"; public static final String GLUON_FILE_PREFIX = "Gluon_"; // In SB 1.1 the section names of the Library have been localized. We assume // for now we stick to this approach, but fact is the support of custom // sections could change the rules of the game. - public static final String TAG_GLUON = "Gluon Mobile"; + public static final String TAG_GLUON = "Gluon"; public static final String TAG_CONTAINERS = "Containers"; //NOI18N public static final String TAG_CONTROLS = "Controls"; //NOI18N public static final String TAG_MENU = "Menu"; //NOI18N @@ -125,6 +125,7 @@ public class BuiltinLibrary extends Library { // addCustomizedItem(com.gluonhq.charm.glisten.control.AutoCompleteTextField.class, TAG_GLUON); // addCustomizedItem(com.gluonhq.charm.glisten.control.Avatar.class, TAG_GLUON); // addCustomizedItem(com.gluonhq.charm.glisten.control.BottomNavigation.class, TAG_GLUON); +// addCustomizedItem(com.gluonhq.charm.glisten.control.BottomNavigationButton.class, TAG_GLUON); // addCustomizedItem(com.gluonhq.charm.glisten.control.CardPane.class, TAG_GLUON); // addCustomizedItem(com.gluonhq.charm.glisten.control.CharmListView.class, TAG_GLUON); // addCustomizedItem(com.gluonhq.charm.glisten.control.Chip.class, TAG_GLUON); @@ -363,7 +364,7 @@ public class BuiltinLibrary extends Library { if (qualifier != null) { nameWithQualifier += qualifier; } - if (componentClass.getName().startsWith(GLUON_PACKAGE)) { + if (componentClass.getName().startsWith(EditorPlatform.GLUON_PACKAGE)) { fxmlBaseName = GLUON_FILE_PREFIX + fxmlBaseName; iconName = GLUON_FILE_PREFIX + iconName; } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/BuiltinSectionComparator.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/BuiltinSectionComparator.java index 59011cf59cf3da66f319c6502d0bde84218a4ff3..d20cd64802ba805ecaf38e96c475280ef1cf0f8b 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/BuiltinSectionComparator.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/BuiltinSectionComparator.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/LibraryItem.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/LibraryItem.java index 3fb65740d7226c7bbe0536281189cafc59077426..4ae6375437269d496108da89479bb9cc5f1a0d42 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/LibraryItem.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/LibraryItem.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/user/LibraryFolderWatcher.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/user/LibraryFolderWatcher.java index 11c88d93908b18043738880b833fbef3e43c7c2a..8760766a5446ef957d01d36f0467f2c49107bf99 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/user/LibraryFolderWatcher.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/user/LibraryFolderWatcher.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -31,15 +32,14 @@ */ package com.oracle.javafx.scenebuilder.kit.library.user; -import com.oracle.javafx.scenebuilder.app.preferences.MavenPreferences; -import com.oracle.javafx.scenebuilder.app.preferences.PreferencesController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.images.ImageUtils; import com.oracle.javafx.scenebuilder.kit.library.BuiltinLibrary; import com.oracle.javafx.scenebuilder.kit.library.LibraryItem; import com.oracle.javafx.scenebuilder.kit.library.util.JarExplorer; import com.oracle.javafx.scenebuilder.kit.library.util.JarReport; import com.oracle.javafx.scenebuilder.kit.library.util.JarReportEntry; + import java.io.FileInputStream; import java.io.IOException; import java.io.InputStreamReader; @@ -72,13 +72,11 @@ import java.util.stream.Collectors; class LibraryFolderWatcher implements Runnable { private final UserLibrary library; - private final MavenPreferences mavenPreferences; - + private enum FILE_TYPE {FXML, JAR}; public LibraryFolderWatcher(UserLibrary library) { this.library = library; - mavenPreferences = PreferencesController.getSingleton().getMavenPreferences(); } /* @@ -102,16 +100,14 @@ class LibraryFolderWatcher implements Runnable { /* * Private */ - - private void runDiscovery() throws InterruptedException { // First put the builtin items in the library library.setItems(BuiltinLibrary.getLibrary().getItems()); // Attempts to add the maven jars, including dependencies - List<Path> currentMavenJars = mavenPreferences.getArtifactsPathsWithDependencies(); + List<Path> additionalJars = library.getAdditionalJarPaths().get(); - final Set<Path> currentJars = new HashSet<>(currentMavenJars); + final Set<Path> currentJars = new HashSet<>(additionalJars); final Set<Path> currentFxmls = new HashSet<>(); // Now attempts to discover the user library folder @@ -180,7 +176,11 @@ class LibraryFolderWatcher implements Runnable { || kind == StandardWatchEventKinds.ENTRY_DELETE || kind == StandardWatchEventKinds.ENTRY_MODIFY) { assert context instanceof Path; - if (isJarPath((Path)context) || isFxmlPath((Path)context)) { + if (isJarPath((Path) context)) { + if (!hasJarBeenAdded((Path) context)) { + isDirty = true; + } + } else if (isFxmlPath((Path)context)){ isDirty = true; } } else { @@ -195,7 +195,7 @@ class LibraryFolderWatcher implements Runnable { library.setItems(BuiltinLibrary.getLibrary().getItems()); // Now attempts to add the maven jars - List<Path> currentMavenJars = mavenPreferences.getArtifactsPaths(); + List<Path> currentMavenJars = library.getAdditionalJarPaths().get(); final Set<Path> fxmls = new HashSet<>(); fxmls.addAll(getAllFiles(FILE_TYPE.FXML)); @@ -215,8 +215,7 @@ class LibraryFolderWatcher implements Runnable { } } - - + private Set<Path> getAllFiles(FILE_TYPE fileType) throws IOException { Set<Path> res = new HashSet<>(); final Path folder = Paths.get(library.getPath()); @@ -254,8 +253,19 @@ class LibraryFolderWatcher implements Runnable { final String pathString = path.toString().toLowerCase(Locale.ROOT); return pathString.endsWith(".fxml"); //NOI18N } - - + + private boolean hasJarBeenAdded(Path context) { + boolean hasJarBeenAdded = false; + for (JarReport report : library.getJarReports()) { + if (report.getJar().getFileName().equals(context)) { + hasJarBeenAdded = true; + break; + } + } + return hasJarBeenAdded; + } + + private void updateLibrary(Collection<Path> paths) throws IOException { final List<LibraryItem> newItems = new ArrayList<>(); @@ -308,12 +318,27 @@ class LibraryFolderWatcher implements Runnable { // 2) final List<JarReport> jarReports = new ArrayList<>(); +// boolean shouldShowImportGluonJarAlert = false; for (Path currentJar : jars) { Logger.getLogger(this.getClass().getSimpleName()).info(I18N.getString("log.info.explore.jar", currentJar)); final JarExplorer explorer = new JarExplorer(currentJar); - jarReports.add(explorer.explore(classLoader)); + JarReport jarReport = explorer.explore(classLoader); + jarReports.add(jarReport); + + // if (jarReport.hasGluonControls()) { +// // We check if the jar has already been imported to avoid showing the import gluon jar +// // alert every time Scene Builder starts for jars that have already been imported +// if (!hasGluonJarBeenImported(jarReport.getJar().getFileName().toString())) { +// shouldShowImportGluonJarAlert = true; +// } +// +// } } +// if (shouldShowImportGluonJarAlert && onImportingGluonControls != null) { +// onImportingGluonControls.run(); +// } + // 3) final List<LibraryItem> newItems = new ArrayList<>(); for (JarReport jarReport : jarReports) { @@ -328,12 +353,12 @@ class LibraryFolderWatcher implements Runnable { .distinct() .collect(Collectors.toList())); library.updateJarReports(new ArrayList<>(jarReports)); + library.getOnFinishedUpdatingJarReports().accept(jarReports); library.updateExplorationDate(new Date()); // 5 // Fix for #45: mark end of first exploration library.updateFirstExplorationCompleted(); - } @@ -341,7 +366,7 @@ class LibraryFolderWatcher implements Runnable { final List<LibraryItem> result = new ArrayList<>(); final URL iconURL = ImageUtils.getNodeIconURL(null); final List<String> excludedItems = library.getFilter(); - final List<String> artifactsFilter = mavenPreferences.getArtifactsFilter(); + final List<String> artifactsFilter = library.getAdditionalFilter().get(); for (JarReportEntry e : jarReport.getEntries()) { if ((e.getStatus() == JarReportEntry.Status.OK) && e.isNode()) { @@ -373,5 +398,4 @@ class LibraryFolderWatcher implements Runnable { return result; } - } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/user/UserLibrary.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/user/UserLibrary.java index 4813e4d6a371e4fea80bf076afc5c4b302d16131..cd6bee788e05cc4f245f836e6e107de3c94f6b89 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/user/UserLibrary.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/user/UserLibrary.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -53,6 +54,9 @@ import java.util.Comparator; import java.util.Date; import java.util.List; import java.util.TreeSet; +import java.util.function.Consumer; +import java.util.function.Supplier; + import javafx.application.Platform; import javafx.beans.property.ReadOnlyBooleanProperty; import javafx.beans.property.ReadOnlyBooleanWrapper; @@ -69,7 +73,8 @@ import javafx.collections.ObservableList; */ public class UserLibrary extends Library { - public enum State { READY, WATCHING }; + public enum State { READY, WATCHING } + public static final String TAG_USER_DEFINED = "Custom"; //NOI18N private final String path; @@ -92,14 +97,32 @@ public class UserLibrary extends Library { // the user defined one displayed in the Library panel. // As a consequence an empty file means we display all items. private final String filterFileName = "filter.txt"; //NOI18N - - + + private Supplier<List<Path>> additionalJarPaths; + private Supplier<List<String>> additionalFilter; + private Consumer<List<JarReport>> onFinishedUpdatingJarReports; + /* * Public */ - + public UserLibrary(String path) { + this(path, null, null); + } + + public UserLibrary(String path, Supplier<List<Path>> additionalJarPaths, Supplier<List<String>> additionalFilter) { this.path = path; + this.additionalJarPaths = additionalJarPaths; + this.additionalFilter = additionalFilter; + } + + public void setAdditionalJarPaths(Supplier<List<Path>> additionalJarPaths) + { + this.additionalJarPaths = additionalJarPaths; + } + + public void setAdditionalFilter(Supplier<List<String>> additionalFilter) { + this.additionalFilter = additionalFilter; } public String getPath() { @@ -245,6 +268,18 @@ public class UserLibrary extends Library { return res; } + public void setOnUpdatedJarReports(Consumer<List<JarReport>> onFinishedUpdatingJarReports) { + this.onFinishedUpdatingJarReports = onFinishedUpdatingJarReports; + } + + public final ReadOnlyBooleanProperty firstExplorationCompletedProperty() { + return firstExplorationCompleted.getReadOnlyProperty(); + } + + public final boolean isFirstExplorationCompleted() { + return firstExplorationCompleted.get(); + } + /* * Package */ @@ -254,15 +289,8 @@ public class UserLibrary extends Library { } void updateJarReports(Collection<JarReport> newJarReports) { - if (Platform.isFxApplicationThread()) { - previousJarReports.setAll(jarReports); - jarReports.setAll(newJarReports); - } else { - Platform.runLater(() -> { - previousJarReports.setAll(jarReports); - jarReports.setAll(newJarReports); - }); - } + previousJarReports.setAll(jarReports); + jarReports.setAll(newJarReports); } void updateFxmlFileReports(Collection<Path> newFxmlFileReports) { @@ -324,15 +352,19 @@ public class UserLibrary extends Library { Platform.runLater(() -> firstExplorationCompleted.set(true)); } } - - public final ReadOnlyBooleanProperty firstExplorationCompletedProperty() { - return firstExplorationCompleted.getReadOnlyProperty(); + + Supplier<List<Path>> getAdditionalJarPaths() { + return additionalJarPaths; } - - public final boolean isFirstExplorationCompleted() { - return firstExplorationCompleted.get(); + + Supplier<List<String>> getAdditionalFilter() { + return additionalFilter; } - + + Consumer<List<JarReport>> getOnFinishedUpdatingJarReports() { + return onFinishedUpdatingJarReports; + } + /* * Library */ diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/util/JarExplorer.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/util/JarExplorer.java index bbc0086f5052210161fc247914cbe53f9a97cf37..664656ec7a2d463ceee7ee23b556de2a80a8e9bc 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/util/JarExplorer.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/util/JarExplorer.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -39,6 +40,8 @@ import java.nio.file.Path; import java.util.Enumeration; import java.util.jar.JarEntry; import java.util.jar.JarFile; + +import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import javafx.fxml.FXMLLoader; import javafx.scene.Node; @@ -122,18 +125,21 @@ public class JarExplorer { JarReportEntry.Status status; Throwable entryException; Class<?> entryClass = null; + String className; if (entry.isDirectory()) { status = JarReportEntry.Status.IGNORED; entryClass = null; entryException = null; + className = null; } else { - final String className = makeClassName(entry.getName()); + className = makeClassName(entry.getName()); // Filtering out what starts with com.javafx. is bound to DTL-6378. if (className == null || className.startsWith("java.") //NOI18N || className.startsWith("javax.") || className.startsWith("javafx.") //NOI18N || className.startsWith("com.oracle.javafx.scenebuilder.") //NOI18N - || className.startsWith("com.javafx.")) { //NOI18N + || className.startsWith("com.javafx.") + || className.startsWith(EditorPlatform.GLUON_PACKAGE)) { //NOI18N status = JarReportEntry.Status.IGNORED; entryClass = null; entryException = null; @@ -155,10 +161,10 @@ public class JarExplorer { status = JarReportEntry.Status.OK; entryException = null; } - } catch(RuntimeException|IOException x) { + } catch (RuntimeException | IOException x) { status = JarReportEntry.Status.CANNOT_INSTANTIATE; entryException = x; - } catch(Error | ClassNotFoundException x) { + } catch (Error | ClassNotFoundException x) { status = JarReportEntry.Status.CANNOT_LOAD; entryClass = null; entryException = x; @@ -166,7 +172,7 @@ public class JarExplorer { } } - return new JarReportEntry(entry.getName(), status, entryException, entryClass); + return new JarReportEntry(entry.getName(), status, entryException, entryClass, className); } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/util/JarReport.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/util/JarReport.java index fdac69384c0da8191e88905a156bcc4bf29c7fb5..cb7e21ee72d05eae5dea6f51f13ab8bde38ecf1a 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/util/JarReport.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/util/JarReport.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -31,6 +32,10 @@ */ package com.oracle.javafx.scenebuilder.kit.library.util; +import javafx.collections.FXCollections; +import javafx.collections.ListChangeListener; +import javafx.collections.ObservableList; + import java.nio.file.Path; import java.util.ArrayList; import java.util.List; @@ -42,10 +47,25 @@ import java.util.List; public class JarReport { private final Path jar; - private final List<JarReportEntry> entries = new ArrayList<>(); + private final ObservableList<JarReportEntry> entries = FXCollections.observableArrayList(); + private boolean hasGluonControls = false; public JarReport(Path jar) { this.jar = jar; + this.entries.addListener(new ListChangeListener<JarReportEntry>() { + @Override + public void onChanged(Change<? extends JarReportEntry> c) { + while (c.next()) { + if (c.wasAdded()) { + for (JarReportEntry entry : c.getAddedSubList()) { + if (entry.isGluon()) { + hasGluonControls = true; + } + } + } + } + } + }); } public Path getJar() { @@ -54,6 +74,8 @@ public class JarReport { public List<JarReportEntry> getEntries() { return entries; - } + } + + public boolean hasGluonControls() { return hasGluonControls; } } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/util/JarReportEntry.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/util/JarReportEntry.java index 7851f96d4f0763162ed3745518ea4eff82bed6ee..ae9fd7073d4262d691f9ce57c7ff1401a52a05f1 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/util/JarReportEntry.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/library/util/JarReportEntry.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -31,6 +32,7 @@ */ package com.oracle.javafx.scenebuilder.kit.library.util; +import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import javafx.scene.Node; /** @@ -50,8 +52,9 @@ public class JarReportEntry { private final Status status; private final Class<?> klass; private final Throwable exception; + private final String className; - public JarReportEntry(String name, Status status, Throwable exception, Class<?> klass) { + public JarReportEntry(String name, Status status, Throwable exception, Class<?> klass, String className) { assert name != null; assert (klass != null) || (status != Status.OK); assert (exception == null) || (status != Status.OK); @@ -60,6 +63,7 @@ public class JarReportEntry { this.status = status; this.klass = klass; this.exception = exception; + this.className = className; } public String getName() { @@ -81,6 +85,8 @@ public class JarReportEntry { public boolean isNode() { return (klass == null) ? false : Node.class.isAssignableFrom(klass); } + + public boolean isGluon() { return className != null && className.startsWith(EditorPlatform.GLUON_PACKAGE); } /* * Object diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/Metadata.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/Metadata.java index e58ebe3d14f63022756e4cc2abac456642ca812f..36df30daa530c3da67a1fbd3699972037d35b19a 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/Metadata.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/Metadata.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, Gluon and/or its affiliates. + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -43,20 +43,29 @@ import com.oracle.javafx.scenebuilder.kit.metadata.klass.ComponentClassMetadata; import com.oracle.javafx.scenebuilder.kit.metadata.property.ComponentPropertyMetadata; import com.oracle.javafx.scenebuilder.kit.metadata.property.PropertyMetadata; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.spi.IComponentClassMetadataProvider; +import com.oracle.javafx.scenebuilder.kit.metadata.property.value.*; +import com.oracle.javafx.scenebuilder.kit.metadata.property.value.effect.EffectPropertyMetadata; +import com.oracle.javafx.scenebuilder.kit.metadata.property.value.keycombination.KeyCombinationPropertyMetadata; +import com.oracle.javafx.scenebuilder.kit.metadata.property.value.list.ButtonTypeListPropertyMetadata; +import com.oracle.javafx.scenebuilder.kit.metadata.property.value.list.DoubleListPropertyMetadata; +import com.oracle.javafx.scenebuilder.kit.metadata.property.value.list.StringListPropertyMetadata; +import com.oracle.javafx.scenebuilder.kit.metadata.property.value.list.TickMarkListPropertyMetadata; +import com.oracle.javafx.scenebuilder.kit.metadata.property.value.paint.ColorPropertyMetadata; +import com.oracle.javafx.scenebuilder.kit.metadata.property.value.paint.PaintPropertyMetadata; +import com.oracle.javafx.scenebuilder.kit.metadata.util.InspectorPath; import com.oracle.javafx.scenebuilder.kit.metadata.util.InspectorPathComparator; import com.oracle.javafx.scenebuilder.kit.metadata.util.PropertyName; +import javafx.scene.control.SelectionMode; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; +import java.util.Collections; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Map; -import java.util.ServiceConfigurationError; -import java.util.ServiceLoader; import java.util.Set; import java.util.WeakHashMap; @@ -64,7 +73,7 @@ import java.util.WeakHashMap; * */ public class Metadata { - + private static Metadata metadata = null; @@ -77,7 +86,7 @@ public class Metadata { public final InspectorPathComparator INSPECTOR_PATH_COMPARATOR = new InspectorPathComparator(sectionNames, subSectionMap); - + public static synchronized Metadata getMetadata() { if (metadata == null) { metadata = new Metadata(); @@ -238,43 +247,5765 @@ public class Metadata { return result; } - + + + // Abstract Component Classes + + private final ComponentClassMetadata NodeMetadata = + new ComponentClassMetadata(javafx.scene.Node.class, null); + private final ComponentClassMetadata ParentMetadata = + new ComponentClassMetadata(javafx.scene.Parent.class, NodeMetadata); + private final ComponentClassMetadata RegionMetadata = + new ComponentClassMetadata(javafx.scene.layout.Region.class, ParentMetadata); + private final ComponentClassMetadata PaneMetadata = + new ComponentClassMetadata(javafx.scene.layout.Pane.class, RegionMetadata); + private final ComponentClassMetadata ControlMetadata = + new ComponentClassMetadata(javafx.scene.control.Control.class, RegionMetadata); + private final ComponentClassMetadata LabeledMetadata = + new ComponentClassMetadata(javafx.scene.control.Labeled.class, ControlMetadata); + private final ComponentClassMetadata ButtonBaseMetadata = + new ComponentClassMetadata(javafx.scene.control.ButtonBase.class, LabeledMetadata); + private final ComponentClassMetadata ComboBoxBaseMetadata = + new ComponentClassMetadata(javafx.scene.control.ComboBoxBase.class, ControlMetadata); + private final ComponentClassMetadata PopupWindowMetadata = + new ComponentClassMetadata(javafx.stage.PopupWindow.class, null); + private final ComponentClassMetadata PopupControlMetadata = + new ComponentClassMetadata(javafx.scene.control.PopupControl.class, PopupWindowMetadata); + private final ComponentClassMetadata TextInputControlMetadata = + new ComponentClassMetadata(javafx.scene.control.TextInputControl.class, ControlMetadata); + private final ComponentClassMetadata TableColumnBaseMetadata = + new ComponentClassMetadata(javafx.scene.control.TableColumnBase.class, null); + private final ComponentClassMetadata MenuItemMetadata = + new ComponentClassMetadata(javafx.scene.control.MenuItem.class, null); + private final ComponentClassMetadata TextFieldMetadata = + new ComponentClassMetadata(javafx.scene.control.TextField.class, TextInputControlMetadata); + private final ComponentClassMetadata ProgressIndicatorMetadata = + new ComponentClassMetadata(javafx.scene.control.ProgressIndicator.class, ControlMetadata); + private final ComponentClassMetadata ToggleButtonMetadata = + new ComponentClassMetadata(javafx.scene.control.ToggleButton.class, ButtonBaseMetadata); + private final ComponentClassMetadata AxisMetadata = + new ComponentClassMetadata(javafx.scene.chart.Axis.class, RegionMetadata); + private final ComponentClassMetadata ChartMetadata = + new ComponentClassMetadata(javafx.scene.chart.Chart.class, RegionMetadata); + private final ComponentClassMetadata ValueAxisMetadata = + new ComponentClassMetadata(javafx.scene.chart.ValueAxis.class, AxisMetadata); + private final ComponentClassMetadata XYChartMetadata = + new ComponentClassMetadata(javafx.scene.chart.XYChart.class, ChartMetadata); + private final ComponentClassMetadata ShapeMetadata = + new ComponentClassMetadata(javafx.scene.shape.Shape.class, NodeMetadata); + private final ComponentClassMetadata PathElementMetadata = + new ComponentClassMetadata(javafx.scene.shape.PathElement.class, null); + private final ComponentClassMetadata CameraMetadata = + new ComponentClassMetadata(javafx.scene.Camera.class, NodeMetadata); + private final ComponentClassMetadata LightBaseMetadata = + new ComponentClassMetadata(javafx.scene.LightBase.class, NodeMetadata); + private final ComponentClassMetadata Shape3DMetadata = + new ComponentClassMetadata(javafx.scene.shape.Shape3D.class, NodeMetadata); + + + + // Other Component Classes (in alphabetical order) + + private final ComponentClassMetadata SwingNodeMetadata = + new ComponentClassMetadata(javafx.embed.swing.SwingNode.class, NodeMetadata); + private final ComponentClassMetadata AmbientLightMetadata = + new ComponentClassMetadata(javafx.scene.AmbientLight.class, LightBaseMetadata); +// private final ComponentClassMetadata CardPaneMetadata = +// new ComponentClassMetadata(com.gluonhq.charm.glisten.control.CardPane.class, ControlMetadata); + private final ComponentClassMetadata GroupMetadata = + new ComponentClassMetadata(javafx.scene.Group.class, ParentMetadata); + private final ComponentClassMetadata ParallelCameraMetadata = + new ComponentClassMetadata(javafx.scene.ParallelCamera.class, CameraMetadata); + private final ComponentClassMetadata PerspectiveCameraMetadata = + new ComponentClassMetadata(javafx.scene.PerspectiveCamera.class, CameraMetadata); + private final ComponentClassMetadata PointLightMetadata = + new ComponentClassMetadata(javafx.scene.PointLight.class, LightBaseMetadata); + private final ComponentClassMetadata SubSceneMetadata = + new ComponentClassMetadata(javafx.scene.SubScene.class, NodeMetadata); + private final ComponentClassMetadata CanvasMetadata = + new ComponentClassMetadata(javafx.scene.canvas.Canvas.class, NodeMetadata); + private final ComponentClassMetadata AreaChartMetadata = + new ComponentClassMetadata(javafx.scene.chart.AreaChart.class, XYChartMetadata); + private final ComponentClassMetadata BarChartMetadata = + new ComponentClassMetadata(javafx.scene.chart.BarChart.class, XYChartMetadata); +// private final ComponentClassMetadata BottomNavigationMetadata = +// new ComponentClassMetadata(com.gluonhq.charm.glisten.control.BottomNavigation.class, ControlMetadata); + private final ComponentClassMetadata BubbleChartMetadata = + new ComponentClassMetadata(javafx.scene.chart.BubbleChart.class, XYChartMetadata); + private final ComponentClassMetadata CategoryAxisMetadata = + new ComponentClassMetadata(javafx.scene.chart.CategoryAxis.class, AxisMetadata); +// private final ComponentClassMetadata DropdownButtonMetadata = +// new ComponentClassMetadata(com.gluonhq.charm.glisten.control.DropdownButton.class, ControlMetadata); + private final ComponentClassMetadata LineChartMetadata = + new ComponentClassMetadata(javafx.scene.chart.LineChart.class, XYChartMetadata); + private final ComponentClassMetadata NumberAxisMetadata = + new ComponentClassMetadata(javafx.scene.chart.NumberAxis.class, ValueAxisMetadata); + private final ComponentClassMetadata PieChartMetadata = + new ComponentClassMetadata(javafx.scene.chart.PieChart.class, ChartMetadata); + private final ComponentClassMetadata ScatterChartMetadata = + new ComponentClassMetadata(javafx.scene.chart.ScatterChart.class, XYChartMetadata); +// private final ComponentClassMetadata SettingsPaneMetadata = +// new ComponentClassMetadata(com.gluonhq.charm.glisten.control.SettingsPane.class, ControlMetadata); + private final ComponentClassMetadata StackedAreaChartMetadata = + new ComponentClassMetadata(javafx.scene.chart.StackedAreaChart.class, XYChartMetadata); + private final ComponentClassMetadata StackedBarChartMetadata = + new ComponentClassMetadata(javafx.scene.chart.StackedBarChart.class, XYChartMetadata); +// private final ComponentClassMetadata ToggleButtonGroupMetadata = +// new ComponentClassMetadata(com.gluonhq.charm.glisten.control.ToggleButtonGroup.class, ControlMetadata); + private final ComponentClassMetadata AccordionMetadata = + new ComponentClassMetadata(javafx.scene.control.Accordion.class, ControlMetadata); + private final ComponentClassMetadata ButtonMetadata = + new ComponentClassMetadata(javafx.scene.control.Button.class, ButtonBaseMetadata); + private final ComponentClassMetadata ButtonBarMetadata = + new ComponentClassMetadata(javafx.scene.control.ButtonBar.class, ControlMetadata); + private final ComponentClassMetadata CheckBoxMetadata = + new ComponentClassMetadata(javafx.scene.control.CheckBox.class, ButtonBaseMetadata); + private final ComponentClassMetadata CheckMenuItemMetadata = + new ComponentClassMetadata(javafx.scene.control.CheckMenuItem.class, MenuItemMetadata); + private final ComponentClassMetadata ChoiceBoxMetadata = + new ComponentClassMetadata(javafx.scene.control.ChoiceBox.class, ControlMetadata); +// private final ComponentClassMetadata CollapsedPanelMetadata = +// new ComponentClassMetadata(com.gluonhq.charm.glisten.control.ExpansionPanel.CollapsedPanel.class, RegionMetadata); + private final ComponentClassMetadata ColorPickerMetadata = + new ComponentClassMetadata(javafx.scene.control.ColorPicker.class, ComboBoxBaseMetadata); + private final ComponentClassMetadata ComboBoxMetadata = + new ComponentClassMetadata(javafx.scene.control.ComboBox.class, ComboBoxBaseMetadata); + private final ComponentClassMetadata ContextMenuMetadata = + new ComponentClassMetadata(javafx.scene.control.ContextMenu.class, PopupControlMetadata); + private final ComponentClassMetadata CustomMenuItemMetadata = + new ComponentClassMetadata(javafx.scene.control.CustomMenuItem.class, MenuItemMetadata); + private final ComponentClassMetadata DatePickerMetadata = + new ComponentClassMetadata(javafx.scene.control.DatePicker.class, ComboBoxBaseMetadata); + private final ComponentClassMetadata DialogPaneMetadata = + new ComponentClassMetadata(javafx.scene.control.DialogPane.class, PaneMetadata); + private final ComponentClassMetadata HyperlinkMetadata = + new ComponentClassMetadata(javafx.scene.control.Hyperlink.class, ButtonBaseMetadata); + private final ComponentClassMetadata LabelMetadata = + new ComponentClassMetadata(javafx.scene.control.Label.class, LabeledMetadata); + private final ComponentClassMetadata ListViewMetadata = + new ComponentClassMetadata(javafx.scene.control.ListView.class, ControlMetadata); + private final ComponentClassMetadata MenuMetadata = + new ComponentClassMetadata(javafx.scene.control.Menu.class, MenuItemMetadata); + private final ComponentClassMetadata MenuBarMetadata = + new ComponentClassMetadata(javafx.scene.control.MenuBar.class, ControlMetadata); + private final ComponentClassMetadata MenuButtonMetadata = + new ComponentClassMetadata(javafx.scene.control.MenuButton.class, ButtonBaseMetadata); + private final ComponentClassMetadata PaginationMetadata = + new ComponentClassMetadata(javafx.scene.control.Pagination.class, ControlMetadata); + private final ComponentClassMetadata PasswordFieldMetadata = + new ComponentClassMetadata(javafx.scene.control.PasswordField.class, TextFieldMetadata); + private final ComponentClassMetadata ProgressBarMetadata = + new ComponentClassMetadata(javafx.scene.control.ProgressBar.class, ProgressIndicatorMetadata); + private final ComponentClassMetadata RadioButtonMetadata = + new ComponentClassMetadata(javafx.scene.control.RadioButton.class, ToggleButtonMetadata); + private final ComponentClassMetadata RadioMenuItemMetadata = + new ComponentClassMetadata(javafx.scene.control.RadioMenuItem.class, MenuItemMetadata); + private final ComponentClassMetadata ScrollBarMetadata = + new ComponentClassMetadata(javafx.scene.control.ScrollBar.class, ControlMetadata); + private final ComponentClassMetadata ScrollPaneMetadata = + new ComponentClassMetadata(javafx.scene.control.ScrollPane.class, ControlMetadata); + private final ComponentClassMetadata SeparatorMetadata = + new ComponentClassMetadata(javafx.scene.control.Separator.class, ControlMetadata); + private final ComponentClassMetadata SeparatorMenuItemMetadata = + new ComponentClassMetadata(javafx.scene.control.SeparatorMenuItem.class, CustomMenuItemMetadata); + private final ComponentClassMetadata SliderMetadata = + new ComponentClassMetadata(javafx.scene.control.Slider.class, ControlMetadata); + private final ComponentClassMetadata SpinnerMetadata = + new ComponentClassMetadata(javafx.scene.control.Spinner.class, ControlMetadata); + private final ComponentClassMetadata SplitMenuButtonMetadata = + new ComponentClassMetadata(javafx.scene.control.SplitMenuButton.class, MenuButtonMetadata); + private final ComponentClassMetadata SplitPaneMetadata = + new ComponentClassMetadata(javafx.scene.control.SplitPane.class, ControlMetadata); + private final ComponentClassMetadata TabMetadata = + new ComponentClassMetadata(javafx.scene.control.Tab.class, null); + private final ComponentClassMetadata TabPaneMetadata = + new ComponentClassMetadata(javafx.scene.control.TabPane.class, ControlMetadata); + private final ComponentClassMetadata TableColumnMetadata = + new ComponentClassMetadata(javafx.scene.control.TableColumn.class, TableColumnBaseMetadata); + private final ComponentClassMetadata TableViewMetadata = + new ComponentClassMetadata(javafx.scene.control.TableView.class, ControlMetadata); + private final ComponentClassMetadata TextAreaMetadata = + new ComponentClassMetadata(javafx.scene.control.TextArea.class, TextInputControlMetadata); + private final ComponentClassMetadata TextFormatterMetadata = + new ComponentClassMetadata(javafx.scene.control.TextFormatter.class, null); + private final ComponentClassMetadata TitledPaneMetadata = + new ComponentClassMetadata(javafx.scene.control.TitledPane.class, LabeledMetadata); + private final ComponentClassMetadata ToolBarMetadata = + new ComponentClassMetadata(javafx.scene.control.ToolBar.class, ControlMetadata); + private final ComponentClassMetadata TooltipMetadata = + new ComponentClassMetadata(javafx.scene.control.Tooltip.class, PopupControlMetadata); + private final ComponentClassMetadata TreeTableColumnMetadata = + new ComponentClassMetadata(javafx.scene.control.TreeTableColumn.class, TableColumnBaseMetadata); + private final ComponentClassMetadata TreeTableViewMetadata = + new ComponentClassMetadata(javafx.scene.control.TreeTableView.class, ControlMetadata); + private final ComponentClassMetadata TreeViewMetadata = + new ComponentClassMetadata(javafx.scene.control.TreeView.class, ControlMetadata); + private final ComponentClassMetadata ImageViewMetadata = + new ComponentClassMetadata(javafx.scene.image.ImageView.class, NodeMetadata); + private final ComponentClassMetadata AnchorPaneMetadata = + new ComponentClassMetadata(javafx.scene.layout.AnchorPane.class, PaneMetadata); + private final ComponentClassMetadata BorderPaneMetadata = + new ComponentClassMetadata(javafx.scene.layout.BorderPane.class, PaneMetadata); + private final ComponentClassMetadata ColumnConstraintsMetadata = + new ComponentClassMetadata(javafx.scene.layout.ColumnConstraints.class, null); + private final ComponentClassMetadata FlowPaneMetadata = + new ComponentClassMetadata(javafx.scene.layout.FlowPane.class, PaneMetadata); + private final ComponentClassMetadata GridPaneMetadata = + new ComponentClassMetadata(javafx.scene.layout.GridPane.class, PaneMetadata); + private final ComponentClassMetadata HBoxMetadata = + new ComponentClassMetadata(javafx.scene.layout.HBox.class, PaneMetadata); + private final ComponentClassMetadata RowConstraintsMetadata = + new ComponentClassMetadata(javafx.scene.layout.RowConstraints.class, null); + private final ComponentClassMetadata StackPaneMetadata = + new ComponentClassMetadata(javafx.scene.layout.StackPane.class, PaneMetadata); + private final ComponentClassMetadata TilePaneMetadata = + new ComponentClassMetadata(javafx.scene.layout.TilePane.class, PaneMetadata); + private final ComponentClassMetadata VBoxMetadata = + new ComponentClassMetadata(javafx.scene.layout.VBox.class, PaneMetadata); + private final ComponentClassMetadata MediaViewMetadata = + new ComponentClassMetadata(javafx.scene.media.MediaView.class, NodeMetadata); + private final ComponentClassMetadata ArcMetadata = + new ComponentClassMetadata(javafx.scene.shape.Arc.class, ShapeMetadata); + private final ComponentClassMetadata ArcToMetadata = + new ComponentClassMetadata(javafx.scene.shape.ArcTo.class, PathElementMetadata); + private final ComponentClassMetadata BoxMetadata = + new ComponentClassMetadata(javafx.scene.shape.Box.class, Shape3DMetadata); + private final ComponentClassMetadata CircleMetadata = + new ComponentClassMetadata(javafx.scene.shape.Circle.class, ShapeMetadata); + private final ComponentClassMetadata ClosePathMetadata = + new ComponentClassMetadata(javafx.scene.shape.ClosePath.class, PathElementMetadata); + private final ComponentClassMetadata CubicCurveMetadata = + new ComponentClassMetadata(javafx.scene.shape.CubicCurve.class, ShapeMetadata); + private final ComponentClassMetadata CubicCurveToMetadata = + new ComponentClassMetadata(javafx.scene.shape.CubicCurveTo.class, PathElementMetadata); + private final ComponentClassMetadata CylinderMetadata = + new ComponentClassMetadata(javafx.scene.shape.Cylinder.class, Shape3DMetadata); + private final ComponentClassMetadata EllipseMetadata = + new ComponentClassMetadata(javafx.scene.shape.Ellipse.class, ShapeMetadata); +// private final ComponentClassMetadata ExpandedPanelMetadata = +// new ComponentClassMetadata( com.gluonhq.charm.glisten.control.ExpansionPanel.ExpandedPanel.class, RegionMetadata); +// private final ComponentClassMetadata ExpansionPanelMetadata = +// new ComponentClassMetadata( com.gluonhq.charm.glisten.control.ExpansionPanel.class, ControlMetadata); +// private final ComponentClassMetadata ExpansionPanelContainerMetadata = +// new ComponentClassMetadata(com.gluonhq.charm.glisten.control.ExpansionPanelContainer.class, ControlMetadata); + private final ComponentClassMetadata HLineToMetadata = + new ComponentClassMetadata(javafx.scene.shape.HLineTo.class, PathElementMetadata); + private final ComponentClassMetadata LineMetadata = + new ComponentClassMetadata(javafx.scene.shape.Line.class, ShapeMetadata); + private final ComponentClassMetadata LineToMetadata = + new ComponentClassMetadata(javafx.scene.shape.LineTo.class, PathElementMetadata); + private final ComponentClassMetadata MeshViewMetadata = + new ComponentClassMetadata(javafx.scene.shape.MeshView.class, Shape3DMetadata); + private final ComponentClassMetadata MoveToMetadata = + new ComponentClassMetadata(javafx.scene.shape.MoveTo.class, PathElementMetadata); +// private final ComponentClassMetadata OptionMetadata = +// new ComponentClassMetadata(com.gluonhq.charm.glisten.control.settings.Option.class, null); + private final ComponentClassMetadata PathMetadata = + new ComponentClassMetadata(javafx.scene.shape.Path.class, ShapeMetadata); + private final ComponentClassMetadata PolygonMetadata = + new ComponentClassMetadata(javafx.scene.shape.Polygon.class, ShapeMetadata); + private final ComponentClassMetadata PolylineMetadata = + new ComponentClassMetadata(javafx.scene.shape.Polyline.class, ShapeMetadata); + private final ComponentClassMetadata QuadCurveMetadata = + new ComponentClassMetadata(javafx.scene.shape.QuadCurve.class, ShapeMetadata); + private final ComponentClassMetadata QuadCurveToMetadata = + new ComponentClassMetadata(javafx.scene.shape.QuadCurveTo.class, PathElementMetadata); + private final ComponentClassMetadata RectangleMetadata = + new ComponentClassMetadata(javafx.scene.shape.Rectangle.class, ShapeMetadata); + private final ComponentClassMetadata SVGPathMetadata = + new ComponentClassMetadata(javafx.scene.shape.SVGPath.class, ShapeMetadata); + private final ComponentClassMetadata SphereMetadata = + new ComponentClassMetadata(javafx.scene.shape.Sphere.class, Shape3DMetadata); + private final ComponentClassMetadata VLineToMetadata = + new ComponentClassMetadata(javafx.scene.shape.VLineTo.class, PathElementMetadata); + private final ComponentClassMetadata TextMetadata = + new ComponentClassMetadata(javafx.scene.text.Text.class, ShapeMetadata); + private final ComponentClassMetadata TextFlowMetadata = + new ComponentClassMetadata(javafx.scene.text.TextFlow.class, PaneMetadata); + private final ComponentClassMetadata HTMLEditorMetadata = + new ComponentClassMetadata(javafx.scene.web.HTMLEditor.class, ControlMetadata); + private final ComponentClassMetadata WebViewMetadata = + new ComponentClassMetadata(javafx.scene.web.WebView.class, ParentMetadata); + private final ComponentClassMetadata IncludeElementMetadata = + new ComponentClassMetadata(FXOMIntrinsic.class, null); + + + // Property Names + + private final PropertyName absoluteName = + new PropertyName("absolute"); + private final PropertyName acceleratorName = + new PropertyName("accelerator"); + private final PropertyName accessibleHelpName = + new PropertyName("accessibleHelp"); + private final PropertyName accessibleRoleName = + new PropertyName("accessibleRole"); + private final PropertyName accessibleRoleDescriptionName = + new PropertyName("accessibleRoleDescription"); + private final PropertyName accessibleTextName = + new PropertyName("accessibleText"); + private final PropertyName actionItemsName = + new PropertyName("actionItems"); + private final PropertyName alignmentName = + new PropertyName("alignment"); + private final PropertyName allowIndeterminateName = + new PropertyName("allowIndeterminate"); + private final PropertyName alternativeColumnFillVisibleName = + new PropertyName("alternativeColumnFillVisible"); + private final PropertyName alternativeRowFillVisibleName = + new PropertyName("alternativeRowFillVisible"); + private final PropertyName anchorLocationName = + new PropertyName("anchorLocation"); + private final PropertyName anchorXName = + new PropertyName("anchorX"); + private final PropertyName anchorYName = + new PropertyName("anchorY"); + private final PropertyName animatedName = + new PropertyName("animated"); + private final PropertyName arcHeightName = + new PropertyName("arcHeight"); + private final PropertyName arcWidthName = + new PropertyName("arcWidth"); + private final PropertyName autoFixName = + new PropertyName("autoFix"); + private final PropertyName autoHideName = + new PropertyName("autoHide"); + private final PropertyName autoRangingName = + new PropertyName("autoRanging"); + private final PropertyName autoSizeChildrenName = + new PropertyName("autoSizeChildren"); + private final PropertyName axisSortingPolicyName = + new PropertyName("axisSortingPolicy"); + private final PropertyName barGapName = + new PropertyName("barGap"); + private final PropertyName baselineOffsetName = + new PropertyName("baselineOffset"); + private final PropertyName blendModeName = + new PropertyName("blendMode"); + private final PropertyName blockIncrementName = + new PropertyName("blockIncrement"); + private final PropertyName bottomName = + new PropertyName("bottom"); + private final PropertyName bottomNavigationTypeName = + new PropertyName("type"); + private final PropertyName boundsInLocalName = + new PropertyName("boundsInLocal"); + private final PropertyName boundsInParentName = + new PropertyName("boundsInParent"); + private final PropertyName boundsTypeName = + new PropertyName("boundsType"); + private final PropertyName buttonCellName = + new PropertyName("buttonCell"); + private final PropertyName buttonMinWidthName = + new PropertyName("buttonMinWidth"); + private final PropertyName buttonOrderName = + new PropertyName("buttonOrder"); + private final PropertyName buttonsName = + new PropertyName("buttons"); + private final PropertyName buttonTypesName = + new PropertyName("buttonTypes"); + private final PropertyName cacheName = + new PropertyName("cache"); + private final PropertyName cacheHintName = + new PropertyName("cacheHint"); + private final PropertyName cacheShapeName = + new PropertyName("cacheShape"); + private final PropertyName cancelButtonName = + new PropertyName("cancelButton"); + private final PropertyName categoriesName = + new PropertyName("categories"); + private final PropertyName categoryGapName = + new PropertyName("categoryGap"); + private final PropertyName categorySpacingName = + new PropertyName("categorySpacing"); + private final PropertyName centerName = + new PropertyName("center"); + private final PropertyName centerShapeName = + new PropertyName("centerShape"); + private final PropertyName centerXName = + new PropertyName("centerX"); + private final PropertyName centerYName = + new PropertyName("centerY"); + private final PropertyName childrenName = + new PropertyName("children"); + private final PropertyName clipName = + new PropertyName("clip"); + private final PropertyName clockwiseName = + new PropertyName("clockwise"); + private final PropertyName closableName = + new PropertyName("closable"); + private final PropertyName collapsedContentName = + new PropertyName("collapsedContent"); + private final PropertyName collapsibleName = + new PropertyName("collapsible"); + private final PropertyName colorName = + new PropertyName("color"); + private final PropertyName columnConstraintsName = + new PropertyName("columnConstraints"); + private final PropertyName columnHalignmentName = + new PropertyName("columnHalignment"); + private final PropertyName columnResizePolicyName = + new PropertyName("columnResizePolicy"); + private final PropertyName columnsName = + new PropertyName("columns"); + private final PropertyName consumeAutoHidingEventsName = + new PropertyName("consumeAutoHidingEvents"); + private final PropertyName contentName = + new PropertyName("content"); + private final PropertyName contentBiasName = + new PropertyName("contentBias"); + private final PropertyName contentDisplayName = + new PropertyName("contentDisplay"); + private final PropertyName contentTextName = + new PropertyName("contentText"); + private final PropertyName contextMenuName = + new PropertyName("contextMenu"); + private final PropertyName contextMenuEnabledName = + new PropertyName("contextMenuEnabled"); + private final PropertyName controlXName = + new PropertyName("controlX"); + private final PropertyName controlX1Name = + new PropertyName("controlX1"); + private final PropertyName controlX2Name = + new PropertyName("controlX2"); + private final PropertyName controlYName = + new PropertyName("controlY"); + private final PropertyName controlY1Name = + new PropertyName("controlY1"); + private final PropertyName controlY2Name = + new PropertyName("controlY2"); + private final PropertyName createSymbolsName = + new PropertyName("createSymbols"); + private final PropertyName cullFaceName = + new PropertyName("cullFace"); + private final PropertyName currentPageIndexName = + new PropertyName("currentPageIndex"); + private final PropertyName cursorName = + new PropertyName("cursor"); + private final PropertyName defaultButtonName = + new PropertyName("defaultButton"); + private final PropertyName depthName = + new PropertyName("depth"); + private final PropertyName depthTestName = + new PropertyName("depthTest"); + private final PropertyName disableName = + new PropertyName("disable"); + private final PropertyName dividerPositionsName = + new PropertyName("dividerPositions"); + private final PropertyName divisionsName = + new PropertyName("divisions"); + private final PropertyName drawModeName = + new PropertyName("drawMode"); + private final PropertyName editableName = + new PropertyName("editable"); + private final PropertyName effectName = + new PropertyName("effect"); + private final PropertyName effectiveNodeOrientationName = + new PropertyName("effectiveNodeOrientation"); + private final PropertyName elementsName = + new PropertyName("elements"); + private final PropertyName ellipsisStringName = + new PropertyName("ellipsisString"); + private final PropertyName endMarginName = + new PropertyName("endMargin"); + private final PropertyName endXName = + new PropertyName("endX"); + private final PropertyName endYName = + new PropertyName("endY"); + private final PropertyName expandableContentName = + new PropertyName("expandableContent"); + private final PropertyName expandedContentName = + new PropertyName("expandedContent"); + private final PropertyName expandedName = + new PropertyName("expanded"); + private final PropertyName expandedItemCountName = + new PropertyName("expandedItemCount"); + private final PropertyName expandedPropertyName = + new PropertyName("expanded"); + private final PropertyName farClipName = + new PropertyName("farClip"); + private final PropertyName fieldOfViewName = + new PropertyName("fieldOfView"); + private final PropertyName fillName = + new PropertyName("fill"); + private final PropertyName fillHeightName = + new PropertyName("fillHeight"); + private final PropertyName fillRuleName = + new PropertyName("fillRule"); + private final PropertyName fillWidthName = + new PropertyName("fillWidth"); + private final PropertyName fitHeightName = + new PropertyName("fitHeight"); + private final PropertyName fitToHeightName = + new PropertyName("fitToHeight"); + private final PropertyName fitToWidthName = + new PropertyName("fitToWidth"); + private final PropertyName fitWidthName = + new PropertyName("fitWidth"); + private final PropertyName fixedCellSizeName = + new PropertyName("fixedCellSize"); + private final PropertyName fixedEyeAtCameraZeroName = + new PropertyName("fixedEyeAtCameraZero"); + private final PropertyName focusTraversableName = + new PropertyName("focusTraversable"); + private final PropertyName fontName = + new PropertyName("font"); + private final PropertyName fontScaleName = + new PropertyName("fontScale"); + private final PropertyName fontSmoothingTypeName = + new PropertyName("fontSmoothingType"); + private final PropertyName forceZeroInRangeName = + new PropertyName("forceZeroInRange"); + private final PropertyName gapStartAndEndName = + new PropertyName("gapStartAndEnd"); + private final PropertyName graphicName = + new PropertyName("graphic"); + private final PropertyName graphicTextGapName = + new PropertyName("graphicTextGap"); + private final PropertyName gridLinesVisibleName = + new PropertyName("gridLinesVisible"); + private final PropertyName halignmentName = + new PropertyName("halignment"); + private final PropertyName hbarPolicyName = + new PropertyName("hbarPolicy"); + private final PropertyName headerName = + new PropertyName("header"); + private final PropertyName headerTextName = + new PropertyName("headerText"); + private final PropertyName heightName = + new PropertyName("height"); + private final PropertyName hgapName = + new PropertyName("hgap"); + private final PropertyName hgrowName = + new PropertyName("hgrow"); + private final PropertyName hideOnClickName = + new PropertyName("hideOnClick"); + private final PropertyName hideOnEscapeName = + new PropertyName("hideOnEscape"); + private final PropertyName hmaxName = + new PropertyName("hmax"); + private final PropertyName hminName = + new PropertyName("hmin"); + private final PropertyName horizontalGridLinesVisibleName = + new PropertyName("horizontalGridLinesVisible"); + private final PropertyName horizontalZeroLineVisibleName = + new PropertyName("horizontalZeroLineVisible"); + private final PropertyName htmlTextName = + new PropertyName("htmlText"); + private final PropertyName hvalueName = + new PropertyName("hvalue"); + private final PropertyName idName = + new PropertyName("id"); + private final PropertyName imageName = + new PropertyName("image"); + private final PropertyName indeterminateName = + new PropertyName("indeterminate"); + private final PropertyName insetsName = + new PropertyName("insets"); + private final PropertyName itemsName = + new PropertyName("items"); + private final PropertyName labelName = + new PropertyName("label"); + private final PropertyName labelForName = + new PropertyName("labelFor"); + private final PropertyName labelFormatterName = + new PropertyName("labelFormatter"); + private final PropertyName labelLineLengthName = + new PropertyName("labelLineLength"); + private final PropertyName labelPaddingName = + new PropertyName("labelPadding"); + private final PropertyName labelsVisibleName = + new PropertyName("labelsVisible"); + private final PropertyName largeArcFlagName = + new PropertyName("largeArcFlag"); + private final PropertyName layoutBoundsName = + new PropertyName("layoutBounds"); private final PropertyName layoutXName = new PropertyName("layoutX"); private final PropertyName layoutYName = new PropertyName("layoutY"); - private final PropertyName translateXName = - new PropertyName("translateX"); - private final PropertyName translateYName = - new PropertyName("translateY"); - private final PropertyName translateZName = - new PropertyName("translateZ"); + private final PropertyName leftName = + new PropertyName("left"); + private final PropertyName legendSideName = + new PropertyName("legendSide"); + private final PropertyName legendVisibleName = + new PropertyName("legendVisible"); + private final PropertyName lengthName = + new PropertyName("length"); + private final PropertyName lightOnName = + new PropertyName("lightOn"); + private final PropertyName lineSpacingName = + new PropertyName("lineSpacing"); + private final PropertyName lowerBoundName = + new PropertyName("lowerBound"); + private final PropertyName majorTickUnitName = + new PropertyName("majorTickUnit"); + private final PropertyName materialName = + new PropertyName("material"); + private final PropertyName maxName = + new PropertyName("max"); + private final PropertyName maxHeightName = + new PropertyName("maxHeight"); + private final PropertyName maxPageIndicatorCountName = + new PropertyName("maxPageIndicatorCount"); + private final PropertyName maxWidthName = + new PropertyName("maxWidth"); + private final PropertyName menusName = + new PropertyName("menus"); + private final PropertyName meshName = + new PropertyName("mesh"); + private final PropertyName minName = + new PropertyName("min"); + private final PropertyName minHeightName = + new PropertyName("minHeight"); + private final PropertyName minorTickCountName = + new PropertyName("minorTickCount"); + private final PropertyName minorTickLengthName = + new PropertyName("minorTickLength"); + private final PropertyName minorTickVisibleName = + new PropertyName("minorTickVisible"); + private final PropertyName minViewportHeightName = + new PropertyName("minViewportHeight"); + private final PropertyName minViewportWidthName = + new PropertyName("minViewportWidth"); + private final PropertyName minWidthName = + new PropertyName("minWidth"); + private final PropertyName mnemonicParsingName = + new PropertyName("mnemonicParsing"); + private final PropertyName mouseTransparentName = + new PropertyName("mouseTransparent"); + private final PropertyName nearClipName = + new PropertyName("nearClip"); + private final PropertyName nodeOrientationName = + new PropertyName("nodeOrientation"); + private final PropertyName onActionName = + new PropertyName("onAction"); + private final PropertyName onAutoHideName = + new PropertyName("onAutoHide"); + private final PropertyName onClosedName = + new PropertyName("onClosed"); + private final PropertyName onCloseRequestName = + new PropertyName("onCloseRequest"); + private final PropertyName onContextMenuRequestedName = + new PropertyName("onContextMenuRequested"); + private final PropertyName onDragDetectedName = + new PropertyName("onDragDetected"); + private final PropertyName onDragDoneName = + new PropertyName("onDragDone"); + private final PropertyName onDragDroppedName = + new PropertyName("onDragDropped"); + private final PropertyName onDragEnteredName = + new PropertyName("onDragEntered"); + private final PropertyName onDragExitedName = + new PropertyName("onDragExited"); + private final PropertyName onDragOverName = + new PropertyName("onDragOver"); + private final PropertyName onEditCancelName = + new PropertyName("onEditCancel"); + private final PropertyName onEditCommitName = + new PropertyName("onEditCommit"); + private final PropertyName onEditStartName = + new PropertyName("onEditStart"); + private final PropertyName onErrorName = + new PropertyName("onError"); + private final PropertyName onHiddenName = + new PropertyName("onHidden"); + private final PropertyName onHidingName = + new PropertyName("onHiding"); + private final PropertyName onInputMethodTextChangedName = + new PropertyName("onInputMethodTextChanged"); + private final PropertyName onKeyPressedName = + new PropertyName("onKeyPressed"); + private final PropertyName onKeyReleasedName = + new PropertyName("onKeyReleased"); + private final PropertyName onKeyTypedName = + new PropertyName("onKeyTyped"); + private final PropertyName onMenuValidationName = + new PropertyName("onMenuValidation"); + private final PropertyName onMouseClickedName = + new PropertyName("onMouseClicked"); + private final PropertyName onMouseDragEnteredName = + new PropertyName("onMouseDragEntered"); + private final PropertyName onMouseDragExitedName = + new PropertyName("onMouseDragExited"); + private final PropertyName onMouseDraggedName = + new PropertyName("onMouseDragged"); + private final PropertyName onMouseDragOverName = + new PropertyName("onMouseDragOver"); + private final PropertyName onMouseDragReleasedName = + new PropertyName("onMouseDragReleased"); + private final PropertyName onMouseEnteredName = + new PropertyName("onMouseEntered"); + private final PropertyName onMouseExitedName = + new PropertyName("onMouseExited"); + private final PropertyName onMouseMovedName = + new PropertyName("onMouseMoved"); + private final PropertyName onMousePressedName = + new PropertyName("onMousePressed"); + private final PropertyName onMouseReleasedName = + new PropertyName("onMouseReleased"); + private final PropertyName onPullToRefreshName = + new PropertyName("onPullToRefresh"); + private final PropertyName onRotateName = + new PropertyName("onRotate"); + private final PropertyName onRotationFinishedName = + new PropertyName("onRotationFinished"); + private final PropertyName onRotationStartedName = + new PropertyName("onRotationStarted"); + private final PropertyName onScrollName = + new PropertyName("onScroll"); + private final PropertyName onScrollFinishedName = + new PropertyName("onScrollFinished"); + private final PropertyName onScrollStartedName = + new PropertyName("onScrollStarted"); + private final PropertyName onScrollToName = + new PropertyName("onScrollTo"); + private final PropertyName onScrollToColumnName = + new PropertyName("onScrollToColumn"); + private final PropertyName onSelectionChangedName = + new PropertyName("onSelectionChanged"); + private final PropertyName onShowingName = + new PropertyName("onShowing"); + private final PropertyName onShownName = + new PropertyName("onShown"); + private final PropertyName onSortName = + new PropertyName("onSort"); + private final PropertyName onSwipeDownName = + new PropertyName("onSwipeDown"); + private final PropertyName onSwipeLeftName = + new PropertyName("onSwipeLeft"); + private final PropertyName onSwipeRightName = + new PropertyName("onSwipeRight"); + private final PropertyName onSwipeUpName = + new PropertyName("onSwipeUp"); + private final PropertyName onTouchMovedName = + new PropertyName("onTouchMoved"); + private final PropertyName onTouchPressedName = + new PropertyName("onTouchPressed"); + private final PropertyName onTouchReleasedName = + new PropertyName("onTouchReleased"); + private final PropertyName onTouchStationaryName = + new PropertyName("onTouchStationary"); + private final PropertyName onZoomName = + new PropertyName("onZoom"); + private final PropertyName onZoomFinishedName = + new PropertyName("onZoomFinished"); + private final PropertyName onZoomStartedName = + new PropertyName("onZoomStarted"); + private final PropertyName opacityName = + new PropertyName("opacity"); + private final PropertyName opaqueInsetsName = + new PropertyName("opaqueInsets"); + private final PropertyName optionsName = + new PropertyName("options"); + private final PropertyName orientationName = + new PropertyName("orientation"); + private final PropertyName paddingName = + new PropertyName("padding"); + private final PropertyName pageCountName = + new PropertyName("pageCount"); + private final PropertyName panesName = + new PropertyName("panes"); + private final PropertyName pannableName = + new PropertyName("pannable"); + private final PropertyName percentHeightName = + new PropertyName("percentHeight"); + private final PropertyName percentWidthName = + new PropertyName("percentWidth"); + private final PropertyName pickOnBoundsName = + new PropertyName("pickOnBounds"); + private final PropertyName placeholderName = + new PropertyName("placeholder"); + private final PropertyName pointsName = + new PropertyName("points"); + private final PropertyName popupSideName = + new PropertyName("popupSide"); + private final PropertyName prefColumnCountName = + new PropertyName("prefColumnCount"); + private final PropertyName prefColumnsName = + new PropertyName("prefColumns"); + private final PropertyName prefHeightName = + new PropertyName("prefHeight"); + private final PropertyName prefRowCountName = + new PropertyName("prefRowCount"); + private final PropertyName prefRowsName = + new PropertyName("prefRows"); + private final PropertyName prefTileHeightName = + new PropertyName("prefTileHeight"); + private final PropertyName prefTileWidthName = + new PropertyName("prefTileWidth"); + private final PropertyName prefViewportHeightName = + new PropertyName("prefViewportHeight"); + private final PropertyName prefViewportWidthName = + new PropertyName("prefViewportWidth"); + private final PropertyName prefWidthName = + new PropertyName("prefWidth"); + private final PropertyName prefWrapLengthName = + new PropertyName("prefWrapLength"); + private final PropertyName preserveRatioName = + new PropertyName("preserveRatio"); + private final PropertyName progressName = + new PropertyName("progress"); + private final PropertyName promptTextName = + new PropertyName("promptText"); + private final PropertyName radiusName = + new PropertyName("radius"); + private final PropertyName radiusXName = + new PropertyName("radiusX"); + private final PropertyName radiusYName = + new PropertyName("radiusY"); + private final PropertyName resizableName = + new PropertyName("resizable"); + private final PropertyName rightName = + new PropertyName("right"); + private final PropertyName rotateName = + new PropertyName("rotate"); + private final PropertyName rotateGraphicName = + new PropertyName("rotateGraphic"); + private final PropertyName rotationAxisName = + new PropertyName("rotationAxis"); + private final PropertyName rowConstraintsName = + new PropertyName("rowConstraints"); + private final PropertyName rowValignmentName = + new PropertyName("rowValignment"); + private final PropertyName scaleName = + new PropertyName("scale"); + private final PropertyName scaleShapeName = + new PropertyName("scaleShape"); private final PropertyName scaleXName = new PropertyName("scaleX"); private final PropertyName scaleYName = new PropertyName("scaleY"); private final PropertyName scaleZName = new PropertyName("scaleZ"); - private final PropertyName rotateName = - new PropertyName("rotate"); - private final PropertyName rotationAxisName = - new PropertyName("rotationAxis"); + private final PropertyName scopeName = + new PropertyName("scope"); + private final PropertyName scrollLeftName = + new PropertyName("scrollLeft"); + private final PropertyName scrollTopName = + new PropertyName("scrollTop"); + private final PropertyName searchBoxVisibleName = + new PropertyName("searchBoxVisible"); + private final PropertyName selectedName = + new PropertyName("selected"); + private final PropertyName selectionTypeName = + new PropertyName("selectionType"); + private final PropertyName shapeName = + new PropertyName("shape"); + private final PropertyName showRootName = + new PropertyName("showRoot"); + private final PropertyName showTickLabelsName = + new PropertyName("showTickLabels"); + private final PropertyName showTickMarksName = + new PropertyName("showTickMarks"); + private final PropertyName showWeekNumbersName = + new PropertyName("showWeekNumbers"); + private final PropertyName sideName = + new PropertyName("side"); + private final PropertyName smoothName = + new PropertyName("smooth"); + private final PropertyName snapToPixelName = + new PropertyName("snapToPixel"); + private final PropertyName snapToTicksName = + new PropertyName("snapToTicks"); + private final PropertyName sortableName = + new PropertyName("sortable"); + private final PropertyName sortModeName = + new PropertyName("sortMode"); + private final PropertyName sortNodeName = + new PropertyName("sortNode"); + private final PropertyName sortOrderName = + new PropertyName("sortOrder"); + private final PropertyName sortTypeName = + new PropertyName("sortType"); + private final PropertyName spacingName = + new PropertyName("spacing"); + private final PropertyName startAngleName = + new PropertyName("startAngle"); + private final PropertyName startMarginName = + new PropertyName("startMargin"); + private final PropertyName startXName = + new PropertyName("startX"); + private final PropertyName startYName = + new PropertyName("startY"); + private final PropertyName strikethroughName = + new PropertyName("strikethrough"); + private final PropertyName strokeName = + new PropertyName("stroke"); + private final PropertyName strokeDashOffsetName = + new PropertyName("strokeDashOffset"); + private final PropertyName strokeLineCapName = + new PropertyName("strokeLineCap"); + private final PropertyName strokeLineJoinName = + new PropertyName("strokeLineJoin"); + private final PropertyName strokeMiterLimitName = + new PropertyName("strokeMiterLimit"); + private final PropertyName strokeTypeName = + new PropertyName("strokeType"); + private final PropertyName strokeWidthName = + new PropertyName("strokeWidth"); + private final PropertyName styleName = + new PropertyName("style"); + private final PropertyName styleClassName = + new PropertyName("styleClass"); + private final PropertyName stylesheetsName = + new PropertyName("stylesheets"); + private final PropertyName sweepFlagName = + new PropertyName("sweepFlag"); + private final PropertyName tabClosingPolicyName = + new PropertyName("tabClosingPolicy"); + private final PropertyName tableMenuButtonVisibleName = + new PropertyName("tableMenuButtonVisible"); + private final PropertyName tabMaxHeightName = + new PropertyName("tabMaxHeight"); + private final PropertyName tabMaxWidthName = + new PropertyName("tabMaxWidth"); + private final PropertyName tabMinHeightName = + new PropertyName("tabMinHeight"); + private final PropertyName tabMinWidthName = + new PropertyName("tabMinWidth"); + private final PropertyName tabsName = + new PropertyName("tabs"); + private final PropertyName textName = + new PropertyName("text"); + private final PropertyName textAlignmentName = + new PropertyName("textAlignment"); + private final PropertyName textFillName = + new PropertyName("textFill"); + private final PropertyName textFormatterName = + new PropertyName("textFormatter"); + private final PropertyName textOriginName = + new PropertyName("textOrigin"); + private final PropertyName textOverrunName = + new PropertyName("textOverrun"); + private final PropertyName tickLabelFillName = + new PropertyName("tickLabelFill"); + private final PropertyName tickLabelFontName = + new PropertyName("tickLabelFont"); + private final PropertyName tickLabelFormatterName = + new PropertyName("tickLabelFormatter"); + private final PropertyName tickLabelGapName = + new PropertyName("tickLabelGap"); + private final PropertyName tickLabelRotationName = + new PropertyName("tickLabelRotation"); + private final PropertyName tickLabelsVisibleName = + new PropertyName("tickLabelsVisible"); + private final PropertyName tickLengthName = + new PropertyName("tickLength"); + private final PropertyName tickMarksName = + new PropertyName("tickMarks"); + private final PropertyName tickMarkVisibleName = + new PropertyName("tickMarkVisible"); + private final PropertyName tickUnitName = + new PropertyName("tickUnit"); + private final PropertyName tileAlignmentName = + new PropertyName("tileAlignment"); + private final PropertyName tileHeightName = + new PropertyName("tileHeight"); + private final PropertyName tileWidthName = + new PropertyName("tileWidth"); + private final PropertyName titleFilterName = + new PropertyName("titleFilter"); + private final PropertyName titleName = + new PropertyName("title"); + private final PropertyName titleNodesName = + new PropertyName("titleNodes"); + private final PropertyName titleSideName = + new PropertyName("titleSide"); + private final PropertyName toggleGroupName = + new PropertyName("toggleGroup"); + private final PropertyName togglesName = + new PropertyName("toggles"); + private final PropertyName tooltipName = + new PropertyName("tooltip"); + private final PropertyName topName = + new PropertyName("top"); + private final PropertyName translateXName = + new PropertyName("translateX"); + private final PropertyName translateYName = + new PropertyName("translateY"); + private final PropertyName translateZName = + new PropertyName("translateZ"); + private final PropertyName treeColumnName = + new PropertyName("treeColumn"); + private final PropertyName typeName = + new PropertyName("type"); + private final PropertyName underlineName = + new PropertyName("underline"); + private final PropertyName unitIncrementName = + new PropertyName("unitIncrement"); + private final PropertyName upperBoundName = + new PropertyName("upperBound"); + private final PropertyName userAgentStylesheetName = + new PropertyName("userAgentStylesheet"); + private final PropertyName valignmentName = + new PropertyName("valignment"); + private final PropertyName valueName = + new PropertyName("value"); + private final PropertyName vbarPolicyName = + new PropertyName("vbarPolicy"); + private final PropertyName verticalFieldOfViewName = + new PropertyName("verticalFieldOfView"); + private final PropertyName verticalGridLinesVisibleName = + new PropertyName("verticalGridLinesVisible"); + private final PropertyName verticalZeroLineVisibleName = + new PropertyName("verticalZeroLineVisible"); + private final PropertyName vgapName = + new PropertyName("vgap"); + private final PropertyName vgrowName = + new PropertyName("vgrow"); + private final PropertyName viewportName = + new PropertyName("viewport"); + private final PropertyName viewportBoundsName = + new PropertyName("viewportBounds"); + private final PropertyName visibleName = + new PropertyName("visible"); + private final PropertyName visibleAmountName = + new PropertyName("visibleAmount"); + private final PropertyName visibleRowCountName = + new PropertyName("visibleRowCount"); + private final PropertyName visitedName = + new PropertyName("visited"); + private final PropertyName vmaxName = + new PropertyName("vmax"); + private final PropertyName vminName = + new PropertyName("vmin"); + private final PropertyName vvalueName = + new PropertyName("vvalue"); + private final PropertyName widthName = + new PropertyName("width"); + private final PropertyName wrappingWidthName = + new PropertyName("wrappingWidth"); + private final PropertyName wrapTextName = + new PropertyName("wrapText"); + private final PropertyName xName = + new PropertyName("x"); + private final PropertyName xAxisName = + new PropertyName("xAxis"); + private final PropertyName XAxisRotationName = + new PropertyName("XAxisRotation"); + private final PropertyName yName = + new PropertyName("y"); + private final PropertyName yAxisName = + new PropertyName("yAxis"); + private final PropertyName zeroPositionName = + new PropertyName("zeroPosition"); + private final PropertyName zoomName = + new PropertyName("zoom"); + private final PropertyName SplitPane_resizableWithParentName = + new PropertyName("resizableWithParent", javafx.scene.control.SplitPane.class); + private final PropertyName AnchorPane_bottomAnchorName = + new PropertyName("bottomAnchor", javafx.scene.layout.AnchorPane.class); + private final PropertyName AnchorPane_leftAnchorName = + new PropertyName("leftAnchor", javafx.scene.layout.AnchorPane.class); + private final PropertyName AnchorPane_rightAnchorName = + new PropertyName("rightAnchor", javafx.scene.layout.AnchorPane.class); + private final PropertyName AnchorPane_topAnchorName = + new PropertyName("topAnchor", javafx.scene.layout.AnchorPane.class); + private final PropertyName BorderPane_alignmentName = + new PropertyName("alignment", javafx.scene.layout.BorderPane.class); + private final PropertyName BorderPane_marginName = + new PropertyName("margin", javafx.scene.layout.BorderPane.class); + private final PropertyName FlowPane_marginName = + new PropertyName("margin", javafx.scene.layout.FlowPane.class); + private final PropertyName GridPane_columnIndexName = + new PropertyName("columnIndex", javafx.scene.layout.GridPane.class); + private final PropertyName GridPane_columnSpanName = + new PropertyName("columnSpan", javafx.scene.layout.GridPane.class); + private final PropertyName GridPane_halignmentName = + new PropertyName("halignment", javafx.scene.layout.GridPane.class); + private final PropertyName GridPane_hgrowName = + new PropertyName("hgrow", javafx.scene.layout.GridPane.class); + private final PropertyName GridPane_marginName = + new PropertyName("margin", javafx.scene.layout.GridPane.class); + private final PropertyName GridPane_rowIndexName = + new PropertyName("rowIndex", javafx.scene.layout.GridPane.class); + private final PropertyName GridPane_rowSpanName = + new PropertyName("rowSpan", javafx.scene.layout.GridPane.class); + private final PropertyName GridPane_valignmentName = + new PropertyName("valignment", javafx.scene.layout.GridPane.class); + private final PropertyName GridPane_vgrowName = + new PropertyName("vgrow", javafx.scene.layout.GridPane.class); + private final PropertyName HBox_hgrowName = + new PropertyName("hgrow", javafx.scene.layout.HBox.class); + private final PropertyName HBox_marginName = + new PropertyName("margin", javafx.scene.layout.HBox.class); + private final PropertyName StackPane_alignmentName = + new PropertyName("alignment", javafx.scene.layout.StackPane.class); + private final PropertyName StackPane_marginName = + new PropertyName("margin", javafx.scene.layout.StackPane.class); + private final PropertyName TilePane_alignmentName = + new PropertyName("alignment", javafx.scene.layout.TilePane.class); + private final PropertyName TilePane_marginName = + new PropertyName("margin", javafx.scene.layout.TilePane.class); + private final PropertyName VBox_marginName = + new PropertyName("margin", javafx.scene.layout.VBox.class); + private final PropertyName VBox_vgrowName = + new PropertyName("vgrow", javafx.scene.layout.VBox.class); + private final PropertyName source = + new PropertyName("source"); + + + // Property Metadata + + private final ValuePropertyMetadata absolutePropertyMetadata = + new BooleanPropertyMetadata( + absoluteName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 0)); + private final ValuePropertyMetadata acceleratorPropertyMetadata = + new KeyCombinationPropertyMetadata( + acceleratorName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Properties", "Specific", 1)); + private final ValuePropertyMetadata accessibleHelpPropertyMetadata = + new StringPropertyMetadata( + accessibleHelpName, + true, /* readWrite */ + "", /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 1)); + private final ValuePropertyMetadata accessibleRole_NODE_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.NODE, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_BUTTON_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.BUTTON, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_TOGGLE_BUTTON_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.TOGGLE_BUTTON, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_CHECK_BOX_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.CHECK_BOX, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_COMBO_BOX_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.COMBO_BOX, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_DATE_PICKER_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.DATE_PICKER, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_HYPERLINK_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.HYPERLINK, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_IMAGE_VIEW_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.IMAGE_VIEW, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_TEXT_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.TEXT, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_LIST_VIEW_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.LIST_VIEW, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_MENU_BAR_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.MENU_BAR, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_MENU_BUTTON_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.MENU_BUTTON, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_PARENT_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.PARENT, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_PAGINATION_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.PAGINATION, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_PASSWORD_FIELD_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.PASSWORD_FIELD, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_PROGRESS_INDICATOR_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.PROGRESS_INDICATOR, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_RADIO_BUTTON_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.RADIO_BUTTON, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_SCROLL_BAR_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.SCROLL_BAR, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_SCROLL_PANE_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.SCROLL_PANE, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_SLIDER_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.SLIDER, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_SPINNER_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.SPINNER, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_SPLIT_MENU_BUTTON_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.SPLIT_MENU_BUTTON, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_TAB_PANE_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.TAB_PANE, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_TABLE_VIEW_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.TABLE_VIEW, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_TEXT_AREA_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.TEXT_AREA, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_TEXT_FIELD_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.TEXT_FIELD, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_TITLED_PANE_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.TITLED_PANE, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_TOOL_BAR_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.TOOL_BAR, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_TREE_TABLE_VIEW_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.TREE_TABLE_VIEW, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRole_TREE_VIEW_PropertyMetadata = + new EnumerationPropertyMetadata( + accessibleRoleName, + javafx.scene.AccessibleRole.class, + true, /* readWrite */ + javafx.scene.AccessibleRole.TREE_VIEW, /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 2)); + private final ValuePropertyMetadata accessibleRoleDescriptionPropertyMetadata = + new StringPropertyMetadata( + accessibleRoleDescriptionName, + true, /* readWrite */ + "", /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 3)); + private final ValuePropertyMetadata accessibleTextPropertyMetadata = + new StringPropertyMetadata( + accessibleTextName, + true, /* readWrite */ + "", /* defaultValue */ + new InspectorPath("Properties", "Accessibility", 0)); + private final ComponentPropertyMetadata actionItems_Node_PropertyMetadata = + new ComponentPropertyMetadata( + actionItemsName, + NodeMetadata, + true); /* collection */ + private final ValuePropertyMetadata alignment_TOP_LEFT_PropertyMetadata = + new EnumerationPropertyMetadata( + alignmentName, + javafx.geometry.Pos.class, + true, /* readWrite */ + javafx.geometry.Pos.TOP_LEFT, /* defaultValue */ + new InspectorPath("Properties", "Node", 0)); + private final ValuePropertyMetadata alignment_CENTER_LEFT_PropertyMetadata = + new EnumerationPropertyMetadata( + alignmentName, + javafx.geometry.Pos.class, + true, /* readWrite */ + javafx.geometry.Pos.CENTER_LEFT, /* defaultValue */ + new InspectorPath("Properties", "Node", 0)); + private final ValuePropertyMetadata alignment_CENTER_PropertyMetadata = + new EnumerationPropertyMetadata( + alignmentName, + javafx.geometry.Pos.class, + true, /* readWrite */ + javafx.geometry.Pos.CENTER, /* defaultValue */ + new InspectorPath("Properties", "Node", 0)); + private final ValuePropertyMetadata allowIndeterminatePropertyMetadata = + new BooleanPropertyMetadata( + allowIndeterminateName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 2)); + private final ValuePropertyMetadata alternativeColumnFillVisiblePropertyMetadata = + new BooleanPropertyMetadata( + alternativeColumnFillVisibleName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 88)); + private final ValuePropertyMetadata alternativeRowFillVisiblePropertyMetadata = + new BooleanPropertyMetadata( + alternativeRowFillVisibleName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 94)); + private final ValuePropertyMetadata anchorLocationPropertyMetadata = + new EnumerationPropertyMetadata( + anchorLocationName, + javafx.stage.PopupWindow.AnchorLocation.class, + true, /* readWrite */ + javafx.stage.PopupWindow.AnchorLocation.CONTENT_TOP_LEFT, /* defaultValue */ + new InspectorPath("Layout", "Position", 11)); + private final ValuePropertyMetadata anchorXPropertyMetadata = + new DoublePropertyMetadata( + anchorXName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + Double.NaN, /* defaultValue */ + new InspectorPath("Layout", "Position", 9)); + private final ValuePropertyMetadata anchorYPropertyMetadata = + new DoublePropertyMetadata( + anchorYName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + Double.NaN, /* defaultValue */ + new InspectorPath("Layout", "Position", 10)); + private final ValuePropertyMetadata animatedPropertyMetadata = + new BooleanPropertyMetadata( + animatedName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 43)); + private final ValuePropertyMetadata arcHeightPropertyMetadata = + new DoublePropertyMetadata( + arcHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 44)); + private final ValuePropertyMetadata arcWidthPropertyMetadata = + new DoublePropertyMetadata( + arcWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 3)); + private final ValuePropertyMetadata autoFixPropertyMetadata = + new BooleanPropertyMetadata( + autoFixName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 4)); + private final ValuePropertyMetadata autoHide_true_PropertyMetadata = + new BooleanPropertyMetadata( + autoHideName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 45)); + private final ValuePropertyMetadata autoHide_false_PropertyMetadata = + new BooleanPropertyMetadata( + autoHideName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 45)); + private final ValuePropertyMetadata autoRangingPropertyMetadata = + new BooleanPropertyMetadata( + autoRangingName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 72)); + private final ValuePropertyMetadata autoSizeChildrenPropertyMetadata = + new BooleanPropertyMetadata( + autoSizeChildrenName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Layout", "Extras", 0)); + private final ValuePropertyMetadata axisSortingPolicyPropertyMetadata = + new EnumerationPropertyMetadata( + axisSortingPolicyName, + javafx.scene.chart.LineChart.SortingPolicy.class, + true, /* readWrite */ + javafx.scene.chart.LineChart.SortingPolicy.X_AXIS, /* defaultValue */ + new InspectorPath("Properties", "Specific", 130)); + private final ValuePropertyMetadata barGapPropertyMetadata = + new DoublePropertyMetadata( + barGapName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 4.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 77)); + private final ValuePropertyMetadata baselineOffsetPropertyMetadata = + new DoublePropertyMetadata( + baselineOffsetName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Layout", "Extras", 1)); + private final ValuePropertyMetadata blendModePropertyMetadata = + new EnumerationPropertyMetadata( + blendModeName, + javafx.scene.effect.BlendMode.class, + "SRC_OVER", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Properties", "Extras", 0)); + private final ValuePropertyMetadata blockIncrementPropertyMetadata = + new DoublePropertyMetadata( + blockIncrementName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 10.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 73)); +// private final EnumerationPropertyMetadata bottomNavigationTypePropertyMetadata = +// new EnumerationPropertyMetadata( +// bottomNavigationTypeName, +// BottomNavigation.Type.class, +// true, /* readWrite */ +// BottomNavigation.Type.FIXED, /* defaultValue */ +// new InspectorPath("Properties", "Specific", 0)); + private final ComponentPropertyMetadata bottomPropertyMetadata = + new ComponentPropertyMetadata( + bottomName, + NodeMetadata, + false); /* collection */ + private final ValuePropertyMetadata boundsInLocalPropertyMetadata = + new BoundsPropertyMetadata( + boundsInLocalName, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Layout", "Bounds", 2)); + private final ValuePropertyMetadata boundsInParentPropertyMetadata = + new BoundsPropertyMetadata( + boundsInParentName, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Layout", "Bounds", 3)); + private final ValuePropertyMetadata boundsTypePropertyMetadata = + new EnumerationPropertyMetadata( + boundsTypeName, + javafx.scene.text.TextBoundsType.class, + true, /* readWrite */ + javafx.scene.text.TextBoundsType.LOGICAL, /* defaultValue */ + new InspectorPath("Layout", "Extras", 2)); + private final ValuePropertyMetadata buttonCellPropertyMetadata = + new ListCellPropertyMetadata( + buttonCellName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Properties", "Specific", 40)); + private final ValuePropertyMetadata buttonMinWidthPropertyMetadata = + new DoublePropertyMetadata( + buttonMinWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 70.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 0)); + private final ValuePropertyMetadata buttonOrderPropertyMetadata = + new StringPropertyMetadata( + buttonOrderName, + true, /* readWrite */ + "L_HE+U+FBIX_NCYOA_R", /* defaultValue */ + new InspectorPath("Properties", "Specific", 5)); + private final ComponentPropertyMetadata buttons_EXPANDEDPANEL_PropertyMetadata = + new ComponentPropertyMetadata( + buttonsName, + ButtonBaseMetadata, + true); /* collection */ + private final ComponentPropertyMetadata buttonsPropertyMetadata = + new ComponentPropertyMetadata( + buttonsName, + NodeMetadata, + true); /* collection */ + private final ValuePropertyMetadata buttonTypesPropertyMetadata = + new ButtonTypeListPropertyMetadata( + buttonTypesName, + true, /* readWrite */ + Collections.emptyList(), /* defaultValue */ + new InspectorPath("Properties", "Specific", 18)); + private final ValuePropertyMetadata cachePropertyMetadata = + new BooleanPropertyMetadata( + cacheName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Extras", 2)); + private final ValuePropertyMetadata cacheHintPropertyMetadata = + new EnumerationPropertyMetadata( + cacheHintName, + javafx.scene.CacheHint.class, + true, /* readWrite */ + javafx.scene.CacheHint.DEFAULT, /* defaultValue */ + new InspectorPath("Properties", "Extras", 3)); + private final ValuePropertyMetadata cacheShapePropertyMetadata = + new BooleanPropertyMetadata( + cacheShapeName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Node", 7)); + private final ValuePropertyMetadata cancelButtonPropertyMetadata = + new BooleanPropertyMetadata( + cancelButtonName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 46)); + private final ValuePropertyMetadata categoriesPropertyMetadata = + new StringListPropertyMetadata( + categoriesName, + true, /* readWrite */ + Collections.emptyList(), /* defaultValue */ + new InspectorPath("Properties", "Specific", 78)); + private final ValuePropertyMetadata categoryGapPropertyMetadata = + new DoublePropertyMetadata( + categoryGapName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 10.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 79)); + private final ValuePropertyMetadata categorySpacingPropertyMetadata = + new DoublePropertyMetadata( + categorySpacingName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Properties", "Specific", 80)); + private final ComponentPropertyMetadata centerPropertyMetadata = + new ComponentPropertyMetadata( + centerName, + NodeMetadata, + false); /* collection */ + private final ValuePropertyMetadata centerShapePropertyMetadata = + new BooleanPropertyMetadata( + centerShapeName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Node", 8)); + private final ValuePropertyMetadata centerXPropertyMetadata = + new DoublePropertyMetadata( + centerXName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 0)); + private final ValuePropertyMetadata centerYPropertyMetadata = + new DoublePropertyMetadata( + centerYName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 1)); + private final ComponentPropertyMetadata children_c1_PropertyMetadata = + new ComponentPropertyMetadata( + childrenName, + NodeMetadata, + true); /* collection */ + private final ComponentPropertyMetadata children_empty_PropertyMetadata = + new ComponentPropertyMetadata( + childrenName, + NodeMetadata, + true); /* collection */ + private final ComponentPropertyMetadata clipPropertyMetadata = + new ComponentPropertyMetadata( + clipName, + NodeMetadata, + false); /* collection */ + private final ValuePropertyMetadata clockwisePropertyMetadata = + new BooleanPropertyMetadata( + clockwiseName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 89)); + private final ValuePropertyMetadata closablePropertyMetadata = + new BooleanPropertyMetadata( + closableName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 6)); + private final ComponentPropertyMetadata collapsedContentPropertyMetadata = + new ComponentPropertyMetadata( + collapsedContentName, + NodeMetadata, + false /* collection */ + ); + private final ValuePropertyMetadata collapsiblePropertyMetadata = + new BooleanPropertyMetadata( + collapsibleName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 62)); + private final ValuePropertyMetadata colorPropertyMetadata = + new ColorPropertyMetadata( + colorName, + true, /* readWrite */ + javafx.scene.paint.Color.WHITE, /* defaultValue */ + new InspectorPath("Properties", "Specific", 7)); + private final ComponentPropertyMetadata columnConstraintsPropertyMetadata = + new ComponentPropertyMetadata( + columnConstraintsName, + ColumnConstraintsMetadata, + true); /* collection */ + private final ValuePropertyMetadata columnHalignmentPropertyMetadata = + new EnumerationPropertyMetadata( + columnHalignmentName, + javafx.geometry.HPos.class, + true, /* readWrite */ + javafx.geometry.HPos.LEFT, /* defaultValue */ + new InspectorPath("Properties", "Specific", 63)); + private final ValuePropertyMetadata columnResizePolicy_TABLEVIEW_UNCONSTRAINED_PropertyMetadata = + new TableViewResizePolicyPropertyMetadata( + columnResizePolicyName, + true, /* readWrite */ + javafx.scene.control.TableView.UNCONSTRAINED_RESIZE_POLICY, /* defaultValue */ + new InspectorPath("Properties", "Specific", 34)); + private final ValuePropertyMetadata columnResizePolicy_TREETABLEVIEW_UNCONSTRAINED_PropertyMetadata = + new TreeTableViewResizePolicyPropertyMetadata( + columnResizePolicyName, + true, /* readWrite */ + javafx.scene.control.TreeTableView.UNCONSTRAINED_RESIZE_POLICY, /* defaultValue */ + new InspectorPath("Properties", "Specific", 34)); + private final ComponentPropertyMetadata columns_TableColumn_PropertyMetadata = + new ComponentPropertyMetadata( + columnsName, + TableColumnMetadata, + true); /* collection */ + private final ComponentPropertyMetadata columns_TreeTableColumn_PropertyMetadata = + new ComponentPropertyMetadata( + columnsName, + TreeTableColumnMetadata, + true); /* collection */ + private final ValuePropertyMetadata consumeAutoHidingEventsPropertyMetadata = + new BooleanPropertyMetadata( + consumeAutoHidingEventsName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 64)); + private final ComponentPropertyMetadata content_EXPANDEDPANEL_PropertyMetadata = + new ComponentPropertyMetadata( + contentName, + NodeMetadata, + false); /* collection */ + private final ComponentPropertyMetadata content_Node_NULL_PropertyMetadata = + new ComponentPropertyMetadata( + contentName, + NodeMetadata, + false); /* collection */ + private final ValuePropertyMetadata content_String_PropertyMetadata = + new StringPropertyMetadata( + contentName, + true, /* readWrite */ + "", /* defaultValue */ + new InspectorPath("Properties", "Specific", 10)); + private final ComponentPropertyMetadata content_Node_SEPARATOR_PropertyMetadata = + new ComponentPropertyMetadata( + contentName, + NodeMetadata, + false); /* collection */ + private final ValuePropertyMetadata contentBiasPropertyMetadata = + new EnumerationPropertyMetadata( + contentBiasName, + javafx.geometry.Orientation.class, + "NONE", /* null equivalent */ + false, /* readWrite */ + new InspectorPath("Layout", "Extras", 4)); + private final ValuePropertyMetadata contentDisplayPropertyMetadata = + new EnumerationPropertyMetadata( + contentDisplayName, + javafx.scene.control.ContentDisplay.class, + true, /* readWrite */ + javafx.scene.control.ContentDisplay.LEFT, /* defaultValue */ + new InspectorPath("Properties", "Graphic", 1)); + private final ValuePropertyMetadata contentTextPropertyMetadata = + new StringPropertyMetadata( + contentTextName, + true, /* readWrite */ + "", /* defaultValue */ + new InspectorPath("Properties", "Text", 2)); + private final ComponentPropertyMetadata contextMenuPropertyMetadata = + new ComponentPropertyMetadata( + contextMenuName, + ContextMenuMetadata, + false); /* collection */ + private final ValuePropertyMetadata contextMenuEnabledPropertyMetadata = + new BooleanPropertyMetadata( + contextMenuEnabledName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 11)); + private final ValuePropertyMetadata controlXPropertyMetadata = + new DoublePropertyMetadata( + controlXName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 14)); + private final ValuePropertyMetadata controlX1PropertyMetadata = + new DoublePropertyMetadata( + controlX1Name, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 16)); + private final ValuePropertyMetadata controlX2PropertyMetadata = + new DoublePropertyMetadata( + controlX2Name, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 18)); + private final ValuePropertyMetadata controlYPropertyMetadata = + new DoublePropertyMetadata( + controlYName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 15)); + private final ValuePropertyMetadata controlY1PropertyMetadata = + new DoublePropertyMetadata( + controlY1Name, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 17)); + private final ValuePropertyMetadata controlY2PropertyMetadata = + new DoublePropertyMetadata( + controlY2Name, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 19)); + private final ValuePropertyMetadata createSymbolsPropertyMetadata = + new BooleanPropertyMetadata( + createSymbolsName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 81)); + private final ValuePropertyMetadata cullFacePropertyMetadata = + new EnumerationPropertyMetadata( + cullFaceName, + javafx.scene.shape.CullFace.class, + true, /* readWrite */ + javafx.scene.shape.CullFace.BACK, /* defaultValue */ + new InspectorPath("Properties", "3D", 8)); + private final ValuePropertyMetadata currentPageIndexPropertyMetadata = + new IntegerPropertyMetadata( + currentPageIndexName, + true, /* readWrite */ + 0, /* defaultValue */ + new InspectorPath("Properties", "Pagination", 0)); + private final ValuePropertyMetadata cursor_HAND_PropertyMetadata = + new CursorPropertyMetadata( + cursorName, + true, /* readWrite */ + javafx.scene.Cursor.HAND, /* defaultValue */ + new InspectorPath("Properties", "Node", 13)); + private final ValuePropertyMetadata cursor_NULL_PropertyMetadata = + new CursorPropertyMetadata( + cursorName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Properties", "Node", 13)); + private final ValuePropertyMetadata defaultButtonPropertyMetadata = + new BooleanPropertyMetadata( + defaultButtonName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 13)); + private final ValuePropertyMetadata depthPropertyMetadata = + new DoublePropertyMetadata( + depthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 2.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 16)); + private final ValuePropertyMetadata depthTestPropertyMetadata = + new EnumerationPropertyMetadata( + depthTestName, + javafx.scene.DepthTest.class, + true, /* readWrite */ + javafx.scene.DepthTest.INHERIT, /* defaultValue */ + new InspectorPath("Properties", "Extras", 4)); + private final ValuePropertyMetadata disablePropertyMetadata = + new BooleanPropertyMetadata( + disableName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Node", 1)); + private final ValuePropertyMetadata dividerPositionsPropertyMetadata = + new DoubleArrayPropertyMetadata( + dividerPositionsName, + true, /* readWrite */ + Collections.emptyList(), /* defaultValue */ + new InspectorPath("Properties", "Specific", 15)); + private final ValuePropertyMetadata divisionsPropertyMetadata = + new IntegerPropertyMetadata( + divisionsName, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Properties", "3D", 10)); + private final ValuePropertyMetadata drawModePropertyMetadata = + new EnumerationPropertyMetadata( + drawModeName, + javafx.scene.shape.DrawMode.class, + true, /* readWrite */ + javafx.scene.shape.DrawMode.FILL, /* defaultValue */ + new InspectorPath("Properties", "3D", 9)); + private final ValuePropertyMetadata editable_false_PropertyMetadata = + new BooleanPropertyMetadata( + editableName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 16)); + private final ValuePropertyMetadata editable_true_PropertyMetadata = + new BooleanPropertyMetadata( + editableName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 16)); + private final ValuePropertyMetadata effectPropertyMetadata = + new EffectPropertyMetadata( + effectName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Properties", "Node", 14)); + private final ValuePropertyMetadata effectiveNodeOrientationPropertyMetadata = + new EnumerationPropertyMetadata( + effectiveNodeOrientationName, + javafx.geometry.NodeOrientation.class, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Layout", "Extras", 7)); + private final ComponentPropertyMetadata elementsPropertyMetadata = + new ComponentPropertyMetadata( + elementsName, + PathElementMetadata, + true); /* collection */ + private final ValuePropertyMetadata ellipsisStringPropertyMetadata = + new StringPropertyMetadata( + ellipsisStringName, + true, /* readWrite */ + "...", /* defaultValue */ + new InspectorPath("Properties", "Text", 12)); + private final ValuePropertyMetadata endMarginPropertyMetadata = + new DoublePropertyMetadata( + endMarginName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 5.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 95)); + private final ValuePropertyMetadata endXPropertyMetadata = + new DoublePropertyMetadata( + endXName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 7)); + private final ValuePropertyMetadata endYPropertyMetadata = + new DoublePropertyMetadata( + endYName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 8)); + private final ComponentPropertyMetadata expandableContentPropertyMetadata = + new ComponentPropertyMetadata( + expandableContentName, + NodeMetadata, + false); /* collection */ + private final ValuePropertyMetadata expanded_false_PropertyMetadata = + new BooleanPropertyMetadata( + expandedName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 17)); + private final ValuePropertyMetadata expanded_true_PropertyMetadata = + new BooleanPropertyMetadata( + expandedName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 17)); + private final ComponentPropertyMetadata expandedContentPropertyMetadata = + new ComponentPropertyMetadata( + expandedContentName, + NodeMetadata, + false /* collection */ + ); + private final ValuePropertyMetadata expandedItemCountPropertyMetadata = + new IntegerPropertyMetadata( + expandedItemCountName, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Properties", "Specific", 19)); + private final BooleanPropertyMetadata expandedPropertyMetadata = + new BooleanPropertyMetadata( + expandedName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 0) + ); + private final ValuePropertyMetadata farClipPropertyMetadata = + new DoublePropertyMetadata( + farClipName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 100.0, /* defaultValue */ + new InspectorPath("Properties", "3D", 3)); + private final ValuePropertyMetadata fieldOfViewPropertyMetadata = + new DoublePropertyMetadata( + fieldOfViewName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.ANGLE, + true, /* readWrite */ + 30.0, /* defaultValue */ + new InspectorPath("Properties", "3D", 4)); + private final ValuePropertyMetadata fill_NULL_PropertyMetadata = + new PaintPropertyMetadata( + fillName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Properties", "Specific", 20)); + private final ValuePropertyMetadata fill_BLACK_PropertyMetadata = + new PaintPropertyMetadata( + fillName, + true, /* readWrite */ + javafx.scene.paint.Color.BLACK, /* defaultValue */ + new InspectorPath("Properties", "Specific", 20)); + private final ValuePropertyMetadata fillHeightPropertyMetadata = + new BooleanPropertyMetadata( + fillHeightName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Layout", "Specific", 0)); + private final ValuePropertyMetadata fillRulePropertyMetadata = + new EnumerationPropertyMetadata( + fillRuleName, + javafx.scene.shape.FillRule.class, + true, /* readWrite */ + javafx.scene.shape.FillRule.NON_ZERO, /* defaultValue */ + new InspectorPath("Properties", "Specific", 21)); + private final ValuePropertyMetadata fillWidthPropertyMetadata = + new BooleanPropertyMetadata( + fillWidthName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Layout", "Specific", 1)); + private final ValuePropertyMetadata fitHeightPropertyMetadata = + new DoublePropertyMetadata( + fitHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 15)); + private final ValuePropertyMetadata fitToHeightPropertyMetadata = + new BooleanPropertyMetadata( + fitToHeightName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Layout", "Specific", 11)); + private final ValuePropertyMetadata fitToWidthPropertyMetadata = + new BooleanPropertyMetadata( + fitToWidthName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Layout", "Specific", 10)); + private final ValuePropertyMetadata fitWidthPropertyMetadata = + new DoublePropertyMetadata( + fitWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 14)); + private final ValuePropertyMetadata fixedCellSizePropertyMetadata = + new DoublePropertyMetadata( + fixedCellSizeName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + -1.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 128)); + private final ValuePropertyMetadata fixedEyeAtCameraZeroPropertyMetadata = + new BooleanPropertyMetadata( + fixedEyeAtCameraZeroName, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Properties", "3D", 6)); + private final ValuePropertyMetadata focusTraversable_true_PropertyMetadata = + new BooleanPropertyMetadata( + focusTraversableName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Node", 6)); + private final ValuePropertyMetadata focusTraversable_false_PropertyMetadata = + new BooleanPropertyMetadata( + focusTraversableName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Node", 6)); + private final ValuePropertyMetadata fontPropertyMetadata = + new FontPropertyMetadata( + fontName, + true, /* readWrite */ + javafx.scene.text.Font.getDefault(), /* defaultValue */ + new InspectorPath("Properties", "Text", 5)); + private final ValuePropertyMetadata fontScalePropertyMetadata = + new DoublePropertyMetadata( + fontScaleName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 1.0, /* defaultValue */ + new InspectorPath("Properties", "Text", 0)); + private final ValuePropertyMetadata fontSmoothingType_GRAY_PropertyMetadata = + new EnumerationPropertyMetadata( + fontSmoothingTypeName, + javafx.scene.text.FontSmoothingType.class, + true, /* readWrite */ + javafx.scene.text.FontSmoothingType.GRAY, /* defaultValue */ + new InspectorPath("Properties", "Text", 6)); + private final ValuePropertyMetadata fontSmoothingType_LCD_PropertyMetadata = + new EnumerationPropertyMetadata( + fontSmoothingTypeName, + javafx.scene.text.FontSmoothingType.class, + true, /* readWrite */ + javafx.scene.text.FontSmoothingType.LCD, /* defaultValue */ + new InspectorPath("Properties", "Text", 6)); + private final ValuePropertyMetadata forceZeroInRangePropertyMetadata = + new BooleanPropertyMetadata( + forceZeroInRangeName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 122)); + private final ValuePropertyMetadata gapStartAndEndPropertyMetadata = + new BooleanPropertyMetadata( + gapStartAndEndName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 99)); + private final ComponentPropertyMetadata graphicPropertyMetadata = + new ComponentPropertyMetadata( + graphicName, + NodeMetadata, + false); /* collection */ + private final ValuePropertyMetadata graphicTextGapPropertyMetadata = + new DoublePropertyMetadata( + graphicTextGapName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 4.0, /* defaultValue */ + new InspectorPath("Properties", "Graphic", 0)); + private final ValuePropertyMetadata gridLinesVisiblePropertyMetadata = + new BooleanPropertyMetadata( + gridLinesVisibleName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 22)); + private final ValuePropertyMetadata halignment_NULL_PropertyMetadata = + new EnumerationPropertyMetadata( + halignmentName, + javafx.geometry.HPos.class, + "INHERIT", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Layout", "Specific", 4)); + private final ValuePropertyMetadata halignment_CENTER_PropertyMetadata = + new EnumerationPropertyMetadata( + halignmentName, + javafx.geometry.HPos.class, + true, /* readWrite */ + javafx.geometry.HPos.CENTER, /* defaultValue */ + new InspectorPath("Layout", "Specific", 4)); + private final ValuePropertyMetadata hbarPolicyPropertyMetadata = + new EnumerationPropertyMetadata( + hbarPolicyName, + javafx.scene.control.ScrollPane.ScrollBarPolicy.class, + true, /* readWrite */ + javafx.scene.control.ScrollPane.ScrollBarPolicy.AS_NEEDED, /* defaultValue */ + new InspectorPath("Properties", "Specific", 48)); + private final ComponentPropertyMetadata headerPropertyMetadata = + new ComponentPropertyMetadata( + headerName, + NodeMetadata, + false); /* collection */ + private final ValuePropertyMetadata headerTextPropertyMetadata = + new StringPropertyMetadata( + headerTextName, + true, /* readWrite */ + "", /* defaultValue */ + new InspectorPath("Properties", "Text", 1)); + private final ValuePropertyMetadata height_Double_200_PropertyMetadata = + new DoublePropertyMetadata( + heightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 2.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 8)); + private final ValuePropertyMetadata height_Double_0_PropertyMetadata = + new DoublePropertyMetadata( + heightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 8)); + private final ValuePropertyMetadata height_Double_ro_PropertyMetadata = + new DoublePropertyMetadata( + heightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Layout", "Size", 8)); + private final ValuePropertyMetadata hgapPropertyMetadata = + new DoublePropertyMetadata( + hgapName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Internal", 0)); + private final ValuePropertyMetadata hgrowPropertyMetadata = + new EnumerationPropertyMetadata( + hgrowName, + javafx.scene.layout.Priority.class, + "INHERIT", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Layout", "Specific", 2)); + private final ValuePropertyMetadata hideOnClick_true_PropertyMetadata = + new BooleanPropertyMetadata( + hideOnClickName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 23)); + private final ValuePropertyMetadata hideOnClick_false_PropertyMetadata = + new BooleanPropertyMetadata( + hideOnClickName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 23)); + private final ValuePropertyMetadata hideOnEscapePropertyMetadata = + new BooleanPropertyMetadata( + hideOnEscapeName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 65)); + private final ValuePropertyMetadata hmaxPropertyMetadata = + new DoublePropertyMetadata( + hmaxName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 1.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 108)); + private final ValuePropertyMetadata hminPropertyMetadata = + new DoublePropertyMetadata( + hminName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 104)); + private final ValuePropertyMetadata horizontalGridLinesVisiblePropertyMetadata = + new BooleanPropertyMetadata( + horizontalGridLinesVisibleName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 100)); + private final ValuePropertyMetadata horizontalZeroLineVisiblePropertyMetadata = + new BooleanPropertyMetadata( + horizontalZeroLineVisibleName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 110)); + private final ValuePropertyMetadata htmlTextPropertyMetadata = + new StringPropertyMetadata( + htmlTextName, + true, /* readWrite */ + "<html><head></head><body contenteditable=\"true\"></body></html>", /* defaultValue */ + new InspectorPath("Properties", "Specific", 24)); + private final ValuePropertyMetadata hvaluePropertyMetadata = + new DoublePropertyMetadata( + hvalueName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 106)); + private final ValuePropertyMetadata idPropertyMetadata = + new StringPropertyMetadata( + idName, + true, /* readWrite */ + "", /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 3)); + private final ValuePropertyMetadata imagePropertyMetadata = + new ImagePropertyMetadata( + imageName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Properties", "Specific", 25)); + private final ValuePropertyMetadata indeterminate_Boolean_PropertyMetadata = + new BooleanPropertyMetadata( + indeterminateName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 49)); + private final ValuePropertyMetadata indeterminate_Boolean_ro_PropertyMetadata = + new BooleanPropertyMetadata( + indeterminateName, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Properties", "Specific", 49)); + private final ValuePropertyMetadata insetsPropertyMetadata = + new InsetsPropertyMetadata( + insetsName, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Properties", "Extras", 5)); +// private final ComponentPropertyMetadata items_ExpansionPanel_PropertyMetadata = +// new ComponentPropertyMetadata( +// itemsName, +// ExpansionPanelMetadata, +// true); /* collection */ + private final ComponentPropertyMetadata items_MenuItem_PropertyMetadata = + new ComponentPropertyMetadata( + itemsName, + MenuItemMetadata, + true); /* collection */ + private final ComponentPropertyMetadata items_Node_PropertyMetadata = + new ComponentPropertyMetadata( + itemsName, + NodeMetadata, + true); /* collection */ + private final ValuePropertyMetadata labelPropertyMetadata = + new StringPropertyMetadata( + labelName, + true, /* readWrite */ + "", /* defaultValue */ + new InspectorPath("Properties", "Specific", 26)); + private final ComponentPropertyMetadata labelForPropertyMetadata = + new ComponentPropertyMetadata( + labelForName, + NodeMetadata, + false); /* collection */ + private final ValuePropertyMetadata labelFormatterPropertyMetadata = + new StringConverterPropertyMetadata( + labelFormatterName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Properties", "Specific", 113)); + private final ValuePropertyMetadata labelLineLengthPropertyMetadata = + new DoublePropertyMetadata( + labelLineLengthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 20.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 111)); + private final ValuePropertyMetadata labelPaddingPropertyMetadata = + new InsetsPropertyMetadata( + labelPaddingName, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Properties", "Extras", 6)); + private final ValuePropertyMetadata labelsVisiblePropertyMetadata = + new BooleanPropertyMetadata( + labelsVisibleName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 101)); + private final ValuePropertyMetadata largeArcFlagPropertyMetadata = + new BooleanPropertyMetadata( + largeArcFlagName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 126)); + private final ValuePropertyMetadata layoutBoundsPropertyMetadata = + new BoundsPropertyMetadata( + layoutBoundsName, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Layout", "Bounds", 0)); + private final ValuePropertyMetadata layoutXPropertyMetadata = + new DoublePropertyMetadata( + layoutXName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 2)); + private final ValuePropertyMetadata layoutYPropertyMetadata = + new DoublePropertyMetadata( + layoutYName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 3)); + private final ComponentPropertyMetadata leftPropertyMetadata = + new ComponentPropertyMetadata( + leftName, + NodeMetadata, + false); /* collection */ + private final ValuePropertyMetadata legendSidePropertyMetadata = + new EnumerationPropertyMetadata( + legendSideName, + javafx.geometry.Side.class, + true, /* readWrite */ + javafx.geometry.Side.BOTTOM, /* defaultValue */ + new InspectorPath("Properties", "Specific", 74)); + private final ValuePropertyMetadata legendVisiblePropertyMetadata = + new BooleanPropertyMetadata( + legendVisibleName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 66)); + private final ValuePropertyMetadata length_Double_PropertyMetadata = + new DoublePropertyMetadata( + lengthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 18)); + private final ValuePropertyMetadata length_Integer_ro_PropertyMetadata = + new IntegerPropertyMetadata( + lengthName, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Layout", "Size", 18)); + private final ValuePropertyMetadata lightOnPropertyMetadata = + new BooleanPropertyMetadata( + lightOnName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "3D", 7)); + private final ValuePropertyMetadata lineSpacingPropertyMetadata = + new DoublePropertyMetadata( + lineSpacingName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Text", 15)); + private final ValuePropertyMetadata lowerBoundPropertyMetadata = + new DoublePropertyMetadata( + lowerBoundName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 90)); + private final ValuePropertyMetadata majorTickUnitPropertyMetadata = + new DoublePropertyMetadata( + majorTickUnitName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 25.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 91)); + private final ValuePropertyMetadata materialPropertyMetadata = + new MaterialPropertyMetadata( + materialName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Properties", "3D", 0)); + private final ValuePropertyMetadata maxPropertyMetadata = + new DoublePropertyMetadata( + maxName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 100.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 50)); + private final ValuePropertyMetadata maxHeight_COMPUTED_PropertyMetadata = + new DoublePropertyMetadata( + maxHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, + true, /* readWrite */ + -1.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 6)); + private final ValuePropertyMetadata maxHeight_MAX_PropertyMetadata = + new DoublePropertyMetadata( + maxHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, + true, /* readWrite */ + Double.MAX_VALUE, /* defaultValue */ + new InspectorPath("Layout", "Size", 6)); + private final ValuePropertyMetadata maxPageIndicatorCountPropertyMetadata = + new IntegerPropertyMetadata( + maxPageIndicatorCountName, + true, /* readWrite */ + 10, /* defaultValue */ + new InspectorPath("Properties", "Pagination", 1)); + private final ValuePropertyMetadata maxWidth_COMPUTED_PropertyMetadata = + new DoublePropertyMetadata( + maxWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, + true, /* readWrite */ + -1.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 5)); + private final ValuePropertyMetadata maxWidth_500000_PropertyMetadata = + new DoublePropertyMetadata( + maxWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, + true, /* readWrite */ + 5000.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 5)); + private final ValuePropertyMetadata maxWidth_MAX_PropertyMetadata = + new DoublePropertyMetadata( + maxWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, + true, /* readWrite */ + Double.MAX_VALUE, /* defaultValue */ + new InspectorPath("Layout", "Size", 5)); + private final ComponentPropertyMetadata menusPropertyMetadata = + new ComponentPropertyMetadata( + menusName, + MenuMetadata, + true); /* collection */ + private final ValuePropertyMetadata meshPropertyMetadata = + new MeshPropertyMetadata( + meshName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Properties", "3D", 1)); + private final ValuePropertyMetadata minPropertyMetadata = + new DoublePropertyMetadata( + minName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 29)); + private final ValuePropertyMetadata minHeight_COMPUTED_PropertyMetadata = + new DoublePropertyMetadata( + minHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, + true, /* readWrite */ + -1.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 2)); + private final ValuePropertyMetadata minHeight_0_PropertyMetadata = + new DoublePropertyMetadata( + minHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 2)); + private final ValuePropertyMetadata minorTickCount_3_PropertyMetadata = + new IntegerPropertyMetadata( + minorTickCountName, + true, /* readWrite */ + 3, /* defaultValue */ + new InspectorPath("Properties", "Specific", 96)); + private final ValuePropertyMetadata minorTickCount_5_PropertyMetadata = + new IntegerPropertyMetadata( + minorTickCountName, + true, /* readWrite */ + 5, /* defaultValue */ + new InspectorPath("Properties", "Specific", 96)); + private final ValuePropertyMetadata minorTickLengthPropertyMetadata = + new DoublePropertyMetadata( + minorTickLengthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 5.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 121)); + private final ValuePropertyMetadata minorTickVisiblePropertyMetadata = + new BooleanPropertyMetadata( + minorTickVisibleName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 119)); + private final ValuePropertyMetadata minViewportHeightPropertyMetadata = + new DoublePropertyMetadata( + minViewportHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Specific", 7)); + private final ValuePropertyMetadata minViewportWidthPropertyMetadata = + new DoublePropertyMetadata( + minViewportWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Specific", 6)); + private final ValuePropertyMetadata minWidth_COMPUTED_PropertyMetadata = + new DoublePropertyMetadata( + minWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, + true, /* readWrite */ + -1.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 1)); + private final ValuePropertyMetadata minWidth_1000_PropertyMetadata = + new DoublePropertyMetadata( + minWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, + true, /* readWrite */ + 10.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 1)); + private final ValuePropertyMetadata minWidth_0_PropertyMetadata = + new DoublePropertyMetadata( + minWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 1)); + private final ValuePropertyMetadata mnemonicParsing_false_PropertyMetadata = + new BooleanPropertyMetadata( + mnemonicParsingName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Extras", 1)); + private final ValuePropertyMetadata mnemonicParsing_true_PropertyMetadata = + new BooleanPropertyMetadata( + mnemonicParsingName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Extras", 1)); + private final ValuePropertyMetadata mouseTransparentPropertyMetadata = + new BooleanPropertyMetadata( + mouseTransparentName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Extras", 7)); + private final ValuePropertyMetadata nearClipPropertyMetadata = + new DoublePropertyMetadata( + nearClipName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.1, /* defaultValue */ + new InspectorPath("Properties", "3D", 2)); + private final ValuePropertyMetadata nodeOrientation_LEFT_TO_RIGHT_PropertyMetadata = + new EnumerationPropertyMetadata( + nodeOrientationName, + javafx.geometry.NodeOrientation.class, + true, /* readWrite */ + javafx.geometry.NodeOrientation.LEFT_TO_RIGHT, /* defaultValue */ + new InspectorPath("Properties", "Node", 4)); + private final ValuePropertyMetadata nodeOrientation_INHERIT_PropertyMetadata = + new EnumerationPropertyMetadata( + nodeOrientationName, + javafx.geometry.NodeOrientation.class, + true, /* readWrite */ + javafx.geometry.NodeOrientation.INHERIT, /* defaultValue */ + new InspectorPath("Properties", "Node", 4)); + private final ValuePropertyMetadata onActionPropertyMetadata = + new EventHandlerPropertyMetadata( + onActionName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Main", 0)); + private final ValuePropertyMetadata onAutoHidePropertyMetadata = + new EventHandlerPropertyMetadata( + onAutoHideName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "HideShow", 2)); + private final ValuePropertyMetadata onClosedPropertyMetadata = + new EventHandlerPropertyMetadata( + onClosedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Closing", 1)); + private final ValuePropertyMetadata onCloseRequestPropertyMetadata = + new EventHandlerPropertyMetadata( + onCloseRequestName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Closing", 0)); + private final ValuePropertyMetadata onContextMenuRequestedPropertyMetadata = + new EventHandlerPropertyMetadata( + onContextMenuRequestedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Mouse", 0)); + private final ValuePropertyMetadata onDragDetectedPropertyMetadata = + new EventHandlerPropertyMetadata( + onDragDetectedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "DragDrop", 0)); + private final ValuePropertyMetadata onDragDonePropertyMetadata = + new EventHandlerPropertyMetadata( + onDragDoneName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "DragDrop", 1)); + private final ValuePropertyMetadata onDragDroppedPropertyMetadata = + new EventHandlerPropertyMetadata( + onDragDroppedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "DragDrop", 2)); + private final ValuePropertyMetadata onDragEnteredPropertyMetadata = + new EventHandlerPropertyMetadata( + onDragEnteredName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "DragDrop", 3)); + private final ValuePropertyMetadata onDragExitedPropertyMetadata = + new EventHandlerPropertyMetadata( + onDragExitedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "DragDrop", 4)); + private final ValuePropertyMetadata onDragOverPropertyMetadata = + new EventHandlerPropertyMetadata( + onDragOverName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "DragDrop", 5)); + private final ValuePropertyMetadata onEditCancelPropertyMetadata = + new EventHandlerPropertyMetadata( + onEditCancelName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Edit", 2)); + private final ValuePropertyMetadata onEditCommitPropertyMetadata = + new EventHandlerPropertyMetadata( + onEditCommitName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Edit", 1)); + private final ValuePropertyMetadata onEditStartPropertyMetadata = + new EventHandlerPropertyMetadata( + onEditStartName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Edit", 0)); + private final ValuePropertyMetadata onErrorPropertyMetadata = + new EventHandlerPropertyMetadata( + onErrorName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Main", 2)); + private final ValuePropertyMetadata onHiddenPropertyMetadata = + new EventHandlerPropertyMetadata( + onHiddenName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "HideShow", 0)); + private final ValuePropertyMetadata onHidingPropertyMetadata = + new EventHandlerPropertyMetadata( + onHidingName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "HideShow", 1)); + private final ValuePropertyMetadata onInputMethodTextChangedPropertyMetadata = + new EventHandlerPropertyMetadata( + onInputMethodTextChangedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Keyboard", 0)); + private final ValuePropertyMetadata onKeyPressedPropertyMetadata = + new EventHandlerPropertyMetadata( + onKeyPressedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Keyboard", 1)); + private final ValuePropertyMetadata onKeyReleasedPropertyMetadata = + new EventHandlerPropertyMetadata( + onKeyReleasedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Keyboard", 2)); + private final ValuePropertyMetadata onKeyTypedPropertyMetadata = + new EventHandlerPropertyMetadata( + onKeyTypedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Keyboard", 3)); + private final ValuePropertyMetadata onMenuValidationPropertyMetadata = + new EventHandlerPropertyMetadata( + onMenuValidationName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Main", 1)); + private final ValuePropertyMetadata onMouseClickedPropertyMetadata = + new EventHandlerPropertyMetadata( + onMouseClickedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Mouse", 1)); + private final ValuePropertyMetadata onMouseDragEnteredPropertyMetadata = + new EventHandlerPropertyMetadata( + onMouseDragEnteredName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "DragDrop", 6)); + private final ValuePropertyMetadata onMouseDragExitedPropertyMetadata = + new EventHandlerPropertyMetadata( + onMouseDragExitedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "DragDrop", 7)); + private final ValuePropertyMetadata onMouseDraggedPropertyMetadata = + new EventHandlerPropertyMetadata( + onMouseDraggedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Mouse", 2)); + private final ValuePropertyMetadata onMouseDragOverPropertyMetadata = + new EventHandlerPropertyMetadata( + onMouseDragOverName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "DragDrop", 8)); + private final ValuePropertyMetadata onMouseDragReleasedPropertyMetadata = + new EventHandlerPropertyMetadata( + onMouseDragReleasedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "DragDrop", 9)); + private final ValuePropertyMetadata onMouseEnteredPropertyMetadata = + new EventHandlerPropertyMetadata( + onMouseEnteredName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Mouse", 3)); + private final ValuePropertyMetadata onMouseExitedPropertyMetadata = + new EventHandlerPropertyMetadata( + onMouseExitedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Mouse", 4)); + private final ValuePropertyMetadata onMouseMovedPropertyMetadata = + new EventHandlerPropertyMetadata( + onMouseMovedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Mouse", 5)); + private final ValuePropertyMetadata onMousePressedPropertyMetadata = + new EventHandlerPropertyMetadata( + onMousePressedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Mouse", 6)); + private final ValuePropertyMetadata onMouseReleasedPropertyMetadata = + new EventHandlerPropertyMetadata( + onMouseReleasedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Mouse", 7)); + private final ValuePropertyMetadata onPullToRefreshPropertyMetadata = + new EventHandlerPropertyMetadata( + onPullToRefreshName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Specific", 0) + ); + private final ValuePropertyMetadata onRotatePropertyMetadata = + new EventHandlerPropertyMetadata( + onRotateName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Rotation", 0)); + private final ValuePropertyMetadata onRotationFinishedPropertyMetadata = + new EventHandlerPropertyMetadata( + onRotationFinishedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Rotation", 2)); + private final ValuePropertyMetadata onRotationStartedPropertyMetadata = + new EventHandlerPropertyMetadata( + onRotationStartedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Rotation", 1)); + private final ValuePropertyMetadata onScrollPropertyMetadata = + new EventHandlerPropertyMetadata( + onScrollName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Mouse", 8)); + private final ValuePropertyMetadata onScrollFinishedPropertyMetadata = + new EventHandlerPropertyMetadata( + onScrollFinishedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Mouse", 10)); + private final ValuePropertyMetadata onScrollStartedPropertyMetadata = + new EventHandlerPropertyMetadata( + onScrollStartedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Mouse", 9)); + private final ValuePropertyMetadata onScrollToPropertyMetadata = + new EventHandlerPropertyMetadata( + onScrollToName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Mouse", 11)); + private final ValuePropertyMetadata onScrollToColumnPropertyMetadata = + new EventHandlerPropertyMetadata( + onScrollToColumnName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Mouse", 12)); + private final ValuePropertyMetadata onSelectionChangedPropertyMetadata = + new EventHandlerPropertyMetadata( + onSelectionChangedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Edit", 3)); + private final ValuePropertyMetadata onShowingPropertyMetadata = + new EventHandlerPropertyMetadata( + onShowingName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "HideShow", 3)); + private final ValuePropertyMetadata onShownPropertyMetadata = + new EventHandlerPropertyMetadata( + onShownName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "HideShow", 4)); + private final ValuePropertyMetadata onSortPropertyMetadata = + new EventHandlerPropertyMetadata( + onSortName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Main", 3)); + private final ValuePropertyMetadata onSwipeDownPropertyMetadata = + new EventHandlerPropertyMetadata( + onSwipeDownName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Swipe", 3)); + private final ValuePropertyMetadata onSwipeLeftPropertyMetadata = + new EventHandlerPropertyMetadata( + onSwipeLeftName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Swipe", 0)); + private final ValuePropertyMetadata onSwipeRightPropertyMetadata = + new EventHandlerPropertyMetadata( + onSwipeRightName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Swipe", 1)); + private final ValuePropertyMetadata onSwipeUpPropertyMetadata = + new EventHandlerPropertyMetadata( + onSwipeUpName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Swipe", 2)); + private final ValuePropertyMetadata onTouchMovedPropertyMetadata = + new EventHandlerPropertyMetadata( + onTouchMovedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Touch", 0)); + private final ValuePropertyMetadata onTouchPressedPropertyMetadata = + new EventHandlerPropertyMetadata( + onTouchPressedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Touch", 1)); + private final ValuePropertyMetadata onTouchReleasedPropertyMetadata = + new EventHandlerPropertyMetadata( + onTouchReleasedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Touch", 2)); + private final ValuePropertyMetadata onTouchStationaryPropertyMetadata = + new EventHandlerPropertyMetadata( + onTouchStationaryName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Touch", 3)); + private final ValuePropertyMetadata onZoomPropertyMetadata = + new EventHandlerPropertyMetadata( + onZoomName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Zoom", 0)); + private final ValuePropertyMetadata onZoomFinishedPropertyMetadata = + new EventHandlerPropertyMetadata( + onZoomFinishedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Zoom", 2)); + private final ValuePropertyMetadata onZoomStartedPropertyMetadata = + new EventHandlerPropertyMetadata( + onZoomStartedName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Code", "Zoom", 1)); + private final ValuePropertyMetadata opacityPropertyMetadata = + new DoublePropertyMetadata( + opacityName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.OPACITY, + true, /* readWrite */ + 1.0, /* defaultValue */ + new InspectorPath("Properties", "Node", 2)); + private final ValuePropertyMetadata opaqueInsetsPropertyMetadata = + new InsetsPropertyMetadata( + opaqueInsetsName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Properties", "Node", 12)); +// private final ComponentPropertyMetadata options_Option_PropertyMetadata = +// new ComponentPropertyMetadata( +// optionsName, +// OptionMetadata, +// true); /* collection */ + private final ValuePropertyMetadata orientation_HORIZONTAL_PropertyMetadata = + new EnumerationPropertyMetadata( + orientationName, + javafx.geometry.Orientation.class, + true, /* readWrite */ + javafx.geometry.Orientation.HORIZONTAL, /* defaultValue */ + new InspectorPath("Properties", "Node", 3)); + private final ValuePropertyMetadata orientation_VERTICAL_PropertyMetadata = + new EnumerationPropertyMetadata( + orientationName, + javafx.geometry.Orientation.class, + true, /* readWrite */ + javafx.geometry.Orientation.VERTICAL, /* defaultValue */ + new InspectorPath("Properties", "Node", 3)); + private final ValuePropertyMetadata paddingPropertyMetadata = + new InsetsPropertyMetadata( + paddingName, + true, /* readWrite */ + javafx.geometry.Insets.EMPTY, /* defaultValue */ + new InspectorPath("Layout", "Internal", 2)); + private final ValuePropertyMetadata pageCountPropertyMetadata = + new IntegerPropertyMetadata( + pageCountName, + true, /* readWrite */ + 2147483647, /* defaultValue */ + new InspectorPath("Properties", "Pagination", 2)); + private final ComponentPropertyMetadata panesPropertyMetadata = + new ComponentPropertyMetadata( + panesName, + TitledPaneMetadata, + true); /* collection */ + private final ValuePropertyMetadata pannablePropertyMetadata = + new BooleanPropertyMetadata( + pannableName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 30)); + private final ValuePropertyMetadata percentHeightPropertyMetadata = + new DoublePropertyMetadata( + percentHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.PERCENTAGE, + true, /* readWrite */ + -1.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 20)); + private final ValuePropertyMetadata percentWidthPropertyMetadata = + new DoublePropertyMetadata( + percentWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.PERCENTAGE, + true, /* readWrite */ + -1.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 19)); + private final ValuePropertyMetadata pickOnBounds_false_PropertyMetadata = + new BooleanPropertyMetadata( + pickOnBoundsName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Extras", 8)); + private final ValuePropertyMetadata pickOnBounds_true_PropertyMetadata = + new BooleanPropertyMetadata( + pickOnBoundsName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Extras", 8)); + private final ComponentPropertyMetadata placeholderPropertyMetadata = + new ComponentPropertyMetadata( + placeholderName, + NodeMetadata, + false); /* collection */ + private final ValuePropertyMetadata pointsPropertyMetadata = + new DoubleListPropertyMetadata( + pointsName, + true, /* readWrite */ + Collections.emptyList(), /* defaultValue */ + new InspectorPath("Layout", "Position", 4)); + private final ValuePropertyMetadata popupSidePropertyMetadata = + new EnumerationPropertyMetadata( + popupSideName, + javafx.geometry.Side.class, + true, /* readWrite */ + javafx.geometry.Side.BOTTOM, /* defaultValue */ + new InspectorPath("Properties", "Specific", 31)); + private final ValuePropertyMetadata prefColumnCount_40_PropertyMetadata = + new IntegerPropertyMetadata( + prefColumnCountName, + true, /* readWrite */ + 40, /* defaultValue */ + new InspectorPath("Layout", "Size", 9)); + private final ValuePropertyMetadata prefColumnCount_12_PropertyMetadata = + new IntegerPropertyMetadata( + prefColumnCountName, + true, /* readWrite */ + 12, /* defaultValue */ + new InspectorPath("Layout", "Size", 9)); + private final ValuePropertyMetadata prefColumnsPropertyMetadata = + new IntegerPropertyMetadata( + prefColumnsName, + true, /* readWrite */ + 5, /* defaultValue */ + new InspectorPath("Layout", "Specific", 18)); + private final ValuePropertyMetadata prefHeight_COMPUTED_PropertyMetadata = + new DoublePropertyMetadata( + prefHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_COMPUTED_SIZE, + true, /* readWrite */ + -1.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 4)); + private final ValuePropertyMetadata prefHeight_60000_PropertyMetadata = + new DoublePropertyMetadata( + prefHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_COMPUTED_SIZE, + true, /* readWrite */ + 600.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 4)); + private final ValuePropertyMetadata prefRowCountPropertyMetadata = + new IntegerPropertyMetadata( + prefRowCountName, + true, /* readWrite */ + 10, /* defaultValue */ + new InspectorPath("Layout", "Size", 10)); + private final ValuePropertyMetadata prefRowsPropertyMetadata = + new IntegerPropertyMetadata( + prefRowsName, + true, /* readWrite */ + 5, /* defaultValue */ + new InspectorPath("Layout", "Specific", 19)); + private final ValuePropertyMetadata prefTileHeightPropertyMetadata = + new DoublePropertyMetadata( + prefTileHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + -1.0, /* defaultValue */ + new InspectorPath("Layout", "Specific", 17)); + private final ValuePropertyMetadata prefTileWidthPropertyMetadata = + new DoublePropertyMetadata( + prefTileWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + -1.0, /* defaultValue */ + new InspectorPath("Layout", "Specific", 16)); + private final ValuePropertyMetadata prefViewportHeightPropertyMetadata = + new DoublePropertyMetadata( + prefViewportHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Specific", 9)); + private final ValuePropertyMetadata prefViewportWidthPropertyMetadata = + new DoublePropertyMetadata( + prefViewportWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Specific", 8)); + private final ValuePropertyMetadata prefWidth_COMPUTED_PropertyMetadata = + new DoublePropertyMetadata( + prefWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_COMPUTED_SIZE, + true, /* readWrite */ + -1.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 3)); + private final ValuePropertyMetadata prefWidth_8000_PropertyMetadata = + new DoublePropertyMetadata( + prefWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_COMPUTED_SIZE, + true, /* readWrite */ + 80.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 3)); + private final ValuePropertyMetadata prefWidth_80000_PropertyMetadata = + new DoublePropertyMetadata( + prefWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_COMPUTED_SIZE, + true, /* readWrite */ + 800.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 3)); + private final ValuePropertyMetadata prefWrapLengthPropertyMetadata = + new DoublePropertyMetadata( + prefWrapLengthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 400.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 75)); + private final ValuePropertyMetadata preserveRatio_false_PropertyMetadata = + new BooleanPropertyMetadata( + preserveRatioName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 32)); + private final ValuePropertyMetadata preserveRatio_true_PropertyMetadata = + new BooleanPropertyMetadata( + preserveRatioName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 32)); + private final ValuePropertyMetadata progressPropertyMetadata = + new DoublePropertyMetadata( + progressName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.PROGRESS, + true, /* readWrite */ + -1.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 33)); + private final ValuePropertyMetadata promptTextPropertyMetadata = + new StringPropertyMetadata( + promptTextName, + true, /* readWrite */ + "", /* defaultValue */ + new InspectorPath("Properties", "Text", 3)); + private final ValuePropertyMetadata radius_0_PropertyMetadata = + new DoublePropertyMetadata( + radiusName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 11)); + private final ValuePropertyMetadata radius_100_PropertyMetadata = + new DoublePropertyMetadata( + radiusName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 1.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 11)); + private final ValuePropertyMetadata radiusXPropertyMetadata = + new DoublePropertyMetadata( + radiusXName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 12)); + private final ValuePropertyMetadata radiusYPropertyMetadata = + new DoublePropertyMetadata( + radiusYName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 13)); + private final ValuePropertyMetadata resizable_Boolean_ro_PropertyMetadata = + new BooleanPropertyMetadata( + resizableName, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Layout", "Extras", 3)); + private final ValuePropertyMetadata resizable_Boolean_PropertyMetadata = + new BooleanPropertyMetadata( + resizableName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Layout", "Extras", 3)); + private final ComponentPropertyMetadata rightPropertyMetadata = + new ComponentPropertyMetadata( + rightName, + NodeMetadata, + false); /* collection */ + private final ValuePropertyMetadata rotatePropertyMetadata = + new DoublePropertyMetadata( + rotateName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.ANGLE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Transforms", 0)); + private final ValuePropertyMetadata rotateGraphicPropertyMetadata = + new BooleanPropertyMetadata( + rotateGraphicName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 67)); + private final ValuePropertyMetadata rotationAxisPropertyMetadata = + new Point3DPropertyMetadata( + rotationAxisName, + true, /* readWrite */ + new javafx.geometry.Point3D(0.0, 0.0, 1.0), /* defaultValue */ + new InspectorPath("Layout", "Transforms", 1)); + private final ComponentPropertyMetadata rowConstraintsPropertyMetadata = + new ComponentPropertyMetadata( + rowConstraintsName, + RowConstraintsMetadata, + true); /* collection */ + private final ValuePropertyMetadata rowValignmentPropertyMetadata = + new EnumerationPropertyMetadata( + rowValignmentName, + javafx.geometry.VPos.class, + true, /* readWrite */ + javafx.geometry.VPos.CENTER, /* defaultValue */ + new InspectorPath("Properties", "Specific", 51)); + private final ValuePropertyMetadata scalePropertyMetadata = + new DoublePropertyMetadata( + scaleName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Properties", "Specific", 82)); + private final ValuePropertyMetadata scaleShapePropertyMetadata = + new BooleanPropertyMetadata( + scaleShapeName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Node", 9)); + private final ValuePropertyMetadata scaleXPropertyMetadata = + new DoublePropertyMetadata( + scaleXName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 1.0, /* defaultValue */ + new InspectorPath("Layout", "Transforms", 2)); + private final ValuePropertyMetadata scaleYPropertyMetadata = + new DoublePropertyMetadata( + scaleYName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 1.0, /* defaultValue */ + new InspectorPath("Layout", "Transforms", 3)); + private final ValuePropertyMetadata scaleZPropertyMetadata = + new DoublePropertyMetadata( + scaleZName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 1.0, /* defaultValue */ + new InspectorPath("Layout", "Transforms", 4)); + private final ComponentPropertyMetadata scopePropertyMetadata = + new ComponentPropertyMetadata( + scopeName, + NodeMetadata, + true); /* collection */ + private final ValuePropertyMetadata scrollLeftPropertyMetadata = + new DoublePropertyMetadata( + scrollLeftName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Text", 16)); + private final ValuePropertyMetadata scrollTopPropertyMetadata = + new DoublePropertyMetadata( + scrollTopName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Text", 17)); + private final ValuePropertyMetadata searchBoxVisiblePropertyMetadata = + new BooleanPropertyMetadata( + searchBoxVisibleName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 0)); + private final ValuePropertyMetadata selectionTypePropertyMetadata = + new EnumerationPropertyMetadata( + selectionTypeName, + javafx.scene.control.SelectionMode.class, + true, /* readWrite */ + SelectionMode.SINGLE, + new InspectorPath("Properties", "Specific", 0)); + private final ValuePropertyMetadata selected_Boolean_PropertyMetadata = + new BooleanPropertyMetadata( + selectedName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 35)); + private final ValuePropertyMetadata selected_Boolean_ro_PropertyMetadata = + new BooleanPropertyMetadata( + selectedName, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Properties", "Specific", 35)); + private final ComponentPropertyMetadata shapePropertyMetadata = + new ComponentPropertyMetadata( + shapeName, + ShapeMetadata, + false); /* collection */ + private final ValuePropertyMetadata showRootPropertyMetadata = + new BooleanPropertyMetadata( + showRootName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 52)); + private final ValuePropertyMetadata showTickLabelsPropertyMetadata = + new BooleanPropertyMetadata( + showTickLabelsName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 83)); + private final ValuePropertyMetadata showTickMarksPropertyMetadata = + new BooleanPropertyMetadata( + showTickMarksName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 76)); + private final ValuePropertyMetadata showWeekNumbersPropertyMetadata = + new BooleanPropertyMetadata( + showWeekNumbersName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 127)); + private final ValuePropertyMetadata side_NULL_PropertyMetadata = + new EnumerationPropertyMetadata( + sideName, + javafx.geometry.Side.class, + "BOTTOM", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Properties", "Specific", 36)); + private final ValuePropertyMetadata side_TOP_PropertyMetadata = + new EnumerationPropertyMetadata( + sideName, + javafx.geometry.Side.class, + true, /* readWrite */ + javafx.geometry.Side.TOP, /* defaultValue */ + new InspectorPath("Properties", "Specific", 36)); + private final ValuePropertyMetadata smoothPropertyMetadata = + new BooleanPropertyMetadata( + smoothName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 53)); + private final ValuePropertyMetadata snapToPixelPropertyMetadata = + new BooleanPropertyMetadata( + snapToPixelName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Layout", "Extras", 5)); + private final ValuePropertyMetadata snapToTicksPropertyMetadata = + new BooleanPropertyMetadata( + snapToTicksName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 102)); + private final ValuePropertyMetadata sortablePropertyMetadata = + new BooleanPropertyMetadata( + sortableName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 54)); + private final ValuePropertyMetadata sortModePropertyMetadata = + new EnumerationPropertyMetadata( + sortModeName, + javafx.scene.control.TreeSortMode.class, + true, /* readWrite */ + javafx.scene.control.TreeSortMode.ALL_DESCENDANTS, /* defaultValue */ + new InspectorPath("Properties", "Specific", 56)); + private final ComponentPropertyMetadata sortNodePropertyMetadata = + new ComponentPropertyMetadata( + sortNodeName, + NodeMetadata, + false); /* collection */ + private final ComponentPropertyMetadata sortOrderPropertyMetadata = + new ComponentPropertyMetadata( + sortOrderName, + TableColumnMetadata, + true); /* collection */ + private final ValuePropertyMetadata sortType_SortType_PropertyMetadata = + new EnumerationPropertyMetadata( + sortTypeName, + javafx.scene.control.TableColumn.SortType.class, + true, /* readWrite */ + javafx.scene.control.TableColumn.SortType.ASCENDING, /* defaultValue */ + new InspectorPath("Properties", "Specific", 68)); + private final ValuePropertyMetadata spacingPropertyMetadata = + new DoublePropertyMetadata( + spacingName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Internal", 3)); + private final ValuePropertyMetadata startAnglePropertyMetadata = + new DoublePropertyMetadata( + startAngleName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.ANGLE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 17)); + private final ValuePropertyMetadata startMarginPropertyMetadata = + new DoublePropertyMetadata( + startMarginName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 5.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 92)); + private final ValuePropertyMetadata startXPropertyMetadata = + new DoublePropertyMetadata( + startXName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 5)); + private final ValuePropertyMetadata startYPropertyMetadata = + new DoublePropertyMetadata( + startYName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 6)); + private final ValuePropertyMetadata strikethroughPropertyMetadata = + new BooleanPropertyMetadata( + strikethroughName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Text", 13)); + private final ValuePropertyMetadata stroke_BLACK_PropertyMetadata = + new PaintPropertyMetadata( + strokeName, + true, /* readWrite */ + javafx.scene.paint.Color.BLACK, /* defaultValue */ + new InspectorPath("Properties", "Stroke", 0)); + private final ValuePropertyMetadata stroke_NULL_PropertyMetadata = + new PaintPropertyMetadata( + strokeName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Properties", "Stroke", 0)); + private final ValuePropertyMetadata strokeDashOffsetPropertyMetadata = + new DoublePropertyMetadata( + strokeDashOffsetName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Stroke", 6)); + private final ValuePropertyMetadata strokeLineCapPropertyMetadata = + new EnumerationPropertyMetadata( + strokeLineCapName, + javafx.scene.shape.StrokeLineCap.class, + true, /* readWrite */ + javafx.scene.shape.StrokeLineCap.SQUARE, /* defaultValue */ + new InspectorPath("Properties", "Stroke", 3)); + private final ValuePropertyMetadata strokeLineJoinPropertyMetadata = + new EnumerationPropertyMetadata( + strokeLineJoinName, + javafx.scene.shape.StrokeLineJoin.class, + true, /* readWrite */ + javafx.scene.shape.StrokeLineJoin.MITER, /* defaultValue */ + new InspectorPath("Properties", "Stroke", 4)); + private final ValuePropertyMetadata strokeMiterLimitPropertyMetadata = + new DoublePropertyMetadata( + strokeMiterLimitName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 10.0, /* defaultValue */ + new InspectorPath("Properties", "Stroke", 5)); + private final ValuePropertyMetadata strokeTypePropertyMetadata = + new EnumerationPropertyMetadata( + strokeTypeName, + javafx.scene.shape.StrokeType.class, + true, /* readWrite */ + javafx.scene.shape.StrokeType.CENTERED, /* defaultValue */ + new InspectorPath("Properties", "Stroke", 2)); + private final ValuePropertyMetadata strokeWidthPropertyMetadata = + new DoublePropertyMetadata( + strokeWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 1.0, /* defaultValue */ + new InspectorPath("Properties", "Stroke", 1)); + private final ValuePropertyMetadata stylePropertyMetadata = + new StringPropertyMetadata( + styleName, + true, /* readWrite */ + "", /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 0)); + private final ValuePropertyMetadata styleClass_c4_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("accordion"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c37_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("chart"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c45_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("axis"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c1_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("chart","bar-chart"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c17_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("button"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c35_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("button-bar"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c41_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("radio-button"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c10_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("check-box"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c28_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("menu-item","check-menu-item"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c43_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("choice-box"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c5_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("combo-box-base","color-picker"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c11_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("combo-box-base","combo-box"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c8_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("context-menu"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c25_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("hyperlink"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c27_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("menu-item","custom-menu-item"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c9_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("combo-box-base","date-picker"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c30_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("dialog-pane"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c21_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("html-editor"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c20_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("image-view"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c3_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("label"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c34_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("list-view"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c46_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("media-view"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c29_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("menu-item","menu"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c18_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("menu-bar"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c52_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("menu-button"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c36_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("menu-item"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_empty_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Collections.emptyList(), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c39_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("pagination"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c53_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("text-input","text-field","password-field"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c13_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("progress-bar"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c50_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("progress-indicator"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c7_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("menu-item","radio-menu-item"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c33_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("scroll-bar"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c38_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("scroll-pane"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c31_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("separator"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c23_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("menu-item","custom-menu-item","separator-menu-item"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c40_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("slider"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c24_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("spinner"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c2_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("split-menu-button"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c14_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("split-pane"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c12_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("chart","stacked-bar-chart"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c19_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("tab"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c6_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("tab-pane"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c42_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("table-column"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c49_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("table-view"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c51_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("text-input","text-area"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c47_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("text-input","text-field"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c26_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("titled-pane"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c44_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("toggle-button"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c16_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("tool-bar"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c15_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("tooltip"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c32_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("tree-table-view"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c22_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("tree-view"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata styleClass_c48_PropertyMetadata = + new StringListPropertyMetadata( + styleClassName, + true, /* readWrite */ + Arrays.asList("web-view"), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 1)); + private final ValuePropertyMetadata stylesheetsPropertyMetadata = + new StringListPropertyMetadata( + stylesheetsName, + true, /* readWrite */ + Collections.emptyList(), /* defaultValue */ + new InspectorPath("Properties", "JavaFX CSS", 2)); + private final ValuePropertyMetadata sweepFlagPropertyMetadata = + new BooleanPropertyMetadata( + sweepFlagName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 124)); + private final ValuePropertyMetadata tabClosingPolicyPropertyMetadata = + new EnumerationPropertyMetadata( + tabClosingPolicyName, + javafx.scene.control.TabPane.TabClosingPolicy.class, + true, /* readWrite */ + javafx.scene.control.TabPane.TabClosingPolicy.SELECTED_TAB, /* defaultValue */ + new InspectorPath("Properties", "Specific", 57)); + private final ValuePropertyMetadata tableMenuButtonVisiblePropertyMetadata = + new BooleanPropertyMetadata( + tableMenuButtonVisibleName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 58)); + private final ValuePropertyMetadata tabMaxHeightPropertyMetadata = + new DoublePropertyMetadata( + tabMaxHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + Double.MAX_VALUE, /* defaultValue */ + new InspectorPath("Layout", "Specific", 15)); + private final ValuePropertyMetadata tabMaxWidthPropertyMetadata = + new DoublePropertyMetadata( + tabMaxWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + Double.MAX_VALUE, /* defaultValue */ + new InspectorPath("Layout", "Specific", 14)); + private final ValuePropertyMetadata tabMinHeightPropertyMetadata = + new DoublePropertyMetadata( + tabMinHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Specific", 13)); + private final ValuePropertyMetadata tabMinWidthPropertyMetadata = + new DoublePropertyMetadata( + tabMinWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Specific", 12)); + private final ComponentPropertyMetadata tabsPropertyMetadata = + new ComponentPropertyMetadata( + tabsName, + TabMetadata, + true); /* collection */ + private final ValuePropertyMetadata textPropertyMetadata = + new StringPropertyMetadata( + textName, + true, /* readWrite */ + "", /* defaultValue */ + new InspectorPath("Properties", "Text", 4)); + private final ValuePropertyMetadata textAlignmentPropertyMetadata = + new EnumerationPropertyMetadata( + textAlignmentName, + javafx.scene.text.TextAlignment.class, + true, /* readWrite */ + javafx.scene.text.TextAlignment.LEFT, /* defaultValue */ + new InspectorPath("Properties", "Text", 9)); + private final ValuePropertyMetadata textFillPropertyMetadata = + new PaintPropertyMetadata( + textFillName, + true, /* readWrite */ + javafx.scene.paint.Color.BLACK, /* defaultValue */ + new InspectorPath("Properties", "Text", 7)); + private final ComponentPropertyMetadata textFormatterPropertyMetadata = + new ComponentPropertyMetadata( + textFormatterName, + TextFormatterMetadata, + false); /* collection */ + private final ValuePropertyMetadata textOriginPropertyMetadata = + new EnumerationPropertyMetadata( + textOriginName, + javafx.geometry.VPos.class, + true, /* readWrite */ + javafx.geometry.VPos.BASELINE, /* defaultValue */ + new InspectorPath("Layout", "Extras", 6)); + private final ValuePropertyMetadata textOverrunPropertyMetadata = + new EnumerationPropertyMetadata( + textOverrunName, + javafx.scene.control.OverrunStyle.class, + true, /* readWrite */ + javafx.scene.control.OverrunStyle.ELLIPSIS, /* defaultValue */ + new InspectorPath("Properties", "Text", 11)); + private final ValuePropertyMetadata tickLabelFillPropertyMetadata = + new PaintPropertyMetadata( + tickLabelFillName, + true, /* readWrite */ + javafx.scene.paint.Color.BLACK, /* defaultValue */ + new InspectorPath("Properties", "Specific", 97)); + private final ValuePropertyMetadata tickLabelFontPropertyMetadata = + new FontPropertyMetadata( + tickLabelFontName, + true, /* readWrite */ + javafx.scene.text.Font.font("System",8.0), /* defaultValue */ + new InspectorPath("Properties", "Specific", 93)); + private final ValuePropertyMetadata tickLabelFormatterPropertyMetadata = + new StringConverterPropertyMetadata( + tickLabelFormatterName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Properties", "Specific", 86)); + private final ValuePropertyMetadata tickLabelGapPropertyMetadata = + new DoublePropertyMetadata( + tickLabelGapName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 3.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 103)); + private final ValuePropertyMetadata tickLabelRotationPropertyMetadata = + new DoublePropertyMetadata( + tickLabelRotationName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.ANGLE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 112)); + private final ValuePropertyMetadata tickLabelsVisiblePropertyMetadata = + new BooleanPropertyMetadata( + tickLabelsVisibleName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 85)); + private final ValuePropertyMetadata tickLengthPropertyMetadata = + new DoublePropertyMetadata( + tickLengthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 8.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 116)); + private final ValuePropertyMetadata tickMarksPropertyMetadata = + new TickMarkListPropertyMetadata( + tickMarksName, + true, /* readWrite */ + Collections.emptyList(), /* defaultValue */ + new InspectorPath("Properties", "Specific", 84)); + private final ValuePropertyMetadata tickMarkVisiblePropertyMetadata = + new BooleanPropertyMetadata( + tickMarkVisibleName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 114)); + private final ValuePropertyMetadata tickUnitPropertyMetadata = + new DoublePropertyMetadata( + tickUnitName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 5.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 120)); + private final ValuePropertyMetadata tileAlignmentPropertyMetadata = + new EnumerationPropertyMetadata( + tileAlignmentName, + javafx.geometry.Pos.class, + true, /* readWrite */ + javafx.geometry.Pos.CENTER, /* defaultValue */ + new InspectorPath("Properties", "Specific", 59)); + private final ValuePropertyMetadata tileHeightPropertyMetadata = + new DoublePropertyMetadata( + tileHeightName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Layout", "Specific", 21)); + private final ValuePropertyMetadata tileWidthPropertyMetadata = + new DoublePropertyMetadata( + tileWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Layout", "Specific", 20)); + private final ValuePropertyMetadata titleFilterPropertyMetadata = + new StringPropertyMetadata( + titleFilterName, + true, /* readWrite */ + "", + new InspectorPath("Properties", "Specific", 1)); + private final ComponentPropertyMetadata titleNodes_Node_PropertyMetadata = + new ComponentPropertyMetadata( + titleNodesName, + NodeMetadata, + true); /* collection */ + private final ValuePropertyMetadata titlePropertyMetadata = + new StringPropertyMetadata( + titleName, + true, /* readWrite */ + "", /* defaultValue */ + new InspectorPath("Properties", "Specific", 37)); + private final ValuePropertyMetadata titleSidePropertyMetadata = + new EnumerationPropertyMetadata( + titleSideName, + javafx.geometry.Side.class, + true, /* readWrite */ + javafx.geometry.Side.TOP, /* defaultValue */ + new InspectorPath("Properties", "Specific", 60)); + private final ComponentPropertyMetadata toggles_ToggleButton_PropertyMetadata = + new ComponentPropertyMetadata( + togglesName, + ToggleButtonMetadata, + true /* collection */ + ); + private final ValuePropertyMetadata toggleGroupPropertyMetadata = + new ToggleGroupPropertyMetadata( + toggleGroupName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Properties", "Specific", 38)); + private final ComponentPropertyMetadata tooltipPropertyMetadata = + new ComponentPropertyMetadata( + tooltipName, + TooltipMetadata, + false); /* collection */ + private final ComponentPropertyMetadata topPropertyMetadata = + new ComponentPropertyMetadata( + topName, + NodeMetadata, + false); /* collection */ + private final ValuePropertyMetadata translateXPropertyMetadata = + new DoublePropertyMetadata( + translateXName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Transforms", 5)); + private final ValuePropertyMetadata translateYPropertyMetadata = + new DoublePropertyMetadata( + translateYName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Transforms", 6)); + private final ValuePropertyMetadata translateZPropertyMetadata = + new DoublePropertyMetadata( + translateZName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Transforms", 7)); + private final ComponentPropertyMetadata treeColumnPropertyMetadata = + new ComponentPropertyMetadata( + treeColumnName, + TreeTableColumnMetadata, + false); /* collection */ + private final ValuePropertyMetadata typePropertyMetadata = + new EnumerationPropertyMetadata( + typeName, + javafx.scene.shape.ArcType.class, + true, /* readWrite */ + javafx.scene.shape.ArcType.OPEN, /* defaultValue */ + new InspectorPath("Properties", "Specific", 61)); + private final ValuePropertyMetadata underlinePropertyMetadata = + new BooleanPropertyMetadata( + underlineName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Text", 14)); + private final ValuePropertyMetadata unitIncrementPropertyMetadata = + new DoublePropertyMetadata( + unitIncrementName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 1.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 69)); + private final ValuePropertyMetadata upperBoundPropertyMetadata = + new DoublePropertyMetadata( + upperBoundName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 100.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 98)); + private final ValuePropertyMetadata userAgentStylesheetPropertyMetadata = + new StringPropertyMetadata( + userAgentStylesheetName, + true, /* readWrite */ + "", /* defaultValue */ + new InspectorPath("Properties", "Specific", 129)); + private final ValuePropertyMetadata valignment_NULL_PropertyMetadata = + new EnumerationPropertyMetadata( + valignmentName, + javafx.geometry.VPos.class, + "INHERIT", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Layout", "Specific", 5)); + private final ValuePropertyMetadata valignment_CENTER_PropertyMetadata = + new EnumerationPropertyMetadata( + valignmentName, + javafx.geometry.VPos.class, + true, /* readWrite */ + javafx.geometry.VPos.CENTER, /* defaultValue */ + new InspectorPath("Layout", "Specific", 5)); + private final ValuePropertyMetadata value_Object_PropertyMetadata = + new ObjectPropertyMetadata( + valueName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Properties", "Specific", 70)); + private final ValuePropertyMetadata value_Color_PropertyMetadata = + new ColorPropertyMetadata( + valueName, + true, /* readWrite */ + javafx.scene.paint.Color.WHITE, /* defaultValue */ + new InspectorPath("Properties", "Specific", 70)); + private final ValuePropertyMetadata value_Double_PropertyMetadata = + new DoublePropertyMetadata( + valueName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 70)); + private final ValuePropertyMetadata value_Object_ro_PropertyMetadata = + new ObjectPropertyMetadata( + valueName, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Properties", "Specific", 70)); + private final ValuePropertyMetadata vbarPolicyPropertyMetadata = + new EnumerationPropertyMetadata( + vbarPolicyName, + javafx.scene.control.ScrollPane.ScrollBarPolicy.class, + true, /* readWrite */ + javafx.scene.control.ScrollPane.ScrollBarPolicy.AS_NEEDED, /* defaultValue */ + new InspectorPath("Properties", "Specific", 71)); + private final ValuePropertyMetadata verticalFieldOfViewPropertyMetadata = + new BooleanPropertyMetadata( + verticalFieldOfViewName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "3D", 5)); + private final ValuePropertyMetadata verticalGridLinesVisiblePropertyMetadata = + new BooleanPropertyMetadata( + verticalGridLinesVisibleName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 115)); + private final ValuePropertyMetadata verticalZeroLineVisiblePropertyMetadata = + new BooleanPropertyMetadata( + verticalZeroLineVisibleName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Specific", 117)); + private final ValuePropertyMetadata vgapPropertyMetadata = + new DoublePropertyMetadata( + vgapName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Internal", 1)); + private final ValuePropertyMetadata vgrowPropertyMetadata = + new EnumerationPropertyMetadata( + vgrowName, + javafx.scene.layout.Priority.class, + "INHERIT", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Layout", "Specific", 3)); + private final ValuePropertyMetadata viewportPropertyMetadata = + new Rectangle2DPropertyMetadata( + viewportName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Layout", "Specific", 0)); + private final ValuePropertyMetadata viewportBoundsPropertyMetadata = + new BoundsPropertyMetadata( + viewportBoundsName, + true, /* readWrite */ + new javafx.geometry.BoundingBox(0.0, 0.0, 0.0, 0.0), /* defaultValue */ + new InspectorPath("Layout", "Bounds", 1)); + private final ValuePropertyMetadata visiblePropertyMetadata = + new BooleanPropertyMetadata( + visibleName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Properties", "Node", 5)); + private final ValuePropertyMetadata visibleAmountPropertyMetadata = + new DoublePropertyMetadata( + visibleAmountName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 15.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 87)); + private final ValuePropertyMetadata visibleRowCountPropertyMetadata = + new IntegerPropertyMetadata( + visibleRowCountName, + true, /* readWrite */ + 10, /* defaultValue */ + new InspectorPath("Properties", "Specific", 41)); + private final ValuePropertyMetadata visitedPropertyMetadata = + new BooleanPropertyMetadata( + visitedName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Specific", 42)); + private final ValuePropertyMetadata vmaxPropertyMetadata = + new DoublePropertyMetadata( + vmaxName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 1.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 109)); + private final ValuePropertyMetadata vminPropertyMetadata = + new DoublePropertyMetadata( + vminName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 105)); + private final ValuePropertyMetadata vvaluePropertyMetadata = + new DoublePropertyMetadata( + vvalueName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 107)); + private final ValuePropertyMetadata width_Double_200_PropertyMetadata = + new DoublePropertyMetadata( + widthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 2.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 7)); + private final ValuePropertyMetadata width_Double_0_PropertyMetadata = + new DoublePropertyMetadata( + widthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Size", 7)); + private final ValuePropertyMetadata width_Double_ro_PropertyMetadata = + new DoublePropertyMetadata( + widthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Layout", "Size", 7)); + private final ValuePropertyMetadata wrappingWidthPropertyMetadata = + new DoublePropertyMetadata( + wrappingWidthName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Text", 10)); + private final ValuePropertyMetadata wrapTextPropertyMetadata = + new BooleanPropertyMetadata( + wrapTextName, + true, /* readWrite */ + false, /* defaultValue */ + new InspectorPath("Properties", "Text", 8)); + private final ValuePropertyMetadata x_0_PropertyMetadata = + new DoublePropertyMetadata( + xName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 12)); + private final ValuePropertyMetadata x_NaN_PropertyMetadata = + new DoublePropertyMetadata( + xName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + Double.NaN, /* defaultValue */ + new InspectorPath("Layout", "Position", 12)); + private final ComponentPropertyMetadata xAxisPropertyMetadata = + new ComponentPropertyMetadata( + xAxisName, + AxisMetadata, + false); /* collection */ + private final ValuePropertyMetadata XAxisRotationPropertyMetadata = + new DoublePropertyMetadata( + XAxisRotationName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.ANGLE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 125)); + private final ValuePropertyMetadata y_0_PropertyMetadata = + new DoublePropertyMetadata( + yName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + 0.0, /* defaultValue */ + new InspectorPath("Layout", "Position", 13)); + private final ValuePropertyMetadata y_NaN_PropertyMetadata = + new DoublePropertyMetadata( + yName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + true, /* readWrite */ + Double.NaN, /* defaultValue */ + new InspectorPath("Layout", "Position", 13)); + private final ComponentPropertyMetadata yAxisPropertyMetadata = + new ComponentPropertyMetadata( + yAxisName, + AxisMetadata, + false); /* collection */ + private final ValuePropertyMetadata zeroPositionPropertyMetadata = + new DoublePropertyMetadata( + zeroPositionName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, + false, /* readWrite */ + null, /* No defaultValue for R/O property */ + new InspectorPath("Properties", "Specific", 118)); + private final ValuePropertyMetadata zoomPropertyMetadata = + new DoublePropertyMetadata( + zoomName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, + true, /* readWrite */ + 1.0, /* defaultValue */ + new InspectorPath("Properties", "Specific", 123)); + private final ValuePropertyMetadata SplitPane_resizableWithParentPropertyMetadata = + new BooleanPropertyMetadata( + SplitPane_resizableWithParentName, + true, /* readWrite */ + true, /* defaultValue */ + new InspectorPath("Layout", "Split Pane Constraints", 0)); + private final ValuePropertyMetadata AnchorPane_bottomAnchorPropertyMetadata = + new DoublePropertyMetadata( + AnchorPane_bottomAnchorName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.NULLABLE_COORDINATE, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Layout", "Anchor Pane Constraints", 0)); + private final ValuePropertyMetadata AnchorPane_leftAnchorPropertyMetadata = + new DoublePropertyMetadata( + AnchorPane_leftAnchorName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.NULLABLE_COORDINATE, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Layout", "Anchor Pane Constraints", 1)); + private final ValuePropertyMetadata AnchorPane_rightAnchorPropertyMetadata = + new DoublePropertyMetadata( + AnchorPane_rightAnchorName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.NULLABLE_COORDINATE, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Layout", "Anchor Pane Constraints", 2)); + private final ValuePropertyMetadata AnchorPane_topAnchorPropertyMetadata = + new DoublePropertyMetadata( + AnchorPane_topAnchorName, + com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.NULLABLE_COORDINATE, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Layout", "Anchor Pane Constraints", 3)); + private final ValuePropertyMetadata BorderPane_alignmentPropertyMetadata = + new EnumerationPropertyMetadata( + BorderPane_alignmentName, + javafx.geometry.Pos.class, + "AUTOMATIC", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Layout", "Border Pane Constraints", 0)); + private final ValuePropertyMetadata BorderPane_marginPropertyMetadata = + new InsetsPropertyMetadata( + BorderPane_marginName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Layout", "Border Pane Constraints", 1)); + private final ValuePropertyMetadata FlowPane_marginPropertyMetadata = + new InsetsPropertyMetadata( + FlowPane_marginName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Layout", "Flow Pane Constraints", 0)); + private final ValuePropertyMetadata GridPane_columnIndexPropertyMetadata = + new IntegerPropertyMetadata( + GridPane_columnIndexName, + true, /* readWrite */ + 0, /* defaultValue */ + new InspectorPath("Layout", "Grid Pane Constraints", 1)); + private final ValuePropertyMetadata GridPane_columnSpanPropertyMetadata = + new IntegerPropertyMetadata( + GridPane_columnSpanName, + true, /* readWrite */ + 1, /* defaultValue */ + new InspectorPath("Layout", "Grid Pane Constraints", 3)); + private final ValuePropertyMetadata GridPane_halignmentPropertyMetadata = + new EnumerationPropertyMetadata( + GridPane_halignmentName, + javafx.geometry.HPos.class, + "INHERIT", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Layout", "Grid Pane Constraints", 7)); + private final ValuePropertyMetadata GridPane_hgrowPropertyMetadata = + new EnumerationPropertyMetadata( + GridPane_hgrowName, + javafx.scene.layout.Priority.class, + "INHERIT", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Layout", "Grid Pane Constraints", 4)); + private final ValuePropertyMetadata GridPane_marginPropertyMetadata = + new InsetsPropertyMetadata( + GridPane_marginName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Layout", "Grid Pane Constraints", 8)); + private final ValuePropertyMetadata GridPane_rowIndexPropertyMetadata = + new IntegerPropertyMetadata( + GridPane_rowIndexName, + true, /* readWrite */ + 0, /* defaultValue */ + new InspectorPath("Layout", "Grid Pane Constraints", 0)); + private final ValuePropertyMetadata GridPane_rowSpanPropertyMetadata = + new IntegerPropertyMetadata( + GridPane_rowSpanName, + true, /* readWrite */ + 1, /* defaultValue */ + new InspectorPath("Layout", "Grid Pane Constraints", 2)); + private final ValuePropertyMetadata GridPane_valignmentPropertyMetadata = + new EnumerationPropertyMetadata( + GridPane_valignmentName, + javafx.geometry.VPos.class, + "INHERIT", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Layout", "Grid Pane Constraints", 6)); + private final ValuePropertyMetadata GridPane_vgrowPropertyMetadata = + new EnumerationPropertyMetadata( + GridPane_vgrowName, + javafx.scene.layout.Priority.class, + "INHERIT", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Layout", "Grid Pane Constraints", 5)); + private final ValuePropertyMetadata HBox_hgrowPropertyMetadata = + new EnumerationPropertyMetadata( + HBox_hgrowName, + javafx.scene.layout.Priority.class, + "INHERIT", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Layout", "HBox Constraints", 0)); + private final ValuePropertyMetadata HBox_marginPropertyMetadata = + new InsetsPropertyMetadata( + HBox_marginName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Layout", "HBox Constraints", 1)); + private final ValuePropertyMetadata StackPane_alignmentPropertyMetadata = + new EnumerationPropertyMetadata( + StackPane_alignmentName, + javafx.geometry.Pos.class, + "INHERIT", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Layout", "Stack Pane Constraints", 0)); + private final ValuePropertyMetadata StackPane_marginPropertyMetadata = + new InsetsPropertyMetadata( + StackPane_marginName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Layout", "Stack Pane Constraints", 1)); + private final ValuePropertyMetadata TilePane_alignmentPropertyMetadata = + new EnumerationPropertyMetadata( + TilePane_alignmentName, + javafx.geometry.Pos.class, + "INHERIT", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Layout", "Tile Pane Constraints", 0)); + private final ValuePropertyMetadata TilePane_marginPropertyMetadata = + new InsetsPropertyMetadata( + TilePane_marginName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Layout", "Tile Pane Constraints", 1)); + private final ValuePropertyMetadata VBox_marginPropertyMetadata = + new InsetsPropertyMetadata( + VBox_marginName, + true, /* readWrite */ + null, /* defaultValue */ + new InspectorPath("Layout", "VBox Constraints", 1)); + private final ValuePropertyMetadata VBox_vgrowPropertyMetadata = + new EnumerationPropertyMetadata( + VBox_vgrowName, + javafx.scene.layout.Priority.class, + "INHERIT", /* null equivalent */ + true, /* readWrite */ + new InspectorPath("Layout", "VBox Constraints", 0)); + + private final ValuePropertyMetadata includeFxmlPropertyMetadata = + new StringListPropertyMetadata( + source, + true, /* readWrite */ + Collections.emptyList(), /* defaultValue */ + new InspectorPath("Properties", "Include FXML file", 2)); + + - private void addMetadataFromSpi() { - ServiceLoader<IComponentClassMetadataProvider> loader = - ServiceLoader.load(IComponentClassMetadataProvider.class); - try { - Iterator<IComponentClassMetadataProvider> providers = loader.iterator(); - while (providers.hasNext()) { - componentClassMap.putAll(providers.next().getMetadata()); - } - } catch (ServiceConfigurationError e) { - e.printStackTrace(); - } - } - private Metadata() { - addMetadataFromSpi(); + + // Populate componentClassMap + componentClassMap.put(AccordionMetadata.getKlass(), AccordionMetadata); + componentClassMap.put(AmbientLightMetadata.getKlass(), AmbientLightMetadata); + componentClassMap.put(AnchorPaneMetadata.getKlass(), AnchorPaneMetadata); + componentClassMap.put(ArcMetadata.getKlass(), ArcMetadata); + componentClassMap.put(ArcToMetadata.getKlass(), ArcToMetadata); + componentClassMap.put(AreaChartMetadata.getKlass(), AreaChartMetadata); + componentClassMap.put(AxisMetadata.getKlass(), AxisMetadata); + componentClassMap.put(BarChartMetadata.getKlass(), BarChartMetadata); + componentClassMap.put(BorderPaneMetadata.getKlass(), BorderPaneMetadata); +// componentClassMap.put(BottomNavigationMetadata.getKlass(), BottomNavigationMetadata); + componentClassMap.put(BoxMetadata.getKlass(), BoxMetadata); + componentClassMap.put(BubbleChartMetadata.getKlass(), BubbleChartMetadata); + componentClassMap.put(ButtonMetadata.getKlass(), ButtonMetadata); + componentClassMap.put(ButtonBarMetadata.getKlass(), ButtonBarMetadata); + componentClassMap.put(ButtonBaseMetadata.getKlass(), ButtonBaseMetadata); + componentClassMap.put(CameraMetadata.getKlass(), CameraMetadata); + componentClassMap.put(CanvasMetadata.getKlass(), CanvasMetadata); +// componentClassMap.put(CardPaneMetadata.getKlass(), CardPaneMetadata); + componentClassMap.put(CategoryAxisMetadata.getKlass(), CategoryAxisMetadata); + componentClassMap.put(ChartMetadata.getKlass(), ChartMetadata); + componentClassMap.put(CheckBoxMetadata.getKlass(), CheckBoxMetadata); + componentClassMap.put(CheckMenuItemMetadata.getKlass(), CheckMenuItemMetadata); + componentClassMap.put(ChoiceBoxMetadata.getKlass(), ChoiceBoxMetadata); + componentClassMap.put(CircleMetadata.getKlass(), CircleMetadata); + componentClassMap.put(ClosePathMetadata.getKlass(), ClosePathMetadata); +// componentClassMap.put(CollapsedPanelMetadata.getKlass(), CollapsedPanelMetadata); + componentClassMap.put(ColorPickerMetadata.getKlass(), ColorPickerMetadata); + componentClassMap.put(ColumnConstraintsMetadata.getKlass(), ColumnConstraintsMetadata); + componentClassMap.put(ComboBoxMetadata.getKlass(), ComboBoxMetadata); + componentClassMap.put(ComboBoxBaseMetadata.getKlass(), ComboBoxBaseMetadata); + componentClassMap.put(ContextMenuMetadata.getKlass(), ContextMenuMetadata); + componentClassMap.put(ControlMetadata.getKlass(), ControlMetadata); + componentClassMap.put(CubicCurveMetadata.getKlass(), CubicCurveMetadata); + componentClassMap.put(CubicCurveToMetadata.getKlass(), CubicCurveToMetadata); + componentClassMap.put(CustomMenuItemMetadata.getKlass(), CustomMenuItemMetadata); + componentClassMap.put(CylinderMetadata.getKlass(), CylinderMetadata); + componentClassMap.put(DatePickerMetadata.getKlass(), DatePickerMetadata); + componentClassMap.put(DialogPaneMetadata.getKlass(), DialogPaneMetadata); +// componentClassMap.put(DropdownButtonMetadata.getKlass(), DropdownButtonMetadata); + componentClassMap.put(EllipseMetadata.getKlass(), EllipseMetadata); +// componentClassMap.put(ExpandedPanelMetadata.getKlass(), ExpandedPanelMetadata); +// componentClassMap.put(ExpansionPanelMetadata.getKlass(), ExpansionPanelMetadata); +// componentClassMap.put(ExpansionPanelContainerMetadata.getKlass(), ExpansionPanelContainerMetadata); + componentClassMap.put(FlowPaneMetadata.getKlass(), FlowPaneMetadata); + componentClassMap.put(GridPaneMetadata.getKlass(), GridPaneMetadata); + componentClassMap.put(GroupMetadata.getKlass(), GroupMetadata); + componentClassMap.put(HBoxMetadata.getKlass(), HBoxMetadata); + componentClassMap.put(HLineToMetadata.getKlass(), HLineToMetadata); + componentClassMap.put(HTMLEditorMetadata.getKlass(), HTMLEditorMetadata); + componentClassMap.put(HyperlinkMetadata.getKlass(), HyperlinkMetadata); + componentClassMap.put(ImageViewMetadata.getKlass(), ImageViewMetadata); + componentClassMap.put(LabelMetadata.getKlass(), LabelMetadata); + componentClassMap.put(LabeledMetadata.getKlass(), LabeledMetadata); + componentClassMap.put(LightBaseMetadata.getKlass(), LightBaseMetadata); + componentClassMap.put(LineMetadata.getKlass(), LineMetadata); + componentClassMap.put(LineChartMetadata.getKlass(), LineChartMetadata); + componentClassMap.put(LineToMetadata.getKlass(), LineToMetadata); + componentClassMap.put(ListViewMetadata.getKlass(), ListViewMetadata); + componentClassMap.put(MediaViewMetadata.getKlass(), MediaViewMetadata); + componentClassMap.put(MenuMetadata.getKlass(), MenuMetadata); + componentClassMap.put(MenuBarMetadata.getKlass(), MenuBarMetadata); + componentClassMap.put(MenuButtonMetadata.getKlass(), MenuButtonMetadata); + componentClassMap.put(MenuItemMetadata.getKlass(), MenuItemMetadata); + componentClassMap.put(MeshViewMetadata.getKlass(), MeshViewMetadata); + componentClassMap.put(MoveToMetadata.getKlass(), MoveToMetadata); + componentClassMap.put(NodeMetadata.getKlass(), NodeMetadata); + componentClassMap.put(NumberAxisMetadata.getKlass(), NumberAxisMetadata); + componentClassMap.put(PaginationMetadata.getKlass(), PaginationMetadata); + componentClassMap.put(PaneMetadata.getKlass(), PaneMetadata); + componentClassMap.put(ParallelCameraMetadata.getKlass(), ParallelCameraMetadata); + componentClassMap.put(ParentMetadata.getKlass(), ParentMetadata); + componentClassMap.put(PasswordFieldMetadata.getKlass(), PasswordFieldMetadata); + componentClassMap.put(PathMetadata.getKlass(), PathMetadata); + componentClassMap.put(PathElementMetadata.getKlass(), PathElementMetadata); + componentClassMap.put(PerspectiveCameraMetadata.getKlass(), PerspectiveCameraMetadata); + componentClassMap.put(PieChartMetadata.getKlass(), PieChartMetadata); + componentClassMap.put(PointLightMetadata.getKlass(), PointLightMetadata); + componentClassMap.put(PolygonMetadata.getKlass(), PolygonMetadata); + componentClassMap.put(PolylineMetadata.getKlass(), PolylineMetadata); + componentClassMap.put(PopupControlMetadata.getKlass(), PopupControlMetadata); + componentClassMap.put(PopupWindowMetadata.getKlass(), PopupWindowMetadata); + componentClassMap.put(ProgressBarMetadata.getKlass(), ProgressBarMetadata); + componentClassMap.put(ProgressIndicatorMetadata.getKlass(), ProgressIndicatorMetadata); + componentClassMap.put(QuadCurveMetadata.getKlass(), QuadCurveMetadata); + componentClassMap.put(QuadCurveToMetadata.getKlass(), QuadCurveToMetadata); + componentClassMap.put(RadioButtonMetadata.getKlass(), RadioButtonMetadata); + componentClassMap.put(RadioMenuItemMetadata.getKlass(), RadioMenuItemMetadata); + componentClassMap.put(RectangleMetadata.getKlass(), RectangleMetadata); + componentClassMap.put(RegionMetadata.getKlass(), RegionMetadata); + componentClassMap.put(RowConstraintsMetadata.getKlass(), RowConstraintsMetadata); + componentClassMap.put(SVGPathMetadata.getKlass(), SVGPathMetadata); + componentClassMap.put(ScatterChartMetadata.getKlass(), ScatterChartMetadata); + componentClassMap.put(ScrollBarMetadata.getKlass(), ScrollBarMetadata); + componentClassMap.put(ScrollPaneMetadata.getKlass(), ScrollPaneMetadata); + componentClassMap.put(SeparatorMetadata.getKlass(), SeparatorMetadata); + componentClassMap.put(SeparatorMenuItemMetadata.getKlass(), SeparatorMenuItemMetadata); + componentClassMap.put(ShapeMetadata.getKlass(), ShapeMetadata); + componentClassMap.put(Shape3DMetadata.getKlass(), Shape3DMetadata); + componentClassMap.put(SliderMetadata.getKlass(), SliderMetadata); + componentClassMap.put(SphereMetadata.getKlass(), SphereMetadata); + componentClassMap.put(SpinnerMetadata.getKlass(), SpinnerMetadata); + componentClassMap.put(SplitMenuButtonMetadata.getKlass(), SplitMenuButtonMetadata); + componentClassMap.put(SplitPaneMetadata.getKlass(), SplitPaneMetadata); + componentClassMap.put(StackPaneMetadata.getKlass(), StackPaneMetadata); + componentClassMap.put(StackedAreaChartMetadata.getKlass(), StackedAreaChartMetadata); + componentClassMap.put(StackedBarChartMetadata.getKlass(), StackedBarChartMetadata); + componentClassMap.put(SubSceneMetadata.getKlass(), SubSceneMetadata); + componentClassMap.put(SwingNodeMetadata.getKlass(), SwingNodeMetadata); + componentClassMap.put(TabMetadata.getKlass(), TabMetadata); + componentClassMap.put(TabPaneMetadata.getKlass(), TabPaneMetadata); + componentClassMap.put(TableColumnMetadata.getKlass(), TableColumnMetadata); + componentClassMap.put(TableColumnBaseMetadata.getKlass(), TableColumnBaseMetadata); + componentClassMap.put(TableViewMetadata.getKlass(), TableViewMetadata); + componentClassMap.put(TextMetadata.getKlass(), TextMetadata); + componentClassMap.put(TextAreaMetadata.getKlass(), TextAreaMetadata); + componentClassMap.put(TextFieldMetadata.getKlass(), TextFieldMetadata); + componentClassMap.put(TextFlowMetadata.getKlass(), TextFlowMetadata); + componentClassMap.put(TextFormatterMetadata.getKlass(), TextFormatterMetadata); + componentClassMap.put(TextInputControlMetadata.getKlass(), TextInputControlMetadata); + componentClassMap.put(TilePaneMetadata.getKlass(), TilePaneMetadata); + componentClassMap.put(TitledPaneMetadata.getKlass(), TitledPaneMetadata); +// componentClassMap.put(ToggleButtonGroupMetadata.getKlass(), ToggleButtonGroupMetadata); + componentClassMap.put(ToggleButtonMetadata.getKlass(), ToggleButtonMetadata); + componentClassMap.put(ToolBarMetadata.getKlass(), ToolBarMetadata); + componentClassMap.put(TooltipMetadata.getKlass(), TooltipMetadata); + componentClassMap.put(TreeTableColumnMetadata.getKlass(), TreeTableColumnMetadata); + componentClassMap.put(TreeTableViewMetadata.getKlass(), TreeTableViewMetadata); + componentClassMap.put(TreeViewMetadata.getKlass(), TreeViewMetadata); + componentClassMap.put(VBoxMetadata.getKlass(), VBoxMetadata); + componentClassMap.put(VLineToMetadata.getKlass(), VLineToMetadata); + componentClassMap.put(ValueAxisMetadata.getKlass(), ValueAxisMetadata); + componentClassMap.put(WebViewMetadata.getKlass(), WebViewMetadata); + componentClassMap.put(XYChartMetadata.getKlass(), XYChartMetadata); + componentClassMap.put(IncludeElementMetadata.getKlass(), IncludeElementMetadata); + + // ComponentMetadata -> PropertyMetadata + AccordionMetadata.getProperties().add(panesPropertyMetadata); + AccordionMetadata.getProperties().add(styleClass_c4_PropertyMetadata); + + AmbientLightMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + AmbientLightMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + + ArcMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + ArcMetadata.getProperties().add(centerXPropertyMetadata); + ArcMetadata.getProperties().add(centerYPropertyMetadata); + ArcMetadata.getProperties().add(length_Double_PropertyMetadata); + ArcMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + ArcMetadata.getProperties().add(radiusXPropertyMetadata); + ArcMetadata.getProperties().add(radiusYPropertyMetadata); + ArcMetadata.getProperties().add(startAnglePropertyMetadata); + ArcMetadata.getProperties().add(typePropertyMetadata); + + ArcToMetadata.getProperties().add(largeArcFlagPropertyMetadata); + ArcToMetadata.getProperties().add(radiusXPropertyMetadata); + ArcToMetadata.getProperties().add(radiusYPropertyMetadata); + ArcToMetadata.getProperties().add(sweepFlagPropertyMetadata); + ArcToMetadata.getProperties().add(x_0_PropertyMetadata); + ArcToMetadata.getProperties().add(XAxisRotationPropertyMetadata); + ArcToMetadata.getProperties().add(y_0_PropertyMetadata); + + AreaChartMetadata.getProperties().add(createSymbolsPropertyMetadata); + AreaChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); + + AxisMetadata.getProperties().add(animatedPropertyMetadata); + AxisMetadata.getProperties().add(autoRangingPropertyMetadata); + AxisMetadata.getProperties().add(labelPropertyMetadata); + AxisMetadata.getProperties().add(side_NULL_PropertyMetadata); + AxisMetadata.getProperties().add(styleClass_c45_PropertyMetadata); + AxisMetadata.getProperties().add(tickLabelFillPropertyMetadata); + AxisMetadata.getProperties().add(tickLabelFontPropertyMetadata); + AxisMetadata.getProperties().add(tickLabelGapPropertyMetadata); + AxisMetadata.getProperties().add(tickLabelRotationPropertyMetadata); + AxisMetadata.getProperties().add(tickLabelsVisiblePropertyMetadata); + AxisMetadata.getProperties().add(tickLengthPropertyMetadata); + AxisMetadata.getProperties().add(tickMarksPropertyMetadata); + AxisMetadata.getProperties().add(tickMarkVisiblePropertyMetadata); + AxisMetadata.getProperties().add(zeroPositionPropertyMetadata); + + BarChartMetadata.getProperties().add(barGapPropertyMetadata); + BarChartMetadata.getProperties().add(categoryGapPropertyMetadata); + BarChartMetadata.getProperties().add(styleClass_c1_PropertyMetadata); + + BorderPaneMetadata.getProperties().add(bottomPropertyMetadata); + BorderPaneMetadata.getProperties().add(centerPropertyMetadata); + BorderPaneMetadata.getProperties().add(contentBiasPropertyMetadata); + BorderPaneMetadata.getProperties().add(leftPropertyMetadata); + BorderPaneMetadata.getProperties().add(rightPropertyMetadata); + BorderPaneMetadata.getProperties().add(topPropertyMetadata); + +// BottomNavigationMetadata.getProperties().add(bottomNavigationTypePropertyMetadata); +// BottomNavigationMetadata.getProperties().add(actionItems_Node_PropertyMetadata); + + BoxMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + BoxMetadata.getProperties().add(depthPropertyMetadata); + BoxMetadata.getProperties().add(height_Double_200_PropertyMetadata); + BoxMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + BoxMetadata.getProperties().add(width_Double_200_PropertyMetadata); + + BubbleChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); + + ButtonMetadata.getProperties().add(accessibleRole_BUTTON_PropertyMetadata); + ButtonMetadata.getProperties().add(cancelButtonPropertyMetadata); + ButtonMetadata.getProperties().add(defaultButtonPropertyMetadata); + ButtonMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + ButtonMetadata.getProperties().add(styleClass_c17_PropertyMetadata); + + ButtonBarMetadata.getProperties().add(buttonMinWidthPropertyMetadata); + ButtonBarMetadata.getProperties().add(buttonOrderPropertyMetadata); + ButtonBarMetadata.getProperties().add(buttonsPropertyMetadata); + ButtonBarMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + ButtonBarMetadata.getProperties().add(styleClass_c35_PropertyMetadata); + + ButtonBaseMetadata.getProperties().add(accessibleRole_RADIO_BUTTON_PropertyMetadata); + ButtonBaseMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + ButtonBaseMetadata.getProperties().add(onActionPropertyMetadata); + ButtonBaseMetadata.getProperties().add(styleClass_c41_PropertyMetadata); + + CameraMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + CameraMetadata.getProperties().add(farClipPropertyMetadata); + CameraMetadata.getProperties().add(nearClipPropertyMetadata); + CameraMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + + CanvasMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + CanvasMetadata.getProperties().add(height_Double_0_PropertyMetadata); + CanvasMetadata.getProperties().add(nodeOrientation_LEFT_TO_RIGHT_PropertyMetadata); + CanvasMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + CanvasMetadata.getProperties().add(width_Double_0_PropertyMetadata); + +// CardPaneMetadata.getProperties().add(items_Node_PropertyMetadata); +// CardPaneMetadata.getProperties().add(onPullToRefreshPropertyMetadata); + + CategoryAxisMetadata.getProperties().add(categoriesPropertyMetadata); + CategoryAxisMetadata.getProperties().add(categorySpacingPropertyMetadata); + CategoryAxisMetadata.getProperties().add(endMarginPropertyMetadata); + CategoryAxisMetadata.getProperties().add(gapStartAndEndPropertyMetadata); + CategoryAxisMetadata.getProperties().add(startMarginPropertyMetadata); + CategoryAxisMetadata.getProperties().add(styleClass_c45_PropertyMetadata); + CategoryAxisMetadata.getProperties().add(zeroPositionPropertyMetadata); + + ChartMetadata.getProperties().add(animatedPropertyMetadata); + ChartMetadata.getProperties().add(legendSidePropertyMetadata); + ChartMetadata.getProperties().add(legendVisiblePropertyMetadata); + ChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); + ChartMetadata.getProperties().add(titlePropertyMetadata); + ChartMetadata.getProperties().add(titleSidePropertyMetadata); + + CheckBoxMetadata.getProperties().add(accessibleRole_CHECK_BOX_PropertyMetadata); + CheckBoxMetadata.getProperties().add(allowIndeterminatePropertyMetadata); + CheckBoxMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + CheckBoxMetadata.getProperties().add(indeterminate_Boolean_PropertyMetadata); + CheckBoxMetadata.getProperties().add(selected_Boolean_PropertyMetadata); + CheckBoxMetadata.getProperties().add(styleClass_c10_PropertyMetadata); + + CheckMenuItemMetadata.getProperties().add(selected_Boolean_PropertyMetadata); + CheckMenuItemMetadata.getProperties().add(styleClass_c28_PropertyMetadata); + + ChoiceBoxMetadata.getProperties().add(accessibleRole_COMBO_BOX_PropertyMetadata); + ChoiceBoxMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + ChoiceBoxMetadata.getProperties().add(styleClass_c43_PropertyMetadata); + ChoiceBoxMetadata.getProperties().add(value_Object_PropertyMetadata); + + CircleMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + CircleMetadata.getProperties().add(centerXPropertyMetadata); + CircleMetadata.getProperties().add(centerYPropertyMetadata); + CircleMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + CircleMetadata.getProperties().add(radius_0_PropertyMetadata); + +// CollapsedPanelMetadata.getProperties().add(titleNodes_Node_PropertyMetadata); + + ColorPickerMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + ColorPickerMetadata.getProperties().add(styleClass_c5_PropertyMetadata); + ColorPickerMetadata.getProperties().add(value_Color_PropertyMetadata); + + ColumnConstraintsMetadata.getProperties().add(fillWidthPropertyMetadata); + ColumnConstraintsMetadata.getProperties().add(halignment_NULL_PropertyMetadata); + ColumnConstraintsMetadata.getProperties().add(hgrowPropertyMetadata); + ColumnConstraintsMetadata.getProperties().add(maxWidth_COMPUTED_PropertyMetadata); + ColumnConstraintsMetadata.getProperties().add(minWidth_COMPUTED_PropertyMetadata); + ColumnConstraintsMetadata.getProperties().add(percentWidthPropertyMetadata); + ColumnConstraintsMetadata.getProperties().add(prefWidth_COMPUTED_PropertyMetadata); + + ComboBoxMetadata.getProperties().add(accessibleRole_COMBO_BOX_PropertyMetadata); + ComboBoxMetadata.getProperties().add(buttonCellPropertyMetadata); + ComboBoxMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + ComboBoxMetadata.getProperties().add(placeholderPropertyMetadata); + ComboBoxMetadata.getProperties().add(styleClass_c11_PropertyMetadata); + ComboBoxMetadata.getProperties().add(visibleRowCountPropertyMetadata); + + ComboBoxBaseMetadata.getProperties().add(accessibleRole_DATE_PICKER_PropertyMetadata); + ComboBoxBaseMetadata.getProperties().add(editable_false_PropertyMetadata); + ComboBoxBaseMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + ComboBoxBaseMetadata.getProperties().add(onActionPropertyMetadata); + ComboBoxBaseMetadata.getProperties().add(onHiddenPropertyMetadata); + ComboBoxBaseMetadata.getProperties().add(onHidingPropertyMetadata); + ComboBoxBaseMetadata.getProperties().add(onShowingPropertyMetadata); + ComboBoxBaseMetadata.getProperties().add(onShownPropertyMetadata); + ComboBoxBaseMetadata.getProperties().add(promptTextPropertyMetadata); + ComboBoxBaseMetadata.getProperties().add(styleClass_c5_PropertyMetadata); + ComboBoxBaseMetadata.getProperties().add(value_Object_PropertyMetadata); + + ContextMenuMetadata.getProperties().add(autoHide_true_PropertyMetadata); + ContextMenuMetadata.getProperties().add(height_Double_0_PropertyMetadata); + ContextMenuMetadata.getProperties().add(items_MenuItem_PropertyMetadata); + ContextMenuMetadata.getProperties().add(onActionPropertyMetadata); + ContextMenuMetadata.getProperties().add(onCloseRequestPropertyMetadata); + ContextMenuMetadata.getProperties().add(onHiddenPropertyMetadata); + ContextMenuMetadata.getProperties().add(onHidingPropertyMetadata); + ContextMenuMetadata.getProperties().add(onShowingPropertyMetadata); + ContextMenuMetadata.getProperties().add(onShownPropertyMetadata); + ContextMenuMetadata.getProperties().add(opacityPropertyMetadata); + ContextMenuMetadata.getProperties().add(styleClass_c8_PropertyMetadata); + ContextMenuMetadata.getProperties().add(width_Double_0_PropertyMetadata); + ContextMenuMetadata.getProperties().add(x_NaN_PropertyMetadata); + ContextMenuMetadata.getProperties().add(y_NaN_PropertyMetadata); + + ControlMetadata.getProperties().add(baselineOffsetPropertyMetadata); + ControlMetadata.getProperties().add(contextMenuPropertyMetadata); + ControlMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + ControlMetadata.getProperties().add(resizable_Boolean_ro_PropertyMetadata); + ControlMetadata.getProperties().add(styleClass_c25_PropertyMetadata); + ControlMetadata.getProperties().add(tooltipPropertyMetadata); + + CubicCurveMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + CubicCurveMetadata.getProperties().add(controlX1PropertyMetadata); + CubicCurveMetadata.getProperties().add(controlX2PropertyMetadata); + CubicCurveMetadata.getProperties().add(controlY1PropertyMetadata); + CubicCurveMetadata.getProperties().add(controlY2PropertyMetadata); + CubicCurveMetadata.getProperties().add(endXPropertyMetadata); + CubicCurveMetadata.getProperties().add(endYPropertyMetadata); + CubicCurveMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + CubicCurveMetadata.getProperties().add(startXPropertyMetadata); + CubicCurveMetadata.getProperties().add(startYPropertyMetadata); + + CubicCurveToMetadata.getProperties().add(controlX1PropertyMetadata); + CubicCurveToMetadata.getProperties().add(controlX2PropertyMetadata); + CubicCurveToMetadata.getProperties().add(controlY1PropertyMetadata); + CubicCurveToMetadata.getProperties().add(controlY2PropertyMetadata); + CubicCurveToMetadata.getProperties().add(x_0_PropertyMetadata); + CubicCurveToMetadata.getProperties().add(y_0_PropertyMetadata); + + CustomMenuItemMetadata.getProperties().add(content_Node_NULL_PropertyMetadata); + CustomMenuItemMetadata.getProperties().add(hideOnClick_true_PropertyMetadata); + CustomMenuItemMetadata.getProperties().add(styleClass_c27_PropertyMetadata); + + CylinderMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + CylinderMetadata.getProperties().add(divisionsPropertyMetadata); + CylinderMetadata.getProperties().add(height_Double_200_PropertyMetadata); + CylinderMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + CylinderMetadata.getProperties().add(radius_100_PropertyMetadata); + + DatePickerMetadata.getProperties().add(accessibleRole_DATE_PICKER_PropertyMetadata); + DatePickerMetadata.getProperties().add(editable_true_PropertyMetadata); + DatePickerMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + DatePickerMetadata.getProperties().add(showWeekNumbersPropertyMetadata); + DatePickerMetadata.getProperties().add(styleClass_c9_PropertyMetadata); + + DialogPaneMetadata.getProperties().add(buttonTypesPropertyMetadata); + DialogPaneMetadata.getProperties().add(children_c1_PropertyMetadata); + DialogPaneMetadata.getProperties().add(content_Node_NULL_PropertyMetadata); + DialogPaneMetadata.getProperties().add(contentTextPropertyMetadata); + DialogPaneMetadata.getProperties().add(expandableContentPropertyMetadata); + DialogPaneMetadata.getProperties().add(expanded_false_PropertyMetadata); + DialogPaneMetadata.getProperties().add(graphicPropertyMetadata); + DialogPaneMetadata.getProperties().add(headerPropertyMetadata); + DialogPaneMetadata.getProperties().add(headerTextPropertyMetadata); + DialogPaneMetadata.getProperties().add(styleClass_c30_PropertyMetadata); + +// DropdownButtonMetadata.getProperties().add(items_MenuItem_PropertyMetadata); + + EllipseMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + EllipseMetadata.getProperties().add(centerXPropertyMetadata); + EllipseMetadata.getProperties().add(centerYPropertyMetadata); + EllipseMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + EllipseMetadata.getProperties().add(radiusXPropertyMetadata); + EllipseMetadata.getProperties().add(radiusYPropertyMetadata); + +// ExpandedPanelMetadata.getProperties().add(content_EXPANDEDPANEL_PropertyMetadata); +// ExpandedPanelMetadata.getProperties().add(buttons_EXPANDEDPANEL_PropertyMetadata); +// +// ExpansionPanelMetadata.getProperties().add(expandedContentPropertyMetadata); +// ExpansionPanelMetadata.getProperties().add(collapsedContentPropertyMetadata); +// ExpansionPanelMetadata.getProperties().add(expandedPropertyMetadata); +// +// ExpansionPanelContainerMetadata.getProperties().add(items_ExpansionPanel_PropertyMetadata); + + FlowPaneMetadata.getProperties().add(alignment_TOP_LEFT_PropertyMetadata); + FlowPaneMetadata.getProperties().add(columnHalignmentPropertyMetadata); + FlowPaneMetadata.getProperties().add(contentBiasPropertyMetadata); + FlowPaneMetadata.getProperties().add(hgapPropertyMetadata); + FlowPaneMetadata.getProperties().add(orientation_HORIZONTAL_PropertyMetadata); + FlowPaneMetadata.getProperties().add(prefWrapLengthPropertyMetadata); + FlowPaneMetadata.getProperties().add(rowValignmentPropertyMetadata); + FlowPaneMetadata.getProperties().add(vgapPropertyMetadata); + + GridPaneMetadata.getProperties().add(alignment_TOP_LEFT_PropertyMetadata); + GridPaneMetadata.getProperties().add(columnConstraintsPropertyMetadata); + GridPaneMetadata.getProperties().add(contentBiasPropertyMetadata); + GridPaneMetadata.getProperties().add(gridLinesVisiblePropertyMetadata); + GridPaneMetadata.getProperties().add(hgapPropertyMetadata); + GridPaneMetadata.getProperties().add(rowConstraintsPropertyMetadata); + GridPaneMetadata.getProperties().add(vgapPropertyMetadata); + + GroupMetadata.getProperties().add(autoSizeChildrenPropertyMetadata); + GroupMetadata.getProperties().add(children_empty_PropertyMetadata); + GroupMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + + HBoxMetadata.getProperties().add(alignment_TOP_LEFT_PropertyMetadata); + HBoxMetadata.getProperties().add(baselineOffsetPropertyMetadata); + HBoxMetadata.getProperties().add(contentBiasPropertyMetadata); + HBoxMetadata.getProperties().add(fillHeightPropertyMetadata); + HBoxMetadata.getProperties().add(spacingPropertyMetadata); + + HLineToMetadata.getProperties().add(x_0_PropertyMetadata); + + HTMLEditorMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + HTMLEditorMetadata.getProperties().add(htmlTextPropertyMetadata); + HTMLEditorMetadata.getProperties().add(styleClass_c21_PropertyMetadata); + + HyperlinkMetadata.getProperties().add(accessibleRole_HYPERLINK_PropertyMetadata); + HyperlinkMetadata.getProperties().add(cursor_HAND_PropertyMetadata); + HyperlinkMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + HyperlinkMetadata.getProperties().add(mnemonicParsing_false_PropertyMetadata); + HyperlinkMetadata.getProperties().add(styleClass_c25_PropertyMetadata); + HyperlinkMetadata.getProperties().add(visitedPropertyMetadata); + + ImageViewMetadata.getProperties().add(accessibleRole_IMAGE_VIEW_PropertyMetadata); + ImageViewMetadata.getProperties().add(fitHeightPropertyMetadata); + ImageViewMetadata.getProperties().add(fitWidthPropertyMetadata); + ImageViewMetadata.getProperties().add(imagePropertyMetadata); + ImageViewMetadata.getProperties().add(nodeOrientation_LEFT_TO_RIGHT_PropertyMetadata); + ImageViewMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + ImageViewMetadata.getProperties().add(preserveRatio_false_PropertyMetadata); + ImageViewMetadata.getProperties().add(smoothPropertyMetadata); + ImageViewMetadata.getProperties().add(styleClass_c20_PropertyMetadata); + ImageViewMetadata.getProperties().add(viewportPropertyMetadata); + ImageViewMetadata.getProperties().add(x_0_PropertyMetadata); + ImageViewMetadata.getProperties().add(y_0_PropertyMetadata); + + LabelMetadata.getProperties().add(accessibleRole_TEXT_PropertyMetadata); + LabelMetadata.getProperties().add(labelForPropertyMetadata); + LabelMetadata.getProperties().add(mnemonicParsing_false_PropertyMetadata); + LabelMetadata.getProperties().add(styleClass_c3_PropertyMetadata); + + LabeledMetadata.getProperties().add(accessibleRole_TOGGLE_BUTTON_PropertyMetadata); + LabeledMetadata.getProperties().add(alignment_CENTER_LEFT_PropertyMetadata); + LabeledMetadata.getProperties().add(contentBiasPropertyMetadata); + LabeledMetadata.getProperties().add(contentDisplayPropertyMetadata); + LabeledMetadata.getProperties().add(ellipsisStringPropertyMetadata); + LabeledMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + LabeledMetadata.getProperties().add(fontPropertyMetadata); + LabeledMetadata.getProperties().add(graphicPropertyMetadata); + LabeledMetadata.getProperties().add(graphicTextGapPropertyMetadata); + LabeledMetadata.getProperties().add(labelPaddingPropertyMetadata); + LabeledMetadata.getProperties().add(lineSpacingPropertyMetadata); + LabeledMetadata.getProperties().add(mnemonicParsing_true_PropertyMetadata); + LabeledMetadata.getProperties().add(styleClass_c41_PropertyMetadata); + LabeledMetadata.getProperties().add(textPropertyMetadata); + LabeledMetadata.getProperties().add(textAlignmentPropertyMetadata); + LabeledMetadata.getProperties().add(textFillPropertyMetadata); + LabeledMetadata.getProperties().add(textOverrunPropertyMetadata); + LabeledMetadata.getProperties().add(underlinePropertyMetadata); + LabeledMetadata.getProperties().add(wrapTextPropertyMetadata); + + LightBaseMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + LightBaseMetadata.getProperties().add(colorPropertyMetadata); + LightBaseMetadata.getProperties().add(lightOnPropertyMetadata); + LightBaseMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + LightBaseMetadata.getProperties().add(scopePropertyMetadata); + + LineMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + LineMetadata.getProperties().add(endXPropertyMetadata); + LineMetadata.getProperties().add(endYPropertyMetadata); + LineMetadata.getProperties().add(fill_NULL_PropertyMetadata); + LineMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + LineMetadata.getProperties().add(startXPropertyMetadata); + LineMetadata.getProperties().add(startYPropertyMetadata); + LineMetadata.getProperties().add(stroke_BLACK_PropertyMetadata); + + LineChartMetadata.getProperties().add(axisSortingPolicyPropertyMetadata); + LineChartMetadata.getProperties().add(createSymbolsPropertyMetadata); + LineChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); + + LineToMetadata.getProperties().add(x_0_PropertyMetadata); + LineToMetadata.getProperties().add(y_0_PropertyMetadata); + + ListViewMetadata.getProperties().add(accessibleRole_LIST_VIEW_PropertyMetadata); + ListViewMetadata.getProperties().add(editable_false_PropertyMetadata); + ListViewMetadata.getProperties().add(fixedCellSizePropertyMetadata); + ListViewMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + ListViewMetadata.getProperties().add(onEditCancelPropertyMetadata); + ListViewMetadata.getProperties().add(onEditCommitPropertyMetadata); + ListViewMetadata.getProperties().add(onEditStartPropertyMetadata); + ListViewMetadata.getProperties().add(onScrollToPropertyMetadata); + ListViewMetadata.getProperties().add(orientation_VERTICAL_PropertyMetadata); + ListViewMetadata.getProperties().add(placeholderPropertyMetadata); + ListViewMetadata.getProperties().add(styleClass_c34_PropertyMetadata); + + MediaViewMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + MediaViewMetadata.getProperties().add(fitHeightPropertyMetadata); + MediaViewMetadata.getProperties().add(fitWidthPropertyMetadata); + MediaViewMetadata.getProperties().add(nodeOrientation_LEFT_TO_RIGHT_PropertyMetadata); + MediaViewMetadata.getProperties().add(onErrorPropertyMetadata); + MediaViewMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + MediaViewMetadata.getProperties().add(preserveRatio_true_PropertyMetadata); + MediaViewMetadata.getProperties().add(smoothPropertyMetadata); + MediaViewMetadata.getProperties().add(styleClass_c46_PropertyMetadata); + MediaViewMetadata.getProperties().add(viewportPropertyMetadata); + MediaViewMetadata.getProperties().add(x_0_PropertyMetadata); + MediaViewMetadata.getProperties().add(y_0_PropertyMetadata); + + MenuMetadata.getProperties().add(items_MenuItem_PropertyMetadata); + MenuMetadata.getProperties().add(onHiddenPropertyMetadata); + MenuMetadata.getProperties().add(onHidingPropertyMetadata); + MenuMetadata.getProperties().add(onShowingPropertyMetadata); + MenuMetadata.getProperties().add(onShownPropertyMetadata); + MenuMetadata.getProperties().add(styleClass_c29_PropertyMetadata); + + MenuBarMetadata.getProperties().add(accessibleRole_MENU_BAR_PropertyMetadata); + MenuBarMetadata.getProperties().add(menusPropertyMetadata); + MenuBarMetadata.getProperties().add(styleClass_c18_PropertyMetadata); + + MenuButtonMetadata.getProperties().add(accessibleRole_MENU_BUTTON_PropertyMetadata); + MenuButtonMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + MenuButtonMetadata.getProperties().add(items_MenuItem_PropertyMetadata); + MenuButtonMetadata.getProperties().add(popupSidePropertyMetadata); + MenuButtonMetadata.getProperties().add(styleClass_c52_PropertyMetadata); + + MenuItemMetadata.getProperties().add(acceleratorPropertyMetadata); + MenuItemMetadata.getProperties().add(disablePropertyMetadata); + MenuItemMetadata.getProperties().add(graphicPropertyMetadata); + MenuItemMetadata.getProperties().add(idPropertyMetadata); + MenuItemMetadata.getProperties().add(mnemonicParsing_true_PropertyMetadata); + MenuItemMetadata.getProperties().add(onActionPropertyMetadata); + MenuItemMetadata.getProperties().add(onMenuValidationPropertyMetadata); + MenuItemMetadata.getProperties().add(stylePropertyMetadata); + MenuItemMetadata.getProperties().add(styleClass_c36_PropertyMetadata); + MenuItemMetadata.getProperties().add(textPropertyMetadata); + MenuItemMetadata.getProperties().add(visiblePropertyMetadata); + + MeshViewMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + MeshViewMetadata.getProperties().add(meshPropertyMetadata); + MeshViewMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + + MoveToMetadata.getProperties().add(x_0_PropertyMetadata); + MoveToMetadata.getProperties().add(y_0_PropertyMetadata); + + NodeMetadata.getProperties().add(accessibleHelpPropertyMetadata); + NodeMetadata.getProperties().add(accessibleRole_PARENT_PropertyMetadata); + NodeMetadata.getProperties().add(accessibleRoleDescriptionPropertyMetadata); + NodeMetadata.getProperties().add(accessibleTextPropertyMetadata); + NodeMetadata.getProperties().add(baselineOffsetPropertyMetadata); + NodeMetadata.getProperties().add(blendModePropertyMetadata); + NodeMetadata.getProperties().add(boundsInLocalPropertyMetadata); + NodeMetadata.getProperties().add(boundsInParentPropertyMetadata); + NodeMetadata.getProperties().add(cachePropertyMetadata); + NodeMetadata.getProperties().add(cacheHintPropertyMetadata); + NodeMetadata.getProperties().add(clipPropertyMetadata); + NodeMetadata.getProperties().add(contentBiasPropertyMetadata); + NodeMetadata.getProperties().add(cursor_NULL_PropertyMetadata); + NodeMetadata.getProperties().add(depthTestPropertyMetadata); + NodeMetadata.getProperties().add(disablePropertyMetadata); + NodeMetadata.getProperties().add(effectPropertyMetadata); + NodeMetadata.getProperties().add(effectiveNodeOrientationPropertyMetadata); + NodeMetadata.getProperties().add(focusTraversable_false_PropertyMetadata); + NodeMetadata.getProperties().add(idPropertyMetadata); + NodeMetadata.getProperties().add(layoutBoundsPropertyMetadata); + NodeMetadata.getProperties().add(layoutXPropertyMetadata); + NodeMetadata.getProperties().add(layoutYPropertyMetadata); + NodeMetadata.getProperties().add(mouseTransparentPropertyMetadata); + NodeMetadata.getProperties().add(nodeOrientation_INHERIT_PropertyMetadata); + NodeMetadata.getProperties().add(onContextMenuRequestedPropertyMetadata); + NodeMetadata.getProperties().add(onDragDetectedPropertyMetadata); + NodeMetadata.getProperties().add(onDragDonePropertyMetadata); + NodeMetadata.getProperties().add(onDragDroppedPropertyMetadata); + NodeMetadata.getProperties().add(onDragEnteredPropertyMetadata); + NodeMetadata.getProperties().add(onDragExitedPropertyMetadata); + NodeMetadata.getProperties().add(onDragOverPropertyMetadata); + NodeMetadata.getProperties().add(onInputMethodTextChangedPropertyMetadata); + NodeMetadata.getProperties().add(onKeyPressedPropertyMetadata); + NodeMetadata.getProperties().add(onKeyReleasedPropertyMetadata); + NodeMetadata.getProperties().add(onKeyTypedPropertyMetadata); + NodeMetadata.getProperties().add(onMouseClickedPropertyMetadata); + NodeMetadata.getProperties().add(onMouseDragEnteredPropertyMetadata); + NodeMetadata.getProperties().add(onMouseDragExitedPropertyMetadata); + NodeMetadata.getProperties().add(onMouseDraggedPropertyMetadata); + NodeMetadata.getProperties().add(onMouseDragOverPropertyMetadata); + NodeMetadata.getProperties().add(onMouseDragReleasedPropertyMetadata); + NodeMetadata.getProperties().add(onMouseEnteredPropertyMetadata); + NodeMetadata.getProperties().add(onMouseExitedPropertyMetadata); + NodeMetadata.getProperties().add(onMouseMovedPropertyMetadata); + NodeMetadata.getProperties().add(onMousePressedPropertyMetadata); + NodeMetadata.getProperties().add(onMouseReleasedPropertyMetadata); + NodeMetadata.getProperties().add(onRotatePropertyMetadata); + NodeMetadata.getProperties().add(onRotationFinishedPropertyMetadata); + NodeMetadata.getProperties().add(onRotationStartedPropertyMetadata); + NodeMetadata.getProperties().add(onScrollPropertyMetadata); + NodeMetadata.getProperties().add(onScrollFinishedPropertyMetadata); + NodeMetadata.getProperties().add(onScrollStartedPropertyMetadata); + NodeMetadata.getProperties().add(onSwipeDownPropertyMetadata); + NodeMetadata.getProperties().add(onSwipeLeftPropertyMetadata); + NodeMetadata.getProperties().add(onSwipeRightPropertyMetadata); + NodeMetadata.getProperties().add(onSwipeUpPropertyMetadata); + NodeMetadata.getProperties().add(onTouchMovedPropertyMetadata); + NodeMetadata.getProperties().add(onTouchPressedPropertyMetadata); + NodeMetadata.getProperties().add(onTouchReleasedPropertyMetadata); + NodeMetadata.getProperties().add(onTouchStationaryPropertyMetadata); + NodeMetadata.getProperties().add(onZoomPropertyMetadata); + NodeMetadata.getProperties().add(onZoomFinishedPropertyMetadata); + NodeMetadata.getProperties().add(onZoomStartedPropertyMetadata); + NodeMetadata.getProperties().add(opacityPropertyMetadata); + NodeMetadata.getProperties().add(pickOnBounds_true_PropertyMetadata); + NodeMetadata.getProperties().add(resizable_Boolean_ro_PropertyMetadata); + NodeMetadata.getProperties().add(rotatePropertyMetadata); + NodeMetadata.getProperties().add(rotationAxisPropertyMetadata); + NodeMetadata.getProperties().add(scaleXPropertyMetadata); + NodeMetadata.getProperties().add(scaleYPropertyMetadata); + NodeMetadata.getProperties().add(scaleZPropertyMetadata); + NodeMetadata.getProperties().add(stylePropertyMetadata); + NodeMetadata.getProperties().add(styleClass_empty_PropertyMetadata); + NodeMetadata.getProperties().add(translateXPropertyMetadata); + NodeMetadata.getProperties().add(translateYPropertyMetadata); + NodeMetadata.getProperties().add(translateZPropertyMetadata); + NodeMetadata.getProperties().add(visiblePropertyMetadata); + NodeMetadata.getProperties().add(SplitPane_resizableWithParentPropertyMetadata); + NodeMetadata.getProperties().add(AnchorPane_bottomAnchorPropertyMetadata); + NodeMetadata.getProperties().add(AnchorPane_leftAnchorPropertyMetadata); + NodeMetadata.getProperties().add(AnchorPane_rightAnchorPropertyMetadata); + NodeMetadata.getProperties().add(AnchorPane_topAnchorPropertyMetadata); + NodeMetadata.getProperties().add(BorderPane_alignmentPropertyMetadata); + NodeMetadata.getProperties().add(BorderPane_marginPropertyMetadata); + NodeMetadata.getProperties().add(FlowPane_marginPropertyMetadata); + NodeMetadata.getProperties().add(GridPane_columnIndexPropertyMetadata); + NodeMetadata.getProperties().add(GridPane_columnSpanPropertyMetadata); + NodeMetadata.getProperties().add(GridPane_halignmentPropertyMetadata); + NodeMetadata.getProperties().add(GridPane_hgrowPropertyMetadata); + NodeMetadata.getProperties().add(GridPane_marginPropertyMetadata); + NodeMetadata.getProperties().add(GridPane_rowIndexPropertyMetadata); + NodeMetadata.getProperties().add(GridPane_rowSpanPropertyMetadata); + NodeMetadata.getProperties().add(GridPane_valignmentPropertyMetadata); + NodeMetadata.getProperties().add(GridPane_vgrowPropertyMetadata); + NodeMetadata.getProperties().add(HBox_hgrowPropertyMetadata); + NodeMetadata.getProperties().add(HBox_marginPropertyMetadata); + NodeMetadata.getProperties().add(StackPane_alignmentPropertyMetadata); + NodeMetadata.getProperties().add(StackPane_marginPropertyMetadata); + NodeMetadata.getProperties().add(TilePane_alignmentPropertyMetadata); + NodeMetadata.getProperties().add(TilePane_marginPropertyMetadata); + NodeMetadata.getProperties().add(VBox_marginPropertyMetadata); + NodeMetadata.getProperties().add(VBox_vgrowPropertyMetadata); + + NumberAxisMetadata.getProperties().add(forceZeroInRangePropertyMetadata); + NumberAxisMetadata.getProperties().add(styleClass_c45_PropertyMetadata); + NumberAxisMetadata.getProperties().add(tickUnitPropertyMetadata); + + PaginationMetadata.getProperties().add(accessibleRole_PAGINATION_PropertyMetadata); + PaginationMetadata.getProperties().add(currentPageIndexPropertyMetadata); + PaginationMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + PaginationMetadata.getProperties().add(maxPageIndicatorCountPropertyMetadata); + PaginationMetadata.getProperties().add(pageCountPropertyMetadata); + PaginationMetadata.getProperties().add(styleClass_c39_PropertyMetadata); + + PaneMetadata.getProperties().add(children_empty_PropertyMetadata); + + ParallelCameraMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + ParallelCameraMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + + ParentMetadata.getProperties().add(baselineOffsetPropertyMetadata); + ParentMetadata.getProperties().add(stylesheetsPropertyMetadata); + + PasswordFieldMetadata.getProperties().add(accessibleRole_PASSWORD_FIELD_PropertyMetadata); + PasswordFieldMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + PasswordFieldMetadata.getProperties().add(styleClass_c53_PropertyMetadata); + + PathMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + PathMetadata.getProperties().add(elementsPropertyMetadata); + PathMetadata.getProperties().add(fill_NULL_PropertyMetadata); + PathMetadata.getProperties().add(fillRulePropertyMetadata); + PathMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + PathMetadata.getProperties().add(stroke_BLACK_PropertyMetadata); + + PathElementMetadata.getProperties().add(absolutePropertyMetadata); + + PerspectiveCameraMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + PerspectiveCameraMetadata.getProperties().add(fieldOfViewPropertyMetadata); + PerspectiveCameraMetadata.getProperties().add(fixedEyeAtCameraZeroPropertyMetadata); + PerspectiveCameraMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + PerspectiveCameraMetadata.getProperties().add(verticalFieldOfViewPropertyMetadata); + + PieChartMetadata.getProperties().add(clockwisePropertyMetadata); + PieChartMetadata.getProperties().add(labelLineLengthPropertyMetadata); + PieChartMetadata.getProperties().add(labelsVisiblePropertyMetadata); + PieChartMetadata.getProperties().add(startAnglePropertyMetadata); + PieChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); + + PointLightMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + PointLightMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + + PolygonMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + PolygonMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + PolygonMetadata.getProperties().add(pointsPropertyMetadata); + + PolylineMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + PolylineMetadata.getProperties().add(fill_NULL_PropertyMetadata); + PolylineMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + PolylineMetadata.getProperties().add(pointsPropertyMetadata); + PolylineMetadata.getProperties().add(stroke_BLACK_PropertyMetadata); + + PopupControlMetadata.getProperties().add(height_Double_0_PropertyMetadata); + PopupControlMetadata.getProperties().add(idPropertyMetadata); + PopupControlMetadata.getProperties().add(maxHeight_COMPUTED_PropertyMetadata); + PopupControlMetadata.getProperties().add(maxWidth_COMPUTED_PropertyMetadata); + PopupControlMetadata.getProperties().add(minHeight_COMPUTED_PropertyMetadata); + PopupControlMetadata.getProperties().add(minWidth_COMPUTED_PropertyMetadata); + PopupControlMetadata.getProperties().add(onCloseRequestPropertyMetadata); + PopupControlMetadata.getProperties().add(onHiddenPropertyMetadata); + PopupControlMetadata.getProperties().add(onHidingPropertyMetadata); + PopupControlMetadata.getProperties().add(onShowingPropertyMetadata); + PopupControlMetadata.getProperties().add(onShownPropertyMetadata); + PopupControlMetadata.getProperties().add(opacityPropertyMetadata); + PopupControlMetadata.getProperties().add(prefHeight_COMPUTED_PropertyMetadata); + PopupControlMetadata.getProperties().add(prefWidth_COMPUTED_PropertyMetadata); + PopupControlMetadata.getProperties().add(stylePropertyMetadata); + PopupControlMetadata.getProperties().add(styleClass_empty_PropertyMetadata); + PopupControlMetadata.getProperties().add(width_Double_0_PropertyMetadata); + PopupControlMetadata.getProperties().add(x_NaN_PropertyMetadata); + PopupControlMetadata.getProperties().add(y_NaN_PropertyMetadata); + + PopupWindowMetadata.getProperties().add(anchorLocationPropertyMetadata); + PopupWindowMetadata.getProperties().add(anchorXPropertyMetadata); + PopupWindowMetadata.getProperties().add(anchorYPropertyMetadata); + PopupWindowMetadata.getProperties().add(autoFixPropertyMetadata); + PopupWindowMetadata.getProperties().add(autoHide_false_PropertyMetadata); + PopupWindowMetadata.getProperties().add(consumeAutoHidingEventsPropertyMetadata); + PopupWindowMetadata.getProperties().add(height_Double_0_PropertyMetadata); + PopupWindowMetadata.getProperties().add(hideOnEscapePropertyMetadata); + PopupWindowMetadata.getProperties().add(onAutoHidePropertyMetadata); + PopupWindowMetadata.getProperties().add(onCloseRequestPropertyMetadata); + PopupWindowMetadata.getProperties().add(onHiddenPropertyMetadata); + PopupWindowMetadata.getProperties().add(onHidingPropertyMetadata); + PopupWindowMetadata.getProperties().add(onShowingPropertyMetadata); + PopupWindowMetadata.getProperties().add(onShownPropertyMetadata); + PopupWindowMetadata.getProperties().add(opacityPropertyMetadata); + PopupWindowMetadata.getProperties().add(width_Double_0_PropertyMetadata); + PopupWindowMetadata.getProperties().add(x_NaN_PropertyMetadata); + PopupWindowMetadata.getProperties().add(y_NaN_PropertyMetadata); + + ProgressBarMetadata.getProperties().add(accessibleRole_PROGRESS_INDICATOR_PropertyMetadata); + ProgressBarMetadata.getProperties().add(styleClass_c13_PropertyMetadata); + + ProgressIndicatorMetadata.getProperties().add(accessibleRole_PROGRESS_INDICATOR_PropertyMetadata); + ProgressIndicatorMetadata.getProperties().add(indeterminate_Boolean_ro_PropertyMetadata); + ProgressIndicatorMetadata.getProperties().add(progressPropertyMetadata); + ProgressIndicatorMetadata.getProperties().add(styleClass_c50_PropertyMetadata); + + QuadCurveMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + QuadCurveMetadata.getProperties().add(controlXPropertyMetadata); + QuadCurveMetadata.getProperties().add(controlYPropertyMetadata); + QuadCurveMetadata.getProperties().add(endXPropertyMetadata); + QuadCurveMetadata.getProperties().add(endYPropertyMetadata); + QuadCurveMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + QuadCurveMetadata.getProperties().add(startXPropertyMetadata); + QuadCurveMetadata.getProperties().add(startYPropertyMetadata); + + QuadCurveToMetadata.getProperties().add(controlXPropertyMetadata); + QuadCurveToMetadata.getProperties().add(controlYPropertyMetadata); + QuadCurveToMetadata.getProperties().add(x_0_PropertyMetadata); + QuadCurveToMetadata.getProperties().add(y_0_PropertyMetadata); + + RadioButtonMetadata.getProperties().add(accessibleRole_RADIO_BUTTON_PropertyMetadata); + RadioButtonMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + RadioButtonMetadata.getProperties().add(styleClass_c41_PropertyMetadata); + + RadioMenuItemMetadata.getProperties().add(selected_Boolean_PropertyMetadata); + RadioMenuItemMetadata.getProperties().add(styleClass_c7_PropertyMetadata); + RadioMenuItemMetadata.getProperties().add(toggleGroupPropertyMetadata); + + RectangleMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + RectangleMetadata.getProperties().add(arcHeightPropertyMetadata); + RectangleMetadata.getProperties().add(arcWidthPropertyMetadata); + RectangleMetadata.getProperties().add(height_Double_0_PropertyMetadata); + RectangleMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + RectangleMetadata.getProperties().add(width_Double_0_PropertyMetadata); + RectangleMetadata.getProperties().add(x_0_PropertyMetadata); + RectangleMetadata.getProperties().add(y_0_PropertyMetadata); + + RegionMetadata.getProperties().add(cacheShapePropertyMetadata); + RegionMetadata.getProperties().add(centerShapePropertyMetadata); + RegionMetadata.getProperties().add(height_Double_ro_PropertyMetadata); + RegionMetadata.getProperties().add(insetsPropertyMetadata); + RegionMetadata.getProperties().add(maxHeight_COMPUTED_PropertyMetadata); + RegionMetadata.getProperties().add(maxWidth_COMPUTED_PropertyMetadata); + RegionMetadata.getProperties().add(minHeight_COMPUTED_PropertyMetadata); + RegionMetadata.getProperties().add(minWidth_COMPUTED_PropertyMetadata); + RegionMetadata.getProperties().add(opaqueInsetsPropertyMetadata); + RegionMetadata.getProperties().add(paddingPropertyMetadata); + RegionMetadata.getProperties().add(prefHeight_COMPUTED_PropertyMetadata); + RegionMetadata.getProperties().add(prefWidth_COMPUTED_PropertyMetadata); + RegionMetadata.getProperties().add(resizable_Boolean_ro_PropertyMetadata); + RegionMetadata.getProperties().add(scaleShapePropertyMetadata); + RegionMetadata.getProperties().add(shapePropertyMetadata); + RegionMetadata.getProperties().add(snapToPixelPropertyMetadata); + RegionMetadata.getProperties().add(width_Double_ro_PropertyMetadata); + + RowConstraintsMetadata.getProperties().add(fillHeightPropertyMetadata); + RowConstraintsMetadata.getProperties().add(maxHeight_COMPUTED_PropertyMetadata); + RowConstraintsMetadata.getProperties().add(minHeight_COMPUTED_PropertyMetadata); + RowConstraintsMetadata.getProperties().add(percentHeightPropertyMetadata); + RowConstraintsMetadata.getProperties().add(prefHeight_COMPUTED_PropertyMetadata); + RowConstraintsMetadata.getProperties().add(valignment_NULL_PropertyMetadata); + RowConstraintsMetadata.getProperties().add(vgrowPropertyMetadata); + + SVGPathMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + SVGPathMetadata.getProperties().add(content_String_PropertyMetadata); + SVGPathMetadata.getProperties().add(fillRulePropertyMetadata); + SVGPathMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + + ScatterChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); + + ScrollBarMetadata.getProperties().add(accessibleRole_SCROLL_BAR_PropertyMetadata); + ScrollBarMetadata.getProperties().add(blockIncrementPropertyMetadata); + ScrollBarMetadata.getProperties().add(maxPropertyMetadata); + ScrollBarMetadata.getProperties().add(minPropertyMetadata); + ScrollBarMetadata.getProperties().add(orientation_HORIZONTAL_PropertyMetadata); + ScrollBarMetadata.getProperties().add(styleClass_c33_PropertyMetadata); + ScrollBarMetadata.getProperties().add(unitIncrementPropertyMetadata); + ScrollBarMetadata.getProperties().add(value_Double_PropertyMetadata); + ScrollBarMetadata.getProperties().add(visibleAmountPropertyMetadata); + + ScrollPaneMetadata.getProperties().add(accessibleRole_SCROLL_PANE_PropertyMetadata); + ScrollPaneMetadata.getProperties().add(content_Node_NULL_PropertyMetadata); + ScrollPaneMetadata.getProperties().add(fitToHeightPropertyMetadata); + ScrollPaneMetadata.getProperties().add(fitToWidthPropertyMetadata); + ScrollPaneMetadata.getProperties().add(hbarPolicyPropertyMetadata); + ScrollPaneMetadata.getProperties().add(hmaxPropertyMetadata); + ScrollPaneMetadata.getProperties().add(hminPropertyMetadata); + ScrollPaneMetadata.getProperties().add(hvaluePropertyMetadata); + ScrollPaneMetadata.getProperties().add(minViewportHeightPropertyMetadata); + ScrollPaneMetadata.getProperties().add(minViewportWidthPropertyMetadata); + ScrollPaneMetadata.getProperties().add(pannablePropertyMetadata); + ScrollPaneMetadata.getProperties().add(prefViewportHeightPropertyMetadata); + ScrollPaneMetadata.getProperties().add(prefViewportWidthPropertyMetadata); + ScrollPaneMetadata.getProperties().add(styleClass_c38_PropertyMetadata); + ScrollPaneMetadata.getProperties().add(vbarPolicyPropertyMetadata); + ScrollPaneMetadata.getProperties().add(viewportBoundsPropertyMetadata); + ScrollPaneMetadata.getProperties().add(vmaxPropertyMetadata); + ScrollPaneMetadata.getProperties().add(vminPropertyMetadata); + ScrollPaneMetadata.getProperties().add(vvaluePropertyMetadata); + + SeparatorMetadata.getProperties().add(halignment_CENTER_PropertyMetadata); + SeparatorMetadata.getProperties().add(orientation_HORIZONTAL_PropertyMetadata); + SeparatorMetadata.getProperties().add(styleClass_c31_PropertyMetadata); + SeparatorMetadata.getProperties().add(valignment_CENTER_PropertyMetadata); + + SeparatorMenuItemMetadata.getProperties().add(content_Node_SEPARATOR_PropertyMetadata); + SeparatorMenuItemMetadata.getProperties().add(hideOnClick_false_PropertyMetadata); + SeparatorMenuItemMetadata.getProperties().add(styleClass_c23_PropertyMetadata); + +// SettingsPaneMetadata.getProperties().add(searchBoxVisiblePropertyMetadata); +// SettingsPaneMetadata.getProperties().add(titleFilterPropertyMetadata); +// SettingsPaneMetadata.getProperties().add(options_Option_PropertyMetadata); + + ShapeMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + ShapeMetadata.getProperties().add(fill_BLACK_PropertyMetadata); + ShapeMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + ShapeMetadata.getProperties().add(smoothPropertyMetadata); + ShapeMetadata.getProperties().add(stroke_NULL_PropertyMetadata); + ShapeMetadata.getProperties().add(strokeDashOffsetPropertyMetadata); + ShapeMetadata.getProperties().add(strokeLineCapPropertyMetadata); + ShapeMetadata.getProperties().add(strokeLineJoinPropertyMetadata); + ShapeMetadata.getProperties().add(strokeMiterLimitPropertyMetadata); + ShapeMetadata.getProperties().add(strokeTypePropertyMetadata); + ShapeMetadata.getProperties().add(strokeWidthPropertyMetadata); + + Shape3DMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + Shape3DMetadata.getProperties().add(cullFacePropertyMetadata); + Shape3DMetadata.getProperties().add(drawModePropertyMetadata); + Shape3DMetadata.getProperties().add(materialPropertyMetadata); + Shape3DMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + + SliderMetadata.getProperties().add(accessibleRole_SLIDER_PropertyMetadata); + SliderMetadata.getProperties().add(blockIncrementPropertyMetadata); + SliderMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + SliderMetadata.getProperties().add(labelFormatterPropertyMetadata); + SliderMetadata.getProperties().add(majorTickUnitPropertyMetadata); + SliderMetadata.getProperties().add(maxPropertyMetadata); + SliderMetadata.getProperties().add(minPropertyMetadata); + SliderMetadata.getProperties().add(minorTickCount_3_PropertyMetadata); + SliderMetadata.getProperties().add(orientation_HORIZONTAL_PropertyMetadata); + SliderMetadata.getProperties().add(showTickLabelsPropertyMetadata); + SliderMetadata.getProperties().add(showTickMarksPropertyMetadata); + SliderMetadata.getProperties().add(snapToTicksPropertyMetadata); + SliderMetadata.getProperties().add(styleClass_c40_PropertyMetadata); + SliderMetadata.getProperties().add(value_Double_PropertyMetadata); + + SphereMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + SphereMetadata.getProperties().add(divisionsPropertyMetadata); + SphereMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + SphereMetadata.getProperties().add(radius_100_PropertyMetadata); + + SpinnerMetadata.getProperties().add(accessibleRole_SPINNER_PropertyMetadata); + SpinnerMetadata.getProperties().add(editable_false_PropertyMetadata); + SpinnerMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + SpinnerMetadata.getProperties().add(styleClass_c24_PropertyMetadata); + SpinnerMetadata.getProperties().add(value_Object_ro_PropertyMetadata); + + SplitMenuButtonMetadata.getProperties().add(accessibleRole_SPLIT_MENU_BUTTON_PropertyMetadata); + SplitMenuButtonMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + SplitMenuButtonMetadata.getProperties().add(styleClass_c2_PropertyMetadata); + + SplitPaneMetadata.getProperties().add(dividerPositionsPropertyMetadata); + SplitPaneMetadata.getProperties().add(items_Node_PropertyMetadata); + SplitPaneMetadata.getProperties().add(orientation_HORIZONTAL_PropertyMetadata); + SplitPaneMetadata.getProperties().add(styleClass_c14_PropertyMetadata); + + StackPaneMetadata.getProperties().add(alignment_CENTER_PropertyMetadata); + StackPaneMetadata.getProperties().add(contentBiasPropertyMetadata); + + StackedAreaChartMetadata.getProperties().add(createSymbolsPropertyMetadata); + StackedAreaChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); + + StackedBarChartMetadata.getProperties().add(categoryGapPropertyMetadata); + StackedBarChartMetadata.getProperties().add(styleClass_c12_PropertyMetadata); + + SubSceneMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + SubSceneMetadata.getProperties().add(fill_NULL_PropertyMetadata); + SubSceneMetadata.getProperties().add(height_Double_0_PropertyMetadata); + SubSceneMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + SubSceneMetadata.getProperties().add(width_Double_0_PropertyMetadata); + + SwingNodeMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); + SwingNodeMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + SwingNodeMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + SwingNodeMetadata.getProperties().add(resizable_Boolean_ro_PropertyMetadata); + + TabMetadata.getProperties().add(closablePropertyMetadata); + TabMetadata.getProperties().add(content_Node_NULL_PropertyMetadata); + TabMetadata.getProperties().add(contextMenuPropertyMetadata); + TabMetadata.getProperties().add(disablePropertyMetadata); + TabMetadata.getProperties().add(graphicPropertyMetadata); + TabMetadata.getProperties().add(idPropertyMetadata); + TabMetadata.getProperties().add(onClosedPropertyMetadata); + TabMetadata.getProperties().add(onCloseRequestPropertyMetadata); + TabMetadata.getProperties().add(onSelectionChangedPropertyMetadata); + TabMetadata.getProperties().add(selected_Boolean_ro_PropertyMetadata); + TabMetadata.getProperties().add(stylePropertyMetadata); + TabMetadata.getProperties().add(styleClass_c19_PropertyMetadata); + TabMetadata.getProperties().add(textPropertyMetadata); + TabMetadata.getProperties().add(tooltipPropertyMetadata); + + TabPaneMetadata.getProperties().add(accessibleRole_TAB_PANE_PropertyMetadata); + TabPaneMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + TabPaneMetadata.getProperties().add(rotateGraphicPropertyMetadata); + TabPaneMetadata.getProperties().add(side_TOP_PropertyMetadata); + TabPaneMetadata.getProperties().add(styleClass_c6_PropertyMetadata); + TabPaneMetadata.getProperties().add(tabClosingPolicyPropertyMetadata); + TabPaneMetadata.getProperties().add(tabMaxHeightPropertyMetadata); + TabPaneMetadata.getProperties().add(tabMaxWidthPropertyMetadata); + TabPaneMetadata.getProperties().add(tabMinHeightPropertyMetadata); + TabPaneMetadata.getProperties().add(tabMinWidthPropertyMetadata); + TabPaneMetadata.getProperties().add(tabsPropertyMetadata); + + TableColumnMetadata.getProperties().add(columns_TableColumn_PropertyMetadata); + TableColumnMetadata.getProperties().add(onEditCancelPropertyMetadata); + TableColumnMetadata.getProperties().add(onEditCommitPropertyMetadata); + TableColumnMetadata.getProperties().add(onEditStartPropertyMetadata); + TableColumnMetadata.getProperties().add(sortType_SortType_PropertyMetadata); + + TableColumnBaseMetadata.getProperties().add(contextMenuPropertyMetadata); + TableColumnBaseMetadata.getProperties().add(editable_true_PropertyMetadata); + TableColumnBaseMetadata.getProperties().add(graphicPropertyMetadata); + TableColumnBaseMetadata.getProperties().add(idPropertyMetadata); + TableColumnBaseMetadata.getProperties().add(maxWidth_500000_PropertyMetadata); + TableColumnBaseMetadata.getProperties().add(minWidth_1000_PropertyMetadata); + TableColumnBaseMetadata.getProperties().add(prefWidth_8000_PropertyMetadata); + TableColumnBaseMetadata.getProperties().add(resizable_Boolean_PropertyMetadata); + TableColumnBaseMetadata.getProperties().add(sortablePropertyMetadata); + TableColumnBaseMetadata.getProperties().add(sortNodePropertyMetadata); + TableColumnBaseMetadata.getProperties().add(stylePropertyMetadata); + TableColumnBaseMetadata.getProperties().add(styleClass_c42_PropertyMetadata); + TableColumnBaseMetadata.getProperties().add(textPropertyMetadata); + TableColumnBaseMetadata.getProperties().add(visiblePropertyMetadata); + TableColumnBaseMetadata.getProperties().add(width_Double_ro_PropertyMetadata); + + TableViewMetadata.getProperties().add(accessibleRole_TABLE_VIEW_PropertyMetadata); + TableViewMetadata.getProperties().add(columnResizePolicy_TABLEVIEW_UNCONSTRAINED_PropertyMetadata); + TableViewMetadata.getProperties().add(columns_TableColumn_PropertyMetadata); + TableViewMetadata.getProperties().add(editable_false_PropertyMetadata); + TableViewMetadata.getProperties().add(fixedCellSizePropertyMetadata); + TableViewMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + TableViewMetadata.getProperties().add(onScrollToPropertyMetadata); + TableViewMetadata.getProperties().add(onScrollToColumnPropertyMetadata); + TableViewMetadata.getProperties().add(onSortPropertyMetadata); + TableViewMetadata.getProperties().add(placeholderPropertyMetadata); + TableViewMetadata.getProperties().add(sortOrderPropertyMetadata); + TableViewMetadata.getProperties().add(styleClass_c49_PropertyMetadata); + TableViewMetadata.getProperties().add(tableMenuButtonVisiblePropertyMetadata); + + TextMetadata.getProperties().add(accessibleRole_TEXT_PropertyMetadata); + TextMetadata.getProperties().add(baselineOffsetPropertyMetadata); + TextMetadata.getProperties().add(boundsTypePropertyMetadata); + TextMetadata.getProperties().add(fontPropertyMetadata); + TextMetadata.getProperties().add(fontSmoothingType_GRAY_PropertyMetadata); + TextMetadata.getProperties().add(lineSpacingPropertyMetadata); + TextMetadata.getProperties().add(strikethroughPropertyMetadata); + TextMetadata.getProperties().add(textPropertyMetadata); + TextMetadata.getProperties().add(textAlignmentPropertyMetadata); + TextMetadata.getProperties().add(textOriginPropertyMetadata); + TextMetadata.getProperties().add(underlinePropertyMetadata); + TextMetadata.getProperties().add(wrappingWidthPropertyMetadata); + TextMetadata.getProperties().add(x_0_PropertyMetadata); + TextMetadata.getProperties().add(y_0_PropertyMetadata); + + TextAreaMetadata.getProperties().add(accessibleRole_TEXT_AREA_PropertyMetadata); + TextAreaMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + TextAreaMetadata.getProperties().add(prefColumnCount_40_PropertyMetadata); + TextAreaMetadata.getProperties().add(prefRowCountPropertyMetadata); + TextAreaMetadata.getProperties().add(scrollLeftPropertyMetadata); + TextAreaMetadata.getProperties().add(scrollTopPropertyMetadata); + TextAreaMetadata.getProperties().add(styleClass_c51_PropertyMetadata); + TextAreaMetadata.getProperties().add(wrapTextPropertyMetadata); + + TextFieldMetadata.getProperties().add(accessibleRole_TEXT_FIELD_PropertyMetadata); + TextFieldMetadata.getProperties().add(alignment_CENTER_LEFT_PropertyMetadata); + TextFieldMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + TextFieldMetadata.getProperties().add(onActionPropertyMetadata); + TextFieldMetadata.getProperties().add(prefColumnCount_12_PropertyMetadata); + TextFieldMetadata.getProperties().add(styleClass_c47_PropertyMetadata); + + TextFlowMetadata.getProperties().add(accessibleRole_TEXT_PropertyMetadata); + TextFlowMetadata.getProperties().add(baselineOffsetPropertyMetadata); + TextFlowMetadata.getProperties().add(contentBiasPropertyMetadata); + TextFlowMetadata.getProperties().add(lineSpacingPropertyMetadata); + TextFlowMetadata.getProperties().add(textAlignmentPropertyMetadata); + + TextFormatterMetadata.getProperties().add(value_Object_PropertyMetadata); + + TextInputControlMetadata.getProperties().add(accessibleRole_TEXT_FIELD_PropertyMetadata); + TextInputControlMetadata.getProperties().add(editable_true_PropertyMetadata); + TextInputControlMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + TextInputControlMetadata.getProperties().add(fontPropertyMetadata); + TextInputControlMetadata.getProperties().add(length_Integer_ro_PropertyMetadata); + TextInputControlMetadata.getProperties().add(promptTextPropertyMetadata); + TextInputControlMetadata.getProperties().add(styleClass_c51_PropertyMetadata); + TextInputControlMetadata.getProperties().add(textPropertyMetadata); + TextInputControlMetadata.getProperties().add(textFormatterPropertyMetadata); + + TilePaneMetadata.getProperties().add(alignment_TOP_LEFT_PropertyMetadata); + TilePaneMetadata.getProperties().add(contentBiasPropertyMetadata); + TilePaneMetadata.getProperties().add(hgapPropertyMetadata); + TilePaneMetadata.getProperties().add(orientation_HORIZONTAL_PropertyMetadata); + TilePaneMetadata.getProperties().add(prefColumnsPropertyMetadata); + TilePaneMetadata.getProperties().add(prefRowsPropertyMetadata); + TilePaneMetadata.getProperties().add(prefTileHeightPropertyMetadata); + TilePaneMetadata.getProperties().add(prefTileWidthPropertyMetadata); + TilePaneMetadata.getProperties().add(tileAlignmentPropertyMetadata); + TilePaneMetadata.getProperties().add(tileHeightPropertyMetadata); + TilePaneMetadata.getProperties().add(tileWidthPropertyMetadata); + TilePaneMetadata.getProperties().add(vgapPropertyMetadata); + + TitledPaneMetadata.getProperties().add(accessibleRole_TITLED_PANE_PropertyMetadata); + TitledPaneMetadata.getProperties().add(animatedPropertyMetadata); + TitledPaneMetadata.getProperties().add(collapsiblePropertyMetadata); + TitledPaneMetadata.getProperties().add(content_Node_NULL_PropertyMetadata); + TitledPaneMetadata.getProperties().add(contentBiasPropertyMetadata); + TitledPaneMetadata.getProperties().add(expanded_true_PropertyMetadata); + TitledPaneMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + TitledPaneMetadata.getProperties().add(mnemonicParsing_false_PropertyMetadata); + TitledPaneMetadata.getProperties().add(styleClass_c26_PropertyMetadata); + +// ToggleButtonGroupMetadata.getProperties().add(toggles_ToggleButton_PropertyMetadata); +// ToggleButtonGroupMetadata.getProperties().add(selectionTypePropertyMetadata); + + ToggleButtonMetadata.getProperties().add(accessibleRole_TOGGLE_BUTTON_PropertyMetadata); + ToggleButtonMetadata.getProperties().add(alignment_CENTER_PropertyMetadata); + ToggleButtonMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + ToggleButtonMetadata.getProperties().add(selected_Boolean_PropertyMetadata); + ToggleButtonMetadata.getProperties().add(styleClass_c44_PropertyMetadata); + ToggleButtonMetadata.getProperties().add(toggleGroupPropertyMetadata); + + ToolBarMetadata.getProperties().add(accessibleRole_TOOL_BAR_PropertyMetadata); + ToolBarMetadata.getProperties().add(items_Node_PropertyMetadata); + ToolBarMetadata.getProperties().add(orientation_HORIZONTAL_PropertyMetadata); + ToolBarMetadata.getProperties().add(styleClass_c16_PropertyMetadata); + + TooltipMetadata.getProperties().add(contentDisplayPropertyMetadata); + TooltipMetadata.getProperties().add(fontPropertyMetadata); + TooltipMetadata.getProperties().add(graphicPropertyMetadata); + TooltipMetadata.getProperties().add(graphicTextGapPropertyMetadata); + TooltipMetadata.getProperties().add(height_Double_0_PropertyMetadata); + TooltipMetadata.getProperties().add(onCloseRequestPropertyMetadata); + TooltipMetadata.getProperties().add(onHiddenPropertyMetadata); + TooltipMetadata.getProperties().add(onHidingPropertyMetadata); + TooltipMetadata.getProperties().add(onShowingPropertyMetadata); + TooltipMetadata.getProperties().add(onShownPropertyMetadata); + TooltipMetadata.getProperties().add(opacityPropertyMetadata); + TooltipMetadata.getProperties().add(styleClass_c15_PropertyMetadata); + TooltipMetadata.getProperties().add(textPropertyMetadata); + TooltipMetadata.getProperties().add(textAlignmentPropertyMetadata); + TooltipMetadata.getProperties().add(textOverrunPropertyMetadata); + TooltipMetadata.getProperties().add(width_Double_0_PropertyMetadata); + TooltipMetadata.getProperties().add(wrapTextPropertyMetadata); + TooltipMetadata.getProperties().add(x_NaN_PropertyMetadata); + TooltipMetadata.getProperties().add(y_NaN_PropertyMetadata); + + TreeTableColumnMetadata.getProperties().add(columns_TreeTableColumn_PropertyMetadata); + TreeTableColumnMetadata.getProperties().add(onEditCancelPropertyMetadata); + TreeTableColumnMetadata.getProperties().add(onEditCommitPropertyMetadata); + TreeTableColumnMetadata.getProperties().add(onEditStartPropertyMetadata); + TreeTableColumnMetadata.getProperties().add(sortType_SortType_PropertyMetadata); + + TreeTableViewMetadata.getProperties().add(accessibleRole_TREE_TABLE_VIEW_PropertyMetadata); + TreeTableViewMetadata.getProperties().add(columnResizePolicy_TREETABLEVIEW_UNCONSTRAINED_PropertyMetadata); + TreeTableViewMetadata.getProperties().add(columns_TreeTableColumn_PropertyMetadata); + TreeTableViewMetadata.getProperties().add(editable_false_PropertyMetadata); + TreeTableViewMetadata.getProperties().add(expandedItemCountPropertyMetadata); + TreeTableViewMetadata.getProperties().add(fixedCellSizePropertyMetadata); + TreeTableViewMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + TreeTableViewMetadata.getProperties().add(onScrollToPropertyMetadata); + TreeTableViewMetadata.getProperties().add(onScrollToColumnPropertyMetadata); + TreeTableViewMetadata.getProperties().add(onSortPropertyMetadata); + TreeTableViewMetadata.getProperties().add(placeholderPropertyMetadata); + TreeTableViewMetadata.getProperties().add(showRootPropertyMetadata); + TreeTableViewMetadata.getProperties().add(sortModePropertyMetadata); + TreeTableViewMetadata.getProperties().add(sortOrderPropertyMetadata); + TreeTableViewMetadata.getProperties().add(styleClass_c32_PropertyMetadata); + TreeTableViewMetadata.getProperties().add(tableMenuButtonVisiblePropertyMetadata); + TreeTableViewMetadata.getProperties().add(treeColumnPropertyMetadata); + + TreeViewMetadata.getProperties().add(accessibleRole_TREE_VIEW_PropertyMetadata); + TreeViewMetadata.getProperties().add(editable_false_PropertyMetadata); + TreeViewMetadata.getProperties().add(expandedItemCountPropertyMetadata); + TreeViewMetadata.getProperties().add(fixedCellSizePropertyMetadata); + TreeViewMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + TreeViewMetadata.getProperties().add(onEditCancelPropertyMetadata); + TreeViewMetadata.getProperties().add(onEditCommitPropertyMetadata); + TreeViewMetadata.getProperties().add(onEditStartPropertyMetadata); + TreeViewMetadata.getProperties().add(onScrollToPropertyMetadata); + TreeViewMetadata.getProperties().add(showRootPropertyMetadata); + TreeViewMetadata.getProperties().add(styleClass_c22_PropertyMetadata); + + VBoxMetadata.getProperties().add(alignment_TOP_LEFT_PropertyMetadata); + VBoxMetadata.getProperties().add(contentBiasPropertyMetadata); + VBoxMetadata.getProperties().add(fillWidthPropertyMetadata); + VBoxMetadata.getProperties().add(spacingPropertyMetadata); + + VLineToMetadata.getProperties().add(y_0_PropertyMetadata); + + ValueAxisMetadata.getProperties().add(lowerBoundPropertyMetadata); + ValueAxisMetadata.getProperties().add(minorTickCount_5_PropertyMetadata); + ValueAxisMetadata.getProperties().add(minorTickLengthPropertyMetadata); + ValueAxisMetadata.getProperties().add(minorTickVisiblePropertyMetadata); + ValueAxisMetadata.getProperties().add(scalePropertyMetadata); + ValueAxisMetadata.getProperties().add(styleClass_c45_PropertyMetadata); + ValueAxisMetadata.getProperties().add(tickLabelFormatterPropertyMetadata); + ValueAxisMetadata.getProperties().add(upperBoundPropertyMetadata); + ValueAxisMetadata.getProperties().add(zeroPositionPropertyMetadata); + + WebViewMetadata.getProperties().add(contextMenuEnabledPropertyMetadata); + WebViewMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); + WebViewMetadata.getProperties().add(fontScalePropertyMetadata); + WebViewMetadata.getProperties().add(fontSmoothingType_LCD_PropertyMetadata); + WebViewMetadata.getProperties().add(height_Double_ro_PropertyMetadata); + WebViewMetadata.getProperties().add(maxHeight_MAX_PropertyMetadata); + WebViewMetadata.getProperties().add(maxWidth_MAX_PropertyMetadata); + WebViewMetadata.getProperties().add(minHeight_0_PropertyMetadata); + WebViewMetadata.getProperties().add(minWidth_0_PropertyMetadata); + WebViewMetadata.getProperties().add(nodeOrientation_LEFT_TO_RIGHT_PropertyMetadata); + WebViewMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); + WebViewMetadata.getProperties().add(prefHeight_60000_PropertyMetadata); + WebViewMetadata.getProperties().add(prefWidth_80000_PropertyMetadata); + WebViewMetadata.getProperties().add(resizable_Boolean_ro_PropertyMetadata); + WebViewMetadata.getProperties().add(styleClass_c48_PropertyMetadata); + WebViewMetadata.getProperties().add(width_Double_ro_PropertyMetadata); + WebViewMetadata.getProperties().add(zoomPropertyMetadata); + + XYChartMetadata.getProperties().add(alternativeColumnFillVisiblePropertyMetadata); + XYChartMetadata.getProperties().add(alternativeRowFillVisiblePropertyMetadata); + XYChartMetadata.getProperties().add(horizontalGridLinesVisiblePropertyMetadata); + XYChartMetadata.getProperties().add(horizontalZeroLineVisiblePropertyMetadata); + XYChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); + XYChartMetadata.getProperties().add(verticalGridLinesVisiblePropertyMetadata); + XYChartMetadata.getProperties().add(verticalZeroLineVisiblePropertyMetadata); + XYChartMetadata.getProperties().add(xAxisPropertyMetadata); + XYChartMetadata.getProperties().add(yAxisPropertyMetadata); + + + IncludeElementMetadata.getProperties().add(AnchorPane_bottomAnchorPropertyMetadata); + IncludeElementMetadata.getProperties().add(AnchorPane_leftAnchorPropertyMetadata); + IncludeElementMetadata.getProperties().add(AnchorPane_rightAnchorPropertyMetadata); + IncludeElementMetadata.getProperties().add(AnchorPane_topAnchorPropertyMetadata); + IncludeElementMetadata.getProperties().add(BorderPane_alignmentPropertyMetadata); + IncludeElementMetadata.getProperties().add(FlowPane_marginPropertyMetadata); + IncludeElementMetadata.getProperties().add(GridPane_columnIndexPropertyMetadata); + IncludeElementMetadata.getProperties().add(GridPane_columnSpanPropertyMetadata); + IncludeElementMetadata.getProperties().add(GridPane_halignmentPropertyMetadata); + IncludeElementMetadata.getProperties().add(GridPane_hgrowPropertyMetadata); + IncludeElementMetadata.getProperties().add(GridPane_rowIndexPropertyMetadata); + IncludeElementMetadata.getProperties().add(GridPane_rowSpanPropertyMetadata); + IncludeElementMetadata.getProperties().add(GridPane_valignmentPropertyMetadata); + IncludeElementMetadata.getProperties().add(GridPane_vgrowPropertyMetadata); + IncludeElementMetadata.getProperties().add(HBox_hgrowPropertyMetadata); + IncludeElementMetadata.getProperties().add(StackPane_alignmentPropertyMetadata); + IncludeElementMetadata.getProperties().add(TilePane_alignmentPropertyMetadata); + IncludeElementMetadata.getProperties().add(VBox_vgrowPropertyMetadata); + IncludeElementMetadata.getProperties().add(layoutXPropertyMetadata); + IncludeElementMetadata.getProperties().add(layoutYPropertyMetadata); + IncludeElementMetadata.getProperties().add(maxHeight_COMPUTED_PropertyMetadata); + IncludeElementMetadata.getProperties().add(maxWidth_COMPUTED_PropertyMetadata); + IncludeElementMetadata.getProperties().add(minHeight_COMPUTED_PropertyMetadata); + IncludeElementMetadata.getProperties().add(minWidth_COMPUTED_PropertyMetadata); + IncludeElementMetadata.getProperties().add(prefHeight_COMPUTED_PropertyMetadata); + IncludeElementMetadata.getProperties().add(prefWidth_COMPUTED_PropertyMetadata); + IncludeElementMetadata.getProperties().add(rotatePropertyMetadata); + IncludeElementMetadata.getProperties().add(rotationAxisPropertyMetadata); + IncludeElementMetadata.getProperties().add(scaleXPropertyMetadata); + IncludeElementMetadata.getProperties().add(scaleYPropertyMetadata); + IncludeElementMetadata.getProperties().add(scaleZPropertyMetadata); + IncludeElementMetadata.getProperties().add(translateXPropertyMetadata); + IncludeElementMetadata.getProperties().add(translateYPropertyMetadata); + IncludeElementMetadata.getProperties().add(translateZPropertyMetadata); + IncludeElementMetadata.getProperties().add(layoutBoundsPropertyMetadata); + IncludeElementMetadata.getProperties().add(boundsInLocalPropertyMetadata); + IncludeElementMetadata.getProperties().add(boundsInParentPropertyMetadata); + IncludeElementMetadata.getProperties().add(baselineOffsetPropertyMetadata); + IncludeElementMetadata.getProperties().add(resizable_Boolean_ro_PropertyMetadata); + IncludeElementMetadata.getProperties().add(contentBiasPropertyMetadata); + IncludeElementMetadata.getProperties().add(snapToPixelPropertyMetadata); + IncludeElementMetadata.getProperties().add(effectiveNodeOrientationPropertyMetadata); + IncludeElementMetadata.getProperties().add(includeFxmlPropertyMetadata); + // Populates hiddenProperties hiddenProperties.add(new PropertyName("activated")); hiddenProperties.add(new PropertyName("alignWithContentOrigin")); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/MetadataIntrospector.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/MetadataIntrospector.java index cd57db32e784dcb298c832d7c2f6d5a2f05f1263..cd12ba4475e61b41fbdb8f0d2ed575a4150db063 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/MetadataIntrospector.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/MetadataIntrospector.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -65,6 +66,7 @@ import java.lang.reflect.Type; import java.nio.charset.Charset; import java.util.Collections; import java.util.HashSet; +import java.util.Locale; import java.util.Set; import javafx.fxml.FXMLLoader; @@ -266,7 +268,7 @@ class MetadataIntrospector { // inspectorPath, FUNCTION); } else if (propertyType == javafx.collections.ObservableList.class) { String propertyName = name.getName(); - String methodName = "get" + propertyName.substring(0, 1).toUpperCase() + propertyName.substring(1); + String methodName = "get" + propertyName.substring(0, 1).toUpperCase(Locale.ROOT) + propertyName.substring(1); result = null; try { Method method = sample.getClass().getMethod(methodName); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/klass/ComponentClassMetadata.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/klass/ComponentClassMetadata.java index d63ca9e4df04ccc951e84cdbba64270e6c672f5c..08c98a1638c54ce8dc9f42fd6de83ea196fa015b 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/klass/ComponentClassMetadata.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/klass/ComponentClassMetadata.java @@ -155,11 +155,12 @@ public class ComponentClassMetadata extends ClassMetadata { * ------------ Gluon ------------------ * * BottomNavigation actionItems - * CardPane cards + * CardPane items * DropdownButton items * ExpansionPanelContainer items * ToggleButtonGroup toggles * CollapsedPanel titleNodes + * SettingsPane options * * ------------------------------------ * @@ -203,7 +204,7 @@ public class ComponentClassMetadata extends ClassMetadata { // } else if (componentClass == com.gluonhq.charm.glisten.control.BottomNavigation.class) { // result = actionItemsName; // } else if (componentClass == com.gluonhq.charm.glisten.control.CardPane.class) { -// result = cardsName; +// result = itemsName; // } else if (componentClass == com.gluonhq.charm.glisten.control.DropdownButton.class) { // result = itemsName; // } else if (componentClass == com.gluonhq.charm.glisten.control.ExpansionPanelContainer.class) { @@ -212,6 +213,8 @@ public class ComponentClassMetadata extends ClassMetadata { // result = togglesName; // } else if (componentClass == com.gluonhq.charm.glisten.control.ExpansionPanel.CollapsedPanel.class) { // result = titleNodesName; +// } else if (componentClass == com.gluonhq.charm.glisten.control.SettingsPane.class) { +// result = optionsName; } else { result = null; } @@ -229,8 +232,8 @@ public class ComponentClassMetadata extends ClassMetadata { private static final PropertyName childrenName = new PropertyName("children"); // Gluon private static final PropertyName actionItemsName = new PropertyName("actionItems"); - private static final PropertyName cardsName = new PropertyName("cards"); private static final PropertyName togglesName = new PropertyName("toggles"); private static final PropertyName titleNodesName = new PropertyName("titleNodes"); + private static final PropertyName optionsName = new PropertyName("options"); } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/providers/JavaFxComponentClassMetadataProvider.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/providers/JavaFxComponentClassMetadataProvider.java deleted file mode 100644 index a59d72b1165bf75ff8eb7e9aa6c44ea4a93635f4..0000000000000000000000000000000000000000 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/providers/JavaFxComponentClassMetadataProvider.java +++ /dev/null @@ -1,5707 +0,0 @@ -package com.oracle.javafx.scenebuilder.kit.metadata.providers; - -import java.util.Arrays; -import java.util.Collections; -import java.util.HashMap; -import java.util.Map; - -import com.oracle.javafx.scenebuilder.kit.fxom.FXOMIntrinsic; -import com.oracle.javafx.scenebuilder.kit.metadata.klass.ComponentClassMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.ComponentPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.BooleanPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.BoundsPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.CursorPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoubleArrayPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.EnumerationPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.EventHandlerPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.FontPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.ImagePropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.InsetsPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.IntegerPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.ListCellPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.MaterialPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.MeshPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.ObjectPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.Point3DPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.Rectangle2DPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.StringConverterPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.StringPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.TableViewResizePolicyPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.ToggleGroupPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.TreeTableViewResizePolicyPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.effect.EffectPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.keycombination.KeyCombinationPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.list.ButtonTypeListPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.list.DoubleListPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.list.StringListPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.list.TickMarkListPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.paint.ColorPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.property.value.paint.PaintPropertyMetadata; -import com.oracle.javafx.scenebuilder.kit.metadata.spi.IComponentClassMetadataProvider; -import com.oracle.javafx.scenebuilder.kit.metadata.util.InspectorPath; -import com.oracle.javafx.scenebuilder.kit.metadata.util.PropertyName; - -import javafx.scene.control.SelectionMode; - -public class JavaFxComponentClassMetadataProvider implements IComponentClassMetadataProvider { - - // Abstract Component Classes - - private final ComponentClassMetadata NodeMetadata = - new ComponentClassMetadata(javafx.scene.Node.class, null); - private final ComponentClassMetadata ParentMetadata = - new ComponentClassMetadata(javafx.scene.Parent.class, NodeMetadata); - private final ComponentClassMetadata RegionMetadata = - new ComponentClassMetadata(javafx.scene.layout.Region.class, ParentMetadata); - private final ComponentClassMetadata PaneMetadata = - new ComponentClassMetadata(javafx.scene.layout.Pane.class, RegionMetadata); - private final ComponentClassMetadata ControlMetadata = - new ComponentClassMetadata(javafx.scene.control.Control.class, RegionMetadata); - private final ComponentClassMetadata LabeledMetadata = - new ComponentClassMetadata(javafx.scene.control.Labeled.class, ControlMetadata); - private final ComponentClassMetadata ButtonBaseMetadata = - new ComponentClassMetadata(javafx.scene.control.ButtonBase.class, LabeledMetadata); - private final ComponentClassMetadata ComboBoxBaseMetadata = - new ComponentClassMetadata(javafx.scene.control.ComboBoxBase.class, ControlMetadata); - private final ComponentClassMetadata PopupWindowMetadata = - new ComponentClassMetadata(javafx.stage.PopupWindow.class, null); - private final ComponentClassMetadata PopupControlMetadata = - new ComponentClassMetadata(javafx.scene.control.PopupControl.class, PopupWindowMetadata); - private final ComponentClassMetadata TextInputControlMetadata = - new ComponentClassMetadata(javafx.scene.control.TextInputControl.class, ControlMetadata); - private final ComponentClassMetadata TableColumnBaseMetadata = - new ComponentClassMetadata(javafx.scene.control.TableColumnBase.class, null); - private final ComponentClassMetadata MenuItemMetadata = - new ComponentClassMetadata(javafx.scene.control.MenuItem.class, null); - private final ComponentClassMetadata TextFieldMetadata = - new ComponentClassMetadata(javafx.scene.control.TextField.class, TextInputControlMetadata); - private final ComponentClassMetadata ProgressIndicatorMetadata = - new ComponentClassMetadata(javafx.scene.control.ProgressIndicator.class, ControlMetadata); - private final ComponentClassMetadata ToggleButtonMetadata = - new ComponentClassMetadata(javafx.scene.control.ToggleButton.class, ButtonBaseMetadata); - private final ComponentClassMetadata AxisMetadata = - new ComponentClassMetadata(javafx.scene.chart.Axis.class, RegionMetadata); - private final ComponentClassMetadata ChartMetadata = - new ComponentClassMetadata(javafx.scene.chart.Chart.class, RegionMetadata); - private final ComponentClassMetadata ValueAxisMetadata = - new ComponentClassMetadata(javafx.scene.chart.ValueAxis.class, AxisMetadata); - private final ComponentClassMetadata XYChartMetadata = - new ComponentClassMetadata(javafx.scene.chart.XYChart.class, ChartMetadata); - private final ComponentClassMetadata ShapeMetadata = - new ComponentClassMetadata(javafx.scene.shape.Shape.class, NodeMetadata); - private final ComponentClassMetadata PathElementMetadata = - new ComponentClassMetadata(javafx.scene.shape.PathElement.class, null); - private final ComponentClassMetadata CameraMetadata = - new ComponentClassMetadata(javafx.scene.Camera.class, NodeMetadata); - private final ComponentClassMetadata LightBaseMetadata = - new ComponentClassMetadata(javafx.scene.LightBase.class, NodeMetadata); - private final ComponentClassMetadata Shape3DMetadata = - new ComponentClassMetadata(javafx.scene.shape.Shape3D.class, NodeMetadata); - - // Other Component Classes (in alphabetical order) - - private final ComponentClassMetadata SwingNodeMetadata = - new ComponentClassMetadata(javafx.embed.swing.SwingNode.class, NodeMetadata); - private final ComponentClassMetadata AmbientLightMetadata = - new ComponentClassMetadata(javafx.scene.AmbientLight.class, LightBaseMetadata); - private final ComponentClassMetadata GroupMetadata = - new ComponentClassMetadata(javafx.scene.Group.class, ParentMetadata); - private final ComponentClassMetadata ParallelCameraMetadata = - new ComponentClassMetadata(javafx.scene.ParallelCamera.class, CameraMetadata); - private final ComponentClassMetadata PerspectiveCameraMetadata = - new ComponentClassMetadata(javafx.scene.PerspectiveCamera.class, CameraMetadata); - private final ComponentClassMetadata PointLightMetadata = - new ComponentClassMetadata(javafx.scene.PointLight.class, LightBaseMetadata); - private final ComponentClassMetadata SubSceneMetadata = - new ComponentClassMetadata(javafx.scene.SubScene.class, NodeMetadata); - private final ComponentClassMetadata CanvasMetadata = - new ComponentClassMetadata(javafx.scene.canvas.Canvas.class, NodeMetadata); - private final ComponentClassMetadata AreaChartMetadata = - new ComponentClassMetadata(javafx.scene.chart.AreaChart.class, XYChartMetadata); - private final ComponentClassMetadata BarChartMetadata = - new ComponentClassMetadata(javafx.scene.chart.BarChart.class, XYChartMetadata); - private final ComponentClassMetadata BubbleChartMetadata = - new ComponentClassMetadata(javafx.scene.chart.BubbleChart.class, XYChartMetadata); - private final ComponentClassMetadata CategoryAxisMetadata = - new ComponentClassMetadata(javafx.scene.chart.CategoryAxis.class, AxisMetadata); - private final ComponentClassMetadata LineChartMetadata = - new ComponentClassMetadata(javafx.scene.chart.LineChart.class, XYChartMetadata); - private final ComponentClassMetadata NumberAxisMetadata = - new ComponentClassMetadata(javafx.scene.chart.NumberAxis.class, ValueAxisMetadata); - private final ComponentClassMetadata PieChartMetadata = - new ComponentClassMetadata(javafx.scene.chart.PieChart.class, ChartMetadata); - private final ComponentClassMetadata ScatterChartMetadata = - new ComponentClassMetadata(javafx.scene.chart.ScatterChart.class, XYChartMetadata); - private final ComponentClassMetadata StackedAreaChartMetadata = - new ComponentClassMetadata(javafx.scene.chart.StackedAreaChart.class, XYChartMetadata); - private final ComponentClassMetadata StackedBarChartMetadata = - new ComponentClassMetadata(javafx.scene.chart.StackedBarChart.class, XYChartMetadata); - private final ComponentClassMetadata AccordionMetadata = - new ComponentClassMetadata(javafx.scene.control.Accordion.class, ControlMetadata); - private final ComponentClassMetadata ButtonMetadata = - new ComponentClassMetadata(javafx.scene.control.Button.class, ButtonBaseMetadata); - private final ComponentClassMetadata ButtonBarMetadata = - new ComponentClassMetadata(javafx.scene.control.ButtonBar.class, ControlMetadata); - private final ComponentClassMetadata CheckBoxMetadata = - new ComponentClassMetadata(javafx.scene.control.CheckBox.class, ButtonBaseMetadata); - private final ComponentClassMetadata CheckMenuItemMetadata = - new ComponentClassMetadata(javafx.scene.control.CheckMenuItem.class, MenuItemMetadata); - private final ComponentClassMetadata ChoiceBoxMetadata = - new ComponentClassMetadata(javafx.scene.control.ChoiceBox.class, ControlMetadata); - private final ComponentClassMetadata ColorPickerMetadata = - new ComponentClassMetadata(javafx.scene.control.ColorPicker.class, ComboBoxBaseMetadata); - private final ComponentClassMetadata ComboBoxMetadata = - new ComponentClassMetadata(javafx.scene.control.ComboBox.class, ComboBoxBaseMetadata); - private final ComponentClassMetadata ContextMenuMetadata = - new ComponentClassMetadata(javafx.scene.control.ContextMenu.class, PopupControlMetadata); - private final ComponentClassMetadata CustomMenuItemMetadata = - new ComponentClassMetadata(javafx.scene.control.CustomMenuItem.class, MenuItemMetadata); - private final ComponentClassMetadata DatePickerMetadata = - new ComponentClassMetadata(javafx.scene.control.DatePicker.class, ComboBoxBaseMetadata); - private final ComponentClassMetadata DialogPaneMetadata = - new ComponentClassMetadata(javafx.scene.control.DialogPane.class, PaneMetadata); - private final ComponentClassMetadata HyperlinkMetadata = - new ComponentClassMetadata(javafx.scene.control.Hyperlink.class, ButtonBaseMetadata); - private final ComponentClassMetadata LabelMetadata = - new ComponentClassMetadata(javafx.scene.control.Label.class, LabeledMetadata); - private final ComponentClassMetadata ListViewMetadata = - new ComponentClassMetadata(javafx.scene.control.ListView.class, ControlMetadata); - private final ComponentClassMetadata MenuMetadata = - new ComponentClassMetadata(javafx.scene.control.Menu.class, MenuItemMetadata); - private final ComponentClassMetadata MenuBarMetadata = - new ComponentClassMetadata(javafx.scene.control.MenuBar.class, ControlMetadata); - private final ComponentClassMetadata MenuButtonMetadata = - new ComponentClassMetadata(javafx.scene.control.MenuButton.class, ButtonBaseMetadata); - private final ComponentClassMetadata PaginationMetadata = - new ComponentClassMetadata(javafx.scene.control.Pagination.class, ControlMetadata); - private final ComponentClassMetadata PasswordFieldMetadata = - new ComponentClassMetadata(javafx.scene.control.PasswordField.class, TextFieldMetadata); - private final ComponentClassMetadata ProgressBarMetadata = - new ComponentClassMetadata(javafx.scene.control.ProgressBar.class, ProgressIndicatorMetadata); - private final ComponentClassMetadata RadioButtonMetadata = - new ComponentClassMetadata(javafx.scene.control.RadioButton.class, ToggleButtonMetadata); - private final ComponentClassMetadata RadioMenuItemMetadata = - new ComponentClassMetadata(javafx.scene.control.RadioMenuItem.class, MenuItemMetadata); - private final ComponentClassMetadata ScrollBarMetadata = - new ComponentClassMetadata(javafx.scene.control.ScrollBar.class, ControlMetadata); - private final ComponentClassMetadata ScrollPaneMetadata = - new ComponentClassMetadata(javafx.scene.control.ScrollPane.class, ControlMetadata); - private final ComponentClassMetadata SeparatorMetadata = - new ComponentClassMetadata(javafx.scene.control.Separator.class, ControlMetadata); - private final ComponentClassMetadata SeparatorMenuItemMetadata = - new ComponentClassMetadata(javafx.scene.control.SeparatorMenuItem.class, CustomMenuItemMetadata); - private final ComponentClassMetadata SliderMetadata = - new ComponentClassMetadata(javafx.scene.control.Slider.class, ControlMetadata); - private final ComponentClassMetadata SpinnerMetadata = - new ComponentClassMetadata(javafx.scene.control.Spinner.class, ControlMetadata); - private final ComponentClassMetadata SplitMenuButtonMetadata = - new ComponentClassMetadata(javafx.scene.control.SplitMenuButton.class, MenuButtonMetadata); - private final ComponentClassMetadata SplitPaneMetadata = - new ComponentClassMetadata(javafx.scene.control.SplitPane.class, ControlMetadata); - private final ComponentClassMetadata TabMetadata = - new ComponentClassMetadata(javafx.scene.control.Tab.class, null); - private final ComponentClassMetadata TabPaneMetadata = - new ComponentClassMetadata(javafx.scene.control.TabPane.class, ControlMetadata); - private final ComponentClassMetadata TableColumnMetadata = - new ComponentClassMetadata(javafx.scene.control.TableColumn.class, TableColumnBaseMetadata); - private final ComponentClassMetadata TableViewMetadata = - new ComponentClassMetadata(javafx.scene.control.TableView.class, ControlMetadata); - private final ComponentClassMetadata TextAreaMetadata = - new ComponentClassMetadata(javafx.scene.control.TextArea.class, TextInputControlMetadata); - private final ComponentClassMetadata TextFormatterMetadata = - new ComponentClassMetadata(javafx.scene.control.TextFormatter.class, null); - private final ComponentClassMetadata TitledPaneMetadata = - new ComponentClassMetadata(javafx.scene.control.TitledPane.class, LabeledMetadata); - private final ComponentClassMetadata ToolBarMetadata = - new ComponentClassMetadata(javafx.scene.control.ToolBar.class, ControlMetadata); - private final ComponentClassMetadata TooltipMetadata = - new ComponentClassMetadata(javafx.scene.control.Tooltip.class, PopupControlMetadata); - private final ComponentClassMetadata TreeTableColumnMetadata = - new ComponentClassMetadata(javafx.scene.control.TreeTableColumn.class, TableColumnBaseMetadata); - private final ComponentClassMetadata TreeTableViewMetadata = - new ComponentClassMetadata(javafx.scene.control.TreeTableView.class, ControlMetadata); - private final ComponentClassMetadata TreeViewMetadata = - new ComponentClassMetadata(javafx.scene.control.TreeView.class, ControlMetadata); - private final ComponentClassMetadata ImageViewMetadata = - new ComponentClassMetadata(javafx.scene.image.ImageView.class, NodeMetadata); - private final ComponentClassMetadata AnchorPaneMetadata = - new ComponentClassMetadata(javafx.scene.layout.AnchorPane.class, PaneMetadata); - private final ComponentClassMetadata BorderPaneMetadata = - new ComponentClassMetadata(javafx.scene.layout.BorderPane.class, PaneMetadata); - private final ComponentClassMetadata ColumnConstraintsMetadata = - new ComponentClassMetadata(javafx.scene.layout.ColumnConstraints.class, null); - private final ComponentClassMetadata FlowPaneMetadata = - new ComponentClassMetadata(javafx.scene.layout.FlowPane.class, PaneMetadata); - private final ComponentClassMetadata GridPaneMetadata = - new ComponentClassMetadata(javafx.scene.layout.GridPane.class, PaneMetadata); - private final ComponentClassMetadata HBoxMetadata = - new ComponentClassMetadata(javafx.scene.layout.HBox.class, PaneMetadata); - private final ComponentClassMetadata RowConstraintsMetadata = - new ComponentClassMetadata(javafx.scene.layout.RowConstraints.class, null); - private final ComponentClassMetadata StackPaneMetadata = - new ComponentClassMetadata(javafx.scene.layout.StackPane.class, PaneMetadata); - private final ComponentClassMetadata TilePaneMetadata = - new ComponentClassMetadata(javafx.scene.layout.TilePane.class, PaneMetadata); - private final ComponentClassMetadata VBoxMetadata = - new ComponentClassMetadata(javafx.scene.layout.VBox.class, PaneMetadata); - private final ComponentClassMetadata MediaViewMetadata = - new ComponentClassMetadata(javafx.scene.media.MediaView.class, NodeMetadata); - private final ComponentClassMetadata ArcMetadata = - new ComponentClassMetadata(javafx.scene.shape.Arc.class, ShapeMetadata); - private final ComponentClassMetadata ArcToMetadata = - new ComponentClassMetadata(javafx.scene.shape.ArcTo.class, PathElementMetadata); - private final ComponentClassMetadata BoxMetadata = - new ComponentClassMetadata(javafx.scene.shape.Box.class, Shape3DMetadata); - private final ComponentClassMetadata CircleMetadata = - new ComponentClassMetadata(javafx.scene.shape.Circle.class, ShapeMetadata); - private final ComponentClassMetadata ClosePathMetadata = - new ComponentClassMetadata(javafx.scene.shape.ClosePath.class, PathElementMetadata); - private final ComponentClassMetadata CubicCurveMetadata = - new ComponentClassMetadata(javafx.scene.shape.CubicCurve.class, ShapeMetadata); - private final ComponentClassMetadata CubicCurveToMetadata = - new ComponentClassMetadata(javafx.scene.shape.CubicCurveTo.class, PathElementMetadata); - private final ComponentClassMetadata CylinderMetadata = - new ComponentClassMetadata(javafx.scene.shape.Cylinder.class, Shape3DMetadata); - private final ComponentClassMetadata EllipseMetadata = - new ComponentClassMetadata(javafx.scene.shape.Ellipse.class, ShapeMetadata); - private final ComponentClassMetadata HLineToMetadata = - new ComponentClassMetadata(javafx.scene.shape.HLineTo.class, PathElementMetadata); - private final ComponentClassMetadata LineMetadata = - new ComponentClassMetadata(javafx.scene.shape.Line.class, ShapeMetadata); - private final ComponentClassMetadata LineToMetadata = - new ComponentClassMetadata(javafx.scene.shape.LineTo.class, PathElementMetadata); - private final ComponentClassMetadata MeshViewMetadata = - new ComponentClassMetadata(javafx.scene.shape.MeshView.class, Shape3DMetadata); - private final ComponentClassMetadata MoveToMetadata = - new ComponentClassMetadata(javafx.scene.shape.MoveTo.class, PathElementMetadata); - private final ComponentClassMetadata PathMetadata = - new ComponentClassMetadata(javafx.scene.shape.Path.class, ShapeMetadata); - private final ComponentClassMetadata PolygonMetadata = - new ComponentClassMetadata(javafx.scene.shape.Polygon.class, ShapeMetadata); - private final ComponentClassMetadata PolylineMetadata = - new ComponentClassMetadata(javafx.scene.shape.Polyline.class, ShapeMetadata); - private final ComponentClassMetadata QuadCurveMetadata = - new ComponentClassMetadata(javafx.scene.shape.QuadCurve.class, ShapeMetadata); - private final ComponentClassMetadata QuadCurveToMetadata = - new ComponentClassMetadata(javafx.scene.shape.QuadCurveTo.class, PathElementMetadata); - private final ComponentClassMetadata RectangleMetadata = - new ComponentClassMetadata(javafx.scene.shape.Rectangle.class, ShapeMetadata); - private final ComponentClassMetadata SVGPathMetadata = - new ComponentClassMetadata(javafx.scene.shape.SVGPath.class, ShapeMetadata); - private final ComponentClassMetadata SphereMetadata = - new ComponentClassMetadata(javafx.scene.shape.Sphere.class, Shape3DMetadata); - private final ComponentClassMetadata VLineToMetadata = - new ComponentClassMetadata(javafx.scene.shape.VLineTo.class, PathElementMetadata); - private final ComponentClassMetadata TextMetadata = - new ComponentClassMetadata(javafx.scene.text.Text.class, ShapeMetadata); - private final ComponentClassMetadata TextFlowMetadata = - new ComponentClassMetadata(javafx.scene.text.TextFlow.class, PaneMetadata); - private final ComponentClassMetadata HTMLEditorMetadata = - new ComponentClassMetadata(javafx.scene.web.HTMLEditor.class, ControlMetadata); - private final ComponentClassMetadata WebViewMetadata = - new ComponentClassMetadata(javafx.scene.web.WebView.class, ParentMetadata); - private final ComponentClassMetadata IncludeElementMetadata = - new ComponentClassMetadata(FXOMIntrinsic.class, null); - - // Property Names - - private final PropertyName absoluteName = - new PropertyName("absolute"); - private final PropertyName acceleratorName = - new PropertyName("accelerator"); - private final PropertyName accessibleHelpName = - new PropertyName("accessibleHelp"); - private final PropertyName accessibleRoleName = - new PropertyName("accessibleRole"); - private final PropertyName accessibleRoleDescriptionName = - new PropertyName("accessibleRoleDescription"); - private final PropertyName accessibleTextName = - new PropertyName("accessibleText"); - private final PropertyName actionItemsName = - new PropertyName("actionItems"); - private final PropertyName alignmentName = - new PropertyName("alignment"); - private final PropertyName allowIndeterminateName = - new PropertyName("allowIndeterminate"); - private final PropertyName alternativeColumnFillVisibleName = - new PropertyName("alternativeColumnFillVisible"); - private final PropertyName alternativeRowFillVisibleName = - new PropertyName("alternativeRowFillVisible"); - private final PropertyName anchorLocationName = - new PropertyName("anchorLocation"); - private final PropertyName anchorXName = - new PropertyName("anchorX"); - private final PropertyName anchorYName = - new PropertyName("anchorY"); - private final PropertyName animatedName = - new PropertyName("animated"); - private final PropertyName arcHeightName = - new PropertyName("arcHeight"); - private final PropertyName arcWidthName = - new PropertyName("arcWidth"); - private final PropertyName autoFixName = - new PropertyName("autoFix"); - private final PropertyName autoHideName = - new PropertyName("autoHide"); - private final PropertyName autoRangingName = - new PropertyName("autoRanging"); - private final PropertyName autoSizeChildrenName = - new PropertyName("autoSizeChildren"); - private final PropertyName axisSortingPolicyName = - new PropertyName("axisSortingPolicy"); - private final PropertyName barGapName = - new PropertyName("barGap"); - private final PropertyName baselineOffsetName = - new PropertyName("baselineOffset"); - private final PropertyName blendModeName = - new PropertyName("blendMode"); - private final PropertyName blockIncrementName = - new PropertyName("blockIncrement"); - private final PropertyName bottomName = - new PropertyName("bottom"); - private final PropertyName bottomNavigationTypeName = - new PropertyName("type"); - private final PropertyName boundsInLocalName = - new PropertyName("boundsInLocal"); - private final PropertyName boundsInParentName = - new PropertyName("boundsInParent"); - private final PropertyName boundsTypeName = - new PropertyName("boundsType"); - private final PropertyName buttonCellName = - new PropertyName("buttonCell"); - private final PropertyName buttonMinWidthName = - new PropertyName("buttonMinWidth"); - private final PropertyName buttonOrderName = - new PropertyName("buttonOrder"); - private final PropertyName buttonsName = - new PropertyName("buttons"); - private final PropertyName buttonTypesName = - new PropertyName("buttonTypes"); - private final PropertyName cacheName = - new PropertyName("cache"); - private final PropertyName cacheHintName = - new PropertyName("cacheHint"); - private final PropertyName cacheShapeName = - new PropertyName("cacheShape"); - private final PropertyName cancelButtonName = - new PropertyName("cancelButton"); - private final PropertyName cardsName = - new PropertyName("cards"); - private final PropertyName categoriesName = - new PropertyName("categories"); - private final PropertyName categoryGapName = - new PropertyName("categoryGap"); - private final PropertyName categorySpacingName = - new PropertyName("categorySpacing"); - private final PropertyName centerName = - new PropertyName("center"); - private final PropertyName centerShapeName = - new PropertyName("centerShape"); - private final PropertyName centerXName = - new PropertyName("centerX"); - private final PropertyName centerYName = - new PropertyName("centerY"); - private final PropertyName childrenName = - new PropertyName("children"); - private final PropertyName clipName = - new PropertyName("clip"); - private final PropertyName clockwiseName = - new PropertyName("clockwise"); - private final PropertyName closableName = - new PropertyName("closable"); - private final PropertyName collapsedContentName = - new PropertyName("collapsedContent"); - private final PropertyName collapsibleName = - new PropertyName("collapsible"); - private final PropertyName colorName = - new PropertyName("color"); - private final PropertyName columnConstraintsName = - new PropertyName("columnConstraints"); - private final PropertyName columnHalignmentName = - new PropertyName("columnHalignment"); - private final PropertyName columnResizePolicyName = - new PropertyName("columnResizePolicy"); - private final PropertyName columnsName = - new PropertyName("columns"); - private final PropertyName consumeAutoHidingEventsName = - new PropertyName("consumeAutoHidingEvents"); - private final PropertyName contentName = - new PropertyName("content"); - private final PropertyName contentBiasName = - new PropertyName("contentBias"); - private final PropertyName contentDisplayName = - new PropertyName("contentDisplay"); - private final PropertyName contentTextName = - new PropertyName("contentText"); - private final PropertyName contextMenuName = - new PropertyName("contextMenu"); - private final PropertyName contextMenuEnabledName = - new PropertyName("contextMenuEnabled"); - private final PropertyName controlXName = - new PropertyName("controlX"); - private final PropertyName controlX1Name = - new PropertyName("controlX1"); - private final PropertyName controlX2Name = - new PropertyName("controlX2"); - private final PropertyName controlYName = - new PropertyName("controlY"); - private final PropertyName controlY1Name = - new PropertyName("controlY1"); - private final PropertyName controlY2Name = - new PropertyName("controlY2"); - private final PropertyName createSymbolsName = - new PropertyName("createSymbols"); - private final PropertyName cullFaceName = - new PropertyName("cullFace"); - private final PropertyName currentPageIndexName = - new PropertyName("currentPageIndex"); - private final PropertyName cursorName = - new PropertyName("cursor"); - private final PropertyName defaultButtonName = - new PropertyName("defaultButton"); - private final PropertyName depthName = - new PropertyName("depth"); - private final PropertyName depthTestName = - new PropertyName("depthTest"); - private final PropertyName disableName = - new PropertyName("disable"); - private final PropertyName dividerPositionsName = - new PropertyName("dividerPositions"); - private final PropertyName divisionsName = - new PropertyName("divisions"); - private final PropertyName drawModeName = - new PropertyName("drawMode"); - private final PropertyName editableName = - new PropertyName("editable"); - private final PropertyName effectName = - new PropertyName("effect"); - private final PropertyName effectiveNodeOrientationName = - new PropertyName("effectiveNodeOrientation"); - private final PropertyName elementsName = - new PropertyName("elements"); - private final PropertyName ellipsisStringName = - new PropertyName("ellipsisString"); - private final PropertyName endMarginName = - new PropertyName("endMargin"); - private final PropertyName endXName = - new PropertyName("endX"); - private final PropertyName endYName = - new PropertyName("endY"); - private final PropertyName expandableContentName = - new PropertyName("expandableContent"); - private final PropertyName expandedContentName = - new PropertyName("expandedContent"); - private final PropertyName expandedName = - new PropertyName("expanded"); - private final PropertyName expandedItemCountName = - new PropertyName("expandedItemCount"); - private final PropertyName expandedPropertyName = - new PropertyName("expanded"); - private final PropertyName farClipName = - new PropertyName("farClip"); - private final PropertyName fieldOfViewName = - new PropertyName("fieldOfView"); - private final PropertyName fillName = - new PropertyName("fill"); - private final PropertyName fillHeightName = - new PropertyName("fillHeight"); - private final PropertyName fillRuleName = - new PropertyName("fillRule"); - private final PropertyName fillWidthName = - new PropertyName("fillWidth"); - private final PropertyName fitHeightName = - new PropertyName("fitHeight"); - private final PropertyName fitToHeightName = - new PropertyName("fitToHeight"); - private final PropertyName fitToWidthName = - new PropertyName("fitToWidth"); - private final PropertyName fitWidthName = - new PropertyName("fitWidth"); - private final PropertyName fixedCellSizeName = - new PropertyName("fixedCellSize"); - private final PropertyName fixedEyeAtCameraZeroName = - new PropertyName("fixedEyeAtCameraZero"); - private final PropertyName focusTraversableName = - new PropertyName("focusTraversable"); - private final PropertyName fontName = - new PropertyName("font"); - private final PropertyName fontScaleName = - new PropertyName("fontScale"); - private final PropertyName fontSmoothingTypeName = - new PropertyName("fontSmoothingType"); - private final PropertyName forceZeroInRangeName = - new PropertyName("forceZeroInRange"); - private final PropertyName gapStartAndEndName = - new PropertyName("gapStartAndEnd"); - private final PropertyName graphicName = - new PropertyName("graphic"); - private final PropertyName graphicTextGapName = - new PropertyName("graphicTextGap"); - private final PropertyName gridLinesVisibleName = - new PropertyName("gridLinesVisible"); - private final PropertyName halignmentName = - new PropertyName("halignment"); - private final PropertyName hbarPolicyName = - new PropertyName("hbarPolicy"); - private final PropertyName headerName = - new PropertyName("header"); - private final PropertyName headerTextName = - new PropertyName("headerText"); - private final PropertyName heightName = - new PropertyName("height"); - private final PropertyName hgapName = - new PropertyName("hgap"); - private final PropertyName hgrowName = - new PropertyName("hgrow"); - private final PropertyName hideOnClickName = - new PropertyName("hideOnClick"); - private final PropertyName hideOnEscapeName = - new PropertyName("hideOnEscape"); - private final PropertyName hmaxName = - new PropertyName("hmax"); - private final PropertyName hminName = - new PropertyName("hmin"); - private final PropertyName horizontalGridLinesVisibleName = - new PropertyName("horizontalGridLinesVisible"); - private final PropertyName horizontalZeroLineVisibleName = - new PropertyName("horizontalZeroLineVisible"); - private final PropertyName htmlTextName = - new PropertyName("htmlText"); - private final PropertyName hvalueName = - new PropertyName("hvalue"); - private final PropertyName idName = - new PropertyName("id"); - private final PropertyName imageName = - new PropertyName("image"); - private final PropertyName indeterminateName = - new PropertyName("indeterminate"); - private final PropertyName insetsName = - new PropertyName("insets"); - private final PropertyName itemsName = - new PropertyName("items"); - private final PropertyName labelName = - new PropertyName("label"); - private final PropertyName labelForName = - new PropertyName("labelFor"); - private final PropertyName labelFormatterName = - new PropertyName("labelFormatter"); - private final PropertyName labelLineLengthName = - new PropertyName("labelLineLength"); - private final PropertyName labelPaddingName = - new PropertyName("labelPadding"); - private final PropertyName labelsVisibleName = - new PropertyName("labelsVisible"); - private final PropertyName largeArcFlagName = - new PropertyName("largeArcFlag"); - private final PropertyName layoutBoundsName = - new PropertyName("layoutBounds"); - private final PropertyName layoutXName = - new PropertyName("layoutX"); - private final PropertyName layoutYName = - new PropertyName("layoutY"); - private final PropertyName leftName = - new PropertyName("left"); - private final PropertyName legendSideName = - new PropertyName("legendSide"); - private final PropertyName legendVisibleName = - new PropertyName("legendVisible"); - private final PropertyName lengthName = - new PropertyName("length"); - private final PropertyName lightOnName = - new PropertyName("lightOn"); - private final PropertyName lineSpacingName = - new PropertyName("lineSpacing"); - private final PropertyName lowerBoundName = - new PropertyName("lowerBound"); - private final PropertyName majorTickUnitName = - new PropertyName("majorTickUnit"); - private final PropertyName materialName = - new PropertyName("material"); - private final PropertyName maxName = - new PropertyName("max"); - private final PropertyName maxHeightName = - new PropertyName("maxHeight"); - private final PropertyName maxPageIndicatorCountName = - new PropertyName("maxPageIndicatorCount"); - private final PropertyName maxWidthName = - new PropertyName("maxWidth"); - private final PropertyName menusName = - new PropertyName("menus"); - private final PropertyName meshName = - new PropertyName("mesh"); - private final PropertyName minName = - new PropertyName("min"); - private final PropertyName minHeightName = - new PropertyName("minHeight"); - private final PropertyName minorTickCountName = - new PropertyName("minorTickCount"); - private final PropertyName minorTickLengthName = - new PropertyName("minorTickLength"); - private final PropertyName minorTickVisibleName = - new PropertyName("minorTickVisible"); - private final PropertyName minViewportHeightName = - new PropertyName("minViewportHeight"); - private final PropertyName minViewportWidthName = - new PropertyName("minViewportWidth"); - private final PropertyName minWidthName = - new PropertyName("minWidth"); - private final PropertyName mnemonicParsingName = - new PropertyName("mnemonicParsing"); - private final PropertyName mouseTransparentName = - new PropertyName("mouseTransparent"); - private final PropertyName nearClipName = - new PropertyName("nearClip"); - private final PropertyName nodeOrientationName = - new PropertyName("nodeOrientation"); - private final PropertyName onActionName = - new PropertyName("onAction"); - private final PropertyName onAutoHideName = - new PropertyName("onAutoHide"); - private final PropertyName onClosedName = - new PropertyName("onClosed"); - private final PropertyName onCloseRequestName = - new PropertyName("onCloseRequest"); - private final PropertyName onContextMenuRequestedName = - new PropertyName("onContextMenuRequested"); - private final PropertyName onDragDetectedName = - new PropertyName("onDragDetected"); - private final PropertyName onDragDoneName = - new PropertyName("onDragDone"); - private final PropertyName onDragDroppedName = - new PropertyName("onDragDropped"); - private final PropertyName onDragEnteredName = - new PropertyName("onDragEntered"); - private final PropertyName onDragExitedName = - new PropertyName("onDragExited"); - private final PropertyName onDragOverName = - new PropertyName("onDragOver"); - private final PropertyName onEditCancelName = - new PropertyName("onEditCancel"); - private final PropertyName onEditCommitName = - new PropertyName("onEditCommit"); - private final PropertyName onEditStartName = - new PropertyName("onEditStart"); - private final PropertyName onErrorName = - new PropertyName("onError"); - private final PropertyName onHiddenName = - new PropertyName("onHidden"); - private final PropertyName onHidingName = - new PropertyName("onHiding"); - private final PropertyName onInputMethodTextChangedName = - new PropertyName("onInputMethodTextChanged"); - private final PropertyName onKeyPressedName = - new PropertyName("onKeyPressed"); - private final PropertyName onKeyReleasedName = - new PropertyName("onKeyReleased"); - private final PropertyName onKeyTypedName = - new PropertyName("onKeyTyped"); - private final PropertyName onMenuValidationName = - new PropertyName("onMenuValidation"); - private final PropertyName onMouseClickedName = - new PropertyName("onMouseClicked"); - private final PropertyName onMouseDragEnteredName = - new PropertyName("onMouseDragEntered"); - private final PropertyName onMouseDragExitedName = - new PropertyName("onMouseDragExited"); - private final PropertyName onMouseDraggedName = - new PropertyName("onMouseDragged"); - private final PropertyName onMouseDragOverName = - new PropertyName("onMouseDragOver"); - private final PropertyName onMouseDragReleasedName = - new PropertyName("onMouseDragReleased"); - private final PropertyName onMouseEnteredName = - new PropertyName("onMouseEntered"); - private final PropertyName onMouseExitedName = - new PropertyName("onMouseExited"); - private final PropertyName onMouseMovedName = - new PropertyName("onMouseMoved"); - private final PropertyName onMousePressedName = - new PropertyName("onMousePressed"); - private final PropertyName onMouseReleasedName = - new PropertyName("onMouseReleased"); - private final PropertyName onRotateName = - new PropertyName("onRotate"); - private final PropertyName onRotationFinishedName = - new PropertyName("onRotationFinished"); - private final PropertyName onRotationStartedName = - new PropertyName("onRotationStarted"); - private final PropertyName onScrollName = - new PropertyName("onScroll"); - private final PropertyName onScrollFinishedName = - new PropertyName("onScrollFinished"); - private final PropertyName onScrollStartedName = - new PropertyName("onScrollStarted"); - private final PropertyName onScrollToName = - new PropertyName("onScrollTo"); - private final PropertyName onScrollToColumnName = - new PropertyName("onScrollToColumn"); - private final PropertyName onSelectionChangedName = - new PropertyName("onSelectionChanged"); - private final PropertyName onShowingName = - new PropertyName("onShowing"); - private final PropertyName onShownName = - new PropertyName("onShown"); - private final PropertyName onSortName = - new PropertyName("onSort"); - private final PropertyName onSwipeDownName = - new PropertyName("onSwipeDown"); - private final PropertyName onSwipeLeftName = - new PropertyName("onSwipeLeft"); - private final PropertyName onSwipeRightName = - new PropertyName("onSwipeRight"); - private final PropertyName onSwipeUpName = - new PropertyName("onSwipeUp"); - private final PropertyName onTouchMovedName = - new PropertyName("onTouchMoved"); - private final PropertyName onTouchPressedName = - new PropertyName("onTouchPressed"); - private final PropertyName onTouchReleasedName = - new PropertyName("onTouchReleased"); - private final PropertyName onTouchStationaryName = - new PropertyName("onTouchStationary"); - private final PropertyName onZoomName = - new PropertyName("onZoom"); - private final PropertyName onZoomFinishedName = - new PropertyName("onZoomFinished"); - private final PropertyName onZoomStartedName = - new PropertyName("onZoomStarted"); - private final PropertyName opacityName = - new PropertyName("opacity"); - private final PropertyName opaqueInsetsName = - new PropertyName("opaqueInsets"); - private final PropertyName orientationName = - new PropertyName("orientation"); - private final PropertyName paddingName = - new PropertyName("padding"); - private final PropertyName pageCountName = - new PropertyName("pageCount"); - private final PropertyName panesName = - new PropertyName("panes"); - private final PropertyName pannableName = - new PropertyName("pannable"); - private final PropertyName percentHeightName = - new PropertyName("percentHeight"); - private final PropertyName percentWidthName = - new PropertyName("percentWidth"); - private final PropertyName pickOnBoundsName = - new PropertyName("pickOnBounds"); - private final PropertyName placeholderName = - new PropertyName("placeholder"); - private final PropertyName pointsName = - new PropertyName("points"); - private final PropertyName popupSideName = - new PropertyName("popupSide"); - private final PropertyName prefColumnCountName = - new PropertyName("prefColumnCount"); - private final PropertyName prefColumnsName = - new PropertyName("prefColumns"); - private final PropertyName prefHeightName = - new PropertyName("prefHeight"); - private final PropertyName prefRowCountName = - new PropertyName("prefRowCount"); - private final PropertyName prefRowsName = - new PropertyName("prefRows"); - private final PropertyName prefTileHeightName = - new PropertyName("prefTileHeight"); - private final PropertyName prefTileWidthName = - new PropertyName("prefTileWidth"); - private final PropertyName prefViewportHeightName = - new PropertyName("prefViewportHeight"); - private final PropertyName prefViewportWidthName = - new PropertyName("prefViewportWidth"); - private final PropertyName prefWidthName = - new PropertyName("prefWidth"); - private final PropertyName prefWrapLengthName = - new PropertyName("prefWrapLength"); - private final PropertyName preserveRatioName = - new PropertyName("preserveRatio"); - private final PropertyName progressName = - new PropertyName("progress"); - private final PropertyName promptTextName = - new PropertyName("promptText"); - private final PropertyName radiusName = - new PropertyName("radius"); - private final PropertyName radiusXName = - new PropertyName("radiusX"); - private final PropertyName radiusYName = - new PropertyName("radiusY"); - private final PropertyName resizableName = - new PropertyName("resizable"); - private final PropertyName rightName = - new PropertyName("right"); - private final PropertyName rotateName = - new PropertyName("rotate"); - private final PropertyName rotateGraphicName = - new PropertyName("rotateGraphic"); - private final PropertyName rotationAxisName = - new PropertyName("rotationAxis"); - private final PropertyName rowConstraintsName = - new PropertyName("rowConstraints"); - private final PropertyName rowValignmentName = - new PropertyName("rowValignment"); - private final PropertyName scaleName = - new PropertyName("scale"); - private final PropertyName scaleShapeName = - new PropertyName("scaleShape"); - private final PropertyName scaleXName = - new PropertyName("scaleX"); - private final PropertyName scaleYName = - new PropertyName("scaleY"); - private final PropertyName scaleZName = - new PropertyName("scaleZ"); - private final PropertyName scopeName = - new PropertyName("scope"); - private final PropertyName scrollLeftName = - new PropertyName("scrollLeft"); - private final PropertyName scrollTopName = - new PropertyName("scrollTop"); - private final PropertyName selectedName = - new PropertyName("selected"); - private final PropertyName selectionTypeName = - new PropertyName("selectionType"); - private final PropertyName shapeName = - new PropertyName("shape"); - private final PropertyName showRootName = - new PropertyName("showRoot"); - private final PropertyName showTickLabelsName = - new PropertyName("showTickLabels"); - private final PropertyName showTickMarksName = - new PropertyName("showTickMarks"); - private final PropertyName showWeekNumbersName = - new PropertyName("showWeekNumbers"); - private final PropertyName sideName = - new PropertyName("side"); - private final PropertyName smoothName = - new PropertyName("smooth"); - private final PropertyName snapToPixelName = - new PropertyName("snapToPixel"); - private final PropertyName snapToTicksName = - new PropertyName("snapToTicks"); - private final PropertyName sortableName = - new PropertyName("sortable"); - private final PropertyName sortModeName = - new PropertyName("sortMode"); - private final PropertyName sortNodeName = - new PropertyName("sortNode"); - private final PropertyName sortOrderName = - new PropertyName("sortOrder"); - private final PropertyName sortTypeName = - new PropertyName("sortType"); - private final PropertyName spacingName = - new PropertyName("spacing"); - private final PropertyName startAngleName = - new PropertyName("startAngle"); - private final PropertyName startMarginName = - new PropertyName("startMargin"); - private final PropertyName startXName = - new PropertyName("startX"); - private final PropertyName startYName = - new PropertyName("startY"); - private final PropertyName strikethroughName = - new PropertyName("strikethrough"); - private final PropertyName strokeName = - new PropertyName("stroke"); - private final PropertyName strokeDashOffsetName = - new PropertyName("strokeDashOffset"); - private final PropertyName strokeLineCapName = - new PropertyName("strokeLineCap"); - private final PropertyName strokeLineJoinName = - new PropertyName("strokeLineJoin"); - private final PropertyName strokeMiterLimitName = - new PropertyName("strokeMiterLimit"); - private final PropertyName strokeTypeName = - new PropertyName("strokeType"); - private final PropertyName strokeWidthName = - new PropertyName("strokeWidth"); - private final PropertyName styleName = - new PropertyName("style"); - private final PropertyName styleClassName = - new PropertyName("styleClass"); - private final PropertyName stylesheetsName = - new PropertyName("stylesheets"); - private final PropertyName sweepFlagName = - new PropertyName("sweepFlag"); - private final PropertyName tabClosingPolicyName = - new PropertyName("tabClosingPolicy"); - private final PropertyName tableMenuButtonVisibleName = - new PropertyName("tableMenuButtonVisible"); - private final PropertyName tabMaxHeightName = - new PropertyName("tabMaxHeight"); - private final PropertyName tabMaxWidthName = - new PropertyName("tabMaxWidth"); - private final PropertyName tabMinHeightName = - new PropertyName("tabMinHeight"); - private final PropertyName tabMinWidthName = - new PropertyName("tabMinWidth"); - private final PropertyName tabsName = - new PropertyName("tabs"); - private final PropertyName textName = - new PropertyName("text"); - private final PropertyName textAlignmentName = - new PropertyName("textAlignment"); - private final PropertyName textFillName = - new PropertyName("textFill"); - private final PropertyName textFormatterName = - new PropertyName("textFormatter"); - private final PropertyName textOriginName = - new PropertyName("textOrigin"); - private final PropertyName textOverrunName = - new PropertyName("textOverrun"); - private final PropertyName tickLabelFillName = - new PropertyName("tickLabelFill"); - private final PropertyName tickLabelFontName = - new PropertyName("tickLabelFont"); - private final PropertyName tickLabelFormatterName = - new PropertyName("tickLabelFormatter"); - private final PropertyName tickLabelGapName = - new PropertyName("tickLabelGap"); - private final PropertyName tickLabelRotationName = - new PropertyName("tickLabelRotation"); - private final PropertyName tickLabelsVisibleName = - new PropertyName("tickLabelsVisible"); - private final PropertyName tickLengthName = - new PropertyName("tickLength"); - private final PropertyName tickMarksName = - new PropertyName("tickMarks"); - private final PropertyName tickMarkVisibleName = - new PropertyName("tickMarkVisible"); - private final PropertyName tickUnitName = - new PropertyName("tickUnit"); - private final PropertyName tileAlignmentName = - new PropertyName("tileAlignment"); - private final PropertyName tileHeightName = - new PropertyName("tileHeight"); - private final PropertyName tileWidthName = - new PropertyName("tileWidth"); - private final PropertyName titleName = - new PropertyName("title"); - private final PropertyName titleNodesName = - new PropertyName("titleNodes"); - private final PropertyName titleSideName = - new PropertyName("titleSide"); - private final PropertyName toggleGroupName = - new PropertyName("toggleGroup"); - private final PropertyName togglesName = - new PropertyName("toggles"); - private final PropertyName tooltipName = - new PropertyName("tooltip"); - private final PropertyName topName = - new PropertyName("top"); - private final PropertyName translateXName = - new PropertyName("translateX"); - private final PropertyName translateYName = - new PropertyName("translateY"); - private final PropertyName translateZName = - new PropertyName("translateZ"); - private final PropertyName treeColumnName = - new PropertyName("treeColumn"); - private final PropertyName typeName = - new PropertyName("type"); - private final PropertyName underlineName = - new PropertyName("underline"); - private final PropertyName unitIncrementName = - new PropertyName("unitIncrement"); - private final PropertyName upperBoundName = - new PropertyName("upperBound"); - private final PropertyName userAgentStylesheetName = - new PropertyName("userAgentStylesheet"); - private final PropertyName valignmentName = - new PropertyName("valignment"); - private final PropertyName valueName = - new PropertyName("value"); - private final PropertyName vbarPolicyName = - new PropertyName("vbarPolicy"); - private final PropertyName verticalFieldOfViewName = - new PropertyName("verticalFieldOfView"); - private final PropertyName verticalGridLinesVisibleName = - new PropertyName("verticalGridLinesVisible"); - private final PropertyName verticalZeroLineVisibleName = - new PropertyName("verticalZeroLineVisible"); - private final PropertyName vgapName = - new PropertyName("vgap"); - private final PropertyName vgrowName = - new PropertyName("vgrow"); - private final PropertyName viewportName = - new PropertyName("viewport"); - private final PropertyName viewportBoundsName = - new PropertyName("viewportBounds"); - private final PropertyName visibleName = - new PropertyName("visible"); - private final PropertyName visibleAmountName = - new PropertyName("visibleAmount"); - private final PropertyName visibleRowCountName = - new PropertyName("visibleRowCount"); - private final PropertyName visitedName = - new PropertyName("visited"); - private final PropertyName vmaxName = - new PropertyName("vmax"); - private final PropertyName vminName = - new PropertyName("vmin"); - private final PropertyName vvalueName = - new PropertyName("vvalue"); - private final PropertyName widthName = - new PropertyName("width"); - private final PropertyName wrappingWidthName = - new PropertyName("wrappingWidth"); - private final PropertyName wrapTextName = - new PropertyName("wrapText"); - private final PropertyName xName = - new PropertyName("x"); - private final PropertyName XAxisName = - new PropertyName("XAxis"); - private final PropertyName XAxisRotationName = - new PropertyName("XAxisRotation"); - private final PropertyName yName = - new PropertyName("y"); - private final PropertyName YAxisName = - new PropertyName("YAxis"); - private final PropertyName zeroPositionName = - new PropertyName("zeroPosition"); - private final PropertyName zoomName = - new PropertyName("zoom"); - private final PropertyName SplitPane_resizableWithParentName = - new PropertyName("resizableWithParent", javafx.scene.control.SplitPane.class); - private final PropertyName AnchorPane_bottomAnchorName = - new PropertyName("bottomAnchor", javafx.scene.layout.AnchorPane.class); - private final PropertyName AnchorPane_leftAnchorName = - new PropertyName("leftAnchor", javafx.scene.layout.AnchorPane.class); - private final PropertyName AnchorPane_rightAnchorName = - new PropertyName("rightAnchor", javafx.scene.layout.AnchorPane.class); - private final PropertyName AnchorPane_topAnchorName = - new PropertyName("topAnchor", javafx.scene.layout.AnchorPane.class); - private final PropertyName BorderPane_alignmentName = - new PropertyName("alignment", javafx.scene.layout.BorderPane.class); - private final PropertyName BorderPane_marginName = - new PropertyName("margin", javafx.scene.layout.BorderPane.class); - private final PropertyName FlowPane_marginName = - new PropertyName("margin", javafx.scene.layout.FlowPane.class); - private final PropertyName GridPane_columnIndexName = - new PropertyName("columnIndex", javafx.scene.layout.GridPane.class); - private final PropertyName GridPane_columnSpanName = - new PropertyName("columnSpan", javafx.scene.layout.GridPane.class); - private final PropertyName GridPane_halignmentName = - new PropertyName("halignment", javafx.scene.layout.GridPane.class); - private final PropertyName GridPane_hgrowName = - new PropertyName("hgrow", javafx.scene.layout.GridPane.class); - private final PropertyName GridPane_marginName = - new PropertyName("margin", javafx.scene.layout.GridPane.class); - private final PropertyName GridPane_rowIndexName = - new PropertyName("rowIndex", javafx.scene.layout.GridPane.class); - private final PropertyName GridPane_rowSpanName = - new PropertyName("rowSpan", javafx.scene.layout.GridPane.class); - private final PropertyName GridPane_valignmentName = - new PropertyName("valignment", javafx.scene.layout.GridPane.class); - private final PropertyName GridPane_vgrowName = - new PropertyName("vgrow", javafx.scene.layout.GridPane.class); - private final PropertyName HBox_hgrowName = - new PropertyName("hgrow", javafx.scene.layout.HBox.class); - private final PropertyName HBox_marginName = - new PropertyName("margin", javafx.scene.layout.HBox.class); - private final PropertyName StackPane_alignmentName = - new PropertyName("alignment", javafx.scene.layout.StackPane.class); - private final PropertyName StackPane_marginName = - new PropertyName("margin", javafx.scene.layout.StackPane.class); - private final PropertyName TilePane_alignmentName = - new PropertyName("alignment", javafx.scene.layout.TilePane.class); - private final PropertyName TilePane_marginName = - new PropertyName("margin", javafx.scene.layout.TilePane.class); - private final PropertyName VBox_marginName = - new PropertyName("margin", javafx.scene.layout.VBox.class); - private final PropertyName VBox_vgrowName = - new PropertyName("vgrow", javafx.scene.layout.VBox.class); - private final PropertyName source = - new PropertyName("source"); - - // Property Metadata - - private final ValuePropertyMetadata absolutePropertyMetadata = - new BooleanPropertyMetadata( - absoluteName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 0)); - private final ValuePropertyMetadata acceleratorPropertyMetadata = - new KeyCombinationPropertyMetadata( - acceleratorName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Properties", "Specific", 1)); - private final ValuePropertyMetadata accessibleHelpPropertyMetadata = - new StringPropertyMetadata( - accessibleHelpName, - true, /* readWrite */ - "", /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 1)); - private final ValuePropertyMetadata accessibleRole_NODE_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.NODE, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_BUTTON_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.BUTTON, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_TOGGLE_BUTTON_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.TOGGLE_BUTTON, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_CHECK_BOX_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.CHECK_BOX, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_COMBO_BOX_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.COMBO_BOX, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_DATE_PICKER_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.DATE_PICKER, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_HYPERLINK_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.HYPERLINK, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_IMAGE_VIEW_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.IMAGE_VIEW, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_TEXT_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.TEXT, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_LIST_VIEW_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.LIST_VIEW, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_MENU_BAR_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.MENU_BAR, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_MENU_BUTTON_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.MENU_BUTTON, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_PARENT_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.PARENT, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_PAGINATION_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.PAGINATION, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_PASSWORD_FIELD_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.PASSWORD_FIELD, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_PROGRESS_INDICATOR_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.PROGRESS_INDICATOR, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_RADIO_BUTTON_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.RADIO_BUTTON, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_SCROLL_BAR_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.SCROLL_BAR, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_SCROLL_PANE_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.SCROLL_PANE, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_SLIDER_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.SLIDER, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_SPINNER_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.SPINNER, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_SPLIT_MENU_BUTTON_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.SPLIT_MENU_BUTTON, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_TAB_PANE_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.TAB_PANE, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_TABLE_VIEW_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.TABLE_VIEW, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_TEXT_AREA_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.TEXT_AREA, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_TEXT_FIELD_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.TEXT_FIELD, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_TITLED_PANE_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.TITLED_PANE, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_TOOL_BAR_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.TOOL_BAR, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_TREE_TABLE_VIEW_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.TREE_TABLE_VIEW, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRole_TREE_VIEW_PropertyMetadata = - new EnumerationPropertyMetadata( - accessibleRoleName, - javafx.scene.AccessibleRole.class, - true, /* readWrite */ - javafx.scene.AccessibleRole.TREE_VIEW, /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 2)); - private final ValuePropertyMetadata accessibleRoleDescriptionPropertyMetadata = - new StringPropertyMetadata( - accessibleRoleDescriptionName, - true, /* readWrite */ - "", /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 3)); - private final ValuePropertyMetadata accessibleTextPropertyMetadata = - new StringPropertyMetadata( - accessibleTextName, - true, /* readWrite */ - "", /* defaultValue */ - new InspectorPath("Properties", "Accessibility", 0)); - private final ComponentPropertyMetadata actionItems_Node_PropertyMetadata = - new ComponentPropertyMetadata( - actionItemsName, - NodeMetadata, - true); /* collection */ - private final ValuePropertyMetadata alignment_TOP_LEFT_PropertyMetadata = - new EnumerationPropertyMetadata( - alignmentName, - javafx.geometry.Pos.class, - true, /* readWrite */ - javafx.geometry.Pos.TOP_LEFT, /* defaultValue */ - new InspectorPath("Properties", "Node", 0)); - private final ValuePropertyMetadata alignment_CENTER_LEFT_PropertyMetadata = - new EnumerationPropertyMetadata( - alignmentName, - javafx.geometry.Pos.class, - true, /* readWrite */ - javafx.geometry.Pos.CENTER_LEFT, /* defaultValue */ - new InspectorPath("Properties", "Node", 0)); - private final ValuePropertyMetadata alignment_CENTER_PropertyMetadata = - new EnumerationPropertyMetadata( - alignmentName, - javafx.geometry.Pos.class, - true, /* readWrite */ - javafx.geometry.Pos.CENTER, /* defaultValue */ - new InspectorPath("Properties", "Node", 0)); - private final ValuePropertyMetadata allowIndeterminatePropertyMetadata = - new BooleanPropertyMetadata( - allowIndeterminateName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 2)); - private final ValuePropertyMetadata alternativeColumnFillVisiblePropertyMetadata = - new BooleanPropertyMetadata( - alternativeColumnFillVisibleName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 88)); - private final ValuePropertyMetadata alternativeRowFillVisiblePropertyMetadata = - new BooleanPropertyMetadata( - alternativeRowFillVisibleName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 94)); - private final ValuePropertyMetadata anchorLocationPropertyMetadata = - new EnumerationPropertyMetadata( - anchorLocationName, - javafx.stage.PopupWindow.AnchorLocation.class, - true, /* readWrite */ - javafx.stage.PopupWindow.AnchorLocation.CONTENT_TOP_LEFT, /* defaultValue */ - new InspectorPath("Layout", "Position", 11)); - private final ValuePropertyMetadata anchorXPropertyMetadata = - new DoublePropertyMetadata( - anchorXName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - Double.NaN, /* defaultValue */ - new InspectorPath("Layout", "Position", 9)); - private final ValuePropertyMetadata anchorYPropertyMetadata = - new DoublePropertyMetadata( - anchorYName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - Double.NaN, /* defaultValue */ - new InspectorPath("Layout", "Position", 10)); - private final ValuePropertyMetadata animatedPropertyMetadata = - new BooleanPropertyMetadata( - animatedName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 43)); - private final ValuePropertyMetadata arcHeightPropertyMetadata = - new DoublePropertyMetadata( - arcHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 44)); - private final ValuePropertyMetadata arcWidthPropertyMetadata = - new DoublePropertyMetadata( - arcWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 3)); - private final ValuePropertyMetadata autoFixPropertyMetadata = - new BooleanPropertyMetadata( - autoFixName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 4)); - private final ValuePropertyMetadata autoHide_true_PropertyMetadata = - new BooleanPropertyMetadata( - autoHideName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 45)); - private final ValuePropertyMetadata autoHide_false_PropertyMetadata = - new BooleanPropertyMetadata( - autoHideName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 45)); - private final ValuePropertyMetadata autoRangingPropertyMetadata = - new BooleanPropertyMetadata( - autoRangingName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 72)); - private final ValuePropertyMetadata autoSizeChildrenPropertyMetadata = - new BooleanPropertyMetadata( - autoSizeChildrenName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Layout", "Extras", 0)); - private final ValuePropertyMetadata axisSortingPolicyPropertyMetadata = - new EnumerationPropertyMetadata( - axisSortingPolicyName, - javafx.scene.chart.LineChart.SortingPolicy.class, - true, /* readWrite */ - javafx.scene.chart.LineChart.SortingPolicy.X_AXIS, /* defaultValue */ - new InspectorPath("Properties", "Specific", 130)); - private final ValuePropertyMetadata barGapPropertyMetadata = - new DoublePropertyMetadata( - barGapName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 4.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 77)); - private final ValuePropertyMetadata baselineOffsetPropertyMetadata = - new DoublePropertyMetadata( - baselineOffsetName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Layout", "Extras", 1)); - private final ValuePropertyMetadata blendModePropertyMetadata = - new EnumerationPropertyMetadata( - blendModeName, - javafx.scene.effect.BlendMode.class, - "SRC_OVER", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Properties", "Extras", 0)); - private final ValuePropertyMetadata blockIncrementPropertyMetadata = - new DoublePropertyMetadata( - blockIncrementName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 10.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 73)); - private final ComponentPropertyMetadata bottomPropertyMetadata = - new ComponentPropertyMetadata( - bottomName, - NodeMetadata, - false); /* collection */ - private final ValuePropertyMetadata boundsInLocalPropertyMetadata = - new BoundsPropertyMetadata( - boundsInLocalName, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Layout", "Bounds", 2)); - private final ValuePropertyMetadata boundsInParentPropertyMetadata = - new BoundsPropertyMetadata( - boundsInParentName, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Layout", "Bounds", 3)); - private final ValuePropertyMetadata boundsTypePropertyMetadata = - new EnumerationPropertyMetadata( - boundsTypeName, - javafx.scene.text.TextBoundsType.class, - true, /* readWrite */ - javafx.scene.text.TextBoundsType.LOGICAL, /* defaultValue */ - new InspectorPath("Layout", "Extras", 2)); - private final ValuePropertyMetadata buttonCellPropertyMetadata = - new ListCellPropertyMetadata( - buttonCellName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Properties", "Specific", 40)); - private final ValuePropertyMetadata buttonMinWidthPropertyMetadata = - new DoublePropertyMetadata( - buttonMinWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 70.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 0)); - private final ValuePropertyMetadata buttonOrderPropertyMetadata = - new StringPropertyMetadata( - buttonOrderName, - true, /* readWrite */ - "L_HE+U+FBIX_NCYOA_R", /* defaultValue */ - new InspectorPath("Properties", "Specific", 5)); - private final ComponentPropertyMetadata buttonsPropertyMetadata = - new ComponentPropertyMetadata( - buttonsName, - NodeMetadata, - true); /* collection */ - private final ValuePropertyMetadata buttonTypesPropertyMetadata = - new ButtonTypeListPropertyMetadata( - buttonTypesName, - true, /* readWrite */ - Collections.emptyList(), /* defaultValue */ - new InspectorPath("Properties", "Specific", 18)); - private final ValuePropertyMetadata cachePropertyMetadata = - new BooleanPropertyMetadata( - cacheName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Extras", 2)); - private final ValuePropertyMetadata cacheHintPropertyMetadata = - new EnumerationPropertyMetadata( - cacheHintName, - javafx.scene.CacheHint.class, - true, /* readWrite */ - javafx.scene.CacheHint.DEFAULT, /* defaultValue */ - new InspectorPath("Properties", "Extras", 3)); - private final ValuePropertyMetadata cacheShapePropertyMetadata = - new BooleanPropertyMetadata( - cacheShapeName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Node", 7)); - private final ValuePropertyMetadata cancelButtonPropertyMetadata = - new BooleanPropertyMetadata( - cancelButtonName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 46)); - private final ComponentPropertyMetadata cards_Node_PropertyMetadata = - new ComponentPropertyMetadata( - cardsName, - NodeMetadata, - true); /* collection */ - private final ValuePropertyMetadata categoriesPropertyMetadata = - new StringListPropertyMetadata( - categoriesName, - true, /* readWrite */ - Collections.emptyList(), /* defaultValue */ - new InspectorPath("Properties", "Specific", 78)); - private final ValuePropertyMetadata categoryGapPropertyMetadata = - new DoublePropertyMetadata( - categoryGapName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 10.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 79)); - private final ValuePropertyMetadata categorySpacingPropertyMetadata = - new DoublePropertyMetadata( - categorySpacingName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Properties", "Specific", 80)); - private final ComponentPropertyMetadata centerPropertyMetadata = - new ComponentPropertyMetadata( - centerName, - NodeMetadata, - false); /* collection */ - private final ValuePropertyMetadata centerShapePropertyMetadata = - new BooleanPropertyMetadata( - centerShapeName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Node", 8)); - private final ValuePropertyMetadata centerXPropertyMetadata = - new DoublePropertyMetadata( - centerXName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 0)); - private final ValuePropertyMetadata centerYPropertyMetadata = - new DoublePropertyMetadata( - centerYName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 1)); - private final ComponentPropertyMetadata children_c1_PropertyMetadata = - new ComponentPropertyMetadata( - childrenName, - NodeMetadata, - true); /* collection */ - private final ComponentPropertyMetadata children_empty_PropertyMetadata = - new ComponentPropertyMetadata( - childrenName, - NodeMetadata, - true); /* collection */ - private final ComponentPropertyMetadata clipPropertyMetadata = - new ComponentPropertyMetadata( - clipName, - NodeMetadata, - false); /* collection */ - private final ValuePropertyMetadata clockwisePropertyMetadata = - new BooleanPropertyMetadata( - clockwiseName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 89)); - private final ValuePropertyMetadata closablePropertyMetadata = - new BooleanPropertyMetadata( - closableName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 6)); - private final ComponentPropertyMetadata collapsedContentPropertyMetadata = - new ComponentPropertyMetadata( - collapsedContentName, - NodeMetadata, - false /* collection */ - ); - private final ValuePropertyMetadata collapsiblePropertyMetadata = - new BooleanPropertyMetadata( - collapsibleName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 62)); - private final ValuePropertyMetadata colorPropertyMetadata = - new ColorPropertyMetadata( - colorName, - true, /* readWrite */ - javafx.scene.paint.Color.WHITE, /* defaultValue */ - new InspectorPath("Properties", "Specific", 7)); - private final ComponentPropertyMetadata columnConstraintsPropertyMetadata = - new ComponentPropertyMetadata( - columnConstraintsName, - ColumnConstraintsMetadata, - true); /* collection */ - private final ValuePropertyMetadata columnHalignmentPropertyMetadata = - new EnumerationPropertyMetadata( - columnHalignmentName, - javafx.geometry.HPos.class, - true, /* readWrite */ - javafx.geometry.HPos.LEFT, /* defaultValue */ - new InspectorPath("Properties", "Specific", 63)); - private final ValuePropertyMetadata columnResizePolicy_TABLEVIEW_UNCONSTRAINED_PropertyMetadata = - new TableViewResizePolicyPropertyMetadata( - columnResizePolicyName, - true, /* readWrite */ - javafx.scene.control.TableView.UNCONSTRAINED_RESIZE_POLICY, /* defaultValue */ - new InspectorPath("Properties", "Specific", 34)); - private final ValuePropertyMetadata columnResizePolicy_TREETABLEVIEW_UNCONSTRAINED_PropertyMetadata = - new TreeTableViewResizePolicyPropertyMetadata( - columnResizePolicyName, - true, /* readWrite */ - javafx.scene.control.TreeTableView.UNCONSTRAINED_RESIZE_POLICY, /* defaultValue */ - new InspectorPath("Properties", "Specific", 34)); - private final ComponentPropertyMetadata columns_TableColumn_PropertyMetadata = - new ComponentPropertyMetadata( - columnsName, - TableColumnMetadata, - true); /* collection */ - private final ComponentPropertyMetadata columns_TreeTableColumn_PropertyMetadata = - new ComponentPropertyMetadata( - columnsName, - TreeTableColumnMetadata, - true); /* collection */ - private final ValuePropertyMetadata consumeAutoHidingEventsPropertyMetadata = - new BooleanPropertyMetadata( - consumeAutoHidingEventsName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 64)); - private final ComponentPropertyMetadata content_Node_NULL_PropertyMetadata = - new ComponentPropertyMetadata( - contentName, - NodeMetadata, - false); /* collection */ - private final ValuePropertyMetadata content_String_PropertyMetadata = - new StringPropertyMetadata( - contentName, - true, /* readWrite */ - "", /* defaultValue */ - new InspectorPath("Properties", "Specific", 10)); - private final ComponentPropertyMetadata content_Node_SEPARATOR_PropertyMetadata = - new ComponentPropertyMetadata( - contentName, - NodeMetadata, - false); /* collection */ - private final ValuePropertyMetadata contentBiasPropertyMetadata = - new EnumerationPropertyMetadata( - contentBiasName, - javafx.geometry.Orientation.class, - "NONE", /* null equivalent */ - false, /* readWrite */ - new InspectorPath("Layout", "Extras", 4)); - private final ValuePropertyMetadata contentDisplayPropertyMetadata = - new EnumerationPropertyMetadata( - contentDisplayName, - javafx.scene.control.ContentDisplay.class, - true, /* readWrite */ - javafx.scene.control.ContentDisplay.LEFT, /* defaultValue */ - new InspectorPath("Properties", "Graphic", 1)); - private final ValuePropertyMetadata contentTextPropertyMetadata = - new StringPropertyMetadata( - contentTextName, - true, /* readWrite */ - "", /* defaultValue */ - new InspectorPath("Properties", "Text", 2)); - private final ComponentPropertyMetadata contextMenuPropertyMetadata = - new ComponentPropertyMetadata( - contextMenuName, - ContextMenuMetadata, - false); /* collection */ - private final ValuePropertyMetadata contextMenuEnabledPropertyMetadata = - new BooleanPropertyMetadata( - contextMenuEnabledName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 11)); - private final ValuePropertyMetadata controlXPropertyMetadata = - new DoublePropertyMetadata( - controlXName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 14)); - private final ValuePropertyMetadata controlX1PropertyMetadata = - new DoublePropertyMetadata( - controlX1Name, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 16)); - private final ValuePropertyMetadata controlX2PropertyMetadata = - new DoublePropertyMetadata( - controlX2Name, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 18)); - private final ValuePropertyMetadata controlYPropertyMetadata = - new DoublePropertyMetadata( - controlYName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 15)); - private final ValuePropertyMetadata controlY1PropertyMetadata = - new DoublePropertyMetadata( - controlY1Name, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 17)); - private final ValuePropertyMetadata controlY2PropertyMetadata = - new DoublePropertyMetadata( - controlY2Name, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 19)); - private final ValuePropertyMetadata createSymbolsPropertyMetadata = - new BooleanPropertyMetadata( - createSymbolsName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 81)); - private final ValuePropertyMetadata cullFacePropertyMetadata = - new EnumerationPropertyMetadata( - cullFaceName, - javafx.scene.shape.CullFace.class, - true, /* readWrite */ - javafx.scene.shape.CullFace.BACK, /* defaultValue */ - new InspectorPath("Properties", "3D", 8)); - private final ValuePropertyMetadata currentPageIndexPropertyMetadata = - new IntegerPropertyMetadata( - currentPageIndexName, - true, /* readWrite */ - 0, /* defaultValue */ - new InspectorPath("Properties", "Pagination", 0)); - private final ValuePropertyMetadata cursor_HAND_PropertyMetadata = - new CursorPropertyMetadata( - cursorName, - true, /* readWrite */ - javafx.scene.Cursor.HAND, /* defaultValue */ - new InspectorPath("Properties", "Node", 13)); - private final ValuePropertyMetadata cursor_NULL_PropertyMetadata = - new CursorPropertyMetadata( - cursorName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Properties", "Node", 13)); - private final ValuePropertyMetadata defaultButtonPropertyMetadata = - new BooleanPropertyMetadata( - defaultButtonName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 13)); - private final ValuePropertyMetadata depthPropertyMetadata = - new DoublePropertyMetadata( - depthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 2.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 16)); - private final ValuePropertyMetadata depthTestPropertyMetadata = - new EnumerationPropertyMetadata( - depthTestName, - javafx.scene.DepthTest.class, - true, /* readWrite */ - javafx.scene.DepthTest.INHERIT, /* defaultValue */ - new InspectorPath("Properties", "Extras", 4)); - private final ValuePropertyMetadata disablePropertyMetadata = - new BooleanPropertyMetadata( - disableName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Node", 1)); - private final ValuePropertyMetadata dividerPositionsPropertyMetadata = - new DoubleArrayPropertyMetadata( - dividerPositionsName, - true, /* readWrite */ - Collections.emptyList(), /* defaultValue */ - new InspectorPath("Properties", "Specific", 15)); - private final ValuePropertyMetadata divisionsPropertyMetadata = - new IntegerPropertyMetadata( - divisionsName, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Properties", "3D", 10)); - private final ValuePropertyMetadata drawModePropertyMetadata = - new EnumerationPropertyMetadata( - drawModeName, - javafx.scene.shape.DrawMode.class, - true, /* readWrite */ - javafx.scene.shape.DrawMode.FILL, /* defaultValue */ - new InspectorPath("Properties", "3D", 9)); - private final ValuePropertyMetadata editable_false_PropertyMetadata = - new BooleanPropertyMetadata( - editableName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 16)); - private final ValuePropertyMetadata editable_true_PropertyMetadata = - new BooleanPropertyMetadata( - editableName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 16)); - private final ValuePropertyMetadata effectPropertyMetadata = - new EffectPropertyMetadata( - effectName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Properties", "Node", 14)); - private final ValuePropertyMetadata effectiveNodeOrientationPropertyMetadata = - new EnumerationPropertyMetadata( - effectiveNodeOrientationName, - javafx.geometry.NodeOrientation.class, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Layout", "Extras", 7)); - private final ComponentPropertyMetadata elementsPropertyMetadata = - new ComponentPropertyMetadata( - elementsName, - PathElementMetadata, - true); /* collection */ - private final ValuePropertyMetadata ellipsisStringPropertyMetadata = - new StringPropertyMetadata( - ellipsisStringName, - true, /* readWrite */ - "...", /* defaultValue */ - new InspectorPath("Properties", "Text", 12)); - private final ValuePropertyMetadata endMarginPropertyMetadata = - new DoublePropertyMetadata( - endMarginName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 5.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 95)); - private final ValuePropertyMetadata endXPropertyMetadata = - new DoublePropertyMetadata( - endXName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 7)); - private final ValuePropertyMetadata endYPropertyMetadata = - new DoublePropertyMetadata( - endYName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 8)); - private final ComponentPropertyMetadata expandableContentPropertyMetadata = - new ComponentPropertyMetadata( - expandableContentName, - NodeMetadata, - false); /* collection */ - private final ValuePropertyMetadata expanded_false_PropertyMetadata = - new BooleanPropertyMetadata( - expandedName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 17)); - private final ValuePropertyMetadata expanded_true_PropertyMetadata = - new BooleanPropertyMetadata( - expandedName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 17)); - private final ComponentPropertyMetadata expandedContentPropertyMetadata = - new ComponentPropertyMetadata( - expandedContentName, - NodeMetadata, - false /* collection */ - ); - private final ValuePropertyMetadata expandedItemCountPropertyMetadata = - new IntegerPropertyMetadata( - expandedItemCountName, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Properties", "Specific", 19)); - private final BooleanPropertyMetadata expandedPropertyMetadata = - new BooleanPropertyMetadata( - expandedName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 0) - ); - private final ValuePropertyMetadata farClipPropertyMetadata = - new DoublePropertyMetadata( - farClipName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 100.0, /* defaultValue */ - new InspectorPath("Properties", "3D", 3)); - private final ValuePropertyMetadata fieldOfViewPropertyMetadata = - new DoublePropertyMetadata( - fieldOfViewName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.ANGLE, - true, /* readWrite */ - 30.0, /* defaultValue */ - new InspectorPath("Properties", "3D", 4)); - private final ValuePropertyMetadata fill_NULL_PropertyMetadata = - new PaintPropertyMetadata( - fillName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Properties", "Specific", 20)); - private final ValuePropertyMetadata fill_BLACK_PropertyMetadata = - new PaintPropertyMetadata( - fillName, - true, /* readWrite */ - javafx.scene.paint.Color.BLACK, /* defaultValue */ - new InspectorPath("Properties", "Specific", 20)); - private final ValuePropertyMetadata fillHeightPropertyMetadata = - new BooleanPropertyMetadata( - fillHeightName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Layout", "Specific", 0)); - private final ValuePropertyMetadata fillRulePropertyMetadata = - new EnumerationPropertyMetadata( - fillRuleName, - javafx.scene.shape.FillRule.class, - true, /* readWrite */ - javafx.scene.shape.FillRule.NON_ZERO, /* defaultValue */ - new InspectorPath("Properties", "Specific", 21)); - private final ValuePropertyMetadata fillWidthPropertyMetadata = - new BooleanPropertyMetadata( - fillWidthName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Layout", "Specific", 1)); - private final ValuePropertyMetadata fitHeightPropertyMetadata = - new DoublePropertyMetadata( - fitHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 15)); - private final ValuePropertyMetadata fitToHeightPropertyMetadata = - new BooleanPropertyMetadata( - fitToHeightName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Layout", "Specific", 11)); - private final ValuePropertyMetadata fitToWidthPropertyMetadata = - new BooleanPropertyMetadata( - fitToWidthName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Layout", "Specific", 10)); - private final ValuePropertyMetadata fitWidthPropertyMetadata = - new DoublePropertyMetadata( - fitWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 14)); - private final ValuePropertyMetadata fixedCellSizePropertyMetadata = - new DoublePropertyMetadata( - fixedCellSizeName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - -1.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 128)); - private final ValuePropertyMetadata fixedEyeAtCameraZeroPropertyMetadata = - new BooleanPropertyMetadata( - fixedEyeAtCameraZeroName, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Properties", "3D", 6)); - private final ValuePropertyMetadata focusTraversable_true_PropertyMetadata = - new BooleanPropertyMetadata( - focusTraversableName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Node", 6)); - private final ValuePropertyMetadata focusTraversable_false_PropertyMetadata = - new BooleanPropertyMetadata( - focusTraversableName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Node", 6)); - private final ValuePropertyMetadata fontPropertyMetadata = - new FontPropertyMetadata( - fontName, - true, /* readWrite */ - javafx.scene.text.Font.getDefault(), /* defaultValue */ - new InspectorPath("Properties", "Text", 5)); - private final ValuePropertyMetadata fontScalePropertyMetadata = - new DoublePropertyMetadata( - fontScaleName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 1.0, /* defaultValue */ - new InspectorPath("Properties", "Text", 0)); - private final ValuePropertyMetadata fontSmoothingType_GRAY_PropertyMetadata = - new EnumerationPropertyMetadata( - fontSmoothingTypeName, - javafx.scene.text.FontSmoothingType.class, - true, /* readWrite */ - javafx.scene.text.FontSmoothingType.GRAY, /* defaultValue */ - new InspectorPath("Properties", "Text", 6)); - private final ValuePropertyMetadata fontSmoothingType_LCD_PropertyMetadata = - new EnumerationPropertyMetadata( - fontSmoothingTypeName, - javafx.scene.text.FontSmoothingType.class, - true, /* readWrite */ - javafx.scene.text.FontSmoothingType.LCD, /* defaultValue */ - new InspectorPath("Properties", "Text", 6)); - private final ValuePropertyMetadata forceZeroInRangePropertyMetadata = - new BooleanPropertyMetadata( - forceZeroInRangeName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 122)); - private final ValuePropertyMetadata gapStartAndEndPropertyMetadata = - new BooleanPropertyMetadata( - gapStartAndEndName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 99)); - private final ComponentPropertyMetadata graphicPropertyMetadata = - new ComponentPropertyMetadata( - graphicName, - NodeMetadata, - false); /* collection */ - private final ValuePropertyMetadata graphicTextGapPropertyMetadata = - new DoublePropertyMetadata( - graphicTextGapName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 4.0, /* defaultValue */ - new InspectorPath("Properties", "Graphic", 0)); - private final ValuePropertyMetadata gridLinesVisiblePropertyMetadata = - new BooleanPropertyMetadata( - gridLinesVisibleName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 22)); - private final ValuePropertyMetadata halignment_NULL_PropertyMetadata = - new EnumerationPropertyMetadata( - halignmentName, - javafx.geometry.HPos.class, - "INHERIT", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Layout", "Specific", 4)); - private final ValuePropertyMetadata halignment_CENTER_PropertyMetadata = - new EnumerationPropertyMetadata( - halignmentName, - javafx.geometry.HPos.class, - true, /* readWrite */ - javafx.geometry.HPos.CENTER, /* defaultValue */ - new InspectorPath("Layout", "Specific", 4)); - private final ValuePropertyMetadata hbarPolicyPropertyMetadata = - new EnumerationPropertyMetadata( - hbarPolicyName, - javafx.scene.control.ScrollPane.ScrollBarPolicy.class, - true, /* readWrite */ - javafx.scene.control.ScrollPane.ScrollBarPolicy.AS_NEEDED, /* defaultValue */ - new InspectorPath("Properties", "Specific", 48)); - private final ComponentPropertyMetadata headerPropertyMetadata = - new ComponentPropertyMetadata( - headerName, - NodeMetadata, - false); /* collection */ - private final ValuePropertyMetadata headerTextPropertyMetadata = - new StringPropertyMetadata( - headerTextName, - true, /* readWrite */ - "", /* defaultValue */ - new InspectorPath("Properties", "Text", 1)); - private final ValuePropertyMetadata height_Double_200_PropertyMetadata = - new DoublePropertyMetadata( - heightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 2.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 8)); - private final ValuePropertyMetadata height_Double_0_PropertyMetadata = - new DoublePropertyMetadata( - heightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 8)); - private final ValuePropertyMetadata height_Double_ro_PropertyMetadata = - new DoublePropertyMetadata( - heightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Layout", "Size", 8)); - private final ValuePropertyMetadata hgapPropertyMetadata = - new DoublePropertyMetadata( - hgapName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Internal", 0)); - private final ValuePropertyMetadata hgrowPropertyMetadata = - new EnumerationPropertyMetadata( - hgrowName, - javafx.scene.layout.Priority.class, - "INHERIT", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Layout", "Specific", 2)); - private final ValuePropertyMetadata hideOnClick_true_PropertyMetadata = - new BooleanPropertyMetadata( - hideOnClickName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 23)); - private final ValuePropertyMetadata hideOnClick_false_PropertyMetadata = - new BooleanPropertyMetadata( - hideOnClickName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 23)); - private final ValuePropertyMetadata hideOnEscapePropertyMetadata = - new BooleanPropertyMetadata( - hideOnEscapeName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 65)); - private final ValuePropertyMetadata hmaxPropertyMetadata = - new DoublePropertyMetadata( - hmaxName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 1.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 108)); - private final ValuePropertyMetadata hminPropertyMetadata = - new DoublePropertyMetadata( - hminName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 104)); - private final ValuePropertyMetadata horizontalGridLinesVisiblePropertyMetadata = - new BooleanPropertyMetadata( - horizontalGridLinesVisibleName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 100)); - private final ValuePropertyMetadata horizontalZeroLineVisiblePropertyMetadata = - new BooleanPropertyMetadata( - horizontalZeroLineVisibleName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 110)); - private final ValuePropertyMetadata htmlTextPropertyMetadata = - new StringPropertyMetadata( - htmlTextName, - true, /* readWrite */ - "<html><head></head><body contenteditable=\"true\"></body></html>", /* defaultValue */ - new InspectorPath("Properties", "Specific", 24)); - private final ValuePropertyMetadata hvaluePropertyMetadata = - new DoublePropertyMetadata( - hvalueName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 106)); - private final ValuePropertyMetadata idPropertyMetadata = - new StringPropertyMetadata( - idName, - true, /* readWrite */ - "", /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 3)); - private final ValuePropertyMetadata imagePropertyMetadata = - new ImagePropertyMetadata( - imageName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Properties", "Specific", 25)); - private final ValuePropertyMetadata indeterminate_Boolean_PropertyMetadata = - new BooleanPropertyMetadata( - indeterminateName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 49)); - private final ValuePropertyMetadata indeterminate_Boolean_ro_PropertyMetadata = - new BooleanPropertyMetadata( - indeterminateName, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Properties", "Specific", 49)); - private final ValuePropertyMetadata insetsPropertyMetadata = - new InsetsPropertyMetadata( - insetsName, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Properties", "Extras", 5)); - private final ComponentPropertyMetadata items_MenuItem_PropertyMetadata = - new ComponentPropertyMetadata( - itemsName, - MenuItemMetadata, - true); /* collection */ - private final ComponentPropertyMetadata items_Node_PropertyMetadata = - new ComponentPropertyMetadata( - itemsName, - NodeMetadata, - true); /* collection */ - private final ValuePropertyMetadata labelPropertyMetadata = - new StringPropertyMetadata( - labelName, - true, /* readWrite */ - "", /* defaultValue */ - new InspectorPath("Properties", "Specific", 26)); - private final ComponentPropertyMetadata labelForPropertyMetadata = - new ComponentPropertyMetadata( - labelForName, - NodeMetadata, - false); /* collection */ - private final ValuePropertyMetadata labelFormatterPropertyMetadata = - new StringConverterPropertyMetadata( - labelFormatterName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Properties", "Specific", 113)); - private final ValuePropertyMetadata labelLineLengthPropertyMetadata = - new DoublePropertyMetadata( - labelLineLengthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 20.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 111)); - private final ValuePropertyMetadata labelPaddingPropertyMetadata = - new InsetsPropertyMetadata( - labelPaddingName, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Properties", "Extras", 6)); - private final ValuePropertyMetadata labelsVisiblePropertyMetadata = - new BooleanPropertyMetadata( - labelsVisibleName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 101)); - private final ValuePropertyMetadata largeArcFlagPropertyMetadata = - new BooleanPropertyMetadata( - largeArcFlagName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 126)); - private final ValuePropertyMetadata layoutBoundsPropertyMetadata = - new BoundsPropertyMetadata( - layoutBoundsName, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Layout", "Bounds", 0)); - private final ValuePropertyMetadata layoutXPropertyMetadata = - new DoublePropertyMetadata( - layoutXName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 2)); - private final ValuePropertyMetadata layoutYPropertyMetadata = - new DoublePropertyMetadata( - layoutYName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 3)); - private final ComponentPropertyMetadata leftPropertyMetadata = - new ComponentPropertyMetadata( - leftName, - NodeMetadata, - false); /* collection */ - private final ValuePropertyMetadata legendSidePropertyMetadata = - new EnumerationPropertyMetadata( - legendSideName, - javafx.geometry.Side.class, - true, /* readWrite */ - javafx.geometry.Side.BOTTOM, /* defaultValue */ - new InspectorPath("Properties", "Specific", 74)); - private final ValuePropertyMetadata legendVisiblePropertyMetadata = - new BooleanPropertyMetadata( - legendVisibleName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 66)); - private final ValuePropertyMetadata length_Double_PropertyMetadata = - new DoublePropertyMetadata( - lengthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 18)); - private final ValuePropertyMetadata length_Integer_ro_PropertyMetadata = - new IntegerPropertyMetadata( - lengthName, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Layout", "Size", 18)); - private final ValuePropertyMetadata lightOnPropertyMetadata = - new BooleanPropertyMetadata( - lightOnName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "3D", 7)); - private final ValuePropertyMetadata lineSpacingPropertyMetadata = - new DoublePropertyMetadata( - lineSpacingName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Text", 15)); - private final ValuePropertyMetadata lowerBoundPropertyMetadata = - new DoublePropertyMetadata( - lowerBoundName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 90)); - private final ValuePropertyMetadata majorTickUnitPropertyMetadata = - new DoublePropertyMetadata( - majorTickUnitName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 25.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 91)); - private final ValuePropertyMetadata materialPropertyMetadata = - new MaterialPropertyMetadata( - materialName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Properties", "3D", 0)); - private final ValuePropertyMetadata maxPropertyMetadata = - new DoublePropertyMetadata( - maxName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 100.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 50)); - private final ValuePropertyMetadata maxHeight_COMPUTED_PropertyMetadata = - new DoublePropertyMetadata( - maxHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, - true, /* readWrite */ - -1.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 6)); - private final ValuePropertyMetadata maxHeight_MAX_PropertyMetadata = - new DoublePropertyMetadata( - maxHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, - true, /* readWrite */ - Double.MAX_VALUE, /* defaultValue */ - new InspectorPath("Layout", "Size", 6)); - private final ValuePropertyMetadata maxPageIndicatorCountPropertyMetadata = - new IntegerPropertyMetadata( - maxPageIndicatorCountName, - true, /* readWrite */ - 10, /* defaultValue */ - new InspectorPath("Properties", "Pagination", 1)); - private final ValuePropertyMetadata maxWidth_COMPUTED_PropertyMetadata = - new DoublePropertyMetadata( - maxWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, - true, /* readWrite */ - -1.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 5)); - private final ValuePropertyMetadata maxWidth_500000_PropertyMetadata = - new DoublePropertyMetadata( - maxWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, - true, /* readWrite */ - 5000.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 5)); - private final ValuePropertyMetadata maxWidth_MAX_PropertyMetadata = - new DoublePropertyMetadata( - maxWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, - true, /* readWrite */ - Double.MAX_VALUE, /* defaultValue */ - new InspectorPath("Layout", "Size", 5)); - private final ComponentPropertyMetadata menusPropertyMetadata = - new ComponentPropertyMetadata( - menusName, - MenuMetadata, - true); /* collection */ - private final ValuePropertyMetadata meshPropertyMetadata = - new MeshPropertyMetadata( - meshName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Properties", "3D", 1)); - private final ValuePropertyMetadata minPropertyMetadata = - new DoublePropertyMetadata( - minName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 29)); - private final ValuePropertyMetadata minHeight_COMPUTED_PropertyMetadata = - new DoublePropertyMetadata( - minHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, - true, /* readWrite */ - -1.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 2)); - private final ValuePropertyMetadata minHeight_0_PropertyMetadata = - new DoublePropertyMetadata( - minHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 2)); - private final ValuePropertyMetadata minorTickCount_3_PropertyMetadata = - new IntegerPropertyMetadata( - minorTickCountName, - true, /* readWrite */ - 3, /* defaultValue */ - new InspectorPath("Properties", "Specific", 96)); - private final ValuePropertyMetadata minorTickCount_5_PropertyMetadata = - new IntegerPropertyMetadata( - minorTickCountName, - true, /* readWrite */ - 5, /* defaultValue */ - new InspectorPath("Properties", "Specific", 96)); - private final ValuePropertyMetadata minorTickLengthPropertyMetadata = - new DoublePropertyMetadata( - minorTickLengthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 5.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 121)); - private final ValuePropertyMetadata minorTickVisiblePropertyMetadata = - new BooleanPropertyMetadata( - minorTickVisibleName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 119)); - private final ValuePropertyMetadata minViewportHeightPropertyMetadata = - new DoublePropertyMetadata( - minViewportHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Specific", 7)); - private final ValuePropertyMetadata minViewportWidthPropertyMetadata = - new DoublePropertyMetadata( - minViewportWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Specific", 6)); - private final ValuePropertyMetadata minWidth_COMPUTED_PropertyMetadata = - new DoublePropertyMetadata( - minWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, - true, /* readWrite */ - -1.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 1)); - private final ValuePropertyMetadata minWidth_1000_PropertyMetadata = - new DoublePropertyMetadata( - minWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, - true, /* readWrite */ - 10.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 1)); - private final ValuePropertyMetadata minWidth_0_PropertyMetadata = - new DoublePropertyMetadata( - minWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_PREF_SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 1)); - private final ValuePropertyMetadata mnemonicParsing_false_PropertyMetadata = - new BooleanPropertyMetadata( - mnemonicParsingName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Extras", 1)); - private final ValuePropertyMetadata mnemonicParsing_true_PropertyMetadata = - new BooleanPropertyMetadata( - mnemonicParsingName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Extras", 1)); - private final ValuePropertyMetadata mouseTransparentPropertyMetadata = - new BooleanPropertyMetadata( - mouseTransparentName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Extras", 7)); - private final ValuePropertyMetadata nearClipPropertyMetadata = - new DoublePropertyMetadata( - nearClipName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.1, /* defaultValue */ - new InspectorPath("Properties", "3D", 2)); - private final ValuePropertyMetadata nodeOrientation_LEFT_TO_RIGHT_PropertyMetadata = - new EnumerationPropertyMetadata( - nodeOrientationName, - javafx.geometry.NodeOrientation.class, - true, /* readWrite */ - javafx.geometry.NodeOrientation.LEFT_TO_RIGHT, /* defaultValue */ - new InspectorPath("Properties", "Node", 4)); - private final ValuePropertyMetadata nodeOrientation_INHERIT_PropertyMetadata = - new EnumerationPropertyMetadata( - nodeOrientationName, - javafx.geometry.NodeOrientation.class, - true, /* readWrite */ - javafx.geometry.NodeOrientation.INHERIT, /* defaultValue */ - new InspectorPath("Properties", "Node", 4)); - private final ValuePropertyMetadata onActionPropertyMetadata = - new EventHandlerPropertyMetadata( - onActionName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Main", 0)); - private final ValuePropertyMetadata onAutoHidePropertyMetadata = - new EventHandlerPropertyMetadata( - onAutoHideName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "HideShow", 2)); - private final ValuePropertyMetadata onClosedPropertyMetadata = - new EventHandlerPropertyMetadata( - onClosedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Closing", 1)); - private final ValuePropertyMetadata onCloseRequestPropertyMetadata = - new EventHandlerPropertyMetadata( - onCloseRequestName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Closing", 0)); - private final ValuePropertyMetadata onContextMenuRequestedPropertyMetadata = - new EventHandlerPropertyMetadata( - onContextMenuRequestedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Mouse", 0)); - private final ValuePropertyMetadata onDragDetectedPropertyMetadata = - new EventHandlerPropertyMetadata( - onDragDetectedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "DragDrop", 0)); - private final ValuePropertyMetadata onDragDonePropertyMetadata = - new EventHandlerPropertyMetadata( - onDragDoneName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "DragDrop", 1)); - private final ValuePropertyMetadata onDragDroppedPropertyMetadata = - new EventHandlerPropertyMetadata( - onDragDroppedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "DragDrop", 2)); - private final ValuePropertyMetadata onDragEnteredPropertyMetadata = - new EventHandlerPropertyMetadata( - onDragEnteredName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "DragDrop", 3)); - private final ValuePropertyMetadata onDragExitedPropertyMetadata = - new EventHandlerPropertyMetadata( - onDragExitedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "DragDrop", 4)); - private final ValuePropertyMetadata onDragOverPropertyMetadata = - new EventHandlerPropertyMetadata( - onDragOverName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "DragDrop", 5)); - private final ValuePropertyMetadata onEditCancelPropertyMetadata = - new EventHandlerPropertyMetadata( - onEditCancelName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Edit", 2)); - private final ValuePropertyMetadata onEditCommitPropertyMetadata = - new EventHandlerPropertyMetadata( - onEditCommitName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Edit", 1)); - private final ValuePropertyMetadata onEditStartPropertyMetadata = - new EventHandlerPropertyMetadata( - onEditStartName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Edit", 0)); - private final ValuePropertyMetadata onErrorPropertyMetadata = - new EventHandlerPropertyMetadata( - onErrorName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Main", 2)); - private final ValuePropertyMetadata onHiddenPropertyMetadata = - new EventHandlerPropertyMetadata( - onHiddenName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "HideShow", 0)); - private final ValuePropertyMetadata onHidingPropertyMetadata = - new EventHandlerPropertyMetadata( - onHidingName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "HideShow", 1)); - private final ValuePropertyMetadata onInputMethodTextChangedPropertyMetadata = - new EventHandlerPropertyMetadata( - onInputMethodTextChangedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Keyboard", 0)); - private final ValuePropertyMetadata onKeyPressedPropertyMetadata = - new EventHandlerPropertyMetadata( - onKeyPressedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Keyboard", 1)); - private final ValuePropertyMetadata onKeyReleasedPropertyMetadata = - new EventHandlerPropertyMetadata( - onKeyReleasedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Keyboard", 2)); - private final ValuePropertyMetadata onKeyTypedPropertyMetadata = - new EventHandlerPropertyMetadata( - onKeyTypedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Keyboard", 3)); - private final ValuePropertyMetadata onMenuValidationPropertyMetadata = - new EventHandlerPropertyMetadata( - onMenuValidationName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Main", 1)); - private final ValuePropertyMetadata onMouseClickedPropertyMetadata = - new EventHandlerPropertyMetadata( - onMouseClickedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Mouse", 1)); - private final ValuePropertyMetadata onMouseDragEnteredPropertyMetadata = - new EventHandlerPropertyMetadata( - onMouseDragEnteredName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "DragDrop", 6)); - private final ValuePropertyMetadata onMouseDragExitedPropertyMetadata = - new EventHandlerPropertyMetadata( - onMouseDragExitedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "DragDrop", 7)); - private final ValuePropertyMetadata onMouseDraggedPropertyMetadata = - new EventHandlerPropertyMetadata( - onMouseDraggedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Mouse", 2)); - private final ValuePropertyMetadata onMouseDragOverPropertyMetadata = - new EventHandlerPropertyMetadata( - onMouseDragOverName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "DragDrop", 8)); - private final ValuePropertyMetadata onMouseDragReleasedPropertyMetadata = - new EventHandlerPropertyMetadata( - onMouseDragReleasedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "DragDrop", 9)); - private final ValuePropertyMetadata onMouseEnteredPropertyMetadata = - new EventHandlerPropertyMetadata( - onMouseEnteredName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Mouse", 3)); - private final ValuePropertyMetadata onMouseExitedPropertyMetadata = - new EventHandlerPropertyMetadata( - onMouseExitedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Mouse", 4)); - private final ValuePropertyMetadata onMouseMovedPropertyMetadata = - new EventHandlerPropertyMetadata( - onMouseMovedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Mouse", 5)); - private final ValuePropertyMetadata onMousePressedPropertyMetadata = - new EventHandlerPropertyMetadata( - onMousePressedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Mouse", 6)); - private final ValuePropertyMetadata onMouseReleasedPropertyMetadata = - new EventHandlerPropertyMetadata( - onMouseReleasedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Mouse", 7)); - private final ValuePropertyMetadata onRotatePropertyMetadata = - new EventHandlerPropertyMetadata( - onRotateName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Rotation", 0)); - private final ValuePropertyMetadata onRotationFinishedPropertyMetadata = - new EventHandlerPropertyMetadata( - onRotationFinishedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Rotation", 2)); - private final ValuePropertyMetadata onRotationStartedPropertyMetadata = - new EventHandlerPropertyMetadata( - onRotationStartedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Rotation", 1)); - private final ValuePropertyMetadata onScrollPropertyMetadata = - new EventHandlerPropertyMetadata( - onScrollName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Mouse", 8)); - private final ValuePropertyMetadata onScrollFinishedPropertyMetadata = - new EventHandlerPropertyMetadata( - onScrollFinishedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Mouse", 10)); - private final ValuePropertyMetadata onScrollStartedPropertyMetadata = - new EventHandlerPropertyMetadata( - onScrollStartedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Mouse", 9)); - private final ValuePropertyMetadata onScrollToPropertyMetadata = - new EventHandlerPropertyMetadata( - onScrollToName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Mouse", 11)); - private final ValuePropertyMetadata onScrollToColumnPropertyMetadata = - new EventHandlerPropertyMetadata( - onScrollToColumnName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Mouse", 12)); - private final ValuePropertyMetadata onSelectionChangedPropertyMetadata = - new EventHandlerPropertyMetadata( - onSelectionChangedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Edit", 3)); - private final ValuePropertyMetadata onShowingPropertyMetadata = - new EventHandlerPropertyMetadata( - onShowingName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "HideShow", 3)); - private final ValuePropertyMetadata onShownPropertyMetadata = - new EventHandlerPropertyMetadata( - onShownName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "HideShow", 4)); - private final ValuePropertyMetadata onSortPropertyMetadata = - new EventHandlerPropertyMetadata( - onSortName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Main", 3)); - private final ValuePropertyMetadata onSwipeDownPropertyMetadata = - new EventHandlerPropertyMetadata( - onSwipeDownName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Swipe", 3)); - private final ValuePropertyMetadata onSwipeLeftPropertyMetadata = - new EventHandlerPropertyMetadata( - onSwipeLeftName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Swipe", 0)); - private final ValuePropertyMetadata onSwipeRightPropertyMetadata = - new EventHandlerPropertyMetadata( - onSwipeRightName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Swipe", 1)); - private final ValuePropertyMetadata onSwipeUpPropertyMetadata = - new EventHandlerPropertyMetadata( - onSwipeUpName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Swipe", 2)); - private final ValuePropertyMetadata onTouchMovedPropertyMetadata = - new EventHandlerPropertyMetadata( - onTouchMovedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Touch", 0)); - private final ValuePropertyMetadata onTouchPressedPropertyMetadata = - new EventHandlerPropertyMetadata( - onTouchPressedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Touch", 1)); - private final ValuePropertyMetadata onTouchReleasedPropertyMetadata = - new EventHandlerPropertyMetadata( - onTouchReleasedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Touch", 2)); - private final ValuePropertyMetadata onTouchStationaryPropertyMetadata = - new EventHandlerPropertyMetadata( - onTouchStationaryName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Touch", 3)); - private final ValuePropertyMetadata onZoomPropertyMetadata = - new EventHandlerPropertyMetadata( - onZoomName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Zoom", 0)); - private final ValuePropertyMetadata onZoomFinishedPropertyMetadata = - new EventHandlerPropertyMetadata( - onZoomFinishedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Zoom", 2)); - private final ValuePropertyMetadata onZoomStartedPropertyMetadata = - new EventHandlerPropertyMetadata( - onZoomStartedName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Code", "Zoom", 1)); - private final ValuePropertyMetadata opacityPropertyMetadata = - new DoublePropertyMetadata( - opacityName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.OPACITY, - true, /* readWrite */ - 1.0, /* defaultValue */ - new InspectorPath("Properties", "Node", 2)); - private final ValuePropertyMetadata opaqueInsetsPropertyMetadata = - new InsetsPropertyMetadata( - opaqueInsetsName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Properties", "Node", 12)); - private final ValuePropertyMetadata orientation_HORIZONTAL_PropertyMetadata = - new EnumerationPropertyMetadata( - orientationName, - javafx.geometry.Orientation.class, - true, /* readWrite */ - javafx.geometry.Orientation.HORIZONTAL, /* defaultValue */ - new InspectorPath("Properties", "Node", 3)); - private final ValuePropertyMetadata orientation_VERTICAL_PropertyMetadata = - new EnumerationPropertyMetadata( - orientationName, - javafx.geometry.Orientation.class, - true, /* readWrite */ - javafx.geometry.Orientation.VERTICAL, /* defaultValue */ - new InspectorPath("Properties", "Node", 3)); - private final ValuePropertyMetadata paddingPropertyMetadata = - new InsetsPropertyMetadata( - paddingName, - true, /* readWrite */ - javafx.geometry.Insets.EMPTY, /* defaultValue */ - new InspectorPath("Layout", "Internal", 2)); - private final ValuePropertyMetadata pageCountPropertyMetadata = - new IntegerPropertyMetadata( - pageCountName, - true, /* readWrite */ - 2147483647, /* defaultValue */ - new InspectorPath("Properties", "Pagination", 2)); - private final ComponentPropertyMetadata panesPropertyMetadata = - new ComponentPropertyMetadata( - panesName, - TitledPaneMetadata, - true); /* collection */ - private final ValuePropertyMetadata pannablePropertyMetadata = - new BooleanPropertyMetadata( - pannableName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 30)); - private final ValuePropertyMetadata percentHeightPropertyMetadata = - new DoublePropertyMetadata( - percentHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.PERCENTAGE, - true, /* readWrite */ - -1.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 20)); - private final ValuePropertyMetadata percentWidthPropertyMetadata = - new DoublePropertyMetadata( - percentWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.PERCENTAGE, - true, /* readWrite */ - -1.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 19)); - private final ValuePropertyMetadata pickOnBounds_false_PropertyMetadata = - new BooleanPropertyMetadata( - pickOnBoundsName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Extras", 8)); - private final ValuePropertyMetadata pickOnBounds_true_PropertyMetadata = - new BooleanPropertyMetadata( - pickOnBoundsName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Extras", 8)); - private final ComponentPropertyMetadata placeholderPropertyMetadata = - new ComponentPropertyMetadata( - placeholderName, - NodeMetadata, - false); /* collection */ - private final ValuePropertyMetadata pointsPropertyMetadata = - new DoubleListPropertyMetadata( - pointsName, - true, /* readWrite */ - Collections.emptyList(), /* defaultValue */ - new InspectorPath("Layout", "Position", 4)); - private final ValuePropertyMetadata popupSidePropertyMetadata = - new EnumerationPropertyMetadata( - popupSideName, - javafx.geometry.Side.class, - true, /* readWrite */ - javafx.geometry.Side.BOTTOM, /* defaultValue */ - new InspectorPath("Properties", "Specific", 31)); - private final ValuePropertyMetadata prefColumnCount_40_PropertyMetadata = - new IntegerPropertyMetadata( - prefColumnCountName, - true, /* readWrite */ - 40, /* defaultValue */ - new InspectorPath("Layout", "Size", 9)); - private final ValuePropertyMetadata prefColumnCount_12_PropertyMetadata = - new IntegerPropertyMetadata( - prefColumnCountName, - true, /* readWrite */ - 12, /* defaultValue */ - new InspectorPath("Layout", "Size", 9)); - private final ValuePropertyMetadata prefColumnsPropertyMetadata = - new IntegerPropertyMetadata( - prefColumnsName, - true, /* readWrite */ - 5, /* defaultValue */ - new InspectorPath("Layout", "Specific", 18)); - private final ValuePropertyMetadata prefHeight_COMPUTED_PropertyMetadata = - new DoublePropertyMetadata( - prefHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_COMPUTED_SIZE, - true, /* readWrite */ - -1.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 4)); - private final ValuePropertyMetadata prefHeight_60000_PropertyMetadata = - new DoublePropertyMetadata( - prefHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_COMPUTED_SIZE, - true, /* readWrite */ - 600.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 4)); - private final ValuePropertyMetadata prefRowCountPropertyMetadata = - new IntegerPropertyMetadata( - prefRowCountName, - true, /* readWrite */ - 10, /* defaultValue */ - new InspectorPath("Layout", "Size", 10)); - private final ValuePropertyMetadata prefRowsPropertyMetadata = - new IntegerPropertyMetadata( - prefRowsName, - true, /* readWrite */ - 5, /* defaultValue */ - new InspectorPath("Layout", "Specific", 19)); - private final ValuePropertyMetadata prefTileHeightPropertyMetadata = - new DoublePropertyMetadata( - prefTileHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - -1.0, /* defaultValue */ - new InspectorPath("Layout", "Specific", 17)); - private final ValuePropertyMetadata prefTileWidthPropertyMetadata = - new DoublePropertyMetadata( - prefTileWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - -1.0, /* defaultValue */ - new InspectorPath("Layout", "Specific", 16)); - private final ValuePropertyMetadata prefViewportHeightPropertyMetadata = - new DoublePropertyMetadata( - prefViewportHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Specific", 9)); - private final ValuePropertyMetadata prefViewportWidthPropertyMetadata = - new DoublePropertyMetadata( - prefViewportWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Specific", 8)); - private final ValuePropertyMetadata prefWidth_COMPUTED_PropertyMetadata = - new DoublePropertyMetadata( - prefWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_COMPUTED_SIZE, - true, /* readWrite */ - -1.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 3)); - private final ValuePropertyMetadata prefWidth_8000_PropertyMetadata = - new DoublePropertyMetadata( - prefWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_COMPUTED_SIZE, - true, /* readWrite */ - 80.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 3)); - private final ValuePropertyMetadata prefWidth_80000_PropertyMetadata = - new DoublePropertyMetadata( - prefWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.USE_COMPUTED_SIZE, - true, /* readWrite */ - 800.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 3)); - private final ValuePropertyMetadata prefWrapLengthPropertyMetadata = - new DoublePropertyMetadata( - prefWrapLengthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 400.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 75)); - private final ValuePropertyMetadata preserveRatio_false_PropertyMetadata = - new BooleanPropertyMetadata( - preserveRatioName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 32)); - private final ValuePropertyMetadata preserveRatio_true_PropertyMetadata = - new BooleanPropertyMetadata( - preserveRatioName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 32)); - private final ValuePropertyMetadata progressPropertyMetadata = - new DoublePropertyMetadata( - progressName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.PROGRESS, - true, /* readWrite */ - -1.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 33)); - private final ValuePropertyMetadata promptTextPropertyMetadata = - new StringPropertyMetadata( - promptTextName, - true, /* readWrite */ - "", /* defaultValue */ - new InspectorPath("Properties", "Text", 3)); - private final ValuePropertyMetadata radius_0_PropertyMetadata = - new DoublePropertyMetadata( - radiusName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 11)); - private final ValuePropertyMetadata radius_100_PropertyMetadata = - new DoublePropertyMetadata( - radiusName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 1.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 11)); - private final ValuePropertyMetadata radiusXPropertyMetadata = - new DoublePropertyMetadata( - radiusXName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 12)); - private final ValuePropertyMetadata radiusYPropertyMetadata = - new DoublePropertyMetadata( - radiusYName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 13)); - private final ValuePropertyMetadata resizable_Boolean_ro_PropertyMetadata = - new BooleanPropertyMetadata( - resizableName, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Layout", "Extras", 3)); - private final ValuePropertyMetadata resizable_Boolean_PropertyMetadata = - new BooleanPropertyMetadata( - resizableName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Layout", "Extras", 3)); - private final ComponentPropertyMetadata rightPropertyMetadata = - new ComponentPropertyMetadata( - rightName, - NodeMetadata, - false); /* collection */ - private final ValuePropertyMetadata rotatePropertyMetadata = - new DoublePropertyMetadata( - rotateName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.ANGLE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Transforms", 0)); - private final ValuePropertyMetadata rotateGraphicPropertyMetadata = - new BooleanPropertyMetadata( - rotateGraphicName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 67)); - private final ValuePropertyMetadata rotationAxisPropertyMetadata = - new Point3DPropertyMetadata( - rotationAxisName, - true, /* readWrite */ - new javafx.geometry.Point3D(0.0, 0.0, 1.0), /* defaultValue */ - new InspectorPath("Layout", "Transforms", 1)); - private final ComponentPropertyMetadata rowConstraintsPropertyMetadata = - new ComponentPropertyMetadata( - rowConstraintsName, - RowConstraintsMetadata, - true); /* collection */ - private final ValuePropertyMetadata rowValignmentPropertyMetadata = - new EnumerationPropertyMetadata( - rowValignmentName, - javafx.geometry.VPos.class, - true, /* readWrite */ - javafx.geometry.VPos.CENTER, /* defaultValue */ - new InspectorPath("Properties", "Specific", 51)); - private final ValuePropertyMetadata scalePropertyMetadata = - new DoublePropertyMetadata( - scaleName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Properties", "Specific", 82)); - private final ValuePropertyMetadata scaleShapePropertyMetadata = - new BooleanPropertyMetadata( - scaleShapeName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Node", 9)); - private final ValuePropertyMetadata scaleXPropertyMetadata = - new DoublePropertyMetadata( - scaleXName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 1.0, /* defaultValue */ - new InspectorPath("Layout", "Transforms", 2)); - private final ValuePropertyMetadata scaleYPropertyMetadata = - new DoublePropertyMetadata( - scaleYName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 1.0, /* defaultValue */ - new InspectorPath("Layout", "Transforms", 3)); - private final ValuePropertyMetadata scaleZPropertyMetadata = - new DoublePropertyMetadata( - scaleZName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 1.0, /* defaultValue */ - new InspectorPath("Layout", "Transforms", 4)); - private final ComponentPropertyMetadata scopePropertyMetadata = - new ComponentPropertyMetadata( - scopeName, - NodeMetadata, - true); /* collection */ - private final ValuePropertyMetadata scrollLeftPropertyMetadata = - new DoublePropertyMetadata( - scrollLeftName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Text", 16)); - private final ValuePropertyMetadata scrollTopPropertyMetadata = - new DoublePropertyMetadata( - scrollTopName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Text", 17)); - private final ValuePropertyMetadata selectionTypePropertyMetadata = - new EnumerationPropertyMetadata( - selectionTypeName, - javafx.scene.control.SelectionMode.class, - true, /* readWrite */ - SelectionMode.SINGLE, - new InspectorPath("Properties", "Specific", 0)); - private final ValuePropertyMetadata selected_Boolean_PropertyMetadata = - new BooleanPropertyMetadata( - selectedName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 35)); - private final ValuePropertyMetadata selected_Boolean_ro_PropertyMetadata = - new BooleanPropertyMetadata( - selectedName, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Properties", "Specific", 35)); - private final ComponentPropertyMetadata shapePropertyMetadata = - new ComponentPropertyMetadata( - shapeName, - ShapeMetadata, - false); /* collection */ - private final ValuePropertyMetadata showRootPropertyMetadata = - new BooleanPropertyMetadata( - showRootName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 52)); - private final ValuePropertyMetadata showTickLabelsPropertyMetadata = - new BooleanPropertyMetadata( - showTickLabelsName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 83)); - private final ValuePropertyMetadata showTickMarksPropertyMetadata = - new BooleanPropertyMetadata( - showTickMarksName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 76)); - private final ValuePropertyMetadata showWeekNumbersPropertyMetadata = - new BooleanPropertyMetadata( - showWeekNumbersName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 127)); - private final ValuePropertyMetadata side_NULL_PropertyMetadata = - new EnumerationPropertyMetadata( - sideName, - javafx.geometry.Side.class, - "BOTTOM", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Properties", "Specific", 36)); - private final ValuePropertyMetadata side_TOP_PropertyMetadata = - new EnumerationPropertyMetadata( - sideName, - javafx.geometry.Side.class, - true, /* readWrite */ - javafx.geometry.Side.TOP, /* defaultValue */ - new InspectorPath("Properties", "Specific", 36)); - private final ValuePropertyMetadata smoothPropertyMetadata = - new BooleanPropertyMetadata( - smoothName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 53)); - private final ValuePropertyMetadata snapToPixelPropertyMetadata = - new BooleanPropertyMetadata( - snapToPixelName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Layout", "Extras", 5)); - private final ValuePropertyMetadata snapToTicksPropertyMetadata = - new BooleanPropertyMetadata( - snapToTicksName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 102)); - private final ValuePropertyMetadata sortablePropertyMetadata = - new BooleanPropertyMetadata( - sortableName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 54)); - private final ValuePropertyMetadata sortModePropertyMetadata = - new EnumerationPropertyMetadata( - sortModeName, - javafx.scene.control.TreeSortMode.class, - true, /* readWrite */ - javafx.scene.control.TreeSortMode.ALL_DESCENDANTS, /* defaultValue */ - new InspectorPath("Properties", "Specific", 56)); - private final ComponentPropertyMetadata sortNodePropertyMetadata = - new ComponentPropertyMetadata( - sortNodeName, - NodeMetadata, - false); /* collection */ - private final ComponentPropertyMetadata sortOrderPropertyMetadata = - new ComponentPropertyMetadata( - sortOrderName, - TableColumnMetadata, - true); /* collection */ - private final ValuePropertyMetadata sortType_SortType_PropertyMetadata = - new EnumerationPropertyMetadata( - sortTypeName, - javafx.scene.control.TableColumn.SortType.class, - true, /* readWrite */ - javafx.scene.control.TableColumn.SortType.ASCENDING, /* defaultValue */ - new InspectorPath("Properties", "Specific", 68)); - private final ValuePropertyMetadata spacingPropertyMetadata = - new DoublePropertyMetadata( - spacingName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Internal", 3)); - private final ValuePropertyMetadata startAnglePropertyMetadata = - new DoublePropertyMetadata( - startAngleName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.ANGLE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 17)); - private final ValuePropertyMetadata startMarginPropertyMetadata = - new DoublePropertyMetadata( - startMarginName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 5.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 92)); - private final ValuePropertyMetadata startXPropertyMetadata = - new DoublePropertyMetadata( - startXName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 5)); - private final ValuePropertyMetadata startYPropertyMetadata = - new DoublePropertyMetadata( - startYName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 6)); - private final ValuePropertyMetadata strikethroughPropertyMetadata = - new BooleanPropertyMetadata( - strikethroughName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Text", 13)); - private final ValuePropertyMetadata stroke_BLACK_PropertyMetadata = - new PaintPropertyMetadata( - strokeName, - true, /* readWrite */ - javafx.scene.paint.Color.BLACK, /* defaultValue */ - new InspectorPath("Properties", "Stroke", 0)); - private final ValuePropertyMetadata stroke_NULL_PropertyMetadata = - new PaintPropertyMetadata( - strokeName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Properties", "Stroke", 0)); - private final ValuePropertyMetadata strokeDashOffsetPropertyMetadata = - new DoublePropertyMetadata( - strokeDashOffsetName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Stroke", 6)); - private final ValuePropertyMetadata strokeLineCapPropertyMetadata = - new EnumerationPropertyMetadata( - strokeLineCapName, - javafx.scene.shape.StrokeLineCap.class, - true, /* readWrite */ - javafx.scene.shape.StrokeLineCap.SQUARE, /* defaultValue */ - new InspectorPath("Properties", "Stroke", 3)); - private final ValuePropertyMetadata strokeLineJoinPropertyMetadata = - new EnumerationPropertyMetadata( - strokeLineJoinName, - javafx.scene.shape.StrokeLineJoin.class, - true, /* readWrite */ - javafx.scene.shape.StrokeLineJoin.MITER, /* defaultValue */ - new InspectorPath("Properties", "Stroke", 4)); - private final ValuePropertyMetadata strokeMiterLimitPropertyMetadata = - new DoublePropertyMetadata( - strokeMiterLimitName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 10.0, /* defaultValue */ - new InspectorPath("Properties", "Stroke", 5)); - private final ValuePropertyMetadata strokeTypePropertyMetadata = - new EnumerationPropertyMetadata( - strokeTypeName, - javafx.scene.shape.StrokeType.class, - true, /* readWrite */ - javafx.scene.shape.StrokeType.CENTERED, /* defaultValue */ - new InspectorPath("Properties", "Stroke", 2)); - private final ValuePropertyMetadata strokeWidthPropertyMetadata = - new DoublePropertyMetadata( - strokeWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 1.0, /* defaultValue */ - new InspectorPath("Properties", "Stroke", 1)); - private final ValuePropertyMetadata stylePropertyMetadata = - new StringPropertyMetadata( - styleName, - true, /* readWrite */ - "", /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 0)); - private final ValuePropertyMetadata styleClass_c4_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("accordion"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c37_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("chart"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c45_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("axis"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c1_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("chart","bar-chart"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c17_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("button"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c35_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("button-bar"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c41_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("radio-button"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c10_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("check-box"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c28_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("menu-item","check-menu-item"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c43_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("choice-box"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c5_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("combo-box-base","color-picker"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c11_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("combo-box-base","combo-box"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c8_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("context-menu"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c25_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("hyperlink"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c27_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("menu-item","custom-menu-item"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c9_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("combo-box-base","date-picker"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c30_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("dialog-pane"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c21_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("html-editor"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c20_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("image-view"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c3_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("label"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c34_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("list-view"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c46_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("media-view"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c29_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("menu-item","menu"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c18_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("menu-bar"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c52_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("menu-button"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c36_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("menu-item"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_empty_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Collections.emptyList(), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c39_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("pagination"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c53_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("text-input","text-field","password-field"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c13_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("progress-bar"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c50_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("progress-indicator"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c7_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("menu-item","radio-menu-item"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c33_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("scroll-bar"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c38_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("scroll-pane"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c31_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("separator"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c23_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("menu-item","custom-menu-item","separator-menu-item"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c40_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("slider"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c24_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("spinner"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c2_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("split-menu-button"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c14_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("split-pane"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c12_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("chart","stacked-bar-chart"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c19_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("tab"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c6_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("tab-pane"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c42_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("table-column"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c49_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("table-view"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c51_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("text-input","text-area"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c47_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("text-input","text-field"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c26_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("titled-pane"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c44_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("toggle-button"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c16_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("tool-bar"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c15_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("tooltip"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c32_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("tree-table-view"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c22_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("tree-view"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata styleClass_c48_PropertyMetadata = - new StringListPropertyMetadata( - styleClassName, - true, /* readWrite */ - Arrays.asList("web-view"), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 1)); - private final ValuePropertyMetadata stylesheetsPropertyMetadata = - new StringListPropertyMetadata( - stylesheetsName, - true, /* readWrite */ - Collections.emptyList(), /* defaultValue */ - new InspectorPath("Properties", "JavaFX CSS", 2)); - private final ValuePropertyMetadata sweepFlagPropertyMetadata = - new BooleanPropertyMetadata( - sweepFlagName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 124)); - private final ValuePropertyMetadata tabClosingPolicyPropertyMetadata = - new EnumerationPropertyMetadata( - tabClosingPolicyName, - javafx.scene.control.TabPane.TabClosingPolicy.class, - true, /* readWrite */ - javafx.scene.control.TabPane.TabClosingPolicy.SELECTED_TAB, /* defaultValue */ - new InspectorPath("Properties", "Specific", 57)); - private final ValuePropertyMetadata tableMenuButtonVisiblePropertyMetadata = - new BooleanPropertyMetadata( - tableMenuButtonVisibleName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 58)); - private final ValuePropertyMetadata tabMaxHeightPropertyMetadata = - new DoublePropertyMetadata( - tabMaxHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - Double.MAX_VALUE, /* defaultValue */ - new InspectorPath("Layout", "Specific", 15)); - private final ValuePropertyMetadata tabMaxWidthPropertyMetadata = - new DoublePropertyMetadata( - tabMaxWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - Double.MAX_VALUE, /* defaultValue */ - new InspectorPath("Layout", "Specific", 14)); - private final ValuePropertyMetadata tabMinHeightPropertyMetadata = - new DoublePropertyMetadata( - tabMinHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Specific", 13)); - private final ValuePropertyMetadata tabMinWidthPropertyMetadata = - new DoublePropertyMetadata( - tabMinWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Specific", 12)); - private final ComponentPropertyMetadata tabsPropertyMetadata = - new ComponentPropertyMetadata( - tabsName, - TabMetadata, - true); /* collection */ - private final ValuePropertyMetadata textPropertyMetadata = - new StringPropertyMetadata( - textName, - true, /* readWrite */ - "", /* defaultValue */ - new InspectorPath("Properties", "Text", 4)); - private final ValuePropertyMetadata textAlignmentPropertyMetadata = - new EnumerationPropertyMetadata( - textAlignmentName, - javafx.scene.text.TextAlignment.class, - true, /* readWrite */ - javafx.scene.text.TextAlignment.LEFT, /* defaultValue */ - new InspectorPath("Properties", "Text", 9)); - private final ValuePropertyMetadata textFillPropertyMetadata = - new PaintPropertyMetadata( - textFillName, - true, /* readWrite */ - javafx.scene.paint.Color.BLACK, /* defaultValue */ - new InspectorPath("Properties", "Text", 7)); - private final ComponentPropertyMetadata textFormatterPropertyMetadata = - new ComponentPropertyMetadata( - textFormatterName, - TextFormatterMetadata, - false); /* collection */ - private final ValuePropertyMetadata textOriginPropertyMetadata = - new EnumerationPropertyMetadata( - textOriginName, - javafx.geometry.VPos.class, - true, /* readWrite */ - javafx.geometry.VPos.BASELINE, /* defaultValue */ - new InspectorPath("Layout", "Extras", 6)); - private final ValuePropertyMetadata textOverrunPropertyMetadata = - new EnumerationPropertyMetadata( - textOverrunName, - javafx.scene.control.OverrunStyle.class, - true, /* readWrite */ - javafx.scene.control.OverrunStyle.ELLIPSIS, /* defaultValue */ - new InspectorPath("Properties", "Text", 11)); - private final ValuePropertyMetadata tickLabelFillPropertyMetadata = - new PaintPropertyMetadata( - tickLabelFillName, - true, /* readWrite */ - javafx.scene.paint.Color.BLACK, /* defaultValue */ - new InspectorPath("Properties", "Specific", 97)); - private final ValuePropertyMetadata tickLabelFontPropertyMetadata = - new FontPropertyMetadata( - tickLabelFontName, - true, /* readWrite */ - javafx.scene.text.Font.font("System",8.0), /* defaultValue */ - new InspectorPath("Properties", "Specific", 93)); - private final ValuePropertyMetadata tickLabelFormatterPropertyMetadata = - new StringConverterPropertyMetadata( - tickLabelFormatterName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Properties", "Specific", 86)); - private final ValuePropertyMetadata tickLabelGapPropertyMetadata = - new DoublePropertyMetadata( - tickLabelGapName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 3.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 103)); - private final ValuePropertyMetadata tickLabelRotationPropertyMetadata = - new DoublePropertyMetadata( - tickLabelRotationName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.ANGLE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 112)); - private final ValuePropertyMetadata tickLabelsVisiblePropertyMetadata = - new BooleanPropertyMetadata( - tickLabelsVisibleName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 85)); - private final ValuePropertyMetadata tickLengthPropertyMetadata = - new DoublePropertyMetadata( - tickLengthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 8.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 116)); - private final ValuePropertyMetadata tickMarksPropertyMetadata = - new TickMarkListPropertyMetadata( - tickMarksName, - true, /* readWrite */ - Collections.emptyList(), /* defaultValue */ - new InspectorPath("Properties", "Specific", 84)); - private final ValuePropertyMetadata tickMarkVisiblePropertyMetadata = - new BooleanPropertyMetadata( - tickMarkVisibleName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 114)); - private final ValuePropertyMetadata tickUnitPropertyMetadata = - new DoublePropertyMetadata( - tickUnitName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 5.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 120)); - private final ValuePropertyMetadata tileAlignmentPropertyMetadata = - new EnumerationPropertyMetadata( - tileAlignmentName, - javafx.geometry.Pos.class, - true, /* readWrite */ - javafx.geometry.Pos.CENTER, /* defaultValue */ - new InspectorPath("Properties", "Specific", 59)); - private final ValuePropertyMetadata tileHeightPropertyMetadata = - new DoublePropertyMetadata( - tileHeightName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Layout", "Specific", 21)); - private final ValuePropertyMetadata tileWidthPropertyMetadata = - new DoublePropertyMetadata( - tileWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Layout", "Specific", 20)); - private final ComponentPropertyMetadata titleNodes_Node_PropertyMetadata = - new ComponentPropertyMetadata( - titleNodesName, - NodeMetadata, - true); /* collection */ - private final ValuePropertyMetadata titlePropertyMetadata = - new StringPropertyMetadata( - titleName, - true, /* readWrite */ - "", /* defaultValue */ - new InspectorPath("Properties", "Specific", 37)); - private final ValuePropertyMetadata titleSidePropertyMetadata = - new EnumerationPropertyMetadata( - titleSideName, - javafx.geometry.Side.class, - true, /* readWrite */ - javafx.geometry.Side.TOP, /* defaultValue */ - new InspectorPath("Properties", "Specific", 60)); - private final ComponentPropertyMetadata toggles_ToggleButton_PropertyMetadata = - new ComponentPropertyMetadata( - togglesName, - ToggleButtonMetadata, - true /* collection */ - ); - private final ValuePropertyMetadata toggleGroupPropertyMetadata = - new ToggleGroupPropertyMetadata( - toggleGroupName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Properties", "Specific", 38)); - private final ComponentPropertyMetadata tooltipPropertyMetadata = - new ComponentPropertyMetadata( - tooltipName, - TooltipMetadata, - false); /* collection */ - private final ComponentPropertyMetadata topPropertyMetadata = - new ComponentPropertyMetadata( - topName, - NodeMetadata, - false); /* collection */ - private final ValuePropertyMetadata translateXPropertyMetadata = - new DoublePropertyMetadata( - translateXName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Transforms", 5)); - private final ValuePropertyMetadata translateYPropertyMetadata = - new DoublePropertyMetadata( - translateYName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Transforms", 6)); - private final ValuePropertyMetadata translateZPropertyMetadata = - new DoublePropertyMetadata( - translateZName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Transforms", 7)); - private final ComponentPropertyMetadata treeColumnPropertyMetadata = - new ComponentPropertyMetadata( - treeColumnName, - TreeTableColumnMetadata, - false); /* collection */ - private final ValuePropertyMetadata typePropertyMetadata = - new EnumerationPropertyMetadata( - typeName, - javafx.scene.shape.ArcType.class, - true, /* readWrite */ - javafx.scene.shape.ArcType.OPEN, /* defaultValue */ - new InspectorPath("Properties", "Specific", 61)); - private final ValuePropertyMetadata underlinePropertyMetadata = - new BooleanPropertyMetadata( - underlineName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Text", 14)); - private final ValuePropertyMetadata unitIncrementPropertyMetadata = - new DoublePropertyMetadata( - unitIncrementName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 1.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 69)); - private final ValuePropertyMetadata upperBoundPropertyMetadata = - new DoublePropertyMetadata( - upperBoundName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 100.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 98)); - private final ValuePropertyMetadata userAgentStylesheetPropertyMetadata = - new StringPropertyMetadata( - userAgentStylesheetName, - true, /* readWrite */ - "", /* defaultValue */ - new InspectorPath("Properties", "Specific", 129)); - private final ValuePropertyMetadata valignment_NULL_PropertyMetadata = - new EnumerationPropertyMetadata( - valignmentName, - javafx.geometry.VPos.class, - "INHERIT", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Layout", "Specific", 5)); - private final ValuePropertyMetadata valignment_CENTER_PropertyMetadata = - new EnumerationPropertyMetadata( - valignmentName, - javafx.geometry.VPos.class, - true, /* readWrite */ - javafx.geometry.VPos.CENTER, /* defaultValue */ - new InspectorPath("Layout", "Specific", 5)); - private final ValuePropertyMetadata value_Object_PropertyMetadata = - new ObjectPropertyMetadata( - valueName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Properties", "Specific", 70)); - private final ValuePropertyMetadata value_Color_PropertyMetadata = - new ColorPropertyMetadata( - valueName, - true, /* readWrite */ - javafx.scene.paint.Color.WHITE, /* defaultValue */ - new InspectorPath("Properties", "Specific", 70)); - private final ValuePropertyMetadata value_Double_PropertyMetadata = - new DoublePropertyMetadata( - valueName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 70)); - private final ValuePropertyMetadata value_Object_ro_PropertyMetadata = - new ObjectPropertyMetadata( - valueName, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Properties", "Specific", 70)); - private final ValuePropertyMetadata vbarPolicyPropertyMetadata = - new EnumerationPropertyMetadata( - vbarPolicyName, - javafx.scene.control.ScrollPane.ScrollBarPolicy.class, - true, /* readWrite */ - javafx.scene.control.ScrollPane.ScrollBarPolicy.AS_NEEDED, /* defaultValue */ - new InspectorPath("Properties", "Specific", 71)); - private final ValuePropertyMetadata verticalFieldOfViewPropertyMetadata = - new BooleanPropertyMetadata( - verticalFieldOfViewName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "3D", 5)); - private final ValuePropertyMetadata verticalGridLinesVisiblePropertyMetadata = - new BooleanPropertyMetadata( - verticalGridLinesVisibleName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 115)); - private final ValuePropertyMetadata verticalZeroLineVisiblePropertyMetadata = - new BooleanPropertyMetadata( - verticalZeroLineVisibleName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Specific", 117)); - private final ValuePropertyMetadata vgapPropertyMetadata = - new DoublePropertyMetadata( - vgapName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Internal", 1)); - private final ValuePropertyMetadata vgrowPropertyMetadata = - new EnumerationPropertyMetadata( - vgrowName, - javafx.scene.layout.Priority.class, - "INHERIT", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Layout", "Specific", 3)); - private final ValuePropertyMetadata viewportPropertyMetadata = - new Rectangle2DPropertyMetadata( - viewportName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Layout", "Specific", 0)); - private final ValuePropertyMetadata viewportBoundsPropertyMetadata = - new BoundsPropertyMetadata( - viewportBoundsName, - true, /* readWrite */ - new javafx.geometry.BoundingBox(0.0, 0.0, 0.0, 0.0), /* defaultValue */ - new InspectorPath("Layout", "Bounds", 1)); - private final ValuePropertyMetadata visiblePropertyMetadata = - new BooleanPropertyMetadata( - visibleName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Properties", "Node", 5)); - private final ValuePropertyMetadata visibleAmountPropertyMetadata = - new DoublePropertyMetadata( - visibleAmountName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 15.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 87)); - private final ValuePropertyMetadata visibleRowCountPropertyMetadata = - new IntegerPropertyMetadata( - visibleRowCountName, - true, /* readWrite */ - 10, /* defaultValue */ - new InspectorPath("Properties", "Specific", 41)); - private final ValuePropertyMetadata visitedPropertyMetadata = - new BooleanPropertyMetadata( - visitedName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Specific", 42)); - private final ValuePropertyMetadata vmaxPropertyMetadata = - new DoublePropertyMetadata( - vmaxName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 1.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 109)); - private final ValuePropertyMetadata vminPropertyMetadata = - new DoublePropertyMetadata( - vminName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 105)); - private final ValuePropertyMetadata vvaluePropertyMetadata = - new DoublePropertyMetadata( - vvalueName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 107)); - private final ValuePropertyMetadata width_Double_200_PropertyMetadata = - new DoublePropertyMetadata( - widthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 2.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 7)); - private final ValuePropertyMetadata width_Double_0_PropertyMetadata = - new DoublePropertyMetadata( - widthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Size", 7)); - private final ValuePropertyMetadata width_Double_ro_PropertyMetadata = - new DoublePropertyMetadata( - widthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Layout", "Size", 7)); - private final ValuePropertyMetadata wrappingWidthPropertyMetadata = - new DoublePropertyMetadata( - wrappingWidthName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Text", 10)); - private final ValuePropertyMetadata wrapTextPropertyMetadata = - new BooleanPropertyMetadata( - wrapTextName, - true, /* readWrite */ - false, /* defaultValue */ - new InspectorPath("Properties", "Text", 8)); - private final ValuePropertyMetadata x_0_PropertyMetadata = - new DoublePropertyMetadata( - xName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 12)); - private final ValuePropertyMetadata x_NaN_PropertyMetadata = - new DoublePropertyMetadata( - xName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - Double.NaN, /* defaultValue */ - new InspectorPath("Layout", "Position", 12)); - private final ComponentPropertyMetadata XAxisPropertyMetadata = - new ComponentPropertyMetadata( - XAxisName, - AxisMetadata, - false); /* collection */ - private final ValuePropertyMetadata XAxisRotationPropertyMetadata = - new DoublePropertyMetadata( - XAxisRotationName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.ANGLE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 125)); - private final ValuePropertyMetadata y_0_PropertyMetadata = - new DoublePropertyMetadata( - yName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - 0.0, /* defaultValue */ - new InspectorPath("Layout", "Position", 13)); - private final ValuePropertyMetadata y_NaN_PropertyMetadata = - new DoublePropertyMetadata( - yName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - true, /* readWrite */ - Double.NaN, /* defaultValue */ - new InspectorPath("Layout", "Position", 13)); - private final ComponentPropertyMetadata YAxisPropertyMetadata = - new ComponentPropertyMetadata( - YAxisName, - AxisMetadata, - false); /* collection */ - private final ValuePropertyMetadata zeroPositionPropertyMetadata = - new DoublePropertyMetadata( - zeroPositionName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.COORDINATE, - false, /* readWrite */ - null, /* No defaultValue for R/O property */ - new InspectorPath("Properties", "Specific", 118)); - private final ValuePropertyMetadata zoomPropertyMetadata = - new DoublePropertyMetadata( - zoomName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.SIZE, - true, /* readWrite */ - 1.0, /* defaultValue */ - new InspectorPath("Properties", "Specific", 123)); - private final ValuePropertyMetadata SplitPane_resizableWithParentPropertyMetadata = - new BooleanPropertyMetadata( - SplitPane_resizableWithParentName, - true, /* readWrite */ - true, /* defaultValue */ - new InspectorPath("Layout", "Split Pane Constraints", 0)); - private final ValuePropertyMetadata AnchorPane_bottomAnchorPropertyMetadata = - new DoublePropertyMetadata( - AnchorPane_bottomAnchorName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.NULLABLE_COORDINATE, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Layout", "Anchor Pane Constraints", 0)); - private final ValuePropertyMetadata AnchorPane_leftAnchorPropertyMetadata = - new DoublePropertyMetadata( - AnchorPane_leftAnchorName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.NULLABLE_COORDINATE, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Layout", "Anchor Pane Constraints", 1)); - private final ValuePropertyMetadata AnchorPane_rightAnchorPropertyMetadata = - new DoublePropertyMetadata( - AnchorPane_rightAnchorName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.NULLABLE_COORDINATE, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Layout", "Anchor Pane Constraints", 2)); - private final ValuePropertyMetadata AnchorPane_topAnchorPropertyMetadata = - new DoublePropertyMetadata( - AnchorPane_topAnchorName, - com.oracle.javafx.scenebuilder.kit.metadata.property.value.DoublePropertyMetadata.DoubleKind.NULLABLE_COORDINATE, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Layout", "Anchor Pane Constraints", 3)); - private final ValuePropertyMetadata BorderPane_alignmentPropertyMetadata = - new EnumerationPropertyMetadata( - BorderPane_alignmentName, - javafx.geometry.Pos.class, - "AUTOMATIC", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Layout", "Border Pane Constraints", 0)); - private final ValuePropertyMetadata BorderPane_marginPropertyMetadata = - new InsetsPropertyMetadata( - BorderPane_marginName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Layout", "Border Pane Constraints", 1)); - private final ValuePropertyMetadata FlowPane_marginPropertyMetadata = - new InsetsPropertyMetadata( - FlowPane_marginName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Layout", "Flow Pane Constraints", 0)); - private final ValuePropertyMetadata GridPane_columnIndexPropertyMetadata = - new IntegerPropertyMetadata( - GridPane_columnIndexName, - true, /* readWrite */ - 0, /* defaultValue */ - new InspectorPath("Layout", "Grid Pane Constraints", 1)); - private final ValuePropertyMetadata GridPane_columnSpanPropertyMetadata = - new IntegerPropertyMetadata( - GridPane_columnSpanName, - true, /* readWrite */ - 1, /* defaultValue */ - new InspectorPath("Layout", "Grid Pane Constraints", 3)); - private final ValuePropertyMetadata GridPane_halignmentPropertyMetadata = - new EnumerationPropertyMetadata( - GridPane_halignmentName, - javafx.geometry.HPos.class, - "INHERIT", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Layout", "Grid Pane Constraints", 7)); - private final ValuePropertyMetadata GridPane_hgrowPropertyMetadata = - new EnumerationPropertyMetadata( - GridPane_hgrowName, - javafx.scene.layout.Priority.class, - "INHERIT", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Layout", "Grid Pane Constraints", 4)); - private final ValuePropertyMetadata GridPane_marginPropertyMetadata = - new InsetsPropertyMetadata( - GridPane_marginName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Layout", "Grid Pane Constraints", 8)); - private final ValuePropertyMetadata GridPane_rowIndexPropertyMetadata = - new IntegerPropertyMetadata( - GridPane_rowIndexName, - true, /* readWrite */ - 0, /* defaultValue */ - new InspectorPath("Layout", "Grid Pane Constraints", 0)); - private final ValuePropertyMetadata GridPane_rowSpanPropertyMetadata = - new IntegerPropertyMetadata( - GridPane_rowSpanName, - true, /* readWrite */ - 1, /* defaultValue */ - new InspectorPath("Layout", "Grid Pane Constraints", 2)); - private final ValuePropertyMetadata GridPane_valignmentPropertyMetadata = - new EnumerationPropertyMetadata( - GridPane_valignmentName, - javafx.geometry.VPos.class, - "INHERIT", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Layout", "Grid Pane Constraints", 6)); - private final ValuePropertyMetadata GridPane_vgrowPropertyMetadata = - new EnumerationPropertyMetadata( - GridPane_vgrowName, - javafx.scene.layout.Priority.class, - "INHERIT", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Layout", "Grid Pane Constraints", 5)); - private final ValuePropertyMetadata HBox_hgrowPropertyMetadata = - new EnumerationPropertyMetadata( - HBox_hgrowName, - javafx.scene.layout.Priority.class, - "INHERIT", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Layout", "HBox Constraints", 0)); - private final ValuePropertyMetadata HBox_marginPropertyMetadata = - new InsetsPropertyMetadata( - HBox_marginName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Layout", "HBox Constraints", 1)); - private final ValuePropertyMetadata StackPane_alignmentPropertyMetadata = - new EnumerationPropertyMetadata( - StackPane_alignmentName, - javafx.geometry.Pos.class, - "INHERIT", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Layout", "Stack Pane Constraints", 0)); - private final ValuePropertyMetadata StackPane_marginPropertyMetadata = - new InsetsPropertyMetadata( - StackPane_marginName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Layout", "Stack Pane Constraints", 1)); - private final ValuePropertyMetadata TilePane_alignmentPropertyMetadata = - new EnumerationPropertyMetadata( - TilePane_alignmentName, - javafx.geometry.Pos.class, - "INHERIT", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Layout", "Tile Pane Constraints", 0)); - private final ValuePropertyMetadata TilePane_marginPropertyMetadata = - new InsetsPropertyMetadata( - TilePane_marginName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Layout", "Tile Pane Constraints", 1)); - private final ValuePropertyMetadata VBox_marginPropertyMetadata = - new InsetsPropertyMetadata( - VBox_marginName, - true, /* readWrite */ - null, /* defaultValue */ - new InspectorPath("Layout", "VBox Constraints", 1)); - private final ValuePropertyMetadata VBox_vgrowPropertyMetadata = - new EnumerationPropertyMetadata( - VBox_vgrowName, - javafx.scene.layout.Priority.class, - "INHERIT", /* null equivalent */ - true, /* readWrite */ - new InspectorPath("Layout", "VBox Constraints", 0)); - - private final ValuePropertyMetadata includeFxmlPropertyMetadata = - new StringListPropertyMetadata( - source, - true, /* readWrite */ - Collections.emptyList(), /* defaultValue */ - new InspectorPath("Properties", "Include FXML file", 2)); - - - @Override - public Map<Class<?>, ComponentClassMetadata> getMetadata() { - Map<Class<?>, ComponentClassMetadata> metadata = new HashMap<Class<?>, ComponentClassMetadata>(); - - // Populate componentClassMap - metadata.put(AccordionMetadata.getKlass(), AccordionMetadata); - metadata.put(AmbientLightMetadata.getKlass(), AmbientLightMetadata); - metadata.put(AnchorPaneMetadata.getKlass(), AnchorPaneMetadata); - metadata.put(ArcMetadata.getKlass(), ArcMetadata); - metadata.put(ArcToMetadata.getKlass(), ArcToMetadata); - metadata.put(AreaChartMetadata.getKlass(), AreaChartMetadata); - metadata.put(AxisMetadata.getKlass(), AxisMetadata); - metadata.put(BarChartMetadata.getKlass(), BarChartMetadata); - metadata.put(BorderPaneMetadata.getKlass(), BorderPaneMetadata); - metadata.put(BoxMetadata.getKlass(), BoxMetadata); - metadata.put(BubbleChartMetadata.getKlass(), BubbleChartMetadata); - metadata.put(ButtonMetadata.getKlass(), ButtonMetadata); - metadata.put(ButtonBarMetadata.getKlass(), ButtonBarMetadata); - metadata.put(ButtonBaseMetadata.getKlass(), ButtonBaseMetadata); - metadata.put(CameraMetadata.getKlass(), CameraMetadata); - metadata.put(CanvasMetadata.getKlass(), CanvasMetadata); - metadata.put(CategoryAxisMetadata.getKlass(), CategoryAxisMetadata); - metadata.put(ChartMetadata.getKlass(), ChartMetadata); - metadata.put(CheckBoxMetadata.getKlass(), CheckBoxMetadata); - metadata.put(CheckMenuItemMetadata.getKlass(), CheckMenuItemMetadata); - metadata.put(ChoiceBoxMetadata.getKlass(), ChoiceBoxMetadata); - metadata.put(CircleMetadata.getKlass(), CircleMetadata); - metadata.put(ClosePathMetadata.getKlass(), ClosePathMetadata); - metadata.put(ColorPickerMetadata.getKlass(), ColorPickerMetadata); - metadata.put(ColumnConstraintsMetadata.getKlass(), ColumnConstraintsMetadata); - metadata.put(ComboBoxMetadata.getKlass(), ComboBoxMetadata); - metadata.put(ComboBoxBaseMetadata.getKlass(), ComboBoxBaseMetadata); - metadata.put(ContextMenuMetadata.getKlass(), ContextMenuMetadata); - metadata.put(ControlMetadata.getKlass(), ControlMetadata); - metadata.put(CubicCurveMetadata.getKlass(), CubicCurveMetadata); - metadata.put(CubicCurveToMetadata.getKlass(), CubicCurveToMetadata); - metadata.put(CustomMenuItemMetadata.getKlass(), CustomMenuItemMetadata); - metadata.put(CylinderMetadata.getKlass(), CylinderMetadata); - metadata.put(DatePickerMetadata.getKlass(), DatePickerMetadata); - metadata.put(DialogPaneMetadata.getKlass(), DialogPaneMetadata); - metadata.put(EllipseMetadata.getKlass(), EllipseMetadata); - metadata.put(FlowPaneMetadata.getKlass(), FlowPaneMetadata); - metadata.put(GridPaneMetadata.getKlass(), GridPaneMetadata); - metadata.put(GroupMetadata.getKlass(), GroupMetadata); - metadata.put(HBoxMetadata.getKlass(), HBoxMetadata); - metadata.put(HLineToMetadata.getKlass(), HLineToMetadata); - metadata.put(HTMLEditorMetadata.getKlass(), HTMLEditorMetadata); - metadata.put(HyperlinkMetadata.getKlass(), HyperlinkMetadata); - metadata.put(ImageViewMetadata.getKlass(), ImageViewMetadata); - metadata.put(LabelMetadata.getKlass(), LabelMetadata); - metadata.put(LabeledMetadata.getKlass(), LabeledMetadata); - metadata.put(LightBaseMetadata.getKlass(), LightBaseMetadata); - metadata.put(LineMetadata.getKlass(), LineMetadata); - metadata.put(LineChartMetadata.getKlass(), LineChartMetadata); - metadata.put(LineToMetadata.getKlass(), LineToMetadata); - metadata.put(ListViewMetadata.getKlass(), ListViewMetadata); - metadata.put(MediaViewMetadata.getKlass(), MediaViewMetadata); - metadata.put(MenuMetadata.getKlass(), MenuMetadata); - metadata.put(MenuBarMetadata.getKlass(), MenuBarMetadata); - metadata.put(MenuButtonMetadata.getKlass(), MenuButtonMetadata); - metadata.put(MenuItemMetadata.getKlass(), MenuItemMetadata); - metadata.put(MeshViewMetadata.getKlass(), MeshViewMetadata); - metadata.put(MoveToMetadata.getKlass(), MoveToMetadata); - metadata.put(NodeMetadata.getKlass(), NodeMetadata); - metadata.put(NumberAxisMetadata.getKlass(), NumberAxisMetadata); - metadata.put(PaginationMetadata.getKlass(), PaginationMetadata); - metadata.put(PaneMetadata.getKlass(), PaneMetadata); - metadata.put(ParallelCameraMetadata.getKlass(), ParallelCameraMetadata); - metadata.put(ParentMetadata.getKlass(), ParentMetadata); - metadata.put(PasswordFieldMetadata.getKlass(), PasswordFieldMetadata); - metadata.put(PathMetadata.getKlass(), PathMetadata); - metadata.put(PathElementMetadata.getKlass(), PathElementMetadata); - metadata.put(PerspectiveCameraMetadata.getKlass(), PerspectiveCameraMetadata); - metadata.put(PieChartMetadata.getKlass(), PieChartMetadata); - metadata.put(PointLightMetadata.getKlass(), PointLightMetadata); - metadata.put(PolygonMetadata.getKlass(), PolygonMetadata); - metadata.put(PolylineMetadata.getKlass(), PolylineMetadata); - metadata.put(PopupControlMetadata.getKlass(), PopupControlMetadata); - metadata.put(PopupWindowMetadata.getKlass(), PopupWindowMetadata); - metadata.put(ProgressBarMetadata.getKlass(), ProgressBarMetadata); - metadata.put(ProgressIndicatorMetadata.getKlass(), ProgressIndicatorMetadata); - metadata.put(QuadCurveMetadata.getKlass(), QuadCurveMetadata); - metadata.put(QuadCurveToMetadata.getKlass(), QuadCurveToMetadata); - metadata.put(RadioButtonMetadata.getKlass(), RadioButtonMetadata); - metadata.put(RadioMenuItemMetadata.getKlass(), RadioMenuItemMetadata); - metadata.put(RectangleMetadata.getKlass(), RectangleMetadata); - metadata.put(RegionMetadata.getKlass(), RegionMetadata); - metadata.put(RowConstraintsMetadata.getKlass(), RowConstraintsMetadata); - metadata.put(SVGPathMetadata.getKlass(), SVGPathMetadata); - metadata.put(ScatterChartMetadata.getKlass(), ScatterChartMetadata); - metadata.put(ScrollBarMetadata.getKlass(), ScrollBarMetadata); - metadata.put(ScrollPaneMetadata.getKlass(), ScrollPaneMetadata); - metadata.put(SeparatorMetadata.getKlass(), SeparatorMetadata); - metadata.put(SeparatorMenuItemMetadata.getKlass(), SeparatorMenuItemMetadata); - metadata.put(ShapeMetadata.getKlass(), ShapeMetadata); - metadata.put(Shape3DMetadata.getKlass(), Shape3DMetadata); - metadata.put(SliderMetadata.getKlass(), SliderMetadata); - metadata.put(SphereMetadata.getKlass(), SphereMetadata); - metadata.put(SpinnerMetadata.getKlass(), SpinnerMetadata); - metadata.put(SplitMenuButtonMetadata.getKlass(), SplitMenuButtonMetadata); - metadata.put(SplitPaneMetadata.getKlass(), SplitPaneMetadata); - metadata.put(StackPaneMetadata.getKlass(), StackPaneMetadata); - metadata.put(StackedAreaChartMetadata.getKlass(), StackedAreaChartMetadata); - metadata.put(StackedBarChartMetadata.getKlass(), StackedBarChartMetadata); - metadata.put(SubSceneMetadata.getKlass(), SubSceneMetadata); - metadata.put(SwingNodeMetadata.getKlass(), SwingNodeMetadata); - metadata.put(TabMetadata.getKlass(), TabMetadata); - metadata.put(TabPaneMetadata.getKlass(), TabPaneMetadata); - metadata.put(TableColumnMetadata.getKlass(), TableColumnMetadata); - metadata.put(TableColumnBaseMetadata.getKlass(), TableColumnBaseMetadata); - metadata.put(TableViewMetadata.getKlass(), TableViewMetadata); - metadata.put(TextMetadata.getKlass(), TextMetadata); - metadata.put(TextAreaMetadata.getKlass(), TextAreaMetadata); - metadata.put(TextFieldMetadata.getKlass(), TextFieldMetadata); - metadata.put(TextFlowMetadata.getKlass(), TextFlowMetadata); - metadata.put(TextFormatterMetadata.getKlass(), TextFormatterMetadata); - metadata.put(TextInputControlMetadata.getKlass(), TextInputControlMetadata); - metadata.put(TilePaneMetadata.getKlass(), TilePaneMetadata); - metadata.put(TitledPaneMetadata.getKlass(), TitledPaneMetadata); - metadata.put(ToggleButtonMetadata.getKlass(), ToggleButtonMetadata); - metadata.put(ToolBarMetadata.getKlass(), ToolBarMetadata); - metadata.put(TooltipMetadata.getKlass(), TooltipMetadata); - metadata.put(TreeTableColumnMetadata.getKlass(), TreeTableColumnMetadata); - metadata.put(TreeTableViewMetadata.getKlass(), TreeTableViewMetadata); - metadata.put(TreeViewMetadata.getKlass(), TreeViewMetadata); - metadata.put(VBoxMetadata.getKlass(), VBoxMetadata); - metadata.put(VLineToMetadata.getKlass(), VLineToMetadata); - metadata.put(ValueAxisMetadata.getKlass(), ValueAxisMetadata); - metadata.put(WebViewMetadata.getKlass(), WebViewMetadata); - metadata.put(XYChartMetadata.getKlass(), XYChartMetadata); - metadata.put(IncludeElementMetadata.getKlass(), IncludeElementMetadata); - - - // ComponentMetadata -> PropertyMetadata - AccordionMetadata.getProperties().add(panesPropertyMetadata); - AccordionMetadata.getProperties().add(styleClass_c4_PropertyMetadata); - - AmbientLightMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - AmbientLightMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - - ArcMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - ArcMetadata.getProperties().add(centerXPropertyMetadata); - ArcMetadata.getProperties().add(centerYPropertyMetadata); - ArcMetadata.getProperties().add(length_Double_PropertyMetadata); - ArcMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - ArcMetadata.getProperties().add(radiusXPropertyMetadata); - ArcMetadata.getProperties().add(radiusYPropertyMetadata); - ArcMetadata.getProperties().add(startAnglePropertyMetadata); - ArcMetadata.getProperties().add(typePropertyMetadata); - - ArcToMetadata.getProperties().add(largeArcFlagPropertyMetadata); - ArcToMetadata.getProperties().add(radiusXPropertyMetadata); - ArcToMetadata.getProperties().add(radiusYPropertyMetadata); - ArcToMetadata.getProperties().add(sweepFlagPropertyMetadata); - ArcToMetadata.getProperties().add(x_0_PropertyMetadata); - ArcToMetadata.getProperties().add(XAxisRotationPropertyMetadata); - ArcToMetadata.getProperties().add(y_0_PropertyMetadata); - - AreaChartMetadata.getProperties().add(createSymbolsPropertyMetadata); - AreaChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); - - AxisMetadata.getProperties().add(animatedPropertyMetadata); - AxisMetadata.getProperties().add(autoRangingPropertyMetadata); - AxisMetadata.getProperties().add(labelPropertyMetadata); - AxisMetadata.getProperties().add(side_NULL_PropertyMetadata); - AxisMetadata.getProperties().add(styleClass_c45_PropertyMetadata); - AxisMetadata.getProperties().add(tickLabelFillPropertyMetadata); - AxisMetadata.getProperties().add(tickLabelFontPropertyMetadata); - AxisMetadata.getProperties().add(tickLabelGapPropertyMetadata); - AxisMetadata.getProperties().add(tickLabelRotationPropertyMetadata); - AxisMetadata.getProperties().add(tickLabelsVisiblePropertyMetadata); - AxisMetadata.getProperties().add(tickLengthPropertyMetadata); - AxisMetadata.getProperties().add(tickMarksPropertyMetadata); - AxisMetadata.getProperties().add(tickMarkVisiblePropertyMetadata); - AxisMetadata.getProperties().add(zeroPositionPropertyMetadata); - - BarChartMetadata.getProperties().add(barGapPropertyMetadata); - BarChartMetadata.getProperties().add(categoryGapPropertyMetadata); - BarChartMetadata.getProperties().add(styleClass_c1_PropertyMetadata); - - BorderPaneMetadata.getProperties().add(bottomPropertyMetadata); - BorderPaneMetadata.getProperties().add(centerPropertyMetadata); - BorderPaneMetadata.getProperties().add(contentBiasPropertyMetadata); - BorderPaneMetadata.getProperties().add(leftPropertyMetadata); - BorderPaneMetadata.getProperties().add(rightPropertyMetadata); - BorderPaneMetadata.getProperties().add(topPropertyMetadata); - - BoxMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - BoxMetadata.getProperties().add(depthPropertyMetadata); - BoxMetadata.getProperties().add(height_Double_200_PropertyMetadata); - BoxMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - BoxMetadata.getProperties().add(width_Double_200_PropertyMetadata); - - BubbleChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); - - ButtonMetadata.getProperties().add(accessibleRole_BUTTON_PropertyMetadata); - ButtonMetadata.getProperties().add(cancelButtonPropertyMetadata); - ButtonMetadata.getProperties().add(defaultButtonPropertyMetadata); - ButtonMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - ButtonMetadata.getProperties().add(styleClass_c17_PropertyMetadata); - - ButtonBarMetadata.getProperties().add(buttonMinWidthPropertyMetadata); - ButtonBarMetadata.getProperties().add(buttonOrderPropertyMetadata); - ButtonBarMetadata.getProperties().add(buttonsPropertyMetadata); - ButtonBarMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - ButtonBarMetadata.getProperties().add(styleClass_c35_PropertyMetadata); - - ButtonBaseMetadata.getProperties().add(accessibleRole_RADIO_BUTTON_PropertyMetadata); - ButtonBaseMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - ButtonBaseMetadata.getProperties().add(onActionPropertyMetadata); - ButtonBaseMetadata.getProperties().add(styleClass_c41_PropertyMetadata); - - CameraMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - CameraMetadata.getProperties().add(farClipPropertyMetadata); - CameraMetadata.getProperties().add(nearClipPropertyMetadata); - CameraMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - - CanvasMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - CanvasMetadata.getProperties().add(height_Double_0_PropertyMetadata); - CanvasMetadata.getProperties().add(nodeOrientation_LEFT_TO_RIGHT_PropertyMetadata); - CanvasMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - CanvasMetadata.getProperties().add(width_Double_0_PropertyMetadata); - - CategoryAxisMetadata.getProperties().add(categoriesPropertyMetadata); - CategoryAxisMetadata.getProperties().add(categorySpacingPropertyMetadata); - CategoryAxisMetadata.getProperties().add(endMarginPropertyMetadata); - CategoryAxisMetadata.getProperties().add(gapStartAndEndPropertyMetadata); - CategoryAxisMetadata.getProperties().add(startMarginPropertyMetadata); - CategoryAxisMetadata.getProperties().add(styleClass_c45_PropertyMetadata); - CategoryAxisMetadata.getProperties().add(zeroPositionPropertyMetadata); - - ChartMetadata.getProperties().add(animatedPropertyMetadata); - ChartMetadata.getProperties().add(legendSidePropertyMetadata); - ChartMetadata.getProperties().add(legendVisiblePropertyMetadata); - ChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); - ChartMetadata.getProperties().add(titlePropertyMetadata); - ChartMetadata.getProperties().add(titleSidePropertyMetadata); - - CheckBoxMetadata.getProperties().add(accessibleRole_CHECK_BOX_PropertyMetadata); - CheckBoxMetadata.getProperties().add(allowIndeterminatePropertyMetadata); - CheckBoxMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - CheckBoxMetadata.getProperties().add(indeterminate_Boolean_PropertyMetadata); - CheckBoxMetadata.getProperties().add(selected_Boolean_PropertyMetadata); - CheckBoxMetadata.getProperties().add(styleClass_c10_PropertyMetadata); - - CheckMenuItemMetadata.getProperties().add(selected_Boolean_PropertyMetadata); - CheckMenuItemMetadata.getProperties().add(styleClass_c28_PropertyMetadata); - - ChoiceBoxMetadata.getProperties().add(accessibleRole_COMBO_BOX_PropertyMetadata); - ChoiceBoxMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - ChoiceBoxMetadata.getProperties().add(styleClass_c43_PropertyMetadata); - ChoiceBoxMetadata.getProperties().add(value_Object_PropertyMetadata); - - CircleMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - CircleMetadata.getProperties().add(centerXPropertyMetadata); - CircleMetadata.getProperties().add(centerYPropertyMetadata); - CircleMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - CircleMetadata.getProperties().add(radius_0_PropertyMetadata); - - ColorPickerMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - ColorPickerMetadata.getProperties().add(styleClass_c5_PropertyMetadata); - ColorPickerMetadata.getProperties().add(value_Color_PropertyMetadata); - - ColumnConstraintsMetadata.getProperties().add(fillWidthPropertyMetadata); - ColumnConstraintsMetadata.getProperties().add(halignment_NULL_PropertyMetadata); - ColumnConstraintsMetadata.getProperties().add(hgrowPropertyMetadata); - ColumnConstraintsMetadata.getProperties().add(maxWidth_COMPUTED_PropertyMetadata); - ColumnConstraintsMetadata.getProperties().add(minWidth_COMPUTED_PropertyMetadata); - ColumnConstraintsMetadata.getProperties().add(percentWidthPropertyMetadata); - ColumnConstraintsMetadata.getProperties().add(prefWidth_COMPUTED_PropertyMetadata); - - ComboBoxMetadata.getProperties().add(accessibleRole_COMBO_BOX_PropertyMetadata); - ComboBoxMetadata.getProperties().add(buttonCellPropertyMetadata); - ComboBoxMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - ComboBoxMetadata.getProperties().add(placeholderPropertyMetadata); - ComboBoxMetadata.getProperties().add(styleClass_c11_PropertyMetadata); - ComboBoxMetadata.getProperties().add(visibleRowCountPropertyMetadata); - - ComboBoxBaseMetadata.getProperties().add(accessibleRole_DATE_PICKER_PropertyMetadata); - ComboBoxBaseMetadata.getProperties().add(editable_false_PropertyMetadata); - ComboBoxBaseMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - ComboBoxBaseMetadata.getProperties().add(onActionPropertyMetadata); - ComboBoxBaseMetadata.getProperties().add(onHiddenPropertyMetadata); - ComboBoxBaseMetadata.getProperties().add(onHidingPropertyMetadata); - ComboBoxBaseMetadata.getProperties().add(onShowingPropertyMetadata); - ComboBoxBaseMetadata.getProperties().add(onShownPropertyMetadata); - ComboBoxBaseMetadata.getProperties().add(promptTextPropertyMetadata); - ComboBoxBaseMetadata.getProperties().add(styleClass_c5_PropertyMetadata); - ComboBoxBaseMetadata.getProperties().add(value_Object_PropertyMetadata); - - ContextMenuMetadata.getProperties().add(autoHide_true_PropertyMetadata); - ContextMenuMetadata.getProperties().add(height_Double_0_PropertyMetadata); - ContextMenuMetadata.getProperties().add(items_MenuItem_PropertyMetadata); - ContextMenuMetadata.getProperties().add(onActionPropertyMetadata); - ContextMenuMetadata.getProperties().add(onCloseRequestPropertyMetadata); - ContextMenuMetadata.getProperties().add(onHiddenPropertyMetadata); - ContextMenuMetadata.getProperties().add(onHidingPropertyMetadata); - ContextMenuMetadata.getProperties().add(onShowingPropertyMetadata); - ContextMenuMetadata.getProperties().add(onShownPropertyMetadata); - ContextMenuMetadata.getProperties().add(opacityPropertyMetadata); - ContextMenuMetadata.getProperties().add(styleClass_c8_PropertyMetadata); - ContextMenuMetadata.getProperties().add(width_Double_0_PropertyMetadata); - ContextMenuMetadata.getProperties().add(x_NaN_PropertyMetadata); - ContextMenuMetadata.getProperties().add(y_NaN_PropertyMetadata); - - ControlMetadata.getProperties().add(baselineOffsetPropertyMetadata); - ControlMetadata.getProperties().add(contextMenuPropertyMetadata); - ControlMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - ControlMetadata.getProperties().add(resizable_Boolean_ro_PropertyMetadata); - ControlMetadata.getProperties().add(styleClass_c25_PropertyMetadata); - ControlMetadata.getProperties().add(tooltipPropertyMetadata); - - CubicCurveMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - CubicCurveMetadata.getProperties().add(controlX1PropertyMetadata); - CubicCurveMetadata.getProperties().add(controlX2PropertyMetadata); - CubicCurveMetadata.getProperties().add(controlY1PropertyMetadata); - CubicCurveMetadata.getProperties().add(controlY2PropertyMetadata); - CubicCurveMetadata.getProperties().add(endXPropertyMetadata); - CubicCurveMetadata.getProperties().add(endYPropertyMetadata); - CubicCurveMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - CubicCurveMetadata.getProperties().add(startXPropertyMetadata); - CubicCurveMetadata.getProperties().add(startYPropertyMetadata); - - CubicCurveToMetadata.getProperties().add(controlX1PropertyMetadata); - CubicCurveToMetadata.getProperties().add(controlX2PropertyMetadata); - CubicCurveToMetadata.getProperties().add(controlY1PropertyMetadata); - CubicCurveToMetadata.getProperties().add(controlY2PropertyMetadata); - CubicCurveToMetadata.getProperties().add(x_0_PropertyMetadata); - CubicCurveToMetadata.getProperties().add(y_0_PropertyMetadata); - - CustomMenuItemMetadata.getProperties().add(content_Node_NULL_PropertyMetadata); - CustomMenuItemMetadata.getProperties().add(hideOnClick_true_PropertyMetadata); - CustomMenuItemMetadata.getProperties().add(styleClass_c27_PropertyMetadata); - - CylinderMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - CylinderMetadata.getProperties().add(divisionsPropertyMetadata); - CylinderMetadata.getProperties().add(height_Double_200_PropertyMetadata); - CylinderMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - CylinderMetadata.getProperties().add(radius_100_PropertyMetadata); - - DatePickerMetadata.getProperties().add(accessibleRole_DATE_PICKER_PropertyMetadata); - DatePickerMetadata.getProperties().add(editable_true_PropertyMetadata); - DatePickerMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - DatePickerMetadata.getProperties().add(showWeekNumbersPropertyMetadata); - DatePickerMetadata.getProperties().add(styleClass_c9_PropertyMetadata); - - DialogPaneMetadata.getProperties().add(buttonTypesPropertyMetadata); - DialogPaneMetadata.getProperties().add(children_c1_PropertyMetadata); - DialogPaneMetadata.getProperties().add(content_Node_NULL_PropertyMetadata); - DialogPaneMetadata.getProperties().add(contentTextPropertyMetadata); - DialogPaneMetadata.getProperties().add(expandableContentPropertyMetadata); - DialogPaneMetadata.getProperties().add(expanded_false_PropertyMetadata); - DialogPaneMetadata.getProperties().add(graphicPropertyMetadata); - DialogPaneMetadata.getProperties().add(headerPropertyMetadata); - DialogPaneMetadata.getProperties().add(headerTextPropertyMetadata); - DialogPaneMetadata.getProperties().add(styleClass_c30_PropertyMetadata); - - EllipseMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - EllipseMetadata.getProperties().add(centerXPropertyMetadata); - EllipseMetadata.getProperties().add(centerYPropertyMetadata); - EllipseMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - EllipseMetadata.getProperties().add(radiusXPropertyMetadata); - EllipseMetadata.getProperties().add(radiusYPropertyMetadata); - - FlowPaneMetadata.getProperties().add(alignment_TOP_LEFT_PropertyMetadata); - FlowPaneMetadata.getProperties().add(columnHalignmentPropertyMetadata); - FlowPaneMetadata.getProperties().add(contentBiasPropertyMetadata); - FlowPaneMetadata.getProperties().add(hgapPropertyMetadata); - FlowPaneMetadata.getProperties().add(orientation_HORIZONTAL_PropertyMetadata); - FlowPaneMetadata.getProperties().add(prefWrapLengthPropertyMetadata); - FlowPaneMetadata.getProperties().add(rowValignmentPropertyMetadata); - FlowPaneMetadata.getProperties().add(vgapPropertyMetadata); - - GridPaneMetadata.getProperties().add(alignment_TOP_LEFT_PropertyMetadata); - GridPaneMetadata.getProperties().add(columnConstraintsPropertyMetadata); - GridPaneMetadata.getProperties().add(contentBiasPropertyMetadata); - GridPaneMetadata.getProperties().add(gridLinesVisiblePropertyMetadata); - GridPaneMetadata.getProperties().add(hgapPropertyMetadata); - GridPaneMetadata.getProperties().add(rowConstraintsPropertyMetadata); - GridPaneMetadata.getProperties().add(vgapPropertyMetadata); - - GroupMetadata.getProperties().add(autoSizeChildrenPropertyMetadata); - GroupMetadata.getProperties().add(children_empty_PropertyMetadata); - GroupMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - - HBoxMetadata.getProperties().add(alignment_TOP_LEFT_PropertyMetadata); - HBoxMetadata.getProperties().add(baselineOffsetPropertyMetadata); - HBoxMetadata.getProperties().add(contentBiasPropertyMetadata); - HBoxMetadata.getProperties().add(fillHeightPropertyMetadata); - HBoxMetadata.getProperties().add(spacingPropertyMetadata); - - HLineToMetadata.getProperties().add(x_0_PropertyMetadata); - - HTMLEditorMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - HTMLEditorMetadata.getProperties().add(htmlTextPropertyMetadata); - HTMLEditorMetadata.getProperties().add(styleClass_c21_PropertyMetadata); - - HyperlinkMetadata.getProperties().add(accessibleRole_HYPERLINK_PropertyMetadata); - HyperlinkMetadata.getProperties().add(cursor_HAND_PropertyMetadata); - HyperlinkMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - HyperlinkMetadata.getProperties().add(mnemonicParsing_false_PropertyMetadata); - HyperlinkMetadata.getProperties().add(styleClass_c25_PropertyMetadata); - HyperlinkMetadata.getProperties().add(visitedPropertyMetadata); - - ImageViewMetadata.getProperties().add(accessibleRole_IMAGE_VIEW_PropertyMetadata); - ImageViewMetadata.getProperties().add(fitHeightPropertyMetadata); - ImageViewMetadata.getProperties().add(fitWidthPropertyMetadata); - ImageViewMetadata.getProperties().add(imagePropertyMetadata); - ImageViewMetadata.getProperties().add(nodeOrientation_LEFT_TO_RIGHT_PropertyMetadata); - ImageViewMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - ImageViewMetadata.getProperties().add(preserveRatio_false_PropertyMetadata); - ImageViewMetadata.getProperties().add(smoothPropertyMetadata); - ImageViewMetadata.getProperties().add(styleClass_c20_PropertyMetadata); - ImageViewMetadata.getProperties().add(viewportPropertyMetadata); - ImageViewMetadata.getProperties().add(x_0_PropertyMetadata); - ImageViewMetadata.getProperties().add(y_0_PropertyMetadata); - - LabelMetadata.getProperties().add(accessibleRole_TEXT_PropertyMetadata); - LabelMetadata.getProperties().add(labelForPropertyMetadata); - LabelMetadata.getProperties().add(mnemonicParsing_false_PropertyMetadata); - LabelMetadata.getProperties().add(styleClass_c3_PropertyMetadata); - - LabeledMetadata.getProperties().add(accessibleRole_TOGGLE_BUTTON_PropertyMetadata); - LabeledMetadata.getProperties().add(alignment_CENTER_LEFT_PropertyMetadata); - LabeledMetadata.getProperties().add(contentBiasPropertyMetadata); - LabeledMetadata.getProperties().add(contentDisplayPropertyMetadata); - LabeledMetadata.getProperties().add(ellipsisStringPropertyMetadata); - LabeledMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - LabeledMetadata.getProperties().add(fontPropertyMetadata); - LabeledMetadata.getProperties().add(graphicPropertyMetadata); - LabeledMetadata.getProperties().add(graphicTextGapPropertyMetadata); - LabeledMetadata.getProperties().add(labelPaddingPropertyMetadata); - LabeledMetadata.getProperties().add(lineSpacingPropertyMetadata); - LabeledMetadata.getProperties().add(mnemonicParsing_true_PropertyMetadata); - LabeledMetadata.getProperties().add(styleClass_c41_PropertyMetadata); - LabeledMetadata.getProperties().add(textPropertyMetadata); - LabeledMetadata.getProperties().add(textAlignmentPropertyMetadata); - LabeledMetadata.getProperties().add(textFillPropertyMetadata); - LabeledMetadata.getProperties().add(textOverrunPropertyMetadata); - LabeledMetadata.getProperties().add(underlinePropertyMetadata); - LabeledMetadata.getProperties().add(wrapTextPropertyMetadata); - - LightBaseMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - LightBaseMetadata.getProperties().add(colorPropertyMetadata); - LightBaseMetadata.getProperties().add(lightOnPropertyMetadata); - LightBaseMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - LightBaseMetadata.getProperties().add(scopePropertyMetadata); - - LineMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - LineMetadata.getProperties().add(endXPropertyMetadata); - LineMetadata.getProperties().add(endYPropertyMetadata); - LineMetadata.getProperties().add(fill_NULL_PropertyMetadata); - LineMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - LineMetadata.getProperties().add(startXPropertyMetadata); - LineMetadata.getProperties().add(startYPropertyMetadata); - LineMetadata.getProperties().add(stroke_BLACK_PropertyMetadata); - - LineChartMetadata.getProperties().add(axisSortingPolicyPropertyMetadata); - LineChartMetadata.getProperties().add(createSymbolsPropertyMetadata); - LineChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); - - LineToMetadata.getProperties().add(x_0_PropertyMetadata); - LineToMetadata.getProperties().add(y_0_PropertyMetadata); - - ListViewMetadata.getProperties().add(accessibleRole_LIST_VIEW_PropertyMetadata); - ListViewMetadata.getProperties().add(editable_false_PropertyMetadata); - ListViewMetadata.getProperties().add(fixedCellSizePropertyMetadata); - ListViewMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - ListViewMetadata.getProperties().add(onEditCancelPropertyMetadata); - ListViewMetadata.getProperties().add(onEditCommitPropertyMetadata); - ListViewMetadata.getProperties().add(onEditStartPropertyMetadata); - ListViewMetadata.getProperties().add(onScrollToPropertyMetadata); - ListViewMetadata.getProperties().add(orientation_VERTICAL_PropertyMetadata); - ListViewMetadata.getProperties().add(placeholderPropertyMetadata); - ListViewMetadata.getProperties().add(styleClass_c34_PropertyMetadata); - - MediaViewMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - MediaViewMetadata.getProperties().add(fitHeightPropertyMetadata); - MediaViewMetadata.getProperties().add(fitWidthPropertyMetadata); - MediaViewMetadata.getProperties().add(nodeOrientation_LEFT_TO_RIGHT_PropertyMetadata); - MediaViewMetadata.getProperties().add(onErrorPropertyMetadata); - MediaViewMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - MediaViewMetadata.getProperties().add(preserveRatio_true_PropertyMetadata); - MediaViewMetadata.getProperties().add(smoothPropertyMetadata); - MediaViewMetadata.getProperties().add(styleClass_c46_PropertyMetadata); - MediaViewMetadata.getProperties().add(viewportPropertyMetadata); - MediaViewMetadata.getProperties().add(x_0_PropertyMetadata); - MediaViewMetadata.getProperties().add(y_0_PropertyMetadata); - - MenuMetadata.getProperties().add(items_MenuItem_PropertyMetadata); - MenuMetadata.getProperties().add(onHiddenPropertyMetadata); - MenuMetadata.getProperties().add(onHidingPropertyMetadata); - MenuMetadata.getProperties().add(onShowingPropertyMetadata); - MenuMetadata.getProperties().add(onShownPropertyMetadata); - MenuMetadata.getProperties().add(styleClass_c29_PropertyMetadata); - - MenuBarMetadata.getProperties().add(accessibleRole_MENU_BAR_PropertyMetadata); - MenuBarMetadata.getProperties().add(menusPropertyMetadata); - MenuBarMetadata.getProperties().add(styleClass_c18_PropertyMetadata); - - MenuButtonMetadata.getProperties().add(accessibleRole_MENU_BUTTON_PropertyMetadata); - MenuButtonMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - MenuButtonMetadata.getProperties().add(items_MenuItem_PropertyMetadata); - MenuButtonMetadata.getProperties().add(popupSidePropertyMetadata); - MenuButtonMetadata.getProperties().add(styleClass_c52_PropertyMetadata); - - MenuItemMetadata.getProperties().add(acceleratorPropertyMetadata); - MenuItemMetadata.getProperties().add(disablePropertyMetadata); - MenuItemMetadata.getProperties().add(graphicPropertyMetadata); - MenuItemMetadata.getProperties().add(idPropertyMetadata); - MenuItemMetadata.getProperties().add(mnemonicParsing_true_PropertyMetadata); - MenuItemMetadata.getProperties().add(onActionPropertyMetadata); - MenuItemMetadata.getProperties().add(onMenuValidationPropertyMetadata); - MenuItemMetadata.getProperties().add(stylePropertyMetadata); - MenuItemMetadata.getProperties().add(styleClass_c36_PropertyMetadata); - MenuItemMetadata.getProperties().add(textPropertyMetadata); - MenuItemMetadata.getProperties().add(visiblePropertyMetadata); - - MeshViewMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - MeshViewMetadata.getProperties().add(meshPropertyMetadata); - MeshViewMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - - MoveToMetadata.getProperties().add(x_0_PropertyMetadata); - MoveToMetadata.getProperties().add(y_0_PropertyMetadata); - - NodeMetadata.getProperties().add(accessibleHelpPropertyMetadata); - NodeMetadata.getProperties().add(accessibleRole_PARENT_PropertyMetadata); - NodeMetadata.getProperties().add(accessibleRoleDescriptionPropertyMetadata); - NodeMetadata.getProperties().add(accessibleTextPropertyMetadata); - NodeMetadata.getProperties().add(baselineOffsetPropertyMetadata); - NodeMetadata.getProperties().add(blendModePropertyMetadata); - NodeMetadata.getProperties().add(boundsInLocalPropertyMetadata); - NodeMetadata.getProperties().add(boundsInParentPropertyMetadata); - NodeMetadata.getProperties().add(cachePropertyMetadata); - NodeMetadata.getProperties().add(cacheHintPropertyMetadata); - NodeMetadata.getProperties().add(clipPropertyMetadata); - NodeMetadata.getProperties().add(contentBiasPropertyMetadata); - NodeMetadata.getProperties().add(cursor_NULL_PropertyMetadata); - NodeMetadata.getProperties().add(depthTestPropertyMetadata); - NodeMetadata.getProperties().add(disablePropertyMetadata); - NodeMetadata.getProperties().add(effectPropertyMetadata); - NodeMetadata.getProperties().add(effectiveNodeOrientationPropertyMetadata); - NodeMetadata.getProperties().add(focusTraversable_false_PropertyMetadata); - NodeMetadata.getProperties().add(idPropertyMetadata); - NodeMetadata.getProperties().add(layoutBoundsPropertyMetadata); - NodeMetadata.getProperties().add(layoutXPropertyMetadata); - NodeMetadata.getProperties().add(layoutYPropertyMetadata); - NodeMetadata.getProperties().add(mouseTransparentPropertyMetadata); - NodeMetadata.getProperties().add(nodeOrientation_INHERIT_PropertyMetadata); - NodeMetadata.getProperties().add(onContextMenuRequestedPropertyMetadata); - NodeMetadata.getProperties().add(onDragDetectedPropertyMetadata); - NodeMetadata.getProperties().add(onDragDonePropertyMetadata); - NodeMetadata.getProperties().add(onDragDroppedPropertyMetadata); - NodeMetadata.getProperties().add(onDragEnteredPropertyMetadata); - NodeMetadata.getProperties().add(onDragExitedPropertyMetadata); - NodeMetadata.getProperties().add(onDragOverPropertyMetadata); - NodeMetadata.getProperties().add(onInputMethodTextChangedPropertyMetadata); - NodeMetadata.getProperties().add(onKeyPressedPropertyMetadata); - NodeMetadata.getProperties().add(onKeyReleasedPropertyMetadata); - NodeMetadata.getProperties().add(onKeyTypedPropertyMetadata); - NodeMetadata.getProperties().add(onMouseClickedPropertyMetadata); - NodeMetadata.getProperties().add(onMouseDragEnteredPropertyMetadata); - NodeMetadata.getProperties().add(onMouseDragExitedPropertyMetadata); - NodeMetadata.getProperties().add(onMouseDraggedPropertyMetadata); - NodeMetadata.getProperties().add(onMouseDragOverPropertyMetadata); - NodeMetadata.getProperties().add(onMouseDragReleasedPropertyMetadata); - NodeMetadata.getProperties().add(onMouseEnteredPropertyMetadata); - NodeMetadata.getProperties().add(onMouseExitedPropertyMetadata); - NodeMetadata.getProperties().add(onMouseMovedPropertyMetadata); - NodeMetadata.getProperties().add(onMousePressedPropertyMetadata); - NodeMetadata.getProperties().add(onMouseReleasedPropertyMetadata); - NodeMetadata.getProperties().add(onRotatePropertyMetadata); - NodeMetadata.getProperties().add(onRotationFinishedPropertyMetadata); - NodeMetadata.getProperties().add(onRotationStartedPropertyMetadata); - NodeMetadata.getProperties().add(onScrollPropertyMetadata); - NodeMetadata.getProperties().add(onScrollFinishedPropertyMetadata); - NodeMetadata.getProperties().add(onScrollStartedPropertyMetadata); - NodeMetadata.getProperties().add(onSwipeDownPropertyMetadata); - NodeMetadata.getProperties().add(onSwipeLeftPropertyMetadata); - NodeMetadata.getProperties().add(onSwipeRightPropertyMetadata); - NodeMetadata.getProperties().add(onSwipeUpPropertyMetadata); - NodeMetadata.getProperties().add(onTouchMovedPropertyMetadata); - NodeMetadata.getProperties().add(onTouchPressedPropertyMetadata); - NodeMetadata.getProperties().add(onTouchReleasedPropertyMetadata); - NodeMetadata.getProperties().add(onTouchStationaryPropertyMetadata); - NodeMetadata.getProperties().add(onZoomPropertyMetadata); - NodeMetadata.getProperties().add(onZoomFinishedPropertyMetadata); - NodeMetadata.getProperties().add(onZoomStartedPropertyMetadata); - NodeMetadata.getProperties().add(opacityPropertyMetadata); - NodeMetadata.getProperties().add(pickOnBounds_true_PropertyMetadata); - NodeMetadata.getProperties().add(resizable_Boolean_ro_PropertyMetadata); - NodeMetadata.getProperties().add(rotatePropertyMetadata); - NodeMetadata.getProperties().add(rotationAxisPropertyMetadata); - NodeMetadata.getProperties().add(scaleXPropertyMetadata); - NodeMetadata.getProperties().add(scaleYPropertyMetadata); - NodeMetadata.getProperties().add(scaleZPropertyMetadata); - NodeMetadata.getProperties().add(stylePropertyMetadata); - NodeMetadata.getProperties().add(styleClass_empty_PropertyMetadata); - NodeMetadata.getProperties().add(translateXPropertyMetadata); - NodeMetadata.getProperties().add(translateYPropertyMetadata); - NodeMetadata.getProperties().add(translateZPropertyMetadata); - NodeMetadata.getProperties().add(visiblePropertyMetadata); - NodeMetadata.getProperties().add(SplitPane_resizableWithParentPropertyMetadata); - NodeMetadata.getProperties().add(AnchorPane_bottomAnchorPropertyMetadata); - NodeMetadata.getProperties().add(AnchorPane_leftAnchorPropertyMetadata); - NodeMetadata.getProperties().add(AnchorPane_rightAnchorPropertyMetadata); - NodeMetadata.getProperties().add(AnchorPane_topAnchorPropertyMetadata); - NodeMetadata.getProperties().add(BorderPane_alignmentPropertyMetadata); - NodeMetadata.getProperties().add(BorderPane_marginPropertyMetadata); - NodeMetadata.getProperties().add(FlowPane_marginPropertyMetadata); - NodeMetadata.getProperties().add(GridPane_columnIndexPropertyMetadata); - NodeMetadata.getProperties().add(GridPane_columnSpanPropertyMetadata); - NodeMetadata.getProperties().add(GridPane_halignmentPropertyMetadata); - NodeMetadata.getProperties().add(GridPane_hgrowPropertyMetadata); - NodeMetadata.getProperties().add(GridPane_marginPropertyMetadata); - NodeMetadata.getProperties().add(GridPane_rowIndexPropertyMetadata); - NodeMetadata.getProperties().add(GridPane_rowSpanPropertyMetadata); - NodeMetadata.getProperties().add(GridPane_valignmentPropertyMetadata); - NodeMetadata.getProperties().add(GridPane_vgrowPropertyMetadata); - NodeMetadata.getProperties().add(HBox_hgrowPropertyMetadata); - NodeMetadata.getProperties().add(HBox_marginPropertyMetadata); - NodeMetadata.getProperties().add(StackPane_alignmentPropertyMetadata); - NodeMetadata.getProperties().add(StackPane_marginPropertyMetadata); - NodeMetadata.getProperties().add(TilePane_alignmentPropertyMetadata); - NodeMetadata.getProperties().add(TilePane_marginPropertyMetadata); - NodeMetadata.getProperties().add(VBox_marginPropertyMetadata); - NodeMetadata.getProperties().add(VBox_vgrowPropertyMetadata); - - NumberAxisMetadata.getProperties().add(forceZeroInRangePropertyMetadata); - NumberAxisMetadata.getProperties().add(styleClass_c45_PropertyMetadata); - NumberAxisMetadata.getProperties().add(tickUnitPropertyMetadata); - - PaginationMetadata.getProperties().add(accessibleRole_PAGINATION_PropertyMetadata); - PaginationMetadata.getProperties().add(currentPageIndexPropertyMetadata); - PaginationMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - PaginationMetadata.getProperties().add(maxPageIndicatorCountPropertyMetadata); - PaginationMetadata.getProperties().add(pageCountPropertyMetadata); - PaginationMetadata.getProperties().add(styleClass_c39_PropertyMetadata); - - PaneMetadata.getProperties().add(children_empty_PropertyMetadata); - - ParallelCameraMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - ParallelCameraMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - - ParentMetadata.getProperties().add(baselineOffsetPropertyMetadata); - ParentMetadata.getProperties().add(stylesheetsPropertyMetadata); - - PasswordFieldMetadata.getProperties().add(accessibleRole_PASSWORD_FIELD_PropertyMetadata); - PasswordFieldMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - PasswordFieldMetadata.getProperties().add(styleClass_c53_PropertyMetadata); - - PathMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - PathMetadata.getProperties().add(elementsPropertyMetadata); - PathMetadata.getProperties().add(fill_NULL_PropertyMetadata); - PathMetadata.getProperties().add(fillRulePropertyMetadata); - PathMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - PathMetadata.getProperties().add(stroke_BLACK_PropertyMetadata); - - PathElementMetadata.getProperties().add(absolutePropertyMetadata); - - PerspectiveCameraMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - PerspectiveCameraMetadata.getProperties().add(fieldOfViewPropertyMetadata); - PerspectiveCameraMetadata.getProperties().add(fixedEyeAtCameraZeroPropertyMetadata); - PerspectiveCameraMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - PerspectiveCameraMetadata.getProperties().add(verticalFieldOfViewPropertyMetadata); - - PieChartMetadata.getProperties().add(clockwisePropertyMetadata); - PieChartMetadata.getProperties().add(labelLineLengthPropertyMetadata); - PieChartMetadata.getProperties().add(labelsVisiblePropertyMetadata); - PieChartMetadata.getProperties().add(startAnglePropertyMetadata); - PieChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); - - PointLightMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - PointLightMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - - PolygonMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - PolygonMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - PolygonMetadata.getProperties().add(pointsPropertyMetadata); - - PolylineMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - PolylineMetadata.getProperties().add(fill_NULL_PropertyMetadata); - PolylineMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - PolylineMetadata.getProperties().add(pointsPropertyMetadata); - PolylineMetadata.getProperties().add(stroke_BLACK_PropertyMetadata); - - PopupControlMetadata.getProperties().add(height_Double_0_PropertyMetadata); - PopupControlMetadata.getProperties().add(idPropertyMetadata); - PopupControlMetadata.getProperties().add(maxHeight_COMPUTED_PropertyMetadata); - PopupControlMetadata.getProperties().add(maxWidth_COMPUTED_PropertyMetadata); - PopupControlMetadata.getProperties().add(minHeight_COMPUTED_PropertyMetadata); - PopupControlMetadata.getProperties().add(minWidth_COMPUTED_PropertyMetadata); - PopupControlMetadata.getProperties().add(onCloseRequestPropertyMetadata); - PopupControlMetadata.getProperties().add(onHiddenPropertyMetadata); - PopupControlMetadata.getProperties().add(onHidingPropertyMetadata); - PopupControlMetadata.getProperties().add(onShowingPropertyMetadata); - PopupControlMetadata.getProperties().add(onShownPropertyMetadata); - PopupControlMetadata.getProperties().add(opacityPropertyMetadata); - PopupControlMetadata.getProperties().add(prefHeight_COMPUTED_PropertyMetadata); - PopupControlMetadata.getProperties().add(prefWidth_COMPUTED_PropertyMetadata); - PopupControlMetadata.getProperties().add(stylePropertyMetadata); - PopupControlMetadata.getProperties().add(styleClass_empty_PropertyMetadata); - PopupControlMetadata.getProperties().add(width_Double_0_PropertyMetadata); - PopupControlMetadata.getProperties().add(x_NaN_PropertyMetadata); - PopupControlMetadata.getProperties().add(y_NaN_PropertyMetadata); - - PopupWindowMetadata.getProperties().add(anchorLocationPropertyMetadata); - PopupWindowMetadata.getProperties().add(anchorXPropertyMetadata); - PopupWindowMetadata.getProperties().add(anchorYPropertyMetadata); - PopupWindowMetadata.getProperties().add(autoFixPropertyMetadata); - PopupWindowMetadata.getProperties().add(autoHide_false_PropertyMetadata); - PopupWindowMetadata.getProperties().add(consumeAutoHidingEventsPropertyMetadata); - PopupWindowMetadata.getProperties().add(height_Double_0_PropertyMetadata); - PopupWindowMetadata.getProperties().add(hideOnEscapePropertyMetadata); - PopupWindowMetadata.getProperties().add(onAutoHidePropertyMetadata); - PopupWindowMetadata.getProperties().add(onCloseRequestPropertyMetadata); - PopupWindowMetadata.getProperties().add(onHiddenPropertyMetadata); - PopupWindowMetadata.getProperties().add(onHidingPropertyMetadata); - PopupWindowMetadata.getProperties().add(onShowingPropertyMetadata); - PopupWindowMetadata.getProperties().add(onShownPropertyMetadata); - PopupWindowMetadata.getProperties().add(opacityPropertyMetadata); - PopupWindowMetadata.getProperties().add(width_Double_0_PropertyMetadata); - PopupWindowMetadata.getProperties().add(x_NaN_PropertyMetadata); - PopupWindowMetadata.getProperties().add(y_NaN_PropertyMetadata); - - ProgressBarMetadata.getProperties().add(accessibleRole_PROGRESS_INDICATOR_PropertyMetadata); - ProgressBarMetadata.getProperties().add(styleClass_c13_PropertyMetadata); - - ProgressIndicatorMetadata.getProperties().add(accessibleRole_PROGRESS_INDICATOR_PropertyMetadata); - ProgressIndicatorMetadata.getProperties().add(indeterminate_Boolean_ro_PropertyMetadata); - ProgressIndicatorMetadata.getProperties().add(progressPropertyMetadata); - ProgressIndicatorMetadata.getProperties().add(styleClass_c50_PropertyMetadata); - - QuadCurveMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - QuadCurveMetadata.getProperties().add(controlXPropertyMetadata); - QuadCurveMetadata.getProperties().add(controlYPropertyMetadata); - QuadCurveMetadata.getProperties().add(endXPropertyMetadata); - QuadCurveMetadata.getProperties().add(endYPropertyMetadata); - QuadCurveMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - QuadCurveMetadata.getProperties().add(startXPropertyMetadata); - QuadCurveMetadata.getProperties().add(startYPropertyMetadata); - - QuadCurveToMetadata.getProperties().add(controlXPropertyMetadata); - QuadCurveToMetadata.getProperties().add(controlYPropertyMetadata); - QuadCurveToMetadata.getProperties().add(x_0_PropertyMetadata); - QuadCurveToMetadata.getProperties().add(y_0_PropertyMetadata); - - RadioButtonMetadata.getProperties().add(accessibleRole_RADIO_BUTTON_PropertyMetadata); - RadioButtonMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - RadioButtonMetadata.getProperties().add(styleClass_c41_PropertyMetadata); - - RadioMenuItemMetadata.getProperties().add(selected_Boolean_PropertyMetadata); - RadioMenuItemMetadata.getProperties().add(styleClass_c7_PropertyMetadata); - RadioMenuItemMetadata.getProperties().add(toggleGroupPropertyMetadata); - - RectangleMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - RectangleMetadata.getProperties().add(arcHeightPropertyMetadata); - RectangleMetadata.getProperties().add(arcWidthPropertyMetadata); - RectangleMetadata.getProperties().add(height_Double_0_PropertyMetadata); - RectangleMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - RectangleMetadata.getProperties().add(width_Double_0_PropertyMetadata); - RectangleMetadata.getProperties().add(x_0_PropertyMetadata); - RectangleMetadata.getProperties().add(y_0_PropertyMetadata); - - RegionMetadata.getProperties().add(cacheShapePropertyMetadata); - RegionMetadata.getProperties().add(centerShapePropertyMetadata); - RegionMetadata.getProperties().add(height_Double_ro_PropertyMetadata); - RegionMetadata.getProperties().add(insetsPropertyMetadata); - RegionMetadata.getProperties().add(maxHeight_COMPUTED_PropertyMetadata); - RegionMetadata.getProperties().add(maxWidth_COMPUTED_PropertyMetadata); - RegionMetadata.getProperties().add(minHeight_COMPUTED_PropertyMetadata); - RegionMetadata.getProperties().add(minWidth_COMPUTED_PropertyMetadata); - RegionMetadata.getProperties().add(opaqueInsetsPropertyMetadata); - RegionMetadata.getProperties().add(paddingPropertyMetadata); - RegionMetadata.getProperties().add(prefHeight_COMPUTED_PropertyMetadata); - RegionMetadata.getProperties().add(prefWidth_COMPUTED_PropertyMetadata); - RegionMetadata.getProperties().add(resizable_Boolean_ro_PropertyMetadata); - RegionMetadata.getProperties().add(scaleShapePropertyMetadata); - RegionMetadata.getProperties().add(shapePropertyMetadata); - RegionMetadata.getProperties().add(snapToPixelPropertyMetadata); - RegionMetadata.getProperties().add(width_Double_ro_PropertyMetadata); - - RowConstraintsMetadata.getProperties().add(fillHeightPropertyMetadata); - RowConstraintsMetadata.getProperties().add(maxHeight_COMPUTED_PropertyMetadata); - RowConstraintsMetadata.getProperties().add(minHeight_COMPUTED_PropertyMetadata); - RowConstraintsMetadata.getProperties().add(percentHeightPropertyMetadata); - RowConstraintsMetadata.getProperties().add(prefHeight_COMPUTED_PropertyMetadata); - RowConstraintsMetadata.getProperties().add(valignment_NULL_PropertyMetadata); - RowConstraintsMetadata.getProperties().add(vgrowPropertyMetadata); - - SVGPathMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - SVGPathMetadata.getProperties().add(content_String_PropertyMetadata); - SVGPathMetadata.getProperties().add(fillRulePropertyMetadata); - SVGPathMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - - ScatterChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); - - ScrollBarMetadata.getProperties().add(accessibleRole_SCROLL_BAR_PropertyMetadata); - ScrollBarMetadata.getProperties().add(blockIncrementPropertyMetadata); - ScrollBarMetadata.getProperties().add(maxPropertyMetadata); - ScrollBarMetadata.getProperties().add(minPropertyMetadata); - ScrollBarMetadata.getProperties().add(orientation_HORIZONTAL_PropertyMetadata); - ScrollBarMetadata.getProperties().add(styleClass_c33_PropertyMetadata); - ScrollBarMetadata.getProperties().add(unitIncrementPropertyMetadata); - ScrollBarMetadata.getProperties().add(value_Double_PropertyMetadata); - ScrollBarMetadata.getProperties().add(visibleAmountPropertyMetadata); - - ScrollPaneMetadata.getProperties().add(accessibleRole_SCROLL_PANE_PropertyMetadata); - ScrollPaneMetadata.getProperties().add(content_Node_NULL_PropertyMetadata); - ScrollPaneMetadata.getProperties().add(fitToHeightPropertyMetadata); - ScrollPaneMetadata.getProperties().add(fitToWidthPropertyMetadata); - ScrollPaneMetadata.getProperties().add(hbarPolicyPropertyMetadata); - ScrollPaneMetadata.getProperties().add(hmaxPropertyMetadata); - ScrollPaneMetadata.getProperties().add(hminPropertyMetadata); - ScrollPaneMetadata.getProperties().add(hvaluePropertyMetadata); - ScrollPaneMetadata.getProperties().add(minViewportHeightPropertyMetadata); - ScrollPaneMetadata.getProperties().add(minViewportWidthPropertyMetadata); - ScrollPaneMetadata.getProperties().add(pannablePropertyMetadata); - ScrollPaneMetadata.getProperties().add(prefViewportHeightPropertyMetadata); - ScrollPaneMetadata.getProperties().add(prefViewportWidthPropertyMetadata); - ScrollPaneMetadata.getProperties().add(styleClass_c38_PropertyMetadata); - ScrollPaneMetadata.getProperties().add(vbarPolicyPropertyMetadata); - ScrollPaneMetadata.getProperties().add(viewportBoundsPropertyMetadata); - ScrollPaneMetadata.getProperties().add(vmaxPropertyMetadata); - ScrollPaneMetadata.getProperties().add(vminPropertyMetadata); - ScrollPaneMetadata.getProperties().add(vvaluePropertyMetadata); - - SeparatorMetadata.getProperties().add(halignment_CENTER_PropertyMetadata); - SeparatorMetadata.getProperties().add(orientation_HORIZONTAL_PropertyMetadata); - SeparatorMetadata.getProperties().add(styleClass_c31_PropertyMetadata); - SeparatorMetadata.getProperties().add(valignment_CENTER_PropertyMetadata); - - SeparatorMenuItemMetadata.getProperties().add(content_Node_SEPARATOR_PropertyMetadata); - SeparatorMenuItemMetadata.getProperties().add(hideOnClick_false_PropertyMetadata); - SeparatorMenuItemMetadata.getProperties().add(styleClass_c23_PropertyMetadata); - - ShapeMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - ShapeMetadata.getProperties().add(fill_BLACK_PropertyMetadata); - ShapeMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - ShapeMetadata.getProperties().add(smoothPropertyMetadata); - ShapeMetadata.getProperties().add(stroke_NULL_PropertyMetadata); - ShapeMetadata.getProperties().add(strokeDashOffsetPropertyMetadata); - ShapeMetadata.getProperties().add(strokeLineCapPropertyMetadata); - ShapeMetadata.getProperties().add(strokeLineJoinPropertyMetadata); - ShapeMetadata.getProperties().add(strokeMiterLimitPropertyMetadata); - ShapeMetadata.getProperties().add(strokeTypePropertyMetadata); - ShapeMetadata.getProperties().add(strokeWidthPropertyMetadata); - - Shape3DMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - Shape3DMetadata.getProperties().add(cullFacePropertyMetadata); - Shape3DMetadata.getProperties().add(drawModePropertyMetadata); - Shape3DMetadata.getProperties().add(materialPropertyMetadata); - Shape3DMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - - SliderMetadata.getProperties().add(accessibleRole_SLIDER_PropertyMetadata); - SliderMetadata.getProperties().add(blockIncrementPropertyMetadata); - SliderMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - SliderMetadata.getProperties().add(labelFormatterPropertyMetadata); - SliderMetadata.getProperties().add(majorTickUnitPropertyMetadata); - SliderMetadata.getProperties().add(maxPropertyMetadata); - SliderMetadata.getProperties().add(minPropertyMetadata); - SliderMetadata.getProperties().add(minorTickCount_3_PropertyMetadata); - SliderMetadata.getProperties().add(orientation_HORIZONTAL_PropertyMetadata); - SliderMetadata.getProperties().add(showTickLabelsPropertyMetadata); - SliderMetadata.getProperties().add(showTickMarksPropertyMetadata); - SliderMetadata.getProperties().add(snapToTicksPropertyMetadata); - SliderMetadata.getProperties().add(styleClass_c40_PropertyMetadata); - SliderMetadata.getProperties().add(value_Double_PropertyMetadata); - - SphereMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - SphereMetadata.getProperties().add(divisionsPropertyMetadata); - SphereMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - SphereMetadata.getProperties().add(radius_100_PropertyMetadata); - - SpinnerMetadata.getProperties().add(accessibleRole_SPINNER_PropertyMetadata); - SpinnerMetadata.getProperties().add(editable_false_PropertyMetadata); - SpinnerMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - SpinnerMetadata.getProperties().add(styleClass_c24_PropertyMetadata); - SpinnerMetadata.getProperties().add(value_Object_ro_PropertyMetadata); - - SplitMenuButtonMetadata.getProperties().add(accessibleRole_SPLIT_MENU_BUTTON_PropertyMetadata); - SplitMenuButtonMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - SplitMenuButtonMetadata.getProperties().add(styleClass_c2_PropertyMetadata); - - SplitPaneMetadata.getProperties().add(dividerPositionsPropertyMetadata); - SplitPaneMetadata.getProperties().add(items_Node_PropertyMetadata); - SplitPaneMetadata.getProperties().add(orientation_HORIZONTAL_PropertyMetadata); - SplitPaneMetadata.getProperties().add(styleClass_c14_PropertyMetadata); - - StackPaneMetadata.getProperties().add(alignment_CENTER_PropertyMetadata); - StackPaneMetadata.getProperties().add(contentBiasPropertyMetadata); - - StackedAreaChartMetadata.getProperties().add(createSymbolsPropertyMetadata); - StackedAreaChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); - - StackedBarChartMetadata.getProperties().add(categoryGapPropertyMetadata); - StackedBarChartMetadata.getProperties().add(styleClass_c12_PropertyMetadata); - - SubSceneMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - SubSceneMetadata.getProperties().add(fill_NULL_PropertyMetadata); - SubSceneMetadata.getProperties().add(height_Double_0_PropertyMetadata); - SubSceneMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - SubSceneMetadata.getProperties().add(width_Double_0_PropertyMetadata); - - SwingNodeMetadata.getProperties().add(accessibleRole_NODE_PropertyMetadata); - SwingNodeMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - SwingNodeMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - SwingNodeMetadata.getProperties().add(resizable_Boolean_ro_PropertyMetadata); - - TabMetadata.getProperties().add(closablePropertyMetadata); - TabMetadata.getProperties().add(content_Node_NULL_PropertyMetadata); - TabMetadata.getProperties().add(contextMenuPropertyMetadata); - TabMetadata.getProperties().add(disablePropertyMetadata); - TabMetadata.getProperties().add(graphicPropertyMetadata); - TabMetadata.getProperties().add(idPropertyMetadata); - TabMetadata.getProperties().add(onClosedPropertyMetadata); - TabMetadata.getProperties().add(onCloseRequestPropertyMetadata); - TabMetadata.getProperties().add(onSelectionChangedPropertyMetadata); - TabMetadata.getProperties().add(selected_Boolean_ro_PropertyMetadata); - TabMetadata.getProperties().add(stylePropertyMetadata); - TabMetadata.getProperties().add(styleClass_c19_PropertyMetadata); - TabMetadata.getProperties().add(textPropertyMetadata); - TabMetadata.getProperties().add(tooltipPropertyMetadata); - - TabPaneMetadata.getProperties().add(accessibleRole_TAB_PANE_PropertyMetadata); - TabPaneMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - TabPaneMetadata.getProperties().add(rotateGraphicPropertyMetadata); - TabPaneMetadata.getProperties().add(side_TOP_PropertyMetadata); - TabPaneMetadata.getProperties().add(styleClass_c6_PropertyMetadata); - TabPaneMetadata.getProperties().add(tabClosingPolicyPropertyMetadata); - TabPaneMetadata.getProperties().add(tabMaxHeightPropertyMetadata); - TabPaneMetadata.getProperties().add(tabMaxWidthPropertyMetadata); - TabPaneMetadata.getProperties().add(tabMinHeightPropertyMetadata); - TabPaneMetadata.getProperties().add(tabMinWidthPropertyMetadata); - TabPaneMetadata.getProperties().add(tabsPropertyMetadata); - - TableColumnMetadata.getProperties().add(columns_TableColumn_PropertyMetadata); - TableColumnMetadata.getProperties().add(onEditCancelPropertyMetadata); - TableColumnMetadata.getProperties().add(onEditCommitPropertyMetadata); - TableColumnMetadata.getProperties().add(onEditStartPropertyMetadata); - TableColumnMetadata.getProperties().add(sortType_SortType_PropertyMetadata); - - TableColumnBaseMetadata.getProperties().add(contextMenuPropertyMetadata); - TableColumnBaseMetadata.getProperties().add(editable_true_PropertyMetadata); - TableColumnBaseMetadata.getProperties().add(graphicPropertyMetadata); - TableColumnBaseMetadata.getProperties().add(idPropertyMetadata); - TableColumnBaseMetadata.getProperties().add(maxWidth_500000_PropertyMetadata); - TableColumnBaseMetadata.getProperties().add(minWidth_1000_PropertyMetadata); - TableColumnBaseMetadata.getProperties().add(prefWidth_8000_PropertyMetadata); - TableColumnBaseMetadata.getProperties().add(resizable_Boolean_PropertyMetadata); - TableColumnBaseMetadata.getProperties().add(sortablePropertyMetadata); - TableColumnBaseMetadata.getProperties().add(sortNodePropertyMetadata); - TableColumnBaseMetadata.getProperties().add(stylePropertyMetadata); - TableColumnBaseMetadata.getProperties().add(styleClass_c42_PropertyMetadata); - TableColumnBaseMetadata.getProperties().add(textPropertyMetadata); - TableColumnBaseMetadata.getProperties().add(visiblePropertyMetadata); - TableColumnBaseMetadata.getProperties().add(width_Double_ro_PropertyMetadata); - - TableViewMetadata.getProperties().add(accessibleRole_TABLE_VIEW_PropertyMetadata); - TableViewMetadata.getProperties().add(columnResizePolicy_TABLEVIEW_UNCONSTRAINED_PropertyMetadata); - TableViewMetadata.getProperties().add(columns_TableColumn_PropertyMetadata); - TableViewMetadata.getProperties().add(editable_false_PropertyMetadata); - TableViewMetadata.getProperties().add(fixedCellSizePropertyMetadata); - TableViewMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - TableViewMetadata.getProperties().add(onScrollToPropertyMetadata); - TableViewMetadata.getProperties().add(onScrollToColumnPropertyMetadata); - TableViewMetadata.getProperties().add(onSortPropertyMetadata); - TableViewMetadata.getProperties().add(placeholderPropertyMetadata); - TableViewMetadata.getProperties().add(sortOrderPropertyMetadata); - TableViewMetadata.getProperties().add(styleClass_c49_PropertyMetadata); - TableViewMetadata.getProperties().add(tableMenuButtonVisiblePropertyMetadata); - - TextMetadata.getProperties().add(accessibleRole_TEXT_PropertyMetadata); - TextMetadata.getProperties().add(baselineOffsetPropertyMetadata); - TextMetadata.getProperties().add(boundsTypePropertyMetadata); - TextMetadata.getProperties().add(fontPropertyMetadata); - TextMetadata.getProperties().add(fontSmoothingType_GRAY_PropertyMetadata); - TextMetadata.getProperties().add(lineSpacingPropertyMetadata); - TextMetadata.getProperties().add(strikethroughPropertyMetadata); - TextMetadata.getProperties().add(textPropertyMetadata); - TextMetadata.getProperties().add(textAlignmentPropertyMetadata); - TextMetadata.getProperties().add(textOriginPropertyMetadata); - TextMetadata.getProperties().add(underlinePropertyMetadata); - TextMetadata.getProperties().add(wrappingWidthPropertyMetadata); - TextMetadata.getProperties().add(x_0_PropertyMetadata); - TextMetadata.getProperties().add(y_0_PropertyMetadata); - - TextAreaMetadata.getProperties().add(accessibleRole_TEXT_AREA_PropertyMetadata); - TextAreaMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - TextAreaMetadata.getProperties().add(prefColumnCount_40_PropertyMetadata); - TextAreaMetadata.getProperties().add(prefRowCountPropertyMetadata); - TextAreaMetadata.getProperties().add(scrollLeftPropertyMetadata); - TextAreaMetadata.getProperties().add(scrollTopPropertyMetadata); - TextAreaMetadata.getProperties().add(styleClass_c51_PropertyMetadata); - TextAreaMetadata.getProperties().add(wrapTextPropertyMetadata); - - TextFieldMetadata.getProperties().add(accessibleRole_TEXT_FIELD_PropertyMetadata); - TextFieldMetadata.getProperties().add(alignment_CENTER_LEFT_PropertyMetadata); - TextFieldMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - TextFieldMetadata.getProperties().add(onActionPropertyMetadata); - TextFieldMetadata.getProperties().add(prefColumnCount_12_PropertyMetadata); - TextFieldMetadata.getProperties().add(styleClass_c47_PropertyMetadata); - - TextFlowMetadata.getProperties().add(accessibleRole_TEXT_PropertyMetadata); - TextFlowMetadata.getProperties().add(baselineOffsetPropertyMetadata); - TextFlowMetadata.getProperties().add(contentBiasPropertyMetadata); - TextFlowMetadata.getProperties().add(lineSpacingPropertyMetadata); - TextFlowMetadata.getProperties().add(textAlignmentPropertyMetadata); - - TextFormatterMetadata.getProperties().add(value_Object_PropertyMetadata); - - TextInputControlMetadata.getProperties().add(accessibleRole_TEXT_FIELD_PropertyMetadata); - TextInputControlMetadata.getProperties().add(editable_true_PropertyMetadata); - TextInputControlMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - TextInputControlMetadata.getProperties().add(fontPropertyMetadata); - TextInputControlMetadata.getProperties().add(length_Integer_ro_PropertyMetadata); - TextInputControlMetadata.getProperties().add(promptTextPropertyMetadata); - TextInputControlMetadata.getProperties().add(styleClass_c51_PropertyMetadata); - TextInputControlMetadata.getProperties().add(textPropertyMetadata); - TextInputControlMetadata.getProperties().add(textFormatterPropertyMetadata); - - TilePaneMetadata.getProperties().add(alignment_TOP_LEFT_PropertyMetadata); - TilePaneMetadata.getProperties().add(contentBiasPropertyMetadata); - TilePaneMetadata.getProperties().add(hgapPropertyMetadata); - TilePaneMetadata.getProperties().add(orientation_HORIZONTAL_PropertyMetadata); - TilePaneMetadata.getProperties().add(prefColumnsPropertyMetadata); - TilePaneMetadata.getProperties().add(prefRowsPropertyMetadata); - TilePaneMetadata.getProperties().add(prefTileHeightPropertyMetadata); - TilePaneMetadata.getProperties().add(prefTileWidthPropertyMetadata); - TilePaneMetadata.getProperties().add(tileAlignmentPropertyMetadata); - TilePaneMetadata.getProperties().add(tileHeightPropertyMetadata); - TilePaneMetadata.getProperties().add(tileWidthPropertyMetadata); - TilePaneMetadata.getProperties().add(vgapPropertyMetadata); - - TitledPaneMetadata.getProperties().add(accessibleRole_TITLED_PANE_PropertyMetadata); - TitledPaneMetadata.getProperties().add(animatedPropertyMetadata); - TitledPaneMetadata.getProperties().add(collapsiblePropertyMetadata); - TitledPaneMetadata.getProperties().add(content_Node_NULL_PropertyMetadata); - TitledPaneMetadata.getProperties().add(contentBiasPropertyMetadata); - TitledPaneMetadata.getProperties().add(expanded_true_PropertyMetadata); - TitledPaneMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - TitledPaneMetadata.getProperties().add(mnemonicParsing_false_PropertyMetadata); - TitledPaneMetadata.getProperties().add(styleClass_c26_PropertyMetadata); - - ToggleButtonMetadata.getProperties().add(accessibleRole_TOGGLE_BUTTON_PropertyMetadata); - ToggleButtonMetadata.getProperties().add(alignment_CENTER_PropertyMetadata); - ToggleButtonMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - ToggleButtonMetadata.getProperties().add(selected_Boolean_PropertyMetadata); - ToggleButtonMetadata.getProperties().add(styleClass_c44_PropertyMetadata); - ToggleButtonMetadata.getProperties().add(toggleGroupPropertyMetadata); - - ToolBarMetadata.getProperties().add(accessibleRole_TOOL_BAR_PropertyMetadata); - ToolBarMetadata.getProperties().add(items_Node_PropertyMetadata); - ToolBarMetadata.getProperties().add(orientation_HORIZONTAL_PropertyMetadata); - ToolBarMetadata.getProperties().add(styleClass_c16_PropertyMetadata); - - TooltipMetadata.getProperties().add(contentDisplayPropertyMetadata); - TooltipMetadata.getProperties().add(fontPropertyMetadata); - TooltipMetadata.getProperties().add(graphicPropertyMetadata); - TooltipMetadata.getProperties().add(graphicTextGapPropertyMetadata); - TooltipMetadata.getProperties().add(height_Double_0_PropertyMetadata); - TooltipMetadata.getProperties().add(onCloseRequestPropertyMetadata); - TooltipMetadata.getProperties().add(onHiddenPropertyMetadata); - TooltipMetadata.getProperties().add(onHidingPropertyMetadata); - TooltipMetadata.getProperties().add(onShowingPropertyMetadata); - TooltipMetadata.getProperties().add(onShownPropertyMetadata); - TooltipMetadata.getProperties().add(opacityPropertyMetadata); - TooltipMetadata.getProperties().add(styleClass_c15_PropertyMetadata); - TooltipMetadata.getProperties().add(textPropertyMetadata); - TooltipMetadata.getProperties().add(textAlignmentPropertyMetadata); - TooltipMetadata.getProperties().add(textOverrunPropertyMetadata); - TooltipMetadata.getProperties().add(width_Double_0_PropertyMetadata); - TooltipMetadata.getProperties().add(wrapTextPropertyMetadata); - TooltipMetadata.getProperties().add(x_NaN_PropertyMetadata); - TooltipMetadata.getProperties().add(y_NaN_PropertyMetadata); - - TreeTableColumnMetadata.getProperties().add(columns_TreeTableColumn_PropertyMetadata); - TreeTableColumnMetadata.getProperties().add(onEditCancelPropertyMetadata); - TreeTableColumnMetadata.getProperties().add(onEditCommitPropertyMetadata); - TreeTableColumnMetadata.getProperties().add(onEditStartPropertyMetadata); - TreeTableColumnMetadata.getProperties().add(sortType_SortType_PropertyMetadata); - - TreeTableViewMetadata.getProperties().add(accessibleRole_TREE_TABLE_VIEW_PropertyMetadata); - TreeTableViewMetadata.getProperties().add(columnResizePolicy_TREETABLEVIEW_UNCONSTRAINED_PropertyMetadata); - TreeTableViewMetadata.getProperties().add(columns_TreeTableColumn_PropertyMetadata); - TreeTableViewMetadata.getProperties().add(editable_false_PropertyMetadata); - TreeTableViewMetadata.getProperties().add(expandedItemCountPropertyMetadata); - TreeTableViewMetadata.getProperties().add(fixedCellSizePropertyMetadata); - TreeTableViewMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - TreeTableViewMetadata.getProperties().add(onScrollToPropertyMetadata); - TreeTableViewMetadata.getProperties().add(onScrollToColumnPropertyMetadata); - TreeTableViewMetadata.getProperties().add(onSortPropertyMetadata); - TreeTableViewMetadata.getProperties().add(placeholderPropertyMetadata); - TreeTableViewMetadata.getProperties().add(showRootPropertyMetadata); - TreeTableViewMetadata.getProperties().add(sortModePropertyMetadata); - TreeTableViewMetadata.getProperties().add(sortOrderPropertyMetadata); - TreeTableViewMetadata.getProperties().add(styleClass_c32_PropertyMetadata); - TreeTableViewMetadata.getProperties().add(tableMenuButtonVisiblePropertyMetadata); - TreeTableViewMetadata.getProperties().add(treeColumnPropertyMetadata); - - TreeViewMetadata.getProperties().add(accessibleRole_TREE_VIEW_PropertyMetadata); - TreeViewMetadata.getProperties().add(editable_false_PropertyMetadata); - TreeViewMetadata.getProperties().add(expandedItemCountPropertyMetadata); - TreeViewMetadata.getProperties().add(fixedCellSizePropertyMetadata); - TreeViewMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - TreeViewMetadata.getProperties().add(onEditCancelPropertyMetadata); - TreeViewMetadata.getProperties().add(onEditCommitPropertyMetadata); - TreeViewMetadata.getProperties().add(onEditStartPropertyMetadata); - TreeViewMetadata.getProperties().add(onScrollToPropertyMetadata); - TreeViewMetadata.getProperties().add(showRootPropertyMetadata); - TreeViewMetadata.getProperties().add(styleClass_c22_PropertyMetadata); - - VBoxMetadata.getProperties().add(alignment_TOP_LEFT_PropertyMetadata); - VBoxMetadata.getProperties().add(contentBiasPropertyMetadata); - VBoxMetadata.getProperties().add(fillWidthPropertyMetadata); - VBoxMetadata.getProperties().add(spacingPropertyMetadata); - - VLineToMetadata.getProperties().add(y_0_PropertyMetadata); - - ValueAxisMetadata.getProperties().add(lowerBoundPropertyMetadata); - ValueAxisMetadata.getProperties().add(minorTickCount_5_PropertyMetadata); - ValueAxisMetadata.getProperties().add(minorTickLengthPropertyMetadata); - ValueAxisMetadata.getProperties().add(minorTickVisiblePropertyMetadata); - ValueAxisMetadata.getProperties().add(scalePropertyMetadata); - ValueAxisMetadata.getProperties().add(styleClass_c45_PropertyMetadata); - ValueAxisMetadata.getProperties().add(tickLabelFormatterPropertyMetadata); - ValueAxisMetadata.getProperties().add(upperBoundPropertyMetadata); - ValueAxisMetadata.getProperties().add(zeroPositionPropertyMetadata); - - WebViewMetadata.getProperties().add(contextMenuEnabledPropertyMetadata); - WebViewMetadata.getProperties().add(focusTraversable_true_PropertyMetadata); - WebViewMetadata.getProperties().add(fontScalePropertyMetadata); - WebViewMetadata.getProperties().add(fontSmoothingType_LCD_PropertyMetadata); - WebViewMetadata.getProperties().add(height_Double_ro_PropertyMetadata); - WebViewMetadata.getProperties().add(maxHeight_MAX_PropertyMetadata); - WebViewMetadata.getProperties().add(maxWidth_MAX_PropertyMetadata); - WebViewMetadata.getProperties().add(minHeight_0_PropertyMetadata); - WebViewMetadata.getProperties().add(minWidth_0_PropertyMetadata); - WebViewMetadata.getProperties().add(nodeOrientation_LEFT_TO_RIGHT_PropertyMetadata); - WebViewMetadata.getProperties().add(pickOnBounds_false_PropertyMetadata); - WebViewMetadata.getProperties().add(prefHeight_60000_PropertyMetadata); - WebViewMetadata.getProperties().add(prefWidth_80000_PropertyMetadata); - WebViewMetadata.getProperties().add(resizable_Boolean_ro_PropertyMetadata); - WebViewMetadata.getProperties().add(styleClass_c48_PropertyMetadata); - WebViewMetadata.getProperties().add(width_Double_ro_PropertyMetadata); - WebViewMetadata.getProperties().add(zoomPropertyMetadata); - - XYChartMetadata.getProperties().add(alternativeColumnFillVisiblePropertyMetadata); - XYChartMetadata.getProperties().add(alternativeRowFillVisiblePropertyMetadata); - XYChartMetadata.getProperties().add(horizontalGridLinesVisiblePropertyMetadata); - XYChartMetadata.getProperties().add(horizontalZeroLineVisiblePropertyMetadata); - XYChartMetadata.getProperties().add(styleClass_c37_PropertyMetadata); - XYChartMetadata.getProperties().add(verticalGridLinesVisiblePropertyMetadata); - XYChartMetadata.getProperties().add(verticalZeroLineVisiblePropertyMetadata); - XYChartMetadata.getProperties().add(XAxisPropertyMetadata); - XYChartMetadata.getProperties().add(YAxisPropertyMetadata); - - - IncludeElementMetadata.getProperties().add(AnchorPane_bottomAnchorPropertyMetadata); - IncludeElementMetadata.getProperties().add(AnchorPane_leftAnchorPropertyMetadata); - IncludeElementMetadata.getProperties().add(AnchorPane_rightAnchorPropertyMetadata); - IncludeElementMetadata.getProperties().add(AnchorPane_topAnchorPropertyMetadata); - IncludeElementMetadata.getProperties().add(BorderPane_alignmentPropertyMetadata); - IncludeElementMetadata.getProperties().add(FlowPane_marginPropertyMetadata); - IncludeElementMetadata.getProperties().add(GridPane_columnIndexPropertyMetadata); - IncludeElementMetadata.getProperties().add(GridPane_columnSpanPropertyMetadata); - IncludeElementMetadata.getProperties().add(GridPane_halignmentPropertyMetadata); - IncludeElementMetadata.getProperties().add(GridPane_hgrowPropertyMetadata); - IncludeElementMetadata.getProperties().add(GridPane_rowIndexPropertyMetadata); - IncludeElementMetadata.getProperties().add(GridPane_rowSpanPropertyMetadata); - IncludeElementMetadata.getProperties().add(GridPane_valignmentPropertyMetadata); - IncludeElementMetadata.getProperties().add(GridPane_vgrowPropertyMetadata); - IncludeElementMetadata.getProperties().add(HBox_hgrowPropertyMetadata); - IncludeElementMetadata.getProperties().add(StackPane_alignmentPropertyMetadata); - IncludeElementMetadata.getProperties().add(TilePane_alignmentPropertyMetadata); - IncludeElementMetadata.getProperties().add(VBox_vgrowPropertyMetadata); - IncludeElementMetadata.getProperties().add(layoutXPropertyMetadata); - IncludeElementMetadata.getProperties().add(layoutYPropertyMetadata); - IncludeElementMetadata.getProperties().add(maxHeight_COMPUTED_PropertyMetadata); - IncludeElementMetadata.getProperties().add(maxWidth_COMPUTED_PropertyMetadata); - IncludeElementMetadata.getProperties().add(minHeight_COMPUTED_PropertyMetadata); - IncludeElementMetadata.getProperties().add(minWidth_COMPUTED_PropertyMetadata); - IncludeElementMetadata.getProperties().add(prefHeight_COMPUTED_PropertyMetadata); - IncludeElementMetadata.getProperties().add(prefWidth_COMPUTED_PropertyMetadata); - IncludeElementMetadata.getProperties().add(rotatePropertyMetadata); - IncludeElementMetadata.getProperties().add(rotationAxisPropertyMetadata); - IncludeElementMetadata.getProperties().add(scaleXPropertyMetadata); - IncludeElementMetadata.getProperties().add(scaleYPropertyMetadata); - IncludeElementMetadata.getProperties().add(scaleZPropertyMetadata); - IncludeElementMetadata.getProperties().add(translateXPropertyMetadata); - IncludeElementMetadata.getProperties().add(translateYPropertyMetadata); - IncludeElementMetadata.getProperties().add(translateZPropertyMetadata); - IncludeElementMetadata.getProperties().add(layoutBoundsPropertyMetadata); - IncludeElementMetadata.getProperties().add(boundsInLocalPropertyMetadata); - IncludeElementMetadata.getProperties().add(boundsInParentPropertyMetadata); - IncludeElementMetadata.getProperties().add(baselineOffsetPropertyMetadata); - IncludeElementMetadata.getProperties().add(resizable_Boolean_ro_PropertyMetadata); - IncludeElementMetadata.getProperties().add(contentBiasPropertyMetadata); - IncludeElementMetadata.getProperties().add(snapToPixelPropertyMetadata); - IncludeElementMetadata.getProperties().add(effectiveNodeOrientationPropertyMetadata); - IncludeElementMetadata.getProperties().add(includeFxmlPropertyMetadata); - - return metadata; - } - -} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/spi/IComponentClassMetadataProvider.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/spi/IComponentClassMetadataProvider.java deleted file mode 100644 index 4b1c710c1e3e43605e4d4d018dff07023482f06b..0000000000000000000000000000000000000000 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/spi/IComponentClassMetadataProvider.java +++ /dev/null @@ -1,11 +0,0 @@ -package com.oracle.javafx.scenebuilder.kit.metadata.spi; - -import java.util.Map; - -import com.oracle.javafx.scenebuilder.kit.metadata.klass.ComponentClassMetadata; - -public interface IComponentClassMetadataProvider { - - public Map<Class<?>, ComponentClassMetadata> getMetadata(); - -} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/util/DesignHierarchyMask.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/util/DesignHierarchyMask.java index e6a4003564a459e706ba17a9078ea32bcbf5789b..76d821b26f99aa80c89e63dbcdeedf4f665a6001 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/util/DesignHierarchyMask.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/util/DesignHierarchyMask.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, Gluon and/or its affiliates. + * Copyright (c) 2016, 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,6 +32,12 @@ */ package com.oracle.javafx.scenebuilder.kit.metadata.util; +//import com.gluonhq.charm.glisten.control.BottomNavigation; +import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; +//import com.gluonhq.charm.glisten.control.DropdownButton; +//import com.gluonhq.charm.glisten.control.ExpansionPanel; +//import com.gluonhq.charm.glisten.control.ToggleButtonGroup; +import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import com.oracle.javafx.scenebuilder.kit.editor.images.ImageUtils; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMCollection; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMInstance; @@ -119,7 +125,12 @@ public class DesignHierarchyMask { }, // ExpansionPanel EXPANDED_CONTENT, - COLLAPSED_CONTENT + COLLAPSED_CONTENT, + // ExpandedPanel + EX_CONTENT { + @Override + public String toString() { return "CONTENT"; } + } } private static final PropertyName graphicName = new PropertyName("graphic"); private static final PropertyName contentName = new PropertyName("content"); @@ -130,8 +141,8 @@ public class DesignHierarchyMask { private static final PropertyName leftName = new PropertyName("left"); private static final PropertyName rightName = new PropertyName("right"); private static final PropertyName centerName = new PropertyName("center"); - private static final PropertyName xAxisName = new PropertyName("XAxis"); - private static final PropertyName yAxisName = new PropertyName("YAxis"); + private static final PropertyName xAxisName = new PropertyName("xAxis"); + private static final PropertyName yAxisName = new PropertyName("yAxis"); private static final PropertyName placeholderName = new PropertyName("placeholder"); private static final PropertyName tooltipName = new PropertyName("tooltip"); private static final PropertyName contextMenuName = new PropertyName("contextMenu"); @@ -224,7 +235,7 @@ public class DesignHierarchyMask { // Default Class componentClass = sceneGraphObject.getClass(); String fileName = componentClass.getSimpleName(); - if (componentClass.getName().startsWith(BuiltinLibrary.GLUON_PACKAGE)) { + if (componentClass.getName().startsWith(EditorPlatform.GLUON_PACKAGE)) { fileName = BuiltinLibrary.GLUON_FILE_PREFIX + fileName; } url = ImageUtils.getNodeIconURL(fileName + ".png"); //NOI18N @@ -414,16 +425,27 @@ public class DesignHierarchyMask { switch (accessory) { case CONTENT: case GRAPHIC: - if (sceneGraphObject instanceof DialogPane == true) { + if (sceneGraphObject instanceof DialogPane == true /*|| sceneGraphObject instanceof ExpansionPanel.ExpandedPanel == true*/) { return false; } break; case DP_CONTENT: case DP_GRAPHIC: - if (sceneGraphObject instanceof DialogPane == false) { + if (sceneGraphObject instanceof DialogPane == false /*|| sceneGraphObject instanceof ExpansionPanel.ExpandedPanel == true*/) { return false; } break; + case EXPANDABLE_CONTENT: + case COLLAPSED_CONTENT: +// if (sceneGraphObject instanceof ExpansionPanel == false) { +// return false; +// } + break; + case EX_CONTENT: +// if (sceneGraphObject instanceof ExpansionPanel.ExpandedPanel == false) { +// return false; +// } + break; default: break; } @@ -478,6 +500,7 @@ public class DesignHierarchyMask { result = javafx.scene.control.TreeTableColumn.class; break; case DP_CONTENT: + case EX_CONTENT: case EXPANDABLE_CONTENT: case DP_GRAPHIC: case HEADER: @@ -670,6 +693,7 @@ public class DesignHierarchyMask { break; case CONTENT: case DP_CONTENT: + case EX_CONTENT: result = contentName; break; case EXPANDABLE_CONTENT: @@ -1038,6 +1062,11 @@ public class DesignHierarchyMask { || this.isAcceptingAccessory(Accessory.LEFT)) && ! (fxomObject.getSceneGraphObject() instanceof MenuButton || fxomObject.getSceneGraphObject() instanceof MenuBar - || fxomObject.getSceneGraphObject() instanceof ToolBar); // Jerome + || fxomObject.getSceneGraphObject() instanceof ToolBar + /*|| fxomObject.getSceneGraphObject() instanceof ExpansionPanel.ExpandedPanel + || fxomObject.getSceneGraphObject() instanceof DropdownButton + || fxomObject.getSceneGraphObject() instanceof BottomNavigation + || fxomObject.getSceneGraphObject() instanceof ExpansionPanel.CollapsedPanel + || fxomObject.getSceneGraphObject() instanceof ToggleButtonGroup*/); // Jerome } } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/util/DesignImage.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/util/DesignImage.java index 8d731141b27358d9e61f56dcc44e48255be3d7e7..5f54e15c6fe5df585b37e8475e35bb35ffb38213 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/util/DesignImage.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/util/DesignImage.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,7 +33,6 @@ package com.oracle.javafx.scenebuilder.kit.metadata.util; -import com.oracle.javafx.scenebuilder.kit.util.Deprecation; import java.net.URL; import javafx.scene.image.Image; @@ -53,10 +53,10 @@ public class DesignImage { public DesignImage(Image image) { assert image != null; - assert Deprecation.getUrl(image) != null; + assert image.getUrl() != null; this.image = image; - this.location = Deprecation.getUrl(image); + this.location = image.getUrl(); } public Image getImage() { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/util/PrefixedValue.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/util/PrefixedValue.java index 987c3a51409e82501a5549b7bd90f71a644157b3..4ba4cd2a917d0759e60eb2045e90a29d57eae57b 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/util/PrefixedValue.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/metadata/util/PrefixedValue.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -54,6 +55,7 @@ public class PrefixedValue { CLASSLOADER_RELATIVE_PATH, RESOURCE_KEY, EXPRESSION, + BINDING_EXPRESSION, PLAIN_STRING, INVALID } @@ -91,6 +93,10 @@ public class PrefixedValue { this.value = FXMLLoader.EXPRESSION_PREFIX + suffix; //NOI18N break; } + case BINDING_EXPRESSION: { + this.value = FXMLLoader.BINDING_EXPRESSION_PREFIX + suffix + FXMLLoader.BINDING_EXPRESSION_SUFFIX; //NOI18N + break; + } case PLAIN_STRING: { if (suffix.startsWith(FXMLLoader.ESCAPE_PREFIX) || suffix.startsWith(FXMLLoader.RELATIVE_PATH_PREFIX) @@ -131,7 +137,7 @@ public class PrefixedValue { } public boolean isBindingExpression() { - return isExpression() && getSuffix().startsWith("{"); //NOI18N + return type == Type.BINDING_EXPRESSION; } public boolean isPlainString() { @@ -168,6 +174,12 @@ public class PrefixedValue { result = value.substring(FXMLLoader.EXPRESSION_PREFIX.length()); break; } + case BINDING_EXPRESSION: { + assert value.startsWith(FXMLLoader.BINDING_EXPRESSION_PREFIX); + assert value.endsWith(FXMLLoader.BINDING_EXPRESSION_SUFFIX); + result = value.substring(FXMLLoader.BINDING_EXPRESSION_PREFIX.length() - FXMLLoader.BINDING_EXPRESSION_SUFFIX.length()); + break; + } case PLAIN_STRING: { if (value.startsWith(FXMLLoader.ESCAPE_PREFIX)) { result = value.substring(FXMLLoader.ESCAPE_PREFIX.length()); @@ -270,6 +282,13 @@ public class PrefixedValue { } else { result = Type.RESOURCE_KEY; } + } else if (v.startsWith(FXMLLoader.BINDING_EXPRESSION_PREFIX)) { + v = v.substring(FXMLLoader.BINDING_EXPRESSION_PREFIX.length()); + if (v.isEmpty() || !v.endsWith(FXMLLoader.BINDING_EXPRESSION_SUFFIX)) { + result = Type.INVALID; + } else { + result = Type.BINDING_EXPRESSION; + } } else if (v.startsWith(FXMLLoader.EXPRESSION_PREFIX)) { v = v.substring(FXMLLoader.EXPRESSION_PREFIX.length()); if (v.isEmpty()) { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/MavenPreferences.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/MavenPreferences.java similarity index 56% rename from sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/MavenPreferences.java rename to sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/MavenPreferences.java index 3f97520dc1f1c3d8fd4de04cfd67100bd911ecf0..baf3e9a6e06587ce1be8adea160f585d3454b379 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/MavenPreferences.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/MavenPreferences.java @@ -1,6 +1,39 @@ -package com.oracle.javafx.scenebuilder.app.preferences; +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package com.oracle.javafx.scenebuilder.kit.preferences; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.MavenArtifact; +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesRecordArtifact; + import java.io.File; import java.nio.file.Path; import java.util.ArrayList; @@ -11,13 +44,31 @@ import java.util.stream.Collectors; import java.util.stream.Stream; public class MavenPreferences { - + + /*************************************************************************** + * * + * Instance fields * + * * + **************************************************************************/ + private final Map<String, PreferencesRecordArtifact> recordArtifacts; + /*************************************************************************** + * * + * Support Classes * + * * + **************************************************************************/ + public MavenPreferences() { this.recordArtifacts = new HashMap<>(); } - + + /*************************************************************************** + * * + * Methods * + * * + **************************************************************************/ + public PreferencesRecordArtifact getRecordArtifact(String coordinates) { return recordArtifacts.get(coordinates); } @@ -41,7 +92,7 @@ public class MavenPreferences { private List<String> getArtifactJarDependencies(MavenArtifact artifact) { String dep = recordArtifacts.get(artifact.getCoordinates()).getMavenArtifact().getDependencies(); if (dep != null && !dep.isEmpty()) { - return Stream.of(dep.split(":")).collect(Collectors.toList()); + return Stream.of(dep.split(File.pathSeparator)).collect(Collectors.toList()); } return new ArrayList<>(); } @@ -78,7 +129,7 @@ public class MavenPreferences { public List<String> getArtifactFilter(MavenArtifact artifact) { String filter = recordArtifacts.get(artifact.getCoordinates()).getMavenArtifact().getFilter(); if (filter != null && !filter.isEmpty()) { - return Stream.of(filter.split(":")).collect(Collectors.toList()); + return Stream.of(filter.split(File.pathSeparator)).collect(Collectors.toList()); } return new ArrayList<>(); } @@ -96,12 +147,13 @@ public class MavenPreferences { } private List<String> getArtifactsJarsDependencies() { - Stream<String> deps = recordArtifacts.values() + return recordArtifacts.values() .stream() .map(p -> p.getMavenArtifact().getDependencies()) .filter(d -> d != null && !d.isEmpty()) - .flatMap(d -> Stream.of(d.split(":"))); - return deps.distinct().collect(Collectors.toList()); + .flatMap(d -> Stream.of(d.split(File.pathSeparator))) + .distinct() + .collect(Collectors.toList()); } public List<File> getArtifactsFiles() { @@ -136,12 +188,13 @@ public class MavenPreferences { } public List<String> getArtifactsFilter() { - Stream<String> filters = recordArtifacts.values() + return recordArtifacts.values() .stream() .map(p -> p.getMavenArtifact().getFilter()) .filter(f -> f != null && !f.isEmpty()) - .flatMap(f -> Stream.of(f.split(":"))); - return filters.distinct().collect(Collectors.toList()); + .flatMap(f -> Stream.of(f.split(File.pathSeparator))) + .distinct() + .collect(Collectors.toList()); } public List<String> getArtifactsCoordinates() { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/PreferencesControllerBase.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/PreferencesControllerBase.java new file mode 100644 index 0000000000000000000000000000000000000000..88690924a349c24fe2c894eaabdc3dac530392a4 --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/PreferencesControllerBase.java @@ -0,0 +1,191 @@ +package com.oracle.javafx.scenebuilder.kit.preferences; + +import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.MavenArtifact; +import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository.Repository; + +import java.util.logging.Level; +import java.util.logging.Logger; +import java.util.prefs.BackingStoreException; +import java.util.prefs.Preferences; + +public abstract class PreferencesControllerBase { + + /*************************************************************************** + * * + * Static fields * + * * + **************************************************************************/ + + // NODES + private static final String DOCUMENTS = "DOCUMENTS"; //NOI18N + private static final String ARTIFACTS = "ARTIFACTS"; //NOI18N + private static final String REPOSITORIES = "REPOSITORIES"; //NOI18N + + // GLOBAL PREFERENCES + public static final String ROOT_CONTAINER_HEIGHT = "ROOT_CONTAINER_HEIGHT"; //NOI18N + public static final String ROOT_CONTAINER_WIDTH = "ROOT_CONTAINER_WIDTH"; //NOI18N + public static final String BACKGROUND_IMAGE = "BACKGROUND_IMAGE"; //NOI18N + public static final String ALIGNMENT_GUIDES_COLOR = "ALIGNMENT_GUIDES_COLOR"; //NOI18N + public static final String PARENT_RING_COLOR = "PARENT_RING_COLOR"; //NOI18N + public static final String LIBRARY_DISPLAY_OPTION = "LIBRARY_DISPLAY_OPTION"; //NOI18N + public static final String HIERARCHY_DISPLAY_OPTION = "HIERARCHY_DISPLAY_OPTION"; //NOI18N + + // DOCUMENT SPECIFIC PREFERENCES + public static final String PATH = "path"; //NOI18N + public static final String X_POS = "X"; //NOI18N + public static final String Y_POS = "Y"; //NOI18N + public static final String STAGE_HEIGHT = "height"; //NOI18N + public static final String STAGE_WIDTH = "width"; //NOI18N + public static final String SCENE_STYLE_SHEETS = "sceneStyleSheets"; //NOI18N + public static final String I18N_RESOURCE = "I18NResource"; //NOI18N + public static final String THEME = "theme"; + public static final String GLUON_SWATCH = "gluonSwatch"; + public static final String GLUON_THEME = "gluonTheme"; + + /*************************************************************************** + * * + * Instance fields * + * * + **************************************************************************/ + + protected final Preferences applicationRootPreferences; + protected final PreferencesRecordGlobalBase recordGlobal; + protected final Preferences documentsRootPreferences; + protected final Preferences artifactsRootPreferences; + protected final Preferences repositoriesRootPreferences; + protected final MavenPreferences mavenPreferences; + protected final RepositoryPreferences repositoryPreferences; + + + + /*************************************************************************** + * * + * Constructors * + * * + **************************************************************************/ + + public PreferencesControllerBase(String basePrefNodeName, PreferencesRecordGlobalBase recordGlobal) { + applicationRootPreferences = Preferences.userNodeForPackage(getClass()).node(basePrefNodeName); + + // Preferences global to the SB application + this.recordGlobal = recordGlobal; + recordGlobal.setApplicationRootPreferences(applicationRootPreferences); + + // Preferences specific to the document + // Create the root node for all documents preferences + documentsRootPreferences = applicationRootPreferences.node(DOCUMENTS); + + // Preferences specific to the maven artifacts + // Create the root node for all artifacts preferences + artifactsRootPreferences = applicationRootPreferences.node(ARTIFACTS); + + // Preferences specific to the repositories + // Create the root node for all repositories preferences + repositoriesRootPreferences = applicationRootPreferences.node(REPOSITORIES); + + // maven artifacts + mavenPreferences = new MavenPreferences(); + + // create initial map of existing artifacts + try { + final String[] childrenNames = artifactsRootPreferences.childrenNames(); + for (String child : childrenNames) { + Preferences artifactPreferences = artifactsRootPreferences.node(child); + MavenArtifact mavenArtifact = new MavenArtifact(child); + mavenArtifact.setPath(artifactPreferences.get(PreferencesRecordArtifact.PATH, null)); + mavenArtifact.setDependencies(artifactPreferences.get(PreferencesRecordArtifact.DEPENDENCIES, null)); + mavenArtifact.setFilter(artifactPreferences.get(PreferencesRecordArtifact.FILTER, null)); + final PreferencesRecordArtifact recordArtifact = new PreferencesRecordArtifact( + artifactsRootPreferences, mavenArtifact); + mavenPreferences.addRecordArtifact(child, recordArtifact); + } + } catch (BackingStoreException ex) { + Logger.getLogger(PreferencesControllerBase.class.getName()).log(Level.SEVERE, null, ex); + } + + // repositories + repositoryPreferences = new RepositoryPreferences(); + + // create initial map of existing repositories + try { + final String[] childrenNames = repositoriesRootPreferences.childrenNames(); + for (String child : childrenNames) { + Preferences rp = repositoriesRootPreferences.node(child); + Repository repository = new Repository(rp.get(PreferencesRecordRepository.REPO_ID, null), + rp.get(PreferencesRecordRepository.REPO_TYPE, null), + rp.get(PreferencesRecordRepository.REPO_URL, null), + rp.get(PreferencesRecordRepository.REPO_USER, null), + rp.get(PreferencesRecordRepository.REPO_PASS, null)); + final PreferencesRecordRepository recordRepository = new PreferencesRecordRepository( + artifactsRootPreferences, repository); + repositoryPreferences.addRecordRepository(child, recordRepository); + } + } catch (BackingStoreException ex) { + Logger.getLogger(PreferencesControllerBase.class.getName()).log(Level.SEVERE, null, ex); + } + + } + + /*************************************************************************** + * * + * Methods * + * * + **************************************************************************/ + + public PreferencesRecordGlobalBase getRecordGlobal() { + return recordGlobal; + } + + public MavenPreferences getMavenPreferences() { + return mavenPreferences; + } + + public PreferencesRecordArtifact getRecordArtifact(MavenArtifact mavenArtifact) { + PreferencesRecordArtifact recordArtifact = mavenPreferences.getRecordArtifact(mavenArtifact.getCoordinates()); + if (recordArtifact == null) { + recordArtifact = new PreferencesRecordArtifact(artifactsRootPreferences, mavenArtifact); + mavenPreferences.addRecordArtifact(mavenArtifact.getCoordinates(), recordArtifact); + } + return recordArtifact; + } + + public void removeArtifact(String coordinates) { + if (coordinates != null && !coordinates.isEmpty() && + mavenPreferences.getRecordArtifact(coordinates) != null) { + Preferences node = artifactsRootPreferences.node(coordinates); + try { + node.removeNode(); + mavenPreferences.removeRecordArtifact(coordinates); + } catch (BackingStoreException ex) { + Logger.getLogger(PreferencesControllerBase.class.getName()).log(Level.SEVERE, null, ex); + } + } + } + + public RepositoryPreferences getRepositoryPreferences() { + return repositoryPreferences; + } + + public PreferencesRecordRepository getRecordRepository(Repository repository) { + PreferencesRecordRepository recordRepository = repositoryPreferences.getRecordRepository(repository.getId()); + if (recordRepository == null) { + recordRepository = new PreferencesRecordRepository(repositoriesRootPreferences, repository); + repositoryPreferences.addRecordRepository(repository.getId(), recordRepository); + } + return recordRepository; + } + + public void removeRepository(String id) { + if (id != null && !id.isEmpty() && + repositoryPreferences.getRecordRepository(id) != null) { + Preferences node = repositoriesRootPreferences.node(id); + try { + node.removeNode(); + repositoryPreferences.removeRecordRepository(id); + } catch (BackingStoreException ex) { + Logger.getLogger(PreferencesControllerBase.class.getName()).log(Level.SEVERE, null, ex); + } + } + } + +} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesRecordArtifact.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/PreferencesRecordArtifact.java similarity index 70% rename from sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesRecordArtifact.java rename to sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/PreferencesRecordArtifact.java index 70362a96f62c880333938806449565fefa3f4a84..6fd84a87ed00aa3484f6e6b5be87fed3e88e5893 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesRecordArtifact.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/PreferencesRecordArtifact.java @@ -1,4 +1,35 @@ -package com.oracle.javafx.scenebuilder.app.preferences; +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package com.oracle.javafx.scenebuilder.kit.preferences; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.MavenArtifact; import java.util.logging.Level; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/PreferencesRecordGlobalBase.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/PreferencesRecordGlobalBase.java new file mode 100644 index 0000000000000000000000000000000000000000..9d08620101e3a2bb58f73650d841f4e22447ac21 --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/PreferencesRecordGlobalBase.java @@ -0,0 +1,245 @@ +package com.oracle.javafx.scenebuilder.kit.preferences; + +import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; +import com.oracle.javafx.scenebuilder.kit.editor.panel.content.ContentPanelController; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; +import javafx.scene.image.Image; +import javafx.scene.paint.Color; + +import java.net.URL; +import java.util.prefs.Preferences; + +public abstract class PreferencesRecordGlobalBase { + + /*************************************************************************** + * * + * Support Classes * + * * + **************************************************************************/ + + public enum BackgroundImage { + + BACKGROUND_01 { + + @Override + public String toString() { + return I18N.getString("prefs.background.value1"); + } + }, + BACKGROUND_02 { + + @Override + public String toString() { + return I18N.getString("prefs.background.value2"); + } + }, + BACKGROUND_03 { + + @Override + public String toString() { + return I18N.getString("prefs.background.value3"); + } + } + } + + /*************************************************************************** + * * + * Static fields * + * * + **************************************************************************/ + + public static final BackgroundImage DEFAULT_BACKGROUND_IMAGE + = BackgroundImage.BACKGROUND_03; + public static final Color DEFAULT_ALIGNMENT_GUIDES_COLOR = Color.RED; + public static final Color DEFAULT_PARENT_RING_COLOR = Color.rgb(238, 168, 47); + public static final EditorPlatform.Theme DEFAULT_THEME = EditorPlatform.DEFAULT_THEME; + public static final EditorPlatform.GluonSwatch DEFAULT_SWATCH = EditorPlatform.DEFAULT_SWATCH; + public static final EditorPlatform.GluonTheme DEFAULT_GLUON_THEME = EditorPlatform.DEFAULT_GLUON_THEME; + + /*************************************************************************** + * * + * Instance fields * + * * + **************************************************************************/ + + protected Preferences applicationRootPreferences; + + protected double rootContainerHeight; + protected double rootContainerWidth; + protected BackgroundImage backgroundImage = DEFAULT_BACKGROUND_IMAGE; + protected Color alignmentGuidesColor = DEFAULT_ALIGNMENT_GUIDES_COLOR; + protected Color parentRingColor = DEFAULT_PARENT_RING_COLOR; + + protected EditorPlatform.Theme theme = DEFAULT_THEME; + protected EditorPlatform.GluonSwatch gluonSwatch = DEFAULT_SWATCH; + protected EditorPlatform.GluonTheme gluonTheme = DEFAULT_GLUON_THEME; + + /*************************************************************************** + * * + * Constructors * + * * + **************************************************************************/ + + public PreferencesRecordGlobalBase() { + } + + /*************************************************************************** + * * + * Methods * + * * + **************************************************************************/ + + public void setApplicationRootPreferences(Preferences applicationRootPreferences) { + this.applicationRootPreferences = applicationRootPreferences; + } + + public double getRootContainerHeight() { + return rootContainerHeight; + } + + public void setRootContainerHeight(double value) { + rootContainerHeight = value; + } + + public double getRootContainerWidth() { + return rootContainerWidth; + } + + public void setRootContainerWidth(double value) { + rootContainerWidth = value; + } + + public BackgroundImage getBackgroundImage() { + return backgroundImage; + } + + public Image getBackgroundImageImage() { return getImage(backgroundImage); } + + public void setBackgroundImage(BackgroundImage value) { + backgroundImage = value; + } + + public Color getAlignmentGuidesColor() { + return alignmentGuidesColor; + } + + public void setAlignmentGuidesColor(Color value) { + alignmentGuidesColor = value; + } + + public Color getParentRingColor() { + return parentRingColor; + } + + public void setParentRingColor(Color value) { + parentRingColor = value; + } + + public EditorPlatform.Theme getTheme() { return theme; } + + public void setTheme(EditorPlatform.Theme theme) { this.theme = theme; } + + public EditorPlatform.GluonSwatch getSwatch() { return gluonSwatch; } + + public void setSwatch(EditorPlatform.GluonSwatch swatch) { this.gluonSwatch = swatch; } + + public EditorPlatform.GluonTheme getGluonTheme() { return gluonTheme; } + + public void setGluonTheme(EditorPlatform.GluonTheme theme) { this.gluonTheme = theme; } + + /** + * Read data from the java preferences DB and initialize properties. + */ + public void readFromJavaPreferences() { + + assert applicationRootPreferences != null; + + // Document size + final double height = applicationRootPreferences.getDouble(PreferencesControllerBase.ROOT_CONTAINER_HEIGHT, + -1); + setRootContainerHeight(height); + final double width = applicationRootPreferences.getDouble(PreferencesControllerBase.ROOT_CONTAINER_WIDTH, + -1); + setRootContainerWidth(width); + + // Background image + final String image = applicationRootPreferences.get(PreferencesControllerBase.BACKGROUND_IMAGE, + DEFAULT_BACKGROUND_IMAGE.name()); + setBackgroundImage(BackgroundImage.valueOf(image)); + + // Alignment guides color + final String agColor = applicationRootPreferences.get(PreferencesControllerBase.ALIGNMENT_GUIDES_COLOR, + DEFAULT_ALIGNMENT_GUIDES_COLOR.toString()); + setAlignmentGuidesColor(Color.valueOf(agColor)); + + // Parent ring color + final String prColor = applicationRootPreferences.get(PreferencesControllerBase.PARENT_RING_COLOR, + DEFAULT_PARENT_RING_COLOR.toString()); + setParentRingColor(Color.valueOf(prColor)); + + // Document theme + String themeName = applicationRootPreferences.get(PreferencesControllerBase.THEME, DEFAULT_THEME.name()); + theme = EditorPlatform.Theme.valueOf(themeName); + String swatchName = applicationRootPreferences.get(PreferencesControllerBase.GLUON_SWATCH, DEFAULT_SWATCH.name()); + gluonSwatch = EditorPlatform.GluonSwatch.valueOf(swatchName); + String gluonThemeName = applicationRootPreferences.get(PreferencesControllerBase.GLUON_THEME, DEFAULT_GLUON_THEME.name()); + gluonTheme = EditorPlatform.GluonTheme.valueOf(gluonThemeName); + + } + + public void writeToJavaPreferences(String key) { + assert applicationRootPreferences != null; + assert key != null; + switch (key) { + case PreferencesControllerBase.ROOT_CONTAINER_HEIGHT: + applicationRootPreferences.putDouble(PreferencesControllerBase.ROOT_CONTAINER_HEIGHT, getRootContainerHeight()); + break; + case PreferencesControllerBase.ROOT_CONTAINER_WIDTH: + applicationRootPreferences.putDouble(PreferencesControllerBase.ROOT_CONTAINER_WIDTH, getRootContainerWidth()); + break; + case PreferencesControllerBase.BACKGROUND_IMAGE: + applicationRootPreferences.put(PreferencesControllerBase.BACKGROUND_IMAGE, backgroundImage.name()); + break; + case PreferencesControllerBase.ALIGNMENT_GUIDES_COLOR: + applicationRootPreferences.put(PreferencesControllerBase.ALIGNMENT_GUIDES_COLOR, getAlignmentGuidesColor().toString()); + break; + case PreferencesControllerBase.PARENT_RING_COLOR: + applicationRootPreferences.put(PreferencesControllerBase.PARENT_RING_COLOR, getParentRingColor().toString()); + break; + case PreferencesControllerBase.THEME: + applicationRootPreferences.put(PreferencesControllerBase.THEME, getTheme().name()); + break; + case PreferencesControllerBase.GLUON_SWATCH: + applicationRootPreferences.put(PreferencesControllerBase.GLUON_SWATCH, getSwatch().name()); + break; + case PreferencesControllerBase.GLUON_THEME: + applicationRootPreferences.put(PreferencesControllerBase.GLUON_THEME, getGluonTheme().name()); + break; + default: + assert false; + break; + } + } + + private static Image getImage(BackgroundImage bgi) { + final URL url; + switch (bgi) { + case BACKGROUND_01: + url = PreferencesRecordGlobalBase.class.getResource("Background-Blue-Grid.png"); //NOI18N + break; + case BACKGROUND_02: + url = PreferencesRecordGlobalBase.class.getResource("Background-Neutral-Grid.png"); //NOI18N + break; + case BACKGROUND_03: + url = ContentPanelController.getDefaultWorkspaceBackgroundURL(); + break; + default: + url = null; + assert false; + break; + } + assert url != null; + return new Image(url.toExternalForm()); + } + +} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesRecordRepository.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/PreferencesRecordRepository.java similarity index 66% rename from sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesRecordRepository.java rename to sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/PreferencesRecordRepository.java index 19c8cc4d37fb2495abecb80802edef02b88b55ea..5c0dc241b19efcbe1f5b61bbbeb0596f0c53d4d2 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preferences/PreferencesRecordRepository.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/PreferencesRecordRepository.java @@ -1,4 +1,35 @@ -package com.oracle.javafx.scenebuilder.app.preferences; +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package com.oracle.javafx.scenebuilder.kit.preferences; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository.Repository; import java.util.logging.Level; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/RepositoryPreferences.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/RepositoryPreferences.java new file mode 100644 index 0000000000000000000000000000000000000000..fa5c92fa6561d113144f0dbf9c5e9dd5487b57e7 --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preferences/RepositoryPreferences.java @@ -0,0 +1,69 @@ +/* + * Copyright (c) 2016, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package com.oracle.javafx.scenebuilder.kit.preferences; + +import com.oracle.javafx.scenebuilder.kit.editor.panel.library.maven.repository.Repository; +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesRecordRepository; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +public class RepositoryPreferences { + + private final Map<String, PreferencesRecordRepository> recordRepositories; + + public RepositoryPreferences() { + this.recordRepositories = new HashMap<>(); + } + + public PreferencesRecordRepository getRecordRepository(String id) { + return recordRepositories.get(id); + } + + public void addRecordRepository(String key, PreferencesRecordRepository object) { + recordRepositories.put(key, object); + } + + public void removeRecordRepository(String id) { + recordRepositories.remove(id); + } + + public List<Repository> getRepositories() { + return recordRepositories.values() + .stream() + .map(p -> p.getRepository()) + .collect(Collectors.toList()); + } + +} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preview/PreviewWindowController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preview/PreviewWindowController.java similarity index 68% rename from sb/src/main/java/com/oracle/javafx/scenebuilder/app/preview/PreviewWindowController.java rename to sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preview/PreviewWindowController.java index ca85722ec2d6f228bd71c118875ce29c75781850..9a5d3ea8f7dfea72792c22f5ff1ecbed8d52183b 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/preview/PreviewWindowController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/preview/PreviewWindowController.java @@ -30,17 +30,15 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.oracle.javafx.scenebuilder.app.preview; +package com.oracle.javafx.scenebuilder.kit.preview; -import com.oracle.javafx.scenebuilder.app.DocumentWindowController; -import com.oracle.javafx.scenebuilder.app.SceneBuilderApp; -import com.oracle.javafx.scenebuilder.app.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.EditorController.Size; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform.Theme; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractWindowController; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.util.MathUtils; import java.io.File; @@ -52,6 +50,7 @@ import java.util.ResourceBundle; import java.util.Timer; import java.util.TimerTask; +import com.oracle.javafx.scenebuilder.kit.util.Utils; import javafx.application.Platform; import javafx.beans.value.ChangeListener; import javafx.collections.FXCollections; @@ -70,11 +69,12 @@ import javafx.scene.shape.MeshView; import javafx.scene.transform.Scale; import javafx.scene.transform.Translate; import javafx.stage.Modality; +import javafx.stage.Stage; import javafx.stage.Window; import javafx.stage.WindowEvent; /** - * + * Controller for Window when calling "Show Preview in Window" */ public final class PreviewWindowController extends AbstractWindowController { @@ -86,11 +86,13 @@ public final class PreviewWindowController extends AbstractWindowController { private boolean autoResize3DContent = true; private static final String NID_PREVIEW_ROOT = "previewRoot"; //NOI18N private EditorPlatform.Theme editorControllerTheme; + private EditorPlatform.GluonTheme editorControllerGluonTheme; + private EditorPlatform.GluonSwatch editorControllerGluonSwatch; private ObservableList<File> sceneStyleSheet; private Size currentSize = Size.SIZE_PREFERRED; private boolean sizeChangedFromMenu = false; private static final double TARGET_SIZE_3D = 500; - + // These two one are used to host the width and height difference // coming from the decoration of the window; this is something highly // dependent on the operating system. @@ -99,7 +101,7 @@ public final class PreviewWindowController extends AbstractWindowController { private boolean isDirty = false; private final long IMMEDIATE = 0; // milliseconds private final long DELAYED = 1000; // milliseconds - + /** * The type of Camera used by the Preview panel. */ @@ -107,37 +109,53 @@ public final class PreviewWindowController extends AbstractWindowController { PARALLEL, PERSPECTIVE } - - public PreviewWindowController(EditorController editorController, Window owner) { + + public PreviewWindowController(EditorController editorController, Stage owner) { super(owner); this.editorController = editorController; this.editorController.fxomDocumentProperty().addListener( (ChangeListener<FXOMDocument>) (ov, od, nd) -> { - assert editorController.getFxomDocument() == nd; - if (od != null) { - od.sceneGraphRevisionProperty().removeListener(fxomDocumentRevisionListener); - od.cssRevisionProperty().removeListener(cssRevisionListener); - } - if (nd != null) { - nd.sceneGraphRevisionProperty().addListener(fxomDocumentRevisionListener); - nd.cssRevisionProperty().addListener(cssRevisionListener); - requestUpdate(DELAYED); - } - }); - + assert editorController.getFxomDocument() == nd; + if (od != null) { + od.sceneGraphRevisionProperty().removeListener(fxomDocumentRevisionListener); + od.cssRevisionProperty().removeListener(cssRevisionListener); + } + if (nd != null) { + nd.sceneGraphRevisionProperty().addListener(fxomDocumentRevisionListener); + nd.cssRevisionProperty().addListener(cssRevisionListener); + requestUpdate(DELAYED); + } + }); + if (editorController.getFxomDocument() != null) { editorController.getFxomDocument().sceneGraphRevisionProperty().addListener(fxomDocumentRevisionListener); editorController.getFxomDocument().cssRevisionProperty().addListener(cssRevisionListener); } - + this.editorControllerTheme = editorController.getTheme(); this.editorController.themeProperty().addListener((ChangeListener<Theme>) (ov, t, t1) -> { if (t1 != null) { editorControllerTheme = t1; requestUpdate(DELAYED); } - }); - + }); + + this.editorControllerGluonSwatch = editorController.getGluonSwatch(); + this.editorController.gluonSwatchProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue != null) { + editorControllerGluonSwatch = newValue; + requestUpdate(DELAYED); + } + })); + + this.editorControllerGluonTheme = editorController.getGluonTheme(); + this.editorController.gluonThemeProperty().addListener(((observable, oldValue, newValue) -> { + if (newValue != null) { + editorControllerGluonTheme = newValue; + requestUpdate(DELAYED); + } + })); + this.sceneStyleSheet = editorController.getSceneStyleSheets(); this.editorController.sceneStyleSheetProperty().addListener((ChangeListener<ObservableList<File>>) (ov, t, t1) -> { if (t1 != null) { @@ -145,11 +163,11 @@ public final class PreviewWindowController extends AbstractWindowController { requestUpdate(DELAYED); } }); - + this.editorController.resourcesProperty().addListener((ChangeListener<ResourceBundle>) (ov, t, t1) -> requestUpdate(DELAYED)); this.editorController.sampleDataEnabledProperty().addListener((ChangeListener<Boolean>) (ov, t, t1) -> requestUpdate(DELAYED)); } - + /* * AbstractWindowController */ @@ -166,7 +184,6 @@ public final class PreviewWindowController extends AbstractWindowController { @Override public void onCloseRequest(WindowEvent event) { -// System.out.println("PreviewWindowController::onCloseRequest called"); if (timer != null) { timer.cancel(); timer = null; @@ -215,10 +232,9 @@ public final class PreviewWindowController extends AbstractWindowController { } dialog.show(); } - + @Override public void closeWindow() { -// System.out.println("PreviewWindowController::closeWindow called"); super.closeWindow(); isDirty = true; } @@ -248,112 +264,115 @@ public final class PreviewWindowController extends AbstractWindowController { * In some cases it is wise to used delay = 0, e.g. when opening the window. */ private void requestUpdate(long delay) { -// System.out.println("PreviewWindowController::requestUpdate: Called"); - TimerTask timerTask = new TimerTask() { @Override public void run() { - // JavaFX data should only be accessed on the JavaFX thread. - // => we must wrap the code into a Runnable object and call the Platform.runLater - Platform.runLater(() -> { - final FXOMDocument fxomDocument = editorController.getFxomDocument(); - String themeStyleSheetString = null; - if (fxomDocument != null) { - // We clone the FXOMDocument - FXOMDocument clone; - - try { - clone = new FXOMDocument(fxomDocument.getFxmlText(), - fxomDocument.getLocation(), - fxomDocument.getClassLoader(), - fxomDocument.getResources()); - clone.setSampleDataEnabled(fxomDocument.isSampleDataEnabled()); - } catch (IOException ex) { - throw new RuntimeException("Bug in PreviewWindowController::requestUpdate", ex); //NOI18N - } + // JavaFX data should only be accessed on the JavaFX thread. + // => we must wrap the code into a Runnable object and call the Platform.runLater + Platform.runLater(() -> { + final FXOMDocument fxomDocument = editorController.getFxomDocument(); + String themeStyleSheetString = null; + if (fxomDocument != null) { + // We clone the FXOMDocument + FXOMDocument clone; + + try { + clone = new FXOMDocument(fxomDocument.getFxmlText(), + fxomDocument.getLocation(), + fxomDocument.getClassLoader(), + fxomDocument.getResources()); + clone.setSampleDataEnabled(fxomDocument.isSampleDataEnabled()); + } catch (IOException ex) { + throw new RuntimeException("Bug in PreviewWindowController::requestUpdate", ex); //NOI18N + } - Object sceneGraphRoot = clone.getSceneGraphRoot(); - themeStyleSheetString = EditorPlatform.getThemeStylesheetURL(editorControllerTheme); - - if (sceneGraphRoot instanceof Parent) { - ((Parent) sceneGraphRoot).setId(NID_PREVIEW_ROOT); - assert ((Parent) sceneGraphRoot).getScene() == null; - - setRoot((Parent) updateAutoResizeTransform((Parent) sceneGraphRoot)); - - // Compute the proper styling - List<String> newStyleSheets1 = new ArrayList<>(); - computeStyleSheets(newStyleSheets1, sceneGraphRoot); - - // Clean all styling - ((Parent) sceneGraphRoot).getStylesheets().removeAll(); - - // Apply the new styling - ((Parent) sceneGraphRoot).getStylesheets().addAll(newStyleSheets1); - } else if (sceneGraphRoot instanceof Node) { - StackPane sp1 = new StackPane(); - sp1.setId(NID_PREVIEW_ROOT); - - // Compute the proper styling - List<String> newStyleSheets2 = new ArrayList<>(); - computeStyleSheets(newStyleSheets2, sceneGraphRoot); - - // Apply the new styling as a whole - sp1.getStylesheets().addAll(newStyleSheets2); - - // With some 3D assets such as TuxRotation the - // rendering is wrong unless applyCSS is called. - ((Node) sceneGraphRoot).applyCss(); - sp1.getChildren().add(updateAutoResizeTransform((Node) sceneGraphRoot)); - setRoot(sp1); - } else { - setCameraType(CameraType.PARALLEL); - sizeChangedFromMenu = false; - StackPane sp2 = new StackPane(new Label(I18N.getString("preview.not.node"))); - sp2.setId(NID_PREVIEW_ROOT); - sp2.setPrefSize(WIDTH_WHEN_EMPTY, HEIGHT_WHEN_EMPTY); - setRoot(sp2); - } + Object sceneGraphRoot = clone.getSceneGraphRoot(); + themeStyleSheetString = editorControllerTheme.getStylesheetURL(); + + if (sceneGraphRoot instanceof Parent) { + ((Parent) sceneGraphRoot).setId(NID_PREVIEW_ROOT); + assert ((Parent) sceneGraphRoot).getScene() == null; + + setRoot((Parent) updateAutoResizeTransform((Parent) sceneGraphRoot)); + + // Compute the proper styling + List<String> newStyleSheets1 = new ArrayList<>(); + computeStyleSheets(newStyleSheets1, sceneGraphRoot); + + // Clean all styling + ((Parent) sceneGraphRoot).getStylesheets().removeAll(); + + // Apply the new styling + ((Parent) sceneGraphRoot).getStylesheets().addAll(newStyleSheets1); + } else if (sceneGraphRoot instanceof Node) { + StackPane sp1 = new StackPane(); + sp1.setId(NID_PREVIEW_ROOT); + + // Compute the proper styling + List<String> newStyleSheets2 = new ArrayList<>(); + computeStyleSheets(newStyleSheets2, sceneGraphRoot); + + // Apply the new styling as a whole + sp1.getStylesheets().addAll(newStyleSheets2); + + // With some 3D assets such as TuxRotation the + // rendering is wrong unless applyCSS is called. + ((Node) sceneGraphRoot).applyCss(); + sp1.getChildren().add(updateAutoResizeTransform((Node) sceneGraphRoot)); + setRoot(sp1); } else { setCameraType(CameraType.PARALLEL); sizeChangedFromMenu = false; - StackPane sp3 = new StackPane(new Label(I18N.getString("preview.no.document"))); - sp3.setId(NID_PREVIEW_ROOT); - sp3.setPrefSize(WIDTH_WHEN_EMPTY, HEIGHT_WHEN_EMPTY); - setRoot(sp3); + StackPane sp2 = new StackPane(new Label(I18N.getString("preview.not.node"))); + sp2.setId(NID_PREVIEW_ROOT); + sp2.setPrefSize(WIDTH_WHEN_EMPTY, HEIGHT_WHEN_EMPTY); + setRoot(sp2); } + } else { + setCameraType(CameraType.PARALLEL); + sizeChangedFromMenu = false; + StackPane sp3 = new StackPane(new Label(I18N.getString("preview.no.document"))); + sp3.setId(NID_PREVIEW_ROOT); + sp3.setPrefSize(WIDTH_WHEN_EMPTY, HEIGHT_WHEN_EMPTY); + setRoot(sp3); + } + + getScene().setRoot(getRoot()); + if (themeStyleSheetString != null) { + String gluonDocumentStylesheet = EditorPlatform.getGluonDocumentStylesheetURL(); + String gluonSwatchStylesheet = editorControllerGluonSwatch.getStylesheetURL(); + String gluonThemeStylesheet = editorControllerGluonTheme.getStylesheetURL(); + if (editorControllerTheme == Theme.GLUON_MOBILE_LIGHT || editorControllerTheme == Theme.GLUON_MOBILE_DARK) { + ObservableList<String> newStylesheets = FXCollections.observableArrayList(getScene().getStylesheets()); - getScene().setRoot(getRoot()); - if (themeStyleSheetString != null) { - String gluonDocumentStylesheet = SceneBuilderApp.class.getResource("css/GluonDocument.css").toExternalForm(); - List<String> additionalGluonStylesheets = EditorPlatform.getAdditionalStylesheetsURL(Theme.GLUON_MOBILE); - if (editorControllerTheme == Theme.GLUON_MOBILE) { - ObservableList<String> newStylesheets = FXCollections.observableArrayList(getScene().getStylesheets()); - - if (!newStylesheets.contains(themeStyleSheetString)) { - newStylesheets.add(themeStyleSheetString); - } - if (!newStylesheets.contains(gluonDocumentStylesheet)) { - newStylesheets.add(gluonDocumentStylesheet); - } - if (!newStylesheets.contains(additionalGluonStylesheets)) { - newStylesheets.addAll(additionalGluonStylesheets); - } - getScene().setUserAgentStylesheet(EditorPlatform.getThemeStylesheetURL(Theme.MODENA)); - getScene().getStylesheets().clear(); - getScene().getStylesheets().addAll(newStylesheets); - } else { - String gluonStylesheet = EditorPlatform.getThemeStylesheetURL(Theme.GLUON_MOBILE); - getScene().setUserAgentStylesheet(themeStyleSheetString); - getScene().getStylesheets().remove(gluonStylesheet); - getScene().getStylesheets().remove(gluonDocumentStylesheet); - getScene().getStylesheets().remove(additionalGluonStylesheets); + if (!newStylesheets.contains(themeStyleSheetString)) { + newStylesheets.add(themeStyleSheetString); + } + if (!newStylesheets.contains(gluonDocumentStylesheet)) { + newStylesheets.add(gluonDocumentStylesheet); + } + if (!newStylesheets.contains(gluonSwatchStylesheet)) { + newStylesheets.add(gluonSwatchStylesheet); } + if (!newStylesheets.contains(gluonThemeStylesheet)) { + newStylesheets.add(gluonThemeStylesheet); + } + getScene().setUserAgentStylesheet(Theme.MODENA.getStylesheetURL()); + getScene().getStylesheets().clear(); + getScene().getStylesheets().addAll(newStylesheets); + } else { + String gluonStylesheet = Theme.GLUON_MOBILE_LIGHT.getStylesheetURL(); + getScene().setUserAgentStylesheet(themeStyleSheetString); + getScene().getStylesheets().remove(gluonStylesheet); + getScene().getStylesheets().remove(gluonDocumentStylesheet); + getScene().getStylesheets().remove(gluonSwatchStylesheet); + getScene().getStylesheets().remove(gluonThemeStylesheet); } - updateWindowSize(); - updateWindowTitle(); - }); + } + updateWindowSize(); + updateWindowTitle(); + }); } }; @@ -364,27 +383,27 @@ public final class PreviewWindowController extends AbstractWindowController { timer = new Timer(true); timer.schedule(timerTask, delay); // milliseconds } - + public boolean userResizedPreviewWindow() { boolean res = false; double sceneHeight = getScene().getHeight(); double sceneWidth = getScene().getWidth(); - - if ( sceneHeight > 0 && sceneWidth > 0) { + + if (sceneHeight > 0 && sceneWidth > 0) { double prefHeight = getRoot().prefHeight(-1); double prefWidth = getRoot().prefWidth(-1); - - if ((! MathUtils.equals(prefHeight, sceneHeight) - && ! MathUtils.equals(sceneHeight, HEIGHT_WHEN_EMPTY) - && ! MathUtils.equals(sceneHeight, getHeightFromSize(getSize()))) + + if ((!MathUtils.equals(prefHeight, sceneHeight) + && !MathUtils.equals(sceneHeight, HEIGHT_WHEN_EMPTY) + && !MathUtils.equals(sceneHeight, getHeightFromSize(getSize()))) || - (! MathUtils.equals(prefWidth, sceneWidth) - && ! MathUtils.equals(sceneWidth, WIDTH_WHEN_EMPTY) - && ! MathUtils.equals(sceneWidth, getWidthFromSize(getSize())))) { + (!MathUtils.equals(prefWidth, sceneWidth) + && !MathUtils.equals(sceneWidth, WIDTH_WHEN_EMPTY) + && !MathUtils.equals(sceneWidth, getWidthFromSize(getSize())))) { res = true; } } - + return res; } @@ -406,7 +425,7 @@ public final class PreviewWindowController extends AbstractWindowController { // sure the area rendered has the exact size we want. getStage().setWidth(getWidthFromSize(getSize()) + decorationX); getStage().setHeight(getHeightFromSize(getSize()) + decorationY); - } else if ( ! userResizedPreviewWindow()) { + } else if (!userResizedPreviewWindow()) { // Experience shows 3D layout defined so that top level item is // a Group are rendered correctly on their own. The 3D case is // something that deserves a closer look anyway. @@ -419,7 +438,7 @@ public final class PreviewWindowController extends AbstractWindowController { // the user size, else we size the layout to the scene. getStage().sizeToScene(); } - + // The first time preview is rendered we always enter this case. // The whole layout is made visible and size difference between // Scene and Stage allows to compute size taken by decoration. @@ -435,9 +454,9 @@ public final class PreviewWindowController extends AbstractWindowController { private void updateWindowTitle() { final FXOMDocument fxomDocument = editorController.getFxomDocument(); - getStage().setTitle(DocumentWindowController.makeTitle(fxomDocument)); + getStage().setTitle(Utils.makeTitle(fxomDocument)); } - + public final void setCameraType(PreviewWindowController.CameraType ct) { cameraType = ct; updateCamera(); @@ -447,11 +466,9 @@ public final class PreviewWindowController extends AbstractWindowController { if (getScene() != null) { if (cameraType == CameraType.PERSPECTIVE) { // Set Perspective Camera -// System.out.println("Adding a perspective camera to Preview..."); getScene().setCamera(new PerspectiveCamera(false)); } else { // Set Parallel Camera -// System.out.println("Adding a parallel camera to Preview..."); getScene().setCamera(null); // null defaults to Parallel camera } } @@ -470,7 +487,7 @@ public final class PreviewWindowController extends AbstractWindowController { * Enables or disables autoresizing of 3D content. * * @param autoResize3DContent true if this preview panel should autoresize - * 3D content. + * 3D content. */ public void setAutoResize3DContent(boolean autoResize3DContent) { this.autoResize3DContent = autoResize3DContent; @@ -480,7 +497,6 @@ public final class PreviewWindowController extends AbstractWindowController { // camera to become able to display it. Node updateAutoResizeTransform(Node whatever) { Node res = whatever; -// System.out.println("PreviewWindowController::updateAutoResizeTransform: Called"); assert editorController.getFxomDocument() != null; if (editorController.is3D() && autoResize3DContent) { @@ -497,21 +513,26 @@ public final class PreviewWindowController extends AbstractWindowController { final double tZ = -rootBounds.getMinZ(); res.getTransforms().add(new Scale(scale, scale, scale)); res.getTransforms().add(new Translate(tX, tY, tZ)); -// System.out.println("updateAutoResizeTransform " + scaleX + " - " + scaleY + " - " + scaleZ + " - " + scale); // Set the scene camera to PerspectiveCamera, to see 3D nodes correctly. setCameraType(CameraType.PERSPECTIVE); } else { setCameraType(CameraType.PARALLEL); } - + return res; } private double getWidthFromSize(Size size) { double res = WIDTH_WHEN_EMPTY; - + switch (size) { + case SIZE_335x600: + res = 335.0; + break; + case SIZE_900x600: + res = 900.0; + break; case SIZE_1280x800: res = 1280.0; break; @@ -530,14 +551,20 @@ public final class PreviewWindowController extends AbstractWindowController { default: break; } - + return res; } private double getHeightFromSize(Size size) { double res = HEIGHT_WHEN_EMPTY; - + switch (size) { + case SIZE_335x600: + res = 600.0; + break; + case SIZE_900x600: + res = 600.0; + break; case SIZE_1280x800: res = 800.0; break; @@ -556,25 +583,24 @@ public final class PreviewWindowController extends AbstractWindowController { default: break; } - + return res; } - + /** - * * @return the current Size used for previewing. */ public Size getSize() { return currentSize; } - + public void setSize(Size size) { currentSize = size; sizeChangedFromMenu = true; requestUpdate(IMMEDIATE); } - - private void computeStyleSheets(List<String> newStyleSheets, Object sceneGraphRoot) { + + private void computeStyleSheets(List<String> newStyleSheets, Object sceneGraphRoot) { if (sceneGraphRoot instanceof Parent) { // At that stage current style sheets are the one defined within the FXML ObservableList<String> currentStyleSheets = ((Parent) sceneGraphRoot).getStylesheets(); @@ -597,19 +623,19 @@ public final class PreviewWindowController extends AbstractWindowController { } } } - + public boolean sizeDoesFit(Size size) { boolean res = false; - + if (getStage() != null) { Rectangle2D frame = getBiggestViewableRectangle(); - + if (getWidthFromSize(size) <= frame.getWidth() - decorationX && getHeightFromSize(size) <= frame.getHeight() - decorationY) { res = true; } } - + return res; } } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/selectionbar/SelectionBarController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/selectionbar/SelectionBarController.java similarity index 98% rename from sb/src/main/java/com/oracle/javafx/scenebuilder/app/selectionbar/SelectionBarController.java rename to sb/src/main/java/com/oracle/javafx/scenebuilder/kit/selectionbar/SelectionBarController.java index bc13e6f15d48c573163687791f81dbc21db9f545..4b877f4507a1b819a64ba866264cdb56c8dd4fa5 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/selectionbar/SelectionBarController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/selectionbar/SelectionBarController.java @@ -29,10 +29,11 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.oracle.javafx.scenebuilder.app.selectionbar; +package com.oracle.javafx.scenebuilder.kit.selectionbar; import java.net.URL; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.fxml.FXML; @@ -46,7 +47,6 @@ import javafx.scene.layout.Priority; import javafx.scene.layout.Region; import javafx.scene.layout.StackPane; -import com.oracle.javafx.scenebuilder.app.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractFxmlPanelController; import com.oracle.javafx.scenebuilder.kit.editor.selection.ObjectSelectionGroup; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/skeleton/SkeletonBuffer.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/skeleton/SkeletonBuffer.java similarity index 94% rename from sb/src/main/java/com/oracle/javafx/scenebuilder/app/skeleton/SkeletonBuffer.java rename to sb/src/main/java/com/oracle/javafx/scenebuilder/kit/skeleton/SkeletonBuffer.java index db4342cec7dedc7b9f138fe77dcbfa1b5abdb92a..6a66d96857bfbd372e19d8170484b0774581bfcf 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/skeleton/SkeletonBuffer.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/skeleton/SkeletonBuffer.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -29,13 +30,12 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.oracle.javafx.scenebuilder.app.skeleton; +package com.oracle.javafx.scenebuilder.kit.skeleton; -import com.oracle.javafx.scenebuilder.app.DocumentWindowController; -import com.oracle.javafx.scenebuilder.app.i18n.I18N; -import com.oracle.javafx.scenebuilder.app.util.eventnames.EventNames; -import com.oracle.javafx.scenebuilder.app.util.eventnames.ImportBuilder; -import com.oracle.javafx.scenebuilder.app.util.eventnames.FindEventNamesUtil; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.util.eventnames.EventNames; +import com.oracle.javafx.scenebuilder.kit.util.eventnames.ImportBuilder; +import com.oracle.javafx.scenebuilder.kit.util.eventnames.FindEventNamesUtil; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMObject; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMPropertyT; @@ -48,7 +48,7 @@ import java.util.*; /** * */ -class SkeletonBuffer { +public class SkeletonBuffer { private final FXOMDocument document; private final String INDENT = " "; //NOI18N @@ -64,19 +64,20 @@ class SkeletonBuffer { private final StringBuilder handlers = new StringBuilder(); private static final String FXML_ANNOTATION = "@FXML\n"; - enum TEXT_TYPE { + private final String documentName; + public enum TEXT_TYPE { WITH_COMMENTS, WITHOUT_COMMENTS - }; - - enum FORMAT_TYPE { + } + public enum FORMAT_TYPE { COMPACT, FULL } - SkeletonBuffer(FXOMDocument document) { + public SkeletonBuffer(FXOMDocument document, String documentName) { assert document != null; this.document = document; + this.documentName = documentName; } public void setTextType(TEXT_TYPE type) { @@ -89,7 +90,6 @@ class SkeletonBuffer { private void constructHeader() { if (textType == TEXT_TYPE.WITH_COMMENTS) { - String documentName = DocumentWindowController.makeTitle(document); final String title = I18N.getString("skeleton.window.title", documentName); header.append("/**\n"); //NOI18N header.append(" * "); //NOI18N @@ -157,7 +157,6 @@ class SkeletonBuffer { constructHeader(); constructPackageLine(); constructClassLine(); - String documentName = DocumentWindowController.makeTitle(document); // All that depends on fx:id Map<String, FXOMObject> fxids = document.collectFxIds(); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/skeleton/SkeletonWindowController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/skeleton/SkeletonWindowController.java similarity index 81% rename from sb/src/main/java/com/oracle/javafx/scenebuilder/app/skeleton/SkeletonWindowController.java rename to sb/src/main/java/com/oracle/javafx/scenebuilder/kit/skeleton/SkeletonWindowController.java index a2ae31c852a2925f461b19f9fc694928c8fecacb..d177544838e2931a3ae5b7feff6f2f8109ff595d 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/skeleton/SkeletonWindowController.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/skeleton/SkeletonWindowController.java @@ -29,12 +29,8 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -package com.oracle.javafx.scenebuilder.app.skeleton; +package com.oracle.javafx.scenebuilder.kit.skeleton; -import com.oracle.javafx.scenebuilder.app.DocumentWindowController; -import com.oracle.javafx.scenebuilder.app.i18n.I18N; -import com.oracle.javafx.scenebuilder.app.skeleton.SkeletonBuffer.FORMAT_TYPE; -import com.oracle.javafx.scenebuilder.app.skeleton.SkeletonBuffer.TEXT_TYPE; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractFxmlWindowController; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; @@ -42,6 +38,7 @@ import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; import java.util.HashMap; import java.util.Map; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import javafx.beans.value.ChangeListener; import javafx.event.ActionEvent; import javafx.fxml.FXML; @@ -49,6 +46,7 @@ import javafx.scene.control.CheckBox; import javafx.scene.control.TextArea; import javafx.scene.input.Clipboard; import javafx.scene.input.DataFormat; +import javafx.stage.Stage; import javafx.stage.Window; import javafx.stage.WindowEvent; @@ -65,7 +63,7 @@ public class SkeletonWindowController extends AbstractFxmlWindowController { TextArea textArea; @FXML - void onCopyAction(ActionEvent event) { + private void onCopyAction(ActionEvent event) { final Map<DataFormat, Object> content = new HashMap<>(); if (textArea.getSelection().getLength() == 0) { @@ -80,21 +78,24 @@ public class SkeletonWindowController extends AbstractFxmlWindowController { private final EditorController editorController; private boolean dirty = false; - public SkeletonWindowController(EditorController editorController, Window owner) { + private String documentName; + + public SkeletonWindowController(EditorController editorController, String documentName, Stage owner) { super(SkeletonWindowController.class.getResource("SkeletonWindow.fxml"), I18N.getBundle(), owner); //NOI18N this.editorController = editorController; + this.documentName = documentName; this.editorController.fxomDocumentProperty().addListener( (ChangeListener<FXOMDocument>) (ov, od, nd) -> { - assert editorController.getFxomDocument() == nd; - if (od != null) { - od.sceneGraphRevisionProperty().removeListener(fxomDocumentRevisionListener); - } - if (nd != null) { - nd.sceneGraphRevisionProperty().addListener(fxomDocumentRevisionListener); - update(); - } - }); + assert editorController.getFxomDocument() == nd; + if (od != null) { + od.sceneGraphRevisionProperty().removeListener(fxomDocumentRevisionListener); + } + if (nd != null) { + nd.sceneGraphRevisionProperty().addListener(fxomDocumentRevisionListener); + update(); + } + }); if (editorController.getFxomDocument() != null) { editorController.getFxomDocument().sceneGraphRevisionProperty().addListener(fxomDocumentRevisionListener); @@ -105,11 +106,11 @@ public class SkeletonWindowController extends AbstractFxmlWindowController { public void onCloseRequest(WindowEvent event) { getStage().close(); } - + @Override public void openWindow() { super.openWindow(); - + if (dirty) { update(); } @@ -139,29 +140,28 @@ public class SkeletonWindowController extends AbstractFxmlWindowController { = (observable, oldValue, newValue) -> update(); private void updateTitle() { - String documentName = DocumentWindowController.makeTitle(editorController.getFxomDocument()); final String title = I18N.getString("skeleton.window.title", documentName); getStage().setTitle(title); } private void update() { assert editorController.getFxomDocument() != null; - + // No need to eat CPU if the skeleton window isn't opened if (getStage().isShowing()) { updateTitle(); - final SkeletonBuffer buf = new SkeletonBuffer(editorController.getFxomDocument()); + final SkeletonBuffer buf = new SkeletonBuffer(editorController.getFxomDocument(), documentName); if (commentCheckBox.isSelected()) { - buf.setTextType(TEXT_TYPE.WITH_COMMENTS); + buf.setTextType(SkeletonBuffer.TEXT_TYPE.WITH_COMMENTS); } else { - buf.setTextType(TEXT_TYPE.WITHOUT_COMMENTS); + buf.setTextType(SkeletonBuffer.TEXT_TYPE.WITHOUT_COMMENTS); } if (formatCheckBox.isSelected()) { - buf.setFormat(FORMAT_TYPE.FULL); + buf.setFormat(SkeletonBuffer.FORMAT_TYPE.FULL); } else { - buf.setFormat(FORMAT_TYPE.COMPACT); + buf.setFormat(SkeletonBuffer.FORMAT_TYPE.COMPACT); } textArea.setText(buf.toString()); diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/template/Template.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/template/Template.java new file mode 100644 index 0000000000000000000000000000000000000000..c7024a975665b2a0e876942d21283624a7a6462e --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/template/Template.java @@ -0,0 +1,81 @@ +/* + * Copyright (c) 2017, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package com.oracle.javafx.scenebuilder.kit.template; + +import com.oracle.javafx.scenebuilder.kit.editor.EditorController; +import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; + +import java.net.URL; + +import static com.oracle.javafx.scenebuilder.kit.template.Type.DESKTOP; +import static com.oracle.javafx.scenebuilder.kit.template.Type.PHONE; + +public enum Template { + + EMPTY_APP(DESKTOP, null), + BASIC_DESKTOP_APP (DESKTOP, "BasicDesktopApplication.fxml"), + COMPLEX_DESKTOP_APP (DESKTOP, "ComplexDesktopApplication.fxml"), + EMPTY_PHONE_APP (PHONE, "EmptyPhoneApplication.fxml"), + BASIC_PHONE_APP (PHONE, "BasicPhoneApplication.fxml"); + + private Type type; + private String fxmlFileName; + + Template(Type type, String fxmlFileName) { + this.type = type; + this.fxmlFileName = fxmlFileName; + } + + public Type getType() { + return type; + } + + public String getFXMLFileName() { + return fxmlFileName; + } + + public URL getFXMLURL() { + final String name = getFXMLFileName(); + if (name == null) { + return null; + } + return Template.class.getResource(name); + } + + public static void prepareDocument(EditorController editorController, Template template) { + if (template.getType() == Type.PHONE) { + editorController.performEditAction(EditorController.EditAction.SET_SIZE_335x600); + editorController.setTheme(EditorPlatform.Theme.GLUON_MOBILE_LIGHT); + } + } +} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/template/TemplatesBaseWindowController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/template/TemplatesBaseWindowController.java new file mode 100644 index 0000000000000000000000000000000000000000..5da4c44d1f423090f5add74e02dff577bea014f6 --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/template/TemplatesBaseWindowController.java @@ -0,0 +1,118 @@ +/* + * Copyright (c) 2017, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package com.oracle.javafx.scenebuilder.kit.template; + +import com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractFxmlWindowController; +import javafx.fxml.FXML; +import javafx.scene.Node; +import javafx.scene.Parent; +import javafx.scene.control.Button; +import javafx.scene.layout.VBox; +import javafx.stage.Stage; +import javafx.stage.Window; +import javafx.stage.WindowEvent; +import java.net.URL; +import java.util.ResourceBundle; +import java.util.function.Consumer; + +public abstract class TemplatesBaseWindowController extends AbstractFxmlWindowController { + + @FXML + protected Button basicDesktopApp; + @FXML + protected Button complexDesktopApp; + @FXML + protected Button emptyPhoneApp; + @FXML + protected Button basicPhoneApp; + + @FXML + protected VBox templateContainer; + + private Consumer<Template> onTemplateChosen; + + public TemplatesBaseWindowController(URL fxmlURL, ResourceBundle resources, Stage owner) { + super(fxmlURL, resources, owner); + } + + + @Override + public void onCloseRequest(WindowEvent event) { + getStage().hide(); + } + + /* + * AbstractWindowController + */ + @Override + protected void controllerDidCreateStage() { + assert getRoot() != null; + assert getRoot().getScene() != null; + assert getRoot().getScene().getWindow() != null; + } + + @Override + protected void controllerDidLoadFxml() { + super.controllerDidLoadFxml(); + assert templateContainer != null; + + basicDesktopApp.setUserData(Template.BASIC_DESKTOP_APP); + complexDesktopApp.setUserData(Template.COMPLEX_DESKTOP_APP); + emptyPhoneApp.setUserData(Template.EMPTY_PHONE_APP); + basicPhoneApp.setUserData(Template.BASIC_PHONE_APP); + } + + protected void setupTemplateButtonHandlers() { + setupTemplateButtonHandlers(templateContainer); + } + + private void setupTemplateButtonHandlers(Parent templateContainer) { + for (Node child : templateContainer.getChildrenUnmodifiable()) { + if (!(child instanceof Button) && child instanceof Parent){ + setupTemplateButtonHandlers((Parent)child); + } + if (child instanceof Button) { + Button button = (Button) child; + button.setOnAction(event -> { + getStage().hide(); + onTemplateChosen.accept((Template)button.getUserData()); + }); + } + } + } + + public void setOnTemplateChosen(Consumer<Template> onTemplateChosen) { + this.onTemplateChosen = onTemplateChosen; + } +} + diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/template/TemplatesWindowController.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/template/TemplatesWindowController.java new file mode 100644 index 0000000000000000000000000000000000000000..bcda3fb78959c308009b7506aa3f1a30101b5a93 --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/template/TemplatesWindowController.java @@ -0,0 +1,78 @@ +/* + * Copyright (c) 2017, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package com.oracle.javafx.scenebuilder.kit.template; + +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; +import javafx.stage.Modality; +import javafx.stage.Stage; +import javafx.stage.Window; +import javafx.stage.WindowEvent; + +public class TemplatesWindowController extends TemplatesBaseWindowController { + private final Window owner; + + public TemplatesWindowController(Stage owner) { + super(TemplatesWindowController.class.getResource("TemplatesWindow.fxml"), //NOI18N + I18N.getBundle(), owner); + this.owner = owner; + } + + @Override + protected void controllerDidLoadFxml() { + super.controllerDidLoadFxml(); + + setupTemplateButtonHandlers(); + } + + + @Override + public void onCloseRequest(WindowEvent event) { + getStage().hide(); + } + + @Override + protected void controllerDidCreateStage() { + super.controllerDidCreateStage(); + getStage().setTitle(I18N.getString("template.dialog.title")); + + if (this.owner == null) { + // Window will be application modal + getStage().initModality(Modality.APPLICATION_MODAL); + } else { + // Window will be window modal + getStage().initOwner(this.owner); + getStage().initModality(Modality.WINDOW_MODAL); + } + } +} + diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/template/Type.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/template/Type.java new file mode 100644 index 0000000000000000000000000000000000000000..5c2e9dab93b51dc7d98f2c1584218be58be0ef67 --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/template/Type.java @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2017, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package com.oracle.javafx.scenebuilder.kit.template; + +public enum Type { + DESKTOP, + TABLET, + PHONE +} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/CssInternal.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/CssInternal.java index ffcd610be7ae748e954f8aa485ac76c6b97eb653..e2c6e51f0f79293db7af3136142bddbc853c6553 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/CssInternal.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/CssInternal.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -55,17 +56,16 @@ import javafx.scene.Node; import javafx.scene.Parent; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform.Theme; import com.oracle.javafx.scenebuilder.kit.fxom.FXOMInstance; import com.oracle.javafx.scenebuilder.kit.metadata.property.ValuePropertyMetadata; -import com.sun.javafx.css.CompoundSelector; -import com.sun.javafx.css.Rule; -import com.sun.javafx.css.Selector; -import com.sun.javafx.css.SimpleSelector; -import com.sun.javafx.css.Style; -import com.sun.javafx.css.Stylesheet; -import com.sun.javafx.css.parser.CSSParser; +import javafx.css.CompoundSelector; +import javafx.css.Rule; +import javafx.css.Selector; +import javafx.css.SimpleSelector; +import javafx.css.Style; +import javafx.css.Stylesheet; +import javafx.css.CssParser; /** * @@ -76,20 +76,20 @@ import com.sun.javafx.css.parser.CSSParser; public class CssInternal { private final static String[] themeUrls = { - Deprecation.CASPIAN_EMBEDDED_HIGHCONTRAST_STYLESHEET, - Deprecation.CASPIAN_EMBEDDED_QVGA_HIGHCONTRAST_STYLESHEET, - Deprecation.CASPIAN_EMBEDDED_QVGA_STYLESHEET, - Deprecation.CASPIAN_EMBEDDED_STYLESHEET, - Deprecation.CASPIAN_HIGHCONTRAST_STYLESHEET, - Deprecation.CASPIAN_STYLESHEET, - Deprecation.MODENA_HIGHCONTRAST_BLACKONWHITE_STYLESHEET, - Deprecation.MODENA_HIGHCONTRAST_WHITEONBLACK_STYLESHEET, - Deprecation.MODENA_HIGHCONTRAST_YELLOWONBLACK_STYLESHEET, - Deprecation.MODENA_STYLESHEET, - Deprecation.MODENA_TOUCH_HIGHCONTRAST_BLACKONWHITE_STYLESHEET, - Deprecation.MODENA_TOUCH_HIGHCONTRAST_WHITEONBLACK_STYLESHEET, - Deprecation.MODENA_TOUCH_HIGHCONTRAST_YELLOWONBLACK_STYLESHEET, - Deprecation.MODENA_TOUCH_STYLESHEET + Theme.CASPIAN_EMBEDDED_HIGH_CONTRAST.getStylesheetURL(), + Theme.CASPIAN_EMBEDDED_QVGA_HIGH_CONTRAST.getStylesheetURL(), + Theme.CASPIAN_EMBEDDED_QVGA.getStylesheetURL(), + Theme.CASPIAN_EMBEDDED.getStylesheetURL(), + Theme.CASPIAN_HIGH_CONTRAST.getStylesheetURL(), + Theme.CASPIAN.getStylesheetURL(), + Theme.MODENA_HIGH_CONTRAST_BLACK_ON_WHITE.getStylesheetURL(), + Theme.MODENA_HIGH_CONTRAST_WHITE_ON_BLACK.getStylesheetURL(), + Theme.MODENA_HIGH_CONTRAST_YELLOW_ON_BLACK.getStylesheetURL(), + Theme.MODENA.getStylesheetURL(), + Theme.MODENA_TOUCH_HIGH_CONTRAST_BLACK_ON_WHITE.getStylesheetURL(), + Theme.MODENA_TOUCH_HIGH_CONTRAST_WHITE_ON_BLACK.getStylesheetURL(), + Theme.MODENA_TOUCH_HIGH_CONTRAST_YELLOW_ON_BLACK.getStylesheetURL(), + Theme.MODENA_TOUCH.getStylesheetURL() }; /** @@ -104,12 +104,12 @@ public class CssInternal { public static boolean isCaspianTheme(Style style) { return style.getDeclaration().getRule().getStylesheet().getUrl() - .endsWith(Deprecation.CASPIAN_STYLESHEET); + .endsWith(Theme.CASPIAN.getStylesheetURL()); } public static boolean isModenaTheme(Style style) { return style.getDeclaration().getRule().getStylesheet().getUrl() - .endsWith(Deprecation.MODENA_TOUCH_STYLESHEET); + .endsWith(Theme.MODENA.getStylesheetURL()); } public static String getThemeDisplayName(Style style) { @@ -146,7 +146,7 @@ public class CssInternal { } public static List<String> getThemeStyleClasses(Theme theme) { - String themeStyleSheet = EditorPlatform.getThemeStylesheetURL(theme); + String themeStyleSheet = theme.getStylesheetURL(); Set<String> themeClasses = new HashSet<>(); // For Theme css, we need to get the text css (.css) to be able to parse it. // (instead of the default binary format .bss) @@ -237,7 +237,7 @@ public class CssInternal { Set<String> styleClasses = new HashSet<>(); Stylesheet s; try { - s = new CSSParser().parse(url); + s = new CssParser().parse(url); } catch (IOException ex) { System.out.println("Warning: Invalid Stylesheet " + url); //NOI18N return styleClasses; @@ -301,7 +301,7 @@ public class CssInternal { } else { Styleable styleable = fxObject instanceof Styleable ? (Styleable) fxObject : null; if (styleable != null) { - node = Deprecation.getNode(styleable); + node = styleable.getStyleableNode(); } } if (node != null) { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/Deprecation.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/Deprecation.java index ba0426889be359a3d6e3446a5bb0895e71ba7e35..e6c9c2c82a8dbed54d64dde295c20c12c74ce095 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/Deprecation.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/Deprecation.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, Gluon and/or its affiliates. + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. * Copyright (c) 2012, 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,26 +32,19 @@ */ package com.oracle.javafx.scenebuilder.kit.util; -import com.sun.glass.ui.Application; -import com.sun.glass.ui.Application.EventHandler; -import com.sun.javafx.css.Style; -import com.sun.javafx.geom.PickRay; -import com.sun.javafx.scene.control.skin.MenuBarSkin; -import com.sun.javafx.scene.input.PickResultChooser; +import javafx.css.Style; +import javafx.scene.control.skin.MenuBarSkin; import javafx.collections.ObservableMap; import javafx.css.CssMetaData; import javafx.css.Styleable; import javafx.css.StyleableProperty; import javafx.fxml.FXMLLoader; -import javafx.fxml.JavaFXBuilderFactory; import javafx.geometry.Bounds; import javafx.geometry.Point2D; import javafx.scene.Group; import javafx.scene.Node; import javafx.scene.Parent; import javafx.scene.SubScene; -import javafx.scene.control.*; -import javafx.scene.image.Image; import javafx.scene.layout.GridPane; import java.net.MalformedURLException; @@ -62,6 +55,9 @@ import java.util.List; import java.util.Map; import java.util.logging.Level; import java.util.logging.Logger; +import javafx.scene.control.MenuBar; +import javafx.scene.control.TreeItem; +import javafx.scene.control.TreeView; @SuppressWarnings("deprecation") public class Deprecation { @@ -70,45 +66,30 @@ public class Deprecation { assert false; } - public static final String CASPIAN_STYLESHEET = "com/sun/javafx/scene/control/skin/caspian/caspian.bss"; //NOI18N - public static final String CASPIAN_HIGHCONTRAST_STYLESHEET = "com/oracle/javafx/scenebuilder/kit/util/css/caspian/caspian-highContrast.css"; //NOI18N - public static final String CASPIAN_EMBEDDED_STYLESHEET = "com/oracle/javafx/scenebuilder/kit/util/css/caspian/caspian-embedded.css"; //NOI18N - public static final String CASPIAN_EMBEDDED_HIGHCONTRAST_STYLESHEET = "com/oracle/javafx/scenebuilder/kit/util/css/caspian/caspian-embedded-highContrast.css"; //NOI18N - public static final String CASPIAN_EMBEDDED_QVGA_STYLESHEET = "com/oracle/javafx/scenebuilder/kit/util/css/caspian/caspian-embedded-qvga.css"; //NOI18N - public static final String CASPIAN_EMBEDDED_QVGA_HIGHCONTRAST_STYLESHEET = "com/oracle/javafx/scenebuilder/kit/util/css/caspian/caspian-embedded-qvga-highContrast.css"; //NOI18N - public static final String MODENA_STYLESHEET = "com/sun/javafx/scene/control/skin/modena/modena.bss"; //NOI18N - public static final String MODENA_TOUCH_STYLESHEET = "com/oracle/javafx/scenebuilder/kit/util/css/modena/modena-touch.css"; //NOI18N - public static final String MODENA_HIGHCONTRAST_BLACKONWHITE_STYLESHEET = "com/oracle/javafx/scenebuilder/kit/util/css/modena/modena-highContrast-blackOnWhite.css"; //NOI18N - public static final String MODENA_HIGHCONTRAST_WHITEONBLACK_STYLESHEET = "com/oracle/javafx/scenebuilder/kit/util/css/modena/modena-highContrast-whiteOnBlack.css"; //NOI18N - public static final String MODENA_HIGHCONTRAST_YELLOWONBLACK_STYLESHEET = "com/oracle/javafx/scenebuilder/kit/util/css/modena/modena-highContrast-yellowOnBlack.css"; //NOI18N - public static final String MODENA_TOUCH_HIGHCONTRAST_BLACKONWHITE_STYLESHEET = "com/oracle/javafx/scenebuilder/kit/util/css/modena/modena-touch-highContrast-blackOnWhite.css"; //NOI18N - public static final String MODENA_TOUCH_HIGHCONTRAST_WHITEONBLACK_STYLESHEET = "com/oracle/javafx/scenebuilder/kit/util/css/modena/modena-touch-highContrast-whiteOnBlack.css"; //NOI18N - public static final String MODENA_TOUCH_HIGHCONTRAST_YELLOWONBLACK_STYLESHEET = "com/oracle/javafx/scenebuilder/kit/util/css/modena/modena-touch-highContrast-yellowOnBlack.css"; //NOI18N - - // Gluon - public static final String GLUON_STYLESHEET = "glisten.gls"; - public static final String GLUON_BLUE_SWATCH = "swatch_blue.gls"; - public static final String GLUON_LIGHT_THEME = "theme_light.gls"; // Deprecated stuff in Node // // RT-21247 : Promote impl_getAllParentStylesheets to public API public static Group createGroupWithNullParentStylesheets() { +// System.err.println("Error: impl_getAllParentStylesheets is no longer publicly accessible"); return new Group() { - @Override - public List<String> impl_getAllParentStylesheets() { - return null; - } +// @Override +// public List<String> impl_getAllParentStylesheets() { +// return null; +// } }; } // // RT-21096 : Promote impl_getStyleMap / impl_setStyleMap to public API - public static void setStyleMap(Node node, ObservableMap<StyleableProperty<?>, List<com.sun.javafx.css.Style>> map) { - node.impl_setStyleMap(map); + public static void setStyleMap(Node node, ObservableMap<StyleableProperty<?>, List<javafx.css.Style>> map) { + // node.impl_setStyleMap(map); +// System.err.println("Error: impl_setStyleMap is no longer publicly accessible"); } // // RT-21096 : Promote impl_getStyleMap / impl_setStyleMap to public API public static Map<StyleableProperty<?>, List<Style>> getStyleMap(Node node) { - return node.impl_findStyles(null); +// return node.impl_findStyles(null); +// System.err.println("Error: findStyles is no longer publicly accessible"); + return null; } public static void reapplyCSS(Parent parent, URI stylesheetPath) { @@ -141,108 +122,63 @@ public class Deprecation { } } - // Retrieve the node of the Styleable. - public static Node getNode(Styleable styleable) { - // Nodes are styleable treated differently. - try { - if (styleable instanceof MenuItem) { - return ((MenuItem) styleable).impl_styleableGetNode(); - } else if (styleable instanceof PopupControl) { - return ((PopupControl) styleable).impl_styleableGetNode(); - } else if (styleable instanceof TableColumn) { - return ((TableColumn<?,?>) styleable).impl_styleableGetNode(); - } else if (styleable instanceof TreeTableColumn) { - return ((TreeTableColumn<?,?>) styleable).impl_styleableGetNode(); - } - } catch (Exception ex) { - // May happen, e.g if TableColumn as root - return null; - } - return null; - } - @SuppressWarnings("rawtypes") public static List<Style> getMatchingStyles(CssMetaData cssMetaData, Styleable styleable) { - return Node.impl_getMatchingStyles(cssMetaData, styleable); +// return Node.impl_getMatchingStyles(cssMetaData, styleable); +// System.err.println("Error: impl_getMatchingStyles is no longer publicly accessible"); + return null; } // Deprecated stuff in Parent -// // RT-21209 : Promote setImpl_traversalEngine to public API -// public static void setTraversalEngine(Parent parent, TraversalEngine engine) { -// parent.setImpl_traversalEngine(engine); -// } - // Deprecated stuff in Image - // RT-21216 : Promote impl_getUrl to public API - public static String getUrl(Image image) { - return image.impl_getUrl(); - } -// // RT-21217 : Promote impl_fromPlatformImage to public API -// public static Image fromPlatformImage(Object platformImage) { -// return Image.impl_fromPlatformImage(platformImage); -// } -// // RT-21219 : Promote impl_getPlatformImage to public API -// public static Object getPlatformImage(Image image) { -// return image.impl_getPlatformImage(); -// } // Deprecated stuff in FXMLLoader // RT-21226 : Promote setStaticLoad to public API public static void setStaticLoad(FXMLLoader loader, boolean staticLoad) { - loader.impl_setStaticLoad(staticLoad); - } - - // RT-21228 : Promote setLoadListener to public API - public static void setLoadListener(FXMLLoader loader, com.sun.javafx.fxml.LoadListener loadListener) { - loader.impl_setLoadListener(loadListener); + // See SB-266 and JDK-8186429 + ReflectionUtils.setStaticLoad(loader, staticLoad); } // RT-20184 : FX should provide a Parent.pick() routine public static Node pick(Node node, double sceneX, double sceneY) { - final Point2D p = node.sceneToLocal(sceneX, sceneY, true /* rootScene */); - final PickRay pickRay = new PickRay(p.getX(), p.getY(), 1.0, Double.NEGATIVE_INFINITY, Double.POSITIVE_INFINITY); - final PickResultChooser prc = new PickResultChooser(); - node.impl_pickNode(pickRay, prc); - return prc.getIntersectedNode(); - } - - // RT-19857 : Keeping menu in the Mac menu bar when there is no more stage - public static void setDefaultSystemMenuBar(MenuBar menuBar) { - MenuBarSkin.setDefaultSystemMenuBar(menuBar); - } + Point2D p = node.sceneToLocal(sceneX, sceneY, true /* rootScene */); + + // check if the given node has the point inside it, or else we drop out + if (!node.contains(p)) return null; + + // at this point we know that _at least_ the given node is a valid + // answer to the given point, so we will return that if we don't find + // a better child option + if (node instanceof Parent) { + // we iterate through all children (recursively). We don't stop + // iteration when we hit the first child that also contains the bounds, + // as we know that later nodes have a higher z-ordering, so they + // should be picked before the earlier nodes. + Node bestMatchingChild = null; + for (Node child : ((Parent)node).getChildrenUnmodifiable()) { + p = child.sceneToLocal(sceneX, sceneY, true /* rootScene */); + if (child.contains(p)) { + bestMatchingChild = child; + } + } -// // RT-21475 : Promote FXMLLoader.setLoadListener to public API -// public static ParseTraceElement[] getParseTrace(FXMLLoader loader) { -// return loader.getParseTrace(); -// } - // Deprecated stuff in JavaFXBuilderFactory -// // RT-21230 : Promote JavaFXBuilderFactory(ClassLoader classLoader, boolean alwaysUseBuilders) constructor to public API -// public static JavaFXBuilderFactory getJavaFXBuilderFactory(boolean alwaysUseBuilders) { -// return new JavaFXBuilderFactory(Thread.currentThread().getContextClassLoader(), alwaysUseBuilders); -// } - public static void setPlatformEventHandler(EventHandler eventHandler) { - Application.GetApplication().setEventHandler(eventHandler); - } + if (bestMatchingChild != null) { + return pick(bestMatchingChild, sceneX, sceneY); + } + } - public static EventHandler getPlatformEventHandler() { - return Application.GetApplication().getEventHandler(); + return node; } public static int getGridPaneColumnCount(GridPane gridPane) { - return gridPane.impl_getColumnCount(); + return gridPane.getColumnCount(); } public static int getGridPaneRowCount(GridPane gridPane) { - return gridPane.impl_getRowCount(); + return gridPane.getRowCount(); } public static Bounds getGridPaneCellBounds(GridPane gridPane, int c, int r) { - return gridPane.impl_getCellBounds(c, r); - } - - // RT-33675 : Promote TableColumn.impl_setReorderable() to public API - @SuppressWarnings("rawtypes") - public static void setTableColumnReordable(TableColumn tableColumn, boolean reordable) { - tableColumn.impl_setReorderable(reordable); + return gridPane.getCellBounds(c, r); } // Returns the corresponding text css (.css) from a binary css (.bss) @@ -256,11 +192,6 @@ public class Deprecation { } } - // RT-21230 : Promote JavaFXBuilderFactory(ClassLoader classLoader, boolean alwaysUseBuilders) constructor to public API - public static JavaFXBuilderFactory newJavaFXBuilderFactory(ClassLoader classLoader) { - return new JavaFXBuilderFactory(classLoader, false /* alwaysUseBuilders */); - } - // Deprecated as of FX 8 u20, and replaced by new method getTreeItemLevel: // using it would break ability to compile over JDK 8 GA, not an option for now. public static int getNodeLevel(TreeItem<?> item) { diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/ReflectionUtils.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/ReflectionUtils.java new file mode 100644 index 0000000000000000000000000000000000000000..bd8610f434184b5f413d959585dfeee5facaed5e --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/ReflectionUtils.java @@ -0,0 +1,71 @@ +/* + * Copyright (c) 2017 Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package com.oracle.javafx.scenebuilder.kit.util; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.HashMap; +import java.util.Map; +import javafx.fxml.FXMLLoader; + +/** + * A temporary class created to reflectively call private and protected methods + * from classes in JDK 9 unless we come up with a permanent solution. + */ +public class ReflectionUtils { + + private static final Map<String, Method> methodMap = new HashMap<>(); + + private ReflectionUtils() {} + + public static void setStaticLoad(FXMLLoader loader, boolean staticLoad) { + Class<?> clazz = loader.getClass(); + Method setStaticLoadMethod = methodMap.computeIfAbsent(clazz.getName(), s -> { + try { + Method method = clazz.getDeclaredMethod("setStaticLoad", boolean.class); + method.setAccessible(true); + return method; + } catch (NoSuchMethodException e) { + e.printStackTrace(); + } + return null; + }); + if (setStaticLoadMethod != null) { + try { + setStaticLoadMethod.invoke(loader, staticLoad); + } catch (IllegalAccessException | InvocationTargetException e) { + e.printStackTrace(); + } + } + } + +} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/Utils.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/Utils.java new file mode 100644 index 0000000000000000000000000000000000000000..f48a8c4f63b9a31a7b9b26abcf2a5f4875adabc3 --- /dev/null +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/Utils.java @@ -0,0 +1,30 @@ +package com.oracle.javafx.scenebuilder.kit.util; + +import com.oracle.javafx.scenebuilder.kit.fxom.FXOMDocument; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; + +import java.io.File; +import java.net.URISyntaxException; + +public class Utils { + public static final String makeTitle(FXOMDocument fxomDocument) { + final String title; + + if (fxomDocument == null) { + title = I18N.getString("label.no.document"); + } else if (fxomDocument.getLocation() == null) { + title = I18N.getString("label.untitled"); + } else { + String name = ""; //NOI18N + try { + final File toto = new File(fxomDocument.getLocation().toURI()); + name = toto.getName(); + } catch (URISyntaxException ex) { + throw new RuntimeException("Bug", ex); //NOI18N + } + title = name; + } + + return title; + } +} diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/control/effectpicker/editors/ImageControl.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/control/effectpicker/editors/ImageControl.java index 186fea4c6a074a1d03551bbde3fad6c28bf43ab5..040218a49c804062b74c513a4d6f85b989f216d8 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/control/effectpicker/editors/ImageControl.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/control/effectpicker/editors/ImageControl.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -32,8 +33,7 @@ package com.oracle.javafx.scenebuilder.kit.util.control.effectpicker.editors; import com.oracle.javafx.scenebuilder.kit.editor.EditorPlatform; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; -import com.oracle.javafx.scenebuilder.kit.util.Deprecation; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.util.control.effectpicker.EffectPickerController; import java.io.File; import java.io.IOException; @@ -168,7 +168,7 @@ public class ImageControl extends GridPane { } editor_label.setText(labelString); - editor_textfield.setText(initVal == null ? "" : Deprecation.getUrl(initVal)); //NOI18N + editor_textfield.setText(initVal == null ? "" : initVal.getUrl()); //NOI18N setValue(initVal); } } diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/control/paintpicker/gradientpicker/GradientPickerStop.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/control/paintpicker/gradientpicker/GradientPickerStop.java index b2d70a7e989679f57e8dc98c50698be89b6b6b92..3a5d47b4ef6402fcc3049d17f9949f26b157f4c2 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/control/paintpicker/gradientpicker/GradientPickerStop.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/control/paintpicker/gradientpicker/GradientPickerStop.java @@ -1,4 +1,5 @@ /* + * Copyright (c) 2016, Gluon and/or its affiliates. * Copyright (c) 2012, 2015, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/eventnames/EventNames.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/eventnames/EventNames.java similarity index 94% rename from sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/eventnames/EventNames.java rename to sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/eventnames/EventNames.java index 8712ba11250b90e79952939bf5d1171197d25ebb..98ad2e36293c893eb6eb6d0c2cfeb04871b276e8 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/eventnames/EventNames.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/eventnames/EventNames.java @@ -1,4 +1,4 @@ -package com.oracle.javafx.scenebuilder.app.util.eventnames; +package com.oracle.javafx.scenebuilder.kit.util.eventnames; /** * Collects all the event names possible to be set in the Code section. diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/eventnames/EventTypeNames.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/eventnames/EventTypeNames.java similarity index 98% rename from sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/eventnames/EventTypeNames.java rename to sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/eventnames/EventTypeNames.java index 9d2deddc965f6cc4ffab8b121aafc947636d8db9..500f0101c362ee6112bb059bfbc09f5fb19c3548 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/eventnames/EventTypeNames.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/eventnames/EventTypeNames.java @@ -1,4 +1,4 @@ -package com.oracle.javafx.scenebuilder.app.util.eventnames; +package com.oracle.javafx.scenebuilder.kit.util.eventnames; /** * Collects all the event type names possible to be set in the Code section. diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/eventnames/FindEventNamesUtil.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/eventnames/FindEventNamesUtil.java similarity index 98% rename from sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/eventnames/FindEventNamesUtil.java rename to sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/eventnames/FindEventNamesUtil.java index 8e45216181ded6935f412525ea2f70f6de0c3218..a5d113cefc90b536c0f9eabc2f4c5f483c763a6d 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/eventnames/FindEventNamesUtil.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/eventnames/FindEventNamesUtil.java @@ -1,4 +1,4 @@ -package com.oracle.javafx.scenebuilder.app.util.eventnames; +package com.oracle.javafx.scenebuilder.kit.util.eventnames; import java.util.Map; import java.util.Optional; diff --git a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/eventnames/ImportBuilder.java b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/eventnames/ImportBuilder.java similarity index 96% rename from sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/eventnames/ImportBuilder.java rename to sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/eventnames/ImportBuilder.java index 1dec39d7ae1d6c34f992294a3d523feedb63ca72..fb90420766833fc5bd19d05f2567fae69b5cf7ba 100644 --- a/sb/src/main/java/com/oracle/javafx/scenebuilder/app/util/eventnames/ImportBuilder.java +++ b/sb/src/main/java/com/oracle/javafx/scenebuilder/kit/util/eventnames/ImportBuilder.java @@ -1,4 +1,4 @@ -package com.oracle.javafx.scenebuilder.app.util.eventnames; +package com.oracle.javafx.scenebuilder.kit.util.eventnames; import java.util.Map; import java.util.TreeMap; diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/DocumentWindow.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/DocumentWindow.fxml index 627566509c98b16b26a1b7414457185b2ea382d7..b683e2f4242f57598d8d9a0098cf479bc2f664e1 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/DocumentWindow.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/DocumentWindow.fxml @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- + Copyright (c) 2016, Gluon and/or its affiliates. Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. @@ -36,7 +37,6 @@ <?import java.net.*?> <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> -<?scenebuilder-preview-i18n-resource i18n/SceneBuilderApp.properties?> <VBox id="DocumentWindow" alignment="CENTER" prefHeight="800.0" prefWidth="1240.0" spacing="0.0" styleClass="theme-presets" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> <children> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/SB_Logo.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/SB_Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..15db0b5c11912621eddbb49686a0d92a75cc866e Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/SB_Logo.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/SB_Logo@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/SB_Logo@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..14bc3a687380c080378072be7cf11bddab84a437 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/SB_Logo@2x.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/about/About.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/about/About.fxml index 84c82d193db09ee5fda31cbfcb95fbcfca2a5a81..e2fbdd1b109043619f1bb14508f26ce5f696da7c 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/about/About.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/about/About.fxml @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- + Copyright (c) 2016, Gluon and/or its affiliates. Copyright (c) 2012, 2014, Oracle and/or its affiliates, 2015, Gluon. All rights reserved. Use is subject to license terms. diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/about/about.properties b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/about/about.properties index 0144cdbdea02b9b1e984a8a31fa755c77a4231b6..928fdbeb029e5c57ad58428b8ca02b6f175e44ff 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/about/about.properties +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/about/about.properties @@ -27,7 +27,6 @@ # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -version=8.0 build.info=Version ${version} build.version=${version} diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/checkListDevice@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/checkListDevice@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..691ce4ddbdd2d22823d33a250290c579da635afb Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/checkListDevice@2x.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/computerDownload@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/computerDownload@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..7638f79efafac9007efe38b16568362473c40c9e Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/computerDownload@2x.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/DocumentWindow.css b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/DocumentWindow.css index a6d526cead9f39d9f7c08d8710881ae00a79d6f3..ed3e333d036a3e09fa3d23debe2975314be33e98 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/DocumentWindow.css +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/DocumentWindow.css @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * @@ -30,6 +31,8 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +@import "/com/oracle/javafx/scenebuilder/kit/css/Base.css"; + /******************************************************************************* * Menu Bar - text * ******************************************************************************/ @@ -72,107 +75,3 @@ linear-gradient(to bottom, derive(white, -2%), derive(white, -10%) ); -fx-background-insets: 0, 0 0 1 0, 1 0 1 0; } - -/******************************************************************************* - * Common UI Styling - Panel Headers (Background, search box and menu) * - ******************************************************************************/ - -.theme-presets .panel-header { - -fx-min-height: -sb-header-height; - -fx-background-color: - derive(-sb-grad-hi, 25%), - linear-gradient(to bottom, -sb-grad-hi, -sb-flat); - -fx-background-insets: 0, 1 0 0 0; -} -.theme-presets .panel-header > .label { - -fx-padding: 1 32 0 8; - -fx-text-fill: -sb-header-text; -} -.theme-presets .panel-header > .menu-button { - -fx-background-color: null; - -fx-graphic-text-gap: 0px; - -fx-padding: 0 0 0 0.666em; -} -.theme-presets .panel-header > .menu-button:hover { - -fx-background-color: - linear-gradient(to bottom, derive(-sb-sharp-edge-lo, 60%), derive(-sb-sharp-edge-lo, 40%)), - linear-gradient(to bottom, derive(-sb-flat, 80%), derive(-sb-flat, 20%)); - -fx-background-insets: 0 3 0 5, 1 4 1 6; - -fx-background-radius: 0; -} -.theme-presets .panel-header > .menu-button:focused { - -fx-background-color: - -fx-faint-focus-color, - -fx-focus-color, - linear-gradient(to bottom, derive(-sb-flat, 80%), derive(-sb-flat, 20%)); - -fx-background-insets: -1.4 1.6 -1.4 3.6, 0 3 0 5, 1 4 1 6; - -fx-background-radius: 0; -} -.theme-presets .panel-header > .menu-button .label { - -fx-padding: 0; -} -.theme-presets .panel-header > .menu-button > .arrow-button { - -fx-padding: 0.462em 0.615em 0.462em 0em; -} -.theme-presets .panel-header > .menu-button > .arrow-button > .arrow { - -fx-padding: 0 0.231em 0.154em 0.154em; - -fx-background-color: -sb-header-detail; - -fx-effect: null; -} -.theme-presets .panel-header .text-field { - -fx-text-fill: -sb-header-text; - -fx-font-size: 0.875em; - -fx-padding: 3 7 2 7; - -fx-border-color: - linear-gradient(to bottom, derive(-sb-sharp-edge-lo, 40%), derive(-sb-sharp-edge-hi, 25%)); - -fx-border-radius: 10; - -fx-border-insets: 0 -12 0 0; - -fx-background-color: rgba(0, 0, 0, 0.02); - -fx-background-insets: 0 -12 0 0; - -fx-background-radius: 10; -} -.theme-presets .panel-header .text-field:focused { - -fx-border-color: -sb-focus-color; - -fx-background-color: -sb-focus-inner-background; -} - -.theme-presets .search-magnifying-glass { - -fx-shape: "M11.936,13.663c-1.105,0.694-2.412,1.095-3.81,1.095c-3.963,0-7.188-3.224-7.188-7.187c0-3.963,3.224-7.188,7.188-7.188 - c3.963,0,7.187,3.224,7.187,7.188c0,1.854-0.706,3.546-1.862,4.822l4.23,4.602c0.374,0.407,0.347,1.039-0.06,1.413 - c-0.192,0.176-0.435,0.264-0.676,0.264c-0.271,0-0.54-0.109-0.737-0.323 M8.125,2.384c-2.86,0-5.188,2.327-5.188,5.188 - s2.327,5.187,5.188,5.187s5.187-2.327,5.187-5.187S10.986,2.384,8.125,2.384z"; - -fx-background-color: -sb-header-detail; - -fx-background-insets: 0 6 0 -6; - -fx-min-width: 10; - -fx-max-width: 10; - -fx-min-height: 10; - -fx-max-height: 10; -} - -.theme-presets .search-clear { - -fx-shape: "M7.26,5.444l3.503,3.504c0.344,0.344,0.344,0.901,0,1.245c-0.172,0.172-0.397,0.258-0.623,0.258 - c-0.225,0-0.45-0.086-0.623-0.258L6.087,6.498l-3.584,3.697c-0.172,0.172-0.397,0.258-0.623,0.258 - c-0.226,0-0.451-0.086-0.623-0.258c-0.344-0.344-0.344-0.901,0-1.245l3.507-3.508L1.258,1.933c-0.344-0.344-0.344-0.901,0-1.245 - c0.344-0.344,0.901-0.344,1.245,0l3.509,3.508c-0.001,0,3.506-3.508,3.506-3.508c0.344-0.344,0.901-0.344,1.245,0 - c0.344,0.344,0.344,0.901,0,1.245"; - -fx-background-color: -sb-header-detail; - -fx-background-insets: 1 7 1 -5; - -fx-min-width: 10; - -fx-max-width: 10; - -fx-min-height: 10; - -fx-max-height: 10; -} - -/******************************************************************************* - * Document Window - Selection Bar Container * - ******************************************************************************/ - -/* We add similar styling as the .panel-header stated in theme but with some - subtle differences: a darker bottom edge and a shadow effect that bleeds - over onto the content panel */ -.theme-presets .selection-bar-container { - -fx-min-height: -sb-header-height; - -fx-background-color: -sb-base-dark, linear-gradient(to bottom, -sb-grad-hi, -sb-flat); - -fx-background-insets: 0 0 -1 0, 0; - -fx-effect: dropshadow(three-pass-box , rgb(0, 0, 0, 0.3), 5, 0.0 , 0, 2); -} diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/GluonDocument.css b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/GluonDocument.css index 9e88237b5b5bc528efe024dd08e04cc3a533af17..5cdc708bd0e9b189ae5e181d26843e6962ecd5b6 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/GluonDocument.css +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/GluonDocument.css @@ -37,11 +37,3 @@ .progress-bar { -fx-color: #3C87EE; } - - -/* This is here until we have a BottomNavigationButton */ -.bottom-nav:fixed > .bottom-nav-button:selected .label.icon-text, -.bottom-nav:fixed > .bottom-nav-button:selected .text { - -fx-scale-x: 1.1; - -fx-scale-y: 1.1; -} \ No newline at end of file diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/UpdateSceneBuilderDialog.css b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/UpdateSceneBuilderDialog.css index e8a504bdefc545fef7fa0fc5ac1b9c99f3251a9e..96a54b63f69c075ad9478ceaa56aff9ff025453f 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/UpdateSceneBuilderDialog.css +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/UpdateSceneBuilderDialog.css @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, Gluon and/or its affiliates. + * Copyright (c) 2016, 2017 Gluon and/or its affiliates. * All rights reserved. Use is subject to license terms. * * This file is available and licensed under the following license: @@ -44,6 +44,15 @@ } .download_scenebuilder-dialog .content-container { - -fx-padding: 0 60 0 0; + -fx-padding: 0 60 2 0; +} + +.download_scenebuilder-dialog .main-container { + -fx-padding: 0 5 10 0; +} + +.download_scenebuilder-dialog .main-container > .latest-version-text { + -fx-max-width: 420; + -fx-wrap-text: true; } diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/earthGlobalSolu@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/earthGlobalSolu@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..c60eacaf99e674ebe739bd0b9fcd6402f7b18208 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/earthGlobalSolu@2x.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/i18n/SceneBuilderApp.properties b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/i18n/SceneBuilderApp.properties index 93aaa4f398bb115f8276d09c1c81e59aeb6a992b..4112cbc42ba9ebe8df3ea3b30396dc212899a30f 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/i18n/SceneBuilderApp.properties +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/i18n/SceneBuilderApp.properties @@ -1,3 +1,4 @@ +# Copyright (c) 2016, 2017, Gluon and/or its affiliates. # Copyright (c) 2012, 2014, Oracle and/or its affiliates. # All rights reserved. Use is subject to license terms. # @@ -36,8 +37,6 @@ label.cancel = Cancel label.close = Close label.delete = Delete label.copy = Copy -label.untitled = Untitled -label.no.document = No document label.save = Save label.revert = Revert label.do.not.save = Do Not Save @@ -62,15 +61,7 @@ menu.title.help = Help # File menu items menu.title.new = _New menu.title.new.template = New from _Template -menu.title.new.alert.dialog = Alert Dialog -menu.title.new.alert.dialog.css = Alert Dialog - CSS\u2026 -menu.title.new.alert.dialog.i18n = Alert Dialog - Localized\u2026 -menu.title.new.basic.app = Basic Application -menu.title.new.basic.app.css = Basic Application - CSS\u2026 -menu.title.new.basic.app.i18n = Basic Application - Localized\u2026 -menu.title.new.complex.app = Complex Application -menu.title.new.complex.app.css = Complex Application - CSS\u2026 -menu.title.new.complex.app.i18n = Complex Application - Localized\u2026 +menu.title.new.basic.phone.app = Basic menu.title.open = _Open\u2026 menu.title.open.recent = Open _Recent menu.title.open.recent.clear = Clear Menu @@ -158,6 +149,13 @@ menu.title.grid.increase.row.span = Increase Row Span menu.title.grid.decrease.row.span = Decrease Row Span menu.title.grid.increase.column.span = Increase Column Span menu.title.grid.decrease.column.span = Decrease Column Span +# Modify -> Scene Size +menu.title.size.phone = 335 x 600 (Phone) +menu.title.size.tablet = 900 x 600 (Tablet) +menu.title.size.qvga = 320 x 240 (QVGA) +menu.title.size.vga = 640 x 480 (VGA) +menu.title.size.touch = 1280 x 800 +menu.title.size.hd = 1920 x 1080 # Arrange menu items menu.title.front = _Bring to Front menu.title.back = _Send to Back @@ -169,17 +167,10 @@ menu.title.unwrap = _Unwrap menu.title.show.preview.in.window = Show P_review in Window menu.title.show.preview.in.dialog = Show Preview in Dialog menu.title.hide.preview = Hide P_review in Window -menu.title.theme = _JavaFX Theme -menu.title.theme.gluon_mobile = Gluon Mobile -menu.title.theme.modena = Modena (FX8) -menu.title.theme.modena.touch = Modena Touch (FX8) -menu.title.theme.modena.high.contrast.blackonwhite = Modena High Contrast - Black on White (FX8) -menu.title.theme.modena.high.contrast.whiteonblack = Modena High Contrast - White on Black (FX8) -menu.title.theme.modena.high.contrast.yellowonblack = Modena High Contrast - Yellow on Black (FX8) -menu.title.theme.caspian = Caspian (FX2) -menu.title.theme.caspian.embedded = Caspian Embedded (FX2) -menu.title.theme.caspian.embedded.qvga = Caspian Embedded QVGA (FX2) -menu.title.theme.caspian.high.contrast = Caspian High Contrast (FX2) + +menu.title.theme = _Themes +menu.title.gluon.swatch = _Gluon Swatch + menu.title.scene.stylesheets = _Scene Style Sheets menu.title.add.stylesheet = Add a Style Sheet\u2026 menu.title.remove.stylesheet = Remove a Style Sheet @@ -193,16 +184,13 @@ menu.title.reveal.resource.with.file = Reveal Resource "{0}" menu.title.resolve.unknown.types = Resolve Unknown Types\u2026 menu.title.preview.size = Preview Si_ze menu.title.size = Scene Si_ze -menu.title.size.qvga = 320 x 240 (QVGA) -menu.title.size.vga = 640 x 480 (VGA) -menu.title.size.touch = 1280 x 800 -menu.title.size.hd = 1920 x 1080 menu.title.size.preferred = Preferred Size menu.title.size.preferred.with.value = Preferred Size ({0} x {1}) # Window menu items menu.title.no.window = No Window # Help menu items menu.title.scene.builder.help = Scene Builder Help +menu.title.check.updates = Check for Update... menu.title.about = About Scene Builder # ----------------------------------------------------------------------------- @@ -242,31 +230,19 @@ prefs.alignment.guides = Alignment guides color : prefs.doc.width = Default Root Container Width : prefs.doc.height = Default Root Container Height : prefs.drop.ring = Drop and parent ring color : -prefs.tooltheme = Theme : -prefs.tool.theme.default = Default Theme -prefs.tool.theme.dark = Dark Theme +prefs.tooltheme = Scene Builder Theme : prefs.library.displayoption = Default view displayed in library : prefs.hierarchy.displayoption = Default information displayed in hierarchy : prefs.revert = Revert to Builtin Default Values prefs.background = Background image : -prefs.background.value1 = Blue Grid -prefs.background.value2 = Neutral Grid -prefs.background.value3 = Neutral Uniform prefs.cssanalyzer.columns.order = CSS Analyzer Columns order : prefs.cssanalyzer.columns.defaults.first = "Defaults" Column First prefs.cssanalyzer.columns.defaults.last = "Defaults" Column Last prefs.recent.items = Recent items prefs.reset.default = Reset to Builtin Default Values - -# ----------------------------------------------------------------------------- -# Preview Window -# ----------------------------------------------------------------------------- -preview.no.document = No document -preview.not.node = Not a Node -scenestylesheet.filechooser.filter.msg = CSS and BSS files -resource.filechooser.filter.msg = property file -# Used as menu item label when no style sheet has been added -scenestylesheet.none = None +prefs.document.theme = Default Theme : +prefs.document.gluonswatch = Default Gluon Swatch : +prefs.document.gluontheme = Default Gluon Theme : # ----------------------------------------------------------------------------- # Template Dialog @@ -307,7 +283,7 @@ about.build.information = Build Information about.build.date = Date: {0} about.build.java.version = Java Version: {0} about.copyright = Copyright \u00a9 2012, 2014, Oracle and/or its affiliates. All rights reserved.\n\nThis software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.\n\nThe information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.\n\nIf this software or related documentation is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, the following notice is applicable:\n\nU.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are \"commercial computer software\" or \"commercial technical data\" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification, and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial Computer Software License (December 2007). Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065.\n\nThis software is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications which may create a risk of personal injury. If you use this software in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure the safe use of this software. Oracle and its affiliates disclaim any liability for any damages caused by use of this software in dangerous applications.\n\nOracle is a registered trademark of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.\n\nThis software and documentation may provide access to or information on content, products, and services from third parties. Oracle and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services. Oracle and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services. -about.copyright.open = Copyright (c) 2015-2016, Gluon.\nAll rights reserved. Use is subject to license terms.\n\nThis file is available and licensed under the following license:\n\nRedistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n\n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of Gluon nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +about.copyright.open = Copyright (c) 2015-2017, Gluon.\nAll rights reserved. Use is subject to license terms.\n\nThis file is available and licensed under the following license:\n\nRedistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n\n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of Gluon nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # Hardware acceleration is a boolean: its value depends on the FX toolkit and pipeline in use. about.fx.hardware.acceleration = Hardware acceleration about.fx.hardware.acceleration.enabled = ENABLED @@ -320,6 +296,50 @@ about.logging.body.second = The default file path is {0} about.operating.system = Operating System about.product.version = Product Version +# ----------------------------------------------------------------------------- +# Themes +# ----------------------------------------------------------------------------- +# Document themes +title.theme.gluon_mobile_dark = Gluon Mobile Dark +title.theme.gluon_mobile_light = Gluon Mobile Light +title.theme.modena = Modena (FX8) +title.theme.modena_touch = Modena Touch (FX8) +title.theme.modena_high_contrast_black_on_white = Modena High Contrast - Black on White (FX8) +title.theme.modena_high_contrast_white_on_black = Modena High Contrast - White on Black (FX8) +title.theme.modena_high_contrast_yellow_on_black = Modena High Contrast - Yellow on Black (FX8) +title.theme.modena_touch_high_contrast_black_on_white = Modena Touch High Contrast - Black on White (FX8) +title.theme.modena_touch_high_contrast_white_on_black = Modena Touch High Contrast - White on Black (FX8) +title.theme.modena_touch_high_contrast_yellow_on_black = Modena Touch High Contrast - Yellow on Black (FX8) +title.theme.caspian = Caspian (FX2) +title.theme.caspian_embedded = Caspian Embedded (FX2) +title.theme.caspian_embedded_qvga = Caspian Embedded QVGA (FX2) +title.theme.caspian_high_contrast = Caspian High Contrast (FX2) +title.theme.caspian_embedded_high_contrast = Caspian Embedded High Contrast (FX2) +title.theme.caspian_embedded_qvga_high_contrast = Caspian Embedded QVGA High Contrast (FX2) +# Gluon Swatches +title.gluon.swatch.blue = Blue Swatch +title.gluon.swatch.cyan = Cyan Swatch +title.gluon.swatch.deep_orange = Deep Orange Swatch +title.gluon.swatch.deep_purple = Deep Purple Swatch +title.gluon.swatch.green = Green Swatch +title.gluon.swatch.indigo = Indigo Swatch +title.gluon.swatch.light_blue = Light Blue Swatch +title.gluon.swatch.pink = Pink Swatch +title.gluon.swatch.purple = Purple Swatch +title.gluon.swatch.red = Red Swatch +title.gluon.swatch.teal = Teal Swatch +title.gluon.swatch.light_green = Light Green Swatch +title.gluon.swatch.lime = Lime Swatch +title.gluon.swatch.yellow = Yellow Swatch +title.gluon.swatch.amber = Amber Swatch +title.gluon.swatch.orange = Orange Swatch +title.gluon.swatch.brown = Brown Swatch +title.gluon.swatch.grey = Grey Swatch +title.gluon.swatch.blue_grey = Blue Grey Swatch +# Gluon Themes +title.gluon.theme.light = Light Theme +title.gluon.theme.dark = Dark Theme + # ----------------------------------------------------------------------------- # Registration Window # ----------------------------------------------------------------------------- @@ -360,12 +380,6 @@ info.tooltip.controller = Your Controller class must extend {0} # ----------------------------------------------------------------------------- menubar.no.lib.item = No Library Items -# ----------------------------------------------------------------------------- -# Selection Bar -# ----------------------------------------------------------------------------- -selectionbar.no.selected = No Selection -selectionbar.not.object = Selected Element Is Not An Object - # ----------------------------------------------------------------------------- # Alert # ----------------------------------------------------------------------------- @@ -428,6 +442,13 @@ log.user.fxml.jar.exploration.n.1 = Explored user library (loaded {0} FXML files log.user.fxml.jar.exploration.1.n = Explored user library (loaded ''{0}'' and {1} JAR files) log.user.fxml.jar.exploration.n.n = Explored user library (loaded {0} FXML files and {1} JAR files) +# ----------------------------------------------------------------------------- +# Preview Window +# ----------------------------------------------------------------------------- +resource.filechooser.filter.msg = property file +# Used as menu item label when no style sheet has been added +scenestylesheet.none = None + # ----------------------------------------------------------------------------- # Other # ----------------------------------------------------------------------------- @@ -460,15 +481,6 @@ csspanel.table = Table csspanel.text = Text csspanel.view.as = View As -# ----------------------------------------------------------------------------- -# Skeleton window -# ----------------------------------------------------------------------------- -skeleton.add.comments = Comments -skeleton.empty = No skeleton can be constructed from an empty document -skeleton.format.full = Full -# Parameter is a fxml file name -skeleton.window.title = Sample Skeleton for ''{0}'' Controller Class - # ----------------------------------------------------------------------------- # JAR Analysis Report dialog # ----------------------------------------------------------------------------- @@ -482,21 +494,36 @@ jar.analysis.not.node = Not a Node: # Welcome Dialog # ----------------------------------------------------------------------------- welcome.title = Gluon Scene Builder -welcome.recentitems.header = Recent Projects: -welcome.recentitems.empty = No recent projects -welcome.actions.header = Actions: -welcome.desktopproject.label = Start new project -#welcome.desktopandmobile.label = Create new desktop and mobile project -welcome.openproject.label = Open existing project -welcome.close = Close +welcome.recent.items.header = Recent +welcome.recent.items.no.recent.items = no recent projects +welcome.new.project.label = New Project +welcome.open.project.label = Open Project +# -- Template (this keys are replicated from SceneBuilderKit.properties) +template.title.header.desktop = Desktop +template.title.header.phone = Mobile +template.title.new.empty.app = Empty +template.title.new.basic.desktop.app = Basic Application +template.title.new.complex.desktop.app = Complex Application +template.title.new.empty.phone.app = Empty Screen +template.title.new.basic.phone.app = Basic Screen # ----------------------------------------------------------------------------- # Download latest version dialog # ----------------------------------------------------------------------------- -download_scene_builder.title = Download Scene Builder -download_scene_builder.header.label = Your Scene Builder version isn't the latest. -download_scene_builder.current_version.label = Current version: -download_scene_builder.last_version_number.label = Latest version: -download_scene_builder.remind_later.label = Remind Later -download_scene_builder.ignore.label = Ignore -download_scene_builder.download.label = Download \ No newline at end of file +download.scene.builder.title = Download Scene Builder +download.scene.builder.header.label = Your Scene Builder version isn't the latest. +download.scene.builder.current.version.label = Current version: +download.scene.builder.last.version.number.label = Latest version: +download.scene.builder.remind.later.label = Remind Later +download.scene.builder.ignore.label = Ignore +download.scene.builder.download.label = Download +download.scene.builder.learn.mode.label = Learn More + +# ----------------------------------------------------------------------------- +# Check for updates +# ----------------------------------------------------------------------------- +check_for_updates.alert.error.message = Can't check for latest version with server. +check_for_updates.alert.error.title = Scene Builder +check_for_updates.alert.up_to_date.message = You already have the latest version of Scene Builder installed. +check_for_updates.alert.up_to_date.title = Scene Builder +check_for_updates.alert.headertext = Update Check \ No newline at end of file diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/menubar/MenuBar.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/menubar/MenuBar.fxml index 8e7ebfcf67f57a5b46d610c781ee397cc51abf54..2a611f5939d253cc07763f96db5c6adcd7ee6aac 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/menubar/MenuBar.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/menubar/MenuBar.fxml @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- + Copyright (c) 2016, 2017, Gluon and/or its affiliates. Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. @@ -35,7 +36,6 @@ <?import java.lang.*?> <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> -<?scenebuilder-preview-i18n-resource ../i18n/SceneBuilderApp.properties?> <StackPane xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> <children> @@ -44,20 +44,7 @@ <Menu fx:id="fileMenu" mnemonicParsing="true" text="%menu.title.file"> <items> <MenuItem fx:id="newMenuItem" mnemonicParsing="true" text="%menu.title.new" /> - <Menu fx:id="newTemplateMenuItem" mnemonicParsing="true" text="%menu.title.new.template"> - <items> - <MenuItem fx:id="newAlertDialogMenuItem" mnemonicParsing="false" text="%menu.title.new.alert.dialog" /> - <MenuItem fx:id="newBasicAppMenuItem" mnemonicParsing="false" text="%menu.title.new.basic.app" /> - <MenuItem fx:id="newComplexAppMenuItem" mnemonicParsing="false" text="%menu.title.new.complex.app" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem fx:id="newAlertDialogCssMenuItem" mnemonicParsing="false" text="%menu.title.new.alert.dialog.css" /> - <MenuItem fx:id="newAlertDialogI18nMenuItem" mnemonicParsing="false" text="%menu.title.new.alert.dialog.i18n" /> - <MenuItem fx:id="newBasicAppCssMenuItem" mnemonicParsing="false" text="%menu.title.new.basic.app.css" /> - <MenuItem fx:id="newBasicAppI18nMenuItem" mnemonicParsing="false" text="%menu.title.new.basic.app.i18n" /> - <MenuItem fx:id="newComplexAppCssMenuItem" mnemonicParsing="false" text="%menu.title.new.complex.app.css" /> - <MenuItem fx:id="newComplexAppI18nMenuItem" mnemonicParsing="false" text="%menu.title.new.complex.app.i18n" /> - </items> - </Menu> + <MenuItem fx:id="newTemplateMenuItem" mnemonicParsing="true" text="%menu.title.new.template" /> <SeparatorMenuItem mnemonicParsing="false" /> <MenuItem fx:id="openMenuItem" mnemonicParsing="true" text="%menu.title.open" /> <Menu fx:id="openRecentMenu" mnemonicParsing="true" text="%menu.title.open.recent"> @@ -175,6 +162,8 @@ <SeparatorMenuItem mnemonicParsing="false" /> <Menu fx:id="sizeMenu" mnemonicParsing="true" text="%menu.title.size"> <items> + <RadioMenuItem fx:id="phoneSetSizeMenuItem" mnemonicParsing="false" text="%menu.title.size.phone" /> + <RadioMenuItem fx:id="tabletSetSizeMenuItem" mnemonicParsing="false" text="%menu.title.size.tablet" /> <RadioMenuItem fx:id="qvgaSetSizeMenuItem" mnemonicParsing="false" text="%menu.title.size.qvga" /> <RadioMenuItem fx:id="vgaSetSizeMenuItem" mnemonicParsing="false" text="%menu.title.size.vga" /> <RadioMenuItem fx:id="touchSetSizeMenuItem" mnemonicParsing="false" text="%menu.title.size.touch" /> @@ -221,19 +210,43 @@ <SeparatorMenuItem mnemonicParsing="false" /> <Menu fx:id="themeMenu" mnemonicParsing="true" text="%menu.title.theme"> <items> - <RadioMenuItem fx:id="gluonMobileThemeMenuItem" mnemonicParsing="false" text="%menu.title.theme.gluon_mobile" /> - <RadioMenuItem fx:id="modenaThemeMenuItem" mnemonicParsing="false" text="%menu.title.theme.modena" /> - <RadioMenuItem fx:id="modenaTouchThemeMenuItem" mnemonicParsing="false" text="%menu.title.theme.modena.touch" /> + <RadioMenuItem fx:id="gluonMobileLightThemeMenuItem" mnemonicParsing="false" text="%title.theme.gluon_mobile_light" /> + <RadioMenuItem fx:id="gluonMobileDarkThemeMenuItem" mnemonicParsing="false" text="%title.theme.gluon_mobile_dark" /> + <RadioMenuItem fx:id="modenaThemeMenuItem" mnemonicParsing="false" text="%title.theme.modena" /> + <RadioMenuItem fx:id="modenaTouchThemeMenuItem" mnemonicParsing="false" text="%title.theme.modena_touch" /> <SeparatorMenuItem mnemonicParsing="false" /> - <RadioMenuItem fx:id="modenaHighContrastBlackonwhiteThemeMenuItem" mnemonicParsing="false" text="%menu.title.theme.modena.high.contrast.blackonwhite" /> - <RadioMenuItem fx:id="modenaHighContrastWhiteonblackThemeMenuItem" mnemonicParsing="false" text="%menu.title.theme.modena.high.contrast.whiteonblack" /> - <RadioMenuItem fx:id="modenaHighContrastYellowonblackThemeMenuItem" mnemonicParsing="false" text="%menu.title.theme.modena.high.contrast.yellowonblack" /> + <RadioMenuItem fx:id="modenaHighContrastBlackonwhiteThemeMenuItem" mnemonicParsing="false" text="%title.theme.modena_high_contrast_black_on_white" /> + <RadioMenuItem fx:id="modenaHighContrastWhiteonblackThemeMenuItem" mnemonicParsing="false" text="%title.theme.modena_high_contrast_white_on_black" /> + <RadioMenuItem fx:id="modenaHighContrastYellowonblackThemeMenuItem" mnemonicParsing="false" text="%title.theme.modena_high_contrast_yellow_on_black" /> <SeparatorMenuItem mnemonicParsing="false" /> - <RadioMenuItem fx:id="caspianThemeMenuItem" mnemonicParsing="false" text="%menu.title.theme.caspian" /> - <RadioMenuItem fx:id="caspianEmbeddedThemeMenuItem" mnemonicParsing="false" text="%menu.title.theme.caspian.embedded" /> - <RadioMenuItem fx:id="caspianEmbeddedQVGAThemeMenuItem" mnemonicParsing="false" text="%menu.title.theme.caspian.embedded.qvga" /> + <RadioMenuItem fx:id="caspianThemeMenuItem" mnemonicParsing="false" text="%title.theme.caspian" /> + <RadioMenuItem fx:id="caspianEmbeddedThemeMenuItem" mnemonicParsing="false" text="%title.theme.caspian_embedded" /> + <RadioMenuItem fx:id="caspianEmbeddedQVGAThemeMenuItem" mnemonicParsing="false" text="%title.theme.caspian_embedded_qvga" /> <SeparatorMenuItem mnemonicParsing="false" /> - <CheckMenuItem fx:id="caspianHighContrastThemeMenuItem" mnemonicParsing="false" text="%menu.title.theme.caspian.high.contrast" /> + <CheckMenuItem fx:id="caspianHighContrastThemeMenuItem" mnemonicParsing="false" text="%title.theme.caspian_high_contrast" /> + </items> + </Menu> + <Menu fx:id="gluonThemeMenu" mnemonicParsing="true" text="%menu.title.gluon.swatch" > + <items> + <RadioMenuItem fx:id="amberSwatch" mnemonicParsing="false" text="%title.gluon.swatch.amber" /> + <RadioMenuItem fx:id="blueGreySwatch" mnemonicParsing="false" text="%title.gluon.swatch.blue_grey" /> + <RadioMenuItem fx:id="blueSwatch" mnemonicParsing="false" text="%title.gluon.swatch.blue" /> + <RadioMenuItem fx:id="brownSwatch" mnemonicParsing="false" text="%title.gluon.swatch.brown" /> + <RadioMenuItem fx:id="cyanSwatch" mnemonicParsing="false" text="%title.gluon.swatch.cyan" /> + <RadioMenuItem fx:id="deepOrangeSwatch" mnemonicParsing="false" text="%title.gluon.swatch.deep_orange" /> + <RadioMenuItem fx:id="deepPurpleSwatch" mnemonicParsing="false" text="%title.gluon.swatch.deep_purple" /> + <RadioMenuItem fx:id="greenSwatch" mnemonicParsing="false" text="%title.gluon.swatch.green" /> + <RadioMenuItem fx:id="greySwatch" mnemonicParsing="false" text="%title.gluon.swatch.grey" /> + <RadioMenuItem fx:id="indigoSwatch" mnemonicParsing="false" text="%title.gluon.swatch.indigo" /> + <RadioMenuItem fx:id="lightBlueSwatch" mnemonicParsing="false" text="%title.gluon.swatch.light_blue" /> + <RadioMenuItem fx:id="lightGreenSwatch" mnemonicParsing="false" text="%title.gluon.swatch.light_green" /> + <RadioMenuItem fx:id="limeSwatch" mnemonicParsing="false" text="%title.gluon.swatch.lime" /> + <RadioMenuItem fx:id="orangeSwatch" mnemonicParsing="false" text="%title.gluon.swatch.orange" /> + <RadioMenuItem fx:id="pinkSwatch" mnemonicParsing="false" text="%title.gluon.swatch.pink" /> + <RadioMenuItem fx:id="purpleSwatch" mnemonicParsing="false" text="%title.gluon.swatch.purple" /> + <RadioMenuItem fx:id="redSwatch" mnemonicParsing="false" text="%title.gluon.swatch.red" /> + <RadioMenuItem fx:id="tealSwatch" mnemonicParsing="false" text="%title.gluon.swatch.teal" /> + <RadioMenuItem fx:id="yellowSwatch" mnemonicParsing="false" text="%title.gluon.swatch.yellow" /> </items> </Menu> <Menu fx:id="styleSheetMenu" mnemonicParsing="true" text="%menu.title.scene.stylesheets"> @@ -262,6 +275,8 @@ <items> <RadioMenuItem fx:id="preferredPreviewSizeMenuItem" mnemonicParsing="false" text="%menu.title.size.preferred" /> <SeparatorMenuItem mnemonicParsing="false" /> + <RadioMenuItem fx:id="phonePreviewSizeMenuItem" mnemonicParsing="false" text="%menu.title.size.phone" /> + <RadioMenuItem fx:id="tabletPreviewSizeMenuItem" mnemonicParsing="false" text="%menu.title.size.tablet" /> <RadioMenuItem fx:id="qvgaPreviewSizeMenuItem" mnemonicParsing="false" text="%menu.title.size.qvga" /> <RadioMenuItem fx:id="vgaPreviewSizeMenuItem" mnemonicParsing="false" text="%menu.title.size.vga" /> <RadioMenuItem fx:id="touchPreviewSizeMenuItem" mnemonicParsing="false" text="%menu.title.size.touch" /> @@ -278,6 +293,7 @@ <Menu fx:id="helpMenu" mnemonicParsing="false" text="%menu.title.help"> <items> <MenuItem fx:id="helpMenuItem" mnemonicParsing="true" text="%menu.title.scene.builder.help" /> + <MenuItem fx:id="checkUpdatesMenuItem" mnemonicParsing="true" text="%menu.title.check.updates" /> <MenuItem fx:id="aboutMenuItem" mnemonicParsing="false" text="%menu.title.about" /> </items> </Menu> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/gluon_scene_builder.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/open_document@2x.png similarity index 51% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/app/gluon_scene_builder.png rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/app/open_document@2x.png index 77a9c3c83d6dfe7e5b90bfc7dcb5bb82dbc01bf2..372a9de1919c97aba603fd57803ba1a6a0de05ef 100644 Binary files a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/gluon_scene_builder.png and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/open_document@2x.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/preferences/Preferences.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/preferences/Preferences.fxml index 171f522190b1046bd3f6af1a4db66b54ea6b91a0..070d424a19ff3c23fe3150dde32ce174545e4777 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/preferences/Preferences.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/preferences/Preferences.fxml @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- + Copyright (c) 2016, Gluon and/or its affiliates. Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. @@ -39,7 +40,6 @@ <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> <?import javafx.scene.shape.*?> -<?scenebuilder-preview-i18n-resource ../i18n/SceneBuilderApp.properties?> <GridPane hgap="6.0" maxWidth="1.7976931348623157E308" styleClass="theme-presets" vgap="10.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> <children> @@ -47,6 +47,9 @@ <DoubleField fx:id="rootContainerWidth" prefWidth="200.0" text="" GridPane.columnIndex="1" GridPane.rowIndex="0" /> <Label text="%prefs.doc.height" GridPane.columnIndex="0" GridPane.rowIndex="1" /> <DoubleField fx:id="rootContainerHeight" prefWidth="200.0" text="" GridPane.columnIndex="1" GridPane.rowIndex="1" /> + + <Separator prefWidth="-1.0" GridPane.columnIndex="0" GridPane.columnSpan="2" GridPane.rowIndex="2" /> + <Label text="%prefs.background" GridPane.columnIndex="0" GridPane.rowIndex="3" /> <ChoiceBox fx:id="backgroundImage" GridPane.columnIndex="1" GridPane.rowIndex="3" /> <Label text="%prefs.alignment.guides" GridPane.columnIndex="0" GridPane.rowIndex="4" /> @@ -67,6 +70,13 @@ <CustomMenuItem fx:id="parentRingMenuItem" hideOnClick="false" mnemonicParsing="false" text="Unspecified Action" /> </items> </MenuButton> + + <Separator prefWidth="-1.0" GridPane.columnIndex="0" GridPane.columnSpan="2" GridPane.rowIndex="6" /> + + <Label text="%prefs.tooltheme" GridPane.rowIndex="7" /> + <ChoiceBox fx:id="scenebuilderTheme" GridPane.columnIndex="1" GridPane.rowIndex="7" /> + <Label text="%prefs.library.displayoption" GridPane.columnIndex="0" GridPane.rowIndex="8" /> + <ChoiceBox fx:id="libraryDisplayOption" GridPane.columnIndex="1" GridPane.rowIndex="8" /> <Label text="%prefs.hierarchy.displayoption" GridPane.columnIndex="0" GridPane.rowIndex="9" /> <ChoiceBox fx:id="hierarchyDisplayOption" GridPane.columnIndex="1" GridPane.rowIndex="9" /> <Label text="%prefs.cssanalyzer.columns.order" GridPane.columnIndex="0" GridPane.rowIndex="10" /> @@ -79,9 +89,18 @@ </FXCollections> </items> </ChoiceBox> - <Separator prefWidth="-1.0" GridPane.columnIndex="0" GridPane.columnSpan="2" GridPane.rowIndex="2" /> + <Separator prefWidth="-1.0" GridPane.columnIndex="0" GridPane.columnSpan="2" GridPane.rowIndex="11" /> - <ChoiceBox fx:id="recentItemsSize" GridPane.columnIndex="1" GridPane.rowIndex="12"> + + <Label text="%prefs.document.theme" GridPane.rowIndex="12" /> + <ChoiceBox fx:id="themes" GridPane.columnIndex="1" GridPane.rowIndex="12" /> + <Label text="%prefs.document.gluonswatch" GridPane.rowIndex="13" /> + <ChoiceBox fx:id="gluonSwatch" GridPane.columnIndex="1" GridPane.rowIndex="13" /> + + <Separator prefWidth="-1.0" GridPane.columnIndex="0" GridPane.columnSpan="2" GridPane.rowIndex="14" /> + + <Label text="%prefs.recent.items" GridPane.columnIndex="0" GridPane.rowIndex="15" /> + <ChoiceBox fx:id="recentItemsSize" GridPane.columnIndex="1" GridPane.rowIndex="15"> <items> <FXCollections fx:factory="observableArrayList"> <String fx:value="Item 1" /> @@ -90,14 +109,10 @@ </FXCollections> </items> </ChoiceBox> - <Label text="%prefs.library.displayoption" GridPane.columnIndex="0" GridPane.rowIndex="8" /> - <ChoiceBox fx:id="libraryDisplayOption" GridPane.columnIndex="1" GridPane.rowIndex="8" /> - <Separator prefWidth="-1.0" GridPane.columnIndex="0" GridPane.columnSpan="2" GridPane.rowIndex="6" /> - <Label text="%prefs.recent.items" GridPane.columnIndex="0" GridPane.rowIndex="12" /> - <Label text="%prefs.tooltheme" GridPane.rowIndex="7" /> - <ChoiceBox fx:id="toolTheme" GridPane.columnIndex="1" GridPane.rowIndex="7" /> - <Separator prefWidth="-1.0" GridPane.columnIndex="0" GridPane.columnSpan="2" GridPane.rowIndex="13" /> - <Button onAction="#resetToDefaultAction" prefWidth="-1.0" text="%prefs.reset.default" GridPane.columnIndex="0" GridPane.columnSpan="2" GridPane.halignment="CENTER" GridPane.rowIndex="14" /> + + <Separator prefWidth="-1.0" GridPane.columnIndex="0" GridPane.columnSpan="2" GridPane.rowIndex="16" /> + + <Button onAction="#resetToDefaultAction" prefWidth="-1.0" text="%prefs.reset.default" GridPane.columnIndex="0" GridPane.columnSpan="2" GridPane.halignment="CENTER" GridPane.rowIndex="17" /> </children> <columnConstraints> <ColumnConstraints halignment="RIGHT" hgrow="SOMETIMES" maxWidth="-Infinity" minWidth="-Infinity" /> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/registration/Registration.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/registration/Registration.fxml index e28cd228422e929e6e0312802858c299c7ec5bbe..e54453179920516b2ae8853d81c5a8ec5aa20433 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/registration/Registration.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/registration/Registration.fxml @@ -1,7 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- - Copyright (c) 2012, 2014, Oracle and/or its affiliates, 2016, Gluon. + Copyright (c) 2016, Gluon and/or its affiliates. + Copyright (c) 2012, 2014. All rights reserved. Use is subject to license terms. This file is available and licensed under the following license: diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog.css b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog.css deleted file mode 100644 index 736a847fe7ddaf3ed3887f0027d46e9d13c9222e..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog.css +++ /dev/null @@ -1,6 +0,0 @@ -.button { - -fx-background-radius: 12; - -fx-padding: 5; - -fx-shadow-highlight-color: f0f0f0; - -fx-body-color: linear-gradient(from 0em 0em to 0em 2.083333em, white, #D7D7D7, white); -} diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog.fxml deleted file mode 100644 index 01744bde3cab65a4a98900517509132cdef68516..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog.fxml +++ /dev/null @@ -1,73 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.*?> -<?import javafx.scene.control.*?> -<?import javafx.scene.image.*?> -<?import javafx.scene.layout.*?> -<?import javafx.scene.text.*?> - -<GridPane hgap="14.0" maxHeight="+Infinity" maxWidth="+Infinity" minHeight="-Infinity" minWidth="-Infinity" vgap="20.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2"> - <children> - <ImageView fitHeight="60.0" fitWidth="60.0" pickOnBounds="true" preserveRatio="true" GridPane.columnIndex="0" GridPane.halignment="CENTER" GridPane.rowIndex="0" GridPane.valignment="TOP"> - <image> - <!-- place holder --> - </image> - </ImageView> - <VBox maxHeight="+Infinity" maxWidth="+Infinity" minHeight="-Infinity" prefWidth="400.0" spacing="7.0" GridPane.columnIndex="1" GridPane.rowIndex="0"> - <children> - <Label fx:id="messageLabel" text="message" textAlignment="LEFT" wrapText="true"> - <font> - <Font name="System Bold" size="13.0" /> - </font> - </Label> - <Label fx:id="detailsLabel" text="details" textAlignment="LEFT" wrapText="true"> - <font> - <Font size="12.0" /> - </font> - </Label> - </children> - </VBox> - <HBox maxHeight="-Infinity" maxWidth="+Infinity" minHeight="-Infinity" minWidth="-Infinity" GridPane.columnIndex="1" GridPane.rowIndex="1"> - <children> - <HBox fx:id="actionParent" alignment="CENTER"> - <children> - <Button fx:id="actionButton" mnemonicParsing="false" text="Action" HBox.hgrow="NEVER"> - <HBox.margin> - <Insets right="14.0" /> - </HBox.margin> - </Button> - </children> - <HBox.margin> - <Insets /> - </HBox.margin> - </HBox> - <Pane maxWidth="+Infinity" HBox.hgrow="ALWAYS" /> - <Button fx:id="cancelButton" cancelButton="true" minWidth="80.0" mnemonicParsing="false" text="Cancel" HBox.hgrow="NEVER"> - <HBox.margin> - <Insets /> - </HBox.margin> - </Button> - <HBox fx:id="okParent" alignment="CENTER"> - <children> - <Button fx:id="okButton" minWidth="80.0" mnemonicParsing="false" text="Ok" HBox.hgrow="NEVER"> - <HBox.margin> - <Insets left="14.0" /> - </HBox.margin> - </Button> - </children> - </HBox> - </children> - </HBox> - </children> - <columnConstraints> - <ColumnConstraints hgrow="NEVER" maxWidth="-Infinity" minWidth="-Infinity" /> - <ColumnConstraints halignment="CENTER" hgrow="ALWAYS" maxWidth="+Infinity" minWidth="-Infinity" /> - </columnConstraints> - <padding> - <Insets bottom="14.0" left="14.0" right="14.0" top="14.0" /> - </padding> - <rowConstraints> - <RowConstraints maxHeight="+Infinity" minHeight="-Infinity" valignment="CENTER" vgrow="ALWAYS" /> - <RowConstraints maxHeight="-Infinity" minHeight="-Infinity" vgrow="NEVER" /> - </rowConstraints> -</GridPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog_css.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog_css.fxml deleted file mode 100644 index 7e48d5776f1422c2893f6903e4bc524f5923c7ea..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog_css.fxml +++ /dev/null @@ -1,77 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import java.net.*?> -<?import javafx.geometry.*?> -<?import javafx.scene.control.*?> -<?import javafx.scene.image.*?> -<?import javafx.scene.layout.*?> -<?import javafx.scene.text.*?> - -<GridPane hgap="14.0" maxHeight="+Infinity" maxWidth="+Infinity" minHeight="-Infinity" minWidth="-Infinity" vgap="20.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2"> - <children> - <ImageView fitHeight="60.0" fitWidth="60.0" pickOnBounds="true" preserveRatio="true" GridPane.columnIndex="0" GridPane.halignment="CENTER" GridPane.rowIndex="0" GridPane.valignment="TOP"> - <image> - <Image url="@AlertDialog.png" /> - </image> - </ImageView> - <VBox maxHeight="+Infinity" maxWidth="+Infinity" minHeight="-Infinity" prefWidth="400.0" spacing="7.0" GridPane.columnIndex="1" GridPane.rowIndex="0"> - <children> - <Label fx:id="messageLabel" text="message" textAlignment="LEFT" wrapText="true"> - <font> - <Font name="System Bold" size="13.0" /> - </font> - </Label> - <Label fx:id="detailsLabel" text="details" textAlignment="LEFT" wrapText="true"> - <font> - <Font size="12.0" /> - </font> - </Label> - </children> - </VBox> - <HBox maxHeight="-Infinity" maxWidth="+Infinity" minHeight="-Infinity" minWidth="-Infinity" GridPane.columnIndex="1" GridPane.rowIndex="1"> - <children> - <HBox fx:id="actionParent" alignment="CENTER"> - <children> - <Button fx:id="actionButton" mnemonicParsing="false" text="Action" HBox.hgrow="NEVER"> - <HBox.margin> - <Insets right="14.0" /> - </HBox.margin> - </Button> - </children> - <HBox.margin> - <Insets /> - </HBox.margin> - </HBox> - <Pane maxWidth="+Infinity" HBox.hgrow="ALWAYS" /> - <Button fx:id="cancelButton" cancelButton="true" minWidth="80.0" mnemonicParsing="false" text="Cancel" HBox.hgrow="NEVER"> - <HBox.margin> - <Insets /> - </HBox.margin> - </Button> - <HBox fx:id="okParent" alignment="CENTER"> - <children> - <Button fx:id="okButton" minWidth="80.0" mnemonicParsing="false" text="Ok" HBox.hgrow="NEVER"> - <HBox.margin> - <Insets left="14.0" /> - </HBox.margin> - </Button> - </children> - </HBox> - </children> - </HBox> - </children> - <columnConstraints> - <ColumnConstraints hgrow="NEVER" maxWidth="-Infinity" minWidth="-Infinity" /> - <ColumnConstraints halignment="CENTER" hgrow="ALWAYS" maxWidth="+Infinity" minWidth="-Infinity" /> - </columnConstraints> - <padding> - <Insets bottom="14.0" left="14.0" right="14.0" top="14.0" /> - </padding> - <rowConstraints> - <RowConstraints maxHeight="+Infinity" minHeight="-Infinity" valignment="CENTER" vgrow="ALWAYS" /> - <RowConstraints maxHeight="-Infinity" minHeight="-Infinity" vgrow="NEVER" /> - </rowConstraints> - <stylesheets> - <URL value="@AlertDialog.css" /> - </stylesheets> -</GridPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog_en.properties b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog_en.properties deleted file mode 100644 index ff33db5f401f9e6c61208862a90e8d0842099058..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog_en.properties +++ /dev/null @@ -1,5 +0,0 @@ -label.message = message -label.details = details -button.action = Action -button.cancel = Cancel -button.ok = OK \ No newline at end of file diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog_fr.properties b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog_fr.properties deleted file mode 100644 index 0d9e666d7404878b714806bc8de1254147b26fcc..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog_fr.properties +++ /dev/null @@ -1,5 +0,0 @@ -label.message = message -label.details = d\u00e9tails -button.action = Action -button.cancel = Annuler -button.ok = OK \ No newline at end of file diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog_i18n.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog_i18n.fxml deleted file mode 100644 index 4f4e6793dac134634c2bf83272ddd8402af98eea..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog_i18n.fxml +++ /dev/null @@ -1,77 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import java.net.*?> -<?import javafx.geometry.*?> -<?import javafx.scene.control.*?> -<?import javafx.scene.image.*?> -<?import javafx.scene.layout.*?> -<?import javafx.scene.text.*?> - -<GridPane hgap="14.0" maxHeight="+Infinity" maxWidth="+Infinity" minHeight="-Infinity" minWidth="-Infinity" vgap="20.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2"> - <children> - <ImageView fitHeight="60.0" fitWidth="60.0" pickOnBounds="true" preserveRatio="true" GridPane.columnIndex="0" GridPane.halignment="CENTER" GridPane.rowIndex="0" GridPane.valignment="TOP"> - <image> - <Image url="@AlertDialog.png" /> - </image> - </ImageView> - <VBox maxHeight="+Infinity" maxWidth="+Infinity" minHeight="-Infinity" prefWidth="400.0" spacing="7.0" GridPane.columnIndex="1" GridPane.rowIndex="0"> - <children> - <Label fx:id="messageLabel" text="%label.message" textAlignment="LEFT" wrapText="true"> - <font> - <Font name="System Bold" size="13.0" /> - </font> - </Label> - <Label fx:id="detailsLabel" text="%label.details" textAlignment="LEFT" wrapText="true"> - <font> - <Font size="12.0" /> - </font> - </Label> - </children> - </VBox> - <HBox maxHeight="-Infinity" maxWidth="+Infinity" minHeight="-Infinity" minWidth="-Infinity" GridPane.columnIndex="1" GridPane.rowIndex="1"> - <children> - <HBox fx:id="actionParent" alignment="CENTER"> - <children> - <Button fx:id="actionButton" mnemonicParsing="false" text="%button.action" HBox.hgrow="NEVER"> - <HBox.margin> - <Insets right="14.0" /> - </HBox.margin> - </Button> - </children> - <HBox.margin> - <Insets /> - </HBox.margin> - </HBox> - <Pane maxWidth="+Infinity" HBox.hgrow="ALWAYS" /> - <Button fx:id="cancelButton" cancelButton="true" minWidth="80.0" mnemonicParsing="false" text="%button.cancel" HBox.hgrow="NEVER"> - <HBox.margin> - <Insets /> - </HBox.margin> - </Button> - <HBox fx:id="okParent" alignment="CENTER"> - <children> - <Button fx:id="okButton" minWidth="80.0" mnemonicParsing="false" text="%button.ok" HBox.hgrow="NEVER"> - <HBox.margin> - <Insets left="14.0" /> - </HBox.margin> - </Button> - </children> - </HBox> - </children> - </HBox> - </children> - <columnConstraints> - <ColumnConstraints hgrow="NEVER" maxWidth="-Infinity" minWidth="-Infinity" /> - <ColumnConstraints halignment="CENTER" hgrow="ALWAYS" maxWidth="+Infinity" minWidth="-Infinity" /> - </columnConstraints> - <padding> - <Insets bottom="14.0" left="14.0" right="14.0" top="14.0" /> - </padding> - <rowConstraints> - <RowConstraints maxHeight="+Infinity" minHeight="-Infinity" valignment="CENTER" vgrow="ALWAYS" /> - <RowConstraints maxHeight="-Infinity" minHeight="-Infinity" vgrow="NEVER" /> - </rowConstraints> - <stylesheets> - <URL value="@AlertDialog.css" /> - </stylesheets> -</GridPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication.css b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication.css deleted file mode 100644 index b029adc91e1712f4a03eb7bbaefff36b7393ea38..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication.css +++ /dev/null @@ -1,8 +0,0 @@ -.menu-bar { - -fx-background-color: #aeb5ba, linear-gradient(to bottom, #ecf4fa 0%, #ced4d9 100%); - -fx-background-insets: 0, 0 0 1 0; -} - -.menu-bar .menu .label { - -fx-text-fill: #2d3e4c; -} diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication_css.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication_css.fxml deleted file mode 100644 index c2008496d8637df30e089a90f595d6d4478bb773..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication_css.fxml +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import java.net.*?> -<?import javafx.scene.control.*?> -<?import javafx.scene.layout.*?> -<?import javafx.scene.text.*?> - -<VBox prefHeight="400.0" prefWidth="640.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2"> - <children> - <MenuBar VBox.vgrow="NEVER"> - <menus> - <Menu mnemonicParsing="false" text="File"> - <items> - <MenuItem mnemonicParsing="false" text="New" /> - <MenuItem mnemonicParsing="false" text="Open…" /> - <Menu mnemonicParsing="false" text="Open Recent" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="Close" /> - <MenuItem mnemonicParsing="false" text="Save" /> - <MenuItem mnemonicParsing="false" text="Save As…" /> - <MenuItem mnemonicParsing="false" text="Revert" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="Preferences…" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="Quit" /> - </items> - </Menu> - <Menu mnemonicParsing="false" text="Edit"> - <items> - <MenuItem mnemonicParsing="false" text="Undo" /> - <MenuItem mnemonicParsing="false" text="Redo" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="Cut" /> - <MenuItem mnemonicParsing="false" text="Copy" /> - <MenuItem mnemonicParsing="false" text="Paste" /> - <MenuItem mnemonicParsing="false" text="Delete" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="Select All" /> - <MenuItem mnemonicParsing="false" text="Unselect All" /> - </items> - </Menu> - <Menu mnemonicParsing="false" text="Help"> - <items> - <MenuItem mnemonicParsing="false" text="About MyHelloApp" /> - </items> - </Menu> - </menus> - </MenuBar> - <AnchorPane maxHeight="-1.0" maxWidth="-1.0" prefHeight="-1.0" prefWidth="-1.0" VBox.vgrow="ALWAYS"> - <children> - <Label alignment="CENTER" layoutX="155.0" layoutY="177.0" style=" " text="Drag components from Library here…" textAlignment="CENTER" textFill="#9f9f9f" wrapText="false"> - <font> - <Font size="18.0" /> - </font> - </Label> - </children> - </AnchorPane> - </children> - <stylesheets> - <URL value="@BasicApplication.css" /> - </stylesheets> -</VBox> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication_en.properties b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication_en.properties deleted file mode 100644 index 15b483297cccff5d9045c63ccd691d3a06a3cada..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication_en.properties +++ /dev/null @@ -1,24 +0,0 @@ -menu.title.file = File -menu.title.new = New -menu.title.open = Open\u2026 -menu.title.open.recent = Open Recent -menu.title.close = Close -menu.title.save = Save -menu.title.save.as = Save As\u2026 -menu.title.revert = Revert -menu.title.preferences = Preferences\u2026 -menu.title.quit = Quit - -menu.title.edit = Edit -menu.title.undo = Undo -menu.title.redo = Redo -menu.title.cut = Cut -menu.title.copy = Copy -menu.title.paste = Paste -menu.title.delete = Delete -menu.title.select.all = Select All -menu.title.unselect.all = Unselect All - -menu.title.help = Help -menu.title.about = About MyHelloApp -label.text.drag.here = Drag components from Library here\u2026 diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication_fr.properties b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication_fr.properties deleted file mode 100644 index d2fcba2d07566370ecc1bf1239b690c4dd52925a..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication_fr.properties +++ /dev/null @@ -1,24 +0,0 @@ -menu.title.file = Fichier -menu.title.new = Nouveau -menu.title.open = Ouvrir\u2026 -menu.title.open.recent = Ouvrir l'\u00e9lement r\u00e9cent -menu.title.close = Fermer -menu.title.save = Enregistrer -menu.title.save.as = Enregistrer sous\u2026 -menu.title.revert = Revenir \u00e0 la version enregistr\u00e9e -menu.title.preferences = Pr\u00e9f\u00e9rences\u2026 -menu.title.quit = Quitter - -menu.title.edit = Edition -menu.title.undo = Annuler -menu.title.redo = R\u00e9tablir -menu.title.cut = Couper -menu.title.copy = Copier -menu.title.paste = Coller -menu.title.delete = Supprimer -menu.title.select.all = Tout s\u00e9lectionner -menu.title.unselect.all = Tout d\u00e9selectionner - -menu.title.help = Aide -menu.title.about = A propos de MyHelloApp -label.text.drag.here = Faites glisser les composants de la Librairie ici\u2026 diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication_i18n.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication_i18n.fxml deleted file mode 100644 index 6a92dc28a503302b4e8f3debe5507419d00dcd30..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication_i18n.fxml +++ /dev/null @@ -1,62 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import java.net.*?> -<?import javafx.scene.control.*?> -<?import javafx.scene.layout.*?> -<?import javafx.scene.text.*?> - -<VBox prefHeight="400.0" prefWidth="640.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2"> - <children> - <MenuBar VBox.vgrow="NEVER"> - <menus> - <Menu mnemonicParsing="false" text="%menu.title.file"> - <items> - <MenuItem mnemonicParsing="false" text="%menu.title.new" /> - <MenuItem mnemonicParsing="false" text="%menu.title.open" /> - <Menu mnemonicParsing="false" text="%menu.title.open.recent" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="%menu.title.close" /> - <MenuItem mnemonicParsing="false" text="%menu.title.save" /> - <MenuItem mnemonicParsing="false" text="%menu.title.save.as" /> - <MenuItem mnemonicParsing="false" text="%menu.title.revert" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="%menu.title.preferences" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="%menu.title.quit" /> - </items> - </Menu> - <Menu mnemonicParsing="false" text="%menu.title.edit"> - <items> - <MenuItem mnemonicParsing="false" text="%menu.title.undo" /> - <MenuItem mnemonicParsing="false" text="%menu.title.redo" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="%menu.title.cut" /> - <MenuItem mnemonicParsing="false" text="%menu.title.copy" /> - <MenuItem mnemonicParsing="false" text="%menu.title.paste" /> - <MenuItem mnemonicParsing="false" text="%menu.title.delete" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="%menu.title.select.all" /> - <MenuItem mnemonicParsing="false" text="%menu.title.unselect.all" /> - </items> - </Menu> - <Menu mnemonicParsing="false" text="%menu.title.help"> - <items> - <MenuItem mnemonicParsing="false" text="%menu.title.about" /> - </items> - </Menu> - </menus> - </MenuBar> - <AnchorPane maxHeight="-1.0" maxWidth="-1.0" prefHeight="-1.0" prefWidth="-1.0" VBox.vgrow="ALWAYS"> - <children> - <Label alignment="CENTER" layoutX="58.0" layoutY="177.0" prefWidth="524.0" style=" " text="%label.text.drag.here" textAlignment="CENTER" textFill="#9f9f9f" wrapText="false"> - <font> - <Font size="18.0" /> - </font> - </Label> - </children> - </AnchorPane> - </children> - <stylesheets> - <URL value="@BasicApplication.css" /> - </stylesheets> -</VBox> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication.css b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication.css deleted file mode 100644 index 15251a17f97739bb2ad58941a25e8d5adbd521a1..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication.css +++ /dev/null @@ -1,18 +0,0 @@ -.menu-bar { - -fx-background-color: #aeb5ba, linear-gradient(to bottom, #ecf4fa 0%, #ced4d9 100%); - -fx-background-insets: 0, 0 0 1 0; -} - -.menu-bar .menu .label { - -fx-text-fill: #2d3e4c; -} - -.split-pane > .split-pane-divider { - -fx-background-color: linear-gradient(to right, #ecf4fa 0%, #ced4d9 100%); - -fx-padding: 0 3 0 3; -} - -.scroll-pane { - -fx-background-insets: 0, 0; - -fx-padding: 0; -} diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication_css.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication_css.fxml deleted file mode 100644 index 94183a4e50f4f78f495cf990f5e2caf0ec6479e5..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication_css.fxml +++ /dev/null @@ -1,102 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import java.net.*?> -<?import javafx.geometry.*?> -<?import javafx.scene.control.*?> -<?import javafx.scene.layout.*?> -<?import javafx.scene.paint.*?> -<?import javafx.scene.text.*?> - -<VBox prefHeight="600.0" prefWidth="900.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2"> - <children> - <MenuBar VBox.vgrow="NEVER"> - <menus> - <Menu mnemonicParsing="false" text="File"> - <items> - <MenuItem mnemonicParsing="false" text="New" /> - <MenuItem mnemonicParsing="false" text="Open…" /> - <Menu mnemonicParsing="false" text="Open Recent" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="Close" /> - <MenuItem mnemonicParsing="false" text="Save" /> - <MenuItem mnemonicParsing="false" text="Save As…" /> - <MenuItem mnemonicParsing="false" text="Revert" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="Preferences…" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="Quit" /> - </items> - </Menu> - <Menu mnemonicParsing="false" text="Edit"> - <items> - <MenuItem mnemonicParsing="false" text="Undo" /> - <MenuItem mnemonicParsing="false" text="Redo" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="Cut" /> - <MenuItem mnemonicParsing="false" text="Copy" /> - <MenuItem mnemonicParsing="false" text="Paste" /> - <MenuItem mnemonicParsing="false" text="Delete" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="Select All" /> - <MenuItem mnemonicParsing="false" text="Unselect All" /> - </items> - </Menu> - <Menu mnemonicParsing="false" text="Help"> - <items> - <MenuItem mnemonicParsing="false" text="About MyHelloApp" /> - </items> - </Menu> - </menus> - </MenuBar> - <SplitPane dividerPositions="0.2505567928730512, 0.7505567928730512" focusTraversable="true" prefHeight="-1.0" prefWidth="-1.0" VBox.vgrow="ALWAYS"> - <items> - <AnchorPane> - <children> - <Label alignment="CENTER" layoutX="14.0" layoutY="14.0" minWidth="60.0" prefWidth="-1.0" style=" " text="Master" textAlignment="CENTER" wrapText="false"> - <font> - <Font size="18.0" fx:id="x1" /> - </font> - <textFill> - <Color blue="0.624" green="0.624" red="0.624" fx:id="x2" /> - </textFill> - </Label> - </children> - </AnchorPane> - <ScrollPane prefHeight="-1.0" prefWidth="-1.0"> - <content> - <AnchorPane id="Content" minHeight="-1.0" minWidth="-1.0" prefHeight="545.0" prefWidth="430.0"> - <children> - <Label alignment="CENTER" font="$x1" layoutX="14.0" layoutY="14.0" style=" " text="View" textAlignment="CENTER" textFill="$x2" wrapText="false" /> - </children> - </AnchorPane> - </content> - </ScrollPane> - <AnchorPane> - <children> - <Label alignment="CENTER" font="$x1" layoutX="14.0" layoutY="14.0" style=" " text="Details" textAlignment="CENTER" textFill="$x2" wrapText="false" /> - </children> - </AnchorPane> - </items> - </SplitPane> - <HBox id="HBox" alignment="CENTER_LEFT" spacing="5.0" VBox.vgrow="NEVER"> - <children> - <Label maxHeight="1.7976931348623157E308" maxWidth="-1.0" text="Left status" HBox.hgrow="ALWAYS"> - <font> - <Font size="11.0" fx:id="x3" /> - </font> - <textFill> - <Color blue="0.625" green="0.625" red="0.625" fx:id="x4" /> - </textFill> - </Label> - <Pane prefHeight="-1.0" prefWidth="-1.0" HBox.hgrow="ALWAYS" /> - <Label font="$x3" maxWidth="-1.0" text="Right status" textFill="$x4" HBox.hgrow="NEVER" /> - </children> - <padding> - <Insets bottom="3.0" left="3.0" right="3.0" top="3.0" /> - </padding> - </HBox> - </children> - <stylesheets> - <URL value="@ComplexApplication.css" /> - </stylesheets> -</VBox> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication_en.properties b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication_en.properties deleted file mode 100644 index 2f7820ded6136bed7dd01dc3dd112a40dff2afd7..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication_en.properties +++ /dev/null @@ -1,29 +0,0 @@ -menu.title.file = File -menu.title.new = New -menu.title.open = Open\u2026 -menu.title.open.recent = Open Recent -menu.title.close = Close -menu.title.save = Save -menu.title.save.as = Save As\u2026 -menu.title.revert = Revert -menu.title.preferences = Preferences\u2026 -menu.title.quit = Quit - -menu.title.edit = Edit -menu.title.undo = Undo -menu.title.redo = Redo -menu.title.cut = Cut -menu.title.copy = Copy -menu.title.paste = Paste -menu.title.delete = Delete -menu.title.select.all = Select All -menu.title.unselect.all = Unselect All - -menu.title.help = Help -menu.title.about = About MyHelloApp - -label.text.master=Master -label.text.view=View -label.text.details=Details -label.text.left.status=Left status -label.text.right.status=Right status diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication_fr.properties b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication_fr.properties deleted file mode 100644 index c4265a4a5394518bacd19106bf9a8f3eb9236229..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication_fr.properties +++ /dev/null @@ -1,29 +0,0 @@ -menu.title.file = Fichier -menu.title.new = Nouveau -menu.title.open = Ouvrir\u2026 -menu.title.open.recent = Ouvrir l'\u00e9lement r\u00e9cent -menu.title.close = Fermer -menu.title.save = Enregistrer -menu.title.save.as = Enregistrer sous\u2026 -menu.title.revert = Revenir \u00e0 la version enregistr\u00e9e -menu.title.preferences = Pr\u00e9f\u00e9rences\u2026 -menu.title.quit = Quitter - -menu.title.edit = Edition -menu.title.undo = Annuler -menu.title.redo = R\u00e9tablir -menu.title.cut = Couper -menu.title.copy = Copier -menu.title.paste = Coller -menu.title.delete = Supprimer -menu.title.select.all = Tout s\u00e9lectionner -menu.title.unselect.all = Tout d\u00e9selectionner - -menu.title.help = Aide -menu.title.about = A propos de MyHelloApp - -label.text.master=Navigateur -label.text.view=Vue -label.text.details=D\u00e9tails -label.text.left.status=Status gauche -label.text.right.status=Status droit diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication_i18n.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication_i18n.fxml deleted file mode 100644 index 6024f697992ed1996f9eed130a645967b68dbf72..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication_i18n.fxml +++ /dev/null @@ -1,102 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import java.net.*?> -<?import javafx.geometry.*?> -<?import javafx.scene.control.*?> -<?import javafx.scene.layout.*?> -<?import javafx.scene.paint.*?> -<?import javafx.scene.text.*?> - -<VBox prefHeight="600.0" prefWidth="900.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2"> - <children> - <MenuBar VBox.vgrow="NEVER"> - <menus> - <Menu mnemonicParsing="false" text="%menu.title.file"> - <items> - <MenuItem mnemonicParsing="false" text="%menu.title.new" /> - <MenuItem mnemonicParsing="false" text="%menu.title.open" /> - <Menu mnemonicParsing="false" text="%menu.title.open.recent" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="%menu.title.close" /> - <MenuItem mnemonicParsing="false" text="%menu.title.save" /> - <MenuItem mnemonicParsing="false" text="%menu.title.save.as" /> - <MenuItem mnemonicParsing="false" text="%menu.title.revert" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="%menu.title.preferences" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="%menu.title.quit" /> - </items> - </Menu> - <Menu mnemonicParsing="false" text="%menu.title.edit"> - <items> - <MenuItem mnemonicParsing="false" text="%menu.title.undo" /> - <MenuItem mnemonicParsing="false" text="%menu.title.redo" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="%menu.title.cut" /> - <MenuItem mnemonicParsing="false" text="%menu.title.copy" /> - <MenuItem mnemonicParsing="false" text="%menu.title.paste" /> - <MenuItem mnemonicParsing="false" text="%menu.title.delete" /> - <SeparatorMenuItem mnemonicParsing="false" /> - <MenuItem mnemonicParsing="false" text="%menu.title.select.all" /> - <MenuItem mnemonicParsing="false" text="%menu.title.unselect.all" /> - </items> - </Menu> - <Menu mnemonicParsing="false" text="%menu.title.help"> - <items> - <MenuItem mnemonicParsing="false" text="%menu.title.about" /> - </items> - </Menu> - </menus> - </MenuBar> - <SplitPane dividerPositions="0.2505567928730512, 0.7505567928730512" focusTraversable="true" prefHeight="-1.0" prefWidth="-1.0" VBox.vgrow="ALWAYS"> - <items> - <AnchorPane> - <children> - <Label alignment="CENTER" layoutX="14.0" layoutY="14.0" minWidth="60.0" prefWidth="-1.0" style=" " text="%label.text.master" textAlignment="CENTER" wrapText="false"> - <font> - <Font size="18.0" fx:id="x1" /> - </font> - <textFill> - <Color blue="0.624" green="0.624" red="0.624" fx:id="x2" /> - </textFill> - </Label> - </children> - </AnchorPane> - <ScrollPane prefHeight="-1.0" prefWidth="-1.0"> - <content> - <AnchorPane id="Content" minHeight="-1.0" minWidth="-1.0" prefHeight="545.0" prefWidth="430.0"> - <children> - <Label alignment="CENTER" font="$x1" layoutX="14.0" layoutY="14.0" style=" " text="%label.text.view" textAlignment="CENTER" textFill="$x2" wrapText="false" /> - </children> - </AnchorPane> - </content> - </ScrollPane> - <AnchorPane> - <children> - <Label alignment="CENTER" font="$x1" layoutX="14.0" layoutY="14.0" style=" " text="%label.text.details" textAlignment="CENTER" textFill="$x2" wrapText="false" /> - </children> - </AnchorPane> - </items> - </SplitPane> - <HBox id="HBox" alignment="CENTER_LEFT" spacing="5.0" VBox.vgrow="NEVER"> - <children> - <Label maxHeight="1.7976931348623157E308" maxWidth="-1.0" text="%label.text.left.status" HBox.hgrow="ALWAYS"> - <font> - <Font size="11.0" fx:id="x3" /> - </font> - <textFill> - <Color blue="0.625" green="0.625" red="0.625" fx:id="x4" /> - </textFill> - </Label> - <Pane prefHeight="-1.0" prefWidth="-1.0" HBox.hgrow="ALWAYS" /> - <Label font="$x3" maxWidth="-1.0" text="Right Status" textFill="$x4" HBox.hgrow="NEVER" /> - </children> - <padding> - <Insets bottom="3.0" left="3.0" right="3.0" top="3.0" /> - </padding> - </HBox> - </children> - <stylesheets> - <URL value="@ComplexApplication.css" /> - </stylesheets> -</VBox> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/TemplateDialog.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/TemplateDialog.fxml deleted file mode 100644 index c9014bbfa0affd93794e183a0225dddb629812de..0000000000000000000000000000000000000000 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/TemplateDialog.fxml +++ /dev/null @@ -1,82 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright (c) 2012, 2014, Oracle and/or its affiliates. - All rights reserved. Use is subject to license terms. - - This file is available and licensed under the following license: - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - - - Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in - the documentation and/or other materials provided with the distribution. - - Neither the name of Oracle Corporation nor the names of its - contributors may be used to endorse or promote products derived - from this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ---> -<?import java.lang.*?> -<?import java.util.*?> -<?import javafx.geometry.*?> -<?import javafx.scene.control.*?> -<?import javafx.scene.image.*?> -<?import javafx.scene.layout.*?> -<?import javafx.scene.paint.*?> -<?import javafx.scene.text.*?> -<?scenebuilder-preview-i18n-resource ../i18n/SceneBuilderApp.properties?> - -<GridPane id="GridPane" hgap="7.0" prefWidth="450.0" vgap="7.0" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2"> - <children> - <Label text="%template.label.name" GridPane.columnIndex="0" GridPane.halignment="RIGHT" GridPane.rowIndex="0" /> - <TextField fx:id="nameTextField" onAction="#nameTextFieldOnAction" text="" GridPane.columnIndex="1" GridPane.rowIndex="0" /> - <Label text="%template.label.location" GridPane.columnIndex="0" GridPane.halignment="RIGHT" GridPane.rowIndex="1" /> - <TextField fx:id="locationTextField" onAction="#locationTextFieldOnAction" text="" GridPane.columnIndex="1" GridPane.rowIndex="1" /> - <Button fx:id="chooseButton" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" mnemonicParsing="false" onAction="#chooseButtonPressed" prefWidth="-1.0" text="%template.button.choose" GridPane.columnIndex="2" GridPane.rowIndex="1" /> - <Label text="%template.details.title" wrapText="false" GridPane.columnIndex="0" GridPane.columnSpan="2147483647" GridPane.rowIndex="2"> - <font> - <Font size="11.0" fx:id="x1" /> - </font> - <GridPane.margin> - <Insets top="7.0" /> - </GridPane.margin> - </Label> - <Label fx:id="detailsLabel" font="$x1" maxWidth="1.7976931348623157E308" minWidth="0.0" style="-fx-font-family: monospace; -fx-border-color: rgb(220,220,220); -fx-padding: 7" text="" GridPane.columnIndex="0" GridPane.columnSpan="2147483647" GridPane.rowIndex="4" /> - <Label fx:id="messageLabel" maxWidth="1.7976931348623157E308" minWidth="0.0" text="" GridPane.columnIndex="0" GridPane.columnSpan="2147483647" GridPane.rowIndex="5"> - <graphic> - <ImageView id="warning" pickOnBounds="true"> - <image> - <Image url="@warning.png" preserveRatio="true" smooth="true" /> - </image> - </ImageView> - </graphic> - </Label> - </children> - <columnConstraints> - <ColumnConstraints hgrow="NEVER" maxWidth="-Infinity" minWidth="-Infinity" /> - <ColumnConstraints hgrow="ALWAYS" minWidth="-1.0" /> - <ColumnConstraints fillWidth="true" halignment="RIGHT" hgrow="NEVER" maxWidth="-Infinity" minWidth="-Infinity" prefWidth="90.0" /> - </columnConstraints> - <rowConstraints> - <RowConstraints maxHeight="-Infinity" minHeight="-Infinity" vgrow="NEVER" /> - <RowConstraints maxHeight="-Infinity" minHeight="-Infinity" vgrow="NEVER" /> - <RowConstraints maxHeight="-Infinity" minHeight="-Infinity" vgrow="NEVER" /> - <RowConstraints minHeight="-Infinity" valignment="TOP" vgrow="ALWAYS" /> - <RowConstraints minHeight="-Infinity" valignment="TOP" vgrow="ALWAYS" /> - <RowConstraints minHeight="-Infinity" valignment="TOP" vgrow="ALWAYS" /> - </rowConstraints> -</GridPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/warning.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/warning.png deleted file mode 100644 index 34d303de43a24ce582bfd5b0befdea04264a13ce..0000000000000000000000000000000000000000 Binary files a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/warning.png and /dev/null differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/welcomedialog/WelcomeWindow.css b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/welcomedialog/WelcomeWindow.css new file mode 100644 index 0000000000000000000000000000000000000000..f2d5c2b40fc2a4f23d199290d7985868acddaf5f --- /dev/null +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/welcomedialog/WelcomeWindow.css @@ -0,0 +1,79 @@ +/* + * Copyright (c) 2017, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +@import "/com/oracle/javafx/scenebuilder/kit/template/TemplatesWindow.css"; + +.left-pane { + -fx-background-color: #f68a1f; +} + +.recent-documents-scrollpane{ + -fx-background-color: transparent; +} + +.recent-documents-scrollpane > .viewport { + -fx-background-color: transparent; +} + +.recent-document, .action-button { + -fx-background-color: transparent; + -fx-background-radius: 0; + -fx-background-insets: 0; +} + +.recent-document { + -fx-text-fill: white; + -fx-font-size: 1em; + + -fx-padding: 0.1666665em 5px 0.1666665em 7px; /* 2 5 2 7 */ +} + +.recent-document:hover { + -fx-background-color: rgba(0, 0, 0, 0.3); +} + +.action-button { + -fx-padding: 0.1666665em 0em 0.1666665em 7px; /* 2 0 2 7 */ +} + +.action-button:selected { + -fx-background-color: #f8a452; +} + +.action-button:hover { + -fx-background-color: rgba(0, 0, 0, 0.3); +} + +.no-recent-items-label { + -fx-text-fill: white; + -fx-font-size: 1em; + -fx-padding: 0.1666665em 5px 0.1666665em 7px; /* 2 5 2 7 */ +} \ No newline at end of file diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/welcomedialog/WelcomeWindow.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/welcomedialog/WelcomeWindow.fxml new file mode 100644 index 0000000000000000000000000000000000000000..58d0e83e79c2d8837fd0c6eae3b7985d40c73228 --- /dev/null +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/welcomedialog/WelcomeWindow.fxml @@ -0,0 +1,206 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + Copyright (c) 2017, Gluon and/or its affiliates. + All rights reserved. Use is subject to license terms. + + This file is available and licensed under the following license: + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the distribution. + - Neither the name of Oracle Corporation and Gluon nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +--> + +<?import javafx.geometry.Insets?> +<?import javafx.scene.control.Button?> +<?import javafx.scene.control.Label?> +<?import javafx.scene.control.ScrollPane?> +<?import javafx.scene.control.ToggleButton?> +<?import javafx.scene.control.ToggleGroup?> +<?import javafx.scene.effect.DropShadow?> +<?import javafx.scene.image.Image?> +<?import javafx.scene.image.ImageView?> +<?import javafx.scene.layout.BorderPane?> +<?import javafx.scene.layout.FlowPane?> +<?import javafx.scene.layout.VBox?> +<?import javafx.scene.shape.Rectangle?> +<?import javafx.scene.text.Font?> + +<BorderPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="650.0" prefWidth="1024.0" stylesheets="@WelcomeWindow.css" xmlns="http://javafx.com/javafx/8.0.101" xmlns:fx="http://javafx.com/fxml/1"> + <left> + <VBox styleClass="left-pane"> + <children> + <Label text="%welcome.recent.items.header" textFill="WHITE"> + <font> + <Font size="30.0" /> + </font> + <padding> + <Insets left="10.0" top="20.0" /> + </padding> + </Label> + <ScrollPane fitToWidth="true" hbarPolicy="NEVER" prefHeight="417.0" prefWidth="236.0" styleClass="recent-documents-scrollpane" VBox.vgrow="ALWAYS"> + <padding> + <Insets left="5.0" right="5.0" /> + </padding> + <content> + <VBox fx:id="recentDocuments" prefHeight="200.0" prefWidth="100.0" /> + </content> + </ScrollPane> + <VBox prefHeight="98.0" prefWidth="236.0"> + <children> + <ToggleButton alignment="BASELINE_LEFT" maxWidth="1.7976931348623157E308" mnemonicParsing="false" selected="true" styleClass="action-button" text="%welcome.new.project.label" textFill="WHITE"> + <font> + <Font size="16.0" /> + </font> + <toggleGroup> + <ToggleGroup fx:id="actions" /> + </toggleGroup> + </ToggleButton> + <ToggleButton alignment="BASELINE_LEFT" maxWidth="1.7976931348623157E308" mnemonicParsing="false" onAction="#openDocument" styleClass="action-button" text="%welcome.open.project.label" textFill="WHITE" toggleGroup="$actions"> + <font> + <Font size="16.0" /> + </font> + </ToggleButton> + </children> + <padding> + <Insets bottom="30.0" left="5.0" right="5.0" top="30.0" /> + </padding> + </VBox> + </children> + </VBox> + </left> + <center> + <ScrollPane fitToWidth="true" hbarPolicy="NEVER" prefHeight="200.0" prefWidth="200.0" styleClass="templates-pane" BorderPane.alignment="CENTER"> + <content> + <VBox fx:id="templateContainer" spacing="30.0"> + <children> + <FlowPane> + <children> + <Button fx:id="emptyApp" contentDisplay="TOP" graphicTextGap="30.0" mnemonicParsing="false" styleClass="template" text="%template.title.new.empty.app"> + <graphic> + <Rectangle arcHeight="5.0" arcWidth="5.0" fill="WHITE" height="160.0" stroke="#ffffff00" strokeType="INSIDE" width="256.0"> + <effect> + <DropShadow color="#0000004d" /> + </effect> + </Rectangle> + </graphic> + <padding> + <Insets bottom="10.0" left="15.0" right="15.0" top="15.0" /> + </padding> + </Button> + </children> + <VBox.margin> + <Insets left="-15.0" /> + </VBox.margin> + </FlowPane> + <Label text="%template.title.header.desktop" textFill="#f68a1f"> + <font> + <Font size="30.0" /> + </font> + </Label> + <FlowPane hgap="70.0" prefHeight="215.0" vgap="20.0"> + <children> + <Button fx:id="basicDesktopApp" contentDisplay="TOP" graphicTextGap="30.0" mnemonicParsing="false" styleClass="template" text="%template.title.new.basic.desktop.app"> + <graphic> + <ImageView fitHeight="160.0" fitWidth="256.0" pickOnBounds="true" preserveRatio="true"> + <image> + <Image url="@/com/oracle/javafx/scenebuilder/kit/template/basic_desktop.png" /> + </image> + <effect> + <DropShadow color="#0000004d" /> + </effect> + </ImageView> + </graphic> + <padding> + <Insets bottom="10.0" left="15.0" right="15.0" top="15.0" /> + </padding> + </Button> + <Button fx:id="complexDesktopApp" contentDisplay="TOP" graphicTextGap="30.0" mnemonicParsing="false" styleClass="template" text="%template.title.new.complex.desktop.app"> + <graphic> + <ImageView fitHeight="160.0" fitWidth="256.0" pickOnBounds="true" preserveRatio="true"> + <image> + <Image url="@/com/oracle/javafx/scenebuilder/kit/template/complex_desktop.png" /> + </image> + <effect> + <DropShadow color="#0000004d" /> + </effect> + </ImageView> + </graphic> + <padding> + <Insets bottom="10.0" left="15.0" right="15.0" top="15.0" /> + </padding> + </Button> + </children> + <padding> + <Insets left="-15.0" /> + </padding> + </FlowPane> + <Label layoutX="80.0" layoutY="30.0" text="%template.title.header.phone" textFill="#f68a1f"> + <font> + <Font size="30.0" /> + </font> + </Label> + <FlowPane hgap="115.0" prefHeight="200.0" prefWidth="200.0" vgap="20.0"> + <children> + <Button fx:id="emptyPhoneApp" contentDisplay="TOP" graphicTextGap="30.0" mnemonicParsing="false" styleClass="template" text="%template.title.new.empty.phone.app"> + <graphic> + <Rectangle arcHeight="5.0" arcWidth="5.0" fill="WHITE" height="198.0" stroke="#ffffff00" strokeType="INSIDE" width="111.0"> + <effect> + <DropShadow color="#0000004d" /> + </effect> + </Rectangle> + </graphic> + <padding> + <Insets bottom="10.0" left="13.0" right="13.0" top="13.0" /> + </padding> + </Button> + <Button fx:id="basicPhoneApp" contentDisplay="TOP" graphicTextGap="30.0" layoutX="10.0" layoutY="10.0" mnemonicParsing="false" styleClass="template" text="%template.title.new.basic.phone.app"> + <graphic> + <ImageView fitHeight="198.0" fitWidth="111.0" pickOnBounds="true" preserveRatio="true"> + <image> + <Image url="@/com/oracle/javafx/scenebuilder/kit/template/basic_mobile.png" /> + </image> + <effect> + <DropShadow color="#0000004d" /> + </effect> + </ImageView> + </graphic> + <padding> + <Insets bottom="10.0" left="13.0" right="13.0" top="13.0" /> + </padding> + </Button> + </children> + <padding> + <Insets left="-13.0" /> + </padding> + </FlowPane> + </children> + <padding> + <Insets bottom="40.0" left="70.0" top="20.0" /> + </padding> + </VBox> + </content> + </ScrollPane> + </center> +</BorderPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/alert/Alert.css b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/alert/Alert.css new file mode 100644 index 0000000000000000000000000000000000000000..a5364f2b69068dfe73d685fa5d4bd3f0aada2fcf --- /dev/null +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/alert/Alert.css @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2017, Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation and Gluon nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +.SB-alert.alert .header-panel { + -fx-background-color: #e2e2e2; + -fx-border-color: #b4b4b4; + -fx-border-width: 1 0 1 0; +} + +.SB-alert.alert .label.content { + -fx-background-color: #f6f6f7; + -fx-padding: 16 10 3em 10; +} diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/css/Base.css b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/css/Base.css new file mode 100644 index 0000000000000000000000000000000000000000..b9cb6bf47014a6fdabbbae36d32bec5631138a1e --- /dev/null +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/css/Base.css @@ -0,0 +1,135 @@ +/* + * Copyright (c) 2017 Gluon and/or its affiliates. + * All rights reserved. Use is subject to license terms. + * + * This file is available and licensed under the following license: + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * - Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * - Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the distribution. + * - Neither the name of Oracle Corporation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/******************************************************************************* + * Common UI Styling - Panel Headers (Background, search box and menu) * + ******************************************************************************/ + +.theme-presets .panel-header { + -fx-min-height: -sb-header-height; + -fx-background-color: + derive(-sb-grad-hi, 25%), + linear-gradient(to bottom, -sb-grad-hi, -sb-flat); + -fx-background-insets: 0, 1 0 0 0; +} +.theme-presets .panel-header > .label { + -fx-padding: 1 32 0 8; + -fx-text-fill: -sb-header-text; +} +.theme-presets .panel-header > .menu-button { + -fx-background-color: null; + -fx-graphic-text-gap: 0px; + -fx-padding: 0 0 0 0.666em; +} +.theme-presets .panel-header > .menu-button:hover { + -fx-background-color: + linear-gradient(to bottom, derive(-sb-sharp-edge-lo, 60%), derive(-sb-sharp-edge-lo, 40%)), + linear-gradient(to bottom, derive(-sb-flat, 80%), derive(-sb-flat, 20%)); + -fx-background-insets: 0 3 0 5, 1 4 1 6; + -fx-background-radius: 0; +} +.theme-presets .panel-header > .menu-button:focused { + -fx-background-color: + -fx-faint-focus-color, + -fx-focus-color, + linear-gradient(to bottom, derive(-sb-flat, 80%), derive(-sb-flat, 20%)); + -fx-background-insets: -1.4 1.6 -1.4 3.6, 0 3 0 5, 1 4 1 6; + -fx-background-radius: 0; +} +.theme-presets .panel-header > .menu-button .label { + -fx-padding: 0; +} +.theme-presets .panel-header > .menu-button > .arrow-button { + -fx-padding: 0.462em 0.615em 0.462em 0em; +} +.theme-presets .panel-header > .menu-button > .arrow-button > .arrow { + -fx-padding: 0 0.231em 0.154em 0.154em; + -fx-background-color: -sb-header-detail; + -fx-effect: null; +} +.theme-presets .panel-header .text-field { + -fx-text-fill: -sb-header-text; + -fx-font-size: 0.875em; + -fx-padding: 3 7 2 7; + -fx-border-color: + linear-gradient(to bottom, derive(-sb-sharp-edge-lo, 40%), derive(-sb-sharp-edge-hi, 25%)); + -fx-border-radius: 10; + -fx-border-insets: 0 -12 0 0; + -fx-background-color: rgba(0, 0, 0, 0.02); + -fx-background-insets: 0 -12 0 0; + -fx-background-radius: 10; +} +.theme-presets .panel-header .text-field:focused { + -fx-border-color: -sb-focus-color; + -fx-background-color: -sb-focus-inner-background; +} + +.theme-presets .search-magnifying-glass { + -fx-shape: "M11.936,13.663c-1.105,0.694-2.412,1.095-3.81,1.095c-3.963,0-7.188-3.224-7.188-7.187c0-3.963,3.224-7.188,7.188-7.188 + c3.963,0,7.187,3.224,7.187,7.188c0,1.854-0.706,3.546-1.862,4.822l4.23,4.602c0.374,0.407,0.347,1.039-0.06,1.413 + c-0.192,0.176-0.435,0.264-0.676,0.264c-0.271,0-0.54-0.109-0.737-0.323 M8.125,2.384c-2.86,0-5.188,2.327-5.188,5.188 + s2.327,5.187,5.188,5.187s5.187-2.327,5.187-5.187S10.986,2.384,8.125,2.384z"; + -fx-background-color: -sb-header-detail; + -fx-background-insets: 0 6 0 -6; + -fx-min-width: 10; + -fx-max-width: 10; + -fx-min-height: 10; + -fx-max-height: 10; +} + +.theme-presets .search-clear { + -fx-shape: "M7.26,5.444l3.503,3.504c0.344,0.344,0.344,0.901,0,1.245c-0.172,0.172-0.397,0.258-0.623,0.258 + c-0.225,0-0.45-0.086-0.623-0.258L6.087,6.498l-3.584,3.697c-0.172,0.172-0.397,0.258-0.623,0.258 + c-0.226,0-0.451-0.086-0.623-0.258c-0.344-0.344-0.344-0.901,0-1.245l3.507-3.508L1.258,1.933c-0.344-0.344-0.344-0.901,0-1.245 + c0.344-0.344,0.901-0.344,1.245,0l3.509,3.508c-0.001,0,3.506-3.508,3.506-3.508c0.344-0.344,0.901-0.344,1.245,0 + c0.344,0.344,0.344,0.901,0,1.245"; + -fx-background-color: -sb-header-detail; + -fx-background-insets: 1 7 1 -5; + -fx-min-width: 10; + -fx-max-width: 10; + -fx-min-height: 10; + -fx-max-height: 10; +} + +/******************************************************************************* + * Document Window - Selection Bar Container * + ******************************************************************************/ + +/* We add similar styling as the .panel-header stated in theme but with some + subtle differences: a darker bottom edge and a shadow effect that bleeds + over onto the content panel */ +.theme-presets .selection-bar-container { + -fx-min-height: -sb-header-height; + -fx-background-color: -sb-base-dark, linear-gradient(to bottom, -sb-grad-hi, -sb-flat); + -fx-background-insets: 0 0 -1 0, 0; + -fx-effect: dropshadow(three-pass-box , rgb(0, 0, 0, 0.3), 5, 0.0 , 0, 2); +} diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/ThemeDark.css b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/css/ThemeDark.css similarity index 100% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/ThemeDark.css rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/css/ThemeDark.css diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/css/Theme.css b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/css/ThemeDefault.css similarity index 99% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/css/Theme.css rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/css/ThemeDefault.css index 205a9e486c6f2b7fee34763668afea0a3a6257db..2510aad858f1e03cf24761f53fdda9a129f3630e 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/css/Theme.css +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/css/ThemeDefault.css @@ -1,4 +1,5 @@ /* + * Copyright (c) 2017 Gluon and/or its affiliates. * Copyright (c) 2014, Oracle and/or its affiliates. * All rights reserved. Use is subject to license terms. * diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/ButtonBar.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/ButtonBar.png new file mode 100644 index 0000000000000000000000000000000000000000..4ebe5416c9891da31fd612a778ef62755833e222 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/ButtonBar.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/ButtonBar@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/ButtonBar@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..78723e5c070dc7b984c840a7d960c9b86413dc28 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/ButtonBar@2x.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/DialogPane.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/DialogPane.png new file mode 100644 index 0000000000000000000000000000000000000000..34ff091a8c3a1d5b44a2f67bece942a12ebcf337 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/DialogPane.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/DialogPane@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/DialogPane@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..fb2fba88256de4dd336333598eed3d61dabdd7e9 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/DialogPane@2x.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_BottomNavigationButton.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_BottomNavigationButton.png new file mode 100644 index 0000000000000000000000000000000000000000..b70b04a17aac1adb638ffff6c7236e9fed129f2d Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_BottomNavigationButton.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_BottomNavigationButton@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_BottomNavigationButton@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..b3bac9f554f98e3c6468697432bdb444e5bccb96 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_BottomNavigationButton@2x.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel-collapsed_content.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel-collapsed_content.png new file mode 100644 index 0000000000000000000000000000000000000000..334c35fc31a4dbcbf79cc8edda18e14293d2d24d Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel-collapsed_content.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel-collapsed_content@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel-collapsed_content@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..23ad2b5a6a098bf7db0b899ed51b20726ba30942 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel-collapsed_content@2x.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel-expanded_content.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel-expanded_content.png new file mode 100644 index 0000000000000000000000000000000000000000..4843b3fbc3b52cdc68fdd9e3eb35a96de553eca6 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel-expanded_content.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel-expanded_content@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel-expanded_content@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..bc60c1608292e58f0cda5a5d418eb058037de6d7 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel-expanded_content@2x.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel.png index 6f12555a31e2bbb1d705fd12a4b43abd792efd2c..b53fe08c2883766c04365c5eb803f00083bdffc2 100644 Binary files a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel.png and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel@2x.png index 7b42f5e93389b6cde75f9f809685fc217ec62979..7f25ba6a18ddcdfbf049d16a47c6c91ab2c6d78f 100644 Binary files a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel@2x.png and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Gluon_ExpansionPanel@2x.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Spinner.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Spinner.png new file mode 100644 index 0000000000000000000000000000000000000000..4f366fd4ac976ab0c4c7787fde7f70d633036f5a Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Spinner.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Spinner@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Spinner@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..814728dee1b93dbe3b0a0115da18817f50eab241 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/images/nodeicons/Spinner@2x.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/content/ContentPanel.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/content/ContentPanel.fxml index 56459ed7b43162b7050eb4e637100a1170cfe02a..a785af46ec53f4beef8e70752a7cf06593ae2922 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/content/ContentPanel.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/content/ContentPanel.fxml @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- + Copyright (c) 2017 Gluon and/or its affiliates. Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. @@ -79,6 +80,6 @@ </StackPane> </content> <stylesheets> - <URL value="@../../css/Theme.css" /> + <URL value="@../../../css/ThemeDefault.css" /> </stylesheets> </ScrollPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssPanel.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssPanel.fxml index 3852d5f2cc1cad12b79d0ed0df7c9e448217c0f3..0cfdda596009867b0e1b9989d094357426360412 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssPanel.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/css/CssPanel.fxml @@ -38,8 +38,6 @@ <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> <?import javafx.scene.web.*?> -<?scenebuilder-classpath-element ../../../../../../../../../../dist/SceneBuilderKit.jar?> -<?scenebuilder-preview-i18n-resource ../../../i18n/SceneBuilderKit.properties?> <VBox fx:id="root" prefWidth="800.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> <children> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/treeview/HierarchyTreeView.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/treeview/HierarchyTreeView.fxml index 926ba3e84d075e73e80627cb2cd1e44ba2a4ee01..a48b08797e5799834fbcfd32797dca6ac297f59a 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/treeview/HierarchyTreeView.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/hierarchy/treeview/HierarchyTreeView.fxml @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- + Copyright (c) 2017 Gluon and/or its affiliates. Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. @@ -43,6 +44,6 @@ <TreeView fx:id="treeView" prefHeight="-1.0" prefWidth="-1.0" /> </children> <stylesheets> - <URL value="@../../../css/Theme.css" /> + <URL value="@../../../../css/ThemeDefault.css" /> </stylesheets> </StackPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/Inspector.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/Inspector.fxml index 6b113880e6d373568bc8c6c76ad54a20ba35991a..bd6c2c538a3fe53012d6a515ed2245620ac528d3 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/Inspector.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/Inspector.fxml @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- + Copyright (c) 2017 Gluon and/or its affiliates. Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. @@ -231,6 +232,6 @@ </VBox> </items> <stylesheets> - <URL value="@../../css/Theme.css" /> + <URL value="@../../../css/ThemeDefault.css" /> </stylesheets> </SplitPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/AnchorPaneConstraintsEditor.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/AnchorPaneConstraintsEditor.fxml index 73085a9a8a3846fdf850ce5f8999e3b523031e68..28c46039359a914c4e8256d5f1b2d51a3cbafb53 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/AnchorPaneConstraintsEditor.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/AnchorPaneConstraintsEditor.fxml @@ -37,7 +37,6 @@ <?import javafx.geometry.*?> <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> -<?scenebuilder-background-color 0xdfdfdfff?> <HBox alignment="CENTER" prefWidth="-1.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> <children> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/DoubleAutoSuggestEditor.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/DoubleAutoSuggestEditor.fxml index 01ae355337a2d4fc9b05dea0d8e563e1c403b74c..57da077eb7ac8612f85b7b5ba4c5c68e38953077 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/DoubleAutoSuggestEditor.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/DoubleAutoSuggestEditor.fxml @@ -37,7 +37,6 @@ <?import javafx.geometry.*?> <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> -<?scenebuilder-classpath-element ../../../../../../../../../../dist/SceneBuilderKit.jar?> <HBox maxWidth="1.7976931348623157E308" spacing="1.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> <children> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/DurationEditor.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/DurationEditor.fxml index 98642d14d202656a90be70e3b55dcc1e7bc68763..431684582a0fb74027f25f0c24ff4b20d3370707 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/DurationEditor.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/DurationEditor.fxml @@ -35,7 +35,6 @@ <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> <?import javafx.collections.FXCollections ?> -<?scenebuilder-preview-i18n-resource ../../../i18n/SceneBuilderKit.properties?> <?import java.lang.String?> <HBox alignment="CENTER" prefHeight="-1.0" prefWidth="-1.0" spacing="5.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/IncludeFXMLButton.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/IncludeFXMLButton.fxml index 0c6b82019114898a169b69ad99cb3b38ce93a649..b92e0de8ca2f8525a42b8a8227a1ca49e4bd3c27 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/IncludeFXMLButton.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/IncludeFXMLButton.fxml @@ -1,5 +1,37 @@ <?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (c) 2017, Gluon and/or its affiliates. + All rights reserved. Use is subject to license terms. + + This file is available and licensed under the following license: + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the distribution. + - Neither the name of Oracle Corporation and Gluon nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +--> + <?import javafx.scene.control.Button?> <?import javafx.scene.control.TextField?> <?import javafx.scene.layout.HBox?> @@ -8,4 +40,4 @@ <TextField id="textField" fx:id="includeFxmlField" prefWidth="200" editable="false"/> <Button id="includeFxmlButton" fx:id="includeFxmlButton" maxWidth="50" mnemonicParsing="false" onAction="#addIncludeFile" prefWidth="50" text="..." /> </children> -</HBox> +</HBox> \ No newline at end of file diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/InsetsEditor.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/InsetsEditor.fxml index 6fcf5a4becd876e42747b5c8d40929345eeac5a5..6ae500f507f2d4417b22c16eb55f06407cc2db97 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/InsetsEditor.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/InsetsEditor.fxml @@ -37,7 +37,6 @@ <?import javafx.geometry.*?> <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> -<?scenebuilder-preview-i18n-resource ../../../i18n/SceneBuilderKit.properties?> <GridPane vgap="3.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> <children><Region maxHeight="8.0" maxWidth="8.0" minHeight="8.0" minWidth="8.0" styleClass="insets-icon-top" GridPane.halignment="CENTER"> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/IntegerAutoSuggestEditor.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/IntegerAutoSuggestEditor.fxml index b9bc92086b1a4d560949b73504fc1aed17e60991..030d8512b72f1d986682ddf380ba912bc5095c71 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/IntegerAutoSuggestEditor.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/IntegerAutoSuggestEditor.fxml @@ -37,7 +37,6 @@ <?import javafx.geometry.*?> <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> -<?scenebuilder-classpath-element ../../../../../../../../../../dist/SceneBuilderKit.jar?> <HBox maxWidth="1.7976931348623157E308" spacing="1.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> <children> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/Point3DEditor.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/Point3DEditor.fxml index e0fc0611c735874691d9fc78a2340bfb1df5839d..419251830c141686f360404ec47e4ad7a4c0f700 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/Point3DEditor.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/Point3DEditor.fxml @@ -36,7 +36,6 @@ <?import java.lang.*?> <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> -<?scenebuilder-classpath-element ../../../../../../../../../../dist/SceneBuilderKit.jar?> <HBox spacing="1.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> <children> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StringAutoSuggestEditor.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StringAutoSuggestEditor.fxml index 7b3813cd7ef9f664921dcd7cc81eeec6d5f4ceec..940060a75fde6dea693f2a5ce8207afbb7149be5 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StringAutoSuggestEditor.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/editors/StringAutoSuggestEditor.fxml @@ -36,7 +36,6 @@ <?import javafx.geometry.*?> <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> -<?scenebuilder-classpath-element ../../../../../../../../../../dist/SceneBuilderKit.jar?> <HBox maxWidth="1.7976931348623157E308" spacing="1.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> <children> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/PopupEditor.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/PopupEditor.fxml index 22416ef8da3d0b3c95478cf42922a10eb3e16864..6f21f1c91683a31f96e8cb1cc5e8186dd0376807 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/PopupEditor.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/PopupEditor.fxml @@ -31,16 +31,16 @@ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> -<?import java.lang.*?> -<?import javafx.scene.control.*?> -<?import javafx.scene.layout.*?> -<?scenebuilder-stylesheet PopupEditor.css?> -<StackPane xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/2.2"> +<?import javafx.scene.control.CustomMenuItem?> +<?import javafx.scene.control.MenuButton?> +<?import javafx.scene.layout.StackPane?> + +<StackPane stylesheets="@PopupEditor.css" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> <children> <MenuButton fx:id="popupMb" maxWidth="1.7976931348623157E308" mnemonicParsing="false" prefHeight="-1.0" prefWidth="-1.0" text="value"> <items> - <CustomMenuItem hideOnClick="false" mnemonicParsing="false" text="Unspecified Action" fx:id="popupMenuItem"> + <CustomMenuItem fx:id="popupMenuItem" hideOnClick="false" mnemonicParsing="false" text="Unspecified Action"> <content> <StackPane fx:id="editorHost" prefHeight="-1.0" prefWidth="-1.0" /> </content> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/Rectangle2DPopupEditor.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/Rectangle2DPopupEditor.fxml index 59c436d84d8fddc386daa4481a599b7f869db2d6..606f9da1375fa211bf93408fb85442f7e0532a21 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/Rectangle2DPopupEditor.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/inspector/popupeditors/Rectangle2DPopupEditor.fxml @@ -36,7 +36,6 @@ <?import java.lang.*?> <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> -<?scenebuilder-classpath-element ../../../../../../../../../../dist/SceneBuilderKit.jar?> <GridPane hgap="5.0" vgap="5.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> <children> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/ImportDialog.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/ImportDialog.fxml index 89b11fcec7a4b04cde442059b67103bc88657d95..600bfd6c8b126deed9b551532aca24a5770e11e4 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/ImportDialog.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/ImportDialog.fxml @@ -1,6 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- + Copyright (c) 2017 Gluon and/or its affiliates. Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. @@ -39,7 +40,7 @@ <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> -<AnchorPane id="ImportDialog" maxHeight="-1.0" maxWidth="-1.0" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="640.0" styleClass="theme-presets" stylesheets="@../../css/Theme.css" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> +<AnchorPane id="ImportDialog" maxHeight="-1.0" maxWidth="-1.0" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="640.0" styleClass="theme-presets" stylesheets="@../../../css/ThemeDefault.css" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1"> <children> <HBox id="HBox" alignment="CENTER" fillHeight="false" maxHeight="-1.0" maxWidth="-1.0" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="640.0" spacing="50.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0"> <children> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/LibraryDialog.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/LibraryDialog.fxml index e0a4d0811e3eac1d7b1ab79d9c94f7ff4fda465f..f10bcf339b1d2a09e6242abb41ca730e39044ee7 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/LibraryDialog.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/LibraryDialog.fxml @@ -1,5 +1,37 @@ <?xml version="1.0" encoding="UTF-8"?> +<!-- +Copyright (c) 2016, 2017 Gluon and/or its affiliates. +All rights reserved. Use is subject to license terms. + +This file is available and licensed under the following license: + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +- Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. +- Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in +the documentation and/or other materials provided with the distribution. +- Neither the name of Oracle Corporation nor the names of its +contributors may be used to endorse or promote products derived +from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +--> + <?import java.net.URL?> <?import javafx.geometry.Insets?> <?import javafx.scene.control.Button?> @@ -58,7 +90,7 @@ </GridPane> </children> <stylesheets> - <URL value="@../../css/Theme.css" /> + <URL value="@../../../css/ThemeDefault.css" /> <URL value="@libraryDialog.css" /> </stylesheets> </AnchorPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/LibraryPanel.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/LibraryPanel.fxml index e94956e21786eed795795a6120f742dabaf6fadb..0565a2c30da50b78254326f77f2307c4c160315b 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/LibraryPanel.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/LibraryPanel.fxml @@ -58,6 +58,6 @@ <Accordion fx:id="libAccordion" prefHeight="-1.0" prefWidth="-1.0" /> </children> <stylesheets> - <URL value="@../../css/Theme.css" /> + <URL value="@../../../css/ThemeDefault.css" /> </stylesheets> </StackPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/MavenDialog.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/MavenDialog.fxml index 7ce82070d852539a376e8a0725811d5f0705bb59..d72ccca751ea305ab7e6ebdd2df15a2d55292da3 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/MavenDialog.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/MavenDialog.fxml @@ -1,5 +1,37 @@ <?xml version="1.0" encoding="UTF-8"?> +<!-- +Copyright (c) 2016, 2017 Gluon and/or its affiliates. +All rights reserved. Use is subject to license terms. + +This file is available and licensed under the following license: + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +- Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. +- Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in +the documentation and/or other materials provided with the distribution. +- Neither the name of Oracle Corporation nor the names of its +contributors may be used to endorse or promote products derived +from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +--> + <?import java.net.URL?> <?import javafx.geometry.Insets?> <?import javafx.scene.control.Button?> @@ -14,7 +46,7 @@ <?import javafx.scene.layout.Pane?> <?import javafx.scene.layout.RowConstraints?> -<AnchorPane fx:id="MavenDialog" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="200.0" minWidth="300.0" prefHeight="200.0" prefWidth="500.0" styleClass="theme-presets" stylesheets="@../../css/Theme.css" xmlns="http://javafx.com/javafx/8.0.65" xmlns:fx="http://javafx.com/fxml/1"> +<AnchorPane fx:id="MavenDialog" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="200.0" minWidth="300.0" prefHeight="200.0" prefWidth="500.0" styleClass="theme-presets" stylesheets="@../../../css/ThemeDefault.css" xmlns="http://javafx.com/javafx/8.0.65" xmlns:fx="http://javafx.com/fxml/1"> <children> <GridPane hgap="5.0" prefHeight="380.0" prefWidth="520.0" vgap="5.0" AnchorPane.bottomAnchor="10.0" AnchorPane.leftAnchor="10.0" AnchorPane.rightAnchor="10.0" AnchorPane.topAnchor="10.0"> <columnConstraints> @@ -51,7 +83,7 @@ </GridPane> </children> <stylesheets> - <URL value="@../../css/Theme.css" /> + <URL value="@../../../css/ThemeDefault.css" /> <URL value="@libraryDialog.css" /> </stylesheets> </AnchorPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/RepositoryDialog.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/RepositoryDialog.fxml index 96562dd71e4275a8884dae8801691914ce5179cb..f0c8543b0f42cd93f9aac93c134032251784ab10 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/RepositoryDialog.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/RepositoryDialog.fxml @@ -1,5 +1,35 @@ <?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (c) 2016, 2017 Gluon and/or its affiliates. + All rights reserved. Use is subject to license terms. + This file is available and licensed under the following license: + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the distribution. + - Neither the name of Oracle Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +--> <?import java.net.URL?> <?import javafx.geometry.Insets?> <?import javafx.scene.control.Button?> @@ -16,7 +46,7 @@ <?import javafx.scene.layout.RowConstraints?> <?import javafx.scene.text.Font?> -<AnchorPane fx:id="MavenDialog" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="296.0" minWidth="300.0" prefHeight="328.0" prefWidth="500.0" styleClass="theme-presets" stylesheets="@../../css/Theme.css" xmlns="http://javafx.com/javafx/8.0.65" xmlns:fx="http://javafx.com/fxml/1"> +<AnchorPane fx:id="MavenDialog" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="296.0" minWidth="300.0" prefHeight="328.0" prefWidth="500.0" styleClass="theme-presets" stylesheets="@../../../css/ThemeDefault.css" xmlns="http://javafx.com/javafx/8.0.65" xmlns:fx="http://javafx.com/fxml/1"> <children> <GridPane hgap="5.0" prefHeight="380.0" prefWidth="520.0" vgap="5.0" AnchorPane.bottomAnchor="10.0" AnchorPane.leftAnchor="10.0" AnchorPane.rightAnchor="10.0" AnchorPane.topAnchor="10.0"> <columnConstraints> @@ -70,7 +100,7 @@ </GridPane> </children> <stylesheets> - <URL value="@../../css/Theme.css" /> + <URL value="@../../../css/ThemeDefault.css" /> <URL value="@libraryDialog.css" /> </stylesheets> </AnchorPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/RepositoryManager.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/RepositoryManager.fxml index 79b6100a47de9f13bcd4b4342fb7323fd0aa5d75..c2edb7bbf563a941db799bf9ec171af984a8a637 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/RepositoryManager.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/RepositoryManager.fxml @@ -1,5 +1,35 @@ <?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (c) 2016, 2017 Gluon and/or its affiliates. + All rights reserved. Use is subject to license terms. + This file is available and licensed under the following license: + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the distribution. + - Neither the name of Oracle Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +--> <?import java.net.URL?> <?import javafx.geometry.Insets?> <?import javafx.scene.control.Button?> @@ -45,7 +75,7 @@ </GridPane> </children> <stylesheets> - <URL value="@../../css/Theme.css" /> + <URL value="@../../../css/ThemeDefault.css" /> <URL value="@libraryDialog.css" /> </stylesheets> </AnchorPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/SearchMavenDialog.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/SearchMavenDialog.fxml index cea8b75526b4cc0e0df753594e91e37a61a3a51f..c9a910bd0a616dc0251fb2c42c5cdfb57b0f2758 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/SearchMavenDialog.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/library/SearchMavenDialog.fxml @@ -1,5 +1,35 @@ <?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (c) 2016, 2017 Gluon and/or its affiliates. + All rights reserved. Use is subject to license terms. + This file is available and licensed under the following license: + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the distribution. + - Neither the name of Oracle Corporation nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +--> <?import java.net.URL?> <?import javafx.geometry.Insets?> <?import javafx.scene.control.Button?> @@ -14,7 +44,7 @@ <?import javafx.scene.layout.RowConstraints?> <?import javafx.scene.text.Font?> -<AnchorPane fx:id="MavenDialog" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="300.0" minWidth="300.0" prefHeight="400.0" prefWidth="500.0" styleClass="theme-presets" stylesheets="@../../css/Theme.css" xmlns="http://javafx.com/javafx/8.0.65" xmlns:fx="http://javafx.com/fxml/1"> +<AnchorPane fx:id="MavenDialog" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="300.0" minWidth="300.0" prefHeight="400.0" prefWidth="500.0" styleClass="theme-presets" stylesheets="@../../../css/ThemeDefault.css" xmlns="http://javafx.com/javafx/8.0.65" xmlns:fx="http://javafx.com/fxml/1"> <children> <GridPane hgap="5.0" prefHeight="380.0" prefWidth="520.0" vgap="5.0" AnchorPane.bottomAnchor="10.0" AnchorPane.leftAnchor="10.0" AnchorPane.rightAnchor="10.0" AnchorPane.topAnchor="10.0"> <columnConstraints> @@ -60,7 +90,7 @@ </GridPane> </children> <stylesheets> - <URL value="@../../css/Theme.css" /> + <URL value="@../../../css/ThemeDefault.css" /> <URL value="@libraryDialog.css" /> </stylesheets> </AnchorPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/AbstractModalDialogM.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/AbstractModalDialogM.fxml index d0fb3c8857f01faf95c38edd4298383960df7770..6ac3ed5bac914c65ae6c1de138827420fb07791d 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/AbstractModalDialogM.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/AbstractModalDialogM.fxml @@ -1,5 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- + Copyright (c) 2017, Gluon and/or its affiliates. Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. @@ -34,7 +35,6 @@ <?import javafx.scene.control.*?> <?import javafx.scene.image.*?> <?import javafx.scene.layout.*?> -<?scenebuilder-preview-i18n-resource ../../../editor/i18n/SceneBuilderKit.properties?> <GridPane hgap="0.0" maxHeight="+Infinity" maxWidth="+Infinity" minHeight="-Infinity" minWidth="-Infinity" vgap="20.0" xmlns:fx="http://javafx.com/fxml"> <children> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/AbstractModalDialogW.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/AbstractModalDialogW.fxml index 6d88def00b9202b9df501281f6756f260709f2ed..573b0bf32c1a27a3f328317632b7744b60d4794b 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/AbstractModalDialogW.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/panel/util/dialog/AbstractModalDialogW.fxml @@ -1,5 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- + Copyright (c) 2017, Gluon and/or its affiliates. + Copyright (c) 2017, Gluon and/or its affiliates. Copyright (c) 2012, 2014, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. @@ -34,7 +36,6 @@ <?import javafx.scene.control.*?> <?import javafx.scene.image.*?> <?import javafx.scene.layout.*?> -<?scenebuilder-preview-i18n-resource ../../../editor/i18n/SceneBuilderKit.properties?> <!-- TODO textAlignement should be JUSTIFY for detailsLabel and messageLabel once RT-23231 is fixed --> <VBox maxHeight="+Infinity" maxWidth="+Infinity" minHeight="-Infinity" prefWidth="400.0" spacing="7.0" xmlns:fx="http://javafx.com/fxml"> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/i18n/SceneBuilderKit.properties b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/i18n/SceneBuilderKit.properties similarity index 79% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/i18n/SceneBuilderKit.properties rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/i18n/SceneBuilderKit.properties index e63fae41b07c08cefc2119dd62f11de24377bbce..4849c575fd641c3c55ba85eaeaca2cb4bae1db04 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/i18n/SceneBuilderKit.properties +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/i18n/SceneBuilderKit.properties @@ -1,3 +1,4 @@ +# Copyright (c) 2016, 2017, Gluon and/or its affiliates. # Copyright (c) 2012, 2014, Oracle and/or its affiliates. # All rights reserved. Use is subject to license terms. # @@ -119,9 +120,6 @@ content.log.cannot.display.selected.n = {0} of {1} selected objects cannot be di # Inspector Panel # ----------------------------------------------------------------------------- inspector = Inspector -inspector.show.all = Show All -inspector.show.edited = Show Edited -inspector.view.sections = View Sections inspector.by.property.name = View by property name inspector.by.property.type = View by property type inspector.cursor.chooseimage = Choose Image... @@ -169,11 +167,14 @@ inspector.rectangle2D.not.defined = not defined inspector.select.css.filter = Style Sheet files inspector.select.css.title = Add Style Sheet inspector.select.image = Image files +inspector.show.all = Show All +inspector.show.edited = Show Edited inspector.style.parsingerror = CSS Error parsing in-line style: ''{0}'' inspector.style.valuetypeerror = CSS value type error: ''{0}'' inspector.stylesheet.alreadyexist = Stylesheet {0} has already been added inspector.stylesheet.cannotopen = Cannot open {0} inspector.stylesheet.cannotreveal = Cannot reveal {0} +inspector.view.sections = View Sections inspector.css.tooltip = The value for this property is overridden by CSS inspector.css.showcss = Show CSS inspector.css.overridden = The value for the property {0} is overridden by CSS @@ -207,8 +208,8 @@ drop.job.insert.from.multiple.files = Insert {0} Files # Import Jar file in Library import.button.import.component = Import Component import.button.import.components = Import Components -import.button.import.jar = Import Jar -import.button.import.jars = Import Jars +import.button.import.jar = Import Jar (no UI components) +import.button.import.jars = Import Jars (no UI components) import.choice.builtin = Built-in import.items.processing = processing ... import.note = Custom Components are loaded in the Scene Builder VM and may alter its behaviour @@ -361,6 +362,35 @@ menu.title.backward = Send Backward menu.title.wrap = Wrap in menu.title.unwrap = Unwrap +# ----------------------------------------------------------------------------- +# Preview Window +# ----------------------------------------------------------------------------- +preview.no.document = No document +preview.not.node = Not a Node +scenestylesheet.filechooser.filter.msg = CSS and BSS files + + +# ----------------------------------------------------------------------------- +# Selection Bar +# ----------------------------------------------------------------------------- +selectionbar.no.selected = No Selection +selectionbar.not.object = Selected Element Is Not An Object + +# ----------------------------------------------------------------------------- +# Preferences +# ----------------------------------------------------------------------------- +prefs.background.value1 = Blue Grid +prefs.background.value2 = Neutral Grid +prefs.background.value3 = Neutral Uniform + +template.title.header.desktop = Desktop +template.title.header.phone = Mobile +template.title.new.empty.app = Empty +template.title.new.basic.desktop.app = Basic Application +template.title.new.complex.desktop.app = Complex Application +template.title.new.empty.phone.app = Empty Screen +template.title.new.basic.phone.app = Basic Screen + # ----------------------------------------------------------------------------- # Other # ----------------------------------------------------------------------------- @@ -441,3 +471,91 @@ job.set.toggle.group = Set Toggle Group job.toggle.fx.root = Toggle fx:root job.set.fxid = Set fx:id to ''{0}'' job.remove.fxid = Remove fx:id ''{0}'' + +################ Alert when Gluon Mobile theme is not set +alert.theme.gluon.mobile.title = Scene Builder +alert.theme.gluon.mobile.headertext = Gluon Mobile theme is not set +alert.theme.gluon.mobile.contenttext = If Gluon Mobile theme is not set and you are using Gluon controls, they may not work correctly. +alert.theme.gluon.mobile.setgluontheme = Set Gluon theme +alert.theme.gluon.mobile.ignore = Ignore + +################ Alert when importing Gluon controls +alert.importing.gluon.title = Scene Builder +alert.importing.gluon.headertext = You're importing Gluon controls +alert.importing.gluon.contenttext = These controls won't be imported because this version of Scene Builder already provides Gluon controls. +alert.importing.gluon.ok.button = OK + +################ Scene Builder theme +prefs.tool.theme.default = Default Theme +prefs.tool.theme.dark = Dark Theme + +################ Skeleton window +skeleton.add.comments = Comments +skeleton.empty = No skeleton can be constructed from an empty document +skeleton.format.full = Full +# Parameter is a fxml file name +skeleton.window.title = Sample Skeleton for ''{0}'' Controller Class + +################# Templates Window +template.dialog.title = Templates + +################# Generic Labels +label.untitled = Untitled +label.no.document = No document + +# ----------------------------------------------------------------------------- +# Other (from app i18n) +# ----------------------------------------------------------------------------- +file.filter.label.fxml = FXML Document + +# ----------------------------------------------------------------------------- +# Alert (from app i18n) +# ----------------------------------------------------------------------------- +alert.title.open = Open + +alert.open.failure.charset.not.found = The given charset could not be set. +alert.open.failure.charset.not.found.details = It may be due to the encoding in your document. + +# ----------------------------------------------------------------------------- +# Themes (from app i18n) +# ----------------------------------------------------------------------------- +# Document themes +title.theme.gluon_mobile_dark = Gluon Mobile Dark +title.theme.gluon_mobile_light = Gluon Mobile Light +title.theme.modena = Modena (FX8) +title.theme.modena_touch = Modena Touch (FX8) +title.theme.modena_high_contrast_black_on_white = Modena High Contrast - Black on White (FX8) +title.theme.modena_high_contrast_white_on_black = Modena High Contrast - White on Black (FX8) +title.theme.modena_high_contrast_yellow_on_black = Modena High Contrast - Yellow on Black (FX8) +title.theme.modena_touch_high_contrast_black_on_white = Modena Touch High Contrast - Black on White (FX8) +title.theme.modena_touch_high_contrast_white_on_black = Modena Touch High Contrast - White on Black (FX8) +title.theme.modena_touch_high_contrast_yellow_on_black = Modena Touch High Contrast - Yellow on Black (FX8) +title.theme.caspian = Caspian (FX2) +title.theme.caspian_embedded = Caspian Embedded (FX2) +title.theme.caspian_embedded_qvga = Caspian Embedded QVGA (FX2) +title.theme.caspian_high_contrast = Caspian High Contrast (FX2) +title.theme.caspian_embedded_high_contrast = Caspian Embedded High Contrast (FX2) +title.theme.caspian_embedded_qvga_high_contrast = Caspian Embedded QVGA High Contrast (FX2) +# Gluon Swatches +title.gluon.swatch.blue = Blue Swatch +title.gluon.swatch.cyan = Cyan Swatch +title.gluon.swatch.deep_orange = Deep Orange Swatch +title.gluon.swatch.deep_purple = Deep Purple Swatch +title.gluon.swatch.green = Green Swatch +title.gluon.swatch.indigo = Indigo Swatch +title.gluon.swatch.light_blue = Light Blue Swatch +title.gluon.swatch.pink = Pink Swatch +title.gluon.swatch.purple = Purple Swatch +title.gluon.swatch.red = Red Swatch +title.gluon.swatch.teal = Teal Swatch +title.gluon.swatch.light_green = Light Green Swatch +title.gluon.swatch.lime = Lime Swatch +title.gluon.swatch.yellow = Yellow Swatch +title.gluon.swatch.amber = Amber Swatch +title.gluon.swatch.orange = Orange Swatch +title.gluon.swatch.brown = Brown Swatch +title.gluon.swatch.grey = Grey Swatch +title.gluon.swatch.blue_grey = Blue Grey Swatch +# Gluon Themes +title.gluon.theme.light = Light Theme +title.gluon.theme.dark = Dark Theme diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/i18n/SceneBuilderKit_ja.properties b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/i18n/SceneBuilderKit_ja.properties similarity index 100% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/i18n/SceneBuilderKit_ja.properties rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/i18n/SceneBuilderKit_ja.properties diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/i18n/SceneBuilderKit_zh_CN.properties b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/i18n/SceneBuilderKit_zh_CN.properties similarity index 100% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/editor/i18n/SceneBuilderKit_zh_CN.properties rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/i18n/SceneBuilderKit_zh_CN.properties diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_BottomNavigation.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_BottomNavigation.fxml index 2669cf411a59ff1b9e2d13103841659b9b7291c0..5838e131ac12f3dc671d3a5bb3847b441f2f86e0 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_BottomNavigation.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_BottomNavigation.fxml @@ -31,37 +31,24 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> <?import com.gluonhq.charm.glisten.control.BottomNavigation?> -<?import javafx.scene.control.ToggleGroup?> -<?import javafx.scene.control.ToggleButton?> <?import com.gluonhq.charm.glisten.control.Icon?> +<?import com.gluonhq.charm.glisten.control.BottomNavigationButton?> <BottomNavigation xmlns:fx="http://javafx.com/fxml" xmlns="http://javafx.com/javafx/8.0.101"> - <fx:define> - <ToggleGroup fx:id="toggleGroup" /> - </fx:define> <actionItems> - <ToggleButton contentDisplay="TOP" styleClass="bottom-nav-button" text="Recent" selected="true"> + <BottomNavigationButton text="Recent" selected="true"> <graphic> <Icon content="RECENT_ACTORS" /> </graphic> - <toggleGroup> - <fx:reference source="toggleGroup" /> - </toggleGroup> - </ToggleButton> - <ToggleButton contentDisplay="TOP" styleClass="bottom-nav-button" text="Favourite"> + </BottomNavigationButton> + <BottomNavigationButton text="Favourite"> <graphic> <Icon content="FAVORITE" /> </graphic> - <toggleGroup> - <fx:reference source="toggleGroup" /> - </toggleGroup> - </ToggleButton> - <ToggleButton contentDisplay="TOP" styleClass="bottom-nav-button" text="Nearby"> + </BottomNavigationButton> + <BottomNavigationButton text="Nearby"> <graphic> <Icon content="NEAR_ME" /> </graphic> - <toggleGroup> - <fx:reference source="toggleGroup" /> - </toggleGroup> - </ToggleButton> + </BottomNavigationButton> </actionItems> </BottomNavigation> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_BottomNavigationButton.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_BottomNavigationButton.fxml new file mode 100644 index 0000000000000000000000000000000000000000..9c5eb05a14869da9f76579ca8910995fe289b98e --- /dev/null +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_BottomNavigationButton.fxml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (c) 2016, Gluon and/or its affiliates. + All rights reserved. Use is subject to license terms. + + This file is available and licensed under the following license: + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the distribution. + - Neither the name of Oracle Corporation and Gluon nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +--> +<?import com.gluonhq.charm.glisten.control.BottomNavigationButton?> +<BottomNavigationButton /> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_CardPane.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_CardPane.fxml new file mode 100644 index 0000000000000000000000000000000000000000..215471fe39157034fcfa8489c092f0ada8c203bd --- /dev/null +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_CardPane.fxml @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (c) 2016, Gluon and/or its affiliates. + All rights reserved. Use is subject to license terms. + + This file is available and licensed under the following license: + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the distribution. + - Neither the name of Oracle Corporation and Gluon nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +--> +<?import com.gluonhq.charm.glisten.control.CardPane?> +<?import javafx.scene.control.Label?> +<CardPane> + <Label text="label1" style="-fx-padding:10;" /> + <Label text="label2" style="-fx-padding:10;" /> + <Label text="label3" style="-fx-padding:10;" /> +</CardPane> \ No newline at end of file diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_CollapsedPanel.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_CollapsedPanel.fxml index c03bc2a15be4c56a29640d7406a5fbd5ef3a9b01..4cc64e53239819e8033b9611d768c8ca0e1d35cb 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_CollapsedPanel.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_CollapsedPanel.fxml @@ -31,4 +31,10 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> <?import com.gluonhq.charm.glisten.control.ExpansionPanel.CollapsedPanel?> -<CollapsedPanel /> +<?import javafx.scene.control.Label?> +<ExpansionPanel.CollapsedPanel prefWidth="252"> + <titleNodes> + <Label text="TripName" /> + <Label text="Caribbean cruise" /> + </titleNodes> +</ExpansionPanel.CollapsedPanel> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_DropdownButton.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_DropdownButton.fxml index c5f72d75de212edd611e03f83255c2e81f8d41c0..5c8059eb94dba90addb2ec026869f16ebf7d6168 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_DropdownButton.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_DropdownButton.fxml @@ -35,11 +35,8 @@ <DropdownButton xmlns:fx="http://javafx.com/fxml" xmlns="http://javafx.com/javafx/8.0.101"> <items> - <MenuItem fx:id="choice1" text="Choice 1" /> + <MenuItem text="Choice 1" /> <MenuItem text="Choice 2" /> <MenuItem text="Choice 3" /> </items> - <selectedItem> - <fx:reference source="choice1"/> - </selectedItem> </DropdownButton> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_ExpandedPanel.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_ExpandedPanel.fxml index 1e4fa53ac4a054ca7375168cee407b7a82dcdde1..009394f36614f1be5bbb7083684600398810ac18 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_ExpandedPanel.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/library/builtin/Gluon_ExpandedPanel.fxml @@ -31,4 +31,4 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> <?import com.gluonhq.charm.glisten.control.ExpansionPanel.ExpandedPanel?> -<ExpandedPanel /> +<ExpansionPanel.ExpandedPanel /> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/preferences/Background-Blue-Grid.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/preferences/Background-Blue-Grid.png similarity index 100% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/app/preferences/Background-Blue-Grid.png rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/preferences/Background-Blue-Grid.png diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/preferences/Background-Neutral-Grid.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/preferences/Background-Neutral-Grid.png similarity index 100% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/app/preferences/Background-Neutral-Grid.png rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/preferences/Background-Neutral-Grid.png diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/preferences/background-shadow.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/preferences/background-shadow.png similarity index 100% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/app/preferences/background-shadow.png rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/preferences/background-shadow.png diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/selectionbar/SelectionBar.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/selectionbar/SelectionBar.fxml similarity index 98% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/app/selectionbar/SelectionBar.fxml rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/selectionbar/SelectionBar.fxml index 164d664f916d6e65fa22010daabfc5f42f901373..222010a1803666bf4d3876fa433edbe3a20b4bb9 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/selectionbar/SelectionBar.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/selectionbar/SelectionBar.fxml @@ -54,6 +54,6 @@ <Insets left="5.0" /> </padding> <stylesheets> - <URL value="@../css/SelectionBar.css" /> + <URL value="@../../app/css/SelectionBar.css" /> </stylesheets> </HBox> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/selectionbar/selection-chevron.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/selectionbar/selection-chevron.png similarity index 100% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/app/selectionbar/selection-chevron.png rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/selectionbar/selection-chevron.png diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/selectionbar/selection-chevron@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/selectionbar/selection-chevron@2x.png similarity index 100% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/app/selectionbar/selection-chevron@2x.png rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/selectionbar/selection-chevron@2x.png diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/skeleton/SkeletonWindow.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/skeleton/SkeletonWindow.fxml similarity index 97% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/app/skeleton/SkeletonWindow.fxml rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/skeleton/SkeletonWindow.fxml index e702d12dca211b9afeb649f7598a800cdc562ee3..8517c4bb37559dec9ff37e0e086e48681017d49b 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/skeleton/SkeletonWindow.fxml +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/skeleton/SkeletonWindow.fxml @@ -32,7 +32,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --> -<?import java.lang.*?> <?import java.net.*?> <?import javafx.geometry.*?> <?import javafx.scene.control.*?> @@ -63,7 +62,4 @@ </StackPane.margin> </VBox> </children> - <stylesheets> - <URL value="@SkeletonWindow.css" /> - </stylesheets> </StackPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/AlertDialog.png similarity index 100% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/AlertDialog.png rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/AlertDialog.png diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/BasicDesktopApplication.fxml similarity index 100% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/BasicApplication.fxml rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/BasicDesktopApplication.fxml diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/BasicPhoneApplication.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/BasicPhoneApplication.fxml new file mode 100644 index 0000000000000000000000000000000000000000..363a846f69fdb7db6630466e494566ce489109de --- /dev/null +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/BasicPhoneApplication.fxml @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<?import com.gluonhq.charm.glisten.control.AppBar?> +<?import com.gluonhq.charm.glisten.control.Icon?> +<?import com.gluonhq.charm.glisten.mvc.View?> +<?import javafx.scene.control.Button?> +<?import javafx.scene.control.Label?> +<?import javafx.scene.control.MenuItem?> +<?import javafx.scene.layout.BorderPane?> +<?import javafx.scene.text.Font?> + +<View maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="600.0" prefWidth="335.0" xmlns="http://javafx.com/javafx/8.0.101" xmlns:fx="http://javafx.com/fxml/1"> + <top> + <AppBar titleText="Screen Title" BorderPane.alignment="CENTER"> + <navIcon> + <Button> + <graphic> + <Icon content="ARROW_BACK" /> + </graphic> + </Button> + </navIcon> + <menuItems> + <MenuItem text="Menu Item 1" /> + <MenuItem text="Menu Item 2" /> + </menuItems> + </AppBar> + </top> + <center> + <Label text="Insert content here" BorderPane.alignment="CENTER" textFill="#9f9f9f"> + <font> + <Font size="18.0" /> + </font> + </Label> + </center> +</View> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/ComplexDesktopApplication.fxml similarity index 100% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/app/template/ComplexApplication.fxml rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/ComplexDesktopApplication.fxml diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/EmptyPhoneApplication.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/EmptyPhoneApplication.fxml new file mode 100644 index 0000000000000000000000000000000000000000..8a97f4d9a8094aa6aba3357dac550729c2a1f681 --- /dev/null +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/EmptyPhoneApplication.fxml @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + Copyright (c) 2017, Gluon and/or its affiliates. + All rights reserved. Use is subject to license terms. + + This file is available and licensed under the following license: + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the distribution. + - Neither the name of Oracle Corporation and Gluon nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +--> +<?import com.gluonhq.charm.glisten.mvc.View?> + +<View maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="600.0" prefWidth="335.0" xmlns="http://javafx.com/javafx/8.0.101" xmlns:fx="http://javafx.com/fxml/1" /> + diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/WelcomeScreen.css b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/TemplatesWindow.css similarity index 62% rename from sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/WelcomeScreen.css rename to sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/TemplatesWindow.css index cc7e79e63cc1b7d4c2cf4decb0fdbb3cbff07853..9f002b26299ea63acad63beef3c244a0f0fc82e4 100644 --- a/sb/src/main/resources/com/oracle/javafx/scenebuilder/app/css/WelcomeScreen.css +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/TemplatesWindow.css @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016, Gluon and/or its affiliates. + * Copyright (c) 2017, Gluon and/or its affiliates. * All rights reserved. Use is subject to license terms. * * This file is available and licensed under the following license: @@ -30,55 +30,20 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -.welcome-dialog { - -fx-min-height: 300px; +.templates-pane.scroll-pane { -fx-background-color: white; } -.welcome-dialog .header { - -fx-font-weight: bold; - -fx-font-size: 1.25em; -} -.welcome-dialog .actions-options { - -fx-padding: 5 0 0 0; -} -.welcome-dialog .actions-options .hyperlink, .welcome-dialog .recent-items-options .hyperlink { - -fx-padding: 0 0 0 0; -} - -.welcome-dialog .actions-options > .action-option-container { - -fx-spacing: 3; -} - -.welcome-dialog .recent-items-options, .welcome-dialog .scroll-pane-container { - -fx-padding: 5 0 0 0; -} - -.welcome-dialog .scroll-pane .recent-items-options { - -fx-padding: 0 0 0 0; -} - -.welcome-dialog .scroll-pane { - -fx-max-height: 150px; - -fx-min-width: 250px; - -fx-pref-width: 250px; - -fx-max-width: 250px; -} - -.welcome-dialog .scroll-pane > .viewport { +.templates-pane.scroll-pane > .viewport{ -fx-background-color: white; } -.welcome-dialog .recent-items-container{ - -fx-pref-width: 350px; -} - -.welcome-dialog .actions-container{ - -fx-pref-width: 350px; -} - -.welcome-dialog .separator { - -fx-padding: 0 5 0 0; +.template { + -fx-background-color: transparent; + -fx-background-radius: 0; + -fx-background-insets: 0; } - +.template:hover { + -fx-background-color: rgba(248, 164, 82, 0.6); +} \ No newline at end of file diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/TemplatesWindow.fxml b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/TemplatesWindow.fxml new file mode 100644 index 0000000000000000000000000000000000000000..4e834c35e8bd28384173bf77a5bea14731203d0b --- /dev/null +++ b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/TemplatesWindow.fxml @@ -0,0 +1,138 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<!-- + Copyright (c) 2017, Gluon and/or its affiliates. + All rights reserved. Use is subject to license terms. + + This file is available and licensed under the following license: + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + - Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + - Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in + the documentation and/or other materials provided with the distribution. + - Neither the name of Oracle Corporation and Gluon nor the names of its + contributors may be used to endorse or promote products derived + from this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +--> + +<?import javafx.geometry.Insets?> +<?import javafx.scene.control.Button?> +<?import javafx.scene.control.Label?> +<?import javafx.scene.control.ScrollPane?> +<?import javafx.scene.effect.DropShadow?> +<?import javafx.scene.image.Image?> +<?import javafx.scene.image.ImageView?> +<?import javafx.scene.layout.FlowPane?> +<?import javafx.scene.layout.VBox?> +<?import javafx.scene.shape.Rectangle?> +<?import javafx.scene.text.Font?> + +<ScrollPane fitToWidth="true" hbarPolicy="NEVER" prefHeight="750.0" prefWidth="791.0" styleClass="templates-pane" stylesheets="@TemplatesWindow.css" xmlns="http://javafx.com/javafx/8.0.101" xmlns:fx="http://javafx.com/fxml/1"> + <content> + <VBox fx:id="templateContainer" prefHeight="747.0" prefWidth="776.0" spacing="30.0"> + <children> + <Label text="%template.title.header.desktop" textFill="#f68a1f"> + <font> + <Font size="30.0" /> + </font> + </Label> + <FlowPane hgap="70.0" prefHeight="215.0" vgap="20.0"> + <children> + <Button fx:id="basicDesktopApp" contentDisplay="TOP" graphicTextGap="30.0" mnemonicParsing="false" styleClass="template" text="%template.title.new.basic.desktop.app"> + <graphic> + <ImageView fitHeight="160.0" fitWidth="256.0" pickOnBounds="true" preserveRatio="true"> + <image> + <Image url="@basic_desktop.png" /> + </image> + <effect> + <DropShadow color="#0000004d" /> + </effect> + </ImageView> + </graphic> + <padding> + <Insets bottom="10.0" left="15.0" right="15.0" top="15.0" /> + </padding> + </Button> + <Button fx:id="complexDesktopApp" contentDisplay="TOP" graphicTextGap="30.0" mnemonicParsing="false" styleClass="template" text="%template.title.new.complex.desktop.app"> + <graphic> + <ImageView fitHeight="160.0" fitWidth="256.0" pickOnBounds="true" preserveRatio="true"> + <image> + <Image url="@complex_desktop.png" /> + </image> + <effect> + <DropShadow color="#0000004d" /> + </effect> + </ImageView> + </graphic> + <padding> + <Insets bottom="10.0" left="15.0" right="15.0" top="15.0" /> + </padding> + </Button> + </children> + <padding> + <Insets left="-15.0" /> + </padding> + </FlowPane> + <Label layoutX="80.0" layoutY="30.0" text="%template.title.header.phone" textFill="#f68a1f"> + <font> + <Font size="30.0" /> + </font> + </Label> + <FlowPane hgap="115.0" prefHeight="200.0" prefWidth="200.0" vgap="20.0"> + <children> + <Button fx:id="emptyPhoneApp" contentDisplay="TOP" graphicTextGap="30.0" mnemonicParsing="false" styleClass="template" text="%template.title.new.empty.phone.app"> + <graphic> + <Rectangle arcHeight="5.0" arcWidth="5.0" fill="WHITE" height="198.0" stroke="#ffffff00" strokeType="INSIDE" width="111.0"> + <effect> + <DropShadow color="#0000004d" /> + </effect> + </Rectangle> + </graphic> + <padding> + <Insets bottom="10.0" left="13.0" right="13.0" top="13.0" /> + </padding> + </Button> + <Button fx:id="basicPhoneApp" contentDisplay="TOP" graphicTextGap="30.0" layoutX="10.0" layoutY="10.0" mnemonicParsing="false" styleClass="template" text="%template.title.new.basic.phone.app"> + <graphic> + <ImageView fitHeight="198.0" fitWidth="111.0" pickOnBounds="true" preserveRatio="true"> + <image> + <Image url="@basic_mobile.png" /> + </image> + <effect> + <DropShadow color="#0000004d" /> + </effect> + </ImageView> + </graphic> + <padding> + <Insets bottom="10.0" left="13.0" right="13.0" top="13.0" /> + </padding> + </Button> + </children> + <padding> + <Insets left="-13.0" /> + </padding> + </FlowPane> + </children> + <padding> + <Insets bottom="40.0" left="70.0" top="20.0" /> + </padding> + </VBox> + </content> +</ScrollPane> diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/basic_desktop.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/basic_desktop.png new file mode 100644 index 0000000000000000000000000000000000000000..2d1264a73660d2465aa3055cff56898a7e914cec Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/basic_desktop.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/basic_desktop@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/basic_desktop@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..8ccd381ad4006523022cf3fa661275b08265742a Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/basic_desktop@2x.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/basic_mobile.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/basic_mobile.png new file mode 100644 index 0000000000000000000000000000000000000000..6b706f8d2fa813b6ba60f6e1afc242c3ea4da413 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/basic_mobile.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/basic_mobile@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/basic_mobile@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..e59178e2debdf18e26886a6e851e7c8c5fd65d59 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/basic_mobile@2x.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/complex_desktop.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/complex_desktop.png new file mode 100644 index 0000000000000000000000000000000000000000..fd90e82086040c8fe4e5125c7fd1a4fd11b8a758 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/complex_desktop.png differ diff --git a/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/complex_desktop@2x.png b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/complex_desktop@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..b0235666a03bac244a9246e2cd2d49c1a4fe0871 Binary files /dev/null and b/sb/src/main/resources/com/oracle/javafx/scenebuilder/kit/template/complex_desktop@2x.png differ diff --git a/sb4e.parent/pom.xml b/sb4e.parent/pom.xml index f1f34ffb4f0d01ae368a700b4135580db6283521..1d120c0e207037441cccc29a112f5efa6e11eb3d 100644 --- a/sb4e.parent/pom.xml +++ b/sb4e.parent/pom.xml @@ -7,9 +7,9 @@ <packaging>pom</packaging> <properties> - <tycho-version>1.0.0</tycho-version> - <maven.compile.source>1.8</maven.compile.source> - <maven.compile.target>1.8</maven.compile.target> + <tycho-version>1.1.0</tycho-version> + <maven.compile.source>9</maven.compile.source> + <maven.compile.target>9</maven.compile.target> <xvfb-maven-plugin.version>1.4.0</xvfb-maven-plugin.version> </properties> @@ -45,7 +45,7 @@ <groupId>com.oracle</groupId> <artifactId>javafx</artifactId> <version>8.0.0-SNAPSHOT</version> - <systemPath>${java.home}/lib/jfxswt.jar</systemPath> + <systemPath>${java.home}/lib/javafx-swt.jar</systemPath> <scope>system</scope> </extraClasspathElement> </extraClasspathElements> @@ -57,7 +57,7 @@ <version>${tycho-version}</version> <configuration> <pomDependencies>consider</pomDependencies> - <executionEnvironment>JavaSE-1.8</executionEnvironment> + <executionEnvironment>JavaSE-9</executionEnvironment> <target> <artifact> <groupId>no.tobask.sb4e</groupId> diff --git a/sb4e.test/AllTests.launch b/sb4e.test/AllTests.launch index 3e4aa2503efbe3c1a078c06154e5396ce47c7088..b1c2a3d7e68b63e27560001e8d4d08325a76cd7c 100644 --- a/sb4e.test/AllTests.launch +++ b/sb4e.test/AllTests.launch @@ -30,7 +30,7 @@ <booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/> <stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/> <stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/> -<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> +<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-10"/> <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value=""/> <stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/> <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="no.tobask.sb4e.test"/> @@ -49,7 +49,7 @@ <setEntry value="org.eclipse.platform:default"/> <setEntry value="org.eclipse.rcp:default"/> </setAttribute> -<stringAttribute key="selected_target_plugins" value="ch.qos.logback.classic@default:default,ch.qos.logback.core@default:default,ch.qos.logback.slf4j@default:false,com.google.guava*21.0.0.v20170206-1425@default:default,com.google.inject.multibindings@default:false,com.google.inject@default:default,com.ibm.icu@default:default,com.jcraft.jsch@default:default,com.sun.el@default:default,javax.annotation@default:default,javax.el@default:default,javax.inject@default:default,javax.servlet.jsp@default:default,javax.servlet@default:default,javax.xml@default:default,org.apache.ant@default:default,org.apache.batik.css@default:default,org.apache.batik.util@default:default,org.apache.commons.codec@default:default,org.apache.commons.jxpath@default:default,org.apache.commons.lang3@default:default,org.apache.commons.logging@default:default,org.apache.felix.gogo.command@default:default,org.apache.felix.gogo.runtime@default:default,org.apache.felix.gogo.shell@default:default,org.apache.felix.scr@default:default,org.apache.httpcomponents.httpclient@default:default,org.apache.httpcomponents.httpcore@default:default,org.apache.jasper.glassfish@default:default,org.apache.log4j@default:default,org.apache.lucene.analyzers-common@default:default,org.apache.lucene.analyzers-smartcn@default:default,org.apache.lucene.core*6.1.0.v20170814-1820@default:default,org.apache.lucene.misc@default:default,org.apache.maven.resolver.api@default:default,org.apache.maven.resolver.connector.basic@default:default,org.apache.maven.resolver.impl@default:default,org.apache.maven.resolver.spi@default:default,org.apache.maven.resolver.transport.file@default:default,org.apache.maven.resolver.transport.http@default:default,org.apache.maven.resolver.util@default:default,org.apache.xerces@default:default,org.apache.xml.resolver@default:default,org.apache.xml.serializer@default:default,org.apiguardian@default:default,org.eclipse.aether.maven@default:default,org.eclipse.ant.core@default:default,org.eclipse.compare.core@default:default,org.eclipse.compare@default:default,org.eclipse.core.commands@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.core.databinding.observable@default:default,org.eclipse.core.databinding.property@default:default,org.eclipse.core.databinding@default:default,org.eclipse.core.expressions@default:default,org.eclipse.core.externaltools@default:default,org.eclipse.core.filebuffers@default:default,org.eclipse.core.filesystem.win32.x86_64@default:false,org.eclipse.core.filesystem@default:default,org.eclipse.core.jobs@default:default,org.eclipse.core.net.win32.x86_64@default:false,org.eclipse.core.net@default:default,org.eclipse.core.resources.win32.x86_64@default:false,org.eclipse.core.resources@default:default,org.eclipse.core.runtime@default:true,org.eclipse.core.variables@default:default,org.eclipse.debug.core@default:default,org.eclipse.debug.ui@default:default,org.eclipse.e4.core.commands@default:default,org.eclipse.e4.core.contexts@default:default,org.eclipse.e4.core.di.annotations@default:default,org.eclipse.e4.core.di.extensions.supplier@default:default,org.eclipse.e4.core.di.extensions@default:default,org.eclipse.e4.core.di@default:default,org.eclipse.e4.core.services@default:default,org.eclipse.e4.emf.xpath@default:default,org.eclipse.e4.tools.compat@default:default,org.eclipse.e4.tools.services@default:default,org.eclipse.e4.ui.bindings@default:default,org.eclipse.e4.ui.css.core@default:default,org.eclipse.e4.ui.css.swt.theme@default:default,org.eclipse.e4.ui.css.swt@default:default,org.eclipse.e4.ui.di@default:default,org.eclipse.e4.ui.model.workbench@default:default,org.eclipse.e4.ui.services@default:default,org.eclipse.e4.ui.widgets@default:default,org.eclipse.e4.ui.workbench.addons.swt@default:default,org.eclipse.e4.ui.workbench.renderers.swt@default:default,org.eclipse.e4.ui.workbench.swt@default:default,org.eclipse.e4.ui.workbench3@default:default,org.eclipse.e4.ui.workbench@default:default,org.eclipse.ecf.filetransfer@default:default,org.eclipse.ecf.identity@default:default,org.eclipse.ecf.provider.filetransfer.ssl@default:false,org.eclipse.ecf.provider.filetransfer@default:default,org.eclipse.ecf.ssl@default:false,org.eclipse.ecf@default:default,org.eclipse.emf.common@default:default,org.eclipse.emf.ecore.change@default:default,org.eclipse.emf.ecore.edit@default:default,org.eclipse.emf.ecore.xmi@default:default,org.eclipse.emf.ecore@default:default,org.eclipse.emf.edit@default:default,org.eclipse.equinox.app@default:default,org.eclipse.equinox.bidi@default:default,org.eclipse.equinox.common@2:true,org.eclipse.equinox.concurrent@default:default,org.eclipse.equinox.console@default:default,org.eclipse.equinox.ds@1:true,org.eclipse.equinox.event@default:default,org.eclipse.equinox.frameworkadmin.equinox@default:default,org.eclipse.equinox.frameworkadmin@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.equinox.http.registry@default:default,org.eclipse.equinox.http.servlet@default:default,org.eclipse.equinox.jsp.jasper.registry@default:default,org.eclipse.equinox.jsp.jasper@default:default,org.eclipse.equinox.launcher.win32.win32.x86_64@default:false,org.eclipse.equinox.launcher@default:default,org.eclipse.equinox.p2.artifact.repository@default:default,org.eclipse.equinox.p2.console@default:default,org.eclipse.equinox.p2.core@default:default,org.eclipse.equinox.p2.director.app@default:default,org.eclipse.equinox.p2.director@default:default,org.eclipse.equinox.p2.directorywatcher@default:default,org.eclipse.equinox.p2.engine@default:default,org.eclipse.equinox.p2.extensionlocation@default:default,org.eclipse.equinox.p2.garbagecollector@default:default,org.eclipse.equinox.p2.jarprocessor@default:default,org.eclipse.equinox.p2.metadata.repository@default:default,org.eclipse.equinox.p2.metadata@default:default,org.eclipse.equinox.p2.operations@default:default,org.eclipse.equinox.p2.publisher.eclipse@default:default,org.eclipse.equinox.p2.publisher@default:default,org.eclipse.equinox.p2.reconciler.dropins@default:default,org.eclipse.equinox.p2.repository.tools@default:default,org.eclipse.equinox.p2.repository@default:default,org.eclipse.equinox.p2.touchpoint.eclipse@default:default,org.eclipse.equinox.p2.touchpoint.natives@default:default,org.eclipse.equinox.p2.transport.ecf@default:default,org.eclipse.equinox.p2.ui.importexport@default:default,org.eclipse.equinox.p2.ui.sdk.scheduler@default:default,org.eclipse.equinox.p2.ui.sdk@default:default,org.eclipse.equinox.p2.ui@default:default,org.eclipse.equinox.p2.updatechecker@default:default,org.eclipse.equinox.p2.updatesite@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.security.ui@default:default,org.eclipse.equinox.security.win32.x86_64@default:false,org.eclipse.equinox.security@default:default,org.eclipse.equinox.simpleconfigurator.manipulator@default:default,org.eclipse.equinox.simpleconfigurator@1:true,org.eclipse.equinox.util@default:default,org.eclipse.fx.osgi@default:false,org.eclipse.help.base@default:default,org.eclipse.help.ui@default:default,org.eclipse.help@default:default,org.eclipse.jdt.compiler.apt@default:false,org.eclipse.jdt.compiler.tool@default:false,org.eclipse.jdt.core.manipulation@default:default,org.eclipse.jdt.core@default:default,org.eclipse.jdt.debug.ui@default:default,org.eclipse.jdt.debug@default:default,org.eclipse.jdt.junit.core@default:default,org.eclipse.jdt.junit.runtime@default:default,org.eclipse.jdt.junit4.runtime@default:default,org.eclipse.jdt.junit@default:default,org.eclipse.jdt.launching@default:default,org.eclipse.jdt.ui@default:default,org.eclipse.jdt@default:default,org.eclipse.jem.util@default:default,org.eclipse.jetty.http@default:default,org.eclipse.jetty.io@default:default,org.eclipse.jetty.security@default:default,org.eclipse.jetty.server@default:default,org.eclipse.jetty.servlet@default:default,org.eclipse.jetty.util@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.jface.text@default:default,org.eclipse.jface@default:default,org.eclipse.ltk.core.refactoring@default:default,org.eclipse.ltk.ui.refactoring@default:default,org.eclipse.m2e.archetype.common@default:default,org.eclipse.m2e.core.ui@default:default,org.eclipse.m2e.core@default:default,org.eclipse.m2e.logback.appender@default:false,org.eclipse.m2e.maven.indexer@default:default,org.eclipse.m2e.maven.runtime.slf4j.simple@default:default,org.eclipse.m2e.maven.runtime@default:default,org.eclipse.m2e.model.edit@default:default,org.eclipse.m2e.workspace.cli@default:default,org.eclipse.osgi.compatibility.state@default:false,org.eclipse.osgi.services@default:default,org.eclipse.osgi.util@default:default,org.eclipse.osgi@-1:true,org.eclipse.pde.junit.runtime@default:default,org.eclipse.platform@default:default,org.eclipse.rcp@default:default,org.eclipse.search@default:default,org.eclipse.swt.win32.win32.x86_64@default:false,org.eclipse.swt@default:default,org.eclipse.team.core@default:default,org.eclipse.team.ui@default:default,org.eclipse.text@default:default,org.eclipse.ui.browser@default:default,org.eclipse.ui.cheatsheets@default:default,org.eclipse.ui.console@default:default,org.eclipse.ui.editors@default:default,org.eclipse.ui.externaltools@default:default,org.eclipse.ui.forms@default:default,org.eclipse.ui.genericeditor@default:default,org.eclipse.ui.ide.application@default:default,org.eclipse.ui.ide@default:default,org.eclipse.ui.intro.quicklinks@default:default,org.eclipse.ui.intro.universal@default:default,org.eclipse.ui.intro@default:default,org.eclipse.ui.monitoring@default:default,org.eclipse.ui.navigator.resources@default:default,org.eclipse.ui.navigator@default:default,org.eclipse.ui.net@default:default,org.eclipse.ui.themes@default:default,org.eclipse.ui.trace@default:default,org.eclipse.ui.views.log@default:default,org.eclipse.ui.views.properties.tabbed@default:default,org.eclipse.ui.views@default:default,org.eclipse.ui.win32@default:false,org.eclipse.ui.workbench.texteditor@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.ui@default:default,org.eclipse.wst.common.core@default:default,org.eclipse.wst.common.emf@default:default,org.eclipse.wst.common.emfworkbench.integration@default:default,org.eclipse.wst.common.environment@default:default,org.eclipse.wst.common.frameworks@default:default,org.eclipse.wst.common.project.facet.core@default:default,org.eclipse.wst.common.uriresolver@default:default,org.eclipse.wst.sse.core@default:default,org.eclipse.wst.validation@default:default,org.eclipse.wst.xml.core@default:default,org.eclipse.wst.xsd.core@default:default,org.eclipse.xsd@default:default,org.eclipse.xtext.logging@default:false,org.hamcrest.core@default:default,org.hamcrest.integration@default:default,org.hamcrest.library@default:default,org.hamcrest.text@default:default,org.hamcrest@default:default,org.junit.platform.commons@default:default,org.junit.platform.engine@default:default,org.junit.platform.launcher@default:default,org.junit.platform.runner@default:default,org.junit.platform.suite.api@default:default,org.junit.vintage.engine@default:default,org.junit@default:default,org.mockito@default:default,org.objenesis@default:default,org.opentest4j@default:default,org.sat4j.core@default:default,org.sat4j.pb@default:default,org.slf4j.api@default:default,org.slf4j.impl.log4j12@default:false,org.tukaani.xz@default:default,org.w3c.css.sac@default:default,org.w3c.dom.events@default:default,org.w3c.dom.smil@default:default,org.w3c.dom.svg@default:default"/> +<stringAttribute key="selected_target_plugins" value="ch.qos.logback.classic@default:default,ch.qos.logback.core@default:default,ch.qos.logback.slf4j@default:false,com.google.guava*21.0.0.v20170206-1425@default:default,com.google.inject.multibindings@default:false,com.google.inject@default:default,com.ibm.icu@default:default,com.jcraft.jsch@default:default,com.sun.el@default:default,javax.annotation@default:default,javax.el@default:default,javax.inject@default:default,javax.servlet.jsp@default:default,javax.servlet@default:default,javax.xml@default:default,org.apache.ant@default:default,org.apache.batik.css@default:default,org.apache.batik.util@default:default,org.apache.commons.codec@default:default,org.apache.commons.jxpath@default:default,org.apache.commons.lang3@default:default,org.apache.commons.logging@default:default,org.apache.felix.gogo.command@default:default,org.apache.felix.gogo.runtime@default:default,org.apache.felix.gogo.shell@default:default,org.apache.felix.scr@default:default,org.apache.httpcomponents.httpclient@default:default,org.apache.httpcomponents.httpcore@default:default,org.apache.jasper.glassfish@default:default,org.apache.log4j@default:default,org.apache.lucene.analyzers-common@default:default,org.apache.lucene.analyzers-smartcn@default:default,org.apache.lucene.core*6.1.0.v20170814-1820@default:default,org.apache.lucene.misc@default:default,org.apache.maven.resolver.api@default:default,org.apache.maven.resolver.connector.basic@default:default,org.apache.maven.resolver.impl@default:default,org.apache.maven.resolver.spi@default:default,org.apache.maven.resolver.transport.file@default:default,org.apache.maven.resolver.transport.http@default:default,org.apache.maven.resolver.util@default:default,org.apache.xerces@default:default,org.apache.xml.resolver@default:default,org.apache.xml.serializer@default:default,org.apiguardian@default:default,org.eclipse.aether.maven@default:default,org.eclipse.ant.core@default:default,org.eclipse.compare.core@default:default,org.eclipse.compare@default:default,org.eclipse.core.commands@default:default,org.eclipse.core.contenttype@default:default,org.eclipse.core.databinding.observable@default:default,org.eclipse.core.databinding.property@default:default,org.eclipse.core.databinding@default:default,org.eclipse.core.expressions@default:default,org.eclipse.core.externaltools@default:default,org.eclipse.core.filebuffers@default:default,org.eclipse.core.filesystem.win32.x86_64@default:false,org.eclipse.core.filesystem@default:default,org.eclipse.core.jobs@default:default,org.eclipse.core.net.win32.x86_64@default:false,org.eclipse.core.net@default:default,org.eclipse.core.resources.win32.x86_64@default:false,org.eclipse.core.resources@default:default,org.eclipse.core.runtime@default:true,org.eclipse.core.variables@default:default,org.eclipse.debug.core@default:default,org.eclipse.debug.ui@default:default,org.eclipse.e4.core.commands@default:default,org.eclipse.e4.core.contexts@default:default,org.eclipse.e4.core.di.annotations@default:default,org.eclipse.e4.core.di.extensions.supplier@default:default,org.eclipse.e4.core.di.extensions@default:default,org.eclipse.e4.core.di@default:default,org.eclipse.e4.core.services@default:default,org.eclipse.e4.emf.xpath@default:default,org.eclipse.e4.tools.compat@default:default,org.eclipse.e4.tools.services@default:default,org.eclipse.e4.ui.bindings@default:default,org.eclipse.e4.ui.css.core@default:default,org.eclipse.e4.ui.css.swt.theme@default:default,org.eclipse.e4.ui.css.swt@default:default,org.eclipse.e4.ui.di@default:default,org.eclipse.e4.ui.model.workbench@default:default,org.eclipse.e4.ui.services@default:default,org.eclipse.e4.ui.widgets@default:default,org.eclipse.e4.ui.workbench.addons.swt@default:default,org.eclipse.e4.ui.workbench.renderers.swt@default:default,org.eclipse.e4.ui.workbench.swt@default:default,org.eclipse.e4.ui.workbench3@default:default,org.eclipse.e4.ui.workbench@default:default,org.eclipse.ecf.filetransfer@default:default,org.eclipse.ecf.identity@default:default,org.eclipse.ecf.provider.filetransfer.ssl@default:false,org.eclipse.ecf.provider.filetransfer@default:default,org.eclipse.ecf.ssl@default:false,org.eclipse.ecf@default:default,org.eclipse.emf.common@default:default,org.eclipse.emf.ecore.change@default:default,org.eclipse.emf.ecore.edit@default:default,org.eclipse.emf.ecore.xmi@default:default,org.eclipse.emf.ecore@default:default,org.eclipse.emf.edit@default:default,org.eclipse.equinox.app@default:default,org.eclipse.equinox.bidi@default:default,org.eclipse.equinox.common@2:true,org.eclipse.equinox.concurrent@default:default,org.eclipse.equinox.console@default:default,org.eclipse.equinox.ds@1:true,org.eclipse.equinox.event@default:default,org.eclipse.equinox.frameworkadmin.equinox@default:default,org.eclipse.equinox.frameworkadmin@default:default,org.eclipse.equinox.http.jetty@default:default,org.eclipse.equinox.http.registry@default:default,org.eclipse.equinox.http.servlet@default:default,org.eclipse.equinox.jsp.jasper.registry@default:default,org.eclipse.equinox.jsp.jasper@default:default,org.eclipse.equinox.launcher.win32.win32.x86_64@default:false,org.eclipse.equinox.launcher@default:default,org.eclipse.equinox.p2.artifact.repository@default:default,org.eclipse.equinox.p2.console@default:default,org.eclipse.equinox.p2.core@default:default,org.eclipse.equinox.p2.director.app@default:default,org.eclipse.equinox.p2.director@default:default,org.eclipse.equinox.p2.directorywatcher@default:default,org.eclipse.equinox.p2.engine@default:default,org.eclipse.equinox.p2.extensionlocation@default:default,org.eclipse.equinox.p2.garbagecollector@default:default,org.eclipse.equinox.p2.jarprocessor@default:default,org.eclipse.equinox.p2.metadata.repository@default:default,org.eclipse.equinox.p2.metadata@default:default,org.eclipse.equinox.p2.operations@default:default,org.eclipse.equinox.p2.publisher.eclipse@default:default,org.eclipse.equinox.p2.publisher@default:default,org.eclipse.equinox.p2.reconciler.dropins@default:default,org.eclipse.equinox.p2.repository.tools@default:default,org.eclipse.equinox.p2.repository@default:default,org.eclipse.equinox.p2.touchpoint.eclipse@default:default,org.eclipse.equinox.p2.touchpoint.natives@default:default,org.eclipse.equinox.p2.transport.ecf@default:default,org.eclipse.equinox.p2.ui.importexport@default:default,org.eclipse.equinox.p2.ui.sdk.scheduler@default:default,org.eclipse.equinox.p2.ui.sdk@default:default,org.eclipse.equinox.p2.ui@default:default,org.eclipse.equinox.p2.updatechecker@default:default,org.eclipse.equinox.p2.updatesite@default:default,org.eclipse.equinox.preferences@default:default,org.eclipse.equinox.registry@default:default,org.eclipse.equinox.security.ui@default:default,org.eclipse.equinox.security.win32.x86_64@default:false,org.eclipse.equinox.security@default:default,org.eclipse.equinox.simpleconfigurator.manipulator@default:default,org.eclipse.equinox.simpleconfigurator@1:true,org.eclipse.equinox.util@default:default,org.eclipse.fx.osgi@default:false,org.eclipse.help.base@default:default,org.eclipse.help.ui@default:default,org.eclipse.help@default:default,org.eclipse.jdt.compiler.apt@default:false,org.eclipse.jdt.compiler.tool@default:false,org.eclipse.jdt.core.manipulation@default:default,org.eclipse.jdt.core@default:default,org.eclipse.jdt.debug.ui@default:default,org.eclipse.jdt.debug@default:default,org.eclipse.jdt.junit.core@default:default,org.eclipse.jdt.junit.runtime@default:default,org.eclipse.jdt.junit4.runtime@default:default,org.eclipse.jdt.junit@default:default,org.eclipse.jdt.launching@default:default,org.eclipse.jdt.ui@default:default,org.eclipse.jdt@default:default,org.eclipse.jem.util@default:default,org.eclipse.jetty.http@default:default,org.eclipse.jetty.io@default:default,org.eclipse.jetty.security@default:default,org.eclipse.jetty.server@default:default,org.eclipse.jetty.servlet@default:default,org.eclipse.jetty.util@default:default,org.eclipse.jface.databinding@default:default,org.eclipse.jface.text@default:default,org.eclipse.jface@default:default,org.eclipse.ltk.core.refactoring@default:default,org.eclipse.ltk.ui.refactoring@default:default,org.eclipse.m2e.archetype.common@default:default,org.eclipse.m2e.core.ui@default:default,org.eclipse.m2e.core@default:default,org.eclipse.m2e.logback.appender@default:false,org.eclipse.m2e.maven.indexer@default:default,org.eclipse.m2e.maven.runtime.slf4j.simple@default:default,org.eclipse.m2e.maven.runtime@default:default,org.eclipse.m2e.model.edit@default:default,org.eclipse.m2e.workspace.cli@default:default,org.eclipse.osgi.compatibility.state@default:false,org.eclipse.osgi.services@default:default,org.eclipse.osgi.util@default:default,org.eclipse.osgi@-1:true,org.eclipse.pde.junit.runtime@default:default,org.eclipse.platform@default:default,org.eclipse.rcp@default:default,org.eclipse.search@default:default,org.eclipse.swt.win32.win32.x86_64@default:false,org.eclipse.swt@default:default,org.eclipse.team.core@default:default,org.eclipse.team.ui@default:default,org.eclipse.text@default:default,org.eclipse.ui.browser@default:default,org.eclipse.ui.cheatsheets@default:default,org.eclipse.ui.console@default:default,org.eclipse.ui.editors@default:default,org.eclipse.ui.externaltools@default:default,org.eclipse.ui.forms@default:default,org.eclipse.ui.genericeditor@default:default,org.eclipse.ui.ide.application@default:default,org.eclipse.ui.ide@default:default,org.eclipse.ui.intro.quicklinks@default:default,org.eclipse.ui.intro.universal@default:default,org.eclipse.ui.intro@default:default,org.eclipse.ui.monitoring@default:default,org.eclipse.ui.navigator.resources@default:default,org.eclipse.ui.navigator@default:default,org.eclipse.ui.net@default:default,org.eclipse.ui.themes@default:default,org.eclipse.ui.trace@default:default,org.eclipse.ui.views.log@default:default,org.eclipse.ui.views.properties.tabbed@default:default,org.eclipse.ui.views@default:default,org.eclipse.ui.win32@default:false,org.eclipse.ui.workbench.texteditor@default:default,org.eclipse.ui.workbench@default:default,org.eclipse.ui@default:default,org.eclipse.wst.common.core@default:default,org.eclipse.wst.common.emf@default:default,org.eclipse.wst.common.emfworkbench.integration@default:default,org.eclipse.wst.common.environment@default:default,org.eclipse.wst.common.frameworks@default:default,org.eclipse.wst.common.project.facet.core@default:default,org.eclipse.wst.common.uriresolver@default:default,org.eclipse.wst.sse.core@default:default,org.eclipse.wst.validation@default:default,org.eclipse.wst.xml.core@default:default,org.eclipse.wst.xsd.core@default:default,org.eclipse.xsd@default:default,org.eclipse.xtext.logging@default:false,org.hamcrest.core@default:default,org.hamcrest.integration@default:default,org.hamcrest.library@default:default,org.hamcrest.text@default:default,org.hamcrest@default:default,org.junit.platform.commons@default:default,org.junit.platform.engine@default:default,org.junit.platform.launcher@default:default,org.junit.platform.runner@default:default,org.junit.platform.suite.api@default:default,org.junit.vintage.engine@default:default,org.junit@default:default,org.mockito@default:default,org.objenesis@default:default,org.opentest4j@default:default,org.sat4j.core@default:default,org.sat4j.pb@default:default,org.slf4j.api*1.7.10.v20170428-1633@default:default,org.slf4j.api*1.7.2.v20121108-1250@default:default,org.slf4j.impl.log4j12@default:false,org.tukaani.xz@default:default,org.w3c.css.sac@default:default,org.w3c.dom.events@default:default,org.w3c.dom.smil@default:default,org.w3c.dom.svg@default:default"/> <stringAttribute key="selected_workspace_plugins" value="com.oracle.javafx.scenebuilder@default:default,no.tobask.sb4e.test@default:default,no.tobask.sb4e@default:default"/> <booleanAttribute key="show_selected_only" value="false"/> <booleanAttribute key="tracing" value="false"/> diff --git a/sb4e.test/META-INF/MANIFEST.MF b/sb4e.test/META-INF/MANIFEST.MF index 25173a20c5a1708f75d4a7076ef6d06c8f3f15c4..ae208b70c2f3148cf17f073dd879ae07bd84dd60 100644 --- a/sb4e.test/META-INF/MANIFEST.MF +++ b/sb4e.test/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: Test Bundle-SymbolicName: no.tobask.sb4e.test Bundle-Version: 0.9.2.qualifier -Bundle-RequiredExecutionEnvironment: JavaSE-1.8 +Bundle-RequiredExecutionEnvironment: JavaSE-9 Require-Bundle: no.tobask.sb4e;bundle-version="0.9.0", org.junit;bundle-version="4.12.0", com.oracle.javafx.scenebuilder, diff --git a/sb4e.test/pom.xml b/sb4e.test/pom.xml index 6bde2dea820abcb3a11ba5cf7019c29a82004e04..76d77fdf1cbdc365a789e470f6da208296b22e07 100644 --- a/sb4e.test/pom.xml +++ b/sb4e.test/pom.xml @@ -26,21 +26,20 @@ <groupId>org.eclipse.tycho</groupId> <artifactId>tycho-surefire-plugin</artifactId> <version>${tycho-version}</version> - <configuration> - <argLine>-Dorg.osgi.framework.bundle.parent=ext - -Dosgi.framework.extensions=org.eclipse.fx.osgi</argLine> +<!-- <configuration> --> +<!-- <argLine>-Dosgi.framework.extensions=org.eclipse.fx.osgi</argLine> --> <!-- <useUIHarness>true</useUIHarness> --> <!-- <environmentVariables> --> <!-- <DISPLAY>${xvfb.display}</DISPLAY> --> <!-- </environmentVariables> --> - <frameworkExtensions> - <frameworkExtension> - <groupId>at.bestsolution.efxclipse.rt</groupId> - <artifactId>org.eclipse.fx.osgi</artifactId> - <version>3.1.0</version> - </frameworkExtension> - </frameworkExtensions> - </configuration> +<!-- <frameworkExtensions> --> +<!-- <frameworkExtension> --> +<!-- <groupId>at.bestsolution.efxclipse.rt</groupId> --> +<!-- <artifactId>org.eclipse.fx.osgi</artifactId> --> +<!-- <version>3.1.0</version> --> +<!-- </frameworkExtension> --> +<!-- </frameworkExtensions> --> +<!-- </configuration> --> </plugin> <!-- <plugin> --> <!-- <groupId>com.github.zetten</groupId> --> diff --git a/sb4e/.classpath b/sb4e/.classpath index 101ca4de7c28b8b4f6cd9366f82d434af07e821d..e6b43080ac3c492d60b9a3fbf75d81a6a39d3ee4 100644 --- a/sb4e/.classpath +++ b/sb4e/.classpath @@ -1,7 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> <classpath> - <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-9"> <attributes> + <attribute name="module" value="true"/> <attribute name="maven.pomderived" value="true"/> </attributes> </classpathentry> diff --git a/sb4e/.settings/org.eclipse.jdt.core.prefs b/sb4e/.settings/org.eclipse.jdt.core.prefs index 6e80039d3b822e65e46fbf18906ef652814e9505..63864f1a37b2edebce3e44a76bc790c00b5ba409 100644 --- a/sb4e/.settings/org.eclipse.jdt.core.prefs +++ b/sb4e/.settings/org.eclipse.jdt.core.prefs @@ -1,8 +1,8 @@ eclipse.preferences.version=1 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.codegen.targetPlatform=9 +org.eclipse.jdt.core.compiler.compliance=9 org.eclipse.jdt.core.compiler.problem.assertIdentifier=error org.eclipse.jdt.core.compiler.problem.enumIdentifier=error org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning -org.eclipse.jdt.core.compiler.source=1.8 +org.eclipse.jdt.core.compiler.source=9 diff --git a/sb4e/META-INF/MANIFEST.MF b/sb4e/META-INF/MANIFEST.MF index 1aaa8767c1efdb916179e67278b0f00dc829def7..139fa17ee2f38b4ecf0b5071b8c2a6963bab3033 100644 --- a/sb4e/META-INF/MANIFEST.MF +++ b/sb4e/META-INF/MANIFEST.MF @@ -7,18 +7,20 @@ Bundle-Activator: no.tobask.sb4e.Activator Require-Bundle: org.eclipse.core.runtime, org.eclipse.ui;bundle-version="3.109.0", org.eclipse.ui.ide;bundle-version="3.13.0", - com.oracle.javafx.scenebuilder;bundle-version="8.0.0", + com.oracle.javafx.scenebuilder;bundle-version="9.0.1", org.eclipse.e4.tools.compat;bundle-version="4.7.0", org.eclipse.core.resources -Bundle-RequiredExecutionEnvironment: JavaSE-1.8 -Import-Package: com.oracle.javafx.scenebuilder.app.selectionbar, - com.oracle.javafx.scenebuilder.kit.editor, +Bundle-RequiredExecutionEnvironment: JavaSE-9 +Import-Package: com.oracle.javafx.scenebuilder.kit.editor, com.oracle.javafx.scenebuilder.kit.editor.job, com.oracle.javafx.scenebuilder.kit.editor.panel.content, com.oracle.javafx.scenebuilder.kit.editor.panel.inspector, com.oracle.javafx.scenebuilder.kit.editor.panel.library, com.oracle.javafx.scenebuilder.kit.editor.panel.util, com.oracle.javafx.scenebuilder.kit.fxom, + com.oracle.javafx.scenebuilder.kit.i18n, + com.oracle.javafx.scenebuilder.kit.selectionbar, + javax.annotation;version="1.2.0", org.eclipse.core.resources, org.eclipse.e4.core.contexts;version="1.6.0", org.eclipse.e4.core.di, @@ -34,3 +36,4 @@ Export-Package: no.tobask.sb4e, no.tobask.sb4e.views Service-Component: OSGI-INF/controllerCreator.xml, OSGI-INF/workbenchAccessorCreator.xml +Automatic-Module-Name: no.tobask.sb4e diff --git a/sb4e/src/no/tobask/sb4e/editors/EditorWindowController.java b/sb4e/src/no/tobask/sb4e/editors/EditorWindowController.java index 7c36ac6eae28fd937f1729ff165b455e44fccfec..7322384ba026ccbb49d93d5990c8ac42fe97d80d 100644 --- a/sb4e/src/no/tobask/sb4e/editors/EditorWindowController.java +++ b/sb4e/src/no/tobask/sb4e/editors/EditorWindowController.java @@ -2,9 +2,11 @@ package no.tobask.sb4e.editors; import com.oracle.javafx.scenebuilder.app.info.InfoPanelController; import com.oracle.javafx.scenebuilder.app.message.MessageBarController; -import com.oracle.javafx.scenebuilder.app.selectionbar.SelectionBarController; +import com.oracle.javafx.scenebuilder.app.preferences.PreferencesController; +import com.oracle.javafx.scenebuilder.kit.selectionbar.SelectionBarController; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.preferences.PreferencesControllerBase; import com.oracle.javafx.scenebuilder.kit.editor.panel.content.ContentPanelController; import com.oracle.javafx.scenebuilder.kit.editor.panel.hierarchy.HierarchyPanelController; import com.oracle.javafx.scenebuilder.kit.editor.panel.library.LibraryPanelController; @@ -44,7 +46,8 @@ public class EditorWindowController extends AbstractFxmlWindowController { super(EditorWindowController.class.getResource("EditorWindow.fxml"), I18N.getBundle(), false); this.editorController = editorController; contentPanelController = new ContentPanelController(editorController); - libraryPanelController = new LibraryPanelController(editorController); + libraryPanelController = new LibraryPanelController(editorController, + PreferencesController.getSingleton().getMavenPreferences()); selectionBarController = new SelectionBarController(editorController); hierarchyPanelController = new HierarchyPanelController(editorController); infoPanelController = new InfoPanelController(editorController); diff --git a/sb4e/src/no/tobask/sb4e/views/InspectorViewController.java b/sb4e/src/no/tobask/sb4e/views/InspectorViewController.java index 62ab2847e11fc22189bfe4a75823b77983028949..d6905a415254ec4cc68ce9f2f1b101f30967f3b7 100644 --- a/sb4e/src/no/tobask/sb4e/views/InspectorViewController.java +++ b/sb4e/src/no/tobask/sb4e/views/InspectorViewController.java @@ -5,7 +5,7 @@ import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; import com.oracle.javafx.scenebuilder.kit.editor.EditorController; -import com.oracle.javafx.scenebuilder.kit.editor.i18n.I18N; +import com.oracle.javafx.scenebuilder.kit.i18n.I18N; import com.oracle.javafx.scenebuilder.kit.editor.panel.inspector.InspectorPanelController; import com.oracle.javafx.scenebuilder.kit.editor.panel.util.AbstractFxmlWindowController; import com.oracle.javafx.scenebuilder.kit.editor.search.SearchController;