public CProfileUserControl(CProfile profile, EMove move, int priority) { InitializeComponent(); textBoxName.Text = profile.Name; textBoxFaculty.Text = profile.Faculty.ToString(); _profile = profile; Move = move; Priority = priority; }
public CDirectoryUserControl(CDirectionWithProfile directionWithProfile, int priority, EMove move, bool added) { InitializeComponent(); Priority = priority; DirectionWithProfile = directionWithProfile; textBoxName.Text = DirectionWithProfile.Direction.Code + " «" + DirectionWithProfile.Direction.Name + "»"; Added = added; Load(DirectionWithProfile.PriorityProfile, Added); Move = move; }
private void MoveRule(EMove eMove) { int index = GetLvSelectedIndex(); if (index < 0) { UI.Show(ResUI.PleaseSelectRules); return; } if (ConfigHandler.MoveRoutingRule(ref routingItem, index, eMove) == 0) { RefreshRoutingsView(); } }
private void MoveRule(EMove eMove) { int index = GetLvSelectedIndex(); if (index < 0) { UI.Show(UIRes.I18N("PleaseSelectRules")); return; } if (ConfigHandler.MoveRoutingRule(ref config, index, eMove) == 0) { RefreshRoutingsView(); } }
private void MoveServer(EMove eMove) { int index = GetLvSelectedIndex(); if (index < 0) { return; } if (ConfigHandler.MoveServer(ref config, ref lstVmess, index, eMove) == 0) { //TODO: reload is not good. RefreshServers(); //LoadV2ray(); } }
private void MoveServer(EMove eMove) { int index = GetLvSelectedIndex(); if (index < 0) { UI.Show(UIRes.I18N("PleaseSelectServer")); return; } if (ConfigHandler.MoveServer(ref config, index, eMove) == 0) { //刷新 RefreshServers(); LoadV2ray(); } }
/// <summary> /// 移动服务器 /// </summary> /// <param name="config"></param> /// <param name="index"></param> /// <param name="eMove"></param> /// <returns></returns> public static int MoveServer(ref Config config, int index, EMove eMove) { int count = config.vmess.Count; if (index < 0 || index > config.vmess.Count - 1) { return(-1); } switch (eMove) { case EMove.Top: { if (index == 0) { return(0); } VmessItem vmess = Utils.DeepCopy <VmessItem>(config.vmess[index]); config.vmess.RemoveAt(index); config.vmess.Insert(0, vmess); if (index < config.index) { // } else if (config.index == index) { config.index = 0; } else { config.index++; } break; } case EMove.Up: { if (index == 0) { return(0); } VmessItem vmess = Utils.DeepCopy <VmessItem>(config.vmess[index]); config.vmess.RemoveAt(index); config.vmess.Insert(index - 1, vmess); if (index == config.index + 1) { config.index++; } else if (config.index == index) { config.index--; } break; } case EMove.Down: { if (index == count - 1) { return(0); } VmessItem vmess = Utils.DeepCopy <VmessItem>(config.vmess[index]); config.vmess.RemoveAt(index); config.vmess.Insert(index + 1, vmess); if (index == config.index - 1) { config.index--; } else if (config.index == index) { config.index++; } break; } case EMove.Bottom: { if (index == count - 1) { return(0); } VmessItem vmess = Utils.DeepCopy <VmessItem>(config.vmess[index]); config.vmess.RemoveAt(index); config.vmess.Add(vmess); if (index < config.index) { config.index--; } else if (config.index == index) { config.index = count - 1; } else { // } break; } } Global.reloadV2ray = true; ToJsonFile(config); return(0); }
/// <summary> /// 移动服务器 /// </summary> /// <param name="config"></param> /// <param name="lstVmess"></param> /// <param name="index"></param> /// <param name="eMove"></param> /// <returns></returns> public static int MoveServer(ref Config config, ref List <VmessItem> lstVmess, int index, EMove eMove) { int count = lstVmess.Count; if (index < 0 || index > lstVmess.Count - 1) { return(-1); } for (int i = 0; i < lstVmess.Count; i++) { lstVmess[i].sort = (i + 1) * 10; } switch (eMove) { case EMove.Top: { if (index == 0) { return(0); } lstVmess[index].sort = lstVmess[0].sort - 1; break; } case EMove.Up: { if (index == 0) { return(0); } lstVmess[index].sort = lstVmess[index - 1].sort - 1; break; } case EMove.Down: { if (index == count - 1) { return(0); } lstVmess[index].sort = lstVmess[index + 1].sort + 1; break; } case EMove.Bottom: { if (index == count - 1) { return(0); } lstVmess[index].sort = lstVmess[lstVmess.Count - 1].sort + 1; break; } } ToJsonFile(config); return(0); }
/// <summary> /// MoveRoutingRule /// </summary> /// <param name="routingItem"></param> /// <param name="index"></param> /// <param name="eMove"></param> /// <returns></returns> public static int MoveRoutingRule(ref RoutingItem routingItem, int index, EMove eMove) { int count = routingItem.rules.Count; if (index < 0 || index > routingItem.rules.Count - 1) { return(-1); } switch (eMove) { case EMove.Top: { if (index == 0) { return(0); } var item = Utils.DeepCopy(routingItem.rules[index]); routingItem.rules.RemoveAt(index); routingItem.rules.Insert(0, item); break; } case EMove.Up: { if (index == 0) { return(0); } var item = Utils.DeepCopy(routingItem.rules[index]); routingItem.rules.RemoveAt(index); routingItem.rules.Insert(index - 1, item); break; } case EMove.Down: { if (index == count - 1) { return(0); } var item = Utils.DeepCopy(routingItem.rules[index]); routingItem.rules.RemoveAt(index); routingItem.rules.Insert(index + 1, item); break; } case EMove.Bottom: { if (index == count - 1) { return(0); } var item = Utils.DeepCopy(routingItem.rules[index]); routingItem.rules.RemoveAt(index); routingItem.rules.Add(item); break; } } return(0); }
/// <summary> /// MoveRoutingRule /// </summary> /// <param name="config"></param> /// <param name="index"></param> /// <param name="eMove"></param> /// <returns></returns> public static int MoveRoutingRule(ref Config config, int index, EMove eMove) { int count = config.rules.Count; if (index < 0 || index > config.rules.Count - 1) { return(-1); } switch (eMove) { case EMove.Top: { if (index == 0) { return(0); } var item = Utils.DeepCopy(config.rules[index]); config.rules.RemoveAt(index); config.rules.Insert(0, item); break; } case EMove.Up: { if (index == 0) { return(0); } var item = Utils.DeepCopy(config.rules[index]); config.rules.RemoveAt(index); config.rules.Insert(index - 1, item); break; } case EMove.Down: { if (index == count - 1) { return(0); } var item = Utils.DeepCopy(config.rules[index]); config.rules.RemoveAt(index); config.rules.Insert(index + 1, item); break; } case EMove.Bottom: { if (index == count - 1) { return(0); } var item = Utils.DeepCopy(config.rules[index]); config.rules.RemoveAt(index); config.rules.Add(item); break; } } Global.reloadV2ray = true; ToJsonFile(config); return(0); }
private void StartGame() { Console.Clear(); this.ShowHelloMessage(); Console.Clear(); this.gameState = EGameState.Start; Array.Clear((Array)this.gameField, 0, this.gameField.Length); this.DrawBorders(); this.SetSnakePosition(); this.moveDirection = EMove.RIGHT; while (this.gameState != EGameState.Exit) { switch (Console.ReadKey(true).Key) { case ConsoleKey.P: this.GamePause(); break; case ConsoleKey.S: if (this.moveDirection != EMove.DOWN) { this.moveDirection = EMove.UP; break; } break; case ConsoleKey.W: if (this.moveDirection != EMove.UP) { this.moveDirection = EMove.DOWN; break; } break; case ConsoleKey.Escape: this.gameState = EGameState.Exit; break; case ConsoleKey.A: if (this.moveDirection != EMove.RIGHT) { this.moveDirection = EMove.LEFT; break; } break; case ConsoleKey.D: if (this.moveDirection != EMove.LEFT) { this.moveDirection = EMove.RIGHT; break; } break; } while (this.gameState != EGameState.Exit && !Console.KeyAvailable) { Thread.Sleep(this.gameSpeed); if (!this.CheckMoveAvailable()) { this.Move(); this.ShowScore(); } else { this.gameState = EGameState.Exit; this.ShowGameOver(); } } } }