private static void GetRiseSectionData(RiseSectionData riseSectionData, XDocument document) { XElement riseSectionElement = document.Element("risesection"); double height = riseSectionElement.GetDouble("height"); int difficulty = riseSectionElement.GetInt("difficulty"); XElement platformsElement = riseSectionElement.Element("platforms"); IEnumerable <XElement> platformElements = platformsElement.Elements("platform"); List <PlatformData> platforms = new List <PlatformData>(); foreach (XElement platformElement in platformElements) { PlatformData platform = GetPlatformData(platformElement); platforms.Add(platform); } XElement enemiesElement = riseSectionElement.Element("enemies"); string enemiesXml = enemiesElement != null?enemiesElement.ToString() : ""; XElement itemsElement = riseSectionElement.Element("items"); string itemsXml = itemsElement != null?itemsElement.ToString() : ""; riseSectionData.Height = height; riseSectionData.Difficulty = difficulty; riseSectionData.Platforms = platforms; riseSectionData.EnemiesXml = enemiesXml; riseSectionData.ItemsXml = itemsXml; }
public LevelXmlViewModel(RiseSectionData riseSectionData) { mRiseSectionData = riseSectionData; mRiseSectionData.DataChanged += RiseSectionDataDataChanged; UpdateFromModel(); }
private static XDocument GetRiseSectionDataXml(RiseSectionData riseSectionData) { XDocument document = new XDocument( new XDeclaration("1.0", "utf-8", "yes")); XElement riseSectionElement = new XElement( "risesection", new XAttribute("height", riseSectionData.Height), new XAttribute("difficulty", riseSectionData.Difficulty)); XElement platformsElement = new XElement("platforms"); foreach (PlatformData platformData in riseSectionData.Platforms) { XElement platformElement = GetPlatformDataXml(platformData); platformsElement.Add(platformElement); } riseSectionElement.Add(platformsElement); if (!string.IsNullOrEmpty(riseSectionData.EnemiesXml)) { XElement enemiesElement = XElement.Parse(riseSectionData.EnemiesXml); riseSectionElement.Add(enemiesElement); } if (!string.IsNullOrEmpty(riseSectionData.ItemsXml)) { XElement itemsElement = XElement.Parse(riseSectionData.ItemsXml); riseSectionElement.Add(itemsElement); } document.Add(riseSectionElement); return(document); }
public RiseSectionPropertiesViewModel(RiseSectionData riseSectionData) { mRiseSectionData = riseSectionData; mRiseSectionData.DataChanged += RiseSectionDataDataChanged; UpdateFromModel(); }
public LevelViewModel(RiseSectionData riseSectionData, EditorManager editorManager) { mRiseSectionData = riseSectionData; mRiseSectionData.DataChanged += RiseSectionDataDataChanged; mEditorManager = editorManager; mEditorManager.PropertyChanged += EditorManagerPropertyChanged; UpdateFromModel(); }
public MainViewModel() { RiseSectionData riseSectionData = new RiseSectionData(); EditorManager editorManager = new EditorManager(); LevelViewModel = new LevelViewModel(riseSectionData, editorManager); ToolbarViewModel = new ToolbarViewModel(riseSectionData, editorManager); LevelXmlViewModel = new LevelXmlViewModel(riseSectionData); }
public ToolbarViewModel(RiseSectionData riseSectionData, EditorManager editorManager) { mEditorManager = editorManager; mEditorManager.PropertyChanged += EditorManagerPropertyChanged; CreatePropertiesViewModels(riseSectionData); EditorViewModel = new EditorViewModel(riseSectionData, editorManager); PropertiesViewModel = new NoSelectionPropertiesViewModel(); }
public static void Read(RiseSectionData riseSectionData, string xml) { XDocument document = null; try { document = XDocument.Parse(xml); GetRiseSectionData(riseSectionData, document); } catch (Exception e) { Console.WriteLine(e.Message); } }
private static XDocument GetRiseSectionDataXml(RiseSectionData riseSectionData) { XDocument document = new XDocument( new XDeclaration("1.0", "utf-8", "yes")); XElement riseSectionElement = new XElement( "risesection", new XAttribute("height", riseSectionData.Height), new XAttribute("difficulty", riseSectionData.Difficulty)); XElement platformsElement = new XElement("platforms"); foreach (PlatformData platformData in riseSectionData.Platforms) { XElement platformElement = GetPlatformDataXml(platformData); platformsElement.Add(platformElement); } riseSectionElement.Add(platformsElement); if (!string.IsNullOrEmpty(riseSectionData.EnemiesXml)) { XElement enemiesElement = XElement.Parse(riseSectionData.EnemiesXml); riseSectionElement.Add(enemiesElement); } if (!string.IsNullOrEmpty(riseSectionData.ItemsXml)) { XElement itemsElement = XElement.Parse(riseSectionData.ItemsXml); riseSectionElement.Add(itemsElement); } document.Add(riseSectionElement); return document; }
public PlatformEditorViewModel(RiseSectionData riseSectionData, EditorManager editorManager) { PlatformMovementEditorViewModel = new PlatformMovementEditorViewModel(riseSectionData, editorManager); PlatformFeaturesEditorViewModel = new PlatformFeaturesEditorViewModel(riseSectionData, editorManager); }
public static string Write(RiseSectionData riseSectionData) { XDocument document = GetRiseSectionDataXml(riseSectionData); return(document.ToString()); }
private void CreatePropertiesViewModels(RiseSectionData riseSectionData) { mPropertiesViewModels = new Dictionary <Type, PropertyChangedBase>(); mPropertiesViewModels.Add(typeof(NoSelectionPropertiesViewModel), new NoSelectionPropertiesViewModel()); mPropertiesViewModels.Add(typeof(PlatformEditorViewModel), new PlatformEditorViewModel(riseSectionData, mEditorManager)); }
private static void GetRiseSectionData(RiseSectionData riseSectionData, XDocument document) { XElement riseSectionElement = document.Element("risesection"); double height = riseSectionElement.GetDouble("height"); int difficulty = riseSectionElement.GetInt("difficulty"); XElement platformsElement = riseSectionElement.Element("platforms"); IEnumerable<XElement> platformElements = platformsElement.Elements("platform"); List<PlatformData> platforms = new List<PlatformData>(); foreach (XElement platformElement in platformElements) { PlatformData platform = GetPlatformData(platformElement); platforms.Add(platform); } XElement enemiesElement = riseSectionElement.Element("enemies"); string enemiesXml = enemiesElement != null ? enemiesElement.ToString() : ""; XElement itemsElement = riseSectionElement.Element("items"); string itemsXml = itemsElement != null ? itemsElement.ToString() : ""; riseSectionData.Height = height; riseSectionData.Difficulty = difficulty; riseSectionData.Platforms = platforms; riseSectionData.EnemiesXml = enemiesXml; riseSectionData.ItemsXml = itemsXml; }
public static string Write(RiseSectionData riseSectionData) { XDocument document = GetRiseSectionDataXml(riseSectionData); return document.ToString(); }
public PlatformFeaturesEditorViewModel(RiseSectionData riseSectionData, EditorManager editorManager) { }
public EditorViewModel(RiseSectionData riseSectionData, EditorManager editorManager) { RiseSectionPropertiesViewModel = new RiseSectionPropertiesViewModel(riseSectionData); EditorModeViewModel = new EditorModeViewModel(editorManager); }
public PlatformMovementEditorViewModel(RiseSectionData riseSectionData, EditorManager editorManager) { MovementTypes = Enum.GetValues(typeof(PlatformMovementType)).Cast <PlatformMovementType>(); }