//>>built define("dojox/geo/openlayers/GfxLayer",["dojo/_base/declare","dojo/_base/connect","dojo/dom-style","dojox/gfx","dojox/gfx/matrix","./Feature","./Layer"],function(_1,_2,_3,_4,_5,_6,_7){ return _1("dojox.geo.openlayers.GfxLayer",_7,{_viewport:null,constructor:function(_8,_9){ var s=_4.createSurface(this.olLayer.div,100,100); this._surface=s; var vp; if(_9&&_9.viewport){ vp=_9.viewport; }else{ vp=s.createGroup(); } this.setViewport(vp); _2.connect(this.olLayer,"onMapResize",this,"onMapResize"); this.olLayer.getDataExtent=this.getDataExtent; },getViewport:function(){ return this._viewport; },setViewport:function(g){ if(this._viewport){ this._viewport.removeShape(); } this._viewport=g; this._surface.add(g); },onMapResize:function(){ this._surfaceSize(); },setMap:function(_a){ this.inherited(arguments); this._surfaceSize(); },getDataExtent:function(){ var _b=this._surface.getDimensions(); return _b; },getSurface:function(){ return this._surface; },_surfaceSize:function(){ var s=this.olLayer.map.getSize(); this._surface.setDimensions(s.w,s.h); },moveTo:function(_c){ var s=_3.get(this.olLayer.map.layerContainerDiv); var _d=parseInt(s.left); var _e=parseInt(s.top); if(_c.zoomChanged||_d||_e){ var d=this.olLayer.div; _3.set(d,{left:-_d+"px",top:-_e+"px"}); if(this._features==null){ return; } var vp=this.getViewport(); vp.setTransform(_5.translate(_d,_e)); this.inherited(arguments); } },added:function(){ this.inherited(arguments); this._surfaceSize(); }}); });