This commit is contained in:
Jane
2024-07-16 15:58:23 +08:00
parent 29bc31ade5
commit 0bbdcd9ef7
1621 changed files with 300787 additions and 0 deletions

View File

@@ -0,0 +1,48 @@
#
# 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 .
#
from ..common.ConfigGroup import ConfigGroup
class CGFax(ConfigGroup):
def __init__(self):
self.cp_Style = int()
self.cp_PrintCompanyLogo = bool()
self.cp_PrintDate = bool()
self.cp_PrintSubjectLine = bool()
self.cp_PrintSalutation = bool()
self.cp_PrintCommunicationType = bool()
self.cp_PrintGreeting = bool()
self.cp_PrintFooter = bool()
self.cp_CommunicationType = str()
self.cp_Salutation = str()
self.cp_Greeting = str()
self.cp_SenderAddressType = int()
self.cp_SenderCompanyName = str()
self.cp_SenderStreet = str()
self.cp_SenderPostCode = str()
self.cp_SenderState = str()
self.cp_SenderCity = str()
self.cp_SenderFax = str()
self.cp_ReceiverAddressType = int()
self.cp_Footer = str()
self.cp_FooterOnlySecondPage = bool()
self.cp_FooterPageNumbers = bool()
self.cp_CreationType = int()
self.cp_TemplateName = str()
self.cp_TemplatePath = str()

View File

@@ -0,0 +1,27 @@
#
# 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 .
#
from .CGFax import CGFax
from ..common.ConfigGroup import ConfigGroup
class CGFaxWizard(ConfigGroup):
def __init__(self):
self.cp_FaxType = int()
self.cp_BusinessFax = CGFax()
self.cp_PrivateFax = CGFax()

View File

@@ -0,0 +1,75 @@
#
# 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 unohelper
import traceback
from .FaxWizardDialogImpl import FaxWizardDialogImpl, Desktop
from com.sun.star.lang import XServiceInfo
from com.sun.star.task import XJobExecutor
# pythonloader looks for a static g_ImplementationHelper variable
g_ImplementationHelper = unohelper.ImplementationHelper()
g_implName = "com.sun.star.wizards.fax.CallWizard"
# implement a UNO component by deriving from the standard unohelper.Base class
# and from the interface(s) you want to implement.
class CallWizard(unohelper.Base, XJobExecutor, XServiceInfo):
def __init__(self, ctx):
# store the component context for later use
self.ctx = ctx
def trigger(self, args):
try:
fw = FaxWizardDialogImpl(self.ctx.ServiceManager)
fw.startWizard(self.ctx.ServiceManager)
except Exception as e:
print ("Wizard failure exception " + str(type(e)) +
" message " + str(e) + " args " + str(e.args) +
traceback.format_exc())
@classmethod
def callRemote(self):
#Call the wizard remotely(see README)
try:
ConnectStr = \
"uno:socket,host=localhost,port=2002;urp;StarOffice.ComponentContext"
xLocMSF = Desktop.connect(ConnectStr)
lw = FaxWizardDialogImpl(xLocMSF)
lw.startWizard(xLocMSF)
except Exception as e:
print ("Wizard failure exception " + str(type(e)) +
" message " + str(e) + " args " + str(e.args) +
traceback.format_exc())
def getImplementationName(self):
return g_implName
def supportsService(self, ServiceName):
return g_ImplementationHelper.supportsService(g_implName, ServiceName)
def getSupportedServiceNames(self):
return g_ImplementationHelper.getSupportedServiceNames(g_implName)
g_ImplementationHelper.addImplementation( \
CallWizard, # UNO object class
g_implName, # implementation name
("com.sun.star.task.Job",),) # list of implemented services
# (the only service)
# vim:set shiftwidth=4 softtabstop=4 expandtab:

View File

