return new TInputBox(this, title, caption, text);
}
+ /**
+ * Convenience function to spawn an input box.
+ *
+ * @param title window title, will be centered along the top border
+ * @param caption message to display. Use embedded newlines to get a
+ * multi-line box.
+ * @param text initial text to seed the field with
+ * @param type one of the Type constants. Default is Type.OK.
+ * @return the new input box
+ */
+ public final TInputBox inputBox(final String title, final String caption,
+ final String text, final TInputBox.Type type) {
+
+ return new TInputBox(this, title, caption, text, type);
+ }
+
/**
* Convenience function to open a terminal window.
*
public TInputBox(final TApplication application, final String title,
final String caption) {
- this(application, title, caption, "");
+ this(application, title, caption, "", Type.OK);
}
/**
public TInputBox(final TApplication application, final String title,
final String caption, final String text) {
- super(application, title, caption, Type.OK, false);
+ this(application, title, caption, text, Type.OK);
+ }
+
+ /**
+ * Public constructor. The input box will be centered on screen.
+ *
+ * @param application TApplication that manages this window
+ * @param title window title, will be centered along the top border
+ * @param caption message to display. Use embedded newlines to get a
+ * multi-line box.
+ * @param text initial text to seed the field with
+ * @param type one of the Type constants. Default is Type.OK.
+ */
+ public TInputBox(final TApplication application, final String title,
+ final String caption, final String text, final Type type) {
+
+ super(application, title, caption, type, false);
for (TWidget widget: getChildren()) {
if (widget instanceof TButton) {
DemoMsgBoxWindow(final TApplication parent, final int flags) {
// Construct a demo window. X and Y don't matter because it
// will be centered on screen.
- super(parent, "Message Boxes", 0, 0, 60, 16, flags);
+ super(parent, "Message Boxes", 0, 0, 64, 18, flags);
int row = 1;
);
row += 2;
- addLabel("Input box", 1, row);
+ addLabel("Input box 1", 1, row);
addButton("Open &input box", 35, row,
new TAction() {
public void DO() {
}
}
);
+ row += 2;
+
+ addLabel("Input box 2", 1, row);
+ addButton("Cance&llable input box", 35, row,
+ new TAction() {
+ public void DO() {
+ TInputBox in = getApplication().inputBox("Input Box",
+"This is an example of an InputBox.\n" +
+"\n" +
+"Note that the InputBox text can span multiple\n" +
+"lines.\n" +
+"This one has both OK and Cancel buttons.\n",
+ "some input text", TInputBox.Type.OKCANCEL);
+ getApplication().messageBox("Your InputBox Answer",
+ "You entered: " + in.getText());
+ }
+ }
+ );
addButton("&Close Window", (getWidth() - 14) / 2, getHeight() - 4,
new TAction() {