-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | An OpenLayers JavaScript Wrapper and Webframework with snaplet-fay
--
@package olwrapper
@version 0.4.1
module OpenLayers.Types
-- | The Projectionlike for WGS84
wgs84proj :: Projectionlike
-- | The Projectionlike for Mercator
mercatorproj :: Projectionlike
-- | Layers with IDs are using GeoId
type GeoId = Integer
-- | OpenLayers Projection constructed f.e. with 'Projection "EPSG:4326"'
data Projectionlike
Projection :: String -> Projectionlike
-- | constructor for a coordinate with x,y and projection
data Coordinate
Coordinate :: Double -> Double -> Projectionlike -> Coordinate
-- | first coordinate
x :: Coordinate -> Double
-- | second coordinate
y :: Coordinate -> Double
-- | projection
from :: Coordinate -> Projectionlike
-- | Layer Opacity from min=0 (not visible) to max=100
data Opacity
Opacity :: Integer -> Opacity
-- | defining a new feature to add to the map, possible are GeoPoint
-- and GeoLine
data GeoFeature
-- | A GeoPoint is a styled point feature with an id
GeoPoint :: Coordinate -> GeoId -> GeoPointStyle -> GeoFeature
-- | position with a Coordinate
pt :: GeoFeature -> Coordinate
-- | id for the feature with GeoId
id :: GeoFeature -> GeoId
-- | pointstyle with GeoPointStyle
pstyle :: GeoFeature -> GeoPointStyle
-- | A GeoLine is a styled line feature with an id
GeoLine :: [Coordinate] -> GeoId -> GeoLineStyle -> GeoFeature
-- | linepoints as a list of Coordinate
pts :: GeoFeature -> [Coordinate]
-- | id for the feature with GeoId
id :: GeoFeature -> GeoId
-- | linestyle with GeoLineStyle
lstyle :: GeoFeature -> GeoLineStyle
-- | defining a style for a GeoLine feature
data GeoLineStyle
GeoLineStyle :: String -> Integer -> GeoLineStyle
-- | line color, can be a name (red) or code (#FF0000)
color :: GeoLineStyle -> String
-- | width of the line
width :: GeoLineStyle -> Integer
-- | defining a style for a circled GeoPoint feature
data GeoPointStyle
GeoPointStyle :: Integer -> String -> String -> Integer -> GeoPointStyle
-- | radius of the circle
radius :: GeoPointStyle -> Integer
-- | fill color of the circle, can be a name (red) or code (#FF0000)
fillcolor :: GeoPointStyle -> String
-- | line color of the border of the circle, name (red) or code (#FF0000)
outcolor :: GeoPointStyle -> String
-- | width of the border of the circle, if 0 no outcolor needed
outwidth :: GeoPointStyle -> Integer
-- | list of possible mapsources
data MapSource
-- | MapQuest's satellite
Sat :: MapSource
-- | MapQuest's hybrid
Hyb :: MapSource
-- | MapQuest's OpenStreetMap
Osm :: MapSource
-- | OpenStreetMap
OSM :: MapSource
-- | puts the sources from MapQuest in a list
mapQuests :: [MapSource]
-- | transform MapSource to String and handle wrong input
showMapSource :: MapSource -> String
instance Show MapSource
instance Eq MapSource
module OpenLayers.Internal
-- | a functor to ignore the result of the function, such as the return
-- value of an IO action.
void :: Fay f -> Fay ()
module OpenLayers.Html
-- | a <a> element
aElement :: [Char]
-- | a <br> element
brElement :: [Char]
-- | a <p> element
pElement :: [Char]
-- | a <div> element
divElement :: [Char]
-- | a <form> element
formElement :: [Char]
-- | a <input> element
buttonElement :: [Char]
-- | a <input> element of type text
inputTextElement :: [Char]
-- | a <input> element of type checkbox
inputCheckboxElement :: [Char]
-- | add a new html element to an existing and fill the content of the new
-- with text
addTextToHtml :: String -> String -> String -> Fay ()
-- | add a new button (type=submit) to an existing html element with a text
-- and a method
addButton :: String -> String -> Fay () -> Fay ()
-- | add a new checkbox to an existing html element with a text and a
-- method
addCheckbox :: String -> String -> String -> Fay ()
-- | add a div-element with a text
addDiv :: String -> String -> String -> Fay ()
-- | add a custom html element
addElement :: String -> String -> String -> Fay ()
-- | add a new form-element
addForm :: String -> String -> Fay JQuery
-- | add a new input element of type text
addInput :: String -> String -> String -> String -> Fay ()
-- | add a new breakline
addBreakline :: String -> Fay ()
-- | get the integer value of an element
getInputInt :: String -> Fay Integer
-- | select an element due to his id
selectId :: String -> Fay JQuery
-- | in combination f. e. with "addMapWindowEvent" to change the html
-- element content
setEventToHtml :: String -> Fay Text -> Fay JQuery
-- | String to Text with FFI
showString :: String -> Text
-- | Double to Text with FFI
showDouble :: Double -> Text
-- | Text to Fay Integer with FFI
toInt :: Text -> Fay Integer
-- | String to Integer with FFI
toInt' :: String -> Integer
-- | adapted from JQuery's "select"
onClick' :: Fay () -> JQuery -> Fay JQuery
-- | adapted from JQuery's "select"
select' :: String -> Fay JQuery
-- | adapted from JQuery's "setHtml"
setHtml' :: String -> JQuery -> Fay JQuery
-- | adapted from setAttr
setAttr' :: String -> String -> JQuery -> Fay JQuery
module OpenLayers.Func
-- | new MapQuest layer
newLayerMqt :: String -> Object
-- | new OpenStreetMap layer
newLayerOSM :: Object
-- | new Layer as vector
newVector :: Object -> Opacity -> Fay Object
-- | new GeoFeature (GeoPoint or GeoLine)
newFeature :: GeoFeature -> Fay Object
-- | new map source GeoJSON as LineString
newFeatureLine :: [(Double, Double)] -> Fay Object
-- | new map source GeoJSON as Point
newFeaturePoint :: (Double, Double) -> Fay Object
-- | new styled GeoLine
newLineStyle :: GeoLineStyle -> Object
-- | new styled GeoPoint
newPointStyle :: GeoPointStyle -> Object
-- | new OpenLayers DOM binding
newOlInput :: JQuery -> String -> Object -> String -> Fay ()
-- | add an event on "singleclick" to display pop-up with coordinates in
-- mercator and custom projection
addSingleClickEventAlertCoo :: String -> Fay ()
-- | add a layer to the map, and remove all layers before inserting
-- (baselayer has now index 0)
addBaseLayer :: MapSource -> Fay ()
-- | add a MapSource to the map
addMapLayer :: MapSource -> Fay ()
-- | add a layer to the map
addLayer :: Object -> Fay ()
-- | add a GeoFeature to a new layer to the map (first add
-- coordinates to a new feature and then add the style and the id to this
-- new feature, at least create a layer with the feature and add the
-- layer to the map)
addStyledFeature :: GeoFeature -> Opacity -> Fay ()
-- | add more than one GeoFeature to a new layer (similar to the
-- addStyledFeature function)
addStyledFeatures :: [GeoFeature] -> Opacity -> Fay ()
-- | add an array with features to a layer
addFeatures :: Object -> [Object] -> Fay ()
-- | add a new point feature (and a new layer) by defining from HTML
-- elements
addPointFromLabels :: String -> String -> String -> String -> GeoPointStyle -> Fay ()
-- | add a map event listener (f.e. when zoom or pan)
addMapWindowEvent :: String -> Fay JQuery -> Fay ()
-- | add a connection between HTML and OpenLayers to manipulate layer
-- attributes
addOlDomInput :: String -> String -> String -> Object -> Fay ()
-- | remove all layers from the map
removeLayers :: Fay ()
-- | remove a layer object (only use with layers)
removeLayer :: a -> Fay ()
-- | zoom IN and specify levels to change
zoomIn :: Integer -> Fay ()
-- | zoom OUT and specify levels to change
zoomOut :: Integer -> Fay ()
-- | style a feature after creating a new feature and
-- before adding to a new layer (this is an internal
-- function for addStyledFeature and addStyledFeatures)
styleFeature :: Object -> GeoFeature -> Fay ()
-- | style a feature FFI function
styleFeature' :: Object -> Object -> Fay ()
-- | change the baselayer at layerindex 0
changeBaseLayer :: MapSource -> Fay ()
-- | set the id of a feature, get the feature by layer and featureindex
setId :: Object -> Integer -> Integer -> Fay ()
-- | set the id of the first feature of the vector
setFeatureId :: Object -> GeoFeature -> Fay ()
-- | set map center with a Coordinate
setCenter :: Coordinate -> Fay ()
-- | set map center FFI function
setCenter' :: (Double, Double) -> Fay ()
-- | set the map center and the zoomlevel at the same time
setCenterZoom :: Coordinate -> Integer -> Fay ()
-- | set the zoomlevel of the map
setZoom :: Integer -> Fay ()
-- | get map center in requested projection with n decimal places
getCenter :: Projectionlike -> Integer -> Fay Text
-- | get map center FFI function
getCenter' :: Fay (Double, Double)
-- | get map zoom level
getZoom :: Fay Text
-- | get an array of all layers in the map
getLayers :: Fay [Object]
-- | get a layer by index and return a object
getLayerByIndex :: Integer -> Object
-- | get a layer by index and return a fay object
getLayerByIndex' :: Integer -> Fay Object
-- | get the id of a feature (OpenLayers Feature)
getFeatureId :: Object -> Integer
-- | get a feature from a vector at index position
getVectorFeatureAt :: Object -> Integer -> Object
-- | get the number of features in a vector
getVectorFeatureLength :: Object -> Integer
-- | transform coordinates from mercator to requested projection
transformPointTo :: Projectionlike -> (Double, Double) -> (Double, Double)
-- | transform Coordinate to mercator (EPSG:3857)
transformPoint :: Coordinate -> (Double, Double)
-- | transform Coordinates to mercator (EPSG:3857)
transformPoints :: [Coordinate] -> [(Double, Double)]
-- | create a Text from a tuple of doubles with fixed decimal places and
-- seperator ","
coordFixed :: (Double, Double) -> Integer -> Fay Text
-- | change Text to Double
toDouble :: Text -> Double
-- | sequence the map-function
mapS :: (a -> Fay b) -> [a] -> Fay [b]
-- | sequence the zipWith-function
zipWithS :: (a -> b -> Fay c) -> [a] -> [b] -> Fay [c]
module OlApp
-- | ID to combine the HTML-Element map with the OpenLayers object
targetId :: [Char]
-- | definition of the behaviour for OpenLayers
designMap :: Fay ()
module OpenLayers
-- | to add OpenLayers Wrapper when the page event load is registered
olwrapperAddOnLoad :: Fay f -> Fay ()
-- | to add a default OpenLayers map object with name "olmap"
addDefaultMap :: Fay ()
-- | Initialises an object of the OpenLayers map as HTML object. The
-- JavaScript variable name "olc" must be reserved for the application!
defineCode :: Fay ()
-- | setting the target between html and OpenLayers
setTarget :: String -> Fay ()
-- | setting a default view for first map appearence
setDefaultView :: Fay ()
-- | initialises an OpenLayers view and load the definitions from the
-- OpenLayers webapplication defined in OlApp
olwrapperLoad :: Fay ()