Public Const redactionExtensionName As String = "cleanAndValidate" Function initRedactionConfiguration() On Error Goto exceptionHandler Dim regFactory As Object Dim reg As Object Dim redactionProps As Object Dim props(2) As New com.sun.star.beans.PropertyValue regFactory = CreateUnoService("com.sun.star.ucb.Store") reg = regFactory.createPropertySetRegistry(redactionExtensionName) redactionProps = reg.openPropertySet(redactionExtensionName, TRUE) redactionProps.addProperty("complexity", 128, "user") exceptionHandler: Resume Next On Error Goto exceptionHandler2 redactionProps.addProperty("defaultTemplate", 128, "Статья.ott") exceptionHandler2: Resume Next initRedactionConfiguration = redactionProps End Function Private Sub setConfigFromDialog(dialog As Object) Dim config As Object config = initRedactionConfiguration() If dialog.getControl("CB_complexity").state = 1 Then config.setPropertyValue("complexity", "makerUp") Else config.setPropertyValue("complexity", "user") EndIf End Sub Private Sub loadConfigToDialog(dialog As Object) Dim config As Object config = initRedactionConfiguration() If config.getPropertyValue("complexity") = "makerUp" Then dialog.getControl("CB_complexity").state = 1 Else dialog.getControl("CB_complexity").state = 0 EndIf End Sub Private Sub configurationDialog Dim dialog As Object DialogLibraries.LoadLibrary("Redaction") dialog = CreateUnoDialog(DialogLibraries.Redaction.ConfigDialog) loadConfigToDialog(dialog) dialog.setVisible(true) Select Case dialog.Execute() Case 1 setConfigFromDialog(dialog) Case 0 End Select dialog.setVisible(false) dialog.dispose() Exit sub End Sub Private Sub quietStartDialog 'Globalscope.BasicLibraries.LoadLibrary( "MRILib" ) Dim dialog As Object DialogLibraries.LoadLibrary("Redaction") dialog = CreateUnoDialog(DialogLibraries.Redaction.StartQuietCleaning) Dim lang As String lang = GetStarOfficeLocale().Language Dim description As String Dim buttonNameOk As String Dim buttonNameStop As String Dim buttonNameLoad As String description = getTranslation(lang,"startQuietCleaningDescription") buttonNameOk = getTranslation(lang,"buttonOk") buttonNameStop = getTranslation(lang,"buttonStop") buttonNameLoad = getTranslation(lang,"buttonLoad") dialog.getControl("Description").setText(description) dialog.getControl("buttonOk").Label = buttonNameOk dialog.getControl("buttonStop").Label = buttonNameStop dialog.getControl("buttonLoad").Label = buttonNameLoad dialog.setVisible(true) Select Case dialog.Execute() Case 1 dialog.setVisible(false) dialog.dispose() quietCleaning Case 0 dialog.setVisible(false) dialog.dispose() End Select Exit sub End Sub Private Sub noStylesFileDialog 'Globalscope.BasicLibraries.LoadLibrary( "MRILib" ) Dim dialog As Object DialogLibraries.LoadLibrary("Redaction") dialog = CreateUnoDialog(DialogLibraries.Redaction.NoStyleFile) Dim lang As String lang = GetStarOfficeLocale().Language Dim description As String Dim buttonName As String description = getTranslation(lang,"noFileWithStylesFound") buttonName = getTranslation(lang,"buttonNameToSelectFileWithStyles") dialog.getControl("Description").setText(description) dialog.getControl("FileSelection").Label = buttonName dialog.setVisible(true) Select Case dialog.Execute() Case 1 setDeafultTemplate(selectedTemplate) Case 0 End Select dialog.setVisible(false) dialog.dispose() Exit sub End Sub Sub setDeafultTemplate() Dim selectedTemplate As String selectedTemplate = getFileURLDialog() If IsEmpty(selectedTemplate) Then Exit sub EndIf Dim fileName As String Dim config As Object config = initRedactionConfiguration() fileName = Dir(selectedTemplate) config.setPropertyValue("defaultTemplate",fileName) Dim templatePath As String templatePath = getTemplatePath() FileCopy(selectedTemplate, templatePath & "/" & fileName) End Sub Function getFileURLDialog() As String Dim oFilePicker As Object, oSimpleFileAccess As Object Dim oSettings As Object, oPathSettings As Object Dim oTextField As Object, oTextFieldModel As Object Dim sFileURL As String Dim sFiles As Variant oFilePicker = CreateUnoService( "com.sun.star.ui.dialogs.FilePicker" ) oFilePicker.AppendFilter( "All files (*.*)", "*.*" ) oFilePicker.AppendFilter( "Open Document Text", "*.odt;*.ott" ) oFilePicker.SetCurrentFilter( "Open Document Text" ) If sFileURL = "" Then oPathSettings = CreateUnoService( "com.sun.star.util.PathSettings" ) sFileURL = oPathSettings.Work End If REM set display directory oSimpleFileAccess = CreateUnoService( "com.sun.star.ucb.SimpleFileAccess" ) If oSimpleFileAccess.exists( sFileURL ) And oSimpleFileAccess.isFolder( sFileURL ) Then oFilePicker.setDisplayDirectory( sFileURL ) End If If oFilePicker.execute() Then sFiles = oFilePicker.getFiles() sFileURL = sFiles(0) If oSimpleFileAccess.exists( sFileURL ) Then getFileURLDialog = sFileURL Exit Function End If End If getFileURLDialog = "" End Function