CreateUnoListener Function

āϞāĻŋāϏ⧇āύāĻžāϰ⧇āϰ āĻĻ⧃āĻˇā§āϟāĻžāĻ¨ā§āϤ āϤ⧈āϰāĻŋ āĻ•āϰāĻž āĻšā§ŸāĨ¤

āĻ…āύ⧇āĻ• Uno āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ āĻāĻ•āϟāĻŋ āĻŦāĻŋāĻļ⧇āώ āϞāĻŋāϏ⧇āύāĻžāϰ āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ⧇ āϞāĻŋāϏ⧇āύāĻžāϰ āύāĻŋāĻ¨ā§āϧāύ āĻ•āϰāϤ⧇ āĻĻ⧇āϝāĻŧāĨ¤ āĻāϟāĻŋ āφāĻĒāύāĻžāϕ⧇ āϏ⧁āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āχāϭ⧇āĻ¨ā§āϟ āĻļ⧁āύāϤ⧇ āĻ…āύ⧁āĻŽā§‹āĻĻāύ āĻĻ⧇āϝāĻŧ āĻāĻŦāĻ‚ āωāĻĒāϝ⧁āĻ˛ā§āϤ āϞāĻŋāϏ⧇āύāĻžāϰ āĻĒāĻĻā§āϧāϤāĻŋ āĻ•āϞ āĻ•āϰ⧇ āĻĨāĻžāϕ⧇āĨ¤ CreateUnoListener āĻĢāĻžāĻ‚āĻļāύāϟāĻŋ āĻ•āϞ āĻ•āϰāĻž āϞāĻŋāϏ⧇āύāĻžāϰ āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰ⧇ āĻĨāĻžāϕ⧇ āĻāĻŦāĻ‚ āϤāĻžāϰāĻĒāϰ āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ⧇ āĻāĻ•āϟāĻŋ āĻŦāĻ¸ā§āϤ⧁ āĻĒāĻžāϏ āĻ•āϰ⧇ āϝāĻž āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ āϏāĻŽāĻ°ā§āĻĨāύāĨ¤ āĻŦāĻ¸ā§āϤ⧁āϟāĻŋ āϤāĻžāϰāĻĒāϰ āϞāĻŋāϏ⧇āύāĻžāϰ āύāĻŋāĻŦāĻ¨ā§āϧāύ⧇āϰ āĻĒāĻĻā§āϧāϤāĻŋāϤ⧇ āĻĒāĻžāϏ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤

Syntax:

oListener = CreateUnoListener( Prefixname, ListenerInterfaceName )

Example:

āύāĻŋāĻšā§‡āϰ āωāĻĻāĻžāĻšāϰāĻŖāϏāĻŽā§‚āĻš āĻŦ⧇āϏāĻŋāĻ• āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĨ¤


Dim oListener
oListener = CreateUnoListener( "ContListener_","com.sun.star.container.XContainerListener" )

CreateUnoListener āĻŽā§‡āĻĨāĻĄā§‡āϰ āĻĻ⧁āχāϟāĻŋ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āĻĒā§āϰāϝāĻŧā§‹āϜāύāĨ¤ āĻĒā§āϰāĻĨāĻŽāϟāĻŋ āĻāĻ•āϟāĻŋ āĻĒā§āϰāĻŋāĻĢāĻŋāĻ•ā§āϏ āĻāĻŦāĻ‚ āύāĻŋāĻšā§‡ āĻāϰ āĻŦāĻŋāĻļāĻĻ āĻŦāĻ°ā§āĻŖāύāĻž āĻ°ā§Ÿā§‡āϛ⧇āĨ¤ āĻĻā§āĻŦāĻŋāϤ⧀āϝāĻŧ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰāϟāĻŋ āϞāĻŋāϏ⧇āύāĻžāϰ āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ⧇āϰ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āωāĻĒāϝ⧁āĻ•ā§āϤ āύāĻžāĻŽ āϝāĻž āφāĻĒāύāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āϚāĻžāύāĨ¤

