]> git.sesse.net Git - vlc/blobdiff - modules/gui/skins2/parser/interpreter.cpp
* skins2: added vlc.volumeUp() and vlc.volumeDown() actions
[vlc] / modules / gui / skins2 / parser / interpreter.cpp
index 5f75b8ebae7dc6299e9853db2f3cce868088883b..cdc39598f7ce61fd8cda972de22c380c5d48f286 100644 (file)
@@ -83,6 +83,8 @@ Interpreter::Interpreter( intf_thread_t *pIntf ): SkinObject( pIntf )
     REGISTER_CMD( "vlc.faster()", CmdFaster )
     REGISTER_CMD( "vlc.slower()", CmdSlower )
     REGISTER_CMD( "vlc.mute()", CmdMute )
+    REGISTER_CMD( "vlc.volumeUp()", CmdVolumeUp )
+    REGISTER_CMD( "vlc.volumeDown()", CmdVolumeDown )
     REGISTER_CMD( "vlc.minimize()", CmdMinimize )
     REGISTER_CMD( "vlc.onTop()", CmdOnTop )
     REGISTER_CMD( "vlc.quit()", CmdQuit )
@@ -186,14 +188,14 @@ VarBool *Interpreter::getVarBool( const string &rName, Theme *pTheme )
 {
     VarManager *pVarManager = VarManager::instance( getIntf() );
 
-   // Convert the expression into Reverse Polish Notation
-    ExprEvaluator *pEvaluator = new ExprEvaluator( getIntf() );
-    pEvaluator->parse( rName );
+    // Convert the expression into Reverse Polish Notation
+    ExprEvaluator evaluator( getIntf() );
+    evaluator.parse( rName );
 
     list<VarBool*> varStack;
 
     // Get the first token from the RPN stack
-    string token = pEvaluator->getToken();
+    string token = evaluator.getToken();
     while( !token.empty() )
     {
         if( token == "and" )
@@ -295,7 +297,7 @@ VarBool *Interpreter::getVarBool( const string &rName, Theme *pTheme )
             varStack.push_back( pVar );
         }
         // Get the first token from the RPN stack
-        token = pEvaluator->getToken();
+        token = evaluator.getToken();
     }
 
     // The stack should contain a single variable