arts Library API Documentation

kvideowidget.h

00001 /* 00002 This file is part of KDE/aRts (Noatun) - xine integration 00003 Copyright (C) 2002 Ewald Snel <ewald@rambo.its.tudelft.nl> 00004 Copyright (C) 2002 Neil Stevens <neil@qualityassistant.com> 00005 00006 This library is free software; you can redistribute it and/or 00007 modify it under the terms of the GNU Lesser General Public 00008 License version 2 as published by the Free Software Foundation. 00009 */ 00010 00011 #ifndef ARTSKDE_KVIDEOWIDGET_H 00012 #define ARTSKDE_KVIDEOWIDGET_H 00013 00014 #include <qevent.h> 00015 #include <qimage.h> 00016 #include <qwidget.h> 00017 #include <kmedia2.h> 00018 #include <kxmlguiclient.h> 00019 00020 00021 class KVideoWidget : public QWidget, virtual public KXMLGUIClient 00022 { 00023 Q_OBJECT 00024 00025 public: 00026 KVideoWidget( KXMLGUIClient *clientParent, QWidget *parent = 0, const char *name = 0, WFlags f = 0 ); 00027 KVideoWidget( QWidget *parent = 0, const char *name = 0, WFlags f = 0 ); 00028 virtual ~KVideoWidget(); 00029 00030 void embed( Arts::VideoPlayObject vpo ); 00031 static QImage snapshot( Arts::VideoPlayObject vpo ); 00032 00033 bool isEmbedded(); 00034 bool isFullscreen(); 00035 bool isHalfSize(); 00036 bool isNormalSize(); 00037 bool isDoubleSize(); 00038 00039 QSize sizeHint() const; 00040 00041 virtual int heightForWidth ( int w ) const; 00042 00043 protected: 00044 virtual void mousePressEvent( QMouseEvent *event ); 00045 virtual void mouseDoubleClickEvent( QMouseEvent *event); 00046 virtual void resizeEvent( QResizeEvent *event ); 00047 virtual bool x11Event( XEvent *event ); 00048 00049 public slots: 00050 void setFullscreen(); 00051 void setWindowed(); 00052 void setHalfSize(); 00053 void setNormalSize(); 00054 void setDoubleSize(); 00055 00056 void resizeNotify( int width, int height ); 00057 00058 protected slots: 00059 void fullscreenActivated(); 00060 void halfSizeActivated(); 00061 void normalSizeActivated(); 00062 void doubleSizeActivated(); 00063 00064 signals: 00065 void adaptSize( int width, int height ); 00066 void mouseButtonPressed( int type, const QPoint &, int state ); 00067 void mouseButtonDoubleClick( const QPoint &, int state ); 00072 void rightButtonPressed( const QPoint & ); 00073 00074 private: 00075 void init(void); 00076 QWidget *fullscreenWidget; 00077 int videoWidth; 00078 int videoHeight; 00079 Arts::VideoPlayObject poVideo; 00080 }; 00081 00082 #endif
KDE Logo
This file is part of the documentation for arts Library Version 3.2.3.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Mon Aug 30 22:55:01 2004 by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2003