Navigation system works but is overkill

This commit is contained in:
Matthias Neeracher 2011-08-14 00:04:24 +02:00
parent dbd3e5901f
commit fa0018a23a
4 changed files with 510 additions and 113 deletions

View File

@ -22,4 +22,18 @@
- (void)addMedia:(NSArray *)urls;
- (IBAction)addAnnotation:(id)sender;
- (IBAction)hugeSkipBackward:(id)sender;
- (IBAction)largeSkipBackward:(id)sender;
- (IBAction)smallSkipBackward:(id)sender;
- (IBAction)tinySkipBackward:(id)sender;
- (IBAction)hugeSkipForward:(id)sender;
- (IBAction)largeSkipForward:(id)sender;
- (IBAction)smallSkipForward:(id)sender;
- (IBAction)tinySkipForward:(id)sender;
- (IBAction)toggleMediaPlay:(id)sender;
@end
@interface MADocumentWindow : NSWindow
@end

View File

@ -88,6 +88,7 @@
- (IBAction)addAnnotation:(id)sender
{
[movieView pause:sender];
QTTime location = [[movieView movie] currentTime];
MAAnno * anno = [[self document] addAnnotationForMedia:[[mediaController selectedObjects] objectAtIndex:0] location:location];
[annotationController setSelectedObjects:[NSArray arrayWithObject:anno]];
@ -96,6 +97,67 @@
withEvent:nil select:YES];
}
- (IBAction)toggleMediaPlay:(id)sender
{
if ([[movieView movie] rate] > 0.0f)
[movieView pause:sender];
else
[movieView play:sender];
}
#pragma mark Media navigation
- (void)skipTimeInterval:(NSTimeInterval)timeInterval
{
QTTime interval= QTMakeTimeWithTimeInterval(abs(timeInterval));
QTTime current = [[movieView movie] currentTime];
if (timeInterval > 0)
current = QTTimeIncrement(current, interval);
else
current = QTTimeDecrement(current, interval);
[[movieView movie] setCurrentTime:current];
}
- (IBAction)hugeSkipBackward:(id)sender
{
[self skipTimeInterval:-15.0*60.0];
}
- (IBAction)largeSkipBackward:(id)sender
{
[self skipTimeInterval:-5.0*60.0];
}
- (IBAction)smallSkipBackward:(id)sender
{
[self skipTimeInterval:-60.0];
}
- (IBAction)tinySkipBackward:(id)sender
{
[self skipTimeInterval:-10.0];
}
- (IBAction)tinySkipForward:(id)sender
{
[self skipTimeInterval:10.0];
}
- (IBAction)smallSkipForward:(id)sender
{
[self skipTimeInterval:60.0];
}
- (IBAction)largeSkipForward:(id)sender
{
[self skipTimeInterval:5.0*60.0];
}
- (IBAction)hugeSkipForward:(id)sender
{
[self skipTimeInterval:15.0*60.0];
}
#pragma mark Tag token manipulation
- (NSString *)tokenFieldCell:(NSTokenFieldCell *)tokenFieldCell displayStringForRepresentedObject:(id)representedObject
@ -131,3 +193,62 @@
}
@end
@implementation MADocumentWindow
- (void)sendEvent:(NSEvent *)event
{
if ([event type] == NSKeyDown && [event modifierFlags] & NSNumericPadKeyMask) {
MADocWindow * controller = [self windowController];
switch ([[event characters] characterAtIndex:0]) {
case '0':
case '5':
[controller toggleMediaPlay:self];
return;
case '+':
case 3:
[controller addAnnotation:self];
return;
case '9':
[controller hugeSkipBackward:self];
return;
case '8':
[controller largeSkipBackward:self];
return;
case '7':
[controller smallSkipBackward:self];
return;
case '4':
[controller tinySkipBackward:self];
return;
case '6':
[controller tinySkipForward:self];
return;
case '1':
[controller smallSkipForward:self];
return;
case '2':
[controller largeSkipForward:self];
return;
case '3':
[controller hugeSkipForward:self];
return;
default:
NSBeep();
return;
}
}
[super sendEvent:event];
}
- (void)keyDown:(NSEvent *)event
{
if ([[event characters] isEqualToString:@" "])
[[self windowController] toggleMediaPlay:self];
else
[super keyDown:event];
}
@end

