 | OO-Snippets: add date to footerCommons| Keywords | footer, date, time, add date to footer, add time to footer |
|---|
| Language | ooRexx |
|---|
| Application | Writer |
|---|
| Authors | Nicole Scholz
|
|---|
| Supported Versions | 2.0.x |
|---|
| Supported OS | |
|---|
| Question | How can I add the date and time to the footer?
|
|---|
| Answer | In this example the creation date and time are added to the footer. They are set constant so they do not change when the document is opend again. Also a line is added to the footer. |
|---|
oDesktop = UNO.createDesktop()
xComponentLoader = oDesktop~XDesktop~XComponentLoader
url = "private:factory/swriter"
xWriterComponent = xComponentLoader~loadComponentFromURL(url, "_blank", 0, .UNO~noProps)
xDocumentFactory = xWriterComponent~XMultiServiceFactory
xWriterDocument = xWriterComponent~XTextDocument
xText = xWriterDocument~getText()
xTextCursor = xText~createTextCursor()
xPropertySet = xTextCursor~xPropertySet
xDMsf = xWriterDocument~XMultiServiceFactory
xPageStyle = xDMsf~createInstance("com.sun.star.style.PageStyle")
xFamiliesSupplier = xWriterDocument~XStyleFamiliesSupplier
xStyle = xFamiliesSupplier~getStyleFamilies~getByName("PageStyles")~XNameContainer
xFooter = xStyle~getByName("Standard")
FooterProperty = xFooter~xPropertySet
FooterProperty~setPropertyValue("FooterIsOn", box("boolean", .true))
footerText = FooterProperty~getPropertyValue("FooterText")~xText
datetime = xDMsf~createInstance("com.sun.star.text.TextField.DateTime")
datetimeProps = datetime ~XPropertySet()
datetimeProps~setPropertyValue("IsDate", box("boolean",.true))
datetimeProps~setPropertyValue("IsFixed", box("boolean",.true))
datetimeTC = datetime~XTextContent()
datetime1 = xDMsf~createInstance("com.sun.star.text.TextField.DateTime")
datetimeProps1 = datetime1 ~XPropertySet()
datetimeProps1~setPropertyValue("IsDate", box("boolean",.false))
datetimeProps1~setPropertyValue("IsFixed", box("boolean",.true))
datetimeTC1 = datetime1~XTextContent()
xTextCursorFooter = footerText~createTextCursor
Line = xDMsf~createInstance("com.sun.star.drawing.LineShape")~xShape
Line~setPosition(.bsf~new("com.sun.star.awt.Point", 1, 1))
Line~setSize(.bsf~new("com.sun.star.awt.Size", 17000, 0))
xTextContentShape = Line~xTextContent
footerText~insertTextContent(footerText, xTextContentShape, .false)
footerText~getEnd~setString(" date: ")
footerText~insertTextContent(footerText~getEnd, datetimeTC, .false)
footerText~getEnd~setString(" time: ")
footerText~insertTextContent(footerText~getEnd, datetimeTC1, .false)
::requires UNO.cls
|
|