| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
- <!--
- * This file is part of the LibreOffice project.
- *
- * This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- * This file incorporates work covered by the following license notice:
- *
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed
- * with this work for additional information regarding copyright
- * ownership. The ASF licenses this file to you under the Apache
- * License, Version 2.0 (the "License"); you may not use this file
- * except in compliance with the License. You may obtain a copy of
- * the License at http://www.apache.org/licenses/LICENSE-2.0 .
- -->
- <script:module xmlns:script="http://openoffice.org/2000/script" script:name="TutorialOpen" script:language="StarBasic">REM ***** BASIC *****
- Dim myOpenDialog As Object
- Dim oListBox As Object
- Dim files As Object
- Dim oUcb As Object
- Dim oListener As Object
- Sub TutorialOpenMain
- GlobalScope.BasicLibraries.LoadLibrary("Tools")
- myOpenDialog = LoadDialog("Tutorials","TutorialOpenDialog")
- init()
- myOpenDialog.Execute()
- End Sub
- Sub Init
- On Local Error Goto NOFILE
- myOpenDialog.Title = "Tutorials"
- oListBox = myOpenDialog.GetControl("ListBox")
- templatePath = GetPathSettings("Template",false, 0)
- Dim tutorialPath As String
- iPos = InStr(templatePath,"/")
- if(iPos > 0) Then
- tutorialPath = templatePath & "/tutorials"
- Else
- tutorialPath = templatePath & "\tutorials"
- End If
- oUcb = createUnoService("com.sun.star.ucb.SimpleFileAccess")
- files = oUcb.getFolderContents(tutorialPath,true)
- size = Ubound( files() )
- Dim tempFiles(size) As String
- tempCount = 0
- For iCount = 0 To size
- completPath = files(iCount)
- oDocInfo = CreateUnoService("com.sun.star.document.DocumentProperties")
- oDocInfo.Read(completPath)
- sDocTitle = oDocInfo.Title
- if(not isNull(sDocTitle) And len(sDocTitle) > 0) Then
- oListbox.addItem(sDocTitle,0)
- tempFiles(tempCount) = completPath
- tempCount = tempCount + 1
- End If
- Next iCount
- 'printdbgInfo oListbox
- size = oListbox.ItemCount - 1
- Dim tempFiles2(size) As String
- For iCount = 0 To size
- tempFiles2(iCount) = tempFiles(iCount)
- Next iCount
- files() = tempFiles2()
- Exit Sub
- NOFILE:
- If Err <> 0 Then
- Msgbox "No file found error!" & CHR(13) & "Path: ...\share\template\...\tutorials\"
- myOpenDialog.model.Open.enabled = False
- End If
- End Sub
- Sub ItemSelected(oEvent)
- On Local Error Goto NOFILE
- completPath = files(Ubound(files()) - oEvent.Selected)
- oTextField = myOpenDialog.GetControl("Label") 'TextField
- oTextField.setText("")
- Dim NoArgs() as new com.sun.star.beans.PropertyValue
- oDocInfo = CreateUnoService("com.sun.star.document.DocumentProperties")
- oDocInfo.Read(completPath)
- sDocDescription = oDocInfo.Description
- if(not isNull(sDocTitle) And len(sDocDescription) > 0) Then
- oTextField.setText(sDocDescription)
- Else
- oTextField.setText("Not Description!!!.")
- End If
- Exit Sub
- NOFILE:
- If Err <> 0 Then
- Msgbox "Open file error!"
- End If
- End Sub
- Sub OpenTutorial(aEvent)
- completPath = files(Ubound(files()) - oListBox.getSelectedItemPos())
- Dim Args(2) as new com.sun.star.beans.PropertyValue
- Args(1).Name = "MacroExecutionMode"
- Args(1).Value = com.sun.star.document.MacroExecMode.ALWAYS_EXECUTE
- Args(2).Name = "AsTemplate"
- Args(2).Value = true
- StarDesktop.LoadComponentFromURL(completPath,"_default",0, Args())
- myOpenDialog.endExecute()
- End Sub
- Sub Cancel(aEvent)
- myOpenDialog.endExecute()
- End Sub
- </script:module>
|