コード例 #1
0
        ///  ID3v1 edit
        /// </summary>
        /// <param name="item">the item</param>
        public override void EditItem(TagListViewItem item)
        {
            // call base first
            base.EditItem(item);


            if (item.Id3v2 != null)
            {
                TagV2Ext tag = new TagV2Ext(item.Id3v2);
                if (!multi_edit || ckOrginalAlbum.Checked)
                {
                    tag.TOAL = txtOrginalAlbum.Text;
                }
                if (!multi_edit || ckOrginalFileName.Checked)
                {
                    tag.TOFN = txtOrginalFileName.Text;
                }
                if (!multi_edit || ckOrginalLyricsWriter.Checked)
                {
                    tag.TOLY = txtOrginalLyricsWriter.Text;
                }
                if (!multi_edit || ckOriginalArtist.Checked)
                {
                    tag.TOPE = txtOriginalArtist.Text;
                }
                if (!multi_edit || ckOriginalReleaseDate.Checked)
                {
                    tag.TORY = txtOriginalReleaseDate.Text;
                }
                if (!multi_edit || ckOriginalOwner.Checked)
                {
                    tag.TOWN = txtOriginalOwner.Text;
                }
            }
        }
コード例 #2
0
 ///  ID3v1 edit
 /// </summary>
 /// <param name="item">the item</param>
 public override void EditItem(TagListViewItem item)
 {
     // call base first
     base.EditItem(item);
     if (item.Id3v2 != null)
     {
         TagV2Ext tag = new TagV2Ext(item.Id3v2);
     }
 }
コード例 #3
0
        ///  ID3v1 edit
        /// </summary>
        /// <param name="item">the item</param>
        public override void EditItem(TagListViewItem item)
        {
            // call base first
            base.EditItem(item);

            if (item.Id3v2 != null)
            {
                UpdatePictureFrames(item);
            }
        }
コード例 #4
0
 /// <summary>
 ///  edit a item
 /// </summary>
 /// <param name="item"></param>
 protected override void EditItem(TagListViewItem item)
 {
     item.BackColor = Color.Yellow;
     main.EditItem(item);
     details.EditItem(item);
     original.EditItem(item);
     people.EditItem(item);
     web.EditItem(item);
     rating.EditItem(item);
     pictures.EditItem(item);
     item.RefreshItem();
 }
コード例 #5
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void listView_ItemDrag(object sender, ItemDragEventArgs e)
 {
     if (this.listView.SelectedItems.Count > 0)
     {
         TagListViewItem item = (TagListViewItem)this.listView.SelectedItems[0];
         FileInfo        fi   = (FileInfo)item.Tag;
         DataObject      data = new DataObject(DataFormats.FileDrop, new string[1] {
             fi.FullName
         });
         DoDragDrop(data, DragDropEffects.Copy);
     }
 }
コード例 #6
0
        /// <summary>
        ///  ID3v1 edit
        /// </summary>
        /// <param name="item">the item</param>
        public override void EditItem(TagListViewItem item)
        {
            base.EditItem(item);

            if (item.Id3v2 != null)
            {
                if (!multi_edit || ckArtist.Checked)
                {
                    item.Id3v2.Performers = Functions.GetArray(this.txtArtists.Text);
                }
                if (!multi_edit || ckAlbum.Checked)
                {
                    item.Id3v2.Album = this.txtAlbum.Text;
                }
                if (!multi_edit || ckTitle.Checked)
                {
                    item.Id3v2.Title = this.txtTitle.Text;
                }
                uint num = 0;
                if (!multi_edit || ckYear.Checked)
                {
                    item.Id3v2.Year = uint.TryParse(this.txtYear.Text, out num) ? num : 0;
                }
                if (!multi_edit || ckTrack.Checked)
                {
                    item.Id3v2.Track      = uint.TryParse(this.txtTrack.Text, out num) ? num : 0;
                    item.Id3v2.TrackCount = uint.TryParse(this.txtTrackCount.Text, out num) ? num : 0;
                }
                if (!multi_edit || ckDisc.Checked)
                {
                    item.Id3v2.Disc      = uint.TryParse(this.txtDisc.Text, out num) ? num : 0;
                    item.Id3v2.DiscCount = uint.TryParse(this.txtDiscCount.Text, out num) ? num : 0;
                }
                if (!multi_edit || ckBMP.Checked)
                {
                    item.Id3v2.BeatsPerMinute = uint.TryParse(this.txtBPM.Text, out num) ? num : 0;
                }
                if (!multi_edit || ckGenre.Checked)
                {
                    item.Id3v2.Genres = Functions.GetArray(txtGenres.Text);
                }
                if (!multi_edit || ckComment.Checked)
                {
                    item.Id3v2.Comment = this.txtComment.Text;
                }

                UpdateCommentFrames(item);
            }
        }
