ThinkGeo.com    |     Documentation    |     Premium Support

Unable to set BackgroundColor in OverlaySwitcher in 5.5?

Hi,


It looks like I'm unable to set the background color of the overlay switcher after switching to 5.5.


I can set the "rounded edge" color, but the rest of the overlay switcher remains a very pale white (?)  with white text on. 


Not very readable, and I also cannot set the text color.


Is any of this solved in later DLL's, or is there some way to remedy this ?


Cheers.


 



Hello Lars,


Although I'm not that familiar with the Web Edition API, I do know that it is fairly easy to style the Overlay Switcher using CSS (cascading style sheets).  For example, here is a snippet of CSS that makes the switcher panel's text black and sets the background color to a light yellow.  There is also an opacity declaration here that controls how transparent the switcher panel itself should be (with 0 being completely invisible, and 1.0 being fully opaque).



#LayerSwitcher {
   color: #000000;  /* Make the text black */
}

#LayerSwitcher > div,
#LayerSwitcher > div > span {
   background-color: #ffffcc !important;  /* Make the background yellow */
   opacity: 0.75;  /* Set the opacity to 75% */
}


Of course you can modify the above to suit your design needs. Let us know if that works for you.



Thanks,

Brian



Brian,


 Thank you for your suggestion. I hope that this is going to help Lars.



Hi both, 
  
 It works, but the nice rounded corners have disappeared, and a background color has been added around the minimizer button while the switcher pane is minimized … 


Good point, Lars.  Here is an updated CSS snippet that corrects this.  It preserves the rounded corners by separating the background color declaration into two parts, and making one of them more specific.  This in turn also prevents the new color from remaining visible when the panel is minimized.



#LayerSwitcher {
   color: #000000;  /* Text color of the overlay switcher controls */
}

#LayerSwitcher_layersDiv {
   background-color: #ffffcc;  /* Background color of the overlay switcher panel */
   opacity: 0.75;  /* Set the opacity to 75% */
}

#LayerSwitcher > div > span {
  background-color: #ffffcc !important;  /* Background color of the rounded corners */
}


Hope that helps!



Thanks,

ThinkGeo Support



Hi, 
  
 That worked. Thanks. 
  
 But I’m still curious as to why it doesn’t work using the MapTools methods. Is it a bug ? 
  
 Cheers 


Hi Lars, 
  
 This bug caused by activeColor don’t used in updated OpenLayers package. 
  
 We have fixed this bug in latest package. 
  
 You can get it and have a try after clear browser cache. 
  
 Regards, 
  
 Don

Hi Lars,



To be specific, you can get a revised version of Map Suite Web Edition that contains a fix for this bug by downloading the most recent Daily Build package from our Customer Portal.  Once you do that, you'd just extract the DLLs from the daily build package and reference them in your project in place of your older DLLs.



Once you login to the Customer Portal, click on "My Product Downloads" and then click either the Daily Development Builds tab or the Daily Production Builds tab.  The Daily Production Builds contain only bugfixes and are more stable (i.e., tested for production use).  By comparison, the Daily Development Builds contain brand new features, some of which are beta or experimental, with stability not 100% guaranteed.



For more info about our daily build system, see this wiki article.

Thanks,

ThinkGeo Support