[OpenLayers-Commits] r3598 - in sandbox/tschaub/feature: . apidoc_config doc doc_config examples lib lib/OpenLayers lib/OpenLayers/Control lib/OpenLayers/Feature lib/OpenLayers/Format lib/OpenLayers/Geometry lib/OpenLayers/Handler lib/OpenLayers/Layer lib/OpenLayers/Layer/MapServer lib/OpenLayers/Layer/WMS lib/OpenLayers/Marker lib/OpenLayers/Popup lib/OpenLayers/Renderer lib/OpenLayers/Tile tests tests/Control tests/Layer tests/Tile

commits at openlayers.org commits at openlayers.org
Thu Jul 5 15:51:45 EDT 2007


Author: tschaub
Date: 2007-07-05 15:51:39 -0400 (Thu, 05 Jul 2007)
New Revision: 3598

Added:
   sandbox/tschaub/feature/apidoc_config/
   sandbox/tschaub/feature/apidoc_config/Languages.txt
   sandbox/tschaub/feature/apidoc_config/Menu.txt
   sandbox/tschaub/feature/apidoc_config/OL.css
   sandbox/tschaub/feature/apidoc_config/Topics.txt
   sandbox/tschaub/feature/doc/
   sandbox/tschaub/feature/doc/authors.txt
   sandbox/tschaub/feature/doc/customization
   sandbox/tschaub/feature/doc/readme.txt
   sandbox/tschaub/feature/doc_config/
   sandbox/tschaub/feature/doc_config/Languages.txt
   sandbox/tschaub/feature/doc_config/Menu.txt
   sandbox/tschaub/feature/doc_config/OL.css
   sandbox/tschaub/feature/doc_config/Topics.txt
   sandbox/tschaub/feature/tests/Control/test_DragPan.html
Removed:
   sandbox/tschaub/feature/apidoc_config/Languages.txt
   sandbox/tschaub/feature/apidoc_config/Menu.txt
   sandbox/tschaub/feature/apidoc_config/OL.css
   sandbox/tschaub/feature/apidoc_config/Topics.txt
   sandbox/tschaub/feature/doc/
   sandbox/tschaub/feature/doc/authors.txt
   sandbox/tschaub/feature/doc/customization
   sandbox/tschaub/feature/doc/readme.txt
   sandbox/tschaub/feature/doc_config/Languages.txt
   sandbox/tschaub/feature/doc_config/Menu.txt
   sandbox/tschaub/feature/doc_config/OL.css
   sandbox/tschaub/feature/doc_config/Topics.txt
Modified:
   sandbox/tschaub/feature/examples/example.html
   sandbox/tschaub/feature/lib/OpenLayers.js
   sandbox/tschaub/feature/lib/OpenLayers/Ajax.js
   sandbox/tschaub/feature/lib/OpenLayers/BaseTypes.js
   sandbox/tschaub/feature/lib/OpenLayers/Console.js
   sandbox/tschaub/feature/lib/OpenLayers/Control.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/ArgParser.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/DragPan.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/DrawFeature.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/EditingToolbar.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/KeyboardDefaults.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/LayerSwitcher.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/MouseDefaults.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/MousePosition.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/MouseToolbar.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/NavToolbar.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/Navigation.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/OverviewMap.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/PanZoom.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/PanZoomBar.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/Panel.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/Permalink.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/Scale.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/SelectFeature.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/ZoomBox.js
   sandbox/tschaub/feature/lib/OpenLayers/Control/ZoomToMaxExtent.js
   sandbox/tschaub/feature/lib/OpenLayers/Events.js
   sandbox/tschaub/feature/lib/OpenLayers/Feature.js
   sandbox/tschaub/feature/lib/OpenLayers/Feature/Vector.js
   sandbox/tschaub/feature/lib/OpenLayers/Feature/WFS.js
   sandbox/tschaub/feature/lib/OpenLayers/Format.js
   sandbox/tschaub/feature/lib/OpenLayers/Format/GML.js
   sandbox/tschaub/feature/lib/OpenLayers/Format/GeoRSS.js
   sandbox/tschaub/feature/lib/OpenLayers/Format/KML.js
   sandbox/tschaub/feature/lib/OpenLayers/Format/WFS.js
   sandbox/tschaub/feature/lib/OpenLayers/Format/WKT.js
   sandbox/tschaub/feature/lib/OpenLayers/Geometry.js
   sandbox/tschaub/feature/lib/OpenLayers/Geometry/Collection.js
   sandbox/tschaub/feature/lib/OpenLayers/Geometry/Curve.js
   sandbox/tschaub/feature/lib/OpenLayers/Geometry/LineString.js
   sandbox/tschaub/feature/lib/OpenLayers/Geometry/LinearRing.js
   sandbox/tschaub/feature/lib/OpenLayers/Geometry/MultiLineString.js
   sandbox/tschaub/feature/lib/OpenLayers/Geometry/MultiPoint.js
   sandbox/tschaub/feature/lib/OpenLayers/Geometry/MultiPolygon.js
   sandbox/tschaub/feature/lib/OpenLayers/Geometry/Point.js
   sandbox/tschaub/feature/lib/OpenLayers/Geometry/Polygon.js
   sandbox/tschaub/feature/lib/OpenLayers/Geometry/Rectangle.js
   sandbox/tschaub/feature/lib/OpenLayers/Geometry/Surface.js
   sandbox/tschaub/feature/lib/OpenLayers/Handler.js
   sandbox/tschaub/feature/lib/OpenLayers/Handler/Box.js
   sandbox/tschaub/feature/lib/OpenLayers/Handler/Drag.js
   sandbox/tschaub/feature/lib/OpenLayers/Handler/Feature.js
   sandbox/tschaub/feature/lib/OpenLayers/Handler/Keyboard.js
   sandbox/tschaub/feature/lib/OpenLayers/Handler/MouseWheel.js
   sandbox/tschaub/feature/lib/OpenLayers/Handler/Path.js
   sandbox/tschaub/feature/lib/OpenLayers/Handler/Point.js
   sandbox/tschaub/feature/lib/OpenLayers/Handler/Polygon.js
   sandbox/tschaub/feature/lib/OpenLayers/Icon.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/Boxes.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/EventPane.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/FixedZoomLevels.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/GML.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/GeoRSS.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/Google.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/Grid.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/HTTPRequest.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/Image.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/KaMap.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/MapServer.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/MapServer/Untiled.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/Markers.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/MultiMap.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/TMS.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/Text.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/Vector.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/VirtualEarth.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/WFS.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/WMS.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/WMS/Untiled.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/WorldWind.js
   sandbox/tschaub/feature/lib/OpenLayers/Layer/Yahoo.js
   sandbox/tschaub/feature/lib/OpenLayers/Map.js
   sandbox/tschaub/feature/lib/OpenLayers/Marker.js
   sandbox/tschaub/feature/lib/OpenLayers/Marker/Box.js
   sandbox/tschaub/feature/lib/OpenLayers/Popup.js
   sandbox/tschaub/feature/lib/OpenLayers/Popup/Anchored.js
   sandbox/tschaub/feature/lib/OpenLayers/Popup/AnchoredBubble.js
   sandbox/tschaub/feature/lib/OpenLayers/Renderer.js
   sandbox/tschaub/feature/lib/OpenLayers/Renderer/Elements.js
   sandbox/tschaub/feature/lib/OpenLayers/Renderer/SVG.js
   sandbox/tschaub/feature/lib/OpenLayers/Renderer/VML.js
   sandbox/tschaub/feature/lib/OpenLayers/SingleFile.js
   sandbox/tschaub/feature/lib/OpenLayers/Tile.js
   sandbox/tschaub/feature/lib/OpenLayers/Tile/Image.js
   sandbox/tschaub/feature/lib/OpenLayers/Tile/WFS.js
   sandbox/tschaub/feature/lib/OpenLayers/Util.js
   sandbox/tschaub/feature/tests/Control/test_KeyboardDefaults.html
   sandbox/tschaub/feature/tests/Control/test_LayerSwitcher.html
   sandbox/tschaub/feature/tests/Control/test_NavToolbar.html
   sandbox/tschaub/feature/tests/Control/test_OverviewMap.html
   sandbox/tschaub/feature/tests/Control/test_PanZoom.html
   sandbox/tschaub/feature/tests/Control/test_PanZoomBar.html
   sandbox/tschaub/feature/tests/Control/test_Panel.html
   sandbox/tschaub/feature/tests/Control/test_Permalink.html
   sandbox/tschaub/feature/tests/Control/test_Scale.html
   sandbox/tschaub/feature/tests/Layer/test_HTTPRequest.html
   sandbox/tschaub/feature/tests/Layer/test_Image.html
   sandbox/tschaub/feature/tests/Layer/test_WMS.html
   sandbox/tschaub/feature/tests/Tile/test_Image.html
   sandbox/tschaub/feature/tests/list-tests.html
   sandbox/tschaub/feature/tests/test_Layer.html
Log:
merge r3445:HEAD from trunk

Copied: sandbox/tschaub/feature/apidoc_config (from rev 3597, trunk/openlayers/apidoc_config)

Deleted: sandbox/tschaub/feature/apidoc_config/Languages.txt
===================================================================
--- trunk/openlayers/apidoc_config/Languages.txt	2007-07-05 19:22:38 UTC (rev 3597)
+++ sandbox/tschaub/feature/apidoc_config/Languages.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -1,113 +0,0 @@
-Format: 1.35
-
-# This is the Natural Docs languages file for this project.  If you change
-# anything here, it will apply to THIS PROJECT ONLY.  If you'd like to change
-# something for all your projects, edit the Languages.txt in Natural Docs'
-# Config directory instead.
-
-
-# You can prevent certain file extensions from being scanned like this:
-# Ignore Extensions: [extension] [extension] ...
-
-
-#-------------------------------------------------------------------------------
-# SYNTAX:
-#
-# Unlike other Natural Docs configuration files, in this file all comments
-# MUST be alone on a line.  Some languages deal with the # character, so you
-# cannot put comments on the same line as content.
-#
-# Also, all lists are separated with spaces, not commas, again because some
-# languages may need to use them.
-#
-# Language: [name]
-# Alter Language: [name]
-#    Defines a new language or alters an existing one.  Its name can use any
-#    characters.  If any of the properties below have an add/replace form, you
-#    must use that when using Alter Language.
-#
-#    The language Shebang Script is special.  It's entry is only used for
-#    extensions, and files with those extensions have their shebang (#!) lines
-#    read to determine the real language of the file.  Extensionless files are
-#    always treated this way.
-#
-#    The language Text File is also special.  It's treated as one big comment
-#    so you can put Natural Docs content in them without special symbols.  Also,
-#    if you don't specify a package separator, ignored prefixes, or enum value
-#    behavior, it will copy those settings from the language that is used most
-#    in the source tree.
-#
-# Extensions: [extension] [extension] ...
-# [Add/Replace] Extensions: [extension] [extension] ...
-#    Defines the file extensions of the language's source files.  You can
-#    redefine extensions found in the main languages file.  You can use * to
-#    mean any undefined extension.
-#
-# Shebang Strings: [string] [string] ...
-# [Add/Replace] Shebang Strings: [string] [string] ...
-#    Defines a list of strings that can appear in the shebang (#!) line to
-#    designate that it's part of the language.  You can redefine strings found
-#    in the main languages file.
-#
-# Ignore Prefixes in Index: [prefix] [prefix] ...
-# [Add/Replace] Ignored Prefixes in Index: [prefix] [prefix] ...
-#
-# Ignore [Topic Type] Prefixes in Index: [prefix] [prefix] ...
-# [Add/Replace] Ignored [Topic Type] Prefixes in Index: [prefix] [prefix] ...
-#    Specifies prefixes that should be ignored when sorting symbols in an
-#    index.  Can be specified in general or for a specific topic type.
-#
-#------------------------------------------------------------------------------
-# For basic language support only:
-#
-# Line Comments: [symbol] [symbol] ...
-#    Defines a space-separated list of symbols that are used for line comments,
-#    if any.
-#
-# Block Comments: [opening sym] [closing sym] [opening sym] [closing sym] ...
-#    Defines a space-separated list of symbol pairs that are used for block
-#    comments, if any.
-#
-# Package Separator: [symbol]
-#    Defines the default package separator symbol.  The default is a dot.
-#
-# [Topic Type] Prototype Enders: [symbol] [symbol] ...
-#    When defined, Natural Docs will attempt to get a prototype from the code
-#    immediately following the topic type.  It stops when it reaches one of
-#    these symbols.  Use \n for line breaks.
-#
-# Line Extender: [symbol]
-#    Defines the symbol that allows a prototype to span multiple lines if
-#    normally a line break would end it.
-#
-# Enum Values: [global|under type|under parent]
-#    Defines how enum values are referenced.  The default is global.
-#    global       - Values are always global, referenced as 'value'.
-#    under type   - Values are under the enum type, referenced as
-#               'package.enum.value'.
-#    under parent - Values are under the enum's parent, referenced as
-#               'package.value'.
-#
-# Perl Package: [perl package]
-#    Specifies the Perl package used to fine-tune the language behavior in ways
-#    too complex to do in this file.
-#
-#------------------------------------------------------------------------------
-# For full language support only:
-#
-# Full Language Support: [perl package]
-#    Specifies the Perl package that has the parsing routines necessary for full
-#    language support.
-#
-#-------------------------------------------------------------------------------
-
-# The following languages are defined in the main file, if you'd like to alter
-# them:
-#
-#    Text File, Shebang Script, C/C++, C#, Java, JavaScript, Perl, Python,
-#    PHP, SQL, Visual Basic, Pascal, Assembly, Ada, Tcl, Ruby, Makefile,
-#    ActionScript, ColdFusion, R, Fortran
-
-# If you add a language that you think would be useful to other developers
-# and should be included in Natural Docs by default, please e-mail it to
-# languages [at] naturaldocs [dot] org.

Copied: sandbox/tschaub/feature/apidoc_config/Languages.txt (from rev 3597, trunk/openlayers/apidoc_config/Languages.txt)
===================================================================
--- sandbox/tschaub/feature/apidoc_config/Languages.txt	                        (rev 0)
+++ sandbox/tschaub/feature/apidoc_config/Languages.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -0,0 +1,113 @@
+Format: 1.35
+
+# This is the Natural Docs languages file for this project.  If you change
+# anything here, it will apply to THIS PROJECT ONLY.  If you'd like to change
+# something for all your projects, edit the Languages.txt in Natural Docs'
+# Config directory instead.
+
+
+# You can prevent certain file extensions from being scanned like this:
+# Ignore Extensions: [extension] [extension] ...
+
+
+#-------------------------------------------------------------------------------
+# SYNTAX:
+#
+# Unlike other Natural Docs configuration files, in this file all comments
+# MUST be alone on a line.  Some languages deal with the # character, so you
+# cannot put comments on the same line as content.
+#
+# Also, all lists are separated with spaces, not commas, again because some
+# languages may need to use them.
+#
+# Language: [name]
+# Alter Language: [name]
+#    Defines a new language or alters an existing one.  Its name can use any
+#    characters.  If any of the properties below have an add/replace form, you
+#    must use that when using Alter Language.
+#
+#    The language Shebang Script is special.  It's entry is only used for
+#    extensions, and files with those extensions have their shebang (#!) lines
+#    read to determine the real language of the file.  Extensionless files are
+#    always treated this way.
+#
+#    The language Text File is also special.  It's treated as one big comment
+#    so you can put Natural Docs content in them without special symbols.  Also,
+#    if you don't specify a package separator, ignored prefixes, or enum value
+#    behavior, it will copy those settings from the language that is used most
+#    in the source tree.
+#
+# Extensions: [extension] [extension] ...
+# [Add/Replace] Extensions: [extension] [extension] ...
+#    Defines the file extensions of the language's source files.  You can
+#    redefine extensions found in the main languages file.  You can use * to
+#    mean any undefined extension.
+#
+# Shebang Strings: [string] [string] ...
+# [Add/Replace] Shebang Strings: [string] [string] ...
+#    Defines a list of strings that can appear in the shebang (#!) line to
+#    designate that it's part of the language.  You can redefine strings found
+#    in the main languages file.
+#
+# Ignore Prefixes in Index: [prefix] [prefix] ...
+# [Add/Replace] Ignored Prefixes in Index: [prefix] [prefix] ...
+#
+# Ignore [Topic Type] Prefixes in Index: [prefix] [prefix] ...
+# [Add/Replace] Ignored [Topic Type] Prefixes in Index: [prefix] [prefix] ...
+#    Specifies prefixes that should be ignored when sorting symbols in an
+#    index.  Can be specified in general or for a specific topic type.
+#
+#------------------------------------------------------------------------------
+# For basic language support only:
+#
+# Line Comments: [symbol] [symbol] ...
+#    Defines a space-separated list of symbols that are used for line comments,
+#    if any.
+#
+# Block Comments: [opening sym] [closing sym] [opening sym] [closing sym] ...
+#    Defines a space-separated list of symbol pairs that are used for block
+#    comments, if any.
+#
+# Package Separator: [symbol]
+#    Defines the default package separator symbol.  The default is a dot.
+#
+# [Topic Type] Prototype Enders: [symbol] [symbol] ...
+#    When defined, Natural Docs will attempt to get a prototype from the code
+#    immediately following the topic type.  It stops when it reaches one of
+#    these symbols.  Use \n for line breaks.
+#
+# Line Extender: [symbol]
+#    Defines the symbol that allows a prototype to span multiple lines if
+#    normally a line break would end it.
+#
+# Enum Values: [global|under type|under parent]
+#    Defines how enum values are referenced.  The default is global.
+#    global       - Values are always global, referenced as 'value'.
+#    under type   - Values are under the enum type, referenced as
+#               'package.enum.value'.
+#    under parent - Values are under the enum's parent, referenced as
+#               'package.value'.
+#
+# Perl Package: [perl package]
+#    Specifies the Perl package used to fine-tune the language behavior in ways
+#    too complex to do in this file.
+#
+#------------------------------------------------------------------------------
+# For full language support only:
+#
+# Full Language Support: [perl package]
+#    Specifies the Perl package that has the parsing routines necessary for full
+#    language support.
+#
+#-------------------------------------------------------------------------------
+
+# The following languages are defined in the main file, if you'd like to alter
+# them:
+#
+#    Text File, Shebang Script, C/C++, C#, Java, JavaScript, Perl, Python,
+#    PHP, SQL, Visual Basic, Pascal, Assembly, Ada, Tcl, Ruby, Makefile,
+#    ActionScript, ColdFusion, R, Fortran
+
+# If you add a language that you think would be useful to other developers
+# and should be included in Natural Docs by default, please e-mail it to
+# languages [at] naturaldocs [dot] org.