コード例 #7
0
 /// <summary>
 /// Update the comment frame
 /// </summary>
 private void UpdatePictureFrames(TagListViewItem item)
 {
     //BKP use IPicture ?
     if (this.pictures_dirty)
     {
         TagLib.IPicture[] pics = new TagLib.IPicture[pictureList.Items.Count];
         int len = pictureList.Items.Count;
         for (int i = 0; i < len; ++i)
         {
             TagLib.IPicture p = pictureList.Items[i].Tag as TagLib.IPicture;
             pics[i] = p;
         }
         item.Id3v2.Pictures = pics;
     }
 }
コード例 #8
0
 /// <summary>
 /// Update the comment frame
 /// </summary>
 private void UpdateCommentFrames(TagListViewItem item)
 {
     if (comments_dirty)
     {
         item.Id3v2.RemoveFrames("COMM");
         foreach (ListViewItem ci in commentList.Items)
         {
             string desc = ci.Text;
             string lang = ci.SubItems[2].Text;
             TagLib.Id3v2.CommentsFrame cf =
                 new TagLib.Id3v2.CommentsFrame(desc, lang);
             cf.Text = ci.SubItems[1].Text;
             item.Id3v2.AddFrame(cf);
         }
     }
 }
コード例 #9
0
 /// <summary>
 /// Update the comment frame
 /// </summary>
 private void UpdateCommentFrames(TagListViewItem item)
 {
     if (ratings_dirty)
     {
         item.Id3v2.RemoveFrames("POPM");
         foreach (ListViewItem i in ratingList.Items)
         {
             string             user   = i.Text;
             string             rating = i.SubItems[1].Text;
             string             count  = i.SubItems[2].Text;
             PopularimeterFrame f      = new PopularimeterFrame(user);
             f.Rating    = byte.Parse(rating);
             f.PlayCount = ulong.Parse(count);
             item.Id3v2.AddFrame(f);
         }
     }
 }
コード例 #10
0
 ///  ID3v1 edit
 /// </summary>
 /// <param name="item">the item</param>
 public override void EditItem(TagListViewItem item)
 {
     // call base first
     base.EditItem(item);
     if (item.Id3v2 != null)
     {
         TagV2Ext tag = new TagV2Ext(item.Id3v2);
         if (!multi_edit || ckCopyrightURL.Checked)
         {
             tag.WCOP = txtCopyrightURL.Text;
         }
         if (!multi_edit || ckFileURL.Checked)
         {
             tag.WOAF = txtFileURL.Text;
         }
         if (!multi_edit || ckArtistURL.Checked)
         {
             tag.WOAR = txtArtistURL.Text;
         }
         if (!multi_edit || ckAudioSourceURL.Checked)
         {
             tag.WOAS = txtAudioSourceURL.Text;
         }
         if (!multi_edit || ckRadioStationURL.Checked)
         {
             tag.WORS = txtRadioStationURL.Text;
         }
         if (!multi_edit || ckPaymentURL.Checked)
         {
             tag.WPAY = txtPaymentURL.Text;
         }
         if (!multi_edit || ckPublisherURL.Checked)
         {
             tag.WPUB = txtPublisherURL.Text;
         }
         if (!multi_edit || ckCommercialURL.Checked)
         {
             tag.WCOM = txtCommercialURL.Text;
         }
     }
 }
コード例 #11
0
        /// <summary>
        ///  ID3v1 edit
        /// </summary>
        /// <param name="item">the item</param>
        public override void EditItem(TagListViewItem item)
        {
            // call the base
            base.EditItem(item);

            item.BackColor = Color.Yellow;
            if (!multi_edit || ckArtist.Checked)
            {
                item.Id3v1.Performers = Functions.GetArray(this.txtArtists.Text);
            }
            if (!multi_edit || ckAlbum.Checked)
            {
                item.Id3v1.Album = this.txtAlbum.Text;
            }
            if (!multi_edit || this.ckTitle.Checked)
            {
                item.Id3v1.Title = this.txtTitle.Text;
            }
            uint num = 0;

            if (!multi_edit || this.ckYear.Checked)
            {
                item.Id3v1.Year = uint.TryParse(this.txtYear.Text, out num) ? num : 0;
            }
            if (!multi_edit || this.ckTrack.Checked)
            {
                item.Id3v1.Track = uint.TryParse(this.txtTrack.Text, out num) ? num : 0;
            }
            if (!multi_edit || this.ckGenre.Checked)
            {
                item.Id3v1.Genres = new string[1] {
                    this.cmbGenre.Text
                };
            }
            if (!multi_edit || this.ckComment.Checked)
            {
                item.Id3v1.Comment = this.txtComment.Text;
            }
            item.RefreshItem();
        }
