public NotebookTab(IUIStyle style) : base(style) { activationRequestedSupport = new EventSupport <EventArgs>(); closeRequestedSupport = new EventSupport <EventArgs>(); emptyContent = new Label(UIStyle) { Anchor = AnchoredRect.CreateHorizontallyStretched() }; closeButton = new Button(UIStyle); closeButton.AddStyleClass(CloseButtonStyleClass); closeButton.Anchor = AnchoredRect.CreateCentered(); closeButton.ActionPerformed += OnCloseButtonOnClicked; InternalContent = new DockPanel(UIStyle); InternalContent.LastChildFill = true; InternalContent.Add(closeButton, DockPanelConstraint.Right); InternalContent.Add(emptyContent, DockPanelConstraint.Left); KeyPressed += OnKeyPressed; MouseClicked += OnMouseClick; Focusable = true; }
public Slider(IUIStyle style) : base(style) { valueChangedSupport = new EventSupport <EventArgs>(); sliderHandle = new Button(UIStyle); sliderHandle.AddStyleClass(SliderHandleStyleClass); sliderHandle.Anchor = AnchoredRect.CreateLeftAnchored(); sliderHandle.MouseUp += OnMouseUp; sliderHandle.MouseDown += OnMouseDown; sliderHandle.MouseDragged += OnMouseDragged; sliderTrack = new SliderTrack(UIStyle); sliderTrack.Anchor = AnchoredRect.Full; Group elements = new Group(UIStyle); elements.Anchor = AnchoredRect.Full; elements.Add(sliderTrack); elements.Add(sliderHandle); InternalContent = elements; Focusable = true; MinValue = 0; MaxValue = 10; Step = 1; Value = 0; }
protected AbstractDocument(IDocumentContent content) { Content = content; documentModifiedSupport = new EventSupport <TextModificationEventArgs>(); undoableEditCreatedSupport = new EventSupport <UndoableEditEventArgs>(); filterChain = new RootFilterChain(this); }
public ListView(IUIStyle style) : base(style) { selectionChangedSupport = new EventSupport <ListSelectionEventArgs>(); listViewStyle = StyleSystem.StylesFor <ListViewStyleDefinition>(); selectedIndex = -1; InternalContent = new ScrollPanel <BoxGroup>(UIStyle) { Content = new BoxGroup(UIStyle) { Orientation = Orientation.Vertical } }; DataItems = new ObservableCollection <T>(); DataItems.CollectionChanged += (s, e) => { RebuildDataRenderers(); InvalidateLayout(); }; CreateRenderer = ListView.DefaultCreateRenderer; MinHeight = 0; MaxHeight = int.MaxValue; }
/// <summary> /// 下移事件 /// </summary> public void Down() { EventTreeNode node = this.SelectedNode as EventTreeNode; if (node == null) { return; } EventTreeNode nextNodex = node.NextNode as EventTreeNode; if (nextNodex == null) { return; } int nodeOldIndex = this.EventSupport.Events.IndexOf(node.Event); this.EventSupport.Events.NextTo(node.Event, nextNodex.Event); EventSupport.EventUpdate(this); //BuildTree(); this.SwapNode(node, nextNodex); this.SelectedNode = node; if (EventOrderChanged != null) { CollectionEditEventArgs[] eventArgs = new CollectionEditEventArgs[1]; eventArgs[0] = new CollectionEditEventArgs(this.EventSupport.Events, CollectionEditType.Move, this.EventSupport.Events.IndexOf(node.Event), nodeOldIndex, node.Event); EventOrderChanged(eventArgs); } }
protected WatchRule(IWidget target) { Target = target; propertyChangedHandler = OnPropertyChanged; stateChangedSupport = new EventSupport <EventArgs>(); Target.PropertyChanged += propertyChangedHandler; }
/// <summary> /// 删除事件 /// </summary> public void Delete() { EventTreeNode node = this.SelectedNode as EventTreeNode; //如果双击的是事件,删除 if (node != null) { if (MessageBox.Show( CommonLanguage.Current.ConfirmDelete + Environment.NewLine + Environment.NewLine + node.Name, CommonLanguage.Current.MessageCaption_Notice, MessageBoxButtons.OKCancel, MessageBoxIcon.Question ) != DialogResult.OK) { return; } int index = this.EventSupport.Events.IndexOf(node.Event); this.EventSupport.Events.Remove(node.Event); EventSupport.EventUpdate(this); node.Remove(); if (EventChanged != null) { Dictionary <int, object> values = new Dictionary <int, object>(); values.Add(index, node.Event); EventChanged(new CollectionEditEventArgs(this.EventSupport.Events, values)); } } }
//添加,编辑,删除,上下移动方法公开,是为了让外部按钮调用 /// <summary> /// 添加事件 /// </summary> public void Add() { if (EventSupport == null) { return; } FormEventEditor formEventSet = new FormEventEditor(this.Entity); formEventSet.FormEntity = this.FormEntity; formEventSet.EventList = EventSupport.Events; if (formEventSet.ShowDialog() != DialogResult.OK) { return; } EventSupport.Events.Add(formEventSet.Event); EventSupport.EventUpdate(this); BuildTree(); if (EventChanged != null) { EventChanged(new CollectionEditEventArgs(this.EventSupport.Events, CollectionEditType.Add, this.EventSupport.Events.IndexOf(formEventSet.Event), formEventSet.Event)); } }
public NotebookTabList(IUIStyle style) : base(style) { activeTabChangedSupport = new EventSupport <EventArgs>(); allowDragReorder = true; notebookStyle = StyleSystem.StylesFor <NotebookStyleDefinition>(); DragState = new DragNDropState(this); }
private void NotifyChange(object sender, RecordChangedEventArgs <T> e) { if (DependyTable != null && EventSupport.Contains(e.ChangeType)) { Task.Factory.StartNew(() => { NotificationWcf.SendToWcf(new SystimeServiceWcf.Notification() { EntityJson = JsonConvert.SerializeObject(e.Entity), Event = e.ChangeType.ToString(), TableName = TableName }); }); } }
public ListDataItemRenderer(IUIStyle style) : base(style) { selectionChangedSupport = new EventSupport <ListSelectionEventArgs>(); Anchor = AnchoredRect.CreateHorizontallyStretched(); FocusedChanged += (s, e) => { if (Focused) { selectionChangedSupport.Raise(this, ListSelectionEventArgs.Adjusted); } }; MouseClicked += OnMouseClick; KeyPressed += OnKeyPressed; }
public RadioButtonSet(IUIStyle style, IEnumerable <T> items = null) : base(style) { selectionChangedSupport = new EventSupport <ListSelectionEventArgs>(); InternalContent = new BoxGroup(UIStyle) { Orientation = Orientation.Horizontal }; Renderer = DefaultRenderFunction; DataItems = new ObservableCollection <T>(); if (items != null) { DataItems.AddRange(items); } DataItems.CollectionChanged += OnItemsChanged; }
public Scrollbar(IUIStyle style) : base(style) { scrollbarPositionChangedSupport = new EventSupport <EventArgs>(); scrollbarStyle = StyleSystem.StylesFor <ScrollbarStyleDefinition>(); ScrollUnit = 50 / 120f; lerpOffset = new LerpValue(0, 0, 0.5f, AnimationLoop.NoLoop); MouseDragged += OnMouseDragged; MouseWheel += OnMouseWheel; MouseUp += OnMouseUp; MouseDown += OnMouseDown; MouseClicked += OnMouseClick; Thumb = new ScrollbarThumb(UIStyle); }
public OptionPane(IUIStyle style) : base(style) { actionPerformedSupport = new EventSupport <OptionPaneActionArgs>(); TitleLabel = new Label(UIStyle); dummyContent = new Label(UIStyle); buttonContainer = new Grid(UIStyle); buttonContainer.RowConstraints.Add(LengthConstraint.Auto); InternalContent = new DockPanel(UIStyle); InternalContent.LastChildFill = true; InternalContent.Add(TitleLabel, DockPanelConstraint.Top); InternalContent.Add(buttonContainer, DockPanelConstraint.Bottom); InternalContent.Add(dummyContent, DockPanelConstraint.Left); }
public ButtonBase(IUIStyle style) : base(style) { buttonStyle = StyleSystem.StylesFor <ButtonStyleDefinition>(); actionPerformedSupport = new EventSupport <EventArgs>(); selectionChangedSupport = new EventSupport <EventArgs>(); pressedAnimation = new SmoothValue(1f, 0f, 0.1f); pressedAnimation.FinishAnimation(); Focusable = true; FocusedChanged += (sender, args) => ResetPressState(); MouseDown += OnMouseDown; MouseUp += OnMouseUp; MouseClicked += OnMouseClick; KeyPressed += OnKeyPressed; KeyReleased += OnKeyReleased; }
/// <summary> /// 编辑事件 /// </summary> public void Edit() { EventTreeNode node = this.SelectedNode as EventTreeNode; //如果选择的不是事件,直接返回 if (node == null) { return; } //保持当前事件对象的副本,用于在编辑事件之后,进行Compare提取差异 EventBase oldEvent = null; if (EventChanged != null) { oldEvent = node.Event.Clone() as EventBase; } //FormEventEditor.Event编辑后还是原对象的引用,在原对象基础上修改的 FormEventEditor formEventSet = new FormEventEditor(node.Event.HostEntity, node.Event); formEventSet.FormEntity = node.Event.HostFormEntity; formEventSet.EventList = EventSupport.Events; if (formEventSet.ShowDialog() == DialogResult.OK) { EventSupport.EventUpdate(this); //直接重建树 //如果想根据改变的触发时机来修改当前事件的父节点,涉及到事件的顺序问题 //因为编辑的事件在移到新的触发时机下面时,不一定是最后一个 BuildTree(); //触发事件(如果有) if (EventChanged != null) { CollectionEditEventArgs args = new CollectionEditEventArgs(this.EventSupport.Events, CollectionEditType.Edit, this.EventSupport.Events.IndexOf(node.Event), node.Event); args.Members.Inject(ObjectCompare.Compare(oldEvent, node.Event)); EventChanged(args); } } }
protected VisualContent() { layoutInvalidatedSupport = new EventSupport <EventArgs>(); layoutInvalid = true; }
public PopUp(IUIStyle style) : base(style) { closedSupport = new EventSupport <EventArgs>(); closingSupport = new EventSupport <ClosingEventArgs>(); }
public override void SetUp() { base.SetUp(); eventSupport = new EventSupport(Browser); }