Deleted: sandbox/tschaub/feature/apidoc_config/Menu.txt
===================================================================
--- trunk/openlayers/apidoc_config/Menu.txt	2007-07-05 19:22:38 UTC (rev 3597)
+++ sandbox/tschaub/feature/apidoc_config/Menu.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -1,197 +0,0 @@
-Format: 1.35
-
-
-Title: OpenLayers
-SubTitle: JavaScript Mapping Library
-
-# You can add a footer to your documentation like this:
-# Footer: [text]
-# If you want to add a copyright notice, this would be the place to do it.
-
-
-# --------------------------------------------------------------------------
-# 
-# Cut and paste the lines below to change the order in which your files
-# appear on the menu.  Don't worry about adding or removing files, Natural
-# Docs will take care of that.
-# 
-# You can further organize the menu by grouping the entries.  Add a
-# "Group: [name] {" line to start a group, and add a "}" to end it.
-# 
-# You can add text and web links to the menu by adding "Text: [text]" and
-# "Link: [name] ([URL])" lines, respectively.
-# 
-# The formatting and comments are auto-generated, so don't worry about
-# neatness when editing the file.  Natural Docs will clean it up the next
-# time it is run.  When working with groups, just deal with the braces and
-# forget about the indentation and comments.
-# 
-# --------------------------------------------------------------------------
-
-
-File: OpenLayers  (OpenLayers.js)
-
-Group: OpenLayers  {
-
-   File: Ajax  (no auto-title, OpenLayers/Ajax.js)
-
-   Group: BaseTypes  {
-
-      File: Base Types  (no auto-title, OpenLayers/BaseTypes.js)
-      File: Bounds  (OpenLayers/BaseTypes/Bounds.js)
-      File: Class  (OpenLayers/BaseTypes/Class.js)
-      File: Element  (OpenLayers/BaseTypes/Element.js)
-      File: LonLat  (OpenLayers/BaseTypes/LonLat.js)
-      File: Pixel  (OpenLayers/BaseTypes/Pixel.js)
-      File: Size  (OpenLayers/BaseTypes/Size.js)
-      }  # Group: BaseTypes
-
-   File: Console  (no auto-title, OpenLayers/Console.js)
-
-   Group: Control  {
-
-      File: Control  (no auto-title, OpenLayers/Control.js)
-      File: ArgParser  (no auto-title, OpenLayers/Control/ArgParser.js)
-      File: ZoomToMaxExtent  (no auto-title, OpenLayers/Control/ZoomToMaxExtent.js)
-      File: OverviewMap  (no auto-title, OpenLayers/Control/OverviewMap.js)
-      File: DragPan  (no auto-title, OpenLayers/Control/DragPan.js)
-      File: DrawFeature  (no auto-title, OpenLayers/Control/DrawFeature.js)
-      File: EditingToolbar  (no auto-title, OpenLayers/Control/EditingToolbar.js)
-      File: KeyboardDefaults  (no auto-title, OpenLayers/Control/KeyboardDefaults.js)
-      File: LayerSwitcher  (no auto-title, OpenLayers/Control/LayerSwitcher.js)
-      File: MouseDefaults  (no auto-title, OpenLayers/Control/MouseDefaults.js)
-      File: MousePosition  (no auto-title, OpenLayers/Control/MousePosition.js)
-      File: MouseToolbar  (no auto-title, OpenLayers/Control/MouseToolbar.js)
-      File: Navigation  (no auto-title, OpenLayers/Control/Navigation.js)
-      File: NavToolbar  (no auto-title, OpenLayers/Control/NavToolbar.js)
-      File: Panel  (no auto-title, OpenLayers/Control/Panel.js)
-      File: PanZoomBar  (no auto-title, OpenLayers/Control/PanZoomBar.js)
-      File: Permalink  (no auto-title, OpenLayers/Control/Permalink.js)
-      File: Scale  (no auto-title, OpenLayers/Control/Scale.js)
-      File: SelectFeature  (no auto-title, OpenLayers/Control/SelectFeature.js)
-      File: ZoomBox  (no auto-title, OpenLayers/Control/ZoomBox.js)
-      File: PanZoom  (OpenLayers/Control/PanZoom.js)
-      }  # Group: Control
-
-   File: Events  (no auto-title, OpenLayers/Events.js)
-
-   Group: Feature  {
-
-      File: Feature  (no auto-title, OpenLayers/Feature.js)
-      File: WFS  (no auto-title, OpenLayers/Feature/WFS.js)
-      File: Vector  (no auto-title, OpenLayers/Feature/Vector.js)
-      }  # Group: Feature
-
-   Group: Format  {
-
-      File: Format  (no auto-title, OpenLayers/Format.js)
-      File: GeoRSS  (OpenLayers/Format/GeoRSS.js)
-      File: GML  (OpenLayers/Format/GML.js)
-      File: KML  (OpenLayers/Format/KML.js)
-      File: WFS  (OpenLayers/Format/WFS.js)
-      File: WKT  (no auto-title, OpenLayers/Format/WKT.js)
-      }  # Group: Format
-
-   Group: Geometry  {
-
-      File: Geometry  (no auto-title, OpenLayers/Geometry.js)
-      File: Collection  (no auto-title, OpenLayers/Geometry/Collection.js)
-      File: Curve  (OpenLayers/Geometry/Curve.js)
-      File: LinearRing  (OpenLayers/Geometry/LinearRing.js)
-      File: LineString  (no auto-title, OpenLayers/Geometry/LineString.js)
-      File: MultiLineString  (no auto-title, OpenLayers/Geometry/MultiLineString.js)
-      File: MultiPoint  (no auto-title, OpenLayers/Geometry/MultiPoint.js)
-      File: MultiPolygon  (no auto-title, OpenLayers/Geometry/MultiPolygon.js)
-      File: Point  (no auto-title, OpenLayers/Geometry/Point.js)
-      File: Polygon  (no auto-title, OpenLayers/Geometry/Polygon.js)
-      File: Rectangle  (OpenLayers/Geometry/Rectangle.js)
-      File: Surface  (OpenLayers/Geometry/Surface.js)
-      }  # Group: Geometry
-
-   Group: Handler  {
-
-      File: Handler  (no auto-title, OpenLayers/Handler.js)
-      File: Box  (OpenLayers/Handler/Box.js)
-      File: Drag  (no auto-title, OpenLayers/Handler/Drag.js)
-      File: Feature  (no auto-title, OpenLayers/Handler/Feature.js)
-      File: Keyboard  (no auto-title, OpenLayers/Handler/Keyboard.js)
-      File: MouseWheel  (no auto-title, OpenLayers/Handler/MouseWheel.js)
-      File: Path  (no auto-title, OpenLayers/Handler/Path.js)
-      File: Point  (no auto-title, OpenLayers/Handler/Point.js)
-      File: Polygon  (OpenLayers/Handler/Polygon.js)
-      }  # Group: Handler
-
-   File: Icon  (no auto-title, OpenLayers/Icon.js)
-
-   Group: Layer  {
-
-      File: Layer  (no auto-title, OpenLayers/Layer.js)
-      File: Boxes  (OpenLayers/Layer/Boxes.js)
-      File: EventPane  (OpenLayers/Layer/EventPane.js)
-      File: FixedZoomLevels  (OpenLayers/Layer/FixedZoomLevels.js)
-      File: GeoRSS  (no auto-title, OpenLayers/Layer/GeoRSS.js)
-      File: GML  (no auto-title, OpenLayers/Layer/GML.js)
-      File: Gooogle  (OpenLayers/Layer/Google.js)
-      File: Grid  (OpenLayers/Layer/Grid.js)
-      File: HTTPRequest  (OpenLayers/Layer/HTTPRequest.js)
-      File: Image  (no auto-title, OpenLayers/Layer/Image.js)
-      File: KaMap  (OpenLayers/Layer/KaMap.js)
-      File: MapServer  (OpenLayers/Layer/MapServer.js)
-      File: MapServer.Untiled  (OpenLayers/Layer/MapServer/Untiled.js)
-      File: Markers  (no auto-title, OpenLayers/Layer/Markers.js)
-      File: MultiMap  (OpenLayers/Layer/MultiMap.js)
-      File: Text  (OpenLayers/Layer/Text.js)
-      File: TMS  (OpenLayers/Layer/TMS.js)
-      File: Vector  (no auto-title, OpenLayers/Layer/Vector.js)
-      File: VirtualEarth  (OpenLayers/Layer/VirtualEarth.js)
-      File: WFS  (OpenLayers/Layer/WFS.js)
-      File: WMS  (no auto-title, OpenLayers/Layer/WMS.js)
-      File: WMS.Untiled  (no auto-title, OpenLayers/Layer/WMS/Untiled.js)
-      File: WorldWind  (OpenLayers/Layer/WorldWind.js)
-      File: Yahoo  (OpenLayers/Layer/Yahoo.js)
-      }  # Group: Layer
-
-   File: Map  (no auto-title, OpenLayers/Map.js)
-
-   Group: Marker  {
-
-      File: Marker  (no auto-title, OpenLayers/Marker.js)
-      File: Box  (no auto-title, OpenLayers/Marker/Box.js)
-      }  # Group: Marker
-
-   Group: Popup  {
-
-      File: Popup  (no auto-title, OpenLayers/Popup.js)
-      File: Anchored  (no auto-title, OpenLayers/Popup/Anchored.js)
-      File: AnchoredBubble  (OpenLayers/Popup/AnchoredBubble.js)
-      }  # Group: Popup
-
-   Group: Renderer  {
-
-      File: Renderer  (OpenLayers/Renderer.js)
-      File: Elements  (no auto-title, OpenLayers/Renderer/Elements.js)
-      File: SVG  (no auto-title, OpenLayers/Renderer/SVG.js)
-      File: VML  (no auto-title, OpenLayers/Renderer/VML.js)
-      }  # Group: Renderer
-
-   Group: Tile  {
-
-      File: Tile  (no auto-title, OpenLayers/Tile.js)
-      File: Image  (no auto-title, OpenLayers/Tile/Image.js)
-      File: WFS  (no auto-title, OpenLayers/Tile/WFS.js)
-      }  # Group: Tile
-
-   File: Util  (OpenLayers/Util.js)
-   }  # Group: OpenLayers
-
-Group: Index  {
-
-   Index: Everything
-   Class Index: Classes
-   Constant Index: Constants
-   Function Index: Functions
-   Property Index: Properties
-   File Index: Files
-   Constructor Index: Constructor
-   }  # Group: Index
-

