mirror of
https://gitee.com/kekingcn/file-online-preview.git
synced 2026-03-16 06:03:53 +08:00
优化项目结构、优化 maven 结构
This commit is contained in:
@@ -0,0 +1,223 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
|
||||
<!--***********************************************************
|
||||
*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*
|
||||
***********************************************************-->
|
||||
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="ModuleAgenda" script:language="StarBasic">' All variables must be declared before use
|
||||
Option Explicit
|
||||
|
||||
' Used for "disabling" the cancel button of the dialog
|
||||
Public DialogExited As Boolean
|
||||
Dim DlgAgenda_gMyName as String
|
||||
Public TemplateDialog as Object
|
||||
Public DialogModel as Object
|
||||
Public sTrueContent as String
|
||||
Public Bookmarkname as String
|
||||
|
||||
|
||||
|
||||
Sub Initialize()
|
||||
' User sets the type of minutes
|
||||
BasicLibraries.LoadLibrary( "Tools" )
|
||||
TemplateDialog = LoadDialog("Template", "TemplateDialog")
|
||||
DialogModel = TemplateDialog.Model
|
||||
DialogModel.Step = 1
|
||||
LoadLanguageAgenda()
|
||||
DialogModel.OptAgenda2.State = TRUE
|
||||
GetOptionValues()
|
||||
DialogExited = FALSE
|
||||
TemplateDialog.Execute
|
||||
End Sub
|
||||
|
||||
|
||||
Sub LoadLanguageAgenda()
|
||||
If InitResources("'Template'", "tpl") Then
|
||||
DlgAgenda_gMyName = GetResText(1200)
|
||||
DialogModel.CmdCancel.Label = GetResText(1102)
|
||||
DialogModel.CmdAgdGoon.Label = GetResText(1103)
|
||||
' DlgAgenda_gMsgNoCancel$ = GetResText(1201)
|
||||
DialogModel.FrmAgenda.Label = GetResText(1202)
|
||||
DialogModel.OptAgenda1.Label = GetResText(1203)
|
||||
DialogModel.OptAgenda2.Label = GetResText(1204)
|
||||
' DialogModel.OptAgenda1.State = 1
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
Sub ModifyTemplate()
|
||||
Dim oDocument, oBookmarks, oBookmark, oBookmarkCursor, oTextField as Object
|
||||
Dim i as Integer
|
||||
|
||||
oDocument = ThisComponent
|
||||
oBookMarks = oDocument.Bookmarks
|
||||
|
||||
On Local Error Goto NOBOOKMARK
|
||||
TemplateDialog.EndExecute
|
||||
DialogExited = TRUE
|
||||
oBookmarkCursor = CreateBookmarkCursor(oDocument, BookmarkName)
|
||||
oBookmarkCursor.Text.insertString(oBookmarkCursor,"",True)
|
||||
' Delete all the Bookmarks except for the one named "NextTopic"
|
||||
For i = oBookmarks.Count-1 To 0 Step -1
|
||||
oBookMark = oBookMarks.GetByIndex(i)
|
||||
If oBookMark.Name <> "NextTopic" Then
|
||||
oBookMark.Dispose()
|
||||
End If
|
||||
Next i
|
||||
oBookMarkCursor = CreateBookmarkCursor(oDocument, "NextTopic")
|
||||
If Not IsNull(oBookMarkCursor) Then
|
||||
oTextField = oBookMarkCursor.TextField
|
||||
' oTextField.TrueContent = sTrueContent
|
||||
oTextField.Content = sTrueContent
|
||||
End If
|
||||
|
||||
NOBOOKMARK:
|
||||
If Err <> 0 Then
|
||||
RESUME NEXT
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
Sub NewTopic
|
||||
' Add a new topic to the agenda
|
||||
Dim oDocument, oBookmarks, oBookmark, oBookmarkCursor, oTextField as Object
|
||||
Dim oBaustein, oAutoText, oAutoGroup as Object
|
||||
Dim i as Integer
|
||||
|
||||
oDocument = ThisComponent
|
||||
oBookMarkCursor = CreateBookMarkCursor(oDocument, "NextTopic")
|
||||
oTextField = oBookMarkCursor.TextField
|
||||
oAutoText = CreateUnoService("com.sun.star.text.AutoTextContainer")
|
||||
If oAutoText.HasbyName("template") Then
|
||||
oAutoGroup = oAutoText.GetbyName("template")
|
||||
If oAutoGroup.HasbyName(oTextField.Content) Then
|
||||
oBaustein = oAutoGroup.GetbyName(oTextField.Content)
|
||||
oBaustein.ApplyTo(oBookMarkCursor)
|
||||
Else
|
||||
Msgbox("AutoText '" & oTextField.Content & "' is not existing. Cannot insert additional topic!")
|
||||
End If
|
||||
Else
|
||||
Msgbox("AutoGroupField template is not existing. Cannot insert additional topic!", 16, DlgAgenda_gMyName )
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
' Add initials, date and time at bottom of agenda, disable and hide command buttons
|
||||
Sub FinishAgenda
|
||||
Dim BtnAddAgendaTopic As Object
|
||||
Dim BtnFinishAgenda As Object
|
||||
Dim oUserField, oDateTimeField as Object
|
||||
Dim oBookmarkCursor as Object
|
||||
Dim oFormats, oLocale as Object
|
||||
Dim iDateTimeKey as Integer
|
||||
|
||||
BasicLibraries.LoadLibrary( "Tools" )
|
||||
oDocument = ThisComponent
|
||||
|
||||
oUserField = oDocument.CreateInstance("com.sun.star.text.TextField.ExtendedUser")
|
||||
oUserField.UserDatatype = com.sun.star.text.UserDataPart.SHORTCUT
|
||||
|
||||
oDateTimeField = oDocument.CreateInstance("com.sun.star.text.TextField.DateTime")
|
||||
|
||||
' Assign Standardformat to Datetime-Textfield
|
||||
oFormats = oDocument.Numberformats
|
||||
oLocale = oDocument.CharLocale
|
||||
iDateTimeKey = oFormats.GetStandardFormat(com.sun.star.util.NumberFormat.DATETIME,oLocale)
|
||||
oDateTimeField.NumberFormat = iDateTimeKey
|
||||
|
||||
oBookmarkCursor = CreateBookmarkCursor(oDocument, "NextTopic")
|
||||
oBookmarkCursor.Text.InsertTextContent(oBookmarkCursor,oUserField,False)
|
||||
oBookmarkCursor.Text.InsertString(oBookmarkCursor," ",False)
|
||||
oBookmarkCursor.Text.InsertTextContent(oBookmarkCursor,oDateTimeField,False)
|
||||
BtnAddAgendaTopic = getControlModel(oDocument, "BtnAddAgendaTopic")
|
||||
BtnFinishAgenda = getControlModel(oDocument, "BtnFinishAgenda")
|
||||
If Not IsNull(BtnAddAgendaTopic) Then BtnAddAgendaTopic.Enabled = FALSE
|
||||
If Not IsNull(BtnFinishAgenda) Then BtnFinishAgenda.Enabled = FALSE
|
||||
End Sub
|
||||
|
||||
|
||||
Function CreateBookMarkCursor(oDocument as Object,sBookmarkName as String)
|
||||
oBookMarks = oDocument.Bookmarks
|
||||
If oBookmarks.HasbyName(sBookmarkName) Then
|
||||
oBookMark = oBookMarks.GetbyName(sBookmarkName)
|
||||
CreateBookMarkCursor = oBookMark.Anchor.Text.CreateTextCursorByRange(oBookMark.Anchor)
|
||||
Else
|
||||
Msgbox "Bookmark " & sBookmarkName & " is not defined!"
|
||||
End If
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
Sub DeleteButtons
|
||||
Dim AgendaFinished As Boolean
|
||||
Dim BtnAddAgendaTopic As Object
|
||||
Dim BtnFinishAgenda As Object
|
||||
|
||||
oDocument = ThisComponent
|
||||
|
||||
BtnAddAgendaTopic = getControlModel(oDocument, "BtnAddAgendaTopic")
|
||||
BtnFinishAgenda = getControlModel(oDocument, "BtnFinishAgenda")
|
||||
|
||||
' If buttons could be accessed: If at least one button is disabled, then agenda is finished
|
||||
AgendaFinished = FALSE
|
||||
If Not IsNull(BtnAddAgendaTopic) Then
|
||||
AgendaFinished = (AgendaFinished Or (BtnAddAgendaTopic.Enabled = FALSE))
|
||||
End If
|
||||
|
||||
If Not IsNull(BtnFinishAgenda) Then
|
||||
AgendaFinished = (AgendaFinished Or (BtnFinishAgenda.Enabled = FALSE))
|
||||
End If
|
||||
|
||||
' Delete Buttons, empty rows at end of document & macro bindings if agenda is finished
|
||||
If AgendaFinished Then
|
||||
DisposeControl(oDocument, "BtnAddAgendaTopic")
|
||||
DisposeControl(oDocument, "BtnFinishAgenda")
|
||||
|
||||
oBookmarkCursor = CreateBookMarkCursor(oDocument,"NextTopic")
|
||||
oBookMarkCursor.GotoEnd(True)
|
||||
oBookmarkCursor.Text.insertString(oBookmarkCursor,"",True)
|
||||
|
||||
AttachBasicMacroToEvent(oDocument,"OnNew", "")
|
||||
AttachBasicMacroToEvent(oDocument,"OnSave", "")
|
||||
AttachBasicMacroToEvent(oDocument,"OnSaveAs", "")
|
||||
AttachBasicMacroToEvent(oDocument,"OnPrint", "")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
Sub GetOptionValues(Optional aEvent as Object)
|
||||
Dim CurTag as String
|
||||
Dim Taglist() as String
|
||||
If Not IsMissing(aEvent) Then
|
||||
CurTag = aEvent.Source.Model.Tag
|
||||
Else
|
||||
If DialogModel.OptAgenda1.State = TRUE Then
|
||||
CurTag = DialogModel.OptAgenda1.Tag
|
||||
Else
|
||||
CurTag = DialogModel.OptAgenda2.Tag
|
||||
End If
|
||||
End If
|
||||
Taglist() = ArrayoutOfString(CurTag, ";")
|
||||
Bookmarkname = TagList(0)
|
||||
sTrueContent = TagList(1)
|
||||
End Sub
|
||||
|
||||
</script:module>
|
||||
Reference in New Issue
Block a user