You can subscribe to this list here.
2007 |
Jan
(36) |
Feb
(79) |
Mar
(123) |
Apr
(95) |
May
(119) |
Jun
(172) |
Jul
(124) |
Aug
(100) |
Sep
(83) |
Oct
(52) |
Nov
(97) |
Dec
(87) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2008 |
Jan
(131) |
Feb
(80) |
Mar
(163) |
Apr
(178) |
May
(73) |
Jun
(54) |
Jul
(106) |
Aug
(118) |
Sep
(50) |
Oct
(125) |
Nov
(100) |
Dec
(99) |
2009 |
Jan
(104) |
Feb
(99) |
Mar
(68) |
Apr
(81) |
May
(52) |
Jun
(87) |
Jul
(67) |
Aug
(33) |
Sep
(27) |
Oct
(37) |
Nov
(60) |
Dec
(116) |
2010 |
Jan
(82) |
Feb
(79) |
Mar
(38) |
Apr
(50) |
May
(45) |
Jun
(53) |
Jul
(23) |
Aug
(86) |
Sep
(22) |
Oct
(96) |
Nov
(97) |
Dec
(73) |
2011 |
Jan
(24) |
Feb
(45) |
Mar
(28) |
Apr
(31) |
May
(42) |
Jun
(25) |
Jul
|
Aug
(12) |
Sep
(28) |
Oct
(13) |
Nov
(43) |
Dec
(13) |
2012 |
Jan
(62) |
Feb
(28) |
Mar
(6) |
Apr
(16) |
May
(7) |
Jun
|
Jul
(16) |
Aug
(2) |
Sep
(1) |
Oct
(4) |
Nov
(1) |
Dec
(3) |
2013 |
Jan
(5) |
Feb
|
Mar
(34) |
Apr
(9) |
May
(6) |
Jun
(10) |
Jul
(32) |
Aug
(8) |
Sep
(11) |
Oct
(35) |
Nov
(24) |
Dec
(22) |
2014 |
Jan
(44) |
Feb
(9) |
Mar
(9) |
Apr
(15) |
May
(25) |
Jun
(34) |
Jul
(16) |
Aug
(11) |
Sep
(7) |
Oct
(6) |
Nov
(1) |
Dec
(12) |
2015 |
Jan
(33) |
Feb
(19) |
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2019 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
(5) |
From: <pat...@us...> - 2007-01-29 23:35:53
|
Revision: 48 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=48&view=rev Author: patrick_sf Date: 2007-01-29 15:35:51 -0800 (Mon, 29 Jan 2007) Log Message: ----------- Updated the digital subchannel code again Modified Paths: -------------- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.cs trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.cs =================================================================== --- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.cs 2007-01-29 21:35:54 UTC (rev 47) +++ trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.cs 2007-01-29 23:35:51 UTC (rev 48) @@ -59,14 +59,18 @@ { if (message.Message == GUIMessage.MessageType.GUI_MSG_TUNE_EXTERNAL_CHANNEL) { + if (message.Label == null) + return; + + string channelString = message.Label; + if (_settings.AllowDigitalSubchannels) { - _serialInterface.TuneToChannel(message.Label); + _serialInterface.TuneToChannel(channelString); } else { - int channelNumber; - channelNumber = Convert.ToInt32(message.Label); + int channelNumber = Convert.ToInt32(channelString); if (channelNumber >= 0 && channelNumber <= 65535) { _serialInterface.TuneToChannel(channelNumber); Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj =================================================================== --- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj 2007-01-29 21:35:54 UTC (rev 47) +++ trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj 2007-01-29 23:35:51 UTC (rev 48) @@ -60,18 +60,18 @@ </ItemGroup> <ItemGroup> <Reference Include="Accessibility" /> - <Reference Include="Core, Version=1.0.2585.19609, Culture=neutral, processorArchitecture=x86"> + <Reference Include="Core, Version=1.0.2546.32606, Culture=neutral, processorArchitecture=x86"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\References-MP-SVN\Core.dll</HintPath> + <HintPath>..\..\..\..\..\References-MP-v0.2.2-Release\Core.DLL</HintPath> </Reference> <Reference Include="System" /> <Reference Include="System.Data" /> <Reference Include="System.Drawing" /> <Reference Include="System.Windows.Forms" /> <Reference Include="System.Xml" /> - <Reference Include="Utils, Version=1.0.2585.19595, Culture=neutral, processorArchitecture=x86"> + <Reference Include="Utils, Version=1.0.2546.32604, Culture=neutral, processorArchitecture=x86"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\References-MP-SVN\Utils.dll</HintPath> + <HintPath>..\..\..\..\..\References-MP-v0.2.2-Release\Utils.DLL</HintPath> </Reference> </ItemGroup> <PropertyGroup> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <moi...@us...> - 2007-01-29 21:35:59
|
Revision: 47 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=47&view=rev Author: moiristo Date: 2007-01-29 13:35:54 -0800 (Mon, 29 Jan 2007) Log Message: ----------- Add IPTV@UT plugin and VideoLAN plugin Added Paths: ----------- trunk/plugins/IPTV@UT/ trunk/plugins/IPTV@UT/IPTV@UT/ trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.Designer.cs trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.cs trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.resx trunk/plugins/IPTV@UT/IPTV@UT/IPTV.cs trunk/plugins/IPTV@UT/IPTV@UT/IPTV@UT.csproj trunk/plugins/IPTV@UT/IPTV@UT/IPTVPlugin.cs trunk/plugins/IPTV@UT/IPTV@UT/PlayListVLCIO.cs trunk/plugins/IPTV@UT/IPTV@UT/PlayListVLCItem.cs trunk/plugins/IPTV@UT/IPTV@UT/Properties/ trunk/plugins/IPTV@UT/IPTV@UT/Properties/AssemblyInfo.cs trunk/plugins/IPTV@UT/IPTV@UT/ShowWaitCursor.cs trunk/plugins/IPTV@UT/IP...@UT...n trunk/plugins/IPTV@UT/IP...@UT...o trunk/plugins/IPTV@UT/[ Default Skin ]/ trunk/plugins/IPTV@UT/[ Default Skin ]/MP_0.2.1/ trunk/plugins/IPTV@UT/[ Default Skin ]/MP_0.2.1/MyIPTV.xml trunk/plugins/IPTV@UT/[ Default Skin ]/MP_0.2.1_SVN/ trunk/plugins/IPTV@UT/[ Default Skin ]/MP_0.2.1_SVN/MyIPTV.xml trunk/plugins/IPTV@UT/[ Project Mayhem 3 ]/ trunk/plugins/IPTV@UT/[ Project Mayhem 3 ]/MyIPTV.xml trunk/plugins/VideoLAN/ trunk/plugins/VideoLAN/ConfigurationForm.cs trunk/plugins/VideoLAN/ConfigurationForm.resx trunk/plugins/VideoLAN/IPlayer.cs trunk/plugins/VideoLAN/InnerVlcWindow.cs trunk/plugins/VideoLAN/InnerVlcWindow.designer.cs trunk/plugins/VideoLAN/InnerVlcWindow.resx trunk/plugins/VideoLAN/NativeLibVlc.cs trunk/plugins/VideoLAN/VideoLanControl.cs trunk/plugins/VideoLAN/VideoLanControl.designer.cs trunk/plugins/VideoLAN/VideoLanControl.resx trunk/plugins/VideoLAN/VideoLanPlugin.cs trunk/plugins/VideoLAN/VideoLanPlugin.cs.bak trunk/plugins/VideoLAN/VlcControl/ trunk/plugins/VideoLAN/VlcControl/IPlayer.cs trunk/plugins/VideoLAN/VlcControl/InnerVlcWindow.Designer.cs trunk/plugins/VideoLAN/VlcControl/InnerVlcWindow.cs trunk/plugins/VideoLAN/VlcControl/NativeLibVlc.cs trunk/plugins/VideoLAN/VlcControl/VLanControl.csproj trunk/plugins/VideoLAN/VlcControl/VlcUserControl.Designer.cs trunk/plugins/VideoLAN/VlcControl/VlcUserControl.cs trunk/plugins/VideoLAN/VlcControl/VlcUserControl.resx trunk/plugins/VideoLAN/VlcUserControl.cs trunk/plugins/VideoLAN/VlcUserControl.designer.cs trunk/plugins/VideoLAN/VlcUserControl.resx Added: trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.Designer.cs =================================================================== --- trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.Designer.cs (rev 0) +++ trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.Designer.cs 2007-01-29 21:35:54 UTC (rev 47) @@ -0,0 +1,152 @@ +namespace MediaPortal.GUI.IPTV +{ + partial class ConfigurationForm + { + /// <summary> + /// Required designer variable. + /// </summary> + private System.ComponentModel.IContainer components = null; + + /// <summary> + /// Clean up any resources being used. + /// </summary> + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() + { + this.textBox1 = new System.Windows.Forms.TextBox(); + this.groupBox1 = new System.Windows.Forms.GroupBox(); + this.button1 = new System.Windows.Forms.Button(); + this.groupBox2 = new System.Windows.Forms.GroupBox(); + this.button2 = new System.Windows.Forms.Button(); + this.textBox2 = new System.Windows.Forms.TextBox(); + this.button3 = new System.Windows.Forms.Button(); + this.button4 = new System.Windows.Forms.Button(); + this.groupBox1.SuspendLayout(); + this.groupBox2.SuspendLayout(); + this.SuspendLayout(); + // + // textBox1 + // + this.textBox1.Location = new System.Drawing.Point(6, 19); + this.textBox1.Name = "textBox1"; + this.textBox1.Size = new System.Drawing.Size(238, 20); + this.textBox1.TabIndex = 0; + // + // groupBox1 + // + this.groupBox1.Controls.Add(this.button1); + this.groupBox1.Controls.Add(this.textBox1); + this.groupBox1.Location = new System.Drawing.Point(12, 12); + this.groupBox1.Name = "groupBox1"; + this.groupBox1.Size = new System.Drawing.Size(302, 47); + this.groupBox1.TabIndex = 1; + this.groupBox1.TabStop = false; + this.groupBox1.Text = "Playlists Folder"; + // + // button1 + // + this.button1.Location = new System.Drawing.Point(250, 19); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(25, 20); + this.button1.TabIndex = 1; + this.button1.Text = "..."; + this.button1.UseVisualStyleBackColor = true; + this.button1.Click += new System.EventHandler(this.button1_Click); + // + // groupBox2 + // + this.groupBox2.Controls.Add(this.button2); + this.groupBox2.Controls.Add(this.textBox2); + this.groupBox2.Location = new System.Drawing.Point(12, 65); + this.groupBox2.Name = "groupBox2"; + this.groupBox2.Size = new System.Drawing.Size(302, 47); + this.groupBox2.TabIndex = 2; + this.groupBox2.TabStop = false; + this.groupBox2.Text = "Default Playlist"; + // + // button2 + // + this.button2.Location = new System.Drawing.Point(250, 18); + this.button2.Name = "button2"; + this.button2.Size = new System.Drawing.Size(25, 20); + this.button2.TabIndex = 2; + this.button2.Text = "..."; + this.button2.UseVisualStyleBackColor = true; + this.button2.Click += new System.EventHandler(this.button2_Click); + // + // textBox2 + // + this.textBox2.Location = new System.Drawing.Point(6, 19); + this.textBox2.Name = "textBox2"; + this.textBox2.Size = new System.Drawing.Size(238, 20); + this.textBox2.TabIndex = 0; + // + // button3 + // + this.button3.Location = new System.Drawing.Point(18, 134); + this.button3.Name = "button3"; + this.button3.Size = new System.Drawing.Size(75, 23); + this.button3.TabIndex = 3; + this.button3.Text = "OK"; + this.button3.UseVisualStyleBackColor = true; + this.button3.Click += new System.EventHandler(this.button3_Click); + // + // button4 + // + this.button4.Location = new System.Drawing.Point(100, 133); + this.button4.Name = "button4"; + this.button4.Size = new System.Drawing.Size(75, 23); + this.button4.TabIndex = 4; + this.button4.Text = "Cancel"; + this.button4.UseVisualStyleBackColor = true; + this.button4.Click += new System.EventHandler(this.button4_Click); + // + // ConfigurationForm + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(364, 169); + this.Controls.Add(this.button4); + this.Controls.Add(this.button3); + this.Controls.Add(this.groupBox2); + this.Controls.Add(this.groupBox1); + this.Name = "ConfigurationForm"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; + this.Text = "IPTV@UT Configuration"; + this.groupBox1.ResumeLayout(false); + this.groupBox1.PerformLayout(); + this.groupBox2.ResumeLayout(false); + this.groupBox2.PerformLayout(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.TextBox textBox1; + private System.Windows.Forms.GroupBox groupBox1; + private System.Windows.Forms.Button button1; + private System.Windows.Forms.GroupBox groupBox2; + private System.Windows.Forms.Button button2; + private System.Windows.Forms.TextBox textBox2; + private System.Windows.Forms.OpenFileDialog openFileDialog1; + private System.Windows.Forms.FolderBrowserDialog folderBrowserDialog1; + private System.Windows.Forms.Button button3; + private System.Windows.Forms.Button button4; + } +} \ No newline at end of file Property changes on: trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.Designer.cs ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.cs =================================================================== --- trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.cs (rev 0) +++ trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.cs 2007-01-29 21:35:54 UTC (rev 47) @@ -0,0 +1,67 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.IO; +using System.Data; +using System.Drawing; +using System.Text; +using System.Windows.Forms; +using MediaPortal.GUI.Library; +using MediaPortal.Util; + +namespace MediaPortal.GUI.IPTV +{ + public partial class ConfigurationForm : Form + { + public ConfigurationForm() + { + InitializeComponent(); + textBox1.Text = IPTV.GetPlayListDir(); + textBox2.Text = IPTV.GetDefaultPlayList(); + } + + // Path + private void button1_Click(object sender, EventArgs e) + { + folderBrowserDialog1 = new System.Windows.Forms.FolderBrowserDialog(); + folderBrowserDialog1.SelectedPath = textBox1.Text; + if (folderBrowserDialog1.ShowDialog() == DialogResult.OK) + { + //folderBrowserDialog1.SelectedPath + textBox1.Text = folderBrowserDialog1.SelectedPath; + } + } + + // File + private void button2_Click(object sender, EventArgs e) + { + openFileDialog1 = new System.Windows.Forms.OpenFileDialog(); + openFileDialog1.Filter = "VLC Playlists (*.vlc)|*.vlc|M3U Playlists (*.m3u)|*.m3u"; + openFileDialog1.FileName = textBox2.Text; + if (!textBox1.Text.Equals("")) openFileDialog1.InitialDirectory = textBox1.Text; + if (openFileDialog1.ShowDialog() == DialogResult.OK) + { + //openFileDialog1.FileName + textBox2.Text = openFileDialog1.FileName; + } + } + + private void button4_Click(object sender, EventArgs e) + { + //Cancel Button + this.Dispose(true); + } + + private void button3_Click(object sender, EventArgs e) + { + //OK Button + string dir = Directory.GetCurrentDirectory(); + using (MediaPortal.Profile.Settings writer = new MediaPortal.Profile.Settings(dir + @"\MyIPTV.xml")) + { + writer.SetValue("settings", "PlayListDir", textBox1.Text.Trim()); + writer.SetValue("settings", "DefaultPlayList", textBox2.Text.Trim()); + } + this.Dispose(true); + } + } +} \ No newline at end of file Property changes on: trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.cs ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.resx =================================================================== --- trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.resx (rev 0) +++ trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.resx 2007-01-29 21:35:54 UTC (rev 47) @@ -0,0 +1,120 @@ +<?xml version="1.0" encoding="utf-8"?> +<root> + <!-- + Microsoft ResX Schema + + Version 2.0 + + The primary goals of this format is to allow a simple XML format + that is mostly human readable. The generation and parsing of the + various data types are done through the TypeConverter classes + associated with the data types. + + Example: + + ... ado.net/XML headers & schema ... + <resheader name="resmimetype">text/microsoft-resx</resheader> + <resheader name="version">2.0</resheader> + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> + <value>[base64 mime encoded serialized .NET Framework object]</value> + </data> + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> + <comment>This is a comment</comment> + </data> + + There are any number of "resheader" rows that contain simple + name/value pairs. + + Each data row contains a name, and value. The row also contains a + type or mimetype. Type corresponds to a .NET class that support + text/value conversion through the TypeConverter architecture. + Classes that don't support this are serialized and stored with the + mimetype set. + + The mimetype is used for serialized objects, and tells the + ResXResourceReader how to depersist the object. This is currently not + extensible. For a given mimetype the value must be set accordingly: + + Note - application/x-microsoft.net.object.binary.base64 is the format + that the ResXResourceWriter will generate, however the reader can + read any of the formats listed below. + + mimetype: application/x-microsoft.net.object.binary.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.soap.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> + <xsd:element name="root" msdata:IsDataSet="true"> + <xsd:complexType> + <xsd:choice maxOccurs="unbounded"> + <xsd:element name="metadata"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" /> + </xsd:sequence> + <xsd:attribute name="name" use="required" type="xsd:string" /> + <xsd:attribute name="type" type="xsd:string" /> + <xsd:attribute name="mimetype" type="xsd:string" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="assembly"> + <xsd:complexType> + <xsd:attribute name="alias" type="xsd:string" /> + <xsd:attribute name="name" type="xsd:string" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="data"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="resheader"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" /> + </xsd:complexType> + </xsd:element> + </xsd:choice> + </xsd:complexType> + </xsd:element> + </xsd:schema> + <resheader name="resmimetype"> + <value>text/microsoft-resx</value> + </resheader> + <resheader name="version"> + <value>2.0</value> + </resheader> + <resheader name="reader"> + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <resheader name="writer"> + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> +</root> \ No newline at end of file Property changes on: trunk/plugins/IPTV@UT/IPTV@UT/ConfigurationForm.resx ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/IPTV@UT/IPTV@UT/IPTV.cs =================================================================== --- trunk/plugins/IPTV@UT/IPTV@UT/IPTV.cs (rev 0) +++ trunk/plugins/IPTV@UT/IPTV@UT/IPTV.cs 2007-01-29 21:35:54 UTC (rev 47) @@ -0,0 +1,273 @@ +using MediaPortal.GUI.Library; +using MediaPortal.Player; +using MediaPortal.Util; +using MediaPortal.Dialogs; +using MediaPortal.Playlists; +using MediaPortal.VideoLanPlugin; +using System.Drawing; +using System.IO; + +namespace MediaPortal.GUI.IPTV +{ + public class IPTV : GUIWindow + { + #region SkinControlAttributes + [SkinControlAttribute(2)] + protected GUIButtonControl btnLoad = null; + [SkinControlAttribute(99)] + protected GUIVideoControl videoWindow = null; + #endregion + + private static PlayList playlist = new PlayList(); + private static int currentChannel = 0; + private static PlayListVLCIO plvi = new PlayListVLCIO(); + private static VirtualDirectory plDirectory = new VirtualDirectory(); + private static string playListPath; + private static OnActionHandler ah; + private static bool inited = false; + + public override int GetID + { + get + { + return 7500; + } + set + { + base.GetID = value; + } + } + + public override bool Init() + { + bool result = Load(GUIGraphicsContext.Skin + @"\MyIPTV.xml"); + + playListPath = GetPlayListDir(); + if (playListPath.Equals("")) playListPath = Directory.GetCurrentDirectory(); + + plDirectory.AddExtension(".vlc"); + plDirectory.AddExtension(".m3u"); + plDirectory.ShowFilesWithoutExtension = false; + + Share share = new Share(); + share.Name = "Playlists"; + share.Path = playListPath; + plDirectory.IsRootShare(playListPath); + + if(ah == null) ah = new OnActionHandler(OnAction2); + + return result; + } + + public void OnAction2(Action action) + { + if (GUIWindowManager.ActiveWindowEx == (int) GUIWindow.Window.WINDOW_DIALOG_MENU) return; + + switch (action.wID) + { + case Action.ActionType.ACTION_PREV_CHANNEL: + IPTV.OnPreviousChannel(); + break; + case Action.ActionType.ACTION_PAGE_DOWN: + IPTV.OnPreviousChannel(); + break; + + case Action.ActionType.ACTION_NEXT_CHANNEL: + IPTV.OnNextChannel(); + break; + case Action.ActionType.ACTION_PAGE_UP: + IPTV.OnNextChannel(); + break; + case Action.ActionType.ACTION_PLAY: + Play(currentChannel); + break; + case Action.ActionType.ACTION_KEY_PRESSED: + switch (action.m_key.KeyChar) + { + case '1': + if (playlist.Count > 0) currentChannel = 0; + Play(currentChannel); + break; + case '2': + if (playlist.Count > 1) currentChannel = 1; + Play(currentChannel); + break; + case '3': + if (playlist.Count > 2) currentChannel = 2; + Play(currentChannel); + break; + case '4': + if (playlist.Count > 3) currentChannel = 3; + Play(currentChannel); + break; + case '5': + if (playlist.Count > 4) currentChannel = 4; + Play(currentChannel); + break; + case '6': + if (playlist.Count > 5) currentChannel = 5; + Play(currentChannel); + break; + case '7': + if (playlist.Count > 6) currentChannel = 6; + Play(currentChannel); + break; + case '8': + if (playlist.Count > 7) currentChannel = 7; + Play(currentChannel); + break; + case '9': + if (playlist.Count > 8) currentChannel = 8; + Play(currentChannel); + break; + } + break; + } + } + + public override void OnAction(Action action) + { + base.OnAction(action); + } + + private static void OnNextChannel() + { + if (currentChannel + 1 < playlist.Count) Play(++currentChannel); + } + + private static void OnPreviousChannel() + { + if (currentChannel > 0 && currentChannel - 1 < playlist.Count) Play(--currentChannel); + } + + protected override void OnClicked(int controlId, GUIControl control, Action.ActionType actionType) + { + if (control == btnLoad) + { + if (g_Player.Playing) g_Player.Stop(); + GUIDialogSelect diag = (GUIDialogSelect)GUIWindowManager.GetWindow((int)GUIWindow.Window.WINDOW_DIALOG_SELECT); + diag.SetHeading("Choose Playlist"); + diag.Reset(); + foreach (GUIListItem item in plDirectory.GetDirectory(playListPath)) + { + if(!item.IsFolder) diag.Add(item.Label); + } + diag.EnableButton(true); + diag.SetButtonLabel("Load Playlist"); + diag.DoModal(GUIWindowManager.ActiveWindow); + + // and wait till user selects one, then load it immediately + string selected = diag.SelectedLabelText; + + if(File.Exists(playListPath + @"\" + selected + ".vlc")) + LoadAndPlay(playListPath + @"\" + selected + ".vlc"); + else LoadAndPlay(playListPath + @"\" + selected + ".m3u"); + } + + base.OnClicked(controlId, control, actionType); + } + + public override bool OnMessage(GUIMessage message) + { + return base.OnMessage(message); + } + + + protected override void OnPageLoad() + { + base.OnPageLoad(); + + GUIGraphicsContext.OnNewAction -= ah; + GUIGraphicsContext.OnNewAction += ah; + + //set video window position + if (videoWindow != null) + { + GUIGraphicsContext.VideoWindow = new Rectangle(videoWindow.XPosition, videoWindow.YPosition, videoWindow.Width, videoWindow.Height); + } + + if (!inited) + { + GUIPropertyManager.SetProperty("#IPTV.View.channel", ""); + // Read a playlist, if configured, and start playing it + LoadAndPlay(GetDefaultPlayList()); + + inited = true; + } + + } + + protected override void OnPageDestroy(int new_windowId) + { + if (new_windowId != (int)GUIWindow.Window.WINDOW_FULLSCREEN_VIDEO) GUIGraphicsContext.OnNewAction -= ah; + base.OnPageDestroy(new_windowId); + } + + protected override void OnShowContextMenu() + { + if (playlist.Count == 0) return; + + GUIDialogMenu menu = (GUIDialogMenu)GUIWindowManager.GetWindow((int)GUIWindow.Window.WINDOW_DIALOG_MENU); + menu.Reset(); + + menu.SetHeading("Channel List"); + foreach (PlayListItem item in playlist) + menu.Add(item.Description); + if (menu.SelectedId == -1) return; + else + { + currentChannel = menu.SelectedId - 1; + Play(currentChannel); + } + + base.OnShowContextMenu(); + } + + protected void LoadAndPlay(string plFile) + { + GUIPropertyManager.SetProperty("#IPTV.View.channel", ""); + if(plFile.Equals("")) return; + + playlist.Clear(); + bool result = plvi.Load(playlist, plFile); + if (result) + { + if (currentChannel < playlist.Count) Play(currentChannel); + else if (playlist.Count > 0) Play(0); + } + } + + public static string GetDefaultPlayList() + { + string plFile; + string dir = Directory.GetCurrentDirectory(); + using (MediaPortal.Profile.Settings reader = new MediaPortal.Profile.Settings(dir + @"\MyIPTV.xml")) + { + plFile = reader.GetValueAsString("settings", "DefaultPlayList", ""); + } + return plFile; + } + + public static string GetPlayListDir() + { + string plDir; + string dir = Directory.GetCurrentDirectory(); + using (MediaPortal.Profile.Settings reader = new MediaPortal.Profile.Settings(dir + @"\MyIPTV.xml")) + { + plDir = reader.GetValueAsString("settings", "PlayListDir", ""); + } + return plDir; + } + + public static void Play(int plIndex) + { + if (plIndex > playlist.Count) return; + + PlayListItem item = playlist[plIndex]; + Log.Info("MyIPTV: Trying to play channel '" + item.Description + "' (" + item.FileName + ")."); + GUIGraphicsContext.IsFullScreenVideo = false; + g_Player.Play(item.FileName); + GUIPropertyManager.SetProperty("#IPTV.View.channel", item.Description); + } + } +} \ No newline at end of file Property changes on: trunk/plugins/IPTV@UT/IPTV@UT/IPTV.cs ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/IPTV@UT/IPTV@UT/IPTV@UT.csproj =================================================================== --- trunk/plugins/IPTV@UT/IPTV@UT/IPTV@UT.csproj (rev 0) +++ trunk/plugins/IPTV@UT/IPTV@UT/IPTV@UT.csproj 2007-01-29 21:35:54 UTC (rev 47) @@ -0,0 +1,78 @@ +<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <PropertyGroup> + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> + <ProductVersion>8.0.50727</ProductVersion> + <SchemaVersion>2.0</SchemaVersion> + <ProjectGuid>{FB58017D-6946-49EB-A0B7-F446BCA01A72}</ProjectGuid> + <OutputType>Library</OutputType> + <AppDesignerFolder>Properties</AppDesignerFolder> + <RootNamespace>MediaPortal.GUI.IPTV</RootNamespace> + <AssemblyName>IPTV</AssemblyName> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' "> + <DebugSymbols>true</DebugSymbols> + <DebugType>full</DebugType> + <Optimize>false</Optimize> + <OutputPath>bin\Debug\</OutputPath> + <DefineConstants>DEBUG;TRACE</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + </PropertyGroup> + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> + <DebugType>pdbonly</DebugType> + <Optimize>true</Optimize> + <OutputPath>bin\Release\</OutputPath> + <DefineConstants>TRACE</DefineConstants> + <ErrorReport>prompt</ErrorReport> + <WarningLevel>4</WarningLevel> + </PropertyGroup> + <ItemGroup> + <Reference Include="Core, Version=1.0.2524.28381, Culture=neutral, processorArchitecture=MSIL"> + <SpecificVersion>False</SpecificVersion> + <HintPath>..\..\trunk\mediaportal\xbmc\bin\Release\Core.dll</HintPath> + </Reference> + <Reference Include="Dialogs, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL"> + <SpecificVersion>False</SpecificVersion> + <HintPath>..\..\trunk\mediaportal\Dialogs\bin\Release\Dialogs.dll</HintPath> + </Reference> + <Reference Include="ExternalPlayers, Version=1.0.2543.36238, Culture=neutral, processorArchitecture=MSIL"> + <SpecificVersion>False</SpecificVersion> + <HintPath>..\..\trunk\mediaportal\ExternalPlayers\bin\Release\ExternalPlayers.dll</HintPath> + </Reference> + <Reference Include="System" /> + <Reference Include="System.Data" /> + <Reference Include="System.DirectoryServices" /> + <Reference Include="System.Drawing" /> + <Reference Include="System.Windows.Forms" /> + <Reference Include="System.Xml" /> + </ItemGroup> + <ItemGroup> + <Compile Include="ConfigurationForm.cs"> + <SubType>Form</SubType> + </Compile> + <Compile Include="ConfigurationForm.Designer.cs"> + <DependentUpon>ConfigurationForm.cs</DependentUpon> + </Compile> + <Compile Include="IPTV.cs" /> + <Compile Include="PlayListVLCIO.cs" /> + <Compile Include="PlayListVLCItem.cs" /> + <Compile Include="Properties\AssemblyInfo.cs" /> + <Compile Include="ShowWaitCursor.cs" /> + <Compile Include="IPTVPlugin.cs" /> + </ItemGroup> + <ItemGroup> + <EmbeddedResource Include="ConfigurationForm.resx"> + <SubType>Designer</SubType> + <DependentUpon>ConfigurationForm.cs</DependentUpon> + </EmbeddedResource> + </ItemGroup> + <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> + <!-- To modify your build process, add your task inside one of the targets below and uncomment it. + Other similar extension points exist, see Microsoft.Common.targets. + <Target Name="BeforeBuild"> + </Target> + <Target Name="AfterBuild"> + </Target> + --> +</Project> \ No newline at end of file Property changes on: trunk/plugins/IPTV@UT/IPTV@UT/IPTV@UT.csproj ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/IPTV@UT/IPTV@UT/IPTVPlugin.cs =================================================================== --- trunk/plugins/IPTV@UT/IPTV@UT/IPTVPlugin.cs (rev 0) +++ trunk/plugins/IPTV@UT/IPTV@UT/IPTVPlugin.cs 2007-01-29 21:35:54 UTC (rev 47) @@ -0,0 +1,120 @@ +#region Copyright (C) 2005-2006 Team MediaPortal + +/* + * Copyright (C) 2005-2006 Team MediaPortal + * http://www.team-mediaportal.com + * + * This Program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This Program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with GNU Make; see the file COPYING. If not, write to + * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. + * http://www.gnu.org/copyleft/gpl.html + * + */ + +#endregion + +using System; +using System.ComponentModel; +using System.Windows.Forms; +using System.Net; + +using MediaPortal.GUI.Library; + +namespace MediaPortal.GUI.IPTV +{ + public class IPTVPlugin : ISetupForm, IShowPlugin + { + // Returns the name of the plugin which is shown in the plugin menu + public string PluginName() + { + return "My IPTV"; + } + + // Returns the description of the plugin is shown in the plugin menu + public string Description() + { + return "View digital TV channels from an M3U playlist (uses VideoLan external player)"; + } + + // Returns the author of the plugin which is shown in the plugin menu + public string Author() + { + return "Moiristo"; + } + + // show the setup dialog + public void ShowPlugin() + { + ConfigurationForm form = new ConfigurationForm(); + form.ShowDialog(); + } + + // Indicates whether plugin can be enabled/disabled + public bool CanEnable() + { + return true; + } + + // get ID of windowplugin belonging to this setup + public int GetWindowId() + { + return 7500; + } + + // Indicates if plugin is enabled by default; + public bool DefaultEnabled() + { + return true; + } + // indicates if a plugin has its own setup screen + public bool HasSetup() + { + return true; + } + + /// <summary> + /// If the plugin should have its own button on the main menu of Mediaportal then it + /// should return true to this method, otherwise if it should not be on home + /// it should return false + /// </summary> + /// <param name="strButtonText">text the button should have</param> + /// <param name="strButtonImage">image for the button, or empty for default</param> + /// <param name="strButtonImageFocus">image for the button, or empty for default</param> + /// <param name="strPictureImage">subpicture for the button or empty for none</param> + /// <returns>true : plugin needs its own button on home + /// false : plugin does not need its own button on home</returns> + public bool GetHome(out string strButtonText, out string strButtonImage, out string strButtonImageFocus, out string strPictureImage) + { + string buttonText = GUIPropertyManager.GetProperty("#name"); + if (buttonText.Equals("")) buttonText = PluginName(); + + strButtonText = buttonText; + strButtonImage = String.Empty; + strButtonImageFocus = String.Empty; + strPictureImage = "hover_my tv.png"; + return true; + } + + #region IShowPlugin Members + + public bool ShowDefaultHome() + { + return true; + } + + #endregion + + } +} + + Property changes on: trunk/plugins/IPTV@UT/IPTV@UT/IPTVPlugin.cs ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/IPTV@UT/IPTV@UT/PlayListVLCIO.cs =================================================================== --- trunk/plugins/IPTV@UT/IPTV@UT/PlayListVLCIO.cs (rev 0) +++ trunk/plugins/IPTV@UT/IPTV@UT/PlayListVLCIO.cs 2007-01-29 21:35:54 UTC (rev 47) @@ -0,0 +1,176 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.IO; +using MediaPortal.Util; +using MediaPortal.Playlists; +using MediaPortal.GUI.Library; + +namespace MediaPortal.GUI.IPTV +{ + public class PlayListVLCIO : IPlayListIO + { + const string M3U_START_MARKER = "#EXTM3U"; + const string M3U_INFO_MARKER = "#EXTINF"; + const string M3U_COMMENT_MARKER = "##"; + const string VLC_OPT_MARKER = "#EXTVLCOPT"; + + public PlayList playlist; + private StreamReader file; + private string basePath; + + public PlayListVLCIO() + { + } + + public bool Load(PlayList incomingPlaylist, string playlistFileName) + { + Log.Info("MyIPTV: Loading " + playlistFileName); + if (playlistFileName == null) + return false; + playlist = incomingPlaylist; + playlist.Clear(); + + try + { + playlist.Name = Path.GetFileName(playlistFileName); + basePath = Path.GetDirectoryName(Path.GetFullPath(playlistFileName)); + + using (file = new StreamReader(playlistFileName)) + { + if (file == null) + return false; + + string line = file.ReadLine(); + if (line == null || line.Length == 0) + return false; + + string trimmedLine = line.Trim(); + + if (trimmedLine != M3U_START_MARKER) + { + //This is probably not a valid M3u file + return false; + } + + Boolean parseChannel = false; + PlayListVLCItem currentItem = null; + while ((line = file.ReadLine()) != null) + { + trimmedLine = line.Trim(); + + if (trimmedLine.StartsWith(M3U_COMMENT_MARKER) || trimmedLine.Equals("")) + { + //Just ignore this + } + else if (trimmedLine.StartsWith(M3U_INFO_MARKER)) + { + parseChannel = true; + string channelName = null; + int lDuration = 0; + + if (ExtractM3uInfo(trimmedLine, ref channelName, ref lDuration)) + { + currentItem = new PlayListVLCItem(channelName, lDuration); + currentItem.Type = PlayListItem.PlayListItemType.VideoStream; + } + } + else if (trimmedLine.StartsWith(VLC_OPT_MARKER)) + { + if (!parseChannel || currentItem == null) + { + //No EXTINF tag found, give default name + parseChannel = true; + currentItem = new PlayListVLCItem("Stream " + playlist.Count, -1); + currentItem.Type = PlayListItem.PlayListItemType.VideoStream; + } + + string option = null; + if (ExtractVLCInfo(trimmedLine, ref option)) + { + currentItem.AddOption(option); + } + } + else + { + //Stream found? + if (!parseChannel || currentItem == null) + { + //No EXTINF tag or EXTVLCOPT found, give default name & no parameters + currentItem = new PlayListVLCItem("Stream " + playlist.Count, -1); + currentItem.Type = PlayListItem.PlayListItemType.VideoStream; + } + + //(TODO: Validate that this really is stream data and not some rubbish) + //Filename = StreamName in this case + currentItem.FileName = trimmedLine; + + //Add it to the playlist + playlist.Add(currentItem); + + //Finally, tell that we just ended parsing a channel + parseChannel = false; + } + } + } + } + catch (Exception ex) + { + Log.Info("MyIPTV: Exception loading playlist {0} err:{1} stack:{2}", playlistFileName, ex.Message, ex.StackTrace); + return false; + } + return true; + } + + private static bool ExtractM3uInfo(string trimmedLine, ref string channelName, ref int lDuration) + { + //bool successfull; + int iColon = (int)trimmedLine.IndexOf(":"); + int iComma = (int)trimmedLine.IndexOf(","); + if (iColon >= 0 && iComma >= 0 && iComma > iColon) + { + iColon++; + string duration = trimmedLine.Substring(iColon, iComma - iColon); + iComma++; + channelName = trimmedLine.Substring(iComma); + lDuration = System.Int32.Parse(duration); + return true; + } + return false; + } + + private static bool ExtractVLCInfo(string trimmedLine, ref string option) + { + //bool successfull; + int iColon = (int)trimmedLine.IndexOf(":"); + if (iColon >= 0) + { + iColon++; + option = trimmedLine.Substring(iColon); + return true; + } + return false; + } + + public void Save(PlayList playlist, string fileName) + { + try + { + using (StreamWriter writer = new StreamWriter(fileName, false)) + { + writer.WriteLine(M3U_START_MARKER); + + foreach (PlayListItem item in playlist) + { + writer.WriteLine("{0}:{1},{2}", M3U_INFO_MARKER, item.Duration, item.Description); + writer.WriteLine("{0}", item.FileName); + } + } + } + catch (Exception e) + { + Log.Info("MyIPTV: Failed to save a playlist {0}. err: {1} stack: {2}", fileName, e.Message, e.StackTrace); + } + } + } +} Property changes on: trunk/plugins/IPTV@UT/IPTV@UT/PlayListVLCIO.cs ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/IPTV@UT/IPTV@UT/PlayListVLCItem.cs =================================================================== --- trunk/plugins/IPTV@UT/IPTV@UT/PlayListVLCItem.cs (rev 0) +++ trunk/plugins/IPTV@UT/IPTV@UT/PlayListVLCItem.cs 2007-01-29 21:35:54 UTC (rev 47) @@ -0,0 +1,37 @@ +using System; +using System.Collections.Generic; +using System.Text; +using MediaPortal.Playlists; + +namespace MediaPortal.GUI.IPTV +{ + class PlayListVLCItem : PlayListItem + { + protected List<string> _options = new List<string>(); + + public PlayListVLCItem(string description, int duration) + { + if (description == null) + return; + _description = description; + _duration = duration; + } + + public List<string> Options + { + get { return _options; } + set + { + if (value == null) + return; + _options = value; + } + } + + public void AddOption(string option) + { + Options.Add(option); + } + + } +} Property changes on: trunk/plugins/IPTV@UT/IPTV@UT/PlayListVLCItem.cs ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/IPTV@UT/IPTV@UT/Properties/AssemblyInfo.cs =================================================================== --- trunk/plugins/IPTV@UT/IPTV@UT/Properties/AssemblyInfo.cs (rev 0) +++ trunk/plugins/IPTV@UT/IPTV@UT/Properties/AssemblyInfo.cs 2007-01-29 21:35:54 UTC (rev 47) @@ -0,0 +1,35 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("IPTV")] +[assembly: AssemblyDescription("IPTV plugin (using VLC) for MediaPortal")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("UT")] +[assembly: AssemblyProduct("IPTV")] +[assembly: AssemblyCopyright("Copyright © UT 2006")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("c1930e93-c8e6-486d-bde0-a6faf4753e69")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] Property changes on: trunk/plugins/IPTV@UT/IPTV@UT/Properties/AssemblyInfo.cs ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/IPTV@UT/IPTV@UT/ShowWaitCursor.cs =================================================================== --- trunk/plugins/IPTV@UT/IPTV@UT/ShowWaitCursor.cs (rev 0) +++ trunk/plugins/IPTV@UT/IPTV@UT/ShowWaitCursor.cs 2007-01-29 21:35:54 UTC (rev 47) @@ -0,0 +1,139 @@ +using System; +using System.IO; +using System.Net; +using System.Collections.Generic; +using System.ComponentModel; +using System.Text; +using System.Threading; +using MediaPortal.Dialogs; +using MediaPortal.GUI.Library; + +namespace MediaPortal.GUI.IPTV +{ + public class ShowWaitCursor + { + private string result = String.Empty; + private string workUrl = String.Empty; + private bool _workerCompleted = true; + private bool Cookies = false; + private string agent = "Mozilla/4.0 (compatible; MSIE 6.0; WindowsNT 5.0; .NET CLR 1 .1.4322)"; + private string postType = "application/x-www-form-urlencoded"; + private string secondUrl = String.Empty; + private HttpWebRequest firstRequest = null; + private HttpWebResponse firstResponse = null; + private Stream recstream = null; + + public string GetUrl(string url) + { + workUrl = url; + + if (_workerCompleted) + { + _workerCompleted = false; + + BackgroundWorker worker = new BackgroundWorker(); + + worker.DoWork += new DoWorkEventHandler(DownloadWorker); + worker.RunWorkerAsync(url); + + using (WaitCursor cursor = new WaitCursor()) + { + while (_workerCompleted == false) + GUIWindowManager.Process(); + } + } + return result; + } + + public string GetUrl(string url, bool useCookies) + { + Cookies = useCookies; + secondUrl = url; + + if (_workerCompleted) + { + _workerCompleted = false; + + BackgroundWorker worker = new BackgroundWorker(); + + worker.DoWork += new DoWorkEventHandler(DownloadWorker); + worker.RunWorkerAsync(url); + + using (WaitCursor cursor = new WaitCursor()) + { + while (_workerCompleted == false) + GUIWindowManager.Process(); + } + } + return result; + } + + public void DownloadWorker(object sender, DoWorkEventArgs e) + { + if (Cookies==false) + { + firstRequest = (HttpWebRequest)WebRequest.Create(workUrl); + firstRequest.UserAgent = agent; + firstRequest.ContentType = postType; + firstRequest.CookieContainer = new CookieContainer(); + firstResponse = (HttpWebResponse) + firstRequest.GetResponse(); + recstream = firstResponse.GetResponseStream(); + } + if (Cookies == true) + { + HttpWebRequest secondRequest = (HttpWebRequest)WebRequest.Create(secondUrl); + secondRequest.UserAgent = agent; + secondRequest.ContentType = postType; + secondRequest.CookieContainer = new CookieContainer(); + CookieCollection cookies = firstResponse.Cookies; + secondRequest.CookieContainer.Add(cookies); + + HttpWebResponse secondResponse = (HttpWebResponse)secondRequest.GetResponse(); + recstream = secondResponse.GetResponseStream(); + //secondResponse.Close(); + } + StringBuilder sb = new StringBuilder(); + + byte[] buf = new byte[8192]; + + string tempstring = null; + int count = 0; + + do + { + count = recstream.Read(buf, 0, buf.Length); + if (count != 0) + { + tempstring = Encoding.UTF8.GetString(buf, 0, count); + sb.Append(tempstring); + } + } + while (count > 0); + + result = sb.ToString(); + Cookies = false; + //recstream.Close(); + + _workerCompleted = true; + } + + public string DownloadImage(string url) + { + try + { + WebClient wc = new WebClient(); + string filename = url.Substring(url.LastIndexOf("/") + 1); + wc.DownloadFile(url, @"thumbs\MPTemp-" + filename); + while (System.IO.File.Exists(@"thumbs\MPTemp-" + filename) != true) + GUIWindowManager.Process(); + return @"thumbs\MPTemp-" + filename; + } + catch (Exception) + { + return string.Empty; + } + } + + } +} Property changes on: trunk/plugins/IPTV@UT/IPTV@UT/ShowWaitCursor.cs ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/IPTV@UT/IP...@UT...n =================================================================== --- trunk/plugins/IPTV@UT/IP...@UT...n (rev 0) +++ trunk/plugins/IPTV@UT/IP...@UT...n 2007-01-29 21:35:54 UTC (rev 47) @@ -0,0 +1,20 @@ + +Microsoft Visual Studio Solution File, Format Version 9.00 +# Visual Studio 2005 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IPTV@UT", "IPTV@UT\IPTV@UT.csproj", "{FB58017D-6946-49EB-A0B7-F446BCA01A72}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {FB58017D-6946-49EB-A0B7-F446BCA01A72}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {FB58017D-6946-49EB-A0B7-F446BCA01A72}.Debug|Any CPU.Build.0 = Debug|Any CPU + {FB58017D-6946-49EB-A0B7-F446BCA01A72}.Release|Any CPU.ActiveCfg = Release|Any CPU + {FB58017D-6946-49EB-A0B7-F446BCA01A72}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal Property changes on: trunk/plugins/IPTV@UT/IP...@UT...n ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/IPTV@UT/IP...@UT...o =================================================================== (Binary files differ) Property changes on: trunk/plugins/IPTV@UT/IP...@UT...o ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/IPTV@UT/[ Default Skin ]/MP_0.2.1/MyIPTV.xml =================================================================== --- trunk/plugins/IPTV@UT/[ Default Skin ]/MP_0.2.1/MyIPTV.xml (rev 0) +++ trunk/plugins/IPTV@UT/[ Default Skin ]/MP_0.2.1/MyIPTV.xml 2007-01-29 21:35:54 UTC (rev 47) @@ -0,0 +1,89 @@ +<window> + <id>7500</id> + + <defaultcontrol>2</defaultcontrol> + + <allowoverlay>no</allowoverlay> + + <define>#header.label:My IPTV</define> + <define>#header.image:</define> + <define>#header.hover:hover_my tv.png</define> + + <controls> + <import>common.window.xml</import> + + <control> + <type>group</type> + <layout>StackLayout</layout> + <description>group element</description> + + <posX>60</posX> + <posY>97</posY> + <control> + <description>Load Playlist button</description> + <type>button</type> + <id>2</id> + <label>Load...</label> + <onup>17</onup> + <ondown>3</ondown> + <onright>99</onright> + </control> + </control> + + <control> + <description>TV background</description> + + <type>image</type> + + <id>1</id> + + <posX>281</posX> + + <posY>87</posY> + + <width>396</width> + + <height>335</height> + + <texture>tv_background.png</texture> + </control> + + <control> + <description>video window</description> + + <type>videowindow</type> + + <id>99</id> + + <posX>300</posX> + + <posY>107</posY> + + <width>350</width> + + <height>260</height> + + <onleft>2</onleft> + + <onright>2</onright> + + <action>18</action> + + <textureFocus>tv_green_border.png</textureFocus> + </control> + + <control> + <description>Current Channelname</description> + <type>fadelabel</type> + <id>13</id> + <posX>300</posX> + <posY>435</posY> + <width>350</width> + <label>#IPTV.View.channel</label> + <font>font13</font> + <align>center</align> + <textcolor>white</textcolor> + + </control> + </controls> +</window> \ No newline at end of file Property changes on: trunk/plugins/IPTV@UT/[ Default Skin ]/MP_0.2.1/MyIPTV.xml ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/IPTV@UT/[ Default Skin ]/MP_0.2.1_SVN/MyIPTV.xml =================================================================== --- trunk/plugins/IPTV@UT/[ Default Skin ]/MP_0.2.1_SVN/MyIPTV.xml (rev 0) +++ trunk/plugins/IPTV@UT/[ Default Skin ]/MP_0.2.1_SVN/MyIPTV.xml 2007-01-29 21:35:54 UTC (rev 47) @@ -0,0 +1,97 @@ +<window> + <id>7500</id> + + <defaultcontrol>2</defaultcontrol> + + <allowoverlay>no</allowoverlay> + + <define>#header.label:My IPTV</define> + <define>#header.image:</define> + <define>#header.hover:hover_my tv.png</define> + + <controls> + <import>common.window.xml</import> + + <control> + <type>group</type> + <animation effect="fade" time="250">WindowOpen</animation> + <animation effect="fade" time="500">WindowClose</animation> + <animation effect="slide" time="250" start="-300,0">WindowOpen</animation> + <animation effect="slide" time="500" end="0,-300" >WindowClose</animation> + <layout>StackLayout</layout> + <description>group element</description> + + <posX>60</posX> + <posY>97</posY> + <control> + <description>Load Playlist button</description> + <type>button</type> + <id>2</id> + <label>Load...</label> + <onup>17</onup> + <ondown>3</ondown> + <onright>99</onright> + </control> + </control> + + <control> + <description>TV background</description> + + <type>image</type> + + <id>1</id> + + <posX>281</posX> + + <posY>87</posY> + + <width>396</width> + + <height>335</height> + + <texture>tv_background.png</texture> + <animation effect="fade" time="250">WindowOpen</animation> + <animation effect="fade" time="500">WindowClose</animation> + </control> + + <control> + <description>video window</description> + + <type>videowindow</type> + + <id>99</id> + + <posX>300</posX> + + <posY>107</posY> + + <width>350</width> + + <height>260</height> + + <onleft>2</onleft> + + <onright>2</onright> + + <action>18</action> + + <textureFocus>tv_green_border.png</textureFocus> + <animation effect="fade" time="250">WindowOpen</animation> + <animation effect="fade" time="500">WindowClose</animation> + </control> + + <control> + <description>Current Channelname</description> + <type>fadelabel</type> + <id>13</id> + <posX>300</posX> + <posY>435</posY> + <width>350</width> + <label>#IPTV.View.channel</label> + <font>font13</font> + <align>center</align> + <textcolor>white</textcolor> + + </control> + </controls> +</window> \ No newline at end of file Property changes on: trunk/plugins/IPTV@UT/[ Default Skin ]/MP_0.2.1_SVN/MyIPTV.xml ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/IPTV@UT/[ Project Mayhem 3 ]/MyIPTV.xml =================================================================== --- trunk/plugins/IPTV@UT/[ Project Mayhem 3 ]/MyIPTV.xml (rev 0) +++ trunk/plugins/IPTV@UT/[ Project Mayhem 3 ]/MyIPTV.xml 2007-01-29 21:35:54 UTC (rev 47) @@ -0,0 +1,115 @@ +<window> + <id>7500</id> + + <defaultcontrol>2</defaultcontrol> + + <allowoverlay>no</allowoverlay> + + <define>#header.label:My IPTV</define> + <define>#header.image:</define> + <define>#header.hover:hover_my tv.png</define> + + <controls> + <import>common.window.xml</import> + + <control> + <description>background image</description> + + <type>image</type> + + <id>1</id> + + <posX>0</posX> + + <posY>0</posY> + + <width>720</width> + + <height>576</height> + + <texture>background-xlink16x9.png</texture> + </control> + + <control> + <type>group</type> + <animation effect="fade" time="250">WindowOpen</animation> + <animation effect="fade" time="500">WindowClose</animation> + <animation effect="slide" time="250" start="-300,0">WindowOpen</animation> + <animation effect="slide" time="500" end="0,-300" >WindowClose</animation> + <layout>StackLayout</layout> + ... [truncated message content] |
From: <moi...@us...> - 2007-01-29 21:27:28
|
Revision: 46 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=46&view=rev Author: moiristo Date: 2007-01-29 13:27:21 -0800 (Mon, 29 Jan 2007) Log Message: ----------- Removed old skin files Removed Paths: ------------- trunk/plugins/UitzendingGemist/skin/UitGemist.xml trunk/plugins/UitzendingGemist/skin/UitGemist2.xml Deleted: trunk/plugins/UitzendingGemist/skin/UitGemist.xml =================================================================== --- trunk/plugins/UitzendingGemist/skin/UitGemist.xml 2007-01-29 21:24:59 UTC (rev 45) +++ trunk/plugins/UitzendingGemist/skin/UitGemist.xml 2007-01-29 21:27:21 UTC (rev 46) @@ -1,116 +0,0 @@ -<window> - <id>6800</id> - <defaultcontrol>50</defaultcontrol> - <allowoverlay>yes</allowoverlay> - <define>#header.label:UitzendingGemist.nl</define> -<controls> - <import>common.window.xml</import> - <control> - <type>group</type> - <description>group element</description> - <animation>FlyInFromLeft</animation> - <layout>StackLayout</layout> - <posX>60</posX> - <posY>97</posY> - <control> - <description>Favorieten</description> - <type>button</type> - <id>2</id> - <label>Favorieten</label> - <onup>17</onup> - <ondown>3</ondown> - </control> - <control> - <type>selectbutton</type> - <description>Letter button</description> - <id>3</id> - <label>Titel</label> - <onup>2</onup> - <ondown>4</ondown> - </control> - <control> - <type>selectbutton</type> - <description>Letter button</description> - <id>4</id> - <label>Dag</label> - <onup>3</onup> - <ondown>5</ondown> - </control> - <control> - <type>selectbutton</type> - <description>Letter button</description> - <id>5</id> - <label>Net/zender</label> - <onup>4</onup> - <ondown>6</ondown> - </control> - <control> - <type>selectbutton</type> - <description>Letter button</description> - <id>6</id> - <label>Omroep</label> - <onup>5</onup> - <ondown>7</ondown> - </control> - <control> - <type>selectbutton</type> - <description>Letter button</description> - <id>7</id> - <label>Genre</label> - <onup>6</onup> - <ondown>8</ondown> - </control> - <control> - <description>Moet je Zien</description> - <type>button</type> - <id>8</id> - <label>Moet je zien</label> - <onup>7</onup> - <onright>50</onright> - <ondown>50</ondown> - </control> - <control> - <type>group</type> - <description>group element</description> - <control> - <type>imagelist</type> - <id>11</id> - <posX>550</posX> - <posY>350</posY> - <width>100</width> - <height>32</height> - <textureWidth>16</textureWidth> - <textureHeight>16</textureHeight> - <subitems> - <subitem>greystar.png</subitem> - <subitem>star.png</subitem> - </subitems> - <orientation>horizontal</orientation> - <align>left</align> - <percentage>#rating</percentage> - </control> - <control> - <type>textboxscrollup</type> - <description>Programma-info</description> - <id>12</id> - <posX>260</posX> - <posY>380</posY> - <width>375</width> - <height>100</height> - <label>#plot</label> - <textcolor>ffffffff</textcolor> - </control> - <control> - <description>Bekeken</description> - <type>label</type> - <id>13</id> - <posX>260</posX> - <posY>350</posY> - <label>#votes keer bekeken</label> - <textcolor>ffffffff</textcolor> - </control> - </control> - </control> - <import>common.facade.xml</import> -</controls> -</window> \ No newline at end of file Deleted: trunk/plugins/UitzendingGemist/skin/UitGemist2.xml =================================================================== --- trunk/plugins/UitzendingGemist/skin/UitGemist2.xml 2007-01-29 21:24:59 UTC (rev 45) +++ trunk/plugins/UitzendingGemist/skin/UitGemist2.xml 2007-01-29 21:27:21 UTC (rev 46) @@ -1,124 +0,0 @@ -<window> - <id>6801</id> - <defaultcontrol>10</defaultcontrol> - <allowoverlay>yes</allowoverlay> - <define>#header.label:Programma</define> - <controls> - <import>common.window.xml</import> - <control> - <type>group</type> - <description>group element</description> - <animation>FlyInFromTop</animation> - <control> - <type>image</type> - <description>Program image</description> - <id>3</id> - <posX>60</posX> - <posY>115</posY> - <width>100</width> - <height>75</height> - <texture>background.png</texture> - </control> - <control> - <description>Naam van gekozen programma</description> - <type>label</type> - <id>2</id> - <posX>165</posX> - <posY>95</posY> - <label>#title</label> - </control> - <control> - <description>Genre</description> - <type>label</type> - <id>0</id> - <posX>550</posX> - <posY>115</posY> - <label>Genre</label> - <textcolor>ffffffff</textcolor> - </control> - <control> - <description>Display wich genre</description> - <type>label</type> - <id>4</id> - <posX>550</posX> - <posY>130</posY> - <label>#genre</label> - </control> - <control> - <description>Omroep</description> - <type>label</type> - <id>0</id> - <posX>550</posX> - <posY>150</posY> - <label>Omroep</label> - <textcolor>ffffffff</textcolor> - </control> - <control> - <description>Display wich omproep</description> - <type>label</type> - <id>5</id> - <posX>550</posX> - <posY>165</posY> - <label>#credits</label> - </control> - <control> - <type>imagelist</type> - <id>1</id> - <posX>550</posX> - <posY>200</posY> - <width>100</width> - <height>32</height> - <textureWidth>16</textureWidth> - <textureHeight>16</textureHeight> - <subitems> - <subitem>greystar.png</subitem> - <subitem>star.png</subitem> - </subitems> - <orientation>horizontal</orientation> - <align>left</align> - <percentage>#rating</percentage> - </control> - <control> - <type>textboxscrollup</type> - <description>Programma-info</description> - <id>6</id> - <posX>165</posX> - <posY>115</posY> - <width>375</width> - <height>105</height> - <label>#plot</label> - <textcolor>ffffffff</textcolor> - </control> - <control> - <description>afleveringen</description> - <type>listcontrol</type> - <id>10</id> - <posX>165</posX> - <posY>225</posY> - <width>485</width> - <height>200</height> - <textXOff>10</textXOff> - <textYOff>2</textYOff> - <textXOff2>420</textXOff2> - <textYOff2>2</textYOff2> - <spaceBetweenItems>5</spaceBetweenItems> - <textureHeight>25</textureHeight> - <keepaspectratio>no</keepaspectratio> - <font2>font10</font2> - <font3>font10</font3> - <onup>17</onup> - </control> - <control> - <type>textboxscrollup</type> - <description>Programma-info</description> - <id>1</id> - <posX>250</posX> - <posY>380</posY> - <width>375</width> - <height>100</height> - <label>#plotoutline</label> - <textcolor>ffffffff</textcolor> - </control> - </control> - </controls> -</window> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <moi...@us...> - 2007-01-29 21:25:07
|
Revision: 45 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=45&view=rev Author: moiristo Date: 2007-01-29 13:24:59 -0800 (Mon, 29 Jan 2007) Log Message: ----------- Latest UitGemist version Added Paths: ----------- trunk/plugins/UitzendingGemist/UitGemist/ trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.Designer.cs trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.cs trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.resx trunk/plugins/UitzendingGemist/UitGemist/NLGemist.cs trunk/plugins/UitzendingGemist/UitGemist/Properties/ trunk/plugins/UitzendingGemist/UitGemist/Properties/AssemblyInfo.cs trunk/plugins/UitzendingGemist/UitGemist/RTLGemist.cs trunk/plugins/UitzendingGemist/UitGemist/SecondScreen.cs trunk/plugins/UitzendingGemist/UitGemist/ShowWaitCursor.cs trunk/plugins/UitzendingGemist/UitGemist/UitGemist.csproj trunk/plugins/UitzendingGemist/UitGemist/UitGemist.csproj.user trunk/plugins/UitzendingGemist/UitGemist/UitGemistMain.cs trunk/plugins/UitzendingGemist/UitGemist/UitGemistPlugin.cs Added: trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.Designer.cs =================================================================== --- trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.Designer.cs (rev 0) +++ trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.Designer.cs 2007-01-29 21:24:59 UTC (rev 45) @@ -0,0 +1,117 @@ +namespace MediaPortal.GUI.UitGemist +{ + partial class ConfigurationForm + { + /// <summary> + /// Required designer variable. + /// </summary> + private System.ComponentModel.IContainer components = null; + + /// <summary> + /// Clean up any resources being used. + /// </summary> + /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// <summary> + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// </summary> + private void InitializeComponent() + { + this.sbBtn = new System.Windows.Forms.RadioButton(); + this.bbBtn = new System.Windows.Forms.RadioButton(); + this.groupBox1 = new System.Windows.Forms.GroupBox(); + this.okBtn = new System.Windows.Forms.Button(); + this.button1 = new System.Windows.Forms.Button(); + this.groupBox1.SuspendLayout(); + this.SuspendLayout(); + // + // sbBtn + // + this.sbBtn.AutoSize = true; + this.sbBtn.Location = new System.Drawing.Point(10, 19); + this.sbBtn.Name = "sbBtn"; + this.sbBtn.Size = new System.Drawing.Size(74, 17); + this.sbBtn.TabIndex = 0; + this.sbBtn.TabStop = true; + this.sbBtn.Text = "Smallband"; + this.sbBtn.UseVisualStyleBackColor = true; + // + // bbBtn + // + this.bbBtn.AutoSize = true; + this.bbBtn.Location = new System.Drawing.Point(10, 39); + this.bbBtn.Name = "bbBtn"; + this.bbBtn.Size = new System.Drawing.Size(77, 17); + this.bbBtn.TabIndex = 1; + this.bbBtn.TabStop = true; + this.bbBtn.Text = "Broadband"; + this.bbBtn.UseVisualStyleBackColor = true; + // + // groupBox1 + // + this.groupBox1.Controls.Add(this.bbBtn); + this.groupBox1.Controls.Add(this.sbBtn); + this.groupBox1.Location = new System.Drawing.Point(12, 12); + this.groupBox1.Name = "groupBox1"; + this.groupBox1.Size = new System.Drawing.Size(169, 70); + this.groupBox1.TabIndex = 2; + this.groupBox1.TabStop = false; + this.groupBox1.Text = "Default Speed"; + // + // okBtn + // + this.okBtn.Location = new System.Drawing.Point(12, 88); + this.okBtn.Name = "okBtn"; + this.okBtn.Size = new System.Drawing.Size(75, 23); + this.okBtn.TabIndex = 3; + this.okBtn.Text = "OK"; + this.okBtn.UseVisualStyleBackColor = true; + this.okBtn.Click += new System.EventHandler(this.okBtn_Click); + // + // button1 + // + this.button1.Location = new System.Drawing.Point(93, 88); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(75, 23); + this.button1.TabIndex = 4; + this.button1.Text = "Cancel"; + this.button1.UseVisualStyleBackColor = true; + + // + // ConfigurationForm + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(246, 120); + this.Controls.Add(this.button1); + this.Controls.Add(this.okBtn); + this.Controls.Add(this.groupBox1); + this.Name = "ConfigurationForm"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; + this.Text = "UitzendingGemist Configuration"; + this.groupBox1.ResumeLayout(false); + this.groupBox1.PerformLayout(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.RadioButton sbBtn; + private System.Windows.Forms.RadioButton bbBtn; + private System.Windows.Forms.GroupBox groupBox1; + private System.Windows.Forms.Button okBtn; + private System.Windows.Forms.Button button1; + } +} \ No newline at end of file Property changes on: trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.Designer.cs ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.cs =================================================================== --- trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.cs (rev 0) +++ trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.cs 2007-01-29 21:24:59 UTC (rev 45) @@ -0,0 +1,43 @@ +using MediaPortal.GUI.Library; + +using System; +using System.IO; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Windows.Forms; + +namespace MediaPortal.GUI.UitGemist +{ + public partial class ConfigurationForm : Form + { + bool broadband; + + public ConfigurationForm() + { + InitializeComponent(); + broadband = ShowWaitCursor.getBroadBand(); + + this.sbBtn.Checked = !broadband; + this.bbBtn.Checked = broadband; + } + + private void okBtn_Click(object sender, EventArgs e) + { + string dir = Directory.GetCurrentDirectory(); + using (MediaPortal.Profile.Settings writer = new MediaPortal.Profile.Settings(dir + @"\UitGemist.xml", false)) + { + writer.Clear(); + + if (sbBtn.Checked) broadband = false; + else broadband = true; + + if(broadband) writer.SetValue("settings", "broadband", "yes"); + else writer.SetValue("settings", "broadband", "no"); + } + this.Dispose(true); + } + } +} \ No newline at end of file Property changes on: trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.cs ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.resx =================================================================== --- trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.resx (rev 0) +++ trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.resx 2007-01-29 21:24:59 UTC (rev 45) @@ -0,0 +1,120 @@ +<?xml version="1.0" encoding="utf-8"?> +<root> + <!-- + Microsoft ResX Schema + + Version 2.0 + + The primary goals of this format is to allow a simple XML format + that is mostly human readable. The generation and parsing of the + various data types are done through the TypeConverter classes + associated with the data types. + + Example: + + ... ado.net/XML headers & schema ... + <resheader name="resmimetype">text/microsoft-resx</resheader> + <resheader name="version">2.0</resheader> + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> + <value>[base64 mime encoded serialized .NET Framework object]</value> + </data> + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> + <comment>This is a comment</comment> + </data> + + There are any number of "resheader" rows that contain simple + name/value pairs. + + Each data row contains a name, and value. The row also contains a + type or mimetype. Type corresponds to a .NET class that support + text/value conversion through the TypeConverter architecture. + Classes that don't support this are serialized and stored with the + mimetype set. + + The mimetype is used for serialized objects, and tells the + ResXResourceReader how to depersist the object. This is currently not + extensible. For a given mimetype the value must be set accordingly: + + Note - application/x-microsoft.net.object.binary.base64 is the format + that the ResXResourceWriter will generate, however the reader can + read any of the formats listed below. + + mimetype: application/x-microsoft.net.object.binary.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.soap.base64 + value : The object must be serialized with + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter + : and then encoded with base64 encoding. + + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> + <xsd:element name="root" msdata:IsDataSet="true"> + <xsd:complexType> + <xsd:choice maxOccurs="unbounded"> + <xsd:element name="metadata"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" /> + </xsd:sequence> + <xsd:attribute name="name" use="required" type="xsd:string" /> + <xsd:attribute name="type" type="xsd:string" /> + <xsd:attribute name="mimetype" type="xsd:string" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="assembly"> + <xsd:complexType> + <xsd:attribute name="alias" type="xsd:string" /> + <xsd:attribute name="name" type="xsd:string" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="data"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> + <xsd:attribute ref="xml:space" /> + </xsd:complexType> + </xsd:element> + <xsd:element name="resheader"> + <xsd:complexType> + <xsd:sequence> + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> + </xsd:sequence> + <xsd:attribute name="name" type="xsd:string" use="required" /> + </xsd:complexType> + </xsd:element> + </xsd:choice> + </xsd:complexType> + </xsd:element> + </xsd:schema> + <resheader name="resmimetype"> + <value>text/microsoft-resx</value> + </resheader> + <resheader name="version"> + <value>2.0</value> + </resheader> + <resheader name="reader"> + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> + <resheader name="writer"> + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> + </resheader> +</root> \ No newline at end of file Property changes on: trunk/plugins/UitzendingGemist/UitGemist/ConfigurationForm.resx ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/UitzendingGemist/UitGemist/NLGemist.cs =================================================================== --- trunk/plugins/UitzendingGemist/UitGemist/NLGemist.cs (rev 0) +++ trunk/plugins/UitzendingGemist/UitGemist/NLGemist.cs 2007-01-29 21:24:59 UTC (rev 45) @@ -0,0 +1,545 @@ +using System; +using System.Collections.Generic; +using System.Collections.Specialized; +using System.Text; +using System.Text.RegularExpressions; +using MediaPortal.GUI.Library; +using MediaPortal.Player; +using MediaPortal.Util; +using MediaPortal.Dialogs; +using MediaPortal.Playlists; +using System.Xml; +using System.IO; + +namespace MediaPortal.GUI.UitGemist +{ + public class NLGemist : GUIWindow + { + #region SkinControlAttributes + [SkinControlAttribute(50)] + protected GUIFacadeControl facadeview = null; + [SkinControlAttribute(2)] + protected GUIButtonControl btnFavoriet = null; + [SkinControlAttribute(3)] + protected GUISelectButtonControl btnTitel = null; + [SkinControlAttribute(4)] + protected GUISelectButtonControl btnDag = null; + [SkinControlAttribute(5)] + protected GUISelectButtonControl btnZender = null; + [SkinControlAttribute(6)] + protected GUISelectButtonControl btnOmroep = null; + [SkinControlAttribute(7)] + protected GUISelectButtonControl btnRubriek = null; + [SkinControlAttribute(8)] + protected GUIButtonControl btnMoetJeZien = null; + [SkinControlAttribute(11)] + protected GUIImageList imgList = null; + [SkinControlAttribute(12)] + protected GUITextScrollUpControl textBox = null; + [SkinControlAttribute(13)] + protected GUILabelControl lblBekeken = null; + + #endregion + + #region Variables + private String MainUrlBody = String.Empty; + + private StringCollection Names = new StringCollection(); + private StringCollection Urls = new StringCollection(); + private StringCollection UrlsSecondScreen = new StringCollection(); + private StringCollection ImageUrls = new StringCollection(); + private StringCollection Plot = new StringCollection(); + private StringCollection Waardering = new StringCollection(); + private StringCollection Bekeken = new StringCollection(); + + private StringCollection NavNames = new StringCollection(); + private StringCollection NavUrls = new StringCollection(); + + private StringCollection FavNames = new StringCollection(); + private StringCollection FavUrls = new StringCollection(); + private StringCollection FavUrlsSecondScreen = new StringCollection(); + private int FavCount = 0; + + private bool ViewFavorieten = false; + private bool ViewMoetJeZien = false; + + public static ShowWaitCursor wc = new ShowWaitCursor(); + #endregion + + public override int GetID + { + get + { + return 6800; + } + set + { + base.GetID = value; + } + } + + public override bool Init() + { + return Load(GUIGraphicsContext.Skin + @"\UitGemist.xml"); + } + + public override void OnAction(Action action) + { + if (action.wID == Action.ActionType.ACTION_PLAY) + { + string mmsurl = string.Empty; + int index = 0; + GUIListItem item = facadeview.SelectedListItem; + if (ViewFavorieten) + { + index = FavNames.IndexOf(item.Label); + mmsurl = GetPlayUrl(FavUrls[index]); + } + else + { + index = Names.IndexOf(item.Label); + mmsurl = GetPlayUrl(Urls[index]); + } + + PlayUitzending(mmsurl); + } + + base.OnAction(action); + } + + protected override void OnClicked(int controlId, GUIControl control, Action.ActionType actionType) + { + if (control == btnFavoriet) + { + ShowList(FavNames); + ViewFavorieten = true; + } + if (control == btnTitel) + { + GetNav("titel"); + GetUitzending(NavUrls[btnTitel.SelectedItem]); + } + if (control == btnDag) + { + GetNav("dag"); + GetUitzending(NavUrls[btnDag.SelectedItem]); + } + if (control == btnZender) + { + GetNav("net_zender"); + GetUitzending(NavUrls[btnZender.SelectedItem]); + } + if (control == btnOmroep) + { + GetNav("omroep"); + GetUitzending(NavUrls[btnOmroep.SelectedItem]); + } + if (control == btnRubriek) + { + GetNav("genre"); + GetUitzending(NavUrls[btnRubriek.SelectedItem]); + } + if (control == btnMoetJeZien) + { + ShowMoetJeZien(); + } + if (control == facadeview) + { + if (ViewFavorieten) + { + //SecondScreen.ViewVideo = true; + SecondScreen.Url = FavUrlsSecondScreen[facadeview.SelectedListItemIndex]; + GUIWindowManager.ActivateWindow(6801); + } + else if (ViewMoetJeZien) + { + string mmsurl = string.Empty; + mmsurl = GetPlayUrl(Urls[facadeview.SelectedListItemIndex]); + + PlayUitzending(mmsurl); + } + else + { + SecondScreen.Url = UrlsSecondScreen[facadeview.SelectedListItemIndex]; + GUIWindowManager.ActivateWindow(6801); + } + } + base.OnClicked(controlId, control, actionType); + } + + public override bool OnMessage(GUIMessage message) + { + if(message.Message == GUIMessage.MessageType.GUI_MSG_ITEM_FOCUS || message.Message== GUIMessage.MessageType.GUI_MSG_ITEM_FOCUS_CHANGED) + if (facadeview.SelectedListItemIndex != -1 && ViewMoetJeZien==true) + { + GUIPropertyManager.SetProperty("#votes", Bekeken[facadeview.SelectedListItemIndex]); + GUIPropertyManager.SetProperty("#rating", Waardering[facadeview.SelectedListItemIndex]); + GUIPropertyManager.SetProperty("#plot", Plot[facadeview.SelectedListItemIndex]); + imgList.Dimmed = true; + lblBekeken.Dimmed = true; + } + return base.OnMessage(message); + } + + + protected override void OnPageLoad() + { + ShowGroep(false); + GetNav("titel", btnTitel); + GetNav("dag", btnDag); + GetNav("net_zender", btnZender); + GetNav("omroep", btnOmroep); + GetNav("genre", btnRubriek); + LoadFavorietenXML(); + if (ViewFavorieten ) + { + ViewFavorieten = true; + ShowList(FavNames); + } + else if (Names.Count <= 0 || ViewMoetJeZien == true) + { + ShowMoetJeZien(); + } + else + { + ShowList(Names); + } + base.OnPageLoad(); + } + + protected override void OnPageDestroy(int new_windowId) + { + MainUrlBody = string.Empty; + SaveFavorietenXML(); + FavNames.Clear(); + FavUrls.Clear(); + FavUrlsSecondScreen.Clear(); + base.OnPageDestroy(new_windowId); + } + protected override void OnShowContextMenu() + { + GUIListItem item = facadeview.SelectedListItem; + + GUIDialogMenu menu = (GUIDialogMenu)GUIWindowManager.GetWindow((int)GUIWindow.Window.WINDOW_DIALOG_MENU); + menu.Reset(); + menu.SetHeading("Extra Opties:"); + if (ViewFavorieten == false) + menu.Add("Toevoegen aan favorieten."); + if (ViewFavorieten == true) + menu.Add("Verwijderen van favorieten."); + menu.DoModal(GetID); + if (menu.SelectedId == -1) return; + if (menu.SelectedLabelText == "Toevoegen aan favorieten.") + { + FavNames.Add(Names[facadeview.SelectedListItemIndex]); + FavUrls.Add(Urls[facadeview.SelectedListItemIndex]); + FavUrlsSecondScreen.Add(UrlsSecondScreen[facadeview.SelectedListItemIndex]); + } + if (menu.SelectedLabelText == "Verwijderen van favorieten.") + { + FavNames.RemoveAt(facadeview.SelectedListItemIndex); + FavUrls.RemoveAt(facadeview.SelectedListItemIndex); + FavUrlsSecondScreen.RemoveAt(facadeview.SelectedListItemIndex); + ShowList(FavNames); + } + base.OnShowContextMenu(); + } + + private void GetUitzending(string url) + { + Names.Clear(); + Urls.Clear(); + UrlsSecondScreen.Clear(); + ViewFavorieten = false; + + string result = wc.GetUrl(url, true); + + + int i = 0; + MatchCollection mc = Regex.Matches(result, @"title.\shref=.(?<url>.*?).>(?<name>.*?)<"); + foreach (Match m in mc) + { + Names.Add(m.Groups["name"].Value); + Names[i] = ConvertString(Names[i]); + UrlsSecondScreen.Add(@"http://www.uitzendinggemist.nl"+m.Groups["url"].Value); + UrlsSecondScreen[i] = ConvertString(UrlsSecondScreen[i]); + i++; + } + i = 0; + mc = Regex.Matches(result, @"><a\shref=.(?<url>http://player.*?).target"); + foreach (Match m in mc) + { + Urls.Add(m.Groups["url"].Value); + Urls[i] = ConvertString(Urls[i]); + i++; + } + ShowList(Names); + } + public static string GetPlayUrl(string url) + { + Match m = Regex.Match(wc.GetUrl(url), @"var\smediaurl\s=\s.(http://.*?).;"); + + url = m.Groups[1].Value; + url = url.Replace(".rm", ".asf"); + url = ConvertString(url); + return url; + } + /// <summary> + /// Fills the facadeview with item + /// </summary> + /// <param name="names">labels for the items</param> + private void ShowList(StringCollection names) + { + ViewMoetJeZien = false; + ShowGroep(false); + facadeview.View = GUIFacadeControl.ViewMode.List; + facadeview.Clear(); + foreach (string label in names) + { + GUIListItem item = new GUIListItem(); + item.Label = label; + item.IsFolder = true; + Util.Utils.SetDefaultIcons(item); + facadeview.Add(item); + } + focusFacade(); + } + + /// <summary> + /// Converts a string with wrong characters and replaces those with the good ones + /// </summary> + /// <param name="convertstring">input string</param> + /// <returns>converted string</returns> + public static string ConvertString(string convertstring) + { + convertstring = convertstring.Replace("&", "&"); + convertstring = convertstring.Replace("'", "'"); + convertstring = convertstring.Replace("é", "\xE9"); + convertstring = convertstring.Replace("ö", "\xF6"); + convertstring = convertstring.Replace("ë", "\xEB"); + convertstring = convertstring.Replace("ü", "\xFC"); + convertstring.Trim(); + return convertstring; + } + + /// <summary> + /// Get the options for the letterbuttons in the main screen + /// </summary> + /// <param name="search">letterbutton name fe. titel or genre</param> + private void GetNav(string search) + { + NavNames.Clear(); + NavUrls.Clear(); + if (MainUrlBody == String.Empty) + MainUrlBody = wc.GetUrl("http://www.uitzendinggemist.nl/"); + + Match m = Regex.Match(MainUrlBody, "id=." + search + ".*?</select>", RegexOptions.Singleline); + string temp = m.Value; + + MatchCollection mc = Regex.Matches(temp, @"value=.(?<url>\d*).*?.>(?<name>.*?)<"); + foreach (Match m1 in mc) + { + NavUrls.Add("http://www.uitzendinggemist.nl/index.php/selectie?searchitem=" + search + "&" + search + "=" + m1.Groups["url"].Value); + NavNames.Add(m1.Groups["name"].Value); + } + NavNames.RemoveAt(0); + NavUrls.RemoveAt(0); + } + /// <summary> + /// Get the options for the letterbuttons in the main screen + /// </summary> + /// <param name="search">letterbutton name fe. titel or genre</param> + /// <param name="btn">ButtonControlName that needs to be filled</param> + private void GetNav(string search, GUISelectButtonControl btn) + { + GetNav(search); + + btn.Clear(); + btn.Selected = false; + foreach (string label in NavNames) + { + btn.AddSubItem(label); + } + } + + /// <summary> + /// Error Dialog + /// </summary> + /// <param name="text">error text</param> + private void ShowDialog(string text) + { + GUIDialogOK dialog = new GUIDialogOK(); + dialog.SetHeading("Error"); + dialog.SetLine(1, text); + dialog.DoModal(GetID); + } + + /// <summary> + /// Save the favorites + /// </summary> + private void SaveFavorietenXML() + { + string dir = Directory.GetCurrentDirectory(); + + File.Delete(dir + @"\UitGemistFav.xml"); + using(MediaPortal.Profile.Settings writer = new MediaPortal.Profile.Settings(dir+@"\UitGemistFav.xml",false)) + { + writer.Clear(); + int i = 0; + foreach(string favoriet in FavNames) + { + writer.SetValue(i.ToString(),"ProgrammaNaam", favoriet); + writer.SetValue(i.ToString(),"ProgrammaUrl", FavUrls[i]); + writer.SetValue(i.ToString(), "SecondScreenUrl", FavUrlsSecondScreen[i]); + i++; + } + while (i < FavCount) + { + writer.SetValue(i.ToString(), "ProgrammaNaam", ""); + writer.SetValue(i.ToString(), "PorgrammaUrl", ""); + writer.SetValue(i.ToString(), "SecondScreenUrl", ""); + i++; + } + } + } + + /// <summary> + /// Load the favorites + /// </summary> + private void LoadFavorietenXML() + { + string dir = Directory.GetCurrentDirectory(); + using(MediaPortal.Profile.Settings reader = new MediaPortal.Profile.Settings(dir+@"\UitGemistFav.xml",false)) + { + int i = 0; + while(i!=100) + { + string result = reader.GetValueAsString(i.ToString(), "ProgrammaNaam", ""); + if (result.Equals("")) + { + FavCount = i - 1; + return; + } + else + { + FavNames.Add(reader.GetValue(i.ToString(), "ProgrammaNaam")); + FavNames[i] = ConvertString(FavNames[i]); + FavUrls.Add(reader.GetValue(i.ToString(), "ProgrammaUrl")); + FavUrls[i] = ConvertString(FavUrls[i]); + FavUrlsSecondScreen.Add(reader.GetValue(i.ToString(), "SecondScreenUrl")); + FavUrlsSecondScreen[i] = ConvertString(FavUrlsSecondScreen[i]); + i++; + } + } + } + } + + /// <summary> + /// Shows the first "top 3" items that were on yesteday + /// </summary> + private void ShowMoetJeZien() + { + Names.Clear(); + Urls.Clear(); + UrlsSecondScreen.Clear(); + ImageUrls.Clear(); + Plot.Clear(); + ViewFavorieten = false; + ViewMoetJeZien = true; + + + if (MainUrlBody == String.Empty) + MainUrlBody = wc.GetUrl("http://www.uitzendinggemist.nl/"); + + Match m = Regex.Match(MainUrlBody, @"moet\sje\szien.*moet\sje\szien\s-->", RegexOptions.Singleline); + string result = m.Value; + + int i = 0; + MatchCollection mc = Regex.Matches(result, @"img\ssrc=.(?<image>.*?.png).*?href=.(?<url2>/index.php.*?).\s.*?>(?<name>.*?)<"); + foreach (Match m1 in mc) + { + ImageUrls.Add(@"http://www.uitzendinggemist.nl"+m1.Groups["image"].Value); + ImageUrls[i] = ConvertString(ImageUrls[i]); + Names.Add(m1.Groups["name"].Value); + Names[i] = ConvertString(Names[i]); + UrlsSecondScreen.Add(@"http://www.uitzendinggemist.nl"+m1.Groups["url2"].Value); + UrlsSecondScreen[i] = ConvertString(UrlsSecondScreen[i]); + i++; + } + i = 0; + mc = Regex.Matches(result, @"(http://player.*?).\starget"); + foreach(Match m1 in mc) + { + Urls.Add(m1.Groups[1].Value); + Urls[i] = ConvertString(Urls[i]); + i++; + } + i= 0; + mc = Regex.Matches(result, @"margin:5px..>(.*?)<"); + foreach (Match m1 in mc) + { + Plot.Add(m1.Groups[1].Value); + Plot[i] = ConvertString(Plot[i]); + i++; + } + mc = Regex.Matches(result, @"Waardering:\s(.*?)\s"); + StringCollection temp = new StringCollection(); + temp.Add(mc[0].Groups[1].Value); + temp.Add(mc[5].Groups[1].Value); + temp.Add(mc[10].Groups[1].Value); + foreach (string s in temp) + { + double r = double.Parse(s); + r = r * 2; + r = r / 10; + Waardering.Add(r.ToString()); + } + mc = Regex.Matches(result, @"bekeken\s<span>(.*?)\s"); + foreach (Match m1 in mc) + { + Bekeken.Add(m1.Groups[1].Value); + } + + i = 0; + facadeview.View = GUIFacadeControl.ViewMode.LargeIcons; + facadeview.Clear(); + foreach (string label in Names) + { + GUIListItem item = new GUIListItem(); + item.Label = Names[i]; + item.IconImageBig = wc.DownloadImage(ImageUrls[i]); + facadeview.Add(item); + i++; + } + ShowGroep(true); + focusFacade(); + } + + private void ShowGroep(bool show) + { + imgList.Visible = show; + textBox.Visible = show; + lblBekeken.Visible = show; + } + + private void PlayUitzending(string url) + { + if (g_Player.Play(url)) + { + GUIGraphicsContext.IsFullScreenVideo = true; + GUIWindowManager.ActivateWindow((int)GUIWindow.Window.WINDOW_FULLSCREEN_VIDEO); + } + } + + private void focusFacade() + { + if (facadeview.Count > 0 && !facadeview.Focus) GUIControl.FocusControl(GUIWindowManager.ActiveWindow, facadeview.GetID); + else if(facadeview.Count == 0) GUIControl.FocusControl(GUIWindowManager.ActiveWindow, btnFavoriet.GetID); + } + + } + + + + +} \ No newline at end of file Property changes on: trunk/plugins/UitzendingGemist/UitGemist/NLGemist.cs ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/UitzendingGemist/UitGemist/Properties/AssemblyInfo.cs =================================================================== --- trunk/plugins/UitzendingGemist/UitGemist/Properties/AssemblyInfo.cs (rev 0) +++ trunk/plugins/UitzendingGemist/UitGemist/Properties/AssemblyInfo.cs 2007-01-29 21:24:59 UTC (rev 45) @@ -0,0 +1,35 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("UitGemist")] +[assembly: AssemblyDescription("A plugin for MediaPortal to view missed emissions")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("UitGemist")] +[assembly: AssemblyCopyright("Copyright © 2006")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("3ea4ca68-336f-42e6-99ec-04750996ebeb")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: +[assembly: AssemblyVersion("1.0.0.2")] +[assembly: AssemblyFileVersion("1.0.0.2")] Property changes on: trunk/plugins/UitzendingGemist/UitGemist/Properties/AssemblyInfo.cs ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/UitzendingGemist/UitGemist/RTLGemist.cs =================================================================== --- trunk/plugins/UitzendingGemist/UitGemist/RTLGemist.cs (rev 0) +++ trunk/plugins/UitzendingGemist/UitGemist/RTLGemist.cs 2007-01-29 21:24:59 UTC (rev 45) @@ -0,0 +1,538 @@ +using System; +using System.Collections.Generic; +using System.Collections.Specialized; +using System.Text; +using System.Text.RegularExpressions; +using MediaPortal.GUI.Library; +using MediaPortal.Player; +using MediaPortal.Util; +using MediaPortal.Dialogs; +using MediaPortal.Playlists; +using System.Xml; +using System.Xml.XPath; +using System.IO; + +namespace MediaPortal.GUI.UitGemist +{ + public class RTLGemist : GUIWindow + { + #region SkinControlAttributes + [SkinControlAttribute(50)] + protected GUIFacadeControl facadeview = null; + [SkinControlAttribute(2)] + protected GUIButtonControl btnFavoriet = null; + [SkinControlAttribute(3)] + protected GUIButtonControl btnTopTen = null; + [SkinControlAttribute(4)] + protected GUIButtonControl btnPrograms = null; + + #endregion + + #region Variables + private String MainUrlBody = String.Empty; + + private StringCollection Names = new StringCollection(); + private StringCollection Urls = new StringCollection(); + private StringCollection UrlHistory = new StringCollection(); + private List<int> SelectHistory = new List<int>(); + private List<bool> Folders = new List<bool>(); + + private StringCollection FavNames = new StringCollection(); + private StringCollection FavUrls = new StringCollection(); + private int FavCount = 0; + + private bool ViewTopTen = false; + private bool ViewFavorieten = false; + + private static string host = "http://www.rtl.nl"; + private static string xmlroot = "/(vm=/experience/media/)/system/video/menu/"; + + private static string[] broadband = new string[] { "/805.wvx", "/796.wvx", "/364.wvx" }; + private static string[] smallband = new string[] { "/225.wvx", "/224.wvx", "/364.wvx" }; + + public static ShowWaitCursor wc = new ShowWaitCursor(); + + #endregion + + public override int GetID + { + get + { + return 6802; + } + set + { + base.GetID = value; + } + } + + public override bool Init() + { + return Load(GUIGraphicsContext.Skin + @"\RtlGemist.xml"); + } + + public override void OnAction(Action action) + { + if (action.wID == Action.ActionType.ACTION_PLAY) + { + string mmsurl = string.Empty; + int index = 0; + GUIListItem item = facadeview.SelectedListItem; + if (ViewFavorieten) + { + index = FavNames.IndexOf(item.Label); + mmsurl = GetPlayUrl(FavUrls[index]); + } + else + { + index = Names.IndexOf(item.Label); + mmsurl = GetPlayUrl(Urls[index]); + } + + PlayUitzending(mmsurl, 0); + } + else if (action.wID == Action.ActionType.ACTION_PREVIOUS_MENU && UrlHistory.Count > 1) + { + GetUitzending(UrlHistory[UrlHistory.Count - 2]); + UrlHistory.RemoveAt(UrlHistory.Count - 1); + facadeview.SelectedListItemIndex = SelectHistory[SelectHistory.Count - 1]; + SelectHistory.RemoveAt(SelectHistory.Count - 1); + } + else base.OnAction(action); + } + + protected override void OnClicked(int controlId, GUIControl control, Action.ActionType actionType) + { + if (control == btnFavoriet) + { + ShowList(FavNames); + ViewFavorieten = true; + } + if (control == btnPrograms) + { + GetUitzendingen(); + } + if (control == btnTopTen) + { + ShowTopTen(); + } + if (control == facadeview) + { + if (ViewFavorieten) + { + string url = string.Empty; + url = GetPlayUrl(FavUrls[facadeview.SelectedListItemIndex]); + + PlayUitzending(url, 0); + } + else if (ViewTopTen) + { + string url = string.Empty; + url = GetPlayUrl(Urls[facadeview.SelectedListItemIndex]); + + PlayUitzending(url, 0); + } + else + { + //ViewPrograms + //Folder: Get contents + if (facadeview.SelectedListItem.IsFolder) + LoadFolder(Urls[facadeview.SelectedListItemIndex]); + //Stream: Play stream + else + { + string url = string.Empty; + url = GetPlayUrl(Urls[facadeview.SelectedListItemIndex]); + + PlayUitzending(url, 0); + } + } + } + base.OnClicked(controlId, control, actionType); + } + + public override bool OnMessage(GUIMessage message) + { + return base.OnMessage(message); + } + + + protected override void OnPageLoad() + { + LoadFavorietenXML(); + if (ViewFavorieten) + { + ViewFavorieten = true; + ShowList(FavNames); + } + else if (Names.Count <= 0 || ViewTopTen == true) + { + ShowTopTen(); + } + else + { + ShowList(Names); + } + base.OnPageLoad(); + } + + protected override void OnPageDestroy(int new_windowId) + { + MainUrlBody = string.Empty; + SaveFavorietenXML(); + FavNames.Clear(); + FavUrls.Clear(); + base.OnPageDestroy(new_windowId); + } + + protected override void OnShowContextMenu() + { + GUIListItem item = facadeview.SelectedListItem; + if (item.IsFolder) return; + + GUIDialogMenu menu = (GUIDialogMenu)GUIWindowManager.GetWindow((int)GUIWindow.Window.WINDOW_DIALOG_MENU); + menu.Reset(); + menu.SetHeading("Extra Opties:"); + if (ViewFavorieten == false) + menu.Add("Toevoegen aan favorieten."); + if (ViewFavorieten == true) + menu.Add("Verwijderen van favorieten."); + menu.DoModal(GetID); + if (menu.SelectedId == -1) return; + if (menu.SelectedLabelText == "Toevoegen aan favorieten.") + { + FavNames.Add(Names[facadeview.SelectedListItemIndex]); + FavUrls.Add(Urls[facadeview.SelectedListItemIndex]); + } + if (menu.SelectedLabelText == "Verwijderen van favorieten.") + { + FavNames.RemoveAt(facadeview.SelectedListItemIndex); + FavUrls.RemoveAt(facadeview.SelectedListItemIndex); + Folders.Clear(); + ShowList(FavNames); + } + base.OnShowContextMenu(); + } + + private void GetUitzendingen() + { + UrlHistory.Clear(); + SelectHistory.Clear(); + ViewFavorieten = false; + ViewTopTen = false; + + //Root node: http://www.rtl.nl/(vm=/experience/media/)/system/video/menu/videomenu.xml + Log.Info("UitGemist: Getting root XML"); + GetUitzending(host + xmlroot + "videomenu.xml"); + } + + private void LoadFolder(string folder) + { + Log.Info("UitGemist: Loading folder '" + folder + "'"); + string vm = folder.Replace("videomenu.xml",""); + GetUitzending(host + xmlroot.Replace(@"/experience/media/", vm) + folder); + } + + private void GetUitzending(string xmlUrl) + { + if (!UrlHistory.Contains(xmlUrl)) + { + UrlHistory.Add(xmlUrl); + SelectHistory.Add(facadeview.SelectedListItemIndex); + } + Log.Info("UitGemist: Getting XML"); + + Names.Clear(); + Urls.Clear(); + Folders.Clear(); + ViewFavorieten = false; + ViewTopTen = false; + + string result = wc.GetXML(xmlUrl); + try + { + XPathDocument document = new XPathDocument(new System.IO.StringReader(result)); + XPathNavigator navigator = document.CreateNavigator(); + XPathExpression programs = XPathExpression.Compile("//li"); //returns nodeset + + XPathNodeIterator nodes = navigator.Select(programs); + + if (nodes.Count == 0) + { + //Log.Info("UitGemist: No nodes found for url '" + xmlUrl + "'"); + Names.Add("(Geen items aangetroffen)"); + Urls.Add(""); + Folders.Add(false); + } + else + { + int i = 0; + while (nodes.MoveNext()) + { + //Log.Info("UitGemist: Found node '" + nodes.Current.ToString() + "'"); + + Names.Add(nodes.Current.ToString()); + Names[i] = MakeFirstUpper(ConvertString(Names[i])); + + Urls.Add(nodes.Current.GetAttribute("rel", "").ToString()); + Urls[i] = ConvertString(Urls[i]); + i++; + + string nClass = nodes.Current.GetAttribute("class", "").ToString().Trim(); + if (nClass.Equals("folder")) Folders.Add(true); + else Folders.Add(false); + } + } + + ShowList(Names); + } + catch (XmlException e) + { + Log.Info("UitGemist: Invalid xml document '" + xmlUrl + "'. Details follow."); + Log.Info("UitGemist: Line number: " + e.LineNumber + ":"); + Log.Info(e.StackTrace); + } + } + + public static string GetPlayUrl(string url) + { + if (url.Equals("")) return url; + + if(url.Contains(@"/system/video/html/")) + { + //Top ten URL's + url = host + url.Replace(@"/system/video/html/",@"/system/video/wvx/"); + } + else + { + //Other programs URL's + url = host + "/system/video/wvx" + url; + } + + return url; + } + + // RTL Gemist contains some streams with different bitrates. + // Try these when playing the others fail + public static string GetAltPlayUrl(string url) + { + if (url.Equals("")) return url; + + if (url.EndsWith("225.wvx")) url = url.Replace("225.wvx", "224.wvx"); + else if (url.EndsWith("805.wvx")) url = url.Replace("805.wvx", "796.wvx"); + + return url; + } + + /// <summary> + /// Fills the facadeview with item + /// </summary> + /// <param name="names">labels for the items</param> + private void ShowList(StringCollection names) + { + ViewTopTen = false; + facadeview.View = GUIFacadeControl.ViewMode.List; + facadeview.Clear(); + + for (int i = 0;i<names.Count;i++) + { + string label = names[i]; + GUIListItem item = new GUIListItem(); + item.Label = label; + + bool isFolder = true; + if (Folders.Count > 0) isFolder = Folders[i]; + + item.IsFolder = isFolder; + Util.Utils.SetDefaultIcons(item); + facadeview.Add(item); + } + + focusFacade(); + } + + /// <summary> + /// Converts a string with wrong characters and replaces those with the good ones + /// </summary> + /// <param name="convertstring">input string</param> + /// <returns>converted string</returns> + public static string ConvertString(string convertstring) + { + convertstring = convertstring.Replace("&", "&"); + convertstring = convertstring.Replace("'", "'"); + convertstring = convertstring.Replace("é", "\xE9"); + convertstring = convertstring.Replace("ö", "\xF6"); + convertstring = convertstring.Replace("ë", "\xEB"); + convertstring = convertstring.Replace("ü", "\xFC"); + convertstring.Trim(); + return convertstring; + } + + /// <summary> + /// Error Dialog + /// </summary> + /// <param name="text">error text</param> + private void ShowDialog(string text) + { + GUIDialogOK dialog = new GUIDialogOK(); + dialog.SetHeading("Error"); + dialog.SetLine(1, text); + dialog.DoModal(GetID); + } + + /// <summary> + /// Save the favorites + /// </summary> + private void SaveFavorietenXML() + { + string dir = Directory.GetCurrentDirectory(); + + File.Delete(dir + @"\RTLGemistFav.xml"); + + using (MediaPortal.Profile.Settings writer = new MediaPortal.Profile.Settings(dir + @"\RTLGemistFav.xml", false)) + { + writer.Clear(); + int i = 0; + foreach (string favoriet in FavNames) + { + writer.SetValue(i.ToString(), "ProgrammaNaam", favoriet); + writer.SetValue(i.ToString(), "ProgrammaUrl", FavUrls[i]); + i++; + } + while (i < FavCount) + { + writer.SetValue(i.ToString(), "ProgrammaNaam", ""); + writer.SetValue(i.ToString(), "PorgrammaUrl", ""); + i++; + } + } + } + + /// <summary> + /// Load the favorites + /// </summary> + private void LoadFavorietenXML() + { + string dir = Directory.GetCurrentDirectory(); + using (MediaPortal.Profile.Settings reader = new MediaPortal.Profile.Settings(dir + @"\RTLGemistFav.xml", false)) + { + int i = 0; + while (i != 100) + { + string result = reader.GetValueAsString(i.ToString(), "ProgrammaNaam", ""); + if (result.Equals("")) + { + FavCount = i - 1; + return; + } + else + { + FavNames.Add(reader.GetValue(i.ToString(), "ProgrammaNaam")); + FavNames[i] = ConvertString(MakeFirstUpper(FavNames[i])); + FavUrls.Add(reader.GetValue(i.ToString(), "ProgrammaUrl")); + FavUrls[i] = ConvertString(FavUrls[i]); + i++; + } + } + } + } + + /// <summary> + /// Shows the first "top 10" items that were on + /// </summary> + private void ShowTopTen() + { + Names.Clear(); + Urls.Clear(); + ViewFavorieten = false; + ViewTopTen = true; + + string url = host + @"/experience/media/context/index.xml"; + string result = wc.GetXML(url); + try + { + XPathDocument document = new XPathDocument(new System.IO.StringReader(result)); + XPathNavigator navigator = document.CreateNavigator(); + XPathExpression programs = XPathExpression.Compile("//li/a"); //returns nodeset + + XPathNodeIterator nodes = navigator.Select(programs); + + int i = 0; + while (nodes.MoveNext()) + { + //Log.Info("UitGemist: Found node '" + nodes.Current.ToString() + "'"); + + Names.Add(@nodes.Current.ToString()); + Names[i] = MakeFirstUpper(ConvertString(Names[i])); + Urls.Add(@nodes.Current.GetAttribute("href", "").ToString()); + Urls[i] = ConvertString(Urls[i]); + i++; + } + + // Show the results! + + facadeview.View = GUIFacadeControl.ViewMode.List; + facadeview.Clear(); + + for (i = 0; i < Names.Count; i++) + { + string label = Names[i]; + GUIListItem item = new GUIListItem(); + item.Label = label; + item.IsFolder = false; + Util.Utils.SetDefaultIcons(item); + facadeview.Add(item); + } + } + catch (XmlException e) + { + Log.Info("UitGemist: Invalid xml document '" + url + "'. Details follow."); + Log.Info("UitGemist: Line number: " + e.LineNumber + ":"); + Log.Info(e.StackTrace); + } + } + + private void PlayUitzending(string url, int bandIndex) + { + string[] band; + if (ShowWaitCursor.getBroadBand()) band = broadband; + else band = smallband; + + if (url.Equals("") || bandIndex == -1) return; + if (bandIndex >= band.Length) + { + GUIDialogOK dlg = (GUIDialogOK)GUIWindowManager.GetWindow((int)GUIWindow.Window.WINDOW_DIALOG_OK); + dlg.SetHeading("Stream not found"); + dlg.SetLine(1, "The requested stream could not be found."); + dlg.DoModal(GUIWindowManager.ActiveWindow); + return; + } + + string streamfile = band[bandIndex]; + + Log.Info("UitGemist: Playing uitzending: '" + url + streamfile + "'"); + + if (g_Player.Play(url + streamfile)) + { + GUIGraphicsContext.IsFullScreenVideo = true; + GUIWindowManager.ActivateWindow((int)GUIWindow.Window.WINDOW_FULLSCREEN_VIDEO); + } + else PlayUitzending(url, bandIndex+1); + } + + private string MakeFirstUpper(string name) + { + if (name.Length <= 1) return name.ToUpper(); + Char[] letters = name.ToCharArray(); + letters[0] = Char.ToUpper(letters[0]); + return new string(letters); + } + + private void focusFacade() + { + if (facadeview.Count > 0 && !facadeview.Focus) GUIControl.FocusControl(GUIWindowManager.ActiveWindow, facadeview.GetID); + else if (facadeview.Count == 0) GUIControl.FocusControl(GUIWindowManager.ActiveWindow, btnFavoriet.GetID); + } + + } +} \ No newline at end of file Property changes on: trunk/plugins/UitzendingGemist/UitGemist/RTLGemist.cs ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/UitzendingGemist/UitGemist/SecondScreen.cs =================================================================== --- trunk/plugins/UitzendingGemist/UitGemist/SecondScreen.cs (rev 0) +++ trunk/plugins/UitzendingGemist/UitGemist/SecondScreen.cs 2007-01-29 21:24:59 UTC (rev 45) @@ -0,0 +1,211 @@ +using System; +using System.Collections.Generic; +using System.Collections.Specialized; +using System.Text; +using System.Text.RegularExpressions; +using MediaPortal.GUI.Library; +using MediaPortal.Player; +using MediaPortal.Dialogs; +using MediaPortal.Playlists; + +namespace MediaPortal.GUI.UitGemist +{ + public class SecondScreen: GUIWindow + { + //#region SkinControlAttributes + [SkinControlAttribute(10)] + protected GUIListControl listview = null; + [SkinControlAttribute(3)] + protected GUIImage image = null; + //[SkinControlAttribute(3)] + //protected GUIImage imgPrgramma = null; + //[SkinControlAttribute(4)] + //protected GUILabelControl lblGenre = null; + //[SkinControlAttribute(5)] + //protected GUILabelControl lblOmroep = null; + //[SkinControlAttribute(6)] + //protected GUISelectButtonControl btnRubriek = null; + //#endregion + + public static string Url = string.Empty; + public static bool ViewVideo = false; + private string imageurl = string.Empty; + private StringCollection Datum = new StringCollection(); + private StringCollection Omschrijving = new StringCollection(); + private StringCollection Views = new StringCollection(); + private StringCollection Waardering = new StringCollection(); + private StringCollection StreamUrl = new StringCollection(); + + public override int GetID + { + get + { + return 6801; + } + set + { + base.GetID = value; + } + } + + public override bool Init() + { + return Load(GUIGraphicsContext.Skin + @"\UitGemist2.xml"); + } + + protected override void OnPageLoad() + { + if (ViewVideo) + { + NLGemist.wc.GetUrl("http://www.uitzendinggemist.nl"); + GetInfo(Url); + ViewVideo = false; + } + else + { + GetInfo(Url); + } + Showlist(); + base.OnPageLoad(); + } + + protected override void OnPageDestroy(int new_windowId) + { + image.FileName = GUIGraphicsContext.Skin + @"\media\background.png"; + base.OnPageDestroy(new_windowId); + } + + protected override void OnClicked(int controlId, GUIControl control, Action.ActionType actionType) + { + if (control == listview) + { + string mmsurl = string.Empty; + mmsurl = NLGemist.GetPlayUrl(StreamUrl[listview.SelectedListItemIndex]); + GUIGraphicsContext.IsFullScreenVideo = true; + GUIWindowManager.ActivateWindow((int)GUIWindow.Windo... [truncated message content] |
From: <moi...@us...> - 2007-01-29 21:23:22
|
Revision: 44 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=44&view=rev Author: moiristo Date: 2007-01-29 13:23:09 -0800 (Mon, 29 Jan 2007) Log Message: ----------- Removed old files Removed Paths: ------------- trunk/plugins/UitzendingGemist/UitGemist/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <moi...@us...> - 2007-01-29 21:20:36
|
Revision: 43 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=43&view=rev Author: moiristo Date: 2007-01-29 13:20:27 -0800 (Mon, 29 Jan 2007) Log Message: ----------- Update with latest version Added Paths: ----------- trunk/plugins/UitzendingGemist/UitGemist.suo trunk/plugins/UitzendingGemist/images/ trunk/plugins/UitzendingGemist/images/Thumbs.db trunk/plugins/UitzendingGemist/images/UitGemist.psd trunk/plugins/UitzendingGemist/images/hover_uitgemist.png trunk/plugins/UitzendingGemist/images/rtlgemist.png trunk/plugins/UitzendingGemist/images/rtlgemist2.png trunk/plugins/UitzendingGemist/images/uitgemist.png trunk/plugins/UitzendingGemist/skin/[Default Skin]/ trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/ trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/Thumbs.db trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/hover_nlgemist.png trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/hover_rtlgemist.png trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/hover_uitgemist.png trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/nlgemist.png trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/rtlgemist.png trunk/plugins/UitzendingGemist/skin/[Default Skin]/RtlGemist.xml trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemist.xml trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemist2.xml trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemistMain.xml trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/ trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/ trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/Thumbs.db trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/hover_nlgemist.png trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/hover_rtlgemist.png trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/hover_uitgemist.png trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/nlgemist.png trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/rtlgemist.png trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/RtlGemist.xml trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemist.xml trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemist2.xml trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemistMain.xml Added: trunk/plugins/UitzendingGemist/UitGemist.suo =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/UitGemist.suo ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/images/Thumbs.db =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/images/Thumbs.db ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/images/UitGemist.psd =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/images/UitGemist.psd ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/images/hover_uitgemist.png =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/images/hover_uitgemist.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/images/rtlgemist.png =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/images/rtlgemist.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/images/rtlgemist2.png =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/images/rtlgemist2.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/images/uitgemist.png =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/images/uitgemist.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/Thumbs.db =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/Thumbs.db ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/hover_nlgemist.png =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/hover_nlgemist.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/hover_rtlgemist.png =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/hover_rtlgemist.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/hover_uitgemist.png =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/hover_uitgemist.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/nlgemist.png =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/nlgemist.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/rtlgemist.png =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/skin/[Default Skin]/Media/rtlgemist.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/skin/[Default Skin]/RtlGemist.xml =================================================================== --- trunk/plugins/UitzendingGemist/skin/[Default Skin]/RtlGemist.xml (rev 0) +++ trunk/plugins/UitzendingGemist/skin/[Default Skin]/RtlGemist.xml 2007-01-29 21:20:27 UTC (rev 43) @@ -0,0 +1,42 @@ +<window> + <id>6802</id> + <defaultcontrol>50</defaultcontrol> + <allowoverlay>yes</allowoverlay> + <define>#header.label:RTLGemist</define> +<controls> + <import>common.window.xml</import> + <control> + <type>group</type> + <description>group element</description> + <animation>FlyInFromLeft</animation> + <layout>StackLayout</layout> + <posX>60</posX> + <posY>97</posY> + <control> + <description>Favorieten</description> + <type>button</type> + <id>2</id> + <label>Favorieten</label> + <onup>17</onup> + <ondown>3</ondown> + </control> + <control> + <description>Top Tien</description> + <type>button</type> + <id>3</id> + <label>Top Tien</label> + <onup>2</onup> + <ondown>4</ondown> + </control> + <control> + <description>Programma's</description> + <type>button</type> + <id>4</id> + <label>Programma's</label> + <onup>3</onup> + <ondown>2</ondown> + </control> + </control> + <import>common.facade.xml</import> +</controls> +</window> \ No newline at end of file Property changes on: trunk/plugins/UitzendingGemist/skin/[Default Skin]/RtlGemist.xml ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemist.xml =================================================================== --- trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemist.xml (rev 0) +++ trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemist.xml 2007-01-29 21:20:27 UTC (rev 43) @@ -0,0 +1,117 @@ +<window> + <id>6800</id> + <defaultcontrol>50</defaultcontrol> + <allowoverlay>yes</allowoverlay> + <define>#header.label:UitGemist</define> +<controls> + <import>common.window.xml</import> + <control> + <type>group</type> + <description>group element</description> + <animation>FlyInFromLeft</animation> + <layout>StackLayout</layout> + <posX>60</posX> + <posY>97</posY> + <control> + <description>Favorieten</description> + <type>button</type> + <id>2</id> + <label>Favorieten</label> + <onup>17</onup> + <ondown>3</ondown> + </control> + <control> + <type>selectbutton</type> + <description>Letter button</description> + <id>3</id> + <label>Titel</label> + <onup>2</onup> + <ondown>4</ondown> + </control> + <control> + <type>selectbutton</type> + <description>Letter button</description> + <id>4</id> + <label>Dag</label> + <onup>3</onup> + <ondown>5</ondown> + </control> + <control> + <type>selectbutton</type> + <description>Letter button</description> + <id>5</id> + <label>Net/zender</label> + <onup>4</onup> + <ondown>6</ondown> + </control> + <control> + <type>selectbutton</type> + <description>Letter button</description> + <id>6</id> + <label>Omroep</label> + <onup>5</onup> + <ondown>7</ondown> + </control> + <control> + <type>selectbutton</type> + <description>Letter button</description> + <id>7</id> + <label>Genre</label> + <onup>6</onup> + <ondown>8</ondown> + </control> + <control> + <description>Moet je Zien</description> + <type>button</type> + <id>8</id> + <label>Moet je zien</label> + <onup>7</onup> + <onright>50</onright> + <ondown>50</ondown> + </control> + <control> + <type>group</type> + <description>group element</description> + <control> + <type>imagelist</type> + <id>11</id> + <posX>550</posX> + <posY>350</posY> + <width>100</width> + <height>32</height> + <textureWidth>16</textureWidth> + <textureHeight>16</textureHeight> + <subitems> + <subitem>greystar.png</subitem> + <subitem>star.png</subitem> + </subitems> + <orientation>horizontal</orientation> + <align>left</align> + <percentage>#rating</percentage> + </control> + <control> + <type>textboxscrollup</type> + <description>Programma-info</description> + <id>12</id> + <posX>260</posX> + <posY>380</posY> + <width>375</width> + <height>100</height> + <label>#plot</label> + <textcolor>ffffffff</textcolor> + <font>font12</font> + </control> + <control> + <description>Bekeken</description> + <type>label</type> + <id>13</id> + <posX>260</posX> + <posY>350</posY> + <label>#votes keer bekeken</label> + <textcolor>ffffffff</textcolor> + </control> + </control> + </control> + <import>common.facade.xml</import> +</controls> +</window> \ No newline at end of file Property changes on: trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemist.xml ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemist2.xml =================================================================== --- trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemist2.xml (rev 0) +++ trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemist2.xml 2007-01-29 21:20:27 UTC (rev 43) @@ -0,0 +1,126 @@ +<window> + <id>6801</id> + <defaultcontrol>10</defaultcontrol> + <allowoverlay>yes</allowoverlay> + <define>#header.label:Programma</define> + <controls> + <import>common.window.xml</import> + <control> + <type>group</type> + <description>group element</description> + <animation>FlyInFromTop</animation> + <control> + <type>image</type> + <description>Program image</description> + <id>3</id> + <posX>60</posX> + <posY>115</posY> + <width>100</width> + <height>75</height> + <texture>background.png</texture> + </control> + <control> + <description>Naam van gekozen programma</description> + <type>label</type> + <id>2</id> + <posX>165</posX> + <posY>95</posY> + <label>#title</label> + </control> + <control> + <description>Genre</description> + <type>label</type> + <id>0</id> + <posX>550</posX> + <posY>115</posY> + <label>Genre</label> + <textcolor>ffffffff</textcolor> + </control> + <control> + <description>Display wich genre</description> + <type>label</type> + <id>4</id> + <posX>550</posX> + <posY>130</posY> + <label>#genre</label> + </control> + <control> + <description>Omroep</description> + <type>label</type> + <id>0</id> + <posX>550</posX> + <posY>150</posY> + <label>Omroep</label> + <textcolor>ffffffff</textcolor> + </control> + <control> + <description>Display which omroep</description> + <type>label</type> + <id>5</id> + <posX>550</posX> + <posY>165</posY> + <label>#credits</label> + </control> + <control> + <type>imagelist</type> + <id>1</id> + <posX>550</posX> + <posY>200</posY> + <width>100</width> + <height>32</height> + <textureWidth>16</textureWidth> + <textureHeight>16</textureHeight> + <subitems> + <subitem>greystar.png</subitem> + <subitem>star.png</subitem> + </subitems> + <orientation>horizontal</orientation> + <align>left</align> + <percentage>#rating</percentage> + </control> + <control> + <type>textboxscrollup</type> + <description>Programma-info</description> + <id>6</id> + <posX>165</posX> + <posY>115</posY> + <width>375</width> + <height>105</height> + <label>#plot</label> + <font>font12</font> + <textcolor>ffffffff</textcolor> + </control> + <control> + <description>afleveringen</description> + <type>listcontrol</type> + <id>10</id> + <posX>165</posX> + <posY>225</posY> + <width>485</width> + <height>200</height> + <textXOff>10</textXOff> + <textYOff>2</textYOff> + <textXOff2>420</textXOff2> + <textYOff2>2</textYOff2> + <spaceBetweenItems>5</spaceBetweenItems> + <textureHeight>25</textureHeight> + <keepaspectratio>no</keepaspectratio> + <font2>font10</font2> + <font3>font10</font3> + <onup>17</onup> + </control> + <control> + <type>textboxscrollup</type> + <description>Programma-info</description> + <id>1</id> + <posX>250</posX> + <posY>380</posY> + <width>375</width> + <height>100</height> + <label>#plotoutline</label> + <font>font12</font> + <textcolor>ffffffff</textcolor> + </control> + </control> + </controls> +</window> Property changes on: trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemist2.xml ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemistMain.xml =================================================================== --- trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemistMain.xml (rev 0) +++ trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemistMain.xml 2007-01-29 21:20:27 UTC (rev 43) @@ -0,0 +1,47 @@ +<window> + <id>6799</id> + <defaultcontrol>2</defaultcontrol> + <allowoverlay>yes</allowoverlay> + <define>#header.label:UitzendingGemist</define> + <define>#header.image:</define> + <define>#header.hover:hover_uitgemist.png</define> + + <controls> + <import>common.window.xml</import> + <control> + <type>group</type> + <description>group element</description> + <animation>FlyInFromTop</animation> + <layout>StackLayout</layout> + <posX>80</posX> + <posY>120</posY> + + <!-- topmost item needs an onup with a value of 17 for topbar to work --> + <control> + <description>UitzendingGemist.nl</description> + <type>button</type> + <id>2</id> + <width>560</width> + <height>80</height> + <textureNoFocus>nlgemist.png</textureNoFocus> + <textureFocus>hover_nlgemist.png</textureFocus> + <onup>17</onup> + </control> + + <!-- last item needs an ondown with a value of 2 to support wraparound --> + <control> + <description>RTL Gemist</description> + <type>button</type> + <id>3</id> + <width>560</width> + <height>80</height> + <textXOff>10</textXOff> + <textYOff>5</textYOff> + <textureNoFocus>rtlgemist.png</textureNoFocus> + <textureFocus>hover_rtlgemist.png</textureFocus> + <ondown>2</ondown> + </control> + + </control> + </controls> +</window> Property changes on: trunk/plugins/UitzendingGemist/skin/[Default Skin]/UitGemistMain.xml ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/Thumbs.db =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/Thumbs.db ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/hover_nlgemist.png =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/hover_nlgemist.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/hover_rtlgemist.png =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/hover_rtlgemist.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/hover_uitgemist.png =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/hover_uitgemist.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/nlgemist.png =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/nlgemist.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/rtlgemist.png =================================================================== (Binary files differ) Property changes on: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/Media/rtlgemist.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Added: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/RtlGemist.xml =================================================================== --- trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/RtlGemist.xml (rev 0) +++ trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/RtlGemist.xml 2007-01-29 21:20:27 UTC (rev 43) @@ -0,0 +1,52 @@ +<window> + <id>6802</id> + <defaultcontrol>50</defaultcontrol> + <allowoverlay>yes</allowoverlay> + <define>#header.label:RTLGemist</define> +<controls> + <import>common.window.xml</import> + <control> + <type>image</type> + <description>BackGround</description> + <id>1</id> + <posX>0</posX> + <posY>0</posY> + <width>720</width> + <height>576</height> + <texture>background3.png</texture> + </control> + <control> + <type>group</type> + <description>group element</description> + <animation>FlyInFromLeft</animation> + <layout>StackLayout</layout> + <posX>5</posX> + <posY>125</posY> + <control> + <description>Favorieten</description> + <type>button</type> + <id>2</id> + <label>Favorieten</label> + <onup>17</onup> + <ondown>3</ondown> + </control> + <control> + <description>Top Tien</description> + <type>button</type> + <id>3</id> + <label>Top Tien</label> + <onup>2</onup> + <ondown>4</ondown> + </control> + <control> + <description>Programma's</description> + <type>button</type> + <id>4</id> + <label>Programma's</label> + <onup>3</onup> + <ondown>2</ondown> + </control> + </control> + <import>common.facade.xml</import> +</controls> +</window> \ No newline at end of file Property changes on: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/RtlGemist.xml ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemist.xml =================================================================== --- trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemist.xml (rev 0) +++ trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemist.xml 2007-01-29 21:20:27 UTC (rev 43) @@ -0,0 +1,127 @@ +<window> + <id>6800</id> + <defaultcontrol>50</defaultcontrol> + <allowoverlay>yes</allowoverlay> + <define>#header.label:UitGemist</define> +<controls> + <import>common.window.xml</import> + <control> + <type>image</type> + <description>BackGround</description> + <id>1</id> + <posX>0</posX> + <posY>0</posY> + <width>720</width> + <height>576</height> + <texture>background3.png</texture> + </control> + <control> + <type>group</type> + <description>group element</description> + <animation>FlyInFromLeft</animation> + <layout>StackLayout</layout> + <posX>5</posX> + <posY>125</posY> + <control> + <description>Favorieten</description> + <type>button</type> + <id>2</id> + <label>Favorieten</label> + <onup>17</onup> + <ondown>3</ondown> + </control> + <control> + <type>selectbutton</type> + <description>Letter button</description> + <id>3</id> + <label>Titel</label> + <onup>2</onup> + <ondown>4</ondown> + </control> + <control> + <type>selectbutton</type> + <description>Letter button</description> + <id>4</id> + <label>Dag</label> + <onup>3</onup> + <ondown>5</ondown> + </control> + <control> + <type>selectbutton</type> + <description>Letter button</description> + <id>5</id> + <label>Net/zender</label> + <onup>4</onup> + <ondown>6</ondown> + </control> + <control> + <type>selectbutton</type> + <description>Letter button</description> + <id>6</id> + <label>Omroep</label> + <onup>5</onup> + <ondown>7</ondown> + </control> + <control> + <type>selectbutton</type> + <description>Letter button</description> + <id>7</id> + <label>Genre</label> + <onup>6</onup> + <ondown>8</ondown> + </control> + <control> + <description>Moet je Zien</description> + <type>button</type> + <id>8</id> + <label>Moet je zien</label> + <onup>7</onup> + <onright>50</onright> + <ondown>50</ondown> + </control> + <control> + <type>group</type> + <description>group element</description> + <control> + <type>imagelist</type> + <id>11</id> + <posX>550</posX> + <posY>350</posY> + <width>100</width> + <height>32</height> + <textureWidth>16</textureWidth> + <textureHeight>16</textureHeight> + <subitems> + <subitem>greystar.png</subitem> + <subitem>star.png</subitem> + </subitems> + <orientation>horizontal</orientation> + <align>left</align> + <percentage>#rating</percentage> + </control> + <control> + <type>textboxscrollup</type> + <description>Programma-info</description> + <id>12</id> + <posX>260</posX> + <posY>380</posY> + <width>375</width> + <height>100</height> + <label>#plot</label> + <textcolor>ffffffff</textcolor> + <font>font12</font> + </control> + <control> + <description>Bekeken</description> + <type>label</type> + <id>13</id> + <posX>260</posX> + <posY>350</posY> + <label>#votes keer bekeken</label> + <textcolor>ffffffff</textcolor> + </control> + </control> + </control> + <import>common.facade.xml</import> +</controls> +</window> \ No newline at end of file Property changes on: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemist.xml ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemist2.xml =================================================================== --- trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemist2.xml (rev 0) +++ trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemist2.xml 2007-01-29 21:20:27 UTC (rev 43) @@ -0,0 +1,136 @@ +<window> + <id>6801</id> + <defaultcontrol>10</defaultcontrol> + <allowoverlay>yes</allowoverlay> + <define>#header.label:Programma</define> + <controls> + <import>common.window.xml</import> + <control> + <type>image</type> + <description>BackGround</description> + <id>9</id> + <posX>0</posX> + <posY>0</posY> + <width>720</width> + <height>576</height> + <texture>background.png</texture> + </control> + <control> + <type>group</type> + <description>group element</description> + <animation>FlyInFromTop</animation> + <control> + <type>image</type> + <description>Program image</description> + <id>3</id> + <posX>60</posX> + <posY>125</posY> + <width>100</width> + <height>75</height> + <texture>background.png</texture> + </control> + <control> + <description>Naam van gekozen programma</description> + <type>label</type> + <id>2</id> + <posX>170</posX> + <posY>105</posY> + <label>#title</label> + </control> + <control> + <description>Genre</description> + <type>label</type> + <id>0</id> + <posX>555</posX> + <posY>120</posY> + <label>Genre</label> + <textcolor>ffffffff</textcolor> + </control> + <control> + <description>Display wich genre</description> + <type>label</type> + <id>4</id> + <posX>555</posX> + <posY>138</posY> + <label>#genre</label> + </control> + <control> + <description>Omroep</description> + <type>label</type> + <id>8</id> + <posX>555</posX> + <posY>162</posY> + <label>Omroep</label> + <textcolor>ffffffff</textcolor> + </control> + <control> + <description>Display which omroep</description> + <type>label</type> + <id>5</id> + <posX>555</posX> + <posY>180</posY> + <label>#credits</label> + </control> + <control> + <type>imagelist</type> + <id>7</id> + <posX>555</posX> + <posY>205</posY> + <width>100</width> + <height>32</height> + <textureWidth>16</textureWidth> + <textureHeight>16</textureHeight> + <subitems> + <subitem>greystar.png</subitem> + <subitem>star.png</subitem> + </subitems> + <orientation>horizontal</orientation> + <align>left</align> + <percentage>#rating</percentage> + </control> + <control> + <type>textboxscrollup</type> + <description>Programma-info</description> + <id>6</id> + <posX>170</posX> + <posY>125</posY> + <width>375</width> + <height>105</height> + <label>#plot</label> + <font>font12</font> + <textcolor>ffffffff</textcolor> + </control> + <control> + <description>afleveringen</description> + <type>listcontrol</type> + <id>10</id> + <posX>170</posX> + <posY>240</posY> + <width>485</width> + <height>200</height> + <textXOff>10</textXOff> + <textYOff>2</textYOff> + <textXOff2>420</textXOff2> + <textYOff2>2</textYOff2> + <spaceBetweenItems>5</spaceBetweenItems> + <textureHeight>25</textureHeight> + <keepaspectratio>no</keepaspectratio> + <font2>font10</font2> + <font3>font10</font3> + <onup>17</onup> + </control> + <control> + <type>textboxscrollup</type> + <description>Programma-info</description> + <id>1</id> + <posX>170</posX> + <posY>400</posY> + <width>375</width> + <height>100</height> + <label>#plotoutline</label> + <font>font12</font> + <textcolor>ffffffff</textcolor> + </control> + </control> + </controls> +</window> Property changes on: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemist2.xml ___________________________________________________________________ Name: svn:eol-style + native Added: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemistMain.xml =================================================================== --- trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemistMain.xml (rev 0) +++ trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemistMain.xml 2007-01-29 21:20:27 UTC (rev 43) @@ -0,0 +1,55 @@ +<window> + <id>6799</id> + <defaultcontrol>2</defaultcontrol> + <allowoverlay>yes</allowoverlay> + <define>#header.label:UitzendingGemist</define> + <define>#header.image:</define> + <define>#header.hover:hover_uitgemist.png</define> + + <controls> + <import>common.window.xml</import> + <control> + <description>BackGround</description> + <type>image</type> + <id>1</id> + <posX>0</posX> + <posY>0</posY> + <texture>background.png</texture> + </control> + <control> + <type>group</type> + <description>group element</description> + <animation>FlyInFromTop</animation> + <layout>StackLayout</layout> + <posX>80</posX> + <posY>120</posY> + + <!-- topmost item needs an onup with a value of 17 for topbar to work --> + <control> + <description>UitzendingGemist.nl</description> + <type>button</type> + <id>2</id> + <width>560</width> + <height>80</height> + <textureNoFocus>nlgemist.png</textureNoFocus> + <textureFocus>hover_nlgemist.png</textureFocus> + <onup>17</onup> + </control> + + <!-- last item needs an ondown with a value of 2 to support wraparound --> + <control> + <description>RTL Gemist</description> + <type>button</type> + <id>3</id> + <width>560</width> + <height>80</height> + <textXOff>10</textXOff> + <textYOff>5</textYOff> + <textureNoFocus>rtlgemist.png</textureNoFocus> + <textureFocus>hover_rtlgemist.png</textureFocus> + <ondown>2</ondown> + </control> + + </control> + </controls> +</window> Property changes on: trunk/plugins/UitzendingGemist/skin/[Project Mayhem]/UitGemistMain.xml ___________________________________________________________________ Name: svn:eol-style + native This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sa...@us...> - 2007-01-29 21:07:39
|
Revision: 42 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=42&view=rev Author: saamand Date: 2007-01-29 13:07:30 -0800 (Mon, 29 Jan 2007) Log Message: ----------- Modified Paths: -------------- trunk/plugins/MyLyrics/LyricsEngine/LyricController.cs trunk/plugins/MyLyrics/LyricsEngine/LyricSearch.cs trunk/plugins/MyLyrics/LyricsEngine/Setup.cs trunk/plugins/MyLyrics/LyricsEngine/Wiki.cs trunk/plugins/MyLyrics/My Lyrics/MyLyrics.cs trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.Designer.cs trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.cs Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricController.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/LyricController.cs 2007-01-29 16:38:44 UTC (rev 41) +++ trunk/plugins/MyLyrics/LyricsEngine/LyricController.cs 2007-01-29 21:07:30 UTC (rev 42) @@ -60,6 +60,8 @@ int m_managedThreadId = -1; public static event EventHandler StopTheSearchAndAbort; + + private bool m_noMoreValidLicenseKeys = false; @@ -319,5 +321,11 @@ { set { LyricController.noOfLyricsToSearch = value; } } + + public bool NoMoreValidLicenseKeys + { + get { return m_noMoreValidLicenseKeys; } + set { m_noMoreValidLicenseKeys = value; } + } } } Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricSearch.cs =================================================================== (Binary files differ) Modified: trunk/plugins/MyLyrics/LyricsEngine/Setup.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/Setup.cs 2007-01-29 16:38:44 UTC (rev 41) +++ trunk/plugins/MyLyrics/LyricsEngine/Setup.cs 2007-01-29 21:07:30 UTC (rev 42) @@ -15,7 +15,7 @@ "LeosLyrics", "LyricsFreak", "SongMeanings" - //"LyricsHostring", + //"LyricsHosting", //"MusicMadeMe", }; Modified: trunk/plugins/MyLyrics/LyricsEngine/Wiki.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/Wiki.cs 2007-01-29 16:38:44 UTC (rev 41) +++ trunk/plugins/MyLyrics/LyricsEngine/Wiki.cs 2007-01-29 21:07:30 UTC (rev 42) @@ -33,7 +33,7 @@ IAsyncResult ar = del.BeginInvoke(this.artist, this.title, null, null); - while (noOfTries < 12) + while (noOfTries < 20) { // If the user has aborted stop the search and return (false) if (Abort) @@ -46,7 +46,7 @@ } else { - Thread.Sleep(2000); + Thread.Sleep(500); } ++noOfTries; } Modified: trunk/plugins/MyLyrics/My Lyrics/MyLyrics.cs =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/MyLyrics.cs 2007-01-29 16:38:44 UTC (rev 41) +++ trunk/plugins/MyLyrics/My Lyrics/MyLyrics.cs 2007-01-29 21:07:30 UTC (rev 42) @@ -75,7 +75,9 @@ static bool lyricsFound = false; + String[] m_sitesToSearch; + public GUIMyLyrics() { m_EventStopThread = new ManualResetEvent(false); @@ -202,14 +204,67 @@ GUIControl.ClearControl(GetID, (int)Controls.CONTROL_Lyric); GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_Lyric, m_LyricText); + bool useSing365, useLyricsHosting, useLyricsMania, useSongMeanings, useLyricsFreak, useMMMD, useLeosLyrics, useLyrics007, useLyricWiki; + using (MediaPortal.Profile.Settings xmlreader = new MediaPortal.Profile.Settings("MediaPortal.xml")) { - m_GoogleLicenseKeys[0] = xmlreader.GetValueAsString("myLyrics", "googleLicenseKey1", ""); + m_GoogleLicenseKeys[0] = xmlreader.GetValueAsString("myLyrics", "googleLicenseKey1", "zhQlW3ZQFHLE2dibwGRcpcDJvThQ/TTU"); m_GoogleLicenseKeys[1] = xmlreader.GetValueAsString("myLyrics", "googleLicenseKey2", ""); m_GoogleLicenseKeys[2] = xmlreader.GetValueAsString("myLyrics", "googleLicenseKey3", ""); m_GoogleLicenseKeys[3] = xmlreader.GetValueAsString("myLyrics", "googleLicenseKey4", ""); m_GoogleLicenseKeys[4] = xmlreader.GetValueAsString("myLyrics", "googleLicenseKey5", ""); + + useSing365 = ((string)xmlreader.GetValueAsString("myLyrics", "useSing365", "False")).ToString().Equals("True") ? true : false; + useLyricsHosting = ((string)xmlreader.GetValueAsString("myLyrics", "useLyricsHosting", "False")).ToString().Equals("True") ? true : false; + useLyricsMania = ((string)xmlreader.GetValueAsString("myLyrics", "useLyricsMania", "False")).ToString().Equals("True") ? true : false; + useSongMeanings = ((string)xmlreader.GetValueAsString("myLyrics", "useSongMeaning", "False")).ToString().Equals("True") ? true : false; + useLyricsFreak = ((string)xmlreader.GetValueAsString("myLyrics", "useLyricsFreak", "False")).ToString().Equals("True") ? true : false; + useMMMD = ((string)xmlreader.GetValueAsString("myLyrics", "useMMMD", "False")).ToString().Equals("True") ? true : false; + useLeosLyrics = ((string)xmlreader.GetValueAsString("myLyrics", "useLeosLyrics", "False")).ToString().Equals("True") ? true : false; + useLyrics007 = ((string)xmlreader.GetValueAsString("myLyrics", "useLyrics007", "False")).ToString().Equals("True") ? true : false; + useLyricWiki = ((string)xmlreader.GetValueAsString("myLyrics", "useLyricWiki", "True")).ToString().Equals("True") ? true : false; } + + ArrayList sitesToSearch = new ArrayList(); + + if (useSing365 && Setup.IsMember("Sing365")) + { + sitesToSearch.Add("Sing365"); + } + if (useLyricsHosting && Setup.IsMember("LyricsHosting")) + { + sitesToSearch.Add("LyricsHosting"); + } + if (useLyricsMania && Setup.IsMember("LyricsMania")) + { + sitesToSearch.Add("LyricsMania"); + } + if (useSongMeanings && Setup.IsMember("SongMeanings")) + { + sitesToSearch.Add("SongMeanings"); + } + if (useLyricsFreak && Setup.IsMember("LyricsFreak")) + { + sitesToSearch.Add("LyricsFreak"); + } + if (useMMMD && Setup.IsMember("MusicMadeMe")) + { + sitesToSearch.Add("MusicMadeMe"); + } + if (useLeosLyrics && Setup.IsMember("LeosLyrics")) + { + sitesToSearch.Add("LeosLyrics"); + } + if (useLyrics007 && Setup.IsMember("Lyrics007")) + { + sitesToSearch.Add("Lyrics007"); + } + if (useLyricWiki && Setup.IsMember("LyricWiki")) + { + sitesToSearch.Add("LyricWiki"); + } + + m_sitesToSearch = (string[])sitesToSearch.ToArray(typeof(string)); } void SaveSettings() @@ -320,7 +375,7 @@ lc.GoogleLicenseKey = m_GoogleLicenseKeys[m_GoogleLicenseKeyIndex]; - LyricConfigInfo lyricConfigInfo = new LyricConfigInfo(lc.GoogleLicenseKey, m_artist, m_title, "lyrics", Setup.accessibleLyricSites); + LyricConfigInfo lyricConfigInfo = new LyricConfigInfo(lc.GoogleLicenseKey, m_artist, m_title, "lyrics", m_sitesToSearch); lc.addNewLyricSearch(lyricConfigInfo); } } @@ -447,8 +502,10 @@ { set { - //m_StatusText = ((String)value[0]).ToString() + ((String)value[1]).ToString(); - //GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_LBStatus, m_StatusText); + 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); } } @@ -456,10 +513,7 @@ { set { - //int noToSearch = (int)value[0]; - //int noSearched = (int)value[1]; - //int noFound = (int)value[2]; - //int noNotFound = (int)value[2]; + } } @@ -480,7 +534,8 @@ ShowLyricOnScreen(lyricText, site); SaveLyricToDatabase(); - if (lc != null) + // if not found by LyricWiki, write which license key was used + if (lc != null && !site.Equals("LyricWiki")) { LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Information, 0, LyricDiagnostics.elapsedTimeString() + (lc.GoogleLicenseKey.Equals("") ? "empty key" : lc.GoogleLicenseKey)); } @@ -507,7 +562,7 @@ if (!lyricsFound && m_artist.Equals(artist) && m_title.Equals(title)) { LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Information, 0, LyricDiagnostics.elapsedTimeString() + "Search terminates: No lyric found..."); - m_StatusText = "No lyric found."; + m_StatusText = "No lyric found"; GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_LBStatus, m_StatusText); } } @@ -551,8 +606,9 @@ if (googlePopUpMessageShown == false) { LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Warning, 0, LyricDiagnostics.elapsedTimeString() + noValidKeysMessage); - PopUpMessage("Google license key", "All queries of your google license key(s)", "has been used, which properly will result", "in decrease of the lyrics hit ratio."); + PopUpMessage("LyricWiki only valid source", "Your google license keys don't hold any valid query entries", "Therefore only LyricWiki will be searched.", ""); googlePopUpMessageShown = true; + lc.NoMoreValidLicenseKeys = true; } } } Modified: trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.Designer.cs =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.Designer.cs 2007-01-29 16:38:44 UTC (rev 41) +++ trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.Designer.cs 2007-01-29 21:07:30 UTC (rev 42) @@ -631,7 +631,7 @@ this.tabPageSetup.Padding = new System.Windows.Forms.Padding(3); this.tabPageSetup.Size = new System.Drawing.Size(520, 502); this.tabPageSetup.TabIndex = 2; - this.tabPageSetup.Text = "Setup"; + this.tabPageSetup.Text = "Search Setup"; this.tabPageSetup.UseVisualStyleBackColor = true; // // gbSettings @@ -773,8 +773,6 @@ // cbLeosLyrics // this.cbLeosLyrics.AutoSize = true; - this.cbLeosLyrics.Checked = true; - this.cbLeosLyrics.CheckState = System.Windows.Forms.CheckState.Checked; this.cbLeosLyrics.FlatStyle = System.Windows.Forms.FlatStyle.Popup; this.cbLeosLyrics.Location = new System.Drawing.Point(208, 43); this.cbLeosLyrics.Name = "cbLeosLyrics"; @@ -799,8 +797,6 @@ // cbLyricsMania // this.cbLyricsMania.AutoSize = true; - this.cbLyricsMania.Checked = true; - this.cbLyricsMania.CheckState = System.Windows.Forms.CheckState.Checked; this.cbLyricsMania.FlatStyle = System.Windows.Forms.FlatStyle.Popup; this.cbLyricsMania.Location = new System.Drawing.Point(49, 43); this.cbLyricsMania.Name = "cbLyricsMania"; @@ -812,8 +808,6 @@ // cbLyrics007 // this.cbLyrics007.AutoSize = true; - this.cbLyrics007.Checked = true; - this.cbLyrics007.CheckState = System.Windows.Forms.CheckState.Checked; this.cbLyrics007.FlatStyle = System.Windows.Forms.FlatStyle.Popup; this.cbLyrics007.Location = new System.Drawing.Point(208, 21); this.cbLyrics007.Name = "cbLyrics007"; @@ -825,8 +819,6 @@ // cbSing365 // this.cbSing365.AutoSize = true; - this.cbSing365.Checked = true; - this.cbSing365.CheckState = System.Windows.Forms.CheckState.Checked; this.cbSing365.FlatStyle = System.Windows.Forms.FlatStyle.Popup; this.cbSing365.Location = new System.Drawing.Point(49, 65); this.cbSing365.Name = "cbSing365"; @@ -838,8 +830,6 @@ // cbSongMeaning // this.cbSongMeaning.AutoSize = true; - this.cbSongMeaning.Checked = true; - this.cbSongMeaning.CheckState = System.Windows.Forms.CheckState.Checked; this.cbSongMeaning.FlatStyle = System.Windows.Forms.FlatStyle.Popup; this.cbSongMeaning.Location = new System.Drawing.Point(366, 21); this.cbSongMeaning.Name = "cbSongMeaning"; @@ -851,8 +841,6 @@ // cbLyricsFreak // this.cbLyricsFreak.AutoSize = true; - this.cbLyricsFreak.Checked = true; - this.cbLyricsFreak.CheckState = System.Windows.Forms.CheckState.Checked; this.cbLyricsFreak.FlatStyle = System.Windows.Forms.FlatStyle.Popup; this.cbLyricsFreak.Location = new System.Drawing.Point(208, 65); this.cbLyricsFreak.Name = "cbLyricsFreak"; @@ -921,19 +909,19 @@ this.mpLabel6.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.mpLabel6.Location = new System.Drawing.Point(11, 72); this.mpLabel6.Name = "mpLabel6"; - this.mpLabel6.Size = new System.Drawing.Size(55, 16); + this.mpLabel6.Size = new System.Drawing.Size(50, 16); this.mpLabel6.TabIndex = 19; this.mpLabel6.Text = "Notice:"; // // lbGoogleNotice // this.lbGoogleNotice.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.lbGoogleNotice.Location = new System.Drawing.Point(62, 72); + this.lbGoogleNotice.Location = new System.Drawing.Point(67, 72); this.lbGoogleNotice.Name = "lbGoogleNotice"; - this.lbGoogleNotice.Size = new System.Drawing.Size(412, 25); + this.lbGoogleNotice.Size = new System.Drawing.Size(433, 38); this.lbGoogleNotice.TabIndex = 18; - this.lbGoogleNotice.Text = "Currently the Google web service does not require a license key to operate!\r\nAcco" + - "rdingly it is recommended to use all of the seven working lyric sites."; + this.lbGoogleNotice.Text = "As of December 5, 2006, Google are no longer issuing new API keys for the SOAP Se" + + "arch API. Users with existing SOAP Search API keys will not be affected.\r\n"; // // labelPluginBannerHint // @@ -980,7 +968,7 @@ // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(529, 566); + this.ClientSize = new System.Drawing.Size(530, 562); this.ControlBox = false; this.Controls.Add(this.btClose); this.Controls.Add(this.tabControl); Modified: trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.cs =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.cs 2007-01-29 16:38:44 UTC (rev 41) +++ trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.cs 2007-01-29 21:07:30 UTC (rev 42) @@ -118,21 +118,21 @@ { try { - tbLicenseKey1.Text = xmlreader.GetValueAsString("myLyrics", "googleLicenseKey1", ""); + tbLicenseKey1.Text = xmlreader.GetValueAsString("myLyrics", "googleLicenseKey1", "zhQlW3ZQFHLE2dibwGRcpcDJvThQ/TTU"); tbLicenseKey2.Text = xmlreader.GetValueAsString("myLyrics", "googleLicenseKey2", ""); tbLicenseKey3.Text = xmlreader.GetValueAsString("myLyrics", "googleLicenseKey3", ""); tbLicenseKey4.Text = xmlreader.GetValueAsString("myLyrics", "googleLicenseKey4", ""); tbLicenseKey5.Text = xmlreader.GetValueAsString("myLyrics", "googleLicenseKey5", ""); lbLimit.Text = xmlreader.GetValueAsString("myLyrics", "limit", "100"); - cbSing365.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useSing365", "True")).ToString().Equals("True") ? true : false; + cbSing365.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useSing365", "False")).ToString().Equals("True") ? true : false; cbLyricsHosting.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useLyricsHosting", "False")).ToString().Equals("True") ? true : false; - cbLyricsMania.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useLyricsMania", "True")).ToString().Equals("True") ? true : false; - cbSongMeaning.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useSongMeaning", "True")).ToString().Equals("True") ? true : false; - cbLyricsFreak.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useLyricsFreak", "True")).ToString().Equals("True") ? true : false; + cbLyricsMania.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useLyricsMania", "False")).ToString().Equals("True") ? true : false; + cbSongMeaning.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useSongMeaning", "False")).ToString().Equals("True") ? true : false; + cbLyricsFreak.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useLyricsFreak", "False")).ToString().Equals("True") ? true : false; cbMMMD.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useMMMD", "False")).ToString().Equals("True") ? true : false; - cbLeosLyrics.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useLeosLyrics", "True")).ToString().Equals("True") ? true : false; - cbLyrics007.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useLyrics007", "True")).ToString().Equals("True") ? true : false; + cbLeosLyrics.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useLeosLyrics", "False")).ToString().Equals("True") ? true : false; + cbLyrics007.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useLyrics007", "False")).ToString().Equals("True") ? true : false; cbLyricWiki.Checked = ((string)xmlreader.GetValueAsString("myLyrics", "useLyricWiki", "True")).ToString().Equals("True") ? true : false; if (Setup.IsMember("Sing365") == false) @@ -140,7 +140,7 @@ cbSing365.Checked = false; cbSing365.Enabled = false; } - if (Setup.IsMember("LyricsHostring") == false) + if (Setup.IsMember("LyricsHosting") == false) { cbLyricsHosting.Checked = false; cbLyricsHosting.Enabled = false; @@ -472,6 +472,7 @@ } else { + lc.NoMoreValidLicenseKeys = true; ThreadFinished = new String[] { m_artist, m_track, "The search has ended due to no more valid license keys entries today.", "" }; } } @@ -568,7 +569,7 @@ if (cbLyricsFreak.Checked) sitesToSearch.Add("LyricsFreak"); if (cbSongMeaning.Checked) sitesToSearch.Add("SongMeanings"); if (cbMMMD.Checked) sitesToSearch.Add("MusicMadeMe"); - if (cbLyricsHosting.Checked) sitesToSearch.Add("LyricsHostring"); + if (cbLyricsHosting.Checked) sitesToSearch.Add("LyricsHosting"); return (string[])sitesToSearch.ToArray("".GetType()); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pat...@us...> - 2007-01-29 16:38:50
|
Revision: 41 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=41&view=rev Author: patrick_sf Date: 2007-01-29 08:38:44 -0800 (Mon, 29 Jan 2007) Log Message: ----------- Updated to allow digital subchannels in the format of 9-2 or 003603 Modified Paths: -------------- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SerialInterface/SerialInterface.cs trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/obj/TunerPlugin.csproj.FileList.txt Removed Paths: ------------- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/DirecTV.suo Deleted: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/DirecTV.suo =================================================================== (Binary files differ) Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SerialInterface/SerialInterface.cs =================================================================== --- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SerialInterface/SerialInterface.cs 2007-01-29 13:20:56 UTC (rev 40) +++ trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SerialInterface/SerialInterface.cs 2007-01-29 16:38:44 UTC (rev 41) @@ -446,6 +446,7 @@ // it was, so now check if the command succeeded WriteDebug("DirecTV.SerialInterface.SendCommand(): data is being processed by box"); + // The HTL-HD box sends a null byte back before the Successful so check for it bool okContinue = false; ReadResponse(Response.NULL_BYTE, out expect, out reponse); if (reponse == (byte)Response.NULL_BYTE) Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj =================================================================== --- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj 2007-01-29 13:20:56 UTC (rev 40) +++ trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj 2007-01-29 16:38:44 UTC (rev 41) @@ -60,15 +60,19 @@ </ItemGroup> <ItemGroup> <Reference Include="Accessibility" /> - <Reference Include="Core, Version=1.0.2546.32606, Culture=neutral, processorArchitecture=x86"> + <Reference Include="Core, Version=1.0.2585.19609, Culture=neutral, processorArchitecture=x86"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\..\MediaPortal-References-v0.2.2-Release\Core.DLL</HintPath> + <HintPath>..\..\..\..\References-MP-SVN\Core.dll</HintPath> </Reference> <Reference Include="System" /> <Reference Include="System.Data" /> <Reference Include="System.Drawing" /> <Reference Include="System.Windows.Forms" /> <Reference Include="System.Xml" /> + <Reference Include="Utils, Version=1.0.2585.19595, Culture=neutral, processorArchitecture=x86"> + <SpecificVersion>False</SpecificVersion> + <HintPath>..\..\..\..\References-MP-SVN\Utils.dll</HintPath> + </Reference> </ItemGroup> <PropertyGroup> <PostBuildEvent> Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/obj/TunerPlugin.csproj.FileList.txt =================================================================== --- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/obj/TunerPlugin.csproj.FileList.txt 2007-01-29 13:20:56 UTC (rev 40) +++ trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/obj/TunerPlugin.csproj.FileList.txt 2007-01-29 16:38:44 UTC (rev 41) @@ -6,3 +6,4 @@ bin\Release\Core.DLL obj\Release\DirecTV.TunerPlugin.dll obj\Release\DirecTV.TunerPlugin.pdb +bin\Release\Utils.dll This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pat...@us...> - 2007-01-29 13:20:58
|
Revision: 40 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=40&view=rev Author: patrick_sf Date: 2007-01-29 05:20:56 -0800 (Mon, 29 Jan 2007) Log Message: ----------- Modified Paths: -------------- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/obj/TunerPlugin.csproj.FileList.txt Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/obj/TunerPlugin.csproj.FileList.txt =================================================================== --- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/obj/TunerPlugin.csproj.FileList.txt 2007-01-29 13:18:00 UTC (rev 39) +++ trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/obj/TunerPlugin.csproj.FileList.txt 2007-01-29 13:20:56 UTC (rev 40) @@ -4,15 +4,5 @@ bin\Release\DirecTV.TunerPlugin.dll bin\Release\DirecTV.TunerPlugin.pdb bin\Release\Core.DLL -bin\Release\Utils.DLL obj\Release\DirecTV.TunerPlugin.dll obj\Release\DirecTV.TunerPlugin.pdb -bin\Release\DirectShowLib.dll -bin\Release\edtftpnet-1.2.2.dll -bin\Release\Interop.WMPLib.dll -bin\Release\MediaPortal.Support.dll -bin\Release\ICSharpCode.SharpZipLib.dll -bin\Release\Bass.Net.dll -bin\Release\BassRegistration.dll -bin\Release\AxInterop.WMPLib.dll -bin\Release\MediaPortal.Support.pdb This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pat...@us...> - 2007-01-29 13:18:07
|
Revision: 39 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=39&view=rev Author: patrick_sf Date: 2007-01-29 05:18:00 -0800 (Mon, 29 Jan 2007) Log Message: ----------- Modified Paths: -------------- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/DirecTVSettings.cs trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SetupForm.Designer.cs trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SetupForm.cs trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.cs trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/DirecTVSettings.cs =================================================================== --- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/DirecTVSettings.cs 2007-01-29 13:17:12 UTC (rev 38) +++ trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/DirecTVSettings.cs 2007-01-29 13:18:00 UTC (rev 39) @@ -36,6 +36,7 @@ private bool _advanced; private bool _twowaydisable; private bool _hideOSD; + private bool _allowDigitalSubchannels; #endregion @@ -65,6 +66,7 @@ _advanced = reader.GetValueAsBool(_sectionName, "advanced", false); _twowaydisable = reader.GetValueAsBool(_sectionName, "twowaydisable", false); _hideOSD = reader.GetValueAsBool(_sectionName, "hideOSD", false); + _allowDigitalSubchannels = reader.GetValueAsBool(_sectionName, "allowsubchannels", false); } BoxName = _boxName; KeyMapName = _keyMapName; @@ -87,6 +89,7 @@ writer.SetValueAsBool(_sectionName, "advanced", _advanced); writer.SetValueAsBool(_sectionName, "twowaydisable", _twowaydisable); writer.SetValueAsBool(_sectionName, "hideOSD", _hideOSD); + writer.SetValueAsBool(_sectionName, "allowsubchannels", _allowDigitalSubchannels); } } @@ -250,6 +253,12 @@ get { return _hideOSD; } set { _hideOSD = value; } } + + public bool AllowDigitalSubchannels + { + get { return _allowDigitalSubchannels; } + set { _allowDigitalSubchannels = value; } + } #endregion } Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SetupForm.Designer.cs =================================================================== --- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SetupForm.Designer.cs 2007-01-29 13:17:12 UTC (rev 38) +++ trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SetupForm.Designer.cs 2007-01-29 13:18:00 UTC (rev 39) @@ -28,325 +28,319 @@ /// </summary> private void InitializeComponent() { - this.components = new System.ComponentModel.Container(); - this.globalBox = new System.Windows.Forms.GroupBox(); - this.cbAdvanced = new System.Windows.Forms.CheckBox(); - this.typeLabel = new System.Windows.Forms.Label(); - this.modelComboBox = new System.Windows.Forms.ComboBox(); - this.portComboBox = new System.Windows.Forms.ComboBox(); - this.serialPortLabel = new System.Windows.Forms.Label(); - this.keyMapLabel = new System.Windows.Forms.Label(); - this.keyMapComboBox = new System.Windows.Forms.ComboBox(); - this.brLabel = new System.Windows.Forms.Label(); - this.baudComboBox = new System.Windows.Forms.ComboBox(); - this.advancedBox = new System.Windows.Forms.GroupBox(); - this.cbtwowaydisable = new System.Windows.Forms.CheckBox(); - this.debugBox = new System.Windows.Forms.CheckBox(); - this.powerOnBox = new System.Windows.Forms.CheckBox(); - this.channelSetBox = new System.Windows.Forms.CheckBox(); - this.commandSetBox = new System.Windows.Forms.CheckBox(); - this.communicationBox = new System.Windows.Forms.GroupBox(); - this.timeoutLabel = new System.Windows.Forms.Label(); - this.timeoutNumUpDown = new System.Windows.Forms.NumericUpDown(); - this.okButton = new System.Windows.Forms.Button(); - this.cancelButton = new System.Windows.Forms.Button(); - this.cbHideOSD = new System.Windows.Forms.CheckBox(); - this.toolTip1 = new System.Windows.Forms.ToolTip(this.components); - this.globalBox.SuspendLayout(); - this.advancedBox.SuspendLayout(); - this.communicationBox.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.timeoutNumUpDown)).BeginInit(); - this.SuspendLayout(); - // - // globalBox - // - this.globalBox.Controls.Add(this.cbAdvanced); - this.globalBox.Controls.Add(this.typeLabel); - this.globalBox.Controls.Add(this.modelComboBox); - this.globalBox.Location = new System.Drawing.Point(17, 15); - this.globalBox.Margin = new System.Windows.Forms.Padding(4); - this.globalBox.Name = "globalBox"; - this.globalBox.Padding = new System.Windows.Forms.Padding(4); - this.globalBox.Size = new System.Drawing.Size(253, 86); - this.globalBox.TabIndex = 0; - this.globalBox.TabStop = false; - this.globalBox.Text = "Global"; - // - // cbAdvanced - // - this.cbAdvanced.AutoSize = true; - this.cbAdvanced.Location = new System.Drawing.Point(47, 58); - this.cbAdvanced.Margin = new System.Windows.Forms.Padding(4); - this.cbAdvanced.Name = "cbAdvanced"; - this.cbAdvanced.Size = new System.Drawing.Size(190, 21); - this.cbAdvanced.TabIndex = 3; - this.cbAdvanced.Text = "Enable advanced settings"; - this.cbAdvanced.UseVisualStyleBackColor = true; - this.cbAdvanced.CheckedChanged += new System.EventHandler(this.cbAdvanded_CheckedChanged); - // - // typeLabel - // - this.typeLabel.AutoSize = true; - this.typeLabel.Location = new System.Drawing.Point(8, 28); - this.typeLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.typeLabel.Name = "typeLabel"; - this.typeLabel.Size = new System.Drawing.Size(50, 17); - this.typeLabel.TabIndex = 2; - this.typeLabel.Text = "Model:"; - // - // modelComboBox - // - this.modelComboBox.FormattingEnabled = true; - this.modelComboBox.Location = new System.Drawing.Point(68, 23); - this.modelComboBox.Margin = new System.Windows.Forms.Padding(4); - this.modelComboBox.Name = "modelComboBox"; - this.modelComboBox.Size = new System.Drawing.Size(172, 24); - this.modelComboBox.TabIndex = 1; - this.modelComboBox.SelectedIndexChanged += new System.EventHandler(this.modelComboBox_SelectedIndexChanged); - // - // portComboBox - // - this.portComboBox.FormattingEnabled = true; - this.portComboBox.Location = new System.Drawing.Point(117, 23); - this.portComboBox.Margin = new System.Windows.Forms.Padding(4); - this.portComboBox.Name = "portComboBox"; - this.portComboBox.Size = new System.Drawing.Size(123, 24); - this.portComboBox.TabIndex = 3; - // - // serialPortLabel - // - this.serialPortLabel.AutoSize = true; - this.serialPortLabel.Location = new System.Drawing.Point(37, 27); - this.serialPortLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.serialPortLabel.Name = "serialPortLabel"; - this.serialPortLabel.Size = new System.Drawing.Size(77, 17); - this.serialPortLabel.TabIndex = 2; - this.serialPortLabel.Text = "Serial port:"; - // - // keyMapLabel - // - this.keyMapLabel.AutoSize = true; - this.keyMapLabel.Location = new System.Drawing.Point(9, 28); - this.keyMapLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.keyMapLabel.Name = "keyMapLabel"; - this.keyMapLabel.Size = new System.Drawing.Size(63, 17); - this.keyMapLabel.TabIndex = 0; - this.keyMapLabel.Text = "Keymap:"; - // - // keyMapComboBox - // - this.keyMapComboBox.FormattingEnabled = true; - this.keyMapComboBox.Location = new System.Drawing.Point(73, 23); - this.keyMapComboBox.Margin = new System.Windows.Forms.Padding(4); - this.keyMapComboBox.Name = "keyMapComboBox"; - this.keyMapComboBox.Size = new System.Drawing.Size(169, 24); - this.keyMapComboBox.TabIndex = 1; - // - // brLabel - // - this.brLabel.AutoSize = true; - this.brLabel.Location = new System.Drawing.Point(39, 62); - this.brLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.brLabel.Name = "brLabel"; - this.brLabel.Size = new System.Drawing.Size(74, 17); - this.brLabel.TabIndex = 2; - this.brLabel.Text = "Baud rate:"; - // - // baudComboBox - // - this.baudComboBox.FormattingEnabled = true; - this.baudComboBox.Location = new System.Drawing.Point(117, 57); - this.baudComboBox.Margin = new System.Windows.Forms.Padding(4); - this.baudComboBox.Name = "baudComboBox"; - this.baudComboBox.Size = new System.Drawing.Size(123, 24); - this.baudComboBox.TabIndex = 3; - // - // advancedBox - // - this.advancedBox.Controls.Add(this.cbHideOSD); - this.advancedBox.Controls.Add(this.cbtwowaydisable); - this.advancedBox.Controls.Add(this.debugBox); - this.advancedBox.Controls.Add(this.powerOnBox); - this.advancedBox.Controls.Add(this.channelSetBox); - this.advancedBox.Controls.Add(this.commandSetBox); - this.advancedBox.Controls.Add(this.keyMapComboBox); - this.advancedBox.Controls.Add(this.keyMapLabel); - this.advancedBox.Location = new System.Drawing.Point(287, 15); - this.advancedBox.Margin = new System.Windows.Forms.Padding(4); - this.advancedBox.Name = "advancedBox"; - this.advancedBox.Padding = new System.Windows.Forms.Padding(4); - this.advancedBox.Size = new System.Drawing.Size(255, 247); - this.advancedBox.TabIndex = 1; - this.advancedBox.TabStop = false; - this.advancedBox.Text = "Advanced settings"; - // - // cbtwowaydisable - // - this.cbtwowaydisable.AutoSize = true; - this.cbtwowaydisable.Location = new System.Drawing.Point(12, 183); - this.cbtwowaydisable.Name = "cbtwowaydisable"; - this.cbtwowaydisable.Size = new System.Drawing.Size(226, 21); - this.cbtwowaydisable.TabIndex = 6; - this.cbtwowaydisable.Text = "Disable two-way communication"; - this.toolTip1.SetToolTip(this.cbtwowaydisable, "For D10-100 Boxes"); - this.cbtwowaydisable.UseVisualStyleBackColor = true; - // - // debugBox - // - this.debugBox.AutoSize = true; - this.debugBox.Location = new System.Drawing.Point(13, 155); - this.debugBox.Margin = new System.Windows.Forms.Padding(4); - this.debugBox.Name = "debugBox"; - this.debugBox.Size = new System.Drawing.Size(184, 21); - this.debugBox.TabIndex = 5; - this.debugBox.Text = "Enable extensive logging"; - this.debugBox.UseVisualStyleBackColor = true; - // - // powerOnBox - // - this.powerOnBox.AutoSize = true; - this.powerOnBox.Location = new System.Drawing.Point(13, 127); - this.powerOnBox.Margin = new System.Windows.Forms.Padding(4); - this.powerOnBox.Name = "powerOnBox"; - this.powerOnBox.Size = new System.Drawing.Size(203, 21); - this.powerOnBox.TabIndex = 4; - this.powerOnBox.Text = "Use power-on before tuning"; - this.powerOnBox.UseVisualStyleBackColor = true; - // - // channelSetBox - // - this.channelSetBox.AutoSize = true; - this.channelSetBox.Location = new System.Drawing.Point(13, 98); - this.channelSetBox.Margin = new System.Windows.Forms.Padding(4); - this.channelSetBox.Name = "channelSetBox"; - this.channelSetBox.Size = new System.Drawing.Size(203, 21); - this.channelSetBox.TabIndex = 3; - this.channelSetBox.Text = "Use \"channel set\" for tuning"; - this.channelSetBox.UseVisualStyleBackColor = true; - // - // commandSetBox - // - this.commandSetBox.AutoSize = true; - this.commandSetBox.Location = new System.Drawing.Point(13, 70); - this.commandSetBox.Margin = new System.Windows.Forms.Padding(4); - this.commandSetBox.Name = "commandSetBox"; - this.commandSetBox.Size = new System.Drawing.Size(163, 21); - this.commandSetBox.TabIndex = 2; - this.commandSetBox.Text = "Use old command set"; - this.toolTip1.SetToolTip(this.commandSetBox, "If your receiver is more than two years old, you may need to check this box"); - this.commandSetBox.UseVisualStyleBackColor = true; - // - // communicationBox - // - this.communicationBox.Controls.Add(this.timeoutLabel); - this.communicationBox.Controls.Add(this.timeoutNumUpDown); - this.communicationBox.Controls.Add(this.baudComboBox); - this.communicationBox.Controls.Add(this.serialPortLabel); - this.communicationBox.Controls.Add(this.portComboBox); - this.communicationBox.Controls.Add(this.brLabel); - this.communicationBox.Location = new System.Drawing.Point(17, 108); - this.communicationBox.Margin = new System.Windows.Forms.Padding(4); - this.communicationBox.Name = "communicationBox"; - this.communicationBox.Padding = new System.Windows.Forms.Padding(4); - this.communicationBox.Size = new System.Drawing.Size(253, 154); - this.communicationBox.TabIndex = 2; - this.communicationBox.TabStop = false; - this.communicationBox.Text = "Communication settings"; - // - // timeoutLabel - // - this.timeoutLabel.AutoSize = true; - this.timeoutLabel.Location = new System.Drawing.Point(16, 95); - this.timeoutLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0); - this.timeoutLabel.Name = "timeoutLabel"; - this.timeoutLabel.Size = new System.Drawing.Size(96, 17); - this.timeoutLabel.TabIndex = 5; - this.timeoutLabel.Text = "Read timeout:"; - // - // timeoutNumUpDown - // - this.timeoutNumUpDown.Location = new System.Drawing.Point(117, 91); - this.timeoutNumUpDown.Margin = new System.Windows.Forms.Padding(4); - this.timeoutNumUpDown.Maximum = new decimal(new int[] { + this.components = new System.ComponentModel.Container(); + this.globalBox = new System.Windows.Forms.GroupBox(); + this.cbAdvanced = new System.Windows.Forms.CheckBox(); + this.typeLabel = new System.Windows.Forms.Label(); + this.modelComboBox = new System.Windows.Forms.ComboBox(); + this.portComboBox = new System.Windows.Forms.ComboBox(); + this.serialPortLabel = new System.Windows.Forms.Label(); + this.keyMapLabel = new System.Windows.Forms.Label(); + this.keyMapComboBox = new System.Windows.Forms.ComboBox(); + this.brLabel = new System.Windows.Forms.Label(); + this.baudComboBox = new System.Windows.Forms.ComboBox(); + this.advancedBox = new System.Windows.Forms.GroupBox(); + this.cbHideOSD = new System.Windows.Forms.CheckBox(); + this.cbtwowaydisable = new System.Windows.Forms.CheckBox(); + this.debugBox = new System.Windows.Forms.CheckBox(); + this.powerOnBox = new System.Windows.Forms.CheckBox(); + this.channelSetBox = new System.Windows.Forms.CheckBox(); + this.commandSetBox = new System.Windows.Forms.CheckBox(); + this.communicationBox = new System.Windows.Forms.GroupBox(); + this.timeoutLabel = new System.Windows.Forms.Label(); + this.timeoutNumUpDown = new System.Windows.Forms.NumericUpDown(); + this.okButton = new System.Windows.Forms.Button(); + this.cancelButton = new System.Windows.Forms.Button(); + this.toolTip1 = new System.Windows.Forms.ToolTip(this.components); + this.cbAllowSubChannels = new System.Windows.Forms.CheckBox(); + this.globalBox.SuspendLayout(); + this.advancedBox.SuspendLayout(); + this.communicationBox.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.timeoutNumUpDown)).BeginInit(); + this.SuspendLayout(); + // + // globalBox + // + this.globalBox.Controls.Add(this.cbAdvanced); + this.globalBox.Controls.Add(this.typeLabel); + this.globalBox.Controls.Add(this.modelComboBox); + this.globalBox.Location = new System.Drawing.Point(13, 12); + this.globalBox.Name = "globalBox"; + this.globalBox.Size = new System.Drawing.Size(190, 70); + this.globalBox.TabIndex = 0; + this.globalBox.TabStop = false; + this.globalBox.Text = "Global"; + // + // cbAdvanced + // + this.cbAdvanced.AutoSize = true; + this.cbAdvanced.Location = new System.Drawing.Point(35, 47); + this.cbAdvanced.Name = "cbAdvanced"; + this.cbAdvanced.Size = new System.Drawing.Size(149, 17); + this.cbAdvanced.TabIndex = 3; + this.cbAdvanced.Text = "Enable advanced settings"; + this.cbAdvanced.UseVisualStyleBackColor = true; + this.cbAdvanced.CheckedChanged += new System.EventHandler(this.cbAdvanded_CheckedChanged); + // + // typeLabel + // + this.typeLabel.AutoSize = true; + this.typeLabel.Location = new System.Drawing.Point(6, 23); + this.typeLabel.Name = "typeLabel"; + this.typeLabel.Size = new System.Drawing.Size(39, 13); + this.typeLabel.TabIndex = 2; + this.typeLabel.Text = "Model:"; + // + // modelComboBox + // + this.modelComboBox.FormattingEnabled = true; + this.modelComboBox.Location = new System.Drawing.Point(51, 19); + this.modelComboBox.Name = "modelComboBox"; + this.modelComboBox.Size = new System.Drawing.Size(130, 21); + this.modelComboBox.TabIndex = 1; + this.modelComboBox.SelectedIndexChanged += new System.EventHandler(this.modelComboBox_SelectedIndexChanged); + // + // portComboBox + // + this.portComboBox.FormattingEnabled = true; + this.portComboBox.Location = new System.Drawing.Point(88, 19); + this.portComboBox.Name = "portComboBox"; + this.portComboBox.Size = new System.Drawing.Size(93, 21); + this.portComboBox.TabIndex = 3; + // + // serialPortLabel + // + this.serialPortLabel.AutoSize = true; + this.serialPortLabel.Location = new System.Drawing.Point(28, 22); + this.serialPortLabel.Name = "serialPortLabel"; + this.serialPortLabel.Size = new System.Drawing.Size(57, 13); + this.serialPortLabel.TabIndex = 2; + this.serialPortLabel.Text = "Serial port:"; + // + // keyMapLabel + // + this.keyMapLabel.AutoSize = true; + this.keyMapLabel.Location = new System.Drawing.Point(7, 23); + this.keyMapLabel.Name = "keyMapLabel"; + this.keyMapLabel.Size = new System.Drawing.Size(48, 13); + this.keyMapLabel.TabIndex = 0; + this.keyMapLabel.Text = "Keymap:"; + // + // keyMapComboBox + // + this.keyMapComboBox.FormattingEnabled = true; + this.keyMapComboBox.Location = new System.Drawing.Point(55, 19); + this.keyMapComboBox.Name = "keyMapComboBox"; + this.keyMapComboBox.Size = new System.Drawing.Size(128, 21); + this.keyMapComboBox.TabIndex = 1; + // + // brLabel + // + this.brLabel.AutoSize = true; + this.brLabel.Location = new System.Drawing.Point(29, 50); + this.brLabel.Name = "brLabel"; + this.brLabel.Size = new System.Drawing.Size(56, 13); + this.brLabel.TabIndex = 2; + this.brLabel.Text = "Baud rate:"; + // + // baudComboBox + // + this.baudComboBox.FormattingEnabled = true; + this.baudComboBox.Location = new System.Drawing.Point(88, 46); + this.baudComboBox.Name = "baudComboBox"; + this.baudComboBox.Size = new System.Drawing.Size(93, 21); + this.baudComboBox.TabIndex = 3; + // + // advancedBox + // + this.advancedBox.Controls.Add(this.cbAllowSubChannels); + this.advancedBox.Controls.Add(this.cbHideOSD); + this.advancedBox.Controls.Add(this.cbtwowaydisable); + this.advancedBox.Controls.Add(this.debugBox); + this.advancedBox.Controls.Add(this.powerOnBox); + this.advancedBox.Controls.Add(this.channelSetBox); + this.advancedBox.Controls.Add(this.commandSetBox); + this.advancedBox.Controls.Add(this.keyMapComboBox); + this.advancedBox.Controls.Add(this.keyMapLabel); + this.advancedBox.Location = new System.Drawing.Point(215, 12); + this.advancedBox.Name = "advancedBox"; + this.advancedBox.Size = new System.Drawing.Size(191, 201); + this.advancedBox.TabIndex = 1; + this.advancedBox.TabStop = false; + this.advancedBox.Text = "Advanced settings"; + // + // cbHideOSD + // + this.cbHideOSD.AutoSize = true; + this.cbHideOSD.Location = new System.Drawing.Point(10, 156); + this.cbHideOSD.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); + this.cbHideOSD.Name = "cbHideOSD"; + this.cbHideOSD.Size = new System.Drawing.Size(74, 17); + this.cbHideOSD.TabIndex = 7; + this.cbHideOSD.Text = "Hide OSD"; + this.toolTip1.SetToolTip(this.cbHideOSD, "This may only work for D10-100 boxes"); + this.cbHideOSD.UseVisualStyleBackColor = true; + // + // cbtwowaydisable + // + this.cbtwowaydisable.AutoSize = true; + this.cbtwowaydisable.Location = new System.Drawing.Point(10, 135); + this.cbtwowaydisable.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2); + this.cbtwowaydisable.Name = "cbtwowaydisable"; + this.cbtwowaydisable.Size = new System.Drawing.Size(177, 17); + this.cbtwowaydisable.TabIndex = 6; + this.cbtwowaydisable.Text = "Disable two-way communication"; + this.toolTip1.SetToolTip(this.cbtwowaydisable, "For D10-100 Boxes"); + this.cbtwowaydisable.UseVisualStyleBackColor = true; + // + // debugBox + // + this.debugBox.AutoSize = true; + this.debugBox.Location = new System.Drawing.Point(10, 113); + this.debugBox.Name = "debugBox"; + this.debugBox.Size = new System.Drawing.Size(144, 17); + this.debugBox.TabIndex = 5; + this.debugBox.Text = "Enable extensive logging"; + this.debugBox.UseVisualStyleBackColor = true; + // + // powerOnBox + // + this.powerOnBox.AutoSize = true; + this.powerOnBox.Location = new System.Drawing.Point(10, 91); + this.powerOnBox.Name = "powerOnBox"; + this.powerOnBox.Size = new System.Drawing.Size(157, 17); + this.powerOnBox.TabIndex = 4; + this.powerOnBox.Text = "Use power-on before tuning"; + this.powerOnBox.UseVisualStyleBackColor = true; + // + // channelSetBox + // + this.channelSetBox.AutoSize = true; + this.channelSetBox.Location = new System.Drawing.Point(10, 69); + this.channelSetBox.Name = "channelSetBox"; + this.channelSetBox.Size = new System.Drawing.Size(160, 17); + this.channelSetBox.TabIndex = 3; + this.channelSetBox.Text = "Use \"channel set\" for tuning"; + this.channelSetBox.UseVisualStyleBackColor = true; + // + // commandSetBox + // + this.commandSetBox.AutoSize = true; + this.commandSetBox.Location = new System.Drawing.Point(10, 47); + this.commandSetBox.Name = "commandSetBox"; + this.commandSetBox.Size = new System.Drawing.Size(128, 17); + this.commandSetBox.TabIndex = 2; + this.commandSetBox.Text = "Use old command set"; + this.toolTip1.SetToolTip(this.commandSetBox, "If your receiver is more than two years old, you may need to check this box"); + this.commandSetBox.UseVisualStyleBackColor = true; + // + // communicationBox + // + this.communicationBox.Controls.Add(this.timeoutLabel); + this.communicationBox.Controls.Add(this.timeoutNumUpDown); + this.communicationBox.Controls.Add(this.baudComboBox); + this.communicationBox.Controls.Add(this.serialPortLabel); + this.communicationBox.Controls.Add(this.portComboBox); + this.communicationBox.Controls.Add(this.brLabel); + this.communicationBox.Location = new System.Drawing.Point(13, 88); + this.communicationBox.Name = "communicationBox"; + this.communicationBox.Size = new System.Drawing.Size(190, 125); + this.communicationBox.TabIndex = 2; + this.communicationBox.TabStop = false; + this.communicationBox.Text = "Communication settings"; + // + // timeoutLabel + // + this.timeoutLabel.AutoSize = true; + this.timeoutLabel.Location = new System.Drawing.Point(12, 77); + this.timeoutLabel.Name = "timeoutLabel"; + this.timeoutLabel.Size = new System.Drawing.Size(73, 13); + this.timeoutLabel.TabIndex = 5; + this.timeoutLabel.Text = "Read timeout:"; + // + // timeoutNumUpDown + // + this.timeoutNumUpDown.Location = new System.Drawing.Point(88, 74); + this.timeoutNumUpDown.Maximum = new decimal(new int[] { 30000, 0, 0, 0}); - this.timeoutNumUpDown.Minimum = new decimal(new int[] { + this.timeoutNumUpDown.Minimum = new decimal(new int[] { 500, 0, 0, 0}); - this.timeoutNumUpDown.Name = "timeoutNumUpDown"; - this.timeoutNumUpDown.Size = new System.Drawing.Size(121, 22); - this.timeoutNumUpDown.TabIndex = 4; - this.toolTip1.SetToolTip(this.timeoutNumUpDown, "Lowering this number may speed up channel changing"); - this.timeoutNumUpDown.Value = new decimal(new int[] { + this.timeoutNumUpDown.Name = "timeoutNumUpDown"; + this.timeoutNumUpDown.Size = new System.Drawing.Size(91, 20); + this.timeoutNumUpDown.TabIndex = 4; + this.toolTip1.SetToolTip(this.timeoutNumUpDown, "Lowering this number may speed up channel changing"); + this.timeoutNumUpDown.Value = new decimal(new int[] { 500, 0, 0, 0}); - // - // okButton - // - this.okButton.Location = new System.Drawing.Point(170, 279); - this.okButton.Margin = new System.Windows.Forms.Padding(4); - this.okButton.Name = "okButton"; - this.okButton.Size = new System.Drawing.Size(100, 28); - this.okButton.TabIndex = 3; - this.okButton.Text = "OK"; - this.okButton.UseVisualStyleBackColor = true; - this.okButton.Click += new System.EventHandler(this.okButton_Click); - // - // cancelButton - // - this.cancelButton.DialogResult = System.Windows.Forms.DialogResult.Cancel; - this.cancelButton.Location = new System.Drawing.Point(287, 279); - this.cancelButton.Margin = new System.Windows.Forms.Padding(4); - this.cancelButton.Name = "cancelButton"; - this.cancelButton.Size = new System.Drawing.Size(100, 28); - this.cancelButton.TabIndex = 4; - this.cancelButton.Text = "Cancel"; - this.cancelButton.UseVisualStyleBackColor = true; - this.cancelButton.Click += new System.EventHandler(this.cancelButton_Click); - // - // cbHideOSD - // - this.cbHideOSD.AutoSize = true; - this.cbHideOSD.Location = new System.Drawing.Point(13, 210); - this.cbHideOSD.Name = "cbHideOSD"; - this.cbHideOSD.Size = new System.Drawing.Size(90, 21); - this.cbHideOSD.TabIndex = 7; - this.cbHideOSD.Text = "Hide OSD"; - this.toolTip1.SetToolTip(this.cbHideOSD, "This may only work for D10-100 boxes"); - this.cbHideOSD.UseVisualStyleBackColor = true; - // - // SetupForm - // - this.AcceptButton = this.okButton; - this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 16F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.CancelButton = this.cancelButton; - this.ClientSize = new System.Drawing.Size(573, 331); - this.Controls.Add(this.cancelButton); - this.Controls.Add(this.okButton); - this.Controls.Add(this.communicationBox); - this.Controls.Add(this.advancedBox); - this.Controls.Add(this.globalBox); - this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; - this.Margin = new System.Windows.Forms.Padding(4); - this.MaximizeBox = false; - this.MinimizeBox = false; - this.Name = "SetupForm"; - this.Text = "DirecTV Tuner Plugin Settings"; - this.globalBox.ResumeLayout(false); - this.globalBox.PerformLayout(); - this.advancedBox.ResumeLayout(false); - this.advancedBox.PerformLayout(); - this.communicationBox.ResumeLayout(false); - this.communicationBox.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.timeoutNumUpDown)).EndInit(); - this.ResumeLayout(false); + // + // okButton + // + this.okButton.Location = new System.Drawing.Point(128, 227); + this.okButton.Name = "okButton"; + this.okButton.Size = new System.Drawing.Size(75, 23); + this.okButton.TabIndex = 3; + this.okButton.Text = "OK"; + this.okButton.UseVisualStyleBackColor = true; + this.okButton.Click += new System.EventHandler(this.okButton_Click); + // + // cancelButton + // + this.cancelButton.DialogResult = System.Windows.Forms.DialogResult.Cancel; + this.cancelButton.Location = new System.Drawing.Point(215, 227); + this.cancelButton.Name = "cancelButton"; + this.cancelButton.Size = new System.Drawing.Size(75, 23); + this.cancelButton.TabIndex = 4; + this.cancelButton.Text = "Cancel"; + this.cancelButton.UseVisualStyleBackColor = true; + this.cancelButton.Click += new System.EventHandler(this.cancelButton_Click); + // + // cbAllowSubChannels + // + this.cbAllowSubChannels.AutoSize = true; + this.cbAllowSubChannels.Location = new System.Drawing.Point(10, 177); + this.cbAllowSubChannels.Margin = new System.Windows.Forms.Padding(2); + this.cbAllowSubChannels.Name = "cbAllowSubChannels"; + this.cbAllowSubChannels.Size = new System.Drawing.Size(149, 17); + this.cbAllowSubChannels.TabIndex = 8; + this.cbAllowSubChannels.Text = "Allow Digital SubChannels"; + this.toolTip1.SetToolTip(this.cbAllowSubChannels, "This may only work for HTL-HD boxes using the RCA New command Set.\r\nIt will allow" + + " tuning to digital subchannels if the external channel is in the \r\nform 9-2, 000" + + "902, 32-1, 003201"); + this.cbAllowSubChannels.UseVisualStyleBackColor = true; + // + // SetupForm + // + this.AcceptButton = this.okButton; + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.CancelButton = this.cancelButton; + this.ClientSize = new System.Drawing.Size(430, 269); + this.Controls.Add(this.cancelButton); + this.Controls.Add(this.okButton); + this.Controls.Add(this.communicationBox); + this.Controls.Add(this.advancedBox); + this.Controls.Add(this.globalBox); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "SetupForm"; + this.Text = "DirecTV Tuner Plugin Settings"; + this.globalBox.ResumeLayout(false); + this.globalBox.PerformLayout(); + this.advancedBox.ResumeLayout(false); + this.advancedBox.PerformLayout(); + this.communicationBox.ResumeLayout(false); + this.communicationBox.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.timeoutNumUpDown)).EndInit(); + this.ResumeLayout(false); } @@ -375,5 +369,6 @@ private System.Windows.Forms.CheckBox cbtwowaydisable; private System.Windows.Forms.CheckBox cbHideOSD; private System.Windows.Forms.ToolTip toolTip1; + private System.Windows.Forms.CheckBox cbAllowSubChannels; } } \ No newline at end of file Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SetupForm.cs =================================================================== --- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SetupForm.cs 2007-01-29 13:17:12 UTC (rev 38) +++ trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SetupForm.cs 2007-01-29 13:18:00 UTC (rev 39) @@ -70,6 +70,7 @@ cbtwowaydisable.Checked = _settings.TwoWayDisable; cbHideOSD.Checked = _settings.HideOSD; + cbAllowSubChannels.Checked = _settings.AllowDigitalSubchannels; } @@ -87,6 +88,7 @@ _settings.PowerOn = powerOnBox.Checked; _settings.Debug = debugBox.Checked; _settings.HideOSD = cbHideOSD.Checked; + _settings.AllowDigitalSubchannels = cbAllowSubChannels.Checked; _settings.SaveSettings(); } Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.cs =================================================================== --- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.cs 2007-01-29 13:17:12 UTC (rev 38) +++ trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.cs 2007-01-29 13:18:00 UTC (rev 39) @@ -33,6 +33,8 @@ _serialInterface.UseSetChannelForTune = _settings.UseSetChannelForTune; _serialInterface.TwoWayDisable = _settings.TwoWayDisable; _serialInterface.HideOSD = _settings.HideOSD; + _serialInterface.AllowDigitalSubchannels = _settings.AllowDigitalSubchannels; + if (_settings.Debug) { _serialInterface.OnDebugMessage += new SerialInterface.DebugMessageHandler(Log.Debug); @@ -57,12 +59,19 @@ { if (message.Message == GUIMessage.MessageType.GUI_MSG_TUNE_EXTERNAL_CHANNEL) { - int channelNumber; - channelNumber = Convert.ToInt32(message.Label); - if (channelNumber >= 0 && channelNumber <= 65535) + if (_settings.AllowDigitalSubchannels) { - _serialInterface.TuneToChannel(channelNumber); + _serialInterface.TuneToChannel(message.Label); } + else + { + int channelNumber; + channelNumber = Convert.ToInt32(message.Label); + if (channelNumber >= 0 && channelNumber <= 65535) + { + _serialInterface.TuneToChannel(channelNumber); + } + } } } Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj =================================================================== --- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj 2007-01-29 13:17:12 UTC (rev 38) +++ trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj 2007-01-29 13:18:00 UTC (rev 39) @@ -60,19 +60,15 @@ </ItemGroup> <ItemGroup> <Reference Include="Accessibility" /> - <Reference Include="Core, Version=1.0.2579.42468, Culture=neutral, processorArchitecture=MSIL"> + <Reference Include="Core, Version=1.0.2546.32606, Culture=neutral, processorArchitecture=x86"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\..\Desktop\Release\Core.dll</HintPath> + <HintPath>..\..\..\..\..\MediaPortal-References-v0.2.2-Release\Core.DLL</HintPath> </Reference> <Reference Include="System" /> <Reference Include="System.Data" /> <Reference Include="System.Drawing" /> <Reference Include="System.Windows.Forms" /> <Reference Include="System.Xml" /> - <Reference Include="Utils, Version=1.0.2579.42459, Culture=neutral, processorArchitecture=MSIL"> - <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\..\Desktop\Release\Utils.dll</HintPath> - </Reference> </ItemGroup> <PropertyGroup> <PostBuildEvent> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <pat...@us...> - 2007-01-29 13:17:15
|
Revision: 38 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=38&view=rev Author: patrick_sf Date: 2007-01-29 05:17:12 -0800 (Mon, 29 Jan 2007) Log Message: ----------- Modified Paths: -------------- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SerialInterface/SerialInterface.cs Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SerialInterface/SerialInterface.cs =================================================================== --- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SerialInterface/SerialInterface.cs 2007-01-28 20:06:07 UTC (rev 37) +++ trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SerialInterface/SerialInterface.cs 2007-01-29 13:17:12 UTC (rev 38) @@ -22,6 +22,7 @@ public const byte ILLEGAL_CHARACTER_RECEIVED = 0xFB; public const byte BUFFER_UNDERFLOW = 0xFD; public const byte BUFFER_OVERFLOW = 0xFF; + public const byte NULL_BYTE = 0x00; } #endregion @@ -117,6 +118,8 @@ private bool _twowaydisable = false; //Hide the OSD on D10-1/200 boxes private bool _hideOSD = false; + // Allow tuning digital subchannels on HTL-HD boxes + private bool _allowSubchannels = false; #region defaults @@ -298,6 +301,12 @@ set { _powerOnBeforeTuning = value; } } + public bool AllowDigitalSubchannels + { + get { return _allowSubchannels; } + set { _allowSubchannels = value; } + } + #endregion #region Serial Interface Control @@ -354,10 +363,26 @@ bool ReadResponse(byte verify, out byte expect, out byte response) { expect = verify; - response = (byte)_serialPort.ReadByte(); - WriteDebug("DirecTV.SerialInterface.ReadResponse(): received: {0:x}", response); - return (response == expect); + response = 0x00; + + try + { + response = (byte)_serialPort.ReadByte(); + WriteDebug("DirecTV.SerialInterface.ReadResponse(): received: {0:x}", response); + return (response == expect); + } + catch (System.TimeoutException te) + { + WriteDebug("DirecTV.SerialInterface.ReadResponse(): SerialPortTimedOut"); + } + catch (Exception ex) + { + WriteDebug("DirecTV.SerialInterface.ReadResponse(): Exception: " + ex.ToString()); + } + + return false; } + void ReadPossibleTrailingData() { try @@ -368,10 +393,12 @@ } catch (InvalidOperationException) { } } + string ToString(byte data) { return String.Format("{0.x}", data); } + string ToString(byte[] data) { if (data == null) return String.Empty; @@ -391,11 +418,15 @@ { byte reponse; byte expect; + // Start with sending the command to the box byte[] cmdData = GetCommandData(cmd.command); - WriteDebug("DirecTV.SerialInterface.SendCommand(): send command: {0}, size {1}", ToString(cmdData), - cmdData.Length); + + WriteDebug("DirecTV.SerialInterface.SendCommand(): send command: {0}, size {1}", + ToString(cmdData), cmdData.Length); + _serialPort.Write(cmdData, 0, cmdData.Length); + // Check if command was recognised by the box if (TwoWayDisable == false) { @@ -411,10 +442,23 @@ // check if the data was correctly received by the box if (ReadResponse(Response.COMMAND_IS_BEING_PROCESSED, out expect, out reponse)) { + // it was, so now check if the command succeeded WriteDebug("DirecTV.SerialInterface.SendCommand(): data is being processed by box"); - if (ReadResponse(Response.COMMAND_COMPLETED_SUCCESSFULLY, out expect, out reponse)) + + bool okContinue = false; + ReadResponse(Response.NULL_BYTE, out expect, out reponse); + if (reponse == (byte)Response.NULL_BYTE) { + WriteDebug("DirecTV.SerialInterface.SendCommand(): Null Byte Recieved Will Now Check for Successful Completion"); + if (ReadResponse(Response.COMMAND_COMPLETED_SUCCESSFULLY, out expect, out reponse)) + okContinue = true; + } + else if (reponse == (byte)Response.COMMAND_COMPLETED_SUCCESSFULLY) + okContinue = true; + + if (okContinue) + { // command succeeded, check if we expect additional data if (cmd.bytesToReceive > 0) { @@ -451,7 +495,9 @@ return; } } + WriteDebug("DirecTV.SerialInterface.SendCommand(): command NOT accepted by box!"); + // If we get here, the command must somehow have failed // make sure all received data is read ReadPossibleTrailingData(); @@ -467,8 +513,8 @@ temp[0] = 0x00; _serialPort.Write(temp, 0, 1); receivedData = temp; + } } - } public void SendCommand(Command cmd) { @@ -517,11 +563,58 @@ return _keyMap.KEY_8; case '9': return _keyMap.KEY_9; + case '-': + return _keyMap.DASH; default: return 0x00; } } + void ParseMajorMinorChannel(string channel, out int channelMajor, out int channelMinor) + { + channelMajor = -1; + channelMinor = -1; + + // If the channel string contains a dash "-" + // or has a length of 6 assume Major-Minor Channel + if (channel.Contains("-")) + { + try + { + channelMajor = Int32.Parse(channel.Substring(0, channel.IndexOf("-"))); + + if (channel.Length > (channel.IndexOf("-") + 1)) + channelMinor = Int32.Parse(channel.Substring(channel.IndexOf("-") + 1, 1)); + } + catch + { + } + } + else if (channel.Length == 6) + { + try + { + // Assume first four Major and Last two minor + channelMajor = Int32.Parse(channel.Substring(0, 4)); + channelMinor = Int32.Parse(channel.Substring(4)); + } + catch + { + } + } + else + { + try + { + channelMajor = Int32.Parse(channel); + channelMinor = 0; + } + catch + { + } + } + } + void TuneWithSetChannel(int channel) { Command cmd = _commandSet.SET_CHANNEL_NUMBER.Clone(); @@ -548,6 +641,54 @@ SendCommand(cmd); } + void TuneWithSetChannel(string channel) + { + WriteDebug("DirecTV.SerialInterface.TuneWithSetChannel: Attempting to tune STRING Channel: {0}", channel); + Command cmd = _commandSet.SET_CHANNEL_NUMBER.Clone(); + + int chMajor = 0; + int chMinor = 0; + + ParseMajorMinorChannel(channel, out chMajor, out chMinor); + + if (chMajor < 0) + { + WriteDebug("DirecTV.SerialInterface.TuneWithSetChannel: Invalid Channel Received: {0} - Channel String: {1}", chMajor.ToString(), channel); + return; + } + + if (chMajor < 256) + { + cmd.dataToSend[0] = 0x00; + cmd.dataToSend[1] = (byte)chMajor; + } + else if (chMajor < 65536) + { + byte[] chdata = BitConverter.GetBytes(chMajor); + cmd.dataToSend[0] = chdata[1]; + cmd.dataToSend[1] = chdata[0]; + } + else + { + WriteDebug("DirecTV.SerialInterface.TuneWithSetChannel: Channel Value Too Large: {0} - Channel String: {1}", chMajor.ToString(), channel); + return; + } + + if (chMinor > 0 && cmd.bytesToSend > 2) + { + //byte[] chdata = BitConverter.GetBytes(chMinor); + cmd.dataToSend[2] = 0x00; // chdata[1]; + cmd.dataToSend[3] = (byte)chMinor; // chdata[0]; + } + else if (cmd.bytesToSend > 2) + { + for (int i = 2; i < cmd.bytesToSend; i++) + cmd.dataToSend[i] = 0xFF; + } + + SendCommand(cmd); + } + void TuneWithRemoteKeys(int channel) { WriteDebug("DirecTV: In tuning"); @@ -577,6 +718,42 @@ } } + void TuneWithRemoteKeys(string channel) + { + WriteDebug("DirecTV.SerialInterface.TuneWithRemoteKeys: Attempting to tune STRING Channel: {0}", channel); + for (int i = 0; i < channel.Length; i++) + { + if (GetRemoteKeyCode(channel[i]) == 0x00) + { + WriteDebug("DirecTV.SerialInterface.TuneWithRemoteKeys: Invalid Character Found in Channel: {0}", channel); + return; + } + } + + int chMajor = 0; + int chMinor = 0; + + ParseMajorMinorChannel(channel, out chMajor, out chMinor); + + if (chMajor > 65535 || chMajor < 0) + { + WriteDebug("DirecTV.SerialInterface.TuneWithRemoteKeys: Channel Value Invalid: {0} - Channel String: {1}", chMajor.ToString(), channel); + return; + } + + Command cmd = _commandSet.REMOTE_CONTROL_KEY.Clone(); + + GetKeyMapPadBytes(_box).CopyTo(cmd.dataToSend, 0); + + for (int i = 0; i < channel.Length; i++) + { + cmd.dataToSend[2] = GetRemoteKeyCode(channel[i]); + SendCommand(cmd); + } + cmd.dataToSend[2] = _keyMap.EXIT; + SendCommand(cmd); + } + #endregion #region Generic channel tuning interface @@ -604,6 +781,26 @@ } } + public void TuneToChannel(string channel) + { + if (_serialPort == null || !_serialPort.IsOpen) + OpenPort(); + if (PowerOnBeforeTuning) + { + WriteDebug("DirecTV.SerialInterface.TuneToChannel(): send power on command"); + PowerOn(); + } + if (UseSetChannelForTune) + { + WriteDebug("DirecTV.SerialInterface.TuneToChannel(): tuning to channel {0} with set channel command", channel); + TuneWithSetChannel(channel); + } + else + { + WriteDebug("DirecTV.SerialInterface.TuneToChannel(): tuning to channel {0} with remote keypresses", channel); + TuneWithRemoteKeys(channel); + } + } #endregion #region power handling This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sa...@us...> - 2007-01-28 20:06:10
|
Revision: 37 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=37&view=rev Author: saamand Date: 2007-01-28 12:06:07 -0800 (Sun, 28 Jan 2007) Log Message: ----------- Modified Paths: -------------- trunk/plugins/MyLyrics/LyricsEngine/GetGoogleSearchResult.cs trunk/plugins/MyLyrics/LyricsEngine/LyricController.cs trunk/plugins/MyLyrics/LyricsEngine/LyricDiagnostics.cs trunk/plugins/MyLyrics/LyricsEngine/LyricSearch.cs trunk/plugins/MyLyrics/LyricsEngine/Wiki.cs trunk/plugins/MyLyrics/My Lyrics/MyLyrics.cs trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.Designer.cs trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.cs trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.resx Modified: trunk/plugins/MyLyrics/LyricsEngine/GetGoogleSearchResult.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/GetGoogleSearchResult.cs 2007-01-28 18:37:20 UTC (rev 36) +++ trunk/plugins/MyLyrics/LyricsEngine/GetGoogleSearchResult.cs 2007-01-28 20:06:07 UTC (rev 37) @@ -7,28 +7,30 @@ namespace LyricsEngine { - class GetGoogleSearchResult + class GetGoogleSearchResult : IDisposable { private LyricSearch m_LyricSearh; + GetGoogleSearchResultsDelegate delSearch; + IAsyncResult ar; + public static bool Abort = false; - // Constructor public GetGoogleSearchResult(LyricSiteInfo siteInfo, LyricSearch lyricSearch2) { - Thread.Sleep(2000); + Thread.Sleep(1000); + this.m_LyricSearh = lyricSearch2; Google.GoogleSearchService s = new Google.GoogleSearchService(); Google.GoogleSearchResult searchResult = new Google.GoogleSearchResult(); - GetGoogleSearchResultsDelegate delSearch = - new GetGoogleSearchResultsDelegate(GetGoogleSearchResults); + delSearch = new GetGoogleSearchResultsDelegate(GetGoogleSearchResults); string[] artistWords = siteInfo.artist.Split(' '); string m_lastUsedLicenseKey = m_LyricSearh.GoogleLicenseKey; - IAsyncResult ar = delSearch.BeginInvoke(m_lastUsedLicenseKey, ((!m_LyricSearh.TestedAll) ? "intitle:" + siteInfo.artistWithDoubleQuotes : "intitle:" + artistWords[artistWords.Length - 1]) + " " + "intitle:" + siteInfo.trackWithDoubleQuotes + " " + "intitle:" + siteInfo.extra + " " + siteInfo.siteNameToSearch + " " + "site:" + siteInfo.siteWWW, + ar = delSearch.BeginInvoke(m_lastUsedLicenseKey, ((!m_LyricSearh.TestedAll) ? "intitle:" + siteInfo.artistWithDoubleQuotes : "intitle:" + artistWords[artistWords.Length - 1]) + " " + "intitle:" + siteInfo.trackWithDoubleQuotes + " " + "intitle:" + siteInfo.extra + " " + siteInfo.siteNameToSearch + " " + "site:" + siteInfo.siteWWW, 0, siteInfo.noOfHitsUsed, false, "", false, "", "", "", new AsyncCallback(getGoogleSearchResultsCallBack), siteInfo); if (LyricDiagnostics.TraceSource != null) LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Information, 0, LyricDiagnostics.elapsedTimeString() + "GetGoogleSearchResult(" + siteInfo.artist + ", " + siteInfo.track + ", " + siteInfo.siteName + ")"); @@ -58,40 +60,57 @@ } } - private void getGoogleSearchResultsCallBack(IAsyncResult ar) + public void Dispose() { - AsyncResult result = (AsyncResult)ar; - - // grab the delegate - GetGoogleSearchResultsDelegate del = - (GetGoogleSearchResultsDelegate)result.AsyncDelegate; - - LyricSiteInfo siteInfo = (LyricSiteInfo)ar.AsyncState; - - if (LyricDiagnostics.TraceSource != null) LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Information, 0, LyricDiagnostics.elapsedTimeString() + "getGoogleSearchResultsCallBack(" + siteInfo.artist + ", " + siteInfo.track + ", " + siteInfo.siteName + ")"); - - Google.GoogleSearchResult searchResult = null; - - // call EndInvoke on the delegate to get all the information about our method call try { - searchResult = del.EndInvoke(ar); + ar = null; + //Google.GoogleSearchResult searchResult = delSearch.EndInvoke + delSearch = null; } catch (Exception e) { - //System.Windows.Forms.MessageBox.Show(e.ToString()); + //System.Console.WriteLine(e.Message); + //delSearch = null; } + System.Console.WriteLine("*****************************"); + } - if (searchResult != null) + private void getGoogleSearchResultsCallBack(IAsyncResult ar) + { + if (!Abort) { - m_LyricSearh.validateSearchResult(searchResult.resultElements, siteInfo); + AsyncResult result = (AsyncResult)ar; + + // grab the delegate + GetGoogleSearchResultsDelegate del = + (GetGoogleSearchResultsDelegate)result.AsyncDelegate; + + LyricSiteInfo siteInfo = (LyricSiteInfo)ar.AsyncState; + + if (LyricDiagnostics.TraceSource != null) LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Information, 0, LyricDiagnostics.elapsedTimeString() + "getGoogleSearchResultsCallBack(" + siteInfo.artist + ", " + siteInfo.track + ", " + siteInfo.siteName + ")"); + + Google.GoogleSearchResult searchResult = null; + + // call EndInvoke on the delegate to get all the information about our method call + try + { + searchResult = del.EndInvoke(ar); + + if (searchResult != null) + { + m_LyricSearh.validateSearchResult(searchResult.resultElements, siteInfo); + } + else + { + m_LyricSearh.validateSearchResult(null, siteInfo); + } + } + catch (Exception e) + { + //System.Windows.Forms.MessageBox.Show(e.ToString()); + } } - else - { - m_LyricSearh.validateSearchResult(null, siteInfo); - } - - if (LyricDiagnostics.TraceSource != null) LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Information, 0, LyricDiagnostics.elapsedTimeString() + "getGoogleSearchResultsCallBack - END(" + siteInfo.artist + ", " + siteInfo.track + ", " + siteInfo.siteName + ")"); } } } Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricController.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/LyricController.cs 2007-01-28 18:37:20 UTC (rev 36) +++ trunk/plugins/MyLyrics/LyricsEngine/LyricController.cs 2007-01-28 20:06:07 UTC (rev 37) @@ -32,7 +32,7 @@ private bool m_MessageMode; private string m_GoogleLicenseKey = ""; - private bool m_AllowSearches = false; + private bool m_StopSearches = false; // status private static int noOfLyricsToSearch; @@ -59,7 +59,10 @@ int m_managedThreadId = -1; + public static event EventHandler StopTheSearchAndAbort; + + public LyricController(ILyricForm mainForm, ManualResetEvent eventStopThread, ManualResetEvent eventThreadStopped, bool messageMode) { this.m_Form = mainForm; @@ -70,13 +73,15 @@ noOfLyricsSearched = 0; noOfLyricsFound = 0; noOfLyricsNotFound = 0; - + // initialize events m_EventStop_LyricController = eventStopThread; m_EventStopped_LyricController = eventThreadStopped; m_EventStop_LyricSearches = new ManualResetEvent(false); m_EventStop_LyricSearches.Set(); + + LyricSearch.Abort = false; } // Function runs in worker thread and emulates long process. @@ -141,7 +146,7 @@ // inform main thread that this thread stopped m_EventStopped_LyricController.Set(); - finishThread("", "", "The search has ended. Please wait a few seconds for all threads to end before closing the configuration.", ""); + finishThread("", "", "The search has ended.", ""); } public void updateManualResetEvents(ManualResetEvent eventStopThread, ManualResetEvent eventThreadStopped) @@ -235,19 +240,26 @@ internal void lyricFound(String lyricStrings, String artist, String title, String site) { - m_Form.LyricFound = new Object[] { lyricStrings, artist, title, site}; - statusUpdate(artist, title, site, true); + if (m_StopSearches == false) + { + m_Form.LyricFound = new Object[] { lyricStrings, artist, title, site }; + statusUpdate(artist, title, site, true); + } } internal void lyricNotFound(String artist, String title, String message, String site) { - m_Form.LyricNotFound = new Object[] {artist, title, message, site}; - statusUpdate(artist, title, site, false); + if (m_StopSearches == false) + { + m_Form.LyricNotFound = new Object[] { artist, title, message, site }; + statusUpdate(artist, title, site, false); + } } public void finishThread(String artist, String title, String message, String site) { m_EventStop_LyricController.Set(); + m_EventStopped_LyricController.Set(); m_Form.ThreadFinished = new Object[] { artist, title, message, site }; } @@ -272,15 +284,20 @@ public bool StopSearches { - get { return m_AllowSearches; } + get { return m_StopSearches; } set { if (value == true) { + m_StopSearches = true; m_EventStop_LyricSearches.Reset(); + LyricSearch.Abort = true; + //StopTheSearchAndAbort.Invoke(this, EventArgs.Empty); } else { + m_StopSearches = false; m_EventStop_LyricSearches.Set(); + LyricSearch.Abort = false; } } } Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricDiagnostics.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/LyricDiagnostics.cs 2007-01-28 18:37:20 UTC (rev 36) +++ trunk/plugins/MyLyrics/LyricsEngine/LyricDiagnostics.cs 2007-01-28 20:06:07 UTC (rev 37) @@ -12,6 +12,8 @@ private static Stopwatch stopWatch; private static string logName = "MyLyrics.log"; private static string logFileName = ""; + private static FileStream objStream; + private static TextWriterTraceListener objTraceListener; public static void OpenLog(string logDir) @@ -32,8 +34,8 @@ ts = new TraceSource("MyLyrics"); ts.Switch = new SourceSwitch("sw1", "All"); - FileStream objStream = new FileStream(logFileName, FileMode.OpenOrCreate); - TextWriterTraceListener objTraceListener = new TextWriterTraceListener(objStream); + objStream = new FileStream(logFileName, FileMode.OpenOrCreate); + objTraceListener = new TextWriterTraceListener(objStream); objTraceListener.Filter = new EventTypeFilter(SourceLevels.All); ts.Listeners.Add(objTraceListener); startTimer(); @@ -47,6 +49,21 @@ ts.Flush(); ts.Close(); stopTimer(); + + objStream.Close(); + objStream.Dispose(); + try + { + objTraceListener.Close(); + objTraceListener.Dispose(); + } + catch { } + + if (System.IO.File.Exists(logFileName)) + { + FileStream file = new FileStream(logFileName, FileMode.OpenOrCreate, FileAccess.Write); + file.Close(); + } } } Modified: trunk/plugins/MyLyrics/LyricsEngine/LyricSearch.cs =================================================================== (Binary files differ) Modified: trunk/plugins/MyLyrics/LyricsEngine/Wiki.cs =================================================================== --- trunk/plugins/MyLyrics/LyricsEngine/Wiki.cs 2007-01-28 18:37:20 UTC (rev 36) +++ trunk/plugins/MyLyrics/LyricsEngine/Wiki.cs 2007-01-28 20:06:07 UTC (rev 37) @@ -15,6 +15,7 @@ private string artist = ""; private string title = ""; private int noOfTries = 0; + public static bool Abort = false; private string[] commonReplacementsLyricWiki = new string[16] { "<br>", "", "<BR>", "", "?d", "'d", "?s", "'s", "?t", "'t", "?v", "'v", "?e", "'e", "?r", "'r" }; private string[] commonRemoveFromLyricWiki = new string[2] { "[[category", "[[Category" }; @@ -34,6 +35,10 @@ while (noOfTries < 12) { + // If the user has aborted stop the search and return (false) + if (Abort) + return false; + if (ar.AsyncWaitHandle.WaitOne(0, true)) { lyricsResult = del.EndInvoke(ar); @@ -65,7 +70,7 @@ try { // Step 1: search title as it is - if (searchForWiki(this.artist, this.title)) + if (Abort == false && searchForWiki(this.artist, this.title)) { return makeLyricFit(lyricsResult.lyrics); } @@ -110,28 +115,28 @@ return lyricsResult.lyrics; } - Thread.Sleep(1000); + //Thread.Sleep(1000); - // Step 2: search with parentheses and other disturbance removed - optimizeString(ref this.artist, ref this.title); - lyricsResult = lyricWiki.getSongResult(this.artist, this.title); - if (isLyric(lyricsResult.lyrics)) - { - return lyricsResult.lyrics; - } + //// Step 2: search with parentheses and other disturbance removed + //optimizeString(ref this.artist, ref this.title); + //lyricsResult = lyricWiki.getSongResult(this.artist, this.title); + //if (isLyric(lyricsResult.lyrics)) + //{ + // return lyricsResult.lyrics; + //} - Thread.Sleep(1000); + //Thread.Sleep(1000); - // Step 3: search with altered and strings if any - this.artist = LyricUtil.changeAnd_and_and(this.artist); - this.title = LyricUtil.changeAnd_and_and(this.title); - lyricsResult = lyricWiki.getSongResult(this.artist, this.title); - if (isLyric(lyricsResult.lyrics)) - { - return lyricsResult.lyrics; - } + //// Step 3: search with altered and strings if any + //this.artist = LyricUtil.changeAnd_and_and(this.artist); + //this.title = LyricUtil.changeAnd_and_and(this.title); + //lyricsResult = lyricWiki.getSongResult(this.artist, this.title); + //if (isLyric(lyricsResult.lyrics)) + //{ + // return lyricsResult.lyrics; + //} - Thread.Sleep(3000); + //Thread.Sleep(3000); // final step: return "Not found" if no lyric found return "Not found"; Modified: trunk/plugins/MyLyrics/My Lyrics/MyLyrics.cs =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/MyLyrics.cs 2007-01-28 18:37:20 UTC (rev 36) +++ trunk/plugins/MyLyrics/My Lyrics/MyLyrics.cs 2007-01-28 20:06:07 UTC (rev 37) @@ -542,7 +542,7 @@ //GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_LBStatus, m_StatusText); lc.GoogleLicenseKey = m_GoogleLicenseKeys[nextGoogleLicenseKeyIndex]; - LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Warning, 0, LyricDiagnostics.elapsedTimeString() + "Exception: " + m_StatusText); + LyricDiagnostics.TraceSource.TraceEvent(TraceEventType.Information, 0, LyricDiagnostics.elapsedTimeString() + "Exception: " + m_StatusText); } else { Modified: trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.Designer.cs =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.Designer.cs 2007-01-28 18:37:20 UTC (rev 36) +++ trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.Designer.cs 2007-01-28 20:06:07 UTC (rev 37) @@ -80,6 +80,17 @@ this.mpLabel1 = new MediaPortal.UserInterface.Controls.MPLabel(); this.btImportAll = new MediaPortal.UserInterface.Controls.MPButton(); this.tabPageSetup = new MediaPortal.UserInterface.Controls.MPTabPage(); + this.gbSettings = new MediaPortal.UserInterface.Controls.MPGroupBox(); + this.tbLicenseKey5 = new MediaPortal.UserInterface.Controls.MPTextBox(); + this.mpLabel5 = new MediaPortal.UserInterface.Controls.MPLabel(); + this.tbLicenseKey4 = new MediaPortal.UserInterface.Controls.MPTextBox(); + this.mpLabel4 = new MediaPortal.UserInterface.Controls.MPLabel(); + this.tbLicenseKey3 = new MediaPortal.UserInterface.Controls.MPTextBox(); + this.mpLabel3 = new MediaPortal.UserInterface.Controls.MPLabel(); + this.tbLicenseKey2 = new MediaPortal.UserInterface.Controls.MPTextBox(); + this.mpLabel2 = new MediaPortal.UserInterface.Controls.MPLabel(); + this.tbLicenseKey1 = new MediaPortal.UserInterface.Controls.MPTextBox(); + this.lbGoogleLicenceKey = new MediaPortal.UserInterface.Controls.MPLabel(); this.gbLyricSites = new MediaPortal.UserInterface.Controls.MPGroupBox(); this.cbLyricsHosting = new MediaPortal.UserInterface.Controls.MPCheckBox(); this.cbLeosLyrics = new MediaPortal.UserInterface.Controls.MPCheckBox(); @@ -94,24 +105,13 @@ this.lbLimit = new MediaPortal.UserInterface.Controls.MPTextBox(); this.lbSongsLimit = new MediaPortal.UserInterface.Controls.MPLabel(); this.gbLicenseKeyHelp = new MediaPortal.UserInterface.Controls.MPGroupBox(); + this.mpLabel6 = new MediaPortal.UserInterface.Controls.MPLabel(); + this.lbGoogleNotice = new MediaPortal.UserInterface.Controls.MPLabel(); + this.labelPluginBannerHint = new MediaPortal.UserInterface.Controls.MPLabel(); this.btSave = new MediaPortal.UserInterface.Controls.MPButton(); this.btClose = new MediaPortal.UserInterface.Controls.MPButton(); this.bgWorkerTestWebservices = new System.ComponentModel.BackgroundWorker(); this.bgWorkerSearch = new System.ComponentModel.BackgroundWorker(); - this.lbGoogleNotice = new MediaPortal.UserInterface.Controls.MPLabel(); - this.gbSettings = new MediaPortal.UserInterface.Controls.MPGroupBox(); - this.tbLicenseKey5 = new MediaPortal.UserInterface.Controls.MPTextBox(); - this.mpLabel5 = new MediaPortal.UserInterface.Controls.MPLabel(); - this.tbLicenseKey4 = new MediaPortal.UserInterface.Controls.MPTextBox(); - this.mpLabel4 = new MediaPortal.UserInterface.Controls.MPLabel(); - this.tbLicenseKey3 = new MediaPortal.UserInterface.Controls.MPTextBox(); - this.mpLabel3 = new MediaPortal.UserInterface.Controls.MPLabel(); - this.tbLicenseKey2 = new MediaPortal.UserInterface.Controls.MPTextBox(); - this.mpLabel2 = new MediaPortal.UserInterface.Controls.MPLabel(); - this.tbLicenseKey1 = new MediaPortal.UserInterface.Controls.MPTextBox(); - this.lbGoogleLicenceKey = new MediaPortal.UserInterface.Controls.MPLabel(); - this.labelPluginBannerHint = new MediaPortal.UserInterface.Controls.MPLabel(); - this.mpLabel6 = new MediaPortal.UserInterface.Controls.MPLabel(); this.tabControl.SuspendLayout(); this.tabPageDatabase.SuspendLayout(); this.gbGoogleLicKeyStatuses.SuspendLayout(); @@ -120,10 +120,10 @@ this.gbMusicDBSearchStats.SuspendLayout(); this.gbMusicDBSearch.SuspendLayout(); this.tabPageSetup.SuspendLayout(); + this.gbSettings.SuspendLayout(); this.gbLyricSites.SuspendLayout(); this.gbGenerel.SuspendLayout(); this.gbLicenseKeyHelp.SuspendLayout(); - this.gbSettings.SuspendLayout(); this.SuspendLayout(); // // tabControl @@ -142,7 +142,7 @@ this.tabPageLyricsDatabase.Location = new System.Drawing.Point(4, 22); this.tabPageLyricsDatabase.Name = "tabPageLyricsDatabase"; this.tabPageLyricsDatabase.Padding = new System.Windows.Forms.Padding(3); - this.tabPageLyricsDatabase.Size = new System.Drawing.Size(520, 513); + this.tabPageLyricsDatabase.Size = new System.Drawing.Size(520, 502); this.tabPageLyricsDatabase.TabIndex = 1; this.tabPageLyricsDatabase.Text = "Lyrics database"; this.tabPageLyricsDatabase.UseVisualStyleBackColor = true; @@ -629,11 +629,116 @@ this.tabPageSetup.Location = new System.Drawing.Point(4, 22); this.tabPageSetup.Name = "tabPageSetup"; this.tabPageSetup.Padding = new System.Windows.Forms.Padding(3); - this.tabPageSetup.Size = new System.Drawing.Size(520, 513); + this.tabPageSetup.Size = new System.Drawing.Size(520, 502); this.tabPageSetup.TabIndex = 2; this.tabPageSetup.Text = "Setup"; this.tabPageSetup.UseVisualStyleBackColor = true; // + // gbSettings + // + this.gbSettings.Controls.Add(this.tbLicenseKey5); + this.gbSettings.Controls.Add(this.mpLabel5); + this.gbSettings.Controls.Add(this.tbLicenseKey4); + this.gbSettings.Controls.Add(this.mpLabel4); + this.gbSettings.Controls.Add(this.tbLicenseKey3); + this.gbSettings.Controls.Add(this.mpLabel3); + this.gbSettings.Controls.Add(this.tbLicenseKey2); + this.gbSettings.Controls.Add(this.mpLabel2); + this.gbSettings.Controls.Add(this.tbLicenseKey1); + this.gbSettings.Controls.Add(this.lbGoogleLicenceKey); + this.gbSettings.FlatStyle = System.Windows.Forms.FlatStyle.Popup; + this.gbSettings.Location = new System.Drawing.Point(4, 169); + this.gbSettings.Name = "gbSettings"; + this.gbSettings.Size = new System.Drawing.Size(510, 148); + this.gbSettings.TabIndex = 29; + this.gbSettings.TabStop = false; + this.gbSettings.Text = "Google license keys"; + // + // tbLicenseKey5 + // + this.tbLicenseKey5.BorderColor = System.Drawing.Color.Empty; + this.tbLicenseKey5.Location = new System.Drawing.Point(114, 118); + this.tbLicenseKey5.Name = "tbLicenseKey5"; + this.tbLicenseKey5.Size = new System.Drawing.Size(218, 20); + this.tbLicenseKey5.TabIndex = 15; + // + // mpLabel5 + // + this.mpLabel5.AutoSize = true; + this.mpLabel5.Location = new System.Drawing.Point(12, 121); + this.mpLabel5.Name = "mpLabel5"; + this.mpLabel5.Size = new System.Drawing.Size(76, 13); + this.mpLabel5.TabIndex = 10; + this.mpLabel5.Text = "License key 5:"; + // + // tbLicenseKey4 + // + this.tbLicenseKey4.BorderColor = System.Drawing.Color.Empty; + this.tbLicenseKey4.Location = new System.Drawing.Point(114, 92); + this.tbLicenseKey4.Name = "tbLicenseKey4"; + this.tbLicenseKey4.Size = new System.Drawing.Size(218, 20); + this.tbLicenseKey4.TabIndex = 14; + // + // mpLabel4 + // + this.mpLabel4.AutoSize = true; + this.mpLabel4.Location = new System.Drawing.Point(12, 95); + this.mpLabel4.Name = "mpLabel4"; + this.mpLabel4.Size = new System.Drawing.Size(76, 13); + this.mpLabel4.TabIndex = 8; + this.mpLabel4.Text = "License key 4:"; + // + // tbLicenseKey3 + // + this.tbLicenseKey3.BorderColor = System.Drawing.Color.Empty; + this.tbLicenseKey3.Location = new System.Drawing.Point(114, 66); + this.tbLicenseKey3.Name = "tbLicenseKey3"; + this.tbLicenseKey3.Size = new System.Drawing.Size(218, 20); + this.tbLicenseKey3.TabIndex = 13; + // + // mpLabel3 + // + this.mpLabel3.AutoSize = true; + this.mpLabel3.Location = new System.Drawing.Point(12, 69); + this.mpLabel3.Name = "mpLabel3"; + this.mpLabel3.Size = new System.Drawing.Size(76, 13); + this.mpLabel3.TabIndex = 6; + this.mpLabel3.Text = "License key 3:"; + // + // tbLicenseKey2 + // + this.tbLicenseKey2.BorderColor = System.Drawing.Color.Empty; + this.tbLicenseKey2.Location = new System.Drawing.Point(114, 40); + this.tbLicenseKey2.Name = "tbLicenseKey2"; + this.tbLicenseKey2.Size = new System.Drawing.Size(218, 20); + this.tbLicenseKey2.TabIndex = 12; + // + // mpLabel2 + // + this.mpLabel2.AutoSize = true; + this.mpLabel2.Location = new System.Drawing.Point(12, 43); + this.mpLabel2.Name = "mpLabel2"; + this.mpLabel2.Size = new System.Drawing.Size(76, 13); + this.mpLabel2.TabIndex = 4; + this.mpLabel2.Text = "License key 2:"; + // + // tbLicenseKey1 + // + this.tbLicenseKey1.BorderColor = System.Drawing.Color.Empty; + this.tbLicenseKey1.Location = new System.Drawing.Point(114, 14); + this.tbLicenseKey1.Name = "tbLicenseKey1"; + this.tbLicenseKey1.Size = new System.Drawing.Size(218, 20); + this.tbLicenseKey1.TabIndex = 11; + // + // lbGoogleLicenceKey + // + this.lbGoogleLicenceKey.AutoSize = true; + this.lbGoogleLicenceKey.Location = new System.Drawing.Point(12, 17); + this.lbGoogleLicenceKey.Name = "lbGoogleLicenceKey"; + this.lbGoogleLicenceKey.Size = new System.Drawing.Size(76, 13); + this.lbGoogleLicenceKey.TabIndex = 0; + this.lbGoogleLicenceKey.Text = "License key 1:"; + // // gbLyricSites // this.gbLyricSites.AutoSize = true; @@ -811,6 +916,33 @@ this.gbLicenseKeyHelp.TabStop = false; this.gbLicenseKeyHelp.Text = "Google license keys info"; // + // mpLabel6 + // + this.mpLabel6.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.mpLabel6.Location = new System.Drawing.Point(11, 72); + this.mpLabel6.Name = "mpLabel6"; + this.mpLabel6.Size = new System.Drawing.Size(55, 16); + this.mpLabel6.TabIndex = 19; + this.mpLabel6.Text = "Notice:"; + // + // lbGoogleNotice + // + this.lbGoogleNotice.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lbGoogleNotice.Location = new System.Drawing.Point(62, 72); + this.lbGoogleNotice.Name = "lbGoogleNotice"; + this.lbGoogleNotice.Size = new System.Drawing.Size(412, 25); + this.lbGoogleNotice.TabIndex = 18; + this.lbGoogleNotice.Text = "Currently the Google web service does not require a license key to operate!\r\nAcco" + + "rdingly it is recommended to use all of the seven working lyric sites."; + // + // labelPluginBannerHint + // + this.labelPluginBannerHint.Location = new System.Drawing.Point(11, 20); + this.labelPluginBannerHint.Name = "labelPluginBannerHint"; + this.labelPluginBannerHint.Size = new System.Drawing.Size(489, 43); + this.labelPluginBannerHint.TabIndex = 17; + this.labelPluginBannerHint.Text = resources.GetString("labelPluginBannerHint.Text"); + // // btSave // this.btSave.Location = new System.Drawing.Point(356, 538); @@ -844,143 +976,11 @@ this.bgWorkerSearch.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.bgWorkerSearch_RunWorkerCompleted); this.bgWorkerSearch.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.bgWorkerSearch_ProgressChanged); // - // lbGoogleNotice - // - this.lbGoogleNotice.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.lbGoogleNotice.Location = new System.Drawing.Point(62, 72); - this.lbGoogleNotice.Name = "lbGoogleNotice"; - this.lbGoogleNotice.Size = new System.Drawing.Size(412, 25); - this.lbGoogleNotice.TabIndex = 18; - this.lbGoogleNotice.Text = "Currently the Google web service does not require a license key to operate!\r\nAcco" + - "rdingly it is recommended to use all of the seven working lyric sites."; - // - // gbSettings - // - this.gbSettings.Controls.Add(this.tbLicenseKey5); - this.gbSettings.Controls.Add(this.mpLabel5); - this.gbSettings.Controls.Add(this.tbLicenseKey4); - this.gbSettings.Controls.Add(this.mpLabel4); - this.gbSettings.Controls.Add(this.tbLicenseKey3); - this.gbSettings.Controls.Add(this.mpLabel3); - this.gbSettings.Controls.Add(this.tbLicenseKey2); - this.gbSettings.Controls.Add(this.mpLabel2); - this.gbSettings.Controls.Add(this.tbLicenseKey1); - this.gbSettings.Controls.Add(this.lbGoogleLicenceKey); - this.gbSettings.FlatStyle = System.Windows.Forms.FlatStyle.Popup; - this.gbSettings.Location = new System.Drawing.Point(4, 169); - this.gbSettings.Name = "gbSettings"; - this.gbSettings.Size = new System.Drawing.Size(510, 148); - this.gbSettings.TabIndex = 29; - this.gbSettings.TabStop = false; - this.gbSettings.Text = "Google license keys"; - // - // tbLicenseKey5 - // - this.tbLicenseKey5.BorderColor = System.Drawing.Color.Empty; - this.tbLicenseKey5.Location = new System.Drawing.Point(114, 118); - this.tbLicenseKey5.Name = "tbLicenseKey5"; - this.tbLicenseKey5.Size = new System.Drawing.Size(218, 20); - this.tbLicenseKey5.TabIndex = 15; - // - // mpLabel5 - // - this.mpLabel5.AutoSize = true; - this.mpLabel5.Location = new System.Drawing.Point(12, 121); - this.mpLabel5.Name = "mpLabel5"; - this.mpLabel5.Size = new System.Drawing.Size(76, 13); - this.mpLabel5.TabIndex = 10; - this.mpLabel5.Text = "License key 5:"; - // - // tbLicenseKey4 - // - this.tbLicenseKey4.BorderColor = System.Drawing.Color.Empty; - this.tbLicenseKey4.Location = new System.Drawing.Point(114, 92); - this.tbLicenseKey4.Name = "tbLicenseKey4"; - this.tbLicenseKey4.Size = new System.Drawing.Size(218, 20); - this.tbLicenseKey4.TabIndex = 14; - // - // mpLabel4 - // - this.mpLabel4.AutoSize = true; - this.mpLabel4.Location = new System.Drawing.Point(12, 95); - this.mpLabel4.Name = "mpLabel4"; - this.mpLabel4.Size = new System.Drawing.Size(76, 13); - this.mpLabel4.TabIndex = 8; - this.mpLabel4.Text = "License key 4:"; - // - // tbLicenseKey3 - // - this.tbLicenseKey3.BorderColor = System.Drawing.Color.Empty; - this.tbLicenseKey3.Location = new System.Drawing.Point(114, 66); - this.tbLicenseKey3.Name = "tbLicenseKey3"; - this.tbLicenseKey3.Size = new System.Drawing.Size(218, 20); - this.tbLicenseKey3.TabIndex = 13; - // - // mpLabel3 - // - this.mpLabel3.AutoSize = true; - this.mpLabel3.Location = new System.Drawing.Point(12, 69); - this.mpLabel3.Name = "mpLabel3"; - this.mpLabel3.Size = new System.Drawing.Size(76, 13); - this.mpLabel3.TabIndex = 6; - this.mpLabel3.Text = "License key 3:"; - // - // tbLicenseKey2 - // - this.tbLicenseKey2.BorderColor = System.Drawing.Color.Empty; - this.tbLicenseKey2.Location = new System.Drawing.Point(114, 40); - this.tbLicenseKey2.Name = "tbLicenseKey2"; - this.tbLicenseKey2.Size = new System.Drawing.Size(218, 20); - this.tbLicenseKey2.TabIndex = 12; - // - // mpLabel2 - // - this.mpLabel2.AutoSize = true; - this.mpLabel2.Location = new System.Drawing.Point(12, 43); - this.mpLabel2.Name = "mpLabel2"; - this.mpLabel2.Size = new System.Drawing.Size(76, 13); - this.mpLabel2.TabIndex = 4; - this.mpLabel2.Text = "License key 2:"; - // - // tbLicenseKey1 - // - this.tbLicenseKey1.BorderColor = System.Drawing.Color.Empty; - this.tbLicenseKey1.Location = new System.Drawing.Point(114, 14); - this.tbLicenseKey1.Name = "tbLicenseKey1"; - this.tbLicenseKey1.Size = new System.Drawing.Size(218, 20); - this.tbLicenseKey1.TabIndex = 11; - // - // lbGoogleLicenceKey - // - this.lbGoogleLicenceKey.AutoSize = true; - this.lbGoogleLicenceKey.Location = new System.Drawing.Point(12, 17); - this.lbGoogleLicenceKey.Name = "lbGoogleLicenceKey"; - this.lbGoogleLicenceKey.Size = new System.Drawing.Size(76, 13); - this.lbGoogleLicenceKey.TabIndex = 0; - this.lbGoogleLicenceKey.Text = "License key 1:"; - // - // labelPluginBannerHint - // - this.labelPluginBannerHint.Location = new System.Drawing.Point(11, 20); - this.labelPluginBannerHint.Name = "labelPluginBannerHint"; - this.labelPluginBannerHint.Size = new System.Drawing.Size(489, 43); - this.labelPluginBannerHint.TabIndex = 17; - this.labelPluginBannerHint.Text = resources.GetString("labelPluginBannerHint.Text"); - // - // mpLabel6 - // - this.mpLabel6.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.mpLabel6.Location = new System.Drawing.Point(11, 72); - this.mpLabel6.Name = "mpLabel6"; - this.mpLabel6.Size = new System.Drawing.Size(55, 16); - this.mpLabel6.TabIndex = 19; - this.mpLabel6.Text = "Notice:"; - // // MyLyricsSetup // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(523, 562); + this.ClientSize = new System.Drawing.Size(529, 566); this.ControlBox = false; this.Controls.Add(this.btClose); this.Controls.Add(this.tabControl); @@ -991,6 +991,7 @@ this.Name = "MyLyricsSetup"; this.ShowIcon = false; this.Text = "MyLyrics Configuration"; + this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.MyLyricsSetup_FormClosing); this.tabControl.ResumeLayout(false); this.tabPageDatabase.ResumeLayout(false); this.gbGoogleLicKeyStatuses.ResumeLayout(false); @@ -1001,13 +1002,13 @@ this.gbMusicDBSearch.PerformLayout(); this.tabPageSetup.ResumeLayout(false); this.tabPageSetup.PerformLayout(); + this.gbSettings.ResumeLayout(false); + this.gbSettings.PerformLayout(); this.gbLyricSites.ResumeLayout(false); this.gbLyricSites.PerformLayout(); this.gbGenerel.ResumeLayout(false); this.gbGenerel.PerformLayout(); this.gbLicenseKeyHelp.ResumeLayout(false); - this.gbSettings.ResumeLayout(false); - this.gbSettings.PerformLayout(); this.ResumeLayout(false); } Modified: trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.cs =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.cs 2007-01-28 18:37:20 UTC (rev 36) +++ trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.cs 2007-01-28 20:06:07 UTC (rev 37) @@ -80,10 +80,9 @@ bool m_DisregardMarkedLyric = true; int m_noOfCurrentlySearches = 0; - int m_NoOfCurrentSearchesAllowed = 10; + const int m_NoOfCurrentSearchesAllowed = 10; + int m_Limit = 100; - int m_Limit = 1000; - ArrayList songs = new ArrayList(); ArrayList artists = new ArrayList(); @@ -206,7 +205,6 @@ { //MessageBox.Show("bgWorkerTestWebservices.IsBusy!!"); } - } // Stop worker thread if it is running. @@ -218,6 +216,7 @@ //GUIControl.SetControlLabel(GetID, (int)Controls.CONTROL_LBStatus, m_StatusText); // set event "Stop" m_EventStopThread.Set(); + //m_LyricControllerThread = null; // wait when thread will stop or finish while (m_LyricControllerThread.IsAlive) @@ -262,10 +261,6 @@ } } - - - - private void button1_Click(object sender, System.EventArgs e) { this.Close(); @@ -304,12 +299,18 @@ lbStep1a.Text = "The collecting of songs has started."; MusicDatabase dbs = new MusicDatabase(); m_TotalTitles = dbs.GetNumOfSongs(); + + // Reset text in textboxes + lbLastActivity2.Text = ""; + lbMessage.Text = ""; lbTotalSongs2.Text = m_TotalTitles.ToString(); m_EventStopThread = new ManualResetEvent(false); m_EventThreadStopped = new ManualResetEvent(false); + m_noOfMessages = 0; m_GoogleLicenseKeyIndex = 0; + m_noOfCurrentlySearches = 0; btImportAll.Enabled = false; progressBar.Enabled = true; @@ -462,10 +463,12 @@ { // new license key is used int nextNextGoogleLicenseKeyIndex = nextGoogleLicenseKeyIndex + 1; - lbMessage.Text = "#" + ((int)(++m_noOfMessages)).ToString() + " - " + "All queries of key license number " + nextGoogleLicenseKeyIndex.ToString() + " has been used, so number " + nextNextGoogleLicenseKeyIndex.ToString() + " is used instead." + "\r\n" + lbMessage.Text + "\r\n"; + string messageAboutNewKey = "All queries of key license number " + nextGoogleLicenseKeyIndex.ToString() + " has been used, so number " + nextNextGoogleLicenseKeyIndex.ToString() + " is used instead."; + lbMessage.Text = "#" + ((int)(++m_noOfMessages)).ToString() + " - " + messageAboutNewKey + "\r\n" + lbMessage.Text + "\r\n"; setGoogleLicenseKeysStatusesText(); lbOverallWsStatusa.Text = "No more queries today!"; lc.GoogleLicenseKey = m_GoogleLicenseKeys[nextGoogleLicenseKeyIndex]; + System.Console.WriteLine(messageAboutNewKey); } else { @@ -536,6 +539,7 @@ { set { + Thread.Sleep(1000); this.Invoke(m_DelegateThreadFinished, value); } } @@ -837,16 +841,24 @@ { if (lc != null) { - m_LyricControllerThread = null; + btCancel.Enabled = false; lc.finishThread(m_artist, m_track, "The search has been cancelled by the user.", "none"); lc.Dispose(); lc = null; - bgWorkerSearch.Dispose(); - bgWorkerSearch = null; - bgWorkerTestWebservices.Dispose(); - bgWorkerTestWebservices = null; - btCancel.Enabled = false; + + m_LyricControllerThread = null; + + //bgWorkerSearch.Dispose(); + //bgWorkerSearch = null; + + //bgWorkerTestWebservices.Dispose(); + //bgWorkerTestWebservices = null; } } + + private void MyLyricsSetup_FormClosing(object sender, FormClosingEventArgs e) + { + LyricDiagnostics.Dispose(); + } } } \ No newline at end of file Modified: trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.resx =================================================================== --- trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.resx 2007-01-28 18:37:20 UTC (rev 36) +++ trunk/plugins/MyLyrics/My Lyrics/MyLyricsSetup.resx 2007-01-28 20:06:07 UTC (rev 37) @@ -117,15 +117,15 @@ <resheader name="writer"> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> </resheader> + <data name="labelPluginBannerHint.Text" xml:space="preserve"> + <value>The Google Web service is a free service which offers the users to query billions of web pages directly from their own computer programs. To use a lyric site other than LyricWiki, you have to apply for at least one license key.</value> + </data> <metadata name="bgWorkerTestWebservices.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>17, 17</value> </metadata> <metadata name="bgWorkerSearch.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>200, 17</value> </metadata> - <data name="labelPluginBannerHint.Text" xml:space="preserve"> - <value>The Google Web service is a free service which offers the users to query billions of web pages directly from their own computer programs. To use a lyric site other than LyricWiki, you have to apply for at least one license key.</value> - </data> <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <value>51</value> </metadata> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <che...@us...> - 2007-01-28 18:37:26
|
Revision: 36 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=36&view=rev Author: chef_koch Date: 2007-01-28 10:37:20 -0800 (Sun, 28 Jan 2007) Log Message: ----------- removed, by windows created, Thumbs.db Removed Paths: ------------- trunk/plugins/MySudoku/skin/Media/Thumbs.db Deleted: trunk/plugins/MySudoku/skin/Media/Thumbs.db =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <die...@us...> - 2007-01-27 18:38:46
|
Revision: 34 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=34&view=rev Author: diehard2 Date: 2007-01-27 10:38:44 -0800 (Sat, 27 Jan 2007) Log Message: ----------- Code cleanup. Minor config fix Modified Paths: -------------- trunk/plugins/DirectTv/TVE 3 DirecTV Plugin/DirecTV.suo trunk/plugins/DirectTv/TVE 3 DirecTV Plugin/TunerPlugin/SetupForm.Designer.cs trunk/plugins/DirectTv/TVE 3 DirecTV Plugin/TunerPlugin/SetupForm.cs trunk/plugins/DirectTv/TVE 3 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj Modified: trunk/plugins/DirectTv/TVE 3 DirecTV Plugin/DirecTV.suo =================================================================== (Binary files differ) Modified: trunk/plugins/DirectTv/TVE 3 DirecTV Plugin/TunerPlugin/SetupForm.Designer.cs =================================================================== --- trunk/plugins/DirectTv/TVE 3 DirecTV Plugin/TunerPlugin/SetupForm.Designer.cs 2007-01-27 18:27:22 UTC (rev 33) +++ trunk/plugins/DirectTv/TVE 3 DirecTV Plugin/TunerPlugin/SetupForm.Designer.cs 2007-01-27 18:38:44 UTC (rev 34) @@ -28,7 +28,7 @@ /// </summary> private void InitializeComponent() { - this.rcomponents = new System.ComponentModel.Container(); + this.components = new System.ComponentModel.Container(); this.globalBox = new System.Windows.Forms.GroupBox(); this.cbAdvanced = new System.Windows.Forms.CheckBox(); this.typeLabel = new System.Windows.Forms.Label(); @@ -49,7 +49,7 @@ this.communicationBox = new System.Windows.Forms.GroupBox(); this.timeoutLabel = new System.Windows.Forms.Label(); this.timeoutNumUpDown = new System.Windows.Forms.NumericUpDown(); - this.toolTip1 = new System.Windows.Forms.ToolTip(this.rcomponents); + this.toolTip1 = new System.Windows.Forms.ToolTip(this.components); this.globalBox.SuspendLayout(); this.advancedBox.SuspendLayout(); this.communicationBox.SuspendLayout(); @@ -305,7 +305,7 @@ this.Controls.Add(this.globalBox); this.Margin = new System.Windows.Forms.Padding(4); this.Name = "SetupForm"; - this.Size = new System.Drawing.Size(573, 331); + this.Size = new System.Drawing.Size(573, 286); this.globalBox.ResumeLayout(false); this.globalBox.PerformLayout(); this.advancedBox.ResumeLayout(false); @@ -341,5 +341,6 @@ private System.Windows.Forms.CheckBox cbHideOSD; private System.Windows.Forms.ToolTip toolTip1; private System.ComponentModel.IContainer rcomponents; + private System.ComponentModel.IContainer components; } } \ No newline at end of file Modified: trunk/plugins/DirectTv/TVE 3 DirecTV Plugin/TunerPlugin/SetupForm.cs =================================================================== --- trunk/plugins/DirectTv/TVE 3 DirecTV Plugin/TunerPlugin/SetupForm.cs 2007-01-27 18:27:22 UTC (rev 33) +++ trunk/plugins/DirectTv/TVE 3 DirecTV Plugin/TunerPlugin/SetupForm.cs 2007-01-27 18:38:44 UTC (rev 34) @@ -18,7 +18,6 @@ public SetupForm() { InitializeComponent(); - DisableAdavancedSettings(); LoadSettings(); } @@ -27,6 +26,13 @@ { _settings = new DirecTVSettings(); _settings.LoadSettings(); + + //Enable of disable advanced settings + if (_settings.Advanced) + EnableAdavancedSettings(); + else + cbtwowaydisable.Checked = _settings.TwoWayDisable; + // Build up box types combobox modelComboBox.Items.Clear(); foreach (string box in DirecTVSettings.BoxTypes) @@ -66,10 +72,6 @@ // set loaded debug value debugBox.Checked = _settings.Debug; cbAdvanced.Checked = _settings.Advanced; - if (_settings.Advanced) - EnableAdavancedSettings(); - - cbtwowaydisable.Checked = _settings.TwoWayDisable; cbHideOSD.Checked = _settings.HideOSD; } @@ -152,22 +154,14 @@ { baudComboBox.Enabled = true; timeoutNumUpDown.Enabled = true; - keyMapComboBox.Enabled = true; - commandSetBox.Enabled = true; - channelSetBox.Enabled = true; - powerOnBox.Enabled = true; - debugBox.Enabled = true; + advancedBox.Enabled = true; } private void DisableAdavancedSettings() { baudComboBox.Enabled = false; timeoutNumUpDown.Enabled = false; - keyMapComboBox.Enabled = false; - commandSetBox.Enabled = false; - channelSetBox.Enabled = false; - powerOnBox.Enabled = false; - debugBox.Enabled = false; + advancedBox.Enabled = false; } } Modified: trunk/plugins/DirectTv/TVE 3 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj =================================================================== --- trunk/plugins/DirectTv/TVE 3 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj 2007-01-27 18:27:22 UTC (rev 33) +++ trunk/plugins/DirectTv/TVE 3 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj 2007-01-27 18:38:44 UTC (rev 34) @@ -62,19 +62,19 @@ <Reference Include="Accessibility" /> <Reference Include="Gentle.Common, Version=1.2.9.1285, Culture=neutral, PublicKeyToken=80b5de62e27be49b"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\..\..\Desktop\Steve\Server\Gentle.Common.dll</HintPath> + <HintPath>..\..\..\..\..\Desktop\Steve\Server\Gentle.Common.dll</HintPath> </Reference> <Reference Include="Gentle.Framework, Version=1.2.9.1286, Culture=neutral, PublicKeyToken=80b5de62e27be49b"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\..\..\Desktop\Steve\Server\Gentle.Framework.dll</HintPath> + <HintPath>..\..\..\..\..\Desktop\Steve\Server\Gentle.Framework.dll</HintPath> </Reference> <Reference Include="PluginBase, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\..\..\Desktop\Steve\Server\PluginBase.dll</HintPath> + <HintPath>..\..\..\..\..\Desktop\Steve\Server\PluginBase.dll</HintPath> </Reference> <Reference Include="SetupControls, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\..\..\Desktop\Steve\Server\SetupControls.dll</HintPath> + <HintPath>..\..\..\..\..\Desktop\Steve\Server\SetupControls.dll</HintPath> </Reference> <Reference Include="System" /> <Reference Include="System.Data" /> @@ -83,19 +83,19 @@ <Reference Include="System.Xml" /> <Reference Include="TvBusinessLayer, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\..\..\Desktop\Steve\Server\TvBusinessLayer.dll</HintPath> + <HintPath>..\..\..\..\..\Desktop\Steve\Server\TvBusinessLayer.dll</HintPath> </Reference> <Reference Include="TvControl, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\..\..\Desktop\Steve\Server\TvControl.dll</HintPath> + <HintPath>..\..\..\..\..\Desktop\Steve\Server\TvControl.dll</HintPath> </Reference> <Reference Include="TVDatabase, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\..\..\Desktop\Steve\Server\TVDatabase.dll</HintPath> + <HintPath>..\..\..\..\..\Desktop\Steve\Server\TVDatabase.dll</HintPath> </Reference> <Reference Include="TvLibrary.Interfaces, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\..\..\Desktop\Steve\Server\TvLibrary.Interfaces.dll</HintPath> + <HintPath>..\..\..\..\..\Desktop\Steve\Server\TvLibrary.Interfaces.dll</HintPath> </Reference> </ItemGroup> <PropertyGroup> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <die...@us...> - 2007-01-27 18:27:35
|
Revision: 33 http://mp-plugins.svn.sourceforge.net/mp-plugins/?rev=33&view=rev Author: diehard2 Date: 2007-01-27 10:27:22 -0800 (Sat, 27 Jan 2007) Log Message: ----------- Code cleanup. Small config fix Modified Paths: -------------- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/DirecTV.suo trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SetupForm.cs trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj Removed Paths: ------------- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/obj/Release/DirecTV.TunerPlugin.dll Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/DirecTV.suo =================================================================== (Binary files differ) Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SetupForm.cs =================================================================== --- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SetupForm.cs 2007-01-27 17:40:21 UTC (rev 32) +++ trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/SetupForm.cs 2007-01-27 18:27:22 UTC (rev 33) @@ -158,24 +158,16 @@ private void EnableAdavancedSettings() { + advancedBox.Enabled = true; baudComboBox.Enabled = true; timeoutNumUpDown.Enabled = true; - keyMapComboBox.Enabled = true; - commandSetBox.Enabled = true; - channelSetBox.Enabled = true; - powerOnBox.Enabled = true; - debugBox.Enabled = true; } private void DisableAdavancedSettings() { + advancedBox.Enabled = false; baudComboBox.Enabled = false; timeoutNumUpDown.Enabled = false; - keyMapComboBox.Enabled = false; - commandSetBox.Enabled = false; - channelSetBox.Enabled = false; - powerOnBox.Enabled = false; - debugBox.Enabled = false; } } Modified: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj =================================================================== --- trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj 2007-01-27 17:40:21 UTC (rev 32) +++ trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/TunerPlugin.csproj 2007-01-27 18:27:22 UTC (rev 33) @@ -62,7 +62,7 @@ <Reference Include="Accessibility" /> <Reference Include="Core, Version=1.0.2579.42468, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\Copy of MP\xbmc\bin\Release\Core.dll</HintPath> + <HintPath>..\..\..\..\..\Desktop\Release\Core.dll</HintPath> </Reference> <Reference Include="System" /> <Reference Include="System.Data" /> @@ -71,7 +71,7 @@ <Reference Include="System.Xml" /> <Reference Include="Utils, Version=1.0.2579.42459, Culture=neutral, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> - <HintPath>..\..\..\..\Copy of MP\xbmc\bin\Release\Utils.dll</HintPath> + <HintPath>..\..\..\..\..\Desktop\Release\Utils.dll</HintPath> </Reference> </ItemGroup> <PropertyGroup> Deleted: trunk/plugins/DirectTv/TVE 2 DirecTV Plugin/TunerPlugin/obj/Release/DirecTV.TunerPlugin.dll =================================================================== (Binary files differ) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |