scripts/modules.d/bases/GizmoScriptRunningApplication.py

00001     #***
00002   #*********************************************************************
00003 #*************************************************************************
00004 #*** 
00005 #*** GizmoDaemon Config Script
00006 #***    GizmoScript RunningApplication config
00007 #***
00008 #*****************************************
00009   #*****************************************
00010     #***
00011 
00012 """
00013 
00014   Copyright (c) 2007, Gizmo Daemon Team
00015   Licensed under the Apache License, Version 2.0 (the "License");
00016   you may not use this file except in compliance with the License.
00017   You may obtain a copy of the License at 
00018 
00019         http://www.apache.org/licenses/LICENSE-2.0
00020 
00021   Unless required by applicable law or agreed to in writing, software
00022   distributed under the License is distributed on an "AS IS" BASIS,
00023   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00024   See the License for the specific language governing permissions and 
00025   limitations under the License. 
00026   
00027 """
00028 
00029 ############################
00030 # Imports
00031 ##########################
00032 
00033 from GizmoDaemon import *
00034 from GizmoScriptDefault import *
00035 import subprocess
00036 
00037 ############################
00038 # GizmoScriptRunningApplication Class definition
00039 ##########################
00040 
00041 class GizmoScriptRunningApplication(GizmoScriptDefault):
00042         """
00043         Event Mapping Base Class for Running Application Mappings
00044         
00045         Inherit from this class if you want to define a per application event mapping
00046         where the application just has to be running (but not necessarily currently focused)
00047         """
00048         
00049         ############################
00050         # Public Functions
00051         ##########################
00052                         
00053         def onEvent(self, Event, Gizmo = None):
00054                 """
00055                 See GizmodDispatcher.onEvent documention for an explanation of this function
00056                 """
00057                 
00058                 # check with the base class to see if we're interested in the event
00059                 if not GizmoScriptDefault.checkEvent(self, Event, Gizmo):
00060                         return False
00061 
00062                 # make sure the event is interesting to us
00063                 if Gizmod.isProcessRunning(self.InterestedApplication) >= 0:
00064                         # process the key
00065                         return self.onDeviceEvent(Event, Gizmo)
00066                 else:
00067                         # unmatched event, keep processing
00068                         return False                            
00069         
00070         ############################
00071         # Private Functions
00072         ##########################
00073 
00074         def __init__(self, Enabled, VersionNeeded, InterestedClasses, InterestedApplication):
00075                 """ 
00076                 Default Constructor
00077                 """
00078                 
00079                 # call base constructor
00080                 GizmoScriptDefault.__init__(self, Enabled, VersionNeeded, InterestedClasses)
00081                 
00082                 # initialize
00083                 self.InterestedApplication = InterestedApplication
00084 
00085 ############################
00086 # GizmoScriptRunningApplication class end
00087 ##########################

Generated on Wed Nov 7 10:04:16 2007 for gizmod by  doxygen 1.5.3