Copied: sandbox/tschaub/feature/apidoc_config/Menu.txt (from rev 3597, trunk/openlayers/apidoc_config/Menu.txt)
===================================================================
--- sandbox/tschaub/feature/apidoc_config/Menu.txt	                        (rev 0)
+++ sandbox/tschaub/feature/apidoc_config/Menu.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -0,0 +1,197 @@
+Format: 1.35
+
+
+Title: OpenLayers
+SubTitle: JavaScript Mapping Library
+
+# You can add a footer to your documentation like this:
+# Footer: [text]
+# If you want to add a copyright notice, this would be the place to do it.
+
+
+# --------------------------------------------------------------------------
+# 
+# Cut and paste the lines below to change the order in which your files
+# appear on the menu.  Don't worry about adding or removing files, Natural
+# Docs will take care of that.
+# 
+# You can further organize the menu by grouping the entries.  Add a
+# "Group: [name] {" line to start a group, and add a "}" to end it.
+# 
+# You can add text and web links to the menu by adding "Text: [text]" and
+# "Link: [name] ([URL])" lines, respectively.
+# 
+# The formatting and comments are auto-generated, so don't worry about
+# neatness when editing the file.  Natural Docs will clean it up the next
+# time it is run.  When working with groups, just deal with the braces and
+# forget about the indentation and comments.
+# 
+# --------------------------------------------------------------------------
+
+
+File: OpenLayers  (OpenLayers.js)
+
+Group: OpenLayers  {
+
+   File: Ajax  (no auto-title, OpenLayers/Ajax.js)
+
+   Group: BaseTypes  {
+
+      File: Base Types  (no auto-title, OpenLayers/BaseTypes.js)
+      File: Bounds  (OpenLayers/BaseTypes/Bounds.js)
+      File: Class  (OpenLayers/BaseTypes/Class.js)
+      File: Element  (OpenLayers/BaseTypes/Element.js)
+      File: LonLat  (OpenLayers/BaseTypes/LonLat.js)
+      File: Pixel  (OpenLayers/BaseTypes/Pixel.js)
+      File: Size  (OpenLayers/BaseTypes/Size.js)
+      }  # Group: BaseTypes
+
+   File: Console  (no auto-title, OpenLayers/Console.js)
+
+   Group: Control  {
+
+      File: Control  (no auto-title, OpenLayers/Control.js)
+      File: ArgParser  (no auto-title, OpenLayers/Control/ArgParser.js)
+      File: ZoomToMaxExtent  (no auto-title, OpenLayers/Control/ZoomToMaxExtent.js)
+      File: OverviewMap  (no auto-title, OpenLayers/Control/OverviewMap.js)
+      File: DragPan  (no auto-title, OpenLayers/Control/DragPan.js)
+      File: DrawFeature  (no auto-title, OpenLayers/Control/DrawFeature.js)
+      File: EditingToolbar  (no auto-title, OpenLayers/Control/EditingToolbar.js)
+      File: KeyboardDefaults  (no auto-title, OpenLayers/Control/KeyboardDefaults.js)
+      File: LayerSwitcher  (no auto-title, OpenLayers/Control/LayerSwitcher.js)
+      File: MouseDefaults  (no auto-title, OpenLayers/Control/MouseDefaults.js)
+      File: MousePosition  (no auto-title, OpenLayers/Control/MousePosition.js)
+      File: MouseToolbar  (no auto-title, OpenLayers/Control/MouseToolbar.js)
+      File: Navigation  (no auto-title, OpenLayers/Control/Navigation.js)
+      File: NavToolbar  (no auto-title, OpenLayers/Control/NavToolbar.js)
+      File: Panel  (no auto-title, OpenLayers/Control/Panel.js)
+      File: PanZoomBar  (no auto-title, OpenLayers/Control/PanZoomBar.js)
+      File: Permalink  (no auto-title, OpenLayers/Control/Permalink.js)
+      File: Scale  (no auto-title, OpenLayers/Control/Scale.js)
+      File: SelectFeature  (no auto-title, OpenLayers/Control/SelectFeature.js)
+      File: ZoomBox  (no auto-title, OpenLayers/Control/ZoomBox.js)
+      File: PanZoom  (OpenLayers/Control/PanZoom.js)
+      }  # Group: Control
+
+   File: Events  (no auto-title, OpenLayers/Events.js)
+
+   Group: Feature  {
+
+      File: Feature  (no auto-title, OpenLayers/Feature.js)
+      File: WFS  (no auto-title, OpenLayers/Feature/WFS.js)
+      File: Vector  (no auto-title, OpenLayers/Feature/Vector.js)
+      }  # Group: Feature
+
+   Group: Format  {
+
+      File: Format  (no auto-title, OpenLayers/Format.js)
+      File: GeoRSS  (OpenLayers/Format/GeoRSS.js)
+      File: GML  (OpenLayers/Format/GML.js)
+      File: KML  (OpenLayers/Format/KML.js)
+      File: WFS  (OpenLayers/Format/WFS.js)
+      File: WKT  (no auto-title, OpenLayers/Format/WKT.js)
+      }  # Group: Format
+
+   Group: Geometry  {
+
+      File: Geometry  (no auto-title, OpenLayers/Geometry.js)
+      File: Collection  (no auto-title, OpenLayers/Geometry/Collection.js)
+      File: Curve  (OpenLayers/Geometry/Curve.js)
+      File: LinearRing  (OpenLayers/Geometry/LinearRing.js)
+      File: LineString  (no auto-title, OpenLayers/Geometry/LineString.js)
+      File: MultiLineString  (no auto-title, OpenLayers/Geometry/MultiLineString.js)
+      File: MultiPoint  (no auto-title, OpenLayers/Geometry/MultiPoint.js)
+      File: MultiPolygon  (no auto-title, OpenLayers/Geometry/MultiPolygon.js)
+      File: Point  (no auto-title, OpenLayers/Geometry/Point.js)
+      File: Polygon  (no auto-title, OpenLayers/Geometry/Polygon.js)
+      File: Rectangle  (OpenLayers/Geometry/Rectangle.js)
+      File: Surface  (OpenLayers/Geometry/Surface.js)
+      }  # Group: Geometry
+
+   Group: Handler  {
+
+      File: Handler  (no auto-title, OpenLayers/Handler.js)
+      File: Box  (OpenLayers/Handler/Box.js)
+      File: Drag  (no auto-title, OpenLayers/Handler/Drag.js)
+      File: Feature  (no auto-title, OpenLayers/Handler/Feature.js)
+      File: Keyboard  (no auto-title, OpenLayers/Handler/Keyboard.js)
+      File: MouseWheel  (no auto-title, OpenLayers/Handler/MouseWheel.js)
+      File: Path  (no auto-title, OpenLayers/Handler/Path.js)
+      File: Point  (no auto-title, OpenLayers/Handler/Point.js)
+      File: Polygon  (OpenLayers/Handler/Polygon.js)
+      }  # Group: Handler
+
+   File: Icon  (no auto-title, OpenLayers/Icon.js)
+
+   Group: Layer  {
+
+      File: Layer  (no auto-title, OpenLayers/Layer.js)
+      File: Boxes  (OpenLayers/Layer/Boxes.js)
+      File: EventPane  (OpenLayers/Layer/EventPane.js)
+      File: FixedZoomLevels  (OpenLayers/Layer/FixedZoomLevels.js)
+      File: GeoRSS  (no auto-title, OpenLayers/Layer/GeoRSS.js)
+      File: GML  (no auto-title, OpenLayers/Layer/GML.js)
+      File: Gooogle  (OpenLayers/Layer/Google.js)
+      File: Grid  (OpenLayers/Layer/Grid.js)
+      File: HTTPRequest  (OpenLayers/Layer/HTTPRequest.js)
+      File: Image  (no auto-title, OpenLayers/Layer/Image.js)
+      File: KaMap  (OpenLayers/Layer/KaMap.js)
+      File: MapServer  (OpenLayers/Layer/MapServer.js)
+      File: MapServer.Untiled  (OpenLayers/Layer/MapServer/Untiled.js)
+      File: Markers  (no auto-title, OpenLayers/Layer/Markers.js)
+      File: MultiMap  (OpenLayers/Layer/MultiMap.js)
+      File: Text  (OpenLayers/Layer/Text.js)
+      File: TMS  (OpenLayers/Layer/TMS.js)
+      File: Vector  (no auto-title, OpenLayers/Layer/Vector.js)
+      File: VirtualEarth  (OpenLayers/Layer/VirtualEarth.js)
+      File: WFS  (OpenLayers/Layer/WFS.js)
+      File: WMS  (no auto-title, OpenLayers/Layer/WMS.js)
+      File: WMS.Untiled  (no auto-title, OpenLayers/Layer/WMS/Untiled.js)
+      File: WorldWind  (OpenLayers/Layer/WorldWind.js)
+      File: Yahoo  (OpenLayers/Layer/Yahoo.js)
+      }  # Group: Layer
+
+   File: Map  (no auto-title, OpenLayers/Map.js)
+
+   Group: Marker  {
+
+      File: Marker  (no auto-title, OpenLayers/Marker.js)
+      File: Box  (no auto-title, OpenLayers/Marker/Box.js)
+      }  # Group: Marker
+
+   Group: Popup  {
+
+      File: Popup  (no auto-title, OpenLayers/Popup.js)
+      File: Anchored  (no auto-title, OpenLayers/Popup/Anchored.js)
+      File: AnchoredBubble  (OpenLayers/Popup/AnchoredBubble.js)
+      }  # Group: Popup
+
+   Group: Renderer  {
+
+      File: Renderer  (OpenLayers/Renderer.js)
+      File: Elements  (no auto-title, OpenLayers/Renderer/Elements.js)
+      File: SVG  (no auto-title, OpenLayers/Renderer/SVG.js)
+      File: VML  (no auto-title, OpenLayers/Renderer/VML.js)
+      }  # Group: Renderer
+
+   Group: Tile  {
+
+      File: Tile  (no auto-title, OpenLayers/Tile.js)
+      File: Image  (no auto-title, OpenLayers/Tile/Image.js)
+      File: WFS  (no auto-title, OpenLayers/Tile/WFS.js)
+      }  # Group: Tile
+
+   File: Util  (OpenLayers/Util.js)
+   }  # Group: OpenLayers
+
+Group: Index  {
+
+   Index: Everything
+   Class Index: Classes
+   Constant Index: Constants
+   Function Index: Functions
+   Property Index: Properties
+   File Index: Files
+   Constructor Index: Constructor
+   }  # Group: Index
+

Deleted: sandbox/tschaub/feature/apidoc_config/OL.css
===================================================================
--- trunk/openlayers/apidoc_config/OL.css	2007-07-05 19:22:38 UTC (rev 3597)
+++ sandbox/tschaub/feature/apidoc_config/OL.css	2007-07-05 19:51:39 UTC (rev 3598)
@@ -1,20 +0,0 @@
-p {
-    text-indent: 0; margin-bottom: 1em;
-}
-
-.MGroup {
-    font-variant: normal;
-    margin: 0.4em 0 0em 10px
-}
-
-.MTitle {
-    font-variant: normal;
-}
-
-.CGroup .CTitle {
-    font-variant: normal;
-}
-
-.SGroup .SEntry {
-    font-variant: normal;
-}
\ No newline at end of file

Copied: sandbox/tschaub/feature/apidoc_config/OL.css (from rev 3597, trunk/openlayers/apidoc_config/OL.css)
===================================================================
--- sandbox/tschaub/feature/apidoc_config/OL.css	                        (rev 0)
+++ sandbox/tschaub/feature/apidoc_config/OL.css	2007-07-05 19:51:39 UTC (rev 3598)
@@ -0,0 +1,20 @@
+p {
+    text-indent: 0; margin-bottom: 1em;
+}
+
+.MGroup {
+    font-variant: normal;
+    margin: 0.4em 0 0em 10px
+}
+
+.MTitle {
+    font-variant: normal;
+}
+
+.CGroup .CTitle {
+    font-variant: normal;
+}
+
+.SGroup .SEntry {
+    font-variant: normal;
+}
\ No newline at end of file

Deleted: sandbox/tschaub/feature/apidoc_config/Topics.txt
===================================================================
--- trunk/openlayers/apidoc_config/Topics.txt	2007-07-05 19:22:38 UTC (rev 3597)
+++ sandbox/tschaub/feature/apidoc_config/Topics.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -1,108 +0,0 @@
-Format: 1.35
-
-# This is the Natural Docs topics file for this project.  If you change anything
-# here, it will apply to THIS PROJECT ONLY.  If you'd like to change something
-# for all your projects, edit the Topics.txt in Natural Docs' Config directory
-# instead.
-
-
-Ignore Keywords: 
-   function, functions
-   func, funcs
-   procedure, procedures
-   proc, procs
-   routine, routines
-   subroutine, subroutines
-   sub, subs
-   method, methods
-   callback, callbacks
-   property, properties
-   prop, props
-
-
-#-------------------------------------------------------------------------------
-# SYNTAX:
-#
-# Topic Type: [name]
-# Alter Topic Type: [name]
-#    Creates a new topic type or alters one from the main file.  Each type gets
-#    its own index and behavior settings.  Its name can have letters, numbers,
-#    spaces, and these charaters: - / . '
-#
-# Plural: [name]
-#    Sets the plural name of the topic type, if different.
-#
-# Keywords:
-#    [keyword]
-#    [keyword], [plural keyword]
-#    ...
-#    Defines or adds to the list of keywords for the topic type.  They may only
-#    contain letters, numbers, and spaces and are not case sensitive.  Plural
-#    keywords are used for list topics.  You can redefine keywords found in the
-#    main topics file.
-#
-# Index: [yes|no]
-#    Whether the topics get their own index.  Defaults to yes.  Everything is
-#    included in the general index regardless of this setting.
-#
-# Scope: [normal|start|end|always global]
-#    How the topics affects scope.  Defaults to normal.
-#    normal        - Topics stay within the current scope.
-#    start         - Topics start a new scope for all the topics beneath it,
-#                    like class topics.
-#    end           - Topics reset the scope back to global for all the topics
-#                    beneath it.
-#    always global - Topics are defined as global, but do not change the scope
-#                    for any other topics.
-#
-# Class Hierarchy: [yes|no]
-#    Whether the topics are part of the class hierarchy.  Defaults to no.
-#
-# Variable Type: [yes|no]
-#    Whether the topics can be a variable type.  Defaults to no.
-#
-# Page Title If First: [yes|no]
-#    Whether the topic's title becomes the page title if it's the first one in
-#    a file.  Defaults to no.
-#
-# Break Lists: [yes|no]
-#    Whether list topics should be broken into individual topics in the output.
-#    Defaults to no.
-#
-# Can Group With: [type], [type], ...
-#    Defines a list of topic types that this one can possibly be grouped with.
-#    Defaults to none.
-#-------------------------------------------------------------------------------
-
-# The following topics are defined in the main file, if you'd like to alter
-# their behavior or add keywords:
-#
-#    Generic, Class, Interface, Section, File, Group, Function, Variable,
-#    Property, Type, Constant, Enumeration, Event, Delegate, Macro,
-#    Database, Database Table, Database View, Database Index, Database
-#    Cursor, Database Trigger, Cookie, Build Target
-
-# If you add something that you think would be useful to other developers
-# and should be included in Natural Docs by default, please e-mail it to
-# topics [at] naturaldocs [dot] org.
-
-
-Topic Type: Constructor
-
-   Class Hierarchy: Yes
-   Keywords:
-      constructor
-      initialize
-
-
-Alter Topic Type: Function
-
-   Add Keywords:
-      apimethod
-      apifunction
-
-
-Alter Topic Type: Property
-
-   Add Keywords:
-      apiproperty

Copied: sandbox/tschaub/feature/apidoc_config/Topics.txt (from rev 3597, trunk/openlayers/apidoc_config/Topics.txt)
===================================================================
--- sandbox/tschaub/feature/apidoc_config/Topics.txt	                        (rev 0)
+++ sandbox/tschaub/feature/apidoc_config/Topics.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -0,0 +1,108 @@
+Format: 1.35
+
+# This is the Natural Docs topics file for this project.  If you change anything
+# here, it will apply to THIS PROJECT ONLY.  If you'd like to change something
+# for all your projects, edit the Topics.txt in Natural Docs' Config directory
+# instead.
+
+
+Ignore Keywords: 
+   function, functions
+   func, funcs
+   procedure, procedures
+   proc, procs
+   routine, routines
+   subroutine, subroutines
+   sub, subs
+   method, methods
+   callback, callbacks
+   property, properties
+   prop, props
+
+
+#-------------------------------------------------------------------------------
+# SYNTAX:
+#
+# Topic Type: [name]
+# Alter Topic Type: [name]
+#    Creates a new topic type or alters one from the main file.  Each type gets
+#    its own index and behavior settings.  Its name can have letters, numbers,
+#    spaces, and these charaters: - / . '
+#
+# Plural: [name]
+#    Sets the plural name of the topic type, if different.
+#
+# Keywords:
+#    [keyword]
+#    [keyword], [plural keyword]
+#    ...
+#    Defines or adds to the list of keywords for the topic type.  They may only
+#    contain letters, numbers, and spaces and are not case sensitive.  Plural
+#    keywords are used for list topics.  You can redefine keywords found in the
+#    main topics file.
+#
+# Index: [yes|no]
+#    Whether the topics get their own index.  Defaults to yes.  Everything is
+#    included in the general index regardless of this setting.
+#
+# Scope: [normal|start|end|always global]
+#    How the topics affects scope.  Defaults to normal.
+#    normal        - Topics stay within the current scope.
+#    start         - Topics start a new scope for all the topics beneath it,
+#                    like class topics.
+#    end           - Topics reset the scope back to global for all the topics
+#                    beneath it.
+#    always global - Topics are defined as global, but do not change the scope
+#                    for any other topics.
+#
+# Class Hierarchy: [yes|no]
+#    Whether the topics are part of the class hierarchy.  Defaults to no.
+#
+# Variable Type: [yes|no]
+#    Whether the topics can be a variable type.  Defaults to no.
+#
+# Page Title If First: [yes|no]
+#    Whether the topic's title becomes the page title if it's the first one in
+#    a file.  Defaults to no.
+#
+# Break Lists: [yes|no]
+#    Whether list topics should be broken into individual topics in the output.
+#    Defaults to no.
+#
+# Can Group With: [type], [type], ...
+#    Defines a list of topic types that this one can possibly be grouped with.
+#    Defaults to none.
+#-------------------------------------------------------------------------------
+
+# The following topics are defined in the main file, if you'd like to alter
+# their behavior or add keywords:
+#
+#    Generic, Class, Interface, Section, File, Group, Function, Variable,
+#    Property, Type, Constant, Enumeration, Event, Delegate, Macro,
+#    Database, Database Table, Database View, Database Index, Database
+#    Cursor, Database Trigger, Cookie, Build Target
+
+# If you add something that you think would be useful to other developers
+# and should be included in Natural Docs by default, please e-mail it to
+# topics [at] naturaldocs [dot] org.
+
+
+Topic Type: Constructor
+
+   Class Hierarchy: Yes
+   Keywords:
+      constructor
+      initialize
+
+
+Alter Topic Type: Function
+
+   Add Keywords:
+      apimethod
+      apifunction
+
+
+Alter Topic Type: Property
+
+   Add Keywords:
+      apiproperty

Copied: sandbox/tschaub/feature/doc (from rev 3597, trunk/openlayers/doc)

Deleted: sandbox/tschaub/feature/doc/authors.txt
===================================================================
--- trunk/openlayers/doc/authors.txt	2007-07-05 19:22:38 UTC (rev 3597)
+++ sandbox/tschaub/feature/doc/authors.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -1,25 +0,0 @@
-OpenLayers contributors:
-Howard Butler
-Bertil Chaupis                                                               
-John Cole
-Jeff Dege
-Schuyler Erle
-Christian López Espínola
-John Frank
-Sean Gilles
-Pierre Giraud                                                                
-Andreas Hocevar
-Philip Lindsay
-Corey Puffault
-Tim Schaub
-Christopher Schmidt
-Cameron Shorter                                                              
-Paul Spencer                                                                 
-James Stembridge
-Erik Uzureau
-Bill Woodall
-Steve Woodbridge
-
-
-OpenLayers is graciously supported by MetaCarta, Inc.
-<http://www.metacarta.com>.

