예제 #1
0
        public void LoadAtlas(String filePath)
        {
            if (_loadedAtlas.Contains(filePath))
            {
                return;
            }

            Atlas atlas = XmlUtilities <Atlas> .Deserialize(filePath);

            if (atlas.file == null)
            {
                return;
            }

            _loadedAtlas.Add(filePath);
            IEnumerable <GameIcon> icons = _LoadImagesFromLocalFiles(atlas);

            foreach (GameIcon icon in icons)
            {
                if (_iconDictionary.ContainsKey(icon.IconName))
                {
                    icon.IconName += "_1";
                }

                _iconDictionary.Add(icon.IconName, icon.Bitmap);
            }
        }
예제 #2
0
        public void DeserializeTest()
        {
            var path = Utility.CreatePath("serializetest.xml");

            var list = XmlUtilities.Deserialize(path);

            Assert.NotEmpty(list.Items);
        }
        public void AddFile()
        {
            var files = _dialog.GetFile(_control.Settings.LastFileDirectory);

            foreach (var file in files)
            {
                if (File.Exists(file))
                {
                    XmlUtilities.Deserialize(file);
                    AddFileInternal(file);
                }
            }
            UpdateLastFileDirectory();
        }
예제 #4
0
 private IBindingListView GetDataSource()
 {
     if (viewMode == ConversionFileViewMode.New)
     {
         bindingListView = new BindingListView <ConversionItem>(new List <ConversionItem>());
         return(bindingListView);
     }
     else if (viewMode == ConversionFileViewMode.Existing)
     {
         var list = XmlUtilities.Deserialize(view.SavedFilePath);
         bindingListView = new BindingListView <ConversionItem>(list.Items);
         return(bindingListView);
     }
     else
     {
         throw new InvalidOperationException($"{viewMode} is not a valid view viewMode");
     }
 }
        private void LoadButton_Click(object sender, EventArgs e)
        {
            var ofd = new OpenFileDialog();

            ofd.Filter = "xml files (*.xml)|*.xml";

            var dr = ofd.ShowDialog();

            if (dr == DialogResult.OK)
            {
                var fileName = ofd.FileName;
                var s        = XmlUtilities.Deserialize(fileName);
                SettingsManager.UpdateSettings(s, Settings);

                Initialize();
                cultureComboBox.Text = Settings.Culture;
                dataGridView.Rows.Clear();
                AddRows();
            }
        }
예제 #6
0
        /// <summary>
        /// Deserializes each conversion file for use in <see cref="ConversionCleanupHandler"/>
        /// </summary>
        /// <returns>A list of <see cref="ConversionItemList"/></returns>
        private List <ConversionItemList> LoadConversionFiles()
        {
            var items = new List <ConversionItemList>(settings.ConversionFiles.Count);

            try
            {
                foreach (var pair in settings.ConversionFiles)
                {
                    if (File.Exists(pair.Key) && pair.Value)
                    {
                        var conversionItemList = XmlUtilities.Deserialize(pair.Key);
                        items.Add(conversionItemList);
                    }
                }
            }
            catch (InvalidOperationException)
            {
                // TODO: Log
            }

            return(items);
        }
예제 #7
0
        public void LoadAtlas(String filePath, FileManager fileManager)
        {
            if (_loadedAtlas.Contains(filePath))
            {
                return;
            }

            fileManager.BeginAllDatReadAccess();
            byte[] xmlFile = fileManager.GetFileBytes(filePath);

            Atlas atlas;

            using (Stream stream = new MemoryStream(xmlFile))
            {
                atlas = XmlUtilities <Atlas> .Deserialize(stream);

                stream.Close();
            }
            if (atlas.file == null)
            {
                return;
            }

            _loadedAtlas.Add(filePath);
            IEnumerable <GameIcon> icons = _LoadImagesFromGameFiles(atlas, fileManager);

            foreach (GameIcon icon in icons)
            {
                if (_iconDictionary.ContainsKey(icon.IconName))
                {
                    icon.IconName += "_1";
                }

                _iconDictionary.Add(icon.IconName, icon.Bitmap);
            }

            fileManager.EndAllDatAccess();
        }
        private GameIcon[] LoadImages(string xmlPath)
        {
            try
            {
                Atlas atlas = XmlUtilities <Atlas> .Deserialize(xmlPath);

                string          path   = Path.Combine(Config.HglDir, atlas.file);
                Bitmap          bitmap = new Bitmap(path);
                List <GameIcon> icons  = new List <GameIcon>();

                foreach (Frame frame in atlas.frames)
                {
                    if (frame.w != 0 && frame.h != 0)
                    {
                        Bitmap   bmp = new Bitmap((int)frame.w, (int)frame.h);
                        Graphics g   = Graphics.FromImage(bmp);

                        Rectangle toDraw = new Rectangle(0, 0, (int)frame.w, (int)frame.h);

                        g.Clear(Color.Transparent);
                        g.DrawImage(bitmap, toDraw, frame.x, frame.y, frame.w, frame.h, GraphicsUnit.Pixel);
                        g.Dispose();

                        GameIcon icon = new GameIcon(bmp, frame.name);
                        icons.Add(icon);

                        //bmp.Save(@"F:\icons\" + frame.name + ".bmp");
                    }
                }

                return(icons.ToArray());
            }
            catch (Exception ex)
            {
                throw (ex);
            }
        }
예제 #9
0
        public SkillPanel()
        {
            try
            {
                _skillPanel = XmlUtilities <Atlas> .Deserialize("skillpanel_atlas.xml");

                _skillTree = XmlUtilities <Atlas> .Deserialize("skilltree_atlas.xml");

                _inventoryPanel = XmlUtilities <Atlas> .Deserialize("wsinventory_atlas.xml");

                _skillPanelBmp = new Bitmap(_skillPanel.file.Replace(@"data\uix\", string.Empty));
                _skillPanelBmp.MakeTransparent(Color.White);

                _skillTreeBmp = new Bitmap(_skillTree.file.Replace(@"data\uix\", string.Empty));
                //_skillTreeBmp.MakeTransparent(Color.White);

                _inventoryPanelBmp = new Bitmap(_inventoryPanel.file.Replace(@"data\uix\", string.Empty));
                _inventoryPanelBmp.MakeTransparent(Color.White);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "SkillPanel");
            }
        }
예제 #10
0
 public LocalizationMapper(string filepath)
 {
     Data = XmlUtilities.Deserialize <Localization>(filepath);
 }
예제 #11
0
        public void DeserializeThrowsWithRandomFile()
        {
            var path = Utility.CreatePath("somerandomfile.xml");

            Assert.Throws <InvalidOperationException>(() => XmlUtilities.Deserialize(path));
        }