         t.expandParentHeight = 1
       }
     }
+    if t.width > 0 {
+      if borderRight {
+        t.width += 1
+      }
+      if borderLeft {
+        t.width += 1
+      }
+    }
+    if t.height > 0 {
+      if borderTop {
+        t.height += 1
+      }
+      if borderBottom {
+        t.height += 1
+      }
+    }
     return t
   }
 
   public func draw(x: Int, y: Int, size: TellSize) {
-    var nx = 0
+    var ap = drawBorder(x, y: y, size: size)
     for s in size.children! {
-      s.element!.draw(nx, y: y, size: s)
-      nx += s.width
+      s.element!.draw(ap.x, y: ap.y, size: s)
+      ap.x += s.width
     }
   }
 


public enum NCBorderType {
  case LightCurved
}



  }

  public func draw(x: Int, y: Int, size: TellSize) {
    let ap = drawBorder(x, y: y, size: size)
    move(Int32(ap.y), Int32(ap.x))
    addstr(text)
  }