Copied: sandbox/tschaub/feature/doc/authors.txt (from rev 3597, trunk/openlayers/doc/authors.txt)
===================================================================
--- sandbox/tschaub/feature/doc/authors.txt	                        (rev 0)
+++ sandbox/tschaub/feature/doc/authors.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -0,0 +1,25 @@
+OpenLayers contributors:
+Howard Butler
+Bertil Chaupis                                                               
+John Cole
+Jeff Dege
+Schuyler Erle
+Christian López Espínola
+John Frank
+Sean Gilles
+Pierre Giraud                                                                
+Andreas Hocevar
+Philip Lindsay
+Corey Puffault
+Tim Schaub
+Christopher Schmidt
+Cameron Shorter                                                              
+Paul Spencer                                                                 
+James Stembridge
+Erik Uzureau
+Bill Woodall
+Steve Woodbridge
+
+
+OpenLayers is graciously supported by MetaCarta, Inc.
+<http://www.metacarta.com>.

Deleted: sandbox/tschaub/feature/doc/customization
===================================================================
--- trunk/openlayers/doc/customization	2007-07-05 19:22:38 UTC (rev 3597)
+++ sandbox/tschaub/feature/doc/customization	2007-07-05 19:51:39 UTC (rev 3598)
@@ -1,49 +0,0 @@
-Customizing OpenLayers
-======================
-
-OpenLayers is designed to fit many needs -- fitting in alongside all kinds of
-various applications which are currently in use. 
-
-Currently, OpenLayers supports a 'theme' option when creating a map. This 
-theme option allows you to specify the location of a CSS theme which should
-be included.
-
-A default theme is available as an example in the theme/ directory: the setup
-is:
-
- * theme/
- * theme/default/
- * theme/default/style.css
- * theme/default/img/
-
-Currently, the OpenLayers code does not support class names, and therefore,
-it is not possible to control many aspects of OpenLayers code with CSS 
-classes. However, with this framework in place, we expect to invest time 
-to make existing features and new features use the CSS theming framework
-where apropriate. 
-
-
-Class Naming
-============
-Elements should have class names which are descriptive of the Javascript
-class from which they come. For example, the main layer switcher element
-in the OpenLayers.Control.LayerSwitcher would be classed:
-
-  olControlLayerSwitcher
-
-This would allow users to add to their style.css class in their theme,
-changing, for example: 
-
-::
-  
-  .olControlLayerSwitcher input {
-    width:10px;
-  }
-
-Sub elements of a particular control can add to the class name:
-
-::
-
-  .olControlLayerSwitcherBaseLabel {
-      color: red;
-  }

Copied: sandbox/tschaub/feature/doc/customization (from rev 3597, trunk/openlayers/doc/customization)
===================================================================
--- sandbox/tschaub/feature/doc/customization	                        (rev 0)
+++ sandbox/tschaub/feature/doc/customization	2007-07-05 19:51:39 UTC (rev 3598)
@@ -0,0 +1,49 @@
+Customizing OpenLayers
+======================
+
+OpenLayers is designed to fit many needs -- fitting in alongside all kinds of
+various applications which are currently in use. 
+
+Currently, OpenLayers supports a 'theme' option when creating a map. This 
+theme option allows you to specify the location of a CSS theme which should
+be included.
+
+A default theme is available as an example in the theme/ directory: the setup
+is:
+
+ * theme/
+ * theme/default/
+ * theme/default/style.css
+ * theme/default/img/
+
+Currently, the OpenLayers code does not support class names, and therefore,
+it is not possible to control many aspects of OpenLayers code with CSS 
+classes. However, with this framework in place, we expect to invest time 
+to make existing features and new features use the CSS theming framework
+where apropriate. 
+
+
+Class Naming
+============
+Elements should have class names which are descriptive of the Javascript
+class from which they come. For example, the main layer switcher element
+in the OpenLayers.Control.LayerSwitcher would be classed:
+
+  olControlLayerSwitcher
+
+This would allow users to add to their style.css class in their theme,
+changing, for example: 
+
+::
+  
+  .olControlLayerSwitcher input {
+    width:10px;
+  }
+
+Sub elements of a particular control can add to the class name:
+
+::
+
+  .olControlLayerSwitcherBaseLabel {
+      color: red;
+  }

Deleted: sandbox/tschaub/feature/doc/readme.txt
===================================================================
--- trunk/openlayers/doc/readme.txt	2007-07-05 19:22:38 UTC (rev 3597)
+++ sandbox/tschaub/feature/doc/readme.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -1,3 +0,0 @@
-Automatically generated OpenLayers API documentation is online:
-
-  http://dev.openlayers.org/docs/overview-tree.html

Copied: sandbox/tschaub/feature/doc/readme.txt (from rev 3597, trunk/openlayers/doc/readme.txt)
===================================================================
--- sandbox/tschaub/feature/doc/readme.txt	                        (rev 0)
+++ sandbox/tschaub/feature/doc/readme.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -0,0 +1,3 @@
+Automatically generated OpenLayers API documentation is online:
+
+  http://dev.openlayers.org/docs/overview-tree.html

Copied: sandbox/tschaub/feature/doc_config (from rev 3597, trunk/openlayers/doc_config)

Deleted: sandbox/tschaub/feature/doc_config/Languages.txt
===================================================================
--- trunk/openlayers/doc_config/Languages.txt	2007-07-05 19:22:38 UTC (rev 3597)
+++ sandbox/tschaub/feature/doc_config/Languages.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -1,113 +0,0 @@
-Format: 1.35
-
-# This is the Natural Docs languages file for this project.  If you change
-# anything here, it will apply to THIS PROJECT ONLY.  If you'd like to change
-# something for all your projects, edit the Languages.txt in Natural Docs'
-# Config directory instead.
-
-
-# You can prevent certain file extensions from being scanned like this:
-# Ignore Extensions: [extension] [extension] ...
-
-
-#-------------------------------------------------------------------------------
-# SYNTAX:
-#
-# Unlike other Natural Docs configuration files, in this file all comments
-# MUST be alone on a line.  Some languages deal with the # character, so you
-# cannot put comments on the same line as content.
-#
-# Also, all lists are separated with spaces, not commas, again because some
-# languages may need to use them.
-#
-# Language: [name]
-# Alter Language: [name]
-#    Defines a new language or alters an existing one.  Its name can use any
-#    characters.  If any of the properties below have an add/replace form, you
-#    must use that when using Alter Language.
-#
-#    The language Shebang Script is special.  It's entry is only used for
-#    extensions, and files with those extensions have their shebang (#!) lines
-#    read to determine the real language of the file.  Extensionless files are
-#    always treated this way.
-#
-#    The language Text File is also special.  It's treated as one big comment
-#    so you can put Natural Docs content in them without special symbols.  Also,
-#    if you don't specify a package separator, ignored prefixes, or enum value
-#    behavior, it will copy those settings from the language that is used most
-#    in the source tree.
-#
-# Extensions: [extension] [extension] ...
-# [Add/Replace] Extensions: [extension] [extension] ...
-#    Defines the file extensions of the language's source files.  You can
-#    redefine extensions found in the main languages file.  You can use * to
-#    mean any undefined extension.
-#
-# Shebang Strings: [string] [string] ...
-# [Add/Replace] Shebang Strings: [string] [string] ...
-#    Defines a list of strings that can appear in the shebang (#!) line to
-#    designate that it's part of the language.  You can redefine strings found
-#    in the main languages file.
-#
-# Ignore Prefixes in Index: [prefix] [prefix] ...
-# [Add/Replace] Ignored Prefixes in Index: [prefix] [prefix] ...
-#
-# Ignore [Topic Type] Prefixes in Index: [prefix] [prefix] ...
-# [Add/Replace] Ignored [Topic Type] Prefixes in Index: [prefix] [prefix] ...
-#    Specifies prefixes that should be ignored when sorting symbols in an
-#    index.  Can be specified in general or for a specific topic type.
-#
-#------------------------------------------------------------------------------
-# For basic language support only:
-#
-# Line Comments: [symbol] [symbol] ...
-#    Defines a space-separated list of symbols that are used for line comments,
-#    if any.
-#
-# Block Comments: [opening sym] [closing sym] [opening sym] [closing sym] ...
-#    Defines a space-separated list of symbol pairs that are used for block
-#    comments, if any.
-#
-# Package Separator: [symbol]
-#    Defines the default package separator symbol.  The default is a dot.
-#
-# [Topic Type] Prototype Enders: [symbol] [symbol] ...
-#    When defined, Natural Docs will attempt to get a prototype from the code
-#    immediately following the topic type.  It stops when it reaches one of
-#    these symbols.  Use \n for line breaks.
-#
-# Line Extender: [symbol]
-#    Defines the symbol that allows a prototype to span multiple lines if
-#    normally a line break would end it.
-#
-# Enum Values: [global|under type|under parent]
-#    Defines how enum values are referenced.  The default is global.
-#    global       - Values are always global, referenced as 'value'.
-#    under type   - Values are under the enum type, referenced as
-#               'package.enum.value'.
-#    under parent - Values are under the enum's parent, referenced as
-#               'package.value'.
-#
-# Perl Package: [perl package]
-#    Specifies the Perl package used to fine-tune the language behavior in ways
-#    too complex to do in this file.
-#
-#------------------------------------------------------------------------------
-# For full language support only:
-#
-# Full Language Support: [perl package]
-#    Specifies the Perl package that has the parsing routines necessary for full
-#    language support.
-#
-#-------------------------------------------------------------------------------
-
-# The following languages are defined in the main file, if you'd like to alter
-# them:
-#
-#    Text File, Shebang Script, C/C++, C#, Java, JavaScript, Perl, Python,
-#    PHP, SQL, Visual Basic, Pascal, Assembly, Ada, Tcl, Ruby, Makefile,
-#    ActionScript, ColdFusion, R, Fortran
-
-# If you add a language that you think would be useful to other developers
-# and should be included in Natural Docs by default, please e-mail it to
-# languages [at] naturaldocs [dot] org.

Copied: sandbox/tschaub/feature/doc_config/Languages.txt (from rev 3597, trunk/openlayers/doc_config/Languages.txt)
===================================================================
--- sandbox/tschaub/feature/doc_config/Languages.txt	                        (rev 0)
+++ sandbox/tschaub/feature/doc_config/Languages.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -0,0 +1,113 @@
+Format: 1.35
+
+# This is the Natural Docs languages file for this project.  If you change
+# anything here, it will apply to THIS PROJECT ONLY.  If you'd like to change
+# something for all your projects, edit the Languages.txt in Natural Docs'
+# Config directory instead.
+
+
+# You can prevent certain file extensions from being scanned like this:
+# Ignore Extensions: [extension] [extension] ...
+
+
+#-------------------------------------------------------------------------------
+# SYNTAX:
+#
+# Unlike other Natural Docs configuration files, in this file all comments
+# MUST be alone on a line.  Some languages deal with the # character, so you
+# cannot put comments on the same line as content.
+#
+# Also, all lists are separated with spaces, not commas, again because some
+# languages may need to use them.
+#
+# Language: [name]
+# Alter Language: [name]
+#    Defines a new language or alters an existing one.  Its name can use any
+#    characters.  If any of the properties below have an add/replace form, you
+#    must use that when using Alter Language.
+#
+#    The language Shebang Script is special.  It's entry is only used for
+#    extensions, and files with those extensions have their shebang (#!) lines
+#    read to determine the real language of the file.  Extensionless files are
+#    always treated this way.
+#
+#    The language Text File is also special.  It's treated as one big comment
+#    so you can put Natural Docs content in them without special symbols.  Also,
+#    if you don't specify a package separator, ignored prefixes, or enum value
+#    behavior, it will copy those settings from the language that is used most
+#    in the source tree.
+#
+# Extensions: [extension] [extension] ...
+# [Add/Replace] Extensions: [extension] [extension] ...
+#    Defines the file extensions of the language's source files.  You can
+#    redefine extensions found in the main languages file.  You can use * to
+#    mean any undefined extension.
+#
+# Shebang Strings: [string] [string] ...
+# [Add/Replace] Shebang Strings: [string] [string] ...
+#    Defines a list of strings that can appear in the shebang (#!) line to
+#    designate that it's part of the language.  You can redefine strings found
+#    in the main languages file.
+#
+# Ignore Prefixes in Index: [prefix] [prefix] ...
+# [Add/Replace] Ignored Prefixes in Index: [prefix] [prefix] ...
+#
+# Ignore [Topic Type] Prefixes in Index: [prefix] [prefix] ...
+# [Add/Replace] Ignored [Topic Type] Prefixes in Index: [prefix] [prefix] ...
+#    Specifies prefixes that should be ignored when sorting symbols in an
+#    index.  Can be specified in general or for a specific topic type.
+#
+#------------------------------------------------------------------------------
+# For basic language support only:
+#
+# Line Comments: [symbol] [symbol] ...
+#    Defines a space-separated list of symbols that are used for line comments,
+#    if any.
+#
+# Block Comments: [opening sym] [closing sym] [opening sym] [closing sym] ...
+#    Defines a space-separated list of symbol pairs that are used for block
+#    comments, if any.
+#
+# Package Separator: [symbol]
+#    Defines the default package separator symbol.  The default is a dot.
+#
+# [Topic Type] Prototype Enders: [symbol] [symbol] ...
+#    When defined, Natural Docs will attempt to get a prototype from the code
+#    immediately following the topic type.  It stops when it reaches one of
+#    these symbols.  Use \n for line breaks.
+#
+# Line Extender: [symbol]
+#    Defines the symbol that allows a prototype to span multiple lines if
+#    normally a line break would end it.
+#
+# Enum Values: [global|under type|under parent]
+#    Defines how enum values are referenced.  The default is global.
+#    global       - Values are always global, referenced as 'value'.
+#    under type   - Values are under the enum type, referenced as
+#               'package.enum.value'.
+#    under parent - Values are under the enum's parent, referenced as
+#               'package.value'.
+#
+# Perl Package: [perl package]
+#    Specifies the Perl package used to fine-tune the language behavior in ways
+#    too complex to do in this file.
+#
+#------------------------------------------------------------------------------
+# For full language support only:
+#
+# Full Language Support: [perl package]
+#    Specifies the Perl package that has the parsing routines necessary for full
+#    language support.
+#
+#-------------------------------------------------------------------------------
+
+# The following languages are defined in the main file, if you'd like to alter
+# them:
+#
+#    Text File, Shebang Script, C/C++, C#, Java, JavaScript, Perl, Python,
+#    PHP, SQL, Visual Basic, Pascal, Assembly, Ada, Tcl, Ruby, Makefile,
+#    ActionScript, ColdFusion, R, Fortran
+
+# If you add a language that you think would be useful to other developers
+# and should be included in Natural Docs by default, please e-mail it to
+# languages [at] naturaldocs [dot] org.