View File

@ -117,7 +117,7 @@
<string key="NSWindowRect">{{133, 235}, {1280, 809}}</string>
<int key="NSWTFlags">1886912512</int>
<string key="NSWindowTitle">Window</string>
<string key="NSWindowClass">NSWindow</string>
<string key="NSWindowClass">MADocumentWindow</string>
<string key="NSViewClass">View</string>
<nil key="NSUserInterfaceItemIdentifier"/>
<string key="NSWindowContentMinSize">{94, 86}</string>
@ -316,7 +316,7 @@
<int key="NSColumnAutoresizingStyle">1</int>
<int key="NSDraggingSourceMaskForLocal">15</int>
<int key="NSDraggingSourceMaskForNonLocal">0</int>
<bool key="NSAllowsTypeSelect">YES</bool>
<bool key="NSAllowsTypeSelect">NO</bool>
<int key="NSTableViewDraggingDestinationStyle">0</int>
<int key="NSTableViewGroupRowStyle">1</int>
</object>
@ -550,7 +550,7 @@
<int key="NSColumnAutoresizingStyle">1</int>
<int key="NSDraggingSourceMaskForLocal">15</int>
<int key="NSDraggingSourceMaskForNonLocal">0</int>
<bool key="NSAllowsTypeSelect">YES</bool>
<bool key="NSAllowsTypeSelect">NO</bool>
<int key="NSTableViewDraggingDestinationStyle">0</int>
<int key="NSTableViewGroupRowStyle">1</int>
</object>
@ -1469,11 +1469,29 @@
<bool key="EncodedWithXMLCoder">YES</bool>
<string>addAnnotation:</string>
<string>addMediaFiles:</string>
<string>hugeSkipBackward:</string>
<string>hugeSkipForward:</string>
<string>largeSkipBackward:</string>
<string>largeSkipForward:</string>
<string>smallSkipBackward:</string>
<string>smallSkipForward:</string>
<string>tinySkipBackward:</string>
<string>tinySkipForward:</string>
<string>toggleMediaPlay:</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
<string>id</string>
</object>
</object>
<object class="NSMutableDictionary" key="actionInfosByName">
@ -1482,6 +1500,15 @@
<bool key="EncodedWithXMLCoder">YES</bool>
<string>addAnnotation:</string>
<string>addMediaFiles:</string>
<string>hugeSkipBackward:</string>
<string>hugeSkipForward:</string>
<string>largeSkipBackward:</string>
<string>largeSkipForward:</string>
<string>smallSkipBackward:</string>
<string>smallSkipForward:</string>
<string>tinySkipBackward:</string>
<string>tinySkipForward:</string>
<string>toggleMediaPlay:</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
@ -1493,6 +1520,42 @@
<string key="name">addMediaFiles:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo">
<string key="name">hugeSkipBackward:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo">
<string key="name">hugeSkipForward:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo">
<string key="name">largeSkipBackward:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo">
<string key="name">largeSkipForward:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo">
<string key="name">smallSkipBackward:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo">
<string key="name">smallSkipForward:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo">
<string key="name">tinySkipBackward:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo">
<string key="name">tinySkipForward:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo">
<string key="name">toggleMediaPlay:</string>
<string key="candidateClassName">id</string>
</object>
</object>
</object>
<object class="NSMutableDictionary" key="outlets">
@ -1567,6 +1630,14 @@
<string key="minorKey">./Classes/MADocWindow.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">MADocumentWindow</string>
<string key="superclassName">NSWindow</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">./Classes/MADocumentWindow.h</string>
</object>
</object>
</object>
</object>
<int key="IBDocument.localizationMode">0</int>

View File

