本文整理汇总了C#中MatterHackers.Agg.UI.FlowLayoutWidget.SetBoundsToEncloseChildren方法的典型用法代码示例。如果您正苦于以下问题:C# FlowLayoutWidget.SetBoundsToEncloseChildren方法的具体用法?C# FlowLayoutWidget.SetBoundsToEncloseChildren怎么用?C# FlowLayoutWidget.SetBoundsToEncloseChildren使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MatterHackers.Agg.UI.FlowLayoutWidget
的用法示例。
在下文中一共展示了FlowLayoutWidget.SetBoundsToEncloseChildren方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: MessageBox
public MessageBox(String message, string windowTitle, MessageType messageType, double width, double height)
: base(width, height)
{
BackgroundColor = new RGBA_Bytes(50, 50, 50, 240);
FlowLayoutWidget topToBottomFlow = new FlowLayoutWidget(FlowDirection.TopToBottom);
topToBottomFlow.HAnchor = Agg.UI.HAnchor.ParentCenter;
topToBottomFlow.VAnchor = Agg.UI.VAnchor.ParentCenter;
topToBottomFlow.AddChild(new TextWidget(message, textColor: RGBA_Bytes.White));
Title = windowTitle;
// add a spacer
topToBottomFlow.AddChild(new GuiWidget(10, 10));
switch (messageType)
{
case MessageType.YES_NO:
{
FlowLayoutWidget yesNoButtonsFlow = new FlowLayoutWidget();
Button yesButton = new Button("Yes");
yesButton.Click += new ButtonBase.ButtonEventHandler(okButton_Click);
yesNoButtonsFlow.AddChild(yesButton);
Button noButton = new Button("No");
noButton.Click += new ButtonBase.ButtonEventHandler(noButton_Click);
yesNoButtonsFlow.AddChild(noButton);
topToBottomFlow.AddChild(yesNoButtonsFlow);
}
break;
case MessageType.OK:
{
Button okButton = new Button("Ok");
okButton.Click += new ButtonBase.ButtonEventHandler(okButton_Click);
topToBottomFlow.AddChild(okButton);
}
break;
default:
throw new NotImplementedException();
}
topToBottomFlow.SetBoundsToEncloseChildren();
AddChild(topToBottomFlow);
IsModal = true;
}
示例2: ButtonsPage
public ButtonsPage()
: base("Radio and Check Buttons")
{
FlowLayoutWidget topToBottom = new FlowLayoutWidget(FlowDirection.TopToBottom);
topToBottom.AddChild(new CheckBox("Simple Check Box"));
CheckBoxViewStates fourStates = new CheckBoxViewStates(new TextWidget("normal"), new TextWidget("normal"),
new TextWidget("switch n->p"),
new TextWidget("pressed"), new TextWidget("pressed"),
new TextWidget("switch p->n"),
new TextWidget("disabled"));
topToBottom.AddChild(new CheckBox(fourStates));
GuiWidget normalPressed = new TextWidget("0 4state");
normalPressed.BackgroundColor = RGBA_Bytes.Gray;
GuiWidget downPressed = new TextWidget("1 4state");
downPressed.BackgroundColor = RGBA_Bytes.Gray;
GuiWidget normalHover = new TextWidget("0 4state");
normalHover.BackgroundColor = RGBA_Bytes.Yellow;
GuiWidget downHover = new TextWidget("1 4state");
downHover.BackgroundColor = RGBA_Bytes.Yellow;
CheckBoxViewStates fourStates2 = new CheckBoxViewStates(new TextWidget("0 4state"), normalHover, normalPressed, new TextWidget("1 4state"), downHover, downPressed, new TextWidget("disabled"));
topToBottom.AddChild(new CheckBox(fourStates2));
topToBottom.AddChild(new RadioButton("Simple Radio Button 1"));
topToBottom.AddChild(new RadioButton("Simple Radio Button 2"));
topToBottom.AddChild(new RadioButton(new RadioButtonViewText("Simple Radio Button 3")));
topToBottom.AddChild(new RadioButton(new RadioButtonViewStates(new TextWidget("O - unchecked"), new TextWidget("O - unchecked hover"), new TextWidget("O - checking"), new TextWidget("X - checked"), new TextWidget("disabled"))));
groupBox = new GroupBox("Radio Group");
//groupBox.LocalBounds = new RectangleDouble(0, 0, 300, 150);
groupBox.OriginRelativeParent = new Vector2(200, 350);
FlowLayoutWidget topToBottomRadios = new FlowLayoutWidget(FlowDirection.TopToBottom);
topToBottomRadios.AnchorAll();
topToBottomRadios.AddChild(new RadioButton("Simple Radio Button 1"));
topToBottomRadios.AddChild(new RadioButton("Simple Radio Button 2"));
topToBottomRadios.AddChild(new RadioButton("Simple Radio Button 3"));
topToBottomRadios.SetBoundsToEncloseChildren();
groupBox.AddChild(topToBottomRadios);
topToBottom.AddChild(groupBox);
AddChild(topToBottom);
topToBottom.VAnchor = UI.VAnchor.ParentTop;
}
示例3: GetCameraControl
private FlowLayoutWidget GetCameraControl()
{
FlowLayoutWidget buttonRow = new FlowLayoutWidget();
buttonRow.HAnchor = HAnchor.ParentLeftRight;
buttonRow.Margin = new BorderDouble(0, 4);
Agg.Image.ImageBuffer cameraIconImage = StaticData.Instance.LoadIcon(Path.Combine("PrintStatusControls", "camera-24x24.png"));
if (!ActiveTheme.Instance.IsDarkTheme)
{
InvertLightness.DoInvertLightness(cameraIconImage);
}
ImageWidget cameraIcon = new ImageWidget(cameraIconImage);
cameraIcon.Margin = new BorderDouble(right: 6);
TextWidget cameraLabel = new TextWidget("Camera Monitoring");
cameraLabel.AutoExpandBoundsToText = true;
cameraLabel.TextColor = ActiveTheme.Instance.PrimaryTextColor;
cameraLabel.VAnchor = VAnchor.ParentCenter;
#if __ANDROID__
GuiWidget publishImageSwitchContainer = new FlowLayoutWidget();
publishImageSwitchContainer.VAnchor = VAnchor.ParentCenter;
publishImageSwitchContainer.Margin = new BorderDouble(left: 16);
CheckBox toggleSwitch = ImageButtonFactory.CreateToggleSwitch(PrinterSettings.Instance.get("PublishBedImage") == "true");
toggleSwitch.CheckedStateChanged += (sender, e) =>
{
CheckBox thisControl = sender as CheckBox;
PrinterSettings.Instance.set("PublishBedImage", thisControl.Checked ? "true" : "false");
};
publishImageSwitchContainer.AddChild(toggleSwitch);
publishImageSwitchContainer.SetBoundsToEncloseChildren();
buttonRow.AddChild(publishImageSwitchContainer);
#endif
return buttonRow;
}
示例4: GetNotificationControls
private FlowLayoutWidget GetNotificationControls()
{
FlowLayoutWidget buttonRow = new FlowLayoutWidget();
buttonRow.HAnchor |= HAnchor.ParentLeftRight;
buttonRow.VAnchor |= Agg.UI.VAnchor.ParentCenter;
buttonRow.Margin = new BorderDouble(0, 0, 0, 0);
buttonRow.Padding = new BorderDouble(0);
this.textImageButtonFactory.FixedHeight = TallButtonHeight;
Agg.Image.ImageBuffer notificationSettingsImage = StaticData.Instance.LoadIcon(Path.Combine("PrintStatusControls", "notify-24x24.png"));
if (!ActiveTheme.Instance.IsDarkTheme)
{
InvertLightness.DoInvertLightness(notificationSettingsImage);
}
ImageWidget levelingIcon = new ImageWidget(notificationSettingsImage);
levelingIcon.Margin = new BorderDouble(right: 6, bottom: 6);
notificationSettingsLabel = new TextWidget(LocalizedString.Get("Notification Settings"));
notificationSettingsLabel.AutoExpandBoundsToText = true;
notificationSettingsLabel.TextColor = ActiveTheme.Instance.PrimaryTextColor;
notificationSettingsLabel.VAnchor = VAnchor.ParentCenter;
GuiWidget levelingSwitchContainer = new FlowLayoutWidget();
levelingSwitchContainer.VAnchor = VAnchor.ParentCenter;
levelingSwitchContainer.Margin = new BorderDouble(left: 16);
CheckBox enablePrintNotificationsSwitch = ImageButtonFactory.CreateToggleSwitch(UserSettings.Instance.get("PrintNotificationsEnabled") == "true");
enablePrintNotificationsSwitch.VAnchor = VAnchor.ParentCenter;
enablePrintNotificationsSwitch.CheckedStateChanged += (sender, e) =>
{
UserSettings.Instance.set("PrintNotificationsEnabled", enablePrintNotificationsSwitch.Checked ? "true" : "false");
};
levelingSwitchContainer.AddChild(enablePrintNotificationsSwitch);
levelingSwitchContainer.SetBoundsToEncloseChildren();
buttonRow.AddChild(levelingIcon);
buttonRow.AddChild(notificationSettingsLabel);
buttonRow.AddChild(new HorizontalSpacer());
buttonRow.AddChild(levelingSwitchContainer);
return buttonRow;
}
示例5: GetNotificationControls
private FlowLayoutWidget GetNotificationControls()
{
FlowLayoutWidget notificationSettingsContainer = new FlowLayoutWidget();
notificationSettingsContainer.HAnchor |= HAnchor.ParentLeftRight;
notificationSettingsContainer.VAnchor |= Agg.UI.VAnchor.ParentCenter;
notificationSettingsContainer.Margin = new BorderDouble(0, 0, 0, 0);
notificationSettingsContainer.Padding = new BorderDouble(0);
this.textImageButtonFactory.FixedHeight = TallButtonHeight;
ImageBuffer notifiImage = StaticData.Instance.LoadIcon("notify-24x24.png").InvertLightness();
notifiImage.SetRecieveBlender(new BlenderPreMultBGRA());
int iconSize = (int)(24 * GuiWidget.DeviceScale);
if (!ActiveTheme.Instance.IsDarkTheme)
{
notifiImage.InvertLightness();
}
ImageWidget notificationSettingsIcon = new ImageWidget(notifiImage);
notificationSettingsIcon.VAnchor = VAnchor.ParentCenter;
notificationSettingsIcon.Margin = new BorderDouble(right: 6, bottom: 6);
configureNotificationSettingsButton = textImageButtonFactory.Generate("Configure".Localize().ToUpper());
configureNotificationSettingsButton.Name = "Configure Notification Settings Button";
configureNotificationSettingsButton.Margin = new BorderDouble(left: 6);
configureNotificationSettingsButton.VAnchor = VAnchor.ParentCenter;
configureNotificationSettingsButton.Click += new EventHandler(configureNotificationSettingsButton_Click);
notificationSettingsLabel = new TextWidget(LocalizedString.Get("Notifications"));
notificationSettingsLabel.AutoExpandBoundsToText = true;
notificationSettingsLabel.TextColor = ActiveTheme.Instance.PrimaryTextColor;
notificationSettingsLabel.VAnchor = VAnchor.ParentCenter;
GuiWidget printNotificationsSwitchContainer = new FlowLayoutWidget();
printNotificationsSwitchContainer.VAnchor = VAnchor.ParentCenter;
printNotificationsSwitchContainer.Margin = new BorderDouble(left: 16);
CheckBox enablePrintNotificationsSwitch = ImageButtonFactory.CreateToggleSwitch(UserSettings.Instance.get("PrintNotificationsEnabled") == "true");
enablePrintNotificationsSwitch.VAnchor = VAnchor.ParentCenter;
enablePrintNotificationsSwitch.CheckedStateChanged += (sender, e) =>
{
UserSettings.Instance.set("PrintNotificationsEnabled", enablePrintNotificationsSwitch.Checked ? "true" : "false");
};
printNotificationsSwitchContainer.AddChild(enablePrintNotificationsSwitch);
printNotificationsSwitchContainer.SetBoundsToEncloseChildren();
notificationSettingsContainer.AddChild(notificationSettingsIcon);
notificationSettingsContainer.AddChild(notificationSettingsLabel);
notificationSettingsContainer.AddChild(new HorizontalSpacer());
notificationSettingsContainer.AddChild(configureNotificationSettingsButton);
notificationSettingsContainer.AddChild(printNotificationsSwitchContainer);
return notificationSettingsContainer;
}
示例6: GetCameraControl
private FlowLayoutWidget GetCameraControl()
{
FlowLayoutWidget buttonRow = new FlowLayoutWidget();
buttonRow.HAnchor = HAnchor.ParentLeftRight;
buttonRow.Margin = new BorderDouble(0, 4);
ImageBuffer cameraIconImage = StaticData.Instance.LoadIcon("camera-24x24.png",24,24).InvertLightness();
cameraIconImage.SetRecieveBlender(new BlenderPreMultBGRA());
int iconSize = (int)(24 * GuiWidget.DeviceScale);
if (!ActiveTheme.Instance.IsDarkTheme)
{
cameraIconImage.InvertLightness();
}
ImageWidget cameraIcon = new ImageWidget(cameraIconImage);
cameraIcon.Margin = new BorderDouble(right: 6);
TextWidget cameraLabel = new TextWidget("Camera Monitoring".Localize());
cameraLabel.AutoExpandBoundsToText = true;
cameraLabel.TextColor = ActiveTheme.Instance.PrimaryTextColor;
cameraLabel.VAnchor = VAnchor.ParentCenter;
openCameraButton = textImageButtonFactory.Generate("Preview".Localize().ToUpper());
openCameraButton.Click += new EventHandler(openCameraPreview_Click);
openCameraButton.Margin = new BorderDouble(left: 6);
buttonRow.AddChild(cameraIcon);
buttonRow.AddChild(cameraLabel);
buttonRow.AddChild(new HorizontalSpacer());
buttonRow.AddChild(openCameraButton);
if (ApplicationSettings.Instance.get(ApplicationSettingsKey.HardwareHasCamera) == "true")
{
GuiWidget publishImageSwitchContainer = new FlowLayoutWidget();
publishImageSwitchContainer.VAnchor = VAnchor.ParentCenter;
publishImageSwitchContainer.Margin = new BorderDouble(left: 16);
CheckBox toggleSwitch = ImageButtonFactory.CreateToggleSwitch(ActiveSliceSettings.Instance.GetValue<bool>(SettingsKey.publish_bed_image));
toggleSwitch.CheckedStateChanged += (sender, e) =>
{
CheckBox thisControl = sender as CheckBox;
ActiveSliceSettings.Instance.SetValue(SettingsKey.publish_bed_image, thisControl.Checked ? "1" : "0");
};
publishImageSwitchContainer.AddChild(toggleSwitch);
publishImageSwitchContainer.SetBoundsToEncloseChildren();
buttonRow.AddChild(publishImageSwitchContainer);
}
return buttonRow;
}