@@ -0,0 +1,142 @@
#
# 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 .
#
from ..text.TextDocument import TextDocument, traceback, \
TextFieldHandler, Configuration
from ..text.TextSectionHandler import TextSectionHandler
from com.sun.star.text.ControlCharacter import PARAGRAPH_BREAK
from com.sun.star.style.ParagraphAdjust import CENTER
from com.sun.star.text.PageNumberType import CURRENT
from com.sun.star.style.NumberingType import ARABIC
class FaxDocument(TextDocument):
def __init__(self, xMSF, listener):
super(FaxDocument,self).__init__(xMSF, listener, None,
"WIZARD_LIVE_PREVIEW")
self.keepLogoFrame = True
self.keepTypeFrame = True
def switchElement(self, sElement, bState):
try:
mySectionHandler = TextSectionHandler(self.xMSF,
self.xTextDocument)
oSection = \
mySectionHandler.xTextDocument.TextSections.getByName(sElement)
oSection.IsVisible = bState
except Exception:
traceback.print_exc()
def updateDateFields(self):
FH = TextFieldHandler(
self.xTextDocument, self.xTextDocument)
FH.updateDateFields()
def switchFooter(self, sPageStyle, bState, bPageNumber, sText):
if self.xTextDocument is not None:
try:
self.xTextDocument.lockControllers()
xPageStyleCollection = \
self.xTextDocument.StyleFamilies.getByName("PageStyles")
xPageStyle = xPageStyleCollection.getByName(sPageStyle)
if bState:
xPageStyle.setPropertyValue("FooterIsOn", True)
xFooterText = xPageStyle.FooterText
xFooterText.String = sText
if bPageNumber:
#Adding the Page Number
myCursor = xFooterText.Text.createTextCursor()
myCursor.gotoEnd(False)
xFooterText.insertControlCharacter(myCursor,
PARAGRAPH_BREAK, False)
myCursor.setPropertyValue("ParaAdjust", CENTER )
xPageNumberField = \
self.xTextDocument.createInstance(
"com.sun.star.text.TextField.PageNumber")
xPageNumberField.setPropertyValue("SubType", CURRENT)
xPageNumberField.NumberingType = ARABIC
xFooterText.insertTextContent(xFooterText.End,
xPageNumberField, False)
else:
xPageStyle.FooterIsOn = False
self.xTextDocument.unlockControllers()
except Exception:
self.xTextDocument.lockControllers()
traceback.print_exc()
def hasElement(self, sElement):
if self.xTextDocument is not None:
mySectionHandler = TextSectionHandler(self.xMSF,
self.xTextDocument)
return mySectionHandler.hasTextSectionByName(sElement)
else:
return False
def switchUserField(self, sFieldName, sNewContent, bState):
myFieldHandler = TextFieldHandler( self.xMSF, self.xTextDocument)
if bState:
myFieldHandler.changeUserFieldContent(sFieldName, sNewContent)
else:
myFieldHandler.changeUserFieldContent(sFieldName, "")
def fillSenderWithUserData(self):
try:
myFieldHandler = TextFieldHandler(self.xTextDocument,
self.xTextDocument)
oUserDataAccess = Configuration.getConfigurationRoot(
self.xMSF, "org.openoffice.UserProfile/Data", False)
myFieldHandler.changeUserFieldContent(
"Company", oUserDataAccess.getByName("o"))
myFieldHandler.changeUserFieldContent(
"Street", oUserDataAccess.getByName("street"))
myFieldHandler.changeUserFieldContent(
"PostCode", oUserDataAccess.getByName("postalcode"))
myFieldHandler.changeUserFieldContent(
"State", oUserDataAccess.getByName("st"))
myFieldHandler.changeUserFieldContent(
"City", oUserDataAccess.getByName("l"))
myFieldHandler.changeUserFieldContent(
"Fax", oUserDataAccess.getByName("facsimiletelephonenumber"))
except Exception:
traceback.print_exc()
def killEmptyUserFields(self):
myFieldHandler = TextFieldHandler(
self.xMSF, self.xTextDocument)
myFieldHandler.removeUserFieldByContent()
def killEmptyFrames(self):
try:
if not self.keepLogoFrame:
xTF = self.getFrameByName("Company Logo",
self.xTextDocument)
if xTF is not None:
xTF.dispose()
if not self.keepTypeFrame:
xTF = self.getFrameByName("Communication Type",
self.xTextDocument)
if xTF is not None:
xTF.dispose()
except Exception:
traceback.print_exc()

View File

