this(parent, true);
}
+ /**
+ * Protected constructor.
+ *
+ * @param parent parent widget
+ * @param x column relative to parent
+ * @param y row relative to parent
+ * @param width width of widget
+ * @param height height of widget
+ */
+ protected TWidget(final TWidget parent, final int x, final int y,
+ final int width, final int height) {
+
+ this(parent, true, x, y, width, height);
+ }
+
/**
* Protected constructor used by subclasses that are disabled by default.
*
parent.addChild(this);
}
+ /**
+ * Protected constructor used by subclasses that are disabled by default.
+ *
+ * @param parent parent widget
+ * @param enabled if true assume enabled
+ * @param x column relative to parent
+ * @param y row relative to parent
+ * @param width width of widget
+ * @param height height of widget
+ */
+ protected TWidget(final TWidget parent, final boolean enabled,
+ final int x, final int y, final int width, final int height) {
+
+ this.enabled = enabled;
+ this.parent = parent;
+ this.window = parent.window;
+ children = new LinkedList<TWidget>();
+ parent.addChild(this);
+
+ this.x = x;
+ this.y = y;
+ this.width = width;
+ this.height = height;
+ }
+
/**
* Add a child widget to my list of children. We set its tabOrder to 0
* and increment the tabOrder of all other children.
if ((children.size() == 0)
// TODO
// || (cast(TTreeView)this)
- // || (cast(TText)this)
+ || (this instanceof TText)
) {
// Defaults:
return getApplication().inputBox(title, caption, text);
}
+ /**
+ * Convenience function to add a password text field to this
+ * container/window.
+ *
+ * @param x column relative to parent
+ * @param y row relative to parent
+ * @param width visible text width
+ * @param fixed if true, the text cannot exceed the display width
+ * @return the new text field
+ */
+ public final TPasswordField addPasswordField(final int x, final int y,
+ final int width, final boolean fixed) {
+
+ return new TPasswordField(this, x, y, width, fixed);
+ }
+
+ /**
+ * Convenience function to add a password text field to this
+ * container/window.
+ *
+ * @param x column relative to parent
+ * @param y row relative to parent
+ * @param width visible text width
+ * @param fixed if true, the text cannot exceed the display width
+ * @param text initial text, default is empty string
+ * @return the new text field
+ */
+ public final TPasswordField addPasswordField(final int x, final int y,
+ final int width, final boolean fixed, final String text) {
+
+ return new TPasswordField(this, x, y, width, fixed, text);
+ }
+
+ /**
+ * Convenience function to add a password text field to this
+ * container/window.
+ *
+ * @param x column relative to parent
+ * @param y row relative to parent
+ * @param width visible text width
+ * @param fixed if true, the text cannot exceed the display width
+ * @param text initial text, default is empty string
+ * @param enterAction function to call when enter key is pressed
+ * @param updateAction function to call when the text is updated
+ * @return the new text field
+ */
+ public final TPasswordField addPasswordField(final int x, final int y,
+ final int width, final boolean fixed, final String text,
+ final TAction enterAction, final TAction updateAction) {
+
+ return new TPasswordField(this, x, y, width, fixed, text, enterAction,
+ updateAction);
+ }
+
}