diff options
author | Oliver Bolte <obo@openoffice.org> | 2004-09-08 13:03:01 +0000 |
---|---|---|
committer | Oliver Bolte <obo@openoffice.org> | 2004-09-08 13:03:01 +0000 |
commit | 86c6bfe442776a3a65b2fe4f36cd133371950001 (patch) | |
tree | a4cabce81bbbe53659eb548c13d26e6a28116735 /wizards/com/sun/star/wizards/fax | |
parent | a499e8f3714c0557852e033df97723e0ca1243d8 (diff) |
INTEGRATION: CWS qwizards2 (1.1.2); FILE ADDED
2004/07/26 08:33:35 tv 1.1.2.3: remove empty user fields
2004/07/21 15:54:05 tv 1.1.2.2: several small bugfixes, incl. exchanging some listboxes with combo boxes
2004/06/04 10:34:39 tv 1.1.2.1: initial revision of the new fax wizard
Diffstat (limited to 'wizards/com/sun/star/wizards/fax')
-rw-r--r-- | wizards/com/sun/star/wizards/fax/FaxDocument.java | 133 |
1 files changed, 133 insertions, 0 deletions
diff --git a/wizards/com/sun/star/wizards/fax/FaxDocument.java b/wizards/com/sun/star/wizards/fax/FaxDocument.java new file mode 100644 index 000000000000..4ac0de9c4d43 --- /dev/null +++ b/wizards/com/sun/star/wizards/fax/FaxDocument.java @@ -0,0 +1,133 @@ +package com.sun.star.wizards.fax; + +import com.sun.star.wizards.common.*; +import com.sun.star.wizards.document.*; +import com.sun.star.wizards.text.*; +import com.sun.star.frame.XDesktop; +import com.sun.star.table.BorderLine; +import com.sun.star.text.*; +import com.sun.star.lang.XMultiServiceFactory; +import com.sun.star.awt.XWindowPeer; +import com.sun.star.uno.Exception; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.beans.PropertyValue; +import com.sun.star.drawing.XShape; +import com.sun.star.beans.XPropertySet; +import com.sun.star.awt.Size; +import com.sun.star.style.NumberingType; +import com.sun.star.style.ParagraphAdjust; +import com.sun.star.style.XStyleFamiliesSupplier; +import com.sun.star.style.XStyle; + +public class FaxDocument extends TextDocument { + + XDesktop xDesktop; + Size DocSize = null; + + public FaxDocument(XMultiServiceFactory xMSF) { + super(xMSF); + } + + public XWindowPeer getWindowPeer() { + XWindowPeer xWindowPeer = (XWindowPeer) UnoRuntime.queryInterface(XWindowPeer.class, xTextDocument); + return xWindowPeer; + } + + public void switchElement(String sElement, boolean bState) { + try { + TextSectionHandler mySectionHandler = new TextSectionHandler(xMSF, xTextDocument); + Object oSection = mySectionHandler.xTextSectionsSupplier.getTextSections().getByName(sElement); + Helper.setUnoPropertyValue(oSection, "IsVisible", new Boolean(bState)); + + } catch (Exception exception) { + exception.printStackTrace(System.out); + } + } + + public void switchFooter(String sPageStyle, boolean bState, boolean bPageNumber, String sText) { + if (xTextDocument != null) { + try { + XStyleFamiliesSupplier xStyleFamiliesSupplier = (XStyleFamiliesSupplier) com.sun.star.uno.UnoRuntime.queryInterface(XStyleFamiliesSupplier.class, xTextDocument); + com.sun.star.container.XNameAccess xNameAccess = null; + xNameAccess = xStyleFamiliesSupplier.getStyleFamilies(); + + com.sun.star.container.XNameContainer xPageStyleCollection = null; + xPageStyleCollection = (com.sun.star.container.XNameContainer) UnoRuntime.queryInterface(com.sun.star.container.XNameContainer.class, xNameAccess.getByName("PageStyles")); + + XText xFooterText; + XStyle xPageStyle = (XStyle) UnoRuntime.queryInterface(XStyle.class, xPageStyleCollection.getByName(sPageStyle)); + + if (bState) { + Helper.setUnoPropertyValue(xPageStyle, "FooterIsOn", new Boolean(true)); + xFooterText = (XText) UnoRuntime.queryInterface(XText.class, Helper.getUnoPropertyValue(xPageStyle, "FooterText")); + xFooterText.setString(sText); + if (bPageNumber) { + //Adding the Page Number + XTextCursor myCursor = xFooterText.createTextCursor(); + myCursor.gotoEnd(false); + xFooterText.insertControlCharacter(myCursor, ControlCharacter.PARAGRAPH_BREAK, false); + XPropertySet xCursorPSet = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, myCursor); + xCursorPSet.setPropertyValue("ParaAdjust", ParagraphAdjust.CENTER); + XTextField xPageNumberField = (XTextField) UnoRuntime.queryInterface(XTextField.class, xMSFDoc.createInstance("com.sun.star.text.TextField.PageNumber")); + XPropertySet xPSet = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, xPageNumberField); + xPSet.setPropertyValue("SubType", PageNumberType.CURRENT); + xPSet.setPropertyValue("NumberingType", new Short (NumberingType.ARABIC)); + xFooterText.insertTextContent(xFooterText.getEnd(), xPageNumberField, false); + } + } else { + Helper.setUnoPropertyValue(xPageStyle, "FooterIsOn", new Boolean(false)); + } + } catch (Exception exception) { + exception.printStackTrace(System.out); + } + } + } + + public boolean hasElement(String sElement) { + if (xTextDocument != null) { + TextSectionHandler mySectionHandler = new TextSectionHandler(xMSF, xTextDocument); + return mySectionHandler.hasTextSectionByName(sElement); + } else { + return false; + } + } + + public void switchUserField(String sFieldName, String sNewContent, boolean bState) { + TextFieldHandler myFieldHandler = new TextFieldHandler(xMSF, xTextDocument); + if (bState) { + myFieldHandler.changeUserFieldContent(sFieldName, sNewContent); + } else { + myFieldHandler.changeUserFieldContent(sFieldName, ""); + } + } + + public void fillSenderWithUserData() { + try { + TextFieldHandler myFieldHandler = new TextFieldHandler(xMSFDoc, xTextDocument); + Object oUserDataAccess = Configuration.getConfigurationRoot(xMSF, "org.openoffice.UserProfile/Data", false); + myFieldHandler.changeUserFieldContent("Company", (String) Helper.getUnoObjectbyName(oUserDataAccess, "o")); + myFieldHandler.changeUserFieldContent("Street", (String) Helper.getUnoObjectbyName(oUserDataAccess, "street")); + myFieldHandler.changeUserFieldContent("PostCode", (String) Helper.getUnoObjectbyName(oUserDataAccess, "postalcode")); + myFieldHandler.changeUserFieldContent("State", (String) Helper.getUnoObjectbyName(oUserDataAccess, "st")); + myFieldHandler.changeUserFieldContent("City", (String) Helper.getUnoObjectbyName(oUserDataAccess, "l")); + myFieldHandler.changeUserFieldContent("Fax", (String) Helper.getUnoObjectbyName(oUserDataAccess, "facsimiletelephonenumber")); + } catch (Exception exception) { + exception.printStackTrace(System.out); + } + } + + public void killEmptyUserFields() { + TextFieldHandler myFieldHandler = new TextFieldHandler(xMSF, xTextDocument); + myFieldHandler.removeUserFieldByContent(""); + } + + public void loadResult(String sLoadURL, boolean bAsTemplate) { + PropertyValue loadValues[] = new PropertyValue[1]; + loadValues[0] = new PropertyValue(); + loadValues[0].Name = "AsTemplate"; + loadValues[0].Value = new Boolean(bAsTemplate); + String sFrame = "_self"; + OfficeDocument.load(xDesktop, sLoadURL, sFrame, loadValues); + } + +} |