Deleted: sandbox/tschaub/feature/doc_config/Menu.txt
===================================================================
--- trunk/openlayers/doc_config/Menu.txt	2007-07-05 19:22:38 UTC (rev 3597)
+++ sandbox/tschaub/feature/doc_config/Menu.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -1,197 +0,0 @@
-Format: 1.35
-
-
-Title: OpenLayers
-SubTitle: JavaScript Mapping Library
-
-# You can add a footer to your documentation like this:
-# Footer: [text]
-# If you want to add a copyright notice, this would be the place to do it.
-
-
-# --------------------------------------------------------------------------
-# 
-# Cut and paste the lines below to change the order in which your files
-# appear on the menu.  Don't worry about adding or removing files, Natural
-# Docs will take care of that.
-# 
-# You can further organize the menu by grouping the entries.  Add a
-# "Group: [name] {" line to start a group, and add a "}" to end it.
-# 
-# You can add text and web links to the menu by adding "Text: [text]" and
-# "Link: [name] ([URL])" lines, respectively.
-# 
-# The formatting and comments are auto-generated, so don't worry about
-# neatness when editing the file.  Natural Docs will clean it up the next
-# time it is run.  When working with groups, just deal with the braces and
-# forget about the indentation and comments.
-# 
-# --------------------------------------------------------------------------
-
-
-File: OpenLayers  (OpenLayers.js)
-
-Group: OpenLayers  {
-
-   File: Ajax  (no auto-title, OpenLayers/Ajax.js)
-
-   Group: BaseTypes  {
-
-      File: Base Types  (no auto-title, OpenLayers/BaseTypes.js)
-      File: Bounds  (OpenLayers/BaseTypes/Bounds.js)
-      File: Class  (OpenLayers/BaseTypes/Class.js)
-      File: Element  (OpenLayers/BaseTypes/Element.js)
-      File: LonLat  (OpenLayers/BaseTypes/LonLat.js)
-      File: Pixel  (OpenLayers/BaseTypes/Pixel.js)
-      File: Size  (OpenLayers/BaseTypes/Size.js)
-      }  # Group: BaseTypes
-
-   File: Console  (no auto-title, OpenLayers/Console.js)
-
-   Group: Control  {
-
-      File: Control  (no auto-title, OpenLayers/Control.js)
-      File: ArgParser  (no auto-title, OpenLayers/Control/ArgParser.js)
-      File: ZoomToMaxExtent  (no auto-title, OpenLayers/Control/ZoomToMaxExtent.js)
-      File: OverviewMap  (no auto-title, OpenLayers/Control/OverviewMap.js)
-      File: DragPan  (no auto-title, OpenLayers/Control/DragPan.js)
-      File: DrawFeature  (no auto-title, OpenLayers/Control/DrawFeature.js)
-      File: EditingToolbar  (no auto-title, OpenLayers/Control/EditingToolbar.js)
-      File: KeyboardDefaults  (no auto-title, OpenLayers/Control/KeyboardDefaults.js)
-      File: LayerSwitcher  (no auto-title, OpenLayers/Control/LayerSwitcher.js)
-      File: MouseDefaults  (no auto-title, OpenLayers/Control/MouseDefaults.js)
-      File: MousePosition  (no auto-title, OpenLayers/Control/MousePosition.js)
-      File: MouseToolbar  (no auto-title, OpenLayers/Control/MouseToolbar.js)
-      File: Navigation  (no auto-title, OpenLayers/Control/Navigation.js)
-      File: NavToolbar  (no auto-title, OpenLayers/Control/NavToolbar.js)
-      File: Panel  (no auto-title, OpenLayers/Control/Panel.js)
-      File: PanZoomBar  (no auto-title, OpenLayers/Control/PanZoomBar.js)
-      File: Permalink  (no auto-title, OpenLayers/Control/Permalink.js)
-      File: Scale  (no auto-title, OpenLayers/Control/Scale.js)
-      File: SelectFeature  (no auto-title, OpenLayers/Control/SelectFeature.js)
-      File: ZoomBox  (no auto-title, OpenLayers/Control/ZoomBox.js)
-      File: PanZoom  (OpenLayers/Control/PanZoom.js)
-      }  # Group: Control
-
-   File: Events  (no auto-title, OpenLayers/Events.js)
-
-   Group: Feature  {
-
-      File: Feature  (no auto-title, OpenLayers/Feature.js)
-      File: WFS  (no auto-title, OpenLayers/Feature/WFS.js)
-      File: Vector  (no auto-title, OpenLayers/Feature/Vector.js)
-      }  # Group: Feature
-
-   Group: Format  {
-
-      File: Format  (no auto-title, OpenLayers/Format.js)
-      File: GeoRSS  (OpenLayers/Format/GeoRSS.js)
-      File: GML  (OpenLayers/Format/GML.js)
-      File: KML  (OpenLayers/Format/KML.js)
-      File: WFS  (OpenLayers/Format/WFS.js)
-      File: WKT  (no auto-title, OpenLayers/Format/WKT.js)
-      }  # Group: Format
-
-   Group: Geometry  {
-
-      File: Geometry  (no auto-title, OpenLayers/Geometry.js)
-      File: Collection  (no auto-title, OpenLayers/Geometry/Collection.js)
-      File: Curve  (OpenLayers/Geometry/Curve.js)
-      File: LinearRing  (OpenLayers/Geometry/LinearRing.js)
-      File: LineString  (no auto-title, OpenLayers/Geometry/LineString.js)
-      File: MultiLineString  (no auto-title, OpenLayers/Geometry/MultiLineString.js)
-      File: MultiPoint  (no auto-title, OpenLayers/Geometry/MultiPoint.js)
-      File: MultiPolygon  (no auto-title, OpenLayers/Geometry/MultiPolygon.js)
-      File: Point  (no auto-title, OpenLayers/Geometry/Point.js)
-      File: Polygon  (no auto-title, OpenLayers/Geometry/Polygon.js)
-      File: Rectangle  (OpenLayers/Geometry/Rectangle.js)
-      File: Surface  (OpenLayers/Geometry/Surface.js)
-      }  # Group: Geometry
-
-   Group: Handler  {
-
-      File: Handler  (no auto-title, OpenLayers/Handler.js)
-      File: Box  (OpenLayers/Handler/Box.js)
-      File: Drag  (no auto-title, OpenLayers/Handler/Drag.js)
-      File: Feature  (no auto-title, OpenLayers/Handler/Feature.js)
-      File: Keyboard  (no auto-title, OpenLayers/Handler/Keyboard.js)
-      File: MouseWheel  (no auto-title, OpenLayers/Handler/MouseWheel.js)
-      File: Path  (no auto-title, OpenLayers/Handler/Path.js)
-      File: Point  (no auto-title, OpenLayers/Handler/Point.js)
-      File: Polygon  (OpenLayers/Handler/Polygon.js)
-      }  # Group: Handler
-
-   File: Icon  (no auto-title, OpenLayers/Icon.js)
-
-   Group: Layer  {
-
-      File: Layer  (no auto-title, OpenLayers/Layer.js)
-      File: Boxes  (OpenLayers/Layer/Boxes.js)
-      File: EventPane  (OpenLayers/Layer/EventPane.js)
-      File: FixedZoomLevels  (OpenLayers/Layer/FixedZoomLevels.js)
-      File: GeoRSS  (no auto-title, OpenLayers/Layer/GeoRSS.js)
-      File: GML  (no auto-title, OpenLayers/Layer/GML.js)
-      File: Gooogle  (OpenLayers/Layer/Google.js)
-      File: Grid  (OpenLayers/Layer/Grid.js)
-      File: HTTPRequest  (OpenLayers/Layer/HTTPRequest.js)
-      File: Image  (no auto-title, OpenLayers/Layer/Image.js)
-      File: KaMap  (OpenLayers/Layer/KaMap.js)
-      File: MapServer  (OpenLayers/Layer/MapServer.js)
-      File: MapServer.Untiled  (OpenLayers/Layer/MapServer/Untiled.js)
-      File: Markers  (no auto-title, OpenLayers/Layer/Markers.js)
-      File: MultiMap  (OpenLayers/Layer/MultiMap.js)
-      File: Text  (OpenLayers/Layer/Text.js)
-      File: TMS  (OpenLayers/Layer/TMS.js)
-      File: Vector  (no auto-title, OpenLayers/Layer/Vector.js)
-      File: VirtualEarth  (OpenLayers/Layer/VirtualEarth.js)
-      File: WFS  (OpenLayers/Layer/WFS.js)
-      File: WMS  (no auto-title, OpenLayers/Layer/WMS.js)
-      File: WMS.Untiled  (no auto-title, OpenLayers/Layer/WMS/Untiled.js)
-      File: WorldWind  (OpenLayers/Layer/WorldWind.js)
-      File: Yahoo  (OpenLayers/Layer/Yahoo.js)
-      }  # Group: Layer
-
-   File: Map  (no auto-title, OpenLayers/Map.js)
-
-   Group: Marker  {
-
-      File: Marker  (no auto-title, OpenLayers/Marker.js)
-      File: Box  (no auto-title, OpenLayers/Marker/Box.js)
-      }  # Group: Marker
-
-   Group: Popup  {
-
-      File: Popup  (no auto-title, OpenLayers/Popup.js)
-      File: Anchored  (no auto-title, OpenLayers/Popup/Anchored.js)
-      File: AnchoredBubble  (OpenLayers/Popup/AnchoredBubble.js)
-      }  # Group: Popup
-
-   Group: Renderer  {
-
-      File: Renderer  (OpenLayers/Renderer.js)
-      File: Elements  (no auto-title, OpenLayers/Renderer/Elements.js)
-      File: SVG  (no auto-title, OpenLayers/Renderer/SVG.js)
-      File: VML  (no auto-title, OpenLayers/Renderer/VML.js)
-      }  # Group: Renderer
-
-   Group: Tile  {
-
-      File: Tile  (no auto-title, OpenLayers/Tile.js)
-      File: Image  (no auto-title, OpenLayers/Tile/Image.js)
-      File: WFS  (no auto-title, OpenLayers/Tile/WFS.js)
-      }  # Group: Tile
-
-   File: Util  (OpenLayers/Util.js)
-   }  # Group: OpenLayers
-
-Group: Index  {
-
-   Index: Everything
-   Class Index: Classes
-   Constant Index: Constants
-   Function Index: Functions
-   Property Index: Properties
-   File Index: Files
-   Constructor Index: Constructor
-   }  # Group: Index
-

Copied: sandbox/tschaub/feature/doc_config/Menu.txt (from rev 3597, trunk/openlayers/doc_config/Menu.txt)
===================================================================
--- sandbox/tschaub/feature/doc_config/Menu.txt	                        (rev 0)
+++ sandbox/tschaub/feature/doc_config/Menu.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -0,0 +1,197 @@
+Format: 1.35
+
+
+Title: OpenLayers
+SubTitle: JavaScript Mapping Library
+
+# You can add a footer to your documentation like this:
+# Footer: [text]
+# If you want to add a copyright notice, this would be the place to do it.
+
+
+# --------------------------------------------------------------------------
+# 
+# Cut and paste the lines below to change the order in which your files
+# appear on the menu.  Don't worry about adding or removing files, Natural
+# Docs will take care of that.
+# 
+# You can further organize the menu by grouping the entries.  Add a
+# "Group: [name] {" line to start a group, and add a "}" to end it.
+# 
+# You can add text and web links to the menu by adding "Text: [text]" and
+# "Link: [name] ([URL])" lines, respectively.
+# 
+# The formatting and comments are auto-generated, so don't worry about
+# neatness when editing the file.  Natural Docs will clean it up the next
+# time it is run.  When working with groups, just deal with the braces and
+# forget about the indentation and comments.
+# 
+# --------------------------------------------------------------------------
+
+
+File: OpenLayers  (OpenLayers.js)
+
+Group: OpenLayers  {
+
+   File: Ajax  (no auto-title, OpenLayers/Ajax.js)
+
+   Group: BaseTypes  {
+
+      File: Base Types  (no auto-title, OpenLayers/BaseTypes.js)
+      File: Bounds  (OpenLayers/BaseTypes/Bounds.js)
+      File: Class  (OpenLayers/BaseTypes/Class.js)
+      File: Element  (OpenLayers/BaseTypes/Element.js)
+      File: LonLat  (OpenLayers/BaseTypes/LonLat.js)
+      File: Pixel  (OpenLayers/BaseTypes/Pixel.js)
+      File: Size  (OpenLayers/BaseTypes/Size.js)
+      }  # Group: BaseTypes
+
+   File: Console  (no auto-title, OpenLayers/Console.js)
+
+   Group: Control  {
+
+      File: Control  (no auto-title, OpenLayers/Control.js)
+      File: ArgParser  (no auto-title, OpenLayers/Control/ArgParser.js)
+      File: ZoomToMaxExtent  (no auto-title, OpenLayers/Control/ZoomToMaxExtent.js)
+      File: OverviewMap  (no auto-title, OpenLayers/Control/OverviewMap.js)
+      File: DragPan  (no auto-title, OpenLayers/Control/DragPan.js)
+      File: DrawFeature  (no auto-title, OpenLayers/Control/DrawFeature.js)
+      File: EditingToolbar  (no auto-title, OpenLayers/Control/EditingToolbar.js)
+      File: KeyboardDefaults  (no auto-title, OpenLayers/Control/KeyboardDefaults.js)
+      File: LayerSwitcher  (no auto-title, OpenLayers/Control/LayerSwitcher.js)
+      File: MouseDefaults  (no auto-title, OpenLayers/Control/MouseDefaults.js)
+      File: MousePosition  (no auto-title, OpenLayers/Control/MousePosition.js)
+      File: MouseToolbar  (no auto-title, OpenLayers/Control/MouseToolbar.js)
+      File: Navigation  (no auto-title, OpenLayers/Control/Navigation.js)
+      File: NavToolbar  (no auto-title, OpenLayers/Control/NavToolbar.js)
+      File: Panel  (no auto-title, OpenLayers/Control/Panel.js)
+      File: PanZoomBar  (no auto-title, OpenLayers/Control/PanZoomBar.js)
+      File: Permalink  (no auto-title, OpenLayers/Control/Permalink.js)
+      File: Scale  (no auto-title, OpenLayers/Control/Scale.js)
+      File: SelectFeature  (no auto-title, OpenLayers/Control/SelectFeature.js)
+      File: ZoomBox  (no auto-title, OpenLayers/Control/ZoomBox.js)
+      File: PanZoom  (OpenLayers/Control/PanZoom.js)
+      }  # Group: Control
+
+   File: Events  (no auto-title, OpenLayers/Events.js)
+
+   Group: Feature  {
+
+      File: Feature  (no auto-title, OpenLayers/Feature.js)
+      File: WFS  (no auto-title, OpenLayers/Feature/WFS.js)
+      File: Vector  (no auto-title, OpenLayers/Feature/Vector.js)
+      }  # Group: Feature
+
+   Group: Format  {
+
+      File: Format  (no auto-title, OpenLayers/Format.js)
+      File: GeoRSS  (OpenLayers/Format/GeoRSS.js)
+      File: GML  (OpenLayers/Format/GML.js)
+      File: KML  (OpenLayers/Format/KML.js)
+      File: WFS  (OpenLayers/Format/WFS.js)
+      File: WKT  (no auto-title, OpenLayers/Format/WKT.js)
+      }  # Group: Format
+
+   Group: Geometry  {
+
+      File: Geometry  (no auto-title, OpenLayers/Geometry.js)
+      File: Collection  (no auto-title, OpenLayers/Geometry/Collection.js)
+      File: Curve  (OpenLayers/Geometry/Curve.js)
+      File: LinearRing  (OpenLayers/Geometry/LinearRing.js)
+      File: LineString  (no auto-title, OpenLayers/Geometry/LineString.js)
+      File: MultiLineString  (no auto-title, OpenLayers/Geometry/MultiLineString.js)
+      File: MultiPoint  (no auto-title, OpenLayers/Geometry/MultiPoint.js)
+      File: MultiPolygon  (no auto-title, OpenLayers/Geometry/MultiPolygon.js)
+      File: Point  (no auto-title, OpenLayers/Geometry/Point.js)
+      File: Polygon  (no auto-title, OpenLayers/Geometry/Polygon.js)
+      File: Rectangle  (OpenLayers/Geometry/Rectangle.js)
+      File: Surface  (OpenLayers/Geometry/Surface.js)
+      }  # Group: Geometry
+
+   Group: Handler  {
+
+      File: Handler  (no auto-title, OpenLayers/Handler.js)
+      File: Box  (OpenLayers/Handler/Box.js)
+      File: Drag  (no auto-title, OpenLayers/Handler/Drag.js)
+      File: Feature  (no auto-title, OpenLayers/Handler/Feature.js)
+      File: Keyboard  (no auto-title, OpenLayers/Handler/Keyboard.js)
+      File: MouseWheel  (no auto-title, OpenLayers/Handler/MouseWheel.js)
+      File: Path  (no auto-title, OpenLayers/Handler/Path.js)
+      File: Point  (no auto-title, OpenLayers/Handler/Point.js)
+      File: Polygon  (OpenLayers/Handler/Polygon.js)
+      }  # Group: Handler
+
+   File: Icon  (no auto-title, OpenLayers/Icon.js)
+
+   Group: Layer  {
+
+      File: Layer  (no auto-title, OpenLayers/Layer.js)
+      File: Boxes  (OpenLayers/Layer/Boxes.js)
+      File: EventPane  (OpenLayers/Layer/EventPane.js)
+      File: FixedZoomLevels  (OpenLayers/Layer/FixedZoomLevels.js)
+      File: GeoRSS  (no auto-title, OpenLayers/Layer/GeoRSS.js)
+      File: GML  (no auto-title, OpenLayers/Layer/GML.js)
+      File: Gooogle  (OpenLayers/Layer/Google.js)
+      File: Grid  (OpenLayers/Layer/Grid.js)
+      File: HTTPRequest  (OpenLayers/Layer/HTTPRequest.js)
+      File: Image  (no auto-title, OpenLayers/Layer/Image.js)
+      File: KaMap  (OpenLayers/Layer/KaMap.js)
+      File: MapServer  (OpenLayers/Layer/MapServer.js)
+      File: MapServer.Untiled  (OpenLayers/Layer/MapServer/Untiled.js)
+      File: Markers  (no auto-title, OpenLayers/Layer/Markers.js)
+      File: MultiMap  (OpenLayers/Layer/MultiMap.js)
+      File: Text  (OpenLayers/Layer/Text.js)
+      File: TMS  (OpenLayers/Layer/TMS.js)
+      File: Vector  (no auto-title, OpenLayers/Layer/Vector.js)
+      File: VirtualEarth  (OpenLayers/Layer/VirtualEarth.js)
+      File: WFS  (OpenLayers/Layer/WFS.js)
+      File: WMS  (no auto-title, OpenLayers/Layer/WMS.js)
+      File: WMS.Untiled  (no auto-title, OpenLayers/Layer/WMS/Untiled.js)
+      File: WorldWind  (OpenLayers/Layer/WorldWind.js)
+      File: Yahoo  (OpenLayers/Layer/Yahoo.js)
+      }  # Group: Layer
+
+   File: Map  (no auto-title, OpenLayers/Map.js)
+
+   Group: Marker  {
+
+      File: Marker  (no auto-title, OpenLayers/Marker.js)
+      File: Box  (no auto-title, OpenLayers/Marker/Box.js)
+      }  # Group: Marker
+
+   Group: Popup  {
+
+      File: Popup  (no auto-title, OpenLayers/Popup.js)
+      File: Anchored  (no auto-title, OpenLayers/Popup/Anchored.js)
+      File: AnchoredBubble  (OpenLayers/Popup/AnchoredBubble.js)
+      }  # Group: Popup
+
+   Group: Renderer  {
+
+      File: Renderer  (OpenLayers/Renderer.js)
+      File: Elements  (no auto-title, OpenLayers/Renderer/Elements.js)
+      File: SVG  (no auto-title, OpenLayers/Renderer/SVG.js)
+      File: VML  (no auto-title, OpenLayers/Renderer/VML.js)
+      }  # Group: Renderer
+
+   Group: Tile  {
+
+      File: Tile  (no auto-title, OpenLayers/Tile.js)
+      File: Image  (no auto-title, OpenLayers/Tile/Image.js)
+      File: WFS  (no auto-title, OpenLayers/Tile/WFS.js)
+      }  # Group: Tile
+
+   File: Util  (OpenLayers/Util.js)
+   }  # Group: OpenLayers
+
+Group: Index  {
+
+   Index: Everything
+   Class Index: Classes
+   Constant Index: Constants
+   Function Index: Functions
+   Property Index: Properties
+   File Index: Files
+   Constructor Index: Constructor
+   }  # Group: Index
+

