public Result <bool> AddToolCategory(ToolCategory ctg) { Result <bool> rlt = new Result <bool>(); try { var old = Db.ToolCategories.FirstOrDefault(p => p.Code == ctg.Code); if (old != null) { rlt.HasError = true; rlt.Msg = "工具状态编码重复!"; } else { Db.ToolCategories.Add(ctg); Db.SaveChanges(); } } catch (Exception ex) { LogUtil.WriteLog(ex); rlt.HasError = true; rlt.Msg = ex.Message; } return(rlt); }
private void AddToolGroupButton(ToolCategory category) { ToolGroupButton toolGroupButton = new ToolGroupButton(category.ToString(), category == ToolCategory.Asset); this.toolGroupButtons[category] = toolGroupButton; if (this.currentToolGroupPanel == null) { this.currentToolGroupPanel = this.ToolsRoot; } toolGroupButton.SetBinding(ToolGroupButton.ToolSelectionPlacementProperty, (BindingBase) new Binding() { Source = (object)this.ToolsRoot, Path = new PropertyPath("Orientation", new object[0]), Converter = (IValueConverter) new InverseOrientationToPopupPlacementConverter(), Mode = BindingMode.OneWay }); toolGroupButton.SetBinding(ToolPane.ParentOrientationProperty, (BindingBase) new Binding() { Source = (object)this.ToolsRoot, Path = new PropertyPath("Orientation", new object[0]) }); this.currentToolGroupPanel.Children.Add((UIElement)toolGroupButton); toolGroupButton.ToolGroupSelectionChanged += new EventHandler(this.ToolGroupButton_ToolGroupSelectionChanged); toolGroupButton.ToolGroupActiveChanged += new EventHandler(this.ToolGroupButton_ToolGroupActiveChanged); toolGroupButton.Focusable = false; }
public void BundleCategoriesAddRangeTest() { var testCategory = new ToolCategory("Test", "0.0.0.1"); var categoryToAdd = new ToolCategory("Test2", "0.0.0.1"); ToolBundle bundle = new ToolBundle("TestBundle", "0.0.0.1"); Assert.AreEqual(bundle.Categories.Count, 0); bundle.Categories.Add(categoryToAdd, testCategory); Assert.AreEqual(bundle.Categories.Count, 2); }
public void SetCategoryActiveTool(ToolCategory category, Tool tool) { ToolCategoryGroup toolCategoryGroup; if (!this.toolCategoryGroups.TryGetValue(category, out toolCategoryGroup)) { return; } toolCategoryGroup.ActiveTool = tool; }
public Key GetToolCategoryKey(ToolCategory category) { ToolCategoryGroup toolCategoryGroup; if (this.toolCategoryGroups.TryGetValue(category, out toolCategoryGroup)) { return(toolCategoryGroup.Key); } return(Key.None); }
public void CategoryToolsAddRangeTest() { Tool procDump = new Tool("ProcDump", "0.0.0.1", @"d:\sysinternals\procdump.exe -n 10 -cpu 90"); Tool procExp = new Tool("ProcExp", "0.0.0.1", @"d:\sysinternals\procexp.exe"); ToolCategory category = new ToolCategory("SysInternals", "0.0.0.1"); Assert.AreEqual(category.Tools.Count, 0); category.Tools.Add(procDump, procExp); Assert.AreEqual(category.Tools.Count, 2); }
public static EquipmentSlot[] GetToolCategorySlots(ToolCategory toolCat) { var templ = FirstTotemsPerCat[(int)toolCat]; if (templ == null) { return(null); } return(templ.EquipmentSlots); }
private void Add() { if (!Global.HasRight("0102")) { MessageAlert.Alert("权限不足!"); return; } ToolCategory toolCategory = new ToolCategory(); MessengerInstance.Send <object>(toolCategory, MsgToken.OpenToolCategoryInfo); }
public void CategoryInstanceTests() { ToolCategory category = new ToolCategory("SysInternals", "0.0.0.1"); Assert.IsNotNull(category); Assert.AreNotEqual(category.ID, Guid.Empty); Assert.AreEqual(category.Name, "SysInternals"); Assert.AreEqual(category.Version, "0.0.0.1"); Assert.IsNotNull(category.Tools); Assert.AreEqual(category.Tools.Count, 0); }
public void CategoryToolsRemoveTest() { Tool procDump = new Tool("ProcDump", "0.0.0.1", @"d:\sysinternals\procdump.exe -n 10 -cpu 90"); Tool procExp = new Tool("ProcExp", "0.0.0.1", @"d:\sysinternals\procexp.exe"); ToolCategory category = new ToolCategory("SysInternals", "0.0.0.1"); category.Tools.Add(procDump, procExp); var isRemoved = category.Tools.Remove(procDump); Assert.AreEqual(isRemoved, true); Assert.AreEqual(category.Tools.Count, 1); isRemoved = category.Tools.Remove(procDump); Assert.AreEqual(isRemoved, false); Assert.AreEqual(category.Tools.Count, 1); }
public Result <bool> EditToolCategory(ToolCategory ctg) { Result <bool> rlt = new Result <bool>(); try { var old = Db.Entry(ctg); old.State = System.Data.Entity.EntityState.Modified; Db.SaveChanges(); } catch (Exception ex) { LogUtil.WriteLog(ex); rlt.HasError = true; rlt.Msg = ex.Message; } return(rlt); }
public void BundleCategoriesRemoveTest() { var testCategory = new ToolCategory("Test", "0.0.0.1"); var categoryToAdd = new ToolCategory("Test2", "0.0.0.1"); ToolBundle bundle = new ToolBundle("TestBundle", "0.0.0.1"); bundle.Categories.Add(categoryToAdd, testCategory); Assert.AreEqual(bundle.Categories.Count, 2); var isRemoved = bundle.Categories.Remove(testCategory); Assert.AreEqual(isRemoved, true); Assert.AreEqual(bundle.Categories.Count, 1); var isRemovedAgain = bundle.Categories.Remove(testCategory); Assert.AreEqual(isRemovedAgain, false); Assert.AreEqual(bundle.Categories.Count, 1); }
public void CategoryToolsIndexerTest() { Tool procDump = new Tool("ProcDump", "0.0.0.1", @"d:\sysinternals\procdump.exe -n 10 -cpu 90"); Tool procExp = new Tool("ProcExp", "0.0.0.1", @"d:\sysinternals\procexp.exe"); ToolCategory category = new ToolCategory("SysInternals", "0.0.0.1"); category.Tools.Add(procDump, procExp); var toolByProcDumpIndex = category.Tools["ProcDump"]; Assert.AreEqual(toolByProcDumpIndex.FirstOrDefault(), procDump); var isRemoved = category.Tools.Remove(procDump); Assert.AreEqual(isRemoved, true); Assert.AreEqual(category.Tools.Count, 1); toolByProcDumpIndex = category.Tools["ProcDump"]; Assert.AreEqual(toolByProcDumpIndex.Count(), 0); }
public SelectToolViewModel() { ToolCategoryDao deptDao = new ToolCategoryDao(); var deptrlt = deptDao.GetToolCategorys(); if (deptrlt.HasError) { MessageAlert.Alert(deptrlt.Msg); return; } ToolCategory ctgAll = new ToolCategory() { Id = 0, Name = "全部" }; deptrlt.Entities.Insert(0, ctgAll); Categorys = deptrlt.Entities; Search(); }
public void BundleCategoriesIndexerTest() { var testCategory = new ToolCategory("Test", "0.0.0.0"); var categoryToAdd = new ToolCategory("Test2", "0.0.0.0"); ToolBundle bundle = new ToolBundle("TestBundle", "0.0.0.0"); bundle.Categories.Add(categoryToAdd, testCategory); Assert.AreEqual(bundle.Categories.Count, 2); var categoryByTestIndex = bundle.Categories["Test"]; Assert.AreEqual(categoryByTestIndex.FirstOrDefault(), testCategory); var isRemoved = bundle.Categories.Remove(testCategory); Assert.AreEqual(isRemoved, true); Assert.AreEqual(bundle.Categories.Count, 1); categoryByTestIndex = bundle.Categories["Test"]; Assert.AreEqual(categoryByTestIndex.Count(), 0); }
public ToolListViewModel() { MessengerInstance.Register <object>(this, MsgToken.RefreshToolList, RefreshList); RefreshList(null); ToolStateDao stateDao = new ToolStateDao(); var deptrlt = stateDao.GetToolStates(); if (deptrlt.HasError) { MessageAlert.Alert(deptrlt.Msg); } ToolCategoryDao toolCategoryDao = new ToolCategoryDao(); var categoryrlt = toolCategoryDao.GetToolCategorys(); if (categoryrlt.HasError) { MessageAlert.Alert(categoryrlt.Msg); } ToolCategory categoryAll = new ToolCategory() { Id = 0, Name = "全部" }; categoryrlt.Entities.Insert(0, categoryAll); Categorys = categoryrlt.Entities; ToolState deptAll = new ToolState() { Id = 0, Name = "全部" }; deptrlt.Entities.Insert(0, deptAll); States = deptrlt.Entities; }
public void BundleSerializationTest() { ToolBundle serializedBundle = new ToolBundle("SysInternals", "0.0.0.1") { Description = "SysInternals Bundle" }; var debugging = new ToolCategory("Debugging", "0.0.0.1") { Description = "Debugging Tools from SysInternals.Com" }; var monitoring = new ToolCategory("Monitoring", "0.0.0.1") { Description = "Monitoring Tools from SysInternals.Com" }; Tool procDump = new Tool("ProcDump", "0.0.0.1", @"d:\sysinternals\procdump.exe -n 10 -cpu 90") { Description = "Automatic Dump capture", IsPortable = true }; Tool procExp = new Tool("ProcExp", "0.0.0.1", @"d:\sysinternals\procexp.exe") { Description = "Process Explorer -- TaskMgr on steroids!", UpdateURL = "http://sysinternals.com", CanUpdate = true }; procExp.Properties.Add("Company", "Microsoft"); procExp.Properties.Add("Published", "2015"); debugging.Tools.Add(procDump); monitoring.Tools.Add(procExp); serializedBundle.Categories.Add(debugging); serializedBundle.Categories.Add(monitoring); Assert.AreEqual(serializedBundle.Categories.Count, 2); var xml = serializedBundle.ToString(); Assert.IsNotNull(xml); var deserializedBundle = ToolBundle.Parse(xml); Assert.AreEqual(serializedBundle.ID, deserializedBundle.ID); Assert.AreEqual(serializedBundle.Name, deserializedBundle.Name); Assert.AreEqual(serializedBundle.Version, deserializedBundle.Version); Assert.AreEqual(serializedBundle.Description, deserializedBundle.Description); foreach (var category in serializedBundle.Categories) { var deserializedCategory = deserializedBundle.Categories[category.Name].First(); Assert.AreEqual(deserializedCategory.ID, category.ID); Assert.AreEqual(deserializedCategory.Name, category.Name); Assert.AreEqual(deserializedCategory.Version, category.Version); Assert.AreEqual(deserializedCategory.Description, category.Description); foreach (var tool in category.Tools) { var deserializedTool = deserializedCategory.Tools[tool.Name].First(); Assert.AreEqual(deserializedTool.ID, tool.ID); Assert.AreEqual(deserializedTool.Name, tool.Name); Assert.AreEqual(deserializedTool.Version, tool.Version); Assert.AreEqual(deserializedTool.Description, tool.Description); Assert.AreEqual(deserializedTool.CanUpdate, tool.CanUpdate); if (tool.CanUpdate) { Assert.AreEqual(deserializedTool.UpdateURL, tool.UpdateURL); } Assert.AreEqual(deserializedTool.CommandLine, tool.CommandLine); Assert.AreEqual(deserializedTool.IsPortable, tool.IsPortable); foreach (var prop in tool.Properties) { string deserializedValue = null; Assert.IsTrue(deserializedTool.Properties.TryGetValue(prop.Key, out deserializedValue)); Assert.AreEqual(deserializedValue, prop.Value); } } } }
public static EquipmentSlot[] GetToolCategorySlots(ToolCategory toolCat) { return(FirstTotemsPerCat[(int)toolCat]?.EquipmentSlots); }
/// <summary> /// Check for whether there is at least one Item of each Category in this Inventory. /// </summary> /// <param name="cats"></param> /// <returns></returns> public bool CheckTotemCategories(ToolCategory[] cats) { for (var i = 0; i < cats.Length; i++) { var cat = cats[i]; var slots = ItemMgr.GetToolCategorySlots(cat); var found = false; if (slots != null) { // tools that must be equipped for (var j = 0; j < slots.Length; j++) { var slot = slots[j]; var item = this[slot]; if (item != null && item.Template.ToolCategory == cat) { found = true; break; } } } else { // unequippable tools if (this[EquipmentSlot.MainHand] == null || this[EquipmentSlot.MainHand].Template.ToolCategory != cat) { found = !Iterate(item => { if (item.Template.ToolCategory == cat) { return false; } return true; }); } else { found = true; } } if (!found) { return false; } } return true; }
public static ItemTemplate GetFirstItemOfToolCategory(ToolCategory toolCat) { return(FirstTotemsPerCat[(int)toolCat]); }
protected ToolCategoryGroup(ToolCategory category) { this.category = category; }
public GenericControlTool(ToolContext toolContext, ITypeId controlType, ToolCategory category) : base(toolContext, controlType, category) { this.assetLibrary = toolContext.AssetLibrary; }
public GenericShapeTool(ToolContext toolContext, ITypeId shapeType, ToolCategory category) : base(toolContext) { this.shapeType = shapeType; this.category = category; }
public ToolCategory[] getToolBox() { string tools = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); tools = tools + "/BeamNG.IDE/Tools.xml"; toolArray[0] = new Tool(null, null, null, null); string xmlFile = File.ReadAllText(tools); XmlDocument xmldoc = new XmlDocument(); xmldoc.LoadXml(xmlFile); XmlNodeList nodeList = xmldoc.GetElementsByTagName("type"); toolCategories = new ToolCategory[nodeList.Count]; for (int j = 0; j < toolCategories.Length; j++) { toolCategories[j] = new ToolCategory(); } int t = 0; int g = 0; foreach (XmlNode node in nodeList) { XmlNodeList Tools = node.ChildNodes; toolCategories[g].category = node.Attributes["name"].Value; t = 0; toolCategories[g].Tools = new Tool[node.ChildNodes.Count]; foreach (XmlNode ToolList in node.ChildNodes) { Tool Tmp = new Tool(null, null, null, null); foreach (XmlNode tool in ToolList.ChildNodes) { //VALUES FOR PROPERTIES ARE GIVEN OUT HERE switch (tool.Name) { case "name": Tmp.toolName = tool.InnerText; break; case "header": Tmp.toolHeader = tool.InnerText; break; case "source": Tmp.bitmapSrc = tool.InnerText; break; case "helpText": Tmp.helpText = tool.InnerText; break; case "helpLink": Tmp.helpLink = tool.InnerText; break; case "amount": Tmp.amount = tool.InnerText; break; case "fatherSection": Tmp.fatherSection = tool.InnerText; break; case "Childs": Tmp.hasChildrens = Convert.ToBoolean(tool.InnerText); break; } } toolCategories[g].Tools[t] = Tmp; t++; } g++; } createBitmapsforTools(); createBitmapsforCategory(); return(toolCategories); }
public TextToolCategoryGroup(ToolCategory category) : base(category) { }
public void FinalizeDataHolder() { try { //Id SpellId = (SpellId)Id; PowerType = PowerType.Mana; Durations = new DurationEntry() { Min = Duration, Max = Duration }; Range = new SimpleRange(0, MaxRange); ProjectileSpeed = 1; RequiredToolIds = new uint[2]; Reagents = ItemStackDescription.EmptyArray; RequiredItemClass = ItemClass.None; RequiredItemSubClassMask = ItemSubClassMask.None; if (Id == 2228 || Id == 2231 || Id == 2234 || Id == 2237 || Id == 2240 || Id == 2243 || Id == 2246 || Id == 2249 || Id == 2252) { SoulGuardProffLevel = 1; } if (Id == 2229 || Id == 2232 || Id == 2235 || Id == 2238 || Id == 2241 || Id == 2244 || Id == 2247 || Id == 2250 || Id == 2253) { SoulGuardProffLevel = 2; } if (Id == 2230 || Id == 2233 || Id == 2236 || Id == 2239 || Id == 2242 || Id == 2245 || Id == 2248 || Id == 2251 || Id == 2254) { SoulGuardProffLevel = 3; } RequiredItemInventorySlotMask = InventorySlotTypeMask.None; var effects = new List <SpellEffect>(3); // 71 - 127+ #region read effects var effect = new SpellEffect(this, EffectIndex.Zero) { EffectType = Effect0_EffectType, DiceSides = 0, RealPointsPerLevel = 0, BasePoints = 0, Mechanic = Effect0_Mehanic, ImplicitTargetA = Effect0_ImplicitTargetA, ImplicitTargetB = Effect0_ImplicitTargetB, Radius = Effect0_Radius, AuraType = Effect0_AuraType, Amplitude = Effect0_Amplitude, ProcValue = Effect0_ProcValue, ChainTargets = 0, MiscValue = Effect0_MiscValue, MiscValueB = Effect0_MiscValueB, MiscValueC = Effect0_MiscValueC, TriggerSpellId = SpellId.None, PointsPerComboPoint = 0 }; effect.AffectMask[0] = 0; effect.AffectMask[1] = 0; effect.AffectMask[2] = 0; // Fix: This is a default AoE effect, thus doesn't have a fact at destination if (effect.ImplicitTargetA == ImplicitSpellTargetType.AllEnemiesAroundCaster && effect.ImplicitTargetB == ImplicitSpellTargetType.AllEnemiesInArea) { effect.ImplicitTargetB = ImplicitSpellTargetType.None; } effects.Add(effect); effect = new SpellEffect(this, EffectIndex.One) { EffectType = Effect1_EffectType, DiceSides = 0, RealPointsPerLevel = 0, BasePoints = 0, Mechanic = Effect1_Mehanic, ImplicitTargetA = Effect1_ImplicitTargetA, ImplicitTargetB = Effect1_ImplicitTargetB, Radius = Effect1_Radius, AuraType = Effect1_AuraType, Amplitude = Effect1_Amplitude, ProcValue = Effect1_ProcValue, ChainTargets = 0, MiscValue = Effect1_MiscValue, MiscValueB = Effect1_MiscValueB, MiscValueC = Effect1_MiscValueC, TriggerSpellId = SpellId.None, PointsPerComboPoint = 0 }; effect.AffectMask[0] = 0; effect.AffectMask[1] = 0; effect.AffectMask[2] = 0; // Fix: This is a default AoE effect, thus doesn't have a fact at destination if (effect.ImplicitTargetA == ImplicitSpellTargetType.AllEnemiesAroundCaster && effect.ImplicitTargetB == ImplicitSpellTargetType.AllEnemiesInArea) { effect.ImplicitTargetB = ImplicitSpellTargetType.None; } effects.Add(effect); #endregion Effects = effects.ToArray(); PowerCostPercentage = 0; // 127+- SpellClassSet = SpellClassSet.Generic; // 131+ MaxTargets = 100; // 135+ PreventionType = DamageType == DamageType.Magic ? SpellPreventionType.Magic : SpellPreventionType.Melee; //DamageMultipliers RequiredToolCategories = new ToolCategory[2]; // 145-146+ for (int i = 0; i < RequiredToolCategories.Length; i++) { RequiredToolCategories[i] = ToolCategory.None; } RuneCostEntry = new RuneCostEntry(); if (CooldownTime > 5000) { CooldownTime -= 1000; } else if (CooldownTime > 0) { CooldownTime -= 500; } if (Name.Contains("Party")) { Effect0_ImplicitTargetA = ImplicitSpellTargetType.AllParty; Effect1_ImplicitTargetA = ImplicitSpellTargetType.AllParty; } SpellHandler.AddSpell(this); } catch (Exception ex) { LogUtil.WarnException("Error when finalizing data holder of spell {0}. {1}", Name, ex); } }