Modifications

API Web 2D en Javascript

28/02/2011 (1.2) :

  • Correction boggue de la désactivation du clavier quant activeOverMapOnly est faux;
  • Correction des surcharges OpenLayers.Map.getObjectProjection() et OpenLayers.Layer.getNativeProjection() pour mimiquer OpenLayers correctement;
  • Changement de signature de Geoportal.Control.LocationUtilityService.[Geocode|GeoNames].setZoom() : la méthode attend un OpenLayers.Feature.Vector issu de la recherche. Répercution sur Geoportal.Control.LocationUtilityService.GeoNames.setZoomForBDNyme();
  • Modification du nom du callback onSelectAddress() par onSelectLocation();
  • Désactivation de la gestion de la visibilité des couches lors de leur chargement;
  • Les fenêtres flottantes sont désormais 'resizable' (Geoportal.Control.Floating);
  • Prise en compte des modifications de la taille des fenêtres flottantes et des résultats dans Geoportal.Control.Form;
  • Prise en compte de la propriété resultDiv de Geoportal.Control.Form dans les sous-classes;
  • Désactivation du test sur l'existance d'une extension lors de l'import de fichiers vecteurs pour permettre d'importer des webservices qui retournent des kml, gpx, osm, etc ...
  • Ajout des méthodes Geoportal.Viewer.(get|set)Application();
  • Ajout du module Geoportal.GeoRMHandler.getConfig() et de son callback Geoportal.GeoRMHandler.getContract();
  • Ajout des méthodes Geoportal.GeoRMHandler.getServicesCapabilities() et du callback associé Geoportal.GeoRMHandler.getCapabilities() et autres corrections mineures;
  • Ajout de la lecture de TimeStamp/when et TimeSpan/(begin|end) sur les KML;
  • Ajout des codes EPSG: 4467, 4471, 4474, 4559 pour RGSPM06 / UTM zone 21N, RGM04 / UTM zone 38S, Cadastre 1997 / UTM zone 38S, RRAF 1991 / UTM zone 20N;
  • Les Geoportal.Layer.Aggregate transmettent dorénavant leurs zooms aux couches aggrégées qui ne peuvent appartenir qu'à un seul groupe. Simplification de la gestion de la visibilité des couches aggrégées;
  • Support des classes OpenLayers.Popup dans les callback de création des popups via la nouvelle propriété popupClass;
  • Ajout de la recherche affinée sur les adresses lors d'un cntrl-alt-clic sur un résultat de type 'city';
  • Correction boggue dans l'affichage du résultat de la recherche par adresse : clonage de l'objet résultat pour ne pas vider la pile d'objets lors de plusieurs cntrl-clic consécutifs;
  • Retour des tailles des caractères des en-têtes Geoportal.Control.Floating à 0.8em à cause de IE8 sous W$ vista, mais augmentation des tailles des labels et champs de saisies et diminutation des tailles des champs de saisies;
  • Modification de l'exemple geoportalMap_localise.html : les services IPinfoDB et GeoNames sont utilisés en JSON;
  • Ajout du test basic-token-uncompressed.html pour tester l'API sans passer par la servlet api (lecture du getConfig et récupération du getContract);
  • Correction boggue sur geoportalMap_overview.html : ajout d'un timer sur les appels à Geoportal.Control.Information.showControls() et Geoportal.Control.Information.toggleControls() pour attendre que la carte soit prête;
  • Ajout des exemples geoportalMap_simple1.html, geoportalMap_simple2.html, geoportalMap_comparator.html et geoportalMap_ignRGE.html;
  • Correction pour IE7 des labelBorderColor et labelBorderSize non supportées;
  • Modification de la documentation en mode développeur par défaut;
  • Mise à jour de la documentation en ligne;
  • Mise à jour des composants Mediawiki et Joomla;

17/01/2011 (1.2) :

  • Remplacement d'OpenLayers 2.9.1 par OpenLayers 2.10; Prise en charge de http://trac.osgeo.org/openlayers/ticket/2870 (régression OpenLayers 2.10);
  • Application du ticket http://trac.osgeo.org/openlayers/ticket/2933 : chargement de l'API dans les navigateurs comptabiles HTML5;
  • Ajout du nouveau mécanisme évitant de charger OpenLayers.js ou Geoportal*.js qui sera mis en place avec OpenLayers 2.11 et retrait des *._scriptName;
  • Ajout des cartes littorales, topographiques, cassini et RPG 2007, 2008 et 2009. Désactivation des cartes de Cassini, Corine Land Cover. Mises à jour des échelles des couches;
  • Modification des Geoportal.VERSION_NUMBER : la chaîne est du type INF;DATE avec INF valant "Geoportal versionAPI typeAPI";
  • Modification des Geoportal.Viewer.Default et Geoportal.Viewer.Standard : le contrôleur Geoportal.Control.Information peut dorénavant s'escamoter/se minimiser; mise-à-jour des CSS;
  • Ajout de l'évènement controlvisibilitychanged sur OpenLayers.Map et prise en charge dans les contrôleurs Geoportal.Control.PermanentLogo, Geoportal.Control.Logo, Geoportal.Control.TermsOfService;
  • Ajout de l'évènement controldeleted sur OpenLayers.Map et prise en charge dans les contrôleurs Geoportal.Control.Projections, Geoportal.Control.Form et Geoportal.Control.MousePosition;
  • Ajout de la méthode OpenLayers.Map.getApproxScaleDenominator() en substitution de la méthode OpenLayers.Map.getScale();
  • Ajout de l'écouteur Geoportal.Control.SliderBase.displayInfo() pour l'évènement mouseover;
  • Prise en charge des évènements mapmouseover et mapmouseout dans Geoportal.Control.LayerSwitcher, Geoportal.Control.Floating, Geoportal.Control.ToolBox; Ajout des méthodes Geoportal.Control.mapMouseOut() et Geoportal.Control.mapMouseOver() en charge de lancer les évènements mapmouseover et mapmouseout;
  • Prise en charge de visibilitychanged sur OpenLayers.Protocol.Response pour arrêter le chargement dans les stratégies OpenLayers.Strategy.BBOX, OpenLayers.Strategy.Fixed;
  • Mise à jour de PROJ4JS et du catalogue IGNF pour les systèmes de référence INSPIRE. Ajout du support de l'option +axis= (patch envoyé au projet);
  • Remplacement des procédures de chargements KML, GPX, OSM, GeoRSS, GML et WFS par des nouvelles utilisant OpenLayers.Strategies et OpenLayers.Protocol (anticipation OpenLayers 3.0);
  • Développement de l'option preventDefaultBehavior du constructeur de Geoportal.Map pour supporter diverses sous-options;
  • Support des emprises sur l'affichage des logos des couches au travers de Geoportal.Control.Logo;
  • Support des Geoportal.Layer.Aggregate par Geoportal.Control.Loading;
  • Support de l'option logoSize à la création d'un Geoportal.Viewer;
  • Support en tant que tableau des propriétés description, legends, dataURL and metadataURL des couches par Geoportal.Control.LayerSwitcher. Mises à niveau des contrôleurs Geoportal.Control.AddImageLayer et Geoportal.Control.AddVectorLayer;
  • Support des couches Géoportail dans Geoportal.Control.AddVectorLayer;
  • Déplacement du code lié à l'évènement onload dans le body des exemples HTML et non dans l'en-tête;
  • Restriction des systèmes de projection de coordonnées "compatibles" aux seuls plate-carré et équidistant cylindrique;
  • Restriction des WMS du Géoportail aux seules projections légales;
  • Correction boggue dans Geoportal.Popup.setPointerCursorForFeature() : création d'un clone des styles modifiés pour éviter l'écrasement des styles originaux;
  • Correction de la taille des champs pour l'affichage des coordonnées dans Geoportal.Control.MousePosition;
  • Correction boggue OpenLayers.Renderer.*.setExtent() : cas où l'emprise est nulle;
  • Séparation des styles IE6 des autres styles;

