Set Control.TransformFeature handle role (resize) into attributes.
This commit is contained in:
@@ -14,29 +14,14 @@
|
|||||||
function init(){
|
function init(){
|
||||||
map = new OpenLayers.Map('map', {allOverlays: true});
|
map = new OpenLayers.Map('map', {allOverlays: true});
|
||||||
|
|
||||||
// context for appropriate scale/resize cursors
|
|
||||||
var cursors = ["sw-resize", "s-resize", "se-resize",
|
|
||||||
"e-resize", "ne-resize", "n-resize", "nw-resize", "w-resize"];
|
|
||||||
var context = {
|
|
||||||
getCursor: function(feature){
|
|
||||||
var i = OpenLayers.Util.indexOf(control.handles, feature);
|
|
||||||
var cursor = "inherit";
|
|
||||||
if(i !== -1) {
|
|
||||||
i = (i + 8 + Math.round(control.rotation / 90) * 2) % 8;
|
|
||||||
cursor = cursors[i];
|
|
||||||
}
|
|
||||||
return cursor;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
// a nice style for the transformation box
|
// a nice style for the transformation box
|
||||||
var style = new OpenLayers.Style({
|
var style = new OpenLayers.Style({
|
||||||
cursor: "${getCursor}",
|
cursor: "${role}",
|
||||||
pointRadius: 5,
|
pointRadius: 5,
|
||||||
fillColor: "white",
|
fillColor: "white",
|
||||||
fillOpacity: 1,
|
fillOpacity: 1,
|
||||||
strokeColor: "black"
|
strokeColor: "black"
|
||||||
}, {context: context});
|
});
|
||||||
|
|
||||||
// allow testing of specific renderers via "?renderer=Canvas", etc
|
// allow testing of specific renderers via "?renderer=Canvas", etc
|
||||||
var renderer = OpenLayers.Util.getParameters(window.location.href).renderer;
|
var renderer = OpenLayers.Util.getParameters(window.location.href).renderer;
|
||||||
|
|||||||
@@ -468,10 +468,13 @@ OpenLayers.Control.TransformFeature = OpenLayers.Class(OpenLayers.Control, {
|
|||||||
var handles = new Array(8);
|
var handles = new Array(8);
|
||||||
var rotationHandles = new Array(4);
|
var rotationHandles = new Array(4);
|
||||||
var geom, handle, rotationHandle;
|
var geom, handle, rotationHandle;
|
||||||
|
var resize = ["sw-resize", "s-resize", "se-resize", "e-resize",
|
||||||
|
"ne-resize", "n-resize", "nw-resize", "w-resize"];
|
||||||
for(var i=0; i<8; ++i) {
|
for(var i=0; i<8; ++i) {
|
||||||
geom = box.geometry.components[i];
|
geom = box.geometry.components[i];
|
||||||
handle = new OpenLayers.Feature.Vector(geom.clone(), null,
|
handle = new OpenLayers.Feature.Vector(geom.clone(), {
|
||||||
typeof this.renderIntent == "string" ? null :
|
role: resize[i]
|
||||||
|
}, typeof this.renderIntent == "string" ? null :
|
||||||
this.renderIntent);
|
this.renderIntent);
|
||||||
if(i % 2 == 0) {
|
if(i % 2 == 0) {
|
||||||
rotationHandle = new OpenLayers.Feature.Vector(geom.clone(),
|
rotationHandle = new OpenLayers.Feature.Vector(geom.clone(),
|
||||||
|
|||||||
Reference in New Issue
Block a user