Compare commits
44 commits
Author | SHA1 | Date | |
---|---|---|---|
1d95cee96c | |||
4d70244041 | |||
5e9a36bbfd | |||
7e8fd76cb3 | |||
3123de95c8 | |||
8bef4474ae | |||
907c483775 | |||
6100d5d40e | |||
535e91d860 | |||
c0ecae410c | |||
0736f72257 | |||
2fa3ce3c86 | |||
fd074a02ab | |||
c1d12fb739 | |||
bbe0157ea2 | |||
4c4b9221df | |||
d5b3b4c9e8 | |||
9e5a5efa59 | |||
003e1d4033 | |||
c98848aae4 | |||
0433a8423f | |||
52e00175a2 | |||
65dee0354c | |||
d0bba1db42 | |||
17dd694249 | |||
e06f55036f | |||
4fb5b3ccee | |||
c06cdfc25b | |||
6a0bc8412e | |||
ce738866ec | |||
cd9266e83d | |||
962a6fe83f | |||
7e77039620 | |||
42682e4331 | |||
3d07310e8a | |||
b7774aecfe | |||
015a1ff42c | |||
7c5aadcaad | |||
07ae3e7d9c | |||
d7924af005 | |||
fae0f0b494 | |||
9846e2933c | |||
2395f816e6 | |||
48b81a64d2 |
|
@ -115,7 +115,7 @@
|
|||
</prop>
|
||||
<node oor:name="UserDefinedImages">
|
||||
<prop oor:name="ImageBigURL">
|
||||
<value>%origin%/icons/clean.png</value>
|
||||
<value>%origin%/icons/clean.svg</value>
|
||||
</prop>
|
||||
</node>
|
||||
</node>
|
||||
|
@ -125,7 +125,7 @@
|
|||
</prop>
|
||||
<node oor:name="UserDefinedImages">
|
||||
<prop oor:name="ImageBigURL">
|
||||
<value>%origin%/icons/validate.png</value>
|
||||
<value>%origin%/icons/validate.svg</value>
|
||||
</prop>
|
||||
</node>
|
||||
</node>
|
||||
|
@ -135,7 +135,7 @@
|
|||
</prop>
|
||||
<node oor:name="UserDefinedImages">
|
||||
<prop oor:name="ImageBigURL">
|
||||
<value>%origin%/icons/report.png</value>
|
||||
<value>%origin%/icons/report.svg</value>
|
||||
</prop>
|
||||
</node>
|
||||
</node>
|
||||
|
|
|
@ -2,5 +2,6 @@
|
|||
<manifest:manifest>
|
||||
<manifest:file-entry manifest:full-path="Redaction/" manifest:media-type="application/vnd.sun.star.basic-library"/>
|
||||
<manifest:file-entry manifest:full-path="Addons.xcu" manifest:media-type="application/vnd.sun.star.configuration-data"/>
|
||||
<manifest:file-entry manifest:full-path="Templates.xcu" manifest:media-type="application/vnd.sun.star.configuration-data"/>
|
||||
<manifest:file-entry manifest:full-path="WriterWindowState.xcu" manifest:media-type="application/vnd.sun.star.configuration-data"/>
|
||||
</manifest:manifest>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Clean" script:language="StarBasic">Sub mark81
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Clean" script:language="StarBasic">Sub mark96
|
||||
|
||||
End Sub
|
||||
|
||||
|
@ -13,6 +13,9 @@ Sub cleanButton
|
|||
MsgBox(getTranslation("documentIsReadOnly"))
|
||||
Exit Sub
|
||||
EndIf
|
||||
If config.getPropertyValue("predefined_template") = "false" Then
|
||||
configureStyleFileDialog()
|
||||
EndIf
|
||||
If config.getPropertyValue("complexity") = "user" then
|
||||
quietStartDialog()
|
||||
Else
|
||||
|
@ -20,42 +23,46 @@ Sub cleanButton
|
|||
EndIf
|
||||
End Sub
|
||||
|
||||
Dim advancedCleaningDialog As Object
|
||||
|
||||
Private Sub makerUpMenu
|
||||
Dim dialog As Object
|
||||
DialogLibraries.LoadLibrary("Redaction")
|
||||
dialog = CreateUnoDialog(DialogLibraries.Redaction.CleaningDialog)
|
||||
|
||||
dialog.getControl("fontsInStyles").Label = getTranslation("advancedMenuReplaceFontsInStyles")
|
||||
dialog.getControl("symbolsConversion").Label = getTranslation("advancedMenuSymbolsConversion")
|
||||
dialog.getControl("cleanFormatting").Label = getTranslation("advancedMenuCleanFormatting")
|
||||
dialog.getControl("replaceWhiteBackground").Label = getTranslation("advancedMenuReplaceWhiteBackground")
|
||||
dialog.getControl("removeUnusedStyles").Label = getTranslation("advancedMenuRemoveUnusedStyles")
|
||||
dialog.getControl("removeLinks").Label = getTranslation("advancedMenuRemoveLinks")
|
||||
dialog.getControl("removeAllFields").Label = getTranslation("advancedMenuRemoveAllFields")
|
||||
dialog.getControl("removeBookmarks").Label = getTranslation("advancedMenuRemoveBookmarks")
|
||||
dialog.getControl("configTables").Label = getTranslation("advancedMenuConfigTables")
|
||||
dialog.getControl("configAnchors").Label = getTranslation("advancedMenuConfigAnchors")
|
||||
dialog.getControl("fixMistakes").Label = getTranslation("advancedMenuFixMistakes")
|
||||
dialog.getControl("fixDOI").Label = getTranslation("advancedMenuFixDOI")
|
||||
dialog.getControl("replaceNumHyphen").Label = getTranslation("replaceNumHyphen")
|
||||
dialog.getControl("removeInitPageBreak").Label = getTranslation("advancedMenuRemoveInitPageBreak")
|
||||
dialog.getControl("removePageStyles").Label = getTranslation("advancedMenuRemovePageStyles")
|
||||
dialog.getControl("loadStandardStyles").Label = getTranslation("advancedMenuLoadStandardStyles")
|
||||
dialog.getControl("removeManualPageBreaks").Label = getTranslation("advancedMenuRemoveManualPageBreaks")
|
||||
dialog.getControl("removeBasic").Label = getTranslation("advancedMenuRemoveBasic")
|
||||
dialog.getControl("resetChapterNumberingRules").Label = getTranslation("advancedMenuResetChapterNumberingRules")
|
||||
dialog.getControl("convertFontsToCharStyles").Label = getTranslation("advancedMenuconvertFontsToCharStyles")
|
||||
dialog.getControl("Cancel").Label = getTranslation("buttonCancel")
|
||||
dialog.getControl("OK").Label = getTranslation("buttonOK")
|
||||
dialog.getControl("buttonLoad").Label = getTranslation("buttonLoad")
|
||||
dialog.Title = getTranslation("advancedMenuDialogTitle")
|
||||
dialog.setVisible(true)
|
||||
Select Case dialog.Execute()
|
||||
advancedCleaningDialog = CreateUnoDialog(DialogLibraries.Redaction.CleaningDialog)
|
||||
advancedCleaningDialog.getControl("fontsInStyles").Label = getTranslation("advancedMenuReplaceFontsInStyles")
|
||||
advancedCleaningDialog.getControl("symbolsConversion").Label = getTranslation("advancedMenuSymbolsConversion")
|
||||
advancedCleaningDialog.getControl("cleanFormatting").Label = getTranslation("advancedMenuCleanFormatting")
|
||||
advancedCleaningDialog.getControl("replaceWhiteBackground").Label = getTranslation("advancedMenuReplaceWhiteBackground")
|
||||
advancedCleaningDialog.getControl("removeUnusedStyles").Label = getTranslation("advancedMenuRemoveUnusedStyles")
|
||||
advancedCleaningDialog.getControl("removeLinks").Label = getTranslation("advancedMenuRemoveLinks")
|
||||
advancedCleaningDialog.getControl("removeAllFields").Label = getTranslation("advancedMenuRemoveAllFields")
|
||||
advancedCleaningDialog.getControl("removeBookmarks").Label = getTranslation("advancedMenuRemoveBookmarks")
|
||||
advancedCleaningDialog.getControl("configTables").Label = getTranslation("advancedMenuConfigTables")
|
||||
advancedCleaningDialog.getControl("configAnchors").Label = getTranslation("advancedMenuConfigAnchors")
|
||||
advancedCleaningDialog.getControl("fixMistakes").Label = getTranslation("advancedMenuFixMistakes")
|
||||
advancedCleaningDialog.getControl("fixDOI").Label = getTranslation("advancedMenuFixDOI")
|
||||
advancedCleaningDialog.getControl("replaceNumHyphen").Label = getTranslation("replaceNumHyphen")
|
||||
advancedCleaningDialog.getControl("removeInitPageBreak").Label = getTranslation("advancedMenuRemoveInitPageBreak")
|
||||
advancedCleaningDialog.getControl("removePageStyles").Label = getTranslation("advancedMenuRemovePageStyles")
|
||||
advancedCleaningDialog.getControl("loadStandardStyles").Label = getTranslation("advancedMenuLoadStandardStyles")
|
||||
advancedCleaningDialog.getControl("removeManualPageBreaks").Label = getTranslation("advancedMenuRemoveManualPageBreaks")
|
||||
advancedCleaningDialog.getControl("removeBasic").Label = getTranslation("advancedMenuRemoveBasic")
|
||||
advancedCleaningDialog.getControl("resetChapterNumberingRules").Label = getTranslation("advancedMenuResetChapterNumberingRules")
|
||||
advancedCleaningDialog.getControl("convertFontsToCharStyles").Label = getTranslation("advancedMenuconvertFontsToCharStyles")
|
||||
advancedCleaningDialog.getControl("fixBrokenCharBackTransparent").Label = getTranslation("fixBrokenCharBackTransparentMenuItem")
|
||||
advancedCleaningDialog.getControl("removeNotTransparentBackgrounds").Label = getTranslation("removeNotTransparentBackgrounds")
|
||||
advancedCleaningDialog.getControl("fixDiacriticKerning").Label = getTranslation("fixDiacriticKerning")
|
||||
advancedCleaningDialog.getControl("Cancel").Label = getTranslation("buttonCancel")
|
||||
advancedCleaningDialog.getControl("OK").Label = getTranslation("buttonOK")
|
||||
advancedCleaningDialog.getControl("buttonLoad").Label = getTranslation("buttonLoad")
|
||||
advancedCleaningDialog.Title = getTranslation("advancedMenuDialogTitle")
|
||||
setAdvancedDialogDescription()
|
||||
advancedCleaningDialog.setVisible(true)
|
||||
Select Case advancedCleaningDialog.Execute()
|
||||
Case 1
|
||||
cleanAccordingTo(dialog)
|
||||
cleanAccordingTo(advancedCleaningDialog)
|
||||
Case 0
|
||||
End Select
|
||||
dialog.dispose()
|
||||
advancedCleaningDialog.dispose()
|
||||
Exit sub
|
||||
End Sub
|
||||
|
||||
|
@ -152,6 +159,15 @@ Private Sub cleanAccordingTo(dialog As Object)
|
|||
If dialog.getControl("convertFontsToCharStyles").state = 1 Then
|
||||
convertFontsToCharStyles()
|
||||
EndIf
|
||||
If dialog.getControl("fixBrokenCharBackTransparent").state = 1 Then
|
||||
fixBrokenCharBackTransparent()
|
||||
EndIf
|
||||
If dialog.getControl("removeNotTransparentBackgrounds").state = 1 Then
|
||||
fixColoredBackgroundInDoc()
|
||||
EndIf
|
||||
If dialog.getControl("fixDiacriticKerning").state = 1 Then
|
||||
fixDiacriticKerning()
|
||||
EndIf
|
||||
|
||||
statusIndicator.end()
|
||||
saveAndreload()
|
||||
|
@ -190,6 +206,8 @@ Private Sub quietCleaning
|
|||
saveAndreload()
|
||||
statusIndicator = ThisComponent.getCurrentController.statusIndicator
|
||||
unicodeSymbolsConversion
|
||||
statusIndicator.Start(getTranslation("statusFixingDiacriticCharactersKerning"),100)
|
||||
fixDiacriticKerning
|
||||
statusIndicator.Start(getTranslation("statusCleaningManualFormatting"),100)
|
||||
cleanFormatting
|
||||
statusIndicator.Start(getTranslation("statusReplaceWhiteBackground"),100)
|
||||
|
@ -316,12 +334,18 @@ Private Sub unicodeSymbolsConversion
|
|||
'Extended latin-1 0080—00FF
|
||||
'Cyrillic unicode block range \u0400-\u04FF
|
||||
'Basic Latin \u0020-\u007E
|
||||
'Combining diacritical marks 0301 0304 0323 032e 0331 035f
|
||||
'Combining diacritical marks 0301 0304 0303 0323 032e 0331 035f
|
||||
combiningDiacritic_Astra = "\u0301\u0303\u0304\u0308\u0323\u032e\u0331\u0341\u035f"
|
||||
Dim extendedLatinA_Astra As String
|
||||
extendedLatinA_Astra = "\u1e15\u1e17\u1e53\u0129\u0169"
|
||||
'
|
||||
'
|
||||
'
|
||||
'General Punctuation \u2000-\u206f
|
||||
'Latin Extended A \u0100-\u017f
|
||||
'\u02bb Modifier Letter Turned Comma is in IPH Astra
|
||||
' unicodeConversionEverywhere("[\u0020-\u007F]+",RAtts)
|
||||
unicodeConversionEverywhere("[\u0020-\u007f\u0080-\u00ff\u0400-\u04ff\u2000-\u206f\u2100-\u214f\u0301\u0304\u0323\u032e\u0331\u0341\u035f\u02bb\u0100-\u017f]+",RAtts)
|
||||
unicodeConversionEverywhere("[\u0020-\u007f\u0080-\u00ff\u0400-\u04ff\u2000-\u206f\u2100-\u214f\u02bb\u0100-\u017f" & combiningDiacritic_Astra & extendedLatinA_Astra &"]+",RAtts)
|
||||
'Arabic Scheherazade
|
||||
'Arabic Presentation Forms-A fb50-fdff
|
||||
'Arabic Presentation Forms-B fe70-feff
|
||||
|
@ -446,15 +470,24 @@ Sub removeAllFields()
|
|||
field = fieldEnum.nextElement()
|
||||
field.dispose()
|
||||
Wend
|
||||
End sub
|
||||
End Sub
|
||||
|
||||
Public Const RX_Greek_letters = "\u0388-\u03ce"
|
||||
Public Const RX_Latin_up_alphabet = "\u0041-\u005a"
|
||||
Public Const RX_Latin_low_alphabet = "\u0061-\u007a"
|
||||
Public Const RX_Cyrillic_alphabet = "\u0410-\u044f"
|
||||
Public Const RX_Comma = "\u002c"
|
||||
Public Const RX_Digits = "\u0030-\u0039"
|
||||
Public Const RX_Roman_numbers = "MDCLXVI"
|
||||
Public Const RX_Letters_Dash = "[" & RX_Latin_up_alphabet & RX_Latin_low_alphabet & RX_Cyrillic_alphabet & RX_Greek_letters & "]"
|
||||
Public Const RX_Letters = "[" & RX_Latin_up_alphabet & RX_Latin_low_alphabet & RX_Cyrillic_alphabet & RX_Greek_letters & "]"
|
||||
|
||||
Private Sub fixFrequentMistakes
|
||||
Dim config As Object
|
||||
config = initRedactionConfiguration()
|
||||
Dim NBSP As String
|
||||
Dim space As String
|
||||
Dim latinPlusCyrillicLettersRegExp As String
|
||||
latinPlusCyrillicLettersRegExp = "[\u0041-\u005a\u0061-\u007a\u0410-\u044f]"
|
||||
|
||||
NBSP = " "
|
||||
space = " "
|
||||
'Не должно быть символов табуляции
|
||||
|
@ -471,19 +504,21 @@ Private Sub fixFrequentMistakes
|
|||
AskAndReplace("[:space:]+(?=[\.,;:?!\)\]\}»¡¿”’])","")
|
||||
'Не должно быть пробелов после скобок [({ и кавычек «„
|
||||
AskAndReplace("(?<=[\(\[\{«„])[:space:]","")
|
||||
'Между буквами среднее тире должно обрамляться пробелами
|
||||
AskAndReplace("(?<=" & latinPlusCyrillicLettersRegExp & ")–(?=" & latinPlusCyrillicLettersRegExp & ")",NBSP & "–" & NBSP)
|
||||
'Между буквами дефис-минус, цифровое тире и длинное тире заменяется на среднее тире
|
||||
AskAndReplace("(?<=" & latinPlusCyrillicLettersRegExp & "[:space:])[-‒—−](?=[:space:]" & latinPlusCyrillicLettersRegExp & ")","–")
|
||||
'Между буквами среднее или длинное тире должно быть замененено на среднее и обрамлено пробелами
|
||||
AskAndReplace("(?<=" & RX_Letters_Dash & ")[—–]+(?=.)",NBSP & "–" & NBSP)
|
||||
AskAndReplace("(?<=.)[—–]+(?=" & RX_Letters_Dash & ")",NBSP & "–" & NBSP)
|
||||
'Между буквами дефисы-минусы, цифровые тире, средние тире и длинные тире заменяются на одно среднее тире
|
||||
AskAndReplace("(?<=" & RX_Letters_Dash & "[:space:])[-‒—−–]+(?=[:space:].)","–")
|
||||
AskAndReplace("(?<=.[:space:])[-‒—−–]+(?=[:space:]" & RX_Letters_Dash & ")","–")
|
||||
'Между двумя цифрами и тире не долнжо быть пробелов. А также тире должно быть цифровым.
|
||||
'Также проверяем, что перед искомым тире нет DOI
|
||||
'''''AskAndReplace("(?<!DOI[0-9. /XVI:-‒–—−-]{1,50})(?<=[:digit:])(?:[:space:])?[-‒–—−](?:[:space:])?(?=[:digit:])","‒")
|
||||
'Между двумя римскими цифрами и тире между ними не долнжо быть пробелов. А также тире должно быть средним
|
||||
AskAndReplace("(?<=[MDCLXVI])(?:[:space:])?[-‒–—−](?:[:space:])?(?=[MDCLXVI])","–")
|
||||
AskAndReplace("(?<=[" & RX_Roman_numbers & "])(?:[:space:])?[-‒–—−]+(?:[:space:])?(?=[" & RX_Roman_numbers & "])","–")
|
||||
'Между буквой и угловой открывающейся скобкой должен быть пробел
|
||||
AskAndReplace("(?<=" & latinPlusCyrillicLettersRegExp & ")<(?=…>)",space & "<")
|
||||
AskAndReplace("(?<=" & RX_Letters & ")<(?=…>)",space & "<")
|
||||
'Между угловой закрывающейся скобкой и буквой должен быть пробел
|
||||
AskAndReplace("(?<=<…)>(?=" & latinPlusCyrillicLettersRegExp & ")",">" & space)
|
||||
AskAndReplace("(?<=<…)>(?=" & RX_Letters & ")",">" & space)
|
||||
|
||||
If config.getPropertyValue("fixes_russian_iph") = "true" Then
|
||||
'между N. Y. не должно быть пробела
|
||||
|
@ -522,17 +557,17 @@ Private Sub loadArticleStyles
|
|||
Dim dispatcher As Object
|
||||
Dim filePath As String
|
||||
Dim fileTest As Object
|
||||
Dim fileName As String
|
||||
Dim predefined As String
|
||||
Dim aArgs(0) As New com.sun.star.beans.PropertyValue
|
||||
Dim config As Object
|
||||
config = initRedactionConfiguration()
|
||||
fileName = config.getPropertyValue("defaultTemplate")
|
||||
filePath = getTemplatePath() & "/" & fileName
|
||||
predefined = config.getPropertyValue("predefined_template")
|
||||
filePath = getTemplateFile(predefined)
|
||||
fileTest = CreateUnoService("com.sun.star.ucb.SimpleFileAccess")
|
||||
If NOT fileTest.exists(filePath) Then
|
||||
noStylesFileDialog()
|
||||
fileName = config.getPropertyValue("defaultTemplate")
|
||||
filePath = getTemplatePath() & "/" & fileName
|
||||
configureStyleFileDialog()
|
||||
predefined = config.getPropertyValue("predefined_template")
|
||||
filePath = getTemplateFile(predefined)
|
||||
If NOT fileTest.exists(filePath) Then
|
||||
'MsgBox "Файл стилей " & fileName & " не добавлен в Мои шаблоны. Не могу загрузить стили в текущий файл."
|
||||
Exit Sub
|
||||
|
@ -1982,4 +2017,173 @@ Sub replaceNumHyphenRegExp
|
|||
AskAndReplace("(?<!DOI[0-9. /XVI:-‒–—−-]{1,50})(?<=[:digit:])(?:[:space:])?[-‒–—−](?:[:space:])?(?=[:digit:])","‒")
|
||||
End sub
|
||||
|
||||
Sub fixBrokenCharBackTransparent
|
||||
Dim footNotes As Object
|
||||
Dim endNotes As Object
|
||||
Dim i As Integer
|
||||
Dim oStyles As Object
|
||||
Dim pageStyles As Object
|
||||
Dim pageStyle As Object
|
||||
footNotes = thisComponent.footNotes
|
||||
For i = 0 to footNotes.Count -1
|
||||
setDefaultBackColorInText(footNotes.getByIndex(i).Text)
|
||||
Next i
|
||||
endNotes = thisComponent.footNotes
|
||||
For i = 0 to footNotes.Count -1
|
||||
setDefaultBackColorInText(endNotes.getByIndex(i).Text)
|
||||
Next i
|
||||
oStyles = ThisComponent.StyleFamilies
|
||||
pageStyles = oStyles.getByName(oStyles.elementNames(2))
|
||||
For i = 0 to pageStyles.Count -1
|
||||
pageStyle = pageStyles.getByIndex(i)
|
||||
If Not IsEmpty(pageStyle.FooterText) Then
|
||||
setDefaultBackColorInText(pageStyle.FooterText)
|
||||
EndIf
|
||||
If Not IsEmpty(pageStyle.FooterTextFirst) Then
|
||||
setDefaultBackColorInText(pageStyle.FooterTextFirst)
|
||||
EndIf
|
||||
If Not IsEmpty(pageStyle.FooterTextRight) Then
|
||||
setDefaultBackColorInText(pageStyle.FooterTextRight)
|
||||
EndIf
|
||||
If Not IsEmpty(pageStyle.FooterTextLeft) Then
|
||||
setDefaultBackColorInText(pageStyle.FooterTextLeft)
|
||||
EndIf
|
||||
If Not IsEmpty(pageStyle.HeaderText) Then
|
||||
setDefaultBackColorInText(pageStyle.HeaderText)
|
||||
EndIf
|
||||
If Not IsEmpty(pageStyle.HeaderTextFirst) Then
|
||||
setDefaultBackColorInText(pageStyle.HeaderTextFirst)
|
||||
EndIf
|
||||
If Not IsEmpty(pageStyle.HeaderTextRight) Then
|
||||
setDefaultBackColorInText(pageStyle.HeaderTextRight)
|
||||
EndIf
|
||||
If Not IsEmpty(pageStyle.HeaderTextLeft) Then
|
||||
setDefaultBackColorInText(pageStyle.HeaderTextLeft)
|
||||
EndIf
|
||||
Next i
|
||||
setDefaultBackColorInText(ThisComponent.Text)
|
||||
End Sub
|
||||
|
||||
Sub setDefaultBackColorInText(oText As Object)
|
||||
If IsMissing(oText) Then
|
||||
Exit sub
|
||||
End If
|
||||
Dim enum1Element As Object
|
||||
Dim enum1 As Object
|
||||
Dim enum2 As Object
|
||||
Dim thisPortion As Object
|
||||
Dim footnoteText As Object
|
||||
Dim label As String
|
||||
Dim labelNum As Integer
|
||||
Dim i As Integer
|
||||
Dim count As Integer
|
||||
Dim cell As Object
|
||||
Dim cellText As Object
|
||||
|
||||
enum1 = oText.Text.createEnumeration
|
||||
While enum1.hasMoreElements
|
||||
enum1Element = enum1.nextElement
|
||||
If enum1Element.supportsService("com.sun.star.text.Paragraph") Then
|
||||
If enum1Element.CharBackTransparent = false Then
|
||||
enum1Element.setPropertyToDefault("CharBackTransparent")
|
||||
EndIf
|
||||
ElseIf enum1Element.supportsService("com.sun.star.text.TextTable") Then
|
||||
cellNames = enum1Element.cellNames
|
||||
For i = LBound(cellNames) To Ubound(cellNames)
|
||||
cell = enum1Element.getCellByName(cellNames(i))
|
||||
cellText = cell.getText()
|
||||
setDefaultBackColorInText(cellText)
|
||||
Next i
|
||||
EndIf
|
||||
Wend
|
||||
End Sub
|
||||
|
||||
|
||||
Function fixColoredBackgroundInDoc() As Boolean
|
||||
Dim founds As Object
|
||||
Dim sDesc As Object
|
||||
Dim i As Long
|
||||
Dim foundObjects() As Object
|
||||
Dim SrchAttributes(0) as new com.sun.star.beans.PropertyValue
|
||||
SrchAttributes(0).Name = "CharBackTransparent"
|
||||
SrchAttributes(0).Value = False
|
||||
sDesc = Thiscomponent.createSearchDescriptor()
|
||||
sDesc.SearchAll = true
|
||||
sDesc.ValueSearch = false
|
||||
sDesc.SearchRegularExpression = true
|
||||
sDesc.searchStyles = true
|
||||
sDesc.SetSearchAttributes(SrchAttributes())
|
||||
founds = Thiscomponent.findAll(sDesc)
|
||||
If founds.count <> 0 Then
|
||||
foundObjects = convertXIndexAccessToArray(founds)
|
||||
For i = LBound(foundObjects) To UBound(foundObjects)
|
||||
foundObjects(i).CharBackTransparent = false
|
||||
foundObjects(i).CharBackColor = -1
|
||||
Next i
|
||||
EndIf
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
Sub fixDiacriticKerning
|
||||
Dim oSearch As Object
|
||||
Dim oFound As Object
|
||||
Dim oPara As Object
|
||||
oSearch = ThisComponent.createSearchDescriptor()
|
||||
oSearch.SearchString = "[\u0300-\u036F]"
|
||||
oSearch.SearchRegularExpression=True
|
||||
oSearch.searchAll=True
|
||||
oFound = ThisComponent.findFirst(oSearch)
|
||||
Do While Not IsNull(oFound)
|
||||
oPara = oFound.TextParagraph
|
||||
fixDiacriticKerningInPara(oPara)
|
||||
oFound = ThisComponent.findNext(oFound.End, oSearch)
|
||||
Loop
|
||||
End Sub
|
||||
|
||||
Sub fixDiacriticKerningInPara(oPara As Object)
|
||||
Dim paraEnum As Object
|
||||
Dim portion As Object
|
||||
Dim prevPortion As Object
|
||||
paraEnum = oPara.createEnumeration
|
||||
If paraEnum.hasMoreElements Then
|
||||
prevPortion = paraEnum.nextElement
|
||||
While paraEnum.hasMoreElements
|
||||
portion = paraEnum.nextElement
|
||||
While isFirstCharDiacritic(portion)
|
||||
moveFirstCharacter(portion, prevPortion)
|
||||
Wend
|
||||
prevPortion = portion
|
||||
Wend
|
||||
EndIf
|
||||
End Sub
|
||||
|
||||
Function isFirstCharDiacritic(portion As Object) As Boolean
|
||||
isFirstCharDiacritic = false
|
||||
Dim portionText As String
|
||||
Dim diaLowBound As Long
|
||||
Dim diaHighBound As Long
|
||||
Dim charNum As Long
|
||||
diaLowBound = 768
|
||||
diaHighBound = 879
|
||||
portionText = portion.String
|
||||
If Len(portionText) = 0 Then
|
||||
Exit Function
|
||||
EndIf
|
||||
charNum = Asc(portionText)
|
||||
If charNum >= diaLowBound And charNum <= diaHighBound Then
|
||||
isFirstCharDiacritic = true
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
Sub moveFirstCharacter(portion As Object, prevPortion As Object)
|
||||
Dim prevEnd As Object
|
||||
Dim nextStart As Object
|
||||
prevEnd = prevPortion.getEnd()
|
||||
prevEnd.String = Left(portion.String,1)
|
||||
nextStart = portion.Text.createTextCursorByRange(portion.Start)
|
||||
nextStart.goRight(1,true)
|
||||
nextStart.setString("")
|
||||
End Sub
|
||||
|
||||
</script:module>
|
|
@ -1,32 +1,36 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE dlg:window PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "dialog.dtd">
|
||||
<dlg:window xmlns:dlg="http://openoffice.org/2000/dialog" xmlns:script="http://openoffice.org/2000/script" dlg:id="CleaningDialog" dlg:left="107" dlg:top="22" dlg:width="237" dlg:height="230" dlg:help-text="&21.CleaningDialog.HelpText" dlg:closeable="true" dlg:moveable="true" dlg:title="&22.CleaningDialog.Title">
|
||||
<dlg:window xmlns:dlg="http://openoffice.org/2000/dialog" xmlns:script="http://openoffice.org/2000/script" dlg:id="CleaningDialog" dlg:left="107" dlg:top="22" dlg:width="237" dlg:height="285" dlg:help-text="&21.CleaningDialog.HelpText" dlg:closeable="true" dlg:moveable="true" dlg:title="&22.CleaningDialog.Title">
|
||||
<dlg:bulletinboard>
|
||||
<dlg:button dlg:id="Cancel" dlg:tab-index="0" dlg:left="28" dlg:top="215" dlg:width="40" dlg:height="12" dlg:value="Отмена" dlg:button-type="cancel"/>
|
||||
<dlg:button dlg:id="CommandButton1" dlg:tab-index="1" dlg:left="24" dlg:top="170" dlg:width="2" dlg:height="0" dlg:value="CommandButton1"/>
|
||||
<dlg:button dlg:id="OK" dlg:tab-index="2" dlg:left="92" dlg:top="215" dlg:width="40" dlg:height="12" dlg:value="OK" dlg:button-type="ok"/>
|
||||
<dlg:button dlg:id="Cancel" dlg:tab-index="0" dlg:left="28" dlg:top="271" dlg:width="40" dlg:height="12" dlg:value="Отмена" dlg:button-type="cancel"/>
|
||||
<dlg:button dlg:id="CommandButton1" dlg:tab-index="1" dlg:left="24" dlg:top="180" dlg:width="2" dlg:height="0" dlg:value="CommandButton1"/>
|
||||
<dlg:button dlg:id="OK" dlg:tab-index="2" dlg:left="92" dlg:top="271" dlg:width="40" dlg:height="12" dlg:value="OK" dlg:button-type="ok"/>
|
||||
<dlg:checkbox dlg:id="fontsInStyles" dlg:tab-index="3" dlg:left="11" dlg:top="10" dlg:width="218" dlg:height="7" dlg:value="Заменить названия шрифтов в стилях" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removeLinks" dlg:tab-index="6" dlg:left="11" dlg:top="50" dlg:width="218" dlg:height="7" dlg:value="Удалить гиперссылки" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removeLinks" dlg:tab-index="6" dlg:left="11" dlg:top="60" dlg:width="218" dlg:height="7" dlg:value="Удалить гиперссылки" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="cleanFormatting" dlg:tab-index="5" dlg:left="11" dlg:top="30" dlg:width="218" dlg:height="7" dlg:value="Очистить форматирование" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removeBookmarks" dlg:tab-index="7" dlg:left="11" dlg:top="60" dlg:width="218" dlg:height="7" dlg:value="Удалить закладки" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="configTables" dlg:tab-index="8" dlg:left="11" dlg:top="70" dlg:width="218" dlg:height="7" dlg:value="Настроить свойства таблиц" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="configAnchors" dlg:tab-index="9" dlg:left="11" dlg:top="80" dlg:width="218" dlg:height="7" dlg:value="Настроить привязки изображений" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="fixMistakes" dlg:tab-index="10" dlg:left="11" dlg:top="90" dlg:width="218" dlg:height="7" dlg:value="Исправить часто встречающиеся ошибки набора" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removeInitPageBreak" dlg:tab-index="11" dlg:left="11" dlg:top="110" dlg:width="218" dlg:height="7" dlg:value="Удалить разрыв страницы в начале документа" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removePageStyles" dlg:tab-index="12" dlg:left="11" dlg:top="120" dlg:width="218" dlg:height="7" dlg:value="Удалить пользовательские стили страниц" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="loadStandardStyles" dlg:tab-index="13" dlg:left="11" dlg:top="130" dlg:width="218" dlg:height="7" dlg:value="Загрузить стили страниц из шаблона Статья.ott" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removeBookmarks" dlg:tab-index="7" dlg:left="11" dlg:top="70" dlg:width="218" dlg:height="7" dlg:value="Удалить закладки" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="configTables" dlg:tab-index="8" dlg:left="11" dlg:top="80" dlg:width="218" dlg:height="7" dlg:value="Настроить свойства таблиц" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="configAnchors" dlg:tab-index="9" dlg:left="11" dlg:top="90" dlg:width="218" dlg:height="7" dlg:value="Настроить привязки изображений" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="fixMistakes" dlg:tab-index="10" dlg:left="11" dlg:top="100" dlg:width="218" dlg:height="7" dlg:value="Исправить часто встречающиеся ошибки набора" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removeInitPageBreak" dlg:tab-index="11" dlg:left="11" dlg:top="120" dlg:width="218" dlg:height="7" dlg:value="Удалить разрыв страницы в начале документа" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removePageStyles" dlg:tab-index="12" dlg:left="11" dlg:top="130" dlg:width="218" dlg:height="7" dlg:value="Удалить пользовательские стили страниц" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="loadStandardStyles" dlg:tab-index="13" dlg:left="11" dlg:top="140" dlg:width="218" dlg:height="7" dlg:value="Загрузить стили страниц из шаблона Статья.ott" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="symbolsConversion" dlg:tab-index="4" dlg:left="11" dlg:top="20" dlg:width="218" dlg:height="7" dlg:value="Произвести конвертацию символов" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removeUnusedStyles" dlg:tab-index="14" dlg:left="11" dlg:top="140" dlg:width="218" dlg:height="7" dlg:value="Удалить неиспользуемые стили" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removeManualPageBreaks" dlg:tab-index="15" dlg:left="11" dlg:top="150" dlg:width="218" dlg:height="7" dlg:value="Удалить все разрывы страниц" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removeUnusedStyles" dlg:tab-index="14" dlg:left="11" dlg:top="150" dlg:width="218" dlg:height="7" dlg:value="Удалить неиспользуемые стили" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removeManualPageBreaks" dlg:tab-index="15" dlg:left="11" dlg:top="160" dlg:width="218" dlg:height="7" dlg:value="Удалить все разрывы страниц" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="replaceWhiteBackground" dlg:tab-index="16" dlg:left="11" dlg:top="40" dlg:width="218" dlg:height="7" dlg:value="Заменить белый фон символов на прозрачный" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removeBasic" dlg:tab-index="17" dlg:left="11" dlg:top="160" dlg:width="218" dlg:height="7" dlg:value="Удалить макросы" dlg:checked="false"/>
|
||||
<dlg:button dlg:id="buttonLoad" dlg:tab-index="18" dlg:left="158" dlg:top="215" dlg:width="52" dlg:height="12" dlg:value="loadTemplate">
|
||||
<script:event script:event-name="on-performaction" script:macro-name="vnd.sun.star.script:Redaction.Configuration.setDeafultTemplate?language=Basic&location=application" script:language="Script"/>
|
||||
<dlg:checkbox dlg:id="removeBasic" dlg:tab-index="17" dlg:left="11" dlg:top="170" dlg:width="218" dlg:height="7" dlg:value="Удалить макросы" dlg:checked="false"/>
|
||||
<dlg:button dlg:id="buttonLoad" dlg:tab-index="18" dlg:left="158" dlg:top="271" dlg:width="65" dlg:height="12" dlg:value="loadTemplate">
|
||||
<script:event script:event-name="on-performaction" script:macro-name="vnd.sun.star.script:Redaction.Configuration.configureStyleFileDialog?language=Basic&location=application" script:language="Script"/>
|
||||
</dlg:button>
|
||||
<dlg:checkbox dlg:id="removeAllFields" dlg:tab-index="19" dlg:left="11" dlg:top="170" dlg:width="218" dlg:height="7" dlg:value="Удалить все поля" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="fixDOI" dlg:tab-index="20" dlg:left="11" dlg:top="100" dlg:width="218" dlg:height="7" dlg:value="Исправить DOI" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="resetChapterNumberingRules" dlg:tab-index="21" dlg:left="11" dlg:top="180" dlg:width="218" dlg:height="7" dlg:value="Сбросить настройки нумерации глав" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="replaceNumHyphen" dlg:tab-index="22" dlg:left="11" dlg:top="190" dlg:width="218" dlg:height="7" dlg:value="Исправить тире между цифрами" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="convertFontsToCharStyles" dlg:tab-index="23" dlg:left="11" dlg:top="200" dlg:width="218" dlg:height="7" dlg:value="Конвертировать шрифты в стили символов" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removeAllFields" dlg:tab-index="19" dlg:left="11" dlg:top="180" dlg:width="218" dlg:height="7" dlg:value="Удалить все поля" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="fixDOI" dlg:tab-index="20" dlg:left="11" dlg:top="110" dlg:width="218" dlg:height="7" dlg:value="Исправить DOI" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="resetChapterNumberingRules" dlg:tab-index="21" dlg:left="11" dlg:top="190" dlg:width="218" dlg:height="7" dlg:value="Сбросить настройки нумерации глав" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="replaceNumHyphen" dlg:tab-index="22" dlg:left="11" dlg:top="200" dlg:width="218" dlg:height="7" dlg:value="Исправить тире между цифрами" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="convertFontsToCharStyles" dlg:tab-index="23" dlg:left="11" dlg:top="210" dlg:width="218" dlg:height="7" dlg:value="Конвертировать шрифты в стили символов" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="fixBrokenCharBackTransparent" dlg:tab-index="24" dlg:left="11" dlg:top="220" dlg:width="218" dlg:height="7" dlg:value="fixBrokenCharBackTransparent" dlg:checked="false"/>
|
||||
<dlg:checkbox dlg:id="removeNotTransparentBackgrounds" dlg:tab-index="25" dlg:left="11" dlg:top="50" dlg:width="218" dlg:height="7" dlg:value="Удалить непрозрачные фоны в тексте" dlg:checked="false"/>
|
||||
<dlg:text dlg:id="description" dlg:tab-index="26" dlg:left="11" dlg:top="251" dlg:width="217" dlg:height="16" dlg:value="Label1" dlg:multiline="true"/>
|
||||
<dlg:checkbox dlg:id="fixDiacriticKerning" dlg:tab-index="27" dlg:left="11" dlg:top="230" dlg:width="218" dlg:height="7" dlg:value="Fix diacritic kerning" dlg:checked="false"/>
|
||||
</dlg:bulletinboard>
|
||||
</dlg:window>
|
|
@ -1,7 +1,23 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Configuration" script:language="StarBasic" script:moduleType="normal">Public Const redactionExtensionName As String = "cleanAndValidate"
|
||||
Public Const redactionExtensionVersion = "0.9.28"
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Configuration" script:language="StarBasic" script:moduleType="normal">Public Const redactionExtensionName = "cleanAndValidate"
|
||||
Public Const redactionExtensionVersion = "0.10.11"
|
||||
Public Const template_name_monography = "Монография"
|
||||
Public Const template_name_pj = "Философский журнал"
|
||||
Public Const template_name_pq = "Вопросы философии"
|
||||
Public Const template_name_hp = "История философии"
|
||||
Public Const template_name_hpe = "Историко-философский ежегодник"
|
||||
Public Const template_name_pr = "Философия религии"
|
||||
Public Const template_name_fnit = "Философия науки и техники"
|
||||
Public Const template_name_pa = "Философская антропология"
|
||||
Public Const template_name_pcr = "Проблемы цивилизационного развития"
|
||||
Public Const template_name_eifn = "Эпистемология и философия науки"
|
||||
Public Const template_name_et = "Этическая мысль"
|
||||
Public Const template_name_ephe = "Электронная философская энциклопедия"
|
||||
Public Const template_name_iph_big = "Большой формат издания"
|
||||
Public Const template_manual = "custom_selected_template"
|
||||
Public Const articles_path = "/templates/articles/"
|
||||
|
||||
Function initRedactionConfiguration()
|
||||
On Error Goto exceptionHandler
|
||||
Dim regFactory As Object
|
||||
|
@ -21,6 +37,9 @@ Function initRedactionConfiguration()
|
|||
EndIf
|
||||
If Not propSetInfo.hasPropertyByName("fixes_russian_iph") Then
|
||||
redactionProps.addProperty("fixes_russian_iph", 128, "true")
|
||||
EndIf
|
||||
If Not propSetInfo.hasPropertyByName("predefined_template") Then
|
||||
redactionProps.addProperty("predefined_template", 128, "false")
|
||||
EndIf
|
||||
If Not propSetInfo.hasPropertyByName("complexity") Then
|
||||
redactionProps.addProperty("complexity", 128, "user")
|
||||
|
@ -30,7 +49,10 @@ Function initRedactionConfiguration()
|
|||
On Error Goto exceptionHandler2
|
||||
If Not propSetInfo.hasPropertyByName("defaultTemplate") Then
|
||||
redactionProps.addProperty("defaultTemplate", 128, "Статья.ott")
|
||||
EndIf
|
||||
EndIf
|
||||
If Not propSetInfo.hasPropertyByName("predefined_template") Then
|
||||
redactionProps.addProperty("predefined_template", 128, "false")
|
||||
EndIf
|
||||
exceptionHandler2:
|
||||
Resume Next
|
||||
initRedactionConfiguration = redactionProps
|
||||
|
@ -104,71 +126,152 @@ Private Sub configurationDialog
|
|||
Exit sub
|
||||
End Sub
|
||||
|
||||
Dim queitCleaningDialog As Object
|
||||
|
||||
Private Sub quietStartDialog
|
||||
Dim dialog As Object
|
||||
DialogLibraries.LoadLibrary("Redaction")
|
||||
dialog = CreateUnoDialog(DialogLibraries.Redaction.StartQuietCleaning)
|
||||
Dim description As String
|
||||
queitCleaningDialog = CreateUnoDialog(DialogLibraries.Redaction.StartQuietCleaning)
|
||||
|
||||
Dim buttonNameOk As String
|
||||
Dim buttonNameStop As String
|
||||
Dim buttonNameLoad As String
|
||||
Dim dialogTitle As String
|
||||
description = getTranslation("startQuietCleaningDescription")
|
||||
buttonNameOk = getTranslation("buttonYes")
|
||||
buttonNameStop = getTranslation("buttonStop")
|
||||
buttonNameLoad = getTranslation("buttonLoad")
|
||||
dialogTitle = getTranslation("quietStartCleaningTitle")
|
||||
dialog.Title = dialogTitle
|
||||
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()
|
||||
queitCleaningDialog.Title = dialogTitle
|
||||
setQuietDialogDescription()
|
||||
queitCleaningDialog.getControl("buttonOk").Label = buttonNameOk
|
||||
queitCleaningDialog.getControl("buttonStop").Label = buttonNameStop
|
||||
queitCleaningDialog.getControl("buttonLoad").Label = buttonNameLoad
|
||||
queitCleaningDialog.setVisible(true)
|
||||
Select Case queitCleaningDialog.Execute()
|
||||
Case 1
|
||||
dialog.setVisible(false)
|
||||
dialog.dispose()
|
||||
queitCleaningDialog.setVisible(false)
|
||||
queitCleaningDialog.dispose()
|
||||
quietCleaning
|
||||
Case 0
|
||||
dialog.setVisible(false)
|
||||
dialog.dispose()
|
||||
queitCleaningDialog.setVisible(false)
|
||||
queitCleaningDialog.dispose()
|
||||
End Select
|
||||
|
||||
Exit sub
|
||||
End Sub
|
||||
|
||||
Private Sub noStylesFileDialog
|
||||
Function setAdvancedDialogDescription()
|
||||
If IsNull(advancedCleaningDialog) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
Dim config As Object
|
||||
Dim description As String
|
||||
Dim predefined As String
|
||||
Dim customFile As String
|
||||
config = initRedactionConfiguration()
|
||||
predefined = config.getPropertyValue("predefined_template")
|
||||
customFile = config.getPropertyValue("defaultTemplate")
|
||||
If predefined = "false" Then
|
||||
description = getTranslation("templateNotSelected")
|
||||
ElseIf predefined = template_manual Then
|
||||
description = getTranslation("templateChosen") & " «" & customFile & "»"
|
||||
Else
|
||||
description = getTranslation("templateChosen") & " «" & predefined & "»"
|
||||
EndIf
|
||||
advancedCleaningDialog.getControl("description").setText(description)
|
||||
End Function
|
||||
|
||||
Function setQuietDialogDescription()
|
||||
If IsNull(queitCleaningDialog) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
Dim config As Object
|
||||
Dim description As String
|
||||
Dim predefined As String
|
||||
Dim customFile As String
|
||||
config = initRedactionConfiguration()
|
||||
predefined = config.getPropertyValue("predefined_template")
|
||||
customFile = config.getPropertyValue("defaultTemplate")
|
||||
If predefined = "false" Then
|
||||
description = getTranslation("startQuietCleaningDescription1") & " " & getTranslation("startQuietCleaningDescription2")
|
||||
ElseIf predefined = template_manual Then
|
||||
description = getTranslation("startQuietCleaningDescription1") & " «" & customFile & "» " & getTranslation("startQuietCleaningDescription2")
|
||||
Else
|
||||
description = getTranslation("startQuietCleaningDescription1") & " «" & predefined & "» " & getTranslation("startQuietCleaningDescription2")
|
||||
EndIf
|
||||
queitCleaningDialog.getControl("Description").setText(description)
|
||||
End Function
|
||||
|
||||
Dim styleFileDialog As Object
|
||||
|
||||
Private Sub configureStyleFileDialog
|
||||
'Globalscope.BasicLibraries.LoadLibrary( "MRILib" )
|
||||
Dim config As Object
|
||||
Dim dialog As Object
|
||||
Dim predefined As String
|
||||
Dim description As String
|
||||
Dim customFile As String
|
||||
DialogLibraries.LoadLibrary("Redaction")
|
||||
styleFileDialog = CreateUnoDialog(DialogLibraries.Redaction.NoStyleFile)
|
||||
config = initRedactionConfiguration()
|
||||
predefined = config.getPropertyValue("predefined_template")
|
||||
customFile = config.getPropertyValue("defaultTemplate")
|
||||
If predefined = "false" Then
|
||||
description = getTranslation("noFileWithStylesFound")
|
||||
ElseIf predefined = template_manual Then
|
||||
description = getTranslation("manualStyleFileSet") & " «" & customFile & "»"
|
||||
Else
|
||||
description = getTranslation("predefiendTemplateSelected") & " «" & predefined & "»"
|
||||
EndIf
|
||||
styleFileDialog.Title = getTranslation("noStylesFileDialogTitle")
|
||||
styleFileDialog.getControl("Description").setText(description)
|
||||
styleFileDialog.getControl("FileSelection").Label = getTranslation("buttonNameToSelectFileWithStyles")
|
||||
styleFileDialog.getControl("buttonOk").Label = getTranslation("buttonTemplateNotFoundSkip")
|
||||
styleFileDialog.setVisible(true)
|
||||
Select Case styleFileDialog.Execute()
|
||||
Case 0
|
||||
End Select
|
||||
setQuietDialogDescription()
|
||||
setAdvancedDialogDescription()
|
||||
styleFileDialog.setVisible(false)
|
||||
styleFileDialog.dispose()
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Sub selectTemplateDialog()
|
||||
Dim config As Object
|
||||
Dim description As String
|
||||
Dim templateName As String
|
||||
Dim templateNames() As String
|
||||
Dim i As Integer
|
||||
Dim listComponent As Object
|
||||
config = initRedactionConfiguration()
|
||||
Dim dialog As Object
|
||||
DialogLibraries.LoadLibrary("Redaction")
|
||||
dialog = CreateUnoDialog(DialogLibraries.Redaction.NoStyleFile)
|
||||
Dim description As String
|
||||
Dim buttonName As String
|
||||
Dim dialogTitle As String
|
||||
Dim buttonTemplateNotFoundSkip As String
|
||||
dialogTitle = getTranslation("noStylesFileDialogTitle")
|
||||
description = getTranslation("noFileWithStylesFound")
|
||||
buttonName = getTranslation("buttonNameToSelectFileWithStyles")
|
||||
buttonTemplateNotFoundSkip = getTranslation("buttonTemplateNotFoundSkip")
|
||||
dialog.Title = dialogTitle
|
||||
dialog.getControl("Description").setText(description)
|
||||
dialog.getControl("FileSelection").Label = buttonName
|
||||
dialog.getControl("buttonOk").Label = buttonTemplateNotFoundSkip
|
||||
dialog.setVisible(true)
|
||||
dialog = CreateUnoDialog(DialogLibraries.Redaction.SelectTemplate)
|
||||
listComponent = dialog.getControl("ListBox")
|
||||
dialog.getControl("buttonOk").Label = getTranslation("buttonYes")
|
||||
dialog.getControl("buttonStop").Label = getTranslation("buttonStop")
|
||||
dialog.Title = getTranslation("selectTemplateDialogTitle")
|
||||
templateNames = getTemplateNames()
|
||||
listComponent.addItems(templateNames , 0)
|
||||
dialog.setVisible(true)
|
||||
Select Case dialog.Execute()
|
||||
Case 1
|
||||
setDeafultTemplate()
|
||||
Case 1
|
||||
templateName = listComponent.SelectedItem
|
||||
If NOT (templateName="0" or templateName="") Then
|
||||
config.setPropertyValue("predefined_template", templateName)
|
||||
description = getTranslation("predefiendTemplateSelected") & " «" & templateName & "»"
|
||||
styleFileDialog.getControl("Description").setText(description)
|
||||
EndIf
|
||||
Case 0
|
||||
|
||||
End Select
|
||||
dialog.setVisible(false)
|
||||
dialog.dispose()
|
||||
Exit sub
|
||||
dialog.dispose()
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
Sub setDeafultTemplate()
|
||||
Sub setManualTemplate()
|
||||
Dim description As String
|
||||
Dim selectedTemplate As String
|
||||
selectedTemplate = getFileURLDialog()
|
||||
oSimpleFileAccess = CreateUnoService( "com.sun.star.ucb.SimpleFileAccess" )
|
||||
|
@ -180,13 +283,16 @@ Sub setDeafultTemplate()
|
|||
config = initRedactionConfiguration()
|
||||
fileName = Dir(selectedTemplate)
|
||||
config.setPropertyValue("defaultTemplate",fileName)
|
||||
config.setPropertyValue("predefined_template", template_manual)
|
||||
Dim templatePath As String
|
||||
templatePath = getTemplatePath()
|
||||
MkDir(templatePath)
|
||||
FileCopy(selectedTemplate, templatePath & "/" & fileName)
|
||||
FileCopy(selectedTemplate, templatePath & "/" & fileName)
|
||||
description = getTranslation("manualStyleFileSet") & " «" & fileName & "»"
|
||||
styleFileDialog.getControl("Description").setText(description)
|
||||
End Sub
|
||||
|
||||
Function getFileURLDialog() As String
|
||||
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
|
||||
|
@ -215,5 +321,81 @@ End Sub
|
|||
End If
|
||||
End If
|
||||
getFileURLDialog = ""
|
||||
End Function
|
||||
End Function
|
||||
|
||||
|
||||
Function getTemplateNames() As Variant
|
||||
Dim names() As String
|
||||
' AddToArray(names, template_name_monography)
|
||||
AddToArray(names, template_name_pq)
|
||||
AddToArray(names, template_name_hp)
|
||||
AddToArray(names, template_name_hpe)
|
||||
AddToArray(names, template_name_pr)
|
||||
AddToArray(names, template_name_fnit)
|
||||
AddToArray(names, template_name_pa)
|
||||
AddToArray(names, template_name_pj)
|
||||
AddToArray(names, template_name_pcr)
|
||||
AddToArray(names, template_name_eifn)
|
||||
AddToArray(names, template_name_et)
|
||||
AddToArray(names, template_name_ephe)
|
||||
AddToArray(names, template_name_iph_big)
|
||||
getTemplateNames = names
|
||||
End Function
|
||||
|
||||
Function extensionPath() As String
|
||||
Dim oPackageInfoProvider As Object
|
||||
oPackageInfoProvider = GetDefaultContext.getByName("/singletons/com.sun.star.deployment.PackageInformationProvider")
|
||||
extensionPath = oPackageInfoProvider.getPackageLocation("pro.litvinovg.Redaction")
|
||||
End Function
|
||||
|
||||
Function getTemplateFile(templateName As String) As String
|
||||
Dim config As Object
|
||||
Dim fileName As String
|
||||
Select Case templateName
|
||||
Case template_manual
|
||||
config = initRedactionConfiguration()
|
||||
fileName = config.getPropertyValue("defaultTemplate")
|
||||
getTemplateFile = getTemplatePath() & "/" & fileName
|
||||
Exit Function
|
||||
Case template_name_eifn
|
||||
getTemplateFile = extensionPath() & articles_path & "статья_эифн.ott"
|
||||
Exit Function
|
||||
Case template_name_fnit
|
||||
getTemplateFile = extensionPath() & articles_path & "статья_фнит.ott"
|
||||
Exit Function
|
||||
Case template_name_pa
|
||||
getTemplateFile = extensionPath() & articles_path & "статья_фа.ott"
|
||||
Exit Function
|
||||
Case template_name_pj
|
||||
getTemplateFile = extensionPath() & articles_path & "статья_фж.ott"
|
||||
Exit Function
|
||||
Case template_name_et
|
||||
getTemplateFile = extensionPath() & articles_path & "статья_эм.ott"
|
||||
Exit Function
|
||||
Case template_name_pq
|
||||
getTemplateFile = extensionPath() & articles_path & "статья_вф.ott"
|
||||
Exit Function
|
||||
Case template_name_pr
|
||||
getTemplateFile = extensionPath() & articles_path & "статья_фр.ott"
|
||||
Exit Function
|
||||
Case template_name_pcr
|
||||
getTemplateFile = extensionPath() & articles_path & "статья_пцр.ott"
|
||||
Exit Function
|
||||
Case template_name_hp
|
||||
getTemplateFile = extensionPath() & articles_path & "статья_иф.ott"
|
||||
Exit Function
|
||||
Case template_name_hpe
|
||||
getTemplateFile = extensionPath() & articles_path & "статья_ифе.ott"
|
||||
Exit Function
|
||||
Case template_name_ephe
|
||||
getTemplateFile = extensionPath() & articles_path & "статья_эфэ.ott"
|
||||
Exit Function
|
||||
Case template_name_iph_big
|
||||
getTemplateFile = extensionPath() & "/templates/books/большой_формат_для_архива.ott"
|
||||
Exit Function
|
||||
Case Else
|
||||
getTemplateFile = extensionPath() & articles_path & "статья.ott"
|
||||
Exit Function
|
||||
End Select
|
||||
End Function
|
||||
</script:module>
|
12
Redaction/Navigator.xdl
Normal file
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE dlg:window PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "dialog.dtd">
|
||||
<dlg:window xmlns:dlg="http://openoffice.org/2000/dialog" xmlns:script="http://openoffice.org/2000/script" dlg:id="Navigator" dlg:left="0" dlg:top="50" dlg:width="100" dlg:height="123" dlg:closeable="true" dlg:moveable="true">
|
||||
<dlg:bulletinboard>
|
||||
<dlg:text dlg:id="description" dlg:tab-index="1" dlg:left="2" dlg:top="5" dlg:width="96" dlg:height="47" dlg:value="описание объектов для навигации" dlg:align="center" dlg:multiline="true"/>
|
||||
<dlg:button dlg:id="close" dlg:tab-index="2" dlg:left="2" dlg:top="105" dlg:width="96" dlg:height="15" dlg:value="Закрыть навигатор" dlg:toggled="1"/>
|
||||
<dlg:button dlg:id="next" dlg:tab-index="0" dlg:left="67" dlg:top="70" dlg:width="30" dlg:height="30" dlg:toggled="1"/>
|
||||
<dlg:text dlg:id="current" dlg:tab-index="4" dlg:left="36" dlg:top="81" dlg:width="28" dlg:height="15" dlg:value="current" dlg:align="center"/>
|
||||
<dlg:text dlg:id="found" dlg:tab-index="5" dlg:left="2" dlg:top="55" dlg:width="96" dlg:height="12" dlg:value="Всего найдено" dlg:align="center"/>
|
||||
<dlg:button dlg:id="prev" dlg:tab-index="3" dlg:left="3" dlg:top="70" dlg:width="30" dlg:height="30" dlg:valign="center" dlg:toggled="1"/>
|
||||
</dlg:bulletinboard>
|
||||
</dlg:window>
|
|
@ -1,10 +1,15 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE dlg:window PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "dialog.dtd">
|
||||
<dlg:window xmlns:dlg="http://openoffice.org/2000/dialog" xmlns:script="http://openoffice.org/2000/script" dlg:id="NoStyleFile" dlg:left="140" dlg:top="101" dlg:width="239" dlg:height="98" dlg:help-text="&5.NoStyleFile.HelpText" dlg:closeable="true" dlg:moveable="true" dlg:title="&6.NoStyleFile.Title">
|
||||
<dlg:window xmlns:dlg="http://openoffice.org/2000/dialog" xmlns:script="http://openoffice.org/2000/script" dlg:id="NoStyleFile" dlg:left="140" dlg:top="101" dlg:width="243" dlg:height="98" dlg:help-text="&5.NoStyleFile.HelpText" dlg:closeable="true" dlg:moveable="true" dlg:title="&6.NoStyleFile.Title">
|
||||
<dlg:bulletinboard>
|
||||
<dlg:button dlg:id="CommandButton2" dlg:tab-index="1" dlg:left="167" dlg:top="139" dlg:width="1" dlg:height="0" dlg:help-text="&15.NoStyleFile.CommandButton2.HelpText" dlg:value="&16.NoStyleFile.CommandButton2.Label"/>
|
||||
<dlg:button dlg:id="FileSelection" dlg:tab-index="2" dlg:left="46" dlg:top="75" dlg:width="60" dlg:height="13" dlg:help-text="&19.NoStyleFile.FileSelection.HelpText" dlg:value="&20.NoStyleFile.FileSelection.Label" dlg:button-type="ok"/>
|
||||
<dlg:text dlg:id="Description" dlg:tab-index="3" dlg:left="23" dlg:top="13" dlg:width="192" dlg:height="52" dlg:help-text="&27.NoStyleFile.Description.HelpText" dlg:value="&28.NoStyleFile.Description.Label"/>
|
||||
<dlg:button dlg:id="buttonOk" dlg:tab-index="0" dlg:left="138" dlg:top="75" dlg:width="60" dlg:height="13" dlg:help-text="&13.NoStyleFile.CommandButton1.HelpText" dlg:value="ok" dlg:button-type="cancel"/>
|
||||
<dlg:button dlg:id="CommandButton2" dlg:tab-index="2" dlg:left="167" dlg:top="139" dlg:width="1" dlg:height="0" dlg:help-text="&15.NoStyleFile.CommandButton2.HelpText" dlg:value="&16.NoStyleFile.CommandButton2.Label"/>
|
||||
<dlg:button dlg:id="FileSelection" dlg:tab-index="3" dlg:left="12" dlg:top="75" dlg:width="65" dlg:height="13" dlg:help-text="&19.NoStyleFile.FileSelection.HelpText" dlg:value="&20.NoStyleFile.FileSelection.Label">
|
||||
<script:event script:event-name="on-performaction" script:macro-name="vnd.sun.star.script:Redaction.Configuration.setManualTemplate?language=Basic&location=application" script:language="Script"/>
|
||||
</dlg:button>
|
||||
<dlg:text dlg:id="Description" dlg:tab-index="4" dlg:left="12" dlg:top="13" dlg:width="219" dlg:height="52" dlg:help-text="&27.NoStyleFile.Description.HelpText" dlg:value="&28.NoStyleFile.Description.Label" dlg:multiline="true"/>
|
||||
<dlg:button dlg:id="buttonOk" dlg:tab-index="0" dlg:left="166" dlg:top="75" dlg:width="65" dlg:height="13" dlg:help-text="&13.NoStyleFile.CommandButton1.HelpText" dlg:value="ok" dlg:button-type="cancel"/>
|
||||
<dlg:button dlg:id="ListSelection" dlg:tab-index="1" dlg:left="89" dlg:top="75" dlg:width="65" dlg:height="13" dlg:help-text="&19.NoStyleFile.FileSelection.HelpText" dlg:value="Выбрать из списка">
|
||||
<script:event script:event-name="on-performaction" script:macro-name="vnd.sun.star.script:Redaction.Configuration.selectTemplateDialog?language=Basic&location=application" script:language="Script"/>
|
||||
</dlg:button>
|
||||
</dlg:bulletinboard>
|
||||
</dlg:window>
|
9
Redaction/SelectTemplate.xdl
Normal file
|
@ -0,0 +1,9 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE dlg:window PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "dialog.dtd">
|
||||
<dlg:window xmlns:dlg="http://openoffice.org/2000/dialog" xmlns:script="http://openoffice.org/2000/script" dlg:id="SelectTemplate" dlg:left="146" dlg:top="89" dlg:width="220" dlg:height="202" dlg:closeable="true" dlg:moveable="true" dlg:title="Choose template with styles">
|
||||
<dlg:bulletinboard>
|
||||
<dlg:menulist dlg:id="ListBox" dlg:tab-index="0" dlg:left="1" dlg:top="3" dlg:width="218" dlg:height="175"/>
|
||||
<dlg:button dlg:id="buttonOk" dlg:tab-index="1" dlg:left="26" dlg:top="185" dlg:width="65" dlg:height="13" dlg:value="Ok" dlg:button-type="ok"/>
|
||||
<dlg:button dlg:id="buttonStop" dlg:tab-index="2" dlg:left="126" dlg:top="185" dlg:width="65" dlg:height="13" dlg:value="Cancel" dlg:button-type="cancel"/>
|
||||
</dlg:bulletinboard>
|
||||
</dlg:window>
|
|
@ -2,11 +2,11 @@
|
|||
<!DOCTYPE dlg:window PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "dialog.dtd">
|
||||
<dlg:window xmlns:dlg="http://openoffice.org/2000/dialog" xmlns:script="http://openoffice.org/2000/script" dlg:id="StartQuietCleaning" dlg:left="124" dlg:top="101" dlg:width="222" dlg:height="96" dlg:help-text="&29.StartQuietCleaning.HelpText" dlg:closeable="true" dlg:moveable="true" dlg:title="&30.StartQuietCleaning.Title">
|
||||
<dlg:bulletinboard>
|
||||
<dlg:text dlg:id="Description" dlg:tab-index="0" dlg:left="15" dlg:top="18" dlg:width="194" dlg:height="40" dlg:help-text="&33.StartQuietCleaning.Description.HelpText" dlg:value="&34.StartQuietCleaning.Description.Label"/>
|
||||
<dlg:button dlg:id="buttonOk" dlg:tab-index="1" dlg:left="15" dlg:top="71" dlg:width="52" dlg:height="17" dlg:help-text="&55.StartQuietCleaning.buttonOk.HelpText" dlg:value="&56.StartQuietCleaning.buttonOk.Label" dlg:button-type="ok"/>
|
||||
<dlg:button dlg:id="buttonStop" dlg:tab-index="3" dlg:left="84" dlg:top="71" dlg:width="52" dlg:height="17" dlg:help-text="&57.StartQuietCleaning.buttonStop.HelpText" dlg:value="&58.StartQuietCleaning.buttonStop.Label" dlg:button-type="cancel"/>
|
||||
<dlg:button dlg:id="buttonLoad" dlg:tab-index="2" dlg:left="156" dlg:top="71" dlg:width="52" dlg:height="17" dlg:help-text="&59.StartQuietCleaning.buttonLoad.HelpText" dlg:value="&60.StartQuietCleaning.buttonLoad.Label">
|
||||
<script:event script:event-name="on-performaction" script:macro-name="vnd.sun.star.script:Redaction.Configuration.setDeafultTemplate?language=Basic&location=application" script:language="Script"/>
|
||||
<dlg:text dlg:id="Description" dlg:tab-index="1" dlg:left="15" dlg:top="8" dlg:width="194" dlg:height="56" dlg:help-text="&33.StartQuietCleaning.Description.HelpText" dlg:value="&34.StartQuietCleaning.Description.Label" dlg:multiline="true"/>
|
||||
<dlg:button dlg:id="buttonOk" dlg:tab-index="0" dlg:left="15" dlg:top="71" dlg:width="60" dlg:height="17" dlg:help-text="&55.StartQuietCleaning.buttonOk.HelpText" dlg:value="&56.StartQuietCleaning.buttonOk.Label" dlg:button-type="ok"/>
|
||||
<dlg:button dlg:id="buttonStop" dlg:tab-index="3" dlg:left="83" dlg:top="71" dlg:width="60" dlg:height="17" dlg:help-text="&57.StartQuietCleaning.buttonStop.HelpText" dlg:value="&58.StartQuietCleaning.buttonStop.Label" dlg:button-type="cancel"/>
|
||||
<dlg:button dlg:id="buttonLoad" dlg:tab-index="2" dlg:left="149" dlg:top="71" dlg:width="60" dlg:height="17" dlg:help-text="&59.StartQuietCleaning.buttonLoad.HelpText" dlg:value="&60.StartQuietCleaning.buttonLoad.Label">
|
||||
<script:event script:event-name="on-performaction" script:macro-name="vnd.sun.star.script:Redaction.Configuration.configureStyleFileDialog?language=Basic&location=application" script:language="Script"/>
|
||||
</dlg:button>
|
||||
</dlg:bulletinboard>
|
||||
</dlg:window>
|
|
@ -27,10 +27,13 @@ End Function
|
|||
Function getRussian(identifier As String) As String
|
||||
Select Case identifier
|
||||
Case "noFileWithStylesFound"
|
||||
getRussian = "Файл-шаблон, содержащий стили для загрузки в документ не был задан. " & chr(10) &"Вы можете выбрать новый файл-шаблон. " & chr(10) & "Если файл-шаблон не будет выбран, то данный этап чистки будет пропущен."
|
||||
getRussian = "Файл-шаблон, содержащий стили для загрузки в документ не был задан. " & chr(10) &"Вы можете выбрать новый файл-шаблон. " & chr(10) & "Если файл-шаблон не будет выбран, то загрузка стилей из шаблона при чистке не будет выполняться."
|
||||
Exit Function
|
||||
Case "startQuietCleaningDescription"
|
||||
getRussian = "Вы хотите запустить чистку документа? " & chr(10) & "Здесь Вы можете также указать новый файл-шаблон." & chr(10) & "Стили из шаблона будут загружены в документ."
|
||||
Case "startQuietCleaningDescription1"
|
||||
getRussian = "Вы хотите запустить чистку документа? " & chr(10) & "Вы можете также указать новый файл-шаблон." & chr(10) & "Стили из шаблона "
|
||||
Exit Function
|
||||
Case "startQuietCleaningDescription2"
|
||||
getRussian = "будут загружены в документ."
|
||||
Exit Function
|
||||
Case "buttonYes"
|
||||
getRussian = "Да"
|
||||
|
@ -39,7 +42,7 @@ Function getRussian(identifier As String) As String
|
|||
getRussian = "Подтверждение запуска чистки"
|
||||
Exit Function
|
||||
Case "noStylesFileDialogTitle"
|
||||
getRussian = "Файл со стилями не найден"
|
||||
getRussian = "Выбор файла со стилями"
|
||||
Exit Function
|
||||
Case "buttonTemplateNotFoundSkip"
|
||||
getRussian = "Продолжить"
|
||||
|
@ -48,7 +51,7 @@ Function getRussian(identifier As String) As String
|
|||
getRussian = "Нет"
|
||||
Exit Function
|
||||
Case "buttonLoad"
|
||||
getRussian = "Указать шаблон"
|
||||
getRussian = "Выбрать шаблон"
|
||||
Exit Function
|
||||
Case "buttonNameToSelectFileWithStyles"
|
||||
getRussian = "Указать файл"
|
||||
|
@ -108,7 +111,7 @@ Function getRussian(identifier As String) As String
|
|||
getRussian = "Конвертировать символы в целевые свободные шрифты"
|
||||
Exit Function
|
||||
Case "advancedMenuReplaceFontsInStyles"
|
||||
getRussian = "Заменить шрифты стилях"
|
||||
getRussian = "Заменить шрифты в стилях"
|
||||
Exit Function
|
||||
Case "statusStarted"
|
||||
getRussian = "Чистка документа начата, подождите"
|
||||
|
@ -159,7 +162,7 @@ Function getRussian(identifier As String) As String
|
|||
getRussian = "Перед публикацией документа следует исправить все найденные замечания."
|
||||
Exit Function
|
||||
Case "validationBadSymbolsNotification"
|
||||
getRussian = "В тексте обнаружены неподходящие для публикции символы." & chr(10) & " Далее будет представлен список отрывков текста с подобными символами."
|
||||
getRussian = "В тексте обнаружены не подходящие для публикации символы." & chr(10) & " Нажимая на стрелки навигатора вы сможете перемещаться между найденными отрывками с неподходящими символами."
|
||||
Exit Function
|
||||
Case "validationBadDrawings"
|
||||
getRussian = "В документе найдены рисунки ("
|
||||
|
@ -201,22 +204,22 @@ Function getRussian(identifier As String) As String
|
|||
getRussian = "Настройка чистки и проверки"
|
||||
Exit Function
|
||||
Case "dialogRussianFixesIPH"
|
||||
getRussian = "Исправления для текстов на русском"
|
||||
Exit Function
|
||||
getRussian = "Исправления для текстов на русском"
|
||||
Exit Function
|
||||
Case "documentIsReadOnly"
|
||||
getRussian = "Документ открыт только для чтения. Запуск чистки в данном режиме невозможен."
|
||||
Exit Function
|
||||
getRussian = "Документ открыт только для чтения. Запуск чистки в данном режиме невозможен."
|
||||
Exit Function
|
||||
Case "validateEndnotes1"
|
||||
getRussian = "в концевой сноске (абсолютный номер)"
|
||||
Exit Function
|
||||
getRussian = "в концевой сноске (абсолютный номер)"
|
||||
Exit Function
|
||||
Case "setOutlineLevel"
|
||||
getRussian = "задан уровень структуры документа"
|
||||
Exit Function
|
||||
getRussian = "задан уровень структуры документа"
|
||||
Exit Function
|
||||
Case "section"
|
||||
getRussian = "Раздел"
|
||||
Exit Function
|
||||
Case "isInTable"
|
||||
getRussian = "находится внутри таблицы."
|
||||
getRussian = "находится внутри таблицы"
|
||||
Exit Function
|
||||
Case "foundHeadingIn"
|
||||
getRussian = "Найден заголовок в"
|
||||
|
@ -231,11 +234,11 @@ Function getRussian(identifier As String) As String
|
|||
getRussian = "стиля страниц"
|
||||
Exit Function
|
||||
Case "table"
|
||||
getRussian = "таблице"
|
||||
Exit Function
|
||||
getRussian = "таблице"
|
||||
Exit Function
|
||||
Case "validationStarted"
|
||||
getRussian = "Осуществляется проверка"
|
||||
Exit Function
|
||||
getRussian = "Осуществляется проверка"
|
||||
Exit Function
|
||||
Case "chooseFontNameDialogTitle"
|
||||
getRussian = "Выбор шрифта для создания отчёта."
|
||||
Exit Function
|
||||
|
@ -270,8 +273,8 @@ Function getRussian(identifier As String) As String
|
|||
getRussian = "Исправляем DOI"
|
||||
Exit Function
|
||||
Case "advancedMenuResetChapterNumberingRules"
|
||||
getRussian = "Сбросить настройки нумерации глав"
|
||||
Exit Function
|
||||
getRussian = "Сбросить настройки нумерации глав"
|
||||
Exit Function
|
||||
Case "dialogConfigMaxSuperscript"
|
||||
getRussian = "Макс. длина текста в верхнем индексе"
|
||||
Exit Function
|
||||
|
@ -285,8 +288,68 @@ Function getRussian(identifier As String) As String
|
|||
getRussian = "Заменяются тире между цифрами на цифровые"
|
||||
Exit Function
|
||||
Case "advancedMenuconvertFontsToCharStyles"
|
||||
getRussian = "Создать стили символов из найденных шрифтов"
|
||||
getRussian = "Создать стили символов из найденных шрифтов"
|
||||
Exit Function
|
||||
Case "buttonClose"
|
||||
getRussian = "Закрыть"
|
||||
Exit Function
|
||||
Case "navigatorFound"
|
||||
getRussian = "Всего найдено: "
|
||||
Exit Function
|
||||
Case "coloredTextDescription"
|
||||
getRussian = "Навигация по выделенному цветом тексту"
|
||||
Exit Function
|
||||
Case "foundColoredTextMessage"
|
||||
getRussian = "Найден текст c непрозрачным фоном. Обычно это не подходит для электронных публикаций. Вместо белого цвета фона используйте «Без заливки»"
|
||||
Exit Function
|
||||
Case "invalidParagraphFormattingFound"
|
||||
getRussian = "Найдены некорректные настройки форматирования параграфов. Необходима чистка."
|
||||
Exit Function
|
||||
Case "fixBrokenCharBackTransparentMenuItem"
|
||||
getRussian = "Исправить некорректные настройки цветовой заливки абзацев"
|
||||
Exit Function
|
||||
Case "badSymbols"
|
||||
getRussian = "Неподходящие для публикации символы"
|
||||
Exit Function
|
||||
Case "badNoteSings"
|
||||
getRussian = "Неподходящие для публикации символы сносок"
|
||||
Exit Function
|
||||
Case "validationBadFootnotesSymbolsNotification"
|
||||
getRussian = "В символах сносок обнаружены не подходящие для публикации символы." & chr(10) & " Нажимая на стрелки навигатора вы сможете перемещаться между найденными символами сносок."
|
||||
Exit Function
|
||||
Case "badSectionsInTables"
|
||||
getRussian = "Разделы, которые не должны находится внутри таблиц"
|
||||
Exit Function
|
||||
Case "badHeadingsInFootnotes"
|
||||
getRussian = "Заголовки, которые не должны находиться в сносках"
|
||||
Exit Function
|
||||
Case "badHeadingsInTables"
|
||||
getRussian = "Заголовки, которые нельзя размещать внутри таблиц"
|
||||
Exit Function
|
||||
Case "removeNotTransparentBackgrounds"
|
||||
getRussian = "Удалить непрозрачные фоны в тексте"
|
||||
Exit Function
|
||||
Case "manualStyleFileSet"
|
||||
getRussian = "При чистке будет использоваться указанный вручную шаблон"
|
||||
Exit Function
|
||||
Case "predefiendTemplateSelected"
|
||||
getRussian = "При чистке будет использоваться выбранный из списка шаблон"
|
||||
Exit Function
|
||||
Case "selectTemplateDialogTitle"
|
||||
getRussian = "Выберите шаблон из списка"
|
||||
Exit Function
|
||||
Case "templateNotSelected"
|
||||
getRussian = "Шаблон не выбран"
|
||||
Exit Function
|
||||
Case "templateChosen"
|
||||
getRussian = "Выбран шаблон"
|
||||
Exit Function
|
||||
Case "statusFixingDiacriticCharactersKerning"
|
||||
getRussian = "Исправляем комбинирование с диакритическими символами"
|
||||
Exit Function
|
||||
Case "fixDiacriticKerning"
|
||||
getRussian = "Исправить комбинирование с диакритическими символами"
|
||||
Exit Function
|
||||
Case Else
|
||||
getRussian = "Перевод не найден"
|
||||
End Select
|
||||
|
@ -298,8 +361,11 @@ Function getEnglish(identifier As String) As String
|
|||
Case "noFileWithStylesFound"
|
||||
getEnglish = "Template with styles wasn't found. You can choose template on your computer." & chr(10) &" This stage of cleaning will be skipped if no file chosen."
|
||||
Exit Function
|
||||
Case "startQuietCleaningDescription"
|
||||
getEnglish = "Do you want to start document cleaning?" & chr(10) & "You can choose template with styles." & chr(10) & "Styles will be loaded in process of cleaning."
|
||||
Case "startQuietCleaningDescription1"
|
||||
getEnglish = "Do you want to start document cleaning?" & chr(10) & "You can choose template with styles." & chr(10) & "Styles from template "
|
||||
Exit Function
|
||||
Case "startQuietCleaningDescription2"
|
||||
getEnglish = "will be loaded in process of cleaning." & chr(10) & ""
|
||||
Exit Function
|
||||
Case "buttonYes"
|
||||
getEnglish = "Ok"
|
||||
|
@ -308,7 +374,7 @@ Function getEnglish(identifier As String) As String
|
|||
getEnglish = "Confirmation"
|
||||
Exit Function
|
||||
Case "noStylesFileDialogTitle"
|
||||
getEnglish = "Template file not found"
|
||||
getEnglish = "Configure a style file"
|
||||
Exit Function
|
||||
Case "buttonTemplateNotFoundSkip"
|
||||
getEnglish = "Proceed"
|
||||
|
@ -350,8 +416,8 @@ Function getEnglish(identifier As String) As String
|
|||
getEnglish = "Remove page break at document start"
|
||||
Exit Function
|
||||
Case "advancedMenuFixMistakes"
|
||||
getEnglish = "Fix frequent mistakes"
|
||||
Exit Function
|
||||
getEnglish = "Fix frequent mistakes"
|
||||
Exit Function
|
||||
Case "advancedMenuConfigAnchors"
|
||||
getEnglish = "Configure image anchors for digital publications"
|
||||
Exit Function
|
||||
|
@ -428,7 +494,7 @@ Function getEnglish(identifier As String) As String
|
|||
getEnglish = "It is recommended to fix all problems before publication."
|
||||
Exit Function
|
||||
Case "validationBadSymbolsNotification"
|
||||
getEnglish = "Unsuitable symbols were found" & chr(10) & " Now you will get the list with bad symbols."
|
||||
getEnglish = "Unsuitable symbols were found." & chr(10) & " By clicking on the arrows of the navigator, you can navigate between the found passages with inappropriate characters. "
|
||||
Exit Function
|
||||
Case "validationBadDrawings"
|
||||
getEnglish = "Drawings was found ("
|
||||
|
@ -470,22 +536,22 @@ Function getEnglish(identifier As String) As String
|
|||
getEnglish = "Clean and validation configuration"
|
||||
Exit Function
|
||||
Case "dialogRussianFixesIPH"
|
||||
getEnglish = "Corrections for texts in Russian"
|
||||
Exit Function
|
||||
getEnglish = "Corrections for texts in Russian"
|
||||
Exit Function
|
||||
Case "documentIsReadOnly"
|
||||
getEnglish = "The document is read-only. Cleaning cannot be started in this mode."
|
||||
Exit Function
|
||||
getEnglish = "The document is read-only. Cleaning cannot be started in this mode."
|
||||
Exit Function
|
||||
Case "validateEndnotes1"
|
||||
getEnglish = "in endnote (absolute number)"
|
||||
Exit Function
|
||||
getEnglish = "in endnote (absolute number)"
|
||||
Exit Function
|
||||
Case "setOutlineLevel"
|
||||
getEnglish = "set document structure level"
|
||||
Exit Function
|
||||
getEnglish = "set document structure level"
|
||||
Exit Function
|
||||
Case "section"
|
||||
getEnglish = "Section"
|
||||
Exit Function
|
||||
Case "isInTable"
|
||||
getEnglish = "located inside the table."
|
||||
getEnglish = "located inside the table"
|
||||
Exit Function
|
||||
Case "foundHeadingIn"
|
||||
getEnglish = "Found heading in"
|
||||
|
@ -500,11 +566,11 @@ Function getEnglish(identifier As String) As String
|
|||
getEnglish = "of page style"
|
||||
Exit Function
|
||||
Case "table"
|
||||
getEnglish = "table"
|
||||
Exit Function
|
||||
getEnglish = "table"
|
||||
Exit Function
|
||||
Case "validationStarted"
|
||||
getEnglish = "Validation in progess"
|
||||
Exit Function
|
||||
getEnglish = "Validation in progess"
|
||||
Exit Function
|
||||
Case "chooseFontNameDialogTitle"
|
||||
getEnglish = "Select a font to create a report."
|
||||
Exit Function
|
||||
|
@ -539,8 +605,8 @@ Function getEnglish(identifier As String) As String
|
|||
getEnglish = "Fixing DOI"
|
||||
Exit Function
|
||||
Case "advancedMenuResetChapterNumberingRules"
|
||||
getEnglish = "Reset chapter numbering settings"
|
||||
Exit Function
|
||||
getEnglish = "Reset chapter numbering settings"
|
||||
Exit Function
|
||||
Case "dialogConfigMaxSuperscript"
|
||||
getEnglish = "Max line length in superscript"
|
||||
Exit Function
|
||||
|
@ -554,8 +620,68 @@ Function getEnglish(identifier As String) As String
|
|||
getEnglish = "Replacing dashes between numbers with numeric dashes"
|
||||
Exit Function
|
||||
Case "advancedMenuconvertFontsToCharStyles"
|
||||
getEnglish = "Create character styles from found fonts "
|
||||
getEnglish = "Create character styles from found fonts "
|
||||
Exit Function
|
||||
Case "buttonClose"
|
||||
getEnglish = "Close"
|
||||
Exit Function
|
||||
Case "navigatorFound"
|
||||
getEnglish = "Total found: "
|
||||
Exit Function
|
||||
Case "coloredTextDescription"
|
||||
getEnglish = "Navigation over highlighted text"
|
||||
Exit Function
|
||||
Case "foundColoredTextMessage"
|
||||
getEnglish = "Found text with an opaque background. This is usually not suitable for electronic publishing. Use „No Fill“ instead of a white background "
|
||||
Exit Function
|
||||
Case "invalidParagraphFormattingFound"
|
||||
getEnglish = "Incorrect paragraph formatting settings found. Cleaning required. "
|
||||
Exit Function
|
||||
Case "fixBrokenCharBackTransparentMenuItem"
|
||||
getEnglish = "Fix incorrect color fill settings for paragraphs "
|
||||
Exit Function
|
||||
Case "badSymbols"
|
||||
getEnglish = "Unsuitable for publishing characters"
|
||||
Exit Function
|
||||
Case "badNoteSings"
|
||||
getEnglish = "Unsuitable for publishing footnote symbols "
|
||||
Exit Function
|
||||
Case "validationBadFootnotesSymbolsNotification"
|
||||
getEnglish = "Unsuitable for publication symbols were found in footnote symbols. "& Chr (10) &" By clicking on the navigator arrows, you can navigate between found footnote symbols. "
|
||||
Exit Function
|
||||
Case "badSectionsInTables"
|
||||
getEnglish = "Sections that shouldn't be inside tables "
|
||||
Exit Function
|
||||
Case "badHeadingsInFootnotes"
|
||||
getEnglish = "Headings that should not be in footnotes"
|
||||
Exit Function
|
||||
Case "badHeadingsInTables"
|
||||
getEnglish = "Headers that shouldn't be placed inside tables"
|
||||
Exit Function
|
||||
Case "removeNotTransparentBackgrounds"
|
||||
getEnglish = "Remove not transparent backgrounds in text"
|
||||
Exit Function
|
||||
Case "manualStyleFileSet"
|
||||
getEnglish = "For cleaning will be used manually specified template "
|
||||
Exit Function
|
||||
Case "predefiendTemplateSelected"
|
||||
getEnglish = "For cleaning will be used template selected from the list"
|
||||
Exit Function
|
||||
Case "selectTemplateDialogTitle"
|
||||
getEnglish = "Select a template from the list "
|
||||
Exit Function
|
||||
Case "templateNotSelected"
|
||||
getEnglish = "Template not selected"
|
||||
Exit Function
|
||||
Case "templateChosen"
|
||||
getEnglish = "Selected template"
|
||||
Exit Function
|
||||
Case "statusFixingDiacriticCharactersKerning"
|
||||
getEnglish = "Fixing the combination with diacritics "
|
||||
Exit Function
|
||||
Case "fixDiacriticKerning"
|
||||
getEnglish = "Fix combining with diacritic characters"
|
||||
Exit Function
|
||||
Case Else
|
||||
getEnglish = "No translation"
|
||||
End Select
|
||||
|
@ -566,8 +692,11 @@ Function getCroatian(identifier As String) As String
|
|||
Case "noFileWithStylesFound"
|
||||
getCroatian = "Datoteka šablona koja sadrži stilove za učitavanje u dokument nije navedena. " & chr(10) &"Možete izabrati novi šablon na računaru. " & chr(10) & "Ako datoteka šablona nije izabrana, ovaj korak čišćenja će se preskočiti."
|
||||
Exit Function
|
||||
Case "startQuietCleaningDescription"
|
||||
getCroatian = "Da li želite da počnete sa čišćenjem dokumenta?" & chr(10) & "Ovde možete da odredite i novu datoteku šablona." & chr(10) & "Stilovi iz šablona biće učitani u dokument."
|
||||
Case "startQuietCleaningDescription1"
|
||||
getCroatian = "Da li želite da počnete sa čišćenjem dokumenta?" & chr(10) & "Ovde možete da odredite i novu datoteku šablona." & chr(10) & "Stilovi iz šablona "
|
||||
Exit Function
|
||||
Case "startQuietCleaningDescription2"
|
||||
getCroatian = "biće učitani u dokument."
|
||||
Exit Function
|
||||
Case "buttonYes"
|
||||
getCroatian = "Da"
|
||||
|
@ -576,7 +705,7 @@ Function getCroatian(identifier As String) As String
|
|||
getCroatian = "Potvrda pokretanja čišćenja"
|
||||
Exit Function
|
||||
Case "noStylesFileDialogTitle"
|
||||
getCroatian = "Šablon sa stilovima nije pronađen"
|
||||
getCroatian = "Konfigurišite datoteku stila"
|
||||
Exit Function
|
||||
Case "buttonTemplateNotFoundSkip"
|
||||
getCroatian = "Nastavite"
|
||||
|
@ -696,7 +825,7 @@ Function getCroatian(identifier As String) As String
|
|||
getCroatian = "Svi pronađeni primedbe moraju biti ispravljeni pre objavljivanja dokumenta."
|
||||
Exit Function
|
||||
Case "validationBadSymbolsNotification"
|
||||
getCroatian = "U tekstu su pronađeni ne prikladni karaktera. " & chr(10) & "Sada ćete dobiti lista odlomaka teksta sa sličnim znakovima"
|
||||
getCroatian = "U tekstu su pronađeni ne prikladni karaktera. " & chr(10) & "Klikom na strelice navigatora možete se kretati između pronađenih odlomaka s neprikladnim znakovima."
|
||||
Exit Function
|
||||
Case "validationBadDrawings"
|
||||
getCroatian = "U dokumentu se nalaze crteži ("
|
||||
|
@ -738,22 +867,22 @@ Function getCroatian(identifier As String) As String
|
|||
getCroatian = "Podešavanje čišćenja i provjere"
|
||||
Exit Function
|
||||
Case "dialogRussianFixesIPH"
|
||||
getCroatian = "Ispravci za tekstove na ruskom"
|
||||
Exit Function
|
||||
getCroatian = "Ispravci za tekstove na ruskom"
|
||||
Exit Function
|
||||
Case "documentIsReadOnly"
|
||||
getCroatian = "Dokument je samo za čitanje. Čišćenje nije moguće pokrenuti u ovom načinu rada."
|
||||
Exit Function
|
||||
getCroatian = "Dokument je samo za čitanje. Čišćenje nije moguće pokrenuti u ovom načinu rada."
|
||||
Exit Function
|
||||
Case "validateEndnotes1"
|
||||
getCroatian = "u end fusnoti (apsolutni broj)"
|
||||
Exit Function
|
||||
getCroatian = "u end fusnoti (apsolutni broj)"
|
||||
Exit Function
|
||||
Case "setOutlineLevel"
|
||||
getCroatian = "zadati uroven strukturni dokument"
|
||||
Exit Function
|
||||
getCroatian = "zadati uroven strukturni dokument"
|
||||
Exit Function
|
||||
Case "section"
|
||||
getCroatian = "Odjeljak"
|
||||
Exit Function
|
||||
Case "isInTable"
|
||||
getCroatian = "smještene unutar stola."
|
||||
getCroatian = "smještene unutar stola"
|
||||
Exit Function
|
||||
Case "foundHeadingIn"
|
||||
getCroatian = "Naslov pronađen u"
|
||||
|
@ -768,11 +897,11 @@ Function getCroatian(identifier As String) As String
|
|||
getCroatian = "stil stranice"
|
||||
Exit Function
|
||||
Case "table"
|
||||
getCroatian = "stola"
|
||||
Exit Function
|
||||
getCroatian = "stola"
|
||||
Exit Function
|
||||
Case "validationStarted"
|
||||
getCroatian = "Provjera u tijeku"
|
||||
Exit Function
|
||||
getCroatian = "Provjera u tijeku"
|
||||
Exit Function
|
||||
Case "chooseFontNameDialogTitle"
|
||||
getCroatian = "Odaberite font za stvaranje izvješća."
|
||||
Exit Function
|
||||
|
@ -807,8 +936,8 @@ Function getCroatian(identifier As String) As String
|
|||
getCroatian = "Ispravljamo DOI"
|
||||
Exit Function
|
||||
Case "advancedMenuResetChapterNumberingRules"
|
||||
getCroatian = "Resetirajte postavke numeriranja poglavlja"
|
||||
Exit Function
|
||||
getCroatian = "Resetirajte postavke numeriranja poglavlja"
|
||||
Exit Function
|
||||
Case "dialogConfigMaxSuperscript"
|
||||
getCroatian = "Maksimalna duljina retka u natpisu"
|
||||
Exit Function
|
||||
|
@ -822,8 +951,68 @@ Function getCroatian(identifier As String) As String
|
|||
getCroatian = "Zamjena crtica između brojeva numeričkim crticama"
|
||||
Exit Function
|
||||
Case "advancedMenuconvertFontsToCharStyles"
|
||||
getCroatian = "Stvorite stilove znakova iz pronađenih fontova "
|
||||
getCroatian = "Stvorite stilove znakova iz pronađenih fontova "
|
||||
Exit Function
|
||||
Case "buttonClose"
|
||||
getCroatian = "Zatvoriti "
|
||||
Exit Function
|
||||
Case "navigatorFound"
|
||||
getCroatian = "Ukupno pronađeno: "
|
||||
Exit Function
|
||||
Case "coloredTextDescription"
|
||||
getCroatian = "Navigacija istaknutim tekstom "
|
||||
Exit Function
|
||||
Case "foundColoredTextMessage"
|
||||
getCroatian = "Pronađen tekst s neprozirnom pozadinom. To obično nije prikladno za elektroničko izdavanje. Upotrijebite „Bez popunjavanja“ umjesto bijele pozadine "
|
||||
Exit Function
|
||||
Case "invalidParagraphFormattingFound"
|
||||
getCroatian = "Pronađene su pogrešne postavke oblikovanja odlomaka. Potrebno čišćenje. "
|
||||
Exit Function
|
||||
Case "fixBrokenCharBackTransparentMenuItem"
|
||||
getCroatian = "Ispravite netočne postavke ispunjavanja boja za odlomke "
|
||||
Exit Function
|
||||
Case "badSymbols"
|
||||
getCroatian = "Neprimjerene znakova za objavljivanje"
|
||||
Exit Function
|
||||
Case "badNoteSings"
|
||||
getCroatian = "Neprikladni simboli fusnota "
|
||||
Exit Function
|
||||
Case "validationBadFootnotesSymbolsNotification"
|
||||
getCroatian = "U simbolima fusnota pronađeni su neprikladni za objavljivanje simboli. "& Chr (10) &" Klikom na strelice navigatora možete se kretati između pronađenih simbola fusnota. "
|
||||
Exit Function
|
||||
Case "badSectionsInTables"
|
||||
getCroatian = "Odjeljci koji ne bi trebali biti unutar tablica "
|
||||
Exit Function
|
||||
Case "badHeadingsInFootnotes"
|
||||
getCroatian = "Naslovi koji ne bi trebali biti u fusnotama"
|
||||
Exit Function
|
||||
Case "badHeadingsInTables"
|
||||
getCroatian = "Zaglavlja koja se ne smiju stavljati unutar tablica"
|
||||
Exit Function
|
||||
Case "removeNotTransparentBackgrounds"
|
||||
getCroatian = "Uklonite netransparentne pozadine u tekstu"
|
||||
Exit Function
|
||||
Case "manualStyleFileSet"
|
||||
getCroatian = "Prilikom čišćenja koristit će se ručno naveden predložak"
|
||||
Exit Function
|
||||
Case "predefiendTemplateSelected"
|
||||
getCroatian = "Prilikom čišćenja koristit će se predložak odabran s popisa"
|
||||
Exit Function
|
||||
Case "selectTemplateDialogTitle"
|
||||
getCroatian = "Izaberite obrazac sa liste"
|
||||
Exit Function
|
||||
Case "templateNotSelected"
|
||||
getCroatian = "Šablon nije izabran"
|
||||
Exit Function
|
||||
Case "templateChosen"
|
||||
getCroatian = "Izabrani šablon"
|
||||
Exit Function
|
||||
Case "statusFixingDiacriticCharactersKerning"
|
||||
getCroatian = "Popravljanje kombinacije s dijakritičkim znakovima"
|
||||
Exit Function
|
||||
Case "fixDiacriticKerning"
|
||||
getCroatian = "Ispravite kombiniranje s naglašenim likovima"
|
||||
Exit Function
|
||||
Case Else
|
||||
getCroatian = "No translation"
|
||||
End Select
|
||||
|
@ -834,8 +1023,11 @@ Function getSerbian(identifier As String) As String
|
|||
Case "noFileWithStylesFound"
|
||||
getSerbian = "Датотека шаблона која садржи стилове за учитавање у документ није наведена." & chr(10) &"Можете изабрати нови šablon на рачунару. " & chr(10) & "Ако датотека шаблона није изабрана, овај корак чишћења ће се прескочити."
|
||||
Exit Function
|
||||
Case "startQuietCleaningDescription"
|
||||
getSerbian = "Да ли желите да почнете са чишћењем документа?" & chr(10) & "Овде можете да одредите и нову датотеку шаблона." & chr(10) & "Стилови из шаблона биће учитани у документ."
|
||||
Case "startQuietCleaningDescription1"
|
||||
getSerbian = "Да ли желите да почнете са чишћењем документа?" & chr(10) & "Овде можете да одредите и нову датотеку шаблона." & chr(10) & "Стилови из шаблона "
|
||||
Exit Function
|
||||
Case "startQuietCleaningDescription2"
|
||||
getSerbian = "биће учитани у документ."
|
||||
Exit Function
|
||||
Case "buttonYes"
|
||||
getSerbian = "Да"
|
||||
|
@ -844,7 +1036,7 @@ Function getSerbian(identifier As String) As String
|
|||
getSerbian = "Потврда покретања чишћења"
|
||||
Exit Function
|
||||
Case "noStylesFileDialogTitle"
|
||||
getSerbian = "Šablon са стиловима није пронађен"
|
||||
getSerbian = "Конфигуришите датотеку стила"
|
||||
Exit Function
|
||||
Case "buttonTemplateNotFoundSkip"
|
||||
getSerbian = "Наставите"
|
||||
|
@ -964,7 +1156,7 @@ Function getSerbian(identifier As String) As String
|
|||
getSerbian = "Сви пронађени примедбе морају бити исправљени пре објављивања документа."
|
||||
Exit Function
|
||||
Case "validationBadSymbolsNotification"
|
||||
getSerbian = "У тексту су пронађени не прикладни карактера. " & chr(10) & "Сада ћете добити листа одломака текста са сличним знаковима "
|
||||
getSerbian = "У тексту су пронађени не прикладни карактера. " & chr(10) & "Кликом на стрелице навигатора можете се кретати између пронађених одломака са неприкладним знаковима."
|
||||
Exit Function
|
||||
Case "validationBadDrawings"
|
||||
getSerbian = "У документу се налазе цртежи ("
|
||||
|
@ -1006,22 +1198,22 @@ Function getSerbian(identifier As String) As String
|
|||
getSerbian = "Подешавање чишћења и провере"
|
||||
Exit Function
|
||||
Case "dialogRussianFixesIPH"
|
||||
getSerbian = "Исправци за текстове на руском"
|
||||
Exit Function
|
||||
getSerbian = "Исправци за текстове на руском"
|
||||
Exit Function
|
||||
Case "documentIsReadOnly"
|
||||
getSerbian = "Документ је само за читање. Чишћење се не може покренути у овом режиму."
|
||||
Exit Function
|
||||
getSerbian = "Документ је само за читање. Чишћење се не може покренути у овом режиму."
|
||||
Exit Function
|
||||
Case "validateEndnotes1"
|
||||
getSerbian = "у end фусноти (апсолутни број)"
|
||||
Exit Function
|
||||
getSerbian = "у end фусноти (апсолутни број)"
|
||||
Exit Function
|
||||
Case "setOutlineLevel"
|
||||
getSerbian = "задатен уровен структури документа"
|
||||
Exit Function
|
||||
getSerbian = "задатен уровен структури документа"
|
||||
Exit Function
|
||||
Case "section"
|
||||
getSerbian = "Одјељак"
|
||||
Exit Function
|
||||
Case "isInTable"
|
||||
getSerbian = "смештене унутар стола."
|
||||
getSerbian = "смештене унутар стола"
|
||||
Exit Function
|
||||
Case "foundHeadingIn"
|
||||
getSerbian = "Наслов пронађен у"
|
||||
|
@ -1036,11 +1228,11 @@ Function getSerbian(identifier As String) As String
|
|||
getSerbian = "стил странице"
|
||||
Exit Function
|
||||
Case "table"
|
||||
getSerbian = "стола"
|
||||
Exit Function
|
||||
getSerbian = "стола"
|
||||
Exit Function
|
||||
Case "validationStarted"
|
||||
getSerbian = "Провера у тијеку"
|
||||
Exit Function
|
||||
getSerbian = "Провера у тијеку"
|
||||
Exit Function
|
||||
Case "chooseFontNameDialogTitle"
|
||||
getSerbian = "Изаберите фонт да бисте направили извештај."
|
||||
Exit Function
|
||||
|
@ -1075,8 +1267,8 @@ Function getSerbian(identifier As String) As String
|
|||
getSerbian = "Исправљамо DOI"
|
||||
Exit Function
|
||||
Case "advancedMenuResetChapterNumberingRules"
|
||||
getSerbian = "Ресетујте поставке нумерисања поглавља"
|
||||
Exit Function
|
||||
getSerbian = "Ресетујте поставке нумерисања поглавља"
|
||||
Exit Function
|
||||
Case "dialogConfigMaxSuperscript"
|
||||
getSerbian = "Максимална дужина реда у натпису"
|
||||
Exit Function
|
||||
|
@ -1090,8 +1282,68 @@ Function getSerbian(identifier As String) As String
|
|||
getSerbian = "Замена цртица између бројева нумеричким цртицама"
|
||||
Exit Function
|
||||
Case "advancedMenuconvertFontsToCharStyles"
|
||||
getSerbian = "Створите стилове знакова од пронађених фонтова "
|
||||
getSerbian = "Створите стилове знакова од пронађених фонтова "
|
||||
Exit Function
|
||||
Case "buttonClose"
|
||||
getSerbian = "Затворити"
|
||||
Exit Function
|
||||
Case "navigatorFound"
|
||||
getSerbian = "Укупно пронађено: "
|
||||
Exit Function
|
||||
Case "coloredTextDescription"
|
||||
getSerbian = "Навигација по истакнутом тексту "
|
||||
Exit Function
|
||||
Case "foundColoredTextMessage"
|
||||
getSerbian = "Пронађен је текст са непрозирном позадином. Ово обично није погодно за електронско издавање. Користите „Без попуњавања“ уместо беле позадине "
|
||||
Exit Function
|
||||
Case "invalidParagraphFormattingFound"
|
||||
getSerbian = "Пронађене су нетачне поставке форматирања пасуса. Потребно чишћење. "
|
||||
Exit Function
|
||||
Case "fixBrokenCharBackTransparentMenuItem"
|
||||
getSerbian = "Исправите нетачна подешавања попуњавања боја за пасусе "
|
||||
Exit Function
|
||||
Case "badSymbols"
|
||||
getSerbian = "Неодговарајуће знакова за објављивање"
|
||||
Exit Function
|
||||
Case "badNoteSings"
|
||||
getSerbian = "Неприкладни симболи фуснота "
|
||||
Exit Function
|
||||
Case "validationBadFootnotesSymbolsNotification"
|
||||
getSerbian = "У симболима фуснота пронађени су неприкладни за објављивање симболи. "& chr(10) &" Кликом на стрелице навигатора можете се кретати између пронађених симбола фуснота. "
|
||||
Exit Function
|
||||
Case "badSectionsInTables"
|
||||
getSerbian = "Одељци који не би требало да буду унутар табела"
|
||||
Exit Function
|
||||
Case "badHeadingsInFootnotes"
|
||||
getSerbian = "Наслови који не смеју бити у фуснотама"
|
||||
Exit Function
|
||||
Case "badHeadingsInTables"
|
||||
getSerbian = "Заглавља која не смеју бити смештена унутар табела"
|
||||
Exit Function
|
||||
Case "removeNotTransparentBackgrounds"
|
||||
getSerbian = "Уклоните нетранспарентне позадине у тексту"
|
||||
Exit Function
|
||||
Case "manualStyleFileSet"
|
||||
getSerbian = "Приликом чишћења користиће се ручно наведен шаблон"
|
||||
Exit Function
|
||||
Case "predefiendTemplateSelected"
|
||||
getSerbian = "Приликом чишћења користиће се шаблон изабран са листе"
|
||||
Exit Function
|
||||
Case "selectTemplateDialogTitle"
|
||||
getSerbian = "Изаберите образац са листе"
|
||||
Exit Function
|
||||
Case "templateNotSelected"
|
||||
getSerbian = "Шаблон није изабран"
|
||||
Exit Function
|
||||
Case "templateChosen"
|
||||
getSerbian = "Изабрани шаблон"
|
||||
Exit Function
|
||||
Case "statusFixingDiacriticCharactersKerning"
|
||||
getSerbian = "Ispravljanje kombinacije sa dijakritičkim znacima "
|
||||
Exit Function
|
||||
Case "fixDiacriticKerning"
|
||||
getSerbian = "Ispravite kombiniranje s naglašenim likovima"
|
||||
Exit Function
|
||||
Case Else
|
||||
getSerbian = "No translation"
|
||||
End Select
|
||||
|
@ -1102,8 +1354,11 @@ Function getBosnian(identifier As String) As String
|
|||
Case "noFileWithStylesFound"
|
||||
getBosnian = "Datoteka predloška koja sadrži stilove za učitavanje u dokument nije navedena." & chr(10) &" Na računaru možete odabrati novi predložak. " & chr(10) &"Ako datoteka predloška nije odabrana, ovaj korak čišćenja će se preskočiti."
|
||||
Exit Function
|
||||
Case "startQuietCleaningDescription"
|
||||
getBosnian = "Želite li započeti s čišćenjem dokumenta?" & chr(10) & "Ovdje možete odrediti i novu datoteku predloška." & chr(10) & "Stilovi iz predloška bit će učitani u dokument."
|
||||
Case "startQuietCleaningDescription1"
|
||||
getBosnian = "Želite li započeti s čišćenjem dokumenta?" & chr(10) & "Ovdje možete odrediti i novu datoteku predloška." & chr(10) & "Stilovi iz predloška"
|
||||
Exit Function
|
||||
Case "startQuietCleaningDescription2"
|
||||
getBosnian = " bit će učitani u dokument."
|
||||
Exit Function
|
||||
Case "buttonYes"
|
||||
getBosnian = "Da"
|
||||
|
@ -1112,7 +1367,7 @@ Function getBosnian(identifier As String) As String
|
|||
getBosnian = "Potvrda čišćenja"
|
||||
Exit Function
|
||||
Case "noStylesFileDialogTitle"
|
||||
getBosnian = "Datoteka predloška nije pronađena"
|
||||
getBosnian = "Konfigurišite datoteku stila"
|
||||
Exit Function
|
||||
Case "buttonTemplateNotFoundSkip"
|
||||
getBosnian = "Nastavite"
|
||||
|
@ -1232,7 +1487,7 @@ Function getBosnian(identifier As String) As String
|
|||
getBosnian = "Svi pronađeni primedbe moraju biti ispravljeni prije objavljivanja dokumenta."
|
||||
Exit Function
|
||||
Case "validationBadSymbolsNotification"
|
||||
getBosnian = "U tekstu su pronađeni neprikladni znakovi." & chr(10) & "Sada ćete dobiti listu isječaka teksta sa sličnim znakovima"
|
||||
getBosnian = "U tekstu su pronađeni neprikladni znakovi." & chr(10) & "Klikom na strelice navigatora možete se kretati između pronađenih odlomaka s neprikladnim znakovima."
|
||||
Exit Function
|
||||
Case "validationBadDrawings"
|
||||
getBosnian = "Dokument sadrži crteže ("
|
||||
|
@ -1274,22 +1529,22 @@ Function getBosnian(identifier As String) As String
|
|||
getBosnian = "Podešavanje čišćenja i provjere"
|
||||
Exit Function
|
||||
Case "dialogRussianFixesIPH"
|
||||
getBosnian = "Ispravci za tekstove na ruskom"
|
||||
Exit Function
|
||||
getBosnian = "Ispravci za tekstove na ruskom"
|
||||
Exit Function
|
||||
Case "documentIsReadOnly"
|
||||
getBosnian = "Dokument je samo za čitanje. Čišćenje nije moguće pokrenuti u ovom načinu rada."
|
||||
Exit Function
|
||||
getBosnian = "Dokument je samo za čitanje. Čišćenje nije moguće pokrenuti u ovom načinu rada."
|
||||
Exit Function
|
||||
Case "validateEndnotes1"
|
||||
getBosnian = "u end fusnoti (apsolutni broj)"
|
||||
Exit Function
|
||||
getBosnian = "u end fusnoti (apsolutni broj)"
|
||||
Exit Function
|
||||
Case "setOutlineLevel"
|
||||
getBosnian = "zadati uroven strukturni dokument"
|
||||
Exit Function
|
||||
getBosnian = "zadati uroven strukturni dokument"
|
||||
Exit Function
|
||||
Case "section"
|
||||
getBosnian = "Odjeljak"
|
||||
Exit Function
|
||||
Case "isInTable"
|
||||
getBosnian = "smještene unutar stola."
|
||||
getBosnian = "smještene unutar stola"
|
||||
Exit Function
|
||||
Case "foundHeadingIn"
|
||||
getBosnian = "Naslov pronađen u"
|
||||
|
@ -1304,11 +1559,11 @@ Function getBosnian(identifier As String) As String
|
|||
getBosnian = "stil stranice"
|
||||
Exit Function
|
||||
Case "table"
|
||||
getBosnian = "stola"
|
||||
Exit Function
|
||||
getBosnian = "stola"
|
||||
Exit Function
|
||||
Case "validationStarted"
|
||||
getBosnian = "Provjera u tijeku"
|
||||
Exit Function
|
||||
getBosnian = "Provjera u tijeku"
|
||||
Exit Function
|
||||
Case "chooseFontNameDialogTitle"
|
||||
getBosnian = "Odaberite font za stvaranje izvješća."
|
||||
Exit Function
|
||||
|
@ -1343,8 +1598,8 @@ Function getBosnian(identifier As String) As String
|
|||
getBosnian = "Ispravljamo DOI"
|
||||
Exit Function
|
||||
Case "advancedMenuResetChapterNumberingRules"
|
||||
getBosnian = "Resetirajte postavke numeriranja poglavlja"
|
||||
Exit Function
|
||||
getBosnian = "Resetirajte postavke numeriranja poglavlja"
|
||||
Exit Function
|
||||
Case "dialogConfigMaxSuperscript"
|
||||
getBosnian = "Maksimalna dužina retka u natpisu"
|
||||
Exit Function
|
||||
|
@ -1358,8 +1613,68 @@ Function getBosnian(identifier As String) As String
|
|||
getBosnian = "Zamjena crtica između brojeva numeričkim crticama"
|
||||
Exit Function
|
||||
Case "advancedMenuconvertFontsToCharStyles"
|
||||
getBosnian = "Stvorite stilove znakova iz pronađenih fontova "
|
||||
getBosnian = "Stvorite stilove znakova iz pronađenih fontova "
|
||||
Exit Function
|
||||
Case "buttonClose"
|
||||
getBosnian = "Zatvoriti "
|
||||
Exit Function
|
||||
Case "navigatorFound"
|
||||
getBosnian = "Ukupno pronađeno: "
|
||||
Exit Function
|
||||
Case "coloredTextDescription"
|
||||
getBosnian = "Navigacija istaknutim tekstom "
|
||||
Exit Function
|
||||
Case "foundColoredTextMessage"
|
||||
getBosnian = "Pronađen tekst s neprozirnom pozadinom. To obično nije prikladno za elektroničko izdavanje. Upotrijebite „Bez popunjavanja“ umjesto bijele pozadine "
|
||||
Exit Function
|
||||
Case "invalidParagraphFormattingFound"
|
||||
getBosnian = "Pronađene su pogrešne postavke oblikovanja odlomaka. Potrebno čišćenje. "
|
||||
Exit Function
|
||||
Case "fixBrokenCharBackTransparentMenuItem"
|
||||
getBosnian = "Ispravite netočne postavke ispunjavanja boja za odlomke "
|
||||
Exit Function
|
||||
Case "badSymbols"
|
||||
getBosnian = "Neprimjerene znakova za objavljivanje"
|
||||
Exit Function
|
||||
Case "badNoteSings"
|
||||
getBosnian = "Neprikladni simboli fusnota "
|
||||
Exit Function
|
||||
Case "validationBadFootnotesSymbolsNotification"
|
||||
getBosnian = "U simbolima fusnota pronađeni su neprikladni za objavljivanje simboli. "& Chr (10) &" Klikom na strelice navigatora možete se kretati između pronađenih simbola fusnota. "
|
||||
Exit Function
|
||||
Case "badSectionsInTables"
|
||||
getBosnian = "Odjeljci koji ne bi trebali biti unutar tablica "
|
||||
Exit Function
|
||||
Case "badHeadingsInFootnotes"
|
||||
getBosnian = "Naslovi koji ne bi trebali biti u fusnotama"
|
||||
Exit Function
|
||||
Case "badHeadingsInTables"
|
||||
getBosnian = "Zaglavlja koja se ne smiju stavljati unutar tablica"
|
||||
Exit Function
|
||||
Case "removeNotTransparentBackgrounds"
|
||||
getBosnian = "Uklonite netransparentne pozadine u tekstu"
|
||||
Exit Function
|
||||
Case "manualStyleFileSet"
|
||||
getBosnian = "Prilikom čišćenja koristit će se ručno naveden predložak"
|
||||
Exit Function
|
||||
Case "predefiendTemplateSelected"
|
||||
getBosnian = "Prilikom čišćenja koristit će se predložak odabran s popisa"
|
||||
Exit Function
|
||||
Case "selectTemplateDialogTitle"
|
||||
getBosnian = "Изаберите образац са листе"
|
||||
Exit Function
|
||||
Case "templateNotSelected"
|
||||
getBosnian = "Šablon nije izabran"
|
||||
Exit Function
|
||||
Case "templateChosen"
|
||||
getBosnian = "Izabrani šablon"
|
||||
Exit Function
|
||||
Case "statusFixingDiacriticCharactersKerning"
|
||||
getBosnian = "Popravljanje kombinacije s dijakritičkim znakovima"
|
||||
Exit Function
|
||||
Case "fixDiacriticKerning"
|
||||
getBosnian = "Ispravite kombiniranje s naglašenim likovima"
|
||||
Exit Function
|
||||
Case Else
|
||||
getBosnian = "No translation"
|
||||
End Select
|
||||
|
|
|
@ -1,131 +1,101 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Validation" script:language="StarBasic">Sub markval21
|
||||
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="Validation" script:language="StarBasic">Sub markval31
|
||||
End Sub
|
||||
|
||||
Private Function isInDoc(searchString As String) As Boolean
|
||||
Dim founds As Object
|
||||
Dim sDesc As Object
|
||||
Dim srch(0) as new com.sun.star.beans.PropertyValue
|
||||
sDesc = Thiscomponent.createSearchDescriptor()
|
||||
sDesc.SearchAll = true
|
||||
sDesc.ValueSearch = false
|
||||
sDesc.SearchStyles = false
|
||||
sDesc.SearchCaseSensitive = true
|
||||
sDesc.SearchRegularExpression = true
|
||||
sDesc.SearchString = searchString
|
||||
founds = Thiscomponent.findAll(sDesc)
|
||||
If founds.count <> 0 Then
|
||||
isInDoc = true
|
||||
Else
|
||||
isInDoc = false
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
|
||||
Sub validateButton
|
||||
Dim footnotesReport As String
|
||||
Dim graphicsReport As String
|
||||
Dim sectionsReport As String
|
||||
Dim badFootnoteSigns As Boolean
|
||||
Dim badGraphics As Boolean
|
||||
Dim badSectionsInTables As Boolean
|
||||
Dim badHeadingsInFootnotes As Boolean
|
||||
Dim outlinePageStylesReport As String
|
||||
Dim outlineInNotesReport As String
|
||||
Dim oulineInTablesReport As String
|
||||
Dim badHeadingsInTables As Boolean
|
||||
Dim badText As Boolean
|
||||
Dim badNumberings As Boolean
|
||||
Dim needExtendedInfo As Boolean
|
||||
Dim config As Object
|
||||
Dim needFixColoredText As Boolean
|
||||
Dim brokenCharBackTransparent As Boolean
|
||||
config = initRedactionConfiguration()
|
||||
|
||||
Dim statusIndicator as Object
|
||||
statusIndicator = ThisComponent.getCurrentController.statusIndicator
|
||||
statusIndicator.Start(getTranslation("validationStarted"),100)
|
||||
|
||||
badText = false
|
||||
badNumberings = false
|
||||
footnotesReport = noteSingsCheck
|
||||
badFootnoteSigns = noteSignsCheck()
|
||||
statusIndicator.setValue(10)
|
||||
graphicsReport = checkGraphics
|
||||
|
||||
badGraphics = checkGraphics()
|
||||
|
||||
badText = findBadCharacters()
|
||||
|
||||
needFixColoredText = findColoredBackgroundInDoc()
|
||||
|
||||
statusIndicator.setValue(20)
|
||||
sectionsReport = checkSectionsInTables
|
||||
|
||||
badSectionsInTables = checkSectionsInTables()
|
||||
statusIndicator.setValue(30)
|
||||
outlineInNotesReport = checkNotesOutline()
|
||||
|
||||
badHeadingsInFootnotes = checkNotesOutline()
|
||||
statusIndicator.setValue(40)
|
||||
outlinePageStylesReport = checkHeadingsInHeadersFooters
|
||||
|
||||
outlinePageStylesReport = checkHeadingsInHeadersFooters()
|
||||
statusIndicator.setValue(50)
|
||||
oulineInTablesReport = checkHeadingsInTextTables
|
||||
|
||||
badHeadingsInTables = checkHeadingsInTextTables()
|
||||
|
||||
statusIndicator.setValue(60)
|
||||
If outlineInNotesReport <> "" Then
|
||||
MsgBox outlineInNotesReport
|
||||
EndIf
|
||||
If oulineInTablesReport <> "" Then
|
||||
MsgBox oulineInTablesReport
|
||||
EndIf
|
||||
|
||||
If outlinePageStylesReport <> "" Then
|
||||
MsgBox outlinePageStylesReport
|
||||
EndIf
|
||||
|
||||
If footnotesReport <> "" Then
|
||||
MsgBox footnotesReport
|
||||
EndIf
|
||||
If graphicsReport <> "" Then
|
||||
MsgBox graphicsReport
|
||||
EndIf
|
||||
If sectionsReport <> "" Then
|
||||
MsgBox sectionsReport
|
||||
EndIf
|
||||
If isInDoc("[\uE000-\uF8FF]") Then
|
||||
badText = true
|
||||
EndIf
|
||||
|
||||
If config.getPropertyValue("complexity") = "makerUp" then
|
||||
needExtendedInfo = true
|
||||
Else
|
||||
needExtendedInfo = false
|
||||
EndIf
|
||||
|
||||
printNumberingSymbols(needExtendedInfo)
|
||||
brokenCharBackTransparent = hasbrokenCharBackTransparent()
|
||||
If (brokenCharBackTransparent) Then
|
||||
MsgBox getTranslation("invalidParagraphFormattingFound")
|
||||
EndIf
|
||||
|
||||
numberingsErros = printNumberingSymbols(needExtendedInfo)
|
||||
statusIndicator.setValue(80)
|
||||
If badText OR badNumberings OR footnotesReport <> "" OR graphicsReport <> "" Or outlineInNotesReport <> "" Or sectionsReport <> "" OR oulineInTablesReport <> "" OR outlinePageStylesReport <> "" Then
|
||||
If brokenCharBackTransparent OR needFixColoredText OR numberingsErros OR badText OR badFootnoteSigns OR badGraphics Or badHeadingsInFootnotes Or badSectionsInTables OR badHeadingsInTables OR outlinePageStylesReport <> "" Then
|
||||
MsgBox getTranslation("validationWarning")
|
||||
If badText Then
|
||||
MsgBox getTranslation("validationBadSymbolsNotification")
|
||||
removeBadCharacters
|
||||
EndIf
|
||||
Else
|
||||
MsgBox getTranslation("validationSuccess")
|
||||
MsgBox getTranslation("validationSuccess")
|
||||
EndIf
|
||||
statusIndicator.end()
|
||||
End Sub
|
||||
|
||||
Private Function checkGraphics() As String
|
||||
Function checkGraphics() As Boolean
|
||||
Dim drawPages As Object
|
||||
Dim count as Integer
|
||||
Dim draw As Object
|
||||
Dim result As String
|
||||
result = ""
|
||||
Dim shapeType As String
|
||||
Dim embeededObject As Object
|
||||
Dim badFrame As Long
|
||||
badFrame = 0
|
||||
Dim drawingN As Long
|
||||
drawingN = 0
|
||||
drawPages = ThisComponent.DrawPage
|
||||
Dim i As Integer
|
||||
Dim i As Long
|
||||
Dim badDrawings() As Object
|
||||
Dim badFrames() As Object
|
||||
count = drawPages.getCount()
|
||||
For i = 0 to count-1
|
||||
For i = 0 to count - 1
|
||||
draw = drawPages.getByIndex(i)
|
||||
shapeType = draw.ShapeType
|
||||
If InStr(shapeType,"com.sun.star.drawing") = 1 Then
|
||||
drawingN = drawingN + 1
|
||||
addToArray(badDrawings, draw.Anchor)
|
||||
EndIf
|
||||
If InStr(shapeType,"FrameShape") = 1 Then
|
||||
If draw.supportsService("com.sun.star.text.TextEmbeddedObject") Then
|
||||
embeededObject = draw.getEmbeddedObject()
|
||||
If IsNull(embeededObject) Then
|
||||
badFrame = badFrame + 1
|
||||
addToArray(badFrames, draw.Anchor)
|
||||
Else
|
||||
If Not embeededObject.supportsService("com.sun.star.formula.FormulaProperties") Then
|
||||
badFrame = badFrame + 1
|
||||
addToArray(badFrames, draw.Anchor)
|
||||
Else
|
||||
'Formula
|
||||
EndIf
|
||||
|
@ -133,23 +103,17 @@ Private Function checkGraphics() As String
|
|||
EndIf
|
||||
EndIf
|
||||
Next i
|
||||
If drawingN <> 0 Then
|
||||
result = result & getTranslation("validationBadDrawings") & drawingN & getTranslation("validationExcerptNotSuitable") & chr(10)
|
||||
checkGraphics = false
|
||||
If UBound(badDrawings) > -1 Then
|
||||
startNavigatorDialog(getTranslation("validationBadDrawings") & (UBound(badDrawings) + 1) & getTranslation("validationExcerptNotSuitable"),badDrawings)
|
||||
checkGraphics = true
|
||||
EndIf
|
||||
If badFrame <> 0 Then
|
||||
result = result & getTranslation("validationBadEmbeededObjects") & badFrame & getTranslation("validationExcerptNotSuitable") & chr(10)
|
||||
If UBound(badFrames) > -1 Then
|
||||
startNavigatorDialog(getTranslation("validationBadEmbeededObjects") & (UBound(badFrames) + 1) & getTranslation("validationExcerptNotSuitable"),badFrames)
|
||||
checkGraphics = true
|
||||
EndIf
|
||||
checkGraphics = result
|
||||
End Function
|
||||
|
||||
Private Sub removeBadCharacters
|
||||
StartTracking
|
||||
AskAndReplace("[\uE000-\uF8FF]+","")
|
||||
StopTracking
|
||||
showTrackedChanges
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub fixDOI
|
||||
StartTracking
|
||||
replaceCharsInDOI
|
||||
|
@ -163,7 +127,7 @@ Sub replaceCharsInDOI
|
|||
AskAndReplace("(?<=DOI[0-9. /XVI:‒–—−ХOО?-]{1,50})[‒–—−]{1,5}","-")
|
||||
End sub
|
||||
|
||||
Private Function noteSingsCheck() As String
|
||||
Private Function noteSignsCheck() As Boolean
|
||||
Dim footnotes As Object
|
||||
Dim footnote As Object
|
||||
Dim endnote As Object
|
||||
|
@ -173,9 +137,11 @@ Private Function noteSingsCheck() As String
|
|||
Dim char As Long
|
||||
Dim label As String
|
||||
Dim result As String
|
||||
Dim founds() As Object
|
||||
noteSignsCheck = false
|
||||
result = ""
|
||||
footnotes = ThisComponent.footnotes
|
||||
endnotes = ThisComponent.Footnotes
|
||||
footnotes = ThisComponent.Footnotes
|
||||
endnotes = ThisComponent.Endnotes
|
||||
count = footnotes.getCount
|
||||
Dim i As Integer
|
||||
Dim j As Integer
|
||||
|
@ -185,8 +151,9 @@ Private Function noteSingsCheck() As String
|
|||
charNum = Len(label)
|
||||
For j = 1 to charNum
|
||||
char = Asc(Right(Left(label,j),1))
|
||||
If char >= 57344 AND char <= 63743 then
|
||||
result = result & getTranslation("validateFootnotes1") & " " & Chr(char) & " " & getTranslation("validateFootnotes2") & " " & i & " " & getTranslation("validateFootnotes3") & chr(10)
|
||||
If char >= 57344 AND char <= 63743 Then
|
||||
addToArray(founds,footnote.Anchor)
|
||||
'result = result & getTranslation("validateFootnotes1") & " " & Chr(char) & " " & getTranslation("validateFootnotes2") & " " & i & " " & getTranslation("validateFootnotes3") & chr(10)
|
||||
End If
|
||||
Next j
|
||||
Next i
|
||||
|
@ -197,24 +164,30 @@ Private Function noteSingsCheck() As String
|
|||
charNum = Len(label)
|
||||
For j = 1 to charNum
|
||||
char = Asc(Right(Left(label,j),1))
|
||||
If char >= 57344 AND char <= 63743 then
|
||||
result = result & getTranslation("validateFootnotes1") & " " & Chr(char) & " " & getTranslation("validateEndnotes1") & " " & i & " " & getTranslation("validateFootnotes3") & chr(10)
|
||||
If char >= 57344 AND char <= 63743 Then
|
||||
addToArray(founds,endnote.Anchor)
|
||||
'result = result & getTranslation("validateFootnotes1") & " " & Chr(char) & " " & getTranslation("validateEndnotes1") & " " & i & " " & getTranslation("validateFootnotes3") & chr(10)
|
||||
End If
|
||||
Next j
|
||||
Next i
|
||||
noteSingsCheck = result
|
||||
If (UBound(founds) > -1) Then
|
||||
noteSignsCheck = true
|
||||
MsgBox(getTranslation("validationBadFootnotesSymbolsNotification"))
|
||||
startNavigatorDialog(getTranslation("badNoteSings"),founds)
|
||||
EndIf
|
||||
'noteSignsCheck = result
|
||||
End Function
|
||||
|
||||
Function checkNotesOutline As String
|
||||
Dim oDescriptor As Object
|
||||
Function checkNotesOutline As Boolean
|
||||
Dim footNotes As Object
|
||||
Dim endNotes As Object
|
||||
Dim x As Integer
|
||||
Dim x As Long
|
||||
Dim aNote As Object
|
||||
Dim oEnum As Object
|
||||
Dim oCurPar As Object
|
||||
Dim result As String
|
||||
result = ""
|
||||
' Dim result As String
|
||||
Dim founds() As Object
|
||||
' result = ""
|
||||
footNotes = thisComponent.footNotes
|
||||
endNotes = thisComponent.EndNotes
|
||||
for x = 0 to footNotes.Count -1
|
||||
|
@ -224,7 +197,8 @@ Function checkNotesOutline As String
|
|||
Do While oEnum.hasMoreElements()
|
||||
oCurPar = oEnum.nextElement()
|
||||
If oCurPar.OutlineLevel > 0 Then
|
||||
result = result & getTranslation("validateFootnotes2") & " " & x & " " & getTranslation("setOutlineLevel") & " " & oCurPar.OutlineLevel & chr(10)
|
||||
addToArray(founds,oCurPar)
|
||||
' result = result & getTranslation("validateFootnotes2") & " " & x & " " & getTranslation("setOutlineLevel") & " " & oCurPar.OutlineLevel & chr(10)
|
||||
EndIf
|
||||
Loop
|
||||
Next
|
||||
|
@ -235,21 +209,29 @@ Function checkNotesOutline As String
|
|||
Do While oEnum.hasMoreElements()
|
||||
oCurPar = oEnum.nextElement()
|
||||
If oCurPar.OutlineLevel > 0 Then
|
||||
result = result & getTranslation("validateEndnotes1") & " " & x & " " & getTranslation("setOutlineLevel") & " " & oCurPar.OutlineLevel & chr(10)
|
||||
addToArray(founds,oCurPar)
|
||||
' result = result & getTranslation("validateEndnotes1") & " " & x & " " & getTranslation("setOutlineLevel") & " " & oCurPar.OutlineLevel & chr(10)
|
||||
EndIf
|
||||
Loop
|
||||
Next
|
||||
checkNotesOutline = result
|
||||
If (UBound(founds) > -1) Then
|
||||
startNavigatorDialog(getTranslation("badHeadingsInFootnotes"),founds)
|
||||
checkNotesOutline = true
|
||||
Else
|
||||
checkNotesOutline = false
|
||||
EndIf
|
||||
|
||||
End Function
|
||||
|
||||
Function checkSectionsInTables As String
|
||||
Function checkSectionsInTables As Boolean
|
||||
Dim x As Integer
|
||||
Dim oEnum As Object
|
||||
Dim result As String
|
||||
'Dim result As String
|
||||
Dim sections As Object
|
||||
Dim section As Object
|
||||
Dim anchor As Object
|
||||
Dim anchorText As Object
|
||||
Dim badSections() As Object
|
||||
result = ""
|
||||
sections = thisComponent.TextSections
|
||||
for x = 0 to sections.Count -1
|
||||
|
@ -257,10 +239,17 @@ Function checkSectionsInTables As String
|
|||
anchor = section.getAnchor()
|
||||
anchorText = anchor.getText()
|
||||
If anchorText.supportsService("com.sun.star.text.CellProperties") Then
|
||||
result = result & getTranslation("section") & " " & section.Name & " " & getTranslation("isInTable") & chr(10)
|
||||
addToArray(badSections(),anchor)
|
||||
'result = result & getTranslation("section") & " " & section.Name & " " & getTranslation("isInTable") & chr(10)
|
||||
EndIf
|
||||
Next
|
||||
checkSectionsInTables = result
|
||||
|
||||
If (UBound(badSections) > -1) Then
|
||||
checkSectionsInTables = true
|
||||
startNavigatorDialog(getTranslation("badSectionsInTables"),badSections)
|
||||
Else
|
||||
checkSectionsInTables = false
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
Function checkHeadingsInHeadersFooters As String
|
||||
|
@ -318,7 +307,7 @@ Function checkHeadingsInHeadersFooters As String
|
|||
checkHeadingsInHeadersFooters = result
|
||||
End Function
|
||||
|
||||
Function checkHeadingsInTextTables(oText As Object) As String
|
||||
Function checkHeadingsInTextTables() As Boolean
|
||||
Dim enum1Element As Object
|
||||
Dim enum1 As Object
|
||||
Dim enum2 As Object
|
||||
|
@ -331,8 +320,7 @@ Function checkHeadingsInTextTables(oText As Object) As String
|
|||
Dim cell As Object
|
||||
Dim cellText As Object
|
||||
Dim firstCellName As String
|
||||
Dim result As String
|
||||
result = ""
|
||||
Dim founds() As Object
|
||||
enum1 = ThisComponent.Text.createEnumeration
|
||||
While enum1.hasMoreElements
|
||||
enum1Element = enum1.nextElement
|
||||
|
@ -343,20 +331,86 @@ Function checkHeadingsInTextTables(oText As Object) As String
|
|||
cell = enum1Element.getCellByName(cellNames(i))
|
||||
cellText = cell.getText()
|
||||
If cellNames(i) = firstCellName Then
|
||||
If isHeadingNotFirstInText(cellText) Then
|
||||
result = result & getTranslation("foundHeadingIn") & " " & getTranslation("table") & " " & enum1Element.TableName & chr(10)
|
||||
EndIf
|
||||
addHeadingNotFirstInText(cellText,founds)
|
||||
Else
|
||||
If isHeadingsInText(cellText) Then
|
||||
result = result & getTranslation("foundHeadingIn") & " " & getTranslation("table") & " " & enum1Element.TableName & chr(10)
|
||||
EndIf
|
||||
addHeadingsInText(cellText,founds)
|
||||
EndIf
|
||||
Next i
|
||||
EndIf
|
||||
Wend
|
||||
checkHeadingsInTextTables = result
|
||||
If (UBound(founds) > -1) Then
|
||||
checkHeadingsInTextTables = true
|
||||
startNavigatorDialog(getTranslation("badHeadingsInTables"),founds)
|
||||
Else
|
||||
checkHeadingsInTextTables = false
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
Sub addHeadingNotFirstInText(oText As Object, founds() As Object)
|
||||
Dim enum1Element As Object
|
||||
Dim enum1 As Object
|
||||
Dim enum2 As Object
|
||||
Dim thisPortion As Object
|
||||
Dim footnoteText As Object
|
||||
Dim label As String
|
||||
Dim labelNum As Integer
|
||||
Dim i As Integer
|
||||
Dim count As Integer
|
||||
Dim cell As Object
|
||||
Dim cellText As Object
|
||||
Dim first As Boolean
|
||||
first = true
|
||||
enum1 = oText.createEnumeration
|
||||
While enum1.hasMoreElements
|
||||
enum1Element = enum1.nextElement
|
||||
If enum1Element.supportsService("com.sun.star.text.Paragraph") Then
|
||||
If Not first Then
|
||||
If enum1Element.OutlineLevel > 0 Then
|
||||
addToArray(founds,enum1Element)
|
||||
EndIf
|
||||
EndIf
|
||||
ElseIf enum1Element.supportsService("com.sun.star.text.TextTable") Then
|
||||
cellNames = enum1Element.cellNames
|
||||
For i = LBound(cellNames) To Ubound(cellNames)
|
||||
cell = enum1Element.getCellByName(cellNames(i))
|
||||
cellText = cell.getText()
|
||||
addHeadingsInText(cellText,founds)
|
||||
Next i
|
||||
EndIf
|
||||
first = false
|
||||
Wend
|
||||
End Sub
|
||||
|
||||
Sub addHeadingsInText(oText As Object, founds() As Object)
|
||||
Dim enum1Element As Object
|
||||
Dim enum1 As Object
|
||||
Dim enum2 As Object
|
||||
Dim thisPortion As Object
|
||||
Dim footnoteText As Object
|
||||
Dim label As String
|
||||
Dim labelNum As Integer
|
||||
Dim i As Integer
|
||||
Dim count As Integer
|
||||
Dim cell As Object
|
||||
Dim cellText As Object
|
||||
enum1 = oText.Text.createEnumeration
|
||||
While enum1.hasMoreElements
|
||||
enum1Element = enum1.nextElement
|
||||
If enum1Element.supportsService("com.sun.star.text.Paragraph") Then
|
||||
If enum1Element.OutlineLevel > 0 Then
|
||||
addToArray(founds,enum1Element)
|
||||
EndIf
|
||||
ElseIf enum1Element.supportsService("com.sun.star.text.TextTable") Then
|
||||
cellNames = enum1Element.cellNames
|
||||
For i = LBound(cellNames) To Ubound(cellNames)
|
||||
cell = enum1Element.getCellByName(cellNames(i))
|
||||
cellText = cell.getText()
|
||||
addHeadingsInText(cellText,founds)
|
||||
Next i
|
||||
EndIf
|
||||
Wend
|
||||
End Sub
|
||||
|
||||
Function isHeadingNotFirstInText(oText As Object) As Boolean
|
||||
Dim enum1Element As Object
|
||||
Dim enum1 As Object
|
||||
|
@ -433,7 +487,139 @@ Function isHeadingsInText(oText As Object) As Boolean
|
|||
isHeadingsInText = false
|
||||
End Function
|
||||
|
||||
Private Sub printNumberingSymbols(needExtendedInfo)
|
||||
Function hasBrokenCharBackTransparent As Boolean
|
||||
Dim footNotes As Object
|
||||
Dim endNotes As Object
|
||||
Dim i As Long
|
||||
Dim oStyles As Object
|
||||
Dim pageStyles As Object
|
||||
Dim pageStyle As Object
|
||||
hasBrokenCharBackTransparent = isManualCharBackTransparentInTextParas(ThisComponent.Text)
|
||||
If (hasBrokenCharBackTransparent) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
footNotes = ThisComponent.FootNotes
|
||||
For i = 0 to footNotes.getCount - 1
|
||||
hasBrokenCharBackTransparent = isManualCharBackTransparentInTextParas(footNotes.getByIndex(i).Text)
|
||||
If (hasBrokenCharBackTransparent) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
Next i
|
||||
endNotes = thisComponent.footNotes
|
||||
For i = 0 to footNotes.Count -1
|
||||
hasBrokenCharBackTransparent = isManualCharBackTransparentInTextParas(endNotes.getByIndex(i).Text)
|
||||
If (hasBrokenCharBackTransparent) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
Next i
|
||||
oStyles = ThisComponent.StyleFamilies
|
||||
pageStyles = oStyles.getByName(oStyles.elementNames(2))
|
||||
For i = 0 to pageStyles.Count -1
|
||||
pageStyle = pageStyles.getByIndex(i)
|
||||
If Not IsEmpty(pageStyle.FooterText) Then
|
||||
hasBrokenCharBackTransparent = isManualCharBackTransparentInTextParas(pageStyle.FooterText)
|
||||
If (hasBrokenCharBackTransparent) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
EndIf
|
||||
If Not IsEmpty(pageStyle.FooterTextFirst) Then
|
||||
hasBrokenCharBackTransparent = isManualCharBackTransparentInTextParas(pageStyle.FooterTextFirst)
|
||||
If (hasBrokenCharBackTransparent) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
EndIf
|
||||
If Not IsEmpty(pageStyle.FooterTextRight) Then
|
||||
hasBrokenCharBackTransparent = isManualCharBackTransparentInTextParas(pageStyle.FooterTextRight)
|
||||
If (hasBrokenCharBackTransparent) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
EndIf
|
||||
If Not IsEmpty(pageStyle.FooterTextLeft) Then
|
||||
hasBrokenCharBackTransparent = isManualCharBackTransparentInTextParas(pageStyle.FooterTextLeft)
|
||||
If (hasBrokenCharBackTransparent) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
EndIf
|
||||
If Not IsEmpty(pageStyle.HeaderText) Then
|
||||
hasBrokenCharBackTransparent = isManualCharBackTransparentInTextParas(pageStyle.HeaderText)
|
||||
If (hasBrokenCharBackTransparent) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
EndIf
|
||||
If Not IsEmpty(pageStyle.HeaderTextFirst) Then
|
||||
hasBrokenCharBackTransparent = isManualCharBackTransparentInTextParas(pageStyle.HeaderTextFirst)
|
||||
If (hasBrokenCharBackTransparent) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
EndIf
|
||||
If Not IsEmpty(pageStyle.HeaderTextRight) Then
|
||||
hasBrokenCharBackTransparent = isManualCharBackTransparentInTextParas(pageStyle.HeaderTextRight)
|
||||
If (hasBrokenCharBackTransparent) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
EndIf
|
||||
If Not IsEmpty(pageStyle.HeaderTextLeft) Then
|
||||
hasBrokenCharBackTransparent = isManualCharBackTransparentInTextParas(pageStyle.HeaderTextLeft)
|
||||
If (hasBrokenCharBackTransparent) Then
|
||||
Exit Function
|
||||
EndIf
|
||||
EndIf
|
||||
Next i
|
||||
End Function
|
||||
|
||||
Function isManualCharBackTransparent(para As Object) As Boolean
|
||||
Dim styleName As String
|
||||
Dim paraStyles As Object
|
||||
isManualCharBackTransparent = false
|
||||
If para.CharBackTransparent = false Then
|
||||
styleName = para.ParaStyleName
|
||||
paraStyles = ThisComponent.StyleFamilies.getByName("ParagraphStyles")
|
||||
paraStyle = paraStyles.GetByName(styleName)
|
||||
If paraStyle.CharBackTransparent = true Then
|
||||
isManualCharBackTransparent = true
|
||||
EndIf
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
Function isManualCharBackTransparentInTextParas(oText As Object) As Boolean
|
||||
Dim enum1Element As Object
|
||||
Dim enum1 As Object
|
||||
Dim enum2 As Object
|
||||
Dim thisPortion As Object
|
||||
Dim footnoteText As Object
|
||||
Dim label As String
|
||||
Dim labelNum As Integer
|
||||
Dim i As Integer
|
||||
Dim count As Integer
|
||||
Dim cell As Object
|
||||
Dim cellText As Object
|
||||
|
||||
enum1 = oText.Text.createEnumeration
|
||||
While enum1.hasMoreElements
|
||||
enum1Element = enum1.nextElement
|
||||
If enum1Element.supportsService("com.sun.star.text.Paragraph") Then
|
||||
If isManualCharBackTransparent(enum1Element) Then
|
||||
isManualCharBackTransparentInTextParas = true
|
||||
Exit Function
|
||||
EndIf
|
||||
ElseIf enum1Element.supportsService("com.sun.star.text.TextTable") Then
|
||||
cellNames = enum1Element.cellNames
|
||||
For i = LBound(cellNames) To Ubound(cellNames)
|
||||
cell = enum1Element.getCellByName(cellNames(i))
|
||||
cellText = cell.getText()
|
||||
If isManualCharBackTransparentInTextParas(cellText) Then
|
||||
isManualCharBackTransparentInTextParas = true
|
||||
Exit Function
|
||||
EndIf
|
||||
Next i
|
||||
EndIf
|
||||
Wend
|
||||
isManualCharBackTransparentInTextParas = false
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Function printNumberingSymbols(needExtendedInfo) As Boolean
|
||||
Dim families As Object
|
||||
Dim numStyles As Object
|
||||
Dim numStyle As Object
|
||||
|
@ -450,6 +636,7 @@ Private Sub printNumberingSymbols(needExtendedInfo)
|
|||
Dim exLength As Integer
|
||||
Dim report As String
|
||||
Dim k As Integer
|
||||
printNumberingSymbols = false
|
||||
families = ThisComponent.StyleFamilies
|
||||
numStyles = families.getByName("NumberingStyles")
|
||||
result = ""
|
||||
|
@ -479,7 +666,7 @@ Private Sub printNumberingSymbols(needExtendedInfo)
|
|||
exLength = Len(excerpt)
|
||||
EndIf
|
||||
If fontChar <> "" Then
|
||||
tmp = getTranslation("validateNumberingLevel") &" " & (j + 1) & " " & getTranslation("validateNumberingFont") & " " & fontName & " " & getTranslation("validateNumberingSymbol") & " " & fontChar & " (" & Hex(Asc(fontChar)) & ") "& Left(excerpt,exLength) & chr(10)
|
||||
tmp = numRules.Name &" "& getTranslation("validateNumberingLevel") &" " & (j + 1) & " " & getTranslation("validateNumberingFont") & " " & fontName & " " & getTranslation("validateNumberingSymbol") & " " & fontChar & " (" & Hex(Asc(fontChar)) & ") "& Left(excerpt,exLength) & chr(10)
|
||||
If Asc(fontChar) > 57344 AND Asc(fontChar) < 63743 Then
|
||||
resultBad = resultBad & tmp
|
||||
ElseIf fontName <> "IPH Astra Serif" _
|
||||
|
@ -499,8 +686,9 @@ Private Sub printNumberingSymbols(needExtendedInfo)
|
|||
|
||||
report = ""
|
||||
If result = "" AND resultBad = "" Then
|
||||
Exit sub
|
||||
Else
|
||||
Exit Function
|
||||
Else
|
||||
printNumberingSymbols = true
|
||||
If resultBad <> "" Then
|
||||
report = getTranslation("validateNumberingsReportSymbols") & chr(10) & resultBad
|
||||
EndIf
|
||||
|
@ -509,7 +697,7 @@ Private Sub printNumberingSymbols(needExtendedInfo)
|
|||
EndIf
|
||||
EndIf
|
||||
MsgBox report
|
||||
End Sub
|
||||
End Function
|
||||
|
||||
Private Sub showTrackedChanges
|
||||
dim document as object
|
||||
|
@ -581,11 +769,9 @@ Sub fontReportButton
|
|||
Exit sub
|
||||
EndIf
|
||||
Dim FileName As String
|
||||
FileName = getCharsInFont(targetFontName)
|
||||
getCharsInFont(targetFontName)
|
||||
statusIndicator.end()
|
||||
If FileName <> "" Then
|
||||
openReport(FileName)
|
||||
EndIf
|
||||
|
||||
End Sub
|
||||
|
||||
Sub onSelectFont(oEvent)
|
||||
|
@ -725,7 +911,7 @@ Sub addToArray(xArray(),vNextElement)
|
|||
xArray(iUB) = vNextElement
|
||||
End Sub
|
||||
|
||||
Function getCharsInFont(fontName As String) As String
|
||||
Sub getCharsInFont(fontName As String)
|
||||
Dim resultArray() As String
|
||||
Dim pageNums() As Long
|
||||
Dim firstPages() As Long
|
||||
|
@ -811,44 +997,174 @@ Function getCharsInFont(fontName As String) As String
|
|||
EndIf
|
||||
Next j
|
||||
Next i
|
||||
resultString = ""
|
||||
For i = LBound(resultArray) To UBound(resultArray)
|
||||
resultString = resultString & "<a href='https://unicode-table.com/ru/" & resultArray(i) & "'" & ">https://unicode-table.com/ru/" & resultArray(i) & "</a> " & getTranslation("charFirstPage") & " " & pageNums(i) & "<br>" & Chr(10)
|
||||
Next i
|
||||
|
||||
If resultString <> "" Then
|
||||
'MsgBox "Символы в шрифте "& fontName &Chr(10)&resultString
|
||||
Dim FileName As String 'Holds the file name
|
||||
Dim n As Integer 'Holds the file number
|
||||
Dim f As Integer 'Index variable
|
||||
Dim s As String 'Temporary string for input
|
||||
Dim fileaccess As Object
|
||||
Dim outtextstream As Object
|
||||
Dim out As Object
|
||||
|
||||
Dim sTemp$
|
||||
GlobalScope.BasicLibraries.loadLibrary("Tools")
|
||||
path=DirectoryNameoutofPath(ThisComponent.getURL(),"/")
|
||||
FileName = path & "/symbolsInFont" & fontName & ".html"
|
||||
'n = FreeFile() 'Next free file number
|
||||
'Open FileName For Output Access Read Write As #n 'Open for read/write
|
||||
fileaccess = createUnoService ("com.sun.star.ucb.SimpleFileAccess")
|
||||
outtextstream = createUnoService ("com.sun.star.io.TextOutputStream")
|
||||
outtextstream.setEncoding( "UTF-8" )
|
||||
out = fileaccess.openFileWrite( FileName )
|
||||
outtextstream.setOutputStream( out )
|
||||
outtextstream.writeString( "<html><head><title>" & getTranslation("symbolsInFontHeading") & " "& fontName & "</title></head><body><h2>" & getTranslation("symbolsInFontHeading") & " "& fontName &":</h2>"&resultString &"</body></html>" )
|
||||
outtextstream.closeOutput()
|
||||
getCharsInFont = FileName
|
||||
Exit Function
|
||||
Dim newDocCursor As Object
|
||||
Dim newDoc As Object
|
||||
newDoc = starDesktop.loadComponentFromURL("private:factory/swriter", "_blank", 0, Array())
|
||||
newDocCursor = newDoc.getCurrentController().getViewCursor()
|
||||
newDocCursor.String = getTranslation("symbolsInFontHeading") & " " & fontName
|
||||
newDocCursor.ParaStyleName = "Heading 1"
|
||||
newDocCursor.collapseToEnd()
|
||||
newDocCursor.Text.insertControlCharacter(newDocCursor.End,com.sun.star.text.ControlCharacter.PARAGRAPH_BREAK,False)
|
||||
For i = LBound(resultArray) To UBound(resultArray)
|
||||
newDocCursor.ParaStyleName = "Text body"
|
||||
newDocCursor.String = "https://unicode-table.com/ru/" & resultArray(i)
|
||||
newDocCursor.HyperLinkURL = "https://unicode-table.com/ru/" & resultArray(i)
|
||||
newDocCursor.collapseToEnd()
|
||||
newDocCursor.String = " " & getTranslation("charFirstPage") & " " & pageNums(i)
|
||||
newDocCursor.collapseToEnd()
|
||||
newDocCursor.Text.insertControlCharacter(newDocCursor.End,com.sun.star.text.ControlCharacter.PARAGRAPH_BREAK,False)
|
||||
Next i
|
||||
Exit Sub
|
||||
|
||||
Else
|
||||
MsgBox getTranslation("symbolsInFontNotFound1") & " " & fontName & " " & getTranslation("symbolsInFontNotFound2")
|
||||
getCharsInFont = ""
|
||||
Exit Function
|
||||
EndIf
|
||||
End Sub
|
||||
|
||||
|
||||
Function findBadCharacters() As Boolean
|
||||
Dim founds As Object
|
||||
Dim foundObjects() As Object
|
||||
founds = findInDoc("[\uE000-\uF8FF]+")
|
||||
findBadCharacters = false
|
||||
If founds.count <> 0 Then
|
||||
'MsgBox getTranslation("validationBadSymbolsNotification")
|
||||
foundObjects = convertXIndexAccessToArray(founds)
|
||||
startNavigatorDialog(getTranslation("badSymbols"),foundObjects)
|
||||
findBadCharacters = true
|
||||
EndIf
|
||||
|
||||
End Function
|
||||
|
||||
Function findColoredBackgroundInDoc() As Boolean
|
||||
Dim founds As Object
|
||||
Dim sDesc As Object
|
||||
Dim foundObjects() As Object
|
||||
Dim SrchAttributes(0) as new com.sun.star.beans.PropertyValue
|
||||
SrchAttributes(0).Name = "CharBackTransparent"
|
||||
SrchAttributes(0).Value = False
|
||||
sDesc = Thiscomponent.createSearchDescriptor()
|
||||
sDesc.SearchAll = true
|
||||
sDesc.ValueSearch = false
|
||||
sDesc.SearchRegularExpression = true
|
||||
sDesc.searchStyles = true
|
||||
sDesc.SetSearchAttributes(SrchAttributes())
|
||||
founds = Thiscomponent.findAll(sDesc)
|
||||
findColoredBackgroundInDoc = false
|
||||
If founds.count <> 0 Then
|
||||
MsgBox getTranslation("foundColoredTextMessage")
|
||||
foundObjects = convertXIndexAccessToArray(founds)
|
||||
startNavigatorDialog(getTranslation("coloredTextDescription"),foundObjects)
|
||||
findColoredBackgroundInDoc = true
|
||||
EndIf
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
Sub startNavigatorDialog(objectsDescription As String,foundObjects() As Object)
|
||||
Dim dialog As Object
|
||||
Dim leftImageURL As String
|
||||
Dim rightImageURL As String
|
||||
Dim curNum As Long
|
||||
Dim maxNum As Long
|
||||
Dim found As Object
|
||||
waitingForDialog = true
|
||||
maxNum = UBound(foundObjects)
|
||||
dialog = notModalDialog("Navigator")
|
||||
dialog.getControl("found").SetText(getTranslation("navigatorFound") & CStr(maxNum+1))
|
||||
curNum = 0
|
||||
found = foundObjects(curNum)
|
||||
dialog.getControl("current").SetText(CStr(curNum+1))
|
||||
|
||||
dialog.getControl("description").SetText(objectsDescription)
|
||||
' dialog.getControl("cancel").Label = getTranslation("buttonCancel")
|
||||
dialog.getControl("close").Label = getTranslation("buttonClose")
|
||||
leftImageURL = convertToURL(getExtensionPath() & "/images/left-navigator.svg")
|
||||
rightImageURL = convertToURL(getExtensionPath() & "/images/right-navigator.svg")
|
||||
dialog.getControl("prev").model.imageURL = leftImageURL
|
||||
'dialog.getControl("prev").model.ScaleMode = 2
|
||||
dialog.getControl("next").model.imageURL = rightImageURL
|
||||
'dialog.getControl("next").model.ScaleMode = 2
|
||||
dialog.setvisible(true)
|
||||
'select first found '
|
||||
'not using view cursor as if shape was prevously selected runtime exception will appear
|
||||
Thiscomponent.CurrentController.select(found)
|
||||
Do While waitingForDialog
|
||||
If dialog.getControl("close").model.state = 1 then
|
||||
exit Do
|
||||
EndIf
|
||||
If dialog.getControl("prev").model.state = 1 then
|
||||
curNum = getPrevFound(curNum, maxNum)
|
||||
found = foundObjects(curNum)
|
||||
Thiscomponent.CurrentController.select(found)
|
||||
dialog.getControl("current").SetText(CStr(curNum+1))
|
||||
dialog.getControl("prev").model.state = 0
|
||||
EndIf
|
||||
If dialog.getControl("next").model.state = 1 then
|
||||
curNum = getNextFound(curNum, maxNum)
|
||||
found = foundObjects(curNum)
|
||||
Thiscomponent.CurrentController.select(found)
|
||||
dialog.getControl("current").SetText(CStr(curNum+1))
|
||||
dialog.getControl("next").model.state = 0
|
||||
EndIf
|
||||
|
||||
wait (100)
|
||||
Loop
|
||||
dialog.dispose
|
||||
End Sub
|
||||
|
||||
Function convertXIndexAccessToArray(founds As Object) As Variant
|
||||
Dim i As Integer
|
||||
Dim maxNum As Integer
|
||||
Dim arrayOfObjects() As Object
|
||||
maxNum = founds.count - 1
|
||||
For i = 0 To maxNum
|
||||
addToArray(arrayOfObjects,founds.getByIndex(i))
|
||||
Next i
|
||||
convertXIndexAccessToArray = arrayOfObjects
|
||||
End Function
|
||||
|
||||
|
||||
Function getNextFound(curNum As Long, max As Long) As Long
|
||||
If curNum < max Then
|
||||
getNextFound = curNum + 1
|
||||
Else
|
||||
getNextFound = 0
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
Function getPrevFound(curNum As Long, max As Long) As Long
|
||||
If curNum = 0 Then
|
||||
getPrevFound = max
|
||||
Else
|
||||
getPrevFound = curNum - 1
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Function getExtensionPath() As String
|
||||
Dim extensionIdentifier As String
|
||||
Dim pip As Object
|
||||
extensionIdentifier = "pro.litvinovg.Redaction"
|
||||
pip = GetDefaultContext.getByName("/singletons/com.sun.star.deployment.PackageInformationProvider")
|
||||
getExtensionPath = pip.getPackageLocation(extensionIdentifier)
|
||||
End Function
|
||||
|
||||
|
||||
Function notModalDialog(dialogName As String) As Variant
|
||||
Dim windowProvider As Object
|
||||
Dim containerWindow As Object
|
||||
Dim handler As Object
|
||||
Dim dialogUrl As String
|
||||
Dim dialog As Object
|
||||
containerWindow = ThisComponent.getCurrentController().getFrame().getContainerWindow()
|
||||
dialogUrl = "vnd.sun.star.script:Redaction." & dialogName & "?location=application"
|
||||
windowProvider = CreateUnoService("com.sun.star.awt.ContainerWindowProvider")
|
||||
dialog = windowProvider.createContainerWindow(dialogUrl, "", containerWindow, handler)
|
||||
notModalDialog = dialog
|
||||
End Function
|
||||
|
||||
sub openReport(fileName As String)
|
||||
dim document as object
|
||||
|
@ -868,4 +1184,29 @@ sub openReport(fileName As String)
|
|||
Kill(tmpName)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Function isInDoc(searchString As String) As Boolean
|
||||
Dim founds As Variant
|
||||
founds = findInDoc(searchString)
|
||||
If founds.count <> 0 Then
|
||||
isInDoc = true
|
||||
Else
|
||||
isInDoc = false
|
||||
EndIf
|
||||
End Function
|
||||
|
||||
Function findInDoc(searchString As String) As Variant
|
||||
Dim founds As Object
|
||||
Dim sDesc As Object
|
||||
Dim srch(0) as new com.sun.star.beans.PropertyValue
|
||||
sDesc = Thiscomponent.createSearchDescriptor()
|
||||
sDesc.SearchAll = true
|
||||
sDesc.ValueSearch = false
|
||||
sDesc.SearchStyles = false
|
||||
sDesc.SearchCaseSensitive = true
|
||||
sDesc.SearchRegularExpression = true
|
||||
sDesc.SearchString = searchString
|
||||
founds = Thiscomponent.findAll(sDesc)
|
||||
findInDoc = founds
|
||||
End Function
|
||||
</script:module>
|
|
@ -6,4 +6,6 @@
|
|||
<library:element library:name="NoStyleFile"/>
|
||||
<library:element library:name="StartQuietCleaning"/>
|
||||
<library:element library:name="ChooseFontname"/>
|
||||
<library:element library:name="Navigator"/>
|
||||
<library:element library:name="SelectTemplate"/>
|
||||
</library:library>
|
12
Templates.xcu
Normal file
|
@ -0,0 +1,12 @@
|
|||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<oor:component-data oor:package="org.openoffice.Office" oor:name="Paths" xmlns:install="http://openoffice.org/2004/installation" xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<node oor:name="Paths">
|
||||
<node oor:name="Template" oor:op="fuse">
|
||||
<node oor:name="InternalPaths">
|
||||
<node oor:name="%origin%/templates" oor:op="fuse"/>
|
||||
</node>
|
||||
</node>
|
||||
</node>
|
||||
</oor:component-data>
|
||||
|
||||
|
|
@ -1,6 +1,8 @@
|
|||
apply plugin: 'java'
|
||||
task oxt(type: Zip) {
|
||||
dependsOn = [ 'setVersion','setVersionInBasicCode' ]
|
||||
archiveName 'cleanAndValidate.oxt'
|
||||
archiveFileName = 'cleanAndValidate.oxt'
|
||||
destinationDirectory = file("./")
|
||||
from './'
|
||||
include '*'
|
||||
include '*/*'
|
||||
|
|
|
@ -2,9 +2,9 @@
|
|||
<description xmlns="http://openoffice.org/extensions/update/2006"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<identifier value="pro.litvinovg.Redaction"/>
|
||||
<version value="0.9.28" />
|
||||
<version value="0.10.11" />
|
||||
<update-download>
|
||||
<src xlink:href="https://dev.litvinovg.pro/litvinovg/cleanandvalidate/uploads/a994f38f3c163c81cb09b592ccf4c37c/cleanAndValidate.oxt" />
|
||||
<src xlink:href="https://dev.litvinovg.pro/litvinovg/cleanandvalidate/uploads/330066acb026243a8a0eab002de1a1f3/cleanAndValidate.oxt" />
|
||||
</update-download>
|
||||
<release-notes>
|
||||
<src xlink:href="https://dev.litvinovg.pro/litvinovg/cleanandvalidate/-/raw/master/releasenotes.txt" lang="en" />
|
||||
|
|
244
description.xml
|
@ -1,205 +1,375 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<description xmlns="http://openoffice.org/extensions/description/2006" xmlns:dep="http://openoffice.org/extensions/description/2006" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<identifier value="pro.litvinovg.Redaction"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<version value="0.10.11"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<version value="0.9.28"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<platform value="all"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<display-name>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<name lang="en">Cleaning and validation documents for publishing in html and epub with pagination</name>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<name lang="ru">Чистка и проверка документов для издания в html и epub с сохранением пагинации</name>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</display-name>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<registration>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<simple-license accept-by="admin" suppress-if-required="true" suppress-on-update="true">
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<license-text lang="en" xlink:href="license_en.txt"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<license-text lang="ru" xlink:href="license_ru.txt"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</simple-license>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</registration>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<dependencies>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<OpenOffice.org-minimal-version dep:name="OpenOffice.org, LibreOffice 4.1 or later" value="4.1"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</dependencies>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<update-information>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<src xlink:href="https://dev.litvinovg.pro/litvinovg/cleanandvalidate/-/raw/master/cleanandvalidate.update.xml"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</update-information>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<publisher>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<name lang="en" xlink:href="mailto:public@litvinovg.pro">Georgy Litvinov</name>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</publisher>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<release-notes>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<src lang="en" xlink:href="releasenotes.txt"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</release-notes>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<extension-description>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<src lang="ru" xlink:href="description/description_ru.txt"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<src lang="en" xlink:href="description/description_en.txt"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</extension-description>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<icon>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<default xlink:href="icons/addon_icon.png"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<high-contrast xlink:href="icons/addon_icon.png"/>
|
||||
|
||||
|
||||
<default xlink:href="icons/addon_icon.svg"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<high-contrast xlink:href="icons/addon_icon.svg"/>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</icon>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1 +1 @@
|
|||
version=0.9.28
|
||||
version=0.10.11
|
||||
|
|
Before Width: | Height: | Size: 14 KiB |
218
icons/addon_icon.svg
Normal file
|
@ -0,0 +1,218 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="67.73333mm"
|
||||
height="67.73333mm"
|
||||
viewBox="0 0 67.73333 67.73333"
|
||||
version="1.1"
|
||||
id="svg2491"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="addon_icon.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview2493"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="1.7097423"
|
||||
inkscape:cx="46.498235"
|
||||
inkscape:cy="81.883685"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="992"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="25"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1"
|
||||
inkscape:snap-bbox="true" />
|
||||
<defs
|
||||
id="defs2488" />
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-124.58785,-103.92953)">
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:1.256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect982-6-3"
|
||||
width="67.73333"
|
||||
height="67.73333"
|
||||
x="124.58785"
|
||||
y="103.92953" />
|
||||
<path
|
||||
id="rect847-2-7"
|
||||
style="fill:none;stroke:#000000;stroke-width:2.3;stroke-miterlimit:4;stroke-dasharray:none;paint-order:stroke markers fill;stop-color:#000000"
|
||||
d="m 174.05313,111.06933 h 3.30422 c 1.64718,0 2.97325,1.32607 2.97325,2.97325 v 52.56149 c 0,1.64718 -1.32607,2.97325 -2.97325,2.97325 h -39.79621 c -1.64718,0 -2.97325,-1.32607 -2.97325,-2.97325 v -52.56149 c 0,-1.64718 1.32607,-2.97325 2.97325,-2.97325 h 3.40135"
|
||||
sodipodi:nodetypes="cssssssssc" />
|
||||
<path
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.15297;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 143.595,108.66362 c 0,0 8.43592,-0.0564 9.54623,-0.0201 0.98089,0.032 -0.31228,-1.88491 0.52045,-2.93611 0.83273,-1.05121 7.02607,-0.84307 7.82409,0.20813 0.79803,1.05121 -0.59786,2.79113 0.83273,2.79113 1.56136,0 9.23834,-0.0144 9.23834,-0.0144 0,0 7.11288,5.6185 4.75349,5.58225 -2.3594,-0.0362 -34.61591,0.12319 -37.35696,0.12319 -2.74106,0 4.64163,-5.73404 4.64163,-5.73404 z"
|
||||
id="path849-4-4"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cszzsczzc" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.955;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-8-9"
|
||||
width="25.510099"
|
||||
height="1.667425"
|
||||
x="150.37207"
|
||||
y="122.91363" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
y="126.75371"
|
||||
x="150.33884"
|
||||
height="1.667425"
|
||||
width="23.316961"
|
||||
id="rect851-8-3-8-3-3-30-4"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.91277;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
y="134.61259"
|
||||
x="150.4086"
|
||||
height="1.667425"
|
||||
width="23.055033"
|
||||
id="rect851-8-3-8-3-38-1-2"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.908;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.875376;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-3-0-78-9"
|
||||
width="21.445341"
|
||||
height="1.667425"
|
||||
x="150.37537"
|
||||
y="138.45267" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.907172;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-38-4-9-3"
|
||||
width="23.031563"
|
||||
height="1.667425"
|
||||
x="150.27731"
|
||||
y="146.49648" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
y="158.23125"
|
||||
x="150.21875"
|
||||
height="1.667425"
|
||||
width="20.915848"
|
||||
id="rect851-8-3-8-3-38-4-6-5-2"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.864499;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.870552;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-3-0-7-8-4-4"
|
||||
width="21.209816"
|
||||
height="1.667425"
|
||||
x="150.27002"
|
||||
y="162.0713" />
|
||||
<path
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
sodipodi:nodetypes="ccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path1299-5"
|
||||
d="m 138.85426,125.48045 2.40288,3.17924 5.00275,-6.17076"
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ff0000;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
id="path1339-4"
|
||||
fill="#455A64"
|
||||
d="m 188.68913,118.31403 -5.08071,-2.32201 -14.12346,43.13492 -0.0211,0.0643 5.10355,1.9512 13.24168,-40.44187 0.85059,0.3252 -5.41705,16.5444 0.54964,1.24433 5.71801,-17.46354 c 0.33224,-1.01472 -0.0359,-2.3748 -0.82118,-3.03698 z"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#000000;fill-opacity:1;stroke-width:0.937911" />
|
||||
<polygon
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
transform="matrix(0.85059099,0.3251984,-0.3009474,0.91913342,148.53775,97.412814)"
|
||||
id="polygon1341-3"
|
||||
points="43,52 49,52 46,61 "
|
||||
fill="#455A64"
|
||||
style="fill:#000000;fill-opacity:1" />
|
||||
<polygon
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
transform="matrix(0.85059099,0.3251984,-0.3009474,0.91913342,148.53775,97.412814)"
|
||||
id="polygon1343-2"
|
||||
points="44,52 45,52 46,61 "
|
||||
fill="#999999" />
|
||||
<rect
|
||||
y="150.20065"
|
||||
x="150.27731"
|
||||
height="1.667425"
|
||||
width="23.031563"
|
||||
id="rect851-8-3-8-3-38-4-9-3-0"
|
||||
style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.907172;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
inkscape:export-ydpi="96.000008" />
|
||||
<polygon
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
transform="matrix(0.85059099,0.3251984,-0.3009474,0.91913342,148.53775,97.412814)"
|
||||
id="polygon1345-2"
|
||||
points="49,52 49,28 49,8 49,5.34 43,4 43,51.93 43,52 "
|
||||
fill="#ff7043" />
|
||||
<path
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#ff0000;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 139.14199,160.1588 2.40288,3.17925 5.00277,-6.17076"
|
||||
id="path1299-8-4"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccc" />
|
||||
<path
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
sodipodi:nodetypes="ccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path1299-8-1-1"
|
||||
d="m 138.93861,136.75912 2.40288,3.17925 5.00277,-6.17077"
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#00a319;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#00a319;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 139.05033,149.51085 2.40288,3.17925 5.00277,-6.17076"
|
||||
id="path1299-8-1-9-6"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccc" />
|
||||
<polygon
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
transform="matrix(0.85059099,0.3251984,-0.3009474,0.91913342,148.53775,97.412814)"
|
||||
id="polygon1347-4"
|
||||
points="45,52 45,4.447 44,4.223 44,52 "
|
||||
fill="#ff8a65" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000008"
|
||||
inkscape:export-xdpi="96.000008"
|
||||
transform="matrix(0.93406194,0.35711104,-0.31116989,0.9503543,0,0)"
|
||||
id="rect1349-7"
|
||||
y="62.168976"
|
||||
x="210.8367"
|
||||
width="5.4638195"
|
||||
height="0.96714818"
|
||||
fill="#455A64"
|
||||
style="fill:#000000;fill-opacity:1;stroke-width:0.938467" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 9.8 KiB |
BIN
icons/clean.png
Before Width: | Height: | Size: 12 KiB |
113
icons/clean.svg
Normal file
|
@ -0,0 +1,113 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="67.73333mm"
|
||||
height="67.73333mm"
|
||||
viewBox="0 0 67.73333 67.73333"
|
||||
version="1.1"
|
||||
id="svg2491"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="clean.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview2493"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="2.4172662"
|
||||
inkscape:cx="91.21875"
|
||||
inkscape:cy="129.07143"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="992"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="25"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1" />
|
||||
<defs
|
||||
id="defs2488" />
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-120.95491,-106.68899)">
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000015"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
y="106.68899"
|
||||
x="120.95491"
|
||||
height="67.73333"
|
||||
width="67.73333"
|
||||
id="rect982-3"
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:1.256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000" />
|
||||
<path
|
||||
id="rect847-0-1-7"
|
||||
style="fill:none;stroke:#000000;stroke-width:2.5;stroke-miterlimit:4;stroke-dasharray:none;paint-order:stroke markers fill;stop-color:#000000"
|
||||
d="m 168.8468,113.40557 h 3.593 c 1.60065,0 2.88926,1.28861 2.88926,2.88926 v 29.05344 m -22.83699,24.91257 h -23.15672 c -1.60066,0 -2.88927,-1.28861 -2.88927,-2.88926 v -51.07675 c 0,-1.60065 1.28861,-2.88926 2.88927,-2.88926 h 3.79406"
|
||||
sodipodi:nodetypes="cssccssssc" />
|
||||
<rect
|
||||
y="135.81468"
|
||||
x="131.28925"
|
||||
height="5.8349214"
|
||||
width="38.979149"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-7-68"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.20769;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
inkscape:export-ydpi="96.000015" />
|
||||
<path
|
||||
sodipodi:nodetypes="cszzsczzc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path849-6-6-9"
|
||||
d="m 135.63756,111.55797 c 0,0 9.22154,-0.0555 10.43524,-0.0198 1.07225,0.0315 -0.34135,-1.85587 0.56893,-2.89087 0.91027,-1.03501 7.68039,-0.83008 8.55274,0.20492 0.87235,1.03501 -0.65354,2.74812 0.91028,2.74812 1.70677,0 10.0987,-0.0142 10.0987,-0.0142 0,0 7.77528,5.53192 5.19616,5.49623 -2.57912,-0.0357 -37.83963,0.1213 -40.83596,0.1213 -2.99634,0 5.07391,-5.64568 5.07391,-5.64568 z"
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
inkscape:export-ydpi="96.000015" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000015"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.20769;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-7-6-9"
|
||||
width="38.979149"
|
||||
height="5.8349214"
|
||||
x="131.18256"
|
||||
y="147.67714" />
|
||||
<path
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-7-6-4-7"
|
||||
style="stroke-width:2.20769;paint-order:stroke markers fill;stop-color:#000000"
|
||||
d="m 131.14584,159.24664 23.89289,0 -1.22168,5.83492 -22.67121,0 z"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000015"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.20769;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-5"
|
||||
width="38.979149"
|
||||
height="5.8349214"
|
||||
x="131.21593"
|
||||
y="124.478" />
|
||||
<path
|
||||
inkscape:export-ydpi="96.000015"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
sodipodi:nodetypes="ccccccccccccczcc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path1016-3"
|
||||
d="m 156.84912,152.8902 c 0,0 -4.64317,17.25076 -4.79965,17.91698 0.22379,1.03041 2.12987,1.1969 3.07746,-0.0513 0.99308,1.70103 2.66154,0.69791 3.02532,0 0.5362,1.22214 2.35102,1.3643 3.02531,0.10249 0.20864,1.33245 1.92993,1.3837 2.86882,0 0.29334,1.4372 2.27544,0.85843 2.50371,-0.0513 1.64759,1.8746 2.72183,0.29919 2.97315,0.15374 0.15648,0.92247 2.13858,1.33245 2.71234,-0.20499 0.76572,1.46441 2.15627,1.27169 2.81667,0.20499 1.4556,1.48105 2.64821,0.56314 2.92099,-0.10249 1.52216,1.64931 2.74807,0.56617 2.86883,-0.20499 0.64839,1.35445 2.56158,1.63022 2.76451,-0.0513 0.15648,0.46123 2.87947,1.96442 2.81666,-0.0512 -0.0628,-2.01568 -4.26345,-17.38961 -4.26345,-17.38961 z"
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
<path
|
||||
inkscape:export-ydpi="96.000015"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
sodipodi:nodetypes="czzccccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path1014-4"
|
||||
d="m 167.27385,140.09677 c 0,0 -0.11785,-4.0209 -0.0124,-8.12606 0.10542,-4.10517 4.92663,-3.61493 4.7746,0.104 -0.15202,3.71893 -0.0937,7.91956 -0.0937,7.91956 1.94457,0.4322 2.04458,2.83951 2.85658,5.80684 4.0456,1.51275 6.03838,2.73984 7.21754,7.17762 l -25.00864,-0.10637 c 1.11511,-2.50829 1.69674,-5.41689 7.35684,-7.16064 0.52807,-1.53828 0.50796,-5.49057 2.90923,-5.61495 z"
|
||||
style="fill:#ff0000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 6.2 KiB |
BIN
icons/report.png
Before Width: | Height: | Size: 4 KiB |
101
icons/report.svg
Normal file
|
@ -0,0 +1,101 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="67.73333mm"
|
||||
height="67.73333mm"
|
||||
viewBox="0 0 67.73333 67.73333"
|
||||
version="1.1"
|
||||
id="svg2491"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="report.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview2493"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="1.436055"
|
||||
inkscape:cx="80.428674"
|
||||
inkscape:cy="68.242512"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="992"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="25"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1" />
|
||||
<defs
|
||||
id="defs2488" />
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-120.95491,-106.68899)">
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000015"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
y="106.68899"
|
||||
x="120.95491"
|
||||
height="67.73333"
|
||||
width="67.73333"
|
||||
id="rect982-3"
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:1.256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000" />
|
||||
<path
|
||||
id="rect847-0-1-3"
|
||||
style="fill:none;stroke:#000000;stroke-width:2.48942;stroke-miterlimit:4;stroke-dasharray:none;paint-order:stroke markers fill;stop-color:#000000"
|
||||
d="m 173.02817,114.19 h 3.71042 c 1.63134,0 2.94465,1.30222 2.94465,2.91977 v 51.61604 c 0,1.61756 -1.31331,2.91977 -2.94465,2.91977 h -42.99368 c -1.63133,0 -2.94465,-1.30221 -2.94465,-2.91977 v -51.61604 c 0,-1.61755 1.31332,-2.91977 2.94465,-2.91977 h 3.25326"
|
||||
sodipodi:nodetypes="cssssssssc" />
|
||||
<rect
|
||||
y="136.53908"
|
||||
x="135.34975"
|
||||
height="5.9467759"
|
||||
width="39.835781"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-7-8"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.25311;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="95.562637"
|
||||
inkscape:export-ydpi="95.562637" />
|
||||
<path
|
||||
sodipodi:nodetypes="cszzsczzc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path849-6-6-5"
|
||||
d="m 139.99174,112.01511 c 0,0 9.22154,-0.0566 10.43524,-0.0202 1.07225,0.0321 -0.34135,-1.89145 0.56892,-2.9463 0.91028,-1.05484 7.6804,-0.84598 8.55275,0.20886 0.87235,1.05485 -0.65354,2.8008 0.91028,2.8008 1.70677,0 10.09869,-0.0145 10.09869,-0.0145 0,0 7.77529,5.63796 5.19617,5.60158 -2.57912,-0.0364 -37.83963,0.12362 -40.83596,0.12362 -2.99633,0 5.07391,-5.7539 5.07391,-5.7539 z"
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
inkscape:export-xdpi="95.562637"
|
||||
inkscape:export-ydpi="95.562637" />
|
||||
<rect
|
||||
inkscape:export-ydpi="95.562637"
|
||||
inkscape:export-xdpi="95.562637"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.25311;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-7-6-2"
|
||||
width="39.835781"
|
||||
height="5.9467759"
|
||||
x="135.24069"
|
||||
y="148.62894" />
|
||||
<rect
|
||||
y="160.42023"
|
||||
x="135.2032"
|
||||
height="5.9467759"
|
||||
width="39.835781"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-7-6-4-22"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.25311;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="95.562637"
|
||||
inkscape:export-ydpi="95.562637" />
|
||||
<rect
|
||||
inkscape:export-ydpi="95.562637"
|
||||
inkscape:export-xdpi="95.562637"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.25311;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-70"
|
||||
width="39.835785"
|
||||
height="5.9467759"
|
||||
x="135.27483"
|
||||
y="124.98509" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 4.5 KiB |
Before Width: | Height: | Size: 8.1 KiB |
125
icons/validate.svg
Normal file
|
@ -0,0 +1,125 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="67.73333mm"
|
||||
height="67.73333mm"
|
||||
viewBox="0 0 67.73333 67.73333"
|
||||
version="1.1"
|
||||
id="svg2491"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
sodipodi:docname="validate.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview2493"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="0.7180275"
|
||||
inkscape:cx="244.41961"
|
||||
inkscape:cy="206.12024"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="992"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="25"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1" />
|
||||
<defs
|
||||
id="defs2488" />
|
||||
<g
|
||||
inkscape:label="Layer 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-124.61893,-103.22372)">
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000015"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
style="fill:none;fill-opacity:1;stroke:none;stroke-width:1.256;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect982-9-8"
|
||||
width="67.73333"
|
||||
height="67.73333"
|
||||
x="124.61893"
|
||||
y="103.22372" />
|
||||
<path
|
||||
id="rect847-0-1"
|
||||
style="fill:none;stroke:#000000;stroke-width:2.5;paint-order:stroke markers fill;stop-color:#000000"
|
||||
d="m 169.66551,109.92162 h 4.14995 c 1.63133,0 2.94465,1.31332 2.94465,2.94465 v 52.05588 c 0,1.63133 -1.31332,2.94465 -2.94465,2.94465 h -42.99368 c -1.63134,0 -2.94465,-1.31332 -2.94465,-2.94465 v -52.05588 c 0,-1.63133 1.31331,-2.94465 2.94465,-2.94465 h 4.52474"
|
||||
sodipodi:nodetypes="cssssssssc" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000015"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.23676;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-7"
|
||||
width="39.25959"
|
||||
height="5.9467759"
|
||||
x="133.00279"
|
||||
y="132.7603" />
|
||||
<path
|
||||
inkscape:export-ydpi="96.000015"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 137.06861,108.33894 c 0,0 9.22153,-0.0566 10.43524,-0.0202 1.07224,0.0321 -0.34136,-1.89145 0.56892,-2.94629 0.91028,-1.05485 7.6804,-0.84599 8.55275,0.20886 0.87235,1.05484 -0.65354,2.80079 0.91028,2.80079 1.70677,0 10.09869,-0.0145 10.09869,-0.0145 0,0 7.77529,5.63797 5.19617,5.60159 -2.57912,-0.0364 -37.83964,0.12363 -40.83597,0.12363 -2.99633,-1e-5 5.07392,-5.75391 5.07392,-5.75391 z"
|
||||
id="path849-6-6"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cszzsczzc" />
|
||||
<rect
|
||||
y="144.85016"
|
||||
x="132.89534"
|
||||
height="5.9467759"
|
||||
width="39.25959"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-7-6"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.23676;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
inkscape:export-ydpi="96.000015" />
|
||||
<rect
|
||||
inkscape:export-ydpi="96.000015"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.23676;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5-7-6-4"
|
||||
width="39.25959"
|
||||
height="5.9467759"
|
||||
x="132.85837"
|
||||
y="156.64145" />
|
||||
<rect
|
||||
y="121.20631"
|
||||
x="132.92896"
|
||||
height="5.9467759"
|
||||
width="39.259594"
|
||||
id="rect851-8-3-8-3-37-8-1-4-7-8-1-9-2-3-5"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.23676;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
inkscape:export-ydpi="96.000015" />
|
||||
<path
|
||||
id="rect1186-4"
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.889025;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill;stop-color:#000000"
|
||||
d="m 160.26757,134.88947 h 22.27055 c 3.42763,0 6.18706,2.54612 6.18706,5.70879 v 20.67999 c 0,3.16267 0.40717,5.62643 -4.07613,5.63922 l -24.38148,0.0696 c -3.42761,0.01 -6.18705,-2.54612 -6.18705,-5.70879 V 140.5983 c 0,-3.16267 2.75943,-5.70879 6.18705,-5.70879 z"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="sssssssss"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
inkscape:export-ydpi="96.000015" />
|
||||
<path
|
||||
inkscape:export-ydpi="96.000015"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
sodipodi:nodetypes="cssssssc"
|
||||
id="path1170-7"
|
||||
d="m 188.50413,149.14281 v 14.92431 c 0,2.08279 -1.68738,3.77123 -3.76888,3.77123 h -26.38209 c -2.08149,0 -3.76887,-1.68844 -3.76887,-3.77123 v -26.39859 c 0,-2.08279 1.68738,-3.77122 3.76887,-3.77122 h 23.60203"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#000000;stroke-width:2.68422;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
id="polyline1168-0"
|
||||
style="fill:none;stroke:#099c00;stroke-width:7.24438;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
d="m 162.58302,150.28058 8.58283,7.04191 15.43985,-17.93997"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccc"
|
||||
inkscape:export-xdpi="96.000015"
|
||||
inkscape:export-ydpi="96.000015" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 6.1 KiB |
1175
images/left-navigator.svg
Normal file
After Width: | Height: | Size: 64 KiB |
1175
images/right-navigator.svg
Normal file
After Width: | Height: | Size: 64 KiB |
|
@ -1,8 +1,6 @@
|
|||
The author of this extension is:
|
||||
Georgy Litvinov (public@litvinovg.pro)
|
||||
Copyright 2019.
|
||||
|
||||
This library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, version 3 of the License.
|
||||
Copyright 2021 redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, version 3 of the License.
|
||||
|
||||
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Автор расширения:
|
||||
Георгий Литвинов (public@litvinovg.pro)
|
||||
Copyright 2019.
|
||||
Copyright 2021.
|
||||
|
||||
Это расширение является свободным программным обеспечением, вы можете распространять и/или модифицировать его в соответствии с лицензией GNU Lesser General Public License версии 3.0, опубликованной Free Software Foundation.
|
||||
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
0.9.36 Added option to remove all colored text backgrounds in expert mode
|
||||
0.9.35 Validation reports improved
|
||||
0.9.21 Added option to reset chapters numbering. Enabled by default.
|
||||
0.9.5 "Remove fields" option added to advanced mode
|
||||
0.9.4 Added check for grouped draw elements in font report function
|
||||
|
|
BIN
templates/articles/статья.ott
Normal file
BIN
templates/articles/статья_вф.ott
Normal file
BIN
templates/articles/статья_иф.ott
Normal file
BIN
templates/articles/статья_ифе.ott
Normal file
BIN
templates/articles/статья_пцр.ott
Normal file
BIN
templates/articles/статья_фа.ott
Normal file
BIN
templates/articles/статья_фж.ott
Normal file
BIN
templates/articles/статья_фнит.ott
Normal file
BIN
templates/articles/статья_фр.ott
Normal file
BIN
templates/articles/статья_эифн.ott
Normal file
BIN
templates/articles/статья_эм.ott
Normal file
BIN
templates/articles/статья_эфэ.ott
Normal file
BIN
templates/books/большой_формат_для_архива.ott
Normal file
4
templates/groupuinames.xml
Normal file
|
@ -0,0 +1,4 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<groupuinames:template-group-list xmlns:groupuinames="http://openoffice.org/2006/groupuinames">
|
||||
<groupuinames:template-group groupuinames:name="articles" groupuinames:default-ui-name="Articles" />
|
||||
</groupuinames:template-group-list>
|