22/11/2010 (1.0, 1.1) :

  • Ajout des paramètres center et zoom dans les exemples Flex;
  • Correction du calcul des résolutions des Geoportal.Layer.Grid : test sur les résolutions de la couche versus la base;
  • Correction des zooms minimum et maximum et correction de la pyramide des résolutions lors de l'ajout d'un service WMS-C;
  • Ajout du support de l'attribut skipAttributes sur les couches pour l'affichage des popups étendant le support actuel;
  • Correction d'une régression sur OpenLayers.Control.WMSGetFeatureInfo.buildWMSOptions() affectant l'API depuis la version 1.1 (le CRS envoyé n'est pas celui des couches, mais de la carte);
  • Correction typographique dans l'API Standard : "OpenLayers.Protocol" et non "OpenLayers.Protocole" (certaines classes OpenLayers manquaient);
  • Retrait de l'interception du clic droit dans la carte : trop de problèmes avec IE;
  • Correction boggue sur la fermeture des popup dans le cas d'un contrôleur gérant plusieurs couches;

18/10/2010 (1.1) :

  • Création des fichiers d'en-tête des APIs minimum, standard et étendue : GeoportalMin.js, GeoportalStandard.js et Geoportal.js;
  • Extension du composant Geoportal.Control.Logo : prise en compte du champ attribution;
  • Ajout de la propriété privée OpenLayers._document (avec ses méthodes OpenLayers.getDoc() et OpenLayers.setDoc() associées) pour contenir le document de travail courant. Modifications de toutes les classes OpenLayers et Geoportail qui utilisaient document directement;
  • Ajout des contrôleurs Geoportal.Control.PrintMap, Geoportal.Control.CSW et Geoportal.Control.PageManager;
  • Date of publication and author fields are now taken into account for GeoRSS streams;
  • Passage à PROJ4JS 1.0.2;
  • Mise-à-jour du catalogue IGNF de PROJ4JS pour ajouter les CRS basés sur RGTAAF07. Renommage de IGNF:TERA50GEO en IGNF:TERA50G. Retrait de IGNF:TERA50STPA;
  • Ajout de l'exemple sur les fils GeoRSS;
  • Ajout du style virtuel lors de l'utilisation d'OpenLayers.Control.ModifyFeature (geoportalAlert.html);
  • Activation de la case "Code postal" du moteur de recherche par adresses;
  • Modification d'OpenLayers.Control.Measure (patch 2820);
  • Récriture de Geoportal.Format.GPX, support des versions 1.0 et 1.1;
  • Ajout des styles "black" et "covisu" et corrections de boggues associés à la gestion des thèmes;
  • Ajout de la méthode Geoportal.Control.Form.buildRadioFields() et diverses optimisations dans Geoportal.Control.Form;
  • Ajout de l'ortho-photographie littoral dans Geoportal.Catalogue;
  • Support de OpenLayers.Request.abort() pour les contrôleurs Geoportal.Control.LocationUtilityService, Geoportal.Control.AddVectorLayer, Geoportal.Control.AddImageLayer;
  • Corrections de boggues sur Geoportal.Map : prise en compte de options.formatOptions correctement, vérification des contrôles déjà chargés, prise en charge du i18n sur des couches OpenLayers.Layer, prise en charge de OpenLayers.Layer.Markers pour les popup;
  • Amélioration du chargement de la fenêtre (Geoportal.Viewer.Default et Geoportal.Viewer.Standard);
  • Correction boggue sur l'exemple geoportalMap_providers.html (suite au portage en OpenLayers 2.9.1);
  • Prise en compte de la nouvelle capacité de la servlet API (clefs et instances multiples) sur certains exemples de test et de production;

02/08/2010 (1.1) :

  • Remplacement d'OpenLayers 2.8 par OpenLayers 2.9.1.

02/08/2010 (1.0) :

  • Déplacement de OpenLayers.Tile de l'API standard vers l'API minimum à cause de la gestion GeoRM;
  • Ajout de OpenLayers.Control.ArgParser, OpenLayers.Control.Attribution, OpenLayers.Control.PanZoom pour être en conformité avec OpenLayers.Map;
  • Ajout des styles olControlDragPanItemActive, olControlDragPanItemInactive, olControlZoomOutItemActive, olControlZoomOutItemInactive;
  • Le nombre de CRS lors de la lecture des capacités des WMS est maintenant une option de Geoportal.Control.AddImageLayer;
  • Amélioration du chargement des couches OpenLayers.Layer.GeoRSS dans Geoportal.Map.addLayer(), ajout d'une légende par défaut;
  • Ajout de la méthode Geoportal.Map.setCursor() et retrait de la règle cursor 'crosshair' sur la classe gpMap, l'API utilise la méthode pour assigner le type de curseur;
  • Correction d'un boggue sur Geoportal.Layer.OpenLS.LocationUtilityService.GEOCODE() et Geoportal.Layer.OpenLS.LocationUtilityService.REVERSE_GEOCODE() pour protéger les paramètres d'une destruction par clonage de ceux-ci;
  • Correction d'un boggue sur Geoportal.GeoRMHandler lors du partage de clefs ayant des écouteurs d'évènements;
  • Correction de fuites de mémoire dans Geoportal.Control.LayerSwitcher (évènements non libérés);
  • Correction de Geoportal.Viewer.Default pour IE (suppression d'une ligne d'un tableau vide provoquant un décalage d'un pixel);
  • Correction d'un boggue label sous OpenLayers.Renderer.VML (OpenLayers 2.9);
  • Correction d'un boggue OpenLayers.Layer.setOpacity() pour les couches à base d'OpenLayers.Layer.Vector;
  • Correction d'un boggue lors du chargement du type de service WFS dans Geoportal.Control.AddVectorLayer;
  • Correction d'un boggue sur Geoportal.Control.MeasureToolbar pour IE à cause d'une virgule trainant en fin de ligne;
  • Ajout des îles Amsterdam et Saint-Paul, de la Terre Adélie et de leurs systèmes de références de coordonnées;
  • Geoportal.Control.Logo est intégré dans l'API Géoportail minimum;
  • Les informations sur la GeoRM sont dorénavant stockées dans le catalogue de la carte et non plus la carte elle-même;
  • Les noms des territoires sont maintenant traduits (leur code sert de clef de traduction). L'exemple geoportalMap_all.html est mis-à-jour en accord;
  • proxy.php.zip and proxy.php.zip.md5 sont maintenant à jour;
  • Les exemples complexes (geoportalAddressForm.html, geoportalAlert.html, geoportalGeocoder.html, geoportalXYForm.html) ont été revus à cause d'IE;
  • Mise-à-jour de la documentation sur le non-support du protocole HTTPS.

21/06/2010 (1.0) :

  • Correction de boggue sur OpenLayers.Format.WFST.v1.getSrsName() : la propriété externalProjection n'était pas prise en compte quant elle est définie;
  • Correction de la règle CSS gpControlInformation pour éviter une erreur de calcul sur la largeur de l'élément DOM;
  • OpenLayers.Util.onImageLoadError() réutilise OpenLayers.Util.onImageLoadErrorColor quand les images ne sont en provenance ni d'OSM, ni du Géoportail;
  • Mise à jour de OpenLayers.Request.XMLHttpRequest sur le trunk OpenLayers;
  • Prise en compte des modifications du trunk de PROJ4JS (somerc);
  • Corrections boggues OpenLayers.Format.GML.Base sur les reprojections des BBOX des objets lus;
  • Améliorations de OpenLayers.Protocol.WFS.v1.prototype.read() pour supporter des features multiples en entrée;
  • Prise en compte de OpenLayers.Control.GetFeature d'OpenLayers 2.9;
  • Correction des problèmes de reprojection des BBOX dans OpenLayers.Control.GetFeature;
  • Ajout du support des requêtes par polygones dans OpenLayers.Control.GetFeature;
  • Prise en compte des cartes en très grandes échelles (1:4000 à 1:1000) dans les territoires;
  • Correction du moteur de changement de baseLayer pour Geoportal.Control.ZoomSlider, pour Geoportal.Control.ZoomBar (les zooms sont toujours au nombre de 22), des fonctions par défaut pour Geoportal.Control.SliderBase (les zooms retournent null et non -1 dans les fonctions génériques);
  • Correction boggue Geoportal.Control.Form : réactivation du clavier lors de la fermeture du contrôle;
  • Correction boggue dans la création des couches Geoportal.Map.addLayer : les options passées s'appliquent bien en dernier pour ne pas être écrasées par les valeurs par défaut;
  • Le contenu des Geoportal.Popup.Anchored est dorénavant basé sur name, description et les attributs étendus;
  • Correction boggue sur les Geoportal.Layer.Aggregate lors des changements de zoom et de baseLayer;
  • Ajout de l'option useDefaultBaseLayers pour désactiver la création des baseLayers Géoportail par défaut Geoportal.Viewer;
  • Correction de la méthode Geoportal.Viewer.addSphericalMercatorBaseLayer() et ajout de la méthode Geoportal.Viewer.addPlateCarreBaseLayer();
  • Correction boggue sur l'option global lors de l'appel à Geoportal.Viewer.addGeoportalLayer();
  • Vérification des extensions des fichiers dans Geoportal.Control.AddVectorLayer, du type de service dans Geoportal.Control.AddVectorLayer (WFS) et Geoportal.Control.AddImageLayer (WMS);
  • Correction boggue sur affectation des territoires SBA et SMA;
  • Nettoyage zIndex Geoportal.Control.LayerSwitcher;
  • Ajout de l'option attachDefaultPopup pour les couches vectorielles directement chargées via Geoportal.Map.addLayer() afin d'ajouter, en conjonction avec l'option preventDefaultBehavior, les popups automatiquement;
  • Correction de la désactivation du contrôle Geoportal.Control.Measure: réinitialisation de targetElement si besoin. Geoportal.Control.Measure.Azimuth ouvre un panneau de résultats (distance et angle). Réorganisation de Geoportal.Control.MeasureToolbar pour faciliter les surcharges utilisateurs. Ajout du style gpControlMeasureAzimuthAzimuthInput;
  • Modification du code des proxy PHP/Perl;
  • Amélioration des codes RIG pour les territoires des "Îles éparses";
  • Correction des explications liés à la GeoRM;
  • Correction de liens cassés dans la documentation;
  • Retrait de OpenLayers.Control.Measure de l'API standard (API étendue);
  • Retrait de OpenLayers.Control.MousePosition de l'API étendue (API standard);
  • Correction inclusion de OpenLayers.Control.OverviewMap dans l'API standard au lieu de l'API étendue;
  • Mise-à-jour de la date de la licence, ajout de la license XmlHttpRequest.js, ajout du lien téléchargement du code source de l'API dans le texte des licences;
  • Modification du style gpControlMeasureToolbarResult pour que sa hauteur s'adapte à son contenu. Ajout de la régle gpControlMeasureAzimuthAzimuthInput;
  • Prise en compte des tickets http://trac.openlayers.org/ticket/2501 et http://trac.openlayers.org/ticket/2096 dans OpenLayers.Control.Measure;
  • Mise-à-jour de XmlHttpRequest en version 1.0.3 (http://trac.openlayers.org/ticket/2065);
  • Ajout des évènements mapmouseover et mapmouseout (basé sur http://trac.openlayers.org/ticket/2577);
  • Prise en compte des évènements mapmouseover et mapmouseout dans OpenLayers.Control.KeyboardDefault (propriété activeOverMapOnly), OpenLayers.Map (propriété mapmouseEventsEnable sur Geoportal.Viewer);
  • Ajout de OpenLayers.Control.Click dont il suffit de surcharger les méthodes onClick(e) ou onDblClick(e);
  • Correction du boggue sur la méthode addFeatures() sur OpenLayers.Layer.Vector et OpenLayers.Layers.GML quant la propriété extractFolder est à true;
  • Surcharge de la méthode getDataExtent() de OpenLayers.Layers.GML pour prise en compte des objets sans primitive géométrique;
  • Récriture de la gestion des éléments de mesure (Geoportal.Control.MeasureToolbar, Geoportal.Control.Measure.Azimuth) pour faciliter les surcharges utilisateurs. Geoportal.Control.Measure.Azimuth affiche ses résultats dans une fenêtre avec la distance et l'angle;
  • Légère optimisation de la gestion du déplacement des Geoportal.Control.Floating;
  • Correction boggue Geoportal.OLS.Address des méthodes toString() et toHTML();
  • Les visualiseurs de l'API activent les options mapmouseEventsEnabled et activeOverMapOnly pour activer les évènements mapmouseover et mapmouseout;
  • Correction boggue lors de la destruction des contrôleurs de Geoportal.Viewer.Default et Geoportal.Viewer.Standard;
  • Suppression dans les exemples de la gestion du clavier hors de la carte gràce aux évènements mapmouseover et mapmouseout;
  • Ajout de la date de publication sur la version de l'API;
  • Corrections de boggues (IE) lors de la fermeture des pages contenant l'API;

07/04/2010 (1.0) :

  • Remplacement dans les sources de "Copyright 2008" en "Copyright (c) 2008-2010";
  • Correction affichage des projections UTM dans le cas où celles-ci sont les premières des projections d'affichage;
  • Retrait des fichiers htc des CSS;
  • Correction boggue des tooltips sous FF: retrait de l'interception des mousemove sur Geoportal.Control.LayerSwitcher et Geoportal.Control.ToolBox;
  • Correction des styles : généralisation des styles attachés aux boutons;
  • Ajout d'une pollution du cache lors des rejeux des 404;
  • Réactivation du code postal dans la recherche par adresse (bien que pas utilisé);
  • Ajout de la transformation degré décimal vers grade;
  • Ajout d'un formatage lors de la transformation degré décimal vers degré sexagécimal;
  • Correction boggue OpenLayers sur OpenLayers.Layer.Vector.getDataExtent();
  • Retour sur la gestion des sous-contrôles de Geoportal.Control.Panel : rapprochement avec OpenLayers;
  • Correction Geoportal.Control.PanelToggle : support des contrôles activé/désactivé en terme de CSS;
  • Retrait de Geoportal.Control.MeasureToolbar de l'API standard (retour forum);
  • Ajout du changement de langues sur Geoportal.Control.MeasureToolbox;
  • Ajout de Geoportal.Control.Measure.Azimuth, suite à des travaux d'élèves de l'ENSG;
  • Correction de Geoportal.Viewer.Default.setInformationPanelVisibility() : dans le cas false, une modification précédente avait désactivée le rappel de la méthode pendant le chargement initial de l'API;
  • Correction boggue sur Geoportal.Viewer.* lorsque infoCntrl est null lors d'un apple à setSize();
  • Ajout de OpenLayers.Format.DescribeLayer et OpenLayers.Format.GetFeatureInfo à l'API standard;
  • Ajout du support OpenLayers.Control.GetFeatureInfo lors de l'ajout d'une couche image par Geoportal.Control.AddImageLayer;
  • Corrections de la méthode request de OpenLayers.Control.GetFeatureInfo : le CRS utilisé n'est pas celui de la carte, mais de la première couche, seules les couches visibles et à portée sont requêtables, les réponses vides ne sont pas analysées;
  • Correction boggue champ à valeur null dans les réponses GetFeature des WFS;
  • Application de la correction de boggue 2563 (OL 2.9 RC2) sur le "style labelAlign contenant un caractère sous IE";
  • Désactivation de l'exemple WMS tuilé en WGS84 géographique sur OSM : service arrêté;

06/03/2010 (1.0) :

  • Les labels associés aux contrôles Geoportal.Control.LayerSwitcher, Geoportal.Control.ToolBox et Geoportal.Control.Floating permettent d'ouvrir / fermer le contrôle (clic ou double-clic);
  • Passage en CSS du bouton de fermeture du contrôle Geoportal.Control.Floating. La classe CSS est gpControlFloatingHeadBtnsClose;
  • Ajout du territoire ANF comme aggrégation des territoires GLP, MTQ, SBA et SMA;
  • Suppression d'un certain nombre de contrôleurs lors de la construction d'une carte "mini" avec Geoportal.Viewer.Default;
  • Ajout de Geoportal.Map.zoomToLonLatExtent();
  • Amélioration de Geoportal.Control.Floating.addContent() lors du calcul final de la taille de la fenêtre;
  • Ajout du support de la propriété renderIntent lots de la création des popups via Geoportal.Map.addLayer() pour améliorer le support du survol. Ajout d'un exemple montrant survol et clic sur KML;
  • Ajout des propriétés Geoportal.Map.beforeOnBeforeMove() et Geoportal.Map.afterOnBeforeMove() appelées au tout début / fin de l'interception de l'évènement "beforemove". Ne font rien par défaut;
  • Ajout de la propriété OpenLayers.Layer.onLoadError() pour permettre au développeur de gérer les erreurs de chargement;
  • Ajout des classes OpenLayers.Strategy dans l'API standard;
  • Ajout des projections ETRS Lambert conique conforme et équivalente pour la zone Europe avec l'algorithme laea de PROJ4JS;
  • Retrait des retours chariots des Javascripts en production;
  • Remplacement des comparaisons utilisant CLASS_NAME par l'opérateur instanceof;
  • L'opacité est dorénavant gérée par les évènements dans le gestionnaire de couches (Geoportal.Control.LayerSwitcher);
  • Geoportal.Control.PermanentLogo gère l'évènement "changebaselayer" et l'affichage ou non de couches Géoportail;
  • Ajout des évènements "tokenupdatestart", "tokenupdateend" et "tokenloaded", ainsi que de la propriété onTokenLoaded() sur le gestionnaire de jeton (Geoportal.GeoRMHandler.Updater);
  • Modification de la levée des évènements "loadstart", "move" et "moveend" pour systèmatiquement tester le retour du callback (tout OpenLayers.Layer);
  • Modification de la levée des évènements "reload" pour systèmatiquement tester le retour du callback (OpenLayers.Tile.WFS et OpenLayers.Tile.WFS);
  • Répartition des écouteurs d'évènements "changebaselayer" sur tout les types d'OpenLayers.Layer et Geoportal.Layer au lieu de Geoportal.Map;
  • Ajout de l'évènement "beforemove" sur OpenLayers.Map.moveTo() et sa prise en compte dans Geoportal.Map (ticket 2359 / 2360);
  • Ajout d'une méthode pour ajouter une baseLayer basée sur Mercator Sphérique;
  • Optimisation d'OpenLayers.Projection.transform() en lui permettant de traiter des tableaux et en prenant en compte la propriété bounds d'OpenLayers.Geometry (gain de 50% du temps dans les calculs);
  • Ajout du ticket 2317 (OpenLayers.Strategy.Refresh) pour les rafraîssements automatiques de couches;
  • Prise en compte des alias du Mercator Sphérique (EPSG:3785, EPSG:3857, EPSG:900913, EPSG:102113);
  • Ajout d'un cache sur les OpenLayers.Projection pour stocker les alias pour accélérer les tests;
  • Ajout des patches 2148, 2312 et 2349 pour la sélection des écritures via la propriété labelSelect, le positionnement des écritures via les propriétés labelXOffset et labelYOffset, et la gestion de l'arrière-plan des écritures via les propriétés labelBackgroundColor, labelBorderColor, labelBorderSize et labelPadding;
  • Prise en compte de la propriété layerLimit des WMS 1.3.0;
  • Modification de la méthode OpenLayers.Map.setBaseLayer() pour lever l'évènement "changebaselayer" avant l'appel à OpenLayers.Map.setCenter();
  • Ajout d'OpenLayers.Control.Graticule et de la méthode OpenLayers.Util.getFormattedLonLat(). L'évènement "changelang" est aussi intercepté;
  • Mise à niveau de PROJ4JS (http://trac.osgeo.org/proj4js/ticket/35);
  • Ajout de tests sur les multi-fournisseurs;
  • Amélioration de la gestion des zooms minimum et maximum de la carte lors de l'activation/désactivation d'une couche;
  • Retrait du centrage automatique de la carte :
    1 :
    les développeurs doivent appeler setCenter() ou zoomToExtent() dans leurs pages;
  • Réorganisation de Geoportal.Format.GPX pour préparer la version 1.1;
  • Ajout du support en lecture sur Geoportal.Format.Geoconcept, création de Geoportal.Layer.GXT sur des contributions de Jean-Marc Viglino (IGNF);
  • Ajout de deux exemples utilisant Yahoo! User Interface et MapFish;
  • Ajout de Geoportal.Lang dans l'API minimum pour bénéficier de la méthode Geoportal.Lang.add() et des traductions du Géoportail;
  • Mise à jour de PROJ4JS en version 1.0 qui intègre des mises à jour de l'IGN;
  • Retrait de toutes les méthodes liées qui se trouvaient dans Geoportal.Util aux calculs des tailles des éléments DOM. L'API repose dorénavant sur le concepteur de la page; LES MÉTHODES SUIVANTES DOIVENT ÊTRE MODIFIÉES :
    1 :
    Remplacer Geoportal.Popup.Anchored.setPointerCursorForFeature par Geoportal.Popup.setPointerCursorForFeature;
    2 :
    Remplacer Geoportal.Map.getKMLDefaults par Geoportal.Map.getPopupDefaults ;
    3 :
    Geoportal.Util.getElementRenderedDimensions n'existe plus, selon le contexte la remplacer par OpenLayers.Util.getRenderedDimensions ou Geoportal.Util.getComputedStyle, voire par rien !
    4 :
    Geoportal.Util.getBorders() n'existe plus, utiliser des appels à Geoportal.Util.getComputedStyle sur les propriétés suivantes border-left-width, border-right-width, border-top-width et border-bottom-width ;
    5 :
    Remplacer Geoportal.Util.getElementGuessedDimensions par OpenLayers.Util.getRenderedDimensions ;
    6 :
    Geoportal.Util.isDocumentReady disparait totalement.
  • Ajout du ticket 2195 (support des Folders) dans OpenLayers.Format.KML;
  • Ajout du support de Openlayers.Layer.WFS à Geoportal.Control.AddVectorLayer. Mise à niveau de OpenLayers.Format.WFSCapabilities : ticket 1176/2245 et contributions IGNF (WMS 1.3.0 et WFS 1.1.0);
  • Ajout du contrôleur Geoportal.Control.Loading et prise en charge de celui-ci dans Geoportal.Control.LayerSwitcher. Mise à jour des tests et exemples utilisant OpenLayers.Control.LoadingPanel. Récriture de OpenLayers.Control.LoadingPanel pour qu'il hérite de Geoportal.Control.Loading;
  • Ajout d'une méthode Geoportal.Control.Form.buildImageButton() et d'un drapeau mandatory pour modifier l'affichage des labels des champs de formulaire;
  • Ajout de Geoportal.Control.AddImageLayer pour insérer des couches WMS ou WMS-C. Mise à niveau de OpenLayers.Format.WMSCapabilities : ticket 2164, trunk d'OpenLayers et VendorSpecificCapabilities pour OSGeO WMS-C (contribution IGNF);
  • Amélioration de la méthode OpenLayers.Layer.calculateInRange() pour prendre en compte l'emprise maximale des couches par rapport à la fenêtre de visualisation courante;
  • Ajout des grades et radians à l'affichage des coordonnées géographiques. Les degrés sexagésimaux ne sont plus l'unité par défaut (degrés décimaux). Les coordonnées peuvent maintenant être modifiées à la main (provoque un recentrage);
  • Modifications des font-size et text-align des contrôleurs de projections et positions de la souris;
  • Ajout des projections UTM pour Geoportal.Control.MousePosition (basé sur une contribution de gfilliere);
  • Retrait de la prise en charge de la saisie des polygones à trous, non portée en OpenLayers 2.8;
  • Extension d'OpenLayers.Format.KML de la version 2.8 dans l'API pour ajouter le support des autres ExtendedData;
  • Remplacement d'OpenLayers 2.7 par OpenLayers 2.8;
  • Écriture des polygones, multi-polygones, multi-lignes et multi-points ajoutée dans Geoportal.Format.GPX à minima;
  • Geoportal.Control.AddVectorLayer : suppression de la case à cocher "à main levée ?" si aucune couche linéaire ou polygonale n'est utilisée, suppression de l'entrée "URL" si aucune couche KML/GPX n'est utilisée. Récriture des options qui maintenant dépendent des types de couches. Positionnement sur l'emprise des couches KML, GPX et OSM;
  • Ajout de Geoportal.Control.ToolBox.createControlAnchor() pour faciliter l'insertion de contrôleurs dans la boîte à outils;
  • Seul le territoire courant et le Monde sont chargés par l'API accélérant les temps de chargement des pages Web;
  • Changement du curseur en 'pointer' lors du survol des objets issus de KML/GPX/OSM;
  • Utilisation de la propriété panMapIfOutOfView d'OpenLayers.Popup dans Geoportal.Popup.Anchored pour ne pas re-centrer systématiquement les fenêtres. Le comportement par défaut de l'API reste cependant inchangé : recentrage des fenêtres.
  • Corrections de boggues :
    • Ecriture des règles behavior et cursor modifiées sous IE : les url() relatives le sont par rapport à la page web, pas la CSS;
    • Ajout de la couche parcelles cadrastrales sur la Guadeloupe, Martinique et Réunion;
    • Geoportal.Map.render() se comporte désormais correctement;
    • Prise en compte au plus prêt de OpenLayers.Control.SelectFeature pour les survols pour gérer les contrôles multiples sur un même objet;
    • Couleur de fond des popups (gpPopupContent) n'est plus bloquée à blanc, mais héritée du style gpPopup;
    • Longueur des noms de couches affichés revue dans le gestionnaire de couches (cas sans ascenseur);
    • Utilisation du trunk d'OpenLayers pour corriger un boggue dans la méthode OpenLayers.Map.updateSize();
    • Prise en compte du displayProjection lors d'un changement de baseLayer (Geoportal.Control.MousePosition et Geoportal.Control.Projections);
    • Gestion de la synchronisation des visibilités sur l'évènement "changelayer";
    • Fuites de mémoire des setTimeout() par libération du timer;
    • Condition d'appel à Geoportal.Viewer.setSize() lors de la modification de la div de la carte;
    • Application des patches OpenLayers sur les fuites de mémoire sous IE précédent la version 8 (changeset/9759, 9763);
    • Calcul de la carte pour Geoportal.Viewer.Standard;
    • Écriture des polygons dans Geoportal.Format.Geoconcept, contribution de Jean-Marc Viglino (IGNF);
    • OpenLayers.Control.OverviewMap quand le contrôleur est hors du panneau d'affichage de la carte;
    • Ajout du code 54 de la touche -/6 des certains portables français pour OpenLayers.Control.KeyboardDefaults;
    • % et em dans le style de la div de la carte sont maintenant pris en compte;
    • Fuite de mémoire sur Geoportal.Control.LayerSwitcher entraînant une erreur lors de la fermeture des pages;
    • Geoportal.Control.Form.changeLang() mauvais élément DOM modifié;
    • proxy.pl : utilisation de IO::Uncompress::Gunzip à la place de IO::Uncompress:Unzip quand l'en-tête HTTP Content-Encoding: gzip est trouvée. Mise à jour du répertoire téléchargement;
    • Remplacement de argument.callee.caller pour portage sur opera (9.64);
    • Diverses méthodes destroy() remisesà niveau;
    • OpenLayers 2.8 sur l'interprétation de la balise BalloonStyle;
    • Proj4js.loadScript() quand la définition du SRC est absente;
    • Portage de l'algorithme d'utilisation des objets style en IE8 (boggue lors du calcul des tailles de div);
    • Geoportal.Viewer.*.setSize() quand exécuté pendant le onload;
    • Mode de compatibilité IE8 comme suggéré pour les versions antétieures à la 1.0;
    • Interprétation des "$[]" dans les BalloonStyle, OpenLayers les transforme en "${}" lors de la lecture et les charge dans feature.style.balloonStyle et non dans feature.style.text. Prise en compte des ExtendedData dans l'interprétation des styles ('displayName' n'est pas encore supporté);
  • Documentation :
    • Beaucoup de corrections typographiques ;
    • Amélioration de la documentation de Geoportal.Control.Logo;
    • Ajout de la documentation format OpenStreetMap (OSM) et exemples associés à OpenStreetMap;
    • Ajout d'un exemple sur des WMS tuilés;
    • AJout du changement de projections dans l'exemple sur les alertes.

12/05/2009 (1.0beta4) :

  • Ajout de la famille OpenLayers.Popup.Framed dans l'API standard;
  • Amélioration du calcul de la taille de la carte quand la largeur ou la hauteur est indiquée en unité relative (%, em, pt) ;
  • Corrections de boggues :
    • Correction boggue d'affichage des coordonnées cartésiennes dans Geoportal.Control.MousePosition.displayEN ;
  • Documentation :

06/05/2009 (1.0beta4) :

  • Création d'une API minimum, standard et étendue :
    • Minimum : elle permet de connecter les couches Géoportail protégées par la GeoRM dans une application à base d'OpenLayers sans avoir à charger la partie IHM de l'API ;
    • Standard : elle permet le chargement des couches standard du Géoportail, ainsi que le chargement des fichiers KML et GPX. L'accès à des services WMS est aussi inclus ;
    • Étendue : elle utilise toutes les fonctionnalités de l'API Géoportail et d'OpenLayers.
  • Support des API compressées quand l'en-tête HTTP Accept-Encoding: gzip est envoyé par le butineur ;
  • Ajout de la classe Geoportal.Layer.Aggregate pour assembler des couches ;
  • Ajout du composant Geoportal.Control.Floating pour avoir des contrôleurs pouvant se déplacer ;
  • Support des conversions degrés sexagésimaux en degrés décimaux ;
  • Support des degrés sexagésimaux dans la méthode Geoportal.Map.setCenterAtLonLat() ;
  • Premier support du format OpenLS LocationUtilityService (lecture/écriture);
  • Ajout des objets Geoportal.OLS pour l'analyse de Geoportal.Format.XLS ;
  • Utilisation de la méthode surchargée OpenLayers.i18n() pour les localisations en lieu et place de la méthode Geoportal.i18n() qui est la surcharge pour faciliter les transitions vers OpenLayers ;
  • Déplacement des variables globales et fonctions de l'espace de nommage OpenLayers.Ajax dans l'espace de nommage OpenLayers.Request.XMLHttpRequest :
    • PARSED_OK ;
    • PARSED_EMPTY ;
    • PARSED_UNKNOWN_ERROR ;
    • getParseErrorText() ;
    • getText().
  • Geoportal.Map est dorénavant une OpenLayers.Map. Deux classes ont été ajoutées :
    • Geoportal.Viewer : classe de base des visualisateurs Géoportail ;
    • Geoportal.Viewer.Default : implémentation par défaut d'un visualisateur Géoportail.
    • Geoportal.Viewer.Standard : un visualisateur ressemblant à celui du Géoportail ;
    • LES PORTIONS DE CODE ANTÉRIEUR À 1.0BETA4 SUIVANTES DOIVENT ÊTRE MODIFIÉS :
      1 :
      Modifier http://api.ign.fr/api par http://api.ign.fr/geoportail/api ;
      2 :
      Remplacer INSTANCE.addControl par INSTANCE.getMap().addControl ;
      3 :
      INSTANCE.addGeoportalLayer() ne retourne plus rien ;
      4 :
      Remplacer INSTANCE.addGeoportalLayers(INSTANCE.allowedGeoportalLayers) par INSTANCE.addGeoportalLayers() ;
      5 :
      Remplacer INSTANCE.addLayers par INSTANCE.getMap().addLayers ;
      6 :
      Remplacer INSTANCE.addLayer par INSTANCE.getMap().addLayer ;
      7 :
      Remplacer INSTANCE.addPopup par INSTANCE.getMap().addPopup ;
      8 :
      Remplacer INSTANCE.allowedGeoportalLayers par INSTANCE.getMap().allowedGeoportalLayers ;
      9 :
      Remplacer INSTANCE.getDisplayProjection par INSTANCE.getMap().getDisplayProjection ;
      10 :
      Remplacer INSTANCE.getPopupDefaults par INSTANCE.getMap().getPopupDefaults ;
      11 :
      Remplacer INSTANCE.getProjection par INSTANCE.getMap().getProjection ;
      12 :
      Remplacer INSTANCE.removePopup par INSTANCE.getMap().removePopup ;
      13 :
      Remplacer INSTANCE.setCenterAtLonLat par INSTANCE.getMap().setCenterAtLonLat ;
      14 :
      Remplacer INSTANCE.setCenter par INSTANCE.getMap().setCenter ;
      15 :
      Remplacer INSTANCE.setLocale par INSTANCE.getMap().setLocale.
  • Changement du nom du visualisateur par défaut de map à geoportalViewer ;
  • Réécriture de la classe Geoportal.Control.Information : création des classes Geoportal.Control.Projections, Geoportal.Control.MousePosition et Geoportal.Control.Copyright ;
  • Ajout du changement d'unité du système d'affichage de coordonnées ;
  • Changement de la classe Geoportal.Control.AddLayerToolbar en Geoportal.Control.LayerToolbar avec les modifications nécessaires des styles CSS ;
  • Changement de la méthode Geoportal.Map.setCenter en Geoportal.Map.setLonLatCenter et réciproquement pour être compatible avec OpenLayers.Map.setCenter ;
  • Ajout du composant Geoportal.Control.Form pour la construction et gestion des formulaires HTML ;
  • Ajout du composant Geoportal.Control.MeasureToolbar pour les mesures de distances et de surfaces ;
  • Ajout du composant OpenLayers.Control.LoadingPanel (addin OpenLayers) ;
  • Changement de la méthode Geoportal.Catalogue.getDisplayProjection() en Geoportal.Catalogue.getDisplayProjections(). Elle retourne désormais un tableau de système de référence de coordonnées OpenLayers.Projection ;
  • Ajout des éléments suivant en lecture/écriture pour OpenLayers.Format.WMC : resolutions, nativeResolutions, nativeProjection, maxZoomLevel, minZoomLevel, SRS sur les couches et paramétrage de l'utilisation du service des Server ;
  • Remplacement des derniers appels à $() par OpenLayers.Util.getElement() restant dans l'API causant un boggue au chargement dans SPIP (reporté sur la version 1.0beta3) ;
  • Prise en charge de la saisie des polygones à trous via la sandbox donut polygons;
  • Corrections de boggues :
    • Correction à minima d'un boggue OpenLayers sur la fermeture des popups sous Firefox (reporté sur la version 1.0beta3) ;
    • Correction boggue OpenLayers sur XMLSerializer() pour les butineurs IE : remplacement de this.xmldom par node.xml dans OpenLayers.Format.XML.write().
    • Geoportal.Catalogue.getDisplayProjections() : compatibilité avec 1.0beta2 rétablie (paramètre territory optionnel) ;
    • Sauvegarde de la visibilité et de l'opacité des couches lors du changement de la carte de base locale / mondiale. Intégration du patch dans la surcharge d'OpenLayers ;
    • Activation de la suppression des évènements "movestart" et "moveend" lors de la fermeture d'une popup par un "clickout" pour Firefox ;
    • Taille de la carte corrigée quand la div de la carte est basée sur une règle CSS ;
    • Clic proche du panneau d'opacité des couches ne provoque plus une désactivation de la navigation ou du zoom ;
    • Geoportal.Control.Panel émet désormais l'évènement "controlactivated" pour les contrôleurs de type OpenLayers.Control.TYPE_TOGGLE ;
    • la méthode OpenLayers.Format.KML.parseAttributes() n'analyse pas correctement une balise quant celle-ci est composée de 2 noeuds fils. Ce boggue apparaît sous Firefox 2/3, pas sous IE 7. La correction consiste à gérer ce cas (OpenLayers ne gérait qu'un ou trois noeuds fils) ;
    • Règles CSS modifiées :
      • retrait de projectionInfoCRS ;
      • retrait de gpCoordonneClass ;
      • retrait gpMapCopyClass ;
      • retrait de gpEchelleClass ;
      • retrait de gpProjectionInfoClass ;
      • retrait de gpControlInformationContainerClass ;
      • retrait de gpButtonSelectProj ;
      • retrait de gpSelectProjections ;
      • remplacement de gpLayerDivClass.alternate par gpLayerDivClassAlternate ;
      • remplacement de gpLayerSpanClass.notInRange par gpLayerSpanClassNotInRange ;
      • ajout de olControlLoadingPanel ;
      • ajout de gpSelectUnits ;
      • remplacement de gpFloatingDiv* par gpControlFloating* ;
  • Documentation :
    • Beaucoup de corrections typographiques ;
    • Geoportal.Catalogue.getDisplayProjections() : ajout du paramètre territory manquant ;
    • Orientée vers les utilisateurs de l'API plutôt que vers les développeurs de celle-ci ;
    • Ajout d'un exemple sur une utilisation avancée de l'API ;
    • Ajout des classes et méthodes surchargées d' OpenLayers et PROJ4JS.

04/11/2008 (1.0beta3) :

  • Utilisation d'OpenLayers 2.7 :
    • affichage Mac possible via le support intégré de Canvas ;
  • Support du changement de projection lors du passage carte par territoire à la carte mondiale ;
  • Masquage/Démasquage de l'onglet contenant le retrait d'une couche, la modification de la transparence et le zoom sur l'emprise ;
  • Ajout de l'écriture du format Géoconcept export (expérimental) ;
  • Amélioration du support du format GPX en lecture/écriture (distinct de celui d'OpenLayers) ;
  • Ajout d'un composant d'édition intégré au gestionnaire de couches ;
  • Ajout d'un composant d'ouverture de couches vectorielles (optionnel) ;
  • Ajout de deux exemples avancés (premières versions) :
    • Synchronisation formulaire HTML et carte pour des données ponctuelles ;
    • Édition de ponctuels, linéaires et surfaciques.
  • Corrections de boggues :
    • Noms longs des couches mal affichés dans le gestionnaire ;
    • Réactivation de l'évènement unload pour Firefox ;
    • Panneaux complexes sous IE.

16/09/2008 (1.0beta3 intermédiaire) :

  • Amélioration du cache Géoportail (changement des résolutions) ;
  • Suppression des dépendances "Prototype", "Script.aculo.us" et "Archetype" :
    • récriture des contrôleurs de zoom et de transparence ;
  • Ajout de méthodes de OpenLayers.Map dans Geoportal.Map pour faciliter le développement ;
  • Mise en CSS de nombreux éléments de l'interface ;
  • Mise en place d'une nouvelle gestion des droits :
    • abandon de l'utilisation d'un timer ;
    • utilisation des évènements clients.
  • Support du changement d'affichage des systèmes de références de coordonnées ;
  • Ajout des boutons "Retirer la couche" et "Zoomer sur l'emprise de la couche" dans le gestionnaire ;
  • Documentation :
    • Basée sur NaturalDocs.

03/07/2008 (1.0beta2):

  • Utilisation d'OpenLayers 2.6 ;
  • Amélioration de la gestion des popups KML en version 1.0beta1 ;
  • Compatibilité de la version 1.0beta1 avec Firefox 3 ;
  • Documentation :
    • Mise à disposition des sources de l'API sur le site de documentation.

04/06/2008 (1.0beta1):

  • Passage en licence BSD des sources de l'API ;
  • Amélioration du support des reprojections des KML pour les géométries multiples ;
  • Support préliminaire du format GPX (trace GPS) ;
  • Support de la reprojection en géographique des données du Géoportail ;
  • Corrections de boggues mineures.
  • Documentation :
    • Ajout de la documentation OpenLayers 2.5 et des exemples OpenLayers 2.5 ;
    • Amélioration de la documentation Javascript de l'API.

21/04/2008 (1.0beta):

  • Livraison initiale de l'API Géoportail basée sur OpenLayers 2.5.