Just
as a user can view source code for an HTML page in a web browser,
users can view the source code of an HTML-based AIR application.
The Adobe® AIR® SDK includes an AIRSourceViewer.js JavaScript file
that you can use in your application to easily reveal source code
to end users.
Loading, configuring, and opening the Source ViewerThe Source Viewer code is included in a JavaScript file,
AIRSourceViewer.js, that is included in the frameworks directory
of the AIR SDK. To use the Source Viewer in your application, copy
the AIRSourceViewer.js to your application project directory and
load the file via a script tag in the main HTML file in your application:
<script type="text/javascript" src="AIRSourceViewer.js"></script>
The AIRSourceViewer.js file defines a class, SourceViewer, which
you can access from JavaScript code by calling air.SourceViewer.
The SourceViewer class defines three methods: getDefault(), setup(),
and viewSource().
Method
|
Description
|
getDefault()
|
A static method. Returns a SourceViewer
instance, which you can use to call the other methods.
|
setup()
|
Applies configuration settings to the Source
Viewer. For details, see Configuring the Source Viewer
|
viewSource()
|
Opens a new window in which the user can
browse and open source files of the host application.
|
Note: Code using the Source Viewer must be in the
application security sandbox (in a file in the application directory).
For example, the following JavaScript code instantiates a Source
Viewer object and opens the Source Viewer window listing all source
files:
var viewer = air.SourceViewer.getDefault();
viewer.viewSource();
Configuring the Source ViewerThe config() method applies given settings
to the Source Viewer. This method takes one parameter: configObject.
The configObject object has properties that define
configuration settings for the Source Viewer. The properties are default, exclude, initialPosition, modal, typesToRemove,
and typesToAdd.
defaultA string specifying the relative
path to the initial file to be displayed in the Source Viewer.
For
example, the following JavaScript code opens the Source Viewer window with
the index.html file as the initial file shown:
var viewer = air.SourceViewer.getDefault();
var configObj = {};
configObj.default = "index.html";
viewer.viewSource(configObj);
excludeAn array of strings specifying
files or directories to be excluded from the Source Viewer listing.
The paths are relative to the application directory. Wildcard characters
are not supported.
For example, the following JavaScript code
opens the Source Viewer window listing all source files except for
the AIRSourceViewer.js file, and files in the Images and Sounds
subdirectories:
var viewer = air.SourceViewer.getDefault();
var configObj = {};
configObj.exclude = ["AIRSourceViewer.js", "Images" "Sounds"];
viewer.viewSource(configObj);
initialPositionAn array that includes
two numbers, specifying the initial x and y coordinates of the Source
Viewer window.
For example, the following JavaScript code
opens the Source Viewer window at the screen coordinates [40, 60]
(X = 40, Y = 60):
var viewer = air.SourceViewer.getDefault();
var configObj = {};
configObj.initialPosition = [40, 60];
viewer.viewSource(configObj);
modalA Boolean value, specifying whether
the Source Viewer should be a modal (true) or non-modal (false)
window. By default, the Source Viewer window is modal.
For
example, the following JavaScript code opens the Source Viewer window such
that the user can interact with both the Source Viewer window and
any application windows:
var viewer = air.SourceViewer.getDefault();
var configObj = {};
configObj.modal = false;
viewer.viewSource(configObj);
typesToAddAn array of strings specifying
the file types to include in the Source Viewer listing, in addition
to the default types included.
By default, the Source Viewer
lists the following file types:
Text files—TXT, XML,
MXML, HTM, HTML, JS, AS, CSS, INI, BAT, PROPERTIES, CONFIG
Image files—JPG, JPEG, PNG, GIF
If no value is specified,
all default types are included (except for those specified in the typesToExclude property).
For
example, the following JavaScript code opens the Source Viewer window include
VCF and VCARD files:
var viewer = air.SourceViewer.getDefault();
var configObj = {};
configObj.typesToAdd = ["text.vcf", "text.vcard"];
viewer.viewSource(configObj);
For each file type
you list, you must specify "text" (for text file types) or "image" (for
image file types).
typesToExcludeAn array of strings specifying
the file types to exclude from the Source Viewer.
By default,
the Source Viewer lists the following file types:
Text files—TXT, XML, MXML, HTM, HTML, JS, AS, CSS, INI, BAT,
PROPERTIES, CONFIG
Image files—JPG, JPEG, PNG, GIF
For example, the following
JavaScript code opens the Source Viewer window without listing GIF
or XML files:
var viewer = air.SourceViewer.getDefault();
var configObj = {};
configObj.typesToExclude = ["image.gif", "text.xml"];
viewer.viewSource(configObj);
For each file type
you list, you must specify "text" (for text file
types) or "image" (for image file types).
Opening the Source ViewerYou should include a user interface element, such as a
link, button, or menu command, that calls the Source Viewer code
when the user selects it. For example, the following simple application
opens the Source Viewer when the user clicks a link:
<html>
<head>
<title>Source Viewer Sample</title>
<script type="text/javascript" src="AIRSourceViewer.js"></script>
<script type="text/javascript">
function showSources(){
var viewer = air.SourceViewer.getDefault();
viewer.viewSource()
}
</script>
</head>
<body>
<p>Click to view the source files.</p>
<input type="button"
onclick="showSources()"
value="View Source" />
</body>
</html>
Source Viewer user interfaceWhen the application calls the viewSource() method
of a SourceViewer object, the AIR application opens a Source Viewer
window. The window includes a list of source files and directories
(on the left) and a display area showing the source code for the
selected file (on the right):
Directories are listed in brackets. The user can click a brace
to expand or collapse the listing of a directory.
The Source Viewer can display the source for text files with
recognized extensions (such as HTML, JS, TXT, XML, and others) or
for image files with recognized image extensions (JPG, JPEG, PNG,
and GIF). If the user selects a file that does not have a recognized
file extension, an error message is displayed (“Cannot retrieve text
content from this filetype”).
Any source files that are excluded via the setup() method
are not listed (see Loading, configuring, and opening the Source Viewer).
|
|
|