From 81833785308cf9c14c6ed7f7ed99690c44699952 Mon Sep 17 00:00:00 2001 From: Cyril Deguet Date: Sun, 19 Feb 2006 15:37:05 +0000 Subject: [PATCH] * all: new skin variable "vlc.isFullscreen" (guess what it does ;) --- doc/skins/skins2-howto.xml | 3 +++ modules/gui/skins2/src/vlcproc.cpp | 16 +++++++++++++++- modules/gui/skins2/src/vlcproc.hpp | 3 ++- 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/doc/skins/skins2-howto.xml b/doc/skins/skins2-howto.xml index 5c1311aa36..a8bdb6633e 100644 --- a/doc/skins/skins2-howto.xml +++ b/doc/skins/skins2-howto.xml @@ -939,6 +939,9 @@ difficulty to understand how VLC skins work. equalizer.isEnabled: True if the equalizer audio filter is enabled (since VLC 0.8.5). + + vlc.isFullscreen: True when the video is in fullscreen mode (since VLV 0.8.5). + vlc.isPlaying: True when VLC is playing, false otherwise. diff --git a/modules/gui/skins2/src/vlcproc.cpp b/modules/gui/skins2/src/vlcproc.cpp index 596fb16856..e3f5c05357 100644 --- a/modules/gui/skins2/src/vlcproc.cpp +++ b/modules/gui/skins2/src/vlcproc.cpp @@ -101,6 +101,7 @@ VlcProc::VlcProc( intf_thread_t *pIntf ): SkinObject( pIntf ), REGISTER_VAR( m_cVarEqualizer, VarBoolImpl, "equalizer.isEnabled" ) REGISTER_VAR( m_cVarEqPreamp, EqualizerPreamp, "equalizer.preamp" ) REGISTER_VAR( m_cVarDvdActive, VarBoolImpl, "dvd.isActive" ) + REGISTER_VAR( m_cVarFullscreen, VarBoolImpl, "vlc.isFullscreen" ) #undef REGISTER_VAR m_cVarStreamName = VariablePtr( new VarText( getIntf(), false ) ); pVarManager->registerVar( m_cVarStreamName, "streamName" ); @@ -235,11 +236,12 @@ void VlcProc::manage() VarBoolImpl *pVarLoop = (VarBoolImpl*)m_cVarLoop.get(); VarBoolImpl *pVarRepeat = (VarBoolImpl*)m_cVarRepeat.get(); VarBoolImpl *pVarDvdActive = (VarBoolImpl*)m_cVarDvdActive.get(); + VarBoolImpl *pVarFullscreen = (VarBoolImpl*)m_cVarFullscreen.get(); // Refresh audio variables refreshAudio(); - // Update the input + // Update the input if( getIntf()->p_sys->p_input == NULL ) { getIntf()->p_sys->p_input = getIntf()->p_sys->p_playlist->p_input; @@ -276,6 +278,15 @@ void VlcProc::manage() var_Change( pInput, "chapter", VLC_VAR_CHOICESCOUNT, &chapters_count, NULL ); pVarDvdActive->set( chapters_count.i_int > 0 ); + + // Refresh fullscreen status + vout_thread_t *pVout = (vout_thread_t *)vlc_object_find( pInput, + VLC_OBJECT_VOUT, FIND_CHILD ); + if( pVout ) + { + pVarFullscreen->set( pVout->b_fullscreen ); + vlc_object_release( pVout ); + } } else { @@ -285,6 +296,7 @@ void VlcProc::manage() pVarSeekable->set( false ); pVarDvdActive->set( false ); pTime->set( 0, false ); + pVarFullscreen->set( false ); } // Refresh the random variable @@ -299,6 +311,8 @@ void VlcProc::manage() // Refresh the repeat variable var_Get( getIntf()->p_sys->p_playlist, "repeat", &val ); pVarRepeat->set( val.b_bool != 0 ); + + } diff --git a/modules/gui/skins2/src/vlcproc.hpp b/modules/gui/skins2/src/vlcproc.hpp index 09cac396a8..aef2f50a9e 100644 --- a/modules/gui/skins2/src/vlcproc.hpp +++ b/modules/gui/skins2/src/vlcproc.hpp @@ -117,7 +117,8 @@ class VlcProc: public SkinObject VariablePtr m_cVarStopped; VariablePtr m_cVarPaused; VariablePtr m_cVarSeekable; - /// Variable for the vout + /// Variables related to the vout + VariablePtr m_cVarFullscreen; VarBox m_varVoutSize; /// Equalizer variables EqualizerBands m_varEqBands; -- 2.39.5