Chameleon    Home  |  Docs  |  Support  |  Bugs  |  CVS  |  Downloads 

MapTools.org

New Features
------------

Useage Stats
~~~~~~~~~~~~

Contributed by Jacob Delfos.  The usage stats are enabled in the chameleon.xml
file (this is a new configurable item that was not in 1.99beta3 ... you'll
need to copy it from chameleon.xml-dist or start a new configuration).  Once
enabled, every time a user starts a new session with an application that uses
Chameleon, a hit will be recorded.  The useage can be viewed in the admin tool
(there's a new tab).  Feedback on this new feature is welcome

ExtentHistory
~~~~~~~~~~~~~

Added a new widget (thanks GeoDan) that allows the user to move backwards and
forwards in a history of previous extents.  User is able to move backwards to
the previous state. User may continue to move backwards until the original
extent of the application is reached.  Once the user has moved backwards, they
can then move forwards to the next extent.  After moving backwards, any change
in extent not triggered by moving forwards will delete all forward states from
that point forward.  For instance, in an app with 5 extent changes available,
if the user moves backwards twice to extent 3, there are two forward extents
(4 and 5) available.  If the user then zooms in, the forward extents 4 and 5
are deleted and a new extent is created at position 4.  It works exactly like
a web-browser's history feature.

The widget is a button widget with a single attribute (other than the button
attributes) called DIRECTION that can be either 'forward' or 'backward'.

example tags:

<cwc2 type="ExtentHistory" direction="backward" styleresource="NavButtons"
ImageTip="Go Back" image="icons/icon_zoomback.png">
  <image state="normal"/>
  <image state="hover"/>
  <image state="selected"/>
  <image state="disabled" image="icons/icon_zoomback_x.png"/>
</cwc2>
<cwc2 type="ExtentHistory" direction="forward" styleresource="NavButtons"
ImageTip="Go Forward" image="icons/icon_zoomforward.png">
  <image state="normal"/>
  <image state="hover"/>
  <image state="selected"/>
  <image state="disabled" image="icons/icon_zoomforward_x.png"/>
</cwc2>

MapNotes
~~~~~~~~

Added new widget (thanks GeoDan) that allows the user to place an annotation,
or note, on the map.  The user is able to set some properties of the note,
including a label, a symbol and some colours.  The user is also able to select
existing notes and either edit them or delete them.  The user selects the Map
Note tool and then clicks on the map to add a note at that point, or edit an
existing point.  Points will be added to a temporary shapefile stored in the
users session directory.  Changes to notes (including add, delete or edit)
will cause a new shapefile to be created.  Notes cannot be saved, the exist
only for a single session.

Widget Attributes:

Layer - If set and not empty, all notes will be managed in this layer.  If the
layer does not exist, it will be created when the first note is added.  If not
set, MapNotes will generate a unique layer name.

FontColor - default 0 0 0.  The color of the label.

FontOutlineColor - default 255 255 255. The outline color for the label.

Symbol - default 'circle'.  The symbol to use for this note. The symbol name
can be either the name or symbol index from the symbolset referred to in the
map file.  List of available symbols needs to be generated from the symbol set
or through mapscript if possible, or at least validated.

SymbolSize - minimum 1, no maximum, default is 8. Size to draw the symbol.

SymbolColor - default 0 0 0.  Color to draw the symbol.

SymbolOutlineColor - default 255 255 255.  Outline color.

Font - default 'sans'.  This refers to the name of a font in the fontfile in
the map.  A list of valid fonts should be available through this widget, and
the value must be validated before using it.

FontSize - minimum 6, no maximum, default is 10.

Marquee - default is true.  This controls the display of a solid box behind
the label.

OffsetX - minimum 0, no maximum, default is 6.  Distance in pixels to
horizontally offset the label from the point.

OffsetY - minimum 0, no maximum, default is 0.  Distance in pixels to
vertically offset the label from the point.

LabelPosition - restricted to (UL, LR, UR, LL, CR, CL, UC, LC, CC, AUTO) where
first character is U = Upper, L = Lower, C = Center and second character is L=
Left, R=Right, C=Center. These translate into the equivalent PHP/MapScript
constants by prepending MS_ to the value.  The default is CR (Center Right).



example tag:

<cwc2 type="MapNotes" visible="true" imagetip="MapNotes"
image="icons/icon_add_mapnote.png" toolset="Navigation"
styleresource="NavButtons">

Documentation
~~~~~~~~~~~~~

Finally, our updates to existing documenation are done.  There's still a lot
of new documentation that needs to be written (eventually), but the following
documents are now formally part of the Chameleon package:

Installation Guide
++++++++++++++++++

The Chameleon Installation Guide has been updated and included in this
release.  Instructions are provided for Windows and *nix platforms.  If you
have experience installing in another environment, or some lessons learned,
please consider sending them to us on the mailing list for inclusion the in
the Installation Guide.

CWC2 Service Instance
+++++++++++++++++++++

This is a new document that describes how to use the CWC2 service instance.

Javascript API
++++++++++++++

The Javascript API documentation has be reviewed and updated for this version
of Chameleon.  The Javascript API itself has not changed since Chameleon 1.0
and is not compatible with some of the newer widgets, but it has been tested
with the basic widgets (those in the sample_basic).

bug MT 844:  admin tool
 - added ability to track useage stats using contribution of Jacob Delfos.
 There is a new setting in chameleon.xml-dist to turn this feature on (it's
 off by default).  If you turn it on, you can view stats in the admin tool.

Changes
-------

- added metadataurl and scalehint support to wmsparse and WMSBrowser.  The end
result is that if you use WMSBrowser to connect to a WMS server, and the
capabilities document contains layers with scalehint and metadataurl tags,
these will be extracted and preserved so that when the layer is added to an
application, the scalehint and metadataurl are part of the mapfile layer
definition.  This resulted in moving a substantial amount of code into
server_data_manager to consolidate the API for WMS layers into a single place.
There was also some restructuring of the code to allow for a layer to be added
directly from a layer name and onlineresource.  This new function has the same
effect as using the WMSBrowser, but it is done entirely programmatically
(server capabilities are cached locally in the same structure).  This opens
the door to better integration with all the WMS-related tools.

bug 632: MapDHTML, WidgetManager.php
 - rename MapDHTMLWidget to MapDHTML (moved in cvs)

bug 377:
 - renamed PrintWidget to PrintProduction

bug 605:
 - renamed LayerManager2 to LayerManager

no bug: Link.widget.php
 - added DIV parameter.  If set, this is the id of a <div> that the link
 widget will control the visibility of when clicked.  If used carefully, in
 conjunction with other Link widgets as part of a toolset, this allows you to
 create tabs.

no bug: button.php
 - added support for disabled buttons

Bug Fixes
---------

bug 803: ROIRenderer.php
 - fix typo in constant MS_PIXELS that caused PHP notice and could break ROI
 image if notices not supressed.

bug 759: ZoomSelectedLayers.widget.php
 - added mapscript version detection for getextent function.

bug 615: sample_enhanced_jsapi.phtml and sample_basic_jsapi.phtml
 - set maturity level of application to ALPHA required to get cwcjsapi widget
 working

bug 825: Locate.phtml, example.phtml, gazetteer_server.php
 - fix spelling of Gazetteer

bug 840: Extract.widget.php, PanMap.widget.php, Query.widget.php,
ROIMode.widget.php, Recenter.widget.php, Ruler.widget.php,
ZoomAllLayers.widget.php, ZoomIn.widget.php, ZoomOut.widget.php,
ScaleZoom.widget.php
 - Removed duplicate parent constructor call

bug 756 and 809: KeyMap.widget.php
 - invalid reference to a_pixel.gif

no bug: WMSBrowser (all files)
 - fixed problems with WMSBrowser related to invalid javascript

bug 843: LegendTemplate.widget.php
 - removed duplicate declaration of moPopup that caused errors in PHP 5

no bug: chameleon.php
 - added additional logic for detecting gszAppPath in PHP 5.

no bug: cwc2.php
 - added more robust URI detection for PHP 5.

bug 102:
 - fixed the strings used for the direction attribute.

no bug: Widget.php
 - tests for string attributes always uppercase the input values but the array
 passed from the widget wan't guaranteed to be uppercase, now it is.

bug 686: MapDHTML.js
 - fixed a problem with using Zoom In after the ruler tool had been used (only
 happened in Firefox)

bug 604: LegendTemplate.widget.php
 - use global gszAppPath intead of session value.

bug 797: download.phtml
 - fixed problem with download.phtml related to not closing php session before
 redirecting page using header()

bug 799: CatalogSearch.widget.php CatalogSearchPopup.phtml
 - Remove PHP Notices and JS Error caused by EmbededMode migration.

bug 663: ROIRectangleTool.widget.php
 - fixed javascript error in IE when double-clicking

bug 822: cwc2.php, chameleon.php, UIManager.php
 - propogate service, version and request values between page submits.  This
 required structural changes to support more granular control in applications.

bug 800: ExtractWFSData.*
 - added check for OGR module, and associated error messages

bug 694: production_draw_legend.php
 - removed static references to GIF_SAMPLE, replaced with dynamic image
 generator

bug 610: context.php
 - consolidate context-handling code in one place, fix problems with
 transitioning metadata from context to map file.

bug 866: many files ;)
 - change all script tags to include type="text/javascript" for html
 conformance.

bug 790: main.php, main.phtml
 - modified admin tool to suppress error messages

bug 778: ExtractSR.phtml, session.inc.php
 - fixed default text and updated code that indicates what resource file to
 load.

bug 786: layerinfo_body.phtml
 - better detection of queryable layers

bug 787:
 - fixed 'undefined index' warnings noted in bug.

bug 454: watershed_server.php
 - updated URL for watersheds service as per bug.

bug 824: postalcode_server.php
 - change postal code server url as per bug.

no bug: session.php
 - made session locking (file based) requestable through global variable.

bug 689: drawmap.php
 - added image type header for keymap



Printer Friendly

 
 

Contact Information

Chameleon Users List