Revision 417

View differences:

org.gvsig.scripting.app/trunk/org.gvsig.scripting.app/org.gvsig.scripting.app.extension/src/main/resources/scripting/lib/gvsig.py
47 47
from org.gvsig.app.project.documents.view import ViewDocument 
48 48
from org.gvsig.app.project.documents.table import TableDocument
49 49

  
50
from org.gvsig.fmap.crs import CRSFactory
51

  
50 52
from org.gvsig.fmap.mapcontext import MapContextLocator
51 53
from org.gvsig.fmap.mapcontext.layers import FLayers
54

  
52 55
from org.gvsig.fmap.dal import DALLocator, DataTypes
53 56
from org.gvsig.fmap.dal.feature import EditableFeature,  EditableFeatureType, FeatureQueryOrder
54 57
from org.gvsig.fmap.dal.feature.impl import DefaultEditableFeature
55 58

  
59
from org.gvsig.fmap.geom import Geometry
60

  
56 61
from org.gvsig.tools import ToolsLocator
57 62

  
58
from org.gvsig.fmap.geom import Geometry
59

  
60 63
import thread
61 64
import random
62 65

  
......
146 149
          if name == table.getName():
147 150
            return Table(table)
148 151
            
149
    return None
152
    return None   
150 153
    
151
    
152 154
  def getProjectionCode(self):
153 155
    return self.getProjection().getFullCode()
154 156

  
......
175 177
    if name == None:
176 178
      activeLayers = map.getLayers().getActives()
177 179
      if len(activeLayers) != 1 :
178
        raise RuntimeException("The view has not an active layer")
180
        #raise RuntimeException("The view has not an active layer")
181
        return None
179 182
      for layer in activeLayers:
180 183
        if not isinstance(layer, FLayers):
181 184
          return Layer(layer)
182
      raise RuntimeException("The view has not an active layer")
185
      #raise RuntimeException("The view has not an active layer")
186
      return None
183 187
    
184 188
    ls = self.getLayers()
185 189
    for i in xrange(ls.getLayersCount()):
......
204 208
    """
205 209
    Return iterable view layers set
206 210
    """
207
    map = self.getMapContext();
211
    map = self.getMapContext()
208 212
    return Layers(map.getLayers())
209 213
    
210 214
  def getGraphicsLayer(self):
......
258 262
    Return layer features set (FeatureSet)
259 263
    
260 264
        :param expresion: filter to apply to the feature set to select
261
determinates features that match with expression
265
        determinates features that match with expression
262 266
        :type expresion: string
263 267
        :param sortBy: name of attribute to sort
264 268
        :type sortby: string
......
378 382
    Return data features set
379 383
    
380 384
        :param expresion: filter to apply to the feature set to select
381
determinates features that match with expression
385
         determinates features that match with expression
382 386
        :type expresion: string
383 387
        :return: FeatureSet
384 388
    """
......
510 514
      :param editableFeature: editableFeature
511 515
      :type editableFeature: Java editableFeature
512 516
    """
513
    #FIXME
514 517
    if not isinstance(feature, EditableFeature) and not isinstance(feature, DefaultEditableFeature):
515 518
      feature = feature._javaobj
516 519
    self().update(feature)
......
573 576
    elif name in ('__members__'):
574 577
        return self.getValues().keys()
575 578
    elif name == '__dict__':
576
        return self.getValues().items()      
579
        return self.getValues()      
577 580
        
578 581
    try:
579 582
      v = getattr(self._javaobj, name, None)
......
759 762
  except Throwable, ex:
760 763
    raise RuntimeException("Can't create layer, "+ str(ex))
761 764

  
762
def loadShapeFile(shpFile, CRS="wgs86"):
765
def loadShapeFile(shpFile, CRS="CRS:84"):
763 766
    """
764 767
    Add existing shape file to the view
765 768
    Return Layer
......
772 775
    """
773 776
    layer = loadLayer('Shape', shpFile=shpFile, CRS=CRS)
774 777
    currentView().addLayer(layer)
778
    #return currentView().getLayer(layer.getName())
779
    layer.setActive(True)
775 780
    return Layer(layer)
776 781
    
777 782
def loadLayer(layerType, **parameters):
......
781 786
        mapcontextmanager = application.getMapContextManager()
782 787
        store_parameters = datamanager.createStoreParameters(layerType)
783 788
        copyToDynObject(parameters, store_parameters)
784
        store = datamanager.openStore(layerType, store_parameters)
789
        store = datamanager.openStore(layerType, store_parameters)        
785 790
        layer = mapcontextmanager.createLayer(store.getName(), store)
786
        return layer
787 791
    except Throwable, ex:
788 792
        raise RuntimeException("Can't load layer, "+ str(ex))  
793

  
794
    return layer
789 795
    
790
def createShape(definition, filename, geometryType, CRS="wgs86"):
796
def createShape(definition, filename, geometryType, CRS="CRS:84"):
791 797
  """ 
792 798
  Create a new shape layer 
793 799
      
......
911 917
  
912 918
    :return: gvSIG active layer
913 919
  """
914
  
915
  return currentView().getLayer()
920
  try:
921
    return currentView().getLayer()
922
  except:
923
    return None
916 924

  
917 925
#=====================#
918 926
# Simbology Functions #
......
989 997
#================#
990 998
# OTHER          #
991 999
#================#
1000

  
1001
def getCRS(crs):
1002
  """
1003
  Return Projection from string code (i.e. CRS:84) if exist.
1004
  """
1005
  try:
1006
    return CRSFactory.getCRS(crs)
1007
  except:
1008
    return None
1009

  
992 1010
def copyToDynObject(values, target):
993 1011
  definition = target.getDynClass();
994 1012
  fields = definition.getDynFields();

Also available in: Unified diff