āĻŦā§āϰāĻĄāĻ•āĻžāĻ¸ā§āϟ āĻŦāĻ¸ā§āϤ⧁āϤ⧇ āĻ…āĻŦāĻļā§āϝāχ āϞāĻŋāϏ⧇āύāĻžāϰāϟāĻŋ āϝ⧁āĻ•ā§āϤ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤ āĻāϟāĻŋ āϏāĻŽā§āĻĒāĻ¨ā§āύ āĻ•āϰāϤ⧇ āĻāĻ•āϟāĻŋ āϞāĻŋāϏ⧇āύāĻžāϰ āϝ⧁āĻ•ā§āϤ āĻ•āϰāϤ⧇ āωāĻĒāϝ⧁āĻ•ā§āϤ āĻĒāĻĻā§āϧāϤāĻŋ āĻ•āϞ āĻ•āϰāĻž āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤ āĻāχ āĻĒāĻĻā§āϧāϤāĻŋāϏāĻŽā§‚āĻš āϏāĻŦāϏāĻŽāϝāĻŧ "addFooListener" āĻĒā§āϝāĻžāϟāĻžāĻ°ā§āύāϟāĻŋ āĻ…āύ⧁āϏāϰāĻŖ āĻ•āϰ⧇ āĻĨāĻžāϕ⧇, āϝ⧇āĻ–āĻžāύ⧇ "Foo" āĻšāϞ⧋ 'X' āĻŦā§āϝāϤ⧀āϤ āϞāĻŋāϏ⧇āύāĻžāϰ āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ āϧāϰāύāĨ¤ āĻāχ āωāĻĻāĻžāĻšāϰāϪ⧇, addContainerListener āĻĒāĻĻā§āϧāϤāĻŋ XContainerListener āύāĻŋāĻŦāĻ¨ā§āϧāύ⧇āϰ āϜāĻ¨ā§āϝ āĻ•āϞ āĻ•āϰāĻž āĻšā§Ÿ:


Dim oLib
oLib = BasicLibraries.Library1 ' Library1 must exist!
oLib.addContainerListener( oListener ) ' Register the listener

āϞāĻŋāϏ⧇āύāĻžāϰ āύāĻŋāĻŦāĻ¨ā§āϧāĻŋāϤāĨ¤ āϝāĻ–āύ āĻāĻ•āϟāĻŋ āχāϭ⧇āĻ¨ā§āϟ āϏāĻ‚āϘāϟāĻŋāϤ āĻšā§Ÿ, āϏāĻ‚āĻļā§āϞāĻŋāĻˇā§āϟ āϞāĻŋāϏ⧇āύāĻžāϰ com.sun.star.container.XContainerListener āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ āĻĨ⧇āϕ⧇ āωāĻĒāϝ⧁āĻ•ā§āϤ āĻŽā§‡āĻĨāĻĄāϟāĻŋ āĻ•āϞ āĻ•āϰ⧇āĨ¤

āĻŦ⧇āϏāĻŋāĻ•-āϏāĻžāĻŦāϰ⧁āϟāĻŋāύ āĻĨ⧇āϕ⧇ āύāĻŋāĻŦāĻ¨ā§āϧāĻŋāϤ āϞāĻŋāϏ⧇āύāĻžāϰāϕ⧇ āĻĒā§āϰāĻŋāĻĢāĻŋāĻ•ā§āϏ⧇āϰ āϏāĻžāĻšāĻžāĻ¯ā§āϝ⧇ āĻ•āϞ āĻ•āϰāĻž āĻšā§ŸāĨ¤ āĻŦ⧇āϏāĻŋāĻ• āϰāĻžāύ āϟāĻžāχāĻŽ āĻĒāĻĻā§āϧāϤāĻŋāϟāĻŋ āĻŦ⧇āϏāĻŋāĻ•-āϏāĻžāĻŦāϰ⧁āϟāĻŋāύ āĻ…āĻĨāĻŦāĻž āĻĢāĻžāĻ‚āĻļāύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰ⧇ āĻĨāĻžāϕ⧇ āϝāĻžāϰ āύāĻžāĻŽ "PrefixListenerMethode" āĻāĻŦāĻ‚ āϖ⧁āρāĻœā§‡ āĻĒāĻžāĻ“āϝāĻŧāĻž āϗ⧇āϞ⧇ āĻāĻĻ⧇āϰāϕ⧇ āĻ•āϞ āĻ•āϰāĻž āĻšā§ŸāĨ¤ āĻ…āĻ¨ā§āϝāĻĨāĻžāϝāĻŧ, āĻāĻ•āϟāĻŋ āϰāĻžāύ āϟāĻžāχāĻŽ āĻ¤ā§āϰ⧁āϟāĻŋ āϏāĻ‚āϘāϟāĻŋāϤ āĻšā§ŸāĨ¤

āĻāχ āωāĻĻāĻžāĻšāϰāϪ⧇, āϞāĻŋāϏ⧇āύāĻžāϰ-āχāĻ¨ā§āϟāĻžāϰāĻĢ⧇āϏ āύāĻŋāĻšā§‡āϰ āĻŽā§‡āĻĨāĻĄāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇:

āĻāχ āωāĻĻāĻžāĻšāϰāϪ⧇, āĻĒā§āϰāĻŋāĻĢāĻŋāĻ•ā§āϏāϟāĻŋ āĻšāϞ⧋ ContListener_āĨ¤ āύāĻŋāĻšā§‡āϰ āϏāĻžāĻŦāϰ⧁āϟāĻŋāύāϟāĻŋ āĻ…āĻŦāĻļā§āϝāχ āĻŦ⧇āϏāĻŋāϕ⧇ āĻŦāĻžāĻ¸ā§āϤāĻŦāĻžā§Ÿāύ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇:

