/[thuban]/trunk/thuban/Extensions/umn_mapserver/mapfile.py
ViewVC logotype

Diff of /trunk/thuban/Extensions/umn_mapserver/mapfile.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2856 by elachuni, Sun Jul 27 04:51:22 2008 UTC revision 2857 by elachuni, Sun Jul 27 05:30:28 2008 UTC
# Line 96  layer_status_type = { 0:"OFF", Line 96  layer_status_type = { 0:"OFF",
96                        1:"ON",                        1:"ON",
97                        2:"default"}                        2:"default"}
98    
99    layer_connection_type = { mapscript.MS_INLINE:"inline",
100                              mapscript.MS_SHAPEFILE:"shapefile",
101                              mapscript.MS_TILED_SHAPEFILE:"tiled shapefile",
102                              mapscript.MS_SDE:"sde",
103                              mapscript.MS_OGR:"ogr",
104                              mapscript.MS_POSTGIS:"postgis",
105                              mapscript.MS_WMS:"wms",
106                              mapscript.MS_ORACLESPATIAL:"oracle spatial",
107                              mapscript.MS_WFS:"wfs",
108                              mapscript.MS_GRATICULE:"graticule",
109                              mapscript.MS_MYGIS:"mygis",
110                              mapscript.MS_RASTER:"raster"}
111    
112  legend_position_type = { 0:"ul",  legend_position_type = { 0:"ul",
113                           1:"lr",                           1:"lr",
114                           2:"ur",                           2:"ur",
# Line 502  class MF_Layer: Line 515  class MF_Layer:
515      labelmaxscale, sizeunits, maxfeatures, offsite, transform, labelcache      labelmaxscale, sizeunits, maxfeatures, offsite, transform, labelcache
516      postlabelcache, labelitem, labelsizeitem, labelangleitem, labelitemindex      postlabelcache, labelitem, labelsizeitem, labelangleitem, labelitemindex
517      labelsizeitemindex, labelangleitemindex, tileitem, tileindex, units      labelsizeitemindex, labelangleitemindex, tileitem, tileindex, units
518      connection, connectiontype, numitems, filteritem, styleitem, requires      numitems, filteritem, styleitem, requires
519      labelrequires, transparency, dump, debug, numprocessing, numjoins,      labelrequires, transparency, dump, debug, numprocessing, numjoins,
520      removeClass(), open(), close(), getShape(), getNumResults(), getResult()      removeClass(), open(), close(), getShape(), getNumResults(), getResult()
521      getItem(), promote(), demote(), draw(), drawQuery(), queryByAttributes()      getItem(), promote(), demote(), draw(), drawQuery(), queryByAttributes()
# Line 524  class MF_Layer: Line 537  class MF_Layer:
537    
538          # Create Classes          # Create Classes
539          # there could be more then 1          # there could be more then 1
         i = -1  
540          self._classes = []          self._classes = []
541          while i < self._mf_layer.numclasses-1:          for i in range (self._mf_layer.numclasses):
             i += 1  
542              self._classes.append(MF_Class(self._mf_layer.getClass(i)))              self._classes.append(MF_Class(self._mf_layer.getClass(i)))
543                            
544          self._projection = MF_Projection(self._mf_layer.getProjection())          self._projection = MF_Projection(self._mf_layer.getProjection())
# Line 544  class MF_Layer: Line 555  class MF_Layer:
555      def get_data(self):      def get_data(self):
556          return self._mf_layer.data          return self._mf_layer.data
557    
558        def get_connection(self):
559            return self._mf_layer.connnection
560    
561        def get_connectiontype(self):
562            return self._mf_layer.connectiontype
563    
564      def get_classes(self):      def get_classes(self):
565          return self._classes          return self._classes
566            
# Line 583  class MF_Layer: Line 600  class MF_Layer:
600          self._mf_layer.name = newname          self._mf_layer.name = newname
601            
602      def set_data(self, newdata, type="shape"):      def set_data(self, newdata, type="shape"):
603          if type == "raster":          if type == "shape":
             self._mf_layer.data = newdata  
         else:  
604              self._mf_layer.data = newdata[:-4]              self._mf_layer.data = newdata[:-4]
605                else:
606                self._mf_layer.data = newdata
607    
608        def set_connection (self, newconnection):
609            self._mf_layer.connection = newconnection
610    
611        def set_connectiontype (self, newtype):
612            self._mf_layer.connectiontype = newtype
613    
614      def set_status(self, newstatus):      def set_status(self, newstatus):
615          # status can set to true or false from thuban.          # status can set to true or false from thuban.
616          # but mapserver supports the default value          # but mapserver supports the default value
# Line 1035  class MF_Map: Line 1058  class MF_Map:
1058          # don't know why this error is produced and why it works          # don't know why this error is produced and why it works
1059          # if it is placed here instead of the beginning.          # if it is placed here instead of the beginning.
1060          from Extensions.umn_mapserver.mf_import import AnnotationLayer          from Extensions.umn_mapserver.mf_import import AnnotationLayer
1061            from Thuban.Model.postgisdb import PostGISShapeStore
1062          if hasattr(tb_layer,"extension_umn_layerobj"):          if hasattr(tb_layer,"extension_umn_layerobj"):
1063              #print tb_layer.extension_umn_layerobj              #print tb_layer.extension_umn_layerobj
1064              #new_layer = MF_Layer(layerObj(self._mf_map))              #new_layer = MF_Layer(layerObj(self._mf_map))
# Line 1058  class MF_Map: Line 1082  class MF_Map:
1082              new_layer.set_status(tb_layer.Visible())              new_layer.set_status(tb_layer.Visible())
1083              new_layer.set_data(tb_layer.ShapeStore().FileName())              new_layer.set_data(tb_layer.ShapeStore().FileName())
1084          else:          else:
1085              new_layer.set_data(tb_layer.ShapeStore().FileName())              if isinstance (tb_layer.ShapeStore(), PostGISShapeStore):
1086                    data = "%s from %s" % (tb_layer.ShapeStore().geometry_column,
1087                                           tb_layer.ShapeStore().tablename)
1088                    new_layer.set_data (data, type="postgis")
1089                    params = []
1090                    for name in ("host", "port", "dbname", "user", "password"):
1091                        val = getattr(tb_layer.ShapeStore().db, name)
1092                        if val:
1093                            params.append("%s=%s" % (name, val))
1094                    new_layer.set_connection (" ".join(params))
1095                    new_layer.set_connectiontype (mapscript.MS_POSTGIS)
1096                else:
1097                    new_layer.set_data(tb_layer.ShapeStore().FileName())
1098              new_layer.set_status(tb_layer.Visible())              new_layer.set_status(tb_layer.Visible())
1099              new_layer.set_type(tb_layer.ShapeType())              new_layer.set_type(tb_layer.ShapeType())
1100              if tb_layer.GetClassificationColumn():              if tb_layer.GetClassificationColumn():

Legend:
Removed from v.2856  
changed lines
  Added in v.2857

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26