[OpenLayers-Users] rules depending on state
Andreas Hocevar
andreas.hocevar at gmail.com
Tue May 13 14:18:59 EDT 2008
Pierre GIRAUD wrote:
> Yep,
> I already tried that and this works great.
> However, what if I want to set fillColor, strokeColor, fillOpacity and
> strokeOpacity at the same time ? This is really painful.
> And it seems like I need to provide a valid value for each possible
> value of state. Default style won't be applied to features that aren't
> in the switch cases.
>
> I would prefer something like :
> var lookup = {
> 'Insert': {
> fillColor: 'green',
> fillOpacity: 0.5
> },
> ...
> };
>
In that case, we would have to add a context option to
StyleMap.addUniqueValueRules. Should be no big deal. Can you please
create a ticket so we don't forget that me might want to do that?
Regards,
Andreas.
> Regards,
> Pierre
>
>
> On Tue, May 13, 2008 at 4:35 PM, Andreas Hocevar
> <andreas.hocevar at gmail.com> wrote:
>
>> Hey Pierre,
>>
>> without having tried, something like the following should work:
>>
>> var context = {
>> getStateColor: function(feature) {
>> switch(feature.state) {
>> case "Insert": return "green";
>> case "Update": return "yellow";
>> case "Delete": retrun "red";
>> }
>> }
>> }
>>
>> var styleMap = new OpenLayers.StyleMap(new OpenLayers.Style({
>> strokeColor: "${getStateColor}"
>> }, {context: context}));
>>
>> Regards,
>> Andreas.
>>
>>
>> Pierre GIRAUD wrote:
>>
>>
>>>
>>> Hello OpenLayers styleMap gurus,
>>>
>>> I would like to have different symbolizers for the features depending
>>> on their state property.
>>> The addUniqueValueRules would look perfect for that but the context of
>>> the generated rules is feature.attributes. The state will not be
>>> evaluated because it's not one of those attributes.
>>>
>>> Has anyone a workaround to advice ?
>>>
>>> Regards,
>>>
>>> Pierre
>>> _______________________________________________
>>> Users mailing list
>>> Users at openlayers.org
>>> http://openlayers.org/mailman/listinfo/users
>>>
>>>
>>>
>>
> _______________________________________________
> Users mailing list
> Users at openlayers.org
> http://openlayers.org/mailman/listinfo/users
>
More information about the Users
mailing list