<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.videolan.org/index.php?action=history&amp;feed=atom&amp;title=VlcUserControl.cs</id>
	<title>VlcUserControl.cs - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.videolan.org/index.php?action=history&amp;feed=atom&amp;title=VlcUserControl.cs"/>
	<link rel="alternate" type="text/html" href="https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;action=history"/>
	<updated>2026-11-04T16:04:32Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;diff=57238&amp;oldid=prev</id>
		<title>DoesItReallyMatter: syntaxhighlight</title>
		<link rel="alternate" type="text/html" href="https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;diff=57238&amp;oldid=prev"/>
		<updated>2019-01-29T09:38:10Z</updated>

		<summary type="html">&lt;p&gt;syntaxhighlight&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:38, 29 January 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{example code|l=LGPL|for=.Net Interface to VLC}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{example code|l=LGPL|for=.Net Interface to VLC}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;pre&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;syntaxhighlight lang=&quot;csharp&quot;&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/*****************************************************************************&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/*****************************************************************************&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  * VlcUserControl.cs: VlcUserControl partial class definition&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  * VlcUserControl.cs: VlcUserControl partial class definition&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1199&quot;&gt;Line 1,199:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1,199:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;	}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;pre&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;syntaxhighlight&lt;/ins&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>DoesItReallyMatter</name></author>
	</entry>
	<entry>
		<id>https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;diff=7798&amp;oldid=prev</id>
		<title>H2g2bob at 19:00, 7 March 2007</title>
		<link rel="alternate" type="text/html" href="https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;diff=7798&amp;oldid=prev"/>
		<updated>2007-03-07T19:00:00Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:00, 7 March 2007&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{example code|l=LGPL|for=.Net Interface to VLC}}&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/*****************************************************************************&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/*****************************************************************************&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1199&quot;&gt;Line 1,199:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1,200:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:Example code]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>H2g2bob</name></author>
	</entry>
	<entry>
		<id>https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;diff=7287&amp;oldid=prev</id>
		<title>Tappen at 00:10, 17 January 2007</title>
		<link rel="alternate" type="text/html" href="https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;diff=7287&amp;oldid=prev"/>
		<updated>2007-01-17T00:10:39Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;amp;diff=7287&amp;amp;oldid=7202&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Tappen</name></author>
	</entry>
	<entry>
		<id>https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;diff=7202&amp;oldid=prev</id>
		<title>H2g2bob at 02:26, 14 January 2007</title>
		<link rel="alternate" type="text/html" href="https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;diff=7202&amp;oldid=prev"/>
		<updated>2007-01-14T02:26:00Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 02:26, 14 January 2007&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1134&quot;&gt;Line 1,134:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1,134:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:Example code]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>H2g2bob</name></author>
	</entry>
	<entry>
		<id>https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;diff=7020&amp;oldid=prev</id>
		<title>Tappen at 01:03, 12 January 2007</title>
		<link rel="alternate" type="text/html" href="https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;diff=7020&amp;oldid=prev"/>
		<updated>2007-01-12T01:03:05Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;amp;diff=7020&amp;amp;oldid=6942&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Tappen</name></author>
	</entry>
	<entry>
		<id>https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;diff=6942&amp;oldid=prev</id>
		<title>Tappen at 01:33, 1 January 2007</title>
		<link rel="alternate" type="text/html" href="https://wiki.videolan.org/index.php?title=VlcUserControl.cs&amp;diff=6942&amp;oldid=prev"/>
		<updated>2007-01-01T01:33:48Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
/*****************************************************************************&lt;br /&gt;
 * VlcUserControl.cs: VlcUserControl partial class definition&lt;br /&gt;
 *****************************************************************************&lt;br /&gt;
 * Copyright (C) 2006 Chris Meadowcroft&lt;br /&gt;
 *&lt;br /&gt;
 * Authors: Chris Meadowcroft&lt;br /&gt;
 *&lt;br /&gt;
 * This program is free software; you can redistribute it and/or modify&lt;br /&gt;
 * it under the terms of the GNU Lesser General Public License as published by&lt;br /&gt;
 * the Free Software Foundation.&lt;br /&gt;
 *&lt;br /&gt;
 * This program is distributed in the hope that it will be useful,&lt;br /&gt;
 * but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the&lt;br /&gt;
 * GNU General Public License for more details.&lt;br /&gt;
 *&lt;br /&gt;
 * You should have received a copy of the GNU Lesser General Public License&lt;br /&gt;
 * along with this program; if not, write to the Free Software&lt;br /&gt;
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.&lt;br /&gt;
 *****************************************************************************/&lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Collections.Generic;&lt;br /&gt;
