コード例 #1
0
        public ObjectCopyResultViewModel(List<NdfObject> results, NdfEditorMainViewModel editor)
        {
            NewInstances = new ObservableCollection<NdfObject>(results);

            Editor = editor;

            DetailsCommand = new ActionCommand(DetailsExecute);
        }
コード例 #2
0
        public ReferenceSearchResultViewModel(List <NdfPropertyValue> results, NdfEditorMainViewModel editor)
        {
            Results = new ObservableCollection <NdfPropertyValue>(results);

            Editor = editor;

            DetailsCommand = new ActionCommand(DetailsExecute);
        }
コード例 #3
0
        public ReferenceSearchResultViewModel(List<NdfPropertyValue> results, NdfEditorMainViewModel editor)
        {
            Results = new ObservableCollection<NdfPropertyValue>(results);

            Editor = editor;

            DetailsCommand = new ActionCommand(DetailsExecute);
        }
コード例 #4
0
        public ObjectCopyResultViewModel(List <NdfObject> results, NdfEditorMainViewModel editor)
        {
            NewInstances = new ObservableCollection <NdfObject>(results);

            Editor = editor;

            DetailsCommand = new ActionCommand(DetailsExecute);
        }
コード例 #5
0
 protected static NdfObject createNdfObject(NdfEditorMainViewModel data,string str)
 {
     var classView= data.Classes.Single(x => x.Object.Name.Equals(str));
     var inst=classView.Object.Manager.CreateInstanceOf(classView.Object, false);
     classView.Object.Instances.Add(inst);
     classView.Instances.Add(new NdfObjectViewModel(inst, data));
     return inst;
 }
コード例 #6
0
        public ZoneEditorData(ScenarioFile sf, NdfEditorMainViewModel model,string path)
        {
            scenarioFile = sf;
            editor = new Editor(this, path);

            data = new NdfEditorMainViewModel(sf.NdfBinary);
            foreach(var area in sf.ZoneData.AreaManagers[1]){
                //var nodes=Geometry.getOutline(area.Content);
                //var zone = new Outline(nodes);
                //zoneOutlines.Add(zone);
                zoneNumber++;
                var zone = new Zone(editor, area);
                scenarioItems.Add(zone);
                zones.Add(zone);
                editor.addScenarioItem(zone);
                Console.WriteLine("name:");
                Console.WriteLine(area.Name);
                Console.WriteLine("en name");
                /*Console.WriteLine("zone\n");
                foreach (var c in area.Content.ClippedAreas)
                {
                    Console.Write("vertices=[");
            var scen = area.Content;
            foreach (var v in scen.Vertices.GetRange(c.StartVertex,c.VertexCount))
            {
                Console.WriteLine("{0:G},{1:G},{2:G};", (int)v.X, (int)v.Y, (int)v.Center);
            }
            Console.WriteLine("]");

            Console.Write("tri=[");
            foreach (var v in scen.Triangles.GetRange(c.StartTriangle,c.TriangleCount))
            {
                Console.WriteLine("{0},{1},{2};", (int)v.Point1, (int)v.Point2, (int)v.Point3);
            }
            Console.WriteLine("]");
                }*/

            }

            doZoneProperties();
            Application.EnableVisualStyles();
            Application.Run(editor);
            //Application.SetCompatibleTextRenderingDefault(false);
        }
コード例 #7
0
        private void EditGameModeLogicExecute(object obj)
        {
            var ndfEditor = new NdfEditorMainViewModel(ScenarioFile.NdfBinary);

            DialogProvider.ProvideView(ndfEditor, this);
        }
コード例 #8
0
 private void ZoneEditorExecute(object obj)
 {
     var ndfEditor = new NdfEditorMainViewModel(ScenarioFile.NdfBinary);
     zoneEditor=new ZoneEditorData(ScenarioFile, ndfEditor,OwnerFile.Path);
     Console.WriteLine("Launch Editor");
 }
コード例 #9
0
        private void HandleNewFile(string fileName)
        {
            EdataFileType type;

            using (var fs = new FileStream(fileName, FileMode.Open))
            {
                var headerBuffer = new byte[12];
                fs.Read(headerBuffer, 0, headerBuffer.Length);

                type = EdataManager.GetFileTypeFromHeaderData(headerBuffer);

                if (type == EdataFileType.Ndfbin)
                {
                    var buffer = new byte[fs.Length];

                    fs.Seek(0, SeekOrigin.Begin);
                    fs.Read(buffer, 0, buffer.Length);

                    var detailsVm = new NdfEditorMainViewModel(buffer);

                    var view = new NdfbinView { DataContext = detailsVm };

                    view.Show();
                }
            }

            if (type == EdataFileType.Package)
                AddFile(fileName);
        }
コード例 #10
0
        protected void EditNdfbinExecute(object obj)
        {
            var vm = CollectionViewSource.GetDefaultView(OpenFiles).CurrentItem as EdataFileViewModel;

            if (vm == null)
                return;

            var ndf = vm.FilesCollectionView.CurrentItem as EdataContentFile;

            if (ndf == null)
                return;

            var dispatcher = Dispatcher.CurrentDispatcher;

            Action<ViewModelBase, ViewModelBase> open = DialogProvider.ProvideView;
            Action<string> report = msg => StatusText = msg;

            var s = new Task(() =>
                {
                    try
                    {
                        dispatcher.Invoke(() => IsUIBusy = true);
                        dispatcher.Invoke(report, "Decompiling ndf binary...");

                        var detailsVm = new NdfEditorMainViewModel(ndf, vm);
                        dispatcher.Invoke(open, detailsVm, this);
                    }
                    catch (Exception ex)
                    {
                        Trace.TraceError("Unhandeled exception in Thread occoured: {0}", ex.ToString());
                    }
                    finally
                    {
                        dispatcher.Invoke(() => IsUIBusy = false);
                        dispatcher.Invoke(report, "Ready");
                    }
                });

            s.Start();
        }
コード例 #11
0
        private void EditTextureBindingsExecute(object obj)
        {
            var ndfEditor = new NdfEditorMainViewModel(MeshFile.TextureBindings);

            DialogProvider.ProvideView(ndfEditor, this);
        }
コード例 #12
0
 protected static NdfFileNameString getString(NdfEditorMainViewModel data, string nameStr)
 {
     var nameRef = data.Strings.Single(x => x.Value.Equals(nameStr));
     return new NdfFileNameString(nameRef);
 }
コード例 #13
0
 protected static NdfFileNameString getAutoName(NdfEditorMainViewModel data, int i)
 {
     var nameStr = string.Format("P0_AutoName_{0}", i);
     return getString(data,nameStr);
 }
コード例 #14
0
 public abstract void buildNdf(NdfEditorMainViewModel data,ref int i);