public ITabPanel CreateTabPanel() { ITabPanel tabPanel = CreateTabPanel(CreateDefaultTabPanel()); Panel panel = (Panel)tabPanel.Control; panel.MouseDown += tabPanel.OnMouseClick; panel.MouseUp += (sender, e) => tabPanel.OnMouseUp(sender, new TabDropEventArgs(null, e.Location, Control.MousePosition)); return(CustomTabPanel(tabPanel)); }
private static void SetHeaderOrientation(ITabPanel tabPanel, dynamic headerOrientationValue) { TabHeaderOrientation headerOrientation; if (Enum.TryParse(headerOrientationValue as string, true, out headerOrientation) == false) { headerOrientation = TabHeaderOrientation.Horizontal; } tabPanel.SetHeaderOrientation(headerOrientation); }
public void OnInsert(int index, ITabPanel item, int currentTabLen) { switch (Orientation) { case Orientation.Horizontal: item.Width = currentTabLen; break; case Orientation.Vertical: item.Height = currentTabLen; break; } }
public void OnCalcNewPosition(int argsX, int argsY, ITabPanel tab) { switch (Orientation) { case Orientation.Horizontal: tab.Location = new Point(tab.Location.X + (argsX - tab.ClickPosition.X), FixedPoint);; break; case Orientation.Vertical: tab.Location = new Point(FixedPoint, tab.Location.Y + (argsY - tab.ClickPosition.Y)); break; } }
public void SwitchWindow(ITabPanel tab) { //TODO избавиться ((Control)tab.Control).ForgetYourFather(); ((Control)tab.TabContent.Control).ForgetYourFather(); //((Control)tab.Control).ForgetAll(); //((Control)tab.TabContent.Control).ForgetAll(); //Panel panel = (Panel)tab.Control; //panel.MouseDown += tab.OnMouseClick; //panel.MouseUp += (sender, e) => tab.OnMouseUp(sender, new TabDropEventArgs(null, e.Location, Control.MousePosition)); //((Panel)newParent.Control).Controls.Add((Control)tab.TabContent.Control); //((Control) newParent.Container.TabCollection.Control).Controls.Add(); //((Control)tab.TabContent.Control).BindingConcreteEvents((Control) newParent.Container.TabCollection.Control); }
public void OnSetPosition(int index, ITabPanel item, int currentTabLent, int indent) { int distention = (currentTabLent + indent) * index; switch (Orientation) { case Orientation.Horizontal: ChangeLocationWidth(item, distention); break; case Orientation.Vertical: ChangeLocationHeight(item, distention); break; } }
internal void OnRender(ITabPanel panel, int currentTabLen, int indent, int index) { Point point; int curPosition = index * (currentTabLen + indent); switch (Orientation) { case Orientation.Horizontal: point = new Point(curPosition, FixedPoint); panel.ChangeLocation(point); break; case Orientation.Vertical: point = new Point(FixedPoint, curPosition); panel.ChangeLocation(point); break; } }
public ITabWindow CreateWindow(ITabWindow parent, ITabPanel tab) { //((Control)tab.Control).ForgetAll(); //((Control)tab.TabContent.Control).ForgetAll(); //Panel panel = (Panel)tab.Control; //panel.MouseDown += tab.OnMouseClick; //panel.MouseUp += (sender, e) => tab.OnMouseUp(sender, new TabDropEventArgs(null, e.Location, Control.MousePosition)); Form window = CreateDefaultTabWindow(); ITabView tabView = new TabViewLogic(tab, this); //window.BubblingFromParent(); tabView.Orientation = parent.Container.Orientation; var result = CustomTabWindow(new TabWindow(window, parent, tabView, this)); //((Control)tab.Control).Parent.Parent.Parent.BindingConcreteEvents(window); window.BubblingFromParent(); return(result); }
/// <summary> /// Устанавливает родительскую панель закладок. /// </summary> public void SetParent(ITabPanel value) { if (!Equals(_parent, value)) { var tabControl = _parent.GetControl <DXTabControl>(); if (tabControl != null) { tabControl.TabHiding -= OnTabPageClosing; } if (value != null) { tabControl = value.GetControl <DXTabControl>(); if (tabControl != null) { tabControl.TabHiding += OnTabPageClosing; } } _parent = value; } }
protected abstract void TabUnbinding(ITabPanel item);
protected abstract void CalcNewPosition(int argsX, int argsY, ITabPanel tab);
public TabEventArgs(ITabPanel tabPanel) { TabPanel = tabPanel; }
public abstract bool Remove(ITabPanel item, bool disposing);
public TabDeletingEventArgs(ITabPanel tabPanel, bool disposing) : base(tabPanel) { Disposing = disposing; }
public virtual bool Contains(ITabPanel item) => Controls.Contains(item);
public abstract void Insert(int index, ITabPanel item);
private void ChangeLocationHeight(ITabPanel control, int distention) { Point point = new Point(FixedPoint, distention); control.ChangeLocation(point); }
protected abstract void SetPosition(int index, ITabPanel item);
private void SetStartLocationWidth(ITabPanel control, int distention) { control.Location = new Point(distention, FixedPoint); }
private void SetStartLocationHeight(ITabPanel control, int distention) { control.Location = new Point(FixedPoint, distention); }
public abstract void Add(ITabPanel item);
private void ChangeLocationWidth(ITabPanel control, int distention) { Point point = new Point(distention, FixedPoint); control.ChangeLocation(point); }
public abstract bool Remove(ITabPanel item);
public virtual int IndexOf(ITabPanel item) => Controls.IndexOf(item);
public TabDropEventArgs(ITabPanel tabPanel, Point mousePoint, Point mouseAbsolutePoint) { TabPanel = tabPanel; MousePoint = mousePoint; MouseAbsolutePoint = mouseAbsolutePoint; }