using System.ComponentModel;&lt;br /&gt;
using System.Drawing;&lt;br /&gt;
using System.Data;&lt;br /&gt;
using System.Diagnostics;&lt;br /&gt;
using System.Runtime.InteropServices;&lt;br /&gt;
using System.Text;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
&lt;br /&gt;
namespace VLanControl&lt;br /&gt;
{&lt;br /&gt;
	[ComVisible(true)]&lt;br /&gt;
	[ClassInterface(ClassInterfaceType.None)]&lt;br /&gt;
	public partial class VlcUserControl : UserControl, IPlayer2&lt;br /&gt;
	{&lt;br /&gt;
		private bool isPaused;&lt;br /&gt;
		private NativeLibVlc nativeVlc = new NativeLibVlc();&lt;br /&gt;
		private bool useMpegVbrOffset;&lt;br /&gt;
		private bool usingPausedPosition;&lt;br /&gt;
		private int pausedTime;&lt;br /&gt;
		private double pausedPosition;&lt;br /&gt;
		private int shuttleSeconds;&lt;br /&gt;
		private bool useVlcCrop = false;&lt;br /&gt;
		private int cropTop;&lt;br /&gt;
		private int cropBottom;&lt;br /&gt;
		private int cropLeft;&lt;br /&gt;
		private int cropRight;&lt;br /&gt;
&lt;br /&gt;
		const long SavingPostionTimespan = 5000000L;	// .5 seconds in ticks&lt;br /&gt;
&lt;br /&gt;
		public VlcUserControl()&lt;br /&gt;
		{&lt;br /&gt;
			InitializeComponent();&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		protected override void OnLoad(EventArgs e)&lt;br /&gt;
		{&lt;br /&gt;
			base.OnLoad(e);&lt;br /&gt;
			this.nativeVlc.Initialize();&lt;br /&gt;
			this.innerVlc.Bounds = this.ClientRectangle;&lt;br /&gt;
			this.nativeVlc.VideoOutput = this.innerVlc;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void DisplayMessage(String message)&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.ShowMessage(message);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public Size VideoSize&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				return this.nativeVlc.VideoSize;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void PrecomputeCrop(Size videoSize, int cropLeft, int cropRight, int cropTop, int cropBottom)&lt;br /&gt;
		{&lt;br /&gt;
			this.cropTop = cropTop;&lt;br /&gt;
			this.cropBottom = cropBottom;&lt;br /&gt;
			this.cropLeft = cropLeft;&lt;br /&gt;
			this.cropRight = cropRight;&lt;br /&gt;
			ComputeCrop(videoSize);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public bool ComputeCrop()&lt;br /&gt;
		{&lt;br /&gt;
			if(!this.useVlcCrop &amp;amp;&amp;amp; this.IsHandleCreated &amp;amp;&amp;amp; (this.nativeVlc.VideoOutput != null) &amp;amp;&amp;amp; &lt;br /&gt;
				(this.State != PlayerState.None))&lt;br /&gt;
			{&lt;br /&gt;
				Size vidSize = this.nativeVlc.VideoSize;&lt;br /&gt;
				if(!vidSize.IsEmpty)&lt;br /&gt;
				{&lt;br /&gt;
					ComputeCrop(this.nativeVlc.VideoSize);&lt;br /&gt;
					return true;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			return false;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		private void ComputeCrop(Size videoSize)&lt;br /&gt;
		{&lt;br /&gt;
			Size mySize = ClientSize;&lt;br /&gt;
			Debug.WriteLine(&amp;quot;Video Sizes = &amp;quot; + videoSize.ToString() + &amp;quot;, &amp;quot; + mySize.ToString());&lt;br /&gt;
			this.topBlocker.Visible = false;&lt;br /&gt;
			this.bottomBlocker.Visible = false;&lt;br /&gt;
			this.leftBlocker.Visible = false;&lt;br /&gt;
			this.rightBlocker.Visible = false;&lt;br /&gt;
&lt;br /&gt;
			double myAspect = Convert.ToDouble(mySize.Width) / Convert.ToDouble(mySize.Height);&lt;br /&gt;
			if((this.cropTop == 0) &amp;amp;&amp;amp; (this.cropBottom == 0) &amp;amp;&amp;amp; (this.cropLeft == 0) &amp;amp;&amp;amp; (this.cropRight == 0))&lt;br /&gt;
			{&lt;br /&gt;
				double vlcAspect = Convert.ToDouble(videoSize.Width) / Convert.ToDouble(videoSize.Height);&lt;br /&gt;
				if(vlcAspect &amp;gt; myAspect)&lt;br /&gt;
				{&lt;br /&gt;
					// gray borders on the top and bottom&lt;br /&gt;
					int perfectHeight = Convert.ToInt32(mySize.Width / vlcAspect);&lt;br /&gt;
					this.innerVlc.Bounds = new Rectangle(new Point(0, (mySize.Height - perfectHeight) / 2),&lt;br /&gt;
						new Size(mySize.Width, perfectHeight));&lt;br /&gt;
					Debug.WriteLine(&amp;quot;vlcAspect &amp;gt; myAspect &amp;quot; + this.innerVlc.Bounds.ToString());&lt;br /&gt;
				}&lt;br /&gt;
				else&lt;br /&gt;
				{&lt;br /&gt;
					// gray borders on the left and right&lt;br /&gt;
					int perfectWidth = Convert.ToInt32(mySize.Height * vlcAspect);&lt;br /&gt;
					this.innerVlc.Bounds = new Rectangle(new Point((mySize.Width - perfectWidth) / 2, 0),&lt;br /&gt;
						new Size(perfectWidth, mySize.Height));&lt;br /&gt;
					Debug.WriteLine(&amp;quot;vlcAspect &amp;lt; myAspect &amp;quot; + this.innerVlc.Bounds.ToString());&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			else&lt;br /&gt;
			{&lt;br /&gt;
				double realVlcAspect = Convert.ToDouble(videoSize.Width - this.cropRight - this.cropLeft) / &lt;br /&gt;
					Convert.ToDouble(videoSize.Height - this.cropTop - this.cropBottom);&lt;br /&gt;
				if(realVlcAspect &amp;gt; myAspect)&lt;br /&gt;
				{&lt;br /&gt;
					// gray borders on the top and bottom, and possible blocking panels&lt;br /&gt;
					// first, position and size the innerVlc as if there was no top or bottom cropping&lt;br /&gt;
					int videoPixelWidth = videoSize.Width - this.cropRight - this.cropLeft;&lt;br /&gt;
					double fakeVlcAspect = Convert.ToDouble(videoPixelWidth) / Convert.ToDouble(videoSize.Height);&lt;br /&gt;
					int perfectHeight = Convert.ToInt32(mySize.Width / fakeVlcAspect);&lt;br /&gt;
&lt;br /&gt;
					double widthScaling = Convert.ToDouble(mySize.Width) / Convert.ToDouble(videoPixelWidth);&lt;br /&gt;
					int innerVlcLeft = -Convert.ToInt32(Convert.ToDouble(this.cropLeft) * widthScaling);&lt;br /&gt;
					int innerVlcWidth = Convert.ToInt32(Convert.ToDouble(videoSize.Width) * widthScaling);&lt;br /&gt;
&lt;br /&gt;
					int videoTop = (mySize.Height - perfectHeight) / 2;&lt;br /&gt;
					this.innerVlc.Bounds = new Rectangle(new Point(innerVlcLeft, videoTop),&lt;br /&gt;
						new Size(innerVlcWidth, perfectHeight));&lt;br /&gt;
&lt;br /&gt;
					// then, add blocking panels if necessary for the top and bottom cropping&lt;br /&gt;
					if(this.cropTop != 0)&lt;br /&gt;
					{&lt;br /&gt;
						double heightScaling = Convert.ToDouble(perfectHeight) / Convert.ToDouble(videoSize.Height);&lt;br /&gt;
						int blockerHeight = Convert.ToInt32(Convert.ToDouble(this.cropTop) * heightScaling);&lt;br /&gt;
						this.topBlocker.Bounds = new Rectangle(&lt;br /&gt;
							new Point(0, videoTop), &lt;br /&gt;
							new Size(mySize.Width, blockerHeight));&lt;br /&gt;
						this.topBlocker.Visible = true;&lt;br /&gt;
					}&lt;br /&gt;
					if(this.cropBottom != 0)&lt;br /&gt;
					{&lt;br /&gt;
						double heightScaling = Convert.ToDouble(perfectHeight) / Convert.ToDouble(videoSize.Height);&lt;br /&gt;
						int blockerHeight = Convert.ToInt32(Convert.ToDouble(this.cropBottom) * heightScaling);&lt;br /&gt;
						this.bottomBlocker.Bounds = new Rectangle(&lt;br /&gt;
							new Point(0, mySize.Height - videoTop - blockerHeight),&lt;br /&gt;
							new Size(mySize.Width, blockerHeight));&lt;br /&gt;
						this.bottomBlocker.Visible = true;&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
				else&lt;br /&gt;
				{&lt;br /&gt;
					// gray borders on the left and right, and possible blocking panels&lt;br /&gt;
					// first, position and size the innerVlc as if there was no left or right cropping&lt;br /&gt;
					int videoPixelHeight = videoSize.Height - this.cropBottom - this.cropTop;&lt;br /&gt;
					double fakeVlcAspect = Convert.ToDouble(videoSize.Width) / Convert.ToDouble(videoPixelHeight);&lt;br /&gt;
					int perfectWidth = Convert.ToInt32(mySize.Height * fakeVlcAspect);&lt;br /&gt;
&lt;br /&gt;
					double heightScaling = Convert.ToDouble(mySize.Height) / Convert.ToDouble(videoPixelHeight);&lt;br /&gt;
					int innerVlcTop = -Convert.ToInt32(Convert.ToDouble(this.cropTop) * heightScaling);&lt;br /&gt;
					int innerVlcHeight = Convert.ToInt32(Convert.ToDouble(videoSize.Height) * heightScaling);&lt;br /&gt;
&lt;br /&gt;
					int videoWidth = (mySize.Width - perfectWidth) / 2;&lt;br /&gt;
					this.innerVlc.Bounds = new Rectangle(new Point(videoWidth, innerVlcTop),&lt;br /&gt;
						new Size(perfectWidth, innerVlcHeight));&lt;br /&gt;
&lt;br /&gt;
					// then, add blocking panels if necessary for the left and right cropping&lt;br /&gt;
					if(this.cropLeft != 0)&lt;br /&gt;
					{&lt;br /&gt;
						double widthScaling = Convert.ToDouble(perfectWidth) / Convert.ToDouble(videoSize.Width);&lt;br /&gt;
						int blockerWidth = Convert.ToInt32(Convert.ToDouble(this.cropLeft) * widthScaling);&lt;br /&gt;
						this.leftBlocker.Bounds = new Rectangle(&lt;br /&gt;
							new Point(videoWidth, 0),&lt;br /&gt;
							new Size(blockerWidth, mySize.Height));&lt;br /&gt;
						this.leftBlocker.Visible = true;&lt;br /&gt;
					}&lt;br /&gt;
					if(this.cropRight != 0)&lt;br /&gt;
					{&lt;br /&gt;
						double widthScaling = Convert.ToDouble(perfectWidth) / Convert.ToDouble(videoSize.Width);&lt;br /&gt;
						int blockerWidth = Convert.ToInt32(Convert.ToDouble(this.cropRight) * widthScaling);&lt;br /&gt;
						this.rightBlocker.Bounds = new Rectangle(&lt;br /&gt;
							new Point(mySize.Width - videoWidth - blockerWidth, 0),&lt;br /&gt;
							new Size(blockerWidth, mySize.Height));&lt;br /&gt;
						this.rightBlocker.Visible = true;&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public bool SetConfigVariable(String name, String value)&lt;br /&gt;
		{&lt;br /&gt;
			return this.nativeVlc.SetConfigVariable(name, value) == VlcError.Success;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int Time&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				try&lt;br /&gt;
				{&lt;br /&gt;
					return this.nativeVlc.Time;&lt;br /&gt;
				}&lt;br /&gt;
				catch(Exception)&lt;br /&gt;
				{&lt;br /&gt;
					return 0;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public double Position&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				return this.nativeVlc.Position;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void MoveToPosition(TrackPosition newTrackPosition)&lt;br /&gt;
		{&lt;br /&gt;
			if((newTrackPosition.position &amp;gt;= 0.0d) &amp;amp;&amp;amp; (newTrackPosition.position &amp;lt; 1.0d))&lt;br /&gt;
			{&lt;br /&gt;
				this.nativeVlc.Position = newTrackPosition.position;&lt;br /&gt;
				if(this.IsPaused)&lt;br /&gt;
				{&lt;br /&gt;
					this.usingPausedPosition = true;&lt;br /&gt;
					this.pausedTime = newTrackPosition.time;&lt;br /&gt;
					this.pausedPosition = newTrackPosition.position;&lt;br /&gt;
					this.shuttleSeconds = 0;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		private TrackPosition CalculateShuttle(int origTime, double origPosition, int offsetSeconds)&lt;br /&gt;
		{&lt;br /&gt;
			int newTime = origTime + offsetSeconds;&lt;br /&gt;
&lt;br /&gt;
			double positionPerTime;&lt;br /&gt;
			if(origPosition &amp;gt; .5d)&lt;br /&gt;
			{&lt;br /&gt;
				positionPerTime = origPosition / Convert.ToDouble(origTime);&lt;br /&gt;
			}&lt;br /&gt;
			else&lt;br /&gt;
			{&lt;br /&gt;
				positionPerTime = (1.0d - origPosition) / &lt;br /&gt;
					Convert.ToDouble(this.nativeVlc.Length - origTime);&lt;br /&gt;
			}&lt;br /&gt;
			double newPosition = origPosition + Convert.ToDouble(offsetSeconds) * positionPerTime;&lt;br /&gt;
&lt;br /&gt;
			Debug.WriteLine(String.Format(&amp;quot;CalculateShuttle time={0} pos={1}&amp;quot;, newTime, newPosition));&lt;br /&gt;
&lt;br /&gt;
			return new TrackPosition(newTime, newPosition);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public TrackPosition Shuttle(int offsetSeconds)&lt;br /&gt;
		{&lt;br /&gt;
			if(!this.IsPaused)&lt;br /&gt;
			{&lt;br /&gt;
				TrackPosition newPosition = CalculateShuttle(this.nativeVlc.Time, this.nativeVlc.Position,&lt;br /&gt;
					offsetSeconds);&lt;br /&gt;
				if(this.useMpegVbrOffset)&lt;br /&gt;
				{&lt;br /&gt;
					this.nativeVlc.Position = newPosition.position;&lt;br /&gt;
				}&lt;br /&gt;
				else&lt;br /&gt;
				{&lt;br /&gt;
					this.nativeVlc.Time = newPosition.time;&lt;br /&gt;
				}&lt;br /&gt;
				return newPosition;&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			if(!this.usingPausedPosition)&lt;br /&gt;
			{&lt;br /&gt;
				this.usingPausedPosition = true;&lt;br /&gt;
				this.pausedTime = this.nativeVlc.Time;&lt;br /&gt;
				this.pausedPosition = this.nativeVlc.Position;&lt;br /&gt;
				this.shuttleSeconds = 0;&lt;br /&gt;
			}&lt;br /&gt;
&lt;br /&gt;
			this.shuttleSeconds += offsetSeconds;&lt;br /&gt;
			return CalculateShuttle(this.pausedTime, this.pausedPosition, this.shuttleSeconds);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int Volume&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				return this.nativeVlc.Volume;&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				this.nativeVlc.Volume = value;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		const int MinRate = -2;&lt;br /&gt;
		const int MaxRate = 2;&lt;br /&gt;
		const int NormalRate = 0;&lt;br /&gt;
&lt;br /&gt;
		public void GetRates(out int minRate, out int maxRate, out int normalRate)&lt;br /&gt;
		{&lt;br /&gt;
			minRate = MinRate;&lt;br /&gt;
			maxRate = MaxRate;&lt;br /&gt;
			normalRate = NormalRate;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int Rate&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				// 1000 is normal, 2000 is half speed, 500 is double speed, etc.&lt;br /&gt;
				int bigRate = this.nativeVlc.GetVlcObjectInt(ObjectType.VLC_OBJECT_INPUT, &amp;quot;rate&amp;quot;, 1000);&lt;br /&gt;
				if(bigRate &amp;gt; 3000)&lt;br /&gt;
				{&lt;br /&gt;
					return -2;&lt;br /&gt;
				}&lt;br /&gt;
				if(bigRate &amp;gt; 1500)&lt;br /&gt;
				{&lt;br /&gt;
					return -1;&lt;br /&gt;
				}&lt;br /&gt;
				if(bigRate &amp;gt; 750)&lt;br /&gt;
				{&lt;br /&gt;
					return 0;&lt;br /&gt;
				}&lt;br /&gt;
				if(bigRate &amp;gt; 400)&lt;br /&gt;
				{&lt;br /&gt;
					return 1;&lt;br /&gt;
				}&lt;br /&gt;
				return 2;&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				int newRate = NormalRate;&lt;br /&gt;
				switch(value)&lt;br /&gt;
				{&lt;br /&gt;
				case 2:&lt;br /&gt;
					newRate = 250;&lt;br /&gt;
					break;&lt;br /&gt;
				case 1:&lt;br /&gt;
					newRate = 500;&lt;br /&gt;
					break;&lt;br /&gt;
				case 0:&lt;br /&gt;
					newRate = 1000;&lt;br /&gt;
					break;&lt;br /&gt;
				case -1:&lt;br /&gt;
					newRate = 2000;&lt;br /&gt;
					break;&lt;br /&gt;
				case -2:&lt;br /&gt;
					newRate = 4000;&lt;br /&gt;
					break;&lt;br /&gt;
				default:&lt;br /&gt;
					throw new ArgumentOutOfRangeException();&lt;br /&gt;
				}&lt;br /&gt;
				this.nativeVlc.SetVlcObjectInt(ObjectType.VLC_OBJECT_INPUT, &amp;quot;rate&amp;quot;, newRate);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int Length&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				try&lt;br /&gt;
				{&lt;br /&gt;
					return this.nativeVlc.Length;&lt;br /&gt;
				}&lt;br /&gt;
				catch(Exception)&lt;br /&gt;
				{&lt;br /&gt;
					return -1;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				this.nativeVlc.SetArtificialLength(value);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public double TimeScaling&lt;br /&gt;
		{&lt;br /&gt;
			get { return this.nativeVlc.TimeScaling; }&lt;br /&gt;
			set { this.nativeVlc.TimeScaling = value; }&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public PlayerState State&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				int state = this.nativeVlc.GetVlcObjectInt(ObjectType.VLC_OBJECT_INPUT, &lt;br /&gt;
					&amp;quot;state&amp;quot;, (int)InputState.INIT_S);&lt;br /&gt;
				switch((InputState)state)&lt;br /&gt;
				{&lt;br /&gt;
				case InputState.PAUSE_S:&lt;br /&gt;
					return PlayerState.Paused;&lt;br /&gt;
				case InputState.PLAYING_S:&lt;br /&gt;
					return PlayerState.Playing;&lt;br /&gt;
				default:&lt;br /&gt;
					return PlayerState.None;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public bool IsPlaying { get { return this.State == PlayerState.Playing; } }&lt;br /&gt;
&lt;br /&gt;
		public bool IsPaused { get { return this.State == PlayerState.Paused; } }&lt;br /&gt;
&lt;br /&gt;
		public bool IsMute { get { return (this.nativeVlc.Volume == 0); } }&lt;br /&gt;
&lt;br /&gt;
		public void ToggleMute()&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.ToggleVolumeMute();&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void DeinterlaceModes(out String[] choices, out String[] choiceText)&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.GetVlcVariableChoiceList(ObjectType.VLC_OBJECT_VOUT,&lt;br /&gt;
				&amp;quot;deinterlace&amp;quot;, out choices, out choiceText);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public String DeinterlaceMode&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				return this.nativeVlc.GetVlcObjectString(ObjectType.VLC_OBJECT_VOUT, &amp;quot;deinterlace&amp;quot;, String.Empty);&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				this.nativeVlc.SetVlcObjectString(ObjectType.VLC_OBJECT_VOUT, &amp;quot;deinterlace&amp;quot;, value);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void AspectRatios(out String[] choices, out String[] choiceText)&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.GetVlcVariableChoiceList(ObjectType.VLC_OBJECT_VOUT,&lt;br /&gt;
				&amp;quot;aspect-ratio&amp;quot;, out choices, out choiceText);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public String AspectRatio&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				return this.nativeVlc.GetVlcObjectString(ObjectType.VLC_OBJECT_VOUT, &amp;quot;aspect-ratio&amp;quot;, String.Empty);&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				this.nativeVlc.SetVlcObjectString(ObjectType.VLC_OBJECT_VOUT, &amp;quot;aspect-ratio&amp;quot;, value);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void CropModes(out String[] choices, out String[] choiceText)&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.GetVlcVariableChoiceList(ObjectType.VLC_OBJECT_VOUT,&lt;br /&gt;
				&amp;quot;crop&amp;quot;, out choices, out choiceText);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public String CropMode &lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				return this.nativeVlc.GetVlcObjectString(ObjectType.VLC_OBJECT_VOUT, &amp;quot;crop&amp;quot;, String.Empty);&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				this.nativeVlc.SetVlcObjectString(ObjectType.VLC_OBJECT_VOUT, &amp;quot;crop&amp;quot;, value);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int CroppingLeft&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				if(this.useVlcCrop)&lt;br /&gt;
				{&lt;br /&gt;
					return this.nativeVlc.GetVlcObjectInt(ObjectType.VLC_OBJECT_VOUT, &amp;quot;crop-left&amp;quot;, 0);&lt;br /&gt;
				}&lt;br /&gt;
				else&lt;br /&gt;
				{&lt;br /&gt;
					return this.cropLeft;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				if(this.useVlcCrop)&lt;br /&gt;
				{&lt;br /&gt;
					this.nativeVlc.SetVlcObjectInt(ObjectType.VLC_OBJECT_VOUT, &amp;quot;crop-left&amp;quot;, value);&lt;br /&gt;
				}&lt;br /&gt;
				else&lt;br /&gt;
				{&lt;br /&gt;
					this.cropLeft = value;&lt;br /&gt;
					ComputeCrop();&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int CroppingRight&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				if(this.useVlcCrop)&lt;br /&gt;
				{&lt;br /&gt;
					return this.nativeVlc.GetVlcObjectInt(ObjectType.VLC_OBJECT_VOUT, &amp;quot;crop-right&amp;quot;, 0);&lt;br /&gt;
				}&lt;br /&gt;
				else&lt;br /&gt;
				{&lt;br /&gt;
					return this.cropRight;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				if(this.useVlcCrop)&lt;br /&gt;
				{&lt;br /&gt;
					this.nativeVlc.SetVlcObjectInt(ObjectType.VLC_OBJECT_VOUT, &amp;quot;crop-right&amp;quot;, value);&lt;br /&gt;
				}&lt;br /&gt;
				else&lt;br /&gt;
				{&lt;br /&gt;
					this.cropRight = value;&lt;br /&gt;
					ComputeCrop();&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int CroppingTop&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				if(this.useVlcCrop)&lt;br /&gt;
				{&lt;br /&gt;
					return this.nativeVlc.GetVlcObjectInt(ObjectType.VLC_OBJECT_VOUT, &amp;quot;crop-top&amp;quot;, 0);&lt;br /&gt;
				}&lt;br /&gt;
				else&lt;br /&gt;
				{&lt;br /&gt;
					return this.cropTop;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				if(this.useVlcCrop)&lt;br /&gt;
				{&lt;br /&gt;
					this.nativeVlc.SetVlcObjectInt(ObjectType.VLC_OBJECT_VOUT, &amp;quot;crop-top&amp;quot;, value);&lt;br /&gt;
				}&lt;br /&gt;
				else&lt;br /&gt;
				{&lt;br /&gt;
					this.cropTop = value;&lt;br /&gt;
					ComputeCrop();&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int CroppingBottom&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				if(this.useVlcCrop)&lt;br /&gt;
				{&lt;br /&gt;
					return this.nativeVlc.GetVlcObjectInt(ObjectType.VLC_OBJECT_VOUT, &amp;quot;crop-bottom&amp;quot;, 0);&lt;br /&gt;
				}&lt;br /&gt;
				else&lt;br /&gt;
				{&lt;br /&gt;
					return this.cropBottom;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				if(this.useVlcCrop)&lt;br /&gt;
				{&lt;br /&gt;
					this.nativeVlc.SetVlcObjectInt(ObjectType.VLC_OBJECT_VOUT, &amp;quot;crop-bottom&amp;quot;, value);&lt;br /&gt;
				}&lt;br /&gt;
				else&lt;br /&gt;
				{&lt;br /&gt;
					this.cropBottom = value;&lt;br /&gt;
					ComputeCrop();&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void AudioTracks(out int[] trackIds, out String[] trackNames)&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.GetVlcVariableChoiceList(ObjectType.VLC_OBJECT_INPUT,&lt;br /&gt;
				&amp;quot;audio-es&amp;quot;, out trackIds, out trackNames);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int AudioTrack&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				return this.nativeVlc.GetVlcObjectInt(ObjectType.VLC_OBJECT_INPUT, &amp;quot;audio-es&amp;quot;, -1);&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				this.nativeVlc.SetVlcObjectInt(ObjectType.VLC_OBJECT_INPUT, &amp;quot;audio-es&amp;quot;, value);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void SubTitleTracks(out int[] trackIds, out String[] trackNames)&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.GetVlcVariableChoiceList(ObjectType.VLC_OBJECT_INPUT,&lt;br /&gt;
				&amp;quot;spu-es&amp;quot;, out trackIds, out trackNames);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int SubTitleTrack&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				return this.nativeVlc.GetVlcObjectInt(ObjectType.VLC_OBJECT_INPUT, &amp;quot;spu-es&amp;quot;, -1);&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				this.nativeVlc.SetVlcObjectInt(ObjectType.VLC_OBJECT_INPUT, &amp;quot;spu-es&amp;quot;, value);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void Programs(out int[] trackIds, out String[] trackNames)&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.GetVlcVariableChoiceList(ObjectType.VLC_OBJECT_INPUT,&lt;br /&gt;
				&amp;quot;program&amp;quot;, out trackIds, out trackNames);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int Program&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				return this.nativeVlc.GetVlcObjectInt(ObjectType.VLC_OBJECT_INPUT, &amp;quot;program&amp;quot;, -1);&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				this.nativeVlc.SetVlcObjectInt(ObjectType.VLC_OBJECT_INPUT, &amp;quot;program&amp;quot;, value);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void RotateCropModes()&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.PressKey(&amp;quot;key-crop&amp;quot;);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int AudioDelay&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				long delay = this.nativeVlc.GetVlcObjectLong(ObjectType.VLC_OBJECT_INPUT, &amp;quot;audio-delay&amp;quot;, 0L);&lt;br /&gt;
				return Convert.ToInt32(delay / 1000L);&lt;br /&gt;
&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				long delay = Convert.ToInt64(value) * 1000L;&lt;br /&gt;
				this.nativeVlc.SetVlcObjectLong(ObjectType.VLC_OBJECT_INPUT, &amp;quot;audio-delay&amp;quot;, delay);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int SubTitleDelay&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				long delay = this.nativeVlc.GetVlcObjectLong(ObjectType.VLC_OBJECT_INPUT, &amp;quot;spu-delay&amp;quot;, 0L);&lt;br /&gt;
				return Convert.ToInt32(delay / 1000L);&lt;br /&gt;
&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				long delay = Convert.ToInt64(value) * 1000L;&lt;br /&gt;
				this.nativeVlc.SetVlcObjectLong(ObjectType.VLC_OBJECT_INPUT, &amp;quot;spu-delay&amp;quot;, delay);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int ChapterCount&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				int[] chapterIds;&lt;br /&gt;
				String[] chapterText;&lt;br /&gt;
				this.nativeVlc.GetVlcVariableChoiceList(ObjectType.VLC_OBJECT_INPUT,&lt;br /&gt;
					&amp;quot;chapter&amp;quot;, out chapterIds, out chapterText);&lt;br /&gt;
				return (chapterIds.Length &amp;gt; 0) ? chapterIds.Length - 1 : 0;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int Chapter&lt;br /&gt;
		{&lt;br /&gt;
			get&lt;br /&gt;
			{&lt;br /&gt;
				return this.nativeVlc.GetVlcObjectInt(ObjectType.VLC_OBJECT_INPUT, &amp;quot;chapter&amp;quot;, -1);&lt;br /&gt;
			}&lt;br /&gt;
			set&lt;br /&gt;
			{&lt;br /&gt;
				this.nativeVlc.SetVlcObjectInt(ObjectType.VLC_OBJECT_INPUT, &amp;quot;chapter&amp;quot;, value);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		private void RepositionAfterPause()&lt;br /&gt;
		{&lt;br /&gt;
			if(this.usingPausedPosition &amp;amp;&amp;amp; (this.shuttleSeconds != 0))&lt;br /&gt;
			{&lt;br /&gt;
				TrackPosition newPosition = CalculateShuttle(this.pausedTime, this.pausedPosition,&lt;br /&gt;
					this.shuttleSeconds);&lt;br /&gt;
				if(this.useMpegVbrOffset)&lt;br /&gt;
				{&lt;br /&gt;
					this.nativeVlc.Position = newPosition.position;&lt;br /&gt;
				}&lt;br /&gt;
				else&lt;br /&gt;
				{&lt;br /&gt;
					this.nativeVlc.Time = newPosition.time;&lt;br /&gt;
				}&lt;br /&gt;
			}&lt;br /&gt;
			this.usingPausedPosition = false;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void Play()&lt;br /&gt;
		{&lt;br /&gt;
			this.isPaused = false;&lt;br /&gt;
			this.nativeVlc.Play();&lt;br /&gt;
			RepositionAfterPause();&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void ClearPlayList()&lt;br /&gt;
		{&lt;br /&gt;
			this.usingPausedPosition = false;&lt;br /&gt;
			//Debug.WriteLine(&amp;quot;ClearPlayList&amp;quot;);&lt;br /&gt;
			this.nativeVlc.PlaylistClear();&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public int AddToPlayList(String fileName, String title, String[] options)&lt;br /&gt;
		{&lt;br /&gt;
			this.usingPausedPosition = false;&lt;br /&gt;
			int index = 0;&lt;br /&gt;
			this.nativeVlc.AddTarget(fileName, options, ref index);&lt;br /&gt;
			Debug.WriteLine(&amp;quot;Added to Playlist &amp;quot; + fileName);&lt;br /&gt;
			Debug.WriteLine(&amp;quot;index = &amp;quot; + index.ToString());&lt;br /&gt;
			return index;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void PlayItem(int itemId)&lt;br /&gt;
		{&lt;br /&gt;
			this.usingPausedPosition = false;&lt;br /&gt;
			this.isPaused = false;&lt;br /&gt;
&lt;br /&gt;
			int currentIndex = this.nativeVlc.PlaylistIndex;&lt;br /&gt;
			Debug.WriteLine(&amp;quot;PlayItem index = &amp;quot; + itemId.ToString(), &amp;quot; currentIndex = &amp;quot; + currentIndex.ToString());&lt;br /&gt;
			if(currentIndex &amp;lt; 0)&lt;br /&gt;
			{&lt;br /&gt;
				this.nativeVlc.Play();&lt;br /&gt;
			}&lt;br /&gt;
			else&lt;br /&gt;
			{&lt;br /&gt;
				//this.nativeVlc.PlaylistPrevious();&lt;br /&gt;
				this.nativeVlc.Play(itemId);&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void Stop()&lt;br /&gt;
		{&lt;br /&gt;
			this.usingPausedPosition = false;&lt;br /&gt;
			this.nativeVlc.Stop();&lt;br /&gt;
			this.isPaused = false;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void TogglePause()&lt;br /&gt;
		{&lt;br /&gt;
			bool wasPaused = this.IsPaused;&lt;br /&gt;
			this.nativeVlc.Pause();&lt;br /&gt;
			if(wasPaused)&lt;br /&gt;
			{&lt;br /&gt;
				RepositionAfterPause();&lt;br /&gt;
			}&lt;br /&gt;
			this.isPaused = !wasPaused;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void RotateSubtitles()&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.PressKey(&amp;quot;key-subtitle-track&amp;quot;);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void RotateAudioTrack()&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.PressKey(&amp;quot;key-audio-track&amp;quot;);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void RotateDeinterlaceMode()&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.PressKey(&amp;quot;key-deinterlace&amp;quot;);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void RotateAspectRatio()&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.PressKey(&amp;quot;key-aspect-ratio&amp;quot;);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void CropTop()&lt;br /&gt;
		{&lt;br /&gt;
			//this.nativeVlc.PressKey(&amp;quot;key-crop-top&amp;quot;);&lt;br /&gt;
			this.CroppingTop = this.CroppingTop + 1;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void UnCropTop()&lt;br /&gt;
		{&lt;br /&gt;
			//this.nativeVlc.PressKey(&amp;quot;key-uncrop-top&amp;quot;);&lt;br /&gt;
			int crop = this.CroppingTop - 1;&lt;br /&gt;
			if(crop &amp;gt;= 0)&lt;br /&gt;
			{&lt;br /&gt;
				this.CroppingTop = crop;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void CropBottom()&lt;br /&gt;
		{&lt;br /&gt;
			//this.nativeVlc.PressKey(&amp;quot;key-crop-bottom&amp;quot;);&lt;br /&gt;
			this.CroppingBottom = this.CroppingBottom + 1;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void UnCropBottom()&lt;br /&gt;
		{&lt;br /&gt;
			//this.nativeVlc.PressKey(&amp;quot;key-uncrop-bottom&amp;quot;);&lt;br /&gt;
			int crop = this.CroppingBottom - 1;&lt;br /&gt;
			if(crop &amp;gt;= 0)&lt;br /&gt;
			{&lt;br /&gt;
				this.CroppingBottom = crop;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void CropLeft()&lt;br /&gt;
		{&lt;br /&gt;
			//this.nativeVlc.PressKey(&amp;quot;key-crop-left&amp;quot;);&lt;br /&gt;
			this.CroppingLeft = this.CroppingLeft + 1;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void UnCropLeft()&lt;br /&gt;
		{&lt;br /&gt;
			//this.nativeVlc.PressKey(&amp;quot;key-uncrop-left&amp;quot;);&lt;br /&gt;
			int crop = this.CroppingLeft - 1;&lt;br /&gt;
			if(crop &amp;gt;= 0)&lt;br /&gt;
			{&lt;br /&gt;
				this.CroppingLeft = crop;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void CropRight()&lt;br /&gt;
		{&lt;br /&gt;
			//this.nativeVlc.PressKey(&amp;quot;key-crop-right&amp;quot;);&lt;br /&gt;
			this.CroppingRight = this.CroppingRight + 1;&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void UnCropRight()&lt;br /&gt;
		{&lt;br /&gt;
			//this.nativeVlc.PressKey(&amp;quot;key-uncrop-right&amp;quot;);&lt;br /&gt;
			int crop = this.CroppingRight - 1;&lt;br /&gt;
			if(crop &amp;gt;= 0)&lt;br /&gt;
			{&lt;br /&gt;
				this.CroppingRight = crop;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public bool UseMpegVbrOffset&lt;br /&gt;
		{&lt;br /&gt;
			get { return this.useMpegVbrOffset; }&lt;br /&gt;
			set { this.useMpegVbrOffset = value; }&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void NextDvdTrack()&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.PressKey(&amp;quot;key-title-next&amp;quot;);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void PreviousDvdTrack()&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.PressKey(&amp;quot;key-title-prev&amp;quot;);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void NextDvdChapter()&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.PressKey(&amp;quot;key-chapter-next&amp;quot;);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		public void PreviousDvdChapter()&lt;br /&gt;
		{&lt;br /&gt;
			this.nativeVlc.PressKey(&amp;quot;key-chapter-prev&amp;quot;);&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		private void VlcUserControl_Resize(object sender, EventArgs e)&lt;br /&gt;
		{&lt;br /&gt;
			if(!ComputeCrop())&lt;br /&gt;
			{&lt;br /&gt;
				this.innerVlc.Bounds = this.ClientRectangle;&lt;br /&gt;
			}&lt;br /&gt;
		}&lt;br /&gt;
	}&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Tappen</name></author>
	</entry>
</feed>