[vlc-devel] [PATCH] macosx: Rewrote the About window auto-scroll behavior

epirat07 at gmail.com epirat07 at gmail.com
Thu Oct 8 15:11:49 CEST 2015


From: Marvin Scholz <epirat07 at gmail.com>

It was impossible to scroll in the About Scroll Views as the code
was doing automatic scrolling. This patch removes all the related
code and introduces a new NSClipView subclass that handles the
automatic scrolling. If it detects that the user scrolls, the
animation is stopped and the user can scroll it as he wishes.
---
 .../macosx/Resources/English.lproj/About.xib       | 1450 +++-----------------
 .../package/macosx/vlc.xcodeproj/project.pbxproj   |    6 +
 modules/gui/macosx/Makefile.am                     |    1 +
 modules/gui/macosx/VLCScrollingClipView.h          |   40 +
 modules/gui/macosx/VLCScrollingClipView.m          |   90 ++
 modules/gui/macosx/about.h                         |    1 +
 modules/gui/macosx/about.m                         |   49 +-
 7 files changed, 329 insertions(+), 1308 deletions(-)
 create mode 100644 modules/gui/macosx/VLCScrollingClipView.h
 create mode 100644 modules/gui/macosx/VLCScrollingClipView.m

diff --git a/extras/package/macosx/Resources/English.lproj/About.xib b/extras/package/macosx/Resources/English.lproj/About.xib
index f9000ec..ce9b214 100644
--- a/extras/package/macosx/Resources/English.lproj/About.xib
+++ b/extras/package/macosx/Resources/English.lproj/About.xib
@@ -1,1263 +1,187 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
-	<data>
-		<int key="IBDocument.SystemTarget">1060</int>
-		<string key="IBDocument.SystemVersion">14D136</string>
-		<string key="IBDocument.InterfaceBuilderVersion">7702</string>
-		<string key="IBDocument.AppKitVersion">1347.57</string>
-		<string key="IBDocument.HIToolboxVersion">758.70</string>
-		<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
-			<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
-			<string key="NS.object.0">7702</string>
-		</object>
-		<array key="IBDocument.IntegratedClassDependencies">
-			<string>NSBox</string>
-			<string>NSButton</string>
-			<string>NSButtonCell</string>
-			<string>NSCustomObject</string>
-			<string>NSImageCell</string>
-			<string>NSImageView</string>
-			<string>NSScrollView</string>
-			<string>NSScroller</string>
-			<string>NSTextField</string>
-			<string>NSTextFieldCell</string>
-			<string>NSTextView</string>
-			<string>NSView</string>
-			<string>NSWindowTemplate</string>
-		</array>
-		<array key="IBDocument.PluginDependencies">
-			<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
-		</array>
-		<object class="NSMutableDictionary" key="IBDocument.Metadata">
-			<string key="NS.key.0">PluginDependencyRecalculationVersion</string>
-			<integer value="1" key="NS.object.0"/>
-		</object>
-		<array class="NSMutableArray" key="IBDocument.RootObjects" id="1043535821">
-			<object class="NSCustomObject" id="334305778">
-				<string key="NSClassName">AboutWindowController</string>
-			</object>
-			<object class="NSCustomObject" id="992412428">
-				<string key="NSClassName">FirstResponder</string>
-			</object>
-			<object class="NSCustomObject" id="661246164">
-				<string key="NSClassName">NSApplication</string>
-			</object>
-			<object class="NSWindowTemplate" id="371989265">
-				<int key="NSWindowStyleMask">7</int>
-				<int key="NSWindowBacking">2</int>
-				<string key="NSWindowRect">{{173, 74}, {721, 356}}</string>
-				<int key="NSWTFlags">1886912512</int>
-				<string key="NSWindowTitle">About VLC media player</string>
-				<string key="NSWindowClass">NSWindow</string>
-				<object class="NSMutableString" key="NSViewClass">
-					<characters key="NS.bytes">View</characters>
-				</object>
-				<nil key="NSUserInterfaceItemIdentifier"/>
-				<string key="NSWindowContentMinSize">{231.86799999999999, 107}</string>
-				<object class="NSView" key="NSWindowView" id="471759747">
-					<reference key="NSNextResponder"/>
-					<int key="NSvFlags">256</int>
-					<array class="NSMutableArray" key="NSSubviews">
-						<object class="NSScrollView" id="943165371">
-							<reference key="NSNextResponder" ref="471759747"/>
-							<int key="NSvFlags">256</int>
-							<array class="NSMutableArray" key="NSSubviews">
-								<object class="NSClipView" id="877730250">
-									<reference key="NSNextResponder" ref="943165371"/>
-									<int key="NSvFlags">2322</int>
-									<array class="NSMutableArray" key="NSSubviews">
-										<object class="NSTextView" id="139161632">
-											<reference key="NSNextResponder" ref="877730250"/>
-											<int key="NSvFlags">2322</int>
-											<set class="NSMutableSet" key="NSDragTypes">
-												<string>Apple HTML pasteboard type</string>
-												<string>Apple PDF pasteboard type</string>
-												<string>Apple PICT pasteboard type</string>
-												<string>CorePasteboardFlavorType 0x6D6F6F76</string>
-												<string>NSColor pasteboard type</string>
-												<string>NSFilenamesPboardType</string>
-												<string>NSStringPboardType</string>
-												<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
-												<string>NeXT RTFD pasteboard type</string>
-												<string>NeXT Rich Text Format v1.0 pasteboard type</string>
-												<string>NeXT TIFF v4.0 pasteboard type</string>
-											</set>
-											<string key="NSFrameSize">{415, 204}</string>
-											<reference key="NSSuperview" ref="877730250"/>
-											<reference key="NSWindow"/>
-											<reference key="NSNextKeyView" ref="1033446111"/>
-											<object class="NSTextContainer" key="NSTextContainer" id="551886569">
-												<object class="NSLayoutManager" key="NSLayoutManager">
-													<object class="NSTextStorage" key="NSTextStorage">
-														<object class="NSMutableString" key="NSString">
-															<characters key="NS.bytes"/>
-														</object>
-														<nil key="NSDelegate"/>
-													</object>
-													<array class="NSMutableArray" key="NSTextContainers">
-														<reference ref="551886569"/>
-													</array>
-													<int key="NSLMFlags">38</int>
-													<nil key="NSDelegate"/>
-												</object>
-												<reference key="NSTextView" ref="139161632"/>
-												<double key="NSWidth">415</double>
-												<int key="NSTCFlags">1</int>
-											</object>
-											<object class="NSTextViewSharedData" key="NSSharedData">
-												<int key="NSFlags">67111776</int>
-												<int key="NSTextCheckingTypes">0</int>
-												<nil key="NSMarkedAttributes"/>
-												<object class="NSColor" key="NSBackgroundColor" id="256701342">
-													<int key="NSColorSpace">1</int>
-													<bytes key="NSRGB">MCAwIDAgMAA</bytes>
-												</object>
-												<dictionary key="NSSelectedAttributes">
-													<object class="NSColor" key="NSBackgroundColor">
-														<int key="NSColorSpace">6</int>
-														<string key="NSCatalogName">System</string>
-														<string key="NSColorName">selectedTextBackgroundColor</string>
-														<object class="NSColor" key="NSColor" id="353060198">
-															<int key="NSColorSpace">3</int>
-															<bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes>
-														</object>
-													</object>
-													<object class="NSColor" key="NSColor">
-														<int key="NSColorSpace">6</int>
-														<string key="NSCatalogName">System</string>
-														<string key="NSColorName">selectedTextColor</string>
-														<object class="NSColor" key="NSColor" id="313485599">
-															<int key="NSColorSpace">3</int>
-															<bytes key="NSWhite">MAA</bytes>
-														</object>
-													</object>
-												</dictionary>
-												<object class="NSColor" key="NSInsertionColor" id="114661703">
-													<int key="NSColorSpace">6</int>
-													<string key="NSCatalogName">System</string>
-													<string key="NSColorName">controlTextColor</string>
-													<reference key="NSColor" ref="313485599"/>
-												</object>
-												<dictionary key="NSLinkAttributes">
-													<object class="NSColor" key="NSColor">
-														<int key="NSColorSpace">1</int>
-														<bytes key="NSRGB">MCAwIDEAA</bytes>
-													</object>
-													<object class="NSCursor" key="NSCursor">
-														<string key="NSHotSpot">{8, -8}</string>
-														<int key="NSCursorType">13</int>
-													</object>
-													<integer value="1" key="NSUnderline"/>
-												</dictionary>
-												<nil key="NSDefaultParagraphStyle"/>
-												<nil key="NSTextFinder"/>
-												<int key="NSPreferredTextFinderStyle">0</int>
-											</object>
-											<int key="NSTVFlags">70</int>
-											<string key="NSMaxSize">{564, 10000000}</string>
-											<string key="NSMinize">{430, 204}</string>
-											<nil key="NSDelegate"/>
-										</object>
-									</array>
-									<string key="NSFrameSize">{430, 204}</string>
-									<reference key="NSSuperview" ref="943165371"/>
-									<reference key="NSWindow"/>
-									<reference key="NSNextKeyView" ref="139161632"/>
-									<reference key="NSDocView" ref="139161632"/>
-									<reference key="NSBGColor" ref="256701342"/>
-									<object class="NSCursor" key="NSCursor">
-										<string key="NSHotSpot">{1, -1}</string>
-										<int key="NSCursorType">0</int>
-									</object>
-									<int key="NScvFlags">4</int>
-									<bool key="NSAutomaticallyAdjustsContentInsets">YES</bool>
-								</object>
-								<object class="NSScroller" id="1033446111">
-									<reference key="NSNextResponder" ref="943165371"/>
-									<int key="NSvFlags">-2147483392</int>
-									<string key="NSFrame">{{-100, -100}, {15, 99}}</string>
-									<reference key="NSSuperview" ref="943165371"/>
-									<reference key="NSWindow"/>
-									<reference key="NSNextKeyView" ref="347136691"/>
-									<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
-									<string key="NSControlAction">_doScroller:</string>
-									<reference key="NSControlTarget" ref="943165371"/>
-									<reference key="NSTarget" ref="943165371"/>
-									<string key="NSAction">_doScroller:</string>
-									<double key="NSCurValue">1</double>
-								</object>
-								<object class="NSScroller" id="347136691">
-									<reference key="NSNextResponder" ref="943165371"/>
-									<int key="NSvFlags">-2147483392</int>
-									<string key="NSFrame">{{-100, -100}, {87, 18}}</string>
-									<reference key="NSSuperview" ref="943165371"/>
-									<reference key="NSWindow"/>
-									<reference key="NSNextKeyView" ref="877730250"/>
-									<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
-									<string key="NSControlAction">_doScroller:</string>
-									<reference key="NSControlTarget" ref="943165371"/>
-									<int key="NSsFlags">1</int>
-									<reference key="NSTarget" ref="943165371"/>
-									<string key="NSAction">_doScroller:</string>
-									<double key="NSCurValue">1</double>
-									<double key="NSPercent">0.94565220000000005</double>
-								</object>
-							</array>
-							<string key="NSFrame">{{271, 88}, {430, 204}}</string>
-							<reference key="NSSuperview" ref="471759747"/>
-							<reference key="NSWindow"/>
-							<reference key="NSNextKeyView" ref="877730250"/>
-							<int key="NSsFlags">133120</int>
-							<reference key="NSVScroller" ref="1033446111"/>
-							<reference key="NSHScroller" ref="347136691"/>
-							<reference key="NSContentView" ref="877730250"/>
-							<double key="NSMinMagnification">0.25</double>
-							<double key="NSMaxMagnification">4</double>
-							<double key="NSMagnification">1</double>
-						</object>
-						<object class="NSImageView" id="684344310">
-							<reference key="NSNextResponder" ref="471759747"/>
-							<int key="NSvFlags">256</int>
-							<set class="NSMutableSet" key="NSDragTypes">
-								<string>Apple PDF pasteboard type</string>
-								<string>Apple PICT pasteboard type</string>
-								<string>Apple PNG pasteboard type</string>
-								<string>NSFilenamesPboardType</string>
-								<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
-								<string>NeXT TIFF v4.0 pasteboard type</string>
-							</set>
-							<string key="NSFrame">{{20, 93}, {240, 240}}</string>
-							<reference key="NSSuperview" ref="471759747"/>
-							<reference key="NSWindow"/>
-							<reference key="NSNextKeyView" ref="1048236564"/>
-							<bool key="NSEnabled">YES</bool>
-							<object class="NSImageCell" key="NSCell" id="548775455">
-								<int key="NSCellFlags">134217728</int>
-								<int key="NSCellFlags2">33554432</int>
-								<object class="NSCustomResource" key="NSContents">
-									<string key="NSClassName">NSImage</string>
-									<string key="NSResourceName">vlc</string>
-								</object>
-								<int key="NSAlign">0</int>
-								<int key="NSScale">3</int>
-								<int key="NSStyle">0</int>
-								<bool key="NSAnimates">NO</bool>
-							</object>
-							<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
-							<bool key="NSEditable">YES</bool>
-						</object>
-						<object class="NSTextField" id="479386874">
-							<reference key="NSNextResponder" ref="471759747"/>
-							<int key="NSvFlags">256</int>
-							<string key="NSFrame">{{271, 274}, {430, 18}}</string>
-							<reference key="NSSuperview" ref="471759747"/>
-							<reference key="NSWindow"/>
-							<reference key="NSNextKeyView" ref="133543770"/>
-							<bool key="NSEnabled">YES</bool>
-							<object class="NSTextFieldCell" key="NSCell" id="367117063">
-								<int key="NSCellFlags">-2077228991</int>
-								<int key="NSCellFlags2">4195328</int>
-								<string key="NSContents">Version 0.9.0-svn Grischenko (PPC/x86)</string>
-								<object class="NSFont" key="NSSupport">
-									<bool key="IBIsSystemFont">YES</bool>
-									<double key="NSSize">12</double>
-									<int key="NSfFlags">2072</int>
-								</object>
-								<reference key="NSControlView" ref="479386874"/>
-								<object class="NSColor" key="NSBackgroundColor" id="464907814">
-									<int key="NSColorSpace">6</int>
-									<string key="NSCatalogName">System</string>
-									<string key="NSColorName">textBackgroundColor</string>
-									<object class="NSColor" key="NSColor" id="385434419">
-										<int key="NSColorSpace">3</int>
-										<bytes key="NSWhite">MQA</bytes>
-									</object>
-								</object>
-								<object class="NSColor" key="NSTextColor">
-									<int key="NSColorSpace">1</int>
-									<bytes key="NSRGB">MC4xNTcwMjQ5OSAwLjE1NzAyNDk5IDAuMTU3MDI0OTkAA</bytes>
-								</object>
-							</object>
-							<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
-							<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
-						</object>
-						<object class="NSTextField" id="133543770">
-							<reference key="NSNextResponder" ref="471759747"/>
-							<int key="NSvFlags">256</int>
-							<string key="NSFrame">{{271, 255}, {430, 16}}</string>
-							<reference key="NSSuperview" ref="471759747"/>
-							<reference key="NSWindow"/>
-							<reference key="NSNextKeyView" ref="164401777"/>
-							<bool key="NSEnabled">YES</bool>
-							<object class="NSTextFieldCell" key="NSCell" id="837500365">
-								<int key="NSCellFlags">-2077228991</int>
-								<int key="NSCellFlags2">4195328</int>
-								<string key="NSContents">Copyright (c) 1997-2008 the VideoLAN team</string>
-								<object class="NSFont" key="NSSupport" id="750108248">
-									<bool key="IBIsSystemFont">YES</bool>
-									<double key="NSSize">10</double>
-									<int key="NSfFlags">2843</int>
-								</object>
-								<reference key="NSControlView" ref="133543770"/>
-								<reference key="NSBackgroundColor" ref="464907814"/>
-								<object class="NSColor" key="NSTextColor">
-									<int key="NSColorSpace">1</int>
-									<bytes key="NSRGB">MC4xNTcwMjQ5OSAwLjE1NzAyNDk5IDAuMTU3MDI0OTkAA</bytes>
-								</object>
-							</object>
-							<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
-							<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
-						</object>
-						<object class="NSTextField" id="164401777">
-							<reference key="NSNextResponder" ref="471759747"/>
-							<int key="NSvFlags">256</int>
-							<string key="NSFrame">{{271, 241}, {430, 13}}</string>
-							<reference key="NSSuperview" ref="471759747"/>
-							<reference key="NSWindow"/>
-							<reference key="NSNextKeyView" ref="470682620"/>
-							<bool key="NSEnabled">YES</bool>
-							<object class="NSTextFieldCell" key="NSCell" id="339855634">
-								<int key="NSCellFlags">-2078277631</int>
-								<int key="NSCellFlags2">4194304</int>
-								<string key="NSContents">Compiled by fpk with llvm-gcc 4.2.1 (Based on Apple Inc. build 5658)</string>
-								<reference key="NSSupport" ref="750108248"/>
-								<reference key="NSControlView" ref="164401777"/>
-								<reference key="NSBackgroundColor" ref="464907814"/>
-								<object class="NSColor" key="NSTextColor">
-									<int key="NSColorSpace">1</int>
-									<bytes key="NSRGB">MC4xNTcwMjQ5OSAwLjE1NzAyNDk5IDAuMTU3MDI0OTkAA</bytes>
-								</object>
-							</object>
-							<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
-							<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
-						</object>
-						<object class="NSTextField" id="1048236564">
-							<reference key="NSNextResponder" ref="471759747"/>
-							<int key="NSvFlags">256</int>
-							<string key="NSFrame">{{271, 304}, {479, 29}}</string>
-							<reference key="NSSuperview" ref="471759747"/>
-							<reference key="NSWindow"/>
-							<reference key="NSNextKeyView" ref="943165371"/>
-							<bool key="NSEnabled">YES</bool>
-							<object class="NSTextFieldCell" key="NSCell" id="522802678">
-								<int key="NSCellFlags">69206017</int>
-								<int key="NSCellFlags2">4194304</int>
-								<string key="NSContents">VLC media player</string>
-								<object class="NSFont" key="NSSupport">
-									<bool key="IBIsSystemFont">YES</bool>
-									<double key="NSSize">24</double>
-									<int key="NSfFlags">1044</int>
-								</object>
-								<reference key="NSControlView" ref="1048236564"/>
-								<object class="NSColor" key="NSBackgroundColor" id="720417287">
-									<int key="NSColorSpace">6</int>
-									<string key="NSCatalogName">System</string>
-									<string key="NSColorName">controlColor</string>
-									<reference key="NSColor" ref="353060198"/>
-								</object>
-								<reference key="NSTextColor" ref="114661703"/>
-							</object>
-							<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
-							<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
-						</object>
-						<object class="NSTextField" id="470682620">
-							<reference key="NSNextResponder" ref="471759747"/>
-							<int key="NSvFlags">268</int>
-							<string key="NSFrame">{{271, 88}, {430, 145}}</string>
-							<reference key="NSSuperview" ref="471759747"/>
-							<reference key="NSWindow"/>
-							<reference key="NSNextKeyView" ref="845122596"/>
-							<string key="NSReuseIdentifierKey">_NS:3939</string>
-							<bool key="NSEnabled">YES</bool>
-							<object class="NSTextFieldCell" key="NSCell" id="273931819">
-								<int key="NSCellFlags">67108864</int>
-								<int key="NSCellFlags2">1346371584</int>
-								<string type="base64-UTF8" key="NSContents">VkxDIG1lZGlhIHBsYXllciBpcyBhIGZyZWUgYW5kIG9wZW4gc291cmNlIG1lZGlhIHBsYXllciwgZW5j
-b2RlciBhbmQgc3RyZWFtZXIgbWFkZSBieSB0aGUgdm9sdW50ZWVycyBvZiB0aGUgVmlkZW9MQU4gY29t
-bXVuaXR5LgpWTEMgdXNlcyBpdHMgaW50ZXJuYWwgY29kZWNzIGFuZCB3b3JrcyBvbiBlc3NlbnRpYWxs
-eSBldmVyeSBwb3B1bGFyIHBsYXRmb3JtIGFuZCBjYW4gcmVhZCBhbG1vc3QgZXZlcnkgZmlsZXMsIENE
-cywgRFZEcywgbmV0d29yayBzdHJlYW1zLCBjYXB0dXJlIGNhcmRzIGFuZCBvdGhlciBtZWRpYSBmb3Jt
-YXRzIQpIZWxwIGFuZCBqb2luIHVzIS4</string>
-								<object class="NSFont" key="NSSupport" id="21102384">
-									<bool key="IBIsSystemFont">YES</bool>
-									<double key="NSSize">13</double>
-									<int key="NSfFlags">1044</int>
-								</object>
-								<string key="NSCellIdentifier">_NS:3939</string>
-								<reference key="NSControlView" ref="470682620"/>
-								<reference key="NSBackgroundColor" ref="720417287"/>
-								<reference key="NSTextColor" ref="114661703"/>
-							</object>
-							<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
-							<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
-						</object>
-						<object class="NSBox" id="845122596">
-							<reference key="NSNextResponder" ref="471759747"/>
-							<int key="NSvFlags">36</int>
-							<array class="NSMutableArray" key="NSSubviews">
-								<object class="NSView" id="646071768">
-									<reference key="NSNextResponder" ref="845122596"/>
-									<int key="NSvFlags">274</int>
-									<array class="NSMutableArray" key="NSSubviews">
-										<object class="NSButton" id="635233983">
-											<reference key="NSNextResponder" ref="646071768"/>
-											<int key="NSvFlags">268</int>
-											<string key="NSFrame">{{556, 49}, {106, 23}}</string>
-											<reference key="NSSuperview" ref="646071768"/>
-											<reference key="NSWindow"/>
-											<reference key="NSNextKeyView" ref="622282437"/>
-											<string key="NSReuseIdentifierKey">_NS:2498</string>
-											<bool key="NSEnabled">YES</bool>
-											<object class="NSButtonCell" key="NSCell" id="229802879">
-												<int key="NSCellFlags">-2080374784</int>
-												<int key="NSCellFlags2">134217728</int>
-												<string key="NSContents">Credits</string>
-												<reference key="NSSupport" ref="21102384"/>
-												<string key="NSCellIdentifier">_NS:2498</string>
-												<reference key="NSControlView" ref="635233983"/>
-												<int key="NSButtonFlags">-2041823232</int>
-												<int key="NSButtonFlags2">162</int>
-												<string key="NSAlternateContents"/>
-												<string key="NSKeyEquivalent"/>
-												<int key="NSPeriodicDelay">400</int>
-												<int key="NSPeriodicInterval">75</int>
-											</object>
-											<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
-										</object>
-										<object class="NSButton" id="542792093">
-											<reference key="NSNextResponder" ref="646071768"/>
-											<int key="NSvFlags">268</int>
-											<string key="NSFrame">{{122, 49}, {106, 23}}</string>
-											<reference key="NSSuperview" ref="646071768"/>
-											<reference key="NSWindow"/>
-											<reference key="NSNextKeyView" ref="56148229"/>
-											<string key="NSReuseIdentifierKey">_NS:2498</string>
-											<bool key="NSEnabled">YES</bool>
-											<object class="NSButtonCell" key="NSCell" id="559988317">
-												<int key="NSCellFlags">-2080374784</int>
-												<int key="NSCellFlags2">134217728</int>
-												<string key="NSContents">Authors</string>
-												<reference key="NSSupport" ref="21102384"/>
-												<string key="NSCellIdentifier">_NS:2498</string>
-												<reference key="NSControlView" ref="542792093"/>
-												<int key="NSButtonFlags">-2041823232</int>
-												<int key="NSButtonFlags2">162</int>
-												<string key="NSAlternateContents"/>
-												<string key="NSKeyEquivalent"/>
-												<int key="NSPeriodicDelay">400</int>
-												<int key="NSPeriodicInterval">75</int>
-											</object>
-											<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
-										</object>
-										<object class="NSButton" id="56148229">
-											<reference key="NSNextResponder" ref="646071768"/>
-											<int key="NSvFlags">268</int>
-											<string key="NSFrame">{{339, 49}, {106, 23}}</string>
-											<reference key="NSSuperview" ref="646071768"/>
-											<reference key="NSWindow"/>
-											<reference key="NSNextKeyView" ref="635233983"/>
-											<string key="NSReuseIdentifierKey">_NS:2498</string>
-											<bool key="NSEnabled">YES</bool>
-											<object class="NSButtonCell" key="NSCell" id="847201803">
-												<int key="NSCellFlags">-2080374784</int>
-												<int key="NSCellFlags2">134217728</int>
-												<string key="NSContents">License</string>
-												<reference key="NSSupport" ref="21102384"/>
-												<string key="NSCellIdentifier">_NS:2498</string>
-												<reference key="NSControlView" ref="56148229"/>
-												<int key="NSButtonFlags">-2041823232</int>
-												<int key="NSButtonFlags2">162</int>
-												<string key="NSAlternateContents"/>
-												<string key="NSKeyEquivalent"/>
-												<int key="NSPeriodicDelay">400</int>
-												<int key="NSPeriodicInterval">75</int>
-											</object>
-											<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
-										</object>
-										<object class="NSTextField" id="622282437">
-											<reference key="NSNextResponder" ref="646071768"/>
-											<int key="NSvFlags">268</int>
-											<string key="NSFrame">{{119, 24}, {546, 13}}</string>
-											<reference key="NSSuperview" ref="646071768"/>
-											<reference key="NSWindow"/>
-											<string key="NSReuseIdentifierKey">_NS:4068</string>
-											<bool key="NSEnabled">YES</bool>
-											<object class="NSTextFieldCell" key="NSCell" id="165520428">
-												<int key="NSCellFlags">68157504</int>
-												<int key="NSCellFlags2">138413056</int>
-												<string key="NSContents">VLC media player and VideoLAN are trademarks of the VideoLAN Association.</string>
-												<object class="NSFont" key="NSSupport">
-													<bool key="IBIsSystemFont">YES</bool>
-													<double key="NSSize">10</double>
-													<int key="NSfFlags">1044</int>
-												</object>
-												<string key="NSCellIdentifier">_NS:4068</string>
-												<reference key="NSControlView" ref="622282437"/>
-												<reference key="NSBackgroundColor" ref="720417287"/>
-												<object class="NSColor" key="NSTextColor">
-													<int key="NSColorSpace">6</int>
-													<string key="NSCatalogName">System</string>
-													<string key="NSColorName">headerColor</string>
-													<reference key="NSColor" ref="385434419"/>
-												</object>
-											</object>
-											<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
-											<int key="NSTextFieldAlignmentRectInsetsVersion">1</int>
-										</object>
-									</array>
-									<string key="NSFrame">{{1, 1}, {745, 88}}</string>
-									<reference key="NSSuperview" ref="845122596"/>
-									<reference key="NSWindow"/>
-									<reference key="NSNextKeyView" ref="542792093"/>
-									<string key="NSReuseIdentifierKey">_NS:21</string>
-								</object>
-							</array>
-							<string key="NSFrame">{{-10, -9}, {747, 90}}</string>
-							<reference key="NSSuperview" ref="471759747"/>
-							<reference key="NSWindow"/>
-							<reference key="NSNextKeyView" ref="646071768"/>
-							<string key="NSReuseIdentifierKey">_NS:18</string>
-							<string key="NSOffsets">{0, 0}</string>
-							<object class="NSTextFieldCell" key="NSTitleCell">
-								<int key="NSCellFlags">67108864</int>
-								<int key="NSCellFlags2">0</int>
-								<string key="NSContents">Box</string>
-								<object class="NSFont" key="NSSupport">
-									<bool key="IBIsSystemFont">YES</bool>
-									<double key="NSSize">11</double>
-									<int key="NSfFlags">3100</int>
-								</object>
-								<reference key="NSBackgroundColor" ref="464907814"/>
-								<object class="NSColor" key="NSTextColor">
-									<int key="NSColorSpace">6</int>
-									<string key="NSCatalogName">System</string>
-									<string key="NSColorName">labelColor</string>
-									<reference key="NSColor" ref="313485599"/>
-								</object>
-							</object>
-							<reference key="NSContentView" ref="646071768"/>
-							<int key="NSBorderType">1</int>
-							<int key="NSBoxType">0</int>
-							<int key="NSTitlePosition">0</int>
-							<bool key="NSTransparent">NO</bool>
-							<object class="NSColor" key="NSFillColor2">
-								<int key="NSColorSpace">3</int>
-								<bytes key="NSWhite">MC45AA</bytes>
-							</object>
-						</object>
-					</array>
-					<string key="NSFrameSize">{721, 356}</string>
-					<reference key="NSSuperview"/>
-					<reference key="NSWindow"/>
-					<reference key="NSNextKeyView" ref="684344310"/>
-				</object>
-				<string key="NSScreenRect">{{0, 0}, {1680, 1027}}</string>
-				<string key="NSMinSize">{231.86799999999999, 129}</string>
-				<string key="NSMaxSize">{10000000000000, 10000000000000}</string>
-				<string key="NSFrameAutosaveName"/>
-				<bool key="NSWindowIsRestorable">YES</bool>
-			</object>
-		</array>
-		<object class="IBObjectContainer" key="IBDocument.Objects">
-			<array key="connectionRecords">
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">window</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="371989265"/>
-					</object>
-					<int key="connectionID">2317</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">o_name_field</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="1048236564"/>
-					</object>
-					<int key="connectionID">2318</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">o_name_version_field</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="479386874"/>
-					</object>
-					<int key="connectionID">2319</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">o_copyright_field</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="133543770"/>
-					</object>
-					<int key="connectionID">2320</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">o_revision_field</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="164401777"/>
-					</object>
-					<int key="connectionID">2321</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">o_joinus_txt</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="470682620"/>
-					</object>
-					<int key="connectionID">2322</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">o_authors_btn</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="542792093"/>
-					</object>
-					<int key="connectionID">2323</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">o_gpl_btn</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="56148229"/>
-					</object>
-					<int key="connectionID">2324</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">o_credits_btn</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="635233983"/>
-					</object>
-					<int key="connectionID">2325</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">o_trademarks_txt</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="622282437"/>
-					</object>
-					<int key="connectionID">2326</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">o_icon_view</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="684344310"/>
-					</object>
-					<int key="connectionID">2327</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">buttonAction:</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="542792093"/>
-					</object>
-					<int key="connectionID">2328</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">buttonAction:</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="56148229"/>
-					</object>
-					<int key="connectionID">2329</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBActionConnection" key="connection">
-						<string key="label">buttonAction:</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="635233983"/>
-					</object>
-					<int key="connectionID">2330</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">o_credits_scrollview</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="943165371"/>
-					</object>
-					<int key="connectionID">2333</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">o_credits_textview</string>
-						<reference key="source" ref="334305778"/>
-						<reference key="destination" ref="139161632"/>
-					</object>
-					<int key="connectionID">2334</int>
-				</object>
-				<object class="IBConnectionRecord">
-					<object class="IBOutletConnection" key="connection">
-						<string key="label">delegate</string>
-						<reference key="source" ref="371989265"/>
-						<reference key="destination" ref="334305778"/>
-					</object>
-					<int key="connectionID">2332</int>
-				</object>
-			</array>
-			<object class="IBMutableOrderedSet" key="objectRecords">
-				<array key="orderedObjects">
-					<object class="IBObjectRecord">
-						<int key="objectID">0</int>
-						<array key="object" id="0"/>
-						<reference key="children" ref="1043535821"/>
-						<nil key="parent"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">-2</int>
-						<reference key="object" ref="334305778"/>
-						<reference key="parent" ref="0"/>
-						<string key="objectName">File's Owner</string>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">-1</int>
-						<reference key="object" ref="992412428"/>
-						<reference key="parent" ref="0"/>
-						<string key="objectName">First Responder</string>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">1345</int>
-						<reference key="object" ref="371989265"/>
-						<array class="NSMutableArray" key="children">
-							<reference ref="471759747"/>
-						</array>
-						<reference key="parent" ref="0"/>
-						<string key="objectName">About</string>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">1344</int>
-						<reference key="object" ref="471759747"/>
-						<array class="NSMutableArray" key="children">
-							<reference ref="943165371"/>
-							<reference ref="1048236564"/>
-							<reference ref="479386874"/>
-							<reference ref="133543770"/>
-							<reference ref="164401777"/>
-							<reference ref="470682620"/>
-							<reference ref="845122596"/>
-							<reference ref="684344310"/>
-						</array>
-						<reference key="parent" ref="371989265"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">1348</int>
-						<reference key="object" ref="943165371"/>
-						<array class="NSMutableArray" key="children">
-							<reference ref="139161632"/>
-							<reference ref="1033446111"/>
-							<reference ref="347136691"/>
-						</array>
-						<reference key="parent" ref="471759747"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">1342</int>
-						<reference key="object" ref="139161632"/>
-						<reference key="parent" ref="943165371"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2232</int>
-						<reference key="object" ref="479386874"/>
-						<array class="NSMutableArray" key="children">
-							<reference ref="367117063"/>
-						</array>
-						<reference key="parent" ref="471759747"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2233</int>
-						<reference key="object" ref="133543770"/>
-						<array class="NSMutableArray" key="children">
-							<reference ref="837500365"/>
-						</array>
-						<reference key="parent" ref="471759747"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2234</int>
-						<reference key="object" ref="164401777"/>
-						<array class="NSMutableArray" key="children">
-							<reference ref="339855634"/>
-						</array>
-						<reference key="parent" ref="471759747"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2235</int>
-						<reference key="object" ref="1048236564"/>
-						<array class="NSMutableArray" key="children">
-							<reference ref="522802678"/>
-						</array>
-						<reference key="parent" ref="471759747"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2270</int>
-						<reference key="object" ref="367117063"/>
-						<reference key="parent" ref="479386874"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2271</int>
-						<reference key="object" ref="837500365"/>
-						<reference key="parent" ref="133543770"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2272</int>
-						<reference key="object" ref="339855634"/>
-						<reference key="parent" ref="164401777"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2273</int>
-						<reference key="object" ref="522802678"/>
-						<reference key="parent" ref="1048236564"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2278</int>
-						<reference key="object" ref="1033446111"/>
-						<reference key="parent" ref="943165371"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2279</int>
-						<reference key="object" ref="347136691"/>
-						<reference key="parent" ref="943165371"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">-3</int>
-						<reference key="object" ref="661246164"/>
-						<reference key="parent" ref="0"/>
-						<string key="objectName">Application</string>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2231</int>
-						<reference key="object" ref="684344310"/>
-						<array class="NSMutableArray" key="children">
-							<reference ref="548775455"/>
-						</array>
-						<reference key="parent" ref="471759747"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2269</int>
-						<reference key="object" ref="548775455"/>
-						<reference key="parent" ref="684344310"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2284</int>
-						<reference key="object" ref="470682620"/>
-						<array class="NSMutableArray" key="children">
-							<reference ref="273931819"/>
-						</array>
-						<reference key="parent" ref="471759747"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2285</int>
-						<reference key="object" ref="273931819"/>
-						<reference key="parent" ref="470682620"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2313</int>
-						<reference key="object" ref="845122596"/>
-						<array class="NSMutableArray" key="children">
-							<reference ref="635233983"/>
-							<reference ref="542792093"/>
-							<reference ref="56148229"/>
-							<reference ref="622282437"/>
-						</array>
-						<reference key="parent" ref="471759747"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2290</int>
-						<reference key="object" ref="635233983"/>
-						<array class="NSMutableArray" key="children">
-							<reference ref="229802879"/>
-						</array>
-						<reference key="parent" ref="845122596"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2291</int>
-						<reference key="object" ref="229802879"/>
-						<reference key="parent" ref="635233983"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2286</int>
-						<reference key="object" ref="542792093"/>
-						<array class="NSMutableArray" key="children">
-							<reference ref="559988317"/>
-						</array>
-						<reference key="parent" ref="845122596"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2287</int>
-						<reference key="object" ref="559988317"/>
-						<reference key="parent" ref="542792093"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2288</int>
-						<reference key="object" ref="56148229"/>
-						<array class="NSMutableArray" key="children">
-							<reference ref="847201803"/>
-						</array>
-						<reference key="parent" ref="845122596"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2289</int>
-						<reference key="object" ref="847201803"/>
-						<reference key="parent" ref="56148229"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2314</int>
-						<reference key="object" ref="622282437"/>
-						<array class="NSMutableArray" key="children">
-							<reference ref="165520428"/>
-						</array>
-						<reference key="parent" ref="845122596"/>
-					</object>
-					<object class="IBObjectRecord">
-						<int key="objectID">2315</int>
-						<reference key="object" ref="165520428"/>
-						<reference key="parent" ref="622282437"/>
-					</object>
-				</array>
-			</object>
-			<dictionary class="NSMutableDictionary" key="flattenedProperties">
-				<string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="-3.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="1342.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="1344.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="1345.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="1345.IBWindowTemplateEditedContentRect">{{154, 399}, {721, 356}}</string>
-				<string key="1348.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2231.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2232.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2233.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2234.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2235.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2269.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2270.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2271.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2272.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2273.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2278.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<boolean value="YES" key="2278.IBShouldRemoveOnLegacySave"/>
-				<string key="2279.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<boolean value="YES" key="2279.IBShouldRemoveOnLegacySave"/>
-				<string key="2284.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2285.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2286.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2287.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2288.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2289.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2290.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2291.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2313.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2314.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-				<string key="2315.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
-			</dictionary>
-			<dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
-			<nil key="activeLocalization"/>
-			<dictionary class="NSMutableDictionary" key="localizations"/>
-			<nil key="sourceID"/>
-			<int key="maxID">2341</int>
-		</object>
-		<object class="IBClassDescriber" key="IBDocument.Classes">
-			<array class="NSMutableArray" key="referencedPartialClassDescriptions">
-				<object class="IBPartialClassDescription">
-					<string key="className">AboutWindowController</string>
-					<string key="superclassName">NSWindowController</string>
-					<object class="NSMutableDictionary" key="actions">
-						<string key="NS.key.0">buttonAction:</string>
-						<string key="NS.object.0">id</string>
-					</object>
-					<object class="NSMutableDictionary" key="actionInfosByName">
-						<string key="NS.key.0">buttonAction:</string>
-						<object class="IBActionInfo" key="NS.object.0">
-							<string key="name">buttonAction:</string>
-							<string key="candidateClassName">id</string>
-						</object>
-					</object>
-					<dictionary class="NSMutableDictionary" key="outlets">
-						<string key="o_authors_btn">id</string>
-						<string key="o_copyright_field">id</string>
-						<string key="o_credits_btn">id</string>
-						<string key="o_credits_scrollview">id</string>
-						<string key="o_credits_textview">id</string>
-						<string key="o_gpl_btn">id</string>
-						<string key="o_icon_view">id</string>
-						<string key="o_joinus_txt">id</string>
-						<string key="o_name_field">id</string>
-						<string key="o_name_version_field">id</string>
-						<string key="o_revision_field">id</string>
-						<string key="o_trademarks_txt">id</string>
-					</dictionary>
-					<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
-						<object class="IBToOneOutletInfo" key="o_authors_btn">
-							<string key="name">o_authors_btn</string>
-							<string key="candidateClassName">id</string>
-						</object>
-						<object class="IBToOneOutletInfo" key="o_copyright_field">
-							<string key="name">o_copyright_field</string>
-							<string key="candidateClassName">id</string>
-						</object>
-						<object class="IBToOneOutletInfo" key="o_credits_btn">
-							<string key="name">o_credits_btn</string>
-							<string key="candidateClassName">id</string>
-						</object>
-						<object class="IBToOneOutletInfo" key="o_credits_scrollview">
-							<string key="name">o_credits_scrollview</string>
-							<string key="candidateClassName">id</string>
-						</object>
-						<object class="IBToOneOutletInfo" key="o_credits_textview">
-							<string key="name">o_credits_textview</string>
-							<string key="candidateClassName">id</string>
-						</object>
-						<object class="IBToOneOutletInfo" key="o_gpl_btn">
-							<string key="name">o_gpl_btn</string>
-							<string key="candidateClassName">id</string>
-						</object>
-						<object class="IBToOneOutletInfo" key="o_icon_view">
-							<string key="name">o_icon_view</string>
-							<string key="candidateClassName">id</string>
-						</object>
-						<object class="IBToOneOutletInfo" key="o_joinus_txt">
-							<string key="name">o_joinus_txt</string>
-							<string key="candidateClassName">id</string>
-						</object>
-						<object class="IBToOneOutletInfo" key="o_name_field">
-							<string key="name">o_name_field</string>
-							<string key="candidateClassName">id</string>
-						</object>
-						<object class="IBToOneOutletInfo" key="o_name_version_field">
-							<string key="name">o_name_version_field</string>
-							<string key="candidateClassName">id</string>
-						</object>
-						<object class="IBToOneOutletInfo" key="o_revision_field">
-							<string key="name">o_revision_field</string>
-							<string key="candidateClassName">id</string>
-						</object>
-						<object class="IBToOneOutletInfo" key="o_trademarks_txt">
-							<string key="name">o_trademarks_txt</string>
-							<string key="candidateClassName">id</string>
-						</object>
-					</dictionary>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBProjectSource</string>
-						<string key="minorKey">../../../../modules/gui/macosx/about.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">AboutWindowController</string>
-					<object class="NSMutableDictionary" key="actions">
-						<string key="NS.key.0">buttonAction:</string>
-						<string key="NS.object.0">id</string>
-					</object>
-					<object class="NSMutableDictionary" key="actionInfosByName">
-						<string key="NS.key.0">buttonAction:</string>
-						<object class="IBActionInfo" key="NS.object.0">
-							<string key="name">buttonAction:</string>
-							<string key="candidateClassName">id</string>
-						</object>
-					</object>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBProjectSource</string>
-						<string key="minorKey">../../../../modules/gui/macosx/about.m</string>
-					</object>
-				</object>
-			</array>
-			<array class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
-				<object class="IBPartialClassDescription">
-					<string key="className">NSActionCell</string>
-					<string key="superclassName">NSCell</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSApplication</string>
-					<string key="superclassName">NSResponder</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSApplication.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSBox</string>
-					<string key="superclassName">NSView</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSBox.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSButton</string>
-					<string key="superclassName">NSControl</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSButton.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSButtonCell</string>
-					<string key="superclassName">NSActionCell</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSCell</string>
-					<string key="superclassName">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSCell.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSControl</string>
-					<string key="superclassName">NSView</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSControl.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSFormatter</string>
-					<string key="superclassName">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSImageCell</string>
-					<string key="superclassName">NSCell</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSImageCell.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSImageView</string>
-					<string key="superclassName">NSControl</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSImageView.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSMenu</string>
-					<string key="superclassName">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSMenu.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSResponder</string>
-					<string key="superclassName">NSObject</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSResponder.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSScrollView</string>
-					<string key="superclassName">NSView</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSScrollView.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSScroller</string>
-					<string key="superclassName">NSControl</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSScroller.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSText</string>
-					<string key="superclassName">NSView</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSText.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSTextField</string>
-					<string key="superclassName">NSControl</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSTextField.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSTextFieldCell</string>
-					<string key="superclassName">NSActionCell</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSTextView</string>
-					<string key="superclassName">NSText</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSTextView.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSView</string>
-					<string key="superclassName">NSResponder</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSView.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSWindow</string>
-					<string key="superclassName">NSResponder</string>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSWindow.h</string>
-					</object>
-				</object>
-				<object class="IBPartialClassDescription">
-					<string key="className">NSWindowController</string>
-					<string key="superclassName">NSResponder</string>
-					<object class="NSMutableDictionary" key="actions">
-						<string key="NS.key.0">showWindow:</string>
-						<string key="NS.object.0">id</string>
-					</object>
-					<object class="NSMutableDictionary" key="actionInfosByName">
-						<string key="NS.key.0">showWindow:</string>
-						<object class="IBActionInfo" key="NS.object.0">
-							<string key="name">showWindow:</string>
-							<string key="candidateClassName">id</string>
-						</object>
-					</object>
-					<object class="IBClassDescriptionSource" key="sourceIdentifier">
-						<string key="majorKey">IBFrameworkSource</string>
-						<string key="minorKey">AppKit.framework/Headers/NSWindowController.h</string>
-					</object>
-				</object>
-			</array>
-		</object>
-		<int key="IBDocument.localizationMode">0</int>
-		<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
-		<bool key="IBDocument.previouslyAttemptedUpgradeToXcode5">NO</bool>
-		<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies">
-			<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
-			<integer value="1060" key="NS.object.0"/>
-		</object>
-		<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
-			<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
-			<integer value="4600" key="NS.object.0"/>
-		</object>
-		<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
-		<int key="IBDocument.defaultPropertyAccessControl">3</int>
-		<object class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes">
-			<string key="NS.key.0">vlc</string>
-			<string key="NS.object.0">{512, 512}</string>
-		</object>
-	</data>
-</archive>
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="8191" systemVersion="14F27" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none">
+    <dependencies>
+        <deployment version="1060" identifier="macosx"/>
+        <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="8191"/>
+        <capability name="box content view" minToolsVersion="7.0"/>
+    </dependencies>
+    <objects>
+        <customObject id="-2" userLabel="File's Owner" customClass="AboutWindowController">
+            <connections>
+                <outlet property="o_authors_btn" destination="2286" id="2323"/>
+                <outlet property="o_copyright_field" destination="2233" id="2320"/>
+                <outlet property="o_credits_btn" destination="2290" id="2325"/>
+                <outlet property="o_credits_scrollview" destination="1348" id="2333"/>
+                <outlet property="o_credits_textview" destination="1342" id="2334"/>
+                <outlet property="o_gpl_btn" destination="2288" id="2324"/>
+                <outlet property="o_icon_view" destination="2231" id="2327"/>
+                <outlet property="o_joinus_txt" destination="2284" id="2322"/>
+                <outlet property="o_name_field" destination="2235" id="2318"/>
+                <outlet property="o_name_version_field" destination="2232" id="2319"/>
+                <outlet property="o_revision_field" destination="2234" id="2321"/>
+                <outlet property="o_trademarks_txt" destination="2314" id="2326"/>
+                <outlet property="window" destination="1345" id="2317"/>
+            </connections>
+        </customObject>
+        <customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
+        <customObject id="-3" userLabel="Application"/>
+        <window title="About VLC media player" allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" releasedWhenClosed="NO" visibleAtLaunch="NO" frameAutosaveName="" animationBehavior="default" id="1345" userLabel="About">
+            <windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES"/>
+            <windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
+            <rect key="contentRect" x="173" y="74" width="721" height="356"/>
+            <rect key="screenRect" x="0.0" y="0.0" width="1680" height="1027"/>
+            <value key="minSize" type="size" width="231.86799999999999" height="107"/>
+            <view key="contentView" id="1344">
+                <rect key="frame" x="0.0" y="0.0" width="721" height="356"/>
+                <autoresizingMask key="autoresizingMask"/>
+                <subviews>
+                    <scrollView borderType="none" horizontalLineScroll="10" horizontalPageScroll="10" verticalLineScroll="10" verticalPageScroll="10" hasHorizontalScroller="NO" usesPredominantAxisScrolling="NO" id="1348">
+                        <rect key="frame" x="271" y="88" width="430" height="204"/>
+                        <autoresizingMask key="autoresizingMask"/>
+                        <clipView key="contentView" id="jyJ-3H-cal" customClass="VLCScrollingClipView">
+                            <rect key="frame" x="0.0" y="0.0" width="430" height="204"/>
+                            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+                            <subviews>
+                                <textView editable="NO" selectable="NO" importsGraphics="NO" richText="NO" usesRuler="YES" usesFontPanel="YES" verticallyResizable="YES" smartInsertDelete="YES" id="1342">
+                                    <rect key="frame" x="0.0" y="0.0" width="415" height="204"/>
+                                    <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+                                    <color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="0.0" colorSpace="calibratedRGB"/>
+                                    <size key="minSize" width="430" height="204"/>
+                                    <size key="maxSize" width="564" height="10000000"/>
+                                    <color key="insertionPointColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
+                                    <size key="minSize" width="430" height="204"/>
+                                    <size key="maxSize" width="564" height="10000000"/>
+                                </textView>
+                            </subviews>
+                            <color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="0.0" colorSpace="calibratedRGB"/>
+                            <connections>
+                                <outlet property="parentScrollView" destination="1348" id="Z6J-Q9-pbU"/>
+                            </connections>
+                        </clipView>
+                        <scroller key="horizontalScroller" hidden="YES" verticalHuggingPriority="750" doubleValue="1" horizontal="YES" id="2279">
+                            <rect key="frame" x="-100" y="-100" width="430" height="16"/>
+                            <autoresizingMask key="autoresizingMask"/>
+                        </scroller>
+                        <scroller key="verticalScroller" verticalHuggingPriority="750" doubleValue="1" horizontal="NO" id="2278">
+                            <rect key="frame" x="414" y="0.0" width="16" height="204"/>
+                            <autoresizingMask key="autoresizingMask"/>
+                        </scroller>
+                    </scrollView>
+                    <imageView id="2231">
+                        <rect key="frame" x="20" y="93" width="240" height="240"/>
+                        <autoresizingMask key="autoresizingMask"/>
+                        <imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyUpOrDown" image="vlc" id="2269"/>
+                    </imageView>
+                    <textField verticalHuggingPriority="750" id="2232">
+                        <rect key="frame" x="271" y="274" width="430" height="18"/>
+                        <autoresizingMask key="autoresizingMask"/>
+                        <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" sendsActionOnEndEditing="YES" state="on" alignment="left" title="Version 0.9.0-svn Grischenko (PPC/x86)" id="2270">
+                            <font key="font" metaFont="systemBold" size="12"/>
+                            <color key="textColor" red="0.15702499" green="0.15702499" blue="0.15702499" alpha="1" colorSpace="calibratedRGB"/>
+                            <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
+                        </textFieldCell>
+                    </textField>
+                    <textField verticalHuggingPriority="750" id="2233">
+                        <rect key="frame" x="271" y="255" width="430" height="16"/>
+                        <autoresizingMask key="autoresizingMask"/>
+                        <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" sendsActionOnEndEditing="YES" state="on" alignment="left" title="Copyright (c) 1997-2008 the VideoLAN team" id="2271">
+                            <font key="font" metaFont="label"/>
+                            <color key="textColor" red="0.15702499" green="0.15702499" blue="0.15702499" alpha="1" colorSpace="calibratedRGB"/>
+                            <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
+                        </textFieldCell>
+                    </textField>
+                    <textField verticalHuggingPriority="750" id="2234">
+                        <rect key="frame" x="271" y="241" width="430" height="13"/>
+                        <autoresizingMask key="autoresizingMask"/>
+                        <textFieldCell key="cell" selectable="YES" sendsActionOnEndEditing="YES" state="on" alignment="left" title="Compiled by fpk with llvm-gcc 4.2.1 (Based on Apple Inc. build 5658)" id="2272">
+                            <font key="font" metaFont="label"/>
+                            <color key="textColor" red="0.15702499" green="0.15702499" blue="0.15702499" alpha="1" colorSpace="calibratedRGB"/>
+                            <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
+                        </textFieldCell>
+                    </textField>
+                    <textField verticalHuggingPriority="750" id="2235">
+                        <rect key="frame" x="271" y="304" width="479" height="29"/>
+                        <autoresizingMask key="autoresizingMask"/>
+                        <textFieldCell key="cell" selectable="YES" sendsActionOnEndEditing="YES" alignment="left" title="VLC media player" id="2273">
+                            <font key="font" metaFont="system" size="24"/>
+                            <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
+                            <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+                        </textFieldCell>
+                    </textField>
+                    <textField verticalHuggingPriority="750" id="2284">
+                        <rect key="frame" x="271" y="88" width="430" height="145"/>
+                        <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
+                        <textFieldCell key="cell" sendsActionOnEndEditing="YES" allowsEditingTextAttributes="YES" id="2285">
+                            <font key="font" metaFont="system"/>
+                            <string key="title">VLC media player is a free and open source media player, encoder and streamer made by the volunteers of the VideoLAN community.
+VLC uses its internal codecs and works on essentially every popular platform and can read almost every files, CDs, DVDs, network streams, capture cards and other media formats!
+Help and join us!.</string>
+                            <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
+                            <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+                        </textFieldCell>
+                    </textField>
+                    <box autoresizesSubviews="NO" title="Box" borderType="line" titlePosition="noTitle" id="2313">
+                        <rect key="frame" x="-10" y="-9" width="747" height="90"/>
+                        <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
+                        <view key="contentView" id="ri7-JS-38w">
+                            <rect key="frame" x="1" y="1" width="745" height="88"/>
+                            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
+                            <subviews>
+                                <button id="2290">
+                                    <rect key="frame" x="556" y="49" width="106" height="23"/>
+                                    <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
+                                    <buttonCell key="cell" type="smallSquare" title="Credits" bezelStyle="smallSquare" imagePosition="overlaps" alignment="center" state="on" imageScaling="proportionallyDown" inset="2" id="2291">
+                                        <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                                        <font key="font" metaFont="system"/>
+                                    </buttonCell>
+                                    <connections>
+                                        <action selector="buttonAction:" target="-2" id="2330"/>
+                                    </connections>
+                                </button>
+                                <button id="2286">
+                                    <rect key="frame" x="122" y="49" width="106" height="23"/>
+                                    <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
+                                    <buttonCell key="cell" type="smallSquare" title="Authors" bezelStyle="smallSquare" imagePosition="overlaps" alignment="center" state="on" imageScaling="proportionallyDown" inset="2" id="2287">
+                                        <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                                        <font key="font" metaFont="system"/>
+                                    </buttonCell>
+                                    <connections>
+                                        <action selector="buttonAction:" target="-2" id="2328"/>
+                                    </connections>
+                                </button>
+                                <button id="2288">
+                                    <rect key="frame" x="339" y="49" width="106" height="23"/>
+                                    <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
+                                    <buttonCell key="cell" type="smallSquare" title="License" bezelStyle="smallSquare" imagePosition="overlaps" alignment="center" state="on" imageScaling="proportionallyDown" inset="2" id="2289">
+                                        <behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
+                                        <font key="font" metaFont="system"/>
+                                    </buttonCell>
+                                    <connections>
+                                        <action selector="buttonAction:" target="-2" id="2329"/>
+                                    </connections>
+                                </button>
+                                <textField verticalHuggingPriority="750" id="2314">
+                                    <rect key="frame" x="119" y="24" width="546" height="13"/>
+                                    <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
+                                    <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" alignment="center" title="VLC media player and VideoLAN are trademarks of the VideoLAN Association." id="2315">
+                                        <font key="font" metaFont="system" size="10"/>
+                                        <color key="textColor" name="headerColor" catalog="System" colorSpace="catalog"/>
+                                        <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
+                                    </textFieldCell>
+                                </textField>
+                            </subviews>
+                        </view>
+                        <color key="borderColor" white="0.0" alpha="0.41999999999999998" colorSpace="calibratedWhite"/>
+                        <color key="fillColor" white="0.90000000000000002" alpha="1" colorSpace="calibratedWhite"/>
+                    </box>
+                </subviews>
+            </view>
+            <connections>
+                <outlet property="delegate" destination="-2" id="2332"/>
+            </connections>
+        </window>
+    </objects>
+    <resources>
+        <image name="vlc" width="512" height="512"/>
+    </resources>
+</document>
diff --git a/extras/package/macosx/vlc.xcodeproj/project.pbxproj b/extras/package/macosx/vlc.xcodeproj/project.pbxproj
index 05d668e..850bfee 100644
--- a/extras/package/macosx/vlc.xcodeproj/project.pbxproj
+++ b/extras/package/macosx/vlc.xcodeproj/project.pbxproj
@@ -460,6 +460,7 @@
 		1CE5ED2519DD6AB700FCEFD3 /* lion-window-fullscreen.png in Resources */ = {isa = PBXBuildFile; fileRef = 1CE5ED1F19DD6AB700FCEFD3 /* lion-window-fullscreen.png */; };
 		1CE5ED2619DD6AB700FCEFD3 /* lion-window-fullscreen at 2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 1CE5ED2019DD6AB700FCEFD3 /* lion-window-fullscreen at 2x.png */; };
 		633121D01B5112C300E636DA /* ResumeDialog.xib in Resources */ = {isa = PBXBuildFile; fileRef = 633121CE1B5112C300E636DA /* ResumeDialog.xib */; };
