summaryrefslogtreecommitdiff
path: root/NET/worlds/scape/ScaleWidget.java
diff options
context:
space:
mode:
Diffstat (limited to 'NET/worlds/scape/ScaleWidget.java')
-rw-r--r--NET/worlds/scape/ScaleWidget.java23
1 files changed, 23 insertions, 0 deletions
diff --git a/NET/worlds/scape/ScaleWidget.java b/NET/worlds/scape/ScaleWidget.java
new file mode 100644
index 0000000..4ee1084
--- /dev/null
+++ b/NET/worlds/scape/ScaleWidget.java
@@ -0,0 +1,23 @@
+package NET.worlds.scape;
+
+import NET.worlds.console.Console;
+
+class ScaleWidget extends WidgetButton {
+ public ScaleWidget(ToolBar toolbar) {
+ super(toolbar, "scale.gif", Console.message("Scale"));
+ }
+
+ @Override
+ public String drag(boolean initialDrag, float deltax, float deltay) {
+ WObject wobj = this.getWObject();
+ float delta = Math.abs(deltax) > Math.abs(deltay) ? deltax : deltay;
+ delta = (float)Math.pow(1.01, delta);
+ if (initialDrag) {
+ Console.getFrame().getEditTile().addUndoable(new UndoablTransform(wobj));
+ }
+
+ wobj.scale(delta);
+ wobj.markEdited();
+ return "Scale: " + wobj.getScale();
+ }
+}