diff options
Diffstat (limited to 'wizards/com/sun/star/wizards/common')
38 files changed, 7006 insertions, 0 deletions
diff --git a/wizards/com/sun/star/wizards/common/ConfigGroup.py b/wizards/com/sun/star/wizards/common/ConfigGroup.py new file mode 100644 index 000000000..200d4ef9d --- /dev/null +++ b/wizards/com/sun/star/wizards/common/ConfigGroup.py @@ -0,0 +1,59 @@ +# +# 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 inspect + +class ConfigGroup(object): + + root = None + + def __init__(self): + self.root = None + + def writeConfiguration(self, configurationView, param): + for name,data in inspect.getmembers(self): + if name.startswith(param): + self.writeField( name, configurationView, param) + + def writeField(self, field, configView, prefix): + propertyName = field[len(prefix):] + child = getattr(self, field) + if isinstance(child, ConfigGroup): + child.writeConfiguration(configView.getByName(propertyName), + prefix) + else: + setattr(configView,propertyName,getattr(self,field)) + + def readConfiguration(self, configurationView, param): + for name,data in inspect.getmembers(self): + if name.startswith(param): + self.readField( name, configurationView, param) + + def readField(self, field, configView, prefix): + propertyName = field[len(prefix):] + child = getattr(self, field) + if isinstance(child, ConfigGroup): + child.setRoot(self.root); + child.readConfiguration(configView.getByName(propertyName), + prefix) + else: + value = configView.getByName(propertyName) + if value is not None: + setattr(self,field, value) + + def setRoot(self, newRoot): + self.root = newRoot diff --git a/wizards/com/sun/star/wizards/common/ConfigSet.py b/wizards/com/sun/star/wizards/common/ConfigSet.py new file mode 100644 index 000000000..d4cc7e488 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/ConfigSet.py @@ -0,0 +1,67 @@ +# +# 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 +from .ConfigGroup import ConfigGroup + +class ConfigSet(ConfigGroup): + ''' + After reading the configuration set items, + the ConfigSet checks this field. + If it is true, it will remove any nulls from + the vector. + subclasses can change this field in the constructor + to avoid this "deletion" of nulls. + ''' + + def __init__(self, childType): + self.childType = childType + self.childrenList = [] + self.childrenListLen = 0 + + def writeConfiguration(self, configurationView, param): + for i in range(self.childrenListLen): + #remove previous configuration + configurationView.removeByName(i) + for index,item in enumerate(self.childrenList): + try: + childView = configurationView.createInstance() + configurationView.insertByName(index, childView) + if callable( self.childType ): + topic = self.childType() + topic.cp_Index = item[0].Value + topic.cp_Topic = item[1].Value + topic.cp_Responsible = item[2].Value + topic.cp_Time = item[3].Value + topic.writeConfiguration(childView, param) + except Exception: + traceback.print_exc() + + def readConfiguration(self, configurationView, param): + #each iteration represents a Topic row + names = configurationView.ElementNames + if names: + for i in names: + try: + if callable( self.childType ): + topic = self.childType() + topic.readConfiguration( + configurationView.getByName(i), param) + self.childrenList.append(topic) + except Exception: + traceback.print_exc() + self.childrenListLen = len(self.childrenList) diff --git a/wizards/com/sun/star/wizards/common/Configuration.java b/wizards/com/sun/star/wizards/common/Configuration.java new file mode 100644 index 000000000..c206a4014 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/Configuration.java @@ -0,0 +1,201 @@ +/* + * 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 . + */ +package com.sun.star.wizards.common; + +import com.sun.star.beans.*; +import com.sun.star.container.*; +import com.sun.star.lang.XMultiServiceFactory; +import com.sun.star.uno.AnyConverter; +import com.sun.star.uno.Exception; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.lang.Locale; + +/** + * This class gives access to the OO configuration API. + * <p>It contains 4 get and 4 set convenience methods for getting and settings properties + * in the configuration.</p> + * <p>For the get methods, two parameters must be given: name and parent, where name is the + * name of the property, parent is a HierarchyElement (::com::sun::star::configuration::HierarchyElement)</p> + * <p>The get and set methods support hierarchical property names like "options/gridX". </p> + * <p>NOTE: not yet supported, but sometime later, + * If you will omit the "parent" parameter, then the "name" parameter must be in hierarchy form from + * the root of the registry.</p> + */ +public abstract class Configuration +{ + + public static Object getConfigurationRoot(XMultiServiceFactory xmsf, String sPath, boolean updateable) throws com.sun.star.uno.Exception + { + + Object oConfigProvider; + oConfigProvider = xmsf.createInstance("com.sun.star.configuration.ConfigurationProvider"); + XMultiServiceFactory confMsf = UnoRuntime.queryInterface(XMultiServiceFactory.class, oConfigProvider); + + final String sView = updateable ? "com.sun.star.configuration.ConfigurationUpdateAccess" : "com.sun.star.configuration.ConfigurationAccess"; + + Object args[] = new Object[1]; + + PropertyValue aPathArgument = new PropertyValue(); + aPathArgument.Name = "nodepath"; + aPathArgument.Value = sPath; + + args[0] = aPathArgument; + + return confMsf.createInstanceWithArguments(sView, args); + } + + public static String getProductName(XMultiServiceFactory xMSF) + { + try + { + Object oProdNameAccess = getConfigurationRoot(xMSF, "org.openoffice.Setup/Product", false); + return (String) Helper.getUnoObjectbyName(oProdNameAccess, "ooName"); + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + return null; + } + } + + private static String getLocaleString(XMultiServiceFactory xMSF, String root, String key) + { + String sLocale = PropertyNames.EMPTY_STRING; + try + { + Object oMasterKey = getConfigurationRoot(xMSF, root, false); + sLocale = (String) Helper.getUnoObjectbyName(oMasterKey, key); + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + } + if (sLocale.length() == 0 && (!key.equals("Locale") || !root.equals("org.openoffice.System/L10N/"))) + { + return getLocaleString(xMSF, "org.openoffice.System/L10N/", "Locale"); + } + return sLocale; + } + + private static Locale getLocale(XMultiServiceFactory xMSF, String root, String key) + { + Locale aLocLocale = new Locale(); + String sLocale = getLocaleString(xMSF, root, key); + String[] sLocaleList = JavaTools.ArrayoutofString(sLocale, "-"); + aLocLocale.Language = sLocaleList[0]; + if (sLocaleList.length > 1) + { + aLocLocale.Country = sLocaleList[1]; + } + return aLocLocale; + } + + public static Locale getLocale(XMultiServiceFactory xMSF) + { + return getLocale(xMSF, "org.openoffice.Setup/L10N/", "ooSetupSystemLocale"); + } + + public static Locale getUILocale(XMultiServiceFactory xMSF) + { + return getLocale(xMSF, "org.openoffice.Setup/L10N/", "ooLocale"); + } + + public static String[] getNodeDisplayNames(XNameAccess _xNameAccessNode) + { + return getNodeChildNames(_xNameAccessNode, PropertyNames.PROPERTY_NAME); + } + + public static String[] getNodeChildNames(XNameAccess xNameAccessNode, String _schildname) + { + String[] snames = null; + try + { + snames = xNameAccessNode.getElementNames(); + String[] sdisplaynames = new String[snames.length]; + for (int i = 0; i < snames.length; i++) + { + Object oContent = Helper.getUnoPropertyValue(xNameAccessNode.getByName(snames[i]), _schildname); + if (!AnyConverter.isVoid(oContent)) + { + sdisplaynames[i] = (String) Helper.getUnoPropertyValue(xNameAccessNode.getByName(snames[i]), _schildname); + } + else + { + sdisplaynames[i] = snames[i]; + } + } + return sdisplaynames; + } + catch (Exception e) + { + e.printStackTrace(System.err); + return snames; + } + } + + public static XNameAccess getChildNodebyIndex(XNameAccess _xNameAccess, int _index) throws com.sun.star.uno.Exception + { + String[] snames = _xNameAccess.getElementNames(); + Object oNode = _xNameAccess.getByName(snames[_index]); + return UnoRuntime.queryInterface(XNameAccess.class, oNode); + } + + public static XNameAccess getChildNodebyName(XNameAccess _xNameAccessNode, String _SubNodeName) + { + try + { + if (_xNameAccessNode.hasByName(_SubNodeName)) + { + return UnoRuntime.queryInterface(XNameAccess.class, _xNameAccessNode.getByName(_SubNodeName)); + } + } + catch (Exception e) + { + e.printStackTrace(System.err); + } + return null; + } + + public static XNameAccess getChildNodebyDisplayName(XMultiServiceFactory _xMSF, Locale _aLocale, XNameAccess _xNameAccessNode, String _displayname, String _nodename, int _nmaxcharcount) + { + String[] snames = null; + try + { + snames = _xNameAccessNode.getElementNames(); + for (int i = 0; i < snames.length; i++) + { + String curdisplayname = (String) Helper.getUnoPropertyValue(_xNameAccessNode.getByName(snames[i]), _nodename); + if ((_nmaxcharcount > 0) && (_nmaxcharcount < curdisplayname.length())) + { + curdisplayname = curdisplayname.substring(0, _nmaxcharcount); + } + curdisplayname = Desktop.removeSpecialCharacters(_xMSF, _aLocale, curdisplayname); + + if (curdisplayname.equals(_displayname)) + { + return UnoRuntime.queryInterface(XNameAccess.class, _xNameAccessNode.getByName(snames[i])); + } + } + } + catch (Exception e) + { + e.printStackTrace(System.err); + } + return null; + } +} diff --git a/wizards/com/sun/star/wizards/common/Configuration.py b/wizards/com/sun/star/wizards/common/Configuration.py new file mode 100644 index 000000000..91274e0b2 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/Configuration.py @@ -0,0 +1,70 @@ +# +# 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 + +class Configuration(object): + '''This class gives access to the OO configuration api.''' + + @classmethod + def getConfigurationRoot(self, xmsf, sPath, updateable): + oConfigProvider = xmsf.createInstance( + "com.sun.star.configuration.ConfigurationProvider") + args = [] + + aPathArgument = uno.createUnoStruct( + 'com.sun.star.beans.PropertyValue') + aPathArgument.Name = "nodepath" + aPathArgument.Value = sPath + + args.append(aPathArgument) + + if updateable: + sView = "com.sun.star.configuration.ConfigurationUpdateAccess" + else: + sView = "com.sun.star.configuration.ConfigurationAccess" + + return oConfigProvider.createInstanceWithArguments(sView, tuple(args)) + + @classmethod + def getProductName(self, xMSF): + try: + oProdNameAccess = self.getConfigurationRoot(xMSF, "org.openoffice.Setup/Product", False); + return oProdNameAccess.getByName("ooName") + except Exception: + traceback.print_exc() + return "Unknown" + + @classmethod + def getNode(self, name, parent): + return parent.getByName(name) + + @classmethod + def commit(self, configView): + configView.commitChanges() + + @classmethod + def getInt(self, name, parent): + o = getNode(name, parent) + if (com.sun.star.uno.AnyConverter.isVoid(o)): + return 0 + return com.sun.star.uno.AnyConverter.toInt(o) + + @classmethod + def set(self, value, name, parent): + parent.setHierarchicalPropertyValue(name, value) diff --git a/wizards/com/sun/star/wizards/common/DebugHelper.java b/wizards/com/sun/star/wizards/common/DebugHelper.java new file mode 100644 index 000000000..6f172a2dc --- /dev/null +++ b/wizards/com/sun/star/wizards/common/DebugHelper.java @@ -0,0 +1,35 @@ +/* + * 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 . + */ +package com.sun.star.wizards.common; + +import com.sun.star.uno.Exception; + +public class DebugHelper +{ + + + public static void exception(Exception ex) throws java.lang.Exception + { +// throw new UnsupportedOperationException("Not supported yet."); + } + + public static void writeInfo(String msg) + { +// throw new UnsupportedOperationException("Not supported yet."); + } +} diff --git a/wizards/com/sun/star/wizards/common/Desktop.java b/wizards/com/sun/star/wizards/common/Desktop.java new file mode 100644 index 000000000..b19d1f375 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/Desktop.java @@ -0,0 +1,286 @@ +/* + * 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 . + */ +package com.sun.star.wizards.common; + +import com.sun.star.beans.PropertyValue; +import com.sun.star.lang.XMultiComponentFactory; +import com.sun.star.lang.XMultiServiceFactory; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.uno.XComponentContext; +import com.sun.star.util.XURLTransformer; +import com.sun.star.lang.Locale; +import com.sun.star.bridge.XUnoUrlResolver; +import com.sun.star.comp.helper.Bootstrap; +import com.sun.star.container.XHierarchicalNameAccess; +import com.sun.star.container.XNameAccess; +import com.sun.star.frame.*; +import com.sun.star.i18n.KParseType; +import com.sun.star.i18n.ParseResult; +import com.sun.star.i18n.XCharacterClassification; + +public class Desktop +{ + + public static XDesktop getDesktop(XMultiServiceFactory xMSF) + { + com.sun.star.uno.XInterface xInterface = null; + XDesktop xDesktop = null; + if (xMSF != null) + { + try + { + xInterface = (com.sun.star.uno.XInterface) xMSF.createInstance("com.sun.star.frame.Desktop"); + xDesktop = UnoRuntime.queryInterface(XDesktop.class, xInterface); + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + } + } + else + { + System.out.println("Can't create a desktop. null pointer !"); + } + return xDesktop; + } + + public static XFrame getActiveFrame(XMultiServiceFactory xMSF) + { + XDesktop xDesktop = getDesktop(xMSF); + XFramesSupplier xFrameSuppl = UnoRuntime.queryInterface(XFramesSupplier.class, xDesktop); + return xFrameSuppl.getActiveFrame(); + } + + private static XDispatch getDispatcher(XFrame xFrame, String _stargetframe, com.sun.star.util.URL oURL) + { + try + { + com.sun.star.util.URL[] oURLArray = new com.sun.star.util.URL[1]; + oURLArray[0] = oURL; + XDispatchProvider xDispatchProvider = UnoRuntime.queryInterface(XDispatchProvider.class, xFrame); + return xDispatchProvider.queryDispatch(oURLArray[0], _stargetframe, FrameSearchFlag.ALL); // "_self" + } + catch (Exception e) + { + e.printStackTrace(System.err); + } + return null; + } + + private static com.sun.star.util.URL getDispatchURL(XMultiServiceFactory xMSF, String _sURL) throws com.sun.star.uno.Exception + { + Object oTransformer = xMSF.createInstance("com.sun.star.util.URLTransformer"); + XURLTransformer xTransformer = UnoRuntime.queryInterface(XURLTransformer.class, oTransformer); + com.sun.star.util.URL[] oURL = new com.sun.star.util.URL[1]; + oURL[0] = new com.sun.star.util.URL(); + oURL[0].Complete = _sURL; + xTransformer.parseStrict(oURL); + return oURL[0]; + } + + private static void dispatchURL(XMultiServiceFactory xMSF, String sURL, XFrame xFrame, String _stargetframe) throws com.sun.star.uno.Exception + { + com.sun.star.util.URL oURL = getDispatchURL(xMSF, sURL); + XDispatch xDispatch = getDispatcher(xFrame, _stargetframe, oURL); + dispatchURL(xDispatch, oURL); + } + + public static void dispatchURL(XMultiServiceFactory xMSF, String sURL, XFrame xFrame) throws com.sun.star.uno.Exception + { + dispatchURL(xMSF, sURL, xFrame, PropertyNames.EMPTY_STRING); + } + + private static void dispatchURL(XDispatch _xDispatch, com.sun.star.util.URL oURL) + { + PropertyValue[] oArg = new PropertyValue[0]; + _xDispatch.dispatch(oURL, oArg); + } + + private static XMultiComponentFactory getMultiComponentFactory() throws com.sun.star.uno.Exception, RuntimeException, java.lang.Exception + { + XComponentContext xcomponentcontext = Bootstrap.createInitialComponentContext(null); + // initial serviceManager + return xcomponentcontext.getServiceManager(); + } + + public static XMultiServiceFactory connect(String connectStr) throws com.sun.star.uno.Exception, com.sun.star.uno.RuntimeException, Exception + { + XMultiComponentFactory componentFactory = getMultiComponentFactory(); + Object xUrlResolver = componentFactory.createInstanceWithContext( "com.sun.star.bridge.UnoUrlResolver", null ); + XUnoUrlResolver urlResolver = UnoRuntime.queryInterface(XUnoUrlResolver.class, xUrlResolver); + return UnoRuntime.queryInterface(XMultiServiceFactory.class, urlResolver.resolve( connectStr ) ); + } + + public static String getIncrementSuffix(XNameAccess xElementContainer, String ElementName) + { + boolean bElementexists = true; + int i = 1; + String sIncSuffix = PropertyNames.EMPTY_STRING; + String BaseName = ElementName; + while (bElementexists) + { + bElementexists = xElementContainer.hasByName(ElementName); + if (bElementexists) + { + i += 1; + ElementName = BaseName + Integer.toString(i); + } + } + if (i > 1) + { + sIncSuffix = Integer.toString(i); + } + return sIncSuffix; + } + + private static String getIncrementSuffix(XHierarchicalNameAccess xElementContainer, String ElementName) + { + boolean bElementexists = true; + int i = 1; + String sIncSuffix = PropertyNames.EMPTY_STRING; + String BaseName = ElementName; + while (bElementexists) + { + bElementexists = xElementContainer.hasByHierarchicalName(ElementName); + if (bElementexists) + { + i += 1; + ElementName = BaseName + Integer.toString(i); + } + } + if (i > 1) + { + sIncSuffix = Integer.toString(i); + } + return sIncSuffix; + } + + private static int checkforfirstSpecialCharacter(XMultiServiceFactory _xMSF, String _sString, Locale _aLocale) + { + try + { + int nStartFlags = com.sun.star.i18n.KParseTokens.ANY_LETTER_OR_NUMBER + com.sun.star.i18n.KParseTokens.ASC_UNDERSCORE; + Object ocharservice = _xMSF.createInstance("com.sun.star.i18n.CharacterClassification"); + XCharacterClassification xCharacterClassification = UnoRuntime.queryInterface(XCharacterClassification.class, ocharservice); + ParseResult aResult = xCharacterClassification.parsePredefinedToken(KParseType.IDENTNAME, _sString, 0, _aLocale, nStartFlags, PropertyNames.EMPTY_STRING, nStartFlags, PropertyNames.SPACE); + return aResult.EndPos; + } + catch (Exception e) + { + e.printStackTrace(System.err); + return -1; + } + } + + public static String removeSpecialCharacters(XMultiServiceFactory _xMSF, Locale _aLocale, String _sname) + { + String snewname = _sname; + int i = 0; + while (i < snewname.length()) + { + i = Desktop.checkforfirstSpecialCharacter(_xMSF, snewname, _aLocale); + if (i < snewname.length()) + { + String sspecialchar = snewname.substring(i, i + 1); + snewname = JavaTools.replaceSubString(snewname, PropertyNames.EMPTY_STRING, sspecialchar); + } + } + return snewname; + } + + /** + * Checks if the passed Element Name already exists in the ElementContainer. If yes it appends a + * suffix to make it unique + * @return a unique Name ready to be added to the container. + */ + public static String getUniqueName(XNameAccess xElementContainer, String sElementName) + { + String sIncSuffix = getIncrementSuffix(xElementContainer, sElementName); + return sElementName + sIncSuffix; + } + + /** + * Checks if the passed Element Name already exists in the ElementContainer. If yes it appends a + * suffix to make it unique + * @return a unique Name ready to be added to the container. + */ + public static String getUniqueName(XHierarchicalNameAccess xElementContainer, String sElementName) + { + String sIncSuffix = getIncrementSuffix(xElementContainer, sElementName); + return sElementName + sIncSuffix; + } + + /** + * Checks if the passed Element Name already exists in the list. If yes it appends a + * suffix to make it unique. + * @return a unique Name not being in the passed list. + */ + public static String getUniqueName(String[] _slist, String _sElementName, String _sSuffixSeparator) + { + if (_slist == null || _slist.length == 0) + { + return _sElementName; + } + String scompname = _sElementName; + int a = 2; + while (true) + { + for (int i = 0; i < _slist.length; i++) + { + if (JavaTools.FieldInList(_slist, scompname) == -1) + { + return scompname; + } + } + scompname = _sElementName + _sSuffixSeparator + a++; + } + } + + + + private static String getTemplatePath(XMultiServiceFactory _xMSF) + { + try + { + return FileAccess.getOfficePath(_xMSF, "Template", "share", "/wizard"); + } + catch (NoValidPathException nopathexception) + { + } + return PropertyNames.EMPTY_STRING; + } + + + + public static String getBitmapPath(XMultiServiceFactory _xMSF) + { + try + { + return FileAccess.combinePaths(_xMSF, getTemplatePath(_xMSF), "/../wizard/bitmap"); + } + catch (NoValidPathException nopathexception) + { + } + return PropertyNames.EMPTY_STRING; + } + + + + + +} diff --git a/wizards/com/sun/star/wizards/common/Desktop.py b/wizards/com/sun/star/wizards/common/Desktop.py new file mode 100644 index 000000000..99c9d60d8 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/Desktop.py @@ -0,0 +1,96 @@ +# +# 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 com.sun.star.frame.FrameSearchFlag import ALL +from com.sun.star.util import URL +from com.sun.star.i18n.KParseTokens import ANY_LETTER_OR_NUMBER, ASC_UNDERSCORE + +class Desktop(object): + + @classmethod + def getDesktop(self, xMSF): + xDesktop = None + if xMSF is not None: + try: + xDesktop = xMSF.createInstance( "com.sun.star.frame.Desktop") + except Exception: + traceback.print_exc() + else: + print ("Can't create a desktop. null pointer !") + return xDesktop + + @classmethod + def getActiveFrame(self, xMSF): + xDesktop = self.getDesktop(xMSF) + return xDesktop.getActiveFrame() + + @classmethod + def getDispatcher(self, xMSF, xFrame, _stargetframe, oURL): + try: + xDispatch = xFrame.queryDispatch(oURL, _stargetframe, ALL) + return xDispatch + except Exception: + traceback.print_exc() + + return None + + @classmethod + def connect(self, connectStr): + localContext = uno.getComponentContext() + resolver = localContext.ServiceManager.createInstanceWithContext( + "com.sun.star.bridge.UnoUrlResolver", localContext) + ctx = resolver.resolve( connectStr ) + orb = ctx.ServiceManager + return orb + + @classmethod + def getIncrementSuffix(self, xElementContainer, sElementName): + bElementexists = True + i = 1 + sIncSuffix = "" + BaseName = sElementName + while bElementexists: + try: + bElementexists = xElementContainer.hasByName(sElementName) + except: + bElementexists = xElementContainer.hasByHierarchicalName( + sElementName) + if bElementexists: + i += 1 + sElementName = BaseName + str(i) + + if i > 1: + sIncSuffix = str(i) + + return sIncSuffix + + ''' + Checks if the passed Element Name already exists in the ElementContainer. + If yes it appends a suffix to make it unique + @param xElementContainer + @param sElementName + @return a unique Name ready to be added to the container. + ''' + + @classmethod + def getUniqueName(self, xElementContainer, sElementName): + sIncSuffix = self.getIncrementSuffix(xElementContainer, sElementName) + return sElementName + sIncSuffix + diff --git a/wizards/com/sun/star/wizards/common/FileAccess.java b/wizards/com/sun/star/wizards/common/FileAccess.java new file mode 100644 index 000000000..1dfb3c90d --- /dev/null +++ b/wizards/com/sun/star/wizards/common/FileAccess.java @@ -0,0 +1,590 @@ +/* + * 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 . + */ +package com.sun.star.wizards.common; + +import com.sun.star.beans.XPropertySet; +import com.sun.star.lang.Locale; +import com.sun.star.uno.Exception; +import com.sun.star.util.XMacroExpander; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Vector; + +import com.sun.star.io.XActiveDataSink; +import com.sun.star.io.XInputStream; +import com.sun.star.io.XTextInputStream; +import com.sun.star.lang.XMultiServiceFactory; +import com.sun.star.ucb.CommandAbortedException; +import com.sun.star.ucb.XFileIdentifierConverter; +import com.sun.star.ucb.XSimpleFileAccess; +import com.sun.star.ucb.XSimpleFileAccess2; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.uno.XInterface; +import com.sun.star.beans.PropertyValue; +import com.sun.star.document.XDocumentProperties; + +/** + * This class delivers static convenience methods + * to use with ucb SimpleFileAccess service. + * You can also instantiate the class, to encapsulate + * some functionality of SimpleFileAccess. The instance + * keeps a reference to an XSimpleFileAccess and an + * XFileIdentifierConverter, saves the permanent + * overhead of querying for those interfaces, and delivers + * convenience methods for using them. + * These Convenience methods include mainly Exception-handling. + */ +public class FileAccess +{ + + private static String deleteLastSlashfromUrl(String _sPath) + { + if (_sPath.endsWith("/")) + { + return _sPath.substring(0, _sPath.length() - 1); + } + else + { + return _sPath; + } + } + + /** + * Further information on arguments value see in OO Developer Guide, + * chapter 6.2.7 + * @return the respective path of the office application. A probable following "/" at the end is trimmed. + */ + public static String getOfficePath(XMultiServiceFactory xMSF, String sPath) + { + try + { + String ResultPath = PropertyNames.EMPTY_STRING; + XInterface xInterface = (XInterface) xMSF.createInstance("com.sun.star.util.PathSettings"); + ResultPath = com.sun.star.uno.AnyConverter.toString(Helper.getUnoPropertyValue(xInterface, sPath)); + ResultPath = deleteLastSlashfromUrl(ResultPath); + return ResultPath; + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + return PropertyNames.EMPTY_STRING; + } + } + + /** + * Further information on arguments value see in OO Developer Guide, + * chapter 6.2.7 + * @param sType use "share" or "user". Set to PropertyNames.EMPTY_STRING if not needed eg for the WorkPath; + * In the return Officepath a possible slash at the end is cut off + */ + public static String getOfficePath(XMultiServiceFactory xMSF, String sPath, String sType, String sSearchDir) throws NoValidPathException + { + //This method currently only works with sPath="Template" + + String ResultPath = PropertyNames.EMPTY_STRING; + + String Template_writable = PropertyNames.EMPTY_STRING; + String[] Template_internal; + String[] Template_user; + + boolean bexists = false; + try + { + XInterface xPathInterface = (XInterface) xMSF.createInstance("com.sun.star.util.PathSettings"); + XPropertySet xPropertySet = UnoRuntime.queryInterface(XPropertySet.class, xPathInterface); + String WritePath = PropertyNames.EMPTY_STRING; + String[] ReadPaths = null; + XInterface xUcbInterface = (XInterface) xMSF.createInstance("com.sun.star.ucb.SimpleFileAccess"); + XSimpleFileAccess xSimpleFileAccess = UnoRuntime.queryInterface(XSimpleFileAccess.class, xUcbInterface); + + Template_writable = (String) xPropertySet.getPropertyValue(sPath + "_writable"); + Template_internal = (String[]) xPropertySet.getPropertyValue(sPath + "_internal"); + Template_user = (String[]) xPropertySet.getPropertyValue(sPath + "_user"); + int iNumEntries = Template_user.length + Template_internal.length + 1; + ReadPaths = new String[iNumEntries]; + int t = 0; + for (int i = 0; i < Template_internal.length; i++) + { + ReadPaths[t] = Template_internal[i]; + t++; + } + for (int i = 0; i < Template_user.length; i++) + { + ReadPaths[t] = Template_user[i]; + t++; + } + ReadPaths[t] = Template_writable; + WritePath = Template_writable; + + if (sType.equalsIgnoreCase("user")) + { + ResultPath = WritePath; + bexists = true; + } + else + { + //find right path using the search sub path + for (int i = 0; i < ReadPaths.length; i++) + { + String tmpPath = ReadPaths[i] + sSearchDir; + if (xSimpleFileAccess.exists(tmpPath)) + { + ResultPath = ReadPaths[i]; + bexists = true; + break; + } + } + } + ResultPath = deleteLastSlashfromUrl(ResultPath); + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + ResultPath = PropertyNames.EMPTY_STRING; + } + if (!bexists) + { + throw new NoValidPathException(xMSF, PropertyNames.EMPTY_STRING); + } + return ResultPath; + } + + public static ArrayList<String> getOfficePaths(XMultiServiceFactory xMSF, String _sPath) + { + //This method currently only works with sPath="Template" + + ArrayList<String> aPathList = new ArrayList<String>(); + String Template_writable = PropertyNames.EMPTY_STRING; + String[] Template_internal; + String[] Template_user; + + try + { + XInterface xPathInterface = (XInterface) xMSF.createInstance("com.sun.star.util.PathSettings"); + XPropertySet xPropertySet = UnoRuntime.queryInterface(XPropertySet.class, xPathInterface); + Template_writable = (String) xPropertySet.getPropertyValue(_sPath + "_writable"); + Template_internal = (String[]) xPropertySet.getPropertyValue(_sPath + "_internal"); + Template_user = (String[]) xPropertySet.getPropertyValue(_sPath + "_user"); + + for (int i = 0; i < Template_internal.length; i++) + { + String sPath = Template_internal[i]; + if (sPath.startsWith("vnd.")) + { + String sPathToExpand = sPath.substring("vnd.sun.star.Expand:".length()); + + XMacroExpander xExpander = Helper.getMacroExpander(xMSF); + sPath = xExpander.expandMacros(sPathToExpand); + } + + // if there exists a language in the directory, we try to add the right language + sPath = checkIfLanguagePathExists(xMSF, sPath); + + aPathList.add(sPath); + } + aPathList.addAll(Arrays.asList(Template_user)); + aPathList.add(Template_writable); + // There was a bug here, because we have to search through the whole list of paths + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + } + return aPathList; + } + + private static String checkIfLanguagePathExists(XMultiServiceFactory _xMSF, String _sPath) + { + try + { + Object defaults = _xMSF.createInstance("com.sun.star.text.Defaults"); + Locale aLocale = (Locale) Helper.getUnoStructValue(defaults, "CharLocale"); + if (aLocale == null) + { + aLocale = new com.sun.star.lang.Locale(); + aLocale.Country = java.util.Locale.getDefault().getCountry(); + aLocale.Language = java.util.Locale.getDefault().getLanguage(); + aLocale.Variant = java.util.Locale.getDefault().getVariant(); + } + + String sLanguage = aLocale.Language; + String sCountry = aLocale.Country; + String sVariant = aLocale.Variant; + + // de-DE-Bayrisch + StringBuffer aLocaleAll = new StringBuffer(); + aLocaleAll.append(sLanguage).append('-').append(sCountry).append('-').append(sVariant); + String sPath = _sPath + "/" + aLocaleAll.toString(); + + XInterface xInterface = (XInterface) _xMSF.createInstance("com.sun.star.ucb.SimpleFileAccess"); + XSimpleFileAccess xSimpleFileAccess = UnoRuntime.queryInterface(XSimpleFileAccess.class, xInterface); + if (xSimpleFileAccess.exists(sPath)) + { + return sPath; + } + + // de-DE + StringBuffer aLocaleLang_Country = new StringBuffer(); + aLocaleLang_Country.append(sLanguage).append('-').append(sCountry); + sPath = _sPath + "/" + aLocaleLang_Country.toString(); + + if (xSimpleFileAccess.exists(sPath)) + { + return sPath; + } + + // de + StringBuffer aLocaleLang = new StringBuffer(); + aLocaleLang.append(sLanguage); + sPath = _sPath + "/" + aLocaleLang.toString(); + + if (xSimpleFileAccess.exists(sPath)) + { + return sPath; + } + + // the absolute default is en-US or en + sPath = _sPath + "/en-US"; + if (xSimpleFileAccess.exists(sPath)) + { + return sPath; + } + + sPath = _sPath + "/en"; + if (xSimpleFileAccess.exists(sPath)) + { + return sPath; + } + + } + catch (com.sun.star.uno.Exception e) + { + } + + return _sPath; + } + + public static void combinePaths(XMultiServiceFactory xMSF, ArrayList<String> _aFirstPath, String _sSecondPath) + { + for (int i = 0; i < _aFirstPath.size(); ++i) + { + String sOnePath = _aFirstPath.get(i); + sOnePath = addPath(sOnePath, _sSecondPath); + if (isPathValid(xMSF, sOnePath)) + { + _aFirstPath.add(i, sOnePath); + _aFirstPath.remove(i + 1); + } + else + { + _aFirstPath.remove(i); + --i; + } + } + } + + public static boolean isPathValid(XMultiServiceFactory xMSF, String _sPath) + { + boolean bExists = false; + try + { + XInterface xUcbInterface = (XInterface) xMSF.createInstance("com.sun.star.ucb.SimpleFileAccess"); + XSimpleFileAccess xSimpleFileAccess = UnoRuntime.queryInterface(XSimpleFileAccess.class, xUcbInterface); + bExists = xSimpleFileAccess.exists(_sPath); + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + } + return bExists; + } + + public static String combinePaths(XMultiServiceFactory xMSF, String _sFirstPath, String _sSecondPath) throws NoValidPathException + { + boolean bexists = false; + String ReturnPath = PropertyNames.EMPTY_STRING; + try + { + XInterface xUcbInterface = (XInterface) xMSF.createInstance("com.sun.star.ucb.SimpleFileAccess"); + XSimpleFileAccess xSimpleFileAccess = UnoRuntime.queryInterface(XSimpleFileAccess.class, xUcbInterface); + ReturnPath = _sFirstPath + _sSecondPath; + bexists = xSimpleFileAccess.exists(ReturnPath); + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + return PropertyNames.EMPTY_STRING; + } + if (!bexists) + { + throw new NoValidPathException(xMSF, PropertyNames.EMPTY_STRING); + } + return ReturnPath; + } + + /** + * We search in all given path for a given file + */ + private static String addPath(String _sPath, String _sPath2) + { + String sNewPath; + if (!_sPath.endsWith("/")) + { + _sPath += "/"; + } + if (_sPath2.startsWith("/")) + { + _sPath2 = _sPath2.substring(1); + } + sNewPath = _sPath + _sPath2; + return sNewPath; + } + + public static String getPathFromList(XMultiServiceFactory xMSF, ArrayList<String> _aList, String _sFile) + { + String sFoundFile = PropertyNames.EMPTY_STRING; + try + { + XInterface xInterface = (XInterface) xMSF.createInstance("com.sun.star.ucb.SimpleFileAccess"); + com.sun.star.ucb.XSimpleFileAccess xSimpleFileAccess = UnoRuntime.queryInterface(XSimpleFileAccess.class, xInterface); + + for (int i = 0; i < _aList.size(); i++) + { + String sPath = _aList.get(i); + sPath = addPath(sPath, _sFile); + if (xSimpleFileAccess.exists(sPath)) + { + sFoundFile = sPath; + } + } + } + catch (com.sun.star.uno.Exception e) + { + } + return sFoundFile; + } + + public static String[][] getFolderTitles(com.sun.star.lang.XMultiServiceFactory xMSF, String _sStartFilterName, ArrayList<String> FolderNames) + throws NoValidPathException + { + return getFolderTitles(xMSF, _sStartFilterName, FolderNames, PropertyNames.EMPTY_STRING); + } + + private static String getTitle(XMultiServiceFactory xMSF, String _sFile) + { + String sTitle = PropertyNames.EMPTY_STRING; + try + { + XInterface xDocInterface = (XInterface) xMSF.createInstance("com.sun.star.document.DocumentProperties"); + XDocumentProperties xDocProps = UnoRuntime.queryInterface(XDocumentProperties.class, xDocInterface); + PropertyValue[] noArgs = { }; + xDocProps.loadFromMedium(_sFile, noArgs); + sTitle = xDocProps.getTitle(); + } + catch (Exception e) + { + } + return sTitle; + } + + public static String[][] getFolderTitles(com.sun.star.lang.XMultiServiceFactory xMSF, String _sStartFilterName, ArrayList<String> FolderName, String _sEndFilterName) + throws NoValidPathException + { + String[][] LocLayoutFiles = new String[2][]; + if (FolderName.isEmpty()) + { + throw new NoValidPathException(null, "Path not given."); + } + ArrayList<String> TitleVector = new ArrayList<String>(); + ArrayList<String> URLVector = new ArrayList<String>(); + + com.sun.star.ucb.XSimpleFileAccess xSimpleFileAccess = null; + try + { + XInterface xInterface = (XInterface) xMSF.createInstance("com.sun.star.ucb.SimpleFileAccess"); + xSimpleFileAccess = UnoRuntime.queryInterface(XSimpleFileAccess.class, xInterface); + } + catch (com.sun.star.uno.Exception e) + { + throw new NoValidPathException(null, "Internal error.", e); + } + + for (int j = 0; j < FolderName.size(); j++) + { + String sFolderName = FolderName.get(j); + + try + { + String[] nameList = xSimpleFileAccess.getFolderContents(sFolderName, false); + _sStartFilterName = _sStartFilterName == null || _sStartFilterName.equals(PropertyNames.EMPTY_STRING) ? null : _sStartFilterName + "-"; + + String fileName = PropertyNames.EMPTY_STRING; + for (int i = 0; i < nameList.length; i++) + { + fileName = getFilename(nameList[i]); + String sTitle; + + if (_sStartFilterName == null || fileName.startsWith(_sStartFilterName)) + { + if (_sEndFilterName.equals(PropertyNames.EMPTY_STRING)) + { + sTitle = getTitle(xMSF, nameList[i]); + } + else if (fileName.endsWith(_sEndFilterName)) + { + fileName = fileName.replaceAll(_sEndFilterName + "$", PropertyNames.EMPTY_STRING); + sTitle = fileName; + } + else + { + // no or wrong (start|end) filter + continue; + } + URLVector.add(nameList[i]); + TitleVector.add(sTitle); + } + } + } + catch (com.sun.star.ucb.CommandAbortedException exception) + { + exception.printStackTrace(System.err); + } + catch (com.sun.star.uno.Exception e) + { + } + } + + String[] LocNameList = new String[URLVector.size()]; + String[] LocTitleList = new String[TitleVector.size()]; + + // LLA: we have to check if this works + URLVector.toArray(LocNameList); + TitleVector.toArray(LocTitleList); + + LocLayoutFiles[1] = LocNameList; + LocLayoutFiles[0] = LocTitleList; + + JavaTools.bubblesortList(LocLayoutFiles); + + return LocLayoutFiles; + } + private XSimpleFileAccess2 fileAccess; + + public FileAccess(XMultiServiceFactory xmsf) throws com.sun.star.uno.Exception + { + //get a simple file access... + Object fa = xmsf.createInstance("com.sun.star.ucb.SimpleFileAccess"); + fileAccess = UnoRuntime.queryInterface(XSimpleFileAccess2.class, fa); + //get the file identifier converter + Object fcv = xmsf.createInstance("com.sun.star.ucb.FileContentProvider"); + UnoRuntime.queryInterface(XFileIdentifierConverter.class, fcv); + } + + /** + * @return the extension of the given filename. + */ + private static String getExtension(String filename) + { + int p = filename.indexOf('.'); + if (p == -1) + { + return PropertyNames.EMPTY_STRING; + } + else + { + do + { + filename = filename.substring(p + 1); + } + while ((p = filename.indexOf('.')) > -1); + } + return filename; + } + + /** + * @param def what to return in case of an exception + * @return true if the given file exists or not. + * if an exception occurs, returns the default value. + */ + public boolean exists(String filename, boolean def) + { + try + { + return fileAccess.exists(filename); + } + catch (CommandAbortedException e) + { + } + catch (Exception e) + { + } + + return def; + } + + public static String getFilename(String path) + { + return getFilename(path, "/"); + } + + private static String getFilename(String path, String pathSeparator) + { + String[] s = JavaTools.ArrayoutofString(path, pathSeparator); + return s[s.length - 1]; + } + + public static String getBasename(String path, String pathSeparator) + { + String filename = getFilename(path, pathSeparator); + String sExtension = getExtension(filename); + return filename.substring(0, filename.length() - (sExtension.length() + 1)); + } + + public static String[] getDataFromTextFile(XMultiServiceFactory _xMSF, String _filepath) + { + String[] sFileData = null; + try + { + Vector<String> oDataVector = new Vector<String>(); + Object oSimpleFileAccess = _xMSF.createInstance("com.sun.star.ucb.SimpleFileAccess"); + XSimpleFileAccess xSimpleFileAccess = UnoRuntime.queryInterface(XSimpleFileAccess.class, oSimpleFileAccess); + if (xSimpleFileAccess.exists(_filepath)) + { + XInputStream xInputStream = xSimpleFileAccess.openFileRead(_filepath); + Object oTextInputStream = _xMSF.createInstance("com.sun.star.io.TextInputStream"); + XTextInputStream xTextInputStream = UnoRuntime.queryInterface(XTextInputStream.class, oTextInputStream); + XActiveDataSink xActiveDataSink = UnoRuntime.queryInterface(XActiveDataSink.class, oTextInputStream); + xActiveDataSink.setInputStream(xInputStream); + while (!xTextInputStream.isEOF()) + { + oDataVector.addElement( xTextInputStream.readLine()); + } + xTextInputStream.closeInput(); + sFileData = new String[oDataVector.size()]; + oDataVector.toArray(sFileData); + + } + } + catch (Exception e) + { + e.printStackTrace(System.err); + } + return sFileData; + } + +} diff --git a/wizards/com/sun/star/wizards/common/FileAccess.py b/wizards/com/sun/star/wizards/common/FileAccess.py new file mode 100644 index 000000000..c58f6d4b4 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/FileAccess.py @@ -0,0 +1,226 @@ +# +# 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 + +from os import sep as FileSeparator + +''' +This class delivers static convenience methods +to use with ucb SimpleFileAccess service. +You can also instantiate the class, to encapsulate +some functionality of SimpleFileAccess. The instance +keeps a reference to an XSimpleFileAccess and an +XFileIdentifierConverter, saves the permanent +overhead of querying for those interfaces, and delivers +convenience methods for using them. +These Convenience methods include mainly Exception-handling. +''' + +class FileAccess(object): + + def __init__(self, xmsf): + #get the file identifier converter + self.filenameConverter = xmsf.createInstance( + "com.sun.star.ucb.FileContentProvider") + self.xInterface = xmsf.createInstance( + "com.sun.star.ucb.SimpleFileAccess") + + @classmethod + def deleteLastSlashfromUrl(self, _sPath): + if _sPath.endswith("/"): + return _sPath[:-1] + else: + return _sPath + + ''' + Further information on arguments value see in OO Developer Guide, + chapter 6.2.7 + @param xMSF + @param sPath + @param xSimpleFileAccess + @return the respective path of the office application. + A probable following "/" at the end is trimmed. + ''' + + @classmethod + def getOfficePath(self, xMSF, sPath, xSimpleFileAccess): + try: + ResultPath = "" + xInterface = xMSF.createInstance("com.sun.star.util.PathSettings") + ResultPath = str(getattr(xInterface, sPath)) + ResultPath = self.deleteLastSlashfromUrl(ResultPath) + return ResultPath + except Exception: + traceback.print_exc() + return "" + + @classmethod + def getFolderTitles(self, xMSF, FilterName, FolderName, resDict=None): + #Returns and ordered dict containing the template's name and path + + locLayoutFiles = [] + try: + xDocInterface = xMSF.createInstance( + "com.sun.star.document.DocumentProperties") + xInterface = xMSF.createInstance( + "com.sun.star.ucb.SimpleFileAccess") + nameList = xInterface.getFolderContents(FolderName, False) + if FilterName is None or FilterName == "": + FilterName = None + else: + FilterName += "-" + + locLayoutDict = {} + for i in nameList: + fileName = self.getFilename(i) + if FilterName is None or fileName.startswith(FilterName): + xDocInterface.loadFromMedium(i, tuple()) + if resDict is None: + title = xDocInterface.Title + else: + if xDocInterface.Title in resDict: + # localise string at runtime + title = resDict[xDocInterface.Title] + else: + title = xDocInterface.Title + locLayoutDict[title] = i + + #sort the dictionary and create a list containing the + #keys list and the values list + keysList = sorted(locLayoutDict.keys()) + valuesList= [] + for i in keysList: + valuesList.append(locLayoutDict[i]) + locLayoutFiles.append(keysList) + locLayoutFiles.append(valuesList) + except Exception: + traceback.print_exc() + + return locLayoutFiles + + @classmethod + def getTitle(self, xMSF, _sFile): + sTitle = "" + try: + xDocInterface = xMSF.createInstance( + "com.sun.star.document.DocumentProperties") + noArgs = [] + xDocInterface.loadFromMedium(_sFile, noArgs) + sTitle = xDocInterface.getTitle() + except Exception: + traceback.print_exc() + + return sTitle + + def getPath(self, parentURL, childURL): + string = "" + if childURL is not None and childURL != "": + string = "/" + childURL + return self.filenameConverter.getSystemPathFromFileURL( + parentURL + string) + + def copy(self, source, target): + try: + self.xInterface.copy(source, target) + return True + except Exception: + traceback.print_exc() + return False + + def exists(self, filename, default): + try: + return self.xInterface.exists(filename) + except Exception: + traceback.print_exc() + return default + + def delete(self, filename): + try: + self.xInterface.kill(filename) + return True + except Exception: + traceback.print_exc() + return False + + # lists the files in a given directory + # @param dir + # @param includeFolders + # @return + def listFiles(self, folder, includeFolders): + try: + return self.xInterface.getFolderContents(folder, includeFolders) + except Exception: + traceback.print_exc() + return [""] + + def getSize(self, url): + try: + return self.xInterface.getSize(url) + except Exception: + traceback.print_exc() + return -1 + + def getURL(self, parentURL, childPath): + if len(childPath) > 0 and childPath[0] == "/": + path = parentURL + childPath + else: + path = parentURL + "/" + childPath + return path + + @classmethod + def getFilename(self, path, pathSeparator = "/"): + return path.split(pathSeparator)[-1] + + ''' + if the path points to file, gives the directory in which the file is. + ''' + + @classmethod + def getParentDir(self, url): + while url[-1] == "/": + url = url[:-1] + return url[:url.rfind("/")] + + @classmethod + def connectURLs(self, urlFolder, urlFilename): + stringFolder = "" + stringFileName = urlFilename + if not urlFolder.endswith("/"): + stringFolder = "/" + if urlFilename.startswith("/"): + stringFileName = urlFilename[1:] + return urlFolder + stringFolder + stringFileName + + # @param filename + # @return the extension of the given filename. + @classmethod + def getExtension(self, filename): + p = filename.find(".") + if (p == -1): + return "" + else: + while (True): + filename = filename[(p+1):] + p = filename.find(".") + if (p == -1): + break + return filename + + @classmethod + def filename(self, name, ext, i): + return name + ("" if (i == 0) else str(i)) + ("" if (ext == "") else ("." + ext)) diff --git a/wizards/com/sun/star/wizards/common/HelpIds.java b/wizards/com/sun/star/wizards/common/HelpIds.java new file mode 100644 index 000000000..2c1ae4fc7 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/HelpIds.java @@ -0,0 +1,1040 @@ +/* + * 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 . + */ +package com.sun.star.wizards.common; + +public class HelpIds +{ + private static String array1[] = new String[] + { + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID0_HELP", // HID:34201 + "HID:WIZARDS_HID0_NEXT", // HID:34202 + "HID:WIZARDS_HID0_PREV", // HID:34203 + "HID:WIZARDS_HID0_CREATE", // HID:34204 + "HID:WIZARDS_HID0_CANCEL", // HID:34205 + "HID:WIZARDS_HID0_STATUS_DIALOG", // HID:34206 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID2_BTN_DOC_UP", // HID:34213 + "HID:WIZARDS_HID2_BTN_DOC_DOWN", // HID:34214 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID2_STATUS_ADD_DOCS", // HID:34219 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID3_IL_LAYOUTS_IMG10", // HID:34229 + "HID:WIZARDS_HID3_IL_LAYOUTS_IMG11", // HID:34230 + "HID:WIZARDS_HID3_IL_LAYOUTS_IMG12", // HID:34231 + "HID:WIZARDS_HID3_IL_LAYOUTS_IMG13", // HID:34232 + "HID:WIZARDS_HID3_IL_LAYOUTS_IMG14", // HID:34233 + "HID:WIZARDS_HID3_IL_LAYOUTS_IMG15", // HID:34234 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_BG_BTN_OK", // HID:34293 + "HID:WIZARDS_HID_BG_BTN_CANCEL", // HID:34294 + "HID:WIZARDS_HID_BG_BTN_BACK", // HID:34295 + "HID:WIZARDS_HID_BG_BTN_FW", // HID:34296 + "HID:WIZARDS_HID_BG_BTN_IMG1", // HID:34297 + "HID:WIZARDS_HID_BG_BTN_IMG2", // HID:34298 + "HID:WIZARDS_HID_BG_BTN_IMG3", // HID:34299 + "HID:WIZARDS_HID_BG_BTN_IMG4", // HID:34300 + "HID:WIZARDS_HID_BG_BTN_IMG5", // HID:34301 + "HID:WIZARDS_HID_BG_BTN_IMG6", // HID:34302 + "HID:WIZARDS_HID_BG_BTN_IMG7", // HID:34303 + "HID:WIZARDS_HID_BG_BTN_IMG8", // HID:34304 + "HID:WIZARDS_HID_BG_BTN_IMG9", // HID:34305 + "HID:WIZARDS_HID_BG_BTN_IMG10", // HID:34306 + "HID:WIZARDS_HID_BG_BTN_IMG11", // HID:34307 + "HID:WIZARDS_HID_BG_BTN_IMG12", // HID:34308 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGREPORT_DIALOG", // HID:34320 + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGREPORT_0_CMDPREV", // HID:34322 + "HID:WIZARDS_HID_DLGREPORT_0_CMDNEXT", // HID:34323 + "HID:WIZARDS_HID_DLGREPORT_0_CMDFINISH", // HID:34324 + "HID:WIZARDS_HID_DLGREPORT_0_CMDCANCEL", // HID:34325 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGREPORT_1_LBTABLES", // HID:34330 + "HID:WIZARDS_HID_DLGREPORT_1_FIELDSAVAILABLE", // HID:34331 + "HID:WIZARDS_HID_DLGREPORT_1_CMDMOVESELECTED", // HID:34332 + "HID:WIZARDS_HID_DLGREPORT_1_CMDMOVEALL", // HID:34333 + "HID:WIZARDS_HID_DLGREPORT_1_CMDREMOVESELECTED", // HID:34334 + "HID:WIZARDS_HID_DLGREPORT_1_CMDREMOVEALL", // HID:34335 + "HID:WIZARDS_HID_DLGREPORT_1_FIELDSSELECTED", // HID:34336 + "HID:WIZARDS_HID_DLGREPORT_1_CMDMOVEUP", // HID:34337 + "HID:WIZARDS_HID_DLGREPORT_1_CMDMOVEDOWN", // HID:34338 + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGREPORT_2_GROUPING", // HID:34340 + "HID:WIZARDS_HID_DLGREPORT_2_CMDGROUP", // HID:34341 + PropertyNames.EMPTY_STRING, // HID:34342 empty, no moveall button + "HID:WIZARDS_HID_DLGREPORT_2_CMDUNGROUP", // HID:34343 + PropertyNames.EMPTY_STRING, // HID:34344 empty, no removeall button + "HID:WIZARDS_HID_DLGREPORT_2_PREGROUPINGDEST", // HID:34345 + "HID:WIZARDS_HID_DLGREPORT_2_CMDMOVEUPGROUP", // HID:34346 + "HID:WIZARDS_HID_DLGREPORT_2_CMDMOVEDOWNGROUP", // HID:34347 + "HID:WIZARDS_HID_DLGREPORT_3_SORT1", // HID:34348 + "HID:WIZARDS_HID_DLGREPORT_3_OPTASCEND1", // HID:34349 + "HID:WIZARDS_HID_DLGREPORT_3_OPTDESCEND1", // HID:34350 + "HID:WIZARDS_HID_DLGREPORT_3_SORT2", // HID:34351 + "HID:WIZARDS_HID_DLGREPORT_3_OPTASCEND2", // HID:34352 + "HID:WIZARDS_HID_DLGREPORT_3_OPTDESCEND2", // HID:34353 + "HID:WIZARDS_HID_DLGREPORT_3_SORT3", // HID:34354 + "HID:WIZARDS_HID_DLGREPORT_3_OPTASCEND3", // HID:34355 + "HID:WIZARDS_HID_DLGREPORT_3_OPTDESCEND3", // HID:34356 + "HID:WIZARDS_HID_DLGREPORT_3_SORT4", // HID:34357 + "HID:WIZARDS_HID_DLGREPORT_3_OPTASCEND4", // HID:34358 + "HID:WIZARDS_HID_DLGREPORT_3_OPTDESCEND4", // HID:34359 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGREPORT_4_TITLE", // HID:34362 + "HID:WIZARDS_HID_DLGREPORT_4_DATALAYOUT", // HID:34363 + "HID:WIZARDS_HID_DLGREPORT_4_PAGELAYOUT", // HID:34364 + "HID:WIZARDS_HID_DLGREPORT_4_LANDSCAPE", // HID:34365 + "HID:WIZARDS_HID_DLGREPORT_4_PORTRAIT", // HID:34366 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGREPORT_5_OPTDYNTEMPLATE", // HID:34370 + "HID:WIZARDS_HID_DLGREPORT_5_OPTSTATDOCUMENT", // HID:34371 + "HID:WIZARDS_HID_DLGREPORT_5_TXTTEMPLATEPATH", // HID:34372 + "HID:WIZARDS_HID_DLGREPORT_5_CMDTEMPLATEPATH", // HID:34373 + "HID:WIZARDS_HID_DLGREPORT_5_OPTEDITTEMPLATE", // HID:34374 + "HID:WIZARDS_HID_DLGREPORT_5_OPTUSETEMPLATE", // HID:34375 + "HID:WIZARDS_HID_DLGREPORT_5_TXTDOCUMENTPATH", // HID:34376 + "HID:WIZARDS_HID_DLGREPORT_5_CMDDOCUMENTPATH", // HID:34377 + "HID:WIZARDS_HID_DLGREPORT_5_CHKLINKTODB", // HID:34378 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGREPORT_6_TXTTITLE_1", // HID:34381 + "HID:WIZARDS_HID_DLGREPORT_6_TXTTITLE_2", // HID:34382 + "HID:WIZARDS_HID_DLGREPORT_6_TXTTITLE_3", // HID:34383 + "HID:WIZARDS_HID_DLGREPORT_6_TXTTITLE_4", // HID:34384 + "HID:WIZARDS_HID_DLGREPORT_6_TXTTITLE_5", // HID:34385 + "HID:WIZARDS_HID_DLGREPORT_6_TXTTITLE_6", // HID:34386 + "HID:WIZARDS_HID_DLGREPORT_6_TXTTITLE_7", // HID:34387 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGFORM_DIALOG", // HID:34400 + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGFORM_CMDPREV", // HID:34402 + "HID:WIZARDS_HID_DLGFORM_CMDNEXT", // HID:34403 + "HID:WIZARDS_HID_DLGFORM_CMDFINISH", // HID:34404 + "HID:WIZARDS_HID_DLGFORM_CMDCANCEL", // HID:34405 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGFORM_MASTER_LBTABLES", // HID:34411 + "HID:WIZARDS_HID_DLGFORM_MASTER_FIELDSAVAILABLE", // HID:34412 + "HID:WIZARDS_HID_DLGFORM_MASTER_CMDMOVESELECTED", // HID:34413 + "HID:WIZARDS_HID_DLGFORM_MASTER_CMDMOVEALL", // HID:34414 + "HID:WIZARDS_HID_DLGFORM_MASTER_CMDREMOVESELECTED", // HID:34415 + "HID:WIZARDS_HID_DLGFORM_MASTER_CMDREMOVEALL", // HID:34416 + "HID:WIZARDS_HID_DLGFORM_MASTER_FIELDSSELECTED", // HID:34417 + "HID:WIZARDS_HID_DLGFORM_MASTER_CMDMOVEUP", // HID:34418 + "HID:WIZARDS_HID_DLGFORM_MASTER_CMDMOVEDOWN", // HID:34419 + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGFORM_CHKCREATESUBFORM", // HID:34421 + "HID:WIZARDS_HID_DLGFORM_OPTONEXISTINGRELATION", // HID:34422 + "HID:WIZARDS_HID_DLGFORM_OPTSELECTMANUALLY", // HID:34423 + "HID:WIZARDS_HID_DLGFORM_lstRELATIONS", // HID:34424 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGFORM_SUB_LBTABLES", // HID:34431 + "HID:WIZARDS_HID_DLGFORM_SUB_FIELDSAVAILABLE", // HID:34432 + "HID:WIZARDS_HID_DLGFORM_SUB_CMDMOVESELECTED", // HID:34433 + "HID:WIZARDS_HID_DLGFORM_SUB_CMDMOVEALL", // HID:34434 + "HID:WIZARDS_HID_DLGFORM_SUB_CMDREMOVESELECTED", // HID:34435 + "HID:WIZARDS_HID_DLGFORM_SUB_CMDREMOVEALL", // HID:34436 + "HID:WIZARDS_HID_DLGFORM_SUB_FIELDSSELECTED", // HID:34437 + "HID:WIZARDS_HID_DLGFORM_SUB_CMDMOVEUP", // HID:34438 + "HID:WIZARDS_HID_DLGFORM_SUB_CMDMOVEDOWN", // HID:34439 + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTSLAVELINK1", // HID:34441 + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTMASTERLINK1", // HID:34442 + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTSLAVELINK2", // HID:34443 + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTMASTERLINK2", // HID:34444 + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTSLAVELINK3", // HID:34445 + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTMASTERLINK3", // HID:34446 + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTSLAVELINK4", // HID:34447 + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTMASTERLINK4", // HID:34448 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGFORM_CMDALIGNLEFT", // HID:34451 + "HID:WIZARDS_HID_DLGFORM_CMDALIGNRIGHT", // HID:34452 + "HID:WIZARDS_HID_DLGFORM_CMDLEFTLABELED", // HID:34453 + "HID:WIZARDS_HID_DLGFORM_CMDTOPLABELED", // HID:34454 + "HID:WIZARDS_HID_DLGFORM_CMDTABLESTYLE", // HID:34455 + "HID:WIZARDS_HID_DLGFORM_CMDTOPJUSTIFIED", // HID:34456 + "HID:WIZARDS_HID_DLGFORM_CMDLEFTLABELED2", // HID:34457 + "HID:WIZARDS_HID_DLGFORM_CMDTOPLABELED2", // HID:34458 + "HID:WIZARDS_HID_DLGFORM_CMDTABLESTYLE2", // HID:34459 + "HID:WIZARDS_HID_DLGFORM_CMDTOPJUSTIFIED2", // HID:34460 + "HID:WIZARDS_HID_DLGFORM_OPTNEWDATAONLY", // HID:34461 + "HID:WIZARDS_HID_DLGFORM_OPTDISPLAYALLDATA", // HID:34462 + "HID:WIZARDS_HID_DLGFORM_CHKNOMODIFICATION", // HID:34463 + "HID:WIZARDS_HID_DLGFORM_CHKNODELETION", // HID:34464 + "HID:WIZARDS_HID_DLGFORM_CHKNOADDITION", // HID:34465 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGFORM_LSTSTYLES", // HID:34471 + "HID:WIZARDS_HID_DLGFORM_CMDNOBORDER", // HID:34472 + "HID:WIZARDS_HID_DLGFORM_CMD3DBORDER", // HID:34473 + "HID:WIZARDS_HID_DLGFORM_CMDSIMPLEBORDER", // HID:34474 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGFORM_TXTPATH", // HID:34481 + "HID:WIZARDS_HID_DLGFORM_OPTWORKWITHFORM", // HID:34482 + "HID:WIZARDS_HID_DLGFORM_OPTMODIFYFORM", // HID:34483 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGNEWSLTR_DIALOG", // HID:34500 + "HID:WIZARDS_HID_DLGNEWSLTR_OPTSTANDARDLAYOUT", // HID:34501 + "HID:WIZARDS_HID_DLGNEWSLTR_OPTPARTYLAYOUT", // HID:34502 + "HID:WIZARDS_HID_DLGNEWSLTR_OPTBROCHURELAYOUT", // HID:34503 + "HID:WIZARDS_HID_DLGNEWSLTR_OPTSINGLESIDED", // HID:34504 + "HID:WIZARDS_HID_DLGNEWSLTR_OPTDOUBLESIDED", // HID:34505 + "HID:WIZARDS_HID_DLGNEWSLTR_CMDGOON", // HID:34506 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGDEPOT_DIALOG_SELLBUY", // HID:34520 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTSTOCKID_SELLBUY", // HID:34521 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTQUANTITY", // HID:34522 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTRATE", // HID:34523 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTDATE", // HID:34524 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTCOMMISSION", // HID:34525 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTFIX", // HID:34526 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTMINIMUM", // HID:34527 + "HID:WIZARDS_HID_DLGDEPOT_0_CMDCANCEL_SELLBUY", // HID:34528 + "HID:WIZARDS_HID_DLGDEPOT_0_CMDGOON_SELLBUY", // HID:34529 + "HID:WIZARDS_HID_DLGDEPOT_1_LSTSELLSTOCKS", // HID:34530 + "HID:WIZARDS_HID_DLGDEPOT_2_LSTBUYSTOCKS", // HID:34531 + "HID:WIZARDS_HID_DLGDEPOT_DIALOG_SPLIT", // HID:34532 + "HID:WIZARDS_HID_DLGDEPOT_0_LSTSTOCKNAMES", // HID:34533 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTSTOCKID_SPLIT", // HID:34534 + "HID:WIZARDS_HID_DLGDEPOT_0_CMDCANCEL_SPLIT", // HID:34535 + "HID:WIZARDS_HID_DLGDEPOT_0_CMDGOON_SPLIT", // HID:34536 + "HID:WIZARDS_HID_DLGDEPOT_1_OPTPERSHARE", // HID:34537 + "HID:WIZARDS_HID_DLGDEPOT_1_OPTTOTAL", // HID:34538 + "HID:WIZARDS_HID_DLGDEPOT_1_TXTDIVIDEND", // HID:34539 + "HID:WIZARDS_HID_DLGDEPOT_2_TXTOLDRATE", // HID:34540 + "HID:WIZARDS_HID_DLGDEPOT_2_TXTNEWRATE", // HID:34541 + "HID:WIZARDS_HID_DLGDEPOT_2_TXTDATE", // HID:34542 + "HID:WIZARDS_HID_DLGDEPOT_3_TXTSTARTDATE", // HID:34543 + "HID:WIZARDS_HID_DLGDEPOT_3_TXTENDDATE", // HID:34544 + "HID:WIZARDS_HID_DLGDEPOT_3_OPTDAILY", // HID:34545 + "HID:WIZARDS_HID_DLGDEPOT_3_OPTWEEKLY", // HID:34546 + "HID:WIZARDS_HID_DLGDEPOT_DIALOG_HISTORY", // HID:34547 + "HID:WIZARDS_HID_DLGDEPOT_LSTMARKETS", // HID:34548 + "HID:WIZARDS_HID_DLGDEPOT_0_CMDCANCEL_HISTORY", // HID:34549 + "HID:WIZARDS_HID_DLGDEPOT_0_CMDGOON_HISTORY", // HID:34550 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGIMPORT_DIALOG", // HID:34570 + "HID:WIZARDS_HID_DLGIMPORT_0_CMDHELP", // HID:34571 + "HID:WIZARDS_HID_DLGIMPORT_0_CMDCANCEL", // HID:34572 + "HID:WIZARDS_HID_DLGIMPORT_0_CMDPREV", // HID:34573 + "HID:WIZARDS_HID_DLGIMPORT_0_CMDNEXT", // HID:34574 + "HID:WIZARDS_HID_DLGIMPORT_0_OPTSODOCUMENTS", // HID:34575 + "HID:WIZARDS_HID_DLGIMPORT_0_OPTMSDOCUMENTS", // HID:34576 + "HID:WIZARDS_HID_DLGIMPORT_0_CHKLOGFILE", // HID:34577 + "HID:WIZARDS_HID_DLGIMPORT_2_CHKWORD", // HID:34578 + "HID:WIZARDS_HID_DLGIMPORT_2_CHKEXCEL", // HID:34579 + "HID:WIZARDS_HID_DLGIMPORT_2_CHKPOWERPOINT", // HID:34580 + "HID:WIZARDS_HID_DLGIMPORT_2_CBTEMPLATE", // HID:34581 + "HID:WIZARDS_HID_DLGIMPORT_2_CBTEMPLATERECURSE", // HID:34582 + "HID:WIZARDS_HID_DLGIMPORT_2_LBTEMPLATEPATH", // HID:34583 + "HID:WIZARDS_HID_DLGIMPORT_2_EDTEMPLATEPATH", // HID:34584 + "HID:WIZARDS_HID_DLGIMPORT_2_CMDTEMPLATEPATHSELECT", // HID:34585 + "HID:WIZARDS_HID_DLGIMPORT_2_CBDOCUMENT", // HID:34586 + "HID:WIZARDS_HID_DLGIMPORT_2_CBDOCUMENTRECURSE", // HID:34587 + "HID:WIZARDS_HID_DLGIMPORT_2_LBDOCUMENTPATH", // HID:34588 + "HID:WIZARDS_HID_DLGIMPORT_2_EDDOCUMENTPATH", // HID:34589 + "HID:WIZARDS_HID_DLGIMPORT_2_CMDDOCUMENTPATHSELECT", // HID:34590 + "HID:WIZARDS_HID_DLGIMPORT_2_LBEXPORTDOCUMENTPATH", // HID:34591 + "HID:WIZARDS_HID_DLGIMPORT_2_EDEXPORTDOCUMENTPATH", // HID:34592 + "HID:WIZARDS_HID_DLGIMPORT_2_CMDEXPORTPATHSELECT", // HID:34593 + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGIMPORT_3_TBSUMMARY", // HID:34595 + "HID:WIZARDS_HID_DLGIMPORT_0_CHKWRITER", // HID:34596 + "HID:WIZARDS_HID_DLGIMPORT_0_CHKCALC", // HID:34597 + "HID:WIZARDS_HID_DLGIMPORT_0_CHKIMPRESS", // HID:34598 + "HID:WIZARDS_HID_DLGIMPORT_0_CHKMATHGLOBAL", // HID:34599 + "HID:WIZARDS_HID_DLGIMPORT_2_CMDTEMPLATEPATHSELECT2", // HID:34600 + "HID:WIZARDS_HID_DLGIMPORT_2_CMDDOCUMENTPATHSELECT2", // HID:34601 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGCORRESPONDENCE_DIALOG", // HID:34630 + "HID:WIZARDS_HID_DLGCORRESPONDENCE_CANCEL", // HID:34631 + "HID:WIZARDS_HID_DLGCORRESPONDENCE_OPTIONAGENDA1", // HID:34632 + "HID:WIZARDS_HID_DLGCORRESPONDENCE_OPTIONAGENDA2", // HID:34633 + "HID:WIZARDS_HID_DLGCORRESPONDENCE_AGENDAOKAY", // HID:34634 + "HID:WIZARDS_HID_DLGCORRESPONDENCE_OPTIONLETTER1", // HID:34635 + "HID:WIZARDS_HID_DLGCORRESPONDENCE_OPTIONLETTER2", // HID:34636 + "HID:WIZARDS_HID_DLGCORRESPONDENCE_LETTEROKAY", // HID:34637 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGSTYLES_DIALOG", // HID:34650 + "HID:WIZARDS_HID_DLGSTYLES_LISTBOX", // HID:34651 + "HID:WIZARDS_HID_DLGSTYLES_CANCEL", // HID:34652 + "HID:WIZARDS_HID_DLGSTYLES_OKAY", // HID:34653 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGCONVERT_DIALOG", // HID:34660 + "HID:WIZARDS_HID_DLGCONVERT_CHECKBOX1", // HID:34661 + "HID:WIZARDS_HID_DLGCONVERT_OPTIONBUTTON1", // HID:34662 + "HID:WIZARDS_HID_DLGCONVERT_OPTIONBUTTON2", // HID:34663 + "HID:WIZARDS_HID_DLGCONVERT_OPTIONBUTTON3", // HID:34664 + "HID:WIZARDS_HID_DLGCONVERT_OPTIONBUTTON4", // HID:34665 + "HID:WIZARDS_HID_DLGCONVERT_LISTBOX1", // HID:34666 + "HID:WIZARDS_HID_DLGCONVERT_OBFILE", // HID:34667 + "HID:WIZARDS_HID_DLGCONVERT_OBDIR", // HID:34668 + "HID:WIZARDS_HID_DLGCONVERT_COMBOBOX1", // HID:34669 + "HID:WIZARDS_HID_DLGCONVERT_TBSOURCE", // HID:34670 + "HID:WIZARDS_HID_DLGCONVERT_CHECKRECURSIVE", // HID:34671 + "HID:WIZARDS_HID_DLGCONVERT_TBTARGET", // HID:34672 + "HID:WIZARDS_HID_DLGCONVERT_CBCANCEL", // HID:34673 + "HID:WIZARDS_HID_DLGCONVERT_CBHELP", // HID:34674 + "HID:WIZARDS_HID_DLGCONVERT_CBBACK", // HID:34675 + "HID:WIZARDS_HID_DLGCONVERT_CBGOON", // HID:34676 + "HID:WIZARDS_HID_DLGCONVERT_CBSOURCEOPEN", // HID:34677 + "HID:WIZARDS_HID_DLGCONVERT_CBTARGETOPEN", // HID:34678 + "HID:WIZARDS_HID_DLGCONVERT_CHKPROTECT", // HID:34679 + "HID:WIZARDS_HID_DLGCONVERT_CHKTEXTDOCUMENTS", // HID:34680 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGPASSWORD_CMDGOON", // HID:34690 + "HID:WIZARDS_HID_DLGPASSWORD_CMDCANCEL", // HID:34691 + "HID:WIZARDS_HID_DLGPASSWORD_CMDHELP", // HID:34692 + "HID:WIZARDS_HID_DLGPASSWORD_TXTPASSWORD", // HID:34693 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGHOLIDAYCAL_DIALOG", // HID:34700 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_PREVIEW", // HID:34701 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_OPYEAR", // HID:34702 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_OPMONTH", // HID:34703 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_EDYEAR", // HID:34704 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_EDMONTH", // HID:34705 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_SPINYEAR", // HID:34706 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_SPINMONTH", // HID:34707 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_CMBSTATE", // HID:34708 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_LBOWNDATA", // HID:34709 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_CMDINSERT", // HID:34710 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_CMDDELETE", // HID:34711 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_EDEVENT", // HID:34712 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_CHKEVENT", // HID:34713 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_EDEVENTDAY", // HID:34714 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_SPINEVENTDAY", // HID:34715 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_EDEVENTMONTH", // HID:34716 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_SPINEVENTMONTH", // HID:34717 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_EDEVENTYEAR", // HID:34718 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_SPINEVENTYEAR", // HID:34719 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_0_CMDOWNDATA", // HID:34720 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_0_CMDCANCEL", // HID:34721 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_0_CMDOK" // HID:34722 + }; + private static String array2[] = new String[] + { + "HID:WIZARDS_HID_LTRWIZ_OPTBUSINESSLETTER", // HID:40769 + "HID:WIZARDS_HID_LTRWIZ_OPTPRIVOFFICIALLETTER", // HID:40770 + "HID:WIZARDS_HID_LTRWIZ_OPTPRIVATELETTER", // HID:40771 + "HID:WIZARDS_HID_LTRWIZ_LSTBUSINESSSTYLE", // HID:40772 + "HID:WIZARDS_HID_LTRWIZ_CHKBUSINESSPAPER", // HID:40773 + "HID:WIZARDS_HID_LTRWIZ_LSTPRIVOFFICIALSTYLE", // HID:40774 + "HID:WIZARDS_HID_LTRWIZ_LSTPRIVATESTYLE", // HID:40775 + "HID:WIZARDS_HID_LTRWIZ_CHKPAPERCOMPANYLOGO", // HID:40776 + "HID:WIZARDS_HID_LTRWIZ_NUMLOGOHEIGHT", // HID:40777 + "HID:WIZARDS_HID_LTRWIZ_NUMLOGOX", // HID:40778 + "HID:WIZARDS_HID_LTRWIZ_NUMLOGOWIDTH", // HID:40779 + "HID:WIZARDS_HID_LTRWIZ_NUMLOGOY", // HID:40780 + "HID:WIZARDS_HID_LTRWIZ_CHKPAPERCOMPANYADDRESS", // HID:40781 + "HID:WIZARDS_HID_LTRWIZ_NUMADDRESSHEIGHT", // HID:40782 + "HID:WIZARDS_HID_LTRWIZ_NUMADDRESSX", // HID:40783 + "HID:WIZARDS_HID_LTRWIZ_NUMADDRESSWIDTH", // HID:40784 + "HID:WIZARDS_HID_LTRWIZ_NUMADDRESSY", // HID:40785 + "HID:WIZARDS_HID_LTRWIZ_CHKCOMPANYRECEIVER", // HID:40786 + "HID:WIZARDS_HID_LTRWIZ_CHKPAPERFOOTER", // HID:40787 + "HID:WIZARDS_HID_LTRWIZ_NUMFOOTERHEIGHT", // HID:40788 + "HID:WIZARDS_HID_LTRWIZ_LSTLETTERNORM", // HID:40789 + "HID:WIZARDS_HID_LTRWIZ_CHKUSELOGO", // HID:40790 + "HID:WIZARDS_HID_LTRWIZ_CHKUSEADDRESSRECEIVER", // HID:40791 + "HID:WIZARDS_HID_LTRWIZ_CHKUSESIGNS", // HID:40792 + "HID:WIZARDS_HID_LTRWIZ_CHKUSESUBJECT", // HID:40793 + "HID:WIZARDS_HID_LTRWIZ_CHKUSESALUTATION", // HID:40794 + "HID:WIZARDS_HID_LTRWIZ_LSTSALUTATION", // HID:40795 + "HID:WIZARDS_HID_LTRWIZ_CHKUSEBENDMARKS", // HID:40796 + "HID:WIZARDS_HID_LTRWIZ_CHKUSEGREETING", // HID:40797 + "HID:WIZARDS_HID_LTRWIZ_LSTGREETING", // HID:40798 + "HID:WIZARDS_HID_LTRWIZ_CHKUSEFOOTER", // HID:40799 + "HID:WIZARDS_HID_LTRWIZ_OPTSENDERPLACEHOLDER", // HID:40800 + "HID:WIZARDS_HID_LTRWIZ_OPTSENDERDEFINE", // HID:40801 + "HID:WIZARDS_HID_LTRWIZ_TXTSENDERNAME", // HID:40802 + "HID:WIZARDS_HID_LTRWIZ_TXTSENDERSTREET", // HID:40803 + "HID:WIZARDS_HID_LTRWIZ_TXTSENDERPOSTCODE", // HID:40804 + "HID:WIZARDS_HID_LTRWIZ_TXTSENDERSTATE_TEXT", // HID:40805 + "HID:WIZARDS_HID_LTRWIZ_TXTSENDERCITY", // HID:40806 + "HID:WIZARDS_HID_LTRWIZ_OPTRECEIVERPLACEHOLDER", // HID:40807 + "HID:WIZARDS_HID_LTRWIZ_OPTRECEIVERDATABASE", // HID:40808 + "HID:WIZARDS_HID_LTRWIZ_TXTFOOTER", // HID:40809 + "HID:WIZARDS_HID_LTRWIZ_CHKFOOTERNEXTPAGES", // HID:40810 + "HID:WIZARDS_HID_LTRWIZ_CHKFOOTERPAGENUMBERS", // HID:40811 + "HID:WIZARDS_HID_LTRWIZ_TXTTEMPLATENAME", // HID:40812 + "HID:WIZARDS_HID_LTRWIZ_OPTCREATELETTER", // HID:40813 + "HID:WIZARDS_HID_LTRWIZ_OPTMAKECHANGES", // HID:40814 + "HID:WIZARDS_HID_LTRWIZ_TXTPATH", // HID:40815 + "HID:WIZARDS_HID_LTRWIZ_CMDPATH", // HID:40816 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_LTRWIZARD", // HID:40820 + "HID:WIZARDS_HID_LTRWIZARD_HELP", // HID:40821 + "HID:WIZARDS_HID_LTRWIZARD_BACK", // HID:40822 + "HID:WIZARDS_HID_LTRWIZARD_NEXT", // HID:40823 + "HID:WIZARDS_HID_LTRWIZARD_CREATE", // HID:40824 + "HID:WIZARDS_HID_LTRWIZARD_CANCEL", // HID:40825 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_QUERYWIZARD_LSTTABLES", // HID:40850 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFIELDS", // HID:40851 + "HID:WIZARDS_HID_QUERYWIZARD_CMDMOVESELECTED", // HID:40852 + "HID:WIZARDS_HID_QUERYWIZARD_CMDMOVEALL", // HID:40853 + "HID:WIZARDS_HID_QUERYWIZARD_CMDREMOVESELECTED", // HID:40854 + "HID:WIZARDS_HID_QUERYWIZARD_CMDREMOVEALL", // HID:40855 + "HID:WIZARDS_HID_QUERYWIZARD_LSTSELFIELDS", // HID:40856 + "HID:WIZARDS_HID_QUERYWIZARD_CMDMOVEUP", // HID:40857 + "HID:WIZARDS_HID_QUERYWIZARD_CMDMOVEDOWN", // HID:40858 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_QUERYWIZARD_SORT1", // HID:40865 + "HID:WIZARDS_HID_QUERYWIZARD_OPTASCEND1", // HID:40866 + "HID:WIZARDS_HID_QUERYWIZARD_OPTDESCEND1", // HID:40867 + "HID:WIZARDS_HID_QUERYWIZARD_SORT2", // HID:40868 + "HID:WIZARDS_HID_QUERYWIZARD_OPTASCEND2", // HID:40869 + "HID:WIZARDS_HID_QUERYWIZARD_OPTDESCEND2", // HID:40870 + "HID:WIZARDS_HID_QUERYWIZARD_SORT3", // HID:40871 + "HID:WIZARDS_HID_QUERYWIZARD_OPTASCEND3", // HID:40872 + "HID:WIZARDS_HID_QUERYWIZARD_OPTDESCEND3", // HID:40873 + "HID:WIZARDS_HID_QUERYWIZARD_SORT4", // HID:40874 + "HID:WIZARDS_HID_QUERYWIZARD_OPTASCEND4", // HID:40875 + "HID:WIZARDS_HID_QUERYWIZARD_OPTDESCEND4", // HID:40876 + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_QUERYWIZARD_OPTMATCHALL", // HID:40878 + "HID:WIZARDS_HID_QUERYWIZARD_OPTMATCHANY", // HID:40879 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFIELDNAME_1", // HID:40880 + "HID:WIZARDS_HID_QUERYWIZARD_LSTOPERATOR_1", // HID:40881 + "HID:WIZARDS_HID_QUERYWIZARD_TXTVALUE_1", // HID:40882 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFIELDNAME_2", // HID:40883 + "HID:WIZARDS_HID_QUERYWIZARD_LSTOPERATOR_2", // HID:40884 + "HID:WIZARDS_HID_QUERYWIZARD_TXTVALUE_2", // HID:40885 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFIELDNAME_3", // HID:40886 + "HID:WIZARDS_HID_QUERYWIZARD_LSTOPERATOR_3", // HID:40887 + "HID:WIZARDS_HID_QUERYWIZARD_TXTVALUE_3", // HID:40888 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_QUERYWIZARD_OPTAGGREGATEDETAILQUERY", // HID:40895 + "HID:WIZARDS_HID_QUERYWIZARD_OPTAGGREGATESUMMARYQUERY", // HID:40896 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFUNCTION_1", // HID:40897 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFIELDS_1", // HID:40898 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFUNCTION_2", // HID:40899 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFIELDS_2", // HID:40900 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFUNCTION_3", // HID:40901 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFIELDS_3", // HID:40902 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFUNCTION_4", // HID:40903 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFIELDS_4", // HID:40904 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFUNCTION_5", // HID:40905 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFIELDS_5", // HID:40906 + "HID:WIZARDS_HID_QUERYWIZARD_BTNAGGREGATEPLUS", // HID:40907 + "HID:WIZARDS_HID_QUERYWIZARD_BTNAGGREGATEMINUS", // HID:40908 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTERFIELDS", // HID:40915 + "HID:WIZARDS_HID_QUERYWIZARD_CMDFILTERMOVESELECTED", // HID:40916 + PropertyNames.EMPTY_STRING, // HID:40917 empty, no moveall button + "HID:WIZARDS_HID_QUERYWIZARD_CMDFILTERREMOVESELECTED", // HID:40918 + PropertyNames.EMPTY_STRING, // HID:40919 empty no removeall button + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTERSELFIELDS", // HID:40920 + "HID:WIZARDS_HID_QUERYWIZARD_CMDFILTERMOVEUP", // HID:409121 + "HID:WIZARDS_HID_QUERYWIZARD_CMDFILTERMOVEDOWN", // HID:40922 + "HID:WIZARDS_HID_QUERYWIZARD_OPTGROUPMATCHALL", // HID:40923 + "HID:WIZARDS_HID_QUERYWIZARD_OPTGROUPMATCHANY", // HID:40924 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTERFIELDNAME_1", // HID:40925 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTEROPERATOR_1", // HID:40926 + "HID:WIZARDS_HID_QUERYWIZARD_TXTFILTERVALUE_1", // HID:40927 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTERFIELDNAME_2", // HID:40928 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTEROPERATOR_2", // HID:40929 + "HID:WIZARDS_HID_QUERYWIZARD_TXTFILTERVALUE_2", // HID:40930 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTERFIELDNAME_3", // HID:40931 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTEROPERATOR_3", // HID:40932 + "HID:WIZARDS_HID_QUERYWIZARD_TXTFILTERVALUE_3", // HID:40933 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_QUERYWIZARD_TXTTITLE_1", // HID:40940 + "HID:WIZARDS_HID_QUERYWIZARD_TXTTITLE_2", // HID:40941 + "HID:WIZARDS_HID_QUERYWIZARD_TXTTITLE_3", // HID:40942 + "HID:WIZARDS_HID_QUERYWIZARD_TXTTITLE_4", // HID:40943 + "HID:WIZARDS_HID_QUERYWIZARD_TXTTITLE_5", // HID:40944 + "HID:WIZARDS_HID_QUERYWIZARD_TXTTITLE_6", // HID:40945 + "HID:WIZARDS_HID_QUERYWIZARD_TXTTITLE_7", // HID:40946 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_QUERYWIZARD_TXTQUERYTITLE", // HID:40955 + "HID:WIZARDS_HID_QUERYWIZARD_OPTDISPLAYQUERY", // HID:40956 + "HID:WIZARDS_HID_QUERYWIZARD_OPTMODIFYQUERY", // HID:40957 + "HID:WIZARDS_HID_QUERYWIZARD_TXTSUMMARY", // HID:40958 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_QUERYWIZARD", // HID:40970 + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_QUERYWIZARD_BACK", // HID:40972 + "HID:WIZARDS_HID_QUERYWIZARD_NEXT", // HID:40973 + "HID:WIZARDS_HID_QUERYWIZARD_CREATE", // HID:40974 + "HID:WIZARDS_HID_QUERYWIZARD_CANCEL", // HID:40975 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_IS_BTN_OK", // HID:41003 + "HID:WIZARDS_HID_IS_BTN_CANCEL", // HID:41004 + "HID:WIZARDS_HID_IS_BTN_IMG1", // HID:41005 + "HID:WIZARDS_HID_IS_BTN_IMG2", // HID:41006 + "HID:WIZARDS_HID_IS_BTN_IMG3", // HID:41007 + "HID:WIZARDS_HID_IS_BTN_IMG4", // HID:41008 + "HID:WIZARDS_HID_IS_BTN_IMG5", // HID:41009 + "HID:WIZARDS_HID_IS_BTN_IMG6", // HID:41010 + "HID:WIZARDS_HID_IS_BTN_IMG7", // HID:41011 + "HID:WIZARDS_HID_IS_BTN_IMG8", // HID:41012 + "HID:WIZARDS_HID_IS_BTN_IMG9", // HID:41013 + "HID:WIZARDS_HID_IS_BTN_IMG10", // HID:41014 + "HID:WIZARDS_HID_IS_BTN_IMG11", // HID:41015 + "HID:WIZARDS_HID_IS_BTN_IMG12", // HID:41016 + "HID:WIZARDS_HID_IS_BTN_IMG13", // HID:41017 + "HID:WIZARDS_HID_IS_BTN_IMG14", // HID:41018 + "HID:WIZARDS_HID_IS_BTN_IMG15", // HID:41019 + "HID:WIZARDS_HID_IS_BTN_IMG16", // HID:41020 + "HID:WIZARDS_HID_IS_BTN_IMG17", // HID:41021 + "HID:WIZARDS_HID_IS_BTN_IMG18", // HID:41022 + "HID:WIZARDS_HID_IS_BTN_IMG19", // HID:41023 + "HID:WIZARDS_HID_IS_BTN_IMG20", // HID:41024 + "HID:WIZARDS_HID_IS_BTN_IMG21", // HID:41025 + "HID:WIZARDS_HID_IS_BTN_IMG22", // HID:41026 + "HID:WIZARDS_HID_IS_BTN_IMG23", // HID:41027 + "HID:WIZARDS_HID_IS_BTN_IMG24", // HID:41028 + "HID:WIZARDS_HID_IS_BTN_IMG25", // HID:41029 + "HID:WIZARDS_HID_IS_BTN_IMG26", // HID:41030 + "HID:WIZARDS_HID_IS_BTN_IMG27", // HID:41031 + "HID:WIZARDS_HID_IS_BTN_IMG28", // HID:41032 + "HID:WIZARDS_HID_IS_BTN_IMG29", // HID:41033 + "HID:WIZARDS_HID_IS_BTN_IMG30", // HID:41034 + "HID:WIZARDS_HID_IS_BTN_IMG31", // HID:41035 + "HID:WIZARDS_HID_IS_BTN_IMG32", // HID:41036 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_FTP_OK", // HID:41047 + "HID:WIZARDS_HID_FTP_CANCEL", // HID:41048 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_AGWIZ", // HID:41051 + "HID:WIZARDS_HID_AGWIZ_HELP", // HID:41052 + "HID:WIZARDS_HID_AGWIZ_NEXT", // HID:41053 + "HID:WIZARDS_HID_AGWIZ_PREV", // HID:41054 + "HID:WIZARDS_HID_AGWIZ_CREATE", // HID:41055 + "HID:WIZARDS_HID_AGWIZ_CANCEL", // HID:41056 + "HID:WIZARDS_HID_AGWIZ_1_LIST_PAGEDESIGN", // HID:41057 + "HID:WIZARDS_HID_AGWIZ_1_CHK_MINUTES", // HID:41058 + "HID:WIZARDS_HID_AGWIZ_2_TXT_TIME", // HID:41059 + "HID:WIZARDS_HID_AGWIZ_2_TXT_DATE", // HID:41060 + "HID:WIZARDS_HID_AGWIZ_2_TXT_TITLE", // HID:41061 + "HID:WIZARDS_HID_AGWIZ_2_TXT_LOCATION", // HID:41062 + "HID:WIZARDS_HID_AGWIZ_3_CHK_MEETING_TYPE", // HID:41063 + "HID:WIZARDS_HID_AGWIZ_3_CHK_READ", // HID:41064 + "HID:WIZARDS_HID_AGWIZ_3_CHK_BRING", // HID:41065 + "HID:WIZARDS_HID_AGWIZ_3_CHK_NOTES", // HID:41066 + "HID:WIZARDS_HID_AGWIZ_4_CHK_CALLED_BY", // HID:41067 + "HID:WIZARDS_HID_AGWIZ_4_CHK_FACILITATOR", // HID:41068 + "HID:WIZARDS_HID_AGWIZ_4_CHK_NOTETAKER", // HID:41069 + "HID:WIZARDS_HID_AGWIZ_4_CHK_TIMEKEEPER", // HID:41070 + "HID:WIZARDS_HID_AGWIZ_4_CHK_ATTENDEES", // HID:41071 + "HID:WIZARDS_HID_AGWIZ_4_CHK_OBSERVERS", // HID:41072 + "HID:WIZARDS_HID_AGWIZ_4_CHK_RESOURCEPERSONS", // HID:41073 + "HID:WIZARDS_HID_AGWIZ_6_TXT_TEMPLATENAME", // HID:41074 + "HID:WIZARDS_HID_AGWIZ_6_TXT_TEMPLATEPATH", // HID:41075 + "HID:WIZARDS_HID_AGWIZ_6_BTN_TEMPLATEPATH", // HID:41076 + "HID:WIZARDS_HID_AGWIZ_6_OPT_CREATEAGENDA", // HID:41077 + "HID:WIZARDS_HID_AGWIZ_6_OPT_MAKECHANGES", // HID:41078 + "HID:WIZARDS_HID_AGWIZ_5_BTN_INSERT", // HID:41079 + "HID:WIZARDS_HID_AGWIZ_5_BTN_REMOVE", // HID:41080 + "HID:WIZARDS_HID_AGWIZ_5_BTN_UP", // HID:41081 + "HID:WIZARDS_HID_AGWIZ_5_BTN_DOWN", // HID:41082 + "HID:WIZARDS_HID_AGWIZ_5_SCROLL_BAR", // HID:41083 + "HID:WIZARDS_HID_AGWIZ_5_TXT_TOPIC_1", // HID:41084 + "HID:WIZARDS_HID_AGWIZ_5_TXT_RESPONSIBLE_1", // HID:41085 + "HID:WIZARDS_HID_AGWIZ_5_TXT_MINUTES_1", // HID:41086 + "HID:WIZARDS_HID_AGWIZ_5_TXT_TOPIC_2", // HID:41087 + "HID:WIZARDS_HID_AGWIZ_5_TXT_RESPONSIBLE_2", // HID:41088 + "HID:WIZARDS_HID_AGWIZ_5_TXT_MINUTES_2", // HID:41089 + "HID:WIZARDS_HID_AGWIZ_5_TXT_TOPIC_3", // HID:41090 + "HID:WIZARDS_HID_AGWIZ_5_TXT_RESPONSIBLE_3", // HID:41091 + "HID:WIZARDS_HID_AGWIZ_5_TXT_MINUTES_3", // HID:41092 + "HID:WIZARDS_HID_AGWIZ_5_TXT_TOPIC_4", // HID:41093 + "HID:WIZARDS_HID_AGWIZ_5_TXT_RESPONSIBLE_4", // HID:41094 + "HID:WIZARDS_HID_AGWIZ_5_TXT_MINUTES_4", // HID:41095 + "HID:WIZARDS_HID_AGWIZ_5_TXT_TOPIC_5", // HID:41096 + "HID:WIZARDS_HID_AGWIZ_5_TXT_RESPONSIBLE_5", // HID:41097 + "HID:WIZARDS_HID_AGWIZ_5_TXT_MINUTES_5", // HID:41098 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_FAXWIZ_OPTBUSINESSFAX", // HID:41120 + "HID:WIZARDS_HID_FAXWIZ_LSTBUSINESSSTYLE", // HID:41121 + "HID:WIZARDS_HID_FAXWIZ_OPTPRIVATEFAX", // HID:41122 + "HID:WIZARDS_HID_LSTPRIVATESTYLE", // HID:41123 + "HID:WIZARDS_HID_IMAGECONTROL3", // HID:41124 + "HID:WIZARDS_HID_CHKUSELOGO", // HID:41125 + "HID:WIZARDS_HID_CHKUSEDATE", // HID:41126 + "HID:WIZARDS_HID_CHKUSECOMMUNICATIONTYPE", // HID:41127 + "HID:WIZARDS_HID_LSTCOMMUNICATIONTYPE", // HID:41128 + "HID:WIZARDS_HID_CHKUSESUBJECT", // HID:41129 + "HID:WIZARDS_HID_CHKUSESALUTATION", // HID:41130 + "HID:WIZARDS_HID_LSTSALUTATION", // HID:41131 + "HID:WIZARDS_HID_CHKUSEGREETING", // HID:41132 + "HID:WIZARDS_HID_LSTGREETING", // HID:41133 + "HID:WIZARDS_HID_CHKUSEFOOTER", // HID:41134 + "HID:WIZARDS_HID_OPTSENDERPLACEHOLDER", // HID:41135 + "HID:WIZARDS_HID_OPTSENDERDEFINE", // HID:41136 + "HID:WIZARDS_HID_TXTSENDERNAME", // HID:41137 + "HID:WIZARDS_HID_TXTSENDERSTREET", // HID:41138 + "HID:WIZARDS_HID_TXTSENDERPOSTCODE", // HID:41139 + "HID:WIZARDS_HID_TXTSENDERSTATE", // HID:41140 + "HID:WIZARDS_HID_TXTSENDERCITY", // HID:41141 + "HID:WIZARDS_HID_TXTSENDERFAX", // HID:41142 + "HID:WIZARDS_HID_OPTRECEIVERPLACEHOLDER", // HID:41143 + "HID:WIZARDS_HID_OPTRECEIVERDATABASE", // HID:41144 + "HID:WIZARDS_HID_TXTFOOTER", // HID:41145 + "HID:WIZARDS_HID_CHKFOOTERNEXTPAGES", // HID:41146 + "HID:WIZARDS_HID_CHKFOOTERPAGENUMBERS", // HID:41147 + "HID:WIZARDS_HID_TXTTEMPLATENAME", // HID:41148 + "HID:WIZARDS_HID_FILETEMPLATEPATH", // HID:41149 + "HID:WIZARDS_HID_OPTCREATEFAX", // HID:41150 + "HID:WIZARDS_HID_OPTMAKECHANGES", // HID:41151 + "HID:WIZARDS_HID_IMAGECONTROL2", // HID:41152 + "HID:WIZARDS_HID_FAXWIZ_TXTPATH", // HID:41153 + "HID:WIZARDS_HID_FAXWIZ_CMDPATH", // HID:41154 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_FAXWIZARD", // HID:41180 + "HID:WIZARDS_HID_FAXWIZARD_HELP", // HID:41181 + "HID:WIZARDS_HID_FAXWIZARD_BACK", // HID:41182 + "HID:WIZARDS_HID_FAXWIZARD_NEXT", // HID:41183 + "HID:WIZARDS_HID_FAXWIZARD_CREATE", // HID:41184 + "HID:WIZARDS_HID_FAXWIZARD_CANCEL", // HID:41185 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGTABLE_DIALOG", // HID:41200 + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGTABLE_CMDPREV", // HID:41202 + "HID:WIZARDS_HID_DLGTABLE_CMDNEXT", // HID:41203 + "HID:WIZARDS_HID_DLGTABLE_CMDFINISH", // HID:41204 + "HID:WIZARDS_HID_DLGTABLE_CMDCANCEL", // HID:41205 + "HID:WIZARDS_HID_DLGTABLE_OPTBUSINESS", // HID:41206 + "HID:WIZARDS_HID_DLGTABLE_OPTPRIVATE", // HID:41207 + "HID:WIZARDS_HID_DLGTABLE_LBTABLES", // HID:41208 + "HID:WIZARDS_HID_DLGTABLE_FIELDSAVAILABLE", // HID:41209 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVESELECTED", // HID:41210 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVEALL", // HID:41211 + "HID:WIZARDS_HID_DLGTABLE_CMDREMOVESELECTED", // HID:41212 + "HID:WIZARDS_HID_DLGTABLE_CMDREMOVEALL", // HID:41213 + "HID:WIZARDS_HID_DLGTABLE_FIELDSSELECTED", // HID:41214 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVEUP", // HID:41215 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVEDOWN", // HID:41216 + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + PropertyNames.EMPTY_STRING, + "HID:WIZARDS_HID_DLGTABLE_LB_SELFIELDNAMES", // HID:41220 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVEFIELDUP", // HID:41221 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVEFIELDDOWN", // HID:41222 + "HID:WIZARDS_HID_DLGTABLE_CMDMINUS", // HID:41223 + "HID:WIZARDS_HID_DLGTABLE_CMDPLUS", // HID:41224 + "HID:WIZARDS_HID_DLGTABLE_COLNAME", // HID:41225 + "HID:WIZARDS_HID_DLGTABLE_COLMODIFIER", // HID:41226 + "HID:WIZARDS_HID_DLGTABLE_CHK_USEPRIMEKEY", // HID:41227 + "HID:WIZARDS_HID_DLGTABLE_OPT_PK_AUTOMATIC", // HID:41228 + "HID:WIZARDS_HID_DLGTABLE_CK_PK_AUTOVALUE_AUTOMATIC", // HID:41229 + "HID:WIZARDS_HID_DLGTABLE_OPT_PK_SINGLE", // HID:41230 + "HID:WIZARDS_HID_DLGTABLE_LB_PK_FIELDNAME", // HID:41231 + "HID:WIZARDS_HID_DLGTABLE_CK_PK_AUTOVALUE", // HID:41232 + "HID:WIZARDS_HID_DLGTABLE_OPT_PK_SEVERAL", // HID:41233 + "HID:WIZARDS_HID_DLGTABLE_FIELDS_PK_AVAILABLE", // HID:41234 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVE_PK_SELECTED", // HID:41235 + PropertyNames.EMPTY_STRING, // HID:41236 empty, no moveall button + "HID:WIZARDS_HID_DLGTABLE_CMDREMOVE_PK_SELECTED", // HID:41237 + PropertyNames.EMPTY_STRING, // HID:41238 empty, no removeall button + "HID:WIZARDS_HID_DLGTABLE_FIELDS_PK_SELECTED", // HID:41239 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVEUP_PK_SELECTED", // HID:41240 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVEDOWN_PK_SELECTED", // HID:41241 + "HID:WIZARDS_HID_DLGTABLE_TXT_NAME", // HID:41242 + "HID:WIZARDS_HID_DLGTABLE_OPT_MODIFYTABLE", // HID:41243 + "HID:WIZARDS_HID_DLGTABLE_OPT_WORKWITHTABLE", // HID:41244 + "HID:WIZARDS_HID_DLGTABLE_OPT_STARTFORMWIZARD", // HID:41245 + "HID:WIZARDS_HID_DLGTABLE_LST_CATALOG", // HID:41246 + "HID:WIZARDS_HID_DLGTABLE_LST_SCHEMA" // HID:41247 + }; + + public static String getHelpIdString( int nHelpId ) + { + if ( nHelpId >= 34200 && nHelpId <= 34722 ) + return array1[ nHelpId - 34200 ]; + else if ( nHelpId >= 40769 && nHelpId <= 41245 ) + return array2[ nHelpId - 40769 ]; + else + return ""; + } +} diff --git a/wizards/com/sun/star/wizards/common/HelpIds.py b/wizards/com/sun/star/wizards/common/HelpIds.py new file mode 100644 index 000000000..971fc149c --- /dev/null +++ b/wizards/com/sun/star/wizards/common/HelpIds.py @@ -0,0 +1,1028 @@ +# +# 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 HelpIds: + array1 = [ + "HID:WIZARDS_HID0_HELP", # HID:34201 + "HID:WIZARDS_HID0_NEXT", # HID:34202 + "HID:WIZARDS_HID0_PREV", # HID:34203 + "HID:WIZARDS_HID0_CREATE", # HID:34204 + "HID:WIZARDS_HID0_CANCEL", # HID:34205 + "HID:WIZARDS_HID0_STATUS_DIALOG", # HID:34206 + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID2_BTN_DOC_UP", # HID:34213 + "HID:WIZARDS_HID2_BTN_DOC_DOWN", # HID:34214 + "", + "", + "", + "", + "HID:WIZARDS_HID2_STATUS_ADD_DOCS", # HID:34219 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID3_IL_LAYOUTS_IMG10", # HID:34229 + "HID:WIZARDS_HID3_IL_LAYOUTS_IMG11", # HID:34230 + "HID:WIZARDS_HID3_IL_LAYOUTS_IMG12", # HID:34231 + "HID:WIZARDS_HID3_IL_LAYOUTS_IMG13", # HID:34232 + "HID:WIZARDS_HID3_IL_LAYOUTS_IMG14", # HID:34233 + "HID:WIZARDS_HID3_IL_LAYOUTS_IMG15", # HID:34234 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_BG_BTN_OK", # HID:34293 + "HID:WIZARDS_HID_BG_BTN_CANCEL", # HID:34294 + "HID:WIZARDS_HID_BG_BTN_BACK", # HID:34295 + "HID:WIZARDS_HID_BG_BTN_FW", # HID:34296 + "HID:WIZARDS_HID_BG_BTN_IMG1", # HID:34297 + "HID:WIZARDS_HID_BG_BTN_IMG2", # HID:34298 + "HID:WIZARDS_HID_BG_BTN_IMG3", # HID:34299 + "HID:WIZARDS_HID_BG_BTN_IMG4", # HID:34300 + "HID:WIZARDS_HID_BG_BTN_IMG5", # HID:34301 + "HID:WIZARDS_HID_BG_BTN_IMG6", # HID:34302 + "HID:WIZARDS_HID_BG_BTN_IMG7", # HID:34303 + "HID:WIZARDS_HID_BG_BTN_IMG8", # HID:34304 + "HID:WIZARDS_HID_BG_BTN_IMG9", # HID:34305 + "HID:WIZARDS_HID_BG_BTN_IMG10", # HID:34306 + "HID:WIZARDS_HID_BG_BTN_IMG11", # HID:34307 + "HID:WIZARDS_HID_BG_BTN_IMG12", # HID:34308 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGREPORT_DIALOG", # HID:34320 + "", + "HID:WIZARDS_HID_DLGREPORT_0_CMDPREV", # HID:34322 + "HID:WIZARDS_HID_DLGREPORT_0_CMDNEXT", # HID:34323 + "HID:WIZARDS_HID_DLGREPORT_0_CMDFINISH", # HID:34324 + "HID:WIZARDS_HID_DLGREPORT_0_CMDCANCEL", # HID:34325 + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGREPORT_1_LBTABLES", # HID:34330 + "HID:WIZARDS_HID_DLGREPORT_1_FIELDSAVAILABLE", # HID:34331 + "HID:WIZARDS_HID_DLGREPORT_1_CMDMOVESELECTED", # HID:34332 + "HID:WIZARDS_HID_DLGREPORT_1_CMDMOVEALL", # HID:34333 + "HID:WIZARDS_HID_DLGREPORT_1_CMDREMOVESELECTED", # HID:34334 + "HID:WIZARDS_HID_DLGREPORT_1_CMDREMOVEALL", # HID:34335 + "HID:WIZARDS_HID_DLGREPORT_1_FIELDSSELECTED", # HID:34336 + "HID:WIZARDS_HID_DLGREPORT_1_CMDMOVEUP", # HID:34337 + "HID:WIZARDS_HID_DLGREPORT_1_CMDMOVEDOWN", # HID:34338 + "", + "HID:WIZARDS_HID_DLGREPORT_2_GROUPING", # HID:34340 + "HID:WIZARDS_HID_DLGREPORT_2_CMDGROUP", # HID:34341 + "HID:WIZARDS_HID_DLGREPORT_2_CMDUNGROUP", # HID:34342 + "HID:WIZARDS_HID_DLGREPORT_2_PREGROUPINGDEST", # HID:34343 + "HID:WIZARDS_HID_DLGREPORT_2_CMDMOVEUPGROUP", # HID:34344 + "HID:WIZARDS_HID_DLGREPORT_2_CMDMOVEDOWNGROUP", # HID:34345 + "HID:WIZARDS_HID_DLGREPORT_3_SORT1", # HID:34346 + "HID:WIZARDS_HID_DLGREPORT_3_OPTASCEND1", # HID:34347 + "HID:WIZARDS_HID_DLGREPORT_3_OPTDESCEND1", # HID:34348 + "HID:WIZARDS_HID_DLGREPORT_3_SORT2", # HID:34349 + "HID:WIZARDS_HID_DLGREPORT_3_OPTASCEND2", # HID:34350 + "HID:WIZARDS_HID_DLGREPORT_3_OPTDESCEND2", # HID:34351 + "HID:WIZARDS_HID_DLGREPORT_3_SORT3", # HID:34352 + "HID:WIZARDS_HID_DLGREPORT_3_OPTASCEND3", # HID:34353 + "HID:WIZARDS_HID_DLGREPORT_3_OPTDESCEND3", # HID:34354 + "HID:WIZARDS_HID_DLGREPORT_3_SORT4", # HID:34355 + "HID:WIZARDS_HID_DLGREPORT_3_OPTASCEND4", # HID:34356 + "HID:WIZARDS_HID_DLGREPORT_3_OPTDESCEND4", # HID:34357 + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGREPORT_4_TITLE", # HID:34362 + "HID:WIZARDS_HID_DLGREPORT_4_DATALAYOUT", # HID:34363 + "HID:WIZARDS_HID_DLGREPORT_4_PAGELAYOUT", # HID:34364 + "HID:WIZARDS_HID_DLGREPORT_4_LANDSCAPE", # HID:34365 + "HID:WIZARDS_HID_DLGREPORT_4_PORTRAIT", # HID:34366 + "", + "", + "", + "HID:WIZARDS_HID_DLGREPORT_5_OPTDYNTEMPLATE", # HID:34370 + "HID:WIZARDS_HID_DLGREPORT_5_OPTSTATDOCUMENT", # HID:34371 + "HID:WIZARDS_HID_DLGREPORT_5_TXTTEMPLATEPATH", # HID:34372 + "HID:WIZARDS_HID_DLGREPORT_5_CMDTEMPLATEPATH", # HID:34373 + "HID:WIZARDS_HID_DLGREPORT_5_OPTEDITTEMPLATE", # HID:34374 + "HID:WIZARDS_HID_DLGREPORT_5_OPTUSETEMPLATE", # HID:34375 + "HID:WIZARDS_HID_DLGREPORT_5_TXTDOCUMENTPATH", # HID:34376 + "HID:WIZARDS_HID_DLGREPORT_5_CMDDOCUMENTPATH", # HID:34377 + "HID:WIZARDS_HID_DLGREPORT_5_CHKLINKTODB", # HID:34378 + "", + "", + "HID:WIZARDS_HID_DLGREPORT_6_TXTTITLE_1", # HID:34381 + "HID:WIZARDS_HID_DLGREPORT_6_TXTTITLE_2", # HID:34382 + "HID:WIZARDS_HID_DLGREPORT_6_TXTTITLE_3", # HID:34383 + "HID:WIZARDS_HID_DLGREPORT_6_TXTTITLE_4", # HID:34384 + "HID:WIZARDS_HID_DLGREPORT_6_TXTTITLE_5", # HID:34385 + "HID:WIZARDS_HID_DLGREPORT_6_TXTTITLE_6", # HID:34386 + "HID:WIZARDS_HID_DLGREPORT_6_TXTTITLE_7", # HID:34387 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGFORM_DIALOG", # HID:34400 + "", + "HID:WIZARDS_HID_DLGFORM_CMDPREV", # HID:34402 + "HID:WIZARDS_HID_DLGFORM_CMDNEXT", # HID:34403 + "HID:WIZARDS_HID_DLGFORM_CMDFINISH", # HID:34404 + "HID:WIZARDS_HID_DLGFORM_CMDCANCEL", # HID:34405 + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGFORM_MASTER_LBTABLES", # HID:34411 + "HID:WIZARDS_HID_DLGFORM_MASTER_FIELDSAVAILABLE", # HID:34412 + "HID:WIZARDS_HID_DLGFORM_MASTER_CMDMOVESELECTED", # HID:34413 + "HID:WIZARDS_HID_DLGFORM_MASTER_CMDMOVEALL", # HID:34414 + "HID:WIZARDS_HID_DLGFORM_MASTER_CMDREMOVESELECTED", # HID:34415 + "HID:WIZARDS_HID_DLGFORM_MASTER_CMDREMOVEALL", # HID:34416 + "HID:WIZARDS_HID_DLGFORM_MASTER_FIELDSSELECTED", # HID:34417 + "HID:WIZARDS_HID_DLGFORM_MASTER_CMDMOVEUP", # HID:34418 + "HID:WIZARDS_HID_DLGFORM_MASTER_CMDMOVEDOWN", # HID:34419 + "", + "HID:WIZARDS_HID_DLGFORM_CHKCREATESUBFORM", # HID:34421 + "HID:WIZARDS_HID_DLGFORM_OPTONEXISTINGRELATION", # HID:34422 + "HID:WIZARDS_HID_DLGFORM_OPTSELECTMANUALLY", # HID:34423 + "HID:WIZARDS_HID_DLGFORM_lstRELATIONS", # HID:34424 + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGFORM_SUB_LBTABLES", # HID:34431 + "HID:WIZARDS_HID_DLGFORM_SUB_FIELDSAVAILABLE", # HID:34432 + "HID:WIZARDS_HID_DLGFORM_SUB_CMDMOVESELECTED", # HID:34433 + "HID:WIZARDS_HID_DLGFORM_SUB_CMDMOVEALL", # HID:34434 + "HID:WIZARDS_HID_DLGFORM_SUB_CMDREMOVESELECTED", # HID:34435 + "HID:WIZARDS_HID_DLGFORM_SUB_CMDREMOVEALL", # HID:34436 + "HID:WIZARDS_HID_DLGFORM_SUB_FIELDSSELECTED", # HID:34437 + "HID:WIZARDS_HID_DLGFORM_SUB_CMDMOVEUP", # HID:34438 + "HID:WIZARDS_HID_DLGFORM_SUB_CMDMOVEDOWN", # HID:34439 + "", + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTSLAVELINK1", # HID:34441 + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTMASTERLINK1", # HID:34442 + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTSLAVELINK2", # HID:34443 + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTMASTERLINK2", # HID:34444 + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTMASTERLINK3", # HID:34446 + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTSLAVELINK4", # HID:34447 + "HID:WIZARDS_HID_DLGFORM_LINKER_LSTMASTERLINK4", # HID:34448 + "", + "", + "HID:WIZARDS_HID_DLGFORM_CMDALIGNLEFT", # HID:34451 + "HID:WIZARDS_HID_DLGFORM_CMDALIGNRIGHT", # HID:34452 + "HID:WIZARDS_HID_DLGFORM_CMDLEFTLABELED", # HID:34453 + "HID:WIZARDS_HID_DLGFORM_CMDTOPLABELED", # HID:34454 + "HID:WIZARDS_HID_DLGFORM_CMDTABLESTYLE", # HID:34455 + "HID:WIZARDS_HID_DLGFORM_CMDTOPJUSTIFIED", # HID:34456 + "HID:WIZARDS_HID_DLGFORM_CMDLEFTLABELED2", # HID:34457 + "HID:WIZARDS_HID_DLGFORM_CMDTOPLABELED2", # HID:34458 + "HID:WIZARDS_HID_DLGFORM_CMDTABLESTYLE2", # HID:34459 + "HID:WIZARDS_HID_DLGFORM_CMDTOPJUSTIFIED2", # HID:34460 + "HID:WIZARDS_HID_DLGFORM_OPTNEWDATAONLY", # HID:34461 + "HID:WIZARDS_HID_DLGFORM_OPTDISPLAYALLDATA", # HID:34462 + "HID:WIZARDS_HID_DLGFORM_CHKNOMODIFICATION", # HID:34463 + "HID:WIZARDS_HID_DLGFORM_CHKNODELETION", # HID:34464 + "HID:WIZARDS_HID_DLGFORM_CHKNOADDITION", # HID:34465 + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGFORM_LSTSTYLES", # HID:34471 + "HID:WIZARDS_HID_DLGFORM_CMDNOBORDER", # HID:34472 + "HID:WIZARDS_HID_DLGFORM_CMD3DBORDER", # HID:34473 + "HID:WIZARDS_HID_DLGFORM_CMDSIMPLEBORDER", # HID:34474 + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGFORM_TXTPATH", # HID:34481 + "HID:WIZARDS_HID_DLGFORM_OPTWORKWITHFORM", # HID:34482 + "HID:WIZARDS_HID_DLGFORM_OPTMODIFYFORM", # HID:34483 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGNEWSLTR_DIALOG", # HID:34500 + "HID:WIZARDS_HID_DLGNEWSLTR_OPTSTANDARDLAYOUT", # HID:34501 + "HID:WIZARDS_HID_DLGNEWSLTR_OPTPARTYLAYOUT", # HID:34502 + "HID:WIZARDS_HID_DLGNEWSLTR_OPTBROCHURELAYOUT", # HID:34503 + "HID:WIZARDS_HID_DLGNEWSLTR_OPTSINGLESIDED", # HID:34504 + "HID:WIZARDS_HID_DLGNEWSLTR_OPTDOUBLESIDED", # HID:34505 + "HID:WIZARDS_HID_DLGNEWSLTR_CMDGOON", # HID:34506 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGDEPOT_DIALOG_SELLBUY", # HID:34520 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTSTOCKID_SELLBUY", # HID:34521 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTQUANTITY", # HID:34522 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTRATE", # HID:34523 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTDATE", # HID:34524 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTCOMMISSION", # HID:34525 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTFIX", # HID:34526 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTMINIMUM", # HID:34527 + "HID:WIZARDS_HID_DLGDEPOT_0_CMDCANCEL_SELLBUY", # HID:34528 + "HID:WIZARDS_HID_DLGDEPOT_0_CMDGOON_SELLBUY", # HID:34529 + "HID:WIZARDS_HID_DLGDEPOT_1_LSTSELLSTOCKS", # HID:34530 + "HID:WIZARDS_HID_DLGDEPOT_2_LSTBUYSTOCKS", # HID:34531 + "HID:WIZARDS_HID_DLGDEPOT_DIALOG_SPLIT", # HID:34532 + "HID:WIZARDS_HID_DLGDEPOT_0_LSTSTOCKNAMES", # HID:34533 + "HID:WIZARDS_HID_DLGDEPOT_0_TXTSTOCKID_SPLIT", # HID:34534 + "HID:WIZARDS_HID_DLGDEPOT_0_CMDCANCEL_SPLIT", # HID:34535 + "HID:WIZARDS_HID_DLGDEPOT_0_CMDGOON_SPLIT", # HID:34536 + "HID:WIZARDS_HID_DLGDEPOT_1_OPTPERSHARE", # HID:34537 + "HID:WIZARDS_HID_DLGDEPOT_1_OPTTOTAL", # HID:34538 + "HID:WIZARDS_HID_DLGDEPOT_1_TXTDIVIDEND", # HID:34539 + "HID:WIZARDS_HID_DLGDEPOT_2_TXTOLDRATE", # HID:34540 + "HID:WIZARDS_HID_DLGDEPOT_2_TXTNEWRATE", # HID:34541 + "HID:WIZARDS_HID_DLGDEPOT_2_TXTDATE", # HID:34542 + "HID:WIZARDS_HID_DLGDEPOT_3_TXTSTARTDATE", # HID:34543 + "HID:WIZARDS_HID_DLGDEPOT_3_TXTENDDATE", # HID:34544 + "HID:WIZARDS_HID_DLGDEPOT_3_OPTDAILY", # HID:34545 + "HID:WIZARDS_HID_DLGDEPOT_3_OPTWEEKLY", # HID:34546 + "HID:WIZARDS_HID_DLGDEPOT_DIALOG_HISTORY", # HID:34547 + "HID:WIZARDS_HID_DLGDEPOT_LSTMARKETS", # HID:34548 + "HID:WIZARDS_HID_DLGDEPOT_0_CMDCANCEL_HISTORY", # HID:34549 + "HID:WIZARDS_HID_DLGDEPOT_0_CMDGOON_HISTORY", # HID:34550 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGIMPORT_DIALOG", # HID:34570 + "HID:WIZARDS_HID_DLGIMPORT_0_CMDHELP", # HID:34571 + "HID:WIZARDS_HID_DLGIMPORT_0_CMDCANCEL", # HID:34572 + "HID:WIZARDS_HID_DLGIMPORT_0_CMDPREV", # HID:34573 + "HID:WIZARDS_HID_DLGIMPORT_0_CMDNEXT", # HID:34574 + "HID:WIZARDS_HID_DLGIMPORT_0_OPTSODOCUMENTS", # HID:34575 + "HID:WIZARDS_HID_DLGIMPORT_0_OPTMSDOCUMENTS", # HID:34576 + "HID:WIZARDS_HID_DLGIMPORT_0_CHKLOGFILE", # HID:34577 + "HID:WIZARDS_HID_DLGIMPORT_2_CHKWORD", # HID:34578 + "HID:WIZARDS_HID_DLGIMPORT_2_CHKEXCEL", # HID:34579 + "HID:WIZARDS_HID_DLGIMPORT_2_CHKPOWERPOINT", # HID:34580 + "HID:WIZARDS_HID_DLGIMPORT_2_CBTEMPLATE", # HID:34581 + "HID:WIZARDS_HID_DLGIMPORT_2_CBTEMPLATERECURSE", # HID:34582 + "HID:WIZARDS_HID_DLGIMPORT_2_LBTEMPLATEPATH", # HID:34583 + "HID:WIZARDS_HID_DLGIMPORT_2_EDTEMPLATEPATH", # HID:34584 + "HID:WIZARDS_HID_DLGIMPORT_2_CMDTEMPLATEPATHSELECT", # HID:34585 + "HID:WIZARDS_HID_DLGIMPORT_2_CBDOCUMENT", # HID:34586 + "HID:WIZARDS_HID_DLGIMPORT_2_CBDOCUMENTRECURSE", # HID:34587 + "HID:WIZARDS_HID_DLGIMPORT_2_LBDOCUMENTPATH", # HID:34588 + "HID:WIZARDS_HID_DLGIMPORT_2_EDDOCUMENTPATH", # HID:34589 + "HID:WIZARDS_HID_DLGIMPORT_2_CMDDOCUMENTPATHSELECT", # HID:34590 + "HID:WIZARDS_HID_DLGIMPORT_2_LBEXPORTDOCUMENTPATH", # HID:34591 + "HID:WIZARDS_HID_DLGIMPORT_2_EDEXPORTDOCUMENTPATH", # HID:34592 + "HID:WIZARDS_HID_DLGIMPORT_2_CMDEXPORTPATHSELECT", # HID:34593 + "", + "HID:WIZARDS_HID_DLGIMPORT_3_TBSUMMARY", # HID:34595 + "HID:WIZARDS_HID_DLGIMPORT_0_CHKWRITER", # HID:34596 + "HID:WIZARDS_HID_DLGIMPORT_0_CHKCALC", # HID:34597 + "HID:WIZARDS_HID_DLGIMPORT_0_CHKIMPRESS", # HID:34598 + "HID:WIZARDS_HID_DLGIMPORT_0_CHKMATHGLOBAL", # HID:34599 + "HID:WIZARDS_HID_DLGIMPORT_2_CMDTEMPLATEPATHSELECT2", # HID:34600 + "HID:WIZARDS_HID_DLGIMPORT_2_CMDDOCUMENTPATHSELECT2", # HID:34601 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGCORRESPONDENCE_DIALOG", # HID:34630 + "HID:WIZARDS_HID_DLGCORRESPONDENCE_CANCEL", # HID:34631 + "HID:WIZARDS_HID_DLGCORRESPONDENCE_OPTIONAGENDA1", # HID:34632 + "HID:WIZARDS_HID_DLGCORRESPONDENCE_OPTIONAGENDA2", # HID:34633 + "HID:WIZARDS_HID_DLGCORRESPONDENCE_AGENDAOKAY", # HID:34634 + "HID:WIZARDS_HID_DLGCORRESPONDENCE_OPTIONLETTER1", # HID:34635 + "HID:WIZARDS_HID_DLGCORRESPONDENCE_OPTIONLETTER2", # HID:34636 + "HID:WIZARDS_HID_DLGCORRESPONDENCE_LETTEROKAY", # HID:34637 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGSTYLES_DIALOG", # HID:34650 + "HID:WIZARDS_HID_DLGSTYLES_LISTBOX", # HID:34651 + "HID:WIZARDS_HID_DLGSTYLES_CANCEL", # HID:34652 + "HID:WIZARDS_HID_DLGSTYLES_OKAY", # HID:34653 + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGCONVERT_DIALOG", # HID:34660 + "HID:WIZARDS_HID_DLGCONVERT_CHECKBOX1", # HID:34661 + "HID:WIZARDS_HID_DLGCONVERT_OPTIONBUTTON1", # HID:34662 + "HID:WIZARDS_HID_DLGCONVERT_OPTIONBUTTON2", # HID:34663 + "HID:WIZARDS_HID_DLGCONVERT_OPTIONBUTTON3", # HID:34664 + "HID:WIZARDS_HID_DLGCONVERT_OPTIONBUTTON4", # HID:34665 + "HID:WIZARDS_HID_DLGCONVERT_LISTBOX1", # HID:34666 + "HID:WIZARDS_HID_DLGCONVERT_OBFILE", # HID:34667 + "HID:WIZARDS_HID_DLGCONVERT_OBDIR", # HID:34668 + "HID:WIZARDS_HID_DLGCONVERT_COMBOBOX1", # HID:34669 + "HID:WIZARDS_HID_DLGCONVERT_TBSOURCE", # HID:34670 + "HID:WIZARDS_HID_DLGCONVERT_CHECKRECURSIVE", # HID:34671 + "HID:WIZARDS_HID_DLGCONVERT_TBTARGET", # HID:34672 + "HID:WIZARDS_HID_DLGCONVERT_CBCANCEL", # HID:34673 + "HID:WIZARDS_HID_DLGCONVERT_CBHELP", # HID:34674 + "HID:WIZARDS_HID_DLGCONVERT_CBBACK", # HID:34675 + "HID:WIZARDS_HID_DLGCONVERT_CBGOON", # HID:34676 + "HID:WIZARDS_HID_DLGCONVERT_CBSOURCEOPEN", # HID:34677 + "HID:WIZARDS_HID_DLGCONVERT_CBTARGETOPEN", # HID:34678 + "HID:WIZARDS_HID_DLGCONVERT_CHKPROTECT", # HID:34679 + "HID:WIZARDS_HID_DLGCONVERT_CHKTEXTDOCUMENTS", # HID:34680 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGPASSWORD_CMDGOON", # HID:34690 + "HID:WIZARDS_HID_DLGPASSWORD_CMDCANCEL", # HID:34691 + "HID:WIZARDS_HID_DLGPASSWORD_CMDHELP", # HID:34692 + "HID:WIZARDS_HID_DLGPASSWORD_TXTPASSWORD", # HID:34693 + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGHOLIDAYCAL_DIALOG", # HID:34700 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_PREVIEW", # HID:34701 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_OPYEAR", # HID:34702 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_OPMONTH", # HID:34703 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_EDYEAR", # HID:34704 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_EDMONTH", # HID:34705 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_SPINYEAR", # HID:34706 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_SPINMONTH", # HID:34707 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_1_CMBSTATE", # HID:34708 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_LBOWNDATA", # HID:34709 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_CMDINSERT", # HID:34710 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_CMDDELETE", # HID:34711 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_EDEVENT", # HID:34712 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_CHKEVENT", # HID:34713 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_EDEVENTDAY", # HID:34714 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_SPINEVENTDAY", # HID:34715 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_EDEVENTMONTH", # HID:34716 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_SPINEVENTMONTH", # HID:34717 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_EDEVENTYEAR", # HID:34718 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_2_SPINEVENTYEAR", # HID:34719 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_0_CMDOWNDATA", # HID:34720 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_0_CMDCANCEL", # HID:34721 + "HID:WIZARDS_HID_DLGHOLIDAYCAL_0_CMDOK" # HID:34722 + ] + array2 = ["HID:WIZARDS_HID_LTRWIZ_OPTBUSINESSLETTER", # HID:40769 + "HID:WIZARDS_HID_LTRWIZ_OPTPRIVOFFICIALLETTER", # HID:40770 + "HID:WIZARDS_HID_LTRWIZ_OPTPRIVATELETTER", # HID:40771 + "HID:WIZARDS_HID_LTRWIZ_LSTBUSINESSSTYLE", # HID:40772 + "HID:WIZARDS_HID_LTRWIZ_CHKBUSINESSPAPER", # HID:40773 + "HID:WIZARDS_HID_LTRWIZ_LSTPRIVOFFICIALSTYLE", # HID:40774 + "HID:WIZARDS_HID_LTRWIZ_LSTPRIVATESTYLE", # HID:40775 + "HID:WIZARDS_HID_LTRWIZ_CHKPAPERCOMPANYLOGO", # HID:40776 + "HID:WIZARDS_HID_LTRWIZ_NUMLOGOHEIGHT", # HID:40777 + "HID:WIZARDS_HID_LTRWIZ_NUMLOGOX", # HID:40778 + "HID:WIZARDS_HID_LTRWIZ_NUMLOGOWIDTH", # HID:40779 + "HID:WIZARDS_HID_LTRWIZ_NUMLOGOY", # HID:40780 + "HID:WIZARDS_HID_LTRWIZ_CHKPAPERCOMPANYADDRESS", # HID:40781 + "HID:WIZARDS_HID_LTRWIZ_NUMADDRESSHEIGHT", # HID:40782 + "HID:WIZARDS_HID_LTRWIZ_NUMADDRESSX", # HID:40783 + "HID:WIZARDS_HID_LTRWIZ_NUMADDRESSWIDTH", # HID:40784 + "HID:WIZARDS_HID_LTRWIZ_NUMADDRESSY", # HID:40785 + "HID:WIZARDS_HID_LTRWIZ_CHKCOMPANYRECEIVER", # HID:40786 + "HID:WIZARDS_HID_LTRWIZ_CHKPAPERFOOTER", # HID:40787 + "HID:WIZARDS_HID_LTRWIZ_NUMFOOTERHEIGHT", # HID:40788 + "HID:WIZARDS_HID_LTRWIZ_LSTLETTERNORM", # HID:40789 + "HID:WIZARDS_HID_LTRWIZ_CHKUSELOGO", # HID:40790 + "HID:WIZARDS_HID_LTRWIZ_CHKUSEADDRESSRECEIVER", # HID:40791 + "HID:WIZARDS_HID_LTRWIZ_CHKUSESIGNS", # HID:40792 + "HID:WIZARDS_HID_LTRWIZ_CHKUSESUBJECT", # HID:40793 + "HID:WIZARDS_HID_LTRWIZ_CHKUSESALUTATION", # HID:40794 + "HID:WIZARDS_HID_LTRWIZ_LSTSALUTATION", # HID:40795 + "HID:WIZARDS_HID_LTRWIZ_CHKUSEBENDMARKS", # HID:40796 + "HID:WIZARDS_HID_LTRWIZ_CHKUSEGREETING", # HID:40797 + "HID:WIZARDS_HID_LTRWIZ_LSTGREETING", # HID:40798 + "HID:WIZARDS_HID_LTRWIZ_CHKUSEFOOTER", # HID:40799 + "HID:WIZARDS_HID_LTRWIZ_OPTSENDERPLACEHOLDER", # HID:40800 + "HID:WIZARDS_HID_LTRWIZ_OPTSENDERDEFINE", # HID:40801 + "HID:WIZARDS_HID_LTRWIZ_TXTSENDERNAME", # HID:40802 + "HID:WIZARDS_HID_LTRWIZ_TXTSENDERSTREET", # HID:40803 + "HID:WIZARDS_HID_LTRWIZ_TXTSENDERPOSTCODE", # HID:40804 + "HID:WIZARDS_HID_LTRWIZ_TXTSENDERSTATE_TEXT", # HID:40805 + "HID:WIZARDS_HID_LTRWIZ_TXTSENDERCITY", # HID:40806 + "HID:WIZARDS_HID_LTRWIZ_OPTRECEIVERPLACEHOLDER", # HID:40807 + "HID:WIZARDS_HID_LTRWIZ_OPTRECEIVERDATABASE", # HID:40808 + "HID:WIZARDS_HID_LTRWIZ_TXTFOOTER", # HID:40809 + "HID:WIZARDS_HID_LTRWIZ_CHKFOOTERNEXTPAGES", # HID:40810 + "HID:WIZARDS_HID_LTRWIZ_CHKFOOTERPAGENUMBERS", # HID:40811 + "HID:WIZARDS_HID_LTRWIZ_TXTTEMPLATENAME", # HID:40812 + "HID:WIZARDS_HID_LTRWIZ_OPTCREATELETTER", # HID:40813 + "HID:WIZARDS_HID_LTRWIZ_OPTMAKECHANGES", # HID:40814 + "HID:WIZARDS_HID_LTRWIZ_TXTPATH", # HID:40815 + "HID:WIZARDS_HID_LTRWIZ_CMDPATH", # HID:40816 + "", + "", + "", + "HID:WIZARDS_HID_LTRWIZARD", # HID:40820 + "HID:WIZARDS_HID_LTRWIZARD_HELP", # HID:40821 + "HID:WIZARDS_HID_LTRWIZARD_BACK", # HID:40822 + "HID:WIZARDS_HID_LTRWIZARD_NEXT", # HID:40823 + "HID:WIZARDS_HID_LTRWIZARD_CREATE", # HID:40824 + "HID:WIZARDS_HID_LTRWIZARD_CANCEL", # HID:40825 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_QUERYWIZARD_LSTTABLES", # HID:40850 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFIELDS", # HID:40851 + "HID:WIZARDS_HID_QUERYWIZARD_CMDMOVESELECTED", # HID:40852 + "HID:WIZARDS_HID_QUERYWIZARD_CMDMOVEALL", # HID:40853 + "HID:WIZARDS_HID_QUERYWIZARD_CMDREMOVESELECTED", # HID:40854 + "HID:WIZARDS_HID_QUERYWIZARD_CMDREMOVEALL", # HID:40855 + "HID:WIZARDS_HID_QUERYWIZARD_LSTSELFIELDS", # HID:40856 + "HID:WIZARDS_HID_QUERYWIZARD_CMDMOVEUP", # HID:40857 + "HID:WIZARDS_HID_QUERYWIZARD_CMDMOVEDOWN", # HID:40858 + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_QUERYWIZARD_SORT1", # HID:40865 + "HID:WIZARDS_HID_QUERYWIZARD_OPTASCEND1", # HID:40866 + "HID:WIZARDS_HID_QUERYWIZARD_OPTDESCEND1", # HID:40867 + "HID:WIZARDS_HID_QUERYWIZARD_SORT2", # HID:40868 + "HID:WIZARDS_HID_QUERYWIZARD_OPTASCEND2", # HID:40869 + "HID:WIZARDS_HID_QUERYWIZARD_OPTDESCEND2", # HID:40870 + "HID:WIZARDS_HID_QUERYWIZARD_SORT3", # HID:40871 + "HID:WIZARDS_HID_QUERYWIZARD_OPTASCEND3", # HID:40872 + "HID:WIZARDS_HID_QUERYWIZARD_OPTDESCEND3", # HID:40873 + "HID:WIZARDS_HID_QUERYWIZARD_SORT4", # HID:40874 + "HID:WIZARDS_HID_QUERYWIZARD_OPTASCEND4", # HID:40875 + "HID:WIZARDS_HID_QUERYWIZARD_OPTDESCEND4", # HID:40876 + "", + "HID:WIZARDS_HID_QUERYWIZARD_OPTMATCHALL", # HID:40878 + "HID:WIZARDS_HID_QUERYWIZARD_OPTMATCHANY", # HID:40879 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFIELDNAME_1", # HID:40880 + "HID:WIZARDS_HID_QUERYWIZARD_LSTOPERATOR_1", # HID:40881 + "HID:WIZARDS_HID_QUERYWIZARD_TXTVALUE_1", # HID:40882 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFIELDNAME_2", # HID:40883 + "HID:WIZARDS_HID_QUERYWIZARD_LSTOPERATOR_2", # HID:40884 + "HID:WIZARDS_HID_QUERYWIZARD_TXTVALUE_2", # HID:40885 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFIELDNAME_3", # HID:40886 + "HID:WIZARDS_HID_QUERYWIZARD_LSTOPERATOR_3", # HID:40887 + "HID:WIZARDS_HID_QUERYWIZARD_TXTVALUE_3", # HID:40888 + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_QUERYWIZARD_OPTAGGREGATEDETAILQUERY", # HID:40895 + "HID:WIZARDS_HID_QUERYWIZARD_OPTAGGREGATESUMMARYQUERY", # HID:40896 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFUNCTION_1", # HID:40897 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFIELDS_1", # HID:40898 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFUNCTION_2", # HID:40899 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFIELDS_2", # HID:40900 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFUNCTION_3", # HID:40901 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFIELDS_3", # HID:40902 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFUNCTION_4", # HID:40903 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFIELDS_4", # HID:40904 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFUNCTION_5", # HID:40905 + "HID:WIZARDS_HID_QUERYWIZARD_LSTAGGREGATEFIELDS_5", # HID:40906 + "HID:WIZARDS_HID_QUERYWIZARD_BTNAGGREGATEPLUS", # HID:40907 + "HID:WIZARDS_HID_QUERYWIZARD_BTNAGGREGATEMINUS", # HID:40908 + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTERFIELDS", # HID:40915 + "HID:WIZARDS_HID_QUERYWIZARD_CMDFILTERMOVESELECTED", # HID:40916 + "HID:WIZARDS_HID_QUERYWIZARD_CMDFILTERREMOVESELECTED", # HID:40917 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTERSELFIELDS", # HID:40918 + "HID:WIZARDS_HID_QUERYWIZARD_CMDFILTERMOVEUP", # HID:40919 + "HID:WIZARDS_HID_QUERYWIZARD_CMDFILTERMOVEDOWN", # HID:40920 + "", + "", + "HID:WIZARDS_HID_QUERYWIZARD_OPTGROUPMATCHALL", # HID:40923 + "HID:WIZARDS_HID_QUERYWIZARD_OPTGROUPMATCHANY", # HID:40924 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTERFIELDNAME_1", # HID:40925 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTEROPERATOR_1", # HID:40926 + "HID:WIZARDS_HID_QUERYWIZARD_TXTFILTERVALUE_1", # HID:40927 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTERFIELDNAME_2", # HID:40928 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTEROPERATOR_2", # HID:40929 + "HID:WIZARDS_HID_QUERYWIZARD_TXTFILTERVALUE_2", # HID:40930 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTERFIELDNAME_3", # HID:40931 + "HID:WIZARDS_HID_QUERYWIZARD_LSTFILTEROPERATOR_3", # HID:40932 + "HID:WIZARDS_HID_QUERYWIZARD_TXTFILTERVALUE_3", # HID:40933 + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_QUERYWIZARD_TXTTITLE_1", # HID:40940 + "HID:WIZARDS_HID_QUERYWIZARD_TXTTITLE_2", # HID:40941 + "HID:WIZARDS_HID_QUERYWIZARD_TXTTITLE_3", # HID:40942 + "HID:WIZARDS_HID_QUERYWIZARD_TXTTITLE_4", # HID:40943 + "HID:WIZARDS_HID_QUERYWIZARD_TXTTITLE_5", # HID:40944 + "HID:WIZARDS_HID_QUERYWIZARD_TXTTITLE_6", # HID:40945 + "HID:WIZARDS_HID_QUERYWIZARD_TXTTITLE_7", # HID:40946 + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_QUERYWIZARD_TXTQUERYTITLE", # HID:40955 + "HID:WIZARDS_HID_QUERYWIZARD_OPTDISPLAYQUERY", # HID:40956 + "HID:WIZARDS_HID_QUERYWIZARD_OPTMODIFYQUERY", # HID:40957 + "HID:WIZARDS_HID_QUERYWIZARD_TXTSUMMARY", # HID:40958 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_QUERYWIZARD", # HID:40970 + "", + "HID:WIZARDS_HID_QUERYWIZARD_BACK", # HID:40972 + "HID:WIZARDS_HID_QUERYWIZARD_NEXT", # HID:40973 + "HID:WIZARDS_HID_QUERYWIZARD_CREATE", # HID:40974 + "HID:WIZARDS_HID_QUERYWIZARD_CANCEL", # HID:40975 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_IS_BTN_OK", # HID:41003 + "HID:WIZARDS_HID_IS_BTN_CANCEL", # HID:41004 + "HID:WIZARDS_HID_IS_BTN_IMG1", # HID:41005 + "HID:WIZARDS_HID_IS_BTN_IMG2", # HID:41006 + "HID:WIZARDS_HID_IS_BTN_IMG3", # HID:41007 + "HID:WIZARDS_HID_IS_BTN_IMG4", # HID:41008 + "HID:WIZARDS_HID_IS_BTN_IMG5", # HID:41009 + "HID:WIZARDS_HID_IS_BTN_IMG6", # HID:41010 + "HID:WIZARDS_HID_IS_BTN_IMG7", # HID:41011 + "HID:WIZARDS_HID_IS_BTN_IMG8", # HID:41012 + "HID:WIZARDS_HID_IS_BTN_IMG9", # HID:41013 + "HID:WIZARDS_HID_IS_BTN_IMG10", # HID:41014 + "HID:WIZARDS_HID_IS_BTN_IMG11", # HID:41015 + "HID:WIZARDS_HID_IS_BTN_IMG12", # HID:41016 + "HID:WIZARDS_HID_IS_BTN_IMG13", # HID:41017 + "HID:WIZARDS_HID_IS_BTN_IMG14", # HID:41018 + "HID:WIZARDS_HID_IS_BTN_IMG15", # HID:41019 + "HID:WIZARDS_HID_IS_BTN_IMG16", # HID:41020 + "HID:WIZARDS_HID_IS_BTN_IMG17", # HID:41021 + "HID:WIZARDS_HID_IS_BTN_IMG18", # HID:41022 + "HID:WIZARDS_HID_IS_BTN_IMG19", # HID:41023 + "HID:WIZARDS_HID_IS_BTN_IMG20", # HID:41024 + "HID:WIZARDS_HID_IS_BTN_IMG21", # HID:41025 + "HID:WIZARDS_HID_IS_BTN_IMG22", # HID:41026 + "HID:WIZARDS_HID_IS_BTN_IMG23", # HID:41027 + "HID:WIZARDS_HID_IS_BTN_IMG24", # HID:41028 + "HID:WIZARDS_HID_IS_BTN_IMG25", # HID:41029 + "HID:WIZARDS_HID_IS_BTN_IMG26", # HID:41030 + "HID:WIZARDS_HID_IS_BTN_IMG27", # HID:41031 + "HID:WIZARDS_HID_IS_BTN_IMG28", # HID:41032 + "HID:WIZARDS_HID_IS_BTN_IMG29", # HID:41033 + "HID:WIZARDS_HID_IS_BTN_IMG30", # HID:41034 + "HID:WIZARDS_HID_IS_BTN_IMG31", # HID:41035 + "HID:WIZARDS_HID_IS_BTN_IMG32", # HID:41036 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_FTP_OK", # HID:41047 + "HID:WIZARDS_HID_FTP_CANCEL", # HID:41048 + "", + "", + "HID:WIZARDS_HID_AGWIZ", # HID:41051 + "HID:WIZARDS_HID_AGWIZ_HELP", # HID:41052 + "HID:WIZARDS_HID_AGWIZ_NEXT", # HID:41053 + "HID:WIZARDS_HID_AGWIZ_PREV", # HID:41054 + "HID:WIZARDS_HID_AGWIZ_CREATE", # HID:41055 + "HID:WIZARDS_HID_AGWIZ_CANCEL", # HID:41056 + "HID:WIZARDS_HID_AGWIZ_1_LIST_PAGEDESIGN", # HID:41057 + "HID:WIZARDS_HID_AGWIZ_1_CHK_MINUTES", # HID:41058 + "HID:WIZARDS_HID_AGWIZ_2_TXT_TIME", # HID:41059 + "HID:WIZARDS_HID_AGWIZ_2_TXT_DATE", # HID:41060 + "HID:WIZARDS_HID_AGWIZ_2_TXT_TITLE", # HID:41061 + "HID:WIZARDS_HID_AGWIZ_2_TXT_LOCATION", # HID:41062 + "HID:WIZARDS_HID_AGWIZ_3_CHK_MEETING_TYPE", # HID:41063 + "HID:WIZARDS_HID_AGWIZ_3_CHK_READ", # HID:41064 + "HID:WIZARDS_HID_AGWIZ_3_CHK_BRING", # HID:41065 + "HID:WIZARDS_HID_AGWIZ_3_CHK_NOTES", # HID:41066 + "HID:WIZARDS_HID_AGWIZ_4_CHK_CALLED_BY", # HID:41067 + "HID:WIZARDS_HID_AGWIZ_4_CHK_FACILITATOR", # HID:41068 + "HID:WIZARDS_HID_AGWIZ_4_CHK_NOTETAKER", # HID:41069 + "HID:WIZARDS_HID_AGWIZ_4_CHK_TIMEKEEPER", # HID:41070 + "HID:WIZARDS_HID_AGWIZ_4_CHK_ATTENDEES", # HID:41071 + "HID:WIZARDS_HID_AGWIZ_4_CHK_OBSERVERS", # HID:41072 + "HID:WIZARDS_HID_AGWIZ_4_CHK_RESOURCEPERSONS", # HID:41073 + "HID:WIZARDS_HID_AGWIZ_6_TXT_TEMPLATENAME", # HID:41074 + "HID:WIZARDS_HID_AGWIZ_6_TXT_TEMPLATEPATH", # HID:41075 + "HID:WIZARDS_HID_AGWIZ_6_BTN_TEMPLATEPATH", # HID:41076 + "HID:WIZARDS_HID_AGWIZ_6_OPT_CREATEAGENDA", # HID:41077 + "HID:WIZARDS_HID_AGWIZ_6_OPT_MAKECHANGES", # HID:41078 + "HID:WIZARDS_HID_AGWIZ_5_BTN_INSERT", # HID:41079 + "HID:WIZARDS_HID_AGWIZ_5_BTN_REMOVE", # HID:41080 + "HID:WIZARDS_HID_AGWIZ_5_BTN_UP", # HID:41081 + "HID:WIZARDS_HID_AGWIZ_5_BTN_DOWN", # HID:41082 + "HID:WIZARDS_HID_AGWIZ_5_SCROLL_BAR", # HID:41083 + "HID:WIZARDS_HID_AGWIZ_5_TXT_TOPIC_1", # HID:41084 + "HID:WIZARDS_HID_AGWIZ_5_TXT_RESPONSIBLE_1", # HID:41085 + "HID:WIZARDS_HID_AGWIZ_5_TXT_MINUTES_1", # HID:41086 + "HID:WIZARDS_HID_AGWIZ_5_TXT_TOPIC_2", # HID:41087 + "HID:WIZARDS_HID_AGWIZ_5_TXT_RESPONSIBLE_2", # HID:41088 + "HID:WIZARDS_HID_AGWIZ_5_TXT_MINUTES_2", # HID:41089 + "HID:WIZARDS_HID_AGWIZ_5_TXT_TOPIC_3", # HID:41090 + "HID:WIZARDS_HID_AGWIZ_5_TXT_RESPONSIBLE_3", # HID:41091 + "HID:WIZARDS_HID_AGWIZ_5_TXT_MINUTES_3", # HID:41092 + "HID:WIZARDS_HID_AGWIZ_5_TXT_TOPIC_4", # HID:41093 + "HID:WIZARDS_HID_AGWIZ_5_TXT_RESPONSIBLE_4", # HID:41094 + "HID:WIZARDS_HID_AGWIZ_5_TXT_MINUTES_4", # HID:41095 + "HID:WIZARDS_HID_AGWIZ_5_TXT_TOPIC_5", # HID:41096 + "HID:WIZARDS_HID_AGWIZ_5_TXT_RESPONSIBLE_5", # HID:41097 + "HID:WIZARDS_HID_AGWIZ_5_TXT_MINUTES_5", # HID:41098 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_FAXWIZ_OPTBUSINESSFAX", # HID:41120 + "HID:WIZARDS_HID_FAXWIZ_LSTBUSINESSSTYLE", # HID:41121 + "HID:WIZARDS_HID_FAXWIZ_OPTPRIVATEFAX", # HID:41122 + "HID:WIZARDS_HID_LSTPRIVATESTYLE", # HID:41123 + "HID:WIZARDS_HID_IMAGECONTROL3", # HID:41124 + "HID:WIZARDS_HID_CHKUSELOGO", # HID:41125 + "HID:WIZARDS_HID_CHKUSEDATE", # HID:41126 + "HID:WIZARDS_HID_CHKUSECOMMUNICATIONTYPE", # HID:41127 + "HID:WIZARDS_HID_LSTCOMMUNICATIONTYPE", # HID:41128 + "HID:WIZARDS_HID_CHKUSESUBJECT", # HID:41129 + "HID:WIZARDS_HID_CHKUSESALUTATION", # HID:41130 + "HID:WIZARDS_HID_LSTSALUTATION", # HID:41131 + "HID:WIZARDS_HID_CHKUSEGREETING", # HID:41132 + "HID:WIZARDS_HID_LSTGREETING", # HID:41133 + "HID:WIZARDS_HID_CHKUSEFOOTER", # HID:41134 + "HID:WIZARDS_HID_OPTSENDERPLACEHOLDER", # HID:41135 + "HID:WIZARDS_HID_OPTSENDERDEFINE", # HID:41136 + "HID:WIZARDS_HID_TXTSENDERNAME", # HID:41137 + "HID:WIZARDS_HID_TXTSENDERSTREET", # HID:41138 + "HID:WIZARDS_HID_TXTSENDERPOSTCODE", # HID:41139 + "HID:WIZARDS_HID_TXTSENDERSTATE", # HID:41140 + "HID:WIZARDS_HID_TXTSENDERCITY", # HID:41141 + "HID:WIZARDS_HID_TXTSENDERFAX", # HID:41142 + "HID:WIZARDS_HID_OPTRECEIVERPLACEHOLDER", # HID:41143 + "HID:WIZARDS_HID_OPTRECEIVERDATABASE", # HID:41144 + "HID:WIZARDS_HID_TXTFOOTER", # HID:41145 + "HID:WIZARDS_HID_CHKFOOTERNEXTPAGES", # HID:41146 + "HID:WIZARDS_HID_CHKFOOTERPAGENUMBERS", # HID:41147 + "HID:WIZARDS_HID_TXTTEMPLATENAME", # HID:41148 + "HID:WIZARDS_HID_FILETEMPLATEPATH", # HID:41149 + "HID:WIZARDS_HID_OPTCREATEFAX", # HID:41150 + "HID:WIZARDS_HID_OPTMAKECHANGES", # HID:41151 + "HID:WIZARDS_HID_IMAGECONTROL2", # HID:41152 + "HID:WIZARDS_HID_FAXWIZ_TXTPATH", # HID:41153 + "HID:WIZARDS_HID_FAXWIZ_CMDPATH", # HID:41154 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_FAXWIZARD", # HID:41180 + "HID:WIZARDS_HID_FAXWIZARD_HELP", # HID:41181 + "HID:WIZARDS_HID_FAXWIZARD_BACK", # HID:41182 + "HID:WIZARDS_HID_FAXWIZARD_NEXT", # HID:41183 + "HID:WIZARDS_HID_FAXWIZARD_CREATE", # HID:41184 + "HID:WIZARDS_HID_FAXWIZARD_CANCEL", # HID:41185 + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "HID:WIZARDS_HID_DLGTABLE_DIALOG", # HID:41200 + "", + "HID:WIZARDS_HID_DLGTABLE_CMDPREV", # HID:41202 + "HID:WIZARDS_HID_DLGTABLE_CMDNEXT", # HID:41203 + "HID:WIZARDS_HID_DLGTABLE_CMDFINISH", # HID:41204 + "HID:WIZARDS_HID_DLGTABLE_CMDCANCEL", # HID:41205 + "HID:WIZARDS_HID_DLGTABLE_OPTBUSINESS", # HID:41206 + "HID:WIZARDS_HID_DLGTABLE_OPTPRIVATE", # HID:41207 + "HID:WIZARDS_HID_DLGTABLE_LBTABLES", # HID:41208 + "HID:WIZARDS_HID_DLGTABLE_FIELDSAVAILABLE", # HID:41209 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVESELECTED", # HID:41210 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVEALL", # HID:41211 + "HID:WIZARDS_HID_DLGTABLE_CMDREMOVESELECTED", # HID:41212 + "HID:WIZARDS_HID_DLGTABLE_CMDREMOVEALL", # HID:41213 + "HID:WIZARDS_HID_DLGTABLE_FIELDSSELECTED", # HID:41214 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVEUP", # HID:41215 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVEDOWN", # HID:41216 + "", + "", + "", + "HID:WIZARDS_HID_DLGTABLE_LB_SELFIELDNAMES", # HID:41220 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVEFIELDUP", # HID:41221 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVEFIELDDOWN", # HID:41222 + "HID:WIZARDS_HID_DLGTABLE_CMDMINUS", # HID:41223 + "HID:WIZARDS_HID_DLGTABLE_CMDPLUS", # HID:41224 + "HID:WIZARDS_HID_DLGTABLE_COLNAME", # HID:41225 + "HID:WIZARDS_HID_DLGTABLE_COLMODIFIER", # HID:41226 + "HID:WIZARDS_HID_DLGTABLE_CHK_USEPRIMEKEY", # HID:41227 + "HID:WIZARDS_HID_DLGTABLE_OPT_PK_AUTOMATIC", # HID:41228 + "HID:WIZARDS_HID_DLGTABLE_CK_PK_AUTOVALUE_AUTOMATIC", # HID:41229 + "HID:WIZARDS_HID_DLGTABLE_OPT_PK_SINGLE", # HID:41230 + "HID:WIZARDS_HID_DLGTABLE_LB_PK_FIELDNAME", # HID:41231 + "HID:WIZARDS_HID_DLGTABLE_CK_PK_AUTOVALUE", # HID:41232 + "HID:WIZARDS_HID_DLGTABLE_OPT_PK_SEVERAL", # HID:41233 + "HID:WIZARDS_HID_DLGTABLE_FIELDS_PK_AVAILABLE", # HID:41234 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVE_PK_SELECTED", # HID:41235 + "HID:WIZARDS_HID_DLGTABLE_CMDREMOVE_PK_SELECTED", # HID:41236 + "HID:WIZARDS_HID_DLGTABLE_FIELDS_PK_SELECTED", # HID:41237 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVEUP_PK_SELECTED", # HID:41238 + "HID:WIZARDS_HID_DLGTABLE_CMDMOVEDOWN_PK_SELECTED", # HID:41239 + "HID:WIZARDS_HID_DLGTABLE_TXT_NAME", # HID:41240 + "HID:WIZARDS_HID_DLGTABLE_OPT_MODIFYTABLE", # HID:41241 + "HID:WIZARDS_HID_DLGTABLE_OPT_WORKWITHTABLE", # HID:41242 + "HID:WIZARDS_HID_DLGTABLE_OPT_STARTFORMWIZARD", # HID:41243 + "HID:WIZARDS_HID_DLGTABLE_LST_CATALOG", # HID:41244 + "HID:WIZARDS_HID_DLGTABLE_LST_SCHEMA" # HID:41245 + ] + + @classmethod + def getHelpIdString(self, nHelpId): + if nHelpId >= 34200 and nHelpId <= 34722: + return HelpIds.array1[nHelpId - 34200] + elif nHelpId >= 40769 and nHelpId <= 41245: + return HelpIds.array2[nHelpId - 40769] + else: + return None diff --git a/wizards/com/sun/star/wizards/common/Helper.java b/wizards/com/sun/star/wizards/common/Helper.java new file mode 100644 index 000000000..efb0a970a --- /dev/null +++ b/wizards/com/sun/star/wizards/common/Helper.java @@ -0,0 +1,239 @@ +/* + * 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 . + */ +package com.sun.star.wizards.common; + +import com.sun.star.uno.XComponentContext; +import com.sun.star.util.XMacroExpander; + +import com.sun.star.beans.XPropertySet; +import com.sun.star.lang.XMultiServiceFactory; +import com.sun.star.uno.AnyConverter; +import com.sun.star.uno.RuntimeException; +import com.sun.star.uno.UnoRuntime; + +public class Helper +{ + + public static long convertUnoDatetoInteger(com.sun.star.util.Date DateValue) + { + java.util.Calendar oCal = java.util.Calendar.getInstance(); + oCal.set(DateValue.Year, DateValue.Month, DateValue.Day); + java.util.Date dTime = oCal.getTime(); + long lTime = dTime.getTime(); + return lTime / (3600 * 24000); + } + + public static void setUnoPropertyValue(Object oUnoObject, String PropertyName, Object PropertyValue) + { + try + { + XPropertySet xPSet = UnoRuntime.queryInterface(XPropertySet.class, oUnoObject); + if (xPSet.getPropertySetInfo().hasPropertyByName(PropertyName)) + { + xPSet.setPropertyValue(PropertyName, PropertyValue); + } + else + { + throw new java.lang.IllegalArgumentException("No Such Property: '" + PropertyName + "'"); + } + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + } + } + + public static Object getUnoObjectbyName(Object oUnoObject, String ElementName) + { + try + { + com.sun.star.container.XNameAccess xName = UnoRuntime.queryInterface(com.sun.star.container.XNameAccess.class, oUnoObject); + if (xName.hasByName(ElementName)) + { + return xName.getByName(ElementName); + } + else + { + throw new RuntimeException(); + } + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + return null; + } + } + + + + public static Object getUnoPropertyValue(Object oUnoObject, String PropertyName, java.lang.Class<?> xClass) + { + try + { + if (oUnoObject != null) + { + XPropertySet xPSet = UnoRuntime.queryInterface(XPropertySet.class, oUnoObject); + Object oObject = xPSet.getPropertyValue(PropertyName); + if (AnyConverter.isVoid(oObject)) + { + return null; + } + else + { + return com.sun.star.uno.AnyConverter.toObject(new com.sun.star.uno.Type(xClass), oObject); + } + } + return null; + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + return null; + } + } + + + + + + public static Object getUnoPropertyValue(Object oUnoObject, String PropertyName) + { + try + { + if (oUnoObject != null) + { + XPropertySet xPSet = UnoRuntime.queryInterface(XPropertySet.class, oUnoObject); + return xPSet.getPropertyValue(PropertyName); + } + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + } + return null; + } + + public static Object getUnoArrayPropertyValue(Object oUnoObject, String PropertyName) + { + try + { + if (oUnoObject != null) + { + XPropertySet xPSet = UnoRuntime.queryInterface(XPropertySet.class, oUnoObject); + Object oObject = xPSet.getPropertyValue(PropertyName); + if (AnyConverter.isArray(oObject)) + { + return getArrayValue(oObject); + } + } + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + } + return null; + } + + public static Object getUnoStructValue(Object oUnoObject, String PropertyName) + { + try + { + if (oUnoObject != null) + { + XPropertySet xPSet = UnoRuntime.queryInterface(XPropertySet.class, oUnoObject); + if (xPSet.getPropertySetInfo().hasPropertyByName(PropertyName)) + { + return xPSet.getPropertyValue(PropertyName); + } + } + return null; + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + return null; + } + } + + public static void setUnoPropertyValues(Object oUnoObject, String[] PropertyNames, Object[] PropertyValues) + { + try + { + com.sun.star.beans.XMultiPropertySet xMultiPSetLst = UnoRuntime.queryInterface(com.sun.star.beans.XMultiPropertySet.class, oUnoObject); + if (xMultiPSetLst != null) + { + xMultiPSetLst.setPropertyValues(PropertyNames, PropertyValues); + } + else + { + for (int i = 0; i < PropertyNames.length; i++) + { + setUnoPropertyValue(oUnoObject, PropertyNames[i], PropertyValues[i]); + } + } + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + } + } + + /** + * 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 parameter that has to represent an object + * @return a null reference if the array is empty + */ + private static Object getArrayValue(Object oValue) + { + try + { + Object oPropList = com.sun.star.uno.AnyConverter.toArray(oValue); + int nlen = java.lang.reflect.Array.getLength(oPropList); + if (nlen == 0) + { + return null; + } + else + { + return oPropList; + } + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + return null; + } + } + + public static XComponentContext getComponentContext(XMultiServiceFactory _xMSF) + { + // Get the path to the extension and try to add the path to the class loader + final XPropertySet xProps = UnoRuntime.queryInterface(XPropertySet.class, _xMSF); + final PropertySetHelper aHelper = new PropertySetHelper(xProps); + final Object aDefaultContext = aHelper.getPropertyValueAsObject("DefaultContext"); + return UnoRuntime.queryInterface(XComponentContext.class, aDefaultContext); + } + + public static XMacroExpander getMacroExpander(XMultiServiceFactory _xMSF) + { + final XComponentContext xComponentContext = getComponentContext(_xMSF); + final Object aSingleton = xComponentContext.getValueByName("/singletons/com.sun.star.util.theMacroExpander"); + return UnoRuntime.queryInterface(XMacroExpander.class, aSingleton); + } +} diff --git a/wizards/com/sun/star/wizards/common/IRenderer.java b/wizards/com/sun/star/wizards/common/IRenderer.java new file mode 100644 index 000000000..c704ed6f4 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/IRenderer.java @@ -0,0 +1,30 @@ +/* + * 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 . + */ +package com.sun.star.wizards.common; + +/** + * A General interface which gives a string + * that represents the rendered argument object. + * Can be used to reference resources, internationalizartion + * a.s.o + */ +public interface IRenderer +{ + + String render(Object object); +} diff --git a/wizards/com/sun/star/wizards/common/IRenderer.py b/wizards/com/sun/star/wizards/common/IRenderer.py new file mode 100644 index 000000000..6086665f4 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/IRenderer.py @@ -0,0 +1,28 @@ +# +# 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 abc import abstractmethod + +# A General interface which gives a string +# that represents the rendered argument object. +# Can be used to reference resources, internationalizartion +# a.s.o +class IRenderer: + + @abstractmethod + def render(object): + pass diff --git a/wizards/com/sun/star/wizards/common/InvalidQueryException.java b/wizards/com/sun/star/wizards/common/InvalidQueryException.java new file mode 100644 index 000000000..a4ac8f90a --- /dev/null +++ b/wizards/com/sun/star/wizards/common/InvalidQueryException.java @@ -0,0 +1,35 @@ +/* + * 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 . + */ +package com.sun.star.wizards.common; + +import com.sun.star.lang.XMultiServiceFactory; + +public class InvalidQueryException extends java.lang.Throwable +{ + // TODO don't show messages in Exceptions + public InvalidQueryException(XMultiServiceFactory xMSF, String sCommand) + { + SystemDialog.showErrorBox(xMSF, "RID_REPORT_65", "<STATEMENT>", sCommand); // Querycreationnotpossible + } + // TODO don't show messages in Exceptions + public InvalidQueryException(XMultiServiceFactory xMSF, String sCommand, Throwable cause) + { + super(cause); + SystemDialog.showErrorBox(xMSF, "RID_REPORT_65", "<STATEMENT>", sCommand); // Querycreationnotpossible + } +} diff --git a/wizards/com/sun/star/wizards/common/JavaTools.java b/wizards/com/sun/star/wizards/common/JavaTools.java new file mode 100644 index 000000000..65bb3f644 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/JavaTools.java @@ -0,0 +1,538 @@ +/* + * 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 . + */ +package com.sun.star.wizards.common; + +import com.sun.star.beans.PropertyValue; +import java.util.*; +import java.io.File; + +import com.sun.star.lib.util.UrlToFileMapper; +import java.net.MalformedURLException; +import java.net.URL; + +public class JavaTools +{ + + public static String[] ArrayOutOfMultiDimArray(String _sMultiDimArray[][], int _index) + { + String[] sRetArray = null; + if (_sMultiDimArray != null) + { + sRetArray = new String[_sMultiDimArray.length]; + for (int i = 0; i < _sMultiDimArray.length; i++) + { + sRetArray[i] = _sMultiDimArray[i][_index]; + } + } + return sRetArray; + } + + /**converts a list of Integer values included in an Integer vector to a list of int values + */ + public static int[] IntegerTointList(java.util.List<Integer> _aIntegerVector) + { + int[] nintValues = null; + if (_aIntegerVector.size() > 0) { + int i = 0; + nintValues = new int[_aIntegerVector.size()]; + for (Integer nIntegerValue : _aIntegerVector) { + nintValues[i++] = nIntegerValue.intValue(); + } + } + return nintValues; + } + + /**converts a list of Boolean values included in a Boolean vector to a list of boolean values + */ + public static boolean[] BooleanTobooleanList(java.util.List<Boolean> _aBooleanVector) + { + boolean[] bbooleanValues = null; + if (_aBooleanVector.size() > 0) { + int i = 0; + bbooleanValues = new boolean[_aBooleanVector.size()]; + for (Boolean bBooleanValue : _aBooleanVector) { + bbooleanValues[i++] = bBooleanValue.booleanValue(); + } + } + return bbooleanValues; + } + + public static String getlongestArrayItem(String[] StringArray) + { + String sLongestItem = PropertyNames.EMPTY_STRING; + int iCurLength; + int iOldLength = 0; + for (String str : StringArray) + { + iCurLength = str.length(); + if (iCurLength > iOldLength) + { + iOldLength = iCurLength; + sLongestItem = str; + } + } + return sLongestItem; + } + + public static String ArraytoString(String[] LocArray) + { + StringBuilder ResultString = new StringBuilder(PropertyNames.EMPTY_STRING); + boolean bActive = false; + for (String str : LocArray) { + if (bActive) { + ResultString.append(PropertyNames.SEMI_COLON); + } else { + bActive = true; + } + ResultString.append(str); + } + return ResultString.toString(); + } + + /** + * @return the index of the field that contains the string 'SearchString' or '-1' if not it is + * not contained within the array + */ + public static int FieldInList(String[] SearchList, String SearchString) { + int retvalue = -1; + for (int i = 0; i < SearchList.length; i++) { + if (SearchList[i].equals(SearchString)) { + retvalue = i; + break; + } + } + return retvalue; + } + + public static int FieldInTable(String[][] SearchList, String SearchString) + { + int retvalue = -1; + if (SearchList != null) { + int FieldLen = SearchList.length; + if (FieldLen > 0) { + for (int i = 0; i < FieldLen; i++) { + if (SearchList[i][0] != null && SearchList[i][0].equals(SearchString)) { + retvalue = i; + break; + } + } + } + } + return retvalue; + } + + public static int FieldInIntTable(int[][] SearchList, int SearchValue) + { + int retvalue = -1; + for (int i = 0; i < SearchList.length; i++) + { + if (SearchList[i][0] == SearchValue) + { + retvalue = i; + break; + } + } + return retvalue; + } + + public static int FieldInIntTable(int[] SearchList, int SearchValue, int _startindex) + { + int retvalue = -1; + for (int i = _startindex; i < SearchList.length; i++) + { + if (SearchList[i] == SearchValue) + { + retvalue = i; + break; + } + } + return retvalue; + } + + public static int FieldInIntTable(int[] SearchList, int SearchValue) + { + return FieldInIntTable(SearchList, SearchValue, 0); + } + + public static int getArraylength(Object[] MyArray) + { + int FieldCount = 0; + if (MyArray != null) + { + FieldCount = MyArray.length; + } + return FieldCount; + } + + /** + * This function bubble sorts an array of with 2 dimensions. + * The default sorting order is the first dimension + * Only if sort2ndValue is True the second dimension is the relevant for the sorting order + */ + public static String[][] bubblesortList(String[][] SortList) + { + String DisplayDummy; + int SortCount = SortList[0].length; + int DimCount = SortList.length; + for (int s = 0; s < SortCount; s++) + { + for (int t = 0; t < SortCount - s - 1; t++) + { + if (SortList[0][t].compareTo(SortList[0][t + 1]) > 0) + { + for (int k = 0; k < DimCount; k++) + { + DisplayDummy = SortList[k][t]; + SortList[k][t] = SortList[k][t + 1]; + SortList[k][t + 1] = DisplayDummy; + } + } + } + } + return SortList; + } + + public static String[] ArrayoutofString(String MainString, String Token) + { + String[] StringArray; + if (!MainString.equals(PropertyNames.EMPTY_STRING)) + { + ArrayList<String> StringVector = new ArrayList<String>(); + int iIndex; + do + { + iIndex = MainString.indexOf(Token); + if (iIndex < 0) + { + StringVector.add(MainString); + } + else + { + StringVector.add(MainString.substring(0, iIndex)); + MainString = MainString.substring(iIndex + 1, MainString.length()); + } + } + while (iIndex >= 0); + int FieldCount = StringVector.size(); + StringArray = new String[FieldCount]; + StringVector.toArray(StringArray); + } + else + { + StringArray = new String[0]; + } + return StringArray; + } + + public static String replaceSubString(String MainString, String NewSubString, String OldSubString) + { + try + { + int NewIndex = 0; + int OldIndex = 0; + int NewSubLen = NewSubString.length(); + int OldSubLen = OldSubString.length(); + while (NewIndex != -1) + { + NewIndex = MainString.indexOf(OldSubString, OldIndex); + if (NewIndex != -1) + { + MainString = MainString.substring(0, NewIndex) + NewSubString + MainString.substring(NewIndex + OldSubLen); + OldIndex = NewIndex + NewSubLen; + } + } + return MainString; + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + return null; + } + } + + public static String convertfromURLNotation(String _sURLPath) + { + String sPath = PropertyNames.EMPTY_STRING; + try + { + URL oJavaURL = new URL(_sURLPath); + File oFile = UrlToFileMapper.mapUrlToFile(oJavaURL); + sPath = oFile.getAbsolutePath(); + } + catch (MalformedURLException e) + { + e.printStackTrace(System.err); + } + return sPath; + } + + public static String[] removeOutdatedFields(String[] baselist, String[] _complist) + { + String[] retarray = new String[] + { + }; + if ((baselist != null) && (_complist != null)) + { + ArrayList<String> retvector = new ArrayList<String>(); + for (int i = 0; i < baselist.length; i++) + { + if (FieldInList(_complist, baselist[i]) > -1) + { + retvector.add(baselist[i]); + // here you could call the method of a defined interface to notify the calling method + } + } + retarray = new String[retvector.size()]; + retvector.toArray(retarray); + } + return retarray; + } + + public static String[][] removeOutdatedFields(String[][] baselist, String[] _complist, int _compindex) + { + String[][] retarray = new String[][] {}; + if ((baselist != null) && (_complist != null)) + { + if (baselist.length > 0) + { + ArrayList<String[]> retvector = new ArrayList<String[]>(); + for (int i = 0; i < baselist.length; i++) + { + String sValue = baselist[i][_compindex]; + if (FieldInList(_complist, sValue) != -1) + { + retvector.add(baselist[i]); + // here you could call the method of a defined interface to notify the calling method + } + } + retarray = new String[retvector.size()][2]; + retvector.toArray(retarray); + } + } + return retarray; + } + + public static String[][] removeOutdatedFields(String[][] baselist, String[] _complist) + { + return removeOutdatedFields(baselist, _complist, 0); + } + + public static PropertyValue[][] removeOutdatedFields(PropertyValue[][] baselist, String[] _complist) + { + if ((baselist != null) && (_complist != null)) + { + ArrayList<PropertyValue[]> firstdimvector = new ArrayList<PropertyValue[]>(); + for (int n = 0; n < baselist.length; n++) + { + ArrayList<PropertyValue> secdimvector = new ArrayList<PropertyValue>(); + for (int m = 0; m < baselist[n].length; m++) + { + if (FieldInList(_complist, baselist[n][m].Name) > -1) + { + secdimvector.add(baselist[n][m]); + } + } + if (!secdimvector.isEmpty()) + { + PropertyValue[] internalArray = new PropertyValue[secdimvector.size()]; + secdimvector.toArray(internalArray); + firstdimvector.add(internalArray); + } + } + PropertyValue[][] retarray = new PropertyValue[firstdimvector.size()][]; + return firstdimvector.toArray(retarray); + } + return new PropertyValue[][] + { + }; + } + + /** + * searches a multidimensional array for duplicate fields. According to the following example + * SlaveFieldName1 ;SlaveFieldName2; SlaveFieldName3 + * MasterFieldName1;MasterFieldName2;MasterFieldName3 + * The entries SlaveFieldNameX and MasterFieldNameX are grouped together and then the created groups are compared + * If a group is duplicate the entry of the second group is returned. + */ + public static int getDuplicateFieldIndex(String[][] _scomplist) + { + int retvalue = -1; + if (_scomplist.length > 0) + { + int fieldcount = _scomplist[0].length; + String[] sDescList = new String[fieldcount]; + for (int m = 0; m < fieldcount; m++) + { + for (int n = 0; n < _scomplist.length; n++) + { + if (n == 0) + { + sDescList[m] = ""; + } + sDescList[m] += _scomplist[n][m]; + } + } + return getDuplicateFieldIndex(sDescList); + } + return retvalue; + } + + /** + * not tested!!!!! + */ + public static int getDuplicateFieldIndex(String[] scomplist) + { + for (int n = 0; n < scomplist.length; n++) + { + String scurvalue = scomplist[n]; + for (int m = n; m < scomplist.length; m++) + { + if (m != n) + { + if (scurvalue.equals(scomplist[m])) + { + return m; + } + } + } + } + return -1; + } + + public static int getDuplicateFieldIndex(String[] _scomplist, String _fieldname) + { + int iduplicate = 0; + for (int n = 0; n < _scomplist.length; n++) + { + if (_scomplist[n].equals(_fieldname)) + { + iduplicate++; + if (iduplicate == 2) + { + return n; + } + } + } + return -1; + } + + private static boolean isEqual(PropertyValue firstPropValue, PropertyValue secPropValue) + { + if (!firstPropValue.Name.equals(secPropValue.Name)) + { + return false; + //TODO replace 'equals' with AnyConverter.getType(firstpropValue).equals(secPropValue) to check content and Type + } + if (!firstPropValue.Value.equals(secPropValue.Value)) + { + return false; + } + return (firstPropValue.Handle == secPropValue.Handle); + } + + public static int[] getDuplicateFieldIndex(PropertyValue[][] ocomplist) + { + for (int n = 0; n < ocomplist.length; n++) + { + PropertyValue[] ocurValue = ocomplist[n]; + for (int m = n; m < ocurValue.length; m++) + { + PropertyValue odetValue = ocurValue[m]; + for (int s = 0; s < ocurValue.length; s++) + { + if (s != m) + { + if (isEqual(odetValue, ocurValue[s])) + { + return new int[] + { + n, s + }; + } + } + } + } + } + return new int[] + { + -1, -1 + }; + } + + public static String getSuffixNumber(String _sbasestring) + { + int suffixcharcount = 0; + for (int i = _sbasestring.length() - 1; i >= 0; i--) + { + char b = _sbasestring.charAt(i); + if ((b >= '0') && (b <= '9')) + { + suffixcharcount++; + } + else + { + break; + } + } + int istart = _sbasestring.length() - suffixcharcount; + return _sbasestring.substring(istart, _sbasestring.length()); + } + + public static String[] removefromList(String[] _sbaselist, String[] _sdellist) { + ArrayList<String> tempbaselist = new ArrayList<String>(); + for (String _sbase : _sbaselist) { + if (FieldInList(_sdellist, _sbase) == -1) { + tempbaselist.add(_sbase); + } + } + String[] sretlist = new String[tempbaselist.size()]; + tempbaselist.toArray(sretlist); + return sretlist; + } + + /** + * compares two strings. If one of them is empty and the other one is null it also returns true + */ + public static boolean isSame(String sFirstString, String sSecondString) + { + boolean bissame = false; + if (sFirstString == null) + { + if (sSecondString != null) + { + bissame = sSecondString.equals(PropertyNames.EMPTY_STRING); + } + else + { + bissame = true; + } + } + else + { + if (sFirstString.equals(PropertyNames.EMPTY_STRING)) + { + bissame = (sSecondString == null); + } + else if (sSecondString != null) + { + bissame = sFirstString.equals(sSecondString); + } + } + return bissame; + } +} diff --git a/wizards/com/sun/star/wizards/common/ListModel.py b/wizards/com/sun/star/wizards/common/ListModel.py new file mode 100644 index 000000000..e0eaf5de3 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/ListModel.py @@ -0,0 +1,35 @@ +# +# 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 abc import abstractmethod + +class ListModel(object): + + @abstractmethod + def getSize(self): + pass + + @abstractmethod + def getElementAt(self, arg0): + pass + + def addListDataListener(self, listener): + pass + + def removeListDataListener(self, listener): + pass diff --git a/wizards/com/sun/star/wizards/common/MANIFEST.MF b/wizards/com/sun/star/wizards/common/MANIFEST.MF new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/wizards/com/sun/star/wizards/common/MANIFEST.MF diff --git a/wizards/com/sun/star/wizards/common/NamedValueCollection.java b/wizards/com/sun/star/wizards/common/NamedValueCollection.java new file mode 100644 index 000000000..32cc0cd80 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/NamedValueCollection.java @@ -0,0 +1,79 @@ +/* + * 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 . + */ + +package com.sun.star.wizards.common; + +import com.sun.star.beans.PropertyState; +import com.sun.star.beans.PropertyValue; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.uno.XInterface; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map.Entry; + +public class NamedValueCollection +{ + final private HashMap< String, Object > m_values = new HashMap< String, Object >(); + + public NamedValueCollection() + { + } + + public NamedValueCollection( final PropertyValue[] i_values ) + { + for ( int i = 0; i < i_values.length; ++i ) + m_values.put( i_values[i].Name, i_values[i].Value ); + } + + public final void put( final String i_name, final Object i_value ) + { + m_values.put( i_name, i_value ); + } + + + + public final < T extends XInterface > T queryOrDefault( final String i_key, final T i_default, Class<T> i_interfaceClass ) + { + if ( m_values.containsKey( i_key ) ) + { + final Object value = m_values.get( i_key ); + return UnoRuntime.queryInterface( i_interfaceClass, value ); + } + return i_default; + } + + public final PropertyValue[] getPropertyValues() + { + PropertyValue[] values = new PropertyValue[ m_values.size() ]; + + Iterator< Entry< String, Object > > iter = m_values.entrySet().iterator(); + int i = 0; + while ( iter.hasNext() ) + { + Entry< String, Object > entry = iter.next(); + values[i++] = new PropertyValue( + entry.getKey(), + 0, + entry.getValue(), + PropertyState.DIRECT_VALUE + ); + } + + return values; + } +} diff --git a/wizards/com/sun/star/wizards/common/NoValidPathException.java b/wizards/com/sun/star/wizards/common/NoValidPathException.java new file mode 100644 index 000000000..3dd465953 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/NoValidPathException.java @@ -0,0 +1,44 @@ +/* + * 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 . + */ + +package com.sun.star.wizards.common; + +import com.sun.star.lang.XMultiServiceFactory; + +public class NoValidPathException extends Exception +{ + public NoValidPathException(XMultiServiceFactory xMSF, String _sText) + { + super(_sText); + // TODO: NEVER open a dialog in an exception + if (xMSF != null) + { + SystemDialog.showErrorBox(xMSF, "RID_COMMON_21"); // OfficePathnotavailable + } + } + + public NoValidPathException(XMultiServiceFactory xMSF, String _sText, Throwable cause) + { + super(_sText, cause); + // TODO: NEVER open a dialog in an exception + if (xMSF != null) + { + SystemDialog.showErrorBox(xMSF, "RID_COMMON_21"); // OfficePathnotavailable + } + } +} diff --git a/wizards/com/sun/star/wizards/common/NoValidPathException.py b/wizards/com/sun/star/wizards/common/NoValidPathException.py new file mode 100644 index 000000000..565f67fef --- /dev/null +++ b/wizards/com/sun/star/wizards/common/NoValidPathException.py @@ -0,0 +1,53 @@ +# +# 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 NoValidPathException(Exception): + + def __init__(self, xMSF, _sText): + super(NoValidPathException,self).__init__(_sText) + # TODO: NEVER open a dialog in an exception + from .SystemDialog import SystemDialog + if xMSF: + 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 + + SystemDialog.showErrorBox(xMSF, strings.RID_COMMON_START_21) #OfficePathnotavailable + diff --git a/wizards/com/sun/star/wizards/common/NumberFormatter.java b/wizards/com/sun/star/wizards/common/NumberFormatter.java new file mode 100644 index 000000000..b2220e1cc --- /dev/null +++ b/wizards/com/sun/star/wizards/common/NumberFormatter.java @@ -0,0 +1,266 @@ +/* + * 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 . + */ + +package com.sun.star.wizards.common; + +import java.util.Date; + +import com.sun.star.beans.XPropertySet; +import com.sun.star.lang.Locale; +import com.sun.star.lang.XMultiServiceFactory; +import com.sun.star.uno.AnyConverter; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.uno.XInterface; +import com.sun.star.util.NumberFormat; +import com.sun.star.util.XNumberFormatTypes; +import com.sun.star.util.XNumberFormats; +import com.sun.star.util.XNumberFormatsSupplier; +import com.sun.star.util.XNumberFormatter; + + +public class NumberFormatter +{ + + private int iDateFormatKey = -1; + private int iDateTimeFormatKey = -1; + private int iNumberFormatKey = -1; + private int iTextFormatKey = -1; + private int iTimeFormatKey = -1; + private int iLogicalFormatKey = -1; + private long lDateCorrection; + private XNumberFormatter xNumberFormatter; + private XNumberFormats xNumberFormats; + private XNumberFormatTypes xNumberFormatTypes; + private XPropertySet xNumberFormatSettings; + private final Locale aLocale; + static private final Locale enLocale = new Locale( "en", "US", "" ); + + + public NumberFormatter(XMultiServiceFactory _xMSF, XNumberFormatsSupplier _xNumberFormatsSupplier, Locale _aLocale) throws Exception + { + aLocale = _aLocale; + Object oNumberFormatter = _xMSF.createInstance("com.sun.star.util.NumberFormatter"); + xNumberFormats = _xNumberFormatsSupplier.getNumberFormats(); + xNumberFormatSettings = _xNumberFormatsSupplier.getNumberFormatSettings(); + xNumberFormatter = UnoRuntime.queryInterface(XNumberFormatter.class, oNumberFormatter); + xNumberFormatter.attachNumberFormatsSupplier(_xNumberFormatsSupplier); + xNumberFormatTypes = UnoRuntime.queryInterface(XNumberFormatTypes.class, xNumberFormats); + + } + + public NumberFormatter(XNumberFormatsSupplier _xNumberFormatsSupplier, Locale _aLocale) throws Exception + { + aLocale = _aLocale; + xNumberFormats = _xNumberFormatsSupplier.getNumberFormats(); + xNumberFormatSettings = _xNumberFormatsSupplier.getNumberFormatSettings(); + xNumberFormatTypes = UnoRuntime.queryInterface(XNumberFormatTypes.class, xNumberFormats); + } + + + public double convertStringToNumber(int _nkey, String _sString)throws Exception + { + return xNumberFormatter.convertStringToNumber(_nkey, _sString); + } + + + /** + * @param dateCorrection The lDateCorrection to set. + */ + public void setNullDateCorrection(long dateCorrection) + { + lDateCorrection = dateCorrection; + } + + + public int defineNumberFormat(String _FormatString) + { + try + { + int NewFormatKey = xNumberFormats.queryKey(_FormatString, aLocale, true); + if (NewFormatKey == -1) + { + NewFormatKey = xNumberFormats.addNewConverted(_FormatString, enLocale, aLocale); + } + return NewFormatKey; + } + catch (Exception e) + { + e.printStackTrace(System.err); + return -1; + } + } + + + /** + * returns a numberformat for a FormatString. + */ + private int defineNumberFormat(String _FormatString, Locale _aLocale) + { + try + { + int NewFormatKey = xNumberFormats.queryKey(_FormatString, _aLocale, true); + if (NewFormatKey == -1) + { + NewFormatKey = xNumberFormats.addNew(_FormatString, _aLocale); + } + return NewFormatKey; + } + catch (Exception e) + { + e.printStackTrace(System.err); + return -1; + } + } + + + + public void setNumberFormat(XInterface _xFormatObject, int _FormatKey, NumberFormatter _oNumberFormatter) + { + try + { + XPropertySet xNumberFormat = _oNumberFormatter.xNumberFormats.getByKey(_FormatKey); + String FormatString = AnyConverter.toString(Helper.getUnoPropertyValue(xNumberFormat, "FormatString")); + Locale oLocale = (Locale) Helper.getUnoPropertyValue(xNumberFormat, "Locale"); + int NewFormatKey = defineNumberFormat(FormatString, oLocale); + XPropertySet xPSet = UnoRuntime.queryInterface(XPropertySet.class, _xFormatObject); + if (xPSet.getPropertySetInfo().hasPropertyByName("FormatsSupplier")) + { + xPSet.setPropertyValue("FormatsSupplier", _oNumberFormatter.xNumberFormatter.getNumberFormatsSupplier()); + } + if (xPSet.getPropertySetInfo().hasPropertyByName("NumberFormat")) + { + xPSet.setPropertyValue("NumberFormat", Integer.valueOf(NewFormatKey)); + } + else if (xPSet.getPropertySetInfo().hasPropertyByName("FormatKey")) + { + xPSet.setPropertyValue("FormatKey", Integer.valueOf(NewFormatKey)); + } + else + { + // TODO: throws an exception in a try catch environment, very helpful? + throw new Exception(); + } + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + } + } + + + public long getNullDateCorrection() + { + com.sun.star.util.Date dNullDate = (com.sun.star.util.Date) Helper.getUnoStructValue(this.xNumberFormatSettings, "NullDate"); + long lNullDate = Helper.convertUnoDatetoInteger(dNullDate); + java.util.Calendar oCal = java.util.Calendar.getInstance(); + oCal.set(1900, 1, 1); + Date dTime = oCal.getTime(); + long lTime = dTime.getTime(); + long lDBNullDate = lTime / (3600 * 24000); + lDateCorrection = lDBNullDate - lNullDate; + return lDateCorrection; + } + + + public int setBooleanReportDisplayNumberFormat() + { + String FormatString = "[=1]" + '"' + (char)9745 + '"' + ";[=0]" + '"' + (char)58480 + '"' + ";0"; + iLogicalFormatKey = xNumberFormats.queryKey(FormatString, aLocale, true); + try + { + if (iLogicalFormatKey == -1) + { + iLogicalFormatKey = xNumberFormats.addNew(FormatString, aLocale); + } + } + catch (Exception e) + { //MalformedNumberFormat + e.printStackTrace(); + iLogicalFormatKey = xNumberFormatTypes.getStandardFormat(NumberFormat.LOGICAL, aLocale); + } + return iLogicalFormatKey; + } + + + /** + * @return Returns the iDateFormatKey. + */ + public int getDateFormatKey() + { + if (iDateFormatKey == -1) + { + iDateFormatKey = xNumberFormatTypes.getStandardFormat(NumberFormat.DATE, aLocale); + } + return iDateFormatKey; + } + /** + * @return Returns the iDateTimeFormatKey. + */ + public int getDateTimeFormatKey() + { + if (iDateTimeFormatKey == -1) + { + iDateTimeFormatKey = xNumberFormatTypes.getStandardFormat(NumberFormat.DATETIME, aLocale); + } + return iDateTimeFormatKey; + } + /** + * @return Returns the iLogicalFormatKey. + */ + public int getLogicalFormatKey() + { + if (iLogicalFormatKey == -1) + { + iLogicalFormatKey = xNumberFormatTypes.getStandardFormat(NumberFormat.LOGICAL, aLocale); + } + return iLogicalFormatKey; + } + /** + * @return Returns the iNumberFormatKey. + */ + public int getNumberFormatKey() + { + if (iNumberFormatKey == -1) + { + iNumberFormatKey = xNumberFormatTypes.getStandardFormat(NumberFormat.NUMBER, aLocale); + } + return iNumberFormatKey; + } + /** + * @return Returns the iTextFormatKey. + */ + public int getTextFormatKey() + { + if (iTextFormatKey == -1) + { + iTextFormatKey = xNumberFormatTypes.getStandardFormat(NumberFormat.TEXT, aLocale); + } + return iTextFormatKey; + } + /** + * @return Returns the iTimeFormatKey. + */ + public int getTimeFormatKey() + { + if (iTimeFormatKey == -1) + { + iTimeFormatKey = xNumberFormatTypes.getStandardFormat(NumberFormat.TIME, aLocale); + } + return iTimeFormatKey; + } +} diff --git a/wizards/com/sun/star/wizards/common/NumberFormatter.py b/wizards/com/sun/star/wizards/common/NumberFormatter.py new file mode 100644 index 000000000..54d84c9fc --- /dev/null +++ b/wizards/com/sun/star/wizards/common/NumberFormatter.py @@ -0,0 +1,86 @@ +# +# 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 +from com.sun.star.lang import Locale + +class NumberFormatter(object): + + def __init__(self, _xNumberFormatsSupplier, _aLocale, _xMSF=None): + self.iDateFormatKey = -1 + self.iDateTimeFormatKey = -1 + self.iNumberFormatKey = -1 + self.iTextFormatKey = -1 + self.iTimeFormatKey = -1 + self.iLogicalFormatKey = -1 + self.bNullDateCorrectionIsDefined = False + self.aLocale = _aLocale + if _xMSF is not None: + self.xNumberFormatter = _xMSF.createInstance( + "com.sun.star.util.NumberFormatter") + self.xNumberFormats = _xNumberFormatsSupplier.NumberFormats + self.xNumberFormatSettings = \ + _xNumberFormatsSupplier.NumberFormatSettings + self.xNumberFormatter.attachNumberFormatsSupplier( + _xNumberFormatsSupplier) + + ''' + @param _xMSF + @param _xNumberFormatsSupplier + @return + @throws Exception + @deprecated + ''' + + @classmethod + def createNumberFormatter(self, _xMSF, _xNumberFormatsSupplier): + oNumberFormatter = _xMSF.createInstance( + "com.sun.star.util.NumberFormatter") + oNumberFormatter.attachNumberFormatsSupplier(_xNumberFormatsSupplier) + return oNumberFormatter + + ''' + gives a key to pass to a NumberFormat object. <br/> + example: <br/> + <pre> + XNumberFormatsSupplier nsf = + (XNumberFormatsSupplier)UnoRuntime.queryInterface(...,document) + int key = Desktop.getNumberFormatterKey( + nsf, ...star.i18n.NumberFormatIndex.DATE...) + XNumberFormatter nf = Desktop.createNumberFormatter(xmsf, nsf); + nf.convertNumberToString( key, 1972 ); + </pre> + @param numberFormatsSupplier + @param type - a constant out of i18n.NumberFormatIndex enumeration. + @return a key to use with a util.NumberFormat instance. + ''' + + @classmethod + def getNumberFormatterKey(self, numberFormatsSupplier, Type): + return numberFormatsSupplier.NumberFormats.getFormatIndex( + Type, Locale()) + + def convertNumberToString(self, _nkey, _dblValue, _xNumberFormatter=None): + if _xNumberFormatter is None: + return self.xNumberFormatter.convertNumberToString( + _nkey, _dblValue) + else: + return _xNumberFormatter.convertNumberToString(_nkey, _dblValue) + + def convertStringToNumber(self, _nkey, _sString): + return self.xNumberFormatter.convertStringToNumber(_nkey, _sString) + diff --git a/wizards/com/sun/star/wizards/common/NumericalHelper.java b/wizards/com/sun/star/wizards/common/NumericalHelper.java new file mode 100644 index 000000000..af74704df --- /dev/null +++ b/wizards/com/sun/star/wizards/common/NumericalHelper.java @@ -0,0 +1,353 @@ +/* + * 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 . + */ +package com.sun.star.wizards.common; + +import com.sun.star.uno.AnyConverter; +import com.sun.star.uno.TypeClass; + +/** + * A class for helping with all kinds of numerical conversions. + * Optional or named parameters in SO are of the Object type in Java. + * These objects must be converted to the right simple value type. + * Unfortunately, StarBasic does not know the original desired type, + * and a value that should be a "Float" is delivered as "Byte". This class + * handles the conversions of these types.<br> + * This class does not log warnings (or throws Exceptions) when the precision + * of a value is lost. + */ +public class NumericalHelper +{ + + private static final int BYTE_TYPE = 0; + private static final int SHORT_TYPE = 1; + private static final int INT_TYPE = 2; + private static final int LONG_TYPE = 3; + private static final int FLOAT_TYPE = 4; + private static final int DOUBLE_TYPE = 5; + private static final int CHAR_TYPE = 6; + private static final int STRING_TYPE = -1; + private static final int BOOLEAN_TYPE = -2; + private static final int SEQUENCE_TYPE = -3; + + /** + * private c'tor to prevent instantiation + */ + private NumericalHelper() + { + // private c'tor, so no one can instantiate + } + + + + /** + * get an int value from the object + * @throws com.sun.star.lang.IllegalArgumentException if the object cannot be converted + */ + public static int toInt(Object aValue) + throws com.sun.star.lang.IllegalArgumentException + { + int retValue = 0; + TypeObject aTypeObject = getTypeObject(aValue); + switch (aTypeObject.iType) + { + case BYTE_TYPE: + retValue = getByte(aTypeObject); + break; + case CHAR_TYPE: + retValue = getChar(aTypeObject); + break; + case SHORT_TYPE: + retValue = getShort(aTypeObject); + break; + case INT_TYPE: + retValue = getInt(aTypeObject); + break; + case LONG_TYPE: + retValue = (int) getLong(aTypeObject); + break; + case FLOAT_TYPE: + retValue = (int) getFloat(aTypeObject); + break; + case DOUBLE_TYPE: + retValue = (int) getDouble(aTypeObject); + break; + case STRING_TYPE: + try + { + retValue = Integer.parseInt((String) aTypeObject.aValue); + } + catch (java.lang.NumberFormatException e) + { + throw new com.sun.star.lang.IllegalArgumentException(e, + "Cannot convert to int: " + aTypeObject.aValue); + } + break; + case BOOLEAN_TYPE: + retValue = getBool(aTypeObject) ? -1 : 0; + break; + default: + throw new com.sun.star.lang.IllegalArgumentException( + "Cannot convert this type: " + aValue.getClass().getName()); + } + return retValue; + } + + /** + * get a double value from the object + * @throws com.sun.star.lang.IllegalArgumentException if the object cannot be converted + */ + public static double toDouble(Object aValue) + throws com.sun.star.lang.IllegalArgumentException + { + double retValue = 0.0; + TypeObject aTypeObject = getTypeObject(aValue); + switch (aTypeObject.iType) + { + case BYTE_TYPE: + retValue = getByte(aTypeObject); + break; + case CHAR_TYPE: + retValue = getChar(aTypeObject); + break; + case SHORT_TYPE: + retValue = getShort(aTypeObject); + break; + case INT_TYPE: + retValue = getInt(aTypeObject); + break; + case LONG_TYPE: + retValue = getLong(aTypeObject); + break; + case FLOAT_TYPE: + retValue = getFloat(aTypeObject); + break; + case DOUBLE_TYPE: + retValue = getDouble(aTypeObject); + break; + case STRING_TYPE: + try + { + retValue = Float.parseFloat((String) aTypeObject.aValue); + } + catch (java.lang.NumberFormatException e) + { + throw new com.sun.star.lang.IllegalArgumentException(e, + "Cannot convert to short: " + aTypeObject.aValue); + } + break; + case BOOLEAN_TYPE: + retValue = getBool(aTypeObject) ? (double) -1 : (double) 0; + break; + default: + throw new com.sun.star.lang.IllegalArgumentException( + "Cannot convert this type: " + aValue.getClass().getName()); + } + return retValue; + } + + /** + * get the type object from the given object + * @param aValue an object representing a (numerical) value; can also be an 'any' + * @return a type object: the object together with the its type information + * @throws com.sun.star.lang.IllegalArgumentException if the object is unknown + */ + private static TypeObject getTypeObject(Object aValue) + throws com.sun.star.lang.IllegalArgumentException + { + TypeObject aTypeObject = new TypeObject(); + if (aValue == null || AnyConverter.isVoid(aValue)) + { + throw new com.sun.star.lang.IllegalArgumentException("Cannot convert a null object."); + } + int type = AnyConverter.getType(aValue).getTypeClass().getValue(); + switch (type) + { + case TypeClass.CHAR_value: + aTypeObject.iType = CHAR_TYPE; + aTypeObject.aValue = new Character(AnyConverter.toChar(aValue)); + break; + case TypeClass.BYTE_value: + aTypeObject.iType = BYTE_TYPE; + aTypeObject.aValue = Byte.valueOf(AnyConverter.toByte(aValue)); + break; + case TypeClass.SHORT_value: + aTypeObject.iType = SHORT_TYPE; + aTypeObject.aValue = Short.valueOf(AnyConverter.toShort(aValue)); + break; + case TypeClass.LONG_value: + aTypeObject.iType = INT_TYPE; + aTypeObject.aValue = Integer.valueOf(AnyConverter.toInt(aValue)); + break; + case TypeClass.HYPER_value: + aTypeObject.iType = LONG_TYPE; + aTypeObject.aValue = Long.valueOf(AnyConverter.toLong(aValue)); + break; + case TypeClass.FLOAT_value: + aTypeObject.iType = FLOAT_TYPE; + aTypeObject.aValue = new Float(AnyConverter.toFloat(aValue)); + break; + case TypeClass.DOUBLE_value: + aTypeObject.iType = DOUBLE_TYPE; + aTypeObject.aValue = new Double(AnyConverter.toDouble(aValue)); + break; + case TypeClass.STRING_value: + aTypeObject.iType = STRING_TYPE; + aTypeObject.aValue = AnyConverter.toString(aValue); + break; + case TypeClass.BOOLEAN_value: + aTypeObject.iType = BOOLEAN_TYPE; + aTypeObject.aValue = Boolean.valueOf(AnyConverter.toBoolean(aValue)); + break; + case TypeClass.SEQUENCE_value: + aTypeObject.iType = SEQUENCE_TYPE; + aTypeObject.aValue = aValue; + break; + default: + throw new com.sun.star.lang.IllegalArgumentException( + "Cannot convert this type: " + aValue.getClass().getName()); + } + return aTypeObject; + } + + /** + * get the simple byte type + */ + private static byte getByte(TypeObject typeObject) + throws com.sun.star.lang.IllegalArgumentException + { + if (typeObject.iType != BYTE_TYPE) + { + throw new com.sun.star.lang.IllegalArgumentException( + "Given argument is not a byte type."); + } + return ((Byte) typeObject.aValue).byteValue(); + } + + /** + * get the simple char type + */ + private static char getChar(TypeObject typeObject) + throws com.sun.star.lang.IllegalArgumentException + { + if (typeObject.iType != CHAR_TYPE) + { + throw new com.sun.star.lang.IllegalArgumentException( + "Given argument is not a char type."); + } + return ((Character) typeObject.aValue).charValue(); + } + + /** + * get the simple short type + */ + private static short getShort(TypeObject typeObject) + throws com.sun.star.lang.IllegalArgumentException + { + if (typeObject.iType != SHORT_TYPE) + { + throw new com.sun.star.lang.IllegalArgumentException( + "Given argument is not a short type."); + } + return ((Short) typeObject.aValue).shortValue(); + } + + /** + * get the simple int type + * @param typeObject + * @return + * @throws com.sun.star.lang.IllegalArgumentException + */ + private static int getInt(TypeObject typeObject) + throws com.sun.star.lang.IllegalArgumentException + { + if (typeObject.iType != INT_TYPE) + { + throw new com.sun.star.lang.IllegalArgumentException( + "Given argument is not an int type."); + } + return ((Integer) typeObject.aValue).intValue(); + } + + /** + * get the simple float type + * @throws com.sun.star.lang.IllegalArgumentException + */ + private static float getFloat(TypeObject typeObject) + throws com.sun.star.lang.IllegalArgumentException + { + if (typeObject.iType != FLOAT_TYPE) + { + throw new com.sun.star.lang.IllegalArgumentException( + "Given argument is not a float type."); + } + return ((Float) typeObject.aValue).floatValue(); + } + + /** + * get the simple double type + */ + private static double getDouble(TypeObject typeObject) + throws com.sun.star.lang.IllegalArgumentException + { + if (typeObject.iType != DOUBLE_TYPE) + { + throw new com.sun.star.lang.IllegalArgumentException( + "Given argument is not a double type."); + } + return ((Double) typeObject.aValue).doubleValue(); + } + + /** + * get the simple long type + */ + private static long getLong(TypeObject typeObject) + throws com.sun.star.lang.IllegalArgumentException + { + if (typeObject.iType != LONG_TYPE) + { + throw new com.sun.star.lang.IllegalArgumentException( + "Given argument is not a long type."); + } + return ((Long) typeObject.aValue).longValue(); + } + + /** + * get the simple boolean type + */ + private static boolean getBool(TypeObject typeObject) + throws com.sun.star.lang.IllegalArgumentException + { + if (typeObject.iType != BOOLEAN_TYPE) + { + throw new com.sun.star.lang.IllegalArgumentException( + "Given argument is not a boolean type."); + } + return ((Boolean) typeObject.aValue).booleanValue(); + } + + /** + * a class to contain a type and a value for easier conversions + */ + private static class TypeObject + { + + public int iType; + public Object aValue; + } + +} diff --git a/wizards/com/sun/star/wizards/common/ParaStyled.java b/wizards/com/sun/star/wizards/common/ParaStyled.java new file mode 100644 index 000000000..6046571b7 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/ParaStyled.java @@ -0,0 +1,53 @@ +/* + * 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 . + */ + +package com.sun.star.wizards.common; + +import com.sun.star.uno.UnoRuntime; +import com.sun.star.text.*; + +class ParaStyled +{ + + private String paraStyle; + + ParaStyled(String paraStyle_) + { + paraStyle = paraStyle_; + } + + private void format(Object textRange) + { + XText o; + o = UnoRuntime.queryInterface(XText.class, textRange); + if (o == null) + { + o = UnoRuntime.queryInterface(XTextRange.class, textRange).getText(); + } + XTextRange xtr = UnoRuntime.queryInterface(XTextRange.class, textRange); + XTextCursor cursor = o.createTextCursorByRange(xtr); + + Helper.setUnoPropertyValue(cursor, "ParaStyleName", paraStyle); + } + + public void write(Object textRange) + { + format(textRange); + } +} + diff --git a/wizards/com/sun/star/wizards/common/PlaceholderTextElement.java b/wizards/com/sun/star/wizards/common/PlaceholderTextElement.java new file mode 100644 index 000000000..72778d5ed --- /dev/null +++ b/wizards/com/sun/star/wizards/common/PlaceholderTextElement.java @@ -0,0 +1,81 @@ +/* + * 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 . + */ + +package com.sun.star.wizards.common; + +import com.sun.star.uno.Exception; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.lang.XMultiServiceFactory; +import com.sun.star.text.*; + +public class PlaceholderTextElement extends TextElement +{ + + private String hint; + private String placeHolderText; + private XMultiServiceFactory xmsf; + + public PlaceholderTextElement(XTextRange textRange, String placeHolderText_, String hint_, XMultiServiceFactory xmsf_) + { + super(textRange); + placeHolderText = placeHolderText_; + hint = hint_; + xmsf = xmsf_; + } + + @Override + public void write(Object textRange) + { + super.write(textRange); + if (text.equals(PropertyNames.EMPTY_STRING)) + { + XTextRange xTextRange = UnoRuntime.queryInterface(XTextRange.class, textRange); + try + { + XTextContent xTextContent = createPlaceHolder(xmsf, placeHolderText, hint); + xTextRange.getText().insertTextContent(xTextRange.getStart(), xTextContent, true); + } + catch (com.sun.star.lang.IllegalArgumentException ex) + { + ex.printStackTrace(); + } + } + } + + private static XTextContent createPlaceHolder(XMultiServiceFactory xmsf, String ph, String hint) + { + Object placeHolder; + try + { + placeHolder = xmsf.createInstance("com.sun.star.text.TextField.JumpEdit"); + } + catch (Exception ex) + { + ex.printStackTrace(); + return null; + } + Helper.setUnoPropertyValue(placeHolder, "PlaceHolder", ph); + Helper.setUnoPropertyValue(placeHolder, "Hint", hint); + Helper.setUnoPropertyValue(placeHolder, "PlaceHolderType", Short.valueOf(PlaceholderType.TEXT)); + return UnoRuntime.queryInterface(XTextContent.class, placeHolder); + + } + +} + + diff --git a/wizards/com/sun/star/wizards/common/Properties.java b/wizards/com/sun/star/wizards/common/Properties.java new file mode 100644 index 000000000..2056921d3 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/Properties.java @@ -0,0 +1,85 @@ +/* + * 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 . + */ +package com.sun.star.wizards.common; + +import com.sun.star.beans.PropertyValue; +import java.util.*; + +/** + * Simplifies handling Arrays of PropertyValue. + * To make a use of this class, instantiate it, and call + * the put(propName,propValue) method. + * caution: propName should always be a String. + * When finished, call the getProperties() method to get an array of the set properties. + */ +public class Properties extends HashMap<String,Object> +{ + + public static Object getPropertyValue(PropertyValue[] props, String propName) + { + for (int i = 0; i < props.length; i++) + { + if (propName.equals(props[i].Name)) + { + return props[i].Value; + } + } + throw new IllegalArgumentException("Property '" + propName + "' not found."); + } + + public static boolean hasPropertyValue(PropertyValue[] props, String propName) + { + for (int i = 0; i < props.length; i++) + { + if (propName.equals(props[i].Name)) + { + return true; + } + } + return false; + } + + public static PropertyValue createProperty(String name, Object value) + { + PropertyValue pv = new PropertyValue(); + pv.Name = name; + pv.Value = value; + return pv; + } + + public static PropertyValue createProperty(String name, Object value, int handle) + { + PropertyValue pv = createProperty(name, value); + pv.Handle = handle; + return pv; + } + + public static PropertyValue[] convertToPropertyValueArray(Object[] _oObjectArray) + { + PropertyValue[] retproperties = null; + if (_oObjectArray != null && _oObjectArray.length > 0) + { + retproperties = new PropertyValue[_oObjectArray.length]; + for (int i = 0; i < _oObjectArray.length; i++) + { + retproperties[i] = (PropertyValue) _oObjectArray[i]; + } + } + return retproperties; + } +} diff --git a/wizards/com/sun/star/wizards/common/Properties.py b/wizards/com/sun/star/wizards/common/Properties.py new file mode 100644 index 000000000..974856af6 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/Properties.py @@ -0,0 +1,62 @@ +# +# 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 com.sun.star.beans import PropertyValue + +''' +Simplifies handling Arrays of PropertyValue. +To make a use of this class, instantiate it, and call +the put(propName,propValue) method. +caution: propName should always be a String. +When finished, call the getProperties() method to get an array of the set properties. +''' + +class Properties(dict): + + @classmethod + def getPropertyValue(self, props, propName): + for i in props: + if propName == i.Name: + return i.Value + + raise AttributeError ("Property '" + propName + "' not found.") + + @classmethod + def hasPropertyValue(self, props, propName): + for i in props: + if propName == i.Name: + return True + return False + + @classmethod + def getProperties(self, _map): + pv = [] + for k,v in _map.items(): + pv.append(self.createProperty(k, v)) + return pv + + @classmethod + def createProperty(self, name, value, handle=None): + pv = PropertyValue() + pv.Name = name + pv.Value = value + if handle is not None: + pv.Handle = handle + return pv + + def getProperties1(self): + return self.getProperties(self) diff --git a/wizards/com/sun/star/wizards/common/PropertyNames.java b/wizards/com/sun/star/wizards/common/PropertyNames.java new file mode 100644 index 000000000..5e5df5c87 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/PropertyNames.java @@ -0,0 +1,57 @@ +/* + * 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 . + */ +package com.sun.star.wizards.common; + +public class PropertyNames +{ + + public static String PROPERTY_DEFAULT_VALUE = "DefaultValue"; + public static String PROPERTY_IS_NULLABLE = "IsNullable"; + public static String PROPERTY_INPUT_REQUIRED = "InputRequired"; + public static String PROPERTY_ENABLED = "Enabled"; + public static String PROPERTY_HEIGHT = "Height"; + public static String PROPERTY_HELPURL = "HelpURL"; + public static String PROPERTY_POSITION_X = "PositionX"; + public static String PROPERTY_POSITION_Y = "PositionY"; + public static String PROPERTY_LABEL = "Label"; + public static String PROPERTY_MULTILINE = "MultiLine"; + public static String PROPERTY_NAME = "Name"; + public static String PROPERTY_STEP = "Step"; + public static String PROPERTY_WIDTH = "Width"; + public static String PROPERTY_TABINDEX = "TabIndex"; + public static String PROPERTY_STATE = "State"; + public static String PROPERTY_IMAGEURL = "ImageURL"; + public static String PROPERTY_TITLE = "Title"; + public static String PROPERTY_BORDER = "Border"; + public static String PROPERTY_MOVEABLE = "Moveable"; + public static String PROPERTY_ALIGN = "Align"; + public static String COMMAND = "Command"; + public static String COMMAND_TYPE = "CommandType"; + public static String SELECTED_ITEMS = "SelectedItems"; + public static String URL = "URL"; + public static String ACTIVE_CONNECTION = "ActiveConnection"; + public static String ASC = "ASC"; + public static String SEMI_COLON = ";"; + public static String EMPTY_STRING = ""; + public static String START = "start"; + public static String ORIENTATION = "Orientation"; + public static String READ_ONLY = "ReadOnly"; + public static String SPACE = " "; + public static String STRING_ITEM_LIST = "StringItemList"; + public static String FONT_DESCRIPTOR = "FontDescriptor"; +} diff --git a/wizards/com/sun/star/wizards/common/PropertyNames.py b/wizards/com/sun/star/wizards/common/PropertyNames.py new file mode 100644 index 000000000..a78c08d29 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/PropertyNames.py @@ -0,0 +1,34 @@ +# +# 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 PropertyNames: + PROPERTY_ENABLED = "Enabled" + PROPERTY_HEIGHT = "Height" + PROPERTY_HELPURL = "HelpURL" + PROPERTY_POSITION_X = "PositionX" + PROPERTY_POSITION_Y = "PositionY" + PROPERTY_LABEL = "Label" + PROPERTY_MULTILINE = "MultiLine" + PROPERTY_NAME = "Name" + PROPERTY_STEP = "Step" + PROPERTY_WIDTH = "Width" + PROPERTY_TABINDEX = "TabIndex" + PROPERTY_STATE = "State" + PROPERTY_IMAGEURL = "ImageURL" + PROPERTY_TITLE = "Title" + PROPERTY_MOVEABLE = "Moveable" + PROPERTY_CLOSEABLE = "Closeable" diff --git a/wizards/com/sun/star/wizards/common/PropertySetHelper.java b/wizards/com/sun/star/wizards/common/PropertySetHelper.java new file mode 100644 index 000000000..7de45668e --- /dev/null +++ b/wizards/com/sun/star/wizards/common/PropertySetHelper.java @@ -0,0 +1,257 @@ +/* + * 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 . + */ +package com.sun.star.wizards.common; + +import com.sun.star.uno.UnoRuntime; +import com.sun.star.beans.XPropertySet; +import com.sun.star.uno.AnyConverter; +import java.util.HashMap; + +public class PropertySetHelper +{ + + private XPropertySet m_xPropertySet; + private HashMap<String, Object> m_aHashMap; + + public PropertySetHelper(Object _aObj) + { + if (_aObj == null) + { + return; + } + m_xPropertySet = UnoRuntime.queryInterface(XPropertySet.class, _aObj); + } + + private HashMap<String, Object> getHashMap() + { + if (m_aHashMap == null) + { + m_aHashMap = new HashMap<String, Object>(); + } + return m_aHashMap; + } + + /** + set a property, don't throw any exceptions, they will only write down as a hint in the helper debug output + @param _sName name of the property to set + @param _aValue property value as object + */ + public void setPropertyValueDontThrow(String _sName, Object _aValue) + { + try + { + setPropertyValue(_sName, _aValue); + } + catch (Exception e) + { + DebugHelper.writeInfo("Don't throw the exception with property name(" + _sName + " ) : " + e.getMessage()); + } + } + + /** + set a property, + @param _sName name of the property to set + @param _aValue property value as object + */ + private void setPropertyValue(String _sName, Object _aValue) throws java.lang.Exception + { + if (m_xPropertySet != null) + { + try + { + m_xPropertySet.setPropertyValue(_sName, _aValue); + } + // Exceptions are not from interest + catch (com.sun.star.beans.UnknownPropertyException e) + { + DebugHelper.writeInfo(e.getMessage()); + DebugHelper.exception(e); + } + catch (com.sun.star.beans.PropertyVetoException e) + { + DebugHelper.writeInfo(e.getMessage()); + DebugHelper.exception(e); + } + catch (com.sun.star.lang.WrappedTargetException e) + { + DebugHelper.writeInfo(e.getMessage()); + DebugHelper.exception(e); + } + } + else + { + getHashMap().put(_sName, _aValue); + } + } + + /** + get a property and convert it to a int value + @param _sName the string name of the property + @param _nDefault if an error occur, return this value + @return the int value of the property + */ + public int getPropertyValueAsInteger(String _sName, int _nDefault) + { + Object aObject = null; + int nValue = _nDefault; + + if (m_xPropertySet != null) + { + try + { + aObject = m_xPropertySet.getPropertyValue(_sName); + } + catch (com.sun.star.beans.UnknownPropertyException e) + { + DebugHelper.writeInfo(e.getMessage()); + } + catch (com.sun.star.lang.WrappedTargetException e) + { + DebugHelper.writeInfo(e.getMessage()); + } + } + if (aObject != null) + { + try + { + nValue = NumericalHelper.toInt(aObject); + } + catch (com.sun.star.lang.IllegalArgumentException e) + { + DebugHelper.writeInfo("can't convert an object to integer."); + } + } + return nValue; + } + + + + /** + get a property and convert it to a double value + @param _sName the string name of the property + @param _nDefault if an error occur, return this value + @return the int value of the property + */ + public double getPropertyValueAsDouble(String _sName, double _nDefault) + { + Object aObject = null; + double nValue = _nDefault; + + if (m_xPropertySet != null) + { + try + { + aObject = m_xPropertySet.getPropertyValue(_sName); + } + catch (com.sun.star.beans.UnknownPropertyException e) + { + DebugHelper.writeInfo(e.getMessage()); + } + catch (com.sun.star.lang.WrappedTargetException e) + { + DebugHelper.writeInfo(e.getMessage()); + } + } + if (aObject == null && getHashMap().containsKey(_sName)) + { + aObject = getHashMap().get(_sName); + } + if (aObject != null) + { + try + { + nValue = NumericalHelper.toDouble(aObject); + } + catch (com.sun.star.lang.IllegalArgumentException e) + { + DebugHelper.writeInfo("can't convert an object to integer."); + } + } + return nValue; + } + + + + /** + get a property and convert it to a string value + @param _sName the string name of the property + @param _sDefault if an error occur, return this value + @return the string value of the property + */ + public String getPropertyValueAsString(String _sName, String _sDefault) + { + Object aObject = null; + String sValue = _sDefault; + + if (m_xPropertySet != null) + { + try + { + aObject = m_xPropertySet.getPropertyValue(_sName); + } + catch (com.sun.star.beans.UnknownPropertyException e) + { + DebugHelper.writeInfo(e.getMessage()); + } + catch (com.sun.star.lang.WrappedTargetException e) + { + DebugHelper.writeInfo(e.getMessage()); + } + } + if (aObject != null) + { + try + { + sValue = AnyConverter.toString(aObject); + } + catch (com.sun.star.lang.IllegalArgumentException e) + { + DebugHelper.writeInfo("can't convert an object to string."); + } + } + return sValue; + } + + /** + get a property and don't convert it + @param _sName the string name of the property + @return the object value of the property without any conversion + */ + public Object getPropertyValueAsObject(String _sName) + { + Object aObject = null; + + if (m_xPropertySet != null) + { + try + { + aObject = m_xPropertySet.getPropertyValue(_sName); + } + catch (com.sun.star.beans.UnknownPropertyException e) + { + DebugHelper.writeInfo(e.getMessage()); + } + catch (com.sun.star.lang.WrappedTargetException e) + { + DebugHelper.writeInfo(e.getMessage()); + } + } + return aObject; + } + +} diff --git a/wizards/com/sun/star/wizards/common/Resource.java b/wizards/com/sun/star/wizards/common/Resource.java new file mode 100644 index 000000000..0da8f9756 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/Resource.java @@ -0,0 +1,68 @@ +/* + * 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 . + */ + +package com.sun.star.wizards.common; + +import com.sun.star.beans.PropertyState; +import com.sun.star.beans.PropertyValue; +import com.sun.star.beans.XPropertySet; +import com.sun.star.configuration.theDefaultProvider; +import com.sun.star.lang.Locale; +import com.sun.star.lang.XMultiServiceFactory; +import com.sun.star.resource.StringResourceWithLocation; +import com.sun.star.resource.XStringResourceWithLocation; +import com.sun.star.util.XMacroExpander; +import com.sun.star.uno.AnyConverter; +import com.sun.star.uno.XComponentContext; +import com.sun.star.uno.XInterface; +import com.sun.star.uno.UnoRuntime; + +public final class Resource +{ + private XStringResourceWithLocation m_xStrResource; + + /** + * <p>Load the resource bundle that contains the resource {@code String} + * values.</p> + */ + public Resource(XMultiServiceFactory xMSF) { + XComponentContext xContext = Helper.getComponentContext(xMSF); + XMacroExpander xExpander = Helper.getMacroExpander(xMSF); + String sPath = xExpander.expandMacros("$BRAND_BASE_DIR/$BRAND_SHARE_SUBDIR/wizards/"); + Locale locale = Configuration.getUILocale(xMSF); + m_xStrResource = StringResourceWithLocation.create(xContext, sPath, true, locale, "resources", "", null); + } + + /** + * This method returns the corresponding {@code String} given the key. + * + * @param key Key string for getting the message {@code String}. + * @return Message {@code String} corresponding to the key. + */ + public String getResText(String key) { + return m_xStrResource.resolveString(key); + } + + public static void showCommonResourceError(XMultiServiceFactory xMSF) + { + String ProductName = Configuration.getProductName(xMSF); + String sError = "The files required could not be found.\nPlease start the %PRODUCTNAME Setup and choose 'Repair'."; + sError = JavaTools.replaceSubString(sError, ProductName, "%PRODUCTNAME"); + SystemDialog.showMessageBox(xMSF, "ErrorBox", com.sun.star.awt.VclWindowPeerAttribute.OK, sError); + } +} diff --git a/wizards/com/sun/star/wizards/common/SystemDialog.java b/wizards/com/sun/star/wizards/common/SystemDialog.java new file mode 100644 index 000000000..73be87b5a --- /dev/null +++ b/wizards/com/sun/star/wizards/common/SystemDialog.java @@ -0,0 +1,125 @@ +/* + * 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 . + */ +package com.sun.star.wizards.common; + +import com.sun.star.lang.XMultiServiceFactory; +import com.sun.star.uno.XInterface; +import com.sun.star.uno.UnoRuntime; +import com.sun.star.lang.XComponent; +import com.sun.star.frame.XFrame; +import com.sun.star.awt.XWindowPeer; +import com.sun.star.awt.XToolkit; +import com.sun.star.awt.XMessageBox; + +public class SystemDialog +{ + + public static int showErrorBox(XMultiServiceFactory xMSF, String ResID, String AddTag, String AddString) + { + Resource oResource; + String ProductName = Configuration.getProductName(xMSF); + oResource = new Resource(xMSF); + String sErrorMessage = oResource.getResText(ResID); + sErrorMessage = JavaTools.replaceSubString(sErrorMessage, ProductName, "%PRODUCTNAME"); + sErrorMessage = JavaTools.replaceSubString(sErrorMessage, String.valueOf((char) 13), "<BR>"); + sErrorMessage = JavaTools.replaceSubString(sErrorMessage, AddString, AddTag); + return SystemDialog.showMessageBox(xMSF, "ErrorBox", com.sun.star.awt.VclWindowPeerAttribute.OK, sErrorMessage); + } + + public static int showErrorBox(XMultiServiceFactory xMSF, String ResID) + { + Resource oResource; + String ProductName = Configuration.getProductName(xMSF); + oResource = new Resource(xMSF); + String sErrorMessage = oResource.getResText(ResID); + sErrorMessage = JavaTools.replaceSubString(sErrorMessage, ProductName, "%PRODUCTNAME"); + sErrorMessage = JavaTools.replaceSubString(sErrorMessage, String.valueOf((char) 13), "<BR>"); + return showMessageBox(xMSF, "ErrorBox", com.sun.star.awt.VclWindowPeerAttribute.OK, sErrorMessage); + } + + /* + * example: + * (xMSF, "ErrorBox", com.sun.star.awt.VclWindowPeerAttribute.OK, "message") + */ + /** + * @param windowServiceName one of the following strings: + * "ErrorBox", "WarningBox", "MessBox", "InfoBox", "QueryBox". + * There are other values possible, look + * under src/toolkit/source/awt/vcltoolkit.cxx + * @param windowAttribute see com.sun.star.awt.VclWindowPeerAttribute + * @return 0 = cancel, 1 = ok, 2 = yes, 3 = no(I'm not sure here) + * other values check for yourself ;-) + */ + public static int showMessageBox(XMultiServiceFactory xMSF, String windowServiceName, int windowAttribute, String MessageText) + { + + short iMessage = 0; + try + { + if (MessageText == null) + { + return 0; + } + XFrame xFrame = Desktop.getActiveFrame(xMSF); + XWindowPeer xWindowPeer = UnoRuntime.queryInterface(XWindowPeer.class, xFrame.getComponentWindow()); + return showMessageBox(xMSF, xWindowPeer, windowServiceName, windowAttribute, MessageText); + } + catch (Exception exception) + { + exception.printStackTrace(System.err); + } + return iMessage; + } + + /** + * just like the other showMessageBox(...) method, but receives a + * peer argument to use to create the message box. + */ + public static int showMessageBox(XMultiServiceFactory xMSF, XWindowPeer peer, String windowServiceName, int windowAttribute, String MessageText) + { + // If the peer is null we try to get one from the desktop... + if (peer == null) + { + return showMessageBox(xMSF, windowServiceName, windowAttribute, MessageText); + } + short iMessage = 0; + try + { + XInterface xAWTToolkit = (XInterface) xMSF.createInstance("com.sun.star.awt.Toolkit"); + XToolkit xToolkit = UnoRuntime.queryInterface(XToolkit.class, xAWTToolkit); + com.sun.star.awt.WindowDescriptor oDescriptor = new com.sun.star.awt.WindowDescriptor(); + oDescriptor.WindowServiceName = windowServiceName; + oDescriptor.Parent = peer; + oDescriptor.Type = com.sun.star.awt.WindowClass.MODALTOP; + oDescriptor.WindowAttributes = windowAttribute; + XWindowPeer xMsgPeer = xToolkit.createWindow(oDescriptor); + XMessageBox xMsgbox = UnoRuntime.queryInterface(XMessageBox.class, xMsgPeer); + XComponent xComponent = UnoRuntime.queryInterface(XComponent.class, xMsgbox); + xMsgbox.setMessageText(MessageText); + iMessage = xMsgbox.execute(); + xComponent.dispose(); + } + catch (Exception e) + { + // TODO Auto-generated catch block + e.printStackTrace(System.err); + } + return iMessage; + } + +} diff --git a/wizards/com/sun/star/wizards/common/SystemDialog.py b/wizards/com/sun/star/wizards/common/SystemDialog.py new file mode 100644 index 000000000..412029213 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/SystemDialog.py @@ -0,0 +1,180 @@ +# +# 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 +from .Desktop import Desktop + +from com.sun.star.ui.dialogs.TemplateDescription import \ + FILESAVE_AUTOEXTENSION, FILEOPEN_SIMPLE +from com.sun.star.ui.dialogs.ExtendedFilePickerElementIds import \ + CHECKBOX_AUTOEXTENSION +from com.sun.star.awt import WindowDescriptor +from com.sun.star.awt.WindowClass import MODALTOP +from com.sun.star.lang import IllegalArgumentException +from com.sun.star.awt.VclWindowPeerAttribute import OK + +class SystemDialog(object): + + def __init__(self, xMSF, ServiceName, Type): + try: + self.xMSF = xMSF + self.systemDialog = xMSF.createInstance(ServiceName) + self.xStringSubstitution = self.createStringSubstitution(xMSF) + + # Add a name textbox to the filepicker + if self.systemDialog is not None: + if (hasattr(self.systemDialog, "initialize")): + self.systemDialog.initialize((Type,)) + + except Exception: + traceback.print_exc() + + @classmethod + def createStoreDialog(self, xmsf): + return SystemDialog( + xmsf, "com.sun.star.ui.dialogs.FilePicker", + FILESAVE_AUTOEXTENSION) + + def subst(self, path): + try: + s = self.xStringSubstitution.substituteVariables(path, False) + return s + except Exception: + traceback.print_exc() + return path + + def callStoreDialog(self, displayDir, defaultName, sDocuType=None): + if sDocuType is not None: + self.addFilterToDialog(defaultName[-3:], sDocuType, True) + + self.sStorePath = None + try: + self.systemDialog.setValue(CHECKBOX_AUTOEXTENSION, 0, True) + self.systemDialog.setDefaultName(defaultName) + self.systemDialog.setDisplayDirectory(self.subst(displayDir)) + if self.execute(self.systemDialog): + sPathList = self.systemDialog.getFiles() + self.sStorePath = sPathList[0] + + except Exception: + traceback.print_exc() + + return self.sStorePath + + def execute(self, execDialog): + return execDialog.execute() == 1 + + def addFilterToDialog(self, sExtension, filterName, setToDefault): + try: + #get the localized filtername + uiName = self.getFilterUIName(filterName) + pattern = "*." + sExtension + #add the filter + self.addFilter(uiName, pattern, setToDefault) + except Exception: + traceback.print_exc() + + def addFilter(self, uiName, pattern, setToDefault): + try: + self.systemDialog.appendFilter(uiName, pattern) + if setToDefault: + self.systemDialog.setCurrentFilter(uiName) + + except Exception: + traceback.print_exc() + + ''' + note the result should go through conversion of the product name. + @param filterName + @return the UI localized name of the given filter name. + ''' + + def getFilterUIName(self, filterName): + try: + oFactory = self.xMSF.createInstance( + "com.sun.star.document.FilterFactory") + oObject = oFactory.getByName(filterName) + xPropertyValue = list(oObject) + for i in xPropertyValue: + if i is not None and i.Name == "UIName": + return str(i.Value).replace("%productname%", "LibreOffice") + + raise Exception( + "UIName property not found for Filter " + filterName); + except Exception: + traceback.print_exc() + return None + + @classmethod + def showErrorBox(self, xMSF, sErrorMessage, AddTag=None, AddString=None): + sErrorMessage = sErrorMessage.replace("%PRODUCTNAME", "LibreOffice" ) + sErrorMessage = sErrorMessage.replace(str(13), "<BR>") + if AddTag and AddString: + sErrorMessage = sErrorMessage.replace( AddString, AddTag) + return self.showMessageBox(xMSF, "ErrorBox", OK, sErrorMessage) + + ''' + example: + (xMSF, "ErrorBox", com.sun.star.awt.VclWindowPeerAttribute.OK, "message") + + @param windowServiceName one of the following strings: + "ErrorBox", "WarningBox", "MessBox", "InfoBox", "QueryBox". + There are other values possible, look + under src/toolkit/source/awt/vcltoolkit.cxx + @param windowAttribute see com.sun.star.awt.VclWindowPeerAttribute + @return 0 = cancel, 1 = ok, 2 = yes, 3 = no(I'm not sure here) + other values check for yourself ;-) + ''' + @classmethod + def showMessageBox(self, xMSF, windowServiceName, windowAttribute, + MessageText, peer=None): + + if MessageText is None: + return 0 + + iMessage = 0 + try: + # If the peer is null we try to get one from the desktop... + if peer is None: + xFrame = Desktop.getActiveFrame(xMSF) + peer = xFrame.getComponentWindow() + + xToolkit = xMSF.createInstance("com.sun.star.awt.Toolkit") + oDescriptor = WindowDescriptor() + oDescriptor.WindowServiceName = windowServiceName + oDescriptor.Parent = peer + oDescriptor.Type = MODALTOP + oDescriptor.WindowAttributes = windowAttribute + xMsgPeer = xToolkit.createWindow(oDescriptor) + xMsgPeer.MessageText = MessageText + iMessage = xMsgPeer.execute() + xMsgPeer.dispose() + except Exception: + traceback.print_exc() + + return iMessage + + @classmethod + def createStringSubstitution(self, xMSF): + xPathSubst = None + try: + xPathSubst = xMSF.createInstance( + "com.sun.star.util.PathSubstitution") + return xPathSubst + except Exception: + traceback.print_exc() + return None diff --git a/wizards/com/sun/star/wizards/common/TextElement.java b/wizards/com/sun/star/wizards/common/TextElement.java new file mode 100644 index 000000000..a8ee641e1 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/TextElement.java @@ -0,0 +1,54 @@ +/* + * 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 . + */ + +package com.sun.star.wizards.common; + +import com.sun.star.uno.UnoRuntime; +import com.sun.star.text.*; + +public class TextElement extends ParaStyled +{ + + String text; + + TextElement(XTextRange range) + { + this(range.getString(), (String) Helper.getUnoPropertyValue(range.getStart(), "ParaStyleName")); + } + + private TextElement(String text_, String paraStyle_) + { + super(paraStyle_); + text = text_; + } + + @Override + public void write(Object textRange) + { + UnoRuntime.queryInterface(XTextRange.class, textRange).setString(text); + if (!text.equals(PropertyNames.EMPTY_STRING)) + { + super.write(textRange); + } + } + + public void setText(String inputText) + { + text = inputText; + } +} diff --git a/wizards/com/sun/star/wizards/common/UCB.py b/wizards/com/sun/star/wizards/common/UCB.py new file mode 100644 index 000000000..1e52e4861 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/UCB.py @@ -0,0 +1,148 @@ +# +# 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 abc import abstractmethod + +from ..common.FileAccess import FileAccess + +from com.sun.star.beans import Property + +from com.sun.star.ucb import Command +from com.sun.star.ucb import GlobalTransferCommandArgument +from com.sun.star.ucb.NameClash import OVERWRITE +from com.sun.star.ucb import OpenCommandArgument2 +from com.sun.star.ucb.OpenMode import ALL +from com.sun.star.ucb.TransferCommandOperation import COPY + + +# This class is used to copy the content of a folder to +# another folder. +# There is an inconsistency with argument order. +# It should be always: dir,filename. +class UCB(object): + + ucb = None + fa = None + xmsf = None + + def __init__(self, xmsf): + self.ucb = xmsf.createInstanceWithArguments("com.sun.star.ucb.UniversalContentBroker", ()) + self.fa = FileAccess(xmsf) + self.xmsf = xmsf + + def delete(self, filename): + # System.out.println("UCB.delete(" + filename) + self.executeCommand(self.getContent(filename),"delete", True) + + def copy(self, sourceDir, targetDir): + self.copy1(sourceDir,targetDir, None) + + def copy1(self, sourceDir, targetDir, verifier): + files = self.listFiles(sourceDir, verifier) + for i in range(len(files)): + self.copy2(sourceDir, files[i], targetDir, "") + + def copy2(self, sourceDir, filename, targetDir, targetName): + if (not self.fa.exists(targetDir, True)): + self.fa.xInterface.createFolder(targetDir) + self.executeCommand(self.ucb, "globalTransfer", self.copyArg(sourceDir, filename, targetDir, targetName)) + + # target name can be PropertyNames.EMPTY_STRING, in which case the name stays lige the source name + # @param sourceDir + # @param sourceFilename + # @param targetDir + # @param targetFilename + # @return + def copyArg(self, sourceDir, sourceFilename, targetDir, targetFilename): + aArg = GlobalTransferCommandArgument() + aArg.Operation = COPY + aArg.SourceURL = self.fa.getURL(sourceDir, sourceFilename) + aArg.TargetURL = targetDir + aArg.NewTitle = targetFilename + # fail, if object with same name exists in target folder + aArg.NameClash = OVERWRITE + return aArg + + def executeCommand(self, xContent, aCommandName, aArgument): + aCommand = Command() + aCommand.Name = aCommandName + aCommand.Handle = -1 # not available + aCommand.Argument = aArgument + return xContent.execute(aCommand, 0, None) + + def listFiles(self, path, verifier): + xContent = self.getContent(path) + + aArg = OpenCommandArgument2() + aArg.Mode = ALL + aArg.Priority = 32768 + + # Fill info for the properties wanted. + aArg.Properties = (Property(),) + + aArg.Properties[0].Name = "Title" + aArg.Properties[0].Handle = -1 + + xSet = self.executeCommand(xContent, "open", aArg) + + xResultSet = xSet.getStaticResultSet() + + files = [] + + if (xResultSet.first()): + # obtain XContentAccess interface for child content access and XRow for properties + while (True): + # Obtain URL of child. + if (hasattr(xResultSet, "queryContentIdentifierString")): + aId = xResultSet.queryContentIdentifierString() + aTitle = FileAccess.getFilename(aId) + elif (hasattr(xResultSet, "getString")): + # First column: Title (column numbers are 1-based!) + aTitle = xResultSet.getString(1) + else: + aTitle = "" + #if (len(aTitle) == 0 and xResultSet.wasNull()): + if (len(aTitle) == 0): + # ignore + pass + else: + files.append(aTitle) + if (not xResultSet.next()): + break + # next child + if (verifier is not None): + for i in range(len(files)): + if (not verifier.verify(files[i])): + files.pop(i) # FIXME !!! dangerous + return files + + def getContent(self, path): + try: + ident = self.ucb.createContentIdentifier(path) + return self.ucb.queryContent(ident) + except Exception: + traceback.print_exc() + return None + + class Verifier: + @abstractmethod + def verify(object): + pass + diff --git a/wizards/com/sun/star/wizards/common/__init__.py b/wizards/com/sun/star/wizards/common/__init__.py new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/wizards/com/sun/star/wizards/common/__init__.py diff --git a/wizards/com/sun/star/wizards/common/strings.hrc b/wizards/com/sun/star/wizards/common/strings.hrc new file mode 100644 index 000000000..bb3f07237 --- /dev/null +++ b/wizards/com/sun/star/wizards/common/strings.hrc @@ -0,0 +1,318 @@ +# -*- tab-width: 4; indent-tabs-mode: nil; py-indent-offset: 4 -*- +# +# 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/. +# + +import gettext +import uno +import unohelper + +localeDir = "$BRAND_BASE_DIR/$BRAND_SHARE_RESOURCE_SUBDIR" + +gettext.bindtextdomain('wiz', unohelper.fileUrlToSystemPath( + uno.getComponentContext().getByName( + "/singletons/com.sun.star.util.theMacroExpander").expandMacros(localeDir))) + +gettext.textdomain('wiz') + +def NC_(context, string): + # Contextual strings are stored with the concatenation of + # the context, an EOT byte, and the original string, instead of the original string + # see https://www.gnu.org/software/gettext/manual/html_node/MO-Files.html + ret = gettext.gettext(context + chr(4) + string) + if ret.find(chr(4)) == -1: + return ret + return string + +# common section +RID_COMMON_START_0 = NC_("RID_COMMON_START_0", "The directory '%1' could not be created.<BR>There may not be enough space left on your hard disk.") +RID_COMMON_START_1 = NC_("RID_COMMON_START_1", "The text document could not be created.<BR>Please check if the module 'PRODUCTNAME Writer' is installed.") +RID_COMMON_START_2 = NC_("RID_COMMON_START_2", "The spreadsheet could not be created.<BR>Please check if the module 'PRODUCTNAME Calc' is installed.") +RID_COMMON_START_3 = NC_("RID_COMMON_START_3", "The presentation could not be created.<BR>Please check if the module 'PRODUCTNAME Impress' is installed.") +RID_COMMON_START_4 = NC_("RID_COMMON_START_4", "The drawing could not be created.<BR>Please check if the module 'PRODUCTNAME Draw' is installed.") +RID_COMMON_START_5 = NC_("RID_COMMON_START_5", "The formula could not be created.<BR>Please check if the module 'PRODUCTNAME Math' is installed.") +RID_COMMON_START_6 = NC_("RID_COMMON_START_6", "The files required could not be found.<BR>Please start the %PRODUCTNAME Setup and choose 'Repair'.") +RID_COMMON_START_7 = NC_("RID_COMMON_START_7", "The file '<PATH>' already exists.<BR><BR>Would you like to overwrite the existing file?") +RID_COMMON_START_8 = NC_("RID_COMMON_START_8", "Yes") +RID_COMMON_START_9 = NC_("RID_COMMON_START_9", "Yes to All") +RID_COMMON_START_10 = NC_("RID_COMMON_START_10", "No") +RID_COMMON_START_11 = NC_("RID_COMMON_START_11", "Cancel") +RID_COMMON_START_12 = NC_("RID_COMMON_START_12", "~Finish") +RID_COMMON_START_13 = NC_("RID_COMMON_START_13", "< ~Back") +RID_COMMON_START_14 = NC_("RID_COMMON_START_14", "~Next >") +RID_COMMON_START_15 = NC_("RID_COMMON_START_15", "~Help") +RID_COMMON_START_16 = NC_("RID_COMMON_START_16", "Steps") +RID_COMMON_START_17 = NC_("RID_COMMON_START_17", "Close") +RID_COMMON_START_18 = NC_("RID_COMMON_START_18", "OK") +RID_COMMON_START_19 = NC_("RID_COMMON_START_19", "The file already exists. Do you want to overwrite it?") +RID_COMMON_START_20 = NC_("RID_COMMON_START_20", "Template created via <wizard_name> on <current_date>.") +RID_COMMON_START_21 = NC_("RID_COMMON_START_21", "The wizard could not be run, because important files were not found.\nUnder 'Tools - Options - %PRODUCTNAME - Paths' click the 'Default' button to reset the paths to the original default settings.\nThen run the wizard again.") + +# LETTER WIZARD RESOURCES +RID_LETTERWIZARDDIALOG_START_1 = NC_("RID_LETTERWIZARDDIALOG_START_1", "Letter Wizard") +RID_LETTERWIZARDDIALOG_START_2 = NC_("RID_LETTERWIZARDDIALOG_START_2", "Label9") +RID_LETTERWIZARDDIALOG_START_3 = NC_("RID_LETTERWIZARDDIALOG_START_3", "~Business Letter") +RID_LETTERWIZARDDIALOG_START_4 = NC_("RID_LETTERWIZARDDIALOG_START_4", "~Formal Personal Letter") +RID_LETTERWIZARDDIALOG_START_5 = NC_("RID_LETTERWIZARDDIALOG_START_5", "~Personal Letter") +RID_LETTERWIZARDDIALOG_START_6 = NC_("RID_LETTERWIZARDDIALOG_START_6", "~Use letterhead paper with pre-printed elements") +RID_LETTERWIZARDDIALOG_START_7 = NC_("RID_LETTERWIZARDDIALOG_START_7", "~Logo") +RID_LETTERWIZARDDIALOG_START_8 = NC_("RID_LETTERWIZARDDIALOG_START_8", "Return address") +RID_LETTERWIZARDDIALOG_START_9 = NC_("RID_LETTERWIZARDDIALOG_START_9", "~Include footer") +RID_LETTERWIZARDDIALOG_START_10 = NC_("RID_LETTERWIZARDDIALOG_START_10", "~Return address in envelope window") +RID_LETTERWIZARDDIALOG_START_11 = NC_("RID_LETTERWIZARDDIALOG_START_11", "~Logo") +RID_LETTERWIZARDDIALOG_START_12 = NC_("RID_LETTERWIZARDDIALOG_START_12", "~Return address in envelope window") +RID_LETTERWIZARDDIALOG_START_13 = NC_("RID_LETTERWIZARDDIALOG_START_13", "Letter signs") +RID_LETTERWIZARDDIALOG_START_14 = NC_("RID_LETTERWIZARDDIALOG_START_14", "S~ubject line") +RID_LETTERWIZARDDIALOG_START_15 = NC_("RID_LETTERWIZARDDIALOG_START_15", "Salu~tation") +RID_LETTERWIZARDDIALOG_START_16 = NC_("RID_LETTERWIZARDDIALOG_START_16", "Fold ~marks") +RID_LETTERWIZARDDIALOG_START_17 = NC_("RID_LETTERWIZARDDIALOG_START_17", "~Complimentary close") +RID_LETTERWIZARDDIALOG_START_18 = NC_("RID_LETTERWIZARDDIALOG_START_18", "~Footer") +RID_LETTERWIZARDDIALOG_START_19 = NC_("RID_LETTERWIZARDDIALOG_START_19", "~Use user data for return address") +RID_LETTERWIZARDDIALOG_START_20 = NC_("RID_LETTERWIZARDDIALOG_START_20", "~New sender address:") +RID_LETTERWIZARDDIALOG_START_21 = NC_("RID_LETTERWIZARDDIALOG_START_21", "Use placeholders for ~recipient's address") +RID_LETTERWIZARDDIALOG_START_22 = NC_("RID_LETTERWIZARDDIALOG_START_22", "Use address database for ~mail merge") +RID_LETTERWIZARDDIALOG_START_23 = NC_("RID_LETTERWIZARDDIALOG_START_23", "Include ~only on second and following pages") +RID_LETTERWIZARDDIALOG_START_24 = NC_("RID_LETTERWIZARDDIALOG_START_24", "~Include page number") +RID_LETTERWIZARDDIALOG_START_25 = NC_("RID_LETTERWIZARDDIALOG_START_25", "Letter Template") +RID_LETTERWIZARDDIALOG_START_26 = NC_("RID_LETTERWIZARDDIALOG_START_26", "Create a ~letter from this template") +RID_LETTERWIZARDDIALOG_START_27 = NC_("RID_LETTERWIZARDDIALOG_START_27", "Make ~manual changes to this letter template") +RID_LETTERWIZARDDIALOG_START_28 = NC_("RID_LETTERWIZARDDIALOG_START_28", "Page design") +RID_LETTERWIZARDDIALOG_START_29 = NC_("RID_LETTERWIZARDDIALOG_START_29", "Page design") +RID_LETTERWIZARDDIALOG_START_30 = NC_("RID_LETTERWIZARDDIALOG_START_30", "Page design") +RID_LETTERWIZARDDIALOG_START_31 = NC_("RID_LETTERWIZARDDIALOG_START_31", "This wizard helps you to create a letter template. You can then use the template as the basis for writing letters as often as desired.") +RID_LETTERWIZARDDIALOG_START_32 = NC_("RID_LETTERWIZARDDIALOG_START_32", "~Height:") +RID_LETTERWIZARDDIALOG_START_33 = NC_("RID_LETTERWIZARDDIALOG_START_33", "~Width:") +RID_LETTERWIZARDDIALOG_START_34 = NC_("RID_LETTERWIZARDDIALOG_START_34", "S~pacing to left margin:") +RID_LETTERWIZARDDIALOG_START_35 = NC_("RID_LETTERWIZARDDIALOG_START_35", "Spacing ~to top margin:") +RID_LETTERWIZARDDIALOG_START_36 = NC_("RID_LETTERWIZARDDIALOG_START_36", "Height:") +RID_LETTERWIZARDDIALOG_START_37 = NC_("RID_LETTERWIZARDDIALOG_START_37", "Width:") +RID_LETTERWIZARDDIALOG_START_38 = NC_("RID_LETTERWIZARDDIALOG_START_38", "S~pacing to left margin:") +RID_LETTERWIZARDDIALOG_START_39 = NC_("RID_LETTERWIZARDDIALOG_START_39", "Spacing ~to top margin:") +RID_LETTERWIZARDDIALOG_START_40 = NC_("RID_LETTERWIZARDDIALOG_START_40", "Height:") +RID_LETTERWIZARDDIALOG_START_42 = NC_("RID_LETTERWIZARDDIALOG_START_42", "Sender's address") +RID_LETTERWIZARDDIALOG_START_43 = NC_("RID_LETTERWIZARDDIALOG_START_43", "Name:") +RID_LETTERWIZARDDIALOG_START_44 = NC_("RID_LETTERWIZARDDIALOG_START_44", "Street:") +RID_LETTERWIZARDDIALOG_START_45 = NC_("RID_LETTERWIZARDDIALOG_START_45", "ZIP code/State/City:") +RID_LETTERWIZARDDIALOG_START_46 = NC_("RID_LETTERWIZARDDIALOG_START_46", "Recipient's address") +RID_LETTERWIZARDDIALOG_START_47 = NC_("RID_LETTERWIZARDDIALOG_START_47", "Footer") +RID_LETTERWIZARDDIALOG_START_48 = NC_("RID_LETTERWIZARDDIALOG_START_48", "This wizard creates a letter template which enables you to create multiple letters with the same layout and settings.") +RID_LETTERWIZARDDIALOG_START_49 = NC_("RID_LETTERWIZARDDIALOG_START_49", "To create another new letter out of the template just navigate to the template location and double-click it.") +RID_LETTERWIZARDDIALOG_START_50 = NC_("RID_LETTERWIZARDDIALOG_START_50", "Template name:") +RID_LETTERWIZARDDIALOG_START_51 = NC_("RID_LETTERWIZARDDIALOG_START_51", "Location and file name:") +RID_LETTERWIZARDDIALOG_START_52 = NC_("RID_LETTERWIZARDDIALOG_START_52", "How do you want to proceed?") +RID_LETTERWIZARDDIALOG_START_53 = NC_("RID_LETTERWIZARDDIALOG_START_53", "Please choose the type of letter and page design") +RID_LETTERWIZARDDIALOG_START_54 = NC_("RID_LETTERWIZARDDIALOG_START_54", "Select the items to be printed") +RID_LETTERWIZARDDIALOG_START_55 = NC_("RID_LETTERWIZARDDIALOG_START_55", "Specify items already on your letterhead paper") +RID_LETTERWIZARDDIALOG_START_56 = NC_("RID_LETTERWIZARDDIALOG_START_56", "Specify the sender and recipient information") +RID_LETTERWIZARDDIALOG_START_57 = NC_("RID_LETTERWIZARDDIALOG_START_57", "Fill in the information you would like in the footer") +RID_LETTERWIZARDDIALOG_START_58 = NC_("RID_LETTERWIZARDDIALOG_START_58", "Please specify last settings") +RID_LETTERWIZARDDIALOG_START_59 = NC_("RID_LETTERWIZARDDIALOG_START_59", "Subject:") +RID_LETTERWIZARDDIALOG_START_60 = NC_("RID_LETTERWIZARDDIALOG_START_60", "Elegant") +RID_LETTERWIZARDDIALOG_START_61 = NC_("RID_LETTERWIZARDDIALOG_START_61", "Modern") +RID_LETTERWIZARDDIALOG_START_62 = NC_("RID_LETTERWIZARDDIALOG_START_62", "Office") +RID_LETTERWIZARDDIALOG_START_63 = NC_("RID_LETTERWIZARDDIALOG_START_63", "Bottle") +RID_LETTERWIZARDDIALOG_START_64 = NC_("RID_LETTERWIZARDDIALOG_START_64", "Mail") +RID_LETTERWIZARDDIALOG_START_65 = NC_("RID_LETTERWIZARDDIALOG_START_65", "Marine") +RID_LETTERWIZARDDIALOG_START_66 = NC_("RID_LETTERWIZARDDIALOG_START_66", "Red Line") + +# Letter Wizard Greeting Start +RID_LETTERWIZARDSALUTATION_START_1 = NC_("RID_LETTERWIZARDSALUTATION_START_1", "To Whom it May Concern") +RID_LETTERWIZARDSALUTATION_START_2 = NC_("RID_LETTERWIZARDSALUTATION_START_2", "Dear Sir or Madam") +RID_LETTERWIZARDSALUTATION_START_3 = NC_("RID_LETTERWIZARDSALUTATION_START_3", "Hello") + +# Letter Wizard Greeting Start +RID_LETTERWIZARDGREETING_START_1 = NC_("RID_LETTERWIZARDGREETING_START_1", "Sincerely") +RID_LETTERWIZARDGREETING_START_2 = NC_("RID_LETTERWIZARDGREETING_START_2", "Best regards") +RID_LETTERWIZARDGREETING_START_3 = NC_("RID_LETTERWIZARDGREETING_START_3", "Cheers") + +# Letter Wizard Roadmap Start +RID_LETTERWIZARDROADMAP_START_1 = NC_("RID_LETTERWIZARDROADMAP_START_1", "Page Design") +RID_LETTERWIZARDROADMAP_START_2 = NC_("RID_LETTERWIZARDROADMAP_START_2", "Letterhead Layout") +RID_LETTERWIZARDROADMAP_START_3 = NC_("RID_LETTERWIZARDROADMAP_START_3", "Printed Items") +RID_LETTERWIZARDROADMAP_START_4 = NC_("RID_LETTERWIZARDROADMAP_START_4", "Recipient and Sender") +RID_LETTERWIZARDROADMAP_START_5 = NC_("RID_LETTERWIZARDROADMAP_START_5", "Footer") +RID_LETTERWIZARDROADMAP_START_6 = NC_("RID_LETTERWIZARDROADMAP_START_6", "Name and Location") + +# FAX WIZARD RESOURCES +RID_FAXWIZARDDIALOG_START_1 = NC_("RID_FAXWIZARDDIALOG_START_1", "Fax Wizard") +RID_FAXWIZARDDIALOG_START_2 = NC_("RID_FAXWIZARDDIALOG_START_2", "Label9") +RID_FAXWIZARDDIALOG_START_3 = NC_("RID_FAXWIZARDDIALOG_START_3", "~Business Fax") +RID_FAXWIZARDDIALOG_START_4 = NC_("RID_FAXWIZARDDIALOG_START_4", "~Personal Fax") +RID_FAXWIZARDDIALOG_START_5 = NC_("RID_FAXWIZARDDIALOG_START_5", "~Logo") +RID_FAXWIZARDDIALOG_START_6 = NC_("RID_FAXWIZARDDIALOG_START_6", "S~ubject line") +RID_FAXWIZARDDIALOG_START_7 = NC_("RID_FAXWIZARDDIALOG_START_7", "S~alutation") +RID_FAXWIZARDDIALOG_START_8 = NC_("RID_FAXWIZARDDIALOG_START_8", "~Complimentary close") +RID_FAXWIZARDDIALOG_START_9 = NC_("RID_FAXWIZARDDIALOG_START_9", "~Footer") +RID_FAXWIZARDDIALOG_START_10 = NC_("RID_FAXWIZARDDIALOG_START_10", "~Use user data for return address") +RID_FAXWIZARDDIALOG_START_11 = NC_("RID_FAXWIZARDDIALOG_START_11", "~New return address") +RID_FAXWIZARDDIALOG_START_12 = NC_("RID_FAXWIZARDDIALOG_START_12", "My Fax Template") +RID_FAXWIZARDDIALOG_START_13 = NC_("RID_FAXWIZARDDIALOG_START_13", "Create a ~fax from this template") +RID_FAXWIZARDDIALOG_START_14 = NC_("RID_FAXWIZARDDIALOG_START_14", "Make ~manual changes to this fax template") +RID_FAXWIZARDDIALOG_START_15 = NC_("RID_FAXWIZARDDIALOG_START_15", "Page design") +RID_FAXWIZARDDIALOG_START_16 = NC_("RID_FAXWIZARDDIALOG_START_16", "Page design") +RID_FAXWIZARDDIALOG_START_17 = NC_("RID_FAXWIZARDDIALOG_START_17", "This wizard helps you to create a fax template. The template can then be used to create a fax whenever needed.") +RID_FAXWIZARDDIALOG_START_18 = NC_("RID_FAXWIZARDDIALOG_START_18", "Return address") +RID_FAXWIZARDDIALOG_START_19 = NC_("RID_FAXWIZARDDIALOG_START_19", "Name:") +RID_FAXWIZARDDIALOG_START_20 = NC_("RID_FAXWIZARDDIALOG_START_20", "Street:") +RID_FAXWIZARDDIALOG_START_21 = NC_("RID_FAXWIZARDDIALOG_START_21", "ZIP code/State/City:") +RID_FAXWIZARDDIALOG_START_22 = NC_("RID_FAXWIZARDDIALOG_START_22", "Footer") +RID_FAXWIZARDDIALOG_START_23 = NC_("RID_FAXWIZARDDIALOG_START_23", "This wizard creates a fax template which enables you to create multiple faxes with the same layout and settings.") +RID_FAXWIZARDDIALOG_START_24 = NC_("RID_FAXWIZARDDIALOG_START_24", "To create another new fax out of the template, go to the location where you saved the template and double-click the file.") +RID_FAXWIZARDDIALOG_START_25 = NC_("RID_FAXWIZARDDIALOG_START_25", "Template name:") +RID_FAXWIZARDDIALOG_START_26 = NC_("RID_FAXWIZARDDIALOG_START_26", "Location and file name:") +RID_FAXWIZARDDIALOG_START_27 = NC_("RID_FAXWIZARDDIALOG_START_27", "What do you want to do next?") +RID_FAXWIZARDDIALOG_START_28 = NC_("RID_FAXWIZARDDIALOG_START_28", "Choose the type of fax and a page design") +RID_FAXWIZARDDIALOG_START_29 = NC_("RID_FAXWIZARDDIALOG_START_29", "Select items to include in the fax template") +RID_FAXWIZARDDIALOG_START_30 = NC_("RID_FAXWIZARDDIALOG_START_30", "Specify sender and recipient information") +RID_FAXWIZARDDIALOG_START_31 = NC_("RID_FAXWIZARDDIALOG_START_31", "Enter text for the footer") +RID_FAXWIZARDDIALOG_START_32 = NC_("RID_FAXWIZARDDIALOG_START_32", "Choose a name and save the template") +RID_FAXWIZARDDIALOG_START_33 = NC_("RID_FAXWIZARDDIALOG_START_33", "Include ~only on second and following pages") +RID_FAXWIZARDDIALOG_START_34 = NC_("RID_FAXWIZARDDIALOG_START_34", "~Include page number") +RID_FAXWIZARDDIALOG_START_35 = NC_("RID_FAXWIZARDDIALOG_START_35", "~Date") +RID_FAXWIZARDDIALOG_START_36 = NC_("RID_FAXWIZARDDIALOG_START_36", "~Type of message") +RID_FAXWIZARDDIALOG_START_37 = NC_("RID_FAXWIZARDDIALOG_START_37", "Fax Number:") +RID_FAXWIZARDDIALOG_START_38 = NC_("RID_FAXWIZARDDIALOG_START_38", "Use placeholders for ~recipient's address") +RID_FAXWIZARDDIALOG_START_39 = NC_("RID_FAXWIZARDDIALOG_START_39", "Use address database for ~mail merge") +RID_FAXWIZARDDIALOG_START_40 = NC_("RID_FAXWIZARDDIALOG_START_40", "~New return address") +RID_FAXWIZARDDIALOG_START_41 = NC_("RID_FAXWIZARDDIALOG_START_41", "To:") +RID_FAXWIZARDDIALOG_START_42 = NC_("RID_FAXWIZARDDIALOG_START_42", "From:") +RID_FAXWIZARDDIALOG_START_43 = NC_("RID_FAXWIZARDDIALOG_START_43", "Fax:") +RID_FAXWIZARDDIALOG_START_44 = NC_("RID_FAXWIZARDDIALOG_START_44", "Tel:") +RID_FAXWIZARDDIALOG_START_45 = NC_("RID_FAXWIZARDDIALOG_START_45", "Email:") +RID_FAXWIZARDDIALOG_START_46 = NC_("RID_FAXWIZARDDIALOG_START_46", "This template consists of") +RID_FAXWIZARDDIALOG_START_47 = NC_("RID_FAXWIZARDDIALOG_START_47", "page") +RID_FAXWIZARDDIALOG_START_48 = NC_("RID_FAXWIZARDDIALOG_START_48", "Please inform us if transmission errors occur.") +RID_FAXWIZARDDIALOG_START_49 = NC_("RID_FAXWIZARDDIALOG_START_49", "Bottle") +RID_FAXWIZARDDIALOG_START_50 = NC_("RID_FAXWIZARDDIALOG_START_50", "Lines") +RID_FAXWIZARDDIALOG_START_51 = NC_("RID_FAXWIZARDDIALOG_START_51", "Marine") +RID_FAXWIZARDDIALOG_START_52 = NC_("RID_FAXWIZARDDIALOG_START_52", "Classic Fax") +RID_FAXWIZARDDIALOG_START_53 = NC_("RID_FAXWIZARDDIALOG_START_53", "Classic Fax from Private") +RID_FAXWIZARDDIALOG_START_54 = NC_("RID_FAXWIZARDDIALOG_START_54", "Modern Fax") +RID_FAXWIZARDDIALOG_START_55 = NC_("RID_FAXWIZARDDIALOG_START_55", "Modern Fax from Private") +RID_FAXWIZARDDIALOG_START_56 = NC_("RID_FAXWIZARDDIALOG_START_56", "Fax") + +# Fax Wizard Communication Start +RID_FAXWIZARDCOMMUNICATION_START_1 = NC_("RID_FAXWIZARDCOMMUNICATION_START_1", "Important Information!") +RID_FAXWIZARDCOMMUNICATION_START_2 = NC_("RID_FAXWIZARDCOMMUNICATION_START_2", "For your information") +RID_FAXWIZARDCOMMUNICATION_START_3 = NC_("RID_FAXWIZARDCOMMUNICATION_START_3", "News!") + +# Fax Wizard Salutation Start +RID_FAXWIZARDSALUTATION_START_1 = NC_("RID_FAXWIZARDSALUTATION_START_1", "To whom it may concern,") +RID_FAXWIZARDSALUTATION_START_2 = NC_("RID_FAXWIZARDSALUTATION_START_2", "Dear Sir or Madam,") +RID_FAXWIZARDSALUTATION_START_3 = NC_("RID_FAXWIZARDSALUTATION_START_3", "Hello,") +RID_FAXWIZARDSALUTATION_START_4 = NC_("RID_FAXWIZARDSALUTATION_START_4", "Hi,") + +# Fax Wizard Greeting Start +RID_FAXWIZARDGREETING_START_1 = NC_("RID_FAXWIZARDGREETING_START_1", "Sincerely") +RID_FAXWIZARDGREETING_START_2 = NC_("RID_FAXWIZARDGREETING_START_2", "Yours faithfully") +RID_FAXWIZARDGREETING_START_3 = NC_("RID_FAXWIZARDGREETING_START_3", "Regards") +RID_FAXWIZARDGREETING_START_4 = NC_("RID_FAXWIZARDGREETING_START_4", "Love") + +# Fax Wizard Roadmap Start +RID_FAXWIZARDROADMAP_START_1 = NC_("RID_FAXWIZARDROADMAP_START_1", "Page Design") +RID_FAXWIZARDROADMAP_START_2 = NC_("RID_FAXWIZARDROADMAP_START_2", "Items to Include") +RID_FAXWIZARDROADMAP_START_3 = NC_("RID_FAXWIZARDROADMAP_START_3", "Sender and Recipient") +RID_FAXWIZARDROADMAP_START_4 = NC_("RID_FAXWIZARDROADMAP_START_4", "Footer") +RID_FAXWIZARDROADMAP_START_5 = NC_("RID_FAXWIZARDROADMAP_START_5", "Name and Location") + +# AGENDA WIZARD RESOURCES +RID_AGENDAWIZARDDIALOG_START_1 = NC_("RID_AGENDAWIZARDDIALOG_START_1", "Agenda Wizard") +RID_AGENDAWIZARDDIALOG_START_2 = NC_("RID_AGENDAWIZARDDIALOG_START_2", "Make ~manual changes to this agenda template") +RID_AGENDAWIZARDDIALOG_START_3 = NC_("RID_AGENDAWIZARDDIALOG_START_3", "Template name:") +RID_AGENDAWIZARDDIALOG_START_4 = NC_("RID_AGENDAWIZARDDIALOG_START_4", "Location and file name:") +RID_AGENDAWIZARDDIALOG_START_5 = NC_("RID_AGENDAWIZARDDIALOG_START_5", "What do you want to do next?") +RID_AGENDAWIZARDDIALOG_START_6 = NC_("RID_AGENDAWIZARDDIALOG_START_6", "Please choose the page design for the agenda") +RID_AGENDAWIZARDDIALOG_START_7 = NC_("RID_AGENDAWIZARDDIALOG_START_7", "Please select the headings you wish to include in your agenda template") +RID_AGENDAWIZARDDIALOG_START_8 = NC_("RID_AGENDAWIZARDDIALOG_START_8", "Please enter general information for the event") +RID_AGENDAWIZARDDIALOG_START_9 = NC_("RID_AGENDAWIZARDDIALOG_START_9", "Please specify items for the agenda") +RID_AGENDAWIZARDDIALOG_START_10 = NC_("RID_AGENDAWIZARDDIALOG_START_10", "Please select the names you wish to include in your agenda template") +RID_AGENDAWIZARDDIALOG_START_11 = NC_("RID_AGENDAWIZARDDIALOG_START_11", "Choose a name and save the template") +RID_AGENDAWIZARDDIALOG_START_12 = NC_("RID_AGENDAWIZARDDIALOG_START_12", "Include form for recording minutes") +RID_AGENDAWIZARDDIALOG_START_13 = NC_("RID_AGENDAWIZARDDIALOG_START_13", "This wizard helps you to create an agenda template. The template can then be used to create an agenda whenever needed.") +RID_AGENDAWIZARDDIALOG_START_14 = NC_("RID_AGENDAWIZARDDIALOG_START_14", "Time:") +RID_AGENDAWIZARDDIALOG_START_15 = NC_("RID_AGENDAWIZARDDIALOG_START_15", "Name:") +RID_AGENDAWIZARDDIALOG_START_16 = NC_("RID_AGENDAWIZARDDIALOG_START_16", "Location:") +RID_AGENDAWIZARDDIALOG_START_17 = NC_("RID_AGENDAWIZARDDIALOG_START_17", "Placeholders will be used in empty fields. You can replace placeholders with text later.") +RID_AGENDAWIZARDDIALOG_START_18 = NC_("RID_AGENDAWIZARDDIALOG_START_18", "...") +RID_AGENDAWIZARDDIALOG_START_19 = NC_("RID_AGENDAWIZARDDIALOG_START_19", "Create an ~agenda from this template") +RID_AGENDAWIZARDDIALOG_START_20 = NC_("RID_AGENDAWIZARDDIALOG_START_20", "To create a new agenda out of the template, go to the location where you saved the template and double-click the file.") +RID_AGENDAWIZARDDIALOG_START_21 = NC_("RID_AGENDAWIZARDDIALOG_START_21", "Agenda item") +RID_AGENDAWIZARDDIALOG_START_22 = NC_("RID_AGENDAWIZARDDIALOG_START_22", "Responsible") +RID_AGENDAWIZARDDIALOG_START_23 = NC_("RID_AGENDAWIZARDDIALOG_START_23", "Duration") +RID_AGENDAWIZARDDIALOG_START_24 = NC_("RID_AGENDAWIZARDDIALOG_START_24", "Meeting called by") +RID_AGENDAWIZARDDIALOG_START_25 = NC_("RID_AGENDAWIZARDDIALOG_START_25", "Chairperson") +RID_AGENDAWIZARDDIALOG_START_26 = NC_("RID_AGENDAWIZARDDIALOG_START_26", "Minute keeper") +RID_AGENDAWIZARDDIALOG_START_27 = NC_("RID_AGENDAWIZARDDIALOG_START_27", "Moderator") +RID_AGENDAWIZARDDIALOG_START_28 = NC_("RID_AGENDAWIZARDDIALOG_START_28", "Attendees") +RID_AGENDAWIZARDDIALOG_START_29 = NC_("RID_AGENDAWIZARDDIALOG_START_29", "Observers") +RID_AGENDAWIZARDDIALOG_START_30 = NC_("RID_AGENDAWIZARDDIALOG_START_30", "Facility personnel") +RID_AGENDAWIZARDDIALOG_START_31 = NC_("RID_AGENDAWIZARDDIALOG_START_31", "The agenda template will include placeholders for the names of the selected people. When creating an agenda from the template, you can replace these placeholder with the appropriate names.") +RID_AGENDAWIZARDDIALOG_START_32 = NC_("RID_AGENDAWIZARDDIALOG_START_32", "Type of meeting") +RID_AGENDAWIZARDDIALOG_START_33 = NC_("RID_AGENDAWIZARDDIALOG_START_33", "Please read") +RID_AGENDAWIZARDDIALOG_START_34 = NC_("RID_AGENDAWIZARDDIALOG_START_34", "Please bring") +RID_AGENDAWIZARDDIALOG_START_35 = NC_("RID_AGENDAWIZARDDIALOG_START_35", "Notes") +RID_AGENDAWIZARDDIALOG_START_36 = NC_("RID_AGENDAWIZARDDIALOG_START_36", "The agenda template will include placeholders for the selected items.") +RID_AGENDAWIZARDDIALOG_START_38 = NC_("RID_AGENDAWIZARDDIALOG_START_38", "Date:") +RID_AGENDAWIZARDDIALOG_START_39 = NC_("RID_AGENDAWIZARDDIALOG_START_39", "This wizard creates an agenda template which enables you to create multiple agendas with the same layout and settings.") +RID_AGENDAWIZARDDIALOG_START_40 = NC_("RID_AGENDAWIZARDDIALOG_START_40", "Page design:") +RID_AGENDAWIZARDDIALOG_START_41 = NC_("RID_AGENDAWIZARDDIALOG_START_41", "myAgendaTemplate.stw") +RID_AGENDAWIZARDDIALOG_START_42 = NC_("RID_AGENDAWIZARDDIALOG_START_42", "My Agenda Template") +RID_AGENDAWIZARDDIALOG_START_43 = NC_("RID_AGENDAWIZARDDIALOG_START_43", "An error occurred while saving the agenda template.") +RID_AGENDAWIZARDDIALOG_START_44 = NC_("RID_AGENDAWIZARDDIALOG_START_44", "Name") +RID_AGENDAWIZARDDIALOG_START_45 = NC_("RID_AGENDAWIZARDDIALOG_START_45", "Date") +RID_AGENDAWIZARDDIALOG_START_46 = NC_("RID_AGENDAWIZARDDIALOG_START_46", "Time") +RID_AGENDAWIZARDDIALOG_START_47 = NC_("RID_AGENDAWIZARDDIALOG_START_47", "Location") +RID_AGENDAWIZARDDIALOG_START_48 = NC_("RID_AGENDAWIZARDDIALOG_START_48", "Click to replace this text") +RID_AGENDAWIZARDDIALOG_START_50 = NC_("RID_AGENDAWIZARDDIALOG_START_50", "Page Design") +RID_AGENDAWIZARDDIALOG_START_51 = NC_("RID_AGENDAWIZARDDIALOG_START_51", "General Information") +RID_AGENDAWIZARDDIALOG_START_52 = NC_("RID_AGENDAWIZARDDIALOG_START_52", "Headings to Include") +RID_AGENDAWIZARDDIALOG_START_53 = NC_("RID_AGENDAWIZARDDIALOG_START_53", "Names") +RID_AGENDAWIZARDDIALOG_START_54 = NC_("RID_AGENDAWIZARDDIALOG_START_54", "Agenda Items") +RID_AGENDAWIZARDDIALOG_START_55 = NC_("RID_AGENDAWIZARDDIALOG_START_55", "Name and Location") +RID_AGENDAWIZARDDIALOG_START_56 = NC_("RID_AGENDAWIZARDDIALOG_START_56", "An error occurred while opening the agenda template.") +RID_AGENDAWIZARDDIALOG_START_57 = NC_("RID_AGENDAWIZARDDIALOG_START_57", "Type of meeting") +RID_AGENDAWIZARDDIALOG_START_58 = NC_("RID_AGENDAWIZARDDIALOG_START_58", "Please bring") +RID_AGENDAWIZARDDIALOG_START_59 = NC_("RID_AGENDAWIZARDDIALOG_START_59", "Please read") +RID_AGENDAWIZARDDIALOG_START_60 = NC_("RID_AGENDAWIZARDDIALOG_START_60", "Notes") +RID_AGENDAWIZARDDIALOG_START_61 = NC_("RID_AGENDAWIZARDDIALOG_START_61", "Meeting called by") +RID_AGENDAWIZARDDIALOG_START_62 = NC_("RID_AGENDAWIZARDDIALOG_START_62", "Chairperson") +RID_AGENDAWIZARDDIALOG_START_63 = NC_("RID_AGENDAWIZARDDIALOG_START_63", "Attendees") +RID_AGENDAWIZARDDIALOG_START_64 = NC_("RID_AGENDAWIZARDDIALOG_START_64", "Minute keeper") +RID_AGENDAWIZARDDIALOG_START_65 = NC_("RID_AGENDAWIZARDDIALOG_START_65", "Moderator") +RID_AGENDAWIZARDDIALOG_START_66 = NC_("RID_AGENDAWIZARDDIALOG_START_66", "Observers") +RID_AGENDAWIZARDDIALOG_START_67 = NC_("RID_AGENDAWIZARDDIALOG_START_67", "Facility personnel") +RID_AGENDAWIZARDDIALOG_START_68 = NC_("RID_AGENDAWIZARDDIALOG_START_68", "Insert") +RID_AGENDAWIZARDDIALOG_START_69 = NC_("RID_AGENDAWIZARDDIALOG_START_69", "Remove") +RID_AGENDAWIZARDDIALOG_START_70 = NC_("RID_AGENDAWIZARDDIALOG_START_70", "Move up") +RID_AGENDAWIZARDDIALOG_START_71 = NC_("RID_AGENDAWIZARDDIALOG_START_71", "Move down") +RID_AGENDAWIZARDDIALOG_START_72 = NC_("RID_AGENDAWIZARDDIALOG_START_72", "Date:") +RID_AGENDAWIZARDDIALOG_START_73 = NC_("RID_AGENDAWIZARDDIALOG_START_73", "Time:") +RID_AGENDAWIZARDDIALOG_START_74 = NC_("RID_AGENDAWIZARDDIALOG_START_74", "Location:") +RID_AGENDAWIZARDDIALOG_START_75 = NC_("RID_AGENDAWIZARDDIALOG_START_75", "Topics") +RID_AGENDAWIZARDDIALOG_START_76 = NC_("RID_AGENDAWIZARDDIALOG_START_76", "Num.") +RID_AGENDAWIZARDDIALOG_START_77 = NC_("RID_AGENDAWIZARDDIALOG_START_77", "Topic") +RID_AGENDAWIZARDDIALOG_START_78 = NC_("RID_AGENDAWIZARDDIALOG_START_78", "Responsible") +RID_AGENDAWIZARDDIALOG_START_79 = NC_("RID_AGENDAWIZARDDIALOG_START_79", "Time") +RID_AGENDAWIZARDDIALOG_START_80 = NC_("RID_AGENDAWIZARDDIALOG_START_80", "Additional information") +RID_AGENDAWIZARDDIALOG_START_81 = NC_("RID_AGENDAWIZARDDIALOG_START_81", "Minutes for") +RID_AGENDAWIZARDDIALOG_START_82 = NC_("RID_AGENDAWIZARDDIALOG_START_82", "Discussion:") +RID_AGENDAWIZARDDIALOG_START_83 = NC_("RID_AGENDAWIZARDDIALOG_START_83", "Conclusion:") +RID_AGENDAWIZARDDIALOG_START_84 = NC_("RID_AGENDAWIZARDDIALOG_START_84", "To do:") +RID_AGENDAWIZARDDIALOG_START_85 = NC_("RID_AGENDAWIZARDDIALOG_START_85", "Responsible party:") +RID_AGENDAWIZARDDIALOG_START_86 = NC_("RID_AGENDAWIZARDDIALOG_START_86", "Deadline:") +RID_AGENDAWIZARDDIALOG_START_87 = NC_("RID_AGENDAWIZARDDIALOG_START_87", "Blue") +RID_AGENDAWIZARDDIALOG_START_88 = NC_("RID_AGENDAWIZARDDIALOG_START_88", "Classic") +RID_AGENDAWIZARDDIALOG_START_89 = NC_("RID_AGENDAWIZARDDIALOG_START_89", "Colorful") +RID_AGENDAWIZARDDIALOG_START_90 = NC_("RID_AGENDAWIZARDDIALOG_START_90", "Elegant") +RID_AGENDAWIZARDDIALOG_START_91 = NC_("RID_AGENDAWIZARDDIALOG_START_91", "Green") +RID_AGENDAWIZARDDIALOG_START_92 = NC_("RID_AGENDAWIZARDDIALOG_START_92", "Grey") +RID_AGENDAWIZARDDIALOG_START_93 = NC_("RID_AGENDAWIZARDDIALOG_START_93", "Modern") +RID_AGENDAWIZARDDIALOG_START_94 = NC_("RID_AGENDAWIZARDDIALOG_START_94", "Orange") +RID_AGENDAWIZARDDIALOG_START_95 = NC_("RID_AGENDAWIZARDDIALOG_START_95", "Red") +RID_AGENDAWIZARDDIALOG_START_96 = NC_("RID_AGENDAWIZARDDIALOG_START_96", "Simple") + +# vim: set shiftwidth=4 softtabstop=4 expandtab: |