Package org.apache.batik.apps.svgbrowser
Class Main
java.lang.Object
org.apache.batik.apps.svgbrowser.Main
- All Implemented Interfaces:
Application
This class contains the main method of an SVG viewer.
- Version:
- $Id: Main.java 1804130 2017-08-04 14:41:11Z ssteiner $
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected class
To handle the '-font-size' option.protected static interface
This interface represents an option handler. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected String[]
The arguments.static final String
Batik configuration sub-directoryprotected static ResourceBundle
The resource bundlestatic final String
Default font-family value.protected static ImageIcon
The frame's icon.protected Map
The option handlers.protected Vector
The array of last visited URIsstatic final int
Maximum number of recently visited URIsprotected int
The actual allowed maximum number of last visited URIsprotected boolean
Controls whether the application can override the system security policy property.static final String
Entry for granting file system access to scriptsstatic final String
Entry for granting network access to scriptsstatic final String
Entry for the list of recently visited URIstatic final String
Entry for the maximum number of last visited URIsprotected PreferenceDialog
The preference dialog.protected XMLPreferenceManager
The preference manager.static final String
System property for specifying an additional policy file.static final String
User home propertyprotected static ResourceManager
The resource managerstatic final String
The gui resources file nameprotected ApplicationSecurityEnforcer
Script security enforcement is delegated to the security utilitystatic final String
Name of the Squiggle configuration filestatic final String
Name of the Squiggle policy filestatic final String
URL for Squiggle's security policy filestatic final String
SVG initialization file, used to trigger loading of most of the Batik classesprotected String
Stores the initialization file URIprotected String
The UI specialization to use in the JSVGViewerFrames.static final String
Extension used in addition to the scriptType value to read from the PreferenceManager whether or not the scriptType can be loaded.static final String
List of separators between URI values in the preference fileprotected List
The viewer frames. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addVisitedURI
(String uri) Notifies Application of recently visited URIboolean
canLoadScriptType
(String scriptType) Returns true if the input scriptType can be loaded in this application.void
Closes the given viewer frame.Creates and shows a new viewer frame.Creates a new application exit action.int
Returns the allowed origins for external resources.int
Returns the allowed origins for scripts.Returns the default value for the CSS "font-family" propertyReturns the user languages.getMedia()
Returns the CSS media to use.Returns the UI resource specialization to use.Returns the user stylesheet uri.String[]
Asks Application for a list of recently visited URI.Returns the XML parser class name.protected void
Initializes the lastVisited arrayvoid
Installs a custom policy file in the '.batik' directory.boolean
Returns true if the selection overlay is painted in XOR mode, false otherwise.boolean
Returns true if the XML parser must be in validation mode, false otherwise.static void
Creates a viewer frame and shows it..void
Opens the given link in a new window.protected void
Prints the command line usage.void
run()
Runs the application.private void
private void
void
Shows the preference dialog.
-
Field Details
-
UNKNOWN_SCRIPT_TYPE_LOAD_KEY_EXTENSION
Extension used in addition to the scriptType value to read from the PreferenceManager whether or not the scriptType can be loaded.- See Also:
-
PROPERTY_USER_HOME
User home property- See Also:
-
PROPERTY_JAVA_SECURITY_POLICY
System property for specifying an additional policy file.- See Also:
-
BATIK_CONFIGURATION_SUBDIRECTORY
Batik configuration sub-directory- See Also:
-
SQUIGGLE_CONFIGURATION_FILE
Name of the Squiggle configuration file- See Also:
-
SQUIGGLE_POLICY_FILE
Name of the Squiggle policy file- See Also:
-
POLICY_GRANT_SCRIPT_NETWORK_ACCESS
Entry for granting network access to scripts- See Also:
-
POLICY_GRANT_SCRIPT_FILE_ACCESS
Entry for granting file system access to scripts- See Also:
-
PREFERENCE_KEY_VISITED_URI_LIST
Entry for the list of recently visited URI- See Also:
-
PREFERENCE_KEY_VISITED_URI_LIST_LENGTH
Entry for the maximum number of last visited URIs- See Also:
-
URI_SEPARATOR
List of separators between URI values in the preference file- See Also:
-
DEFAULT_DEFAULT_FONT_FAMILY
Default font-family value.- See Also:
-
SVG_INITIALIZATION
SVG initialization file, used to trigger loading of most of the Batik classes- See Also:
-
svgInitializationURI
Stores the initialization file URI -
RESOURCES
The gui resources file name- See Also:
-
SQUIGGLE_SECURITY_POLICY
URL for Squiggle's security policy file- See Also:
-
bundle
The resource bundle -
resources
The resource manager -
frameIcon
The frame's icon. -
preferenceManager
The preference manager. -
MAX_VISITED_URIS
public static final int MAX_VISITED_URISMaximum number of recently visited URIs- See Also:
-
lastVisited
The array of last visited URIs -
maxVisitedURIs
protected int maxVisitedURIsThe actual allowed maximum number of last visited URIs -
arguments
The arguments. -
overrideSecurityPolicy
protected boolean overrideSecurityPolicyControls whether the application can override the system security policy property. This is done when there was no initial security policy specified when the application started, in which case Batik will use that property. -
securityEnforcer
Script security enforcement is delegated to the security utility -
handlers
The option handlers. -
viewerFrames
The viewer frames. -
preferenceDialog
The preference dialog. -
uiSpecialization
The UI specialization to use in the JSVGViewerFrames.
-
-
Constructor Details
-
Main
Creates a new application.- Parameters:
args
- The command-line arguments.
-
-
Method Details
-
main
Creates a viewer frame and shows it..- Parameters:
args
- The command-line arguments.
-
installCustomPolicyFile
Installs a custom policy file in the '.batik' directory. This is initialized with the content of the policy file coming with the distribution- Throws:
IOException
-
run
public void run()Runs the application. -
printUsage
protected void printUsage()Prints the command line usage. -
createAndShowJSVGViewerFrame
Creates and shows a new viewer frame.- Specified by:
createAndShowJSVGViewerFrame
in interfaceApplication
-
closeJSVGViewerFrame
Closes the given viewer frame.- Specified by:
closeJSVGViewerFrame
in interfaceApplication
-
createExitAction
Creates a new application exit action.- Specified by:
createExitAction
in interfaceApplication
-
openLink
Opens the given link in a new window.- Specified by:
openLink
in interfaceApplication
-
getXMLParserClassName
Returns the XML parser class name.- Specified by:
getXMLParserClassName
in interfaceApplication
-
isXMLParserValidating
public boolean isXMLParserValidating()Returns true if the XML parser must be in validation mode, false otherwise.- Specified by:
isXMLParserValidating
in interfaceApplication
-
showPreferenceDialog
Shows the preference dialog.- Specified by:
showPreferenceDialog
in interfaceApplication
-
setPreferences
- Throws:
IOException
-
setPreferences
-
getLanguages
Returns the user languages.- Specified by:
getLanguages
in interfaceApplication
-
getUserStyleSheetURI
Returns the user stylesheet uri.- Specified by:
getUserStyleSheetURI
in interfaceApplication
- Returns:
- null if no user style sheet was specified.
-
getDefaultFontFamily
Returns the default value for the CSS "font-family" property- Specified by:
getDefaultFontFamily
in interfaceApplication
-
getMedia
Returns the CSS media to use.- Specified by:
getMedia
in interfaceApplication
- Returns:
- empty string if no CSS media was specified.
-
isSelectionOverlayXORMode
public boolean isSelectionOverlayXORMode()Returns true if the selection overlay is painted in XOR mode, false otherwise.- Specified by:
isSelectionOverlayXORMode
in interfaceApplication
-
canLoadScriptType
Returns true if the input scriptType can be loaded in this application.- Specified by:
canLoadScriptType
in interfaceApplication
-
getAllowedScriptOrigin
public int getAllowedScriptOrigin()Returns the allowed origins for scripts.- Specified by:
getAllowedScriptOrigin
in interfaceApplication
- See Also:
-
getAllowedExternalResourceOrigin
public int getAllowedExternalResourceOrigin()Returns the allowed origins for external resources.- Specified by:
getAllowedExternalResourceOrigin
in interfaceApplication
- See Also:
-
addVisitedURI
Notifies Application of recently visited URI- Specified by:
addVisitedURI
in interfaceApplication
-
getVisitedURIs
Asks Application for a list of recently visited URI.- Specified by:
getVisitedURIs
in interfaceApplication
-
getUISpecialization
Returns the UI resource specialization to use.- Specified by:
getUISpecialization
in interfaceApplication
-
initializeLastVisited
protected void initializeLastVisited()Initializes the lastVisited array
-