From: <sa...@us...> - 2007-03-29 20:57:47
|
Revision: 258 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=258&view=rev Author: saamand Date: 2007-03-29 13:57:45 -0700 (Thu, 29 Mar 2007) Log Message: ----------- Modified Paths: -------------- trunk/plugins/MyLyrics/LyricsEngine/LyricsEngine.csproj trunk/plugins/MyLyrics/My Lyrics/MyLyrics.cs trunk/plugins/MyLyrics/My Lyrics/MyLyrics.csproj trunk/plugins/MyLyrics/My Lyrics/MyLyricsSettings.cs trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.Designer.cs trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.cs trunk/plugins/MyLyrics/MyLyrics.suo Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricsEngine.csproj =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/LyricsEngine.csproj 2007-03-29 16:15:51 UTC (rev 257) +++ trunk/plugins/MyLyrics/LyricsEngine/LyricsEngine.csproj 2007-03-29 20:57:45 UTC (rev 258) @@ -125,7 +125,7 @@ </Target> --> <PropertyGroup> - <PostBuildEvent>::copy $(TargetFileName) "C:\Program Files\Team MediaPortal\MediaPortal"</PostBuildEvent> + <PostBuildEvent>copy $(TargetFileName) "C:\Program Files\Team MediaPortal\MediaPortal"</PostBuildEvent> <PreBuildEvent> </PreBuildEvent> </PropertyGroup> Modified: trunk/plugins/MyLyrics/My Lyrics/MyLyrics.cs =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/MyLyrics.cs 2007-03-29 16:15:51 UTC (rev 257) +++ trunk/plugins/MyLyrics/My Lyrics/MyLyrics.cs 2007-03-29 20:57:45 UTC (rev 258) @@ -30,37 +30,15 @@ public class GUIMyLyrics : GUIWindow, ILyricForm, ISetupForm { - #region Fields that is consisted and related to the MP session, and not MyLyrics session + #region Fields related to the MyLyrics in general + public static int WINDOW_MYLYRICS = 90478; - int m_GoogleLicenseKeyIndex = 0; - const int MAX_NO_OF_LICENSE_KEYS = 5; - string[] m_GoogleLicenseKeys = new String[5] { "", "", "", "", "" }; - int startingScrollSpeedVertical = 2; - const int SHIFT_WHEN_HIT = 10; - #endregion - #region Fields related to the skin engine - [SkinControlAttribute(20)] - //protected GUITextScrollUpControl CONTROL_Lyric = null; - protected GUITextControl CONTROL_Lyric = null; - enum Controls - { - CONTROL_BACKGROUND = 1, - CONTROL_LBTrack = 10, - CONTROL_LBStatus = 11, - CONTROL_Lyric = 20 - } - #endregion + private int selectedScreen = 0; + string lyricsScreenXML = ""; - #region Fields related to the MyLyrics, and therefore will be reset after each MyLyrics session bool exitingMyLyrics = false; - LRC.SimpleLRC lrc; - IEnumerator enumerator; - System.Windows.Forms.Timer timer; - Stopwatch stopwatch; - string nextTimeToShow; - string nextLineToShow; - int lineCounter; + bool firstTime = false; // worker thread Thread m_LyricControllerThread; @@ -81,7 +59,6 @@ String[] m_sitesToSearch; - // Database and log settings internal static LyricsDatabase LyricsDB = null; internal static LyricsDatabase LyricsMarkedDB = null; @@ -91,6 +68,74 @@ #endregion + #region Fields related to one of lyrics modes + + enum LyricGUI_Controls + { + CONTROL_BACKGROUND = 1, + CONTROL_LBTrack = 10, + CONTROL_LBStatus = 11, + CONTROL_Lyric = 20 + } + + #endregion + + #region Fields related to LRC mode + const int SHIFT_WHEN_HIT = 10; + + LRC.SimpleLRC lrc; + IEnumerator enumerator; + System.Windows.Forms.Timer timer; + Stopwatch stopwatch; + string nextTimeToShow; + string nextLineToShow; + int lineCounter; + + #endregion + + #region Fields releated to the editor mode + + internal const int TAG_IN_ROUND = 5; + internal int currentLineToTag = 1; + internal int tagRoundFinished = 0; + internal int min = 0; + internal int sec = 0; + internal int msec = 0; + + string[] lines; + + enum EditorGUI_Controls : int + { + CONTROL_BACKGROUND = 1, + CONTROL_LBTrack = 10, + CONTROL_LBStatus = 11, + + CONTROL_TAGBUTTON = 50, + + CONTROL_TIME = 100, + CONTROL_TIME1 = 101, + CONTROL_TIME2 = 102, + CONTROL_TIME3 = 103, + CONTROL_TIME4 = 104, + CONTROL_TIME5 = 105, + + CONTROL_LINE = 200, + CONTROL_LINE1 = 201, + CONTROL_LINE2 = 202, + CONTROL_LINE3 = 203, + CONTROL_LINE4 = 204, + CONTROL_LINE5 = 205, + + CONTROL_LINE_DONE = 300, + CONTROL_LINE1_DONE = 301, + CONTROL_LINE2_DONE = 302, + CONTROL_LINE3_DONE = 303, + CONTROL_LINE4_DONE = 304, + CONTROL_LINE5_DONE = 305 + } + #endregion + + public GUIMyLyrics() { m_EventStopThread = new ManualResetEvent(false); @@ -101,12 +146,37 @@ public override bool Init() { - string lyricsXML = ""; + int lyricsScreen = 0; using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings("MediaPortal.xml")) { - lyricsXML = (string)xmlreader.GetValueAsString("myLyrics", "myLyricsXml", "myLyrics.xml"); + lyricsScreen = (int)xmlreader.GetValueAsInt("myLyrics", "myLyricsScreen", (int)MyLyricsSettings.Screen.LYRICS_BASIC); } - return Load(GUIGraphicsContext.Skin + @"\" + lyricsXML); + + switch (lyricsScreen) + { + case (int)MyLyricsSettings.Screen.LYRICS_BASIC: + selectedScreen = (int)MyLyricsSettings.Screen.LYRICS_BASIC; + lyricsScreenXML = "MyLyrics.xml"; + break; + case (int)MyLyricsSettings.Screen.LYRICS_WIDE: + selectedScreen = (int)MyLyricsSettings.Screen.LYRICS_WIDE; + lyricsScreenXML = "MyLyricsWide.xml"; + break; + case (int)MyLyricsSettings.Screen.LRC_BASIC: + selectedScreen = (int)MyLyricsSettings.Screen.LRC_BASIC; + lyricsScreenXML = "MyLyricsLRC.xml"; + break; + case (int)MyLyricsSettings.Screen.LRC_EDITOR: + selectedScreen = (int)MyLyricsSettings.Screen.LRC_EDITOR; + lyricsScreenXML = "MyLyricsEditor.xml"; + break; + default: + selectedScreen = (int)MyLyricsSettings.Screen.LYRICS_BASIC; + lyricsScreenXML = "MyLyrics.xml"; + break; + } + + return Load(GUIGraphicsContext.Skin + @"\" + lyricsScreenXML); } public override void OnAction(Action action) @@ -114,49 +184,21 @@ switch (action.wID) { case Action.ActionType.ACTION_PREVIOUS_MENU: - { - GUIWindowManager.ShowPreviousWindow(); - return; - } - case Action.ActionType.ACTION_KEY_PRESSED: - { - //MessageBox.Show(action.m_key.KeyChar.ToString()); - if (action.m_key != null) - { - - // Check key - //if (((action.m_key.KeyChar >= '0') && (action.m_key.KeyChar <= '9'))) - //{ - // GUIGraphicsContext.ScrollSpeedVertical = action.m_key.KeyChar - 48; - // CONTROL_Lyric.Label = m_LyricText; - // return; - //} - - if (action.m_key.KeyChar == (int)Keys.Enter) - { - if (GUIGraphicsContext.ScrollSpeedVertical == 12) - { - GUIGraphicsContext.ScrollSpeedVertical = 1; - } - else if (GUIGraphicsContext.ScrollSpeedVertical == 1) - { - GUIGraphicsContext.ScrollSpeedVertical = 12; - } - return; - } - - if (action.m_key.KeyChar == (int)Keys.Back) - { - } - } - } - break; + { + GUIWindowManager.ShowPreviousWindow(); + return; + } } base.OnAction(action); } private void resetAll() { + + //deregister the handler! + GUIPropertyManager.OnPropertyChanged -= this.trackChangeHandler; + + firstTime = false; exitingMyLyrics = true; m_artist = ""; m_title = ""; @@ -194,45 +236,195 @@ LoadSettings(); - startingScrollSpeedVertical = GUIGraphicsContext.ScrollSpeedVertical; - GUIGraphicsContext.ScrollSpeedVertical = 1; LyricDiagnostics.OpenLog(MediaPortal.Configuration.Config.GetFile(MediaPortal.Configuration.Config.Dir.Log, logName)); - //LyricDiagnostics.OpenLog(MediaPortal.Configuration.Config.GetFile(MediaPortal.Configuration.Config.Dir.Log, logName)); - LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Start, 0, LyricDiagnostics.elapsedTimeString() + "MyLyrics opens"); + LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Start, 0, LyricDiagnostics.elapsedTimeString() + "MyLyrics opens, screen: " + lyricsScreenXML); return true; } + case GUIMessage.MessageType.GUI_MSG_CLICKED: + { + //get sender control + int iControl = message.SenderControlId; + + if (selectedScreen == (int)MyLyricsSettings.Screen.LRC_EDITOR) + { + if (iControl == (int)EditorGUI_Controls.CONTROL_TAGBUTTON) + { + string time = min.ToString() + ":" + sec.ToString() + "." + stopwatch.ElapsedMilliseconds; + GUIControl.SetControlLabel(GetID, (int)EditorGUI_Controls.CONTROL_TIME + currentLineToTag, time); + GUIControl.HideControl(GetID, (int)EditorGUI_Controls.CONTROL_LINE + currentLineToTag); + + // If a new round has to start + if (++currentLineToTag == TAG_IN_ROUND + 1) + { + currentLineToTag = 1; + ++tagRoundFinished; + + for (int i = 1; i <= TAG_IN_ROUND; i++) + { + GUIControl.ShowControl(GetID, (int)EditorGUI_Controls.CONTROL_LINE + i); + GUIControl.SetControlLabel(GetID, (int)EditorGUI_Controls.CONTROL_TIME + i, ""); + GUIControl.SetControlLabel(GetID, (int)EditorGUI_Controls.CONTROL_LINE + i, lines[tagRoundFinished * TAG_IN_ROUND + i]); + GUIControl.SetControlLabel(GetID, (int)EditorGUI_Controls.CONTROL_LINE_DONE + i, lines[tagRoundFinished * TAG_IN_ROUND + i]); + } + } + } + } + return true; + } case GUIMessage.MessageType.GUI_MSG_WINDOW_DEINIT: { - SaveSettings(); StopThread(); resetAll(); - GUIGraphicsContext.ScrollSpeedVertical = startingScrollSpeedVertical; - LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Stop, 0, LyricDiagnostics.elapsedTimeString() + "MyLyrics closes"); + LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Stop, 0, LyricDiagnostics.elapsedTimeString() + "MyLyrics closes, screen: " + lyricsScreenXML); + break; } - break; + } + return base.OnMessage(message); + } - //case GUIMessage.MessageType.GUI_MSG_ITEM_FOCUS_CHANGED: - // { + //event driven handler to detect track change + private void trackChangeHandler(string tag2, string value) + { + if (tag2.Equals("#Play.Current.Track") && !exitingMyLyrics) // track has changed + { + if (!value.Equals("")) // additional check + { + lyricsFound = false; + StopThread(); - // } - // break; + MusicTag tag = new MusicTag(); + tag.Artist = GUIPropertyManager.GetProperty("#Play.Current.Artist"); + tag.Title = GUIPropertyManager.GetProperty("#Play.Current.Title"); + + findLyric(tag); + } + else + { + m_artist = ""; + m_title = ""; + m_TrackText = ""; + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBTrack, m_StatusText); + m_StatusText = "No music file playing"; + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBStatus, m_StatusText); + m_LyricText = ""; + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_Lyric, m_LyricText); + } } - return base.OnMessage(message); } + //event driven handler to detect track change + private void timeHandler(string tag2, string value) + { + if (tag2.Equals("#currentplaytime") && !exitingMyLyrics) + { + if (stopwatch != null && stopwatch.IsRunning) + { + stopwatch.Stop(); + } + + stopwatch = new Stopwatch(); + stopwatch.Start(); + + string[] timeStrings = value.Split(':'); + min = int.Parse(timeStrings[0]); + sec = int.Parse(timeStrings[1]); + + if (!value.Equals("")) // additional check + { + lyricsFound = false; + StopThread(); + + MusicTag tag = new MusicTag(); + tag.Artist = GUIPropertyManager.GetProperty("#Play.Current.Artist"); + tag.Title = GUIPropertyManager.GetProperty("#Play.Current.Title"); + + findLyric(tag); + } + else + { + m_artist = ""; + m_title = ""; + m_TrackText = ""; + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBTrack, m_StatusText); + m_StatusText = "No music file playing"; + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBStatus, m_StatusText); + m_LyricText = ""; + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_Lyric, m_LyricText); + } + } + } + public override void Process() { + if (firstTime && selectedScreen == (int)MyLyricsSettings.Screen.LRC_EDITOR) + { + firstTime = false; + + string artist = LyricUtil.capatalizeString(GUIPropertyManager.GetProperty("#Play.Current.Artist")); + string title = LyricUtil.capatalizeString(GUIPropertyManager.GetProperty("#Play.Current.Title")); + + string lyric = ""; + + if (DatabaseUtil.IsTrackInLyricsDatabase(LyricsDB, artist, title).Equals(DatabaseUtil.LYRIC_FOUND)) + { + LyricsItem item = LyricsDB[DatabaseUtil.CorrectKeyFormat(artist, title)]; + lyric = item.Lyrics; + + lines = lyric.Split(new string[1] { "\n" }, StringSplitOptions.None); + + for (int i = tagRoundFinished * TAG_IN_ROUND; i < (tagRoundFinished + 1) * TAG_IN_ROUND; i++) + { + GUIControl.SetControlLabel(GetID, (int)EditorGUI_Controls.CONTROL_LINE + i, lines[i]); + GUIControl.SetControlLabel(GetID, (int)EditorGUI_Controls.CONTROL_LINE_DONE + i, lines[i]); + } + } + } + else if (firstTime && !exitingMyLyrics) //when mylyrics is opened while music is already playing, trackChangeHandler won't be called + { + lyricsFound = false; + StopThread(); + firstTime = false; + + MusicTag tag = new MusicTag(); + tag.Artist = GUIPropertyManager.GetProperty("#Play.Current.Artist"); + tag.Title = GUIPropertyManager.GetProperty("#Play.Current.Title"); + + if (!tag.Artist.Equals("")) findLyric(tag); + else + { + m_artist = ""; + m_title = ""; + m_TrackText = ""; + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBTrack, m_StatusText); + m_StatusText = "No music file playing"; + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBStatus, m_StatusText); + m_LyricText = ""; + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_Lyric, m_LyricText); + } + } + + + /* if (isNewTrack() && exitingMyLyrics == false) { lyricsFound = false; StopThread(); m_Path = g_Player.CurrentFile; MusicTag tag = MediaPortal.TagReader.TagReader.ReadTag(m_Path); - + + + //quick and dirty CDA support hack :) + if (g_Player.IsCDA) + { + tag = new MusicTag(); + tag.Artist = GUIPropertyManager.GetProperty("#Play.Current.Artist"); + tag.Title = GUIPropertyManager.GetProperty("#Play.Current.Title"); + } + if (!m_Path.Equals("")) { - findLyric(tag); + //findLyric(tag); } else { @@ -245,7 +437,9 @@ m_LyricText = ""; GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_Lyric, m_LyricText); } - } + }*/ + + base.Process(); } @@ -256,14 +450,25 @@ void LoadSettings() { + firstTime = true; + // Clear and update labels - GUIControl.ClearControl(GetID, (int)Controls.CONTROL_LBStatus); - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_LBStatus, m_StatusText); - GUIControl.ClearControl(GetID, (int)Controls.CONTROL_LBTrack); - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_LBTrack, m_TrackText); - GUIControl.ClearControl(GetID, (int)Controls.CONTROL_Lyric); - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_Lyric, m_LyricText); + if (selectedScreen != (int)MyLyricsSettings.Screen.LRC_EDITOR) + { + GUIControl.ClearControl(GetID, (int)LyricGUI_Controls.CONTROL_LBStatus); + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBStatus, m_StatusText); + GUIControl.ClearControl(GetID, (int)LyricGUI_Controls.CONTROL_LBTrack); + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBTrack, m_TrackText); + GUIControl.ClearControl(GetID, (int)LyricGUI_Controls.CONTROL_Lyric); + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_Lyric, m_LyricText); + GUIPropertyManager.OnPropertyChanged += new GUIPropertyManager.OnPropertyChangedHandler(trackChangeHandler); + } + else if(selectedScreen == (int)MyLyricsSettings.Screen.LRC_EDITOR) + { + GUIPropertyManager.OnPropertyChanged += new GUIPropertyManager.OnPropertyChangedHandler(timeHandler); + } + bool useLyricWiki, useEvilLabs, useLyrics007, useLyricsOnDemand, useSeekLyrics, useHotLyrics; using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings("MediaPortal.xml")) @@ -315,6 +520,7 @@ fs = new FileStream(path, FileMode.Open); LyricsMarkedDB = (LyricsDatabase)bf.Deserialize(fs); fs.Close(); + } void SaveSettings() @@ -330,17 +536,17 @@ { m_EventStopThread.Reset(); - GUIControl.ClearControl(GetID, (int)Controls.CONTROL_Lyric); - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_Lyric, ""); + GUIControl.ClearControl(GetID, (int)LyricGUI_Controls.CONTROL_Lyric); + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_Lyric, ""); if (tag != null && tag.Artist != "") { m_artist = tag.Artist.Trim(); m_title = tag.Title.Trim(); m_TrackText = m_artist + " - " + m_title; - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_LBTrack, m_TrackText); + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBTrack, m_TrackText); m_StatusText = "Searching for a matching lyric. Please wait a moment..."; - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_LBStatus, m_StatusText); + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBStatus, m_StatusText); LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Information, 0, LyricDiagnostics.elapsedTimeString() + "findLyric(" + m_artist + ", " + m_title + ")"); @@ -362,7 +568,7 @@ resetLrcFields(); m_StatusText = ""; - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_LBStatus, m_StatusText); + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBStatus, m_StatusText); if (lrc == null) { @@ -386,8 +592,8 @@ { m_StatusText = ""; m_LyricText = ""; - GUIControl.ClearControl(GetID, (int)Controls.CONTROL_LBStatus); - GUIControl.ClearControl(GetID, (int)Controls.CONTROL_Lyric); + GUIControl.ClearControl(GetID, (int)LyricGUI_Controls.CONTROL_LBStatus); + GUIControl.ClearControl(GetID, (int)LyricGUI_Controls.CONTROL_Lyric); // setup timer and stopwatch timer = new System.Windows.Forms.Timer(); @@ -438,9 +644,9 @@ else { m_TrackText = ""; - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_LBTrack, m_StatusText); + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBTrack, m_StatusText); m_StatusText = "The music tag isn't complete"; - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_LBStatus, m_StatusText); + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBStatus, m_StatusText); return; } } @@ -452,10 +658,10 @@ { lineCounter = 0; m_LyricText = ""; - GUIControl.ClearControl(GetID, (int)Controls.CONTROL_Lyric); + GUIControl.ClearControl(GetID, (int)LyricGUI_Controls.CONTROL_Lyric); } m_LyricText += (nextLineToShow); - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_Lyric, m_LyricText); + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_Lyric, m_LyricText); calculateNextInterval(); } @@ -467,7 +673,7 @@ while (currentLine.Time == 0) { m_LyricText += (currentLine.Line); - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_Lyric, m_LyricText); + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_Lyric, m_LyricText); ++lineCounter; enumerator.MoveNext(); @@ -477,7 +683,7 @@ nextTimeToShow = currentLine.TimeString; nextLineToShow = currentLine.Line; //MessageBox.Show(g_Player.CurrentPosition.ToString()); - int temp = (int)(currentLine.Time - (int)(g_Player.CurrentPosition*1000)); + int temp = (int)(currentLine.Time - (int)(g_Player.CurrentPosition * 1000)); if (temp > 0) { timer.Interval = temp; @@ -487,7 +693,7 @@ //MessageBox.Show("temp: " + temp); } -// lbTestSecondsLeft.Text = ((long)(stopwatch.ElapsedMilliseconds / 1000)).ToString(); + // lbTestSecondsLeft.Text = ((long)(stopwatch.ElapsedMilliseconds / 1000)).ToString(); } else { @@ -506,8 +712,9 @@ m_LyricText = lyricText; m_StatusText = ""; - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_LBStatus, m_StatusText); - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_Lyric, m_LyricText); + + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBStatus, m_StatusText); + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_Lyric, m_LyricText); } private void SaveLyricToDatabase(string site) @@ -567,7 +774,7 @@ string line1 = (string)value[0]; string line2 = (string)value[1]; m_StatusText = line1 + "\r\n" + line2; - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_LBStatus, m_StatusText); + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBStatus, m_StatusText); } } @@ -619,7 +826,7 @@ { LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Information, 0, LyricDiagnostics.elapsedTimeString() + "Search terminates: No lyric found..."); m_StatusText = "No lyric found"; - GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_LBStatus, m_StatusText); + GUIControl.SetControlLabel(GetID, (int)LyricGUI_Controls.CONTROL_LBStatus, m_StatusText); } } } @@ -715,4 +922,4 @@ #endregion } -} +} \ No newline at end of file Modified: trunk/plugins/MyLyrics/My Lyrics/MyLyrics.csproj =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/MyLyrics.csproj 2007-03-29 16:15:51 UTC (rev 257) +++ trunk/plugins/MyLyrics/My Lyrics/MyLyrics.csproj 2007-03-29 20:57:45 UTC (rev 258) @@ -5,7 +5,7 @@ <ProductVersion>8.0.50727</ProductVersion> <SchemaVersion>2.0</SchemaVersion> <ProjectGuid>{BBB2DAE2-0D83-4B4B-85B6-D1B5A7E10039}</ProjectGuid> - <OutputType>WinExe</OutputType> + <OutputType>Library</OutputType> <AppDesignerFolder>Properties</AppDesignerFolder> <RootNamespace>MyLyrics</RootNamespace> <AssemblyName>MyLyrics</AssemblyName> @@ -131,6 +131,6 @@ </Target> --> <PropertyGroup> - <PostBuildEvent>::copy $(TargetFileName) "C:\Program Files\Team MediaPortal\MediaPortal\plugins\windows"</PostBuildEvent> + <PostBuildEvent>copy $(TargetFileName) "C:\Program Files\Team MediaPortal\MediaPortal\plugins\windows"</PostBuildEvent> </PropertyGroup> </Project> \ No newline at end of file Modified: trunk/plugins/MyLyrics/My Lyrics/MyLyricsSettings.cs =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/MyLyricsSettings.cs 2007-03-29 16:15:51 UTC (rev 257) +++ trunk/plugins/MyLyrics/My Lyrics/MyLyricsSettings.cs 2007-03-29 20:57:45 UTC (rev 258) @@ -6,6 +6,15 @@ { class MyLyricsSettings { + + internal enum Screen : int + { + LYRICS_BASIC = 0, + LYRICS_WIDE = 1, + LRC_BASIC = 2, + LRC_EDITOR = 3 + } + // Database settings internal static LyricsDatabase LyricsDB = null; internal static LyricsDatabase LyricsMarkedDB = null; Modified: trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.Designer.cs =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.Designer.cs 2007-03-29 16:15:51 UTC (rev 257) +++ trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.Designer.cs 2007-03-29 20:57:45 UTC (rev 258) @@ -32,6 +32,8 @@ this.tabPageLyricsDatabase = new MediaPortal.UserInterface.Controls.MPTabPage(); this.tabPageSetup = new MediaPortal.UserInterface.Controls.MPTabPage(); this.mpGroupBox2 = new MediaPortal.UserInterface.Controls.MPGroupBox(); + this.comboLyricsPage = new MediaPortal.UserInterface.Controls.MPComboBox(); + this.lbLyricsPage = new MediaPortal.UserInterface.Controls.MPLabel(); this.tbPluginName = new MediaPortal.UserInterface.Controls.MPTextBox(); this.lbPluginName = new MediaPortal.UserInterface.Controls.MPLabel(); this.gbLyricSites = new MediaPortal.UserInterface.Controls.MPGroupBox(); @@ -94,8 +96,6 @@ this.btSave = new MediaPortal.UserInterface.Controls.MPButton(); this.btClose = new MediaPortal.UserInterface.Controls.MPButton(); this.bgWorkerSearch = new System.ComponentModel.BackgroundWorker(); - this.lbLyricsPage = new MediaPortal.UserInterface.Controls.MPLabel(); - this.comboLyricsPage = new MediaPortal.UserInterface.Controls.MPComboBox(); this.tabControl.SuspendLayout(); this.tabPageSetup.SuspendLayout(); this.mpGroupBox2.SuspendLayout(); @@ -160,6 +160,30 @@ this.mpGroupBox2.TabStop = false; this.mpGroupBox2.Text = "Basic settings"; // + // comboLyricsPage + // + this.comboLyricsPage.BorderColor = System.Drawing.Color.Empty; + this.comboLyricsPage.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; + this.comboLyricsPage.FormattingEnabled = true; + this.comboLyricsPage.Items.AddRange(new object[] { + "Lyrics page (basic)", + "Lyrics page (wide)", + "LRC page (basic)", + "LRC page (editor)"}); + this.comboLyricsPage.Location = new System.Drawing.Point(96, 58); + this.comboLyricsPage.Name = "comboLyricsPage"; + this.comboLyricsPage.Size = new System.Drawing.Size(144, 21); + this.comboLyricsPage.TabIndex = 16; + // + // lbLyricsPage + // + this.lbLyricsPage.AutoSize = true; + this.lbLyricsPage.Location = new System.Drawing.Point(13, 61); + this.lbLyricsPage.Name = "lbLyricsPage"; + this.lbLyricsPage.Size = new System.Drawing.Size(64, 13); + this.lbLyricsPage.TabIndex = 15; + this.lbLyricsPage.Text = "Lyrics page:"; + // // tbPluginName // this.tbPluginName.BorderColor = System.Drawing.Color.Empty; @@ -821,29 +845,6 @@ this.bgWorkerSearch.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.bgWorkerSearch_RunWorkerCompleted); this.bgWorkerSearch.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.bgWorkerSearch_ProgressChanged); // - // lbLyricsPage - // - this.lbLyricsPage.AutoSize = true; - this.lbLyricsPage.Location = new System.Drawing.Point(13, 61); - this.lbLyricsPage.Name = "lbLyricsPage"; - this.lbLyricsPage.Size = new System.Drawing.Size(64, 13); - this.lbLyricsPage.TabIndex = 15; - this.lbLyricsPage.Text = "Lyrics page:"; - // - // comboLyricsPage - // - this.comboLyricsPage.BorderColor = System.Drawing.Color.Empty; - this.comboLyricsPage.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; - this.comboLyricsPage.FormattingEnabled = true; - this.comboLyricsPage.Items.AddRange(new object[] { - "Basic lyrics page", - "Wide lyrics page", - "LRC creation page"}); - this.comboLyricsPage.Location = new System.Drawing.Point(96, 58); - this.comboLyricsPage.Name = "comboLyricsPage"; - this.comboLyricsPage.Size = new System.Drawing.Size(144, 21); - this.comboLyricsPage.TabIndex = 16; - // // MyLyricsSetup // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); Modified: trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.cs =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.cs 2007-03-29 16:15:51 UTC (rev 257) +++ trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.cs 2007-03-29 20:57:45 UTC (rev 258) @@ -132,21 +132,9 @@ { tbLimit.Text = xmlreader.GetValueAsString("myLyrics", "limit", m_TotalTitles.ToString()); tbPluginName.Text = xmlreader.GetValueAsString("myLyrics", "pluginsName", "My Lyrics"); - - string xmlPage = xmlreader.GetValueAsString("myLyrics", "myLyricsXml", "myLyrics.xml"); - if (xmlPage.Equals("myLyrics.xml")) - { - comboLyricsPage.SelectedIndex = 0; - } - else if (xmlPage.Equals("myLyricsWide.xml")) - { - comboLyricsPage.SelectedIndex = 1; - } - else if (xmlPage.Equals("myLyricsEditor.xml")) - { - comboLyricsPage.SelectedIndex = 2; - } + int xmlScreen = xmlreader.GetValueAsInt("myLyrics", "myLyricsScreen", (int)MyLyricsSettings.Screen.LYRICS_BASIC); + comboLyricsPage.SelectedIndex = xmlScreen; lbSongsLimitNote.Text = ("(You have currently " + m_TotalTitles.ToString() + " titles in your music database)"); @@ -332,21 +320,8 @@ xmlwriter.SetValue("myLyrics", "useSeekLyrics", cbSeekLyrics.Checked.ToString()); xmlwriter.SetValue("myLyrics", "useHotLyrics", cbHotLyrics.Checked.ToString()); - string xmlPage = ""; - if (comboLyricsPage.SelectedIndex == 0) - { - xmlPage = "myLyrics.xml"; - } - else if (comboLyricsPage.SelectedIndex == 1) - { - xmlPage = "myLyricsWide.xml"; - } - else if (comboLyricsPage.SelectedIndex == 2) - { - xmlPage = "myLyricsEditor.xml"; - } - - xmlwriter.SetValue("myLyrics", "myLyricsXml", xmlPage); + int xmlScreen = comboLyricsPage.SelectedIndex; + xmlwriter.SetValue("myLyrics", "myLyricsScreen", xmlScreen); } } Modified: trunk/plugins/MyLyrics/MyLyrics.suo =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |