private void btnAddGroup_Click(object sender, EventArgs e) { string _namespace = MethodBase.GetCurrentMethod().ToLogFormatFullName(); if (PackageNullCheck(_namespace, LoggerMessages.GUI.frmPackageAssets.Error.UNABLE_ADD_GROUP_NO_PACK)) { return; } frmAddAssetGroup addAssetGroupForm = new frmAddAssetGroup(RetrieveDefaultAddGroupSelection(tViewAssets.SelectedNode)); if (addAssetGroupForm.ShowDialog(this) == DialogResult.Cancel) { return; } TreeNode tNode = AddAssetGroup(addAssetGroupForm); if (tNode != null) { tViewAssets.SelectedNode = tNode; } }
TreeNode AddAssetGroup(frmAddAssetGroup formShown) { string _namespace = MethodBase.GetCurrentMethod().ToLogFormatFullName(); if (formShown.DialogResult == DialogResult.Cancel) { return(null); } if (string.IsNullOrWhiteSpace(formShown.TypeName)) { Helper.ShowMessageBox(MessageBoxStrings.GUI.frmPackageAssets.ADD_NO_NAME_GROUP_ASSET, MessageBoxStrings.MESSAGEBOX_NAME, MessageBoxButtons.OK, MessageBoxIcon.Error); return(null); } frmPackAssetTNodeTag collectionTag = tViewAssets.Nodes.FindNodeOfCollectionType(formShown.TypeToAdd); if (collectionTag == null) { RMCollection rmc = null; try { rmc = formShown.TypeToAdd.ToNewCollection(PackageOfCollections); } catch (Exception ex) { Helper.ShowMessageBox(MessageBoxStrings.GUI.frmPackageAssets.ADD_ASSET_GROUP_ERR_GENERAL, MessageBoxStrings.MESSAGEBOX_NAME, MessageBoxButtons.OK, MessageBoxIcon.Error); Logger.WriteErrorLog(frmPackageAssetsMessages.Error.UNABLE_CREATE_COLLECTION, _namespace, ex, BasicDebugLogger.DebugErrorType.Error); return(null); } if (PackageOfCollections.Collections == null) { PackageOfCollections.Collections = new List <RMCollection>(); } PackageOfCollections.Collections.Add(rmc); collectionTag = AddCollectionToTView(tViewAssets, rmc, RootDirectory); } if (formShown.TypeToAdd == RMCollectionType.BGM || formShown.TypeToAdd == RMCollectionType.BGS || formShown.TypeToAdd == RMCollectionType.ME || formShown.TypeToAdd == RMCollectionType.SE) { RMAudioCollection collectionObj = collectionTag.Object as RMAudioCollection; if (collectionObj == null) { Helper.ShowMessageBox(MessageBoxStrings.GUI.frmPackageAssets.ADD_ASSET_GROUP_ERR_GENERAL, MessageBoxStrings.MESSAGEBOX_NAME, MessageBoxButtons.OK, MessageBoxIcon.Error); Logger.WriteErrorLog(frmPackageAssetsMessages.Error.UNABLE_ADD_GROUP_INVALID_COLLECTION, _namespace, null, BasicDebugLogger.DebugErrorType.Error); return(null); } RMAudioGroup audioGroup = new RMAudioGroup(collectionObj); audioGroup.Name = formShown.TypeName; TreeNode tNode = new TreeNode(); frmPackAssetTNodeTag newGroupTag = new frmPackAssetTNodeTag(tNode, audioGroup, RootDirectory); tNode.Text = newGroupTag.ToString(); tNode.Tag = newGroupTag; collectionTag.AssociatedNode.Nodes.Add(tNode); if (collectionObj.Groups == null) { collectionObj.Groups = new List <RMAudioGroup>(); } collectionObj.Groups.Add(audioGroup); if (!PackageOfCollections.Collections.Contains(collectionObj)) { PackageOfCollections.Collections.Add(collectionObj); } return(tNode); } else if (formShown.TypeToAdd == RMCollectionType.Characters) { RMCharImageCollection collectionObj = collectionTag.Object as RMCharImageCollection; if (collectionObj == null) { Helper.ShowMessageBox(MessageBoxStrings.GUI.frmPackageAssets.ADD_ASSET_GROUP_ERR_GENERAL, MessageBoxStrings.MESSAGEBOX_NAME, MessageBoxButtons.OK, MessageBoxIcon.Error); Logger.WriteErrorLog(frmPackageAssetsMessages.Error.UNABLE_ADD_GROUP_INVALID_COLLECTION, _namespace, null, BasicDebugLogger.DebugErrorType.Error); return(null); } RMCharImageGroup charImageGroup = new RMCharImageGroup(collectionObj); charImageGroup.Name = formShown.TypeName; TreeNode tNode = new TreeNode(); frmPackAssetTNodeTag newGroupTag = new frmPackAssetTNodeTag(tNode, charImageGroup, RootDirectory); tNode.Text = newGroupTag.ToString(); tNode.Tag = newGroupTag; collectionTag.AssociatedNode.Nodes.Add(tNode); if (collectionObj.Groups == null) { collectionObj.Groups = new List <RMCharImageGroup>(); } collectionObj.Groups.Add(charImageGroup); if (!PackageOfCollections.Collections.Contains(collectionObj)) { PackageOfCollections.Collections.Add(collectionObj); } return(tNode); } else if (formShown.TypeToAdd == RMCollectionType.Tilesets) { RMTilesetCollection collectionObj = collectionTag.Object as RMTilesetCollection; if (collectionObj == null) { Helper.ShowMessageBox(MessageBoxStrings.GUI.frmPackageAssets.ADD_ASSET_GROUP_ERR_GENERAL, MessageBoxStrings.MESSAGEBOX_NAME, MessageBoxButtons.OK, MessageBoxIcon.Error); Logger.WriteErrorLog(frmPackageAssetsMessages.Error.UNABLE_ADD_GROUP_INVALID_COLLECTION, _namespace, null, BasicDebugLogger.DebugErrorType.Error); return(null); } RMTilesetGroup tilesetGroup = new RMTilesetGroup(collectionObj); tilesetGroup.Name = formShown.TypeName; TreeNode tNode = new TreeNode(); frmPackAssetTNodeTag newGroupTag = new frmPackAssetTNodeTag(tNode, tilesetGroup, RootDirectory); tNode.Text = newGroupTag.ToString(); tNode.Tag = newGroupTag; collectionTag.AssociatedNode.Nodes.Add(tNode); if (collectionObj.Groups == null) { collectionObj.Groups = new List <RMTilesetGroup>(); } collectionObj.Groups.Add(tilesetGroup); if (!PackageOfCollections.Collections.Contains(collectionObj)) { PackageOfCollections.Collections.Add(collectionObj); } return(tNode); } else if (formShown.TypeToAdd == RMCollectionType.Movies) { RMMovieCollection collectionObj = collectionTag.Object as RMMovieCollection; if (collectionObj == null) { Helper.ShowMessageBox(MessageBoxStrings.GUI.frmPackageAssets.ADD_ASSET_GROUP_ERR_GENERAL, MessageBoxStrings.MESSAGEBOX_NAME, MessageBoxButtons.OK, MessageBoxIcon.Error); Logger.WriteErrorLog(frmPackageAssetsMessages.Error.UNABLE_ADD_GROUP_INVALID_COLLECTION, _namespace, null, BasicDebugLogger.DebugErrorType.Error); return(null); } RMMovieGroup movieGroup = new RMMovieGroup(collectionObj); movieGroup.Name = formShown.TypeName; TreeNode tNode = new TreeNode(); frmPackAssetTNodeTag newGroupTag = new frmPackAssetTNodeTag(tNode, movieGroup, RootDirectory); tNode.Text = newGroupTag.ToString(); tNode.Tag = newGroupTag; collectionTag.AssociatedNode.Nodes.Add(tNode); if (collectionObj.Groups == null) { collectionObj.Groups = new List <RMMovieGroup>(); } collectionObj.Groups.Add(movieGroup); if (!PackageOfCollections.Collections.Contains(collectionObj)) { PackageOfCollections.Collections.Add(collectionObj); } return(tNode); } else if (formShown.TypeToAdd == RMCollectionType.Generator) { RMGeneratorCollection collectionObj = collectionTag.Object as RMGeneratorCollection; if (collectionObj == null) { Helper.ShowMessageBox(MessageBoxStrings.GUI.frmPackageAssets.ADD_ASSET_GROUP_ERR_GENERAL, MessageBoxStrings.MESSAGEBOX_NAME, MessageBoxButtons.OK, MessageBoxIcon.Error); Logger.WriteErrorLog(frmPackageAssetsMessages.Error.UNABLE_ADD_GROUP_INVALID_COLLECTION, _namespace, null, BasicDebugLogger.DebugErrorType.Error); return(null); } RMGenPart genGroup = new RMGenPart(collectionObj); genGroup.Name = formShown.TypeName; genGroup.PartType = formShown.GeneratorType; genGroup.Gender = formShown.GeneratorGender; TreeNode tNode = new TreeNode(); frmPackAssetTNodeTag newGroupTag = new frmPackAssetTNodeTag(tNode, genGroup, RootDirectory); tNode.Text = newGroupTag.ToString(); tNode.Tag = newGroupTag; collectionTag.AssociatedNode.Nodes.Add(tNode); if (collectionObj.Parts == null) { collectionObj.Parts = new List <RMGenPart>(); } collectionObj.Parts.Add(genGroup); if (!PackageOfCollections.Collections.Contains(collectionObj)) { PackageOfCollections.Collections.Add(collectionObj); } return(tNode); } return(null); }