Accessibility

FlashPaper Documentation

Functions supported by the IFlashPaper interface


Table of Contents

  1. History of the FlashPaper ActionScript API
  2. FlashPaper 2.0 ActionScript API
  3. Functions supported by the IFlashPaper interface
  4. The FlashPaper.SelectionRange Class
  5. Loading FlashPaper 2.0 documents into Flash
  6. Loading FlashPaper 2.0 documents as sprites in Director
  7. Specifying initial settings for FlashPaper 2.0 documents

The following functions are supported by the IFlashPaper interface:

addListener(listener:Object):Void; Adds or removes a listener for various events. Your listener can receive the following events:

onPageChanged(newPageNumber:Number):Void Broadcast when the current page (as displayed in the toolbar) changes.

onZoomChanged(percent:Number):Void Broadcast when the current zoom level (as displayed in the toolbar) changes.

onSelection():Void Broadcast when the current text selection in the document changes. (For efficiency, the new selection is not passed as an argument; you should call getTextSelectionRange() to get the new selection.)

onToolChanged(newTool:String):Void Broadcast when the currently active tool (as displayed in the toolbar) changes.

onEnableScrolling(enable:Boolean):Void Broadcast when scrolling is enabled or disabled, typically by a call to enableScrolling().

onVisibleAreaChanged():Void Broadcast when any aspect of the visible area of the document changes, including zoom level and scroll position.

Other events might be broadcast, but those events might not be in future versions of FlashPaper. You should not rely on undocumented events broadcast by this mechanism.

removeListener(listener:Object):Void; Removes a listener added by addListener(). If the given object is not a listener for this FlashPaper document, the call does nothing.

getViewerType():String; Returns a string describing the type of user interface that is included in the document. The standard Macromedia FlashPaper viewer always returns the string Macromedia FlashPaper Default Viewer.

getViewerVersion():Number; Returns an integer indicating the version of the user interface code in this particular document. The returned integers are arbitrary and not necessarily consecutive, but larger numbers indicate recent revisions to the viewer, and might indicate bug fixes or enhanced functionality. FlashPaper 2.01 shipped with a viewer version number of 218.

getCurrentPage():Number; Returns the current page number (as displayed in the toolbar). The first page is page 1.

setCurrentPage(pageNumber:Number):Void; Sets the current page. The view scrolls as necessary to ensure the page is visible, but does not adjust zoom.

getNumberOfPages():Number; Returns the total number of pages in the document.

Note: All of the pages may not be able to be displayed yet, depending on the connection speed.

getLoadedPages():Number; Returns the total number of pages loaded (and able to be displayed) so far. This value must be between zero and getNumberOfPages(), inclusive. When getLoadedPages() == getNumberOfPages(), the document is fully loaded.

showUIElement(part:String, flag:Boolean):Void; Hides or displays part of the user interface in the FlashPaper document. The currently supported, case-sensitive values for part are the following:

"PrevNext" The Previous Page and Next Page toolbar buttons are hidden or shown.

Note: If these buttons are hidden, the Current Page text box is disabled, but not hidden.

"Print" The Print toolbar button is hidden or shown.

"Tool" All tool selection buttons on the toolbar are hidden or shown.

"Zoom" All zoom-related controls on the toolbar are hidden or shown.

"Find" All text-search-related controls on the toolbar are hidden or shown.

"Pop" The Open Document in New Browser Window toolbar button is hidden or shown.

"Sidebar" The sidebar (displaying the document outline) is hidden or shown.

Note: This value is ignored if the document does not contain an outline; documents without outlines never show a sidebar.

"Page" The Current Page and Number of Pages fields in the toolbar are hidden or shown.

"Overflow" The Overflow menu on the toolbar is hidden or shown.

Note: This menu appears only when the toolbar is too narrow to display all controls; you cannot use this call to force the Overflow menu to be visible.

"ZoomKeys" This value doesn't affect the user interface; it is used to enable or disable various keys used to zoom in or out of the document (for example, +, -, p, w).

printTheDocument():Boolean; Simulates a user clicking the Print button. The document must be fully loaded before you call this function. This function returns false if the document is not fully loaded.

setCurrentZoom(percent:Object):Void; Sets the current zoom level. You can pass a number indicating a zoom percentage (for example, 100 for a 100% view). You can also pass the string width to zoom to the current fit-to-width magnification for this document, or pass the string page for the fit-to-page magnification.

