public TabVBox(ITdiTab tabWidget, ITDIWidgetResolver widgetResolver) { tab = tabWidget; titleLabel = new Label(); if (tab is ITdiTabWithPath) { (tab as ITdiTabWithPath).PathChanged += OnPathUpdated; OnPathUpdated(null, EventArgs.Empty); } else { tab.TabNameChanged += Tab_TabNameChanged; Tab_TabNameChanged(null, null); } this.PackStart(titleLabel, false, true, 2); TabWidget = widgetResolver.Resolve(tabWidget); if (TabWidget == null) { throw new InvalidCastException($"Ошибка приведения типа {nameof(ITdiTab)} к типу {nameof(Widget)}."); } this.Add(TabWidget); titleLabel.Show(); TabWidget.Show(); }
public TdiSliderTab(ITdiJournal jour, ITDIWidgetResolver widgetResolver) { this.widgetResolver = widgetResolver ?? throw new ArgumentNullException(nameof(widgetResolver)); Journal = jour; HandleSwitchIn = OnSwitchIn; HandleSwitchOut = OnSwitchOut; }