+		6B13E2A81BC67678001AD24A /* VLCScrollingClipView.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B13E2A71BC67678001AD24A /* VLCScrollingClipView.m */; settings = {ASSET_TAGS = (); }; };
 		7D3F6525188051F2005776C4 /* BWQuincyMain.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D3F6523188051F2005776C4 /* BWQuincyMain.xib */; };
 		7D8BB0B71830311300FAE9B7 /* DebugMessageVisualizer.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D8BB0B51830311300FAE9B7 /* DebugMessageVisualizer.xib */; };
 		7D8BB0BA1830367200FAE9B7 /* PlaylistMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D8BB0B81830367200FAE9B7 /* PlaylistMenu.xib */; };
@@ -1241,6 +1242,8 @@
 		633121CA1B51122700E636DA /* ResumeDialogController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ResumeDialogController.h; path = ../../../modules/gui/macosx/ResumeDialogController.h; sourceTree = "<group>"; };
 		633121CB1B51122700E636DA /* ResumeDialogController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ResumeDialogController.m; path = ../../../modules/gui/macosx/ResumeDialogController.m; sourceTree = "<group>"; };
 		633121CF1B5112C300E636DA /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = Resources/English.lproj/ResumeDialog.xib; sourceTree = "<group>"; };
+		6B13E2A61BC67678001AD24A /* VLCScrollingClipView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = VLCScrollingClipView.h; path = ../../../modules/gui/macosx/VLCScrollingClipView.h; sourceTree = "<group>"; };
+		6B13E2A71BC67678001AD24A /* VLCScrollingClipView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = VLCScrollingClipView.m; path = ../../../modules/gui/macosx/VLCScrollingClipView.m; sourceTree = "<group>"; };
 		7D3F6524188051F2005776C4 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = Resources/English.lproj/BWQuincyMain.xib; sourceTree = "<group>"; };
 		7D3F652618805297005776C4 /* BWQuincyManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BWQuincyManager.h; path = ../../../modules/gui/macosx/BWQuincyManager.h; sourceTree = SOURCE_ROOT; };
 		7D3F652718805297005776C4 /* BWQuincyManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = BWQuincyManager.m; path = ../../../modules/gui/macosx/BWQuincyManager.m; sourceTree = SOURCE_ROOT; };
@@ -1821,6 +1824,8 @@
 				7D871D391B5E684D000B56C0 /* helpers.h */,
 				8EE1AF9F044465080059A3A7 /* about.h */,
 				8EE1AFA0044465080059A3A7 /* about.m */,
+				6B13E2A61BC67678001AD24A /* VLCScrollingClipView.h */,
+				6B13E2A71BC67678001AD24A /* VLCScrollingClipView.m */,
 				7DF0435E1972E26A0022B534 /* AddonListDataSource.h */,
 				7DF0435F1972E26A0022B534 /* AddonListDataSource.m */,
 				7DB65D5218ABD6380053B874 /* AddonsWindowController.h */,
@@ -3884,6 +3889,7 @@
 				1CCB5F701A62A724004C3E90 /* fspanel.h in Sources */,
 				1CCB5F711A62A724004C3E90 /* fspanel.m in Sources */,
 				1CCB5F721A62A724004C3E90 /* intf.h in Sources */,
+				6B13E2A81BC67678001AD24A /* VLCScrollingClipView.m in Sources */,
 				1CD3667B1B7A242E0054E39F /* VLCTimeSelectionPanelController.m in Sources */,
 				1CCB5F731A62A724004C3E90 /* intf.m in Sources */,
 				1CCB5F741A62A724004C3E90 /* macosx.m in Sources */,
diff --git a/modules/gui/macosx/Makefile.am b/modules/gui/macosx/Makefile.am
index 55c6fe9..660af76 100644
--- a/modules/gui/macosx/Makefile.am
+++ b/modules/gui/macosx/Makefile.am
@@ -73,5 +73,6 @@ libmacosx_plugin_la_SOURCES = \
 	VideoView.h VideoView.m \
 	VLCTimeSelectionPanelController.h VLCTimeSelectionPanelController.m \
 	VLCUIWidgets.h VLCUIWidgets.m \