āĻāĻ•āϟāĻŋ āχāϭ⧇āĻ¨ā§āĻŸā§‡āϰ āĻ—āĻ āύ⧇āϰ āϟāĻžāχāĻĒ āϝāĻž āĻĒā§āϰāϤāĻŋāϟāĻŋ āϞāĻŋāϏ⧇āύāĻžāϰ āϟāĻžāχāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āĻŦāĻŋāĻĻā§āϝāĻŽāĻžāύ āχāϭ⧇āĻ¨ā§āϟ āϏāĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāϤ āϤāĻĨā§āϝ āϧāĻžāϰāĻŖ āĻ•āϰ⧇āĨ¤ āϝāĻ–āύ āĻāĻ•āϟāĻŋ āϞāĻŋāϏ⧇āύāĻžāϰ āĻŽā§‡āĻĨāĻĄ āĻ•āϞ āĻ•āϰāĻž āĻšāϝāĻŧ, āĻāχ āχāϭ⧇āĻ¨ā§āĻŸā§‡āϰ āĻāĻ•āϟāĻŋ āĻĻ⧃āĻˇā§āϟāĻžāĻ¨ā§āϤ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āĻšāĻŋāϏ⧇āĻŦ⧇ āĻāĻ•āϟāĻŋ āĻŽā§‡āĻĨāĻĄā§‡ āĻĒā§āϰ⧇āϰāĻŋāϤ āĻšā§ŸāĨ¤ āĻŽā§ŒāϞāĻŋāĻ• āϞāĻŋāϏ⧇āύāĻžāϰ āĻŽā§‡āĻĨāĻĄ āĻāχ āχāϭ⧇āĻ¨ā§āϟ āĻŦāĻ¸ā§āϤ⧁āϕ⧇ āĻ•āϞ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇, āϝāϤāĻ•ā§āώāύ āĻĒāĻ°ā§āϝāĻ¨ā§āϤ āύāĻž āωāĻĒāϝ⧁āĻ•ā§āϤ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ Sub āĻĄāĻŋāĻ•ā§āĻ˛ā§‡ā§ŸāĻžāϰ⧇āĻļāύ⧇ āĻĒāĻžāϏ āĻ•āϰāĻž āύāĻž āĻšāϝāĻŧāĨ¤ āϝ⧇āĻŽāύ:


Sub ContListener_disposing( oEvent )
    MsgBox "disposing"
    MsgBox oEvent.Dbg_Properties
End Sub
 
Sub ContListener_elementInserted( oEvent )
    MsgBox "elementInserted"
    MsgBox oEvent.Dbg_Properties
End Sub
 
Sub ContListener_elementRemoved( oEvent )
    MsgBox "elementRemoved"
    MsgBox oEvent.Dbg_Properties
End Sub
 
Sub ContListener_elementReplaced( oEvent )
    MsgBox "elementReplaced"
    MsgBox oEvent.Dbg_Properties
End Sub

āϝāĻĻāĻŋ āĻŦāĻ¸ā§āϤ⧁āϟāĻŋ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āύāĻž āĻšāϝāĻŧ āϤāĻžāĻšāϞ⧇ āφāĻĒāύāĻžāϰ āĻāĻ•āϟāĻŋ āχāϭ⧇āĻ¨ā§āϟ āĻŦāĻ¸ā§āϤ⧁āϰ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ āĻ…āĻ¨ā§āϤāĻ°ā§āϭ⧁āĻ•ā§āϤ āĻ•āϰāĻžāϰ āĻĒā§āϰāϝāĻŧā§‹āϜāύ āύ⧇āχ:


' Minimal implementation of Sub disposing
Sub ContListener_disposing
End Sub
āϏāϤāĻ°ā§āĻ•āϤāĻžāĻŽā§‚āϞāĻ• āφāχāĻ•āύ

āĻŦ⧇āϏāĻŋāĻ• āϰāĻžāύ-āϟāĻžāχāĻŽ āĻ¤ā§āϰ⧁āϟāĻŋ āĻ…āĻ—ā§āϰāĻžāĻšā§āϝ āĻ•āϰāϤ⧇ āϞāĻŋāϏ⧇āύāĻžāϰ āĻŽā§‡āĻĨāĻĄā§‡āϰ āĻ…āĻŦāĻļā§āϝāχ āϏāĻŦāϏāĻŽāϝāĻŧ āĻŦāĻžāĻ¸ā§āϤāĻŦāĻžāϝāĻŧāύ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