From: Andre P. <at...@us...> - 2004-06-29 05:52:16
|
Update of /cvsroot/xine/xine-macosx/Cocoaxine/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29945 Modified Files: XineController.h XineController.m Removed Files: XineControllerToolbar.h XineControllerToolbar.m Log Message: Remove unnecessary XineController methods Removed XineControllerToolbar class: it's not application-agnostic import Xine{OpenGLView,VideoWindow}.h rather than including xine/video_window.h Added useSeparateVideoOutputWindow attribute Changed time interval for display update callback to 0.30 seconds Index: XineController.h =================================================================== RCS file: /cvsroot/xine/xine-macosx/Cocoaxine/src/XineController.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- XineController.h 22 Jun 2004 15:29:06 -0000 1.3 +++ XineController.h 29 Jun 2004 05:52:02 -0000 1.4 @@ -24,25 +24,26 @@ #import <Cocoa/Cocoa.h> #import <Cocoaxine/XineStream.h> +#import <Cocoaxine/XineOpenGLView.h> +#import <Cocoaxine/XineVideoWindow.h> #include <xine.h> -#include <xine/video_window.h> + +// TODO: Get rid of window IBOutlet (make XineControllerToolbar a separate +// class rather than a category) @interface XineController : NSObject <NSCoding> { - XineStream * stream; - - IBOutlet XineOpenGLView * view; - IBOutlet id currentTime; - IBOutlet id streamLength; - IBOutlet NSSlider * timeSlider; - IBOutlet id window; - - IBOutlet id locationView; - IBOutlet id loadingProgress; + /* Interface Builder attributes */ + IBOutlet XineOpenGLView * view; + IBOutlet NSTextField * currentTime; + IBOutlet NSTextField * streamLength; + IBOutlet NSSlider * timeSlider; + IBOutlet NSProgressIndicator * loadingProgress; - IBOutlet id locationToolbarItemView; - IBOutlet id loadingProgressToolbarItemView; + /* Instance variables */ + XineStream * stream; + BOOL useSeparateVideoOutputWindow; } /* @@ -60,10 +61,11 @@ - (IBAction) stepBack:(id)sender; - (IBAction) stepForward:(id)sender; - (IBAction) updateTime:(id)sender; -- (IBAction) makeLocationFirstResponder:(id)sender; +/* + * Instance Methods + */ -/* Instance Methods */ /* Accessors */ - (XineOpenGLView *) view; Index: XineController.m =================================================================== RCS file: /cvsroot/xine/xine-macosx/Cocoaxine/src/XineController.m,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- XineController.m 22 Jun 2004 15:29:06 -0000 1.3 +++ XineController.m 29 Jun 2004 05:52:03 -0000 1.4 @@ -51,7 +51,6 @@ currentTime = [coder decodeObjectForKey:@"currentTime"]; streamLength = [coder decodeObjectForKey:@"streamLength"]; timeSlider = [coder decodeObjectForKey:@"timeSlider"]; - window = [coder decodeObjectForKey:@"window"]; locationView = [coder decodeObjectForKey:@"locationView"]; loadingProgress = [coder decodeObjectForKey:@"loadingProgress"]; locationToolbarItemView = [coder decodeObjectForKey:@"locationToolbarItemView"]; @@ -69,7 +68,6 @@ [coder encodeObject:currentTime forKey:@"currentTime"]; [coder encodeObject:streamLength forKey:@"streamLength"]; [coder encodeObject:timeSlider forKey:@"timeSlider"]; - [coder encodeObject:window forKey:@"window"]; [coder encodeObject:locationView forKey:@"locationView"]; [coder encodeObject:loadingProgress forKey:@"loadingProgress"]; [coder encodeObject:locationToolbarItemView forKey:@"locationToolbarItemView"]; @@ -84,13 +82,26 @@ [self performSelector:@selector(setupToolbar)]; } - [timeSlider setMinValue:0]; - [timeSlider setMaxValue:65535]; + if (timeSlider) + { + [timeSlider setMinValue:0]; + [timeSlider setMaxValue:65535]; + } + if (useSeparateVideoOutputWindow) + { + window = [[XineVideoWindow alloc] init]; + view = [((XineVideoWindow *) window) xineView]; + } + else + { + NSLog(@"view is at %p", view); + } + XineAudioPort *audioPort = [[XineAudioPort alloc] init]; XineVideoPort *videoPort = [[XineVideoPort alloc] initWithView:view]; stream = [[XineStream alloc] initWithVideoPort:videoPort - withAudioPort:audioPort]; + withAudioPort:audioPort]; } @@ -103,9 +114,13 @@ - (IBAction) takeMRLStringFrom:(id)sender { NSURL *mrl = [NSURL URLWithString:[sender stringValue]]; - + [loadingProgress startAnimation:nil]; - [stream open:mrl]; + { + if (useSeparateVideoOutputWindow) + [window makeKeyAndOrderFront:nil]; + [stream open:mrl]; + } [loadingProgress stopAnimation:nil]; } @@ -113,7 +128,7 @@ { if ([stream play]) { - [NSTimer scheduledTimerWithTimeInterval:0.10 + [NSTimer scheduledTimerWithTimeInterval:0.30 target:self selector:@selector(updateDisplay:) userInfo:nil @@ -145,7 +160,7 @@ if ([stream isPlaying]) { - [NSTimer scheduledTimerWithTimeInterval:0.10 + [NSTimer scheduledTimerWithTimeInterval:0.30 target:self selector:@selector(updateDisplay:) userInfo:nil @@ -196,11 +211,6 @@ { } -- (IBAction) makeLocationFirstResponder:(id)sender -{ - [window makeFirstResponder:locationView]; -} - /* Accessors */ --- XineControllerToolbar.h DELETED --- --- XineControllerToolbar.m DELETED --- |