summaryrefslogtreecommitdiffstats
path: root/wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.py
diff options
context:
space:
mode:
Diffstat (limited to 'wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.py')
-rw-r--r--wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.py631
1 files changed, 631 insertions, 0 deletions
diff --git a/wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.py b/wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.py
new file mode 100644
index 000000000..72952dce2
--- /dev/null
+++ b/wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.py
@@ -0,0 +1,631 @@
+#
+# This file is part of the LibreOffice project.
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# This file incorporates work covered by the following license notice:
+#
+# 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 .
+#
+import traceback
+import os.path
+from .FaxWizardDialog import FaxWizardDialog, uno, HID
+from .CGFaxWizard import CGFaxWizard
+from .FaxDocument import FaxDocument
+from ..ui.PathSelection import PathSelection
+from ..ui.event.UnoDataAware import UnoDataAware
+from ..ui.event.RadioDataAware import RadioDataAware
+from ..ui.event.CommonListener import TerminateListenerProcAdapter
+from ..text.TextFieldHandler import TextFieldHandler
+from ..text.TextElement import TextElement
+from ..common.Configuration import Configuration
+from ..common.SystemDialog import SystemDialog
+from ..common.NoValidPathException import NoValidPathException
+from ..common.HelpIds import HelpIds
+from ..common.FileAccess import FileAccess
+from ..common.Desktop import Desktop
+from ..document.OfficeDocument import OfficeDocument
+
+from com.sun.star.awt.VclWindowPeerAttribute import YES_NO, DEF_NO
+from com.sun.star.util import CloseVetoException
+from com.sun.star.view.DocumentZoomType import OPTIMAL
+from com.sun.star.document.UpdateDocMode import FULL_UPDATE
+from com.sun.star.document.MacroExecMode import ALWAYS_EXECUTE
+
+class FaxWizardDialogImpl(FaxWizardDialog):
+
+ def leaveStep(self, nOldStep, nNewStep):
+ pass
+
+ def enterStep(self, nOldStep, nNewStep):
+ pass
+
+ RM_SENDERRECEIVER = 3
+ RM_FOOTER = 4
+
+ def __init__(self, xmsf):
+ super(FaxWizardDialogImpl, self).__init__(xmsf)
+ self.lstBusinessStylePos = None
+ self.lstPrivateStylePos = None
+ self.bSaveSuccess = False
+ self.filenameChanged = False
+
+ def startWizard(self, xMSF):
+ self.running = True
+ try:
+ #Number of steps on WizardDialog
+ self.nMaxStep = 5
+
+ #instantiate The Document Frame for the Preview
+ self.terminateListener = TerminateListenerProcAdapter(self.queryTermination)
+ self.myFaxDoc = FaxDocument(xMSF, self.terminateListener)
+
+ #create the dialog:
+ self.drawNaviBar()
+
+ self.buildStep1()
+ self.buildStep2()
+ self.buildStep3()
+ self.buildStep4()
+ self.buildStep5()
+
+ self.initializeSalutation()
+ self.initializeGreeting()
+ self.initializeCommunication()
+ self.initializePaths()
+
+ #special Control for setting the save Path:
+ self.insertPathSelectionControl()
+
+ self.initializeTemplates(xMSF)
+
+ #load the last used settings
+ #from the registry and apply listeners to the controls:
+ self.initConfiguration()
+
+ if self.myPathSelection.xSaveTextBox.Text.lower() == "":
+ self.myPathSelection.initializePath()
+
+ xContainerWindow = self.myFaxDoc.xFrame.ContainerWindow
+ self.createWindowPeer(xContainerWindow)
+
+ #add the Roadmap to the dialog:
+ self.insertRoadmap()
+
+ #load the last used document and apply last used settings:
+ #TODO:
+ self.setConfiguration()
+
+ #If the configuration does not define
+ #Greeting/Salutation/CommunicationType yet choose a default
+ self.__setDefaultForGreetingAndSalutationAndCommunication()
+
+ #disable functionality that is not supported by the template:
+ self.initializeElements()
+
+ #disable the document, so that the user cannot change anything:
+ self.myFaxDoc.xFrame.ComponentWindow.Enable = False
+ self.executeDialogFromComponent(self.myFaxDoc.xFrame)
+ self.removeTerminateListener()
+ self.closeDocument()
+ self.running = False
+ except Exception:
+ self.removeTerminateListener()
+ traceback.print_exc()
+ self.running = False
+ return
+
+ def cancelWizard(self):
+ self.xUnoDialog.endExecute()
+ self.running = False
+
+ def finishWizard(self):
+ self.switchToStep(self.getCurrentStep(), self.nMaxStep)
+ endWizard = True
+ try:
+ self.sPath = self.myPathSelection.getSelectedPath()
+ if not self.sPath or not os.path.exists(self.sPath):
+ self.myPathSelection.triggerPathPicker()
+ self.sPath = self.myPathSelection.getSelectedPath()
+
+ #first, if the filename was not changed, thus
+ #it is coming from a saved session, check if the
+ # file exists and warn the user.
+ if not self.filenameChanged:
+ answer = SystemDialog.showMessageBox(
+ self.xMSF, "MessBox", YES_NO + DEF_NO,
+ self.resources.resOverwriteWarning,
+ self.xUnoDialog.Peer)
+ if answer == 3:
+ # user said: no, do not overwrite...
+ endWizard = False
+ return False
+
+ self.myFaxDoc.setWizardTemplateDocInfo( \
+ self.resources.resFaxWizardDialog_title,
+ self.resources.resTemplateDescription)
+ self.myFaxDoc.killEmptyUserFields()
+ self.myFaxDoc.keepLogoFrame = bool(self.chkUseLogo.State)
+ self.myFaxDoc.keepTypeFrame = \
+ bool(self.chkUseCommunicationType.State)
+ self.myFaxDoc.killEmptyFrames()
+ self.bSaveSuccess = OfficeDocument.store(self.xMSF,
+ self.myFaxDoc.xTextDocument, self.sPath, "writer8_template")
+ if self.bSaveSuccess:
+ self.saveConfiguration()
+ xIH = self.xMSF.createInstance( \
+ "com.sun.star.comp.uui.UUIInteractionHandler")
+ loadValues = list(range(4))
+ loadValues[0] = uno.createUnoStruct( \
+ 'com.sun.star.beans.PropertyValue')
+ loadValues[0].Name = "AsTemplate"
+ loadValues[0].Value = True
+ loadValues[1] = uno.createUnoStruct( \
+ 'com.sun.star.beans.PropertyValue')
+ loadValues[1].Name = "MacroExecutionMode"
+ loadValues[1].Value = ALWAYS_EXECUTE
+ loadValues[2] = uno.createUnoStruct( \
+ 'com.sun.star.beans.PropertyValue')
+ loadValues[2].Name = "UpdateDocMode"
+ loadValues[2].Value = FULL_UPDATE
+ loadValues[3] = uno.createUnoStruct( \
+ 'com.sun.star.beans.PropertyValue')
+ loadValues[3].Name = "InteractionHandler"
+ loadValues[3].Value = xIH
+ if self.bEditTemplate:
+ loadValues[0].Value = False
+ else:
+ loadValues[0].Value = True
+
+ oDoc = OfficeDocument.load(Desktop.getDesktop(self.xMSF),
+ self.sPath, "_default", loadValues)
+ oDoc.CurrentController.ViewSettings.ZoomType = OPTIMAL
+ else:
+ pass
+ #TODO: Error Handling
+
+ except Exception:
+ traceback.print_exc()
+ finally:
+ if endWizard:
+ self.xUnoDialog.endExecute()
+ self.running = False
+
+ return True
+
+ def closeDocument(self):
+ try:
+ self.myFaxDoc.xFrame.close(False)
+ except CloseVetoException:
+ traceback.print_exc()
+
+ def drawConstants(self):
+ '''Localise the template'''
+ constRangeList = self.myFaxDoc.searchFillInItems(1)
+
+ for i in constRangeList:
+ text = i.String.lower()
+ aux = TextElement(i, self.resources.dictConstants[text])
+ aux.write()
+
+ def insertRoadmap(self):
+ self.addRoadmap()
+ self.insertRoadMapItems(
+ self.resources.RoadmapLabels, [True, True, True, False, True])
+
+ self.setRoadmapInteractive(True)
+ self.setRoadmapComplete(True)
+ self.setCurrentRoadmapItemID(1)
+
+ def insertPathSelectionControl(self):
+ self.myPathSelection = PathSelection(self.xMSF,
+ self, PathSelection.TransferMode.SAVE,
+ PathSelection.DialogTypes.FILE)
+ self.myPathSelection.insert(
+ 5, 97, 70, 205, 45, self.resources.reslblTemplatePath_value,
+ True, HelpIds.getHelpIdString(HID + 34),
+ HelpIds.getHelpIdString(HID + 35))
+ self.myPathSelection.sDefaultDirectory = self.sUserTemplatePath
+ self.myPathSelection.sDefaultName = "myFaxTemplate.ott"
+ self.myPathSelection.sDefaultFilter = "writer8_template"
+ self.myPathSelection.addSelectionListener(self)
+
+ def initializeTemplates(self, xMSF):
+ try:
+ self.sFaxPath = self.sTemplatePath + "/wizard/fax"
+ self.BusinessFiles = FileAccess.getFolderTitles(xMSF, "bus",
+ self.sFaxPath, self.resources.dictBusinessTemplate)
+ self.PrivateFiles = FileAccess.getFolderTitles(xMSF, "pri",
+ self.sFaxPath, self.resources.dictPrivateTemplate)
+
+ self.xDialogModel.lstBusinessStyle.StringItemList = \
+ tuple(self.BusinessFiles[0])
+ self.xDialogModel.lstPrivateStyle.StringItemList = \
+ tuple(self.PrivateFiles[0])
+ self.xDialogModel.lstBusinessStyle.SelectedItems = (0,)
+ self.xDialogModel.lstPrivateStyle.SelectedItems = (0,)
+ return True
+ except NoValidPathException:
+ traceback.print_exc()
+ return False
+
+ def initializeElements(self):
+ self.xDialogModel.chkUseLogo.Enabled = \
+ self.myFaxDoc.hasElement("Company Logo")
+ self.xDialogModel.chkUseSubject.Enabled = \
+ self.myFaxDoc.hasElement("Subject Line")
+ self.xDialogModel.chkUseDate.Enabled = \
+ self.myFaxDoc.hasElement("Date")
+ self.myFaxDoc.updateDateFields()
+
+ def initializeSalutation(self):
+ #'Salutation' listbox
+ self.xDialogModel.lstSalutation.StringItemList = \
+ tuple(self.resources.SalutationLabels)
+
+ def initializeGreeting(self):
+ #'Complimentary Close' listbox
+ self.xDialogModel.lstGreeting.StringItemList = \
+ tuple(self.resources.GreetingLabels)
+
+ def initializeCommunication(self):
+ #'Type of message' listbox
+ self.xDialogModel.lstCommunicationType.StringItemList = \
+ tuple(self.resources.CommunicationLabels)
+
+ def __setDefaultForGreetingAndSalutationAndCommunication(self):
+ if not self.lstSalutation.Text:
+ self.lstSalutation.setText(self.resources.SalutationLabels[0])
+
+ if not self.lstGreeting.Text:
+ self.lstGreeting.setText(self.resources.GreetingLabels[0])
+
+ if not self.lstCommunicationType.Text:
+ self.lstCommunicationType.setText( \
+ self.resources.CommunicationLabels[0])
+
+ def initConfiguration(self):
+ try:
+ self.myConfig = CGFaxWizard()
+ root = Configuration.getConfigurationRoot(self.xMSF,
+ "/org.openoffice.Office.Writer/Wizards/Fax", False)
+ self.myConfig.readConfiguration(root, "cp_")
+ RadioDataAware.attachRadioButtons(
+ self.myConfig, "cp_FaxType",
+ (self.optBusinessFax, self.optPrivateFax), True).updateUI()
+ UnoDataAware.attachListBox(
+ self.myConfig.cp_BusinessFax, "cp_Style",
+ self.lstBusinessStyle, True).updateUI()
+ UnoDataAware.attachListBox(
+ self.myConfig.cp_PrivateFax, "cp_Style", self.lstPrivateStyle,
+ True).updateUI()
+ cgl = self.myConfig.cp_BusinessFax
+ UnoDataAware.attachCheckBox(cgl,
+ "cp_PrintCompanyLogo", self.chkUseLogo, True).updateUI()
+ UnoDataAware.attachCheckBox(cgl,
+ "cp_PrintSubjectLine", self.chkUseSubject, True).updateUI()
+ UnoDataAware.attachCheckBox(cgl,
+ "cp_PrintSalutation", self.chkUseSalutation, True).updateUI()
+ UnoDataAware.attachCheckBox(cgl,
+ "cp_PrintDate", self.chkUseDate, True).updateUI()
+ UnoDataAware.attachCheckBox(cgl, "cp_PrintCommunicationType",
+ self.chkUseCommunicationType, True).updateUI()
+ UnoDataAware.attachCheckBox(cgl,
+ "cp_PrintGreeting", self.chkUseGreeting, True).updateUI()
+ UnoDataAware.attachCheckBox(cgl,
+ "cp_PrintFooter", self.chkUseFooter, True).updateUI()
+ UnoDataAware.attachEditControl(cgl,
+ "cp_Salutation", self.lstSalutation, True).updateUI()
+ UnoDataAware.attachEditControl(cgl,
+ "cp_Greeting", self.lstGreeting, True).updateUI()
+ UnoDataAware.attachEditControl(cgl, "cp_CommunicationType",
+ self.lstCommunicationType, True).updateUI()
+ RadioDataAware.attachRadioButtons(cgl, "cp_SenderAddressType",
+ (self.optSenderDefine, self.optSenderPlaceholder),
+ True).updateUI()
+ UnoDataAware.attachEditControl(cgl, "cp_SenderCompanyName",
+ self.txtSenderName, True).updateUI()
+ UnoDataAware.attachEditControl(cgl, "cp_SenderStreet",
+ self.txtSenderStreet, True).updateUI()
+ UnoDataAware.attachEditControl(cgl, "cp_SenderPostCode",
+ self.txtSenderPostCode, True).updateUI()
+ UnoDataAware.attachEditControl(cgl, "cp_SenderState",
+ self.txtSenderState, True).updateUI()
+ UnoDataAware.attachEditControl(cgl, "cp_SenderCity",
+ self.txtSenderCity, True).updateUI()
+ UnoDataAware.attachEditControl(cgl, "cp_SenderFax",
+ self.txtSenderFax, True).updateUI()
+ RadioDataAware.attachRadioButtons(cgl, "cp_ReceiverAddressType",
+ (self.optReceiverDatabase, self.optReceiverPlaceholder),
+ True).updateUI()
+ UnoDataAware.attachEditControl(cgl, "cp_Footer",
+ self.txtFooter, True).updateUI()
+ UnoDataAware.attachCheckBox(cgl, "cp_FooterOnlySecondPage",
+ self.chkFooterNextPages, True).updateUI()
+ UnoDataAware.attachCheckBox(cgl, "cp_FooterPageNumbers",
+ self.chkFooterPageNumbers, True).updateUI()
+ RadioDataAware.attachRadioButtons(cgl, "cp_CreationType",
+ (self.optCreateFax, self.optMakeChanges), True).updateUI()
+ UnoDataAware.attachEditControl(cgl,
+ "cp_TemplateName", self.txtTemplateName, True).updateUI()
+ UnoDataAware.attachEditControl(cgl, "cp_TemplatePath",
+ self.myPathSelection.xSaveTextBox, True).updateUI()
+ except Exception:
+ traceback.print_exc()
+
+ def saveConfiguration(self):
+ try:
+ root = Configuration.getConfigurationRoot(self.xMSF,
+ "/org.openoffice.Office.Writer/Wizards/Fax", True)
+ self.myConfig.writeConfiguration(root, "cp_")
+ root.commitChanges()
+ except Exception:
+ traceback.print_exc()
+
+ def setConfiguration(self):
+ #set correct Configuration tree:
+ if self.optBusinessFax.State:
+ self.optBusinessFaxItemChanged()
+ elif self.optPrivateFax.State:
+ self.optPrivateFaxItemChanged()
+
+ def optBusinessFaxItemChanged(self):
+ self.lstPrivateStylePos = None
+ self.xDialogModel.lblBusinessStyle.Enabled = True
+ self.xDialogModel.lstBusinessStyle.Enabled = True
+ self.xDialogModel.lblPrivateStyle.Enabled = False
+ self.xDialogModel.lstPrivateStyle.Enabled = False
+
+ self.lstBusinessStyleItemChanged()
+ self.__enableSenderReceiver()
+ self.__setPossibleFooter(True)
+
+ def lstBusinessStyleItemChanged(self):
+ selectedItemPos = self.lstBusinessStyle.SelectedItemPos
+ #avoid to load the same item again
+ if self.lstBusinessStylePos != selectedItemPos:
+ self.lstBusinessStylePos = selectedItemPos
+ self.myFaxDoc.loadAsPreview(
+ self.BusinessFiles[1][selectedItemPos], False)
+ self.initializeElements()
+ self.setElements()
+ self.drawConstants()
+
+ def optPrivateFaxItemChanged(self):
+ self.lstBusinessStylePos = None
+ self.xDialogModel.lblBusinessStyle.Enabled = False
+ self.xDialogModel.lstBusinessStyle.Enabled = False
+ self.xDialogModel.lblPrivateStyle.Enabled = True
+ self.xDialogModel.lstPrivateStyle.Enabled = True
+
+ self.lstPrivateStyleItemChanged()
+ self.__disableSenderReceiver()
+ self.__setPossibleFooter(False)
+
+ def lstPrivateStyleItemChanged(self):
+ selectedItemPos = self.lstPrivateStyle.SelectedItemPos
+ #avoid to load the same item again
+ if self.lstPrivateStylePos != selectedItemPos:
+ self.lstPrivateStylePos = selectedItemPos
+ self.myFaxDoc.loadAsPreview(
+ self.PrivateFiles[1][selectedItemPos], False)
+ self.initializeElements()
+ self.setElements()
+
+ def txtTemplateNameTextChanged(self):
+ # Change Template Title in Properties
+ xDocProps = self.myFaxDoc.xTextDocument.DocumentProperties
+ xDocProps.Title = self.txtTemplateName.Text
+
+ def optSenderPlaceholderItemChanged(self):
+ self.xDialogModel.lblSenderName.Enabled = False
+ self.xDialogModel.lblSenderStreet.Enabled = False
+ self.xDialogModel.lblPostCodeCity.Enabled = False
+ self.xDialogModel.lblSenderFax.Enabled = False
+ self.xDialogModel.txtSenderName.Enabled = False
+ self.xDialogModel.txtSenderStreet.Enabled = False
+ self.xDialogModel.txtSenderPostCode.Enabled = False
+ self.xDialogModel.txtSenderState.Enabled = False
+ self.xDialogModel.txtSenderCity.Enabled = False
+ self.xDialogModel.txtSenderFax.Enabled = False
+ self.myFaxDoc.fillSenderWithUserData()
+
+ def optSenderDefineItemChanged(self):
+ self.xDialogModel.lblSenderName.Enabled = True
+ self.xDialogModel.lblSenderStreet.Enabled = True
+ self.xDialogModel.lblPostCodeCity.Enabled = True
+ self.xDialogModel.lblSenderFax.Enabled = True
+ self.xDialogModel.txtSenderName.Enabled = True
+ self.xDialogModel.txtSenderStreet.Enabled = True
+ self.xDialogModel.txtSenderPostCode.Enabled = True
+ self.xDialogModel.txtSenderState.Enabled = True
+ self.xDialogModel.txtSenderCity.Enabled = True
+ self.xDialogModel.txtSenderFax.Enabled = True
+
+ self.myFieldHandler = TextFieldHandler(self.myFaxDoc.xMSF,
+ self.myFaxDoc.xTextDocument)
+ self.txtSenderNameTextChanged()
+ self.txtSenderStreetTextChanged()
+ self.txtSenderPostCodeTextChanged()
+ self.txtSenderStateTextChanged()
+ self.txtSenderCityTextChanged()
+ self.txtSenderFaxTextChanged()
+
+ def txtSenderNameTextChanged(self):
+ self.myFieldHandler.changeUserFieldContent(
+ "Company", self.txtSenderName.Text)
+
+ def txtSenderStreetTextChanged(self):
+ self.myFieldHandler.changeUserFieldContent(
+ "Street", self.txtSenderStreet.Text)
+
+ def txtSenderCityTextChanged(self):
+ self.myFieldHandler.changeUserFieldContent(
+ "City", self.txtSenderCity.Text)
+
+ def txtSenderPostCodeTextChanged(self):
+ self.myFieldHandler.changeUserFieldContent(
+ "PostCode", self.txtSenderPostCode.Text)
+
+ def txtSenderStateTextChanged(self):
+ self.myFieldHandler.changeUserFieldContent(
+ "State", self.txtSenderState.Text)
+
+ def txtSenderFaxTextChanged(self):
+ self.myFieldHandler.changeUserFieldContent(
+ "Fax", self.txtSenderFax.Text)
+
+ #switch Elements on/off --------------------------------------------------
+
+ def setElements(self):
+ #UI relevant:
+ if self.optSenderDefine.State:
+ self.optSenderDefineItemChanged()
+
+ if self.optSenderPlaceholder.State:
+ self.optSenderPlaceholderItemChanged()
+
+ self.chkUseLogoItemChanged()
+ self.chkUseSubjectItemChanged()
+ self.chkUseSalutationItemChanged()
+ self.chkUseGreetingItemChanged()
+ self.chkUseCommunicationItemChanged()
+ self.chkUseDateItemChanged()
+ self.chkUseFooterItemChanged()
+ self.txtTemplateNameTextChanged()
+ #not UI relevant:
+ if self.optReceiverDatabase.State:
+ self.optReceiverDatabaseItemChanged()
+
+ elif self.optReceiverPlaceholder.State:
+ self.optReceiverPlaceholderItemChanged()
+
+ if self.optCreateFax.State:
+ self.optCreateFromTemplateItemChanged()
+
+ elif self.optMakeChanges.State:
+ self.optMakeChangesItemChanged()
+
+ def chkUseLogoItemChanged(self):
+ if self.myFaxDoc.hasElement("Company Logo"):
+ self.myFaxDoc.switchElement("Company Logo",
+ bool(self.chkUseLogo.State))
+
+ def chkUseSubjectItemChanged(self):
+ if self.myFaxDoc.hasElement("Subject Line"):
+ self.myFaxDoc.switchElement("Subject Line",
+ bool(self.chkUseSubject.State))
+
+ def chkUseDateItemChanged(self):
+ if self.myFaxDoc.hasElement("Date"):
+ self.myFaxDoc.switchElement("Date",
+ bool(self.chkUseDate.State))
+
+ def chkUseFooterItemChanged(self):
+ try:
+ bFooterPossible = bool(self.chkUseFooter.State) \
+ and bool(self.xDialogModel.chkUseFooter.Enabled)
+ if bool(self.chkFooterNextPages.State):
+ self.myFaxDoc.switchFooter("First Page", False,
+ bool(self.chkFooterPageNumbers.State),
+ self.txtFooter.Text)
+ self.myFaxDoc.switchFooter("Standard", bFooterPossible,
+ bool(self.chkFooterPageNumbers.State),
+ self.txtFooter.Text)
+ else:
+ self.myFaxDoc.switchFooter("First Page", bFooterPossible,
+ bool(self.chkFooterPageNumbers.State),
+ self.txtFooter.Text)
+ self.myFaxDoc.switchFooter("Standard", bFooterPossible,
+ bool(self.chkFooterPageNumbers.State),
+ self.txtFooter.Text)
+
+ #enable/disable roadmap item for footer page
+ BPaperItem = self.getRoadmapItemByID( \
+ FaxWizardDialogImpl.RM_FOOTER)
+ BPaperItem.Enabled = bFooterPossible
+ except Exception:
+ traceback.print_exc()
+
+ def chkFooterNextPagesItemChanged(self):
+ self.chkUseFooterItemChanged()
+
+ def chkFooterPageNumbersItemChanged(self):
+ self.chkUseFooterItemChanged()
+
+ def txtFooterTextChanged(self):
+ self.myFaxDoc.switchFooter("First Page", True,
+ bool(self.chkFooterPageNumbers.State),
+ self.txtFooter.Text)
+
+ def chkUseSalutationItemChanged(self):
+ self.myFaxDoc.switchUserField("Salutation",
+ self.lstSalutation.Text, bool(self.chkUseSalutation.State))
+ self.xDialogModel.lstSalutation.Enabled = \
+ bool(self.chkUseSalutation.State)
+
+ def lstSalutationItemChanged(self):
+ self.myFaxDoc.switchUserField("Salutation",
+ self.lstSalutation.Text, bool(self.chkUseSalutation.State))
+
+ def chkUseCommunicationItemChanged(self):
+ self.myFaxDoc.switchUserField("CommunicationType",
+ self.lstCommunicationType.Text,
+ bool(self.chkUseCommunicationType.State))
+ self.xDialogModel.lstCommunicationType.Enabled = \
+ bool(self.chkUseCommunicationType.State)
+
+ def lstCommunicationItemChanged(self):
+ self.myFaxDoc.switchUserField("CommunicationType",
+ self.lstCommunicationType.Text,
+ bool(self.chkUseCommunicationType.State))
+
+ def chkUseGreetingItemChanged(self):
+ self.myFaxDoc.switchUserField("Greeting",
+ self.lstGreeting.Text, bool(self.chkUseGreeting.State))
+ self.xDialogModel.lstGreeting.Enabled = \
+ bool(self.chkUseGreeting.State)
+
+ def lstGreetingItemChanged(self):
+ self.myFaxDoc.switchUserField("Greeting", self.lstGreeting.Text,
+ bool(self.chkUseGreeting.State))
+
+ def __setPossibleFooter(self, bState):
+ self.xDialogModel.chkUseFooter.Enabled = bState
+ if not bState:
+ self.chkUseFooter.State = 0
+
+ self.chkUseFooterItemChanged()
+
+ def optReceiverPlaceholderItemChanged(self):
+ OfficeDocument.attachEventCall(
+ self.myFaxDoc.xTextDocument, "OnNew", "StarBasic",
+ "macro:///Template.Correspondence.Placeholder()")
+
+ def optReceiverDatabaseItemChanged(self):
+ OfficeDocument.attachEventCall(
+ self.myFaxDoc.xTextDocument, "OnNew", "StarBasic",
+ "macro:///Template.Correspondence.Database()")
+
+ def __enableSenderReceiver(self):
+ BPaperItem = self.getRoadmapItemByID( \
+ FaxWizardDialogImpl.RM_SENDERRECEIVER)
+ BPaperItem.Enabled = True
+
+ def __disableSenderReceiver(self):
+ BPaperItem = self.getRoadmapItemByID( \
+ FaxWizardDialogImpl.RM_SENDERRECEIVER)
+ BPaperItem.Enabled = False
+
+ def validatePath(self):
+ if self.myPathSelection.usedPathPicker:
+ self.filenameChanged = True
+ self.myPathSelection.usedPathPicker = False