protected ConfigWidgetBase(IConfigFrontend viewModel) : base(Orientation.Horizontal, SpacingPixels) { this.viewModel = viewModel; var labelWidget = Label.New(viewModel.Name); labelWidget.TooltipText = viewModel.Description; labelWidget.MarginStart = LabelStartMargin; labelWidget.Xalign = 0; labelWidget.SetSizeRequest(ElementWidth, labelWidget.AllocatedHeight); base.Add(labelWidget); var theme = ThemeTones.PresetThemeTone; var resetButtonContent = new ButtonContent( new IconInfo(IconType.Reset, theme), delegate { ResetToDefault(); }); resetToDefaultsButton = resetButtonContent.ToGtkButton(); base.Add(resetToDefaultsButton); UpdateResetButton(); viewModel.PropertyChanged += delegate { UpdateResetButton(); }; }
public HeaderContent(ButtonContent buttonContent, string?text = null) : this() { Add(buttonContent.ToGtkButton()); TryAddLabel(text); }