using Aurora;
using Aurora.Api;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using VisionCommon;
namespace VisionUI.RecipeMenu {
///
/// VisionDef Ingredient 사용
///
public class UCVisionRecipeMenuIngredient : UCVisionRecipeMenuViewModelBase, IIngredientViewModel {
///
/// 생성자
///
/// 오로라 환경
/// 프로퍼티 그리드만 사용할지 여부
public UCVisionRecipeMenuIngredient(IAuroraEnvironment aurora, bool onlyPropertyGrid = false) : base(aurora, onlyPropertyGrid) {
}
#region IModelViewModel Interface
public bool IsIngredientInUse(string itemName) {
return false;
}
public void OnChanged(string itemName) {
_Aurora.IngredientsManager.Ingredient(VisionKeys.VisionRecipeKey).ReloadIngredient(itemName);
SelectedVisionDef = _Aurora.IngredientsManager.Ingredient(VisionKeys.VisionRecipeKey).IngredientItem(itemName) as VisionDef;
ShowInitZeroIndexValue();
}
public void OnSaved(string itemName) {
}
public bool PreSaved(string itemName) {
foreach (var unitRecipe in SelectedVisionDef.UnitRecipes) {
foreach (var subSysRecipe in unitRecipe.SubSysRecipes) {
CalculateCoordSystem(subSysRecipe);
}
}
if (StaticCoordSettingVM != null) {
return StaticCoordSettingVM.SaveRecipe();
}
return true;
}
public void Reloaded(string itemName) {
_Aurora.IngredientsManager.Ingredient(VisionKeys.VisionRecipeKey).ReloadIngredient(itemName);
SelectedVisionDef = _Aurora.IngredientsManager.Ingredient(VisionKeys.VisionRecipeKey).IngredientItem(itemName) as VisionDef;
ShowInitZeroIndexValue();
}
#endregion
}
}