To comment on the following update, log in, then open the issue: http://www.openoffice.org/issues/show_bug.cgi?id=85205
------- Additional comments from [EMAIL PROTECTED] Sun Jan 13 23:24:49 +0000 2008 ------- ... the following macro tries to update all oShape.Bookmark strings to point to hard coded Page Numbers instead of Named Objects. Running this before exporting to PPT will keep the presentation from breaking in PPTViewer 2003. REM ***** BASIC ***** Sub UpdateBookmarks Dim oDPages Dim oPage Dim oShape Dim i% Dim j% Dim k% Dim s$ Dim tableSize% tableSize = 100 Dim objectNames(tableSize + 1) as String Dim objectPages(tableSize + 1) as Integer Dim objectCount% objectCount = 0 Dim bookmark$ Dim found As Boolean Dim trace As Boolean trace = False oDPages = ThisComponent.getDrawPages() REM build a table or all Named Objects and their Page Numbers For i = 1 To oDPages.getCount() oPage = oDPages.getByIndex(i-1) For j = 1 To oPage.getCount() oShape = oPage.getByIndex(j-1) If (oShape.getName <> "") Then If (trace) Then s = "Named Shape '" & oShape.getName & "' Found on Page " & i Print s End If objectCount = objectCount + 1 REM resize table arrays if needed If (objectCount >= tableSize) Then tableSize = tableSize + 100 ReDim Preserve objectNames(tableSize) as String ReDim Preserve objectPages(tableSize) as Integer End If objectNames(objectCount) = oShape.getName objectPages(objectCount) = i End If Next Next REM find Shapes with "Goto Page or Object" Interactions and REM update oShape.Bookmark to point to Page Number of the Named Object For i = 1 To oDPages.getCount() oPage = oDPages.getByIndex(i-1) For j = 1 To oPage.getCount() oShape = oPage.getByIndex(j-1) If (oShape.OnClick = com.sun.star.presentation.ClickAction.BOOKMARK) _ AND (Left(oShape.Bookmark, 4) <> "page") Then If (trace) Then s = "Page " & i & " : Shape " & j s = s & " (" & oShape.getName & ")" s = s & " : OnClick --> " & oShape.Bookmark Print s End If REM scan through the pre-built tables bookmark = oShape.Bookmark found = False For k = 1 To objectCount If (objectNames(k) = bookmark) Then If (trace) Then s = "Page " & i & " : Shape " & j s = s & " (" & oShape.getName & ")" s = s & " : Updating " & oShape.Bookmark s = s & " --> page" & objectPages(k) Print s End If found = True oShape.Bookmark = "page" & objectPages(k) End If Next REM trap unknown targets (should not happen) If (found = False) Then s = "ERROR!!" s = "Page " & i & " : Shape " & j s = s & " (" & oShape.getName & ")" s = s & " : OnClick --> " & oShape.Bookmark s = s & "BUT NO SUCH NAMED SHAPE EXISTS!!" s = s & "... Continuing Anyhow... Click OK." Print s End If End If Next Next End Sub --------------------------------------------------------------------- Please do not reply to this automatically generated notification from Issue Tracker. Please log onto the website and enter your comments. http://qa.openoffice.org/issue_handling/project_issues.html#notification --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]