- bse.platten_en.zip
- BSE.Platten
- BSE.CoverFlow.WPFLib
- BSE.Platten.Admin.WinApp
- BSE.Platten.Admin
- BSE.Platten.Audio
- BSE.Platten.BO
- BSE.Platten.Common
- BSE.Platten.Covers
- BSE.Platten.FreeDb
- BSE.Platten.Ripper
- BSE.Platten.sln
- BSE.Platten.Statistik
- BSE.Platten.Tunes
- BSEadminSetup
- BSEadminSetup.vdproj
- Debug
- Release
- BSEtunesSetup
- BSEtunesSetup.vdproj
- Debug
- Release
- dll
- BSE.CDDrives.DLL
- BSE.Charts.DLL
- BSE.Configuration.DLL
- BSE.RemovableDrives.DLL
- BSE.Shell.DLL
- BSE.ThreadedShell.DLL
- BSE.Windows.Forms.DLL
- Lame
- lame_enc.dll
- lame-3.97
- mysql.chm.zip
- MySQL.chm
- mysqlcreatedatabase5x.sql.zip
- BSE.Platten.zip
|
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;
using BSE.Platten.Audio;
using BSE.Platten.BO;
using BSE.Platten.Common;
using System.Globalization;
namespace BSE.Platten.Tunes
{
public partial class AlbumPropertiesListView : UserControl
{
#region FieldsPrivate
private BSE.Platten.BO.CAlbum m_currentAlbum;
#endregion
#region Properties
public CPlayerManager PlayerManager
{
get { return this.m_playerManager; }
set
{
this.m_playerManager = value;
this.m_lstvLieder.PlayerManager = this.m_playerManager;
}
}
public BSE.Configuration.CConfiguration Settings
{
get { return this.m_settings; }
set { this.m_settings = value; }
}
#endregion
#region MethodsPublic
public AlbumPropertiesListView()
{
InitializeComponent();
this.m_lstvLieder.AlternatingBackColor = BSE.Platten.Common.BSEColors.AlternatingBackColor;
}
public void SetCurrentAlbum(BSE.Platten.BO.CAlbum currentAlbum)
{
this.m_currentAlbum = currentAlbum;
this.m_lstvLieder.Items.Clear();
if (this.m_currentAlbum != null)
{
CTrack[] tracks = this.m_currentAlbum.Tracks;
if (tracks != null)
{
foreach (BSE.Platten.BO.CTrack track in tracks)
{
if (string.IsNullOrEmpty(track.FileName) == false)
{
track.Interpret = this.m_currentAlbum.Interpret;
track.Album = this.m_currentAlbum.Title;
track.Genre = this.m_currentAlbum.Genre;
track.Year = this.m_currentAlbum.Year;
ListViewItem listViewItem = new ListViewItem();
listViewItem.Text = track.TrackNumber.ToString(CultureInfo.InvariantCulture);
listViewItem.SubItems.Add(track.Title);
listViewItem.SubItems.Add(track.Album);
listViewItem.SubItems.Add(track.Interpret);
listViewItem.SubItems.Add(track.Duration.ToLongTimeString());
listViewItem.SubItems.Add(track.Genre);
listViewItem.SubItems.Add(track.Year.ToString(CultureInfo.InvariantCulture));
listViewItem.SubItems.Add(track.FileFullName);
listViewItem.Tag = track;
this.m_lstvLieder.Items.Add(listViewItem);
}
}
}
}
}
#endregion
#region MethodsPrivate
private void ListViewMouseUp(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
if (this.m_lstvLieder.SelectedItems.Count > 0)
{
this.m_ctxAlbumProperties.Show(this.m_lstvLieder, new Point(e.X, e.Y));
}
}
}
private void PlaySelectedTracks(object sender, EventArgs e)
{
CTrackCollection trackCollection = new CTrackCollection(this.m_lstvLieder.SelectedItems.Count);
foreach (ListViewItem listViewItem in this.m_lstvLieder.SelectedItems)
{
CTrack track = (CTrack)listViewItem.Tag;
trackCollection.Add(track);
}
if (trackCollection.Count > 0)
{
if (this.m_playerManager != null)
{
try
{
this.m_playerManager.PlayTracks(
trackCollection,
BSE.Platten.Audio.PlayMode.Playlist);
}
catch (Exception exception)
{
GlobalizedMessageBox.Show(this,exception.Message, MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
}
private void CAlbumProperties_Load(object sender, EventArgs e)
{
Form parentForm = this.FindForm();
if (parentForm != null)
{
parentForm.FormClosing += new FormClosingEventHandler(CAlbumProperties_FormClosing);
LoadSettings();
}
}
private void CAlbumProperties_FormClosing(object sender, FormClosingEventArgs e)
{
SaveSettings();
}
private void LoadSettings()
{
if (this.m_settings != null)
{
AlbumPropertiesListViewSettingsData albumPropertiesListViewSettingsData = new AlbumPropertiesListViewSettingsData();
albumPropertiesListViewSettingsData = albumPropertiesListViewSettingsData.LoadSettings(this, this.m_settings, albumPropertiesListViewSettingsData) as AlbumPropertiesListViewSettingsData;
if (albumPropertiesListViewSettingsData != null)
{
//-------------------------------------------------------------------------------
// Spaltenbreiten f�r die Lieder ListView neu setzen.
//-------------------------------------------------------------------------------
int iSizeLvwLieder = this.m_lstvLieder.Columns.Count;
int[] columnWidthsLvwLieder = albumPropertiesListViewSettingsData.ColumnWidthsLvwLieder;
if (columnWidthsLvwLieder != null)
{
int iSizeIntArray = columnWidthsLvwLieder.Length;
for (int i = 0; i < iSizeLvwLieder; ++i)
{
if (i < iSizeIntArray)
{
this.m_lstvLieder.Columns[i].Width = columnWidthsLvwLieder[i];
}
else
{
break;
}
}
}
}
}
}
private void SaveSettings()
{
if (this.m_settings != null)
{
AlbumPropertiesListViewSettingsData albumPropertiesListViewSettingsData = new AlbumPropertiesListViewSettingsData();
//-------------------------------------------------------------------------------
// Spaltenbreiten f�r die Lieder ListView speichern.
//-------------------------------------------------------------------------------
int iSizeLvwLieder = this.m_lstvLieder.Columns.Count;
int[] columnWithsLvwLieder = new int[iSizeLvwLieder];
for (int i = 0; i < iSizeLvwLieder; ++i)
{
columnWithsLvwLieder[i] = this.m_lstvLieder.Columns[i].Width;
}
albumPropertiesListViewSettingsData.ColumnWidthsLvwLieder = columnWithsLvwLieder;
albumPropertiesListViewSettingsData.SaveSettings(this, this.m_settings, albumPropertiesListViewSettingsData);
}
}
#endregion
}
public class AlbumPropertiesListViewSettingsData : BaseControlSettingsData
{
#region Fields
/// <summary>
/// Spaltenbreiten f�r die Lieder ListView
/// </summary>
private int[] m_iarColumnWidthsLvwLieder;
#endregion
#region Properties
/// <summary>
/// Spaltenbreiten f�r die Lieder ListView
/// </summary>
public int[] ColumnWidthsLvwLieder
{
get { return this.m_iarColumnWidthsLvwLieder; }
set { this.m_iarColumnWidthsLvwLieder = value; }
}
#endregion
}
}
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.