Beispiel #1
0
        private void buttonEditAsset_Click(object sender, EventArgs e)
        {
            try
            {
                uint         oldAssetID = CurrentlySelectedAssetIDs()[0];
                Section_AHDR AHDR       = AssetHeader.GetAsset(archive.GetFromAssetID(oldAssetID).AHDR, out bool success, out bool setPosition);

                if (success)
                {
                    archive.UnsavedChanges = true;
                    archive.RemoveAsset(oldAssetID);

                    while (archive.ContainsAsset(AHDR.assetID))
                    {
                        MessageBox.Show($"Archive already contains asset id [{AHDR.assetID.ToString("X8")}]. Will change it to [{(AHDR.assetID + 1).ToString("X8")}].");
                        AHDR.assetID++;
                    }

                    archive.AddAsset(comboBoxLayers.SelectedIndex, AHDR);
                    if (setPosition)
                    {
                        archive.SetAssetPositionToView(AHDR.assetID);
                    }

                    //PopulateAssetListAndComboBox();
                    SetSelectedIndices(new List <uint>()
                    {
                        AHDR.assetID
                    }, true);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Unable to edit asset: " + ex.Message);
            }
        }