#14 stubs for TDesktop
[nikiroo-utils.git] / src / jexer / TWidget.java
index d4ec1e2ba9ae8cfc23fb5eaac9d03915125d880b..5be209e33b44ea79f4df2d85c49c454301e53bd0 100644 (file)
@@ -217,6 +217,23 @@ public abstract class TWidget implements Comparable<TWidget> {
         this.height = height;
     }
 
+    /**
+     * Change the dimensions.
+     *
+     * @param x absolute X position of the top-left corner
+     * @param y absolute Y position of the top-left corner
+     * @param width new widget width
+     * @param height new widget height
+     */
+    public final void setDimensions(final int x, final int y, final int width,
+        final int height) {
+
+        setX(x);
+        setY(y);
+        setWidth(width);
+        setHeight(height);
+    }
+
     /**
      * My tab order inside a window or containing widget.
      */
@@ -427,7 +444,10 @@ public abstract class TWidget implements Comparable<TWidget> {
         if (parent == this) {
             return x;
         }
-        if ((parent instanceof TWindow) && !(parent instanceof TMenu)) {
+        if ((parent instanceof TWindow)
+            && !(parent instanceof TMenu)
+            && !(parent instanceof TDesktop)
+        ) {
             // Widgets on a TWindow have (0,0) as their top-left, but this is
             // actually the TWindow's (1,1).
             return parent.getAbsoluteX() + x + 1;
@@ -446,7 +466,10 @@ public abstract class TWidget implements Comparable<TWidget> {
         if (parent == this) {
             return y;
         }
-        if ((parent instanceof TWindow) && !(parent instanceof TMenu)) {
+        if ((parent instanceof TWindow)
+            && !(parent instanceof TMenu)
+            && !(parent instanceof TDesktop)
+        ) {
             // Widgets on a TWindow have (0,0) as their top-left, but this is
             // actually the TWindow's (1,1).
             return parent.getAbsoluteY() + y + 1;
@@ -868,8 +891,8 @@ public abstract class TWidget implements Comparable<TWidget> {
      */
     public void onMouseDown(final TMouseEvent mouse) {
         // Default: do nothing, pass to children instead
-       for (int i = children.size() - 1 ; i >= 0 ; i--) {
-               TWidget widget = children.get(i);
+        for (int i = children.size() - 1 ; i >= 0 ; i--) {
+            TWidget widget = children.get(i);
             if (widget.mouseWouldHit(mouse)) {
                 // Dispatch to this child, also activate it
                 activate(widget);
@@ -890,8 +913,8 @@ public abstract class TWidget implements Comparable<TWidget> {
      */
     public void onMouseUp(final TMouseEvent mouse) {
         // Default: do nothing, pass to children instead
-       for (int i = children.size() - 1 ; i >= 0 ; i--) {
-               TWidget widget = children.get(i);
+        for (int i = children.size() - 1 ; i >= 0 ; i--) {
+            TWidget widget = children.get(i);
             if (widget.mouseWouldHit(mouse)) {
                 // Dispatch to this child, also activate it
                 activate(widget);