wizards/com/sun/star/wizards/agenda/AgendaTemplate.py | 135 ++++--- wizards/com/sun/star/wizards/agenda/TopicsControl.py | 1 wizards/com/sun/star/wizards/common/Configuration.py | 1 wizards/com/sun/star/wizards/common/Helper.py | 177 ---------- wizards/com/sun/star/wizards/common/SystemDialog.py | 3 wizards/com/sun/star/wizards/fax/FaxDocument.py | 24 - wizards/com/sun/star/wizards/fax/FaxWizardDialog.py | 9 wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.py | 11 wizards/com/sun/star/wizards/letter/LetterDocument.py | 23 - wizards/com/sun/star/wizards/letter/LetterWizardDialog.py | 10 wizards/com/sun/star/wizards/letter/LetterWizardDialogImpl.py | 28 - wizards/com/sun/star/wizards/text/TextDocument.py | 43 +- wizards/com/sun/star/wizards/text/TextSectionHandler.py | 10 wizards/com/sun/star/wizards/ui/UnoDialog.py | 61 --- wizards/com/sun/star/wizards/ui/UnoDialog2.py | 3 wizards/com/sun/star/wizards/ui/WizardDialog.py | 57 +-- wizards/com/sun/star/wizards/ui/event/UnoDataAware.py | 8 17 files changed, 199 insertions(+), 405 deletions(-)
New commits: commit 47e7436d61539a77aa4e97de952262d858483cb7 Author: Xisco Fauli <aniste...@gmail.com> Date: Wed Nov 28 02:05:43 2012 +0100 pywizards: remove helper class Change-Id: I899cab320edb3712b17e339b0931a0deed4425e8 diff --git a/wizards/com/sun/star/wizards/common/Configuration.py b/wizards/com/sun/star/wizards/common/Configuration.py index 69e150c..f467c22 100644 --- a/wizards/com/sun/star/wizards/common/Configuration.py +++ b/wizards/com/sun/star/wizards/common/Configuration.py @@ -18,7 +18,6 @@ import uno import traceback from .PropertyNames import PropertyNames -from .Helper import Helper class Configuration(object): '''This class gives access to the OO configuration api.''' diff --git a/wizards/com/sun/star/wizards/common/Helper.py b/wizards/com/sun/star/wizards/common/Helper.py deleted file mode 100644 index 3a19e64..0000000 --- a/wizards/com/sun/star/wizards/common/Helper.py +++ /dev/null @@ -1,177 +0,0 @@ -# -# 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 uno -import traceback -from datetime import date as DateTime -from .NumberFormatter import NumberFormatter - -from com.sun.star.uno import RuntimeException - -class Helper(object): - - @classmethod - def setUnoPropertyValue(self, xPSet, PropertyName, PropertyValue): - try: - if PropertyValue is not None: - setattr(xPSet, PropertyName, PropertyValue) - - except AttributeError: - raise AttributeError( "No Such Property: '%s'" % PropertyName) - except Exception: - traceback.print_exc() - - @classmethod - def getUnoObjectbyName(self, xName, ElementName): - try: - if xName.hasByName(ElementName): - return xName.getByName(ElementName) - else: - raise RuntimeException() - - except Exception: - traceback.print_exc() - return None - - @classmethod - def getPropertyValue(self, CurPropertyValue, PropertyName): - for i in CurPropertyValue: - if i is not None: - if i.Name == PropertyName: - return i.Value - - raise RuntimeException() - - @classmethod - def getUnoPropertyValue(self, xPSet, PropertyName): - try: - if xPSet is not None: - oObject = xPSet.getPropertyValue(PropertyName) - return oObject - return None - - except Exception: - traceback.print_exc() - return None - - @classmethod - def getUnoArrayPropertyValue(self, xPSet, PropertyName): - try: - if xPSet is not None: - oObject = xPSet.getPropertyValue(PropertyName) - if isinstance(oObject,list): - return getArrayValue(oObject) - - except Exception: - traceback.print_exc() - - return None - - @classmethod - def getUnoStructValue(self, xPSet, PropertyName): - try: - if xPSet is not None: - if xPSet.getPropertySetInfo().hasPropertyByName(PropertyName): - oObject = xPSet.getPropertyValue(PropertyName) - return oObject - - return None - except Exception: - traceback.print_exc() - return None - - @classmethod - def setUnoPropertyValues(self, xMultiPSetLst, PropertyNames, - PropertyValues): - try: - if xMultiPSetLst is not None: - uno.invoke(xMultiPSetLst, "setPropertyValues", - (PropertyNames, PropertyValues)) - else: - for index, workwith in enumerate(PropertyNames): - self.setUnoPropertyValue( - xMultiPSetLst, PropertyNames[index], workwith) - - except Exception: - traceback.print_exc() - - ''' - checks if the value of an object that represents an array is null. - check beforehand if the Object is really an array with - "AnyConverter.IsArray(oObject) - @param oValue the paramter that has to represent an object - @return a null reference if the array is empty - ''' - - @classmethod - def getArrayValue(self, oValue): - try: - #VetoableChangeSupport Object - oPropList = list(oValue) - nlen = len(oPropList) - if nlen == 0: - return None - else: - return oPropList - - except Exception: - traceback.print_exc() - return None - - def getComponentContext(_xMSF): - #Get the path to the extension and - #try to add the path to the class loader - aHelper = PropertySetHelper(_xMSF); - aDefaultContext = aHelper.getPropertyValueAsObject("DefaultContext") - return aDefaultContext - - def getMacroExpander(_xMSF): - xComponentContext = self.getComponentContext(_xMSF); - aSingleton = xComponentContext.getValueByName( - "/singletons/com.sun.star.util.theMacroExpander") - return aSingleton - - class DateUtils(object): - - def __init__(self, xmsf, document): - defaults = xmsf.createInstance("com.sun.star.text.Defaults") - l = Helper.getUnoStructValue(defaults, "CharLocale") - self.formatSupplier = document - formatSettings = self.formatSupplier.getNumberFormatSettings() - date = Helper.getUnoPropertyValue(formatSettings, "NullDate") - self.calendar = DateTime(date.Year, date.Month, date.Day) - self.formatter = NumberFormatter.createNumberFormatter(xmsf, - self.formatSupplier) - - ''' - @param format a constant of the enumeration NumberFormatIndex - @return - ''' - - def getFormat(self, format): - return NumberFormatter.getNumberFormatterKey( - self.formatSupplier, format) - - ''' - @param date a VCL date in form of 20041231 - @return a document relative date - ''' - - def format(self, formatIndex, date): - difference = date - self.calendar - return self.formatter.convertNumberToString(formatIndex, - difference.days) diff --git a/wizards/com/sun/star/wizards/common/SystemDialog.py b/wizards/com/sun/star/wizards/common/SystemDialog.py index 9d7e84b..ab9b463 100644 --- a/wizards/com/sun/star/wizards/common/SystemDialog.py +++ b/wizards/com/sun/star/wizards/common/SystemDialog.py @@ -17,7 +17,6 @@ # import traceback from .Desktop import Desktop -from .Helper import Helper from com.sun.star.ui.dialogs.TemplateDescription import \ FILESAVE_AUTOEXTENSION, FILEOPEN_SIMPLE @@ -149,7 +148,7 @@ class SystemDialog(object): try: oFactory = self.xMSF.createInstance( "com.sun.star.document.FilterFactory") - oObject = Helper.getUnoObjectbyName(oFactory, filterName) + oObject = oFactory.getByName(filterName) xPropertyValue = list(oObject) for i in xPropertyValue: if i is not None and i.Name == "UIName": diff --git a/wizards/com/sun/star/wizards/fax/FaxDocument.py b/wizards/com/sun/star/wizards/fax/FaxDocument.py index 215b355..a483343 100644 --- a/wizards/com/sun/star/wizards/fax/FaxDocument.py +++ b/wizards/com/sun/star/wizards/fax/FaxDocument.py @@ -15,7 +15,7 @@ # 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, Helper, \ +from ..text.TextDocument import TextDocument, traceback, \ TextFieldHandler, Configuration from ..text.TextSectionHandler import TextSectionHandler from ..common.PropertyNames import PropertyNames @@ -39,7 +39,7 @@ class FaxDocument(TextDocument): self.xTextDocument) oSection = \ mySectionHandler.xTextDocument.TextSections.getByName(sElement) - Helper.setUnoPropertyValue(oSection,"IsVisible",bState) + oSection.IsVisible = bState except Exception: traceback.print_exc() @@ -58,8 +58,7 @@ class FaxDocument(TextDocument): if bState: xPageStyle.setPropertyValue("FooterIsOn", True) - xFooterText = \ - Helper.getUnoPropertyValue(xPageStyle, "FooterText") + xFooterText = xPageStyle.FooterText xFooterText.String = sText if bPageNumber: @@ -78,8 +77,7 @@ class FaxDocument(TextDocument): xFooterText.insertTextContent(xFooterText.End, xPageNumberField, False) else: - Helper.setUnoPropertyValue(xPageStyle, "FooterIsOn", - False) + xPageStyle.FooterIsOn = False self.xTextDocument.unlockControllers() except Exception: @@ -108,19 +106,17 @@ class FaxDocument(TextDocument): oUserDataAccess = Configuration.getConfigurationRoot( self.xMSF, "org.openoffice.UserProfile/Data", False) myFieldHandler.changeUserFieldContent("Company", - Helper.getUnoObjectbyName(oUserDataAccess, "o")) + oUserDataAccess.hasByName("o")) myFieldHandler.changeUserFieldContent("Street", - Helper.getUnoObjectbyName(oUserDataAccess, "street")) + oUserDataAccess.hasByName("street")) myFieldHandler.changeUserFieldContent("PostCode", - Helper.getUnoObjectbyName(oUserDataAccess, "postalcode")) + oUserDataAccess.hasByName("postalcode")) myFieldHandler.changeUserFieldContent( - PropertyNames.PROPERTY_STATE, - Helper.getUnoObjectbyName(oUserDataAccess, "st")) + PropertyNames.PROPERTY_STATE, oUserDataAccess.hasByName("st")) myFieldHandler.changeUserFieldContent("City", - Helper.getUnoObjectbyName(oUserDataAccess, "l")) + oUserDataAccess.hasByName("l")) myFieldHandler.changeUserFieldContent("Fax", - Helper.getUnoObjectbyName(oUserDataAccess, - "facsimiletelephonenumber")) + oUserDataAccess.hasByName("facsimiletelephonenumber")) except Exception: traceback.print_exc() diff --git a/wizards/com/sun/star/wizards/fax/FaxWizardDialog.py b/wizards/com/sun/star/wizards/fax/FaxWizardDialog.py index 9f033d7..308238b 100644 --- a/wizards/com/sun/star/wizards/fax/FaxWizardDialog.py +++ b/wizards/com/sun/star/wizards/fax/FaxWizardDialog.py @@ -17,8 +17,7 @@ # from .FaxWizardDialogResources import FaxWizardDialogResources from .FaxWizardDialogConst import FaxWizardDialogConst, HIDMAIN, HID -from ..ui.WizardDialog import WizardDialog, uno, Helper, UIConsts, \ - PropertyNames +from ..ui.WizardDialog import WizardDialog, uno, UIConsts, PropertyNames from com.sun.star.awt.FontUnderline import SINGLE @@ -31,14 +30,14 @@ class FaxWizardDialog(WizardDialog): self.resources = FaxWizardDialogResources(xmsf) #set dialog properties... - Helper.setUnoPropertyValues(self.xDialogModel, - ("Closeable", PropertyNames.PROPERTY_HEIGHT, "Moveable", + uno.invoke(self.xDialogModel, "setPropertyValues", + (("Closeable", PropertyNames.PROPERTY_HEIGHT, "Moveable", PropertyNames.PROPERTY_POSITION_X, PropertyNames.PROPERTY_POSITION_Y, PropertyNames.PROPERTY_STEP, PropertyNames.PROPERTY_TABINDEX, "Title", PropertyNames.PROPERTY_WIDTH), (True, 210, True, 104, 52, 1, 1, - self.resources.resFaxWizardDialog_title, 310)) + self.resources.resFaxWizardDialog_title, 310))) self.fontDescriptor1 = \ uno.createUnoStruct('com.sun.star.awt.FontDescriptor') diff --git a/wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.py b/wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.py index 4f7352c..1074f14 100644 --- a/wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.py +++ b/wizards/com/sun/star/wizards/fax/FaxWizardDialogImpl.py @@ -17,7 +17,7 @@ # import traceback import os.path -from .FaxWizardDialog import FaxWizardDialog, Helper, PropertyNames, uno, HID +from .FaxWizardDialog import FaxWizardDialog, PropertyNames, uno, HID from .CGFaxWizard import CGFaxWizard from .FaxDocument import FaxDocument from ..ui.PathSelection import PathSelection @@ -613,8 +613,7 @@ class FaxWizardDialogImpl(FaxWizardDialog): #enable/disable roadmap item for footer page BPaperItem = self.getRoadmapItemByID( \ FaxWizardDialogImpl.RM_FOOTER) - Helper.setUnoPropertyValue(BPaperItem, - PropertyNames.PROPERTY_ENABLED, bFooterPossible) + BPaperItem.Enabled = bFooterPossible except Exception: traceback.print_exc() @@ -685,14 +684,12 @@ class FaxWizardDialogImpl(FaxWizardDialog): def __enableSenderReceiver(self): BPaperItem = self.getRoadmapItemByID( \ FaxWizardDialogImpl.RM_SENDERRECEIVER) - Helper.setUnoPropertyValue(BPaperItem, - PropertyNames.PROPERTY_ENABLED, True) + BPaperItem.Enabled = True def __disableSenderReceiver(self): BPaperItem = self.getRoadmapItemByID( \ FaxWizardDialogImpl.RM_SENDERRECEIVER) - Helper.setUnoPropertyValue(BPaperItem, - PropertyNames.PROPERTY_ENABLED, False) + BPaperItem.Enabled = False def validatePath(self): if self.myPathSelection.usedPathPicker: diff --git a/wizards/com/sun/star/wizards/letter/LetterDocument.py b/wizards/com/sun/star/wizards/letter/LetterDocument.py index f8c1ced..60fecc3 100644 --- a/wizards/com/sun/star/wizards/letter/LetterDocument.py +++ b/wizards/com/sun/star/wizards/letter/LetterDocument.py @@ -15,7 +15,7 @@ # 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, Helper, \ +from ..text.TextDocument import TextDocument, traceback, \ TextFieldHandler, Configuration from ..text.TextSectionHandler import TextSectionHandler from ..common.PropertyNames import PropertyNames @@ -51,7 +51,7 @@ class LetterDocument(TextDocument): self.xMSF, self.xTextDocument) oSection = \ mySectionHandler.xTextDocument.TextSections.getByName(sElement) - Helper.setUnoPropertyValue(oSection, "IsVisible", bState) + oSection.IsVisible = bState except Exception: traceback.print_exc() @@ -68,9 +68,8 @@ class LetterDocument(TextDocument): xPageStyleCollection = xNameAccess.getByName("PageStyles") xPageStyle = xPageStyleCollection.getByName(sPageStyle) if bState: - Helper.setUnoPropertyValue(xPageStyle, "FooterIsOn", True) - xFooterText = \ - Helper.getUnoPropertyValue(xPageStyle, "FooterText") + xPageStyle.FooterIsOn = True + xFooterText = xPageStyle.FooterText xFooterText.String = sText if bPageNumber: #Adding the Page Number @@ -89,8 +88,7 @@ class LetterDocument(TextDocument): xPageNumberField, False) else: - Helper.setUnoPropertyValue( - xPageStyle, "FooterIsOn", False) + xPageStyle.FooterIsOn = False self.xTextDocument.unlockControllers() except Exception: @@ -118,17 +116,16 @@ class LetterDocument(TextDocument): oUserDataAccess = Configuration.getConfigurationRoot( self.xMSF, "org.openoffice.UserProfile/Data", False) myFieldHandler.changeUserFieldContent( - "Company", Helper.getUnoObjectbyName(oUserDataAccess, "o")) + "Company", oUserDataAccess.getByName("o")) myFieldHandler.changeUserFieldContent( - "Street", Helper.getUnoObjectbyName(oUserDataAccess, "street")) + "Street", oUserDataAccess.getByName("street")) myFieldHandler.changeUserFieldContent( - "PostCode", - Helper.getUnoObjectbyName(oUserDataAccess, "postalcode")) + "PostCode", oUserDataAccess.getByName("postalcode")) myFieldHandler.changeUserFieldContent( - "City", Helper.getUnoObjectbyName(oUserDataAccess, "l")) + "City", oUserDataAccess.getByName("l")) myFieldHandler.changeUserFieldContent( PropertyNames.PROPERTY_STATE, - Helper.getUnoObjectbyName(oUserDataAccess, "st")) + oUserDataAccess.getByName("st")) except Exception: traceback.print_exc() diff --git a/wizards/com/sun/star/wizards/letter/LetterWizardDialog.py b/wizards/com/sun/star/wizards/letter/LetterWizardDialog.py index 76c74a4..e73142a 100644 --- a/wizards/com/sun/star/wizards/letter/LetterWizardDialog.py +++ b/wizards/com/sun/star/wizards/letter/LetterWizardDialog.py @@ -18,7 +18,7 @@ from .LetterWizardDialogConst import LetterWizardDialogConst, HIDMAIN, HID from .LetterWizardDialogResources import LetterWizardDialogResources from ..common.HelpIds import HelpIds -from ..ui.WizardDialog import WizardDialog, uno, Helper, PropertyNames +from ..ui.WizardDialog import WizardDialog, uno, PropertyNames from com.sun.star.awt.FontUnderline import SINGLE @@ -28,9 +28,8 @@ class LetterWizardDialog(WizardDialog): super(LetterWizardDialog, self).__init__(xmsf, HIDMAIN ) self.resources = LetterWizardDialogResources(xmsf) - Helper.setUnoPropertyValues( - self.xDialogModel, - ("Closeable", + uno.invoke(self.xDialogModel, "setPropertyValues", + (("Closeable", PropertyNames.PROPERTY_HEIGHT, "Moveable", PropertyNames.PROPERTY_NAME, @@ -42,7 +41,8 @@ class LetterWizardDialog(WizardDialog): PropertyNames.PROPERTY_WIDTH), (True, 210, True, "LetterWizardDialog", 104, 52, 1, 1, - self.resources.resLetterWizardDialog_title, 310)) + self.resources.resLetterWizardDialog_title, 310))) + self.fontDescriptor1 = \ uno.createUnoStruct('com.sun.star.awt.FontDescriptor') self.fontDescriptor2 = \ diff --git a/wizards/com/sun/star/wizards/letter/LetterWizardDialogImpl.py b/wizards/com/sun/star/wizards/letter/LetterWizardDialogImpl.py index c109b65..2c45133 100644 --- a/wizards/com/sun/star/wizards/letter/LetterWizardDialogImpl.py +++ b/wizards/com/sun/star/wizards/letter/LetterWizardDialogImpl.py @@ -17,8 +17,8 @@ # import traceback import os.path -from .LetterWizardDialog import LetterWizardDialog, Helper, \ - PropertyNames, uno, HelpIds, HID +from .LetterWizardDialog import LetterWizardDialog, PropertyNames, uno, \ + HelpIds, HID from .LetterDocument import LetterDocument, BusinessPaperObject from .CGLetterWizard import CGLetterWizard from ..common.NoValidPathException import NoValidPathException @@ -570,12 +570,9 @@ class LetterWizardDialogImpl(LetterWizardDialog): try: xReceiverFrame = self.myLetterDoc.getFrameByName( "Receiver Address", self.myLetterDoc.xTextDocument) - iFrameWidth = int(Helper.getUnoPropertyValue( - xReceiverFrame, PropertyNames.PROPERTY_WIDTH)) - iFrameX = int(Helper.getUnoPropertyValue( - xReceiverFrame, "HoriOrientPosition")) - iFrameY = int(Helper.getUnoPropertyValue( - xReceiverFrame, "VertOrientPosition")) + iFrameWidth = int(xReceiverFrame.Width) + iFrameX = int(xReceiverFrame.HoriOrientPosition) + iFrameY = int(xReceiverFrame.VertOrientPosition) iReceiverHeight = int(0.5 * 1000) self.BusCompanyAddressReceiver = BusinessPaperObject( self.myLetterDoc.xTextDocument, " ", iFrameWidth, iReceiverHeight, @@ -689,8 +686,7 @@ class LetterWizardDialogImpl(LetterWizardDialog): BPaperItem = \ self.getRoadmapItemByID(LetterWizardDialogImpl.RM_FOOTER) - Helper.setUnoPropertyValue( - BPaperItem, PropertyNames.PROPERTY_ENABLED, bFooterPossible) + BPaperItem.Enabled = bFooterPossible except Exception: traceback.print_exc() @@ -823,21 +819,18 @@ class LetterWizardDialogImpl(LetterWizardDialog): def enableSenderReceiver(self): BPaperItem = self.getRoadmapItemByID( LetterWizardDialogImpl.RM_SENDERRECEIVER) - Helper.setUnoPropertyValue( - BPaperItem, PropertyNames.PROPERTY_ENABLED, True) + BPaperItem.Enabled = True def disableSenderReceiver(self): BPaperItem = self.getRoadmapItemByID( LetterWizardDialogImpl.RM_SENDERRECEIVER) - Helper.setUnoPropertyValue( - BPaperItem, PropertyNames.PROPERTY_ENABLED, False) + BPaperItem.Enabled = False def enableBusinessPaper(self): try: BPaperItem = self.getRoadmapItemByID( LetterWizardDialogImpl.RM_BUSINESSPAPER) - Helper.setUnoPropertyValue( - BPaperItem, PropertyNames.PROPERTY_ENABLED, True) + BPaperItem.Enabled = True self.chkPaperCompanyLogoItemChanged() self.chkPaperCompanyAddressItemChanged() self.chkPaperFooterItemChanged() @@ -849,8 +842,7 @@ class LetterWizardDialogImpl(LetterWizardDialog): try: BPaperItem = self.getRoadmapItemByID( LetterWizardDialogImpl.RM_BUSINESSPAPER) - Helper.setUnoPropertyValue( - BPaperItem, PropertyNames.PROPERTY_ENABLED, False) + BPaperItem.Enabled = False if self.BusCompanyLogo != None: self.BusCompanyLogo.removeFrame() diff --git a/wizards/com/sun/star/wizards/text/TextDocument.py b/wizards/com/sun/star/wizards/text/TextDocument.py index da9761d..150b0bf 100644 --- a/wizards/com/sun/star/wizards/text/TextDocument.py +++ b/wizards/com/sun/star/wizards/text/TextDocument.py @@ -21,10 +21,10 @@ import time from datetime import date as dateTimeObject from .ViewHandler import ViewHandler from .TextFieldHandler import TextFieldHandler -from ..common.Desktop import Desktop -from ..common.Helper import Helper from ..document.OfficeDocument import OfficeDocument +from ..common.Desktop import Desktop from ..common.Configuration import Configuration +from ..common.NumberFormatter import NumberFormatter from com.sun.star.container import NoSuchElementException from com.sun.star.lang import WrappedTargetException @@ -65,8 +65,7 @@ class TextDocument(object): xFrame, URL, "_self", xArgs); self.xWindowPeer = xFrame.getComponentWindow() self.m_xDocProps = self.xTextDocument.DocumentProperties - CharLocale = Helper.getUnoStructValue( - self.xTextDocument, "CharLocale"); + CharLocale = self.xTextDocument.CharLocale return else: @@ -110,8 +109,7 @@ class TextDocument(object): def init(self): self.xWindowPeer = self.xFrame.getComponentWindow() self.m_xDocProps = self.xTextDocument.DocumentProperties - self.CharLocale = Helper.getUnoStructValue( - self.xTextDocument, "CharLocale") + self.CharLocale = self.xTextDocument.CharLocale self.xText = self.xTextDocument.Text def showStatusIndicator(self): @@ -159,7 +157,7 @@ class TextDocument(object): xNameAccess = self.xTextDocument.StyleFamilies xPageStyleCollection = xNameAccess.getByName("PageStyles") xPageStyle = xPageStyleCollection.getByName("First Page") - return Helper.getUnoPropertyValue(xPageStyle, "Size") + return xPageStyle.Size except Exception: traceback.print_exc() return None @@ -196,7 +194,7 @@ class TextDocument(object): day = time.strftime("%d", now) dateObject = dateTimeObject(int(year), int(month), int(day)) - du = Helper.DateUtils(self.xMSF, self.xTextDocument) + du = self.DateUtils(self.xMSF, self.xTextDocument) ff = du.getFormat(DATE_SYS_DDMMYY) myDate = du.format(ff, dateObject) xDocProps2 = self.xTextDocument.DocumentProperties @@ -248,3 +246,32 @@ class TextDocument(object): auxList.append(allItems.getByIndex(i)) return auxList + + class DateUtils(object): + + def __init__(self, xmsf, document): + self.formatSupplier = document + formatSettings = self.formatSupplier.getNumberFormatSettings() + date = formatSettings.NullDate + self.calendar = dateTimeObject(date.Year, date.Month, date.Day) + self.formatter = NumberFormatter.createNumberFormatter(xmsf, + self.formatSupplier) + + ''' + @param format a constant of the enumeration NumberFormatIndex + @return + ''' + + def getFormat(self, format): + return NumberFormatter.getNumberFormatterKey( + self.formatSupplier, format) + + ''' + @param date a VCL date in form of 20041231 + @return a document relative date + ''' + + def format(self, formatIndex, date): + difference = date - self.calendar + return self.formatter.convertNumberToString(formatIndex, + difference.days) diff --git a/wizards/com/sun/star/wizards/text/TextSectionHandler.py b/wizards/com/sun/star/wizards/text/TextSectionHandler.py index 7e3c6e6..4a35fb4 100644 --- a/wizards/com/sun/star/wizards/text/TextSectionHandler.py +++ b/wizards/com/sun/star/wizards/text/TextSectionHandler.py @@ -17,7 +17,6 @@ # import uno import traceback -from ..common.Helper import Helper class TextSectionHandler(object): '''Creates a new instance of TextSectionHandler''' @@ -86,8 +85,8 @@ class TextSectionHandler(object): oSectionLink = \ uno.createUnoStruct('com.sun.star.text.SectionFileLink') oSectionLink.FileURL = "" - Helper.setUnoPropertyValues( - oTextSection, ("FileLink", "LinkRegion"),(oSectionLink, "")) + oTextSection.FileLink = oSectionLink + oTextSection.LinkRegion = "" except Exception: traceback.print_exc() @@ -100,9 +99,8 @@ class TextSectionHandler(object): oSectionLink = \ uno.createUnoStruct('com.sun.star.text.SectionFileLink') oSectionLink.FileURL = TemplateName - Helper.setUnoPropertyValues( - oTextSection, ("FileLink", "LinkRegion"), - (oSectionLink, SectionName)) + oTextSection.FileLink = oSectionLink + oTextSection.LinkRegion = SectionName NewSectionName = oTextSection.Name if NewSectionName is not SectionName: oTextSection.Name = SectionName diff --git a/wizards/com/sun/star/wizards/ui/UnoDialog.py b/wizards/com/sun/star/wizards/ui/UnoDialog.py index 7cbeb2a..e20c1ff 100644 --- a/wizards/com/sun/star/wizards/ui/UnoDialog.py +++ b/wizards/com/sun/star/wizards/ui/UnoDialog.py @@ -15,11 +15,11 @@ # except in compliance with the License. You may obtain a copy of # the License at http://www.apache.org/licenses/LICENSE-2.0 . # +import uno import traceback from .PeerConfig import PeerConfig from .UIConsts import UIConsts from ..common.PropertyNames import PropertyNames -from ..common.Helper import Helper from com.sun.star.awt import Rectangle from com.sun.star.awt.PosSize import POS @@ -72,23 +72,10 @@ class UnoDialog(object): traceback.print_exc() return None - - def printControlProperties(self, ControlName): - try: - xControlModel = self.xDialogModel().getByName(ControlName) - allProps = xControlModel.PropertySetInfo.Properties - i = 0 - while i < allProps.length: - sName = allProps[i].Name - i += 1 - except Exception: - traceback.print_exc() - def getMAPConversionFactor(self, ControlName): xControl2 = self.xUnoDialog.getControl(ControlName) aSize = xControl2.Size - dblMAPWidth = Helper.getUnoPropertyValue(xControl2.Model, - int(PropertyNames.PROPERTY_WIDTH)) + dblMAPWidth = xControl2.Model.Width return (aSize.Width / dblMAPWidth) def getpreferredLabelSize(self, LabelName, sLabel): @@ -111,25 +98,17 @@ class UnoDialog(object): # This function may look ugly, but this is the only way to check # the count of values in the model,which is always right. # the control is only a view and could be right or not. - fieldnames = Helper.getUnoPropertyValue(getModel(_xListBox), - "StringItemList") + fieldnames = getModel(_xListBox).StringItemList return fieldnames.length def getSelectedItemPos(self, _xListBox): - ipos = Helper.getUnoPropertyValue(getModel(_xListBox), - "SelectedItems") + ipos = getModel(_xListBox).SelectedItems return ipos[0] def isListBoxSelected(self, _xListBox): - ipos = Helper.getUnoPropertyValue(getModel(_xListBox), - "SelectedItems") + ipos = getModel(_xListBox).SelectedItems return ipos.length > 0 - def addSingleItemtoListbox(self, xListBox, ListItem, iSelIndex): - xListBox.addItem(ListItem, xListBox.getItemCount()) - if iSelIndex != -1: - xListBox.selectItemPos(iSelIndex, True) - ''' The problem with setting the visibility of controls is that changing the current step of a dialog will automatically make @@ -147,8 +126,7 @@ class UnoDialog(object): try: iCurControlStep = int(getControlProperty( controlname, PropertyNames.PROPERTY_STEP)) - iCurDialogStep = int(Helper.getUnoPropertyValue( - self.xDialogModel, PropertyNames.PROPERTY_STEP)) + iCurDialogStep = int(self.xDialogModel.Step) if bIsVisible: setControlProperty( controlname, PropertyNames.PROPERTY_STEP, iCurDialogStep) @@ -164,12 +142,9 @@ class UnoDialog(object): def repaintDialogStep(self): try: - ncurstep = int(Helper.getUnoPropertyValue( - self.xDialogModel, PropertyNames.PROPERTY_STEP)) - Helper.setUnoPropertyValue( - self.xDialogModel, PropertyNames.PROPERTY_STEP, 99) - Helper.setUnoPropertyValue( - self.xDialogModel, PropertyNames.PROPERTY_STEP, ncurstep) + ncurstep = int(self.xDialogModel.Step) + self.xDialogModel.Step = 99 + self.xDialogModel.Step = ncurstep except Exception: traceback.print_exc() @@ -177,11 +152,10 @@ class UnoDialog(object): self, serviceName, componentName, sPropNames, oPropValues): try: xControlModel = self.xDialogModel.createInstance(serviceName) - Helper.setUnoPropertyValues( - xControlModel, sPropNames, oPropValues) + uno.invoke(xControlModel, "setPropertyValues", + (sPropNames, oPropValues)) self.xDialogModel.insertByName(componentName, xControlModel) - Helper.setUnoPropertyValue(xControlModel, - PropertyNames.PROPERTY_NAME, componentName) + xControlModel.Name = componentName except Exception: traceback.print_exc() @@ -202,12 +176,11 @@ class UnoDialog(object): xListBox.selectItemPos((short)(iFieldsSelIndex - 1), True) # deselects a Listbox. MultipleMode is not supported - def deselectListBox(self, _xBasisListBox): oListBoxModel = getModel(_xBasisListBox) - sList = Helper.getUnoPropertyValue(oListBoxModel, "StringItemList") - Helper.setUnoPropertyValue(oListBoxModel, "StringItemList", [[],[]]) - Helper.setUnoPropertyValue(oListBoxModel, "StringItemList", sList) + sList = oListBoxModel.StringItemList + oListBoxModel.StringItemList = [[],[]] + oListBoxModel.StringItemList = sList def calculateDialogPosition(self, FramePosSize): # Todo:check if it would be useful or possible to create a dialog peer @@ -309,8 +282,7 @@ class UnoDialog(object): @classmethod def setEnabled(self, control, enabled): - Helper.setUnoPropertyValue( - control.Model, PropertyNames.PROPERTY_ENABLED, enabled) + control.Model.Enabled = enabled @classmethod def getControlModelType(self, xServiceInfo): diff --git a/wizards/com/sun/star/wizards/ui/WizardDialog.py b/wizards/com/sun/star/wizards/ui/WizardDialog.py index 7ccd2ce..eef5627 100644 --- a/wizards/com/sun/star/wizards/ui/WizardDialog.py +++ b/wizards/com/sun/star/wizards/ui/WizardDialog.py @@ -21,7 +21,6 @@ from abc import ABCMeta, abstractmethod from .UnoDialog2 import UnoDialog2, Desktop, PropertyNames, UIConsts, \ ItemListenerProcAdapter from .event.CommonListener import TerminateListenerProcAdapter -from ..common.Helper import Helper from ..common.Resource import Resource from ..common.HelpIds import HelpIds from ..document.OfficeDocument import OfficeDocument @@ -70,9 +69,7 @@ class WizardDialog(UnoDialog2): def itemStateChanged(self, itemEvent): try: self.nNewStep = itemEvent.ItemId - self.nOldStep = int(Helper.getUnoPropertyValue( - self.xDialogModel, - PropertyNames.PROPERTY_STEP)) + self.nOldStep = int(self.xDialogModel.Step) if self.nNewStep != self.nOldStep: self.switchToStep() @@ -80,14 +77,14 @@ class WizardDialog(UnoDialog2): traceback.print_exc() def setRoadmapInteractive(self, _bInteractive): - Helper.setUnoPropertyValue(self.oRoadmap, "Activated", _bInteractive) + self.oRoadmap.Activated = _bInteractive def setRoadmapComplete(self, bComplete): - Helper.setUnoPropertyValue(self.oRoadmap, "Complete", bComplete) + self.oRoadmap.Complete = bComplete def isRoadmapComplete(self): try: - return bool(Helper.getUnoPropertyValue(self.oRoadmap, "Complete")) + return bool(self.oRoadmap.Complete) except Exception: traceback.print_exc() return False @@ -96,21 +93,18 @@ class WizardDialog(UnoDialog2): if self.oRoadmap is not None: nCurItemID = self.getCurrentRoadmapItemID() if nCurItemID != ID: - Helper.setUnoPropertyValue(self.oRoadmap, "CurrentItemID",ID) + self.oRoadmap.CurrentItemID = ID def getCurrentRoadmapItemID(self): try: - return int(Helper.getUnoPropertyValue( - self.oRoadmap, "CurrentItemID")) + return int(self.oRoadmap.CurrentItemID) except Exception: traceback.print_exc() return -1 def addRoadmap(self): try: - iDialogHeight = Helper.getUnoPropertyValue( - self.xDialogModel, - PropertyNames.PROPERTY_HEIGHT) + iDialogHeight = self.xDialogModel.Height # the roadmap control has got no real TabIndex ever # that is not correct, but changing this would need time, # so it is used without TabIndex as before @@ -131,9 +125,8 @@ class WizardDialog(UnoDialog2): xRoadmapControl.addItemListener( ItemListenerProcAdapter(method)) - Helper.setUnoPropertyValue( - self.oRoadmap, "Text", - self.__oWizardResource.getResText(UIConsts.RID_COMMON + 16)) + self.oRoadmap.Text = \ + self.__oWizardResource.getResText(UIConsts.RID_COMMON + 16) except NoSuchMethodException: Resource.showCommonResourceError(xMSF) except Exception: @@ -148,11 +141,9 @@ class WizardDialog(UnoDialog2): if isinstance(_sLabel, int): _sLabel = self.sRMItemLabels(_sLabel) oRoadmapItem = self.oRoadmap.createInstance() - Helper.setUnoPropertyValue(oRoadmapItem, - PropertyNames.PROPERTY_LABEL, _sLabel) - Helper.setUnoPropertyValue(oRoadmapItem, - PropertyNames.PROPERTY_ENABLED, _bEnabled) - Helper.setUnoPropertyValue(oRoadmapItem, "ID", _CurItemID) + oRoadmapItem.Label = _sLabel + oRoadmapItem.Enabled = _bEnabled + oRoadmapItem.ID = _CurItemID self.oRoadmap.insertByIndex(Index, oRoadmapItem) except Exception: traceback.print_exc() @@ -162,7 +153,7 @@ class WizardDialog(UnoDialog2): getByIndex = self.oRoadmap.getByIndex for i in list(range(self.oRoadmap.Count)): CurRoadmapItem = getByIndex(i) - CurID = int(Helper.getUnoPropertyValue(CurRoadmapItem, "ID")) + CurID = int(CurRoadmapItem.ID) if CurID == _ID: return CurRoadmapItem @@ -204,8 +195,7 @@ class WizardDialog(UnoDialog2): pass def changeToStep(self, nNewStep): - Helper.setUnoPropertyValue(self.xDialogModel, - PropertyNames.PROPERTY_STEP, nNewStep) + self.xDialogModel.Step = nNewStep self.setCurrentRoadmapItemID(nNewStep) self.enableNextButton(self.getNextAvailableStep() > 0) self.enableBackButton(nNewStep != 1) @@ -216,10 +206,8 @@ class WizardDialog(UnoDialog2): iButtonWidth = self.__iButtonWidth iButtonHeight = 14 iCurStep = 0 - iDialogHeight = Helper.getUnoPropertyValue(self.xDialogModel, - PropertyNames.PROPERTY_HEIGHT) - iDialogWidth = Helper.getUnoPropertyValue(self.xDialogModel, - PropertyNames.PROPERTY_WIDTH) + iDialogHeight = self.xDialogModel.Height + iDialogWidth = self.xDialogModel.Width iHelpPosX = 8 iBtnPosY = iDialogHeight - iButtonHeight - 6 iCancelPosX = iDialogWidth - self.__iButtonWidth - 6 @@ -255,9 +243,7 @@ class WizardDialog(UnoDialog2): PropertyNames.PROPERTY_STEP, PropertyNames.PROPERTY_TABINDEX, PropertyNames.PROPERTY_WIDTH) - Helper.setUnoPropertyValue( - self.xDialogModel, PropertyNames.PROPERTY_HELPURL, - HelpIds.getHelpIdString(self.__hid)) + self.xDialogModel.HelpURL = HelpIds.getHelpIdString(self.__hid) self.insertButton("btnWizardHelp", WizardDialog.__HELP_ACTION_PERFORMED, (PropertyNames.PROPERTY_ENABLED, @@ -312,8 +298,7 @@ class WizardDialog(UnoDialog2): def setStepEnabled(self, _nStep, bEnabled, enableNextButton=None): xRoadmapItem = self.getRoadmapItemByID(_nStep) if xRoadmapItem is not None: - Helper.setUnoPropertyValue(xRoadmapItem, - PropertyNames.PROPERTY_ENABLED, bEnabled) + xRoadmapItem.Enabled = bEnabled if enableNextButton is not None: if self.getNextAvailableStep() > 0: self.enableNextButton(bEnabled) @@ -352,8 +337,7 @@ class WizardDialog(UnoDialog2): # Todo: In this case an exception should be thrown if xRoadmapItem is None: return False - bIsEnabled = bool(Helper.getUnoPropertyValue(xRoadmapItem, - PropertyNames.PROPERTY_ENABLED)) + bIsEnabled = bool(xRoadmapItem.Enabled) return bIsEnabled except Exception: traceback.print_exc() @@ -422,8 +406,7 @@ class WizardDialog(UnoDialog2): def getCurrentStep(self): try: - return int(Helper.getUnoPropertyValue(self.xDialogModel, - PropertyNames.PROPERTY_STEP)) + return int(self.xDialogModel.Step) except Exception: traceback.print_exc() return -1 diff --git a/wizards/com/sun/star/wizards/ui/event/UnoDataAware.py b/wizards/com/sun/star/wizards/ui/event/UnoDataAware.py index c753a9b..6f1e9b2 100644 --- a/wizards/com/sun/star/wizards/ui/event/UnoDataAware.py +++ b/wizards/com/sun/star/wizards/ui/event/UnoDataAware.py @@ -18,7 +18,6 @@ import uno from .CommonListener import ItemListenerProcAdapter, TextListenerProcAdapter from .DataAware import DataAware, PropertyNames -from ...common.Helper import Helper ''' @author rpiterman @@ -44,16 +43,15 @@ class UnoDataAware(DataAware): def enableControls(self, value): for i in self.disableObjects: - Helper.setUnoPropertyValue( - i.Model, PropertyNames.PROPERTY_ENABLED, bool(value)) + i.Model.Enabled = bool(value) def setToUI(self, value): if self.isShort: value = uno.Any("[]short", (value,)) - Helper.setUnoPropertyValue(self.unoModel, self.unoPropName, value) + setattr(self.unoModel, self.unoPropName, value) def getFromUI(self): - return Helper.getUnoPropertyValue(self.unoModel, self.unoPropName) + return getattr(self.unoModel, self.unoPropName) @classmethod def __attachTextControl( commit 03a0ea88e94205bf14feffccf981e4aac82a28ae Author: Xisco Fauli <aniste...@gmail.com> Date: Wed Nov 28 00:39:39 2012 +0100 pyagenda: make buttons work in Agenda Items Change-Id: Iadc5088b1e95fec0ae34c35cf650e9d53ceb6bf4 diff --git a/wizards/com/sun/star/wizards/agenda/AgendaTemplate.py b/wizards/com/sun/star/wizards/agenda/AgendaTemplate.py index b944bd4..e6643e0 100644 --- a/wizards/com/sun/star/wizards/agenda/AgendaTemplate.py +++ b/wizards/com/sun/star/wizards/agenda/AgendaTemplate.py @@ -795,6 +795,15 @@ class Topics(object): self.topicItems = {} self.firstRowFormat = [] self.agenda = agenda + ''' + this is a list which traces which topics were written to the document + and which not. When a cell needs to be actualized, it is checked that the + whole topic is already present in the document, using this vector. + The vector contains nulls for topics which were not written, and + empty strings for topics which were written (though any other + object would also do - i check only if it is a null or not...); + ''' + self.writtenTopics = [] try: Topics.table = self.agenda.getTable( self.agenda.templateConsts.SECTION_TOPICS) @@ -875,12 +884,11 @@ class Topics(object): to the table. 0 or a negative number: no rows added. ''' - @classmethod def write2(self, topic, data): - if topic >= len(self.agenda.writtenTopics): - size = topic - len(self.agenda.writtenTopics) - self.agenda.writtenTopics += [None] * size - self.agenda.writtenTopics.insert(topic, "") + if topic >= len(self.writtenTopics): + size = topic - len(self.writtenTopics) + self.writtenTopics += [None] * size + self.writtenTopics.insert(topic, "") # make sure threr are enough rows for me... rows = self.agenda.getRowCount(Topics.table) reqRows = 1 + (topic + 1) * Topics.rowsPerTopic @@ -911,8 +919,8 @@ class Topics(object): ''' def isWritten(self, topic): - return (len(self.agenda.writtenTopics) > topic \ - and self.agenda.writtenTopics[topic] is not None) + return (len(self.writtenTopics) > topic \ + and self.writtenTopics[topic] is not None) '''rewrites a single cell containing. This is used in order to refresh the topic/responsible/duration data @@ -1013,8 +1021,8 @@ class Topics(object): targetNumOfRows, tableRows.Count - targetNumOfRows)''' self.formatLastRow() - while len(self.agenda.writtenTopics) > topics: - del self.agenda.writtenTopics[topics] + while len(self.writtenTopics) > topics: + del self.writtenTopics[topics] '''reapply the format of the first (header) row. ''' @@ -1044,7 +1052,7 @@ class Topics(object): if cell >= 0: te = Topics.topicCells[cell] if te is not None: - te.text = str(value) + te.Text = str(value) return te return None diff --git a/wizards/com/sun/star/wizards/agenda/TopicsControl.py b/wizards/com/sun/star/wizards/agenda/TopicsControl.py index e28fe6e..00262ee 100644 --- a/wizards/com/sun/star/wizards/agenda/TopicsControl.py +++ b/wizards/com/sun/star/wizards/agenda/TopicsControl.py @@ -15,6 +15,7 @@ # except in compliance with the License. You may obtain a copy of # the License at http://www.apache.org/licenses/LICENSE-2.0 . # +import uno from .CGTopic import CGTopic from ..ui.ControlScroller import * from .AgendaWizardDialogConst import HID diff --git a/wizards/com/sun/star/wizards/ui/UnoDialog.py b/wizards/com/sun/star/wizards/ui/UnoDialog.py index c33cbb1..7cbeb2a 100644 --- a/wizards/com/sun/star/wizards/ui/UnoDialog.py +++ b/wizards/com/sun/star/wizards/ui/UnoDialog.py @@ -17,6 +17,7 @@ # import traceback from .PeerConfig import PeerConfig +from .UIConsts import UIConsts from ..common.PropertyNames import PropertyNames from ..common.Helper import Helper diff --git a/wizards/com/sun/star/wizards/ui/UnoDialog2.py b/wizards/com/sun/star/wizards/ui/UnoDialog2.py index aae0414..2ca855d 100644 --- a/wizards/com/sun/star/wizards/ui/UnoDialog2.py +++ b/wizards/com/sun/star/wizards/ui/UnoDialog2.py @@ -15,8 +15,7 @@ # except in compliance with the License. You may obtain a copy of # the License at http://www.apache.org/licenses/LICENSE-2.0 . # -from .UnoDialog import UnoDialog -from .UIConsts import UIConsts +from .UnoDialog import UnoDialog, UIConsts from ..common.Desktop import Desktop from ..common.PropertyNames import PropertyNames from .event.CommonListener import ItemListenerProcAdapter, \ commit e87d8747cf526af4cbb90502854c3b705aa52caa Author: Xisco Fauli <aniste...@gmail.com> Date: Tue Nov 27 23:56:14 2012 +0100 pyagenda: fix Topics in python3.3 Change-Id: Iea0036eef5d978aa227ba5ff297969f7a44ed3ab diff --git a/wizards/com/sun/star/wizards/agenda/AgendaTemplate.py b/wizards/com/sun/star/wizards/agenda/AgendaTemplate.py index 01db554..b944bd4 100644 --- a/wizards/com/sun/star/wizards/agenda/AgendaTemplate.py +++ b/wizards/com/sun/star/wizards/agenda/AgendaTemplate.py @@ -294,7 +294,7 @@ class AgendaTemplate(TextDocument): self.initializeItemsSections() self.textSectionHandler = TextSectionHandler( self.xTextDocument, self.xTextDocument) - #self.topics = Topics(self) + self.topics = Topics(self) ''' locates the titles (name, location, date, time) @@ -812,57 +812,62 @@ class Topics(object): cell by cell, I check in this map to know if a cell contains a <*> or not. ''' - items = {} - for i in self.agenda.allItems: - t = Helper.getUnoPropertyValue(i, "TextTable") - if t == Topics.table: - cell = Helper.getUnoPropertyValue(i, "Cell") - iText = cell.CellName - items[iText] = i + try: + items = {} + for i in self.agenda.allItems: + t = Helper.getUnoPropertyValue(i, "TextTable") + if t == Topics.table: + cell = Helper.getUnoPropertyValue(i, "Cell") + iText = cell.CellName + items[iText] = i - ''' - in the topics table, there are always one - title row and three topics defined. - So no mutter how many rows a topic takes - we - can restore its structure and format. - ''' - rows = self.agenda.getRowCount(Topics.table) - Topics.rowsPerTopic = (rows - 1) / 3 - firstCell = "A" + str(1 + Topics.rowsPerTopic + 1) - afterLastCell = "A" + str(1 + (Topics.rowsPerTopic * 2) + 1) - # go to the first row of the 2. topic - cursor = Topics.table.createCursorByCellName(firstCell) - # analyze the structure of the topic rows. - while not cursor.RangeName == afterLastCell: - cell = Topics.table.getCellByName(cursor.RangeName) - # if the cell contains a relevant <...> - # i add the text element to the hash, - # so it's text can be updated later. - try: - if items[cell.CellName] is not None: - self.topicItems[cell.String.lower().lstrip()] = cell - except KeyError: - pass + ''' + in the topics table, there are always one + title row and three topics defined. + So no mutter how many rows a topic takes - we + can restore its structure and format. + ''' + rows = self.agenda.getRowCount(Topics.table) + Topics.rowsPerTopic = int((rows - 1) / 3) + + firstCell = "A" + str(1 + Topics.rowsPerTopic + 1) + afterLastCell = "A" + str(1 + (Topics.rowsPerTopic * 2) + 1) + # go to the first row of the 2. topic + + cursor = Topics.table.createCursorByCellName(firstCell) + # analyze the structure of the topic rows. + while not cursor.RangeName == afterLastCell: + cell = Topics.table.getCellByName(cursor.RangeName) + # if the cell contains a relevant <...> + # i add the text element to the hash, + # so it's text can be updated later. + try: + if items[cell.CellName] is not None: + self.topicItems[cell.String.lower().lstrip()] = cell + except KeyError: + pass - Topics.topicCells.append(cell) - # goto next cell. - cursor.goRight(1, False) - ''' - now - in which cell is every fillin? - ''' + Topics.topicCells.append(cell) + # goto next cell. + cursor.goRight(1, False) + ''' + now - in which cell is every fillin? + ''' - Topics.numCell = Topics.topicCells.index( - self.topicItems[ - self.agenda.templateConsts.FILLIN_TOPIC_NUMBER]) - Topics.topicCell = Topics.topicCells.index( - self.topicItems[ - self.agenda.templateConsts.FILLIN_TOPIC_TOPIC]) - Topics.responsibleCell = Topics.topicCells.index( - self.topicItems[ - self.agenda.templateConsts.FILLIN_TOPIC_RESPONSIBLE]) - Topics.timeCell = Topics.topicCells.index( - self.topicItems[ - self.agenda.templateConsts.FILLIN_TOPIC_TIME]) + Topics.numCell = Topics.topicCells.index( + self.topicItems[ + self.agenda.templateConsts.FILLIN_TOPIC_NUMBER]) + Topics.topicCell = Topics.topicCells.index( + self.topicItems[ + self.agenda.templateConsts.FILLIN_TOPIC_TOPIC]) + Topics.responsibleCell = Topics.topicCells.index( + self.topicItems[ + self.agenda.templateConsts.FILLIN_TOPIC_RESPONSIBLE]) + Topics.timeCell = Topics.topicCells.index( + self.topicItems[ + self.agenda.templateConsts.FILLIN_TOPIC_TIME]) + except Exception: + traceback.print_exc() '''@param topic the topic number to write @param data the data of the topic. commit ee1df64d6cc0c2b8684063e2ae33676fd50440a7 Author: Xisco Fauli <aniste...@gmail.com> Date: Tue Nov 27 23:13:48 2012 +0100 pyagenda: fix date field Change-Id: I7952deeae094ae6d7c44fe4351225434d70e5c52 diff --git a/wizards/com/sun/star/wizards/agenda/AgendaTemplate.py b/wizards/com/sun/star/wizards/agenda/AgendaTemplate.py index 3dbcf63..01db554 100644 --- a/wizards/com/sun/star/wizards/agenda/AgendaTemplate.py +++ b/wizards/com/sun/star/wizards/agenda/AgendaTemplate.py @@ -294,7 +294,7 @@ class AgendaTemplate(TextDocument): self.initializeItemsSections() self.textSectionHandler = TextSectionHandler( self.xTextDocument, self.xTextDocument) - self.topics = Topics(self) + #self.topics = Topics(self) ''' locates the titles (name, location, date, time) @@ -400,9 +400,9 @@ class AgendaTemplate(TextDocument): if d is None or d == "": return "" date = int(d) - year = date / 10000 - month = (date % 10000) / 100 - day = date % 100 + year = int(date / 10000) + month = int((date % 10000) / 100) + day = int(date % 100) dateObject = dateTimeObject(year, month, day) return AgendaTemplate.dateUtils.format( AgendaTemplate.dateFormat, dateObject) _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits