diff options
author | James Courtier-Dutton <jcdutton@users.sourceforge.net> | 2004-06-05 16:06:12 +0000 |
---|---|---|
committer | James Courtier-Dutton <jcdutton@users.sourceforge.net> | 2004-06-05 16:06:12 +0000 |
commit | 6613d192c8d75188e97c6e078e77e504c90c4ce9 (patch) | |
tree | 9bec2c8f95c517794d3528bb942c3a4fe178376f /src/video_out/macosx | |
parent | 5cc73fecf51bb01721518d0924ff1074068df731 (diff) | |
download | xine-lib-6613d192c8d75188e97c6e078e77e504c90c4ce9.tar.gz xine-lib-6613d192c8d75188e97c6e078e77e504c90c4ce9.tar.bz2 |
From: Daniel Mack
Mac OSX video out support.
patch to configure.ac to follow
CVS patchset: 6642
CVS date: 2004/06/05 16:06:12
Diffstat (limited to 'src/video_out/macosx')
-rw-r--r-- | src/video_out/macosx/Makefile.am | 21 | ||||
-rw-r--r-- | src/video_out/macosx/video_window.h | 64 |
2 files changed, 85 insertions, 0 deletions
diff --git a/src/video_out/macosx/Makefile.am b/src/video_out/macosx/Makefile.am new file mode 100644 index 000000000..ad79199dd --- /dev/null +++ b/src/video_out/macosx/Makefile.am @@ -0,0 +1,21 @@ +include $(top_srcdir)/misc/Makefile.common + +if HAVE_MACOSX_VIDEO + +AM_CFLAGS = $(X_CFLAGS) -DXINE_COMPILE \ + $(SUNDGA_CFLAGS) $(SDL_CFLAGS) $(VIDIX_CFLAGS) \ + $(AALIB_CFLAGS) $(MLIB_CFLAGS) $(LIBSTK_CFLAGS) \ + $(DIRECTFB_CFLAGS) $(DIRECTX_CFLAGS) $(CACA_CFLAGS) + +macosx_module = xineplug_vo_out_macosx.la + +lib_LTLIBRARIES = libxine_macosx_video.la + +libxine_macosx_video_la_SOURCES = video_window.m +libxine_macosx_video_la_LIBADD = +libxine_macosx_video_la_LDFLAGS = -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) +libxine_macosx_video_la_OBJCFLAGS = $(OBJCFLAGS) + +include_HEADERS = video_window.h + +endif diff --git a/src/video_out/macosx/video_window.h b/src/video_out/macosx/video_window.h new file mode 100644 index 000000000..d37859d93 --- /dev/null +++ b/src/video_out/macosx/video_window.h @@ -0,0 +1,64 @@ +/* + * Copyright (C) 2004 the xine project + * + * This file is part of xine, a free video player. + * + * xine 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. + * + * xine 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 + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA + * + * $Id: + * + */ + +#include <Cocoa/Cocoa.h> + +@interface XineOpenGLView : NSOpenGLView { + int width, height; + char *texture_buffer; + unsigned long i_texture; + float f_x; + float f_y; + int initDone; + int isFullScreen; + NSOpenGLContext * opengl_context; + NSOpenGLContext * fullScreenContext; + NSOpenGLContext * currentContext; +} + +- (void) drawQuad; +- (void) drawRect: (NSRect) rect; +- (void) goFullScreen; +- (void) exitFullScreen; +- (void) reshape; +- (void) initTextures; +- (void) reloadTexture; +- (id) initWithFrame: (NSRect) frame; +- (char *) getTextureBuffer; +- (void) setVideoSize: (int) w: (int) h; + +@end + + +@interface XineVideoWindow : NSWindow { + int width, height; + XineOpenGLView *openGLView; +} + +- (void) setContentSize: (NSSize) size; +- (void) displayTexture; +- (XineOpenGLView *) getGLView; +- (void) goFullScreen; +- (void) exitFullScreen; + +@end |