public MainWindow(int ID, GUIHost host, SettingsManager main_controller, PopupMessageBox messagebox, SpoolerConnection spooler_connection) : base(ID) { settingsManager = main_controller; this.messagebox = messagebox; this.host = host; Init(host, "guicontrols", 640f, 320f, 704f, 383f, 41, 8, 64, 37, 8, 64); SetSize(792, 356); var textWidget = new TextWidget(0); textWidget.SetPosition(50, 2); textWidget.SetSize(500, 35); textWidget.Text = "T_ACCESSORIES"; textWidget.Alignment = QFontAlignment.Left; textWidget.Size = FontSize.Large; textWidget.Color = new Color4(0.5f, 0.5f, 0.5f, 1f); AddChildElement(textWidget); var buttonWidget = new ButtonWidget(1) { X = -40, Y = 4 }; buttonWidget.SetSize(32, 32); buttonWidget.Text = ""; buttonWidget.TextColor = new Color4(0.5f, 0.5f, 0.5f, 1f); buttonWidget.TextDownColor = new Color4(1f, 1f, 1f, 1f); buttonWidget.TextOverColor = new Color4(0.161f, 0.79f, 0.95f, 1f); buttonWidget.Alignment = QFontAlignment.Left; buttonWidget.Init(host, "guicontrols", 704f, 320f, 735f, 351f, 736f, 320f, 767f, 351f, 704f, 352f, 735f, 383f); buttonWidget.DontMove = true; buttonWidget.SetCallback(new ButtonCallback(MyButtonCallback)); AddChildElement(buttonWidget); tab_frame = new Frame(2) { X = 210, Y = 45, RelativeWidth = 1f, RelativeWidthAdj = -220, RelativeHeight = 1f, RelativeHeightAdj = -55 }; AddChildElement(tab_frame); m_oTabButtonsVerticalLayout = new ScrollableVerticalLayout(); m_oTabButtonsVerticalLayout.Init(host); m_oTabButtonsVerticalLayout.SetSize(208, 200); m_oTabButtonsVerticalLayout.RelativeHeight = 1f; m_oTabButtonsVerticalLayout.RelativeHeightAdj = -40; m_oTabButtonsVerticalLayout.Y = 35; m_oTabButtonsVerticalLayout.X = 0; m_oTabButtonsVerticalLayout.BorderWidth = 0; m_oTabButtonsVerticalLayout.BorderHeight = 0; m_oTabButtonsVerticalLayout.layoutMode = Layout.LayoutMode.ResizeLayoutToFitChildren; AddChildElement(m_oTabButtonsVerticalLayout); Sprite.pixel_perfect = true; ButtonWidget tabButton = CreateTabButton(3, "T_AccessoriesTab_Nozzle"); m_oTabButtonsVerticalLayout.Refresh(); Sprite.pixel_perfect = false; Visible = false; CreateNozzlePage(host, spooler_connection, messagebox); var num = 1; tabButton.Checked = num != 0; }
private void GenerateFromSlicerSettings(SmartSlicerSettingsBase smartSlicerSettings) { this.smartSlicerSettings = smartSlicerSettings; tab_frame = new Frame(608, this) { X = 180, Y = 35, HexBorderColor = "#0C0C0C0C" }; AddChildElement(tab_frame); var YPos = 35; var num = 10000; List <XMLTabCollectionSettingsItem> visualSettings = smartSlicerSettings.VisualSettings; for (var index = 0; index < visualSettings.Count; ++index) { CreateTabButton(visualSettings[index].Header, ref num, YPos, 181, 64); YPos += 64; } for (var index1 = 0; index1 < visualSettings.Count; ++index1) { var scrollableVerticalLayout = new ScrollableVerticalLayout(num++, tab_frame); scrollableVerticalLayout.Init(host); scrollableVerticalLayout.tag = GetTabFrameTag(visualSettings[index1].Header); scrollableVerticalLayout.Visible = false; scrollableVerticalLayout.Enabled = false; scrollableVerticalLayout.RelativeWidth = 1f; scrollableVerticalLayout.RelativeHeight = 1f; for (var index2 = 0; index2 < visualSettings[index1].Items.Count; ++index2) { XMLSettingsItem settings = visualSettings[index1].Items[index2]; if (!settings.Name.StartsWith(XMLSetting.MagicInternalString + "Hidden", StringComparison.InvariantCultureIgnoreCase)) { Element2D element; switch (settings.SlicerSettingsItem.GetItemType()) { case SettingItemType.IntType: case SettingItemType.FloatMMType: element = CreateTextBox(scrollableVerticalLayout, settings, ref num); break; case SettingItemType.BoolType: element = CreateCheckBox(scrollableVerticalLayout, settings, ref num); break; case SettingItemType.FillPatternType: case SettingItemType.SupportPatternType: element = CreateComboBox(scrollableVerticalLayout, settings, ref num); break; default: throw new NotImplementedException("GenerateAdvancedSettings was given an unknown setting"); } if (element != null) { ProcessValidity(settings.Name, settings.SlicerSettingsItem, element); } } } tab_frame.AddChildElement(scrollableVerticalLayout); } Refresh(); if (visualSettings.Count == 0) { return; } (FindChildElement(GetTabButtonTag(visualSettings[0].Header)) as ButtonWidget)?.SetChecked(true); }