X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=modules%2Fgui%2Fmacosx%2Fembeddedwindow.h;h=7534871c5a787de4d8fc38fc8f2fb3e1336cee54;hb=6ee1e193fd896ab9a4729fde14f009d9ce629815;hp=5deb2a8a2b5c6bb6f7e09a455061c0e0e391f366;hpb=d016a4283ea29e3596172e4c761f6d66c0d44268;p=vlc diff --git a/modules/gui/macosx/embeddedwindow.h b/modules/gui/macosx/embeddedwindow.h index 5deb2a8a2b..7534871c5a 100644 --- a/modules/gui/macosx/embeddedwindow.h +++ b/modules/gui/macosx/embeddedwindow.h @@ -4,13 +4,13 @@ * Copyright (C) 2005-2006 the VideoLAN team * $Id$ * - * Authors: Benjamin Pracht + * Authors: Benjamin Pracht * * 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 @@ -25,8 +25,9 @@ * VLCEmbeddedWindow interface *****************************************************************************/ +#import "misc.h" -@interface VLCEmbeddedWindow : NSObject +@interface VLCEmbeddedWindow : NSWindow { IBOutlet id o_btn_backward; IBOutlet id o_btn_forward; @@ -34,18 +35,43 @@ IBOutlet id o_btn_play; IBOutlet id o_slider; IBOutlet id o_time; - IBOutlet id o_window; + IBOutlet id o_view; NSImage * o_img_play; NSImage * o_img_play_pressed; NSImage * o_img_pause; NSImage * o_img_pause_pressed; + + VLCWindow * o_fullscreen_window; + NSViewAnimation * o_fullscreen_anim1; + NSViewAnimation * o_fullscreen_anim2; + NSView * o_temp_view; + /* set to yes if we are fullscreen and all animations are over */ + BOOL b_fullscreen; + BOOL b_animation_lock_alreadylocked; + NSRecursiveLock * o_animation_lock; } - (void)setTime:(NSString *)o_arg_ime position:(float)f_position; - (void)playStatusUpdated:(int)i_status; - (void)setSeekable:(BOOL)b_seekable; -- (void)setFullscreen:(BOOL)b_fullscreen; +- (NSView *)mainView; + +- (BOOL)isFullscreen; + +- (void)lockFullscreenAnimation; +- (void)unlockFullscreenAnimation; + +- (void)enterFullscreen; +- (void)leaveFullscreen; +/* Allows to leave fullscreen by simply fading out the display */ +- (void)leaveFullscreenAndFadeOut: (BOOL)fadeout; + +/* private */ +- (void)hasEndedFullscreen; +- (void)hasBecomeFullscreen; + +- (void)setFrameOnMainThread:(NSData*)packedargs; @end