コード例 #12
0
        /// <summary>
        ///  ID3v1 edit
        /// </summary>
        /// <param name="item">the item</param>
        public override void EditItem(TagListViewItem item)
        {
            // call base first
            base.EditItem(item);

            if (v2 != null)
            {
                TagV2Ext tag = new TagV2Ext(item.Id3v2);
                tag.TPE2             = txtBand.Text;
                tag.TPE4             = txtRemixed.Text;
                tag.TEXT             = txtWriter.Text;
                tag.TPUB             = txtPublisher.Text;
                tag.TENC             = txtEncoded.Text;
                tag.TIT3             = txtSubTitle.Text;
                tag.TMED             = cmbMediaType.Text;
                tag.TLEN             = txtTrackLength.Text;
                item.Id3v2.Copyright = txtCopyright.Text;
                item.Id3v2.Grouping  = txtContentGroup.Text;
                item.Id3v2.Conductor = txtConductor.Text;
                item.Id3v2.Composers = Functions.GetArray(this.txtComposer.Text);;
            }
        }
コード例 #13
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="lv"></param>
        public EditV2Frm(ListView lv, bool multi_edit) : base(lv, multi_edit)
        {
            InitializeComponent();

            if (multi_edit)
            {
                this.Text            = Properties.Resources.editv2frm_multi;
                taskNext.Enabled     = false;
                taskPrevious.Enabled = false;
            }
            else
            {
                TagListViewItem item = (TagListViewItem)lv.Items[0];
                this.Text = String.Format("{0}.{1}",
                                          Properties.Resources.editv2frm_single, item.Id3v2.Version);
            }

            this.panel1.Controls.Add(main);
            main.Initialize(lv, multi_edit);
            main.Location = this.panel1.Location;
            main.Dock     = DockStyle.Fill;
            main.Show();
            this.panel1.Controls.Add(details);
            details.Location = this.panel1.Location;
            details.Dock     = DockStyle.Fill;
            details.Initialize(lv, multi_edit);
            details.Hide();
            this.panel1.Controls.Add(lyrics);
            lyrics.Location = this.panel1.Location;
            lyrics.Dock     = DockStyle.Fill;
            lyrics.Initialize(lv, multi_edit);
            lyrics.Hide();
            this.panel1.Controls.Add(pictures);
            pictures.Location = this.panel1.Location;
            pictures.Dock     = DockStyle.Fill;
            pictures.Initialize(lv, multi_edit);
            pictures.Hide();
            this.panel1.Controls.Add(web);
            web.Location = this.panel1.Location;
            web.Dock     = DockStyle.Fill;
            web.Initialize(lv, multi_edit);
            web.Hide();
            this.panel1.Controls.Add(original);
            original.Location = this.panel1.Location;
            original.Dock     = DockStyle.Fill;
            original.Initialize(lv, multi_edit);
            original.Hide();
            this.panel1.Controls.Add(people);
            people.Location = this.panel1.Location;
            people.Dock     = DockStyle.Fill;
            people.Initialize(lv, multi_edit);
            people.Hide();
            //this.panel1.Controls.Add( user );
            //user.Location = this.panel1.Location;
            //user.Dock = DockStyle.Fill;
            //user.Initialize( lv, multi_edit );
            //user.Hide();
            this.panel1.Controls.Add(rating);
            rating.Location = this.panel1.Location;
            rating.Dock     = DockStyle.Fill;
            rating.Initialize(lv, multi_edit);
            rating.Hide();
            current = main;
        }
コード例 #14
0
ファイル: EditFrm.cs プロジェクト: brian8181/music_tagger
 /// <summary>
 ///
 /// </summary>
 /// <param name="item"></param>
 protected virtual void EditItem(TagListViewItem item)
 {
 }
コード例 #15
0
 /// <summary>
 ///  ID3v1 edit
 /// </summary>
 /// <param name="item">the item</param>
 public virtual void EditItem(TagListViewItem item)
 {
     dirty      = true;
     item.Dirty = true;
 }
コード例 #16
0
 /// <summary>
 ///  ID3v1 edit
 /// </summary>
 /// <param name="item">the item</param>
 public override void EditItem(TagListViewItem item)
 {
     // call base first
     base.EditItem(item);
 }