getCurrentZoom():Number; Returns the current zoom level.

Note: The zoom level always returns as a number; width and page are never returned.

setSize(w:Number, h:Number):Boolean; Sets the display size of the document, in pixels. This function returns true if resize was successful, false if resize was unsuccessful. Generally speaking, this function fails (returns false) if the document isn't fully loaded.

goToLinkTarget(linktarget:String, window:Object):Void; Handles an anchor or URL link request.

If the given string is a string of the form anchor:foo, the current view shifts to that anchor with a logical name of foo. The window argument is ignored in this case. If foo is not a valid anchor name in the document, no action is taken.

For all other strings, getURL(linktarget, window) is called. (For more information, see the ActionScript documentation for this function.)

enableScrolling(flag:Boolean):Boolean Used to prevent the user from scrolling the document.

When scrolling is disabled, the following is true:

  • The scroll bar is disabled, but visible.
  • Panning (using the pointing hand) is disabled.
  • Scrolling using the mouse wheel is disabled.

The return value is the previous value of this flag.

getCurrentTool():String; Returns the currently active tool. If no tool is active, an empty string is returned.

The following are currently supported values:

  • "" (no tool)
  • "pan" (hand tool)
  • "select" (text selection tool)

setCurrentTool(tool:String):Boolean; Makes the given tool the active tool. This function returns false if the argument is invalid or the given tool is disabled.

The following are currently supported values:

  • "" (no tool)
  • "pan" (hand tool)
  • "select" (text selection tool)

getTextSelectionRange():FlashPaper.SelectionRange; Returns an object describing the current text selection. If no text is selected, this function returns null.

Note: Unlike the object returned by getVisibleArea(), this call always returns a FlashPaper.SelectionRange, which is a well-defined object that you can examine, decompose, or construct new instances of.

setTextSelectionRange(sel:SelectionRange, skipBroadcast:Boolean):Void; Selects the given range of text. You may pass null to deselect all text. Invalid ranges are clipped to document ranges (this allows you to set a range that begins with zero and ends with a large number, such as 999999, to select the entire document).

If skipBroadcast is false (or omitted), onVisibleAreaChanged() is broadcast to listeners as necessary. If skipBroadcast is true, onVisibleAreaChanged() is never broadcast to listeners.

Note: Unlike the object expected by setVisibleArea(), this call always expects a FlashPaper.SelectionRange, which is a well-defined object that you can examine, decompose, or construct new instances of.

getSelectedText():String; Returns the selected text as a Unicode string. If no text is selected, an empty string is returned.

getSidebarWidth():Number; Returns the width of the sidebar. A document with no outline always returns zero.

setSidebarWidth(w:Number):Void; Sets the width of the sidebar. Pass zero to hide the sidebar completely. A document with no outline ignores this call.

getFindText():String; Returns any text in the Find text box as a Unicode string.

setFindText(s:String):Void; Sets the text in the Find text box to a Unicode string value. This call does not perform a find operation or alter the current selection.

findNext():Boolean; Searches for the text in the Find text box. The search begins from the end of the current selection. To start from the beginning of the document, call setSelectionRange(null) first. Returns true if text is found, false if not. If text is found, the specific range can be found by calling getTextSelectionRange().

getVisibleArea():Object; Returns an object describing the current visible area of the document.

You can use the return value to do one of the following:

  • Pass to setVisibleArea().

    This can be useful if the same document is being viewed on multiple computers, and you want to keep the visible areas in sync.

  • Compare with a previous value returned by getVisibleArea() to determine if the viewable area has changed.

The returned object should be considered an opaque data type. Don't try to decompose the returned object, because its contents and format will probably change in future versions. The only public member of the object we guarantee in future versions of the method is:

function equals(that:Object):Boolean;

You can use this to compare two visible areas to determine if they are the same.

setVisibleArea(area:Object, skipBroadcast:Boolean):Void; Adjusts the currently visible page/zoom/scroll to match the visible area described by the area object.

If skipBroadcast is false (or omitted), onVisibleAreaChanged() is broadcast to listeners as necessary. If skipBroadcast is true, onVisibleAreaChanged() is never broadcast to listeners.

This object must be one previously returned by getVisibleArea. Don't try to construct your own object, because the contents and format will probably change in future versions.