]> git.sesse.net Git - vlc/blob - bindings/java/org/videolan/jvlc/VideoIntf.java
0be72c6a70ce4487539d676a3a6b015971abb7a2
[vlc] / bindings / java / org / videolan / jvlc / VideoIntf.java
1 /*****************************************************************************
2  * VideoIntf.java: Video methods interface
3  *****************************************************************************
4  * 
5  * Copyright (C) 1998-2006 the VideoLAN team
6  * 
7  * Author: Filippo Carone <filippo@carone.org>
8  * 
9  * Created on 28-feb-2006
10  *
11  * $Id$
12  *
13  * This program is free software; you can redistribute it
14  * and/or modify it under the terms of the GNU General Public License
15  * as published by the Free Software Foundation; either version 2 of the
16  * License, or (at your option) any later version.
17  * 
18  * This program is distributed in the hope that it will be useful, but
19  * WITHOUT ANY WARRANTY; without even the implied warranty of
20  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
21  * General Public License for more details.
22  * 
23  * You should have received a copy of the GNU General Public
24  * License along with this program; if not, write to the Free Software
25  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
26  * 
27  */
28
29
30 package org.videolan.jvlc;
31
32 import java.awt.Dimension;
33
34
35 public interface VideoIntf {
36     /**
37      * Toggles the fullscreen.
38      */
39     void        toggleFullscreen() throws VLCException;
40     
41     
42     /**
43      * Sets fullscreen if fullscreen argument is true. 
44      * @param fullscreen
45      */
46     void        setFullscreen( boolean fullscreen ) throws VLCException;
47     
48     
49     /**
50      * @return True if the current video window is in fullscreen mode.
51      */
52     boolean getFullscreen() throws VLCException;
53     
54     
55     /**
56      * Saves a snapshot of the current video window.
57      * @param filepath The full path (including filename) were to save the snapshot to. 
58      * If you only give a path, not including the filename, the snapshot will be saved in
59      * the specified path using vlc naming conventions. 
60      */
61     void        getSnapshot(String filepath,int width,int height) throws VLCException;
62     
63     
64     /**
65      * @return The current video window height
66      */
67     int         getHeight() throws VLCException;
68
69     /**
70      * @return The current video window width
71      */
72     int         getWidth() throws VLCException;
73     
74     /**
75      * Get the size of the video output window as a Dimension object.
76      * @return The video size in a Dimension object.
77      * @throws VLCException
78      */
79     Dimension   getSize() throws VLCException;
80     
81     /**
82      * Destroys video output, but the item continues to play.
83      * @throws VLCException
84      */
85     void destroyVideo() throws VLCException;
86     
87     /**
88      * Moves video output from the current Canvas to another. This funtion
89      * doens't resize the video output to the new canvas size. See resizeVideo().
90      * @param c
91      * @throws VLCException
92      */
93     void reparent(JVLCCanvas c) throws VLCException;
94     
95     /**
96      * Resizes video output to width and height. This operation could be necessary
97      * after reparenting. See reparentVideo().
98      * @param width The new video output width
99      * @param height The new video output height
100      * @throws VLCException
101      */
102     void setSize(int width, int height) throws VLCException;
103     
104     /**
105      * Resizes video output to width and height. This operation could be necessary
106      * after reparenting. See reparentVideo().
107          *
108      * @param d The new size of video
109      * @throws VLCException
110      */
111     void setSize(Dimension d) throws VLCException;
112     
113 }