+  VLCScrollingClipView.h VLCScrollingClipView.m \
 	VLCVoutWindowController.h VLCVoutWindowController.m \
 	Windows.h Windows.m
diff --git a/modules/gui/macosx/VLCScrollingClipView.h b/modules/gui/macosx/VLCScrollingClipView.h
new file mode 100644
index 0000000..efaf366
--- /dev/null
+++ b/modules/gui/macosx/VLCScrollingClipView.h
@@ -0,0 +1,40 @@
+/*****************************************************************************
+ * VLCScrollingClipView.h: NSClipView subclass that automatically scrolls
+ *****************************************************************************
+ * Copyright (C) 2015 VLC authors and VideoLAN
+ * $Id$
+ *
+ * Author: Marvin Scholz <epirat07 at gmail.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 of the License, 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 this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
+ *****************************************************************************/
+
+#import <Cocoa/Cocoa.h>
+
+ at interface VLCScrollingClipView : NSClipView
+
+/* Start scrolling. Does nothing if already scrolling. */
+- (void)startScrolling;
+
+/* Stop scrolling. Does not reset the position! */
+- (void)stopScrolling;
+
+/* Resets scrolling position to the top */
+- (void)resetScrolling;
+
+/* Outlet to the parent NSScrollView */
+ at property IBOutlet NSScrollView *parentScrollView;
+
+ at end
diff --git a/modules/gui/macosx/VLCScrollingClipView.m b/modules/gui/macosx/VLCScrollingClipView.m
new file mode 100644
index 0000000..e058809
--- /dev/null
+++ b/modules/gui/macosx/VLCScrollingClipView.m
@@ -0,0 +1,90 @@
+/*****************************************************************************
+ * VLCScrollingClipView.m: NSClipView subclass that automatically scrolls
+ *****************************************************************************
+ * Copyright (C) 2015 VLC authors and VideoLAN
+ * $Id$
+ *
+ * Author: Marvin Scholz <epirat07 at gmail.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 of the License, 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 this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
+ *****************************************************************************/
+
+#import "VLCScrollingClipView.h"
+
+ at implementation VLCScrollingClipView {
+    NSTimer *scrollTimer;
+    NSTimeInterval startInterval;
+}
+
+- (void)startScrolling {
+    // Start our timer unless running
+    if (!scrollTimer) {
+        scrollTimer = [NSTimer scheduledTimerWithTimeInterval: 1/6
+                                                       target:self
+                                                     selector:@selector(scrollTick:)
+                                                     userInfo:nil
+                                                      repeats:YES];
+    }
+}
+
+- (void)stopScrolling {
+    // Stop timer unless stopped
+    if (scrollTimer) {
+        [scrollTimer invalidate];
+        scrollTimer = nil;
+    }
+}
+
+- (void)resetScrolling {
+    startInterval = 0;
+    [self scrollToPoint:NSMakePoint(0.0, 0.0)];
+    if (_parentScrollView) {
+        [_parentScrollView reflectScrolledClipView:self];
+    }
+}
+
+- (void)scrollWheel:(NSEvent *)theEvent {
+    // Stop auto-scrolling if the user scrolls
+    [self stopScrolling];
+    [super scrollWheel:theEvent];
+}
+
+- (void)scrollTick:(NSTimer *)timer {
+    CGFloat maxHeight = self.documentRect.size.height;
+    CGFloat scrollPosition = self.documentVisibleRect.origin.y;
+
+    // Delay start
+    if (scrollPosition == 0.0 && !startInterval) {
+        startInterval = [NSDate timeIntervalSinceReferenceDate] + 2.0;
+    }
+
+    if ([NSDate timeIntervalSinceReferenceDate] >= startInterval) {
+        // Reset if we are past the end
+        if (scrollPosition > maxHeight) {
+            [self resetScrolling];
+            return;
+        }
+
+        // Scroll the view a bit on each tick
+        [self scrollToPoint:NSMakePoint(0.0, scrollPosition + 0.5)];
+
+        // Update the parent ScrollView
+        if (_parentScrollView) {
+            [_parentScrollView reflectScrolledClipView:self];
+        }
+    }
+}
+
+ at end
diff --git a/modules/gui/macosx/about.h b/modules/gui/macosx/about.h
index 328c0d9..9bdd7e0 100644
--- a/modules/gui/macosx/about.h
+++ b/modules/gui/macosx/about.h
@@ -23,6 +23,7 @@
  *****************************************************************************/
 
 #import <WebKit/WebKit.h> //we need to be here, because we're using a WebView object below
