Fixed a regression introduced by r9271. Now Format.Text works as

described in #1844. r=tschaub (closes #2043)


git-svn-id: http://svn.openlayers.org/trunk/openlayers@9286 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
ahocevar
2009-04-14 07:22:55 +00:00
parent 4b9393c809
commit 1c319bc4a7
2 changed files with 6 additions and 11 deletions
+3 -8
View File
@@ -50,12 +50,12 @@ OpenLayers.Format.Text = OpenLayers.Class(OpenLayers.Format, {
initialize: function(options) { initialize: function(options) {
options = options || {}; options = options || {};
if(options.extractStyles == true) { if(options.extractStyles !== false) {
options.defaultStyle = { options.defaultStyle = {
'externalGraphic': OpenLayers.Util.getImagesLocation() + 'externalGraphic': OpenLayers.Util.getImagesLocation() +
"marker.png", "marker.png",
'graphicXSize': 21, 'graphicWidth': 21,
'graphicYSize': 25, 'graphicHeight': 25,
'graphicXOffset': -10.5, 'graphicXOffset': -10.5,
'graphicYOffset': -12.5 'graphicYOffset': -12.5
}; };
@@ -96,7 +96,6 @@ OpenLayers.Format.Text = OpenLayers.Class(OpenLayers.Format, {
null; null;
var icon, iconSize, iconOffset, overflow; var icon, iconSize, iconOffset, overflow;
var set = false; var set = false;
var styleSet = false;
for (var valIndex = 0; valIndex < vals.length; valIndex++) { for (var valIndex = 0; valIndex < vals.length; valIndex++) {
if (vals[valIndex]) { if (vals[valIndex]) {
if (columns[valIndex] == 'point') { if (columns[valIndex] == 'point') {
@@ -115,17 +114,14 @@ OpenLayers.Format.Text = OpenLayers.Class(OpenLayers.Format, {
else if (columns[valIndex] == 'image' || else if (columns[valIndex] == 'image' ||
columns[valIndex] == 'icon' && style) { columns[valIndex] == 'icon' && style) {
style['externalGraphic'] = vals[valIndex]; style['externalGraphic'] = vals[valIndex];
styleSet = true;
} else if (columns[valIndex] == 'iconSize' && style) { } else if (columns[valIndex] == 'iconSize' && style) {
var size = vals[valIndex].split(','); var size = vals[valIndex].split(',');
style['graphicWidth'] = parseFloat(size[0]); style['graphicWidth'] = parseFloat(size[0]);
style['graphicHeight'] = parseFloat(size[1]); style['graphicHeight'] = parseFloat(size[1]);
styleSet = true;
} else if (columns[valIndex] == 'iconOffset' && style) { } else if (columns[valIndex] == 'iconOffset' && style) {
var offset = vals[valIndex].split(','); var offset = vals[valIndex].split(',');
style['graphicXOffset'] = parseFloat(offset[0]); style['graphicXOffset'] = parseFloat(offset[0]);
style['graphicYOffset'] = parseFloat(offset[1]); style['graphicYOffset'] = parseFloat(offset[1]);
styleSet = true;
} else if (columns[valIndex] == 'description') { } else if (columns[valIndex] == 'description') {
attributes['description'] = vals[valIndex]; attributes['description'] = vals[valIndex];
} else if (columns[valIndex] == 'overflow') { } else if (columns[valIndex] == 'overflow') {
@@ -142,7 +138,6 @@ OpenLayers.Format.Text = OpenLayers.Class(OpenLayers.Format, {
geometry.transform(this.externalProjection, geometry.transform(this.externalProjection,
this.internalProjection); this.internalProjection);
} }
style = styleSet ? style : null;
var feature = new OpenLayers.Feature.Vector(geometry, attributes, style); var feature = new OpenLayers.Feature.Vector(geometry, attributes, style);
features.push(feature); features.push(feature);
} }
+3 -3
View File
@@ -6,7 +6,7 @@
t.plan(5); t.plan(5);
var format = new OpenLayers.Format.Text({extractStyles: true}); var format = new OpenLayers.Format.Text({extractStyles: true});
var features = format.read(OpenLayers.Util.getElement("content").value); var features = format.read(OpenLayers.Util.getElement("content").value);
t.eq(features[0].style, null, "style is null if no style props set"); t.eq(features[0].style.externalGraphic, format.defaultStyle.externalGraphic, "style is set to defaults if no style props set in text file");
var features = format.read(OpenLayers.Util.getElement("contentMarker").value); var features = format.read(OpenLayers.Util.getElement("contentMarker").value);
t.eq(features[0].style.externalGraphic, "../../img/marker.png", "marker set correctly by default."); t.eq(features[0].style.externalGraphic, "../../img/marker.png", "marker set correctly by default.");
@@ -15,9 +15,9 @@
t.eq(features[0].style.externalGraphic, "marker.png", "marker set correctly from data."); t.eq(features[0].style.externalGraphic, "marker.png", "marker set correctly from data.");
// t.eq(format.defaultStyle.externalGraphic, "../../img/marker.png", "defaultStyle externalGraphic not changed by pulling from data"); // t.eq(format.defaultStyle.externalGraphic, "../../img/marker.png", "defaultStyle externalGraphic not changed by pulling from data");
var format = new OpenLayers.Format.Text(); var format = new OpenLayers.Format.Text({extractStyles: false});
var features = format.read(OpenLayers.Util.getElement("content2").value); var features = format.read(OpenLayers.Util.getElement("content2").value);
t.eq(features[0].style, null, "null default style results in null style property, even with style properties used"); t.eq(features[0].style, null, "extractStyles: false results in null style property, even with style properties used");
} }
function test_extra(t) { function test_extra(t) {
t.plan(1); t.plan(1);