void OnDragged(int x, int y)
{
if (!ViewObjects)
OnClicked(x,y);
else {
if (!IsInBounds(x,y)) return;
if (!draggingObject) return;
ObjectData data = objectEditor.SelectedObjectData;
if (data != null && data.HasXY()) {
// Move objects in increments of 16 pixels
int dataX = data.GetX()+8;
int dataY = data.GetY()+8;
int alignX = (dataX)%16;
int alignY = (dataY)%16;
int newX = (x-alignX)/16;
int newY = (y-alignY)/16;
newX = (newX*16+alignX+8)%256;
newY = (newY*16+alignY+8)%256;
data.SetX(newX);
data.SetY(newY);
QueueDraw();
}
}
}