Deleted: sandbox/tschaub/feature/doc_config/OL.css
===================================================================
--- trunk/openlayers/doc_config/OL.css	2007-07-05 19:22:38 UTC (rev 3597)
+++ sandbox/tschaub/feature/doc_config/OL.css	2007-07-05 19:51:39 UTC (rev 3598)
@@ -1,20 +0,0 @@
-p {
-    text-indent: 0; margin-bottom: 1em;
-}
-
-.MGroup {
-    font-variant: normal;
-    margin: 0.4em 0 0em 10px
-}
-
-.MTitle {
-    font-variant: normal;
-}
-
-.CGroup .CTitle {
-    font-variant: normal;
-}
-
-.SGroup .SEntry {
-    font-variant: normal;
-}
\ No newline at end of file

Copied: sandbox/tschaub/feature/doc_config/OL.css (from rev 3597, trunk/openlayers/doc_config/OL.css)
===================================================================
--- sandbox/tschaub/feature/doc_config/OL.css	                        (rev 0)
+++ sandbox/tschaub/feature/doc_config/OL.css	2007-07-05 19:51:39 UTC (rev 3598)
@@ -0,0 +1,20 @@
+p {
+    text-indent: 0; margin-bottom: 1em;
+}
+
+.MGroup {
+    font-variant: normal;
+    margin: 0.4em 0 0em 10px
+}
+
+.MTitle {
+    font-variant: normal;
+}
+
+.CGroup .CTitle {
+    font-variant: normal;
+}
+
+.SGroup .SEntry {
+    font-variant: normal;
+}
\ No newline at end of file

Deleted: sandbox/tschaub/feature/doc_config/Topics.txt
===================================================================
--- trunk/openlayers/doc_config/Topics.txt	2007-07-05 19:22:38 UTC (rev 3597)
+++ sandbox/tschaub/feature/doc_config/Topics.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -1,105 +0,0 @@
-Format: 1.35
-
-# This is the Natural Docs topics file for this project.  If you change anything
-# here, it will apply to THIS PROJECT ONLY.  If you'd like to change something
-# for all your projects, edit the Topics.txt in Natural Docs' Config directory
-# instead.
-
-
-# If you'd like to prevent keywords from being recognized by Natural Docs, you
-# can do it like this:
-# Ignore Keywords: [keyword], [keyword], ...
-#
-# Or you can use the list syntax like how they are defined:
-# Ignore Keywords:
-#    [keyword]
-#    [keyword], [plural keyword]
-#    ...
-
-
-#-------------------------------------------------------------------------------
-# SYNTAX:
-#
-# Topic Type: [name]
-# Alter Topic Type: [name]
-#    Creates a new topic type or alters one from the main file.  Each type gets
-#    its own index and behavior settings.  Its name can have letters, numbers,
-#    spaces, and these charaters: - / . '
-#
-# Plural: [name]
-#    Sets the plural name of the topic type, if different.
-#
-# Keywords:
-#    [keyword]
-#    [keyword], [plural keyword]
-#    ...
-#    Defines or adds to the list of keywords for the topic type.  They may only
-#    contain letters, numbers, and spaces and are not case sensitive.  Plural
-#    keywords are used for list topics.  You can redefine keywords found in the
-#    main topics file.
-#
-# Index: [yes|no]
-#    Whether the topics get their own index.  Defaults to yes.  Everything is
-#    included in the general index regardless of this setting.
-#
-# Scope: [normal|start|end|always global]
-#    How the topics affects scope.  Defaults to normal.
-#    normal        - Topics stay within the current scope.
-#    start         - Topics start a new scope for all the topics beneath it,
-#                    like class topics.
-#    end           - Topics reset the scope back to global for all the topics
-#                    beneath it.
-#    always global - Topics are defined as global, but do not change the scope
-#                    for any other topics.
-#
-# Class Hierarchy: [yes|no]
-#    Whether the topics are part of the class hierarchy.  Defaults to no.
-#
-# Variable Type: [yes|no]
-#    Whether the topics can be a variable type.  Defaults to no.
-#
-# Page Title If First: [yes|no]
-#    Whether the topic's title becomes the page title if it's the first one in
-#    a file.  Defaults to no.
-#
-# Break Lists: [yes|no]
-#    Whether list topics should be broken into individual topics in the output.
-#    Defaults to no.
-#
-# Can Group With: [type], [type], ...
-#    Defines a list of topic types that this one can possibly be grouped with.
-#    Defaults to none.
-#-------------------------------------------------------------------------------
-
-# The following topics are defined in the main file, if you'd like to alter
-# their behavior or add keywords:
-#
-#    Generic, Class, Interface, Section, File, Group, Function, Variable,
-#    Property, Type, Constant, Enumeration, Event, Delegate, Macro,
-#    Database, Database Table, Database View, Database Index, Database
-#    Cursor, Database Trigger, Cookie, Build Target
-
-# If you add something that you think would be useful to other developers
-# and should be included in Natural Docs by default, please e-mail it to
-# topics [at] naturaldocs [dot] org.
-
-
-Topic Type: Constructor
-
-   Class Hierarchy: Yes
-   Keywords:
-      constructor
-      initialize
-
-
-Alter Topic Type: Function
-
-   Add Keywords:
-      apimethod
-      apifunction
-
-
-Alter Topic Type: Property
-
-   Add Keywords:
-      apiproperty

Copied: sandbox/tschaub/feature/doc_config/Topics.txt (from rev 3597, trunk/openlayers/doc_config/Topics.txt)
===================================================================
--- sandbox/tschaub/feature/doc_config/Topics.txt	                        (rev 0)
+++ sandbox/tschaub/feature/doc_config/Topics.txt	2007-07-05 19:51:39 UTC (rev 3598)
@@ -0,0 +1,105 @@
+Format: 1.35
+
+# This is the Natural Docs topics file for this project.  If you change anything
+# here, it will apply to THIS PROJECT ONLY.  If you'd like to change something
+# for all your projects, edit the Topics.txt in Natural Docs' Config directory
+# instead.
+
+
+# If you'd like to prevent keywords from being recognized by Natural Docs, you
+# can do it like this:
+# Ignore Keywords: [keyword], [keyword], ...
+#
+# Or you can use the list syntax like how they are defined:
+# Ignore Keywords:
+#    [keyword]
+#    [keyword], [plural keyword]
+#    ...
+
+
+#-------------------------------------------------------------------------------
+# SYNTAX:
+#
+# Topic Type: [name]
+# Alter Topic Type: [name]
+#    Creates a new topic type or alters one from the main file.  Each type gets
+#    its own index and behavior settings.  Its name can have letters, numbers,
+#    spaces, and these charaters: - / . '
+#
+# Plural: [name]
+#    Sets the plural name of the topic type, if different.
+#
+# Keywords:
+#    [keyword]
+#    [keyword], [plural keyword]
+#    ...
+#    Defines or adds to the list of keywords for the topic type.  They may only
+#    contain letters, numbers, and spaces and are not case sensitive.  Plural
+#    keywords are used for list topics.  You can redefine keywords found in the
+#    main topics file.
+#
+# Index: [yes|no]
+#    Whether the topics get their own index.  Defaults to yes.  Everything is
+#    included in the general index regardless of this setting.
+#
+# Scope: [normal|start|end|always global]
+#    How the topics affects scope.  Defaults to normal.
+#    normal        - Topics stay within the current scope.
+#    start         - Topics start a new scope for all the topics beneath it,
+#                    like class topics.
+#    end           - Topics reset the scope back to global for all the topics
+#                    beneath it.
+#    always global - Topics are defined as global, but do not change the scope
+#                    for any other topics.
+#
+# Class Hierarchy: [yes|no]
+#    Whether the topics are part of the class hierarchy.  Defaults to no.
+#
+# Variable Type: [yes|no]
+#    Whether the topics can be a variable type.  Defaults to no.
+#
+# Page Title If First: [yes|no]
+#    Whether the topic's title becomes the page title if it's the first one in
+#    a file.  Defaults to no.
+#
+# Break Lists: [yes|no]
+#    Whether list topics should be broken into individual topics in the output.
+#    Defaults to no.
+#
+# Can Group With: [type], [type], ...
+#    Defines a list of topic types that this one can possibly be grouped with.
+#    Defaults to none.
+#-------------------------------------------------------------------------------
+
+# The following topics are defined in the main file, if you'd like to alter
+# their behavior or add keywords:
+#
+#    Generic, Class, Interface, Section, File, Group, Function, Variable,
+#    Property, Type, Constant, Enumeration, Event, Delegate, Macro,
+#    Database, Database Table, Database View, Database Index, Database
+#    Cursor, Database Trigger, Cookie, Build Target
+
+# If you add something that you think would be useful to other developers
+# and should be included in Natural Docs by default, please e-mail it to
+# topics [at] naturaldocs [dot] org.
+
+
+Topic Type: Constructor
+
+   Class Hierarchy: Yes
+   Keywords:
+      constructor
+      initialize
+
+
+Alter Topic Type: Function
+
+   Add Keywords:
+      apimethod
+      apifunction
+
+
+Alter Topic Type: Property
+
+   Add Keywords:
+      apiproperty

Modified: sandbox/tschaub/feature/examples/example.html
===================================================================
--- sandbox/tschaub/feature/examples/example.html	2007-07-05 19:22:38 UTC (rev 3597)
+++ sandbox/tschaub/feature/examples/example.html	2007-07-05 19:51:39 UTC (rev 3598)
@@ -9,8 +9,10 @@
     </style>
     <script src="../lib/OpenLayers.js"></script>
     <script type="text/javascript">
+        // making this a global variable so that it is accessible for
+        // debugging/inspecting in Firebug
+        var map = null;
 
-        
         <!--
         function init(){
 
@@ -43,7 +45,7 @@
             }                        
             header.innerHTML += browserName + ")";
 
-            var map = new OpenLayers.Map('map');
+            map = new OpenLayers.Map('map');
 
             var options = { 
                             resolutions: [1.40625,0.703125,0.3515625,0.17578125,0.087890625,0.0439453125,0.02197265625,0.010986328125,0.0054931640625,0.00274658203125,0.00137329101]

Modified: sandbox/tschaub/feature/lib/OpenLayers/Ajax.js
===================================================================
--- sandbox/tschaub/feature/lib/OpenLayers/Ajax.js	2007-07-05 19:22:38 UTC (rev 3597)
+++ sandbox/tschaub/feature/lib/OpenLayers/Ajax.js	2007-07-05 19:51:39 UTC (rev 3598)
@@ -37,16 +37,19 @@
     alert("Unhandled request return " + request.statusText);
 };
 
-/** Background load a document
-*
-* @param {String} uri URI of source doc
-* @param {String} params Params on get (doesnt seem to work)
-* @param {Object} caller object which gets callbacks
-* @param {Function} onComplete callback for success
-* @param {Function} onFailure callback for failure
-*
-* Both callbacks optional (though silly)
-*/
+/** 
+ * Function: loadURL
+ * Background load a document.
+ *
+ * Parameters:
+ * uri - {String} URI of source doc
+ * params - {String} Params on get (doesnt seem to work)
+ * caller - {Object} object which gets callbacks
+ * onComplete - {Function} callback for success
+ * onFailure - {Function} callback for failure
+ *
+ * Both callbacks optional (though silly)
+ */
 OpenLayers.loadURL = function(uri, params, caller,
                                   onComplete, onFailure) {
 
@@ -70,12 +73,16 @@
                      );
 };
 
-/** Parse XML into a doc structure
-* @param {String} text
-*
-* @returns Parsed Ajax Response ??
-* @type ?
-*/
+/** 
+ * Function: parseXMLString
+ * Parse XML into a doc structure
+ * 
+ * Parameters:
+ * text - {String} 
+ * 
+ * Return:
+ * {?} Parsed AJAX Responsev
+ */
 OpenLayers.parseXMLString = function(text) {
 
     //MS sucks, if the server is bad it dies
@@ -108,224 +115,413 @@
     return ajaxResponse;
 };
 
+
+/**
+ * Namespace: OpenLayers.Ajax
+ */
 OpenLayers.Ajax = {
-  emptyFunction: function () {},
 
-  getTransport: function() {
-    return OpenLayers.Util.Try(
-      function() {return new ActiveXObject('Msxml2.XMLHTTP')},
-      function() {return new ActiveXObject('Microsoft.XMLHTTP')},
-      function() {return new XMLHttpRequest()}
-    ) || false;
-  },
+    /**
+     * Method: emptyFunction
+     */
+    emptyFunction: function () {},
 
-  activeRequestCount: 0
+    /**
+     * Method: getTransport
+     * 
+     * Return: 
+     * {Object} Transport mechanism for whichever browser we're in, or false if
+     *          none available.
+     */
+    getTransport: function() {
+        return OpenLayers.Util.Try(
+            function() {return new ActiveXObject('Msxml2.XMLHTTP')},
+            function() {return new ActiveXObject('Microsoft.XMLHTTP')},
+            function() {return new XMLHttpRequest()}
+        ) || false;
+    },
+
+    /**
+     * Property: activeRequestCount
+     * {Integer}
+     */
+    activeRequestCount: 0
 };
 
