public void SetupComponent()
        {
            var loadPaletteSet = this.PaletteObjectModel.LoadPaletteSet(@"D:\DefaultPaletteSet.xml");

            if (loadPaletteSet != null)
            {
                this.PaletteObjectModel.PaletteSetCollection.Add(loadPaletteSet);
            }

            if (this.PaletteObjectModel.PaletteSetCollection.Count == 0)
            {
                PaletteSetDataUnion pSet = new PaletteSetDataUnion();
                pSet.PaletteSetCreatorName = "FairyZeta";
                pSet.PaletteSetName        = "DefaultPaletteSet";
                pSet.PaletteSetVersion     = new Version(1, 0);
                pSet.PaletteSetMemo        = "Default";
                pSet.Updated = DateTime.Now;

                this.PaletteObjectModel.PaletteSetCollection.Add(pSet);
                this.PaletteObjectModel.CurrentPaletteSet = pSet;
            }
            else
            {
                this.PaletteObjectModel.CurrentPaletteSet = this.PaletteObjectModel.PaletteSetCollection[0];
            }
        }
        /// <summary> 新しいパレットセットを生成し、コレクションに追加します。
        /// </summary>
        /// <param name="pName"> パレットセット名 </param>
        /// <param name="pCreatorName"> パレットセット作成者名 </param>
        /// <param name="pMemo"> パレットセットメモ </param>
        /// <param name="pVersion"> バージョン </param>
        public void CreateNewPaletteSet(string pName, string pCreatorName, string pMemo, Version pVersion)
        {
            PaletteSetDataUnion paletteSet = new PaletteSetDataUnion()
            {
                PaletteSetName        = pName,
                PaletteSetCreatorName = pCreatorName,
                PaletteSetMemo        = pMemo,
                PaletteSetVersion     = pVersion,
                Updated = DateTime.Now
            };

            this.PaletteSetCollection.Add(paletteSet);
        }
        /// <summary> 新しいカラーパレットを生成し、パレットセットに追加します。
        /// </summary>
        /// <param name="pAddPaletteSet"> 追加するパレットセット </param>
        /// <param name="pName"> カラーパレット名 </param>
        /// <param name="pCategory"> カラーカテゴリ名 </param>
        /// <param name="pElement"> カラーエレメント名 </param>
        /// <param name="pMemo"> カラーメモ </param>
        /// <param name="pType"> カラータイプ</param>
        /// <param name="pCreatorName"> カラー作成者名 </param>
        /// <param name="pColors"> カラーデータ </param>
        public void AddNewColorPalette(
            PaletteSetDataUnion pAddPaletteSet, string pName, string pCategory, string pElement, string pMemo, PaletteType pType, string pCreatorName, IEnumerable <Color> pColors)
        {
            ColorPaletteData paletteData = new ColorPaletteData()
            {
                PaletteName     = pName,
                PaletteCategory = pCategory,
                PaletteElement  = pElement,
                PaletteMemo     = pMemo,
                PaletteType     = pType,
                CreatorName     = pCreatorName
            };

            foreach (var color in pColors)
            {
                paletteData.ColorCollection.Add(color);
            }

            this.AddNewColorPalette(pAddPaletteSet, paletteData);
        }
 public void SavePaletteSet(string pSaveFullPath, PaletteSetDataUnion pPaletteSetDU)
 {
     this.xmlSerializerProcess.XmlSave(pSaveFullPath, pPaletteSetDU, true);
 }
 public void SavePaletteSet(string pSaveDir, string pFileName, PaletteSetDataUnion pPaletteSetDU)
 {
     this.SavePaletteSet(Path.Combine(pSaveDir, pFileName), pPaletteSetDU);
 }
 /// <summary> 新しいカラーパレットを生成し、パレットセットに追加します。
 /// </summary>
 /// <param name="pAddPaletteSet"> 追加するパレットセット </param>
 /// <param name="pColorPalette"> 追加するカラーパレット </param>
 public void AddNewColorPalette(PaletteSetDataUnion pAddPaletteSet, ColorPaletteData pColorPalette)
 {
     pColorPalette.Updated = DateTime.Now;
     pAddPaletteSet.ColorPaletteCollection.Add(pColorPalette);
 }