summaryrefslogtreecommitdiff
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.py538
1 files changed, 538 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 000000000000..660018488fe8
--- /dev/null
+++ b/wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.py
@@ -0,0 +1,538 @@
+from FaxWizardDialog import *
+from CGFaxWizard import *
+from FaxDocument import *
+from ui.PathSelection import *
+from common.FileAccess import *
+from ui.event.UnoDataAware import *
+from ui.event.RadioDataAware import *
+from ui.XPathSelectionListener import XPathSelectionListener
+from common.Configuration import *
+from document.OfficeDocument import OfficeDocument
+from text.TextFieldHandler import TextFieldHandler
+
+from common.NoValidPathException import *
+from com.sun.star.uno import RuntimeException
+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_TYPESTYLE = 1
+ RM_ELEMENTS = 2
+ RM_SENDERRECEIVER = 3
+ RM_FOOTER = 4
+ RM_FINALSETTINGS = 5
+
+
+ def __init__(self, xmsf):
+ super(FaxWizardDialogImpl,self).__init__(xmsf)
+ self.mainDA = []
+ self.faxDA = []
+ self.bSaveSuccess = False
+ self.__filenameChanged = False
+ self.UserTemplatePath = ""
+ self.sTemplatePath = ""
+
+ @classmethod
+ def main(self, args):
+ #only being called when starting wizard remotely
+ try:
+ ConnectStr = "uno:socket,host=localhost,port=2002;urp;StarOffice.ComponentContext"
+ xLocMSF = Desktop.connect(ConnectStr)
+ lw = FaxWizardDialogImpl(xLocMSF)
+ print
+ print "lw.startWizard"
+ print
+ lw.startWizard(xLocMSF, None)
+ except RuntimeException, e:
+ # TODO Auto-generated catch block
+ traceback.print_exc()
+ except UnoException, e:
+ # TODO Auto-generated catch blocksetMaxStep
+ traceback.print_exc()
+ except Exception, e:
+ # TODO Auto-generated catch blocksetMaxStep
+ traceback.print_exc()
+
+ def startWizard(self, xMSF, CurPropertyValue):
+ self.running = True
+ try:
+ #Number of steps on WizardDialog:
+ self.setMaxStep(5)
+
+ #instatiate The Document Frame for the Preview
+ self.myFaxDoc = FaxDocument(xMSF, self)
+
+ #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 fFrameor setting the save Path:
+ self.insertPathSelectionControl()
+
+ #load the last used settings from the registry and apply listeners to the controls:
+ self.initConfiguration()
+
+ self.initializeTemplates(xMSF)
+
+ #update the dialog UI according to the loaded Configuration
+ self.__updateUI()
+ if self.myPathSelection.xSaveTextBox.getText().lower() == "":
+ self.myPathSelection.initializePath()
+
+ self.xContainerWindow = self.myFaxDoc.xFrame.getContainerWindow()
+ self.createWindowPeer(self.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 funtionality that is not supported by the template:
+ self.initializeElements()
+
+ #disable the document, so that the user cannot change anything:
+ self.myFaxDoc.xFrame.getComponentWindow().setEnable(False)
+
+ self.executeDialogFromComponent(self.myFaxDoc.xFrame)
+ self.removeTerminateListener()
+ self.closeDocument()
+ self.running = False
+ except UnoException, exception:
+ self.removeTerminateListener()
+ traceback.print_exc()
+ self.running = False
+ return
+
+ def cancelWizard(self):
+ xDialog.endExecute()
+ self.running = False
+
+ def finishWizard(self):
+ switchToStep(getCurrentStep(), getMaxStep())
+ self.myFaxDoc.setWizardTemplateDocInfo(self.resources.resFaxWizardDialog_title, self.resources.resTemplateDescription)
+ try:
+ fileAccess = FileAccess(xMSF)
+ self.sPath = self.myPathSelection.getSelectedPath()
+ if self.sPath.equals(""):
+ self.myPathSelection.triggerPathPicker()
+ self.sPath = self.myPathSelection.getSelectedPath()
+
+ self.sPath = fileAccess.getURL(self.sPath)
+ #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:
+ if fileAccess.exists(self.sPath, True):
+ answer = SystemDialog.showMessageBox(xMSF, xControl.getPeer(), "MessBox", VclWindowPeerAttribute.YES_NO + VclWindowPeerAttribute.DEF_NO, self.resources.resOverwriteWarning)
+ if (answer == 3): # user said: no, do not overwrite....
+ return False
+
+
+ self.myFaxDoc.setWizardTemplateDocInfo(self.resources.resFaxWizardDialog_title, self.resources.resTemplateDescription)
+ self.myFaxDoc.killEmptyUserFields()
+ self.myFaxDoc.keepLogoFrame = (self.chkUseLogo.getState() != 0);
+ self.myFaxDoc.keepTypeFrame = (self.chkUseCommunicationType.getState() != 0);
+ self.myFaxDoc.killEmptyFrames()
+ self.bSaveSuccess = OfficeDocument.store(xMSF, self.xTextDocument, self.sPath, "writer8_template", False)
+ if self.bSaveSuccess:
+ saveConfiguration()
+ xIH = xMSF.createInstance("com.sun.star.comp.uui.UUIInteractionHandler")
+ loadValues = range(3)
+ 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 = uno.Any("short",ALWAYS_EXECUTE)
+ loadValues[2] = uno.createUnoStruct('com.sun.star.beans.PropertyValue')
+ loadValues[2].Name = "UpdateDocMode";
+ loadValues[2].Value = uno.Any("short",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(xMSF), self.sPath, "_default", loadValues)
+ myViewHandler = oDoc.getCurrentController().getViewSettings()
+ myViewHandler.setPropertyValue("ZoomType", uno.Any("short",OPTIMAL));
+ else:
+ pass
+ #TODO: Error Handling
+
+ except UnoException, e:
+ traceback.print_exc()
+ finally:
+ xDialog.endExecute()
+ self.running = False
+
+ return True
+
+ def closeDocument(self):
+ try:
+ self.myFaxDoc.xFrame.close(False)
+ except CloseVetoException, e:
+ traceback.print_exc()
+
+ def insertRoadmap(self):
+ self.addRoadmap()
+ i = 0
+ i = self.insertRoadmapItem(0, True, self.resources.RoadmapLabels[FaxWizardDialogImpl.RM_TYPESTYLE - 1], FaxWizardDialogImpl.RM_TYPESTYLE)
+ i = self.insertRoadmapItem(i, True, self.resources.RoadmapLabels[FaxWizardDialogImpl.RM_ELEMENTS - 1], FaxWizardDialogImpl.RM_ELEMENTS)
+ i = self.insertRoadmapItem(i, True, self.resources.RoadmapLabels[FaxWizardDialogImpl.RM_SENDERRECEIVER - 1], FaxWizardDialogImpl.RM_SENDERRECEIVER)
+ i = self.insertRoadmapItem(i, False, self.resources.RoadmapLabels[FaxWizardDialogImpl.RM_FOOTER - 1], FaxWizardDialogImpl.RM_FOOTER)
+ i = self.insertRoadmapItem(i, True, self.resources.RoadmapLabels[FaxWizardDialogImpl.RM_FINALSETTINGS - 1], FaxWizardDialogImpl.RM_FINALSETTINGS)
+ self.setRoadmapInteractive(True)
+ self.setRoadmapComplete(True)
+ self.setCurrentRoadmapItemID(1)
+
+ class __myPathSelectionListener(XPathSelectionListener):
+
+ def validatePath(self):
+ if self.myPathSelection.usedPathPicker:
+ self.__filenameChanged = True
+
+ self.myPathSelection.usedPathPicker = False
+
+ 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.UserTemplatePath
+ self.myPathSelection.sDefaultName = "myFaxTemplate.ott"
+ self.myPathSelection.sDefaultFilter = "writer8_template"
+ self.myPathSelection.addSelectionListener(self.__myPathSelectionListener())
+
+ def __updateUI(self):
+ UnoDataAware.updateUIs(self.mainDA)
+ UnoDataAware.updateUIs(self.faxDA)
+
+ def __initializePaths(self):
+ try:
+ self.sTemplatePath = FileAccess.getOfficePath2(self.xMSF, "Template", "share", "/wizard")
+ self.UserTemplatePath = FileAccess.getOfficePath2(self.xMSF, "Template", "user", "")
+ self.sBitmapPath = FileAccess.combinePaths(self.xMSF, self.sTemplatePath, "/../wizard/bitmap")
+ except NoValidPathException, e:
+ traceback.print_exc()
+
+ def initializeTemplates(self, xMSF):
+ try:
+ self.sFaxPath = FileAccess.combinePaths(xMSF,self.sTemplatePath, "/wizard/fax")
+ self.sWorkPath = FileAccess.getOfficePath2(xMSF, "Work", "", "")
+ self.BusinessFiles = FileAccess.getFolderTitles(xMSF, "bus", self.sFaxPath)
+ self.PrivateFiles = FileAccess.getFolderTitles(xMSF, "pri", self.sFaxPath)
+
+ self.setControlProperty("lstBusinessStyle", "StringItemList", self.BusinessFiles[0])
+ self.setControlProperty("lstPrivateStyle", "StringItemList", self.PrivateFiles[0])
+ self.setControlProperty("lstBusinessStyle", "SelectedItems", [0])
+ self.setControlProperty("lstPrivateStyle", "SelectedItems" , [0])
+ return True
+ except NoValidPathException, e:
+ # TODO Auto-generated catch block
+ traceback.print_exc()
+ return False
+
+ def initializeElements(self):
+ self.setControlProperty("chkUseLogo", PropertyNames.PROPERTY_ENABLED, self.myFaxDoc.hasElement("Company Logo"))
+ self.setControlProperty("chkUseSubject", PropertyNames.PROPERTY_ENABLED,self.myFaxDoc.hasElement("Subject Line"))
+ self.setControlProperty("chkUseDate", PropertyNames.PROPERTY_ENABLED,self.myFaxDoc.hasElement("Date"))
+ self.myFaxDoc.updateDateFields()
+
+ def initializeSalutation(self):
+ self.setControlProperty("lstSalutation", "StringItemList", self.resources.SalutationLabels)
+
+ def initializeGreeting(self):
+ self.setControlProperty("lstGreeting", "StringItemList", self.resources.GreetingLabels)
+
+ def initializeCommunication(self):
+ self.setControlProperty("lstCommunicationType", "StringItemList", self.resources.CommunicationLabels)
+
+ def __setDefaultForGreetingAndSalutationAndCommunication(self):
+ if self.lstSalutation.getText() == "":
+ self.lstSalutation.setText(self.resources.SalutationLabels[0])
+
+ if self.lstGreeting.getText() == "":
+ self.lstGreeting.setText(self.resources.GreetingLabels[0])
+
+ if self.lstCommunicationType.getText() == "":
+ 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_")
+ self.mainDA.append(RadioDataAware.attachRadioButtons(self.myConfig, "cp_FaxType", (self.optBusinessFax, self.optPrivateFax), None, True))
+ self.mainDA.append(UnoDataAware.attachListBox(self.myConfig.cp_BusinessFax, "cp_Style", self.lstBusinessStyle, None, True))
+ self.mainDA.append(UnoDataAware.attachListBox(self.myConfig.cp_PrivateFax, "cp_Style", self.lstPrivateStyle, None, True))
+ cgl = self.myConfig.cp_BusinessFax
+ self.faxDA.append(UnoDataAware.attachCheckBox(cgl, "cp_PrintCompanyLogo", self.chkUseLogo, None, True))
+ self.faxDA.append(UnoDataAware.attachCheckBox(cgl, "cp_PrintSubjectLine", self.chkUseSubject, None, True))
+ self.faxDA.append(UnoDataAware.attachCheckBox(cgl, "cp_PrintSalutation", self.chkUseSalutation, None, True))
+ self.faxDA.append(UnoDataAware.attachCheckBox(cgl, "cp_PrintDate", self.chkUseDate, None, True))
+ self.faxDA.append(UnoDataAware.attachCheckBox(cgl, "cp_PrintCommunicationType", self.chkUseCommunicationType, None, True))
+ self.faxDA.append(UnoDataAware.attachCheckBox(cgl, "cp_PrintGreeting", self.chkUseGreeting, None, True))
+ self.faxDA.append(UnoDataAware.attachCheckBox(cgl, "cp_PrintFooter", self.chkUseFooter, None, True))
+ self.faxDA.append(UnoDataAware.attachEditControl(cgl, "cp_Salutation", self.lstSalutation, None, True))
+ self.faxDA.append(UnoDataAware.attachEditControl(cgl, "cp_Greeting", self.lstGreeting, None, True))
+ self.faxDA.append(UnoDataAware.attachEditControl(cgl, "cp_CommunicationType", self.lstCommunicationType, None, True))
+ self.faxDA.append(RadioDataAware.attachRadioButtons(cgl, "cp_SenderAddressType", (self.optSenderDefine, self.optSenderPlaceholder), None, True))
+ self.faxDA.append(UnoDataAware.attachEditControl(cgl, "cp_SenderCompanyName", self.txtSenderName, None, True))
+ self.faxDA.append(UnoDataAware.attachEditControl(cgl, "cp_SenderStreet", self.txtSenderStreet, None, True))
+ self.faxDA.append(UnoDataAware.attachEditControl(cgl, "cp_SenderPostCode", self.txtSenderPostCode, None, True))
+ self.faxDA.append(UnoDataAware.attachEditControl(cgl, "cp_SenderState", self.txtSenderState, None, True))
+ self.faxDA.append(UnoDataAware.attachEditControl(cgl, "cp_SenderCity", self.txtSenderCity, None, True))
+ self.faxDA.append(UnoDataAware.attachEditControl(cgl, "cp_SenderFax", self.txtSenderFax, None, True))
+ self.faxDA.append(RadioDataAware.attachRadioButtons(cgl, "cp_ReceiverAddressType", (self.optReceiverDatabase, self.optReceiverPlaceholder), None, True))
+ self.faxDA.append(UnoDataAware.attachEditControl(cgl, "cp_Footer", self.txtFooter, None, True))
+ self.faxDA.append(UnoDataAware.attachCheckBox(cgl, "cp_FooterOnlySecondPage", self.chkFooterNextPages, None, True))
+ self.faxDA.append(UnoDataAware.attachCheckBox(cgl, "cp_FooterPageNumbers", self.chkFooterPageNumbers, None, True))
+ self.faxDA.append(RadioDataAware.attachRadioButtons(cgl, "cp_CreationType", (self.optCreateFax, self.optMakeChanges), None, True))
+ self.faxDA.append(UnoDataAware.attachEditControl(cgl, "cp_TemplateName", self.txtTemplateName, None, True))
+ self.faxDA.append(UnoDataAware.attachEditControl(cgl, "cp_TemplatePath", self.myPathSelection.xSaveTextBox, None, True))
+ except UnoException, exception:
+ traceback.print_exc()
+
+ def saveConfiguration(self):
+ try:
+ root = Configuration.getConfigurationRoot(xMSF, "/org.openoffice.Office.Writer/Wizards/Fax", True)
+ self.myConfig.writeConfiguration(root, "cp_")
+ Configuration.commit(root)
+ except UnoException, e:
+ traceback.print_exc()
+
+ def setConfiguration(self):
+ #set correct Configuration tree:
+ if self.optBusinessFax.getState():
+ self.optBusinessFaxItemChanged()
+ if self.optPrivateFax.getState():
+ self.optPrivateFaxItemChanged()
+
+ def optBusinessFaxItemChanged(self):
+ DataAware.setDataObjects(self.faxDA, self.myConfig.cp_BusinessFax, True)
+ self.setControlProperty("lblBusinessStyle", PropertyNames.PROPERTY_ENABLED, True)
+ self.setControlProperty("lstBusinessStyle", PropertyNames.PROPERTY_ENABLED, True)
+ self.setControlProperty("lblPrivateStyle", PropertyNames.PROPERTY_ENABLED, False)
+ self.setControlProperty("lstPrivateStyle", PropertyNames.PROPERTY_ENABLED, False)
+ self.lstBusinessStyleItemChanged()
+ self.__enableSenderReceiver()
+ self.__setPossibleFooter(True)
+ def lstBusinessStyleItemChanged(self):
+ self.xTextDocument = self.myFaxDoc.loadAsPreview(self.BusinessFiles[1][self.lstBusinessStyle.getSelectedItemPos()], False)
+ self.initializeElements()
+ self.setElements()
+
+ def optPrivateFaxItemChanged(self):
+ DataAware.setDataObjects(self.faxDA, self.myConfig.cp_PrivateFax, True)
+ self.setControlProperty("lblBusinessStyle", PropertyNames.PROPERTY_ENABLED, False)
+ self.setControlProperty("lstBusinessStyle", PropertyNames.PROPERTY_ENABLED, False)
+ self.setControlProperty("lblPrivateStyle", PropertyNames.PROPERTY_ENABLED, True)
+ self.setControlProperty("lstPrivateStyle", PropertyNames.PROPERTY_ENABLED, True)
+ self.lstPrivateStyleItemChanged()
+ self.__disableSenderReceiver()
+ self.__setPossibleFooter(False)
+
+ def lstPrivateStyleItemChanged(self):
+ self.xTextDocument = self.myFaxDoc.loadAsPreview(self.PrivateFiles[1][self.lstPrivateStyle.getSelectedItemPos()], False)
+ self.initializeElements()
+ self.setElements()
+
+ def txtTemplateNameTextChanged(self):
+ xDocProps = self.xTextDocument.getDocumentProperties()
+ xDocProps.Title = self.txtTemplateName.getText()
+
+ def optSenderPlaceholderItemChanged(self):
+ self.setControlProperty("lblSenderName", PropertyNames.PROPERTY_ENABLED, False)
+ self.setControlProperty("lblSenderStreet", PropertyNames.PROPERTY_ENABLED, False)
+ self.setControlProperty("lblPostCodeCity", PropertyNames.PROPERTY_ENABLED, False)
+ self.setControlProperty("lblSenderFax", PropertyNames.PROPERTY_ENABLED, False)
+ self.setControlProperty("txtSenderName", PropertyNames.PROPERTY_ENABLED, False)
+ self.setControlProperty("txtSenderStreet", PropertyNames.PROPERTY_ENABLED, False)
+ self.setControlProperty("txtSenderPostCode", PropertyNames.PROPERTY_ENABLED, False)
+ self.setControlProperty("txtSenderState", PropertyNames.PROPERTY_ENABLED, False)
+ self.setControlProperty("txtSenderCity", PropertyNames.PROPERTY_ENABLED, False)
+ self.setControlProperty("txtSenderFax", PropertyNames.PROPERTY_ENABLED, False)
+ self.myFaxDoc.fillSenderWithUserData()
+
+ def optSenderDefineItemChanged(self):
+ self.setControlProperty("lblSenderName", PropertyNames.PROPERTY_ENABLED, True)
+ self.setControlProperty("lblSenderStreet", PropertyNames.PROPERTY_ENABLED, True)
+ self.setControlProperty("lblPostCodeCity", PropertyNames.PROPERTY_ENABLED, True)
+ self.setControlProperty("lblSenderFax", PropertyNames.PROPERTY_ENABLED, True)
+ self.setControlProperty("txtSenderName", PropertyNames.PROPERTY_ENABLED, True)
+ self.setControlProperty("txtSenderStreet", PropertyNames.PROPERTY_ENABLED, True)
+ self.setControlProperty("txtSenderPostCode", PropertyNames.PROPERTY_ENABLED, True)
+ self.setControlProperty("txtSenderState", PropertyNames.PROPERTY_ENABLED, True)
+ self.setControlProperty("txtSenderCity", PropertyNames.PROPERTY_ENABLED, True)
+ self.setControlProperty("txtSenderFax", PropertyNames.PROPERTY_ENABLED, True)
+ self.txtSenderNameTextChanged()
+ self.txtSenderStreetTextChanged()
+ self.txtSenderPostCodeTextChanged()
+ self.txtSenderStateTextChanged()
+ self.txtSenderCityTextChanged()
+ self.txtSenderFaxTextChanged()
+
+ def optReceiverPlaceholderItemChanged(self):
+ OfficeDocument.attachEventCall(self.xTextDocument, "OnNew", "StarBasic", "macro:#/Template.Correspondence.Placeholder()")
+
+ def optReceiverDatabaseItemChanged(self):
+ OfficeDocument.attachEventCall(self.xTextDocument, "OnNew", "StarBasic", "macro:#/Template.Correspondence.Database()")
+
+ def optCreateFaxItemChanged(self):
+ self.bEditTemplate = False
+
+ def optMakeChangesItemChanged(self):
+ self.bEditTemplate = True
+
+ def txtSenderNameTextChanged(self):
+ myFieldHandler = TextFieldHandler(self.myFaxDoc.xMSF, self.xTextDocument)
+ myFieldHandler.changeUserFieldContent("Company", self.txtSenderName.getText())
+
+ def txtSenderStreetTextChanged(self):
+ myFieldHandler = TextFieldHandler(self.myFaxDoc.xMSF, self.xTextDocument)
+ myFieldHandler.changeUserFieldContent("Street", self.txtSenderStreet.getText())
+
+ def txtSenderCityTextChanged(self):
+ myFieldHandler = TextFieldHandler(self.myFaxDoc.xMSF, self.xTextDocument)
+ myFieldHandler.changeUserFieldContent("City", self.txtSenderCity.getText())
+
+ def txtSenderPostCodeTextChanged(self):
+ myFieldHandler = TextFieldHandler(self.myFaxDoc.xMSF, self.xTextDocument)
+ myFieldHandler.changeUserFieldContent("PostCode", self.txtSenderPostCode.getText())
+
+ def txtSenderStateTextChanged(self):
+ myFieldHandler = TextFieldHandler(self.myFaxDoc.xMSF, self.xTextDocument)
+ myFieldHandler.changeUserFieldContent(PropertyNames.PROPERTY_STATE, self.txtSenderState.getText())
+
+ def txtSenderFaxTextChanged(self):
+ myFieldHandler = TextFieldHandler(self.myFaxDoc.xMSF, self.xTextDocument)
+ myFieldHandler.changeUserFieldContent("Fax", self.txtSenderFax.getText())
+
+ #switch Elements on/off -------------------------------------------------------
+
+ def setElements(self):
+ #UI relevant:
+ if self.optSenderDefine.getState():
+ self.optSenderDefineItemChanged()
+
+ if self.optSenderPlaceholder.getState():
+ self.optSenderPlaceholderItemChanged()
+
+ self.chkUseLogoItemChanged()
+ self.chkUseSubjectItemChanged()
+ self.chkUseSalutationItemChanged()
+ self.chkUseGreetingItemChanged()
+ self.chkUseCommunicationItemChanged()
+ self.chkUseDateItemChanged()
+ self.chkUseFooterItemChanged()
+ self.txtTemplateNameTextChanged()
+ #not UI relevant:
+ if self.optReceiverDatabase.getState():
+ self.optReceiverDatabaseItemChanged()
+
+ if self.optReceiverPlaceholder.getState():
+ self.optReceiverPlaceholderItemChanged()
+
+ if self.optCreateFax.getState():
+ self.optCreateFaxItemChanged()
+
+ if self.optMakeChanges.getState():
+ self.optMakeChangesItemChanged()
+
+ def chkUseLogoItemChanged(self):
+ if self.myFaxDoc.hasElement("Company Logo"):
+ self.myFaxDoc.switchElement("Company Logo", (self.chkUseLogo.getState() != 0))
+
+ def chkUseSubjectItemChanged(self):
+ if self.myFaxDoc.hasElement("Subject Line"):
+ self.myFaxDoc.switchElement("Subject Line", (self.chkUseSubject.getState() != 0))
+
+ def chkUseDateItemChanged(self):
+ if self.myFaxDoc.hasElement("Date"):
+ self.myFaxDoc.switchElement("Date", (self.chkUseDate.getState() != 0))
+
+ def chkUseFooterItemChanged(self):
+ try:
+ bFooterPossible = (self.chkUseFooter.getState() != 0) and bool(getControlProperty("chkUseFooter", PropertyNames.PROPERTY_ENABLED))
+ if self.chkFooterNextPages.getState() != 0:
+ self.myFaxDoc.switchFooter("First Page", False, (self.chkFooterPageNumbers.getState() != 0), self.txtFooter.getText())
+ self.myFaxDoc.switchFooter("Standard", bFooterPossible, (self.chkFooterPageNumbers.getState() != 0), self.txtFooter.getText())
+ else:
+ self.myFaxDoc.switchFooter("First Page", bFooterPossible, (self.chkFooterPageNumbers.getState() != 0), self.txtFooter.getText())
+ self.myFaxDoc.switchFooter("Standard", bFooterPossible, (self.chkFooterPageNumbers.getState() != 0), self.txtFooter.getText())
+
+ #enable/disable roadmap item for footer page
+ BPaperItem = self.getRoadmapItemByID(FaxWizardDialogImpl.RM_FOOTER)
+ Helper.setUnoPropertyValue(BPaperItem, PropertyNames.PROPERTY_ENABLED, bFooterPossible)
+ except UnoException, exception:
+ traceback.print_exc()
+
+ def chkFooterNextPagesItemChanged(self):
+ chkUseFooterItemChanged()
+
+ def chkFooterPageNumbersItemChanged(self):
+ chkUseFooterItemChanged()
+
+ def txtFooterTextChanged(self):
+ chkUseFooterItemChanged()
+
+ def chkUseSalutationItemChanged(self):
+ self.myFaxDoc.switchUserField("Salutation", self.lstSalutation.getText(), (self.chkUseSalutation.getState() != 0))
+ self.setControlProperty("lstSalutation", PropertyNames.PROPERTY_ENABLED, self.chkUseSalutation.getState() != 0)
+
+ def lstSalutationItemChanged(self):
+ self.myFaxDoc.switchUserField("Salutation", self.lstSalutation.getText(), (self.chkUseSalutation.getState() != 0))
+
+ def chkUseCommunicationItemChanged(self):
+ self.myFaxDoc.switchUserField("CommunicationType", self.lstCommunicationType.getText(), (self.chkUseCommunicationType.getState() != 0))
+ self.setControlProperty("lstCommunicationType", PropertyNames.PROPERTY_ENABLED, self.chkUseCommunicationType.getState() != 0)
+
+ def lstCommunicationItemChanged(self):
+ self.myFaxDoc.switchUserField("CommunicationType", self.lstCommunicationType.getText(), (self.chkUseCommunicationType.getState() != 0))
+
+ def chkUseGreetingItemChanged(self):
+ self.myFaxDoc.switchUserField("Greeting", self.lstGreeting.getText(), (self.chkUseGreeting.getState() != 0))
+ self.setControlProperty("lstGreeting", PropertyNames.PROPERTY_ENABLED, (self.chkUseGreeting.getState() != 0))
+
+ def lstGreetingItemChanged(self):
+ self.myFaxDoc.switchUserField("Greeting", self.lstGreeting.getText(), (self.chkUseGreeting.getState() != 0))
+
+ def __setPossibleFooter(self, bState):
+ self.setControlProperty("chkUseFooter", PropertyNames.PROPERTY_ENABLED, bState)
+ if not bState:
+ self.chkUseFooter.setState(0)
+
+ self.chkUseFooterItemChanged()
+
+ def __enableSenderReceiver(self):
+ BPaperItem = self.getRoadmapItemByID(FaxWizardDialogImpl.RM_SENDERRECEIVER)
+ Helper.setUnoPropertyValue(BPaperItem, PropertyNames.PROPERTY_ENABLED, True)
+
+ def __disableSenderReceiver(self):
+ BPaperItem = self.getRoadmapItemByID(FaxWizardDialogImpl.RM_SENDERRECEIVER)
+ Helper.setUnoPropertyValue(BPaperItem, PropertyNames.PROPERTY_ENABLED, False)