+/**
+ * Namespace: OpenLayers.Ajax.Responders
+ * {Object}
+ */
 OpenLayers.Ajax.Responders = {
-  responders: [],
+  
+    /**
+     * Property: responders
+     * {Array}
+     */
+    responders: [],
 
-  register: function(responderToAdd) {
-    for (var i = 0; i < this.responders.length; i++)
-        if (responderToAdd == this.responders[i])
-            return;
-    this.responders.push(responderToAdd);
-  },
+    /**
+     * Method: register
+     *  
+     * Parameters:
+     * responderToAdd - {?}
+     */
+    register: function(responderToAdd) {
+      for (var i = 0; i < this.responders.length; i++)
+          if (responderToAdd == this.responders[i])
+              return;
+      this.responders.push(responderToAdd);
+    },
 
-  dispatch: function(callback, request, transport, json) {
-    for (var i = 0; i < this.responders.length; i++) {
-      responder = this.responders[i];
-      if (responder[callback] && typeof responder[callback] == 'function') {
-        try {
-          responder[callback].apply(responder, [request, transport, json]);
-        } catch (e) {}
-      }
+    /**
+     * Method: dispatch
+     * 
+     * Parameters:
+     * callback - {?}
+     * request - {?}
+     * transport - {?}
+     * json - {?}
+     */
+    dispatch: function(callback, request, transport, json) {
+        for (var i = 0; i < this.responders.length; i++) {
+            responder = this.responders[i];
+     
+            if (responder[callback] && 
+                typeof responder[callback] == 'function') {
+                try {
+                    responder[callback].apply(responder, 
+                                              [request, transport, json]);
+                } catch (e) {}
+            }
+        }
     }
-  }
 };
 
 OpenLayers.Ajax.Responders.register({
-  onCreate: function() {
-    OpenLayers.Ajax.activeRequestCount++;
-  },
+    /** 
+     * Function: onCreate
+     */
+    onCreate: function() {
+        OpenLayers.Ajax.activeRequestCount++;
+    },
 
-  onComplete: function() {
-    OpenLayers.Ajax.activeRequestCount--;
-  }
+    /**
+     * Function: onComplete
+     */
+     onComplete: function() {
+         OpenLayers.Ajax.activeRequestCount--;
+     }
 });
 
+/**
+ * Namespace: OpenLayers.Ajax.Base
+ * {Object}
+ */
 OpenLayers.Ajax.Base = function() {};
 OpenLayers.Ajax.Base.prototype = {
-  setOptions: function(options) {
-    this.options = {
-      method:       'post',
-      asynchronous: true,
-      parameters:   ''
-    }
-    OpenLayers.Util.extend(this.options, options || {});
-  },
 
-  responseIsSuccess: function() {
-    return this.transport.status == undefined
-        || this.transport.status == 0
-        || (this.transport.status >= 200 && this.transport.status < 300);
-  },
+    /**
+     * Function: setOptions
+     * 
+     * Parameters:
+     * options - {Object}
+     */
+    setOptions: function(options) {
+        this.options = {
+            'method': 'post',
+            'asynchronous': true,
+            'parameters': ''
+        };
+        OpenLayers.Util.extend(this.options, options || {});
+    },
 
-  responseIsFailure: function() {
-    return !this.responseIsSuccess();
-  }
-}
+    /**
+     * Function: responseIsSuccess
+     * 
+     * Return:
+     * {Boolean}
+     */
+    responseIsSuccess: function() {
+        return this.transport.status == undefined || 
+               this.transport.status == 0 || 
+               (this.transport.status >= 200 && this.transport.status < 300);
+    },
 
+    /**
+     * Function: responseIsFailure
+     * 
+     * Return:
+     * {Boolean}
+     */
+    responseIsFailure: function() {
+        return !this.responseIsSuccess();
+    }
+};
+
+/**
+ * Class: OpenLayers.Ajax.Request
+ *
+ * Inherit:
+ *  - <OpenLayers.Ajax.Base>
+ */
 OpenLayers.Ajax.Request = OpenLayers.Class.create();
+
+/** 
+ * Property: Events
+ * {Array(String)}
+ */
 OpenLayers.Ajax.Request.Events =
   ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete'];
 
-OpenLayers.Ajax.Request.prototype = OpenLayers.Class.inherit( OpenLayers.Ajax.Base, {
-  initialize: function(url, options) {
-    this.transport = OpenLayers.Ajax.getTransport();
-    this.setOptions(options);
-    this.request(url);
-  },
-
-  request: function(url) {
-    var parameters = this.options.parameters || '';
-    if (parameters.length > 0) parameters += '&_=';
-
-    try {
-      this.url = url;
-      if (this.options.method == 'get' && parameters.length > 0)
-        this.url += (this.url.match(/\?/) ? '&' : '?') + parameters;
-
-      OpenLayers.Ajax.Responders.dispatch('onCreate', this, this.transport);
-
-      this.transport.open(this.options.method, this.url,
-        this.options.asynchronous);
-
-      if (this.options.asynchronous) {
-        this.transport.onreadystatechange = this.onStateChange.bind(this);
-        setTimeout((function() {this.respondToReadyState(1)}).bind(this), 10);
-      }
-
-      this.setRequestHeaders();
-
-      var body = this.options.postBody ? this.options.postBody : parameters;
-      this.transport.send(this.options.method == 'post' ? body : null);
-
-      /* Force Firefox to handle ready state 4 for synchronous requests */
-      if (!this.options.asynchronous && this.transport.overrideMimeType) {
-          this.onStateChange();
-      }
-
-    } catch (e) {
-      this.dispatchException(e);
-    }
-  },
-
-  setRequestHeaders: function() {
-    var requestHeaders =
-      ['X-Requested-With', 'XMLHttpRequest',
-       'X-Prototype-Version', 'OpenLayers'];
-
-    if (this.options.method == 'post' && !this.options.postBody) {
-      requestHeaders.push('Content-type',
-        'application/x-www-form-urlencoded');
-
-      /* Force "Connection: close" for Mozilla browsers to work around
-       * a bug where XMLHttpReqeuest sends an incorrect Content-length
-       * header. See Mozilla Bugzilla #246651.
+OpenLayers.Ajax.Request.prototype = 
+  OpenLayers.Class.inherit( OpenLayers.Ajax.Base, {
+      
+      /**
+       * Constructor: OpenLayers.Ajax.Request
+       * 
+       * Parameters: 
+       * url - {String}
+       * options - {Object}
        */
-      if (this.transport.overrideMimeType)
-        requestHeaders.push('Connection', 'close');
-    }
+    initialize: function(url, options) {
+        this.transport = OpenLayers.Ajax.getTransport();
+        this.setOptions(options);
+        this.request(url);
+    },
 
-    if (this.options.requestHeaders)
-      requestHeaders.push.apply(requestHeaders, this.options.requestHeaders);
+    /**
+     * Method: request
+     * 
+     * Parameters:
+     * url - {String}
+     */
+    request: function(url) {
+        var parameters = this.options.parameters || '';
+        if (parameters.length > 0) parameters += '&_=';
+    
+        try {
+            this.url = url;
+            if (this.options.method == 'get' && parameters.length > 0) {
+               this.url += (this.url.match(/\?/) ? '&' : '?') + parameters;
+            }
+            
+            OpenLayers.Ajax.Responders.dispatch('onCreate', 
+                                                this, 
+                                                this.transport);
+    
+            this.transport.open(this.options.method, 
+                                this.url,
+                                this.options.asynchronous);
+    
+            if (this.options.asynchronous) {
+                this.transport.onreadystatechange = 
+                    this.onStateChange.bind(this);
+                
+                setTimeout((function() {
+                    this.respondToReadyState(1)
+                }).bind(this), 10);
+            }
+    
+            this.setRequestHeaders();
+    
+            var body = this.options.postBody ? this.options.postBody 
+                                             : parameters;
+            this.transport.send(this.options.method == 'post' ? body : null);
+    
+            // Force Firefox to handle ready state 4 for synchronous requests
+            if (!this.options.asynchronous && 
+                this.transport.overrideMimeType) {
+                
+                this.onStateChange();
+            }
+    
+        } catch (e) {
+            this.dispatchException(e);
+        }
+    },
+     
+    /**
+     * Method: setRequestHeaders
+     */
+    setRequestHeaders: function() {
+        var requestHeaders = [
+            'X-Requested-With',
+            'XMLHttpRequest',
+            'X-Prototype-Version',
+            'OpenLayers'
+        ];
+    
+        if (this.options.method == 'post' && !this.options.postBody) {
+            requestHeaders.push('Content-type',
+                                'application/x-www-form-urlencoded');
+    
+            // Force "Connection: close" for Mozilla browsers to work around
+            // a bug where XMLHttpReqeuest sends an incorrect Content-length
+            // header. See Mozilla Bugzilla #246651.
+            if (this.transport.overrideMimeType) {
+                requestHeaders.push('Connection', 'close');
+            }
+        }
+    
+        if (this.options.requestHeaders) {
+            requestHeaders.push.apply(requestHeaders, 
+                                      this.options.requestHeaders);
+        }
+          
+        for (var i = 0; i < requestHeaders.length; i += 2) {
+            this.transport.setRequestHeader(requestHeaders[i], 
+                                            requestHeaders[i+1]);
+        }
+    },
 
-    for (var i = 0; i < requestHeaders.length; i += 2)
-      this.transport.setRequestHeader(requestHeaders[i], requestHeaders[i+1]);
-  },
+    /**
+     * Method: onStateChange
+     */
+    onStateChange: function() {
+        var readyState = this.transport.readyState;
+        if (readyState != 1) {
+          this.respondToReadyState(this.transport.readyState);
+        }
+    },
 
-  onStateChange: function() {
-    var readyState = this.transport.readyState;
-    if (readyState != 1)
-      this.respondToReadyState(this.transport.readyState);
-  },
+    /** 
+     * Method: header
+     * 
+     * Return:
+     * {?}
+     */
+    header: function(name) {
+        try {
+            return this.transport.getResponseHeader(name);
+        } catch (e) {}
+    },
 
-  header: function(name) {
-    try {
-      return this.transport.getResponseHeader(name);
-    } catch (e) {}
-  },
+    /** 
+     * Method: evalJSON
+     * 
+     * Return:
+     * {?}
+     */
+    evalJSON: function() {
+        try {
+            return eval(this.header('X-JSON'));
+        } catch (e) {}
+    },
 
-  evalJSON: function() {
-    try {
-      return eval(this.header('X-JSON'));
-    } catch (e) {}
-  },
+    /**
+     * Method: evalResponse
+     * 
+     * Return: 
+     * {?}
+     */
+    evalResponse: function() {
+        try {
+            return eval(this.transport.responseText);
+        } catch (e) {
+            this.dispatchException(e);
+        }
+    },
 
-  evalResponse: function() {
-    try {
-      return eval(this.transport.responseText);
-    } catch (e) {
-      this.dispatchException(e);
-    }
-  },
+    /**
+     * Method: respondToReadyState
+     *
+     * Parameters:
+     * readyState - {?}
+     */
+    respondToReadyState: function(readyState) {
+        var event = OpenLayers.Ajax.Request.Events[readyState];
+        var transport = this.transport, json = this.evalJSON();
+    
+        if (event == 'Complete') {
+            try {
+                var responseSuccess = this.responseIsSuccess() ? 'Success'
+                                                                : 'Failure';
+                                                                 
+                (this.options['on' + this.transport.status] ||
+                 this.options['on' + responseSuccess] ||
+                 OpenLayers.Ajax.emptyFunction)(transport, json);
+            } catch (e) {
+                this.dispatchException(e);
+            }
+    
+            var contentType = this.header('Content-type') || '';
+            if (contentType.match(/^text\/javascript/i)) {
+                this.evalResponse();
+            }
+        }
+    
+        try {
+            (this.options['on' + event] || 
+             OpenLayers.Ajax.emptyFunction)(transport, json);
+             OpenLayers.Ajax.Responders.dispatch('on' + event, 
+                                                 this, 
+                                                 transport, 
+                                                 json);
+        } catch (e) {
+            this.dispatchException(e);
+        }
+    
+        // Avoid memory leak in MSIE: clean up the oncomplete event handler
+        if (event == 'Complete') {
+            this.transport.onreadystatechange = OpenLayers.Ajax.emptyFunction;
+        }
+    },
 
-  respondToReadyState: function(readyState) {
-    var event = OpenLayers.Ajax.Request.Events[readyState];
-    var transport = this.transport, json = this.evalJSON();
-
-    if (event == 'Complete') {
-      try {
-        (this.options['on' + this.transport.status]
-         || this.options['on' + (this.responseIsSuccess() ? 'Success' : 'Failure')]
-         || OpenLayers.Ajax.emptyFunction)(transport, json);
-      } catch (e) {
-        this.dispatchException(e);
-      }
-
-      if ((this.header('Content-type') || '').match(/^text\/javascript/i))
-        this.evalResponse();
+    /**
+     * Method: dispatchException
+     * 
+     * Parameters:
+     * exception - {?}
+     */
+    dispatchException: function(exception) {
+        if (this.options.onException) {
+            this.options.onException(this, exception);
+        } else {
+            // if we get here, Responders.dispatch('onException') will never
+            // be called. too bad. we should probably take out the Responders
+            // stuff anyway.
+            throw exception;
+        }
+        OpenLayers.Ajax.Responders.dispatch('onException', this, exception);
     }
+    
+});
 
-    try {
-      (this.options['on' + event] || OpenLayers.Ajax.emptyFunction)(transport, json);
-      OpenLayers.Ajax.Responders.dispatch('on' + event, this, transport, json);
-    } catch (e) {
-      this.dispatchException(e);
-    }
-
-    /* Avoid memory leak in MSIE: clean up the oncomplete event handler */
-    if (event == 'Complete')
-      this.transport.onreadystatechange = OpenLayers.Ajax.emptyFunction;
-  },
-
-  dispatchException: function(exception) {
-    if (this.options.onException) {
-        this.options.onException(this, exception);
+/**
+ * Function: getElementsByTagNameNS
+ * 
+ * Parameters:
+ * parentnode - {?}
+ * nsuri - {?}
+ * nsprefix - {?}
+ * tagname - {?}
+ * 
+ * Return:
+ * {?}
+ */
+OpenLayers.Ajax.getElementsByTagNameNS  = function(parentnode, nsuri, 
+                                                   nsprefix, tagname) {
+    var elem = null;
+    if (parentnode.getElementsByTagNameNS) {
+        elem = parentnode.getElementsByTagNameNS(nsuri, tagname);
     } else {
-        // if we get here, Responders.dispatch('onException') will never
-        // be called. too bad. we should probably take out the Responders
-        // stuff anyway.
-        throw exception;
+        elem = parentnode.getElementsByTagName(nsprefix + ':' + tagname);
     }
-    OpenLayers.Ajax.Responders.dispatch('onException', this, exception);
-  }
-});
+    return elem;
+};
 
-OpenLayers.Ajax.getElementsByTagNameNS  = function(parentnode, nsuri, nsprefix, tagname) {
-    return parentnode.getElementsByTagNameNS ?
-        parentnode.getElementsByTagNameNS(nsuri, tagname)
-        : parentnode.getElementsByTagName(nsprefix + ':' + tagname);
-}
 
 /**
+ * Function: serializeXMLToString
  * Wrapper function around XMLSerializer, which doesn't exist/work in
- * IE/Safari. We need to come up with a way to serialize in those browser:
- * for now, these browsers will just fail.
- * #535, #536
+ *     IE/Safari. We need to come up with a way to serialize in those browser:
+ *     for now, these browsers will just fail. #535, #536
  *
- * @param {XMLNode} xmldom xml dom to serialize
+ * Parameters: 
+ * xmldom {XMLNode} xml dom to serialize
+ * 
+ * Return:
+ * {?}
  */
 OpenLayers.Ajax.serializeXMLToString = function(xmldom) {
     var serializer = new XMLSerializer();

Modified: sandbox/tschaub/feature/lib/OpenLayers/BaseTypes.js
===================================================================
--- sandbox/tschaub/feature/lib/OpenLayers/BaseTypes.js	2007-07-05 19:22:38 UTC (rev 3597)
+++ sandbox/tschaub/feature/lib/OpenLayers/BaseTypes.js	2007-07-05 19:51:39 UTC (rev 3598)
@@ -2,11 +2,25 @@
  * See http://svn.openlayers.org/trunk/openlayers/repository-license.txt 
  * for the full text of the license. */
 
+/**
+ * Header: OpenLayers Base Types
+ * Basic types in OpenLayers are described here.
+ */
 
-/* OpenLayers.Class metaclass */
+/**
+ * Namespace: OpenLayers.Class
+ * Contains functions to create OpenLayers style classes.
+ */ 
 OpenLayers.Class = {
     isPrototype: function () {}, // magic anonymous value
 
+    /**
+     * APIFunction: create
+     * Create an OpenLayers style class
+     *
+     * Return:
+     * An OpenLayers class
+     */
     create: function() {
         return function() {
             if (arguments && arguments[0] != OpenLayers.Class.isPrototype)
@@ -14,6 +28,16 @@
         }
     },
  
+    /**
+     * APIFunction: inherit
+     * Inherit from one or more OpenLayers style classes
+     *
+     * Parameters:
+     * class - One or more classes can be provided as arguments
+     *
+     * Return:
+     * An object prototype
+     */
     inherit: function () {
         var superClass = arguments[0];
         var proto = new superClass(OpenLayers.Class.isPrototype);
@@ -54,52 +78,73 @@
  *********************/
 
 /**
- * @class 
- * 
+ * Class: OpenLayers.Pixel
  * This class represents a screen coordinate, in x and y coordinates
  */
 OpenLayers.Pixel = OpenLayers.Class.create();
 OpenLayers.Pixel.prototype = {
     
-    /** @type float */
+    /**
+     * APIProperty: x
+     * {Number} The x coordinate
+     */
     x: 0.0,
 
-    /** @type float */
+    /**
+     * APIProperty: y
+     * {Number} The y coordinate
+     */
     y: 0.0,
     
-    /** 
-    * @constructor
-    *
-    * @param {float} x
-    * @param {float} y
-    */
+    /**
+     * Constructor: OpenLayers.Pixel
+     * Create a new OpenLayers.Pixel instance
+     *
+     * Parameters:
+     * x - {Number} The x coordinate
+     * y - {Number} The y coordinate
+     *
+     * Return:
+     * An instance of OpenLayers.Pixel
+     */
     initialize: function(x, y) {
         this.x = parseFloat(x);
         this.y = parseFloat(y);
     },
     
     /**
-    * @return string representation of Pixel. ex: "x=200.4,y=242.2"
-    * @type str
-    */
+     * Method: toString
+     * Cast this object into a string
+     *
+     * Return:
+     * {String} The string representation of Pixel. ex: "x=200.4,y=242.2"
+     */
     toString:function() {
         return ("x=" + this.x + ",y=" + this.y);
     },
 
     /**
-     * @type OpenLayers.Pixel
+     * APIMethod: clone
+     * Return a clone of this pixel object
+     *
+     * Return:
+     * {<OpenLayers.Pixel>} A clone pixel
      */
     clone:function() {
         return new OpenLayers.Pixel(this.x, this.y); 
     },
     
-    /** 
-    * @param {OpenLayers.Pixel} px
-    * 
-    * @return whether or not the point passed in as parameter is equal to this
-    *          note that if px passed in is null, returns false
-    * @type bool
-    */
+    /**
+     * APIMethod: equals
+     * Determine whether one pixel is equivalent to another
+     *
+     * Parameters:
+     * px - {<OpenLayers.Pixel>}
+     *
+     * Return:
+     * {Boolean} The point passed in as parameter is equal to this. Note that
+     * if px passed in is null, returns false.
+     */
     equals:function(px) {
         var equals = false;
         if (px != null) {
@@ -110,23 +155,29 @@
     },
 
     /**
-    * @param {int} x
-    * @param {int} y
-    * 
-    * @return a new Pixel with this pixel's x&y augmented by the 
-    *         values passed in.
-    * @type OpenLayers.Pixel
-    */
+     * APIMethod: add
+     *
+     * Parameters:
+     * x - {Integer}
+     * y - {Integer}
+     *
+     * Return:
+     * {<OpenLayers.Pixel>} A new Pixel with this pixel's x&y augmented by the 
+     * values passed in.
+     */
     add:function(x, y) {
         return new OpenLayers.Pixel(this.x + x, this.y + y);
     },
 
     /**
-    * @param {OpenLayers.Pixel} px
+    * APIMethod: offset
     * 
-    * @return a new Pixel with this pixel's x&y augmented by the 
-    *         x&y values of the pixel passed in.
-    * @type OpenLayers.Pixel
+    * Parameters
+    * px - {<OpenLayers.Pixel>}
+    * 
+    * Return:
+    * {<OpenLayers.Pixel>} A new Pixel with this pixel's x&y augmented by the 
+    *                      x&y values of the pixel passed in.
     */
     offset:function(px) {
         var newPx = this.clone();
@@ -149,56 +200,75 @@
 
 
 /**
-* @class 
-* 
-* This class represents a width and height pair
-*/
+ * Class: OpenLayers.Size
+ * Instances of this class represent a width/height pair
+ */
 OpenLayers.Size = OpenLayers.Class.create();
 OpenLayers.Size.prototype = {
 
-    /** @type float */
+    /**
+     * APIProperty: w
+     * {Number} width
+     */
     w: 0.0,
     
-    /** @type float */
+    /**
+     * APIProperty: h
+     * {Number} height
+     */
     h: 0.0,
 
 
-    /** 
-    * @constructor
-    * 
-    * @param {float} w 
-    * @param {float} h 
-    */
+    /**
+     * Constructor: OpenLayers.Size
+     * Create an instance of OpenLayers.Size
+     *
+     * Parameters:
+     * w - {Number} width
+     * h - {Number} height
+     */
     initialize: function(w, h) {
         this.w = parseFloat(w);
         this.h = parseFloat(h);
     },
 
-    /** 
-    * @return String representation of OpenLayers.Size object. 
-    *         (ex. <i>"w=55,h=66"</i>)
-    * @type String
-    */
+    /**
+     * Method: toString
+     * Return the string representation of a size object
+     *
+     * Return:
+     * {String} The string representation of OpenLayers.Size object. 
+     * (ex. <i>"w=55,h=66"</i>)
+     */
     toString:function() {
         return ("w=" + this.w + ",h=" + this.h);
     },
 
-    /** 
-     * @return New OpenLayers.Size object with the same w and h values
-     * @type OpenLayers.Size
+    /**
+     * APIMethod: clone
+     * Create a clone of this size object
+     *
+     * Return:
+     * {<OpenLayers.Size>} A new OpenLayers.Size object with the same w and h
+     * values
      */
     clone:function() {
         return new OpenLayers.Size(this.w, this.h);
     },
 
-    /** 
-    * @param {OpenLayers.Size} sz
-    * @returns Boolean value indicating whether the passed-in OpenLayers.Size 
-    *          object has the same w and h components as this
-    *          note that if sz passed in is null, returns false
-    *
-    * @type bool
-    */
+    /**
+     *
+     * APIMethod: equals
+     * Determine where this size is equal to another
+     *
+     * Parameters:
+     * sz - {<OpenLayers.Size>}
+     *
+     * Return: 
+     * {Boolean} The passed in size has the same h and w properties as this one.
+     * Note that if sz passed in is null, returns false.
+     *
+     */
     equals:function(sz) {
         var equals = false;
         if (sz != null) {
@@ -220,76 +290,98 @@
 
 
 /**
-* @class 
-* 
-* This class represents a longitude and latitude pair
-*/
+ * Class: OpenLayers.LonLat
+ * This class represents a longitude and latitude pair
+ */
 OpenLayers.LonLat = OpenLayers.Class.create();
 OpenLayers.LonLat.prototype = {
 
-    /** @type float */
+    /** 
+     * APIProperty: lon
+     * {Float}
+     */
     lon: 0.0,
     
-    /** @type float */
+    /** 
+     * APIProperty: lat
+     * {Float}
+     */
     lat: 0.0,
 
     /**
-    * @constructor
-    * 
-    * @param {float} lon
-    * @param {float} lat
-    */
+     * Constructor: OpenLayers.LonLat
+     * Create a new OpenLayers.LonLat instance
+     *
+     * Parameters:
+     * lon - {Number} The lon coordinate
+     * lat - {Number} The lat coordinate
+     */
     initialize: function(lon, lat) {
         this.lon = parseFloat(lon);
         this.lat = parseFloat(lat);
     },
     
-    /** 
-    * @return String representation of OpenLayers.LonLat object. 
-    *         (ex. <i>"lon=5,lat=42"</i>)
-    * @type String
-    */
+    /**
+     * Method: toString
+     * Return a readable string version of the lonlat
+     *
+     * Return:
+     * {String} String representation of OpenLayers.LonLat object. 
+     *           (ex. <i>"lon=5,lat=42"</i>)
+     */
     toString:function() {
         return ("lon=" + this.lon + ",lat=" + this.lat);
     },
 
     /** 
-    * @return Shortened String representation of OpenLayers.LonLat object. 
-    *         (ex. <i>"5, 42"</i>)
-    * @type String
-    */
+     * APIMethod: toShortString
+     * 
+     * Return:
+     * {String} Shortened String representation of OpenLayers.LonLat object. 
+     *         (ex. <i>"5, 42"</i>)
+     */
     toShortString:function() {
         return (this.lon + ", " + this.lat);
     },
 
     /** 
-     * @return New OpenLayers.LonLat object with the same lon and lat values
-     * @type OpenLayers.LonLat
+     * APIMethod: clone
+     * 
+     * Return:
+     * {<OpenLayers.LonLat>} New OpenLayers.LonLat object with the same lon 
+     *                       and lat values
      */
     clone:function() {
         return new OpenLayers.LonLat(this.lon, this.lat);
     },
 
     /** 
-    * @param {float} lon
-    * @param {float} lat
-    *
-    * @return A new OpenLayers.LonLat object with the lon and lat passed-in
-    *         added to this's. 
-    * @type OpenLayers.LonLat
-    */
+     * APIMethod: add
+     * 
+     * Parameters:
+     * lon - {Float}
+     * lat - {Float}
+     * 
+     * Return:
+     * {<OpenLayers.LonLat>} A new OpenLayers.LonLat object with the lon and 
+     *                       lat passed-in added to this's. 
+     */
     add:function(lon, lat) {
         return new OpenLayers.LonLat(this.lon + lon, this.lat + lat);
     },
 
     /** 
-    * @param {OpenLayers.LonLat} ll
-    * @returns Boolean value indicating whether the passed-in OpenLayers.LonLat
-    *          object has the same lon and lat components as this
-    *          note that if ll passed in is null, returns false
-    *
-    * @type bool
-    */
+     * APIMethod: equals
+     * 
+     * Parameters:
+     * ll - {<OpenLayers.LonLat>}
+     * 
+     * Return:
+     * {Boolean} Boolean value indicating whether the passed-in 
+     *           <OpenLayers.LonLat> object has the same lon and lat 
+     *           components as this.
+     *           Note: if ll passed in is null, returns false
+     */
     equals:function(ll) {
         var equals = false;
         if (ll != null) {
@@ -300,11 +392,15 @@
     },
     
     /**
-     * @param {OpenLayers.Bounds} maxExtent
+     * APIMethod: wrapDateLine
      * 
-     * @returns A copy of this lonlat, but wrapped around the "dateline" (as
-     *           specified by the borders of maxExtent)
-     * @type OpenLayers.LonLat
+     * Parameters:
+     * maxExtent - {<OpenLayers.Bounds>}
+     * 
+     * Return:
+     * {<OpenLayers.LonLat>} A copy of this lonlat, but wrapped around the 
+     *                       "dateline" (as specified by the borders of 
+     *                       maxExtent)
      */
     wrapDateLine: function(maxExtent) {    
 
@@ -329,17 +425,19 @@
     CLASS_NAME: "OpenLayers.LonLat"
 };
 
-/** Alternative constructor that builds a new OpenLayers.LonLat from a 
-*    parameter string
-* 
-* @constructor
-* 
-* @param {String} str Comma-separated Lon,Lat coordinate string. 
-*                     (ex. <i>"5,40"</i>)
-*
-* @returns New OpenLayers.LonLat object built from the passed-in String.
-* @type OpenLayers.LonLat
-*/
+/** 
+ * Function: fromString
+ * Alternative constructor that builds a new <OpenLayers.LonLat> from a 
+ *     parameter string
+ * 
+ * Parameters:
+ * str - {String} Comma-separated Lon,Lat coordinate string. 
+ *                 (ex. <i>"5,40"</i>)
+ * 
+ * Return:
+ * {<OpenLayers.LonLat>} New <OpenLayers.LonLat> object built from the 
+ *                       passed-in String.
+ */
 OpenLayers.LonLat.fromString = function(str) {
     var pair = str.split(",");
     return new OpenLayers.LonLat(parseFloat(pair[0]), 
@@ -358,35 +456,49 @@
 
 
 /**
-* @class 
-* 
-* This class represents a bounding box. 
-* Data stored as left, bottom, right, top floats
-*/
+ * Class: OpenLayers.Bounds
+ * Instances of this class represent bounding boxes.  Data stored as left,
+ * bottom, right, top floats
+ */
 OpenLayers.Bounds = OpenLayers.Class.create();
 OpenLayers.Bounds.prototype = {
 
-    /** @type float */
+    /**
+     * Property: left
+     * {Number}
+     */
     left: 0.0,
 
-    /** @type float */
+    /**
+     * Property: bottom
+     * {Number}
+     */
     bottom: 0.0,
 
-    /** @type float */
+    /**
+     * Property: right
+     * {Number}
+     */
     right: 0.0,
 
-    /** @type float */
+    /**
+     * Property: top
+     * {Number}
+     */
     top: 0.0,    
 
     /**
-    * @constructor
-    *
-    * @param {float} left
-    * @param {float} bottom
-    * @param {float} right
-    * @param {float} top
-    *
-    */
+     * Constructor: OpenLayers.Bounds
+     * Construct a new bounds object.
+     *
+     * Parameters:
+     * left - {Number} The left bounds of the box.  Note that for width
+     *        calculations, this is assumed to be less than the right value.
+     * bottom - {Number} The bottom bounds of the box.  Note that for height
+     *          calculations, this is assumed to be more than the top value.
+     * right - {Number} The right bounds.
+     * top - {Number} The top bounds.
+     */
     initialize: function(left, bottom, right, top) {
         this.left = parseFloat(left);
         this.bottom = parseFloat(bottom);
@@ -395,22 +507,29 @@
     },
 
     /**
-     * @returns A fresh copy of the bounds
-     * @type OpenLayers.Bounds
+     * Method: clone
+     * Create a cloned instance of this bounds.
+     *
+     * Return:
+     * {<OpenLayers.Bounds>} A fresh copy of the bounds
      */
     clone:function() {
         return new OpenLayers.Bounds(this.left, this.bottom, 
                                      this.right, this.top);
     },
 
-    /** 
-    * @param {OpenLayers.Bounds} bounds
-    * @returns Boolean value indicating whether the passed-in OpenLayers.Bounds
-    *          object has the same left, right, top, bottom components as this
-    *           note that if bounds passed in is null, returns false
-    *
-    * @type bool
-    */
+    /**
+     * Method: equals
+     * Test a two bounds for equivalence
+     *
+     * Parameters:
+     * bounds - {<OpenLayers.Bounds>}
+     *
+     * Return:
+     * {Boolean} The passed-in OpenLayers.Bounds object has the same left,
+     *           right, top, bottom components as this.  Note that if bounds 
+     *           passed in is null, returns false.
+     */
     equals:function(bounds) {
         var equals = false;
         if (bounds != null) {
@@ -423,22 +542,27 @@
     },
 
     /** 
-    * @return String representation of OpenLayers.Bounds object. 
-    *         (ex.<i>"left-bottom=(5,42) right-top=(10,45)"</i>)
-    * @type String
-    */
+     * APIMethod: toString
+     * 
+     * Return:
+     * {String} String representation of OpenLayers.Bounds object. 
+     *          (ex.<i>"left-bottom=(5,42) right-top=(10,45)"</i>)
+     */
     toString:function() {
         return ( "left-bottom=(" + this.left + "," + this.bottom + ")"
                  + " right-top=(" + this.right + "," + this.top + ")" );
     },
 
     /** 
-     * @param {int} decimal How many significant digits in the bbox coords?
-     *                      Default is 6
+     * APIMethod: toBBOX
      * 
-     * @returns Simple String representation of OpenLayers.Bounds object.
-     *         (ex. <i>"5,42,10,45"</i>)
-     * @type String
+     * Parameters:
+     * decimal - {Integer} How many significant digits in the bbox coords?
+     *                     Default is 6
+     * 
+     * Return:
+     * {String} Simple String representation of OpenLayers.Bounds object.
+     *          (ex. <i>"5,42,10,45"</i>)
      */
     toBBOX:function(decimal) {
         if (decimal== null) {
@@ -454,66 +578,84 @@
     },
     
     /**
-    * @returns The width of the bounds
-    * @type float
-    */
+     * APIMethod: getWidth
+     * 
+     * Return:
+     * {Float} The width of the bounds
+     */
     getWidth:function() {
         return (this.right - this.left);
     },
 
     /**
-    * @returns The height of the bounds
-    * @type float
-    */
+     * APIMethod: getHeight
+     * 
+     * Return:
+     * {Float} The height of the bounds
+     */
     getHeight:function() {
         return (this.top - this.bottom);
     },
 
     /**
-    * @returns An OpenLayers.Size which represents the size of the box
-    * @type OpenLayers.Size
-    */
+     * APIMethod: getSize
+     * 
+     * Return:
+     * {<OpenLayers.Size>} An <OpenLayers.Size> which represents the size of the box
+     */
     getSize:function() {
         return new OpenLayers.Size(this.getWidth(), this.getHeight());
     },
 
     /**
-    * @returns An OpenLayers.Pixel which r