vout.h

Go to the documentation of this file.
00001 /*****************************************************************************
00002  * vout.h: MacOS X interface module
00003  *****************************************************************************
00004  * Copyright (C) 2001-2007 the VideoLAN team
00005  * $Id: 6b57f7a523e0f5303fae5698c55162bc7f1551c6 $
00006  *
00007  * Authors: Colin Delacroix <colin@zoy.org>
00008  *          Florian G. Pflug <fgp@phlo.org>
00009  *          Jon Lech Johansen <jon-vl@nanocrew.net>
00010  *          Eric Petit <titer@m0k.org>
00011  *          Benjamin Pracht <bigben at videolan dot org>
00012  *
00013  * This program is free software; you can redistribute it and/or modify
00014  * it under the terms of the GNU General Public License as published by
00015  * the Free Software Foundation; either version 2 of the License, or
00016  * (at your option) any later version.
00017  *
00018  * This program is distributed in the hope that it will be useful,
00019  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00020  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00021  * GNU General Public License for more details.
00022  *
00023  * You should have received a copy of the GNU General Public License
00024  * along with this program; if not, write to the Free Software
00025  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
00026  *****************************************************************************/
00027 
00028 #import "misc.h"
00029 /*****************************************************************************
00030  * VLCEmbeddedList interface
00031  *****************************************************************************/
00032 @interface VLCEmbeddedList : NSObject
00033 {
00034     NSMutableArray * o_embedded_array;
00035 }
00036 
00037 - (id)embeddedVout;
00038 - (void)releaseEmbeddedVout: (id)o_vout_view;
00039 - (void)addEmbeddedVout: (id)o_vout_view;
00040 - (BOOL)windowContainsEmbedded: (id)o_window;
00041 - (id)viewForWindow: (id)o_window;
00042 
00043 @end
00044 
00045 /*****************************************************************************
00046  * VLCVoutView interface
00047  *****************************************************************************/
00048 @protocol VLCVoutViewResetting
00049 + (void)resetVout: (vout_thread_t *)p_vout;
00050 @end
00051 
00052 @interface VLCVoutView : NSView
00053 {
00054     vout_thread_t * p_vout;
00055     NSRect        * s_frame;
00056 
00057     NSView <VLCVoutViewResetting> * o_view;
00058 
00059     vout_thread_t * p_real_vout;
00060     id              o_window;
00061 }
00062 - (BOOL)setVout: (vout_thread_t *) p_arg_vout subView: (NSView *) view
00063                      frame: (NSRect *) s_arg_frame;
00064 - (void)closeVout;
00065 - (void)updateTitle;
00066 - (void)manage;
00067 - (void)scaleWindowWithFactor: (float)factor animate: (BOOL)animate;
00068 - (void)setOnTop:(BOOL)b_on_top;
00069 - (void)toggleFloatOnTop;
00070 - (void)toggleFullscreen;
00071 - (BOOL)isFullscreen;
00072 - (void)snapshot;
00073 - (id)voutWindow;
00074 
00075 + (id)voutView: (vout_thread_t *)p_vout subView: (NSView *) view
00076          frame: (NSRect *) s_frame;
00077 + (vout_thread_t *)realVout: (vout_thread_t *)p_vout;
00078 
00079 - (void)enterFullscreen;
00080 - (void)leaveFullscreen;
00081 @end
00082 
00083 /*****************************************************************************
00084  * VLCVoutDetachedView interface
00085  *****************************************************************************/
00086 
00087 @interface VLCDetachedVoutView : VLCVoutView
00088 {
00089     mtime_t i_time_mouse_last_moved;
00090 }
00091 
00092 - (void)hideMouse: (BOOL)b_hide;
00093 
00094 @end
00095 
00096 /*****************************************************************************
00097  * VLCEmbeddedView interface
00098  *****************************************************************************/
00099 
00100 @interface VLCEmbeddedVoutView : VLCVoutView
00101 {
00102     BOOL b_used;
00103     id o_embeddedwindow;
00104 }
00105 
00106 - (void)setUsed: (BOOL)b_new_used;
00107 - (BOOL)isUsed;
00108 
00109 @end
00110 
00111 /*****************************************************************************
00112  * VLCVoutWindow interface
00113  *****************************************************************************/
00114 @interface VLCVoutWindow : VLCWindow
00115 {
00116     vout_thread_t * p_vout;
00117     VLCVoutView   * o_view;
00118     NSRect        * s_frame;
00119 
00120     bool      b_init_ok;
00121     BOOL      fullscreen;
00122     NSRect    initialFrame;
00123 }
00124 
00125 - (id) initWithVout: (vout_thread_t *) p_vout view: (VLCVoutView *) view
00126                      frame: (NSRect *) s_frame;
00127 - (id)initMainThread: (id) sender;
00128 - (void)leaveFullscreen;
00129 - (void)enterFullscreen;
00130 - (id)voutView;
00131 @end

Generated on Wed Mar 31 08:05:22 2010 for VLC by  doxygen 1.5.6