For the records: please don't re-invent the wheel, also if there are only 2 places which already do the exact same thing and you're going to add the 3rd place!!
Scott Caudle <dorkmanzcot at gmail dot com> - Visualization, WX
improvements
Sebastien Chaumat <Sebastien.Chaumat at ens-lyon.fr> - YOPY port tests
-Simon Damkj¾r Andersen <simondamkjaer at gmail.com> - playmode icons for the OSX GUI (v0.8.6)
+Simon Damkj¾r Andersen <simondamkjaer at gmail.com> - playmode icons and the entire Fullscreen Panel design for the OSX GUI (v0.9.0)
Steve Lhomme <steve dot lhomme at free dot fr> - MSVC fixes and Matroska enhancements
Steve Brown <sbrown at cortland.com> - fix for optional PES size bug
Steven M. Schultz <sms at TO.GD-ES.COM> - BSD/OS port
- (void)setPlay;\r
- (void)setPause;\r
- (void)setStreamTitle:(NSString *)o_title;\r
-- (void)setStreamPos:(float) f_pos setSeconds:(int)i_seconds;\r
+- (void)setStreamPos:(float) f_pos andTime:(NSString *)o_time;\r
+- (void)setSeekable:(BOOL) b_seekable;\r
\r
- (void)focus:(NSTimer *)timer;\r
- (void)unfocus:(NSTimer *)timer;\r
NSColor *fillColor;\r
NSButton *o_prev, *o_next, *o_slow, *o_fast, *o_play, *o_fullscreen;\r
NSTextField *o_textfield, *o_textPos;\r
- NSSlider *o_time_slider;\r
+ NSSlider *o_fs_timeSlider;\r
}\r
- (id)initWithFrame:(NSRect)frameRect;\r
- (void)drawRect:(NSRect)rect;\r
\r
-- (void) setPlay;\r
-- (void) setPause;\r
-- (void) setStreamTitle: (NSString *)o_title;\r
-- (void) setStreamPos:(float) f_pos setSeconds:(int)i_seconds;\r
+- (void)setPlay;\r
+- (void)setPause;\r
+- (void)setStreamTitle: (NSString *)o_title;\r
+- (void)setStreamPos:(float) f_pos andTime:(NSString *)o_time;\r
+- (void)setSeekable: (BOOL)b_seekable; \r
- (IBAction)play:(id)sender;\r
- (IBAction)prev:(id)sender;\r
- (IBAction)next:(id)sender;\r
- (IBAction)faster:(id)sender;\r
- (IBAction)slower:(id)sender;\r
+- (IBAction)fsTimeSliderUpdate:(id)sender;\r
\r
@end\r
\r
return YES;\r
}\r
\r
+- (BOOL)mouseDownCanMoveWindow\r
+{\r
+ return YES;\r
+}\r
+\r
-(void)dealloc\r
{\r
if( hideAgainTimer )\r
[[self contentView] setStreamTitle: o_title];\r
}\r
\r
-- (void)setStreamPos:(float) f_pos setSeconds:(int)i_seconds;\r
+- (void)setStreamPos:(float) f_pos andTime:(NSString *)o_time\r
+{\r
+ [[self contentView] setStreamPos:f_pos andTime: o_time];\r
+}\r
+\r
+- (void)setSeekable:(BOOL) b_seekable;\r
{\r
- [[self contentView] setStreamPos:f_pos setSeconds:i_seconds];\r
+ [[self contentView] setSeekable: b_seekable];\r
}\r
\r
/* This routine is called repeatedly when the mouse enters the window from outside it. */\r
s_rc.origin.y = 53;\r
s_rc.size.width = 518;\r
s_rc.size.height = 9;\r
- o_time_slider = [[[VLCFSTimeSlider alloc] initWithFrame: s_rc] retain];\r
- [o_time_slider setMinValue:0];\r
- [o_time_slider setMaxValue:1];\r
- [o_time_slider setFloatValue: 0];\r
- [o_time_slider setAction: @selector(timesliderUpdate:)];\r
- [self addSubview: o_time_slider];\r
+ o_fs_timeSlider = [[VLCFSTimeSlider alloc] initWithFrame: s_rc];\r
+ [o_fs_timeSlider setMinValue:0];\r
+ [o_fs_timeSlider setMaxValue:10000];\r
+ [o_fs_timeSlider setFloatValue: 0];\r
+ [o_fs_timeSlider setContinuous: YES];\r
+ [o_fs_timeSlider setTarget: self];\r
+ [o_fs_timeSlider setAction: @selector(fsTimeSliderUpdate:)];\r
+ [self addSubview: o_fs_timeSlider];\r
\r
s_rc = [self frame];\r
s_rc.origin.x = 98;\r
return view;\r
}\r
\r
+- (void)dealloc\r
+{\r
+ [o_fs_timeSlider release];\r
+ [super dealloc];\r
+}\r
+\r
- (void)setPlay\r
{\r
NSBundle *bundle = [NSBundle mainBundle];\r
[o_textfield setStringValue: o_title];\r
}\r
\r
-- (void)setStreamPos:(float) f_pos setSeconds:(int)i_seconds\r
+- (void)setStreamPos:(float) f_pos andTime:(NSString *)o_time\r
{\r
- NSString *o_pos = [NSString stringWithFormat: @"%d:%02d:%02d",\r
- (int) (i_seconds / (60 * 60)),\r
- (int) (i_seconds / 60 % 60),\r
- (int) (i_seconds % 60)];\r
+ [o_textPos setStringValue: o_time];\r
+ [o_fs_timeSlider setFloatValue: f_pos];\r
+}\r
\r
- [o_textPos setStringValue: o_pos];\r
- [o_time_slider setFloatValue: f_pos];\r
+- (void)setSeekable:(BOOL)b_seekable\r
+{\r
+ [o_slow setEnabled: b_seekable];\r
+ [o_fast setEnabled: b_seekable];\r
+ [o_fs_timeSlider setEnabled: b_seekable];\r
}\r
\r
- (IBAction)play:(id)sender\r
[[[VLCMain sharedInstance] getControls] windowAction: sender];\r
}\r
\r
-- (IBAction)timesliderUpdate:(id)sender\r
+- (IBAction)fsTimeSliderUpdate:(id)sender\r
{\r
[[VLCMain sharedInstance] timesliderUpdate: sender];\r
}\r
[o_timeslider setFloatValue: 0.0];
[o_timeslider setEnabled: b_seekable];
[o_timefield setStringValue: @"0:00:00"];
- [[[self getControls] getFSPanel] setStreamPos: 0 setSeconds: 0];
+ [[[self getControls] getFSPanel] setStreamPos: 0 andTime: @"0:00:00"];
+ [[[self getControls] getFSPanel] setSeekable: b_seekable];
[o_embedded_window setSeekable: b_seekable];
(int) (i_seconds / 60 % 60),
(int) (i_seconds % 60)];
[o_timefield setStringValue: o_time];
- [[[self getControls] getFSPanel] setStreamPos: pos.f_float setSeconds: i_seconds];
+ [[[self getControls] getFSPanel] setStreamPos: f_updated andTime: o_time];
[o_embedded_window setTime: o_time position: f_updated];
}
(int) (i_seconds / 60 % 60),
(int) (i_seconds % 60)];
[o_timefield setStringValue: o_time];
- [[[self getControls] getFSPanel] setStreamPos: pos.f_float setSeconds: i_seconds];
+ [[[self getControls] getFSPanel] setStreamPos: f_updated andTime: o_time];
[o_embedded_window setTime: o_time position: f_updated];
}
#undef p_input