public virtual Windows.UI.Xaml.UIElement setStyleForTextInputWidget(cave.ui.TextInputWidget widget, bool allowReplace) { widget.setWidgetBackgroundColor(cave.Color.white()); widget.setWidgetPadding(context.getHeightValue("1500um")); widget.setWidgetFontSize((double)context.getHeightValue("3000um")); return((Windows.UI.Xaml.UIElement)widget); }
public void showTextInputDialog(string title, string prompt, System.Action <string> callback = null) { checkForDefaultColors(); var mm2 = context.getWidthValue("2mm"); var mm3 = context.getWidthValue("3mm"); var widget = new cave.ui.LayerWidget(context); widget.setWidgetWidthRequest(context.getWidthValue("100mm")); widget.addWidget((Windows.UI.Xaml.UIElement)cave.ui.CanvasWidget.forColor(context, backgroundColor)); var titleLabel = cave.ui.LabelWidget.forText(context, title); titleLabel.setWidgetFontSize((double)mm3); titleLabel.setWidgetTextColor(headerTextColor); titleLabel.setWidgetFontBold(true); var box = new cave.ui.VerticalBoxWidget(context); box.addWidget((Windows.UI.Xaml.UIElement) new cave.ui.LayerWidget(context).addWidget((Windows.UI.Xaml.UIElement)cave.ui.CanvasWidget.forColor(context, headerBackgroundColor)).addWidget((Windows.UI.Xaml.UIElement)cave.ui.AlignWidget.forWidget(context, (Windows.UI.Xaml.UIElement)titleLabel, (double)0, 0.50).setWidgetMargin(mm3))); var sbox = new cave.ui.VerticalBoxWidget(context); sbox.setWidgetMargin(mm3); sbox.setWidgetSpacing(mm3); var messageLabel = cave.ui.LabelWidget.forText(context, prompt); messageLabel.setWidgetTextAlign(cave.ui.LabelWidget.ALIGN_CENTER); messageLabel.setWidgetFontSize((double)mm3); messageLabel.setWidgetTextColor(messageTextColor); sbox.addWidget((Windows.UI.Xaml.UIElement)messageLabel); var input = new cave.ui.TextInputWidget(context); input.setWidgetBackgroundColor(cave.Color.forRGB(200, 200, 200)); input.setWidgetPadding(context.getHeightValue("2mm")); input.setWidgetFontSize((double)context.getHeightValue("3000um")); sbox.addWidget((Windows.UI.Xaml.UIElement)input); var buttons = new cave.ui.HorizontalBoxWidget(context); buttons.setWidgetSpacing(mm3); var noButton = cave.ui.TextButtonWidget.forText(context, "Cancel", null); noButton.setWidgetBackgroundColor(negativeButtonColor); buttons.addWidget((Windows.UI.Xaml.UIElement)noButton, 1.00); var yesButton = cave.ui.TextButtonWidget.forText(context, "OK", null); yesButton.setWidgetBackgroundColor(positiveButtonColor); buttons.addWidget((Windows.UI.Xaml.UIElement)yesButton, 1.00); sbox.addWidget((Windows.UI.Xaml.UIElement)buttons); box.addWidget((Windows.UI.Xaml.UIElement)sbox); widget.addWidget((Windows.UI.Xaml.UIElement)box); var pp = cave.ui.PopupWidget.forContentWidget(context, (Windows.UI.Xaml.UIElement)cave.ui.LayerWidget.forWidget(context, (Windows.UI.Xaml.UIElement)widget, mm2)); var cb = callback; pp.showPopup(parent); yesButton.setWidgetClickHandler(() => { pp.hidePopup(); if (cb != null) { cb(input.getWidgetText()); } }); noButton.setWidgetClickHandler(() => { pp.hidePopup(); if (cb != null) { cb(null); } }); }