protected void bttnLeft_Click(object sender, EventArgs e) { try { foreach (ListItem item in lstSelected.Items) { if (item.Selected) { StrategyInfo info = StrategyConfigs.Instance[item.Value.Trim()]; if (info == null) { continue; } UnSelectedList.Add(info); //SelectedList.Remove(info); Remove(SelectedList, info); } } bindData(); } catch (Exception ex) { Messages.ShowError("当前操作出错!<br />详细信息:" + ex.Message); } }
protected virtual void DenoteEmptyUnSelectedList(MutableObject mutable, MutableObject defaultObject) { if (!UnSelectedList.Any()) { UnSelectedList.Add(defaultObject); } }
public IEnumerator SelectOnly(IEnumerable <VisualPayload> payloads) { IEnumerator iterator; UnSelectedList.AddRange(SelectedList); SelectedList.Clear(); foreach (var payload in payloads) { UnSelectedList.Remove(payload); SelectedList.Add(payload); payload.VisualData.Bound.ClearBounds(); iterator = SelectedState.Transmit(payload); while (iterator.MoveNext()) { yield return(null); } } iterator = SendUnselected(); while (iterator.MoveNext()) { yield return(null); } iterator = TransmitMultiStates(); while (iterator.MoveNext()) { yield return(null); } }
/// <summary> /// 数据初始化 /// </summary> private void Init() { try { bool fileexist = System.IO.File.Exists(Server.MapPath("/Plugins/IPStrategyPlugin/Plugin.xml")); if (!fileexist) { Messages.ShowMessage(string.Format("如果要管理IP策略请安装IP策略管理插件!<a href=\"javascript:window.top.location.href='/admin/Plugin/PluginAdd.aspx?tab=0&qtext={0}&qtype=1&ptype=PLUGIN';void(0);\">去安装</a>", HttpUtility.UrlEncode("IP策略管理")), true); } else { bool isinstalled = new PluginInfo(Server.MapPath("/Plugins/IPStrategyPlugin/Plugin.xml")).IsInstalled; if (!isinstalled) { Messages.ShowMessage("如果要管理IP策略请激活IP策略管理插件!<a href=\"javascript:window.top.location.href='/admin/Plugin/PluginList.aspx';void(0);\">去激活</a>", true); } else { Messages.ShowMessage("已激活IP策略管理插件!<a href=\"javascript:window.top.location.href='/Plugins/IPStrategyPlugin/UI/StrateList.aspx';void(0);\">去管理</a>", true); } } switch (Mode) { case StrategyMode.ARTICLE: IPStrategy = ArticleHelper.QueryStrategy(ArticleID); break; case StrategyMode.CHANNEL: IPStrategy = ChannelHelper.QueryStrategy(ChannelID); break; case StrategyMode.CONVENTION: bttnSave.Visible = false; break; } UnSelectedList.AddRange(StrategyConfigs.Instance.Items); if (!String.IsNullOrEmpty(IPStrategy)) { String[] strtgyList = IPStrategy.Split("|".ToCharArray()); foreach (string strtgy in strtgyList) { StrategyInfo info = StrategyConfigs.Instance[strtgy]; if (!String.IsNullOrEmpty(strtgy) && info != null) { SelectedList.Add(info); Remove(UnSelectedList, info); //UnSelectedList.Remove(info); } } } bindData(); } catch (Exception ex) { Messages.ShowError("数据初始化出错!<Br />错误原因:" + ex.Message); } }
public IEnumerator Deselect(VisualPayload payload) { SelectedList.Remove(payload); UnSelectedList.Add(payload); payload.VisualData.Bound.ClearBounds(); IEnumerator iterator; if (!SelectedList.Any()) { iterator = SendNoneSelected(); while (iterator.MoveNext()) { yield return(null); } } else { iterator = NormalState.Transmit(payload); while (iterator.MoveNext()) { yield return(null); } } iterator = TransmitMultiStates(); while (iterator.MoveNext()) { yield return(null); } }
public IEnumerator Select(VisualPayload payload) { bool sendNormal = !SelectedList.Any(); UnSelectedList.Remove(payload); SelectedList.Add(payload); payload.VisualData.Bound.ClearBounds(); var iterator = SelectedState.Transmit(payload); while (iterator.MoveNext()) { yield return(null); } if (sendNormal) { iterator = SendUnselected(); while (iterator.MoveNext()) { yield return(null); } } iterator = TransmitMultiStates(); while (iterator.MoveNext()) { yield return(null); } }
public IEnumerator Deselect(IEnumerable <VisualPayload> payloads) { if (!payloads.Any()) { yield return(null); yield break; } IEnumerator iterator; foreach (var payload in payloads) { if (UnSelectedList.Contains(payload)) { continue; } SelectedList.Remove(payload); UnSelectedList.Add(payload); } //var newNodeState = SelectedList.Count == 0 ? NoneSelectedState : NormalState; if (SelectedList.Any()) { foreach (var payload in payloads) { payload.VisualData.Bound.ClearBounds(); iterator = NormalState.Transmit(payload); while (iterator.MoveNext()) { yield return(null); } } } else { iterator = SendNoneSelected(); while (iterator.MoveNext()) { yield return(null); } } iterator = TransmitMultiStates(); while (iterator.MoveNext()) { yield return(null); } }
protected void bttnLeftAll_Click(object sender, EventArgs e) { try { UnSelectedList.AddRange(SelectedList); SelectedList.Clear(); bindData(); } catch (Exception ex) { Messages.ShowError("当前操作出错!<br />详细信息:" + ex.Message); } }
public IEnumerator Select(IEnumerable <VisualPayload> payloads) { if (!payloads.Any()) { yield return(null); yield break; } bool sendNormal = !SelectedList.Any(); IEnumerator iterator; foreach (var payload in payloads) { if (SelectedList.Contains(payload)) { continue; } UnSelectedList.Remove(payload); SelectedList.Add(payload); payload.VisualData.Bound.ClearBounds(); iterator = SelectedState.Transmit(payload); while (iterator.MoveNext()) { yield return(null); } } if (sendNormal) { iterator = SendUnselected(); while (iterator.MoveNext()) { yield return(null); } } iterator = TransmitMultiStates(); while (iterator.MoveNext()) { yield return(null); } }
public IEnumerator DeselectAll() { IEnumerator iterator; UnSelectedList.AddRange(SelectedList); SelectedList.Clear(); iterator = SendNoneSelected(); while (iterator.MoveNext()) { yield return(null); } iterator = TransmitMultiStates(); while (iterator.MoveNext()) { yield return(null); } }
public IEnumerator SelectAll() { IEnumerator iterator; foreach (var payload in UnSelectedList) { payload.VisualData.Bound.ClearBounds(); iterator = SelectedState.Transmit(payload); while (iterator.MoveNext()) { yield return(null); } } SelectedList.AddRange(UnSelectedList); UnSelectedList.Clear(); iterator = TransmitMultiStates(); while (iterator.MoveNext()) { yield return(null); } }
public override IEnumerator ReceivePayload(VisualPayload payload) { foreach (var entry in Scope.GetEntries(payload.Data)) { SelectGroups(entry); //var firstEntry = EntryField.GetEntries(payload.Data).First().Last(); // //if (firstEntry != null) // firstEntry = firstEntry.CloneKeys(); //else // firstEntry = new MutableObject(); // //if (!firstEntry.ContainsKey(ImplicitSchemaIndicator.KeyName)) // firstEntry.Add(ImplicitSchemaIndicator.KeyName, new ImplicitSchemaIndicator(this)); // // //DenoteEmptySelectedList(payload.Data, firstEntry); //DenoteEmptyUnSelectedList(payload.Data, firstEntry); if (NewPayloadOnly.GetFirstValue(payload.Data)) { if (AllowEmptyLists.GetFirstValue(payload.Data) || SelectedList.Any()) { var iterator = SelectedSet.Transmit( new VisualPayload(new MutableObject { { SelectedListTarget.LastKey, SelectedList } }, payload.VisualData)); while (iterator.MoveNext()) { yield return(null); } } if (AllowEmptyLists.GetFirstValue(payload.Data) || UnSelectedList.Any()) { var iterator = UnSelectedSet.Transmit( new VisualPayload(new MutableObject { { UnSelectedListTarget.LastKey, UnSelectedList } }, payload.VisualData)); while (iterator.MoveNext()) { yield return(null); } } } else { SelectedListTarget.SetValue(SelectedList, entry); UnSelectedListTarget.SetValue(UnSelectedList, entry); } } if (!NewPayloadOnly.GetFirstValue(payload.Data)) { if (AllowEmptyLists.GetFirstValue(payload.Data) || SelectedList.Any()) { var iterator = SelectedSet.Transmit(payload); while (iterator.MoveNext()) { yield return(null); } } if (AllowEmptyLists.GetFirstValue(payload.Data) || UnSelectedList.Any()) { var iterator = UnSelectedSet.Transmit(payload); while (iterator.MoveNext()) { yield return(null); } } } }
protected override void SelectGroups(List <MutableObject> entry) { SelectedList.Clear(); UnSelectedList.Clear(); var maintainCountAtEdges = MaintainCountAtEdgesField.GetLastKeyValue(entry.Last()); var entries = EntryField.GetEntries(entry); var entriesCount = entries.Count(); if (entriesCount == 0) { Debug.LogError("What? Empty entries?"); } var beforeWidth = SelectBeforeCount.GetLastKeyValue(entry.Last()); var afterWidth = SelectAfterCount.GetLastKeyValue(entry.Last()); var lowerBound = maintainCountAtEdges?Mathf.Min(beforeWidth, entriesCount - 1):0; var upperBound = maintainCountAtEdges ? Mathf.Max(entriesCount - afterWidth - 1, 0) : entriesCount - 1; if (lowerBound >= upperBound) { // use the lower of the two values for both bounds to avoid overlap lowerBound = Mathf.Min(lowerBound, upperBound); upperBound = Mathf.Min(lowerBound, upperBound); } var index = Mathf.Clamp(CenterIndex.GetLastKeyValue(entry.Last()), lowerBound, upperBound); var minIndex = Mathf.Max(index - beforeWidth, 0); var maxIndex = Mathf.Min(index + afterWidth, entriesCount - 1); //var i = 0; //foreach ( var entry in entries ) //{ // if ( i < minIndex ) // UnSelectedList. //} bool selectedListOnly = SelectedListOnly.GetValue(entry); int currentIndex = 0; if (selectedListOnly) { foreach (var subEntry in EntryField.GetEntries(entry)) { if (currentIndex > maxIndex) { break; } if (currentIndex >= minIndex) { SelectedList.Add(subEntry.Last()); } currentIndex++; } } else { foreach (var subEntry in EntryField.GetEntries(entry)) { if (currentIndex < minIndex || currentIndex > maxIndex) { UnSelectedList.Add(subEntry.Last()); } else { SelectedList.Add(subEntry.Last()); } currentIndex++; } } }