Difference between revisions of "Danny.OOo.Listeners.ListenerProcAdapters.py"
From Apache OpenOffice Wiki
(Adding categories) |
(+cat) |
||
Line 1: | Line 1: | ||
This module has various helpers that make it extremely easy to create listeners on the fly, and make them call an arbitrary python procedure. | This module has various helpers that make it extremely easy to create listeners on the fly, and make them call an arbitrary python procedure. | ||
+ | |||
<source lang=python> | <source lang=python> | ||
+ | |||
#********************************************************************** | #********************************************************************** | ||
# | # | ||
Line 99: | Line 101: | ||
if callable( self.oProcToCall ): | if callable( self.oProcToCall ): | ||
apply( self.oProcToCall, (oTextEvent,) + self.tParams ) | apply( self.oProcToCall, (oTextEvent,) + self.tParams ) | ||
− | <source> | + | </source> |
[[Category:Extensions]] | [[Category:Extensions]] | ||
[[Category:Python]] | [[Category:Python]] | ||
[[Category:Uno]] | [[Category:Uno]] |
Latest revision as of 21:14, 25 April 2015
This module has various helpers that make it extremely easy to create listeners on the fly, and make them call an arbitrary python procedure.
#********************************************************************** # # Danny.OOo.Listeners.ListenerProcAdapters.py # # A module to easily work with OpenOffice.org. # #********************************************************************** # Copyright (c) 2003-2004 Danny Brewer # d29583@groovegarden.com # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # # See: http://www.gnu.org/licenses/lgpl.html # #********************************************************************** # If you make changes, please append to the change log below. # # Change Log # Danny Brewer Revised 2004-06-05-01 # #********************************************************************** # OOo's libraries import uno import unohelper #-------------------------------------------------- # An ActionListener adapter. # This object implements com.sun.star.awt.XActionListener. # When actionPerformed is called, this will call an arbitrary # python procedure, passing it... # 1. the oActionEvent # 2. any other parameters you specified to this object's constructor (as a tuple). from com.sun.star.awt import XActionListener class ActionListenerProcAdapter( unohelper.Base, XActionListener ): def __init__( self, oProcToCall, tParams=() ): self.oProcToCall = oProcToCall # a python procedure self.tParams = tParams # a tuple # oActionEvent is a com.sun.star.awt.ActionEvent struct. def actionPerformed( self, oActionEvent ): if callable( self.oProcToCall ): apply( self.oProcToCall, (oActionEvent,) + self.tParams ) #-------------------------------------------------- # An ItemListener adapter. # This object implements com.sun.star.awt.XItemListener. # When itemStateChanged is called, this will call an arbitrary # python procedure, passing it... # 1. the oItemEvent # 2. any other parameters you specified to this object's constructor (as a tuple). from com.sun.star.awt import XItemListener class ItemListenerProcAdapter( unohelper.Base, XItemListener ): def __init__( self, oProcToCall, tParams=() ): self.oProcToCall = oProcToCall # a python procedure self.tParams = tParams # a tuple # oItemEvent is a com.sun.star.awt.ItemEvent struct. def itemStateChanged( self, oItemEvent ): if callable( self.oProcToCall ): apply( self.oProcToCall, (oItemEvent,) + self.tParams ) #-------------------------------------------------- # An TextListener adapter. # This object implements com.sun.star.awt.XTextistener. # When textChanged is called, this will call an arbitrary # python procedure, passing it... # 1. the oTextEvent # 2. any other parameters you specified to this object's constructor (as a tuple). from com.sun.star.awt import XTextListener class TextListenerProcAdapter( unohelper.Base, XTextListener ): def __init__( self, oProcToCall, tParams=() ): self.oProcToCall = oProcToCall # a python procedure self.tParams = tParams # a tuple # oTextEvent is a com.sun.star.awt.TextEvent struct. def textChanged( self, oTextEvent ): if callable( self.oProcToCall ): apply( self.oProcToCall, (oTextEvent,) + self.tParams )