+#import "VLCScrollingClipView.h"
 
 /*****************************************************************************
  * VLAboutBox interface
diff --git a/modules/gui/macosx/about.m b/modules/gui/macosx/about.m
index bc224a3..42484e3 100644
--- a/modules/gui/macosx/about.m
+++ b/modules/gui/macosx/about.m
@@ -40,12 +40,6 @@
  *****************************************************************************/
 @interface AboutWindowController ()
 {
-    NSTimer *o_scroll_timer;
-    float f_current;
-    CGFloat f_end;
-    NSTimeInterval i_start;
-    BOOL b_restart;
-
     NSString *o_authors;
 }
 @end
@@ -77,7 +71,6 @@
     [self window];
 
     /* Show the window */
-    b_restart = YES;
     [o_credits_scrollview setHidden:YES];
     [o_credits_textview setHidden:YES];
     [o_joinus_txt setHidden:NO];
@@ -182,46 +175,12 @@
 
 - (void)windowDidBecomeKey:(NSNotification *)notification
 {
-    o_scroll_timer = [NSTimer scheduledTimerWithTimeInterval: 1/6
-                                                      target:self
-                                                    selector:@selector(scrollCredits:)
-                                                    userInfo:nil
-                                                     repeats:YES];
+    [(VLCScrollingClipView *)[o_credits_scrollview contentView] startScrolling];
 }
 
 - (void)windowDidResignKey:(NSNotification *)notification
 {
-    [o_scroll_timer invalidate];
-}
-
-- (void)scrollCredits:(NSTimer *)timer
-{
-    if (b_restart) {
-        /* Reset the starttime */
-        i_start = [NSDate timeIntervalSinceReferenceDate] + 4.0;
-        f_current = 0;
-        f_end = [o_credits_textview bounds].size.height - [o_credits_scrollview bounds].size.height;
-        b_restart = NO;
-    }
-
-    if ([NSDate timeIntervalSinceReferenceDate] >= i_start) {
-        /* Increment the scroll position */
-        f_current += 0.005;
-
-        /* Scroll to the position */
-        [o_credits_textview scrollPoint:NSMakePoint(0, f_current)];
-
-        /* If at end, restart at the top */
-        if (f_current >= f_end) {
-            /* f_end may be wrong on first run, so don't trust it too much */
-            if (f_end == [o_credits_textview bounds].size.height - [o_credits_scrollview bounds].size.height) {
-                sleep(2);
-                b_restart = YES;
-                [o_credits_textview scrollPoint:NSMakePoint(0, 0)];
-            } else
-                f_end = [o_credits_textview bounds].size.height - [o_credits_scrollview bounds].size.height;
-        }
-    }
+    [(VLCScrollingClipView *)[o_credits_scrollview contentView] stopScrolling];
 }
 
 - (IBAction)buttonAction:(id)sender
@@ -240,8 +199,8 @@
     else
         [o_credits_textview setString:toNSStr(psz_license)];
 
-    [o_credits_textview scrollPoint:NSMakePoint(0, 0)];
-    b_restart = YES;
+    [(VLCScrollingClipView *)[o_credits_scrollview contentView] resetScrolling];
+    [(VLCScrollingClipView *)[o_credits_scrollview contentView] startScrolling];
 }
 
 /*****************************************************************************
-- 
2.2.1




More information about the vlc-devel mailing list