@ -761,14 +761,14 @@
</object>
<object class="NSMenuItem" id="610990130">
<reference key="NSMenu" ref="649796088"/>
<string key="NSTitle">Annotate</string>
<string key="NSTitle">Media</string>
<string key="NSKeyEquiv"/>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="1033313550"/>
<reference key="NSMixedImage" ref="310636482"/>
<string key="NSAction">submenuAction:</string>
<object class="NSMenu" key="NSSubmenu" id="352060197">
<string key="NSTitle">Annotate</string>
<string key="NSTitle">Media</string>
<object class="NSMutableArray" key="NSMenuItems">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMenuItem" id="590509802">
@ -780,6 +780,122 @@
<reference key="NSOnImage" ref="1033313550"/>
<reference key="NSMixedImage" ref="310636482"/>
</object>
<object class="NSMenuItem" id="96409883">
<reference key="NSMenu" ref="352060197"/>
<bool key="NSIsDisabled">YES</bool>
<bool key="NSIsSeparator">YES</bool>
<string key="NSTitle"/>
<string key="NSKeyEquiv"/>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="1033313550"/>
<reference key="NSMixedImage" ref="310636482"/>
</object>
<object class="NSMenuItem" id="394358484">
<reference key="NSMenu" ref="352060197"/>
<string key="NSTitle">Play</string>
<string type="base64-UTF8" key="NSKeyEquiv">IA</string>
<int key="NSKeyEquivModMask">524288</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="1033313550"/>
<reference key="NSMixedImage" ref="310636482"/>
</object>
<object class="NSMenuItem" id="770724623">
<reference key="NSMenu" ref="352060197"/>
<string key="NSTitle">Skip</string>
<string key="NSKeyEquiv"/>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="1033313550"/>
<reference key="NSMixedImage" ref="310636482"/>
<string key="NSAction">submenuAction:</string>
<object class="NSMenu" key="NSSubmenu" id="490865031">
<string key="NSTitle">Skip</string>
<object class="NSMutableArray" key="NSMenuItems">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMenuItem" id="260561249">
<reference key="NSMenu" ref="490865031"/>
<string key="NSTitle">Back 15m</string>
<string key="NSKeyEquiv">1</string>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="1033313550"/>
<reference key="NSMixedImage" ref="310636482"/>
</object>
<object class="NSMenuItem" id="622472264">
<reference key="NSMenu" ref="490865031"/>
<string key="NSTitle">Back 5m</string>
<string key="NSKeyEquiv">2</string>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="1033313550"/>
<reference key="NSMixedImage" ref="310636482"/>
</object>
<object class="NSMenuItem" id="262416802">
<reference key="NSMenu" ref="490865031"/>
<string key="NSTitle">Back 1m</string>
<string key="NSKeyEquiv">3</string>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="1033313550"/>
<reference key="NSMixedImage" ref="310636482"/>
</object>
<object class="NSMenuItem" id="986186069">
<reference key="NSMenu" ref="490865031"/>
<string key="NSTitle">Back 10s</string>
<string key="NSKeyEquiv">4</string>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="1033313550"/>
<reference key="NSMixedImage" ref="310636482"/>
</object>
<object class="NSMenuItem" id="366351407">
<reference key="NSMenu" ref="490865031"/>
<bool key="NSIsDisabled">YES</bool>
<bool key="NSIsSeparator">YES</bool>
<string key="NSTitle"/>
<string key="NSKeyEquiv"/>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="1033313550"/>
<reference key="NSMixedImage" ref="310636482"/>
</object>
<object class="NSMenuItem" id="285265177">
<reference key="NSMenu" ref="490865031"/>
<string key="NSTitle">Forward 10s</string>
<string key="NSKeyEquiv">5</string>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="1033313550"/>
<reference key="NSMixedImage" ref="310636482"/>
</object>
<object class="NSMenuItem" id="407154048">
<reference key="NSMenu" ref="490865031"/>
<string key="NSTitle">Forward 1m</string>
<string key="NSKeyEquiv">6</string>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="1033313550"/>
<reference key="NSMixedImage" ref="310636482"/>
</object>
<object class="NSMenuItem" id="671896418">
<reference key="NSMenu" ref="490865031"/>
<string key="NSTitle">Forward 5m</string>
<string key="NSKeyEquiv">7</string>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="1033313550"/>
<reference key="NSMixedImage" ref="310636482"/>
</object>
<object class="NSMenuItem" id="156672349">
<reference key="NSMenu" ref="490865031"/>
<string key="NSTitle">Forward 15m</string>
<string key="NSKeyEquiv">8</string>
<int key="NSKeyEquivModMask">1048576</int>
<int key="NSMnemonicLoc">2147483647</int>
<reference key="NSOnImage" ref="1033313550"/>
<reference key="NSMixedImage" ref="310636482"/>
</object>
</object>
</object>
</object>
</object>
</object>
</object>
@ -1273,6 +1389,78 @@
</object>
<int key="connectionID">542</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">hugeSkipBackward:</string>
<reference key="source" ref="1014"/>
<reference key="destination" ref="260561249"/>
</object>
<int key="connectionID">546</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">toggleMediaPlay:</string>
<reference key="source" ref="1014"/>
<reference key="destination" ref="394358484"/>
</object>
<int key="connectionID">564</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">largeSkipBackward:</string>
<reference key="source" ref="1014"/>
<reference key="destination" ref="622472264"/>
</object>
<int key="connectionID">565</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">smallSkipBackward:</string>
<reference key="source" ref="1014"/>
<reference key="destination" ref="262416802"/>
</object>
<int key="connectionID">566</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">tinySkipBackward:</string>
<reference key="source" ref="1014"/>
<reference key="destination" ref="986186069"/>
</object>
<int key="connectionID">567</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">tinySkipForward:</string>
<reference key="source" ref="1014"/>
<reference key="destination" ref="285265177"/>
</object>
<int key="connectionID">568</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">smallSkipForward:</string>
<reference key="source" ref="1014"/>
<reference key="destination" ref="407154048"/>
</object>
<int key="connectionID">569</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">largeSkipForward:</string>
<reference key="source" ref="1014"/>
<reference key="destination" ref="671896418"/>
</object>
<int key="connectionID">570</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
<string key="label">hugeSkipForward:</string>
<reference key="source" ref="1014"/>
<reference key="destination" ref="156672349"/>
</object>
<int key="connectionID">571</int>
</object>
</object>
<object class="IBMutableOrderedSet" key="objectRecords">
<object class="NSArray" key="orderedObjects">
@ -1923,6 +2111,9 @@
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="590509802"/>
<reference ref="770724623"/>
<reference ref="96409883"/>
<reference ref="394358484"/>
</object>
<reference key="parent" ref="610990130"/>
</object>
@ -1941,6 +2132,87 @@
<reference key="object" ref="590509802"/>
<reference key="parent" ref="352060197"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">543</int>
<reference key="object" ref="770724623"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="490865031"/>
</object>
<reference key="parent" ref="352060197"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">544</int>
<reference key="object" ref="490865031"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="260561249"/>
<reference ref="622472264"/>
<reference ref="262416802"/>
<reference ref="986186069"/>
<reference ref="366351407"/>
<reference ref="285265177"/>
<reference ref="407154048"/>
<reference ref="671896418"/>
<reference ref="156672349"/>
</object>
<reference key="parent" ref="770724623"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">545</int>
<reference key="object" ref="260561249"/>
<reference key="parent" ref="490865031"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">547</int>
<reference key="object" ref="622472264"/>
<reference key="parent" ref="490865031"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">549</int>
<reference key="object" ref="262416802"/>
<reference key="parent" ref="490865031"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">551</int>
<reference key="object" ref="986186069"/>
<reference key="parent" ref="490865031"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">553</int>
<reference key="object" ref="366351407"/>
<reference key="parent" ref="490865031"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">554</int>
<reference key="object" ref="285265177"/>
<reference key="parent" ref="490865031"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">556</int>
<reference key="object" ref="407154048"/>
<reference key="parent" ref="490865031"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">558</int>
<reference key="object" ref="671896418"/>
<reference key="parent" ref="490865031"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">560</int>
<reference key="object" ref="156672349"/>
<reference key="parent" ref="490865031"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">562</int>
<reference key="object" ref="96409883"/>
<reference key="parent" ref="352060197"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">563</int>
<reference key="object" ref="394358484"/>
<reference key="parent" ref="352060197"/>
</object>
</object>
</object>
<object class="NSMutableDictionary" key="flattenedProperties">
@ -2029,7 +2301,20 @@
<string>538.IBPluginDependency</string>
<string>540.IBPluginDependency</string>
<string>541.IBPluginDependency</string>
<string>543.IBPluginDependency</string>
<string>544.IBPluginDependency</string>
<string>545.IBPluginDependency</string>
<string>547.IBPluginDependency</string>
<string>549.IBPluginDependency</string>
<string>551.IBPluginDependency</string>
<string>553.IBPluginDependency</string>
<string>554.IBPluginDependency</string>
<string>556.IBPluginDependency</string>
<string>558.IBPluginDependency</string>
<string>56.IBPluginDependency</string>
<string>560.IBPluginDependency</string>
<string>562.IBPluginDependency</string>
<string>563.IBPluginDependency</string>
<string>57.IBPluginDependency</string>
<string>58.IBPluginDependency</string>
<string>72.IBPluginDependency</string>
@ -2142,6 +2427,19 @@
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
</object>
</object>
<object class="NSMutableDictionary" key="unlocalizedProperties">
@ -2156,7 +2454,7 @@
<reference key="dict.values" ref="0"/>
</object>
<nil key="sourceID"/>
<int key="maxID">542</int>
<int key="maxID">571</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
@ -2179,113 +2477,6 @@
<string key="minorKey"/>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">MADocWindow</string>
<string key="superclassName">NSWindowController</string>
<object class="NSMutableDictionary" key="actions">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>addAnnotation:</string>
<string>addMediaFiles:</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>id</string>
<string>id</string>
</object>
</object>
<object class="NSMutableDictionary" key="actionInfosByName">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>addAnnotation:</string>
<string>addMediaFiles:</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="IBActionInfo">
<string key="name">addAnnotation:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo">
<string key="name">addMediaFiles:</string>
<string key="candidateClassName">id</string>
</object>
</object>
</object>
<object class="NSMutableDictionary" key="outlets">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>annotationController</string>
<string>annotationTable</string>
<string>mediaController</string>
<string>mediaTable</string>
<string>movieView</string>
<string>tokenColumn</string>
<string>tokenFieldProto</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>NSArrayController</string>
<string>NSTableView</string>
<string>NSArrayController</string>
<string>NSTableView</string>
<string>QTMovieView</string>
<string>NSTableColumn</string>
<string>NSTokenField</string>
</object>
</object>
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>annotationController</string>
<string>annotationTable</string>
<string>mediaController</string>
<string>mediaTable</string>
<string>movieView</string>
<string>tokenColumn</string>
<string>tokenFieldProto</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="IBToOneOutletInfo">
<string key="name">annotationController</string>
<string key="candidateClassName">NSArrayController</string>
</object>
<object class="IBToOneOutletInfo">
<string key="name">annotationTable</string>
<string key="candidateClassName">NSTableView</string>
</object>
<object class="IBToOneOutletInfo">
<string key="name">mediaController</string>
<string key="candidateClassName">NSArrayController</string>
</object>
<object class="IBToOneOutletInfo">
<string key="name">mediaTable</string>
<string key="candidateClassName">NSTableView</string>
</object>
<object class="IBToOneOutletInfo">
<string key="name">movieView</string>
<string key="candidateClassName">QTMovieView</string>
</object>
<object class="IBToOneOutletInfo">
<string key="name">tokenColumn</string>
<string key="candidateClassName">NSTableColumn</string>
</object>
<object class="IBToOneOutletInfo">
<string key="name">tokenFieldProto</string>
<string key="candidateClassName">NSTokenField</string>
</object>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">./Classes/MADocWindow.h</string>
</object>
</object>
</object>
</object>
<int key="IBDocument.localizationMode">0</int>