packages feed

olwrapper-0.3.7: wrapper/OpenLayers.hs

{-|
Module      :  OpenLayers Wrapper mothership
Description :  combine OpenLayers with Fay
-}
module OpenLayers where
import           Prelude hiding (void)
import           OpenLayers.Func (void, setDefaultView, setTarget)
import           FFI
import           Fay.Text
import           OlApp (targetId, designMap)
-- | Adds an default naked OpenLayers Map Object
addDefaultMap :: Fay ()
addDefaultMap = ffi "olmap = new ol.Map({renderer: 'canvas'})"
{-|
  Initialises an object of the OpenLayers Map as HTML object.
  The variable name \"olc\" must be reserved for the whole website!
-}
defineCode :: Fay ()
defineCode = ffi "olc = $(olmap)[0]"
-- | Initialises an OpenLayers View and load the definitions from the OpenLayers Webapplication defined in "OlApp"
olwrapperLoad :: Fay ()
olwrapperLoad = void $ do
    addDefaultMap
    defineCode
    setTarget targetId
    setDefaultView
    designMap