public ScenarioModel(IIndexItem item) { IsBusy = true; ScenarioTag = item; Xml = new XmlDocument(); MetadataStream = new InMemoryMetadataStream(item, GetXmlData(ScenarioTag.CacheFile, "Metadata")); Sections = new Dictionary <string, ScenarioSection>(); Hierarchy = new ObservableCollection <SceneNodeModel>(); Items = new ObservableCollection <ScenarioListItem>(); Bsps = new ObservableCollection <TagReference>(); Skies = new ObservableCollection <TagReference>(); ObjectNames = new List <ObjectName>(); Palettes = new Dictionary <string, PaletteDefinition>(); StartingPositions = new DeepObservableCollection <StartPosition>(); TriggerVolumes = new DeepObservableCollection <TriggerVolume>(); using (var reader = CreateReader()) { LoadSections(reader); SquadHierarchy = new AiSquadHierarchy(this); ReadSquadHierarchy(reader); //populate hierarchy tree var doc = new XmlDocument(); doc.LoadXml(Properties.Resources.NodeHierarchy); Hierarchy.AddRange(XmlToNodes(null, doc.DocumentElement)); Hierarchy[0].IsExpanded = true; ReadBsps(reader); ReadSkies(reader); ReadObjectNames(reader); ReadPalettes(reader); ReadPlacements(reader); ReadStartPositions(reader); ReadTriggerVolumes(reader); } ComponentManagers = new List <ComponentManager>(); ComponentManagers.Add(new MissionComponentManager(this)); ComponentManagers.Add(new TerrainComponentManager(this)); ComponentManagers.Add(new PaletteComponentManager(this)); ComponentManagers.Add(new StartPositionComponentManager(this)); ComponentManagers.Add(new TriggerVolumeComponentManager(this)); if (SquadHierarchy.AiNodes.Count > 0) { ComponentManagers.Add(new AiComponentManager(this)); } IsBusy = false; }
public TeltonikaEmulatorViewModel() { LoadDialogButton = new RelayCommand(LoadDialogFile); EmulateButton = new RelayCommand(Emulate); CancelButton = new RelayCommand(CancelTasks); _boxNumber = 1; _sleepPeriod = 1; _ipAddress = "127.0.0.1"; _port = 34400; Logs = new DeepObservableCollection <LogVm>(); _file = ResourFiles.Resource._19_05_07_352093082435032?.Split('\r'); }
public StructureValue(XmlNode node, MetaContext context, EndianReader reader, long baseAddress) : base(node, context, reader, baseAddress) { BlockSize = node.GetIntAttribute("elementSize", "entrySize", "size") ?? 0; Children = new DeepObservableCollection <MetaValue>(); BlockLabels = new ObservableCollection <string>(); IsExpanded = true; ReadValue(reader); Children.ChildPropertyChanged += Children_ChildPropertyChanged; }
public PaletteDefinition() { Palette = new ObservableCollection <TagReference>(); Placements = new DeepObservableCollection <ObjectPlacement>(); }