Warning: session_start(): open(/var/lib/php/sessions/sess_a7fjv0bftrta21mvttia28ruk3, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
sclass ImageSurfaceDragger extends ImageSurfaceMouseHandler {
sbool debug = true;
Point start, startScroll;
int dx, dy;
*(ImageSurface is) {
if (containsInstance(is.tools, ImageSurfaceDragger)) ret;
print("Loading ImageSurfaceDragger");
ifclass ImageSurfaceSelector
closeAll(collectInstances(is.tools, ImageSurfaceSelector));
endif
register(is);
}
public void mousePressed(MouseEvent e) {
JScrollPane sp = enclosingScrollPane(is);
if (sp == null) ret;
if (e.getButton() == MouseEvent.BUTTON1) {
start = e.getLocationOnScreen();
startScroll = new Point(
scrollBarValue(sp.getHorizontalScrollBar()),
scrollBarValue(sp.getVerticalScrollBar()));
}
}
public void mouseDragged(MouseEvent e) {
if (start == null) ret;
JScrollPane sp = enclosingScrollPane(is);
if (sp == null) ret;
Point p = e.getLocationOnScreen();
//if (debug) print("ImageSurfaceDragger: drag " + p.x + "/" + p.y);
setScrollBarValue(sp.getHorizontalScrollBar(), -(p.x-start.x)+startScroll.x);
setScrollBarValue(sp.getVerticalScrollBar(), -(p.y-start.y)+startScroll.y);
}
public void mouseReleased(MouseEvent e) {
mouseDragged(e);
start = null;
}
}