On Thu, 2011-11-10 at 01:41 +0100, Andreas Säger wrote:
> Am 10.11.2011 01:02, drew wrote:
> > On Wed, 2011-11-09 at 17:55 -0500, Andrew Douglas Pitonyak wrote:
> >>
> >> sNames = oLibs.getElementNames()
> >> For i = UBound(sNames) To LBound(sNames) Step -1
> >> oLibs.removeLibrary(sNames(i))
> >> Next
> >> End Sub
> >>
>
> sNames = oLibs.getElementNames()
> For i = UBound(sNames) To LBound(sNames) Step -1
> if sNames(i)<>"Standard" then
> oLibs.removeLibrary(sNames(i))
> ThisComponent.setModified(True)
> endif
> Next
>
> End Sub
>
>
>
> >>
> >> --
Howdy Andreas,
Cool - now back to something Andrew noted - what about places where the
embedded macros might called from. Not sure how to find everywhere, but
we can enhance that basic procedure to clear out any document event
handlers.
Sub RemoveAllContainedLibs
Dim sNames
Dim oLibs
Dim i%
Dim EmptyEventProps(1) as new com.sun.star.beans.PropertyValue
oLibs = ThisComponent.BasicLibraries
sNames = oLibs.getElementNames()
For i = UBound(sNames) To LBound(sNames) Step -1
oLibs.removeLibrary(sNames(i))
Next
oLibs = ThisComponent.DialogLibraries
sNames = oLibs.getElementNames()
For i = UBound(sNames) To LBound(sNames) Step -1
oLibs.removeLibrary(sNames(i))
Next
'
' clear all document event handlers
For i = UBound(ThisComponent.Events.elementNames) To
LBound(ThisComponent.Events.elementNames) Step -1
ThisComponent.Events.ReplaceByName(ThisComponent.Events.ElementNames(i),
EmptyEventProps())
next
'
' force dirty flag on document
ThisComponent.setModified(True)
End Sub
--
For unsubscribe instructions e-mail to: [email protected]
Problems? http://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
List archive: http://listarchives.libreoffice.org/global/users/
All messages sent to this list will be publicly archived and cannot be deleted