@@ -0,0 +1,660 @@
#
# 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 .
#
from .FaxWizardDialogResources import FaxWizardDialogResources
from .FaxWizardDialogConst import FaxWizardDialogConst, HIDMAIN, HID
from ..ui.WizardDialog import WizardDialog, uno, UIConsts, PropertyNames
from com.sun.star.awt.FontUnderline import SINGLE
class FaxWizardDialog(WizardDialog):
def __init__(self, xmsf):
super(FaxWizardDialog,self).__init__(xmsf, HIDMAIN )
#Load Resources
self.resources = FaxWizardDialogResources()
#set dialog properties...
self.setDialogProperties(True, 210, True, 104, 52, 1, 1,
self.resources.resFaxWizardDialog_title, 310)
self.fontDescriptor4 = \
uno.createUnoStruct('com.sun.star.awt.FontDescriptor')
self.fontDescriptor5 = \
uno.createUnoStruct('com.sun.star.awt.FontDescriptor')
self.fontDescriptor4.Weight = 100
self.fontDescriptor5.Weight = 150
def buildStep1(self):
self.optBusinessFax = self.insertRadioButton("optBusinessFax",
FaxWizardDialogConst.OPTBUSINESSFAX_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.OPTBUSINESSFAX_HID,
self.resources.resoptBusinessFax_value, 97, 28, 1, 1, 184),
self)
self.lstBusinessStyle = self.insertListBox("lstBusinessStyle",
FaxWizardDialogConst.LSTBUSINESSSTYLE_ACTION_PERFORMED,
FaxWizardDialogConst.LSTBUSINESSSTYLE_ITEM_CHANGED,
("Dropdown", PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(True, 12, FaxWizardDialogConst.LSTBUSINESSSTYLE_HID,
180, 40, 1, 3, 74), self)
self.optPrivateFax = self.insertRadioButton("optPrivateFax",
FaxWizardDialogConst.OPTPRIVATEFAX_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.OPTPRIVATEFAX_HID,
self.resources.resoptPrivateFax_value,97, 81, 1, 2, 184), self)
self.lstPrivateStyle = self.insertListBox("lstPrivateStyle",
FaxWizardDialogConst.LSTPRIVATESTYLE_ACTION_PERFORMED,
FaxWizardDialogConst.LSTPRIVATESTYLE_ITEM_CHANGED,
("Dropdown", PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(True, 12, FaxWizardDialogConst.LSTPRIVATESTYLE_HID,
180, 95, 1, 4, 74), self)
self.insertLabel("lblBusinessStyle",
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, self.resources.reslblBusinessStyle_value,
110, 42, 1, 32, 60))
self.insertLabel("lblTitle1",
("FontDescriptor", PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_MULTILINE,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(self.fontDescriptor5, 16, self.resources.reslblTitle1_value,
True, 91, 8, 1, 37, 212))
self.insertLabel("lblPrivateStyle",
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, self.resources.reslblPrivateStyle_value, 110, 95, 1, 50, 60))
self.insertLabel("lblIntroduction",
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_MULTILINE,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(39, self.resources.reslblIntroduction_value,
True, 104, 145, 1, 55, 199))
self.ImageControl3 = self.insertInfoImage(92, 145, 1)
def buildStep2(self):
self.chkUseLogo = self.insertCheckBox("chkUseLogo",
FaxWizardDialogConst.CHKUSELOGO_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STATE,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.CHKUSELOGO_HID,
self.resources.reschkUseLogo_value, 97, 28, 0, 2, 5, 212),
self)
self.chkUseDate = self.insertCheckBox("chkUseDate",
FaxWizardDialogConst.CHKUSEDATE_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STATE,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.CHKUSEDATE_HID,
self.resources.reschkUseDate_value, 97, 43, 0, 2, 6, 212),
self)
self.chkUseCommunicationType = self.insertCheckBox(
"chkUseCommunicationType",
FaxWizardDialogConst.CHKUSECOMMUNICATIONTYPE_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STATE,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.CHKUSECOMMUNICATIONTYPE_HID,
self.resources.reschkUseCommunicationType_value,
97, 57, 0, 2, 7, 100), self)
self.lstCommunicationType = self.insertComboBox(
"lstCommunicationType",
FaxWizardDialogConst.LSTCOMMUNICATIONTYPE_ACTION_PERFORMED,
FaxWizardDialogConst.LSTCOMMUNICATIONTYPE_ITEM_CHANGED,
FaxWizardDialogConst.LSTCOMMUNICATIONTYPE_TEXT_CHANGED,
("Dropdown", PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(True, 12, FaxWizardDialogConst.LSTCOMMUNICATIONTYPE_HID,
105, 68, 2, 8, 174), self)
self.chkUseSubject = self.insertCheckBox("chkUseSubject",
FaxWizardDialogConst.CHKUSESUBJECT_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STATE,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.CHKUSESUBJECT_HID,
self.resources.reschkUseSubject_value, 97, 87, 0, 2, 9, 212),
self)
self.chkUseSalutation = self.insertCheckBox("chkUseSalutation",
FaxWizardDialogConst.CHKUSESALUTATION_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STATE,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.CHKUSESALUTATION_HID,
self.resources.reschkUseSalutation_value,
97, 102, 0, 2, 10, 100), self)
self.lstSalutation = self.insertComboBox("lstSalutation",
FaxWizardDialogConst.LSTSALUTATION_ACTION_PERFORMED,
FaxWizardDialogConst.LSTSALUTATION_ITEM_CHANGED,
FaxWizardDialogConst.LSTSALUTATION_TEXT_CHANGED,
("Dropdown", PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(True, 12, FaxWizardDialogConst.LSTSALUTATION_HID,
105, 113, 2, 11, 174), self)
self.chkUseGreeting = self.insertCheckBox("chkUseGreeting",
FaxWizardDialogConst.CHKUSEGREETING_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STATE,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.CHKUSEGREETING_HID,
self.resources.reschkUseGreeting_value,
97, 132, 0, 2, 12, 100), self)
self.lstGreeting = self.insertComboBox("lstGreeting",
FaxWizardDialogConst.LSTGREETING_ACTION_PERFORMED,
FaxWizardDialogConst.LSTGREETING_ITEM_CHANGED,
FaxWizardDialogConst.LSTGREETING_TEXT_CHANGED,
("Dropdown", PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(True, 12, FaxWizardDialogConst.LSTGREETING_HID,
105, 143, 2, 13, 174), self)
self.chkUseFooter = self.insertCheckBox("chkUseFooter",
FaxWizardDialogConst.CHKUSEFOOTER_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STATE,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.CHKUSEFOOTER_HID,
self.resources.reschkUseFooter_value, 97, 163,
0, 2, 14, 212), self)
self.insertLabel("lblTitle3",
("FontDescriptor", PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_MULTILINE,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(self.fontDescriptor5, 16, self.resources.reslblTitle3_value,
True, 91, 8, 2, 59, 212))
def buildStep3(self):
self.optSenderPlaceholder = self.insertRadioButton(
"optSenderPlaceholder",
FaxWizardDialogConst.OPTSENDERPLACEHOLDER_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.OPTSENDERPLACEHOLDER_HID,
self.resources.resoptSenderPlaceholder_value,
104, 42, 3, 15, 149), self)
self.optSenderDefine = self.insertRadioButton("optSenderDefine",
FaxWizardDialogConst.OPTSENDERDEFINE_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.OPTSENDERDEFINE_HID,
self.resources.resoptSenderDefine_value,
104, 54, 3, 16, 149), self)
self.txtSenderName = self.insertTextField("txtSenderName",
FaxWizardDialogConst.TXTSENDERNAME_TEXT_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(12, FaxWizardDialogConst.TXTSENDERNAME_HID,
182, 67, 3, 17, 119), self)
self.txtSenderStreet = self.insertTextField("txtSenderStreet",
FaxWizardDialogConst.TXTSENDERSTREET_TEXT_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(12, FaxWizardDialogConst.TXTSENDERSTREET_HID,
182, 81, 3, 18, 119), self)
self.txtSenderPostCode = self.insertTextField("txtSenderPostCode",
FaxWizardDialogConst.TXTSENDERPOSTCODE_TEXT_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(12, FaxWizardDialogConst.TXTSENDERPOSTCODE_HID,
182, 95, 3, 19, 25), self)
self.txtSenderState = self.insertTextField("txtSenderState",
FaxWizardDialogConst.TXTSENDERSTATE_TEXT_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(12, FaxWizardDialogConst.TXTSENDERSTATE_HID,
211, 95, 3, 20, 21), self)
self.txtSenderCity = self.insertTextField("txtSenderCity",
FaxWizardDialogConst.TXTSENDERCITY_TEXT_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(12, FaxWizardDialogConst.TXTSENDERCITY_HID,
236, 95, 3, 21, 65), self)
self.txtSenderFax = self.insertTextField("txtSenderFax",
FaxWizardDialogConst.TXTSENDERFAX_TEXT_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(12, FaxWizardDialogConst.TXTSENDERFAX_HID,
182, 109, 3, 22, 119), self)
self.optReceiverPlaceholder = self.insertRadioButton(
"optReceiverPlaceholder",
FaxWizardDialogConst.OPTRECEIVERPLACEHOLDER_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.OPTRECEIVERPLACEHOLDER_HID,
self.resources.resoptReceiverPlaceholder_value,
104, 148, 3, 23, 200), self)
self.optReceiverDatabase = self.insertRadioButton(
"optReceiverDatabase",
FaxWizardDialogConst.OPTRECEIVERDATABASE_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.OPTRECEIVERDATABASE_HID,
self.resources.resoptReceiverDatabase_value,
104, 160, 3, 24, 200), self)
self.insertLabel("lblSenderAddress",
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, self.resources.reslblSenderAddress_value,
97, 28, 3, 46, 136))
self.insertFixedLine("FixedLine2", (PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(5, 90, 126, 3, 51, 212))
self.insertLabel("lblSenderName",
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, self.resources.reslblSenderName_value,
113, 69, 3, 52, 68))
self.insertLabel("lblSenderStreet",
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, self.resources.reslblSenderStreet_value,
113, 82, 3, 53, 68))
self.insertLabel("lblPostCodeCity",
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, self.resources.reslblPostCodeCity_value,
113, 97, 3, 54, 68))
self.insertLabel("lblTitle4",
("FontDescriptor",
PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_MULTILINE,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(self.fontDescriptor5, 16, self.resources.reslblTitle4_value,
True, 91, 8, 3, 60, 212))
self.insertLabel("lblSenderFax",
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, self.resources.resLabel1_value, 113, 111, 3, 68, 68))
self.insertLabel("Label2",
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, self.resources.resLabel2_value, 97, 137, 3, 69, 136))
def buildStep4(self):
self.txtFooter = self.insertTextField("txtFooter",
FaxWizardDialogConst.TXTFOOTER_TEXT_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_MULTILINE,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(47, FaxWizardDialogConst.TXTFOOTER_HID,
True, 97, 40, 4, 25, 203), self)
self.chkFooterNextPages = self.insertCheckBox("chkFooterNextPages",
FaxWizardDialogConst.CHKFOOTERNEXTPAGES_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STATE,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.CHKFOOTERNEXTPAGES_HID,
self.resources.reschkFooterNextPages_value,
97, 92, 0, 4, 26, 202), self)
self.chkFooterPageNumbers = self.insertCheckBox("chkFooterPageNumbers",
FaxWizardDialogConst.CHKFOOTERPAGENUMBERS_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STATE,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.CHKFOOTERPAGENUMBERS_HID,
self.resources.reschkFooterPageNumbers_value,
97, 106, 0, 4, 27, 201), self)
self.insertLabel("lblFooter",
("FontDescriptor",
PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(self.fontDescriptor4, 8, self.resources.reslblFooter_value,
97, 28, 4, 33, 116))
self.insertLabel("lblTitle5",
("FontDescriptor",
PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_MULTILINE,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(self.fontDescriptor5, 16, self.resources.reslblTitle5_value,
True, 91, 8, 4, 61, 212))
def buildStep5(self):
self.txtTemplateName = self.insertTextField("txtTemplateName",
FaxWizardDialogConst.TXTTEMPLATENAME_TEXT_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
"Text",
PropertyNames.PROPERTY_WIDTH),
(12, FaxWizardDialogConst.TXTTEMPLATENAME_HID, 202, 56, 5, 28,
self.resources.restxtTemplateName_value, 100), self)
self.optCreateFax = self.insertRadioButton("optCreateFax",
FaxWizardDialogConst.OPTCREATEFAX_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.OPTCREATEFAX_HID,
self.resources.resoptCreateFax_value,
104, 111, 5, 30, 198), self)
self.optMakeChanges = self.insertRadioButton("optMakeChanges",
FaxWizardDialogConst.OPTMAKECHANGES_ITEM_CHANGED,
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_HELPURL,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, FaxWizardDialogConst.OPTMAKECHANGES_HID,
self.resources.resoptMakeChanges_value,
104, 123, 5, 31, 198), self)
self.insertLabel("lblFinalExplanation1",
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_MULTILINE,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(28, self.resources.reslblFinalExplanation1_value,
True, 97, 28, 5, 34, 205))
self.insertLabel("lblProceed",
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, self.resources.reslblProceed_value, 97, 100, 5,
35, 204))
self.insertLabel("lblFinalExplanation2",
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_MULTILINE,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(33, self.resources.reslblFinalExplanation2_value,
True, 104, 145, 5, 36, 199))
self.insertImage("ImageControl2",
("Border",
PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_IMAGEURL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
"ScaleImage",
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(0, 10, UIConsts.INFOIMAGEURL, 92, 145,
False, 5, 47, 10))
self.insertLabel("lblTemplateName",
(PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(8, self.resources.reslblTemplateName_value, 97, 58, 5,
57, 101))
self.insertLabel("lblTitle6",
("FontDescriptor",
PropertyNames.PROPERTY_HEIGHT,
PropertyNames.PROPERTY_LABEL,
PropertyNames.PROPERTY_MULTILINE,
PropertyNames.PROPERTY_POSITION_X,
PropertyNames.PROPERTY_POSITION_Y,
PropertyNames.PROPERTY_STEP,
PropertyNames.PROPERTY_TABINDEX,
PropertyNames.PROPERTY_WIDTH),
(self.fontDescriptor5, 16, self.resources.reslblTitle6_value,
True, 91, 8, 5, 62, 212))

View File

@@ -0,0 +1,99 @@
#
# 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 .
#
from ..common.HelpIds import HelpIds
HID = 41119 #enter first hid here
HIDMAIN = 41180
class FaxWizardDialogConst:
OPTBUSINESSFAX_ITEM_CHANGED = "optBusinessFaxItemChanged"
LSTBUSINESSSTYLE_ACTION_PERFORMED = None
LSTBUSINESSSTYLE_ITEM_CHANGED = "lstBusinessStyleItemChanged"
OPTPRIVATEFAX_ITEM_CHANGED = "optPrivateFaxItemChanged"
LSTPRIVATESTYLE_ACTION_PERFORMED = None
LSTPRIVATESTYLE_ITEM_CHANGED = "lstPrivateStyleItemChanged"
CHKUSELOGO_ITEM_CHANGED = "chkUseLogoItemChanged"
CHKUSEDATE_ITEM_CHANGED = "chkUseDateItemChanged"
CHKUSECOMMUNICATIONTYPE_ITEM_CHANGED = "chkUseCommunicationItemChanged"
LSTCOMMUNICATIONTYPE_ACTION_PERFORMED = None
LSTCOMMUNICATIONTYPE_ITEM_CHANGED = "lstCommunicationItemChanged"
LSTCOMMUNICATIONTYPE_TEXT_CHANGED = "lstCommunicationItemChanged"
CHKUSESUBJECT_ITEM_CHANGED = "chkUseSubjectItemChanged"
CHKUSESALUTATION_ITEM_CHANGED = "chkUseSalutationItemChanged"
LSTSALUTATION_ACTION_PERFORMED = None
LSTSALUTATION_ITEM_CHANGED = "lstSalutationItemChanged"
LSTSALUTATION_TEXT_CHANGED = "lstSalutationItemChanged"
CHKUSEGREETING_ITEM_CHANGED = "chkUseGreetingItemChanged"
LSTGREETING_ACTION_PERFORMED = None
LSTGREETING_ITEM_CHANGED = "lstGreetingItemChanged"
LSTGREETING_TEXT_CHANGED = "lstGreetingItemChanged"
CHKUSEFOOTER_ITEM_CHANGED = "chkUseFooterItemChanged"
OPTSENDERPLACEHOLDER_ITEM_CHANGED = "optSenderPlaceholderItemChanged"
OPTSENDERDEFINE_ITEM_CHANGED = "optSenderDefineItemChanged"
TXTSENDERNAME_TEXT_CHANGED = "txtSenderNameTextChanged"
TXTSENDERSTREET_TEXT_CHANGED = "txtSenderStreetTextChanged"
TXTSENDERPOSTCODE_TEXT_CHANGED = "txtSenderPostCodeTextChanged"
TXTSENDERSTATE_TEXT_CHANGED = "txtSenderStateTextChanged"
TXTSENDERCITY_TEXT_CHANGED = "txtSenderCityTextChanged"
TXTSENDERFAX_TEXT_CHANGED = "txtSenderFaxTextChanged"
OPTRECEIVERPLACEHOLDER_ITEM_CHANGED = "optReceiverPlaceholderItemChanged"
OPTRECEIVERDATABASE_ITEM_CHANGED = "optReceiverDatabaseItemChanged"
TXTFOOTER_TEXT_CHANGED = "txtFooterTextChanged"
CHKFOOTERNEXTPAGES_ITEM_CHANGED = "chkFooterNextPagesItemChanged"
CHKFOOTERPAGENUMBERS_ITEM_CHANGED = "chkFooterPageNumbersItemChanged"
TXTTEMPLATENAME_TEXT_CHANGED = "txtTemplateNameTextChanged"
FILETEMPLATEPATH_TEXT_CHANGED = None
OPTCREATEFAX_ITEM_CHANGED = "optCreateFromTemplateItemChanged"
OPTMAKECHANGES_ITEM_CHANGED = "optMakeChangesItemChanged"
#Help IDs
OPTBUSINESSFAX_HID = HelpIds.getHelpIdString(HID + 1)
LSTBUSINESSSTYLE_HID = HelpIds.getHelpIdString(HID + 2)
OPTPRIVATEFAX_HID = HelpIds.getHelpIdString(HID + 3)
LSTPRIVATESTYLE_HID = HelpIds.getHelpIdString(HID + 4)
IMAGECONTROL3_HID = HelpIds.getHelpIdString(HID + 5)
CHKUSELOGO_HID = HelpIds.getHelpIdString(HID + 6)
CHKUSEDATE_HID = HelpIds.getHelpIdString(HID + 7)
CHKUSECOMMUNICATIONTYPE_HID = HelpIds.getHelpIdString(HID + 8)
LSTCOMMUNICATIONTYPE_HID = HelpIds.getHelpIdString(HID + 9)
CHKUSESUBJECT_HID = HelpIds.getHelpIdString(HID + 10)
CHKUSESALUTATION_HID = HelpIds.getHelpIdString(HID + 11)
LSTSALUTATION_HID = HelpIds.getHelpIdString(HID + 12)
CHKUSEGREETING_HID = HelpIds.getHelpIdString(HID + 13)
LSTGREETING_HID = HelpIds.getHelpIdString(HID + 14)
CHKUSEFOOTER_HID = HelpIds.getHelpIdString(HID + 15)
OPTSENDERPLACEHOLDER_HID = HelpIds.getHelpIdString(HID + 16)
OPTSENDERDEFINE_HID = HelpIds.getHelpIdString(HID + 17)
TXTSENDERNAME_HID = HelpIds.getHelpIdString(HID + 18)
TXTSENDERSTREET_HID = HelpIds.getHelpIdString(HID + 19)
TXTSENDERPOSTCODE_HID = HelpIds.getHelpIdString(HID + 20)
TXTSENDERSTATE_HID = HelpIds.getHelpIdString(HID + 21)
TXTSENDERCITY_HID = HelpIds.getHelpIdString(HID + 22)
TXTSENDERFAX_HID = HelpIds.getHelpIdString(HID + 23)
OPTRECEIVERPLACEHOLDER_HID = HelpIds.getHelpIdString(HID + 24)
OPTRECEIVERDATABASE_HID = HelpIds.getHelpIdString(HID + 25)
TXTFOOTER_HID = HelpIds.getHelpIdString(HID + 26)
CHKFOOTERNEXTPAGES_HID = HelpIds.getHelpIdString(HID + 27)
CHKFOOTERPAGENUMBERS_HID = HelpIds.getHelpIdString(HID + 28)
TXTTEMPLATENAME_HID = HelpIds.getHelpIdString(HID + 29)
FILETEMPLATEPATH_HID = HelpIds.getHelpIdString(HID + 30)
OPTCREATEFAX_HID = HelpIds.getHelpIdString(HID + 31)
OPTMAKECHANGES_HID = HelpIds.getHelpIdString(HID + 32)
IMAGECONTROL2_HID = HelpIds.getHelpIdString(HID + 33)

View File

@@ -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

View File

@@ -0,0 +1,137 @@
#
# 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 .
#
class FaxWizardDialogResources(object):
def __init__(self):
import sys, os
if sys.version_info < (3,4):
import imp
imp.load_source('strings', os.path.join(os.path.dirname(__file__), '../common/strings.hrc'))
import strings
elif sys.version_info < (3,7):
# imp is deprecated since Python v.3.4
from importlib.machinery import SourceFileLoader
SourceFileLoader('strings', os.path.join(os.path.dirname(__file__), '../common/strings.hrc')).load_module()
import strings
else:
# have to jump through hoops since 3.7, partly because python does not like loading modules that do have a .py extension
import importlib
import importlib.util
import importlib.machinery
module_name = 'strings'
path = os.path.join(os.path.dirname(__file__), '../common/strings.hrc')
spec = importlib.util.spec_from_loader(
module_name,
importlib.machinery.SourceFileLoader(module_name, path)
)
module = importlib.util.module_from_spec(spec)
spec.loader.exec_module(module)
sys.modules[module_name] = module
strings = module
self.resFaxWizardDialog_title = strings.RID_FAXWIZARDDIALOG_START_1
self.resoptBusinessFax_value = strings.RID_FAXWIZARDDIALOG_START_3
self.resoptPrivateFax_value = strings.RID_FAXWIZARDDIALOG_START_4
self.reschkUseLogo_value = strings.RID_FAXWIZARDDIALOG_START_5
self.reschkUseSubject_value = strings.RID_FAXWIZARDDIALOG_START_6
self.reschkUseSalutation_value = strings.RID_FAXWIZARDDIALOG_START_7
self.reschkUseGreeting_value = strings.RID_FAXWIZARDDIALOG_START_8
self.reschkUseFooter_value = strings.RID_FAXWIZARDDIALOG_START_9
self.resoptSenderPlaceholder_value = strings.RID_FAXWIZARDDIALOG_START_10
self.resoptSenderDefine_value = strings.RID_FAXWIZARDDIALOG_START_11
self.restxtTemplateName_value = strings.RID_FAXWIZARDDIALOG_START_12
self.resoptCreateFax_value = strings.RID_FAXWIZARDDIALOG_START_13
self.resoptMakeChanges_value = strings.RID_FAXWIZARDDIALOG_START_14
self.reslblBusinessStyle_value = strings.RID_FAXWIZARDDIALOG_START_15
self.reslblPrivateStyle_value = strings.RID_FAXWIZARDDIALOG_START_16
self.reslblIntroduction_value = strings.RID_FAXWIZARDDIALOG_START_17
self.reslblSenderAddress_value = strings.RID_FAXWIZARDDIALOG_START_18
self.reslblSenderName_value = strings.RID_FAXWIZARDDIALOG_START_19
self.reslblSenderStreet_value = strings.RID_FAXWIZARDDIALOG_START_20
self.reslblPostCodeCity_value = strings.RID_FAXWIZARDDIALOG_START_21
self.reslblFooter_value = strings.RID_FAXWIZARDDIALOG_START_22
self.reslblFinalExplanation1_value = strings.RID_FAXWIZARDDIALOG_START_23
self.reslblFinalExplanation2_value = strings.RID_FAXWIZARDDIALOG_START_24
self.reslblTemplateName_value = strings.RID_FAXWIZARDDIALOG_START_25
self.reslblTemplatePath_value = strings.RID_FAXWIZARDDIALOG_START_26
self.reslblProceed_value = strings.RID_FAXWIZARDDIALOG_START_27
self.reslblTitle1_value = strings.RID_FAXWIZARDDIALOG_START_28
self.reslblTitle3_value = strings.RID_FAXWIZARDDIALOG_START_29
self.reslblTitle4_value = strings.RID_FAXWIZARDDIALOG_START_30
self.reslblTitle5_value = strings.RID_FAXWIZARDDIALOG_START_31
self.reslblTitle6_value = strings.RID_FAXWIZARDDIALOG_START_32
self.reschkFooterNextPages_value = strings.RID_FAXWIZARDDIALOG_START_33
self.reschkFooterPageNumbers_value = strings.RID_FAXWIZARDDIALOG_START_34
self.reschkUseDate_value = strings.RID_FAXWIZARDDIALOG_START_35
self.reschkUseCommunicationType_value = strings.RID_FAXWIZARDDIALOG_START_36
self.resLabel1_value = strings.RID_FAXWIZARDDIALOG_START_37
self.resoptReceiverPlaceholder_value = strings.RID_FAXWIZARDDIALOG_START_38
self.resoptReceiverDatabase_value = strings.RID_FAXWIZARDDIALOG_START_39
self.resLabel2_value = strings.RID_FAXWIZARDDIALOG_START_40
#Create a Dictionary for the constants values.
self.dictConstants = {
"#to#" : strings.RID_FAXWIZARDDIALOG_START_41,
"#from#" : strings.RID_FAXWIZARDDIALOG_START_42,
"#faxconst#" : strings.RID_FAXWIZARDDIALOG_START_43,
"#telconst#" : strings.RID_FAXWIZARDDIALOG_START_44,
"#emailconst#" : strings.RID_FAXWIZARDDIALOG_START_45,
"#consist1#" : strings.RID_FAXWIZARDDIALOG_START_46,
"#consist2#" : strings.RID_FAXWIZARDDIALOG_START_47,
"#consist3#" : strings.RID_FAXWIZARDDIALOG_START_48}
#Create a dictionary for localising the private template
self.dictPrivateTemplate = {
"Bottle" : strings.RID_FAXWIZARDDIALOG_START_49,
"Fax" : strings.RID_FAXWIZARDDIALOG_START_56,
"Lines" : strings.RID_FAXWIZARDDIALOG_START_50,
"Marine" : strings.RID_FAXWIZARDDIALOG_START_51}
#Create a dictionary for localising the business template
self.dictBusinessTemplate = {
"Classic Fax" : strings.RID_FAXWIZARDDIALOG_START_52,
"Classic Fax from Private" : strings.RID_FAXWIZARDDIALOG_START_53,
"Modern Fax" : strings.RID_FAXWIZARDDIALOG_START_54,
"Modern Fax from Private" : strings.RID_FAXWIZARDDIALOG_START_55}
#Common Resources
self.resOverwriteWarning = strings.RID_COMMON_START_19
self.resTemplateDescription = strings.RID_COMMON_START_20
self.RoadmapLabels = []
self.RoadmapLabels.append(strings.RID_FAXWIZARDROADMAP_START_1)
self.RoadmapLabels.append(strings.RID_FAXWIZARDROADMAP_START_2)
self.RoadmapLabels.append(strings.RID_FAXWIZARDROADMAP_START_3)
self.RoadmapLabels.append(strings.RID_FAXWIZARDROADMAP_START_4)
self.RoadmapLabels.append(strings.RID_FAXWIZARDROADMAP_START_5)
self.SalutationLabels = []
self.SalutationLabels.append(strings.RID_FAXWIZARDSALUTATION_START_1)
self.SalutationLabels.append(strings.RID_FAXWIZARDSALUTATION_START_2)
self.SalutationLabels.append(strings.RID_FAXWIZARDSALUTATION_START_3)
self.SalutationLabels.append(strings.RID_FAXWIZARDSALUTATION_START_4)
self.GreetingLabels = []
self.GreetingLabels.append(strings.RID_FAXWIZARDGREETING_START_1)
self.GreetingLabels.append(strings.RID_FAXWIZARDGREETING_START_2)
self.GreetingLabels.append(strings.RID_FAXWIZARDGREETING_START_3)
self.GreetingLabels.append(strings.RID_FAXWIZARDGREETING_START_4)
self.CommunicationLabels = []
self.CommunicationLabels.append(strings.RID_FAXWIZARDCOMMUNICATION_START_1)
self.CommunicationLabels.append(strings.RID_FAXWIZARDCOMMUNICATION_START_2)
self.CommunicationLabels.append(strings.RID_FAXWIZARDCOMMUNICATION_START_3)