protected void fxmlPreInitialize ( ) { // Define fxml path and resource bundle path according to key parts provided // If an FXMLItem is provided, simply map it to the internal item handle if ( ! getListKeyPart ( ) . isEmpty ( ) && getListKeyPart ( ) . get ( 0 ) instanceof FXMLItem ) { this . fxmlItem = ( FXMLItem ) getListKeyPart ( ) . get ( 0 ) ; // if the first key part is a string that begins with fxml: } else if ( ! getListKeyPart ( ) . isEmpty ( ) && getListKeyPart ( ) . get ( 0 ) . toString ( ) . startsWith ( KEYPART_FXML_PREFIX ) ) { // Use the string provided and append FXML extension final String baseName = getListKeyPart ( ) . get ( 0 ) . toString ( ) . substring ( KEYPART_FXML_PREFIX . length ( ) ) ; this . fxmlPath = baseName . replaceAll ( FXML . DOT_SEPARATOR , FXML . PATH_SEPARATOR ) + FXML . FXML_EXT ; // if the second key part is a string that begins with rb: if ( getListKeyPart ( ) . size ( ) > 1 && getListKeyPart ( ) . get ( 1 ) . toString ( ) . startsWith ( KEYPART_RB_PREFIX ) ) { this . resourcePath = getListKeyPart ( ) . get ( 1 ) . toString ( ) . substring ( KEYPART_RB_PREFIX . length ( ) ) . replaceAll ( FXML . DOT_SEPARATOR , FXML . PATH_SEPARATOR ) ; } else { // Otherwise use the same base name as fxml file this . resourcePath = baseName ; } } else { // Otherwise use the current class name to define the fxml and resource bundle file names String baseName = this . getClass ( ) . getCanonicalName ( ) ; // Remove the Model suffix if any baseName = baseName . substring ( 0 , baseName . lastIndexOf ( Model . class . getSimpleName ( ) ) ) ; // Replace . by / for the fxml loader baseName = baseName . replaceAll ( FXML . DOT_SEPARATOR , FXML . PATH_SEPARATOR ) ; this . fxmlPath = baseName + FXML . FXML_EXT ; this . resourcePath = baseName ; } }
Pre init .